{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sidebar-controlled", "type": "registry:internal", "files": [ { "path": "registry/new-york-v4/internal/sidebar-controlled.tsx", "content": "\"use client\"\n\nimport * as React from \"react\"\nimport {\n FrameIcon,\n LifeBuoyIcon,\n MapIcon,\n PanelLeftCloseIcon,\n PanelLeftOpenIcon,\n PieChartIcon,\n SendIcon,\n} from \"lucide-react\"\n\nimport { Button } from \"@/registry/new-york-v4/ui/button\"\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarInset,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarProvider,\n} from \"@/registry/new-york-v4/ui/sidebar\"\n\nconst projects = [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: FrameIcon,\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChartIcon,\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: MapIcon,\n },\n {\n name: \"Support\",\n url: \"#\",\n icon: LifeBuoyIcon,\n },\n {\n name: \"Feedback\",\n url: \"#\",\n icon: SendIcon,\n },\n]\n\nexport default function AppSidebar() {\n const [open, setOpen] = React.useState(true)\n\n return (\n \n \n \n \n Projects\n \n \n {projects.map((project) => (\n \n \n \n \n {project.name}\n \n \n \n ))}\n \n \n \n \n \n \n
\n setOpen((open) => !open)}\n size=\"sm\"\n variant=\"ghost\"\n >\n {open ? : }\n {open ? \"Close\" : \"Open\"} Sidebar\n \n
\n
\n
\n )\n}\n", "type": "registry:component" } ] }