{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sidebar-rsc", "type": "registry:internal", "files": [ { "path": "registry/new-york-v4/internal/sidebar-rsc.tsx", "content": "import * as React from \"react\"\nimport {\n FrameIcon,\n LifeBuoyIcon,\n MapIcon,\n PieChartIcon,\n SendIcon,\n} from \"lucide-react\"\n\nimport {\n Sidebar,\n SidebarContent,\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarProvider,\n} from \"@/registry/new-york-v4/ui/sidebar\"\n\nconst projects = [\n {\n name: \"Design Engineering\",\n url: \"#\",\n icon: FrameIcon,\n badge: \"24\",\n },\n {\n name: \"Sales & Marketing\",\n url: \"#\",\n icon: PieChartIcon,\n badge: \"12\",\n },\n {\n name: \"Travel\",\n url: \"#\",\n icon: MapIcon,\n badge: \"3\",\n },\n {\n name: \"Support\",\n url: \"#\",\n icon: LifeBuoyIcon,\n badge: \"21\",\n },\n {\n name: \"Feedback\",\n url: \"#\",\n icon: SendIcon,\n badge: \"8\",\n },\n]\n\n// Dummy fetch function\nasync function fetchProjects() {\n await new Promise((resolve) => setTimeout(resolve, 3000))\n return projects\n}\n\nexport default function AppSidebar() {\n return (\n \n \n \n \n Projects\n \n }>\n \n \n \n \n \n \n \n )\n}\n\nfunction NavProjectsSkeleton() {\n return (\n \n {Array.from({ length: 5 }).map((_, index) => (\n \n \n \n ))}\n \n )\n}\n\nasync function NavProjects() {\n const projects = await fetchProjects()\n\n return (\n \n {projects.map((project) => (\n \n \n \n \n {project.name}\n \n \n \n ))}\n \n )\n}\n", "type": "registry:component" } ] }