class VariantEditCartSelects extends HTMLElement{constructor(){super(),this.variantSelect=this,this.item=$(this.variantSelect).closest(".product-edit-item"),this.variantSelect.classList.contains("has-default")&&(this.updateOptions(),this.updateMasterId(),this.renderProductInfo()),this.addEventListener("change",this.onVariantChange.bind(this))}onVariantChange(event){this.updateOptions(),this.updateMasterId(),this.currentVariant?(this.updateMedia(),this.updateVariantInput(),this.updatePrice(),this.renderProductInfo(),this.updateAttribute(!1,!this.currentVariant.available)):this.updateAttribute(!0),this.updateAddToCartButton(),window.show_multiple_currencies&&Currency.currentCurrency!=shopCurrency&&Currency.convertAll(window.shop_currency,$("#currencies .active").attr("data-currency"),"span.money","money_format")}updateOptions(){this.options=Array.from(this.querySelectorAll("select"),select=>select.value)}updateMasterId(){this.currentVariant=this.getVariantData().find(variant=>!variant.options.map((option,index)=>this.options[index]===option).includes(!1))}updateMedia(){if(!this.currentVariant||!this.currentVariant?.featured_image)return;const itemImage=this.item.find(".product-edit-image"),image=this.currentVariant?.featured_image;itemImage&&itemImage.find("img").attr({src:image.src,srcset:image.src,alt:image.alt})}updateVariantInput(){const productForm=document.querySelector(`#product-form-edit-${this.dataset.product}`);if(!productForm)return;const input=productForm.querySelector('input[name="id"]');input&&(input.value=this.currentVariant.id,input.dispatchEvent(new Event("change",{bubbles:!0})))}updatePrice(){const itemPrice=this.item.find(".product-edit-price");if(itemPrice){var price=this.currentVariant?.price,compare_at_price=this.currentVariant?.compare_at_price;itemPrice.find(".price").html(Shopify.formatMoney(price,window.money_format)).show(),compare_at_price>price?(itemPrice.find(".compare-price").html(Shopify.formatMoney(compare_at_price,window.money_format)).show(),itemPrice.find(".price").addClass("new-price")):(itemPrice.find(".compare-price").hide(),itemPrice.find(".price").removeClass("new-price"))}}renderProductInfo(){var variantList=this.getVariantData().filter(variant=>variant.available),selectedOption1=this.currentVariant?.option1,selectedOption2=this.currentVariant?.option2,selectedOption3=this.currentVariant?.option3,selectedVariant=this.currentVariant.title,options=this.getElementsByClassName("product-form__input");this.item.find("[data-change-title]").text(selectedVariant),$.each(options,(index,element)=>{var position=$(element).data("option-index"),type=$(element).data("product-attribute");switch(position){case 0:if($(element).find("[data-header-option]").text(selectedOption1),type=="set-select"){var selectValue=$(element).find(".select__select").val(),selectList=$(element).find(".select__select option");selectList.each((idx,elt)=>{elt.value==selectValue?$(elt).attr("selected","selected"):$(elt).removeAttr("selected")})}var option1List=variantList.filter(variant=>variant.option1===selectedOption1);if(selectedOption2){var inputList=$(options[1]),input=inputList.find(".product-form__radio"),selectOption=inputList.find(".select__select option");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option1List.find(variant=>variant.option2==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):selectOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option1List.find(variant=>variant.option2==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}if(selectedOption3){var inputList=$(options[2]),input=inputList.find(".product-form__radio"),selectOption=inputList.find(".select__select option");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option1List.find(variant=>variant.option3==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):electOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option1List.find(variant=>variant.option3==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}break;case 1:if($(element).find("[data-header-option]").text(selectedOption2),type=="set-select"){var selectValue=$(element).find(".select__select").val(),selectList=$(element).find(".select__select option");selectList.each((idx,elt)=>{elt.value==selectValue?$(elt).attr("selected","selected"):$(elt).removeAttr("selected")})}var option2List=variantList.filter(variant=>variant.option2===selectedOption2);if(selectedOption1){var inputList=$(options[0]),input=inputList.find(".product-form__radio"),selectOption=inputList.find(".select__select option");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option2List.find(variant=>variant.option1==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):selectOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option2List.find(variant=>variant.option1==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}if(selectedOption3){var inputList=$(options[2]),input=inputList.find(".product-form__radio"),selectOption=inputList.find(".select__select option");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option2List.find(variant=>variant.option3==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):electOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option2List.find(variant=>variant.option3==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}break;case 2:if($(element).find("[data-header-option]").text(selectedOption3),type=="set-select"){var selectValue=$(element).find(".select__select").val(),selectList=$(element).find(".select__select option");selectList.each((idx,elt)=>{elt.value==selectValue?$(elt).attr("selected","selected"):$(elt).removeAttr("selected")})}var option3List=variantList.filter(variant=>variant.option3===selectedOption3);if(selectedOption1){var inputList=$(options[0]),input=inputList.find(".product-form__radio"),selectOption=inputList.find(".select__select option");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option3List.find(variant=>variant.option1==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):selectOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option3List.find(variant=>variant.option1==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}if(selectedOption2){var inputList=$(options[1]),input=inputList.find(".product-form__radio");type=="set-rectangle"?input.each((idx,elt)=>{var $input=$(elt),$label=$input.next(),optionValue=$(elt).val(),optionSoldout=option3List.find(variant=>variant.option2==optionValue);optionSoldout==null?$label.removeClass("available").addClass("soldout"):$label.removeClass("soldout").addClass("available")}):selectOption.each((idx,elt)=>{var $option=$(elt),optionValue=$(elt).val(),optionSoldout=option3List.find(variant=>variant.option2==optionValue);optionSoldout==null?$option.attr("disabled",!0):$option.removeAttr("disabled")})}break}});var inventory=this.currentVariant?.inventory_management;if(inventory!=null){var productId=this.item.data("cart-edit-id"),arrayInVarName="edit_cart_inven_array_"+productId,inven_array=window[arrayInVarName];if(inven_array!=null){var inven_num=inven_array[this.currentVariant.id],inventoryQuantity=parseInt(inven_num);if(this.item.find('input[name="quantity"]').attr("data-inventory-quantity",inventoryQuantity),this.item.find(".product-edit-hotStock").length>0){var hotStock=this.item.find(".product-edit-hotStock"),maxStock=hotStock.data("edit-cart-hot-stock");if(inventoryQuantity>0&&inventoryQuantity<=maxStock){var textStock=window.inventory_text.hotStock.replace("[inventory]",inventoryQuantity);hotStock.text(textStock).show()}else hotStock.hide()}}}}updateAttribute(unavailable=!0,disable=!0){var alertBox=this.item.find(".alertBox"),quantityInput=this.item.find('input[name="quantity"]'),notifyMe=this.item.find(".product-edit-notifyMe"),hotStock=this.item.find(".productView-hotStock");unavailable?(this.item.removeClass("isChecked"),quantityInput.attr("disabled",!0),alertBox.find(".alertBox-message").text(window.variantStrings.unavailable_message),alertBox.show(),notifyMe.slideUp("slow"),hotStock.length>0&&hotStock.hide()):disable?(this.item.removeClass("isChecked"),quantityInput.attr("disabled",!0),alertBox.find(".alertBox-message").text(window.variantStrings.soldOut_message),alertBox.show(),this.item.find(".quantity__message").empty().hide(),notifyMe.length>0&&(notifyMe.find('input[name="halo-notify-product-variant"]').val(this.currentVariant.title),notifyMe.find(".notifyMe-text").empty(),notifyMe.slideDown("slow"))):(this.item.addClass("isChecked"),quantityInput.attr("disabled",!1),alertBox.find(".alertBox-message").text(""),alertBox.hide(),notifyMe.length>0&¬ifyMe.slideUp("slow")),this.item[0].dataset.inStock=this.currentVariant.available?"true":"false"}getVariantData(){return this.variantData=this.variantData||JSON.parse(this.querySelector('[type="application/json"]').textContent),this.variantData}updateAddToCartButton(){const productItems=[...this.variantSelect.closest("[data-template-cart-edit]").querySelectorAll(".product-edit-item")],updateEditCartButton=this.variantSelect.closest("[data-edit-cart-popup]").querySelector("[data-update-cart-edit]");productItems.every(productItem=>productItem.dataset.inStock=="true")?updateEditCartButton.disabled=!1:updateEditCartButton.disabled=!0}}customElements.define("variant-edit-selects",VariantEditCartSelects);class VariantEditCartRadios extends VariantEditCartSelects{constructor(){super()}updateOptions(){const fieldsets=Array.from(this.querySelectorAll("fieldset"));this.options=fieldsets.map(fieldset=>Array.from(fieldset.querySelectorAll("input")).find(radio=>radio.checked).value)}}customElements.define("variant-edit-radios",VariantEditCartRadios);class QuantityEditCartInput extends HTMLElement{constructor(){super(),this.input=this.querySelector("input"),this.changeEvent=new Event("change",{bubbles:!0}),this.item=$(this.input).closest(".product-edit-item"),this.input.addEventListener("change",this.onInputChange.bind(this)),this.querySelectorAll(".btn-quantity").forEach(button=>button.addEventListener("click",this.onButtonClick.bind(this)))}onButtonClick(event){event.preventDefault();const value=Number(this.input.value);if(event.target.classList.contains("plus"))var newVal=value+1;else var newVal=value-1;this.input.value=newVal,this.input.dispatchEvent(this.changeEvent)}onInputChange(event){event.preventDefault();var inputValue=Number(this.input.value),inventoryQuantity=Number(this.input.dataset.quantity);if(inputValue<1)inputValue=1,this.input.value=inputValue;else if(inventoryQuantity