"use client"; import { useState, useRef, useEffect } from "react"; import { cn } from "@/lib/utils"; import { ChevronDown, Activity } from "lucide-react"; interface SidebarSiteSelectorProps { user: { role?: string } | null; selectedSite: string; handleSiteSelect: (val: string) => void; } export default function SidebarSiteSelector({ user, selectedSite, handleSiteSelect, }: SidebarSiteSelectorProps) { const [isOpen, setIsOpen] = useState(false); const ref = useRef(null); useEffect(() => { function handleClickOutside(event: MouseEvent) { if (ref.current && !ref.current.contains(event.target as Node)) { setIsOpen(false); } } document.addEventListener("mousedown", handleClickOutside); return () => document.removeEventListener("mousedown", handleClickOutside); }, []); if (!user || !['SUPER_ADMIN', 'EXECUTIVE', 'SOC_ANALYST', 'ENGINEER'].includes(user.role || '')) { return null; } const getSiteLabel = (uuid: string) => { if (uuid === '6681452d_9cae_4ff4_8ae8_0d504774265e') return 'SIAB'; if (uuid === '1959bb55_045b_47c7_bbdd_f33b7db197b9') return 'Office'; return 'SIAB'; }; return (
); }