"use client"; import React, { useState, useEffect } from 'react'; import { Home, User, Settings, LogOut, Menu, X, ChevronLeft, ChevronRight, BarChart3, FileText, Bell, Search, HelpCircle } from 'lucide-react'; interface NavigationItem { id: string; name: string; icon: React.ComponentType<{ className?: string }>; href: string; badge?: string; } interface SidebarProps { className?: string; } // Updated navigation items - remove logout from here const navigationItems: NavigationItem[] = [ { id: "dashboard", name: "Dashboard", icon: Home, href: "/dashboard" }, { id: "analytics", name: "Analytics", icon: BarChart3, href: "/analytics" }, { id: "documents", name: "Documents", icon: FileText, href: "/documents", badge: "3" }, { id: "notifications", name: "Notifications", icon: Bell, href: "/notifications", badge: "12" }, { id: "profile", name: "Profile", icon: User, href: "/profile" }, { id: "settings", name: "Settings", icon: Settings, href: "/settings" }, { id: "help", name: "Help & Support", icon: HelpCircle, href: "/help" }, ]; export function Sidebar({ className = "" }: SidebarProps) { const [isOpen, setIsOpen] = useState(false); const [isCollapsed, setIsCollapsed] = useState(false); const [activeItem, setActiveItem] = useState("dashboard"); // Auto-open sidebar on desktop useEffect(() => { const handleResize = () => { if (window.innerWidth >= 768) { setIsOpen(true); } else { setIsOpen(false); } }; handleResize(); window.addEventListener('resize', handleResize); return () => window.removeEventListener('resize', handleResize); }, []); const toggleSidebar = () => setIsOpen(!isOpen); const toggleCollapse = () => setIsCollapsed(!isCollapsed); const handleItemClick = (itemId: string) => { setActiveItem(itemId); if (window.innerWidth < 768) { setIsOpen(false); } }; return ( <> {/* Mobile hamburger button */} {/* Mobile overlay */} {isOpen && (
)} {/* Sidebar */}John Doe
Senior Administrator