'use client'; import Link from 'next/link'; import { usePathname, useRouter } from 'next/navigation'; import { FileText, Network, Scale, Globe, LayoutDashboard, LogOut, Menu, X, Terminal, GitBranch, } from 'lucide-react'; import { useState } from 'react'; import { useAuthStore } from '@/store/auth'; import { ThemeToggle } from './ThemeToggle'; import { cn } from '@/lib/utils'; const navItems = [ { href: '/', label: 'Query', icon: LayoutDashboard, exact: true }, { href: '/documents', label: 'Documents', icon: FileText }, { href: '/explore', label: 'Explore', icon: Network }, { href: '/multihop', label: 'Multi-Hop', icon: GitBranch }, { href: '/compare', label: 'Compare', icon: Scale }, { href: '/communities', label: 'Community', icon: Globe }, { href: '/cypher', label: 'Cypher Editor', icon: Terminal }, ]; function NavLinks({ onNavigate }: { onNavigate?: () => void }) { const pathname = usePathname(); return ( ); } export function Sidebar() { const [mobileOpen, setMobileOpen] = useState(false); const user = useAuthStore((s) => s.user); const logout = useAuthStore((s) => s.logout); const router = useRouter(); const handleLogout = () => { logout(); router.replace('/login'); }; return ( <> {/* Desktop sidebar */} {/* Mobile top bar with hamburger */}