import Link from "next/link"; import Image from "next/image"; import byuLogo from "@/public/byuLogoWhiteSmall.svg"; import MobileMenu from "./Header-hamburgerMenu"; // ---------------------- // Type Definitions // ---------------------- type HeaderProps = { title: string; subtitle?: string; breadcrumbs?: React.ReactNode; rightItems?: React.ReactNode[]; navLinks?: React.ReactNode[]; }; // ---------------------- // Main Component // ---------------------- const Header = ({ title, subtitle, breadcrumbs, rightItems, navLinks, }: HeaderProps) => { return (
{/* ========================================================= HEADER TOP BAR - Navy background with BYU logo, title, breadcrumbs, and right-side items - Split into left (logo/title) and right (menu/actions) ========================================================= */}
{/* ========================================================= LEFT SIDE: Logo + Title + Breadcrumbs ========================================================= */}
{/* --- BYU Logo --- */}
BYU
{/* --- Title, Subtitle, Breadcrumbs --- */}
{/* Breadcrumbs: shown only on desktop */}
{breadcrumbs}
{/* Site Title (always visible) */} {title} {/* Subtitle: optional, desktop only */} {subtitle && (

{subtitle}

)}
{/* ========================================================= RIGHT SIDE: Menus and action items ========================================================= */}
{/* --- MOBILE MENU (hamburger) --- - Visible on mobile only (
{/* --- DESKTOP RIGHT ITEMS --- - Hidden on mobile - Typically search, buttons, or profile links */}
{rightItems}
{/* ========================================================= DESKTOP NAVIGATION BAR - Visible only on md+ - White background, navy text - Contains navLinks passed in as props ========================================================= */} ); }; // ---------------------- // Export Component // ---------------------- export default Header;