import React, { useEffect } from 'react'; import ReactDOM from 'react-dom'; import { AlertTriangle } from 'lucide-react'; import '../styles/ConfirmDialog.css'; const ConfirmDialog = ({ isOpen, title, message, confirmLabel = 'Confirm', cancelLabel = 'Cancel', onConfirm, onCancel, tone = 'default', }) => { useEffect(() => { if (!isOpen) return; const onKey = (e) => e.key === 'Escape' && onCancel?.(); window.addEventListener('keydown', onKey); return () => window.removeEventListener('keydown', onKey); }, [isOpen, onCancel]); if (!isOpen) return null; const isDanger = tone === 'danger'; return ReactDOM.createPortal(
{message}
}