{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "dialog", "title": "Dialog", "description": "A modal dialog component built on Radix UI.", "dependencies": [ "lucide-react", "radix-ui" ], "files": [ { "path": "registry/default/ui/dialog.tsx", "content": "'use client';\n\nimport { Dialog as DialogPrimitive } from 'radix-ui';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nfunction Dialog({\n ...props\n}: React.ComponentProps) {\n return ;\n}\n\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps) {\n return ;\n}\n\nfunction DialogPortal({\n ...props\n}: React.ComponentProps) {\n return ;\n}\n\nfunction DialogClose({\n ...props\n}: React.ComponentProps) {\n return ;\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n );\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps & {\n showCloseButton?: boolean;\n}) {\n return (\n \n \n \n {children}\n {showCloseButton && (\n \n \n Close\n \n )}\n \n \n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n \n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n \n );\n}\n\nfunction DialogTitle({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps) {\n return (\n \n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n", "type": "registry:ui" } ], "type": "registry:ui" }