customElements.get("pickup-availability")||customElements.define("pickup-availability",class extends HTMLElement{constructor(){super(),this.errorHtml=this.querySelector("template")?.content.firstElementChild.cloneNode(!0),this.info=this.querySelector(".js-pickup-availability-info"),this.pickupAvailabilityConfirmStore=this.querySelector(".pickup-availability__confirm-store"),this.storeLocator=document.querySelector("my-store-locator"),this.storeLocatorDrawer=document.querySelector("my-store-locator-drawer"),this.storeConfirmationMessage=window.cartStrings.storeConfirmationMessage}renderError(){this.info.innerHTML="",this.info.append(this.errorHtml)}renderLoading(){this.info.innerHTML="",this.pickupAvailabilityConfirmStore&&(this.pickupAvailabilityConfirmStore.innerHTML="");const loadingHtml=`

${this.storeLocator.dataset.loadingText}

`,loadingNode=new DOMParser().parseFromString(loadingHtml,"text/html").body.childNodes[0];this.info.append(loadingNode)}renderPreview(location){if(this.dataset?.cto){location?.available?this.classList.add("is-active"):this.classList.remove("is-active");return}if(this.dataset?.itemKey&&location){const itemLocationsData=this.storeLocator.itemLocationsData[this.dataset.itemKey];if(itemLocationsData){const itemLocation=itemLocationsData.find(itemLocation2=>itemLocation2.id===location.id);itemLocation&&(location=itemLocation)}}this.info.innerHTML="",this.pickupAvailabilityConfirmStore&&(this.pickupAvailabilityConfirmStore.innerHTML="");let buttonText=this.storeLocator.dataset.viewStoreAvailabilityText,unavailableHtml="",timeHtml="",stockHtml="",messageOverridden=!1;if(location){const itemsAdded=this.dataset?.itemQuantity?parseInt(this.dataset.itemQuantity):null;buttonText=location.name;let pickUpTimeTranslated="";if(location.pickUpTime){const key=location.pickUpTime,languageKey=SDG.Data.language?.toLowerCase()||"en";pickUpTimeTranslated=window.deliveryOptionsStrings?.[languageKey]?.[key]||location.pickUpTime}let overridePickupMessage=this.dataset?.overridePickupMessage;const messageType=this.dataset?.messageType;if(!overridePickupMessage&&messageType){const languageKey=SDG.Data.language?.toLowerCase()||"en",pickupMessagesJson=JSON.parse(location.pickupMessages?.value||null),pickupMessages=pickupMessagesJson?.[languageKey]||pickupMessagesJson?.en;switch(messageType){case"cto":overridePickupMessage=pickupMessages?.cto;break;case"preorder":overridePickupMessage=pickupMessages?.preOrder;break;case"in stock":overridePickupMessage=pickupMessages?.inStock;break}}if(overridePickupMessage&&location.productPickupOfferedAtLocation&&!(messageType==="in stock"&&!location.available))timeHtml=`

${overridePickupMessage}

`,window.location.href.includes("/cart")&&(this.pickupAvailabilityConfirmStore.innerHTML=this.storeConfirmationMessage),messageOverridden=!0;else if(location.available)this.dataset.quantityAvailable=location.quantityAvailable,timeHtml=`

${pickUpTimeTranslated}

`,location.quantityAvailable<10&&(stockHtml=`

${this.storeLocator.dataset.lowStockHtml.replace("{{ quantity }}",location.quantityAvailable)}

`),itemsAdded&&itemsAdded>location.quantityAvailable&&(timeHtml=`

${this.dataset.error}

`),window.location.href.includes("/cart")&&(this.pickupAvailabilityConfirmStore.innerHTML=this.storeConfirmationMessage);else if(location.available===!1){const overrideUnavailableMessage=this.dataset?.overrideUnavailableMessage;unavailableHtml=`

${overrideUnavailableMessage?`${overrideUnavailableMessage}`:this.storeLocator.dataset.unavailableText}

`,messageOverridden=!!overrideUnavailableMessage}}const infoHtml=`
${unavailableHtml} ${timeHtml} ${stockHtml}
`,infoNode=new DOMParser().parseFromString(infoHtml,"text/html").body.childNodes[0];this.info.append(infoNode),messageOverridden?this.classList.add("is-overridden"):this.classList.remove("is-overridden");const button=this.querySelector("button");button&&button.addEventListener("click",evt=>{if(evt.preventDefault(),this.storeLocatorDrawer.selectedItemLocationsKey=null,this.dataset?.itemKey){const selectedItemLocationsData=this.storeLocator.itemLocationsData[this.dataset.itemKey];selectedItemLocationsData&&(this.storeLocatorDrawer.selectedItemLocationsKey=this.dataset.itemKey,this.storeLocatorDrawer.updateStoreDetails(selectedItemLocationsData,""))}this.storeLocatorDrawer.show(evt.currentTarget)})}}); //# sourceMappingURL=/cdn/shop/t/14/assets/pickup-availability.js.map?v=741939373213593171742784889