diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 5c587cb..7a17e88 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,5 +1,6 @@ "use client"; +import { useEffect, useState } from "react"; import Image from "next/image"; import { Link, usePathname } from "@/i18n/routing"; import { vipnagorgialla } from "@/components/Vipnagorgialla"; @@ -37,11 +38,42 @@ interface HeaderProps { const Header = ({ navItems }: HeaderProps) => { const pathname = usePathname(); + const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false); // Filter nav items for the horizontal bar (exclude kodukord) const mainNavItems = navItems.filter((item) => item.href !== "/kodukord"); const disabledNavHrefs = new Set(["/messiala", "/ajakava"]); + const navIconByHref: Partial> = { + "/messiala": "weekend", + "/ajakava": "event_note", + "/piletid": "confirmation_number", + "/turniirid": "trophy", + }; + + useEffect(() => { + const largeScreenQuery = window.matchMedia("(min-width: 1024px)"); + + const handleScaleOrViewportChange = (event: MediaQueryListEvent) => { + if (event.matches) { + setIsMobileMenuOpen(false); + } + }; + + if (largeScreenQuery.matches) { + setIsMobileMenuOpen(false); + } + + largeScreenQuery.addEventListener("change", handleScaleOrViewportChange); + + return () => { + largeScreenQuery.removeEventListener( + "change", + handleScaleOrViewportChange, + ); + }; + }, []); + return (
{/* Logo */} @@ -58,7 +90,7 @@ const Header = ({ navItems }: HeaderProps) => { {/* Right side - Navigation + controls */}
{/* Desktop Navigation */} -