PageSourceSearch

https://denverdjschool.com/cdn/shop/t/21/assets/scripts.js?v=165616999652551294361719494983

js denverdjschool.com collected 2026-10-08 02:17:33 UTC 43,810 bytes, 2 lines download raw bytes

1"use strict";const isTouchDevice=()=>"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;if(isTouchDevice()){const subMenuNavs=document.querySelectorAll(".has-sub-menu > a");subMenuNavs.forEach(mainMenuNav=>{mainMenuNav.addEventListener("click",event=>{isTouchDevice()&&(subMenuNavs.forEach(item=>{item!==mainMenuNav&&item.classList.remove("is-dropdown-open")}),!mainMenuNav.classList.contains("is-dropdown-open")&&(event.preventDefault(),mainMenuNav.classList.add("is-dropdown-open")))})})}const navigations=document.querySelectorAll(".navigation-menu");navigations.forEach(navigation=>{const navigationMenusTopNavs=navigation.querySelectorAll(":scope > .has-sub-menu"),getMenuWidth=(element,initialWidth=0)=>{const submenu=element&&element.querySelector(".navigation-sub-menu");return submenu?getMenuWidth(submenu,initialWidth+submenu.clientWidth):initialWidth},setMenuClasses=()=>{const windowWidth=window.innerWidth;navigationMenusTopNavs.forEach(navigationMenusTopNav=>{if(navigationMenusTopNav.classList.contains("navigation-item-static"))return;navigationMenusTopNav.classList.remove("nav-open-left");const width=getMenuWidth(navigationMenusTopNav);navigationMenusTopNav.offsetLeft+width>windowWidth&&navigationMenusTopNav.classList.add("nav-open-left")})};setMenuClasses();let resizeTimer;window.addEventListener("resize",()=>{clearTimeout(resizeTimer),resizeTimer=setTimeout(()=>{setMenuClasses()},350)})});const mobileMenuWrap=document.querySelector(".head-slot-nav-mobile-link-wrapper"),mobileNavWrap=document.querySelector(".navigation-mobile-wrap"),mobileMenuToggle=document.querySelector(".head-slot-nav-mobile-link"),mobileMenu=document.querySelector(".mobile-menu"),expandOnButton=mobileMenu?.dataset.buttonExpand!=null,setMobileMenuMaxheight=()=>{mobileMenu.style.maxHeight=`${window.innerHeight-document.querySelector(".header").getBoundingClientRect().bottom}px`},handleMobileMenuOpen=()=>{document.body.classList.add("mobile-menu-open"),mobileMenuToggle.ariaExpanded="true",mobileMenu.ariaHidden="false",trapFocus(mobileMenuWrap,mobileNavWrap),setMobileMenuMaxheight(),publish(PUB_SUB_EVENTS.mobileMenuOpen)},handleMobileMenuDismiss=()=>{document.body.classList.remove("mobile-menu-open"),mobileMenuToggle.ariaExpanded="false",mobileMenu.ariaHidden="true",removeTrapFocus(mobileMenuToggle),mobileMenu.style.maxHeight="",publish(PUB_SUB_EVENTS.mobileMenuClose)},isMobileMenuOpen=()=>document.body.classList.contains("mobile-menu-open");document.body.addEventListener("click",event=>{const{target}=event,mobileNav=target.closest(".navigation-mobile-item"),isMobileNavButton=target.classList.contains("head-slot-nav-mobile-link")||!!target.closest(".head-slot-nav-mobile-link");if(mobileNav&&mobileNav.querySelector("ul")&&(expandOnButton?target.closest(".navigation-mobile-item-link-expand")&&mobileNav.classList.toggle("menu-item-expanded"):(event.preventDefault(),mobileNav.classList.toggle("menu-item-expanded"))),isMobileNavButton&&document.body.classList.contains("mobile-menu-open")){handleMobileMenuDismiss();return}if(isMobileNavButton){handleMobileMenuOpen();return}isMobileMenuOpen()&&!target.closest(".mobile-menu")&&(event.preventDefault(),handleMobileMenuDismiss())}),mobileMenuWrap&&mobileMenuWrap.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&handleMobileMenuDismiss()});class MegaMenuMain extends HTMLElement{constructor(){super(),this.toggle=this.querySelector(".button-mega-menu-toggle"),this.menu=this.querySelector(".mega-menu-main-wrapper"),this.tabNavs=this.querySelectorAll(".mega-menu-main-nav-item"),this.contentContainers=this.querySelectorAll(".mega-menu-main-content-tab"),this.toggle.addEventListener("click",this.onToggleClick),this.addEventListener("click",this.checkOnClickOutside),this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.hide()}),this.tabNavs.forEach(tabNavs=>{tabNavs.addEventListener("click",this.handleTabNavChange)})}handleTabNavChange=event=>{event.preventDefault();const targetId=event.target.getAttribute("href");this.contentContainers.forEach(container=>{container.setAttribute("aria-hidden","true")}
1),this.tabNavs.forEach(tabNav=>{tabNav.classList.remove("current")}),this.querySelector(targetId)?.setAttribute("aria-hidden","false"),event.target.classList.add("current")};checkOnClickOutside=event=>{event.target.closest(".button-mega-menu-toggle")||event.target===this.toggle||!this.isHidden()&&!event.target?.closest(".mega-menu-main-container")&&this.hide()};onToggleClick=()=>{this.isHidden()?this.show():this.hide()};isHidden(){return this.getAttribute("aria-expanded")==="false"}isExpanded(){return this.getAttribute("aria-expanded")==="true"}hide(){this.setAttribute("aria-expanded","false"),this.menu.setAttribute("aria-hidden","true"),removeTrapFocus(this.toggle)}show(){this.setAttribute("aria-expanded","true"),this.menu.setAttribute("aria-hidden","false"),trapFocus(this.querySelector(".mega-menu-main-container"))}}customElements.define("mega-menu-main",MegaMenuMain);class DropdownModal extends HTMLElement{constructor(){super(),this.eventPrefix=this.dataset.eventPrefix,this.toggles=this.querySelectorAll(".dropdown-modal-toggle"),this.content=this.querySelector(".dropdown-modal-toggle + div"),this.preventOpen=this.getAttribute("prevent-open")==="true",!this.preventOpen&&(this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.close()}),this.toggles.forEach(toggle=>{toggle.addEventListener("click",this.handleToggle.bind(this))}))}isOpen(){return this.getAttribute("open")==="true"}handleToggle(event){event?.preventDefault?.(),this.isOpen()?this.close():this.open()}open(opener){this.openedBy=opener,this.setAttribute("open",!0),this.toggles.forEach(toggle=>{toggle.setAttribute("aria-expanded",!0)}),trapFocus(this),this.eventPrefix&&publish(`${this.eventPrefix}:open`)}close(){this.toggles.forEach(toggle=>{toggle.setAttribute("aria-expanded",!1)}),this.removeAttribute("open"),this.openedBy&&removeTrapFocus(this.openedBy),this.eventPrefix&&publish(`${this.eventPrefix}:close`)}}customElements.define("dropdown-modal",DropdownModal);class HeaderMiniCartDropdownModal extends DropdownModal{constructor(){super()}setMaxHeight(){this.content.style.maxHeight=`${window.innerHeight-document.querySelector(".header").getBoundingClientRect().bottom}px`}open(opener){super.open(opener),this.setMaxHeight(),setTimeout(()=>{trapFocus(this,this.querySelector(".dropdown-modal-toggle"))},250)}close(){super.close(),this.content.style.maxHeight=""}}customElements.define("header-mini-cart-dropdown-modal",HeaderMiniCartDropdownModal);class HeaderSearchDropdownModal extends DropdownModal{constructor(){super(),this.searchInput=this.querySelector('input[type="search"]')}open(opener){super.open(opener),trapFocus(this,this.searchInput)}}customElements.define("header-search-dropdown-modal",HeaderSearchDropdownModal);const sidebarDrawerButton=document.querySelector(".button-sidebar-drawer-open"),sidebarDrawer=document.querySelector(".page-layout-sidebar"),handleSidebarOpen=()=>{document.body.classList.add("page-layout-sidebar-drawer-open"),document.body.classList.add("overflow-hidden-tablet"),trapFocus(sidebarDrawer,sidebarDrawer.querySelector(".page-layout-sidebar-drawer-header"))},handleSidebarDismiss=()=>{document.body.classList.remove("page-layout-sidebar-drawer-open"),document.body.classList.remove("overflow-hidden-tablet"),removeTrapFocus(sidebarDrawerButton)},isSidebarOpen=()=>document.body.classList.contains("page-layout-sidebar-drawer-open");sidebarDrawerButton&&sidebarDrawer&&(document.body.addEventListener("click",event=>{const{target}=event;if(target.classList.contains("js-button-sidebar-drawer-dismiss")){handleSidebarDismiss();return}if(target.classList.contains("button-sidebar-drawer-open")){handleSidebarOpen();return}isSidebarOpen()&&!target.closest(".page-layout-sidebar")&&(handleSidebarDismiss(),event.preventDefault())}),sidebarDrawer.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&handleSidebarDismiss()})),document.addEventListener("change",event=>{if(event.target.parentNode?.classList.contains("select-custom")){const select=event.target,label=select.parentNode.querySelector("label");label.textContent=select.options[select.selectedIndex].text}}),(()=>{const reviewsLink=document.querySelectorAll('a[href*="#product-reviews"]'),reviews=document.getElementById("product-reviews"),tabsNavigation=document.querySelector("tabs-navigation");reviewsLink&&reviews&&tabsNavigation&&reviewsLink.forEach(link=>{link.addEventListener("click",()=>{tabsNavigation.setActiveTab(reviews)})}),window.location.hash==="#product-reviews"&&reviews&&tabsNavigation&&(setTimeout(()=>{tabsNavigation.setActiveTab(reviews)},0),setTimeout(()=>{reviews.scrollIntoView()},200))})();class CollapsibleExpandable extends HTMLElement{constructor(){super()}connectedCallback(){this.collapsed=this.getAttribute("expanded")==="false",this.toggleElement=this.querySelector(".facet-toggle"),this.onToggle=this.onToggle.bind(this),this.toggleElement.addEventListener("click",this.onToggle),this.list=this.querySelector(".facet-options-list"),this.listCollapsed=this.list&&this.list.getAttribute("aria-expanded")==="false",this.expandListToggle=this.querySelector(".facet-button-more"),this.onListToggle=this.onListToggle.bind(this),this.expandListToggle&&this.expandListToggle.addEventListener("click",this.onListToggle)}disconnectedCallback(){this.toggleElement.removeEventListener("click",this.onToggle),this.expandListToggle&&this.expandListToggle.removeEventListener("click",this.onListToggle())}onToggle(event){event.preventDefault(),this.handleToggle()}
1collapse(){this.setAttribute("expanded","false"),this.toggleElement.setAttribute("aria-expanded","false"),this.collapsed=!0}expand(){this.setAttribute("expanded","true"),this.toggleElement.setAttribute("aria-expanded","true"),this.collapsed=!1}handleToggle(){this.collapsed?this.expand():this.collapse()}onListToggle(event){event&&event.preventDefault(),this.handleToggleList()}collapseList(){this.list.setAttribute("aria-expanded","false"),this.expandListToggle.innerHTML="&plus; "+window.productsStrings.facetsShowMore,this.listCollapsed=!0}expandList(){this.list.setAttribute("aria-expanded","true"),this.expandListToggle.innerHTML="&minus; "+window.productsStrings.facetsShowLess,this.listCollapsed=!1}handleToggleList(){this.listCollapsed?this.expandList():this.collapseList()}}customElements.define("collapsible-expandable",CollapsibleExpandable);class ModalDialog extends HTMLElement{constructor(){super(),this.querySelector('[id^="ModalClose-"]').addEventListener("click",this.hide.bind(this)),this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.hide()}),this.classList.contains("media-modal")?this.addEventListener("pointerup",event=>{event.pointerType==="mouse"&&!event.target.closest("deferred-media, product-model")&&this.hide()}):this.addEventListener("click",event=>{event.target.nodeName==="MODAL-DIALOG"&&this.hide()})}connectedCallback(){this.moved||(this.moved=!0,document.body.appendChild(this))}show(opener){this.openedBy=opener,document.body.classList.add("overflow-hidden"),this.setAttribute("open",""),trapFocus(this,this.querySelector('[role="dialog"]')),window.pauseAllMedia()}hide(){document.body.classList.remove("overflow-hidden"),this.removeAttribute("open"),removeTrapFocus(this.openedBy),window.pauseAllMedia()}}customElements.define("modal-dialog",ModalDialog);class ModalOpener extends HTMLElement{constructor(){super();const button=this.querySelector("button");button&&button.addEventListener("click",()=>{const modal=document.querySelector(this.getAttribute("data-modal"));modal&&modal.show(button)})}}customElements.define("modal-opener",ModalOpener);class VariantSelects extends HTMLElement{constructor(){super(),this.product=this.getProductData(),!(!this.product.variants&&!this.product.options)&&(this.addEventListener("change",this.onVariantChange),this.updateOptions(),this.updateMasterId(),this.hideOutOfStock=this.dataset.variantsVisibility==="hide",this.disableOutOfStock=this.dataset.variantsVisibility==="disable",this.hideSingle=this.dataset.hideSingle==="true",this.formId=this.dataset.formId,this.optionsMap=this.getValidVariants(),this.outOfStockOptionsMap=this.getOutOfStockVariants(),this.tagName==="VARIANT-SELECTS"&&(this.dropdowns=this.querySelectorAll("select"),this.dropdowns.forEach(select=>{select.addEventListener("change",this.onDropdownChange.bind(this))}),this.dropdowns[0]!==null&&this.onDropdownChange()),this.updateVisibility())}onDropdownChange(){this.updateOptionsInDropdown(0),this.product.options.length>1&&this.updateOptionsInDropdown(1),this.product.options.length===3&&this.updateOptionsInDropdown(2)}updateOptionsInDropdown(selectorIndex){const selector=this.dropdowns[selectorIndex],originalValue=selector.value;selector.replaceChildren();let key="root";selectorIndex===1?key=this.dropdowns[0].value:selectorIndex===2&&(key=this.dropdowns[0].value+" / "+this.dropdowns[1].value);const availableOptions=this.optionsMap[key],outOfStockOptions=this.outOfStockOptionsMap[key];for(let i=0;i<availableOptions.length;i++){const option=availableOptions[i],newOption=document.createElement("option");newOption.value=option,newOption.append(option),this.disableOutOfStock&&outOfStockOptions?.includes(option)&&(newOption.disabled="true"),selector.append(newOption)}availableOptions.includes(originalValue)&&(selector.value=originalValue)}getValidVariants(ignoreHideOutOfStock){const optionsMap={};for(let i=0;i<this.product.variants.length;i++){const variant=this.product.variants[i];if(!((this.hideOutOfStock||ignoreHideOutOfStock)&&!variant.available&&this.currentVariant.id!==variant.id)){if(optionsMap.root=optionsMap.root||[],optionsMap.root.push(variant.option1),optionsMap.root=[...new Set(optionsMap.root)],this.product.options.length>1){const key=variant.option1;optionsMap[key]=optionsMap[key]||[],optionsMap[key].push(variant.option2),optionsMap[key]=[...new Set(optionsMap[key])]}if(this.product.options.length===3){const key=variant.option1+" / "+variant.option2;optionsMap[key]=optionsMap[key]||[],optionsMap[key].push(variant.option3),optionsMap[key]=[...new Set(optionsMap[key])]}}}return optionsMap}getOutOfStockVariants(){const validVariants=this.getValidVariants(!0),optionsMap={};for(let i=0;i<this.product.variants.length;i++){const variant=this.product.variants[i];if(!variant.available){if(validVariants.root.includes(variant.option1)||(optionsMap.root=optionsMap.root||[],optionsMap.root.push(variant.option1),optionsMap.root=[...new Set(optionsMap.root)]),this.product.options.length>1){const key=variant.option1;validVariants[key]?.includes(variant.option2)||(optionsMap[key]=optionsMap[key]||[],optionsMap[key].push(variant.option2),optionsMap[key]=[...new Set(optionsMap[key])])}if(this.product.options.length===3){const key=variant.option1+" / "+variant.option2;validVariants[key]?.includes(variant.option3)||(optionsMap[key]=optionsMap[key]||[],optionsMap[key].push(variant.option3),optionsMap[key]=[...new Set(optionsMap[key])])}}}return optionsMap}onVariantChange(){this.updateOptions(),this.updateMasterId(),this.toggleAddButton(!0,""),this.updatePickupAvailability(),this.currentVariant?(this.updateMedia(),this.updateURL(),this.updateV
1ariantInput(),this.renderProductInfo()):(this.toggleAddButton(!0,""),this.setUnavailable())}updateOptions(){this.options=Array.from(this.querySelectorAll("select"),select=>select.value)}updateMasterId(){if(!this.product)return null;this.currentVariant=this.getVariantData().find(variant=>!variant.options.map((option,index)=>this.options[index]===option).includes(!1))}updateMedia(){const mediaGallery=document.getElementById(`MediaGallery-${this.dataset.section}`);!this.currentVariant||!this.currentVariant.featured_media||mediaGallery?.setActiveMedia&&mediaGallery.setActiveMedia(this.currentVariant.featured_media.id,mediaGallery.getAttribute("hide-variants")==="true")}updateURL(){!this.currentVariant||this.dataset.updateUrl==="false"||window.history.replaceState({},"",`${this.dataset.url}?variant=${this.currentVariant.id}`)}updateVariantInput(){document.querySelectorAll(`#product-form-${this.dataset.section}, #product-form-installment`).forEach(productForm=>{const input=productForm.querySelector('input[name="id"]');input.value=this.currentVariant.id,input.dispatchEvent(new Event("change",{bubbles:!0}))})}updatePickupAvailability(){const pickUpAvailability=document.querySelector("pickup-availability");!pickUpAvailability||!pickUpAvailability.fetchAvailability||(this.currentVariant&&this.currentVariant.available?pickUpAvailability.fetchAvailability(this.currentVariant.id):(pickUpAvailability.removeAttribute("available"),pickUpAvailability.innerHTML=""))}updateVisibility(){const hasSingleVariantAvailable=Object.keys(this.optionsMap).reduce((acc,key)=>this.optionsMap[key].length===1,!1),parent=this.closest(".product-variants");this.hideSingle&&this.hideOutOfStock&&hasSingleVariantAvailable?parent?.classList.add("hidden"):(parent?.classList.add("variants-visible"),parent?.classList.remove("variants-hidden"))}renderProductInfo(){fetch(`${this.dataset.url}?variant=${this.currentVariant.id}&section_id=${this.dataset.section}`).then(response=>response.text()).then(responseText=>{const priceId=`price-${this.dataset.section}`,stockBadgeId=`ProductAvailability-${this.dataset.section}`,html=new DOMParser().parseFromString(responseText,"text/html"),priceDestination=document.getElementById(priceId),priceSource=html.getElementById(priceId),stockBadgeDestination=document.getElementById(stockBadgeId),stockBadgeSource=html.getElementById(stockBadgeId);priceSource&&priceDestination&&(priceDestination.innerHTML=priceSource.innerHTML),stockBadgeSource&&stockBadgeDestination&&(stockBadgeDestination.innerHTML=stockBadgeSource.innerHTML);const price=document.getElementById(`price-${this.dataset.section}`);price&&price.classList.remove("visibility-hidden"),this.setProductActions(html),this.toggleAddButton(!this.currentVariant.available,window.variantStrings.outOfStock),this.setSku(this.currentVariant.sku),this.setBarcode(this.currentVariant.barcode),this.setProductInfo(html),publish(PUB_SUB_EVENTS.productVariantChange,{sectionId:this.dataset.section,html,variant:this.currentVariant})})}setSku(sku){const skuField=document.getElementById(`ProductSku-${this.dataset.section}`);if(skuField){if(!sku){skuField.parentNode.classList.add("visually-hidden");return}skuField.parentNode.classList.remove("visually-hidden"),skuField.textContent=sku}}setBarcode(barcode){const barcodeField=document.getElementById(`ProductBarcode-${this.dataset.section}`);if(barcodeField){if(!barcode){barcodeField.parentNode.classList.add("visually-hidden");return}barcodeField.parentNode.classList.remove("visually-hidden"),barcodeField.textContent=barcode??""}}setProductInfo(html){const className=".product-info-details-list",destinations=document.querySelectorAll(className),sources=html.querySelectorAll(className);destinations.length>0&&destinations.forEach((destination,index)=>{sources[index]&&(destination.innerHTML=sources[index]?.innerHTML)})}setProductActions(html){const productFormDestination=document.getElementById(`product-form-${this.dataset.section}`),productFormSource=html.getElementById(`product-form-${this.dataset.section}`),productActionsCartDestination=productFormDestination.querySelector(".product-actions-add-to-cart"),productActionsCartSource=productFormSource?.querySelector(".product-actions-add-to-cart"),addButtonDestination=productFormDestination.querySelector('[name="add"]'),addButtonSource=productFormSource?.querySelector('[name="add"]');productActionsCartDestination&&productActionsCartSource&&(productActionsCartDestination.classList=productActionsCartSource.classList,addButtonDestination.innerHTML=addButtonSource.innerHTML)}
1toggleAddButton(disable=!0){const productForm=document.getElementById(`product-form-${this.dataset.section}`);if(!productForm)return;const addButton=productForm.querySelector('[name="add"]');addButton&&(disable?addButton.setAttribute("disabled","disabled"):addButton.removeAttribute("disabled"))}setUnavailable(){const form=document.getElementById(`product-form-${this.dataset.section}`),addButton=form.querySelector('[name="add"]'),addButtonText=form.querySelector('[name="add"] > span'),price=document.getElementById(`price-${this.dataset.section}`),product=document.getElementById(`Product-${this.dataset.section}`);addButton&&(addButtonText.textContent=window.variantStrings.unavailable,price&&price.classList.add("visibility-hidden"))}getProductData(){return this.productData=this.productData||{options:JSON.parse(this.querySelector('[type="application/json"][data-id="product-options"]').textContent),variants:JSON.parse(this.querySelector('[type="application/json"][data-id="product-variants"]').textContent)},this.nodeName==="VARIANT-RADIOS"&&(this.productData.swatches=JSON.parse(this.querySelector('[type="application/json"][data-id="product-swatches"]').textContent)),this.productData}getVariantData(){return this.variantData=this.variantData||this.getProductData().variants,this.variantData}}customElements.get("variant-selects")||customElements.define("variant-selects",VariantSelects);class VariantRadios extends VariantSelects{constructor(){super(),this.focusedFieldset=null,this.tagName==="VARIANT-RADIOS"&&(this.fieldsets=this.querySelectorAll("fieldset"),this.fieldsets.forEach(fieldset=>{fieldset.addEventListener("change",()=>{setTimeout(function(){var updt=$(".cstm-monay").attr("upadate-price");$(".affirm-as-low-as.product-price").attr("data-amount",updt),affirm.ui.refresh()},1e3),this.focusedFieldset=fieldset,this.onRadioChange()})}),this.fieldsets[0]!=null&&this.onRadioChange())}onRadioChange(){this.updateRadiosInFieldset(0),this.product.options.length>1&&this.updateRadiosInFieldset(1),this.product.options.length===3&&this.updateRadiosInFieldset(2)}getFieldsetCheckedValue(fieldset){return Array.from(fieldset.querySelectorAll("input")).find(radio=>radio.checked).value}updateRadiosInFieldset(selectorIndex){const selector=this.fieldsets[selectorIndex],optionName=selector.dataset.optionName,originalValue=this.getFieldsetCheckedValue(selector);selector.replaceChildren();let key="root";if(selectorIndex===1)key=this.getFieldsetCheckedValue(this.fieldsets[0]);else if(selectorIndex===2){const value0=this.getFieldsetCheckedValue(this.fieldsets[0]),value1=this.getFieldsetCheckedValue(this.fieldsets[1]);key=value0+" / "+value1}const legend=document.createElement("legend");legend.textContent=optionName,selector.append(legend);const availableOptions=this.optionsMap[key],outOfStockOptions=this.outOfStockOptionsMap[key];let checkFirst=!1;availableOptions.includes(originalValue)||(checkFirst=!0);for(let i=0;i<availableOptions.length;i++){const option=availableOptions[i],id=`${this.dataset.section}-${selectorIndex}-${i}`,newLabel=document.createElement("label");if(newLabel.value=option,newLabel.htmlFor=id,newLabel.textContent=option,this.nodeName==="VARIANT-RADIOS"&&this.productData.swatches?.swatches_on_products&&this.productData.swatches?.swatches[option]&&this.productData.swatches.swatches_options?.includes(optionName)){const color=this.productData.swatches.swatches[option].color,image=this.productData.swatches.swatches[option].image;newLabel.dataset.tooltip=option,image?(newLabel.dataset.image=image,newLabel.style.backgroundImage="url("+image+")"):color&&(newLabel.dataset.color=color,newLabel.style.backgroundColor=color,newLabel.style.color=color)}const newOption=document.createElement("input");newOption.id=id,newOption.type="radio",newOption.name=optionName,newOption.value=option,newOption.setAttribute("form",this.formId),(originalValue===option||checkFirst)&&(newOption.checked=!0,checkFirst=!1,selector===this.focusedFieldset&&setTimeout(()=>{newOption.focus()},0)),this.disableOutOfStock&&outOfStockOptions?.includes(option)&&(newOption.disabled="true"),selector.append(newOption),selector.append(newLabel),selector.append(document.createTextNode(" "))}}updateOptions(){const fieldsets=Array.from(this.querySelectorAll("fieldset"));this.options=fieldsets.map(fieldset=>Array.from(fieldset.querySelectorAll("input")).find(radio=>radio.checked).value)}}customElements.define("variant-radios",VariantRadios);class ExpandableList extends HTMLElement{constructor(){super(),this.elements={root:this.querySelector("ul"),expandableNavs:this.querySelectorAll(".has-sub-menu")},this.elements.expandableNavs.length&&this.elements.expandableNavs.forEac
1h(nav=>{nav.querySelector("a").addEventListener("click",this.onToggle.bind(this,nav))})}onToggle(navElement,event){event.preventDefault(),event.stopImmediatePropagation();const submenu=navElement.querySelector("ul"),closeOthers=this.getAttribute("close-others");submenu.getAttribute("aria-expanded")==="true"?this.onContract(navElement):(this.onExpand(navElement),closeOthers&&[...navElement.closest("ul").querySelectorAll(":scope > .has-sub-menu")].filter(item=>item!==navElement).forEach(this.onContract))}onExpand(element){const submenu=element.querySelector("ul");element.classList.add("is-expanded"),submenu.setAttribute("aria-expanded","true")}onContract(element){const submenu=element.querySelector("ul");element.classList.remove("is-expanded"),submenu.setAttribute("aria-expanded","false")}}customElements.define("expandable-list",ExpandableList);class QuantityInput extends HTMLElement{constructor(){super(),this.input=this.querySelector("input"),this.changeEvent=new Event("change",{bubbles:!0}),this.querySelectorAll("button").forEach(button=>button.addEventListener("click",this.onButtonClick.bind(this)))}onButtonClick(event){event.preventDefault();const previousValue=this.input.value;event.target.name==="plus"?this.input.stepUp():this.input.stepDown(),previousValue!==this.input.value&&(this.input.dispatchEvent(this.changeEvent),publish(PUB_SUB_EVENTS.productQuantityUpdate,{quantity:Number(this.input.value)}))}}customElements.define("quantity-input",QuantityInput);class CartRemoveButton extends HTMLElement{constructor(){super(),this.addEventListener("click",event=>{event.preventDefault();const cartItems=this.closest("cart-items"),miniCart=this.closest("mini-cart");cartItems&&cartItems.updateQuantity(this.dataset.index,0),miniCart&&miniCart.updateQuantity(this.dataset.index,0),setTimeout(function(){var price_value=$(".cart_price_selector").data("value");$(".affirm-as-low-as.cart").attr("data-amount",price_value),affirm.ui.refresh()},2e3)})}}customElements.define("cart-remove-button",CartRemoveButton);class CartItems extends HTMLElement{constructor(){super(),this.eventContext=this.dataset.eventContext,this.lineItemStatusElement=document.getElementById("shopping-cart-line-item-status"),this.currentItemCount=Array.from(this.querySelectorAll('[name="updates[]"]')).reduce((total,quantityInput)=>total+parseInt(quantityInput.value),0),this.debouncedOnChange=debounce(event=>{this.onChange(event)},500),this.addEventListener("change",this.debouncedOnChange.bind(this))}onChange(event){setTimeout(function(){var price_value=$(".cart_price_selector").data("value");$(".affirm-as-low-as.cart").attr("data-amount",price_value),affirm.ui.refresh()},2e3),this.updateQuantity(event.target.dataset.index,event.target.value,document.activeElement.getAttribute("name"))}getSectionsToRender(){return[{id:"cart-page-title-wrap",section:document.getElementById("cart-page-title-wrap").dataset.id,selector:".page-title-wrap"},{id:"main-cart-items",section:document.getElementById("main-cart-items").dataset.id,selector:".js-contents"},{id:"header",section:"header",selector:".head-slot-cart-link"},{id:"cart-live-region-text",section:"cart-live-region-text",selector:".shopify-section"},{id:"main-cart-footer",section:document.getElementById("main-cart-footer").dataset.id,selector:".js-contents"}]}updateQuantity(line,quantity,name){this.enableLoading(line);const body=JSON.stringify({line,quantity,sections:this.getSectionsToRender().map(section=>section.section),sections_url:window.location.pathname});fetch(`${routes.cart_change_url}`,{...fetchConfig(),body}).then(response=>response.text()).then(state=>{const parsedState=JSON.parse(state);this.classList.toggle("is-empty",parsedState.item_count===0);const cartFooter=document.getElementById("main-cart-footer");cartFooter&&cartFooter.classList.toggle("is-empty",parsedState.item_count===0),this.get
1SectionsToRender().forEach((section=>{const elementToReplace=document.getElementById(section.id).querySelector(section.selector)||document.getElementById(section.id);elementToReplace.innerHTML=this.getSectionInnerHTML(parsedState.sections[section.section],section.selector)})),this.updateLiveRegions(line,parsedState.item_count);const lineItem=document.getElementById(`CartItem-${line}`);lineItem&&lineItem.querySelector(`[name="${name}"]`)&&lineItem.querySelector(`[name="${name}"]`).focus(),this.disableLoading(),quantity===0?publish(PUB_SUB_EVENTS.cartItemRemove,{source:this.eventContext,cart:parsedState}):publish(PUB_SUB_EVENTS.cartItemQuantityUpdate,{source:this.eventContext,cart:parsedState})}).catch(()=>{this.querySelectorAll(".cart-item-loading-overlay").forEach(overlay=>overlay.classList.add("hidden")),this.setError(window.cartStrings.error),this.disableLoading()})}setError(error){document.getElementById("cart-errors").textContent=error}updateLiveRegions(line,itemCount){this.currentItemCount===itemCount&&(document.getElementById(`Line-item-error-${line}`).querySelector(".cart-item-error-text").innerHTML=window.cartStrings.quantityError.replace("[quantity]",document.getElementById(`quantity-input-${line}`).value)),this.currentItemCount=itemCount,this.lineItemStatusElement.setAttribute("aria-hidden",!0);const cartStatus=document.getElementById("cart-live-region-text");cartStatus.setAttribute("aria-hidden",!1),setTimeout(()=>{cartStatus.setAttribute("aria-hidden",!0)},1e3)}getSectionInnerHTML(html,selector){return new DOMParser().parseFromString(html,"text/html").querySelector(selector).innerHTML}enableLoading(line){document.getElementById("main-cart-items").classList.add("cart-items-disabled"),this.querySelectorAll(`#CartItem-${line} .cart-item-loading-overlay`).forEach(overlay=>overlay.classList.remove("hidden")),document.activeElement.blur(),this.lineItemStatusElement.setAttribute("aria-hidden",!1)}disableLoading(){document.getElementById("main-cart-items").classList.remove("cart-items-disabled")}}customElements.define("cart-items",CartItems);class MiniCart extends CartItems{constructor(){super(),this.modal=this.querySelector(".dropdown-modal"),this.stickyHeader=document.querySelector("sticky-header")}open(opener){this.stickyHeader&&this.stickyHeader.reveal(),this.modal.open(opener)}close(){this.modal.close()}getSectionsToRender(){return[{id:"header",section:"header",selector:".head-mast .head-slot-cart-link"},{id:"header-mini-cart-content",section:"header-mini-cart-content"},{id:"header-mini-cart-footer",section:"header-mini-cart-footer"}]}getSectionInnerHTML(html,selector=".shopify-section"){return new DOMParser().parseFromString(html,"text/html").querySelector(selector).innerHTML}renderContents(parsedState){this.getSectionsToRender().forEach((section=>{const elementToReplace=document.getElementById(section.id).querySelector(section.selector)||document.getElementById(section.id);elementToReplace.innerHTML=this.getSectionInnerHTML(parsedState.sections[section.section],section.selector)})),this.currentItemCount=Array.from(this.querySelectorAll('[name="updates[]"]')).reduce((total,quantityInput)=>total+parseInt(quantityInput.value),0)}setError(error){document.getElementById("mini-cart-error").textContent=error}enableLoading(){this.querySelector(".mini-cart-wrap").classList.add("loading")}disableLoading(){this.querySelector(".mini-cart-wrap").classList.remove("loading")}updateLiveRegions(line,itemCount){this.currentItemCount===itemCount&&(document.getElementById(`MiniCart-Line-item-error-${line}`).querySelector(".cart-item-error-text").innerHTML=window.cartStrings.quantityError.replace("[quantity]",document.getElementById(`Mini-Cart-Quantity-${line}`).value)),this.currentItemCount=itemCount}}customElements.define("mini-cart",MiniCart);class LocalizationForm extends HTMLElement{constructor(){super(),this.elements={input:this.querySelector('input[name="locale_code"], input[name="country_code"]'),button:this.querySelector("button"),dropdown:this.querySelector(".dropdown"),panel:this.querySelector(".dropdown-list-wrap")},this.elements.button.addEventListener("click",this.openSelector.bind(this)),this.elements.button.addEventListener("focusout",this.closeSelector.bind(this)),this.addEventListener("keyup",this.onContainerKeyUp.bind(this)),this.querySelectorAll("a").forEach(item=>item.addEventListener("click",this.onItemClick.bind(this)))}hidePanel(){this.elements.button.blur(),this.elements.button.setAttribute("aria-expanded","fal
1se"),this.elements.panel.setAttribute("aria-hidden","true")}onContainerKeyUp(event){event.code.toUpperCase()==="ESCAPE"&&(this.hidePanel(),this.elements.button.focus())}onItemClick(event){event.preventDefault();const form=this.querySelector("form");this.elements.input.value=event.currentTarget.dataset.value,form&&form.submit()}toggleSelector(){if(this.isOpen()){this.hidePanel();return}this.elements.button.focus(),this.elements.panel.setAttribute("aria-hidden","false"),this.elements.button.setAttribute("aria-expanded","true")}isOpen(){return this.elements.panel.getAttribute("aria-hidden")==="false"}openSelector(){this.elements.button.focus(),this.elements.panel.setAttribute("aria-hidden",this.elements.button.getAttribute("aria-hidden")==="true"),this.elements.button.setAttribute("aria-expanded",(this.elements.button.getAttribute("aria-expanded")==="false").toString())}closeSelector(event){const shouldClose=event.relatedTarget&&(event.relatedTarget.nodeName==="BUTTON"||event.relatedTarget.nodeName==="MAIN");(event.relatedTarget===null||shouldClose)&&this.hidePanel()}}customElements.define("localization-form",LocalizationForm);class TabsComponent extends HTMLElement{constructor(){super()}setActiveTab(handle){this.querySelectorAll("[data-handle]").forEach(tab=>{if(tab.setAttribute("aria-hidden","true"),tab.getAttribute("data-handle")===handle){const carouselComponent=tab.querySelector("carousel-slider");tab.setAttribute("aria-hidden","false"),carouselComponent&&carouselComponent.flickity.resize()}})}}customElements.define("tabs-component",TabsComponent);class TabsNavigation extends HTMLElement{constructor(){super(),this.tabsId=this.getAttribute("for"),this.navs=this.querySelectorAll("a, button"),this.navs.forEach(nav=>{nav.addEventListener("click",this.onNavigationClick.bind(this,nav))})}onNavigationClick(element,event){event.preventDefault(),this.setActiveTab(element)}setActiveTab(nav){const target=nav.getAttribute("data-handle"),tabsComponent=document.querySelector(`#${this.tabsId}`);tabsComponent&&(tabsComponent.setActiveTab(target),this.navs.forEach(element=>{element===nav?element.classList.add("is-active"):element.classList.remove("is-active")}))}}customElements.define("tabs-navigation",TabsNavigation);class DeferredMedia extends HTMLElement{constructor(){super();const poster=this.querySelector('[id^="Deferred-Poster-"]');poster&&poster.addEventListener("click",this.loadContent.bind(this))}loadContent(focus=!0){if(window.pauseAllMedia(),!this.getAttribute("loaded")){const content=document.createElement("div");content.appendChild(this.querySelector("template").content.firstElementChild.cloneNode(!0)),this.setAttribute("loaded",!0);const deferredElement=this.appendChild(content.querySelector("video, model-viewer, iframe"));focus&&deferredElement.focus()}}}customElements.define("deferred-media",DeferredMedia);class DrawerModal extends HTMLElement{constructor(){super(),this.bodyClass=this.getAttribute("body-class"),this.isOpen=!1,this.eventPrefix=this.dataset.eventPrefix,this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.close()})}open(opener){this.isOpen=!0,this.openedBy=opener,document.body.classList.add(this.bodyClass),document.body.classList.add("drawer-open"),this.eventPrefix&&publish(`${this.eventPrefix}:open`)}close(){this.isOpen=!1,document.body.classList.remove(this.bodyClass),document.body.classList.remove("drawer-open"),this.openedBy&&removeTrapFocus(this.openedBy),this.eventPrefix&&publish(`${this.eventPrefix}:close`)}}customElements.define("drawer-modal",DrawerModal);class DrawerToggle extends HTMLElement{constructor(){super(),this.toggleElement=this.querySelector("a")||this.querySelector("button"),this.bodyClass=this.getAttribute("body-class"),this.preventOpen=this.getAttribute("prevent-open")==="true",!this.preventOpen&&this.toggleElement.addEventListener("click",event=>{event.preventDefault(),this.handleToggle()})}handleToggle(opener){document.querySelector(`#${this.getAttribute("for")}`).isOpen?this.close():this.open(opener)}open(opener){const drawer=document.querySelector(`#${this.getAttribute("for")}`);
1if(drawer){drawer.open(opener||this.toggleElement);const drawerHeader=drawer.querySelector(".drawer-header");trapFocus(drawer,drawerHeader)}}close(){const drawer=document.querySelector(`#${this.getAttribute("for")}`);drawer&&drawer.close&&drawer.close()}}customElements.define("drawer-toggle",DrawerToggle),document.body.addEventListener("click",event=>{document.body.classList.contains("drawer-open")&&(event.target.closest(".drawer")||event.target.closest("drawer-toggle")||[...document.querySelectorAll(".drawer")].forEach(drawer=>{const dismiss=drawer.querySelector("drawer-toggle");dismiss&&dismiss.close()}))});function getFocusableElements(container){return Array.from(container.querySelectorAll("summary, a[href], button:enabled, [tabindex]:not([tabindex^='-']), [draggable], area, input:not([type=hidden]):enabled, select:enabled, textarea:enabled, object, iframe"))}const trapFocusHandlers={};function trapFocus(container,elementToFocus=container){var elements=getFocusableElements(container),first=elements[0],last=elements[elements.length-1];removeTrapFocus(),trapFocusHandlers.focusin=event=>{event.target!==container&&event.target!==last&&event.target!==first||document.addEventListener("keydown",trapFocusHandlers.keydown)},trapFocusHandlers.focusout=function(){document.removeEventListener("keydown",trapFocusHandlers.keydown)},trapFocusHandlers.keydown=function(event){event.code.toUpperCase()==="TAB"&&(event.target===last&&!event.shiftKey&&(event.preventDefault(),first.focus()),(event.target===container||event.target===first)&&event.shiftKey&&(event.preventDefault(),last.focus()))},document.addEventListener("focusout",trapFocusHandlers.focusout),document.addEventListener("focusin",trapFocusHandlers.focusin),elementToFocus.focus()}try{document.querySelector(":focus-visible")}catch{focusVisiblePolyfill()}function focusVisiblePolyfill(){const navKeys=["ARROWUP","ARROWDOWN","ARROWLEFT","ARROWRIGHT","TAB","ENTER","SPACE","ESCAPE","HOME","END","PAGEUP","PAGEDOWN"];let currentFocusedElement=null,mouseClick=null;window.addEventListener("keydown",event=>{navKeys.includes(event.code.toUpperCase())&&(mouseClick=!1)}),window.addEventListener("mousedown",event=>{mouseClick=!0}),window.addEventListener("focus",()=>{currentFocusedElement&&currentFocusedElement.classList.remove("focused"),!mouseClick&&(currentFocusedElement=document.activeElement,currentFocusedElement.classList.add("focused"))},!0)}function removeTrapFocus(elementToFocus=null){document.removeEventListener("focusin",trapFocusHandlers.focusin),document.removeEventListener("focusout",trapFocusHandlers.focusout),document.removeEventListener("keydown",trapFocusHandlers.keydown),elementToFocus&&elementToFocus.focus()}function debounce(func,wait,immediate){let timeout;return function(){const context=this,args=arguments,later=function(){timeout=null,immediate||func.apply(context,args)},callNow=immediate&&!timeout;clearTimeout(timeout),timeout=setTimeout(later,wait),callNow&&func.apply(context,args)}}function fetchConfig(type="json"){return{method:"POST",headers:{"Content-Type":"application/json",Accept:`application/${type}`}}}function pauseAllMedia(){document.querySelectorAll(".js-youtube").forEach(video=>{video.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}),document.querySelectorAll(".js-vimeo").forEach(video=>{video.contentWindow.postMessage('{"method":"pause"}',"*")}),document.querySelectorAll("video").forEach(video=>video.pause()),document.querySelectorAll("product-model").forEach(model=>{model.modelViewerUI&&model.modelViewerUI.pause()})}(function(){document.querySelectorAll(".rte table").forEach(function(table){table.outerHTML='<div class="table-wrapper">'+table.outerHTML+"</div>"}),document.querySelectorAll(".rte iframe").forEach(function(iframe){(iframe.src.indexOf("youtube")!==-1||iframe.src.indexOf("youtu.be")!==-1||iframe.src.indexOf("vimeo")!==-1)&&(iframe.outerHTML='<div class="video-wrapper">'+iframe.outerHTML+"</div>",iframe.src=iframe.src)})})(),typeof window.Shopify>"u"&&(window.Shopify={}),Shopify.bind=function(fn,scope){return function(){return fn.apply(scope,arguments)}},Shopify.setSelectorByValue=function(selector,value){for(var i=0,count=selector.options.length;i<count;i++){var option=selector.options[i];if(value==option.value||value==option.innerHTML)return selector.selectedIndex=i,i}},Shopify.addListener=function(target,eventName,callback){target.addEventListener?target.addEventListener(eventName,callback,!1):target.attachEvent("on"+eventName,callback)},Shopify.postLink=function(path,options){options=options||{};var method=options.method||"post",params=options.parameters||{},form=document.createElement("form");form.setAttribute("method",method),form.setAttribute("action",path);for(var key in params){var hiddenField=document.createElement("input");hiddenField.setAttribute("type","hidden"),hiddenField.setAttribute("name",key),hiddenField.setAttribute("value",params[key]),form.appendChild(hiddenField)}document.body.appendChild(form),form.submit(),document.body.removeChild(form)},Shopify.CountryProvinceSelector=function(country_domid,province_domid,options){this.countryEl=
1document.getElementById(country_domid),this.provinceEl=document.getElementById(province_domid),this.provinceContainer=document.getElementById(options.hideElement||province_domid),Shopify.addListener(this.countryEl,"change",Shopify.bind(this.countryHandler,this)),this.initCountry(),this.initProvince()},Shopify.CountryProvinceSelector.prototype={initCountry:function(){var value=this.countryEl.getAttribute("data-default");Shopify.setSelectorByValue(this.countryEl,value),this.countryHandler()},initProvince:function(){var value=this.provinceEl.getAttribute("data-default");value&&this.provinceEl.options.length>0&&Shopify.setSelectorByValue(this.provinceEl,value)},countryHandler:function(e){var opt=this.countryEl.options[this.countryEl.selectedIndex],raw=opt.getAttribute("data-provinces"),provinces=JSON.parse(raw);if(this.clearOptions(this.provinceEl),provinces&&provinces.length==0)this.provinceContainer.style.display="none";else{for(var i=0;i<provinces.length;i++){var opt=document.createElement("option");opt.value=provinces[i][0],opt.innerHTML=provinces[i][1],this.provinceEl.appendChild(opt)}this.provinceContainer.style.display=""}},clearOptions:function(selector){for(;selector.firstChild;)selector.removeChild(selector.firstChild)},setOptions:function(selector,values){for(var i=0,count=values.length;i<values.length;i++){var opt=document.createElement("option");opt.value=values[i],opt.innerHTML=values[i],selector.appendChild(opt)}}};
2//# sourceMappingURL=/cdn/shop/t/21/assets/scripts.js.map?v=165616999652551294361719494983

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.