defmodule MoonWeb.Pages.Components.SidebarPage do @moduledoc false use MoonWeb, :live_view alias Moon.Assets.Icons.IconSlots alias Moon.Assets.Icons.IconSportsBaseBall alias Moon.Assets.Logos.LogoBitcasinoFull alias Moon.Assets.Logos.LogoBitcasinoShort alias Moon.Autolayouts.TopToDown alias Moon.Components.Heading alias Moon.Components.Link alias Moon.Components.Sidebar alias MoonWeb.Components.ExampleAndCode alias MoonWeb.Components.Page data(breadcrumbs, :any, default: [ %{ to: "#", name: "Components v1" }, %{ to: "/components/sidebar", name: "Sidebar" } ] ) def handle_params(_params, uri, socket) do {:noreply, assign(socket, uri: uri)} end def render(assigns) do ~F""" Sidebar

Figma design Sourcecode of this page React implementation

<:note>

Wrap Sidebar component inside layout with flex items-start h-screen overflow-hidden classes on a parent div.

Use open_width prop to define sidebar width in an open mode. Default value is "14.5rem"

Use background_color prop to define background color of the sidebar.

Use slots short_logo, full_logo, menu for sidebar parts.

<:example> <:short_logo>
<:full_logo>
<:menu>
<:code>{sidebar_1_code()}
""" end def sidebar_1_code do """ alias Moon.Components.Sidebar alias Moon.Components.TopToDown alias Moon.Assets.Icons.IconSlots alias Moon.Assets.Icons.IconSportsBaseBall alias Moon.Assets.Logos.LogoBitcasinoFull alias Moon.Assets.Logos.LogoBitcasinoShort """ end end