// components/admin/dashboard/Header.tsx - Modern Glassmorphism Design 'use client'; import { useRouter } from 'next/navigation'; import { Menu, Search, LogOut, Settings, User as UserIcon, Bell, Plus, Crown } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { Input } from '@/components/ui/input'; import { useAuth } from '@/hooks/use-auth'; import { useCurrentUser } from '@/hooks/use-current-user'; import { Avatar, AvatarFallback } from '@/components/ui/avatar'; interface HeaderProps { onMenuToggle: () => void; } export function Header({ onMenuToggle }: HeaderProps) { const router = useRouter(); const { handleLogout } = useAuth(); const { user } = useCurrentUser(); const userName = user?.name || 'Administrador'; const getInitials = () => { if (!userName) return 'A'; return userName .split(' ') .map(part => part[0]) .join('') .toUpperCase() .substring(0, 2); }; const onLogout = async () => { await handleLogout(); router.push('/admin/login'); }; return (
{/* Left Section */}
{/* Mobile Menu Button */}
{/* Right Section */}
{/* User Menu */} {/* User Info Header */}
{getInitials()}
{userName}
Administrador
{/* Menu Items */}
router.push('/admin/perfil')} >
Mi perfil
router.push('/admin/configuracion')} >
Configuración
Cerrar sesión
); }