mealz-components 2.7.1 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog/basket-preview/basket-preview.min.js +14 -14
- package/dist/counter/counter.min.js +1 -1
- package/dist/like-button/like-button.min.js +1 -1
- package/dist/planner/planner-current-menu/planner-current-menu.css +1 -1
- package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
- package/dist/planner-entry/planner-entry.css +1 -1
- package/dist/recipe-card/recipe-card.min.js +1 -1
- package/dist/recipe-details/recipe-details.min.js +6 -5
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../../store-locator/store-locator.min.js";import{N as $,k as l,D as _,s as N,R as U}from"../../assets/no-shadow-element-CXVMZH9n.js";import{n as y}from"../../assets/property-BXpY_hgs.js";import{m as
|
|
1
|
+
import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../../store-locator/store-locator.min.js";import{N as $,k as l,D as _,s as N,R as U}from"../../assets/no-shadow-element-CXVMZH9n.js";import{n as y}from"../../assets/property-BXpY_hgs.js";import{m as o,a as x,w as M}from"../../assets/mealz-sdk-CnvUgy3V.js";import"../../counter/counter.min.js";import"../../price/price.min.js";import"../../modal/modal.min.js";import{P as T}from"../../assets/price-CTfOOyf1.js";import{c as D}from"../../assets/capitalize-DUAqYmp4.js";import{e as q,i as O,t as L}from"../../assets/unsafe-html-LLTnDXid.js";import{d as V}from"../../assets/debounceTime-BeLayHXh.js";import{d as F}from"../../assets/delay-DJoNbXpK.js";import{t as H}from"../../assets/take-BgFJXP4B.js";import{s as G}from"../../assets/switchMap-DC1sJvd8.js";import"../../assets/state-BjFDUoQX.js";import"../../assets/query-BApjzB0v.js";import"../../onboarding/events.min.js";import"../../assets/singleton-COF3iBbF.js";import"../../assets/async-M7ziFu3t.js";import"../../assets/OperatorSubscriber-CvNNPrIM.js";import"../../assets/map-ND1NsJPC.js";import"../../assets/mergeMap-C1wxIFhz.js";import"../../assets/innerFrom-BldbX_fT.js";import"../../assets/executeSchedule-CEDvgTzM.js";import"../../assets/timer-W1DT7NsX.js";import"../../assets/isScheduler-fbUJB_yC.js";import"../../assets/isDate-BwHtzZM4.js";import"../../assets/empty-Dy0Wgz_B.js";var j=Object.defineProperty,K=(s,e,i,r)=>{for(var t=void 0,a=s.length-1,n;a>=0;a--)(n=s[a])&&(t=n(e,i,t)||t);return t&&j(e,i,t),t};class A extends ${constructor(){super(),this.analyticsPath="",this.styleURL=new URL("./product-addition/product-addition.css",this.getBaseURL())}render(){return l`
|
|
2
2
|
<div class="mealz-product-addition">
|
|
3
3
|
<span class="mealz-product-addition__title mealz-ds-text weight-l">Besoin de compléter votre panier ?</span>
|
|
4
4
|
<button @click=${()=>this.openProductAdditionModal()}
|
|
@@ -6,7 +6,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
6
6
|
Ajouter un produit
|
|
7
7
|
</button>
|
|
8
8
|
</div>
|
|
9
|
-
`}openProductAdditionModal(){this.sendbasketEntryAddEvent(),
|
|
9
|
+
`}openProductAdditionModal(){this.sendbasketEntryAddEvent(),o.productAddition.open()}sendbasketEntryAddEvent(){o.analytics.sendEvent("basket.entry.add",this.analyticsPath,{})}}K([y({type:String})],A.prototype,"analyticsPath");customElements.get("mealz-product-addition")||customElements.define("mealz-product-addition",A);var Q=Object.defineProperty,P=(s,e,i,r)=>{for(var t=void 0,a=s.length-1,n;a>=0;a--)(n=s[a])&&(t=n(e,i,t)||t);return t&&Q(e,i,t),t};class f extends ${constructor(){super(),this.analyticsPath="",this.loading=!1,this.isRecipeModalDisplayed=!1,this.subscriptions=[],this.priceService=T.getInstance(),this.styleURL=new URL("./catalog/basket-preview/basket-preview-product/basket-preview-product.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(o.products.entryIsBeingUpdated(this.basketEntry.id).subscribe(e=>this.loading=e))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}renderSponsorisedBadge(){return l`
|
|
10
10
|
<div class="mealz-basket-preview-product__sponsorised mealz-ds-badge mealz-ds-text size-s weight-l">
|
|
11
11
|
<span>Sponsorisé</span>
|
|
12
12
|
</div>
|
|
@@ -44,7 +44,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
44
44
|
</div>
|
|
45
45
|
<!-- TITLE -->
|
|
46
46
|
<div class="mealz-basket-preview-product__title mealz-ds-text size-xs">
|
|
47
|
-
<span>${
|
|
47
|
+
<span>${D(this.basketEntry.selectedItem.attributes.name)}</span>
|
|
48
48
|
</div>
|
|
49
49
|
<div class="mealz-basket-preview-product__badges">
|
|
50
50
|
<!-- SPONSORISED BADGE -->
|
|
@@ -105,20 +105,20 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
105
105
|
</div>
|
|
106
106
|
`)}
|
|
107
107
|
</div>
|
|
108
|
-
`,document.body.appendChild(e),e.addEventListener("modalClosed",()=>this.displayRecipesFromProduct())}removeProduct(){this.sendDeleteEvent(),
|
|
108
|
+
`,document.body.appendChild(e),e.addEventListener("modalClosed",()=>this.displayRecipesFromProduct())}removeProduct(){this.sendDeleteEvent(),o.products.removeProduct(this.basketEntry,this.analyticsPath),this.loading=!0,this.requestUpdate()}replaceProduct(){this.sendReplaceEvent(),o.productReplacement.open(this.basketEntry)}counterChanged(e){e.detail.value!==this.basketEntry.attributes.quantity&&(o.products.changeQuantity(this.basketEntry,e.detail.value,""),this.loading=!0,this.requestUpdate())}addDefaultProductImage(e){e.target.src=x.defaultIngredientPicture,e.target.onerror=null}displayRecipesFromProduct(){this.isRecipeModalDisplayed=!this.isRecipeModalDisplayed,this.requestUpdate()}sendReplaceEvent(){o.analytics.sendEvent("entry.replace",this.analyticsPath,{entry_name:this.basketEntry.attributes.name,product_quantity:this.basketEntry.attributes.quantity,item_id:this.basketEntry.selectedItem.id,ext_item_id:this.basketEntry.selectedItem.attributes["ext-id"],item_ean:this.basketEntry.selectedItem.attributes.ean,recipe_id:this.basketEntry.recipesIds[0],status:this.basketEntry.attributes.status})}sendDeleteEvent(){o.analytics.sendEvent("entry.delete",this.analyticsPath,{entry_name:this.basketEntry.attributes.name,product_quantity:this.basketEntry.attributes.quantity,item_id:this.basketEntry.selectedItem.id,ext_item_id:this.basketEntry.selectedItem.attributes["ext-id"],item_ean:this.basketEntry.selectedItem.attributes.ean,recipe_id:this.basketEntry.recipesIds[0]})}}P([y({type:Object})],f.prototype,"basketEntry");P([y({type:Array})],f.prototype,"recipeNames");P([y({type:String})],f.prototype,"analyticsPath");customElements.get("mealz-basket-preview-product")||customElements.define("mealz-basket-preview-product",f);/**
|
|
109
109
|
* @license
|
|
110
110
|
* Copyright 2020 Google LLC
|
|
111
111
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
112
|
-
*/const{I:
|
|
112
|
+
*/const{I:W}=N,S=()=>document.createComment(""),w=(s,e,i)=>{var a;const r=s._$AA.parentNode,t=e===void 0?s._$AB:e._$AA;if(i===void 0){const n=r.insertBefore(S(),t),p=r.insertBefore(S(),t);i=new W(n,p,s,s.options)}else{const n=i._$AB.nextSibling,p=i._$AM,u=p!==s;if(u){let h;(a=i._$AQ)==null||a.call(i,s),i._$AM=s,i._$AP!==void 0&&(h=s._$AU)!==p._$AU&&i._$AP(h)}if(n!==t||u){let h=i._$AA;for(;h!==n;){const v=h.nextSibling;r.insertBefore(h,t),h=v}}}return i},z=(s,e,i=s)=>(s._$AI(e,i),s),J={},Y=(s,e=J)=>s._$AH=e,Z=s=>s._$AH,E=s=>{var r;(r=s._$AP)==null||r.call(s,!1,!0);let e=s._$AA;const i=s._$AB.nextSibling;for(;e!==i;){const t=e.nextSibling;e.remove(),e=t}};/**
|
|
113
113
|
* @license
|
|
114
114
|
* Copyright 2017 Google LLC
|
|
115
115
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
116
|
-
*/const
|
|
116
|
+
*/const R=(s,e,i)=>{const r=new Map;for(let t=e;t<=i;t++)r.set(s[t],t);return r},X=q(class extends O{constructor(s){if(super(s),s.type!==L.CHILD)throw Error("repeat() can only be used in text expressions")}dt(s,e,i){let r;i===void 0?i=e:e!==void 0&&(r=e);const t=[],a=[];let n=0;for(const p of s)t[n]=r?r(p,n):n,a[n]=i(p,n),n++;return{values:a,keys:t}}render(s,e,i){return this.dt(s,e,i).values}update(s,[e,i,r]){const t=Z(s),{values:a,keys:n}=this.dt(e,i,r);if(!Array.isArray(t))return this.ut=n,a;const p=this.ut??(this.ut=[]),u=[];let h,v,c=0,d=t.length-1,m=0,b=a.length-1;for(;c<=d&&m<=b;)if(t[c]===null)c++;else if(t[d]===null)d--;else if(p[c]===n[m])u[m]=z(t[c],a[m]),c++,m++;else if(p[d]===n[b])u[b]=z(t[d],a[b]),d--,b--;else if(p[c]===n[b])u[b]=z(t[c],a[b]),w(s,u[b+1],t[c]),c++,b--;else if(p[d]===n[m])u[m]=z(t[d],a[m]),w(s,t[c],t[d]),d--,m++;else if(h===void 0&&(h=R(n,m,b),v=R(p,c,d)),h.has(p[c]))if(h.has(p[d])){const k=v.get(n[m]),g=k!==void 0?t[k]:null;if(g===null){const C=w(s,t[c]);z(C,a[m]),u[m]=C}else u[m]=z(g,a[m]),w(s,t[c],g),t[k]=null;m++}else E(t[d]),d--;else E(t[c]),c++;for(;m<=b;){const k=w(s,u[b+1]);z(k,a[m]),u[m++]=k}for(;c<=d;){const k=t[c++];k!==null&&E(k)}return this.ut=n,Y(s,u),U}}),I={isRecipeDetailsVisible:{paramName:"displayRecipe",getValue:()=>{var e;const s=o.recipes.displayedRecipe$.value;return((e=s==null?void 0:s.recipe)==null?void 0:e.id)||null},openDrawer:s=>{o.recipes.openDetails(s)}},isBasketPreviewVisible:{paramName:"myMeals",getValue:()=>{const{activeTabIndex:s}=o.basket.basketPreviewState$.getValue();return s===1?"products":"recipes"},openDrawer:s=>{o.basket.basketPreviewState$.next({isOpen:!0,activeTabIndex:s==="products"?1:0})}}};function ee(){return Object.values(I).map(s=>s.paramName)}function Be(){const s=new URL(window.location.href);for(const e of Object.values(I)){const i=s.searchParams.get(e.paramName);if(i&&e.openDrawer){e.openDrawer(i);return}}}function Ne(s){s.subscribe(e=>{const i=new URL(window.location.href);ee().forEach(t=>{i.searchParams.delete(t)});const r=I[e];if(r){const t=r.getValue();t&&i.searchParams.set(r.paramName,t)}window.history.replaceState({},"",i.toString())})}function te(s){const e=new URL(window.location.href);e.searchParams.delete("myMeals"),s===0?e.searchParams.append("myMeals","recipes"):s===1&&e.searchParams.append("myMeals","products"),window.history.replaceState({},"",e.toString())}var se=Object.defineProperty,ie=(s,e,i,r)=>{for(var t=void 0,a=s.length-1,n;a>=0;a--)(n=s[a])&&(t=n(e,i,t)||t);return t&&se(e,i,t),t};class B extends ${constructor(){super(),this.hideTabSelector=!1,this.priceService=T.getInstance(),this.subscriptions=[],this.recipePrices=[],this.recipePreviews=[],this.products=[],this.noSupplier=!1,this.tabs=["Recettes","Produits"],this.selectedTabIndex=0,this.analyticsPath="/basket/recipes",this.drawerStoreIndicator=null,this.isComponentConnected=!1,this.styleURL=new URL("./catalog/basket-preview/basket-preview.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.isComponentConnected=!0,this.pageview(),this.listenToActiveTab(),this.listenToCloseEvent(),this.priceService.initFormatter(),this.initializeNoSupplierState(),this.subscriptions.push(x.basket.recipeCount().subscribe(e=>{this.recipesCount=e,this.requestUpdate()}),o.basket.entries$().pipe(V(200)).subscribe(e=>{this.products=e.filter(i=>i.attributes.status==="active"),this.updateRecipeView()}),o.productAddition.productAdded$.pipe(F(200)).subscribe(e=>{this.selectedTabIndex=1,setTimeout(()=>this.scrollToAddedProduct(e),0),this.requestUpdate()}),o.basket.recipePricesInBasket$().subscribe(e=>{this.recipePrices=e,this.requestUpdate()}))}disconnectedCallback(){this.isComponentConnected=!1,super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}updated(){this.drawerStoreIndicator&&this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath)}render(){return l`
|
|
117
117
|
<div class="mealz-basket-preview">
|
|
118
118
|
${this.noSupplier?l`
|
|
119
119
|
<mealz-store-indicator .analyticsPath=${this.analyticsPath}></mealz-store-indicator>`:_}
|
|
120
120
|
${this.renderNbrMealsInBasket()}
|
|
121
|
-
${!this.hideTabSelector&&(this.noSupplier||
|
|
121
|
+
${!this.hideTabSelector&&(this.noSupplier||o.basket.displayProductsInBasket())?l`
|
|
122
122
|
<div class="mealz-basket-preview__slider-tabs">
|
|
123
123
|
<mealz-slider-tabs
|
|
124
124
|
.tabs=${this.tabs}
|
|
@@ -139,7 +139,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
139
139
|
</div>
|
|
140
140
|
`:l`
|
|
141
141
|
<div class="mealz-basket-preview__products">
|
|
142
|
-
${
|
|
142
|
+
${X(this.products,e=>e.id,(e,i)=>this.renderProductCard(e,i===this.products.length-1))}
|
|
143
143
|
</div>
|
|
144
144
|
`}renderProductCard(e,i=!1){if(e.selectedItem){const r=this.recipePreviews.reduce((t,a)=>(e.recipesIds.includes(+a.id)&&t.push(a.title),t),[]);return l`
|
|
145
145
|
<mealz-basket-preview-product
|
|
@@ -161,7 +161,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
161
161
|
<!-- COUNTER -->
|
|
162
162
|
<div class="mealz-basket-preview__counter">
|
|
163
163
|
<span class="mealz-ds-text weight-xl size-m">${e.guests}</span>
|
|
164
|
-
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/
|
|
164
|
+
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/single-user.svg"
|
|
165
165
|
alt="people">
|
|
166
166
|
</div>
|
|
167
167
|
</div>
|
|
@@ -180,7 +180,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
180
180
|
</button>
|
|
181
181
|
</div>
|
|
182
182
|
<span
|
|
183
|
-
class="mealz-basket-preview__number-product mealz-ds-text size-s">${e.nbrProducts}
|
|
183
|
+
class="mealz-basket-preview__number-product mealz-ds-text size-s">${e.nbrProducts} produit${e.nbrProducts>1?"s":""}</span>
|
|
184
184
|
<span class="mealz-basket-preview__total-price mealz-ds-text weight-xl">
|
|
185
185
|
${this.priceService.priceTemplate(e.totalPrice)}
|
|
186
186
|
</span>
|
|
@@ -198,7 +198,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
198
198
|
</div>
|
|
199
199
|
</div>
|
|
200
200
|
</div>
|
|
201
|
-
`}calculateTotalPrice(){var r;const e=((r=this.recipePrices)==null?void 0:r.reduce((t,a)=>t+ +a.price,0))||0,i=(this.products||[]).filter(t=>{var u,h,v,d
|
|
201
|
+
`}calculateTotalPrice(){var r;const e=((r=this.recipePrices)==null?void 0:r.reduce((t,a)=>t+ +a.price,0))||0,i=(this.products||[]).filter(t=>{var u,h,v,c,d;const a=!((v=(h=(u=t.relationships)==null?void 0:u.recipes)==null?void 0:h.data)!=null&&v.length),n=!((c=t==null?void 0:t.recipesIds)!=null&&c.length),p=!((d=t==null?void 0:t["recipe-ids"])!=null&&d.length);return a&&n&&p}).reduce((t,a)=>{var h,v,c,d;const n=((h=a.attributes)==null?void 0:h.quantity)??1,p=((v=a.attributes)==null?void 0:v.price)??((c=a.attributes)==null?void 0:c.discountedPrice)??((d=a.attributes)==null?void 0:d["unit-price"]),u=Number(p);return t+(Number.isFinite(u)?u*n:0)},0);return e+i}renderPlaceOrderFooter(){return l`
|
|
202
202
|
<div class="mealz-basket-preview__footer mealz-basket-preview__place-order-footer">
|
|
203
203
|
<div class="mealz-basket-preview__basket-price">
|
|
204
204
|
<span class="mealz-basket-preview__basket-price-label mealz-ds-text weight-xl size-l">
|
|
@@ -207,7 +207,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
207
207
|
<span class="mealz-basket-preview__in-basket-label mealz-ds-text size-s weight-l">dans mon panier</span>
|
|
208
208
|
</div>
|
|
209
209
|
<button
|
|
210
|
-
?disabled=${
|
|
210
|
+
?disabled=${o.basketTransfer.basketIsBeingTransferred.value||this.calculateTotalPrice()===0}
|
|
211
211
|
class="mealz-ds-text weight-l mealz-ds-button primary mealz-basket-preview__place-order-button"
|
|
212
212
|
@click=${()=>this.placeOrder()}>
|
|
213
213
|
Finaliser ma commande
|
|
@@ -215,7 +215,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
215
215
|
</div>
|
|
216
216
|
`}renderSeeBasketFooter(){return l`
|
|
217
217
|
<div class="mealz-basket-preview__footer mealz-basket-preview__see-cart-footer">
|
|
218
|
-
<a href=${
|
|
218
|
+
<a href=${o.router.getRetailerCartUrl()}>
|
|
219
219
|
<button
|
|
220
220
|
class="mealz-ds-text weight-l mealz-ds-button primary mealz-basket-preview__see-basket-button">
|
|
221
221
|
Voir mon panier
|
|
@@ -230,4 +230,4 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
230
230
|
panier
|
|
231
231
|
</h2>
|
|
232
232
|
</div>
|
|
233
|
-
`}appendStoreIndicatorToDrawerHeader(){const e=document.querySelector("mealz-drawer"),i=document.querySelector("mealz-store-indicator");if(!e||i)return;const r=e.getElementsByClassName("mealz-drawer__content-container")[0];r!=null&&r.querySelector("mealz-supplier-selector")||(this.drawerStoreIndicator=document.createElement("mealz-store-indicator"),this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath),e.appendToHeaderComponent(this.drawerStoreIndicator))}placeOrder(){this.openBasketTransferModal(),
|
|
233
|
+
`}async initializeNoSupplierState(){try{if(await M(),!this.isComponentConnected)return;this.subscriptions.push(o.supplier.noSupplier$.pipe(H(1)).subscribe({next:e=>{this.isComponentConnected&&this.applyNoSupplierState(e)},error:e=>{this.isComponentConnected&&console.warn("[mealz-basket-preview] Unable to resolve noSupplier state.",e)}}))}catch(e){if(!this.isComponentConnected)return;console.warn("[mealz-basket-preview] Unable to resolve noSupplier state.",e)}}applyNoSupplierState(e){this.isComponentConnected&&(this.noSupplier=e,this.noSupplier&&this.appendStoreIndicatorToDrawerHeader(),this.requestUpdate())}appendStoreIndicatorToDrawerHeader(){const e=document.querySelector("mealz-drawer"),i=document.querySelector("mealz-store-indicator");if(!e||i)return;const r=e.getElementsByClassName("mealz-drawer__content-container")[0];r!=null&&r.querySelector("mealz-supplier-selector")||(this.drawerStoreIndicator=document.createElement("mealz-store-indicator"),this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath),e.appendToHeaderComponent(this.drawerStoreIndicator))}placeOrder(){this.openBasketTransferModal(),o.basketTransfer.transfer()}openBasketTransferModal(){let e=document.querySelector("mealz-basket-transfer-modal");e||(e=document.createElement("mealz-basket-transfer-modal"),document.body.appendChild(e))}recipeCardClick(e){o.recipes.openDetails(e.id,e.guests,this.analyticsPath)}removeRecipeClick(e){e.isGettingRemoved=!0,this.requestUpdate(),o.basket.removeRecipe(e.id,this.analyticsPath).subscribe(()=>{e.isGettingRemoved=!1,this.recipePreviews=this.recipePreviews.filter(i=>i.id!==e.id),this.requestUpdate()})}updateTabIndex(e){this.selectedTabIndex=e,te(e),this.selectedTabIndex===0?(this.analyticsPath="/basket/recipes",this.pageview()):(this.analyticsPath="/basket/products",this.pageview()),this.requestUpdate()}updateRecipeView(){const e=o.basket,i=e.buildPreview(),r=typeof e.waitForBasketEntries=="function"?e.waitForBasketEntries().pipe(G(()=>i)):i;this.subscriptions.push(r.subscribe(t=>{t.map(a=>a.isGettingRemoved=!1),this.recipePreviews=t,this.requestUpdate()}))}scrollToAddedProduct(e){var r;const i=document.querySelector(`#mealz-basket-preview-product-${e}`);if(i)i.scrollIntoView({block:"center",behavior:"smooth"});else{const t=this.getElementsByTagName("MEALZ-BASKET-PREVIEW-PRODUCT");(r=t.item(t.length-1))==null||r.scrollIntoView({block:"center",behavior:"smooth"})}}listenToActiveTab(){this.subscriptions.push(o.basket.basketPreviewState$.subscribe(({activeTabIndex:e})=>{e!==void 0&&(this.selectedTabIndex=e)}))}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",this.sendCloseEvent.bind(this))}isHidden(){return this.classList.contains("hidden")}pageview(){this.isHidden()||o.analytics.sendEvent("pageview",this.analyticsPath,{})}sendCloseEvent(){this.isHidden()||o.analytics.sendEvent("basket.close",this.analyticsPath,{})}}ie([y({type:Boolean,attribute:"hide-tab-selector"})],B.prototype,"hideTabSelector");customElements.get("mealz-basket-preview")||customElements.define("mealz-basket-preview",B);export{Ne as l,Be as o};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{N as h,B as c,k as a}from"../assets/no-shadow-element-CXVMZH9n.js";import{n as i}from"../assets/property-BXpY_hgs.js";import{d as m}from"../assets/debounceTime-BeLayHXh.js";import"../assets/mealz-sdk-CnvUgy3V.js";import"../assets/async-M7ziFu3t.js";import"../assets/OperatorSubscriber-CvNNPrIM.js";var d=Object.defineProperty,n=(l,e,t,p)=>{for(var o=void 0,u=l.length-1,r;u>=0;u--)(r=l[u])&&(o=r(e,t,o)||o);return o&&d(e,t,o),o};class s extends h{constructor(){super(),this.disabled=!1,this.floating=!1,this.biColor=!1,this.min=1,this.max=99,this.value=4,this.debounce=0,this.minusLoading=!1,this.plusLoading=!1,this.minusButton=null,this.plusButton=null,this.valueText=null,this.icons={minus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-primary.svg",minus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-white.svg",plus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-primary.svg",plus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-white.svg",people:"https://storage.googleapis.com/assets.miam.tech/generic/icons/
|
|
1
|
+
import{N as h,B as c,k as a}from"../assets/no-shadow-element-CXVMZH9n.js";import{n as i}from"../assets/property-BXpY_hgs.js";import{d as m}from"../assets/debounceTime-BeLayHXh.js";import"../assets/mealz-sdk-CnvUgy3V.js";import"../assets/async-M7ziFu3t.js";import"../assets/OperatorSubscriber-CvNNPrIM.js";var d=Object.defineProperty,n=(l,e,t,p)=>{for(var o=void 0,u=l.length-1,r;u>=0;u--)(r=l[u])&&(o=r(e,t,o)||o);return o&&d(e,t,o),o};class s extends h{constructor(){super(),this.disabled=!1,this.floating=!1,this.biColor=!1,this.min=1,this.max=99,this.value=4,this.debounce=0,this.minusLoading=!1,this.plusLoading=!1,this.minusButton=null,this.plusButton=null,this.valueText=null,this.icons={minus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-primary.svg",minus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-white.svg",plus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-primary.svg",plus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-white.svg",people:"https://storage.googleapis.com/assets.miam.tech/generic/icons/single-user.svg"},this.subscriptions=[],this.hydrateOnly=!1,this.styleURL=new URL("./counter/counter.css",this.getBaseURL())}get selectors(){return{minusButton:".mealz-counter__minus",plusButton:".mealz-counter__plus",valueText:".mealz-counter__value-text"}}connectedCallback(){super.connectedCallback(),this.applyStartingDataFromAttribute(),this.valueSubject=new c(this.value),this.subscriptions.push(this.valueSubject.subscribe(()=>{this.updateDOM(),this.requestUpdate()})),this.subscriptions.push(this.valueSubject.pipe(m(this.debounce)).subscribe(()=>{this.dispatchValue()})),this.findElementsInDocument(),this.addEveryEventListeners(),this.updateDOM()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}renderMinus(){return this.minusLoading?a`
|
|
2
2
|
<div class="mealz-ds-loader"></div>
|
|
3
3
|
`:a`
|
|
4
4
|
<img alt="remove one" src="${this.disabled&&this.biColor?this.icons.minus_white:this.icons.minus}">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as c}from"../assets/no-shadow-element-CXVMZH9n.js";import{m as e}from"../assets/mealz-sdk-CnvUgy3V.js";class o extends c{constructor(){super(),this.liked=null,this.likeId="",this.recipeId="",this.analyticsPath="",this.categoryId="",this.subscriptions=[],this.styleURL=new URL("./like-button/like-button.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(e.recipes.recipeLikeUpdated().subscribe(({id:t,isPast:i})=>{t===this.recipeId&&(this.liked=!i,this.updateDOM())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(t=>t.unsubscribe())}render(){this.button=this.querySelector(".mealz-like-button"),this.button&&(this.icon=this.button.querySelector(".mealz-like-button__icon"),this.hearts=Array.from(this.button.querySelectorAll(".mealz-like-button__icon img")),!(!this.icon||!this.hearts)&&(this.getInitialStatus(),this.button.addEventListener("click",t=>{t.stopPropagation(),this.toggle()})))}getInitialStatus(){var a;const t=(a=this.attributes["starting-data"])==null?void 0:a.value;if(!t)return;const{id:i,recipeId:l,liked:s,path:n,likeHidden:r,categoryId:h}=JSON.parse(t);this.likeId=i,this.recipeId=l,this.liked=s!==void 0?s:!1,this.analyticsPath=n,this.categoryId=h||"",r&&this.initHiddenLike(),this.removeAttribute("starting-data")}initHiddenLike(){this.subscriptions.push(e.recipes.getRecipeLike(this.recipeId).subscribe(t=>{this.likeId=t.id,this.liked=t.attributes["is-past"]===!1,this.updateDOM(),this.button.classList.remove("hidden")}))}toggle(){e.recipes.updateRecipeLike(this.likeId,this.recipeId,this.liked,this.analyticsPath,this.categoryId)}updateDOM(){this.button&&(this.icon.classList.toggle("fill",this.liked),this.hearts[0].classList.toggle("active",!this.liked),this.hearts[1].classList.toggle("active",this.liked))}}customElements.get("mealz-like-button")||customElements.define("mealz-like-button",o);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
mealz-planner-current-menu{display:block}.mealz-planner-current-menu{color:var(--miam-color-neutral-black, #0F191F);display:flex;flex-direction:column;min-height:calc(100dvh - 140px)}.mealz-planner-current-menu .mealz-breadcrumb{margin:0}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 24px;box-sizing:border-box}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__mobile-recipe-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:column;flex:1}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions{display:flex;align-items:center;gap:8px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button .mealz-catalog-toolbar__loader,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button .mealz-catalog-toolbar__loader{position:relative;top:-10px;right:12px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__onboarding-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences{height:100%;margin-left:0}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.hidden){text-decoration:none;display:flex;gap:4px;padding:8px 12px;background:var(--mealz-ds-color-primary-100, #E4EAEC);border-radius:90px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences img{width:16px;height:16px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences .hidden,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content{display:flex;flex:1 1 auto;min-height:0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:480px;flex-shrink:0;position:relative}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{position:relative;width:calc(100% - 480px);flex-grow:1;display:flex;flex-direction:column;height:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:12px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu{display:flex;justify-content:center;width:100%;flex-shrink:0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu.hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu .mealz-planner-current-menu__cancel-menu-button{display:flex;align-items:center;justify-content:center;padding:16px;border:none;background:none;cursor:pointer}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu .mealz-planner-current-menu__cancel-menu-button .mealz-planner-current-menu__cancel-menu-text{color:var(--mealz-ds-color-neutral-black, #0F191F);opacity:.5;margin-left:4px}.mealz-planner-current-menu .mealz-planner-current-menu__footer{display:flex;flex-direction:row;justify-content:stretch;align-items:center;position:sticky;width:100%;bottom:0;padding:24px;box-sizing:border-box;background:#fff;box-shadow:0 -2px 8px #0f191f1f;z-index:10}.mealz-planner-current-menu .mealz-planner-current-menu__footer.is-fixed{position:fixed}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-primary{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;width:100%;flex:1}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-quick-menu{display:none;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-budget{display:flex;flex:1;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{height:fit-content}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button.disabled{color:var(--mealz-ds-color-neutral-500, #8C96A2);cursor:auto}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button>*:not(:last-child){margin-right:4px}.mealz-planner-current-menu .mealz-planner-current-menu__badges{display:flex;justify-content:center;align-items:center;height:18px;width:18px;color:var(--mealz-ds-color-neutral-white, #fff);border-radius:50%}.mealz-planner-current-menu .mealz-planner-current-menu__preferences-badge{flex-shrink:0;background-color:var(--mealz-ds-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-catalog-toolbar__loader .mealz-loader{margin:0;height:18px;width:18px;border-top:5px solid var(--mealz-ds-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-catalog-toolbar__loader.hidden{display:none}@media (max-width: 1035px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:410px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 410px)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:24px 0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,218px)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu{width:218px;height:272px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card .mealz-planner-recipe-card__content,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu .mealz-planner-recipe-card__content{padding:8px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card .mealz-planner-recipe-card__content .mealz-planner-recipe-card__remove-button,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu .mealz-planner-recipe-card__content .mealz-planner-recipe-card__remove-button{right:8px}}@media (max-width: 768px){.mealz-planner-current-menu .mealz-breadcrumb{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header{padding:8px 16px;gap:8px;border-bottom:1px solid var(--mealz-ds-color-border-default, var(--border-default, #d9e0e3))}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__mobile-recipe-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:row;align-items:center}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__onboarding-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences{display:none!important}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.hidden){display:none!important}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe .mealz-planner-recipe-suggestion__infos-and-actions{padding:24px 16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{display:none;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-recipe-list{justify-content:center}.mealz-planner-current-menu .mealz-planner-current-menu__footer{box-shadow:0 -2px 8px #0318201f;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16px;gap:12px}.mealz-planner-current-menu .mealz-planner-current-menu__footer.is-quick-menu-visible{border-radius:32px 32px 0 0}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-primary{display:none;width:100%;flex-direction:column-reverse;align-items:stretch}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-quick-menu{display:block;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-budget-gauge{margin-right:0;margin-bottom:16px;align-items:center}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{width:100%}}@media (max-width: 425px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,calc((100% - 8px)/2))}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu{width:100%;height:224px}}@media (max-width: 375px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,100%)}}
|
|
1
|
+
mealz-planner-current-menu{display:block}.mealz-planner-current-menu{color:var(--miam-color-neutral-black, #0F191F);display:flex;flex-direction:column;min-height:calc(100dvh - 140px)}.mealz-planner-current-menu .mealz-breadcrumb{margin:0}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:16px 24px;box-sizing:border-box}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__mobile-recipe-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:column;flex:1}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions{display:flex;align-items:center;gap:8px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button .mealz-catalog-toolbar__loader,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button .mealz-catalog-toolbar__loader{position:relative;top:-10px;right:12px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__onboarding-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences{height:100%;margin-left:0}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.hidden){text-decoration:none;display:flex;gap:4px;padding:8px 12px;background:var(--mealz-ds-color-primary-100, #E4EAEC);border-radius:90px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences img{width:16px;height:16px}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences .hidden,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content{display:flex;flex:1 1 auto;min-height:0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:480px;flex-shrink:0;position:relative}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{position:relative;width:calc(100% - 480px);flex-grow:1;display:flex;flex-direction:column;height:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:12px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu{display:flex;justify-content:center;width:100%;flex-shrink:0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu.hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu .mealz-planner-current-menu__cancel-menu-button{display:flex;align-items:center;justify-content:center;padding:16px;border:none;background:none;cursor:pointer}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__cancel-menu .mealz-planner-current-menu__cancel-menu-button .mealz-planner-current-menu__cancel-menu-text{color:var(--mealz-ds-color-neutral-black, #0F191F);opacity:.5;margin-left:4px}.mealz-planner-current-menu .mealz-planner-current-menu__footer{display:flex;flex-direction:row;justify-content:stretch;align-items:center;position:sticky;width:100%;bottom:0;padding:24px;box-sizing:border-box;background:#fff;box-shadow:0 -2px 8px #0f191f1f;z-index:10}.mealz-planner-current-menu .mealz-planner-current-menu__footer.is-fixed{position:fixed}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-primary{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;width:100%;flex:1}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-quick-menu{display:none;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-budget{display:flex;flex:1;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{height:fit-content}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button.disabled{color:var(--mealz-ds-color-neutral-500, #8C96A2);cursor:auto}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button>*:not(:last-child){margin-right:4px}.mealz-planner-current-menu .mealz-planner-current-menu__badges{display:flex;justify-content:center;align-items:center;height:18px;width:18px;color:var(--mealz-ds-color-neutral-white, #fff);border-radius:50%}.mealz-planner-current-menu .mealz-planner-current-menu__preferences-badge{flex-shrink:0;background-color:var(--mealz-ds-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-catalog-toolbar__loader .mealz-loader{margin:0;height:18px;width:18px;border-top:5px solid var(--mealz-ds-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-catalog-toolbar__loader.hidden{display:none}@media (max-width: 1035px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:410px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 410px)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:24px 0}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,218px)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu{width:218px;height:272px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card .mealz-planner-recipe-card__content,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu .mealz-planner-recipe-card__content{padding:8px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card .mealz-planner-recipe-card__content .mealz-planner-recipe-card__remove-button,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu .mealz-planner-recipe-card__content .mealz-planner-recipe-card__remove-button{right:8px}}@media (max-width: 768px){.mealz-planner-current-menu .mealz-breadcrumb{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header{padding:8px 16px;gap:8px;border-bottom:1px solid var(--mealz-ds-color-border-default, var(--border-default, #d9e0e3))}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__mobile-recipe-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:row;align-items:center}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-onboarding-button,.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__mobile-preferences-button{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__onboarding-button{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences{display:none!important}.mealz-planner-current-menu .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.hidden){display:none!important}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe .mealz-planner-recipe-suggestion__infos-and-actions{padding:24px 16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{display:none;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-recipe-list{justify-content:center}.mealz-planner-current-menu .mealz-planner-current-menu__footer{box-shadow:0 -2px 8px #0318201f;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16px;gap:12px}.mealz-planner-current-menu .mealz-planner-current-menu__footer.is-quick-menu-visible{border-radius:32px 32px 0 0}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-primary{display:none;width:100%;flex-direction:column-reverse;align-items:stretch}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-quick-menu{display:block;width:100%}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-budget-gauge{margin-right:0;margin-bottom:16px;align-items:center}.mealz-planner-current-menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{width:100%}}@media (max-width: 425px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,calc((100% - 8px)/2))}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-card,.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list .mealz-planner-recipe-list__add-to-menu{width:100%;height:224px}}@media (max-width: 375px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-recipe-list{grid-template-columns:repeat(auto-fill,100%)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../planner-form/planner-form.min.js";import{M
|
|
1
|
+
import"../planner-form/planner-form.min.js";import{M}from"../planner-abandon-modal/planner-abandon-modal.min.js";import{N as g,O as f}from"../../assets/no-shadow-element-CXVMZH9n.js";import{m as s}from"../../assets/mealz-sdk-CnvUgy3V.js";import{g as d,f as b}from"../helpers/menu-title.min.js";import{t as r}from"../../assets/take-BgFJXP4B.js";import{o}from"../../assets/of-D0UErknW.js";import{f as C}from"../../assets/from-uSPfq2sN.js";import{s as l}from"../../assets/switchMap-DC1sJvd8.js";import{m as y}from"../../assets/map-ND1NsJPC.js";import"../../assets/property-BXpY_hgs.js";import"../../assets/empty-Dy0Wgz_B.js";import"../../assets/OperatorSubscriber-CvNNPrIM.js";import"../../assets/innerFrom-BldbX_fT.js";import"../../assets/executeSchedule-CEDvgTzM.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-LLTnDXid.js";import"../../onboarding/events.min.js";import"../../assets/args-upHwW4Wh.js";import"../../assets/isScheduler-fbUJB_yC.js";class T extends g{constructor(){super(...arguments),this.menuId="",this.isCustomMenu=!1,this.guests=4,this.storeId="",this.recipeIds=[],this.hasCustomRecipes=!1,this.currentMenuPageUrl="",this.recipeImgs=[],this.analyticsPath="/meals-planner/dashboard",this.isRedirecting=!1,this.menuTitle="",this.shouldUpdateMenuTitleOnRedirect=!1}get selectors(){return{cancelMenuButton:".mealz-planner-menu-option__cancel",menuOption:".mealz-planner-menu-option__container",navigationArrow:".mealz-planner-menu-option__redirect"}}connectedCallback(){super.connectedCallback(),this.initStartingData(),this.initSelectors(),this.addEventListeners(),this.syncGuestsFromStorage(),this.listenToPlannerGuestsChanges()}disconnectedCallback(){this.plannerGuestsChangeHandler&&document.removeEventListener("plannerGuestsChanged",this.plannerGuestsChangeHandler),super.disconnectedCallback()}initStartingData(){const e=this.getAttribute("starting-data");if(e){try{const{isCustomMenu:t,guestsPreference:n,storeId:i,hasCustomRecipes:h,menuId:c,recipesId:u,currentMenuPageUrl:m,recipeImgs:p,plannerEntryVariant:a}=JSON.parse(e);this.isCustomMenu=!!t,this.storeId=i??this.storeId,this.hasCustomRecipes=!!h,this.menuId=c??this.menuId,this.currentMenuPageUrl=m??this.currentMenuPageUrl,this.recipeImgs=p||[],this.recipeIds=Array.isArray(u)?u:[],typeof n=="number"&&(this.guests=n),typeof a=="string"&&a.length>0&&(this.plannerEntryVariant=a)}catch(t){console.error("Failed to parse starting-data:",t)}this.removeAttribute("starting-data"),this.initMenuTitle(),this.syncGuestsFromStorage()}}initMenuTitle(){s.planner.fetchMenuTitle().pipe(r(1)).subscribe(e=>{this.menuTitle=e||""})}syncGuestsFromStorage(){const e=d();typeof e=="number"&&(this.guests=e)}listenToPlannerGuestsChanges(){this.plannerGuestsChangeHandler=e=>{var n;const t=e;(n=t.detail)!=null&&n.guests&&(this.guests=t.detail.guests)},document.addEventListener("plannerGuestsChanged",this.plannerGuestsChangeHandler)}addEventListeners(){this.addClickListener("cancelMenuButton",()=>this.cancelMenu()),this.addClickListener("menuOption",()=>this.handleMenuOptionClick())}handleMenuOptionClick(){const e=this.isCustomMenu?"custom":"from-featured";this.showLoader(),this.sendModeSelectEvent(e),localStorage.setItem("_miam/isCustomMenu",this.isCustomMenu.toString()),this.proceedAfterHookAndOptionalModal()}isFromPlannerEntry(){return!!document.querySelector("mealz-planner-entry")}proceedAfterHookAndOptionalModal(){if(this.isFromPlannerEntry()){localStorage.setItem("_mealz/planner/from-entry","true"),!this.isCustomMenu&&this.recipeIds.length>0&&(this.hasCustomRecipes||(this.shouldUpdateMenuTitleOnRedirect=!0,this.menuTitle="")),this.redirectToMenu();return}else localStorage.removeItem("_mealz/planner/from-entry");!this.isCustomMenu||this.recipeIds.length===0?this.displayPlannerForm():this.redirectToMenu()}displayPlannerForm(){const e=document.querySelector(".mealz-planner-dashboard");e&&(e.style.display="none");let t=document.querySelector("mealz-planner-form");t||(t=document.createElement("mealz-planner-form"),t.guests=this.guests,t.isCustomMenu=this.isCustomMenu,t.hideBudget=!this.isCustomMenu||!this.storeId,t.currentMenuModal=!this.isCustomMenu&&this.hasCustomRecipes,t.menuId=this.menuId,t.addEventListener("displayDashboard",()=>this.displayDashboard()),t.addEventListener("generateMenu",()=>{this.redirectToMenu()}),e?e.insertAdjacentElement("afterend",t):document.body.appendChild(t))}updateMenuTitle(){return this.menuTitle.length>0?o(null):C(b()).pipe(l(e=>(this.menuTitle=e,s.planner.updateMenu(this.menuId,{attributes:{title:e}}))))}ensureMenuForRedirect(){if(this.menuId)return o(null);const e=d()??this.guests??4;return s.planner.createMenu().pipe(r(1),l(t=>{const n=t==null?void 0:t.id;return n?(this.menuId=n,this.menuTitle="",this.shouldUpdateMenuTitleOnRedirect=!this.isCustomMenu&&this.recipeIds.length>0,s.planner.updateMenu(n,{attributes:{guests:e}}).pipe(r(1),y(()=>null))):new f(i=>{i.error(new Error("createMenu did not return a menu id"))})}))}redirectToMenu(){this.isRedirecting||(this.isRedirecting=!0,this.ensureMenuForRedirect().pipe(r(1)).subscribe({next:()=>{const e=this.shouldUpdateMenuTitleOnRedirect&&!this.isCustomMenu;this.shouldUpdateMenuTitleOnRedirect=!1,(e?this.updateMenuTitle():o(null)).pipe(r(1)).subscribe({next:()=>{this.sendRedirectToMenuEvent();const n=this.getCurrentMenuUrlWithInitialView();n&&n!==globalThis.location.href&&(globalThis.location.href=n)},error:n=>{console.error("Error updating menu title:",n),this.sendRedirectToMenuEvent();const i=this.getCurrentMenuUrlWithInitialView();i&&i!==globalThis.location.href&&(globalThis.location.href=i)}})},error:e=>{console.error("Error preparing planner menu before redirect:",e),this.isRedirecting=!1}}))}sendRedirectToMenuEvent(){const e=this.getCurrentMenuUrlWithInitialView(),t=new CustomEvent("redirectToMenu",{bubbles:!0,composed:!0,detail:{url:e}});this.dispatchEvent(t)}getCurrentMenuUrlWithInitialView(){const e=this.currentMenuPageUrl;if(!e)return e;const t=this.isFromPlannerEntry()&&!this.isCustomMenu&&this.recipeIds.length>0;try{const n=new URL(e,globalThis.location.origin);return t&&n.searchParams.set("fromFeatured","true"),n.toString()}catch{if(!t)return e;const n=e.includes("?")?"&":"?";return`${e}${n}fromFeatured=true`}}displayDashboard(){const e=document.querySelector(".mealz-planner-dashboard");e&&(e.style.display="block")}cancelMenu(){const e=new M;e.addEventListener("resetMenu",()=>this.resetMenu()),e.displayPlannerAbandonModal()}resetMenu(){const e=s.planner.deleteMenu(this.menuId);this.resetMenuEvent(),e.pipe(r(1)).subscribe(()=>{globalThis.location.reload()})}replaceMenu(){this.resetMenuEvent(),s.planner.deleteMenu(this.menuId).pipe(r(1),l(()=>s.planner.createMenu()),r(1)).subscribe(e=>{this.menuId=e.id,this.shouldUpdateMenuTitleOnRedirect=!0,this.menuTitle="",this.proceedAfterHookAndOptionalModal()})}keepMenu(){this.redirectToMenu()}showLoader(){const e=this.querySelector(this.selectors.navigationArrow);if(e){const t=document.createElement("div");t.className="mealz-ds-loader mealz-planner-menu-option__loader",e.replaceWith(t)}}resetMenuEvent(){s.analytics.sendEvent("planner.reset",this.analyticsPath,{})}sendModeSelectEvent(e){const t={mode:e,guests:this.guests};this.plannerEntryVariant!==void 0&&(t.variant=this.plannerEntryVariant),s.analytics.sendEvent("planner.mode.select",this.analyticsPath,t,"meals-planner-home")}}customElements.get("mealz-planner-menu-option")||customElements.define("mealz-planner-menu-option",T);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.mealz-planner-entry__content{display:flex;flex-direction:column;width:100%;box-sizing:border-box;padding:24px 80px 0}@media (max-width: 1025px){.mealz-planner-entry__content{position:relative;padding:24px 24px 0}}@media (max-width: 700px){.mealz-planner-entry__content{padding:24px 16px 0}}.mealz-planner-entry__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;width:100%}.mealz-planner-entry__header-left{display:flex;align-items:center;gap:8px}.mealz-planner-entry__title{font-family:Satoshi,sans-serif;font-size:24px;font-weight:900;line-height:28px;color:var(--mealz-ds-color-neutral-black, #0F191F);margin:0 12px 0 0}.mealz-planner-entry__stepper{display:flex;align-items:center;gap:4px}.mealz-planner-entry__stepper-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:8px;border:1px solid var(--mealz-ds-color-primary, #24748f);border-radius:8px;background:transparent;cursor:pointer;color:var(--mealz-ds-color-neutral-black, #0F191F);transition:all .2s ease}.mealz-planner-entry__stepper-button:hover:not(:disabled){background:#24748f1a}.mealz-planner-entry__stepper-button:disabled{opacity:.5;cursor:not-allowed}.mealz-planner-entry__stepper-button--plus{background:var(--mealz-ds-color-primary, #24748f);border-color:var(--mealz-ds-color-primary, #24748f);color:#fff}.mealz-planner-entry__stepper-button--plus:hover:not(:disabled){background:var(--mealz-ds-color-primary-700, #1B596E);border-color:var(--mealz-ds-color-primary-700, #1B596E)}.mealz-planner-entry__stepper-value{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px}.mealz-planner-entry__stepper-number{font-family:Satoshi,sans-serif;font-size:16px;font-weight:700;line-height:24px;color:var(--mealz-ds-color-neutral-black, #0F191F)}.mealz-planner-entry__stepper-value picture,.mealz-planner-entry__stepper-value img{display:block;width:16px;height:16px}.mealz-planner-entry__help-link{font-family:Satoshi,sans-serif;font-size:16px;font-weight:700;line-height:24px;color:var(--mealz-ds-color-primary, #24748f);text-decoration:underline;text-underline-position:from-font;cursor:pointer;transition:color .2s ease}.mealz-planner-entry__help-link:hover{color:var(--mealz-ds-color-primary-700, #1B596E)}.mealz-planner-entry__banner{position:relative;background:#fff;border:1px solid var(--mealz-ds-color-border, #D9DDE1);border-radius:12px;padding:16px;display:flex;gap:16px;overflow:hidden;box-shadow:0 4px 12px #0318201f}.mealz-planner-entry__banner:before{content:"";position:absolute;bottom:-176px;left:50%;transform:translate(-50%);width:1531px;height:282px;background:#e4edf1;border-radius:50%;z-index:0;pointer-events:none}.mealz-planner-entry__banner:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background.webp);background-size:cover;background-position:center;z-index:1;pointer-events:none}.mealz-planner-entry__options{position:relative;z-index:2;display:flex;gap:16px;width:100%}.mealz-planner-entry__options .mealz-planner-menu-option{height:100%}.mealz-planner-entry__options>*{flex:1 0 0}@media (max-width: 1025px){.mealz-planner-entry__banner{padding:16px 0 48px;margin:0 -16px;border-radius:0}.mealz-planner-entry__banner:after{background-position:left center;background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background-mobile.webp)}.mealz-planner-entry__help-link{position:absolute;bottom:16px;left:16px;z-index:2}.mealz-planner-entry__options{flex-wrap:nowrap;gap:8px;padding:0 16px;align-items:stretch;overflow-x:scroll;scrollbar-width:none;-ms-overflow-style:none;width:100%}.mealz-planner-menu-option .mealz-planner-menu-option__container{padding:12px}.mealz-planner-menu-option .mealz-planner-menu-option__container .mealz-planner-menu-option__redirect{position:static;width:40px;height:40px;padding:0 0 0 8px}.mealz-planner-entry__options::-webkit-scrollbar{display:none}}@media (max-width: 607px){.mealz-planner-entry__header{flex-direction:column;align-items:flex-start;gap:16px}.mealz-planner-entry__header-left{width:100%;justify-content:space-between}.mealz-planner-entry__title{font-size:20px;line-height:24px}.mealz-planner-entry__options .mealz-planner-menu-option{width:280px}}
|
|
1
|
+
.mealz-planner-entry__content{display:flex;flex-direction:column;width:100%;box-sizing:border-box;padding:24px 80px 0}@media (max-width: 1025px){.mealz-planner-entry__content{position:relative;padding:24px 24px 0}}@media (max-width: 700px){.mealz-planner-entry__content{padding:24px 16px 0}}.mealz-planner-entry__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;width:100%}.mealz-planner-entry__header-left{display:flex;align-items:center;gap:8px}.mealz-planner-entry__title{margin:0 12px 0 0}.mealz-planner-entry__stepper{display:flex;align-items:center;gap:4px}.mealz-planner-entry__stepper-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:8px;border:1px solid var(--mealz-ds-color-primary, #24748f);border-radius:8px;background:transparent;cursor:pointer;color:var(--mealz-ds-color-neutral-black, #0f191f);transition:all .2s ease}.mealz-planner-entry__stepper-button:hover:not(:disabled){background:#24748f1a}.mealz-planner-entry__stepper-button:disabled{opacity:.5;cursor:not-allowed}.mealz-planner-entry__stepper-button--plus{background:var(--mealz-ds-color-primary, #24748f);border-color:var(--mealz-ds-color-primary, #24748f);color:#fff}.mealz-planner-entry__stepper-button--plus:hover:not(:disabled){background:var(--mealz-ds-color-primary-700, #1b596e);border-color:var(--mealz-ds-color-primary-700, #1b596e)}.mealz-planner-entry__stepper-value{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px}.mealz-planner-entry__stepper-value picture,.mealz-planner-entry__stepper-value img{display:block;width:16px;height:16px}.mealz-planner-entry__help-link{white-space:nowrap}.mealz-planner-entry__hero{position:relative;overflow:hidden;border-radius:12px;background:#c8e5f0;box-shadow:0 4px 12px #0318201f;padding:24px;display:flex;justify-content:center}.mealz-planner-entry__hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background-v2.png);background-position:center;background-size:cover;pointer-events:none}.mealz-planner-entry__hero-overlays{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-1{position:absolute;bottom:0;right:0;filter:drop-shadow(-3px 6px 10px rgba(3,24,32,.18)) drop-shadow(0 14px 22px rgba(3,24,32,.08))}@media (max-width: 1300px){.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-1{display:none}}.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-2{position:absolute;bottom:0;left:0;filter:drop-shadow(3px 6px 10px rgba(3,24,32,.18)) drop-shadow(0 14px 22px rgba(3,24,32,.08))}.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-3{position:absolute;top:0;left:300px;filter:drop-shadow(0 8px 14px rgba(3,24,32,.16)) drop-shadow(0 18px 28px rgba(3,24,32,.07))}.mealz-planner-entry__hero-card{position:relative;display:flex;align-items:center;justify-content:center;min-height:220px;padding:0 24px;border-radius:12px;gap:32px;width:100%;max-width:900px;box-sizing:border-box;background:var(--mealz-ds-color-neutral-white, #fff)}.mealz-planner-entry__hero-left{display:flex;flex-shrink:0;flex-direction:column;align-items:center;gap:16px}.mealz-planner-entry__hero-badge img,.mealz-planner-entry__hero-title img{display:block;width:100%;height:auto}.mealz-planner-entry__hero-title{display:flex;flex-direction:column;align-items:flex-start}.mealz-planner-entry__hero-title .mealz-planner-entry__hero-title-desktop{display:block}.mealz-planner-entry__hero-title .mealz-planner-entry__hero-title-mobile{display:none}@media (max-width: 700px){.mealz-planner-entry__hero-title .mealz-planner-entry__hero-title-desktop{display:none}.mealz-planner-entry__hero-title .mealz-planner-entry__hero-title-mobile{display:block}}.mealz-planner-entry__hero-title-line,.mealz-planner-entry__hero-title-main,.mealz-planner-entry__hero-title-accent{display:block;color:var(--mealz-ds-color-neutral-black, #0f191f);text-transform:uppercase}.mealz-planner-entry__hero-title-line{font-family:Satoshi,sans-serif;font-size:24px;font-weight:700;line-height:24px}.mealz-planner-entry__hero-title-main{font-family:Satoshi,sans-serif;font-size:56px;font-weight:900;line-height:50px}.mealz-planner-entry__hero-title-accent{font-family:Fraiche,Satoshi,sans-serif;font-size:42px;font-weight:400;line-height:44px;color:var(--mealz-ds-color-primary, #24748f);text-transform:none}.mealz-planner-entry__hero-right{flex:1 1 0%;display:flex;flex-direction:column;min-width:0;gap:16px}.mealz-planner-entry__hero-description{text-align:center}.mealz-planner-entry__hero-description strong{font-weight:800}.mealz-planner-entry__hero-avatars-wrapper{display:flex;justify-content:center}.mealz-planner-entry__hero-avatars{justify-content:center}.mealz-planner-entry__hero-avatars .mealz-planner-menu-option__recipe-avatar{width:80px;height:80px;border:2px solid var(--mealz-ds-color-neutral-white, #fff)}.mealz-planner-entry__hero-avatars .mealz-planner-menu-option__recipe-avatar:not(:first-child){margin-left:-16px}.mealz-planner-entry__hero-avatars .mealz-planner-menu-option__recipe-avatar-overflow{display:flex;align-items:center;justify-content:center;background:var(--miam-color-neutral-100, #f7f8f9)}.mealz-planner-entry__hero-actions{display:flex;align-items:center;justify-content:center}.mealz-planner-entry__hero-actions .mealz-planner-entry__stepper{margin-right:12px}.mealz-planner-entry__hero-option{display:block}.mealz-planner-entry__hero-cta{min-height:40px;white-space:nowrap}.mealz-planner-entry__banner{position:relative;background:#fff;border:1px solid var(--mealz-ds-color-border, #d9dde1);border-radius:12px;padding:16px;display:flex;gap:16px;overflow:hidden;box-shadow:0 4px 12px #0318201f}.mealz-planner-entry__banner:before{content:"";position:absolute;bottom:-176px;left:50%;transform:translate(-50%);width:1531px;height:282px;background:#e4edf1;border-radius:50%;z-index:0;pointer-events:none}.mealz-planner-entry__banner:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background.webp);background-size:cover;background-position:center;z-index:1;pointer-events:none}.mealz-planner-entry__options{position:relative;z-index:2;display:flex;gap:16px;width:100%}.mealz-planner-entry__options .mealz-planner-menu-option{height:100%}.mealz-planner-entry__options>*{flex:1 0 0}@media (max-width: 1025px){.mealz-planner-entry__hero{padding:16px}.mealz-planner-entry__hero:before{background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background-v2-mobile.png);background-position:left center}.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-1,.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-2,.mealz-planner-entry__hero-overlays .mealz-planner-entry__hero-overlay-3{display:none}.mealz-planner-entry__hero-card{padding:20px}.mealz-planner-entry__hero-title-line{font-size:20px;line-height:20px}.mealz-planner-entry__hero-title-main{font-size:44px;line-height:40px}.mealz-planner-entry__hero-title-accent{font-size:34px;line-height:36px}.mealz-planner-entry__hero-right{margin-left:24px}.mealz-planner-entry__banner{padding:16px 0 48px;margin:0 -16px;border-radius:0}.mealz-planner-entry__banner:after{background-position:left center;background-image:url(https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/meals-planner-home-entry-background-mobile.webp)}.mealz-planner-entry__help-link{position:absolute;bottom:16px;left:16px;z-index:2}.mealz-planner-entry__options{flex-wrap:nowrap;gap:8px;padding:0 16px;align-items:stretch;overflow-x:scroll;scrollbar-width:none;-ms-overflow-style:none;width:100%}.mealz-planner-menu-option .mealz-planner-menu-option__container{padding:12px}.mealz-planner-menu-option .mealz-planner-menu-option__container .mealz-planner-menu-option__redirect{position:static;width:40px;height:40px;padding:0 0 0 8px}.mealz-planner-entry__options::-webkit-scrollbar{display:none}}@media (max-width: 900px){.mealz-planner-entry__hero{padding:28px 24px 20px}.mealz-planner-entry__hero-card{flex-direction:column;align-items:center;gap:20px;max-width:560px;padding:44px 24px 24px}.mealz-planner-entry__hero-left{position:relative;width:100%;align-items:center;gap:0}.mealz-planner-entry__hero-badge{position:absolute;top:-56px}.mealz-planner-entry__hero-title{width:242px;align-items:center}.mealz-planner-entry__hero-right{display:flex;flex-direction:column;align-items:center;width:100%;margin-left:0}.mealz-planner-entry__hero-description{margin-bottom:16px;text-align:center}.mealz-planner-entry__hero-avatars-wrapper{margin-bottom:16px}.mealz-planner-entry__hero-actions{gap:12px}.mealz-planner-entry__hero-actions .mealz-planner-entry__stepper{margin-right:0}}@media (max-width: 607px){.mealz-planner-entry__content--variant-1{padding-top:0}.mealz-planner-entry__hero{margin:0 -20px;box-shadow:none;padding:24px 12px 12px;border-radius:0;box-sizing:border-box;align-items:flex-start}.mealz-planner-entry__hero-card{min-height:304px;max-width:352px;padding:30px 16px 24px;border-radius:5px;gap:0}.mealz-planner-entry__hero-left{width:100%;margin-bottom:0}.mealz-planner-entry__hero-right{max-width:none;margin-left:0}.mealz-planner-entry__hero-badge{position:absolute;top:-47px}.mealz-planner-entry__hero-title{width:241px}.mealz-planner-entry__hero-description{margin-bottom:12px;font-size:16px;line-height:24px;text-align:center}.mealz-planner-entry__hero-avatars-wrapper{width:100%;justify-content:center;overflow:visible;margin-bottom:18px;padding-bottom:0}.mealz-planner-entry__hero-avatars .mealz-planner-menu-option__recipe-avatar{width:64px;height:64px}.mealz-planner-entry__hero-avatars .mealz-planner-menu-option__recipe-avatar:not(:first-child){margin-left:-18px}.mealz-planner-entry__hero-actions{width:100%;flex-direction:row;justify-content:center;align-items:center;gap:12px}.mealz-planner-entry__hero-actions .mealz-planner-entry__stepper{margin-right:0;margin-bottom:0}.mealz-planner-entry__hero-option{flex:0 0 auto}.mealz-planner-entry__hero-cta{min-width:136px;padding:8px 20px}.mealz-planner-entry__header{flex-direction:column;align-items:flex-start;gap:16px}.mealz-planner-entry__header-left{width:100%;justify-content:space-between}.mealz-planner-entry__title{font-size:20px;line-height:24px}.mealz-planner-entry__options .mealz-planner-menu-option{width:280px}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as S}from"../assets/no-shadow-element-CXVMZH9n.js";import{V as g}from"../assets/viewport-listener-khw7cTjd.js";import{h as f}from"../assets/session-handler-D-8RsM2Q.js";import{w as
|
|
1
|
+
import{N as S}from"../assets/no-shadow-element-CXVMZH9n.js";import{V as g}from"../assets/viewport-listener-khw7cTjd.js";import{h as f}from"../assets/session-handler-D-8RsM2Q.js";import{w as C,m as c}from"../assets/mealz-sdk-CnvUgy3V.js";import{f as u}from"../assets/filter-aZV_N5pj.js";import{s as I}from"../assets/switchMap-DC1sJvd8.js";import{c as w}from"../assets/combineLatest-BB01Px-W.js";import{t as d}from"../assets/take-BgFJXP4B.js";import"../assets/debounceTime-BeLayHXh.js";import"../assets/async-M7ziFu3t.js";import"../assets/OperatorSubscriber-CvNNPrIM.js";import"../assets/innerFrom-BldbX_fT.js";import"../assets/from-uSPfq2sN.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/mapOneOrManyArgs-BPsgfFRx.js";import"../assets/map-ND1NsJPC.js";import"../assets/args-upHwW4Wh.js";import"../assets/isScheduler-fbUJB_yC.js";import"../assets/empty-Dy0Wgz_B.js";class n{constructor(){this.trackedRecipes=new Map,this.hasScrolled=!1,this.scrollListener=null,this.cleanupInterval=null,this.MAX_RECIPES=1e3,this.CLEANUP_INTERVAL=300*1e3,this.handlePageUnload=()=>{this.destroy()},this.setupScrollListener(),this.startAutoCleanup(),this.setupPageUnloadListener()}static getInstance(){return n.instance||(n.instance=new n),n.instance}trackRecipeShow(e,t,s){const i=Date.now(),r=!this.trackedRecipes.get(e),o=this.hasScrolled;!r&&!o||(this.trackedRecipes.size>=this.MAX_RECIPES&&this.cleanOldRecipes(),this.trackedRecipes.set(e,i),window.mealzInternal.analytics.sendEvent("recipe.show",t,{recipe_id:e,category_id:s}))}cleanOldRecipes(){const t=Date.now()-3600*1e3;for(const[s,i]of this.trackedRecipes.entries())i<t&&this.trackedRecipes.delete(s)}clearAllRecipes(){this.trackedRecipes.clear()}destroy(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null),window.removeEventListener("beforeunload",this.handlePageUnload),this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null),this.trackedRecipes.clear(),this.hasScrolled=!1,n.instance=null}setupScrollListener(){let e;this.scrollListener=()=>{this.hasScrolled=!0,clearTimeout(e),e=window.setTimeout(()=>{this.hasScrolled=!1},2e3)},window.addEventListener("scroll",this.scrollListener)}startAutoCleanup(){this.cleanupInterval=window.setInterval(()=>{this.cleanOldRecipes()},this.CLEANUP_INTERVAL)}setupPageUnloadListener(){window.addEventListener("beforeunload",this.handlePageUnload)}}class y extends S{constructor(){super(...arguments),this.subscriptions=[],this.handleTopClick=()=>this.openDetails(),this.handleCtaClick=()=>this.recipeCardCtaClick()}connectedCallback(){super.connectedCallback(),this.getInitialStatus(),this.listenInView(),C().then(()=>{this.setupSubscriptions()}).catch(e=>{console.warn("Failed to initialize SDK subscriptions:",e)})}setupSubscriptions(){this.subscriptions.push(c.basket.recipePricesInBasket$().subscribe(e=>{if(!e)return;const t=e.find(s=>s.id===this.recipeId);e.length>0&&t&&parseFloat(t.price)>0?(this.guests=c.basket.guestsForRecipe(t.id),this.updatedRecipeId=t.id,this.updateDOM()):this.render()}),this.setupPlannerMenuSubscription(),this.setupGuestUpdatesSubscription())}setupPlannerMenuSubscription(){return c.planner.menuPrice$.pipe(u(()=>this.planner&&!!this.recipeId),I(()=>w([c.planner.isRecipeInMenu$(this.recipeId).pipe(d(1))])),u(([e,t])=>e&&typeof t=="number"&&t>0)).subscribe(([e,t])=>{this.guests=t,this.updateGuestDisplay()})}setupGuestUpdatesSubscription(){return c.recipes.guestsUpdated().subscribe(e=>{e.recipeId===this.recipeId&&(this.guests=e.guests,this.updatedRecipeId=this.recipeId,this.updateDOM())})}disconnectedCallback(){var t;super.disconnectedCallback(),this.subscriptions.forEach(s=>s.unsubscribe()),(t=this.analyticsViewportObserver)==null||t.disconnect(),n.getInstance().cleanOldRecipes()}render(){this.recipeCardTop=this.querySelector(".mealz-recipe-card__top"),this.recipeCardCta=this.querySelector(".mealz-recipe-card__cta"),this.recipeCardTop&&(this.getInitialStatus(),this.recipeCardTop.removeEventListener("click",this.handleTopClick),this.recipeCardTop.addEventListener("click",this.handleTopClick),this.recipeCardCta&&(this.recipeCardCta.removeEventListener("click",this.handleCtaClick),this.recipeCardCta.addEventListener("click",this.handleCtaClick)))}listenInView(){this.analyticsViewportObserver=new g(this,()=>{this.sendAnalyticsShow()},{threshold:.8,debounce:1e3})}getInitialStatus(){var p;const e=(p=this.attributes["starting-data"])==null?void 0:p.value;if(!e)return;const{id:t,guests:s,path:i,categoryId:a,initialTabIndex:r,planner:o,sessionId:l,recipe:m}=JSON.parse(e);if(this.recipeId=t,this.analyticsPath=i,this.categoryId=a,this.guests=s,this.initialTabIndex=r,this.planner=o,this.recipe=m,f(l),!this.guests){this.guests=this.getGuests();const h=this.querySelector(".mealz-recipe-card__counter p");h&&(h.innerHTML=this.guests.toString())}this.removeAttribute("starting-data"),this.updateDOM()}openDetails(){c.recipes.openDetails(this.recipeId,this.guests,this.initialTabIndex,this.analyticsPath,this.planner,this.categoryId)}recipeCardCtaClick(){this.planner?this.handleCTAClickForPlanner():this.openDetails()}getGuests(){const e=localStorage.getItem("_miam/preferences/guests");if(e){const t=+e;if(!isNaN(t)&&t>0&&t<=30)return t}return 4}handleCTAClickForPlanner(){const e=this.querySelector("mealz-recipe-card-cta");if(!e)return;const t=e.querySelector(".mealz-recipe-card-cta__loader");if(t&&!t.classList.contains("hidden"))return;const s=e.getStatus();s==="add"?(this.showAddingToMenuState(e),this.addRecipeToMenu()):s==="in-menu"&&(this.showRemovingFromMenuState(e),this.removeRecipeFromMenu())}addRecipeToMenu(){var i,a;const e=document.querySelector("mealz-planner-recipe-suggestion"),t=(e==null?void 0:e.guests)||this.guests;this.guests=t,e&&(e.recipeId=this.recipeId);const s=document.querySelector("mealz-planner-current-menu");if(!s){const r=(a=(i=c.recipes)==null?void 0:i.productsPlannerByCategory$)==null?void 0:a.value,o=(r==null?void 0:r.toPickProducts)||[];c.planner.addRecipeToMenu(this.recipeId,t,!!c.pos.currentPos().value,o).pipe(d(1)).subscribe(()=>{this.removeRecipeCardLoader("add");const l=document.querySelector("mealz-planner-recipe-list");l==null||l.addRecipeCardToList(this.recipeId)});return}s.addRecipe(this.recipeId,t).subscribe(()=>{this.removeRecipeCardLoader("add"),e==null||e.addAndSelectNewSuggestion(this.recipe)})}removeRecipeFromMenu(){const e=document.querySelector("mealz-planner-recipe-suggestion");if(!e){c.planner.removeRecipeFromMenu(this.recipeId).pipe(d(1)).subscribe(()=>this.removeRecipeCardLoader("remove"));return}e.removeRecipe(this.recipeId).subscribe(()=>this.removeRecipeCardLoader("remove"))}showRemovingFromMenuState(e){const t=this.querySelector(".mealz-recipe-card-cta__loader"),s=e.querySelector("img.in-menu");t==null||t.classList.remove("hidden"),s==null||s.classList.add("hidden")}removeRecipeCardLoader(e){const t=this.querySelector("mealz-recipe-card-cta");if(!t)return;const s=this.querySelector(".mealz-recipe-card-cta"),i=this.querySelector(".mealz-recipe-card-cta__loader"),a=t.querySelector("img.add"),r=t.querySelector("img.in-menu");e==="add"?(i==null||i.classList.add("hidden"),s==null||s.classList.replace("primary","secondary"),r==null||r.classList.remove("hidden"),t.updateStatus("in-menu")):(i==null||i.classList.add("hidden"),s==null||s.classList.replace("secondary","primary"),a==null||a.classList.remove("hidden"),t.updateStatus("add"))}showAddingToMenuState(e){const t=this.querySelector(".mealz-recipe-card-cta__loader"),s=e.querySelector("img.add"),i=e.querySelector("img.in-menu");t==null||t.classList.remove("hidden"),s==null||s.classList.add("hidden"),i==null||i.classList.add("hidden")}updateDOM(){if(this.recipeId!==this.updatedRecipeId)return;const e=this.querySelector(".mealz-recipe-card__counter p");e&&(e.innerHTML=this.guests.toString())}updateGuestDisplay(){const e=this.querySelector(".mealz-recipe-card__counter p");e&&this.guests&&(e.innerHTML=this.guests.toString())}sendAnalyticsShow(){n.getInstance().trackRecipeShow(this.recipeId,this.analyticsPath,this.categoryId)}}customElements.get("mealz-recipe-card")||customElements.define("mealz-recipe-card",y);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";import{_ as J,n as O,p as F,b as X,c as Z,q as ee,N as k,D as d,k as i}from"../assets/no-shadow-element-CXVMZH9n.js";import{n as h}from"../assets/property-BXpY_hgs.js";import{P as te}from"../assets/price-CTfOOyf1.js";import{m as r}from"../assets/mealz-sdk-CnvUgy3V.js";import{m as V}from"../assets/merge-B0ddcNYl.js";import{m as y}from"../assets/map-ND1NsJPC.js";import{t as B}from"../assets/take-BgFJXP4B.js";import{c as H}from"../assets/capitalize-DUAqYmp4.js";import"../counter/counter.min.js";import"../assets/product-card-ryOzsvSF.js";import"../price/price.min.js";import"../assets/promotion-badge-D63kIgUZ.js";import{G as j}from"../assets/guestObserver-PPbBwlOO.js";import"../assets/accordion-tsgdqQeQ.js";import"../store-indicator/store-indicator.min.js";import"../last-order-badge/last-order-badge.min.js";import"../order-again/order-again.min.js";import"../like-button/like-button.min.js";import{L as se}from"../last-order-modal/last-order-modal.min.js";import{a as ie}from"../assets/unsafe-html-LLTnDXid.js";import{M as ae}from"../planner/planner-onboarding/planner-onboarding.min.js";import{o as W,c as re}from"../assets/OperatorSubscriber-CvNNPrIM.js";import{i as L}from"../assets/innerFrom-BldbX_fT.js";import{f as N}from"../assets/filter-aZV_N5pj.js";import{t as
|
|
1
|
+
import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";import{_ as J,n as O,p as F,b as X,c as Z,q as ee,N as k,D as d,k as i}from"../assets/no-shadow-element-CXVMZH9n.js";import{n as h}from"../assets/property-BXpY_hgs.js";import{P as te}from"../assets/price-CTfOOyf1.js";import{m as r}from"../assets/mealz-sdk-CnvUgy3V.js";import{m as V}from"../assets/merge-B0ddcNYl.js";import{m as y}from"../assets/map-ND1NsJPC.js";import{t as B}from"../assets/take-BgFJXP4B.js";import{c as H}from"../assets/capitalize-DUAqYmp4.js";import"../counter/counter.min.js";import"../assets/product-card-ryOzsvSF.js";import"../price/price.min.js";import"../assets/promotion-badge-D63kIgUZ.js";import{G as j}from"../assets/guestObserver-PPbBwlOO.js";import"../assets/accordion-tsgdqQeQ.js";import"../store-indicator/store-indicator.min.js";import"../last-order-badge/last-order-badge.min.js";import"../order-again/order-again.min.js";import"../like-button/like-button.min.js";import{L as se}from"../last-order-modal/last-order-modal.min.js";import{a as ie}from"../assets/unsafe-html-LLTnDXid.js";import{M as ae}from"../planner/planner-onboarding/planner-onboarding.min.js";import{o as W,c as re}from"../assets/OperatorSubscriber-CvNNPrIM.js";import{i as L}from"../assets/innerFrom-BldbX_fT.js";import{f as N}from"../assets/filter-aZV_N5pj.js";import{t as T}from"../assets/tap-DT80gG87.js";import{s as q}from"../assets/switchMap-DC1sJvd8.js";import{c as G}from"../assets/combineLatest-BB01Px-W.js";import{d as ne}from"../assets/async-M7ziFu3t.js";import"../assets/viewport-listener-khw7cTjd.js";import"../assets/debounceTime-BeLayHXh.js";import"../assets/skipWhile-DK5WsIpo.js";import"../assets/singleton-COF3iBbF.js";import"../assets/mergeAll-BvxRfNLo.js";import"../assets/mergeMap-C1wxIFhz.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/empty-Dy0Wgz_B.js";import"../assets/args-upHwW4Wh.js";import"../assets/isScheduler-fbUJB_yC.js";import"../assets/from-uSPfq2sN.js";import"../assets/delay-DJoNbXpK.js";import"../assets/timer-W1DT7NsX.js";import"../assets/isDate-BwHtzZM4.js";import"../store-locator/store-locator.min.js";import"../assets/state-BjFDUoQX.js";import"../assets/query-BApjzB0v.js";import"../onboarding/onboarding.min.js";import"../onboarding/events.min.js";import"../onboarding/analytics/onboarding-analytics.min.js";import"../assets/responsive-C7Qf71r3.js";import"../planner/helpers/planner-onboarding-storage.min.js";import"../assets/mapOneOrManyArgs-BPsgfFRx.js";var oe=function(o){J(e,o);function e(t,s,a){t===void 0&&(t=1/0),s===void 0&&(s=1/0),a===void 0&&(a=ne);var n=o.call(this)||this;return n._bufferSize=t,n._windowTime=s,n._timestampProvider=a,n._buffer=[],n._infiniteTimeWindow=!0,n._infiniteTimeWindow=s===1/0,n._bufferSize=Math.max(1,t),n._windowTime=Math.max(1,s),n}return e.prototype.next=function(t){var s=this,a=s.isStopped,n=s._buffer,l=s._infiniteTimeWindow,c=s._timestampProvider,p=s._windowTime;a||(n.push(t),!l&&n.push(c.now()+p)),this._trimBuffer(),o.prototype.next.call(this,t)},e.prototype._subscribe=function(t){this._throwIfClosed(),this._trimBuffer();for(var s=this._innerSubscribe(t),a=this,n=a._infiniteTimeWindow,l=a._buffer,c=l.slice(),p=0;p<c.length&&!t.closed;p+=n?1:2)t.next(c[p]);return this._checkFinalizedStatuses(t),s},e.prototype._trimBuffer=function(){var t=this,s=t._bufferSize,a=t._timestampProvider,n=t._buffer,l=t._infiniteTimeWindow,c=(l?1:2)*s;if(s<1/0&&c<n.length&&n.splice(0,n.length-c),!l){for(var p=a.now(),g=0,u=1;u<n.length&&n[u]<=p;u+=2)g=u;g&&n.splice(0,g+1)}},e}(O);function le(o){o===void 0&&(o={});var e=o.connector,t=e===void 0?function(){return new O}:e,s=o.resetOnError,a=s===void 0?!0:s,n=o.resetOnComplete,l=n===void 0?!0:n,c=o.resetOnRefCountZero,p=c===void 0?!0:c;return function(g){var u,m,v,b=0,f=!1,_=!1,z=function(){m==null||m.unsubscribe(),m=void 0},$=function(){z(),u=v=void 0,f=_=!1},Y=function(){var S=u;$(),S==null||S.unsubscribe()};return W(function(S,M){b++,!_&&!f&&z();var R=v=v??t();M.add(function(){b--,b===0&&!_&&!f&&(m=A(Y,p))}),R.subscribe(M),!u&&b>0&&(u=new F({next:function(x){return R.next(x)},error:function(x){_=!0,z(),m=A($,a,x),R.error(x)},complete:function(){f=!0,z(),m=A($,l),R.complete()}}),L(S).subscribe(u))})(g)}}function A(o,e){for(var t=[],s=2;s<arguments.length;s++)t[s-2]=arguments[s];if(e===!0){o();return}if(e!==!1){var a=new F({next:function(){a.unsubscribe(),o()}});return L(e.apply(void 0,X([],Z(t)))).subscribe(a)}}function ce(o,e,t){var s,a=!1;return s=o,le({connector:function(){return new oe(s,e,t)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:a})}function w(o){return W(function(e,t){L(o).subscribe(re(t,function(){return t.complete()},ee)),!t.closed&&e.subscribe(t)})}var de=Object.defineProperty,P=(o,e,t,s)=>{for(var a=void 0,n=o.length-1,l;n>=0;n--)(l=o[n])&&(a=l(e,t,a)||a);return a&&de(e,t,a),a};class I extends k{constructor(){super(),this.noPosDisplay=!1,this.noSupplier=!1,this.recipeId="",this.categoryId=null,this.plannerMode=!1,this.guests=0,this.recipe=null,this.analyticsPath="",this.subscriptions=[],this.remainingBasketEntries=[],this.recipePrice={remaining:0,inBasket:0,total:0,totalPerGuest:0},this.priceService=te.getInstance(),this.allIngredientsToBasketLoading=!1,this.ingredientToBasketLoading=!1,this.updateIngredientFromBasketLoading=!1,this.productsLoading=!1,this.inMenu=!1,this.menuUpdateLoading=!1,this.styleURL=new URL("./recipe-details/details-footer/details-footer.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.priceService.initFormatter(),this.analyticsPath=`/recipes/${this.recipeId}/shopping`,this.subscriptions.push(V(r.recipes.remainingBasketEntries$.pipe(y(e=>{this.remainingBasketEntries=e})),r.recipes.recipePrice$.pipe(y(e=>{const t=e.remaining+e.inBasket;this.recipePrice={...e,total:t,totalPerGuest:0}})),r.recipes.allIngredientsToBasketLoading$.pipe(y(e=>{this.allIngredientsToBasketLoading=e})),r.recipes.ingredientToBasketLoading$.pipe(y(e=>{this.ingredientToBasketLoading=e})),r.recipes.updateIngredientFromBasketLoading$.pipe(y(e=>{this.updateIngredientFromBasketLoading=e})),r.recipes.productsLoading$.pipe(y(e=>{this.productsLoading=e})),r.planner.plannerRecipePrice$.pipe(y(e=>{this.recipePrice.totalPerGuest=this.guests>0?e/this.guests:e}))).subscribe(()=>this.requestUpdate())),this.subscribeIsRecipeInMenu()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.isRecipeInMenuSub&&(this.isRecipeInMenuSub.unsubscribe(),this.isRecipeInMenuSub=void 0)}updated(e){super.updated(e),e.has("recipeId")&&this.subscribeIsRecipeInMenu()}subscribeIsRecipeInMenu(){this.recipeId&&(this.isRecipeInMenuSub&&this.isRecipeInMenuSub.unsubscribe(),this.isRecipeInMenuSub=r.planner.isRecipeInMenu$(this.recipeId).pipe(y(e=>{this.inMenu=e})).subscribe(()=>this.requestUpdate()))}closeRecipeDetails(e=!1){r.recipes.displayedRecipe$.next(null),e&&r.basket.basketPreviewState$.next({isOpen:!0,activeTabIndex:r.basket.basketPreviewState$.getValue().activeTabIndex})}continueShopping(){this.closeRecipeDetails(),this.sendContinueEvent()}addToMenu(){var a,n;this.menuUpdateLoading=!0,this.requestUpdate();const e=document.querySelector("mealz-planner-recipe-suggestion"),t=!!e&&!!e.recipeId&&e.recipeId===this.recipeId,s=document.querySelector("mealz-planner-current-menu");if(!s){const l=(n=(a=r.recipes)==null?void 0:a.productsPlannerByCategory$)==null?void 0:n.value,c=(l==null?void 0:l.toPickProducts)||[];r.planner.addRecipeToMenu(this.recipeId,this.guests,!!r.pos.currentPos().value,c).pipe(B(1)).subscribe(()=>{this.inMenu=!0;const p=document.querySelector("mealz-planner-recipe-list");p==null||p.addRecipeCardToList(this.recipeId),this.menuUpdateLoading=!1,this.requestUpdate(),this.closeRecipeDetails()});return}if(t){e.addRecipeFromDetails$(this.guests).subscribe({next:()=>{this.inMenu=!0,this.menuUpdateLoading=!1,this.requestUpdate(),this.closeRecipeDetails()},error:()=>{this.menuUpdateLoading=!1,this.requestUpdate()}});return}s.addRecipe(this.recipeId,this.guests).pipe(B(1)).subscribe({next:()=>{this.inMenu=!0,e==null||e.addAndSelectNewSuggestion(this.recipe||void 0),this.menuUpdateLoading=!1,this.requestUpdate(),this.closeRecipeDetails()},error:()=>{this.menuUpdateLoading=!1,this.requestUpdate()}})}removeFromMenu(){this.menuUpdateLoading=!0,this.requestUpdate();const e=document.querySelector("mealz-planner-recipe-suggestion");if(!e){r.planner.removeRecipeFromMenu(this.recipeId).pipe(B(1)).subscribe(()=>{this.inMenu=!1,this.menuUpdateLoading=!1,this.requestUpdate()});return}e.removeRecipe(this.recipeId).subscribe(()=>{this.inMenu=!1,this.menuUpdateLoading=!1,this.requestUpdate()})}addAllIngredients(){const e=this.getCategoryId();r.recipes.addAllIngredientsToBasket({originPath:this.analyticsPath,props:e?{category_id:e}:{}}),this.sendAddAllEvent(),this.recipePrice.inBasket===0&&this.sendAddRecipeEvent()}render(){if(this.noPosDisplay&&!this.plannerMode)return d;const e=this.remainingBasketEntries.length>0&&!this.plannerMode,t=this.plannerMode&&this.noPosDisplay,s=this.plannerMode&&!this.inMenu;return i`
|
|
2
2
|
<div class="mealz-recipe-details__footer">
|
|
3
3
|
${this.productsLoading&&!this.plannerMode?d:i`
|
|
4
4
|
<!-- ADD TO BASKET CTA -->
|
|
@@ -91,7 +91,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
91
91
|
${this.plannerMode?"par personne":"dans votre panier"}
|
|
92
92
|
</span>
|
|
93
93
|
</div>
|
|
94
|
-
`}sendAddAllEvent(){r.analytics.sendEvent("entry.add-all",this.analyticsPath,{recipe_id:this.recipeId,entry_count:this.remainingBasketEntries.length})}sendAddRecipeEvent(){r.analytics.sendEvent("recipe.add",this.analyticsPath,{recipe_id:this.recipeId})}sendContinueEvent(){r.analytics.sendEvent("recipe.continue",this.analyticsPath,{recipe_id:this.recipeId})}}P([h({type:Boolean})],
|
|
94
|
+
`}sendAddAllEvent(){r.analytics.sendEvent("entry.add-all",this.analyticsPath,{recipe_id:this.recipeId,entry_count:this.remainingBasketEntries.length})}sendAddRecipeEvent(){const e=this.getCategoryId();r.analytics.sendEvent("recipe.add",this.analyticsPath,{recipe_id:this.recipeId,...e?{category_id:e}:{}})}sendContinueEvent(){r.analytics.sendEvent("recipe.continue",this.analyticsPath,{recipe_id:this.recipeId})}getCategoryId(){return this.categoryId!=null&&this.categoryId.length>0?this.categoryId:null}}P([h({type:Boolean})],I.prototype,"noPosDisplay");P([h({type:Boolean})],I.prototype,"noSupplier");P([h({type:String})],I.prototype,"recipeId");P([h({attribute:!1})],I.prototype,"categoryId");P([h({type:Boolean})],I.prototype,"plannerMode");P([h({type:Number})],I.prototype,"guests");P([h({attribute:!1})],I.prototype,"recipe");customElements.get("mealz-details-footer")||customElements.define("mealz-details-footer",I);class pe extends k{constructor(){super(),this.tags=[],this.displayTags=!1,this.subscriptions=[],this.styleURL=new URL("./recipe-details/details-infos/details-infos.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(r.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.tags=e.recipe.relationships.tags.data.map(t=>t.attributes.name),this.requestUpdate())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}toggleTags(){this.displayTags=!this.displayTags,this.requestUpdate()}noTimePlaceholder(){return i`<span class="mealz-recipe-details-infos__no-time-placeholder">0 min</span>`}noDataPlaceholder(){return i`<span class="mealz-recipe-details-infos__no-data-placeholder">-</span>`}getRecipeDifficultyIntoClassName(){switch(this.recipe.attributes.difficulty){case 1:return"easy";case 2:return"medium";case 3:return"hard";default:return"no-difficulty-defined"}}getRecipeDifficultyIntoText(){switch(this.recipe.attributes.difficulty){case 1:return i`<span class="mealz-ds-text">Facile</span>`;case 2:return i`<span class="mealz-ds-text">Moyen</span>`;case 3:return i`<span class="mealz-ds-text">Difficile</span>`;default:return d}}renderPreparationTime(){return i`
|
|
95
95
|
<!-- PREPARATION TIME -->
|
|
96
96
|
<div
|
|
97
97
|
class="
|
|
@@ -209,7 +209,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
209
209
|
`)}
|
|
210
210
|
</div>
|
|
211
211
|
</div>
|
|
212
|
-
`}ingredientPicture(e){return e.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}}customElements.get("mealz-details-ingredients")||customElements.define("mealz-details-ingredients",he);var me=Object.defineProperty,
|
|
212
|
+
`}ingredientPicture(e){return e.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}}customElements.get("mealz-details-ingredients")||customElements.define("mealz-details-ingredients",he);var me=Object.defineProperty,C=(o,e,t,s)=>{for(var a=void 0,n=o.length-1,l;n>=0;n--)(l=o[n])&&(a=l(e,t,a)||a);return a&&me(e,t,a),a};const U=["unavailable"],ge=["ticked","unselected"];class E extends k{constructor(){super(),this.recipeId="",this.initialGuests=0,this.currentGuests=0,this.oftenIgnored=!1,this.subscriptions=[],this.guestObserverService=j.getInstance(),this.modifiedIngQty=0,this.analyticsPath="/meals-planner/current",this.styleURL=new URL("./product-card/product-card-planner.css",this.getBaseURL())}get status(){var e;return(e=this.product)==null?void 0:e.status}set status(e){this.product.status=e,this.requestUpdate()}get productImage(){var e;return((e=this.product.item)==null?void 0:e.attributes.image)||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}get ingredientPicture(){return this.product.ingredient.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}get isSponsored(){var e,t,s;return((s=(t=(e=this.product)==null?void 0:e.item)==null?void 0:t.attributes)==null?void 0:s.sponsored)===!0}connectedCallback(){super.connectedCallback(),this.listenGuestsChange(),this.calculateQty()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}listenGuestsChange(){this.subscriptions.push(this.guestObserverService.guests$.subscribe(e=>{this.currentGuests=e,this.calculateQty()}))}calculateQty(){var t;if(!((t=this.product)!=null&&t.ingredient)||!this.initialGuests)return;const e=this.product.ingredient.attributes.quantity/this.initialGuests;this.modifiedIngQty=Number((e*(this.currentGuests??this.initialGuests)).toFixed(2)),this.requestUpdate()}openReplaceItemView(){r.planner.openReplaceItemView(this.product),this.replaceItemViewEvent()}onCheckboxChange(e){e.target.checked?(this.status="ticked",r.planner.selectProduct(+this.product.item.id,this.product.ingredient.relationships.definition.data.id),this.addItemEvent()):(this.status="unselected",r.planner.unselectProduct(+this.product.item.id,this.product.ingredient.relationships.definition.data.id),this.deleteItemEvent()),this.requestUpdate()}render(){var e;if((e=this.product)!=null&&e.ingredient)return i`
|
|
213
213
|
<div class="mealz-product-card-planner
|
|
214
214
|
${this.status==="ticked"?"added":""}
|
|
215
215
|
${U.includes(this.status)||this.oftenIgnored?"disabled":""}
|
|
@@ -318,7 +318,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
318
318
|
<span>Remplacer</span>
|
|
319
319
|
</button>
|
|
320
320
|
`:""}
|
|
321
|
-
`}addItemEvent(){r.analytics.sendEvent("planner.item.add",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}deleteItemEvent(){r.analytics.sendEvent("planner.item.delete",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}replaceItemViewEvent(){r.analytics.sendEvent("planner.item.replace",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}}
|
|
321
|
+
`}addItemEvent(){r.analytics.sendEvent("planner.item.add",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}deleteItemEvent(){r.analytics.sendEvent("planner.item.delete",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}replaceItemViewEvent(){r.analytics.sendEvent("planner.item.replace",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}}C([h({type:Object})],E.prototype,"product");C([h({type:String})],E.prototype,"recipeId");C([h({type:Number})],E.prototype,"initialGuests");C([h({type:Number})],E.prototype,"currentGuests");C([h({type:Boolean})],E.prototype,"oftenIgnored");customElements.get("mealz-product-card-planner")||customElements.define("mealz-product-card-planner",E);var ve=Object.defineProperty,be=(o,e,t,s)=>{for(var a=void 0,n=o.length-1,l;n>=0;n--)(l=o[n])&&(a=l(e,t,a)||a);return a&&ve(e,t,a),a};class K extends k{constructor(){super(),this.styleURL=new URL("./legal-notice/legal-notice.css",this.getBaseURL())}get containsAlcohol(){var t;return(((t=this.tags)==null?void 0:t.data)||[]).some(s=>s.id==="ingredient_category_alcool")}render(){return this.containsAlcohol?i`
|
|
322
322
|
<div class="mealz-products-picker__legal-notices">
|
|
323
323
|
<span class="mealz-ds-text weight-xxl mealz-products-picker__legal-notices-header">Mentions légales</span>
|
|
324
324
|
<div class="mealz-products-picker__legal-notices-content">
|
|
@@ -534,7 +534,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
534
534
|
Sélectionner un magasin
|
|
535
535
|
</button>
|
|
536
536
|
</div>
|
|
537
|
-
`}}customElements.get("mealz-no-pos-selected")||customElements.define("mealz-no-pos-selected",ze);class ye extends k{constructor(){super(),this.activeTabIndex=0,this.destroy$=new O,this.remainingBasketEntries=[],this.guestObserverService=j.getInstance(),this.isSticky=!1,this.hasBackNavigation=!1,this.drawerViewSwapper=null,this.styleURL=new URL("./recipe-details/recipe-details.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.destroy$=new O,this.handleNoSupplierMode(),V(r.recipes.displayedRecipe$.pipe(w(this.destroy$),N(e=>!!e),
|
|
537
|
+
`}}customElements.get("mealz-no-pos-selected")||customElements.define("mealz-no-pos-selected",ze);class ye extends k{constructor(){super(),this.activeTabIndex=0,this.destroy$=new O,this.remainingBasketEntries=[],this.guestObserverService=j.getInstance(),this.isSticky=!1,this.hasBackNavigation=!1,this.drawerViewSwapper=null,this.detailsCategoryId=null,this.styleURL=new URL("./recipe-details/recipe-details.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.destroy$=new O,this.handleNoSupplierMode(),V(r.recipes.displayedRecipe$.pipe(w(this.destroy$),N(e=>!!e),T(e=>{var s,a;if(e.recipe===null)return;this.recipe=e.recipe;const t=(a=(s=e.eventTrace)==null?void 0:s.props)==null?void 0:a.category_id;this.detailsCategoryId=t!=null&&String(t).length>0?String(t):null,this.sponsor=e.recipe.relationships.sponsors.data[0],this.analyticsPath=`/recipes/${this.recipe.id}/shopping`,this.plannerMode=!!e.planner,this.getLikeButton(),this.checkSponsorStorytelling(),this.pageview(),this.listenToCloseEvent(),this.setStickyObserver()}),q(e=>e.recipe===null?[]:this.listenToRecipeInBasket())),this.listenPosStatus(),this.listenRemainingBasketEntries(),this.listenLastOrderDate(),this.listenToLoadingStates(),this.listenToAddAllToBasket()).pipe(w(this.destroy$)).subscribe({next:()=>this.requestUpdate(),error:e=>console.error("Recipe details error:",e)}),this.addEventListener("products-picker-ready",()=>this.startRecipeDetailsOnboardingIfNeeded()),this.setupDrawerBackNavigationIndicator()}disconnectedCallback(){super.disconnectedCallback(),this.destroy$.next(),this.destroy$.complete(),this.topObserver&&this.topObserver.disconnect(),this.stickyTimeout&&clearTimeout(this.stickyTimeout),this.drawerViewSwapper&&this.onActiveViewsChanged&&this.drawerViewSwapper.removeEventListener("mealz-active-views-changed",this.onActiveViewsChanged)}setupDrawerBackNavigationIndicator(){const e=this.closest("mealz-drawer-view-swapper");this.drawerViewSwapper=e??document.querySelector("mealz-drawer-view-swapper"),this.drawerViewSwapper&&(this.updateBackNavigationFromActiveViews(this.drawerViewSwapper.getActiveViewNames()),this.onActiveViewsChanged=t=>{const s=t==null?void 0:t.detail;s!=null&&s.activeViews&&this.updateBackNavigationFromActiveViews(s.activeViews)},this.drawerViewSwapper.addEventListener("mealz-active-views-changed",this.onActiveViewsChanged))}updateBackNavigationFromActiveViews(e){const t=Array.isArray(e)&&e.length>1;this.hasBackNavigation!==t&&(this.hasBackNavigation=t,this.requestUpdate())}getRecipeDetailsCloseIcon(){return this.hasBackNavigation?{src:"https://storage.googleapis.com/assets.miam.tech/generic/icons/arrow-right.svg",alt:"back button",className:"mealz-recipe-details__close-icon is-back"}:{src:"https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_primary.svg",alt:"modal close button",className:"mealz-recipe-details__close-icon"}}getRecipeDetailsStickyCloseIcon(){return this.hasBackNavigation?{src:"https://storage.googleapis.com/assets.miam.tech/generic/icons/ArrowLeft_dark.svg",alt:"back button",className:"mealz-recipe-details__close-icon before-title is-back"}:{src:"https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_Black.svg",alt:"modal close button",className:"mealz-recipe-details__close-icon"}}setStickyObserver(){this.topObserver||this.updateComplete.then(()=>{const e=this.querySelector(".mealz-recipe-details__sticky-anchor");e&&(this.topObserver=new IntersectionObserver(([t])=>{this.stickyTimeout&&clearTimeout(this.stickyTimeout),this.stickyTimeout=window.setTimeout(()=>{const s=!t.isIntersecting;this.isSticky!==s&&(this.isSticky=s,this.requestUpdate())},150)},{threshold:0}),this.topObserver.observe(e))})}startRecipeDetailsOnboardingIfNeeded(){localStorage.getItem("_miam/recipeDetailsOnboarding")==="true"||!this.plannerMode||this.updateComplete.then(()=>{this.scrollJustAfterImage();let t=document.querySelector("mealz-planner-onboarding");t?t.type="recipe-details":(t=new ae,t.type="recipe-details",document.body.appendChild(t)),t.launchOnboardingTour()})}scrollJustAfterImage(){const e=this.querySelector(".mealz-recipe-details__tabs");if(!e)return;const t=document.querySelector(".mealz-drawer__content-container");if(t){const s=e.getBoundingClientRect(),a=t.getBoundingClientRect();t.scrollTop+=s.top-a.top;return}e.scrollIntoView({behavior:"smooth",block:"start"})}handleNoSupplierMode(){this.noSupplier=!!r.supplier.isNoSupplier(),this.requestUpdate()}close(){this.sendCloseEvent(),r.recipes.displayedRecipe$.next(null)}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",()=>{this.sendCloseEvent()})}selectTab(e){this.activeTabIndex=e,this.activeTabIndex===1&&this.sendCookingDisplayEvent(),this.requestUpdate()}getLikeButton(){if(this.noSupplier)return;const e=this.detailsCategoryId;r.user.isAuthenticated().pipe(w(this.destroy$),N(t=>t),q(()=>r.html.like(this.recipe.id,this.analyticsPath,e))).subscribe({next:t=>{this.likeButtonHTML=t,this.requestUpdate()},error:t=>console.error("Like button error:",t)})}checkSponsorStorytelling(){this.sponsor&&r.sponsor.hasStorytelling(this.sponsor.id).pipe(w(this.destroy$)).subscribe({next:e=>{this.hasSponsorStorytelling=e,this.requestUpdate()},error:e=>console.error("Sponsor storytelling error:",e)})}listenPosStatus(){return G({noPosDisplay:r.recipes.noPosDisplay$,invalidPosDisplay:r.recipes.invalidPosDisplay$}).pipe(T(({noPosDisplay:e,invalidPosDisplay:t})=>{this.noPosDisplay=e,this.invalidPosDisplay=t,this.activeTabIndex=e?1:0}),y(()=>{}))}listenLastOrderDate(){return r.recipes.orderHistoryDate$.pipe(T(e=>{this.orderHistoryDate=e}))}listenToLoadingStates(){return G([r.recipes.ingredientToBasketLoading$,r.recipes.updateIngredientFromBasketLoading$]).pipe(y(([e,t])=>e||t),T(e=>{this.basketIsUpdating=e}),ce(1))}listenRemainingBasketEntries(){return r.recipes.remainingBasketEntries$.pipe(T(e=>{this.remainingBasketEntries=e}))}listenToAddAllToBasket(){return r.recipes.allIngredientsToBasketLoading$.pipe(T(e=>{e&&(this.selectTab(0),setTimeout(()=>{this.scrollToPicker()},50))}))}listenToRecipeInBasket(){return r.recipes.isRecipeInBasket(this.recipe.id).pipe(T(e=>{this.inBasket=e}))}scrollToPicker(){const e=this.querySelector(".mealz-products-picker");if(e){const t=this.querySelector(".mealz-recipe-details__title-container"),s=(t==null?void 0:t.offsetHeight)||0;e.style.scrollMarginTop=`${s}px`,e.scrollIntoView({behavior:"instant",block:"start"})}}scrollToReplacedItem(e){var s,a;const t=this.querySelectorAll("mealz-product-card-planner");for(const n of Array.from(t)){const l=n;if(((a=(s=l.product)==null?void 0:s.item)==null?void 0:a.id)===e){l.scrollIntoView({behavior:"instant",block:"center"});break}}}openLastOrderModal(){this.sendOrderedDisplayEvent();const e=new se;e.recipeId=this.recipe.id,e.addEventListener("orderAgain",()=>this.orderAgain()),e.displayLastOrderModal(this.orderHistoryDate)}orderAgain(){r.recipes.addAllIngredientsToBasket({originPath:this.analyticsPath,props:{}})}updateGuests(e){if(this.recipe.modifiedGuests===e.detail.value)return;this.recipe.modifiedGuests=e.detail.value,this.guestObserverService.updateGuests(this.recipe.modifiedGuests);const t={originPath:this.analyticsPath,props:{}};this.plannerMode?r.planner.updateGuests(this.recipe.modifiedGuests,t):r.recipes.updateGuests(t),this.requestUpdate()}render(){const e=this.getRecipeDetailsCloseIcon(),t=this.getRecipeDetailsStickyCloseIcon();return i`
|
|
538
538
|
<div class="mealz-recipe-details">
|
|
539
539
|
<!-- IF IS LOADING -->
|
|
540
540
|
${this.recipe?d:i`
|
|
@@ -647,6 +647,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
647
647
|
.noPosDisplay=${this.noPosDisplay}
|
|
648
648
|
.noSupplier=${this.noSupplier}
|
|
649
649
|
.recipeId=${this.recipe.id}
|
|
650
|
+
.categoryId=${this.detailsCategoryId}
|
|
650
651
|
.plannerMode=${this.plannerMode}
|
|
651
652
|
.guests=${this.recipe.modifiedGuests}
|
|
652
653
|
.recipe=${this.recipe}
|