"use client" import { useState } from "react" import Link from "next/link" import { Music, User, ChevronDown, Menu, X } from "lucide-react" import { Button } from "@/components/ui/button" import { SearchDialog } from "@/components/ui/search-dialog" import { NotificationBell } from "@/components/notifications/notification-bell" import { ThemeToggle } from "@/components/theme-toggle" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" import { useAuth } from "@/contexts/auth-context" const browseLinks = [ { href: "/shows", label: "Shows" }, { href: "/venues", label: "Venues" }, { href: "/songs", label: "Songs" }, { href: "/performances", label: "Top Performances" }, { href: "/tours", label: "Tours" }, { href: "/videos", label: "Videos" }, { href: "/leaderboards", label: "Leaderboards" }, ] export function Navbar() { const { user, logout } = useAuth() const [mobileMenuOpen, setMobileMenuOpen] = useState(false) return (
{/* Logo - always visible */} Elmeg {/* Desktop Navigation */} {/* Right side - search, theme, auth */}
{/* Desktop auth */}
{user ? ( <> {(user.role === 'admin' || user.role === 'moderator') && ( )} {user.email} Profile Settings Sign Out ) : ( <> )}
{/* Mobile menu button */}
{/* Mobile Menu */} {mobileMenuOpen && (
{/* Mobile search */}
{/* Mobile nav links */} {/* Mobile auth */}
{user ? (
{user.email}
{(user.role === 'admin' || user.role === 'moderator') && ( setMobileMenuOpen(false)} > Moderation )} setMobileMenuOpen(false)} > Profile setMobileMenuOpen(false)} > Settings
) : (
setMobileMenuOpen(false)}> setMobileMenuOpen(false)}>
)}
)}
) }