import React, { useEffect, useRef, useState } from 'react'; import { MoreHorizontal, UserPlus, UserCheck, Table2 } from 'lucide-react'; /** * Mobile header overflow for wide labeled actions (human participant, * table view). Mirrors DownloadMenu's open/close pattern. */ export default function HeaderMoreMenu({ humanParticipant, onOpenHumanModal, hasChat, onShowTableView, }) { const [open, setOpen] = useState(false); const wrapRef = useRef(null); useEffect(() => { function handleClickOutside(e) { if (wrapRef.current && !wrapRef.current.contains(e.target)) { setOpen(false); } } document.addEventListener('mousedown', handleClickOutside); return () => document.removeEventListener('mousedown', handleClickOutside); }, []); const fire = (fn) => () => { fn?.(); setOpen(false); }; return (