PageSourceSearch

https://ilana.life/cdn/shop/t/6/assets/page-header.js?v=143912486330285417571767076591

js ilana.life collected 2026-10-09 21:38:29 UTC 4,451 bytes, 2 lines download raw bytes

1class PageHeaderSection extends HTMLElement{constructor(){super(),this.isSticky=this.dataset.sticky==="true",this.isStickyAlways=this.dataset.stickyAlways==="true",this.isTransparent=this.dataset.transparent==="true",this.isAlwaysMobileMenu=this.dataset.alwaysMobileMenu==="true",this.classBodyAlwaysMobileMenu="mobile-nav",this.header=document.querySelector(".page-header"),this.desktopMenuTrigger=document.querySelector(".wt-header__sticky-menu-trigger"),this.desktopMenuBar=document.querySelector(".wt-drawer--nav"),this.enabledClass="sticky-enabled",this.showClass="sticky-show",this.desktopHeaderWithMenuBarClass="page-header--sticky-show-menubar-lg"}connectedCallback(){this.init()}disconnectedCallback(){this.disableStickyHeader()}enbleStickyHeader(){if(!this.header){console.error("Header element not found for enabling sticky header");return}document.body.classList.add("page-header-sticky");let prevScrollpos=window.pageYOffset;const isDesktop=window.matchMedia("(min-width: 1200px)").matches,isMenuBarOpen=()=>this.header.classList.contains(this.desktopHeaderWithMenuBarClass),isHeaderWithDesktopNav=!document.body.classList.contains("mobile-nav"),allLLevelsLinks=this.desktopMenuBar?.querySelectorAll("a[data-menu-level]"),onlyLevel1Links=this.desktopMenuBar?.querySelectorAll("a[data-menu-level='1']"),calculateNavbarTopMargin=()=>{const header=document.querySelector("#header"),navbar=document.querySelector("#wt-drawer-nav");let marginTop=0;return navbar.offsetHeight>header.offsetHeight?marginTop=header.offsetHeight-navbar.offsetHeight:marginTop=Math.abs(navbar.offsetHeight-header.offsetHeight),navbar.style.setProperty("--top-margin",`${marginTop}px`),marginTop};calculateNavbarTopMargin();const stickyHeader={show:()=>{this.header&&this.header.classList.add(this.showClass),stickyHeader.visible=!0,stickyHeader.handleBehavior(),calculateNavbarTopMargin()},hide:()=>{this.header&&this.header.classList.remove(this.showClass),stickyHeader.visible=!1,stickyHeader.handleBehavior()},enable:()=>{this.header&&this.header.classList.add(this.enabledClass),stickyHeader.enabled=!0,stickyHeader.handleBehavior()},disable:()=>{this.header&&this.header.classList.remove(this.enabledClass,this.showClass),stickyHeader.enabled=!1,stickyHeader.handleBehavior()},enabled:!1,visible:!0,handleBehavior:()=>{isHeaderWithDesktopNav&&isDesktop&&this.header&&(stickyHeader.log(),!isMenuBarOpen()&&stickyHeader.enabled&&setTabindex(allLLevelsLinks,"-1"),isMenuBarOpen()&&stickyHeader.enabled&&setTabindex(allLLevelsLinks,"0"),stickyHeader.enabled?this.desktopMenuTrigger&&setTabindex([this.desktopMenuTrigger],"0"):(setTabindex(onlyLevel1Links,"0"),this.desktopMenuTrigger&&setTabindex([this.desktopMenuTrigger],"-1")))},log:()=>{}};this.scrollHandler=()=>{const currentScrollPos=window.pageYOffset;this.isStickyAlways||prevScrollpos>currentScrollPos?stickyHeader.show():stickyHeader.hide(),prevScrollpos=currentScrollPos},window.addEventListener("scroll",this.scrollHandler),this.desktopMenuTrigger?.addEventListener("click",e=>{e.preventDefault(),this.desktopMenuBar?.classList.toggle("wt-drawer--nav-show"),this.desktopMenuTrigger?.classList.toggle("wt-header__sticky-menu-trigger--active"),this.header?.classList.toggle(this.desktopHeaderWithMenuBarClass),stickyHeader.handleBehavior()});const sentinel=document.querySelector(".sticky-header__threshold"),handleStickySentinel=entries=>{entries.forEach(({isIntersecting})=>{isIntersecting?stickyHeader.disable():stickyHeader.enable()})};this.stickyHeaderObserver=new IntersectionObserver(handleStickySentinel,{root:null,rootMargin:`${this.isStickyAlways?"-160":"-100"}px 0px 0px 0px`,threshold:0}),this.stickyHeaderObserver.observe(sentinel)}disableStickyHeader(){this.header&&(this.header.classList.remove(this.enabledClass,this.showClass,this.desktopHeaderWithMenuBarClass),document.body.classList.remove("page-header-sticky"),this.desktopMenuBar?.classList.remove("wt-drawer--nav-show"),this.desktopMenuTrigger?.classList.remove("wt-header__sticky-menu-trigger--active")),this.scrollHandler&&(window.removeEventListener("scroll",this.scrollHandler),this.scrollHandler=null),this.stickyHeaderObserver&&(this.stickyHeaderObserver.disconnect(),this.stickyHeaderObserver=null)}init(){this.isSticky?this.enbleStickyHeader():this.disableStickyHeader()}}customElements.define("page-header",PageHeaderSection);
2//# sourceMappingURL=/cdn/shop/t/6/assets/page-header.js.map?v=143912486330285417571767076591

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.