1class CountrySwitcherModal extends HTMLElement{#dialog=null;#form=null;#previousScrollY=0;#isClosing=!1;connectedCallback(){this.#dialog=this.querySelector("dialog"),this.#form=this.querySelector(".country-switcher-modal__form"),this.#dialog&&(this.#appendSearchParamsToAnchors(),this.#bindTriggers(),this.#dialog.addEventListener("click",this.#handleDialogClick),this.#dialog.addEventListener("cancel",this.#handleCancel))}disconnectedCallback(){this.#dialog?.removeEventListener("click",this.#handleDialogClick),this.#dialog?.removeEventListener("cancel",this.#handleCancel)}#appendSearchParamsToAnchors(){const searchUrl=location.search;if(searchUrl)for(const anchor of this.querySelectorAll("[data-iso]"))anchor.href=anchor.href+searchUrl}#bindTriggers(){for(const trigger of document.querySelectorAll("[data-country-switcher-modal-trigger]"))trigger.dataset.countrySwitcherBound||(trigger.dataset.countrySwitcherBound="true",trigger.addEventListener("click",this.#handleTriggerClick))}#handleTriggerClick=e=>{e.preventDefault(),this.open()};#handleDialogClick=e=>{const anchor=e.target?.closest("[data-iso]");if(anchor){const anchorEl=anchor;e.preventDefault(),this.#handleSwitch({iso:anchorEl.dataset.iso??"",url:anchorEl.href,useMarkets:anchorEl.dataset.useMarkets==="true"});return}if(e.target?.closest("[data-close-dialog]")){this.close();return}e.target===this.#dialog&&this.close()};#handleCancel=e=>{e.preventDefault(),this.close()};open(){!this.#dialog||this.#dialog.open||this.#isClosing||(this.#previousScrollY=window.scrollY,document.body.style.width="100%",document.body.style.position="fixed",document.body.style.top=`-${this.#previousScrollY}px`,this.#dialog.showModal())}async close(){!this.#dialog?.open||this.#isClosing||(this.#isClosing=!0,this.#dialog.classList.add("dialog-closing"),await new Promise(resolve=>{this.#dialog?.addEventListener("animationend",resolve,{once:!0})}),this.#dialog.classList.remove("dialog-closing"),this.#isClosing=!1,document.body.style.width="",document.body.style.position="",document.body.style.top="",window.scrollTo({top:this.#previousScrollY,behavior:"instant"}),this.#dialog.close())}#handleSwitch({iso,url,useMarkets=!1}){if(!iso||!url)return;if(this.#setIso(iso),!useMarkets){window.location.href=url;return}const[lang,country]=iso.split("-");let language=lang;language.endsWith("-dev")&&(language=language.replace("-dev","")),language==="en"&&window.location.href.includes("alpinestars-stage.myshopify.com")&&(language="en-dev"),(this.#form?.querySelector('input[name="language_code"]')).value=language,(this.#form?.querySelector('input[name="country_code"]')).value=country,(this.#form?.querySelector('input[type="submit"]')).click()}#setIso(iso){if(!iso)return;const storage={iso,timestamp:Date.now()};return localStorage.setItem("preferred-locale",JSON.stringify(storage)),storage}}customElements.define("country-switcher-modal",CountrySwitcherModal); 2//# sourceMappingURL=/cdn/shop/t/196/assets/country-switcher-modal.js.map?v=37233429233487821271784987625
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.