{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "components-base-alert-dialog",
  "title": "Alert Dialog",
  "description": "A dialog that requires user response to proceed.",
  "registryDependencies": [
    "@animate-ui/primitives-base-alert-dialog",
    "@animate-ui/components-buttons-button"
  ],
  "files": [
    {
      "path": "registry/components/base/alert-dialog/index.tsx",
      "content": "import * as React from 'react';\n\nimport {\n  AlertDialog as AlertDialogPrimitive,\n  AlertDialogPopup as AlertDialogPopupPrimitive,\n  AlertDialogDescription as AlertDialogDescriptionPrimitive,\n  AlertDialogFooter as AlertDialogFooterPrimitive,\n  AlertDialogHeader as AlertDialogHeaderPrimitive,\n  AlertDialogTitle as AlertDialogTitlePrimitive,\n  AlertDialogTrigger as AlertDialogTriggerPrimitive,\n  AlertDialogPortal as AlertDialogPortalPrimitive,\n  AlertDialogBackdrop as AlertDialogBackdropPrimitive,\n  AlertDialogClose as AlertDialogClosePrimitive,\n  type AlertDialogProps as AlertDialogPrimitiveProps,\n  type AlertDialogPopupProps as AlertDialogPopupPrimitiveProps,\n  type AlertDialogDescriptionProps as AlertDialogDescriptionPrimitiveProps,\n  type AlertDialogFooterProps as AlertDialogFooterPrimitiveProps,\n  type AlertDialogHeaderProps as AlertDialogHeaderPrimitiveProps,\n  type AlertDialogTitleProps as AlertDialogTitlePrimitiveProps,\n  type AlertDialogTriggerProps as AlertDialogTriggerPrimitiveProps,\n  type AlertDialogBackdropProps as AlertDialogBackdropPrimitiveProps,\n  type AlertDialogCloseProps as AlertDialogClosePrimitiveProps,\n} from '@/components/animate-ui/primitives/base/alert-dialog';\nimport { buttonVariants } from '@/components/animate-ui/components/buttons/button';\nimport { cn } from '@/lib/utils';\n\ntype AlertDialogProps = AlertDialogPrimitiveProps;\n\nfunction AlertDialog(props: AlertDialogProps) {\n  return <AlertDialogPrimitive {...props} />;\n}\n\ntype AlertDialogTriggerProps = AlertDialogTriggerPrimitiveProps;\n\nfunction AlertDialogTrigger(props: AlertDialogTriggerProps) {\n  return <AlertDialogTriggerPrimitive {...props} />;\n}\n\ntype AlertDialogBackdropProps = AlertDialogBackdropPrimitiveProps;\n\nfunction AlertDialogBackdrop({\n  className,\n  ...props\n}: AlertDialogBackdropProps) {\n  return (\n    <AlertDialogBackdropPrimitive\n      className={cn('fixed inset-0 z-50 bg-black/50', className)}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogPopupProps = AlertDialogPopupPrimitiveProps;\n\nfunction AlertDialogPopup({ className, ...props }: AlertDialogPopupProps) {\n  return (\n    <AlertDialogPortalPrimitive>\n      <AlertDialogBackdrop />\n      <AlertDialogPopupPrimitive\n        className={cn(\n          'bg-background fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg sm:max-w-lg',\n          className,\n        )}\n        {...props}\n      />\n    </AlertDialogPortalPrimitive>\n  );\n}\n\ntype AlertDialogHeaderProps = AlertDialogHeaderPrimitiveProps;\n\nfunction AlertDialogHeader({ className, ...props }: AlertDialogHeaderProps) {\n  return (\n    <AlertDialogHeaderPrimitive\n      className={cn('flex flex-col gap-2 text-center sm:text-left', className)}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogFooterProps = AlertDialogFooterPrimitiveProps;\n\nfunction AlertDialogFooter({ className, ...props }: AlertDialogFooterProps) {\n  return (\n    <AlertDialogFooterPrimitive\n      className={cn(\n        'flex flex-col-reverse gap-2 sm:flex-row sm:justify-end',\n        className,\n      )}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogTitleProps = AlertDialogTitlePrimitiveProps;\n\nfunction AlertDialogTitle({ className, ...props }: AlertDialogTitleProps) {\n  return (\n    <AlertDialogTitlePrimitive\n      className={cn('text-lg font-semibold', className)}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogDescriptionProps = AlertDialogDescriptionPrimitiveProps;\n\nfunction AlertDialogDescription({\n  className,\n  ...props\n}: AlertDialogDescriptionProps) {\n  return (\n    <AlertDialogDescriptionPrimitive\n      className={cn('text-muted-foreground text-sm', className)}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogActionProps = AlertDialogClosePrimitiveProps;\n\nfunction AlertDialogAction({ className, ...props }: AlertDialogActionProps) {\n  return (\n    <AlertDialogClosePrimitive\n      className={cn(buttonVariants(), className)}\n      {...props}\n    />\n  );\n}\n\ntype AlertDialogCancelProps = AlertDialogClosePrimitiveProps;\n\nfunction AlertDialogCancel({ className, ...props }: AlertDialogCancelProps) {\n  return (\n    <AlertDialogClosePrimitive\n      className={cn(buttonVariants({ variant: 'outline' }), className)}\n      {...props}\n    />\n  );\n}\n\nexport {\n  AlertDialog,\n  AlertDialogTrigger,\n  AlertDialogPopup,\n  AlertDialogHeader,\n  AlertDialogFooter,\n  AlertDialogTitle,\n  AlertDialogDescription,\n  AlertDialogAction,\n  AlertDialogCancel,\n  type AlertDialogProps,\n  type AlertDialogTriggerProps,\n  type AlertDialogPopupProps,\n  type AlertDialogHeaderProps,\n  type AlertDialogFooterProps,\n  type AlertDialogTitleProps,\n  type AlertDialogDescriptionProps,\n  type AlertDialogActionProps,\n  type AlertDialogCancelProps,\n};\n",
      "type": "registry:ui",
      "target": "components/animate-ui/components/base/alert-dialog.tsx"
    }
  ],
  "type": "registry:ui"
}