"use client" import Link from "next/link" import { usePathname, useRouter } from "next/navigation" import { useState } from "react" import { BookOpen, Menu, X, Search, User as UserIcon, LogOut, BookMarked, Shield } from "lucide-react" import { Button } from "@/components/ui/button" import { Input } from "@/components/ui/input" import { Sheet, SheetContent, SheetTrigger, SheetTitle } from "@/components/ui/sheet" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from "@/components/ui/dropdown-menu" import { ThemeToggle } from "@/components/theme-toggle" import { useAuth } from "@/lib/auth-context" const navLinks = [ { label: "Trang Chủ", href: "/" }, { label: "Thể Loại", href: "/the-loai" }, { label: "Danh Sách", href: "/tim-kiem" }, ] export function Header() { const pathname = usePathname() const router = useRouter() const { user, logout } = useAuth() const [searchQuery, setSearchQuery] = useState("") const [open, setOpen] = useState(false) const handleSearch = (e: React.FormEvent) => { e.preventDefault() if (searchQuery.trim()) { router.push(`/tim-kiem?q=${encodeURIComponent(searchQuery.trim())}`) setSearchQuery("") } } return (
{/* Logo */} Virtus's Reader {/* Desktop Nav */} {/* Search */}
setSearchQuery(e.target.value)} />
{/* Right Actions */}
{user ? (

{user.username}

{user.email}

{(user.role === "MOD" || user.role === "ADMIN") && ( <> Trang Quản Trị )} Tủ Sách Đăng Xuất
) : (
)} {/* Mobile menu */} Menu điều hướng
{ handleSearch(e); setOpen(false) }}>
setSearchQuery(e.target.value)} />
{!user && (
)} {user && (
{user.avatarUrl ? ( {user.username} ) : (
{user.username.charAt(0).toUpperCase()}
)}

{user.username}

{user.email}

)}
) }