1"use strict";(async function(){var manualPriceUpdateAndEmit=Simba.Functional.compose(emitVariantChange,productFormMDVupdate,eventData),productFormMDV=Simba.ModelDrivenView.init($("[data-mdv-product-form]")),$variantSelect=$("[data-product-form] [data-variant-select]");document.addEventListener("cart:change",priceUpdateAndEmit,!1),document.addEventListener("bed-configurator:change",priceUpdateAndEmit,!1),document.addEventListener("bed-configurator:complete",priceUpdateAndEmit,!1),document.addEventListener("simple-bed-variant:update",manualPriceUpdateAndEmit,!1),$variantSelect.on("change",priceUpdateAndEmit),await priceUpdateAndEmit();async function priceUpdateAndEmit(){const variant=await collateData().variant;if(typeof variant<"u"){const data=productFormMDVupdate({variant});emitVariantChange(data)}}function productFormMDVupdate(data){var variant=data.variant,financeInstalmentValue=0,variantEligibleForFinance=!1;if(typeof variant!="object")return data;Simba.FinanceCalculator.length>0&&(variant.finance.price>=Simba.FinanceCalculator[0].instalment12Threshold?(financeInstalmentValue=variant.finance.lowestInstalmentPriceFormatted,variantEligibleForFinance=!0):variant.finance.price>=Simba.FinanceCalculator[0].financeThreshold&&(financeInstalmentValue=variant.finance.instalmentPriceFormatted[2],variantEligibleForFinance=!0));const $variantTitle=document.querySelector("[data-variant-title]");return $variantTitle&&($variantTitle.innerHTML=variant.variantTitle.split(":")[0].split(" / ")[0]),productFormMDV.setPrice=variant.priceFormattedWithoutTrailingZeros,productFormMDV.setOriginalPrice=variant.originalPriceFormattedWithoutTrailingZeros,productFormMDV.setHasDiscount=variant.hasDiscount,productFormMDV.setNotHasDiscount=!variant.hasDiscount,productFormMDV.setSavingTotal=variant.savingTotal,productFormMDV.setCompareAtSavingTotal=variant.compareAtSavingTotal,productFormMDV.setDiscountPercent=variant.discountPercentage.standard,productFormMDV.setDiscountPercentBase=variant.discountPercentage.base,productFormMDV.setBaseSavingTotal=variant.baseSavingTotal,productFormMDV.setHasCompareAtPrice=variant.hasCompareAtPrice,productFormMDV.setCompareAtPrice=variant.compareAtPrice,productFormMDV.setHasFinance=variant.hasFinance&&variantEligibleForFinance,productFormMDV.setInstalmentPrice=financeInstalmentValue,productFormMDV.setInstalmentMonths=variant.finance.instalmentMonths,productFormMDV.setEcoTax=variant.ecoTax,variant.external&&(productFormMDV.setAtcExternalURL=variant.external),data}function collateData(){var variantId=$variantSelect.find(":selected").is(":disabled")?$variantSelect.prop("value"):$variantSelect.val();return{variant:Simba.ProductAsync.load(variantId)}}function eventData(evt){return evt.detail}function emitVariantChange(data){typeof window.Simba.MattressPricePopulate=="function"&&window.Simba.MattressPricePopulate(),Simba.Event.emit("variant:change",data)}})(),(function(){var $productSelect=$("[data-product-form] [data-product-select]");$productSelect.length&&$productSelect.on("change",function(){var $this=$(this),handle=$this.val();window.location="/products/"+handle})})(),(function(){const earliestDeliveryMessages=document.querySelectorAll("[data-earliest-message]"),deliveryMessages=document.querySelectorAll("[data-delivery-message]");document.addEventListener("variant:change",updateEADD,!1);function updateEADD(event){const variant=event.detail.variant,currentMessage=getMessage(variant?.id);removeProps(),typeof variant=="object"&&(hideMessages(earliestDeliveryMessages,!0),currentMessage!==null&¤tMessage!=="undefined"?(currentMessage.classList.remove("hidden"),currentMessage.hasAttribute("data-hide-delivery")&&hideMessages(deliveryMessages,!0),addProps(variant.id)):hideMessages(deliveryMessages,!1))}function hideMessages(messages,hide){messages.forEach(message=>{hide?message.classList.add("hidden"):message.classList.remove("hidden")})}function getMessage(variantId){return document.querySelector('[data-earliest-message="'+variantId+'"]')}function addProps(variantId){const prop=buildProp(variantId);document.querySelectorAll("[data-product-line-properties]").forEach(properties=>{properties.appendChild(prop)})}function removeProps(){document.querySelectorAll(".eddHiddenProp").forEach(prop=>prop.remove())}function buildProp(variantId){return Object.assign(document.createElement("input"),{type:"hidden",name:"properties[EADD]",value:variantId,className:"eddHiddenProp"})}})(); 2//# sourceMappingURL=/cdn/shop/t/1086/assets/product.js.map?v=12042806182428087461782821507
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.