'use client'; import { BarChart3, Bookmark, Bot, Building2, CreditCard, Factory, FileText, Gem, Home, List, LogOut, MessageSquare, Moon, Plus, Search, Sun, Target, User, type LucideIcon, } from 'lucide-react'; import Image from 'next/image'; import { usePathname } from 'next/navigation'; import { useTranslations } from 'next-intl'; import { useEffect, useState } from 'react'; import { DashboardLayout } from '@/components/design-system/dashboard-layout'; import { CompactHeader } from '@/components/design-system/compact-header'; import { TickerStrip } from '@/components/design-system/ticker-strip'; import type { TickerItem } from '@/components/design-system/ticker-strip'; import { NotificationBell } from '@/components/notifications/notification-bell'; import { useTheme } from '@/components/providers/theme-provider'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { LanguageSwitcher } from '@/components/ui/language-switcher'; import { Link } from '@/i18n/navigation'; import { useRouter } from '@/i18n/navigation'; import { useAuthStore } from '@/lib/auth-store'; import { cn } from '@/lib/utils'; interface NavItem { href: string; label: string; icon: LucideIcon; } interface NavGroup { label: string; items: NavItem[]; } /** Icon-only sidebar button with tooltip. */ function SidebarNavItem({ item, active, onClick, }: { item: NavItem; active: boolean; onClick?: () => void; }) { return (