import { Badge } from 'modern-sk'; import { NavLink, useNavigate } from 'react-router'; import { ConnectionStatus } from '../common/ConnectionStatus'; import { useAppSelector, useAppDispatch } from '../../hooks/useAppDispatch'; import { usePermissions } from '../../hooks/usePermissions'; import { logout } from '../../store/slices/auth'; const NAV_ITEMS = [ { to: '/', label: 'Home', icon: '⌂' }, { to: '/library', label: 'Library', icon: '♫' }, { to: '/search', label: 'Search & Download', icon: '⊕' }, { to: '/downloads', label: 'Downloads', icon: '↓' }, { to: '/storage', label: 'Storage', icon: '⊞' }, { to: '/settings', label: 'Settings', icon: '⚙' }, ] as const; const ADMIN_ITEMS = [ { to: '/admin', label: 'Admin', icon: '🔑' }, ] as const; export function Sidebar() { const dispatch = useAppDispatch(); const navigate = useNavigate(); const { user, isAdmin } = usePermissions(); const collapsed = useAppSelector((s) => s.ui.sidebarCollapsed); const handleLogout = () => { dispatch(logout()); void navigate('/connect'); }; return ( ); }