'use client'; import * as React from 'react'; import * as DialogPrimitive from '@radix-ui/react-dialog'; import { Cross2Icon } from '@radix-ui/react-icons'; import { cn } from '../lib/utils'; const Dialog = DialogPrimitive.Root; const DialogTrigger = DialogPrimitive.Trigger; const DialogPortal = DialogPrimitive.Portal; const DialogClose = DialogPrimitive.Close; const DialogOverlay: React.FC< React.ComponentPropsWithRef > = ({ className, ...props }) => ( ); DialogOverlay.displayName = DialogPrimitive.Overlay.displayName; const DialogContent: React.FC< React.ComponentPropsWithoutRef & { customClose?: React.JSX.Element; preventAutoFocus?: boolean; } > = ({ className, children, customClose, preventAutoFocus, ...props }) => ( e.preventDefault() : props.onOpenAutoFocus } onCloseAutoFocus={ preventAutoFocus ? (e) => e.preventDefault() : props.onOpenAutoFocus } {...props} > {children} {customClose || ( <> Close )} ); DialogContent.displayName = DialogPrimitive.Content.displayName; const DialogHeader = ({ className, ...props }: React.HTMLAttributes) => (
); DialogHeader.displayName = 'DialogHeader'; const DialogFooter = ({ className, ...props }: React.HTMLAttributes) => (
); DialogFooter.displayName = 'DialogFooter'; const DialogTitle: React.FC< React.ComponentPropsWithRef > = ({ className, ...props }) => ( ); DialogTitle.displayName = DialogPrimitive.Title.displayName; const DialogDescription: React.FC< React.ComponentPropsWithRef > = ({ className, ...props }) => ( ); DialogDescription.displayName = DialogPrimitive.Description.displayName; export { Dialog, DialogPortal, DialogOverlay, DialogTrigger, DialogClose, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription, };