defmodule ScoriaWeb.Layouts do @moduledoc """ Root layout for the embedded Scoria dashboard. Scoria owns this layout (wired via the `scoria_dashboard` macro's `live_session`), so the dashboard renders a complete, self-contained HTML document — its own ``, its own inlined stylesheet + client bundle, its own LiveSocket — independent of the host app's layout and asset pipeline. """ use Phoenix.Component import ScoriaWeb.UI, only: [command_palette: 1, kbd: 1] alias ScoriaWeb.DashboardNav embed_templates("layouts/*") @doc "TV-1 Span rail brand mark (evenodd vesicle holes; pixel-snapped 3-hole geometry from favicon)." attr(:class, :string, default: nil) def brand_mark(assigns) do ~H""" """ end @doc "Inline stroke icons for nav items (brand book §9: stroke, rounded)." attr(:name, :atom, required: true) attr(:class, :string, default: "scoria-nav__icon") def icon(assigns) do ~H""" """ end @doc "Nav groups passthrough for the shell template." def nav_groups, do: DashboardNav.groups() @doc "Command palette sections for the shell template." def command_sections(base_path), do: DashboardNav.command_sections(base_path) end