Sidebar() — ui Function Reference
Architecture documentation for the Sidebar() function in sidebar.tsx from the ui codebase.
Entity Profile
Dependency Diagram
graph TD dca6f296_1b96_1e5e_e0a9_a1ad49f3b7c3["Sidebar()"] 0dd28c0a_4131_40f2_8cf0_e0611d33faf6["sidebar.tsx"] dca6f296_1b96_1e5e_e0a9_a1ad49f3b7c3 -->|defined in| 0dd28c0a_4131_40f2_8cf0_e0611d33faf6 0b33314b_d346_da3b_8ab7_30b6f415150b["useSidebar()"] dca6f296_1b96_1e5e_e0a9_a1ad49f3b7c3 -->|calls| 0b33314b_d346_da3b_8ab7_30b6f415150b style dca6f296_1b96_1e5e_e0a9_a1ad49f3b7c3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/v4/registry/new-york-v4/ui/sidebar.tsx lines 154–254
function Sidebar({
side = "left",
variant = "sidebar",
collapsible = "offcanvas",
className,
children,
...props
}: React.ComponentProps<"div"> & {
side?: "left" | "right"
variant?: "sidebar" | "floating" | "inset"
collapsible?: "offcanvas" | "icon" | "none"
}) {
const { isMobile, state, openMobile, setOpenMobile } = useSidebar()
if (collapsible === "none") {
return (
<div
data-slot="sidebar"
className={cn(
"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col",
className
)}
{...props}
>
{children}
</div>
)
}
if (isMobile) {
return (
<Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>
<SheetContent
data-sidebar="sidebar"
data-slot="sidebar"
data-mobile="true"
className="bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden"
style={
{
"--sidebar-width": SIDEBAR_WIDTH_MOBILE,
} as React.CSSProperties
}
side={side}
>
<SheetHeader className="sr-only">
<SheetTitle>Sidebar</SheetTitle>
<SheetDescription>Displays the mobile sidebar.</SheetDescription>
</SheetHeader>
<div className="flex h-full w-full flex-col">{children}</div>
</SheetContent>
</Sheet>
)
}
return (
<div
className="group peer text-sidebar-foreground hidden md:block"
data-state={state}
data-collapsible={state === "collapsed" ? collapsible : ""}
data-variant={variant}
data-side={side}
data-slot="sidebar"
>
{/* This is what handles the sidebar gap on desktop */}
<div
data-slot="sidebar-gap"
className={cn(
"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
"group-data-[collapsible=offcanvas]:w-0",
"group-data-[side=right]:rotate-180",
variant === "floating" || variant === "inset"
? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]"
: "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"
)}
/>
<div
data-slot="sidebar-container"
className={cn(
"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex",
side === "left"
? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]"
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does Sidebar() do?
Sidebar() is a function in the ui codebase, defined in apps/v4/registry/new-york-v4/ui/sidebar.tsx.
Where is Sidebar() defined?
Sidebar() is defined in apps/v4/registry/new-york-v4/ui/sidebar.tsx at line 154.
What does Sidebar() call?
Sidebar() calls 1 function(s): useSidebar.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free