PageSourceSearch

https://www.curryandpaxton.com/cdn/shop/t/186/assets/header.js?v=177544719357662490771788806109

js curryandpaxton.com collected 2026-09-28 23:41:20 UTC 11,727 bytes, 2 lines download raw bytes

1(()=>{"use strict";class HeaderComponent{constructor(){this.drawerElement=null,this.pageOverlay=null,this.megaMenuDrawer=null,this.mobileNavBtn=null,this.accordionInitialized=!1,this.resizeTimeout=null,this.scrollTimeout=null,this.init()}init(){document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{setTimeout(()=>this.initializeAll(),50),this.initHeaderHeight()}):(setTimeout(()=>this.initializeAll(),50),this.initHeaderHeight())}initializeAll(){this.initDrawer(),this.initMobileNavToggle(),this.initMobileMegaMenu(),this.initMobileAccordion(),this.initTransparentHeader()}initDrawer(){if(this.drawerElement=document.getElementById("header-megamenu-drawer"),!this.drawerElement){setTimeout(()=>this.initDrawer(),100);return}this.pageOverlay=document.querySelector(".PageOverlay")||this.createPageOverlay(),this.setupDrawerEvents(),this.calculateDrawerHeight(),window.addEventListener("resize",()=>{this.drawerElement.getAttribute("aria-hidden")==="false"&&(this.drawerElement.style.maxHeight=`${window.innerHeight}px`,this.calculateDrawerHeight())})}createPageOverlay(){const overlay=document.createElement("div");return overlay.className="PageOverlay",document.body.appendChild(overlay),overlay}openDrawer=e=>{if(e&&(e.preventDefault(),e.stopPropagation()),this.drawerElement.getAttribute("aria-hidden")==="false")return;const searchElement=document.getElementById("Search");searchElement?.getAttribute("aria-hidden")==="false"&&searchElement.setAttribute("aria-hidden","true"),this.drawerElement.setAttribute("aria-hidden","false"),this.drawerElement.style.maxHeight=`${window.innerHeight}px`,document.documentElement.classList.add("no-scroll"),typeof disableBodyScroll=="function"?disableBodyScroll(!0,"[data-scrollable]"):document.body.style.overflow="hidden",this.pageOverlay?.classList.add("is-visible"),this.drawerElement.dispatchEvent(new CustomEvent("drawer:open",{bubbles:!0})),this.toggleMobileNavButton()};closeDrawer=e=>{e&&(e.preventDefault(),e.stopPropagation()),this.drawerElement.getAttribute("aria-hidden")!=="true"&&(this.drawerElement.setAttribute("aria-hidden","true"),document.documentElement.classList.remove("no-scroll"),typeof disableBodyScroll=="function"?disableBodyScroll(!1,"[data-scrollable]"):document.body.style.overflow="",this.pageOverlay?.classList.remove("is-visible"),this.drawerElement.dispatchEvent(new CustomEvent("drawer:close",{bubbles:!0})),this.toggleMobileNavButton())};setupDrawerEvents(){document.body.addEventListener("click",e=>{if(e.target.closest('[data-action="open-drawer"][data-drawer-id="header-megamenu-drawer"]'))return this.openDrawer(e);if(e.target.closest('[data-action="close-drawer"][data-drawer-id="header-megamenu-drawer"]'))return this.closeDrawer(e)}),this.pageOverlay?.addEventListener("click",this.closeDrawer),document.addEventListener("keyup",e=>{e.keyCode===27&&this.drawerElement.getAttribute("aria-hidden")==="false"&&this.closeDrawer(e)})}calculateDrawerHeight(){const height=window.innerHeight;this.drawerElement.style.top="0px",this.drawerElement.style.height=`${height}px`,this.drawerElement.style.maxHeight=`${height}px`;const drawerContent=this.drawerElement.querySelector(".Drawer__Main");drawerContent&&(drawerContent.style.overflowY=drawerContent.scrollHeight<=height?"visible":"auto")}toggleMobileNavButton(){if(this.megaMenuDrawer=document.getElementById("header-megamenu-drawer"),this.mobileNavBtn=document.querySelector(".mobileNavBtn"),!this.megaMenuDrawer||!this.mobileNavBtn)return;const isOpen=this.megaMenuDrawer.getAttribute("aria-hidden")==="false",closeIcons=this.mobileNavBtn.querySelectorAll(".mobileNavIcon--close"),hamburgerIcons=this.mobileNavBtn.querySelectorAll(".mobileNavIcon--hamburger"),windowWidth=window.innerWidth||document.documentElement.clientWidth;isOpen?(this.mobileNavBtn.classList.add("menu-open"),this.mobileNavBtn.setAttribute("data-action","close-drawer"),this.mobileNavBtn.setAttribute("data-drawer-id","header-megamenu-drawer"),this.mobileNavBtn.setAttribute("aria-label","Close menu"),this.mobileNavBtn.setAttribute("aria-expanded","true"),this.toggleIcons(closeIcons,hamburgerIcons,windowWidth,!0)):(this.mobileNavBtn.classList.remove("menu-open"),this.mobileNavBtn.setAttribute("data-action","open-drawer"),this.mobileNavBtn.setAttribute("data-drawer-id","header-megamenu-drawer"),this.mobileNavBtn.setAttribute("aria-label","Open menu"),this.mobileNavBtn.setAttribute("aria-expanded","fal
1se"),this.toggleIcons(closeIcons,hamburgerIcons,windowWidth,!1))}toggleIcons(closeIcons,hamburgerIcons,windowWidth,isOpen){isOpen?(closeIcons.forEach(icon=>{const isMobile=icon.classList.contains("hidden-tablet-and-up"),isTablet=icon.classList.contains("hidden-phone");windowWidth<=1239&&isMobile||windowWidth>=1240&&isTablet?Object.assign(icon.style,{display:"block",visibility:"visible",opacity:"1"}):icon.style.display="none"}),hamburgerIcons.forEach(icon=>icon.style.display="none")):(closeIcons.forEach(icon=>{Object.assign(icon.style,{display:"none",visibility:"hidden",opacity:"0"})}),hamburgerIcons.forEach(icon=>{["display","visibility","opacity"].forEach(prop=>icon.style.removeProperty(prop));const isMobile=icon.classList.contains("hidden-tablet-and-up"),isTablet=icon.classList.contains("hidden-phone");(windowWidth<=1239&&isTablet||windowWidth>=1240&&isMobile)&&(icon.style.display="none")}))}initMobileNavToggle(){if(this.megaMenuDrawer=document.getElementById("header-megamenu-drawer"),this.mobileNavBtn=document.querySelector(".mobileNavBtn"),!this.megaMenuDrawer||!this.mobileNavBtn){setTimeout(()=>this.initMobileNavToggle(),100);return}this.toggleMobileNavButton(),new MutationObserver(()=>{setTimeout(()=>this.toggleMobileNavButton(),10)}).observe(this.megaMenuDrawer,{attributes:!0,attributeFilter:["aria-hidden"]}),this.mobileNavBtn.addEventListener("click",()=>{this.mobileNavBtn.getAttribute("data-drawer-id")||this.mobileNavBtn.setAttribute("data-drawer-id","header-megamenu-drawer"),setTimeout(()=>this.toggleMobileNavButton(),100)}),["drawer:open","drawer:close"].forEach(event=>{this.megaMenuDrawer.addEventListener(event,()=>{setTimeout(()=>this.toggleMobileNavButton(),50)})}),window.addEventListener("resize",()=>{clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(()=>this.toggleMobileNavButton(),150)})}initMobileMegaMenu(){const drawerElement=document.getElementById("header-megamenu-drawer");if(!drawerElement)return;const topList=drawerElement.querySelector(".HeaderMegaMenuDrawer__TopList"),panelsContainer=drawerElement.querySelector(".HeaderMegaMenuDrawer__Panels"),drawerContainer=drawerElement.querySelector(".Drawer__Container");if(!topList||!panelsContainer)return;const panels=panelsContainer.querySelectorAll(".HeaderMegaMenuDrawer__Panel"),megaTypeClassPrefix="Drawer__Container--active-",clearMegaTypeState=()=>{drawerContainer&&(drawerContainer.setAttribute("data-active-mega-type",""),[...drawerContainer.classList].filter(className=>className.startsWith(megaTypeClassPrefix)).forEach(className=>drawerContainer.classList.remove(className)))},showTopLevel=()=>{drawerElement.classList.remove("HeaderMegaMenuDrawer--show-panel"),drawerContainer?.classList.remove("Drawer__Container--no-padding"),clearMegaTypeState(),panels.forEach(panel=>{panel.classList.remove("is-active"),panel.setAttribute("aria-hidden","true"),panel.querySelectorAll(".MegaMenu").forEach(mega=>{mega.setAttribute("aria-hidden","true")})})},showPanel=handle=>{drawerElement.classList.add("HeaderMegaMenuDrawer--show-panel"),panels.forEach(panel=>{const isTarget=panel.getAttribute("data-mega-panel")===handle;if(panel.classList.toggle("is-active",isTarget),panel.setAttribute("aria-hidden",isTarget?"false":"true"),panel.querySelectorAll(".MegaMenu").forEach(mega=>{mega.setAttribute("aria-hidden",isTarget?"false":"true")}),drawerContainer&&isTarget){const megaType=panel.getAttribute("data-mega-type"),noPaddingTypes=["mega_menu_type_1","mega_menu_type_2","mega_menu_type_4"];drawerContainer.classList.toggle("Drawer__Container--no-padding",noPaddingTypes.includes(megaType)),clearMegaTypeState(),drawerContainer.setAttribute("data-active-mega-type",megaType||""),megaType&&drawerContainer.classList.add(`${megaTypeClassPrefix}${megaType}`)}})};topList.addEventListener("click",e=>{const button=e.target.closest(".HeaderMegaMenuDrawer__TopItem[data-mega-target]");if(!button)return;e.preventDefault();const handle=button.getAttribute("data-mega-target");handle&&showPanel(handle)}),panelsContainer.addEventListener("click",e=>{e.target.closest(".HeaderMegaMenuDrawer__Back")&&(e.preventDefault(),showTopLevel())}),document.body.addEventListener("click",e=>{e.target.closest('[data-action="open-drawer"][data-drawer-id="header-megamenu-drawer"]')&&setTimeout(showTopLevel,50)}),showTopLevel()}initMobileAccordion(){if(this.accordionInitialized)return;const drawerElement=document.getElementById("header-megamenu-drawer");if(!drawerElement){setTimeout(()=>this.initMobileAccordion(),100);return}const icons={plus:'<svg width="9" height="9" viewBox="0 0 9 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.41977 8.84668V8.80957e-05H5.42687V8.84668H3.41977ZM2.77311e-05 5.42694V3.41983H8.84662V5.42694H2.77311e-05Z" fill="black"/></svg>',minus:'<svg width="9" height="2" viewBox="0 0 9 2" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.0071V0H8.84659V2.0071H0Z" fill="black"/></svg>'};drawerElement.addEventListener("click",e=>{const header=e.target.closest(".MegaMenuType1__MobileAccordionHeader");if(!header)return;e.preventDefault(),e.stopPropagation();const accordion=header.closest(".MegaMenuType1__MobileAccordion"),content=accordion?.querySelector(".MegaMenuType1__MobileAccordionContent"),icon=accordion?.querySelector(".MegaMenuType1__MobileAccordionIcon");if(!accordion||!content||!icon)return;accordion.classList.contains("MegaMenuType1__MobileAccordion--open")?(accordion.classList.remove("MegaMenuType1__MobileAccordion--open"),content.style.display="none",icon.innerHTML=icons.plus,header.setAttribute("aria-expanded","fal
1se")):(accordion.classList.add("MegaMenuType1__MobileAccordion--open"),content.style.display="block",icon.innerHTML=icons.minus,header.setAttribute("aria-expanded","true"))}),this.accordionInitialized=!0}initTransparentHeader(){const header=document.querySelector(".Header--transparent");if(!header)return;header.classList.contains("Header--transparent")&&header.setAttribute("data-should-be-transparent","true");const checkTransparentHeader=()=>{if(document.querySelector(".template-collection")){header.classList.remove("Header--transparent");return}const scrollThreshold=document.body.classList.contains("template-collection")?0:100;(window.pageYOffset||document.documentElement.scrollTop||window.scrollY)>scrollThreshold?header.classList.remove("Header--transparent"):header.getAttribute("data-should-be-transparent")==="true"&&header.classList.add("Header--transparent")};checkTransparentHeader(),window.addEventListener("scroll",()=>{clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(checkTransparentHeader,10)},{passive:!0})}initHeaderHeight(){class HeaderHeightComponent{constructor(sectionId="shopify-section-header"){this.headerSection=document.getElementById(sectionId),this.headerSection&&(this.updateHeaderHeightVar=this.updateHeaderHeightVar.bind(this),this.init())}updateHeaderHeightVar(){const rect=this.headerSection.getBoundingClientRect();document.documentElement.style.setProperty("--header-height",`${rect.height}px`)}init(){this.updateHeaderHeightVar(),window.addEventListener("resize",this.updateHeaderHeightVar)}}new HeaderHeightComponent}}new HeaderComponent})();
2//# sourceMappingURL=/cdn/shop/t/186/assets/header.js.map?v=177544719357662490771788806109

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.