import React, { useState } from 'react'; import { Bell, Box, CheckCircle2, MessageSquare, Menu, X, LogOut, User as UserIcon, BookOpen } from 'lucide-react'; import { Link, useNavigate } from 'react-router-dom'; import { Avatar, AvatarFallback, AvatarImage } from "../../components/ui/avatar"; import { Button } from "../../components/ui/button"; import { Popover, PopoverContent, PopoverTrigger } from "../../components/ui/popover"; // eslint-disable-next-line no-unused-vars import useTicketStore from "../../store/ticketStore"; // removed useNotificationStore import NotificationPopover from "./NotificationPopover"; import useAuthStore from "../../store/authStore"; const TopNav = () => { const navigate = useNavigate(); const { profile, logout } = useAuthStore(); const [isMenuOpen, setIsMenuOpen] = useState(false); const initials = profile?.full_name ? profile.full_name[0].toUpperCase() : (profile?.email ? profile.email[0].toUpperCase() : 'U'); const handleLogout = async () => { await logout(); navigate('/login'); }; return (
{/* Left: Logo */}
navigate('/dashboard')}>
HELPDESK.AI Logo

HELPDESK.AI

{/* Center: Navigation Links */} {/* Right: Profile */}
navigate('/profile')} className="size-9 border border-gray-200 cursor-pointer hover:ring-2 hover:ring-emerald-500 hover:ring-offset-2 transition-all" > {initials}
{/* Mobile Menu Overlay */} {isMenuOpen && (
{initials}

{profile?.full_name}

{profile?.email}

setIsMenuOpen(false)} className="flex items-center gap-3 text-lg font-bold text-gray-700 hover:text-emerald-700 transition-colors" > Dashboard setIsMenuOpen(false)} className="flex items-center gap-3 text-lg font-bold text-gray-700 hover:text-emerald-700 transition-colors" > My Tickets setIsMenuOpen(false)} className="flex items-center gap-3 text-lg font-bold text-gray-700 hover:text-emerald-700 transition-colors" > My Profile setIsMenuOpen(false)} className="flex items-center gap-3 text-lg font-bold text-gray-700 hover:text-emerald-700 transition-colors" > Documentation
)}
); }; export default TopNav;