mirror of
https://github.com/hanzoai/shadcn.git
synced 2026-10-30 18:22:59 +00:00
Squash merge of shadcn-ui/ui main branch into hanzo/ui, bringing in: - [email protected] through [email protected] releases - New apps/v4 directory structure - Registry system improvements and MCP server - Framework support (Vue, Svelte, React Native) - New templates (vite-app, monorepo-next, laravel) - Zod 4 compatibility (scoped override for zod@>4) - Test fixture corrections for alias resolution All 867 merge conflicts resolved preserving Hanzo customizations. 1020/1020 shadcn tests pass.
17 lines
3.1 KiB
JSON
17 lines
3.1 KiB
JSON
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
"name": "skeleton-example",
|
|
"title": "Skeleton",
|
|
"registryDependencies": [
|
|
"skeleton",
|
|
"example"
|
|
],
|
|
"files": [
|
|
{
|
|
"path": "registry/base-nova/examples/skeleton-example.tsx",
|
|
"content": "import {\n Example,\n ExampleWrapper,\n} from \"@/registry/base-nova/components/example\"\nimport { Card, CardContent, CardHeader } from \"@/registry/base-nova/ui/card\"\nimport { Skeleton } from \"@/registry/base-nova/ui/skeleton\"\n\nexport default function SkeletonExample() {\n return (\n <ExampleWrapper>\n <SkeletonAvatar />\n <SkeletonCard />\n <SkeletonText />\n <SkeletonForm />\n <SkeletonTable />\n </ExampleWrapper>\n )\n}\n\nfunction SkeletonAvatar() {\n return (\n <Example title=\"Avatar\">\n <div className=\"flex w-full items-center gap-4\">\n <Skeleton className=\"size-10 shrink-0 rounded-full\" />\n <div className=\"grid gap-2\">\n <Skeleton className=\"h-4 w-[150px]\" />\n <Skeleton className=\"h-4 w-[100px]\" />\n </div>\n </div>\n </Example>\n )\n}\n\nfunction SkeletonCard() {\n return (\n <Example title=\"Card\">\n <Card className=\"w-full\">\n <CardHeader>\n <Skeleton className=\"h-4 w-2/3\" />\n <Skeleton className=\"h-4 w-1/2\" />\n </CardHeader>\n <CardContent>\n <Skeleton className=\"aspect-square w-full\" />\n </CardContent>\n </Card>\n </Example>\n )\n}\n\nfunction SkeletonText() {\n return (\n <Example title=\"Text\">\n <div className=\"flex w-full flex-col gap-2\">\n <Skeleton className=\"h-4 w-full\" />\n <Skeleton className=\"h-4 w-full\" />\n <Skeleton className=\"h-4 w-3/4\" />\n </div>\n </Example>\n )\n}\n\nfunction SkeletonForm() {\n return (\n <Example title=\"Form\">\n <div className=\"flex w-full flex-col gap-7\">\n <div className=\"flex flex-col gap-3\">\n <Skeleton className=\"h-4 w-20\" />\n <Skeleton className=\"h-10 w-full\" />\n </div>\n <div className=\"flex flex-col gap-3\">\n <Skeleton className=\"h-4 w-24\" />\n <Skeleton className=\"h-10 w-full\" />\n </div>\n <Skeleton className=\"h-9 w-24\" />\n </div>\n </Example>\n )\n}\n\nfunction SkeletonTable() {\n return (\n <Example title=\"Table\">\n <div className=\"flex w-full flex-col gap-2\">\n <div className=\"flex gap-4\">\n <Skeleton className=\"h-4 flex-1\" />\n <Skeleton className=\"h-4 w-24\" />\n <Skeleton className=\"h-4 w-20\" />\n </div>\n <div className=\"flex gap-4\">\n <Skeleton className=\"h-4 flex-1\" />\n <Skeleton className=\"h-4 w-24\" />\n <Skeleton className=\"h-4 w-20\" />\n </div>\n <div className=\"flex gap-4\">\n <Skeleton className=\"h-4 flex-1\" />\n <Skeleton className=\"h-4 w-24\" />\n <Skeleton className=\"h-4 w-20\" />\n </div>\n </div>\n </Example>\n )\n}\n",
|
|
"type": "registry:example"
|
|
}
|
|
],
|
|
"type": "registry:example"
|
|
} |