import { Link, useLocation } from "wouter"; import { useAuth } from "@/hooks/useAuth"; import { useTheme } from "@/context/ThemeContext"; import { Button } from "@/components/ui/button"; import { Badge } from "@/components/ui/badge"; import { Avatar, AvatarFallback } from "@/components/ui/avatar"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { LanguageSwitcher } from "@/components/LanguageSwitcher"; import FocusButton from "@/components/focus/FocusButton"; import { Moon, Sun, Mic, User, Settings, LogOut, Activity } from "lucide-react"; import { useTranslation } from "react-i18next"; export default function Header() { const { user, logout } = useAuth(); const { theme, toggleTheme } = useTheme(); const { t } = useTranslation(); const [, setLocation] = useLocation(); const handleLogout = async () => { await logout(); setLocation("/"); }; const getUserInitials = (user: any) => { if (user.firstName && user.lastName) { return `${user.firstName[0]}${user.lastName[0]}`.toUpperCase(); } return user.username?.[0]?.toUpperCase() || "U"; }; return (
{/* Logo and Brand */}
MenAssist
{/* Navigation */} {user && ( )} {/* Right side actions */}
{/* Voice Status Indicator */}
Voice Ready
{/* Language Switcher */} {/* Focus Mode */} {user && } {/* Theme Toggle */} {/* User Menu or Login */} {user ? (

{user.firstName && user.lastName ? `${user.firstName} ${user.lastName}` : user.username }

{user.email}

{user.role === "admin" ? "Admin" : user.role === "pro" ? "Pro" : "Standard"}
setLocation("/settings")}> Settings setLocation("/profile")}> Profile Log out
) : (
)}
); }