'use client'; import Link from 'next/link'; import { usePathname } from 'next/navigation'; import { useAuthStore } from '@/stores/authStore'; /** * Sidebar navigation items with icons */ const sidebarItems = [ { href: '/dashboard', label: 'Dashboard', icon: ( ), }, { href: '/beneficiaries', label: 'Loved Ones', icon: ( ), }, { href: '/sensors', label: 'Sensors', icon: ( ), }, { href: '/settings', label: 'Settings', icon: ( ), }, ]; /** * Sidebar Component * * Desktop-only sidebar navigation. * Hidden on mobile/tablet, shown on desktop (lg and above). * * Features: * - Active state highlighting * - Icon + label navigation * - User profile section at bottom * - Logout button * * @example * ```tsx * * ``` */ export function Sidebar() { const pathname = usePathname(); const { user, logout } = useAuthStore(); const userInitials = user?.firstName && user?.lastName ? `${user.firstName[0]}${user.lastName[0]}`.toUpperCase() : user?.email?.[0]?.toUpperCase() || '?'; const userName = user?.firstName && user?.lastName ? `${user.firstName} ${user.lastName}` : user?.email || 'User'; return ( ); }