import { NavLink } from 'react-router-dom'
import {
LayoutDashboard,
ListTodo,
FolderKanban,
Tags,
BarChart3,
Users,
Settings,
X,
Building2,
Sun,
Moon,
} from 'lucide-react'
import { Chip, ChipLabel } from '@heroui/react'
import { useAuth } from '../../contexts/AuthContext'
import { useTheme } from '../../contexts/ThemeContext'
interface SidebarProps {
isMobileOpen: boolean
onCloseMobile: () => void
}
export const Sidebar = ({ isMobileOpen, onCloseMobile }: SidebarProps) => {
const { activeOrg } = useAuth()
const { theme, toggleTheme } = useTheme()
const navItems = [
{
group: 'Principal',
links: [
{ to: '/dashboard', label: 'Meu Dashboard', icon: },
{ to: '/tasks', label: 'Tarefas & Board', icon: },
],
},
{
group: 'Estrutura',
links: [
{ to: '/projects', label: 'Projetos', icon: },
{ to: '/categories', label: 'Categorias', icon: },
],
},
{
group: 'Gestão & Equipe',
links: [
{ to: '/analytics', label: 'Analytics da Org', icon: },
{ to: '/members', label: 'Membros & Squads', icon: },
{ to: '/organization/settings', label: 'Configurações', icon: },
],
},
]
const navContent = (
{/* Brand & Logo */}
🐝
BeeTask
v3.0
Workspace Ágil
{/* Mobile close button */}
{/* Nav List */}
{navItems.map((group, idx) => (
{group.group}
{group.links.map((link) => (
`flex items-center gap-3 px-3 py-2.5 rounded-xl text-xs font-semibold transition-all ${
isActive
? 'bg-brand text-white shadow-md shadow-brand/20 font-bold'
: 'text-text-muted hover:text-text-main hover:bg-surface-muted'
}`
}
>
{link.icon}
{link.label}
))}
))}
{/* Bottom Workspace Card Info */}
{activeOrg?.name || 'Workspace Padrão'}
{activeOrg?.roles[0] || 'Ativo'}
)
return (
<>
{/* Desktop Sidebar (Permanent) */}
{/* Mobile Sidebar (Drawer Overlay) */}
{isMobileOpen && (
)}
>
)
}