defmodule MoonBackofficeWeb.Navbar do use Phoenix.Component import Customizations.Navbar import MoonBackofficeWeb.CoreComponents, only: [icon: 1] attr :parameters, :list, required: true defp nav_button(%{parameters: %{active: true}} = assigns) do %{ class: class, outline: span, icon: icon } = pick_outfit(:active_item) assigns = assign(assigns, :class, class) |> assign(span: span) |> assign(icon: icon) ~H"""

<.icon name={@parameters.icon} class={assigns.icon} /> <%= @parameters.name %>

""" end defp nav_button(assigns) do %{ class: class, outline: span, icon: icon } = pick_outfit(:item) assigns = assign(assigns, :class, class) |> assign(span: span) |> assign(icon: icon) ~H""" <.icon name={@parameters.icon} class={assigns.icon} /> <%= @parameters.name %> """ end attr :items, :list, required: true def navbar(assigns) do %{ class: class } = pick_outfit(:list) assigns = assign(assigns, :class, class) ~H""" """ end end