1var u=Object.defineProperty;var h=(c,a,t)=>a in c?u(c,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):c[a]=t;var l=(c,a,t)=>(h(c,typeof a!="symbol"?a+"":a,t),t);import{a as b}from"./vendor-58675f0b.js";class _ extends b{constructor(){super(...arguments);l(this,"scrollPosition",0)}setupDefaults(){this.dom={navBtn:this.el.querySelector(".mobile-header__menu-container button"),navOpenIcon:this.el.querySelector(".mobile-header__menu-button__icon-open"),navCloseIcon:this.el.querySelector(".mobile-header__menu-button__icon-close"),navContainer:this.el.querySelector(".mobile-header__nav-container"),searchContainer:this.el.querySelector(".mobile-header__search-button .mobile-header__nav-container"),cartBtn:this.el.querySelector(".mobile-header__cart-button button"),cartContainer:document.querySelector(".cart__container"),closeCartBtn:document.querySelector(".cart__item__close-button"),keepBrowsingBtn:document.querySelector(".cart__view-basket-button--keep-browsing"),subMenuBtns:this.el.querySelectorAll(".has-submenu"),mainMenu:this.el.querySelector(".mobile-header__nav__main-nav"),allSubMenus:this.el.querySelectorAll(".mobile-header__nav__submenu-container"),backBtns:this.el.querySelectorAll(".mobile-header__nav__back-button"),accordionBtns:this.el.querySelectorAll(".mobile-header__nav__submenu-item__accordion-button")}}addListeners(){const{navBtn:t,cartBtn:i,subMenuBtns:e,backBtns:n,accordionBtns:o,closeCartBtn:r,keepBrowsingBtn:s}=this.dom;t.addEventListener("click",this.toggleNav.bind(this)),i==null||i.addEventListener("click",this.toggleCart.bind(this)),r==null||r.addEventListener("click",this.closeCartNav.bind(this)),s==null||s.addEventListener("click",this.closeCartNav.bind(this)),e.forEach(d=>{d.addEventListener("click",this.toggleSubMenu.bind(this))}),n.forEach(d=>{d.addEventListener("click",this.toggleBack.bind(this))}),o.forEach(d=>{d.addEventListener("click",this.toggleAccordion.bind(this))})}lockBody(){document.body.style.position!=="fixed"&&(this.scrollPosition=window.scrollY,document.body.style.overflow="hidden",document.body.style.position="fixed",document.body.style.overflowY="scroll")}unlockBody(){document.body.removeAttribute("style"),window.scrollTo(0,this.scrollPosition)}closeCartNav(){var t;this.dom.cartContainer.setAttribute("hidden","true"),(t=this.dom.cartBtn)==null||t.classList.remove("is-active"),this.unlockBody()}toggleAccordion(t){const e=t.target.closest("button"),n=e==null?void 0:e.getAttribute("aria-controls"),o=n?document.getElementById(n):null;if(!e||!o)return;const r=e.querySelector(".minus-icon"),s=e.querySelector(".plus-icon"),d=o.hidden;e.setAttribute("aria-expanded",String(d)),d?(o.removeAttribute("hidden"),r==null||r.removeAttribute("hidden"),s==null||s.setAttribute("hidden","true")):(o.setAttribute("hidden","true"),r==null||r.setAttribute("hidden","true"),s==null||s.removeAttribute("hidden"))}toggleBack(t){const e=t.target.closest("button"),n=e==null?void 0:e.getAttribute("aria-controls"),o=n?document.getElementById(n):null;o&&(this.hideAllMenus(),this.showMenu(o))}toggleSubMenu(t){const e=t.target.closest("a"),n=e==null?void 0:e.getAttribute("aria-controls"),o=n?document.getElementById(n):null;o&&(t.preventDefault(),this.hideAllMenus(),this.showMenu(o))}showMenu(t){var i;t.removeAttribute("hidden"),t.setAttribute("aria-hidden","false"),(i=t.querySelector(".mobile-header__nav__back-button"))==null||i.focus()}hideAllMenus(){this.dom.mainMenu.setAttribute("hidden","true"),this.dom.mainMenu.setAttribute("aria-hidden","true"),this.dom.allSubMenus.forEach(t=>{t.setAttribute("hidden","true"),t.setAttribute("aria-hidden","true")})}toggleNav(t){const e=t.target.closest("button");this.hideMainNavs(e),this.dom.navBtn.classList.toggle("is-active"),this.dom.navContainer.hidden?(this.dom.navOpenIcon.setAttribute("hidden","true"),this.dom.navCloseIcon.removeAttribute("hidden"),this.dom.navContainer.removeAttribute("hidden"),this.lockBody()):(this.dom.navOpenIcon.removeAttribute("hidden"),this.dom.navCloseIcon.setAttribute("hidden","true"),this.dom.navContainer.setAttribute("hidden","true"),this.unlockBody())}toggleCart(t){var n;const e=t.target.closest("button");this.hideMainNavs(e),(n=this.dom.cartBtn)==null||n.classList.toggle("is-active"),this.dom.cartContainer.hidden?(this.dom.cartContainer.removeAttribute("hidden"),this.lockBody()):(this.dom.cartContainer.setAttribute("hidden","true"),this.unlockBody())}hideMainNavs(t){var i;t!==this.dom.navBtn&&(this.dom.navBtn.classList.remove("is-active"),this.dom.navOpenIcon.removeAttribute("hidden"),this.dom.navCloseIcon.setAttribute("hidden","true"),this.dom.navContainer.setAttribute("hidden","true")),t!==this.dom.cartBtn&&this.dom.cartBtn&&(this.dom.cartBtn.classList.remove("is-active"),(i=this.dom.cartContainer)==null||i.setAttribute("hidden","true"))}}export{_ as default}; 2//# sourceMappingURL=mobileHeader-04f9344d.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.