export function mountSiteHeader() { const headerEl = document.querySelector(".c-site-header"); if (headerEl) { const navbarEl = headerEl?.querySelector(".o-navbar--static-white"); const logoEl = headerEl?.querySelector(".c-logo--static-white"); const buttonEls = headerEl?.querySelectorAll(".o-button--static-white"); let settings: IntersectionObserverInit; const boundingRect = headerEl.getBoundingClientRect(); if (boundingRect.top > 0) { settings = { rootMargin: "1px 0px -100% 0px", }; } else { settings = { root: document.documentElement, rootMargin: "-1px 0px 0px 0px", threshold: [1], }; } const observer = new IntersectionObserver(([e]) => { const scroll = e?.isIntersecting; headerEl.classList.toggle("is-scroll", scroll); navbarEl?.classList.toggle("o-navbar--static-white", !scroll); logoEl?.classList.toggle("c-logo--static-white", !scroll); for (const buttonEl of buttonEls) { buttonEl.classList.toggle("o-button--static-white", !scroll); } }, settings); observer.observe(headerEl); } }