"use client"; import type React from "react"; import { useEffect, useRef } from "react"; interface DropdownProps { isOpen: boolean; onClose: () => void; children: React.ReactNode; className?: string; } export const Dropdown: React.FC = ({ isOpen, onClose, children, className = "", }) => { const dropdownRef = useRef(null); useEffect(() => { const handleClickOutside = (event: MouseEvent) => { if ( dropdownRef.current && !dropdownRef.current.contains(event.target as Node) && !(event.target as HTMLElement).closest('.dropdown-toggle') ) { onClose(); } }; document.addEventListener("mousedown", handleClickOutside); return () => { document.removeEventListener("mousedown", handleClickOutside); }; }, [onClose]); if (!isOpen) return null; return (
{children}
); };