defmodule DalaPreview.Server.DesignLive do use Phoenix.LiveView, layout: {DalaPreview.Server.Layouts, :app} alias DalaPreview.Server.Design @component_types [:column, :row, :text, :button] def mount(_params, _session, socket) do socket = socket |> assign(:design, Design.new()) |> assign(:component_types, @component_types) |> assign(:selected_node, nil) |> assign(:active_tab, "components") |> assign(:export_format, "sigil") |> assign(:generated_code, "") |> assign(:zoom, 100) |> assign(:grid_visible, true) |> assign(:snap_to_grid, true) |> assign(:grid_size, 20) {:ok, socket} end def render(assigns) do ~H"""