'use client' import Link from 'next/link' import { useState } from 'react' import { NavLink } from './NavLink' import { UserMenu } from './UserMenu' // Icon components const HomeIcon = () => ( ) const SearchIcon = () => ( ) const PlaylistIcon = () => ( ) const UploadIcon = () => ( ) const MenuIcon = () => ( ) const CloseIcon = () => ( ) const navLinks = [ { href: '/', label: 'Home', icon: }, { href: '/search', label: 'Search', icon: }, { href: '/playlists', label: 'Playlists', icon: }, { href: '/upload', label: 'Upload', icon: }, ] export function Header() { const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false) return ( {/* Logo */} SonicCloud {/* Desktop Navigation */} {navLinks.map((link) => ( {link.label} ))} {/* Desktop User Menu */} {/* Mobile Menu Button */} setIsMobileMenuOpen(!isMobileMenuOpen)} aria-label={isMobileMenuOpen ? 'Close menu' : 'Open menu'} > {isMobileMenuOpen ? : } {/* Mobile Menu */} {isMobileMenuOpen && ( {navLinks.map((link) => ( {link.label} ))} )} ) }