1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[54016],{45989:(e,n,l)=>{l.d(n,{Gp:()=>u,ZQ:()=>p,rf:()=>a,vv:()=>t,xH:()=>s});var r=l(39379);function i(e){let n=parseFloat(null==e?void 0:e.discounted_shipping);if(n)return n}function o(e){let n=parseFloat(null==e?void 0:e.shipping_discount)||parseFloat(null==e?void 0:e.base_shipping);return n||10.99}function t(e){return(0,r.isRuralPostalCode)(e)}function a(e){let n=null==e?void 0:e.find(e=>(null==e?void 0:e.type)==="DELIVERY");if(!n)return;let l=parseFloat(null==n?void 0:n.default_service_fee_amount);if(l>0)return l;let r=parseFloat(null==n?void 0:n.amount);if(r>0)return r}function u(e){var n;let{pricing:l,serviceFees:r}=e;return null!=(n=i(l))?n:a(r)}function s(e){let{pricing:n,translate:l}=e;if(!i(n)||function(e){let n=parseFloat(null==e?void 0:e.shipping_discount),l=parseFloat(null==e?void 0:e.discounted_shipping);return!!n&&!l}(n))return;let t=o(n);return l("deliveryFeeDisclaimerRural",{ruralFee:r.RURAL_FEE,shippingFee:t})}function p(e){let{deliveryFee:n,isRuralDelivery:l=!1,pricing:i,translate:t}=e;if(l){let e=o(i);return t("deliveryFeeDisclaimerRural",{ruralFee:r.RURAL_FEE,shippingFee:e})}return n?t("deliveryFeeDisclaimer",{deliveryFee:n}):null}},54016:(e,n,l)=>{l.d(n,{J:()=>A});var r=l(2860),i=l(56121),o=l.n(i),t=l(55729),a=l(54242),u=l(2952),s=l(81278),p=l(93712),d=l(60806),c=l(27308),m=l(69372),v=l(4436),g=l(39379),f=l(8893),_=l(13850),b=l(490),P=l(77844),h=l(87341),y=l(26486),x=l(46226);let S="bb-plan-summary-card";function C(e){let{averagePricePerPortion:n,incrementalServingsCount:l,numberOfPortions:i}=e,o=(0,a.A)("CartDrawer.CartDrawerFooter"),t=(0,h.A)();return(0,r.jsx)("div",{className:"mb-2 mt-2 text-gray-700 text-right text-xs","data-testid":"".concat(S,"-price-per-portion"),children:o("pricePerPortion",{portions:i+l,price:t.number(n,g.currencyFormat)})})}function E(e){let{disclaimer:n}=e;return n?(0,r.jsx)(y.default,{className:"block font-normal text-gray-700 text-xs",testId:"".concat(S,"-delivery-fee-disclaimer"),children:n}):null}function T(e){var n;let{cartData:l,coupon:i,couponError:o,disclaimer:t,mealPlanData:s,onCouponApply:p,provinceCode:d,resetCouponError:c}=e,m=(0,a.A)("SubscriptionPages.BuildABox.CartDrawer"),v=(0,a.A)("SubscriptionPages.BuildABox"),f=(0,a.A)("PlanSummaryCard"),_=(0,h.A)(),{averagePricePerPortion:b,discountTotal:P,grandTotal:T,incrementalServingsCount:j}=function(e){var n,l,r,i;let o=null!=(n=null==e?void 0:e.summary)?n:{};return{averagePricePerPortion:null==o?void 0:o.average_price_per_portion,discountTotal:parseFloat(null!=(l=null==o?void 0:o.discount_total)?l:0),grandTotal:parseFloat(null!=(r=null==o?void 0:o.grand_total)?r:0),incrementalServingsCount:null!=(i=null==o?void 0:o.incremental_servings_count)?i:0}}(l),A=(0,g.isHeatAndEatMember)(s),D=null==s?void 0:s.numberOfPortions,F=function(e){let{averagePricePerPortion:n,isHEMember:l,numberOfPortions:r}=e;return!l&&!!r&&!!+n}({averagePricePerPortion:b,isHEMember:A,numberOfPortions:D});return(0,r.jsxs)("div",{className:"mb-1 p-5 lg:p-6 xl:p-5 pt-3","data-testid":"".concat(S,"-details"),children:[(0,r.jsx)(x.OrderSummarySection,{cart:l,coupon:null!=(n=null==l?void 0:l.coupon)?n:i,mealPlanData:s,premiumPicksLabel:m("surchargesAndSavings"),provinceCode:d,showPlaceOrder:!1}),(0,r.jsx)(u.Coupon,{coupon:i,couponError:o,hasPriceDiscount:P>0,label:v("noCouponPlaceholder"),priceDiscount:P,resetCouponError:c,onCouponApply:p}),(0,r.jsx)("hr",{className:"bg-gray-300 border-0 h-px mb-3 mt-4"}),(0,r.jsxs)("div",{className:"flex flex-row justify-between",children:[(0,r.jsx)(y.default,{className:"font-normal text-lg md:text-base",children:f("firstBoxTotal")}),(0,r.jsx)(y.default,{className:"font-normal text-lg md:text-base",testId:"".concat(S,"-first-box-total-value"),children:_.number(T,g.currencyFormat)})]}),F?(0,r.jsx)(C,{averagePricePerPortion:b,incrementalServingsCount:j,numberOfPortions:D}):null,(0,r.jsx)(E,{disclaimer:t})]})}C.propTypes={averagePricePerPortion:o().oneOfType([o().number,o().string]),incrementalServingsCount:o().number,numberOfPortions:o().number},E.propTypes={disclaimer:o().node},T.propTypes={cartData:o().object,coupon:o().object,couponError:o().object,disclaimer:o().node,mealPlanData:o().object,onCouponApply:o().func,provinceCode:o().string,resetCouponError:o().func};var j=l(45989);let A=e=>{var n,l,i;let{isPlanDetailsShown:o=!0,coupon:h,onCouponApply:y,selectedPlan:x,couponError:S,resetCouponError:C}=e,E=(0,a.A)("SubscriptionPages.PlanSummary"),{cartData:A}=(0,f.H)(),D=(0,_.SN)(),F=(0,t.useMemo)(()=>D?function(e){if(e)return{numberOfPeople:null==e?void 0:e.number_of_portions,numberOfPortions:(null==e?void 0:e.number_of_portions)?(null==e?void 0:e.number_of_portions)*(null==e?void 0:e.number_of_recipes):void 0,numberOfRecipes:null==e?void 0:e.number_of_recipes,planType:null==e?void 0:e.planType}}(x):void 0,[D,x]),R=(0,t.useMemo)(()=>{var e,n;return null!=(n=null==(e=(0,b.eS)((0,P.WG)()))?void 0:e.province)?n:void 0},[]),M=(0,t.useRef)(null);A&&(M.current=A);let O=null!=A?A:M.current,N=(0,t.useMemo)(()=>(0,j.xH)({pricing:null==x?void 0:x.pricing,translate:E}),[null==x?void 0:x.pricing,E]),w=(0,t.useMemo)(()=>
1{if(D)return O?(0,r.jsx)(T,{cartData:O,coupon:h,couponError:S,disclaimer:N,mealPlanData:F,provinceCode:R,resetCouponError:C,onCouponApply:y}):null},[h,S,N,O,D,F,y,R,C]),[q,L]=(0,t.useState)(),k=null==x?void 0:x.number_of_recipes,B=null==x?void 0:x.number_of_portions,I=(null==x?void 0:x.planType)===g.RTE_PLAN_TYPE,H=E("heading"),K=I?E("descriptionHNE",{numOfRecipes:k}):E("description",{numOfRecipes:k,numOfPortions:B}),{planOptions:G,handlePlanChange:J}=(()=>{let{plans:e,selectedPlan:n,setSelectedPlan:l,setPreviousSelectedPlan:r,previousSelectedPlan:i}=(0,c.d0)(),o=(0,s.useRouter)(),a=(0,t.useMemo)(()=>{var e;return!(null==o||null==(e=o.pathname)?void 0:e.startsWith(v.GTKY_PLAN_PAGE_STEP_6))},[null==o?void 0:o.pathname]),u=(0,t.useMemo)(()=>{let e=(0,m.getLocalStorageItem)("mealKitSubscription");return e?JSON.parse(e):{}},[]),[g,f]=(0,t.useState)(null),_=(0,t.useMemo)(()=>{if((null==n?void 0:n.planType)&&(null==e?void 0:e[null==n?void 0:n.planType])){let l=e[null==n?void 0:n.planType].find(e=>(null==e?void 0:e.number_of_recipes)===2&&(null==e?void 0:e.number_of_portions)===2);if(l)return l}return null},[e,null==n?void 0:n.planType]),b=(0,t.useMemo)(()=>i||((null==u?void 0:u.previousMealPlan)?u.previousMealPlan:n),[u,i,n]),P=(0,t.useMemo)(()=>(null==b?void 0:b.plan_tag)!==(null==_?void 0:_.plan_tag),[null==b?void 0:b.plan_tag,null==_?void 0:_.plan_tag]);return(0,t.useEffect)(()=>{!(null==u?void 0:u.previousMealPlan)&&P&&a&&((0,d.po)("mealKitSubscription","previousMealPlan",n),r(n))},[]),(0,t.useEffect)(()=>{_&&!g&&f(_)},[_,g]),{planOptions:(0,t.useMemo)(()=>{var e;return a&&g&&b&&P?(e=[{...g,isChecked:(null==n?void 0:n.plan_tag)===(null==g?void 0:g.plan_tag)},{...b,isChecked:(null==n?void 0:n.plan_tag)===(null==b?void 0:b.plan_tag)}],e.filter(Boolean)):[]},[a,g,P,b,null==n?void 0:n.plan_tag]),handlePlanChange:e=>{if(!a)return;let r={...e,planType:null==n?void 0:n.planType};(0,p.logEvent)(p.EVENT_NAMES.planDownsizingDropdownSelect,{plan_tag:null==r?void 0:r.plan_tag}),(0,d.po)("mealKitSubscription","selectedMealPlan",r),l(r)}}})();return(0,t.useEffect)(()=>{var e;let n=localStorage.getItem("mealKitSubscription");L(null==(n=n?JSON.parse(n):{})||null==(e=n.selectedMealPlan)?void 0:e.planType)},[x]),(0,r.jsx)("div",{"data-testid":"plan-summary-card".concat((null==x?void 0:x.plan_tag)?"-".concat(null==x?void 0:x.plan_tag):""),children:x&&(0,r.jsx)(u.PlanSummaryCard,{basePrice:null==x?void 0:x.pricing.base_price,coupon:h,couponError:S,customDetails:w,deliveryFeeThreshold:null==x||null==(n=x.pricing)?void 0:n.delivery_fee_threshold,disclaimer:N,discountedPrice:null==x?void 0:x.pricing.discounted_price,discountedShipping:null==x?void 0:x.pricing.discounted_shipping,hidePlanOptionsDropdown:D,id:null==x?void 0:x.id,image:I?{altTitle:"HNE Image",id:"image-id-2",url:"https://images.ctfassets.net/awb1we50v0om/4Qxj5ydT0OW0rgVgGJx39Y/1d70d0201b78c0738d720455c7fcb553/Hat_Eat_PlanSummaryCard.jpg"}:{altTitle:"Classic Image",id:"image-id-1",url:"https://cdn.makegoodfood.ca/uploads/images/1bc616a0e172166e2d89beb1e2a596dd/steps/y87vgifgjBLBAKZ9jt6p4xjgvODieC3AMxwbFXw41623326954_s.jpg"},isPlanDetailsShown:o,numOfPortions:B,numOfRecipes:k,planOptions:G,planSubtitle:K,planTitle:q,priceDiscount:parseFloat(null==x?void 0:x.pricing.price_discount),resetCouponError:C,shippingDiscount:null==x||null==(l=x.pricing)?void 0:l.shipping_discount,size:u.PlanSummaryCard.SIZES.FULL,title:H,total:null==x||null==(i=x.pricing)?void 0:i.total,onCouponApply:y,onPlanChange:J})})};A.propTypes={isPlanDetailsShown:o().bool,onCouponApply:o().func.isRequired,resetCouponError:o().func,selectedPlan:o().shape({id:o().string.isRequired,number_of_portions:o().number.isRequired,number_of_recipes:o().number.isRequired,planType:o().string,plan_tag:o().string,pricing:o().shape({base_price:o().string.isRequired,delivery_fee_threshold:o().number,discounted_price:o().string.isRequired,discounted_shipping:o().string.isRequired,total:o().string.isRequired,shipping_discount:o().string.isRequired,price_discount:o().string.isRequired})}),coupon:o().shape({type:o().string,code:o().string,error:o().string,value:o().oneOfType([o().number,o().string])}),couponError:o().object}}}]);
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.