import * as React from "react" import { X } from "lucide-react" import { cn } from "@/lib/utils" import { useDialogKeyboardShortcuts } from "@/lib/keyboard-shortcuts" const Dialog = React.forwardRef< HTMLDivElement, React.HTMLAttributes & { open?: boolean onOpenChange?: (open: boolean) => void } >(({ className, open, onOpenChange, children, ...props }, ref) => { // Add keyboard shortcut support for closing dialog with Esc useDialogKeyboardShortcuts(() => { if (open && onOpenChange) { onOpenChange(false); } }); if (!open) return null return (
onOpenChange?.(false)} />
{children}
) }) Dialog.displayName = "Dialog" const DialogHeader = ({ className, ...props }: React.HTMLAttributes) => (
) DialogHeader.displayName = "DialogHeader" const DialogTitle = React.forwardRef< HTMLParagraphElement, React.HTMLAttributes >(({ className, ...props }, ref) => (

)) DialogTitle.displayName = "DialogTitle" const DialogDescription = React.forwardRef< HTMLParagraphElement, React.HTMLAttributes >(({ className, ...props }, ref) => (

)) DialogDescription.displayName = "DialogDescription" const DialogContent = React.forwardRef< HTMLDivElement, React.HTMLAttributes >(({ className, ...props }, ref) => (

)) DialogContent.displayName = "DialogContent" const DialogFooter = ({ className, ...props }: React.HTMLAttributes) => (
) DialogFooter.displayName = "DialogFooter" export { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, }