Sidebar
A composable, themeable, and customizable sidebar component.
Anatomy
Import all parts and piece them together.
use leptos::prelude::*; use singlestage::Sidebar::*; #[component] pub fn SidebarAnatomy() -> impl IntoView { view! { <SidebarProvider> <Sidebar> <SidebarHeader /> <SidebarContent> <SidebarGroup> <SidebarGroupLabel /> <SidebarGroupContent> <SidebarMenu> <SidebarMenuItem> <SidebarMenuButton /> </SidebarMenuItem> <SidebarMenuItem> <Collapsible> <CollapsibleTrigger slot> <SidebarMenuButton /> </CollapsibleTrigger> <CollapsibleContent> <SidebarMenuSub> <SidebarMenuSubItem /> </SidebarMenuSub> </CollapsibleContent> </Collapsible> </SidebarMenuItem> </SidebarMenu> </SidebarGroupContent> </SidebarGroup> </SidebarContent> <SidebarFooter /> </Sidebar> <main> <SidebarTrigger /> </main> </SidebarProvider> } }
API Reference
SidebarContent
A scrollable wrapper displayed in the middle of the sidebar.
Implements global attributes.
SidebarGroup
Creates a section in the content area of the sidebar that groups similar items.
Implements global attributes.
SidebarGroupContent
Wraps the content of a sidebar group.
SidebarMenuButton
Wraps content displayed in the click area of a SidebarMenuItem.
SidebarProvider
Takes in initial state and provides SidebarContext to its children.
Name | Type | Default | Description |
---|---|---|---|
hidden | Reactive<bool> | false | Reactive signal coupled to the sidebar's hidden state. |
side | Reactive<String> | "left" | Reactive signal coupled to which side of its container the sidebar renders on. |
SidebarMenuSub
Wraps a submenu within a SidebarMenu.