/* Generated time: July 3, 2024 19:32 This file was created by the app developer. Feel free to contact the original developer with any questions. It was minified (compressed) by AVADA. AVADA do NOT own this script. */ customElements.get("product-info")||customElements.define("product-info",class extends HTMLElement{constructor(){super(),this.input=this.querySelector(".quantity__input"),this.currentVariant=this.querySelector(".product-variant-id"),this.variantSelects=this.querySelector("variant-radios"),this.submitButton=this.querySelector('[type="submit"]')}cartUpdateUnsubscriber=void 0;variantChangeUnsubscriber=void 0;connectedCallback(){this.input&&(this.quantityForm=this.querySelector(".product-form__quantity"),this.quantityForm)&&(this.setQuantityBoundries(),this.dataset.originalSection||(this.cartUpdateUnsubscriber=subscribe(PUB_SUB_EVENTS.cartUpdate,this.fetchQuantityRules.bind(this))),this.variantChangeUnsubscriber=subscribe(PUB_SUB_EVENTS.variantChange,t=>{var i=this.dataset.originalSection||this.dataset.section;t.data.sectionId===i&&(this.updateQuantityRules(t.data.sectionId,t.data.html),this.setQuantityBoundries())}))}disconnectedCallback(){this.cartUpdateUnsubscriber&&this.cartUpdateUnsubscriber(),this.variantChangeUnsubscriber&&this.variantChangeUnsubscriber()}setQuantityBoundries(){var t={cartQuantity:this.input.dataset.cartQuantity?parseInt(this.input.dataset.cartQuantity):0,min:this.input.dataset.min?parseInt(this.input.dataset.min):1,max:this.input.dataset.max?parseInt(this.input.dataset.max):null,step:this.input.step?parseInt(this.input.step):1};let i=t.min;var a=null===t.max?t.max:t.max-t.cartQuantity;null!==a&&(i=Math.min(i,a)),t.min<=t.cartQuantity&&(i=Math.min(i,t.step)),this.input.min=i,this.input.max=a,this.input.value=i,publish(PUB_SUB_EVENTS.quantityUpdate,void 0)}fetchQuantityRules(){this.currentVariant&&this.currentVariant.value&&(this.querySelector(".quantity__rules-cart .loading-overlay").classList.remove("hidden"),fetch(`${this.dataset.url}?variant=${this.currentVariant.value}§ion_id=`+this.dataset.section).then(t=>t.text()).then(t=>{t=(new DOMParser).parseFromString(t,"text/html");this.updateQuantityRules(this.dataset.section,t),this.setQuantityBoundries()}).catch(t=>{console.error(t)}).finally(()=>{this.querySelector(".quantity__rules-cart .loading-overlay").classList.add("hidden")}))}updateQuantityRules(t,i){var a,e=i.getElementById("Quantity-Form-"+t);for(a of[".quantity__input",".quantity__rules",".quantity__label"]){var s,n=this.quantityForm.querySelector(a),r=e.querySelector(a);if(n&&r)if(".quantity__input"===a)for(s of["data-cart-quantity","data-min","data-max","step"]){var u=r.getAttribute(s);null!==u&&n.setAttribute(s,u)}else n.innerHTML=r.innerHTML}}});