1customElements.get("pickup-availability")||customElements.define("pickup-availability",class extends HTMLElement{constructor(){super(),this.hasAttribute("available")&&(this.errorHtml=this.querySelector("template").content.firstElementChild.cloneNode(!0),this.onClickRefreshList=this.onClickRefreshList.bind(this),this.fetchAvailability(this.dataset.variantId))}fetchAvailability(variantId){let rootUrl=this.dataset.rootUrl;rootUrl.endsWith("/")||(rootUrl=rootUrl+"/");const variantSectionUrl=`${rootUrl}variants/${variantId}/?section_id=pickup-availability`;fetch(variantSectionUrl).then(response=>response.text()).then(text=>{const sectionInnerHTML=new DOMParser().parseFromString(text,"text/html").querySelector(".shopify-section");this.renderPreview(sectionInnerHTML)}).catch(e=>{const button=this.querySelector("button");button&&button.removeEventListener("click",this.onClickRefreshList),this.renderError()})}onClickRefreshList(evt){this.fetchAvailability(this.dataset.variantId)}renderError(){this.innerHTML="",this.appendChild(this.errorHtml),this.querySelector("button").addEventListener("click",this.onClickRefreshList)}renderPreview(sectionInnerHTML){const drawer=document.querySelector(".pickup-availability-drawer");if(drawer&&drawer.remove(),!sectionInnerHTML.querySelector(".pickup-availability-preview")){this.innerHTML="",this.removeAttribute("available");return}this.innerHTML=sectionInnerHTML.querySelector("pickup-availability-preview").outerHTML,this.setAttribute("available",""),document.body.appendChild(sectionInnerHTML.querySelector(".pickup-availability-drawer"));const button=this.querySelector("button"),overlay=document.querySelector(".pickup-availability-drawer").querySelector(".overlay");setTimeout(()=>{button&&button.addEventListener("click",event=>{event.preventDefault();const target=event.currentTarget;target.classList.contains("open")?document.querySelector("pickup-availability-drawer").hide():document.querySelector("pickup-availability-drawer").show(target)}),overlay&&overlay.addEventListener("click",event=>{event.preventDefault(),document.querySelector("pickup-availability-drawer").classList.contains("open")&&document.querySelector("pickup-availability-drawer").hide()})},800)}}),customElements.get("pickup-availability-drawer")||customElements.define("pickup-availability-drawer",class extends HTMLElement{constructor(){super(),this.closeTimeout=null,this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.hide()});const close_button=this.querySelector("close-button");close_button.addEventListener("click",e=>{this.hide()}),close_button.addEventListener("keydown",event=>{!event.repeat&&(event.key==="Enter"||event.key===" ")&&(event.preventDefault(),this.hide())})}hide(){this.classList.contains("open")&&(this._trapCleanup&&(this._trapCleanup(),this._trapCleanup=null),document.querySelector("#ShowPickupAvailabilityDrawer").classList.remove("open"),document.documentElement.classList.remove("open-sidebar"),this.classList.remove("open"),this._opener&&(this._opener.setAttribute("aria-expanded","false"),this._opener.focus(),this._opener=null),this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null),this.closeTimeout=setTimeout(()=>{document.documentElement.classList.remove("open-drawer"),root.style.removeProperty("padding-right"),this.setAttribute("aria-hidden","true"),this.setAttribute("inert",""),this.closeTimeout=null},300))}show(trigger){this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null),this._opener=trigger||document.activeElement,this._opener&&this._opener.setAttribute("aria-expanded","true"),this.removeAttribute("aria-hidden"),this.removeAttribute("inert"),document.querySelector("#ShowPickupAvailabilityDrawer").classList.add("open"),document.documentElement.classList.add("open-drawer","open-sidebar"),root.style.setProperty("padding-right",getScrollBarWidth.init()+"px"),this.classList.add("open"),requestAnimationFrame(()=>{this._trapCleanup=trapFocus(this)})}}); 2//# sourceMappingURL=/cdn/shop/t/125/assets/pickup-availability.js.map?v=33
2014612610851847421786959922
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.