{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "card", "title": "Card", "description": "A content container with header, content, footer, action, and description slots.", "dependencies": [ "clsx", "tailwind-merge" ], "registryDependencies": [ "https://ui.digital.nsw.gov.au/registry/r/theme.json" ], "files": [ { "path": "src/components/card.tsx", "content": "import * as React from 'react'\n\nimport { cn } from '@/lib/utils'\n\nfunction Card({\n className,\n size = 'default',\n ref,\n ...props\n}: React.ComponentProps<'div'> & { size?: 'default' | 'sm' }) {\n return (\n img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-6 *:[img:first-child]:rounded-t-md *:[img:last-child]:rounded-b-md',\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nfunction CardTitle({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nfunction CardDescription({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nfunction CardAction({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nfunction CardContent({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nfunction CardFooter({ className, ref, ...props }: React.ComponentProps<'div'>) {\n return (\n \n )\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle }\n\n// Derived prop types — exact component props for consumers wrapping these.\nexport type CardProps = React.ComponentProps\nexport type CardHeaderProps = React.ComponentProps\nexport type CardTitleProps = React.ComponentProps\nexport type CardDescriptionProps = React.ComponentProps\nexport type CardActionProps = React.ComponentProps\nexport type CardContentProps = React.ComponentProps\nexport type CardFooterProps = React.ComponentProps\n", "type": "registry:ui", "target": "components/card.tsx" }, { "path": "src/lib/utils.ts", "content": "import { clsx, type ClassValue } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n", "type": "registry:lib", "target": "lib/utils.ts" } ], "type": "registry:ui", "meta": { "nswdsVersion": "5.1.0" } }