sidebar.tsx — ui Source File
Architecture documentation for sidebar.tsx, a tsx file in the ui codebase. 13 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR cc4e35e8_a38d_157c_ff53_3fbfa32c26c4["sidebar.tsx"] 1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2 dfff40cc_d65b_ca49_a147_fd0eeff3f9de["use-mobile"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> dfff40cc_d65b_ca49_a147_fd0eeff3f9de 3d9438e8_7604_787c_4898_907262aff28b["utils"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 3d9438e8_7604_787c_4898_907262aff28b 43bb9fc1_6eab_13df_a99b_981eb13b9ec1["button"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 43bb9fc1_6eab_13df_a99b_981eb13b9ec1 480dda64_480e_8d00_f8b9_f67f82fb7c4b["input"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 480dda64_480e_8d00_f8b9_f67f82fb7c4b d91f2d92_028d_f8a9_3acf_7be6f2a34921["separator"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> d91f2d92_028d_f8a9_3acf_7be6f2a34921 92a4c602_74e1_43b0_a37d_e4788de43112["sheet"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 92a4c602_74e1_43b0_a37d_e4788de43112 2bd0eedc_ef5e_89d7_5c3b_17d80ceba42d["skeleton"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 2bd0eedc_ef5e_89d7_5c3b_17d80ceba42d 6544c2c5_b5c4_9182_1e6a_d512018c1eb1["tooltip"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 6544c2c5_b5c4_9182_1e6a_d512018c1eb1 9c25e96d_58e7_da5f_38f2_06bde0124112["merge-props"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 9c25e96d_58e7_da5f_38f2_06bde0124112 54befa66_d51c_07e2_ec3f_848afbcd88a7["use-render"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 54befa66_d51c_07e2_ec3f_848afbcd88a7 25383e8d_ca91_a50e_c3a8_5f228d02e1df["class-variance-authority"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> 25383e8d_ca91_a50e_c3a8_5f228d02e1df d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3["lucide-react"] cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 --> d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3 style cc4e35e8_a38d_157c_ff53_3fbfa32c26c4 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"use client"
import * as React from "react"
import { useIsMobile } from "@/examples/base/hooks/use-mobile"
import { cn } from "@/examples/base/lib/utils"
import { Button } from "@/examples/base/ui-rtl/button"
import { Input } from "@/examples/base/ui-rtl/input"
import { Separator } from "@/examples/base/ui-rtl/separator"
import {
Sheet,
SheetContent,
SheetDescription,
SheetHeader,
SheetTitle,
} from "@/examples/base/ui-rtl/sheet"
import { Skeleton } from "@/examples/base/ui-rtl/skeleton"
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from "@/examples/base/ui-rtl/tooltip"
import { mergeProps } from "@base-ui/react/merge-props"
import { useRender } from "@base-ui/react/use-render"
import { cva, type VariantProps } from "class-variance-authority"
import { PanelLeftIcon } from "lucide-react"
const SIDEBAR_COOKIE_NAME = "sidebar_state"
const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7
const SIDEBAR_WIDTH = "16rem"
const SIDEBAR_WIDTH_MOBILE = "18rem"
const SIDEBAR_WIDTH_ICON = "3rem"
const SIDEBAR_KEYBOARD_SHORTCUT = "b"
type SidebarContextProps = {
state: "expanded" | "collapsed"
open: boolean
setOpen: (open: boolean) => void
openMobile: boolean
setOpenMobile: (open: boolean) => void
isMobile: boolean
toggleSidebar: () => void
}
const SidebarContext = React.createContext<SidebarContextProps | null>(null)
function useSidebar() {
const context = React.useContext(SidebarContext)
if (!context) {
throw new Error("useSidebar must be used within a SidebarProvider.")
}
return context
}
function SidebarProvider({
defaultOpen = true,
open: openProp,
onOpenChange: setOpenProp,
className,
style,
// ... (663 more lines)
Domain
Subdomains
Functions
- Sidebar()
- SidebarContent()
- SidebarFooter()
- SidebarGroup()
- SidebarGroupAction()
- SidebarGroupContent()
- SidebarGroupLabel()
- SidebarHeader()
- SidebarInput()
- SidebarInset()
- SidebarMenu()
- SidebarMenuAction()
- SidebarMenuBadge()
- SidebarMenuButton()
- SidebarMenuItem()
- SidebarMenuSkeleton()
- SidebarMenuSub()
- SidebarMenuSubButton()
- SidebarMenuSubItem()
- SidebarProvider()
- SidebarRail()
- SidebarSeparator()
- SidebarTrigger()
- open()
- useSidebar()
Types
Dependencies
- button
- class-variance-authority
- input
- lucide-react
- merge-props
- react
- separator
- sheet
- skeleton
- tooltip
- use-mobile
- use-render
- utils
Source
Frequently Asked Questions
What does sidebar.tsx do?
sidebar.tsx is a source file in the ui codebase, written in tsx. It belongs to the DocumentationAtlas domain, Changelog subdomain.
What functions are defined in sidebar.tsx?
sidebar.tsx defines 25 function(s): Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, and 15 more.
What does sidebar.tsx depend on?
sidebar.tsx imports 13 module(s): button, class-variance-authority, input, lucide-react, merge-props, react, separator, sheet, and 5 more.
Where is sidebar.tsx in the architecture?
sidebar.tsx is located at apps/v4/examples/base/ui-rtl/sidebar.tsx (domain: DocumentationAtlas, subdomain: Changelog, directory: apps/v4/examples/base/ui-rtl).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free