import { Link } from "@tanstack/react-router"; import byuLogo from "#/public/byuLogoWhiteSmall.svg"; import MobileMenu from '#/components/BYU-Header/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 --- */} {/* --- 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 default Header