mirror of
https://github.com/hanzoai/shadcn.git
synced 2026-11-03 03:18:52 +00:00
- Updated build-registry.mts to include all component types (ui, ai, 3d, animation, code, etc.) - Fixed missing components issue by processing all components that start with 'components:' - Now properly handles components that only exist in one theme variant - Registry now contains 363 components (up from 117) - AI, 3D, animation, and code components are now accessible via the registry
18 lines
8.7 KiB
JSON
18 lines
8.7 KiB
JSON
{
|
|
"name": "dashboard-04",
|
|
"registryDependencies": [
|
|
"button",
|
|
"card",
|
|
"dropdown-menu",
|
|
"input"
|
|
],
|
|
"files": [
|
|
{
|
|
"name": "dashboard-04.tsx",
|
|
"content": "import Link from \"next/link\"\nimport { CircleUser, Menu, Package2, Search } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"@/registry/default/ui/card\"\nimport { Checkbox } from \"@/registry/default/ui/checkbox\"\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/registry/default/ui/dropdown-menu\"\nimport { Input } from \"@/registry/default/ui/input\"\nimport { Sheet, SheetContent, SheetTrigger } from \"@/registry/default/ui/sheet\"\n\nexport const description =\n \"A settings page. The settings page has a sidebar navigation and a main content area. The main content area has a form to update the store name and a form to update the plugins directory. The sidebar navigation has links to general, security, integrations, support, organizations, and advanced settings.\"\n\nexport const iframeHeight = \"780px\"\n\nexport const containerClassName = \"w-full h-full\"\n\nexport default function Dashboard() {\n return (\n <div className=\"flex min-h-screen w-full flex-col\">\n <header className=\"sticky top-0 flex h-16 items-center gap-4 border-b bg-background px-4 md:px-6\">\n <nav className=\"hidden flex-col gap-6 text-lg font-medium md:flex md:flex-row md:items-center md:gap-5 md:text-sm lg:gap-6\">\n <Link\n href=\"#\"\n className=\"flex items-center gap-2 text-lg font-semibold md:text-base\"\n >\n <Package2 className=\"h-6 w-6\" />\n <span className=\"sr-only\">Acme Inc</span>\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground transition-colors hover:text-foreground\"\n >\n Dashboard\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground transition-colors hover:text-foreground\"\n >\n Orders\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground transition-colors hover:text-foreground\"\n >\n Products\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground transition-colors hover:text-foreground\"\n >\n Customers\n </Link>\n <Link\n href=\"#\"\n className=\"text-foreground transition-colors hover:text-foreground\"\n >\n Settings\n </Link>\n </nav>\n <Sheet>\n <SheetTrigger asChild>\n <Button\n variant=\"outline\"\n size=\"icon\"\n className=\"shrink-0 md:hidden\"\n >\n <Menu className=\"h-5 w-5\" />\n <span className=\"sr-only\">Toggle navigation menu</span>\n </Button>\n </SheetTrigger>\n <SheetContent side=\"left\">\n <nav className=\"grid gap-6 text-lg font-medium\">\n <Link\n href=\"#\"\n className=\"flex items-center gap-2 text-lg font-semibold\"\n >\n <Package2 className=\"h-6 w-6\" />\n <span className=\"sr-only\">Acme Inc</span>\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground hover:text-foreground\"\n >\n Dashboard\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground hover:text-foreground\"\n >\n Orders\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground hover:text-foreground\"\n >\n Products\n </Link>\n <Link\n href=\"#\"\n className=\"text-muted-foreground hover:text-foreground\"\n >\n Customers\n </Link>\n <Link href=\"#\" className=\"hover:text-foreground\">\n Settings\n </Link>\n </nav>\n </SheetContent>\n </Sheet>\n <div className=\"flex w-full items-center gap-4 md:ml-auto md:gap-2 lg:gap-4\">\n <form className=\"ml-auto flex-1 sm:flex-initial\">\n <div className=\"relative\">\n <Search className=\"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground\" />\n <Input\n type=\"search\"\n placeholder=\"Search products...\"\n className=\"pl-8 sm:w-[300px] md:w-[200px] lg:w-[300px]\"\n />\n </div>\n </form>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"secondary\" size=\"icon\" className=\"rounded-full\">\n <CircleUser className=\"h-5 w-5\" />\n <span className=\"sr-only\">Toggle user menu</span>\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n <DropdownMenuLabel>My Account</DropdownMenuLabel>\n <DropdownMenuSeparator />\n <DropdownMenuItem>Settings</DropdownMenuItem>\n <DropdownMenuItem>Support</DropdownMenuItem>\n <DropdownMenuSeparator />\n <DropdownMenuItem>Logout</DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n </header>\n <main className=\"flex min-h-[calc(100vh_-_theme(spacing.16))] flex-1 flex-col gap-4 bg-muted/40 p-4 md:gap-8 md:p-10\">\n <div className=\"mx-auto grid w-full max-w-6xl gap-2\">\n <h1 className=\"text-3xl font-semibold\">Settings</h1>\n </div>\n <div className=\"mx-auto grid w-full max-w-6xl items-start gap-6 md:grid-cols-[180px_1fr] lg:grid-cols-[250px_1fr]\">\n <nav\n className=\"grid gap-4 text-sm text-muted-foreground\"\n x-chunk=\"dashboard-04-chunk-0\"\n >\n <Link href=\"#\" className=\"font-semibold text-primary\">\n General\n </Link>\n <Link href=\"#\">Security</Link>\n <Link href=\"#\">Integrations</Link>\n <Link href=\"#\">Support</Link>\n <Link href=\"#\">Organizations</Link>\n <Link href=\"#\">Advanced</Link>\n </nav>\n <div className=\"grid gap-6\">\n <Card x-chunk=\"dashboard-04-chunk-1\">\n <CardHeader>\n <CardTitle>Store Name</CardTitle>\n <CardDescription>\n Used to identify your store in the marketplace.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <form>\n <Input placeholder=\"Store Name\" />\n </form>\n </CardContent>\n <CardFooter className=\"border-t px-6 py-4\">\n <Button>Save</Button>\n </CardFooter>\n </Card>\n <Card x-chunk=\"dashboard-04-chunk-2\">\n <CardHeader>\n <CardTitle>Plugins Directory</CardTitle>\n <CardDescription>\n The directory within your project, in which your plugins are\n located.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <form className=\"flex flex-col gap-4\">\n <Input\n placeholder=\"Project Name\"\n defaultValue=\"/content/plugins\"\n />\n <div className=\"flex items-center space-x-2\">\n <Checkbox id=\"include\" defaultChecked />\n <label\n htmlFor=\"include\"\n className=\"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n Allow administrators to change the directory.\n </label>\n </div>\n </form>\n </CardContent>\n <CardFooter className=\"border-t px-6 py-4\">\n <Button>Save</Button>\n </CardFooter>\n </Card>\n </div>\n </div>\n </main>\n </div>\n )\n}\n"
|
|
}
|
|
],
|
|
"type": "components:block",
|
|
"category": "Application",
|
|
"subcategory": "Dashboard"
|
|
} |