"use strict";(self.webpackChunkui=self.webpackChunkui||[]).push([[11],{52:(r,e,i)=>{i.d(e,{a:()=>o,b:()=>t,c:()=>d});var n=i(20),a=i(17);function t(r,e){const i=e.map((({selectedVariant:r})=>r)),n=c(r,i);return Object.assign(Object.assign({},n),{getPriceDifferences(a,t){if(!a||!t)return{priceDiff:0,preOrderPriceDiff:0};const u=e.findIndex((({selectedVariant:r})=>r.variantId===a.variantId)),o=i.map(((r,e)=>e===u?t:r)),s=c(r,o),l=n.bundlePrice,p=s.preOrderShipDate.displayValue;return{priceDiff:s.availableForSale?d(s.bundlePrice-l):void 0,preOrderPriceDiff:d(s.preOrderPrice-l),preOrderLabel:p}}})}function c(r,e){const i=e.every((r=>!r.oos)),t=e.every((r=>r.preorderVariant)),c=e.reduce(((r,e)=>{var i,n;return r+parseFloat(null!==(n=null===(i=e.preorderVariant)||void 0===i?void 0:i.price)&&void 0!==n?n:"NaN")}),0),o=d(e.reduce(((r,e)=>r+parseFloat(e.price)),0)),s=e.reduce(((r,e)=>{var i,n;return r+parseFloat(null!==(n=null!==(i=e.compareAtPrice)&&void 0!==i?i:e.price)&&void 0!==n?n:"0")}),0),l=u(r,e)/100,p=e.map((r=>{if(r.preorderVariant)return{id:r.preorderVariant.id,price:parseFloat(r.preorderVariant.price),isPreOrderVariant:!0,discount:r.preorderVariant.maxBundleDiscount}})).filter(a.c),f=d(c*(1-(p.length!==e.length?0:u(r,p)/100)));return{compareAtBundlePrice:o,compareAtRetailBundlePrice:s,bundlePrice:!i&&t?f:d(o*(1-l)),bundleDiscount:l,preOrderPrice:f,preOrderShipDate:(0,n.b)(e,!0),availableForSale:i}}function u(r,e){if(!r.isDynamicDiscount)return r.maxBundleDiscount;const i=e.map((r=>"variantId"in r?{isPreOrderVariant:(0,n.f)(r),discount:r.maxBundleDiscount,price:parseFloat(r.price)}:r)),a=!!i.find((r=>r.isPreOrderVariant)),t=i.map((e=>{const i=function(r,e){var i;if(!r.isDynamicDiscount)return r.maxBundleDiscount;const n=null!==(i=e.discount)&&void 0!==i?i:r.maxBundleDiscount;return void 0!==r.maxPreOrderDiscount&&e.isPreOrderVariant?Math.min(r.maxPreOrderDiscount,n):n}(r,e);return i*(r.avgDiscounts?e.price:1)}));if(r.avgDiscounts){const r=i.reduce(((r,e)=>r+e.price),0),e=t.reduce(((r,e)=>r+e),0);return Math.ceil(e/r)}const c=a?Math.max(...t):Math.min(...t);return Math.min(r.maxBundleDiscount,c)}function d(r){return Math.round(100*r)/100}function o(r){return Number.isInteger(r)?r.toString():r.toFixed(2)}}}]);