'use client' import { useState, useEffect } from 'react' import Link from 'next/link' import { usePathname, useSearchParams } from 'next/navigation' import { cn } from '@/lib/utils' import { Lightbulb, Bell, Tag, Archive, Trash2, Pencil, ChevronRight, Plus } from 'lucide-react' import { useLabels } from '@/context/LabelContext' import { useLanguage } from '@/lib/i18n' import { NotebooksList } from './notebooks-list' export function Sidebar({ className, user }: { className?: string, user?: any }) { const pathname = usePathname() const searchParams = useSearchParams() const { labels } = useLabels() const { t } = useLanguage() // Helper to determine if a link is active const isActive = (href: string, exact = false) => { if (href === '/') { // Home is active only if no special filters are applied return pathname === '/' && !searchParams.get('label') && !searchParams.get('archived') && !searchParams.get('trashed') } // For labels if (href.startsWith('/?label=')) { const labelParam = searchParams.get('label') // Extract label from href const labelFromHref = href.split('=')[1] return labelParam === labelFromHref } // For other routes return pathname === href } const NavItem = ({ href, icon: Icon, label, active }: any) => ( {label} ) return ( ) }