import { useEffect, useRef, useState } from "react"; import { Download, Upload, ChevronDown } from "lucide-react"; import { Button } from "../ui/Button"; interface ImportExportMenuProps { onImport: () => void; onExport: () => void; } export function ImportExportMenu({ onImport, onExport }: ImportExportMenuProps) { const [open, setOpen] = useState(false); const ref = useRef(null); useEffect(() => { if (!open) return; const handler = (e: MouseEvent) => { if (ref.current && !ref.current.contains(e.target as Node)) { setOpen(false); } }; document.addEventListener("mousedown", handler); return () => document.removeEventListener("mousedown", handler); }, [open]); return (
{open && (
)}
); }