customElements.get("product-form")||customElements.define("product-form",class extends HTMLElement{constructor(){super(),this.form=this.querySelector("form"),this.form.querySelector("[name=id]").disabled=!1,this.form.addEventListener("submit",this.onSubmitHandler.bind(this)),this.cartNotification=document.querySelector("cart-notification")}onSubmitHandler(evt){if(evt.preventDefault(),isLimited&&checkQuantity()<0)return!1;const submitButton=this.querySelector('[type="submit"]');if(submitButton.classList.contains("loading"))return;this.handleErrorMessage(),this.cartNotification.setActiveElement(document.activeElement),submitButton.setAttribute("aria-disabled",!0),submitButton.classList.add("loading"),this.querySelector(".loading-overlay__spinner").classList.remove("hidden");const config=fetchConfig("javascript");config.headers["X-Requested-With"]="XMLHttpRequest",config.body=JSON.stringify({...JSON.parse(serializeForm(this.form)),sections:this.cartNotification.getSectionsToRender().map(section=>section.id),sections_url:window.location.pathname}),fetch(`${routes.cart_add_url}`,config).then(response=>response.json()).then(response=>{if(response.status){this.handleErrorMessage(response.description);return}this.cartNotification.renderContents(response),isLimited&&(cartStock=response.quantity,setMaxValue(cartStock),disableButton())}).catch(e=>{console.error(e)}).finally(()=>{submitButton.classList.remove("loading"),submitButton.removeAttribute("aria-disabled"),this.querySelector(".loading-overlay__spinner").classList.add("hidden")})}handleErrorMessage(errorMessage=!1){this.errorMessageWrapper=this.errorMessageWrapper||this.querySelector(".ec-cart-error"),this.errorMessage=this.errorMessage||this.errorMessageWrapper.querySelector(".ec-cart-error__message"),this.errorMessageWrapper.toggleAttribute("hidden",!errorMessage),errorMessage&&(this.errorMessage.textContent=errorMessage)}}); //# sourceMappingURL=/cdn/shop/t/49/assets/product-form.js.map