mealz-components 2.0.0-beta.5 → 2.0.0-beta.7
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/assets/query-BApjzB0v.js +9 -0
- package/dist/assets/{store-locator-m8sx3XDc.js → store-locator-Crx8huGH.js} +4 -12
- package/dist/catalog/basket-preview/basket-preview.min.js +8 -8
- package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
- package/dist/drawer-view-swapper/drawer-view-swapper.min.js +4 -4
- package/dist/modal/modal.min.js +4 -4
- package/dist/onboarding/onboarding.css +1 -0
- package/dist/onboarding/onboarding.min.js +41 -0
- package/dist/planner/planner-current-menu/planner-current-menu.css +1 -1
- package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
- package/dist/planner/planner-dashboard/planner-dashboard.css +1 -1
- package/dist/planner/planner-dashboard/planner-dashboard.min.js +1 -1
- package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
- package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -0
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.css +1 -0
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +53 -0
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.css +1 -0
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +17 -0
- package/dist/recipe-card/recipe-card.min.js +1 -1
- package/dist/recipe-details/recipe-details.min.js +29 -29
- package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
- package/dist/slider-tabs/slider-tabs.min.js +1 -1
- package/dist/store-indicator/store-indicator.min.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2017 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
+
*/const l=(r,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(r,t,e),e);/**
|
|
6
|
+
* @license
|
|
7
|
+
* Copyright 2017 Google LLC
|
|
8
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
9
|
+
*/function i(r,t){return(e,n,f)=>{const u=c=>{var o;return((o=c.renderRoot)==null?void 0:o.querySelector(r))??null};return l(e,n,{get(){return u(this)}})}}export{i as e};
|
|
@@ -1,12 +1,4 @@
|
|
|
1
|
-
import{i as
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2017 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
-
*/const f=(t,e,s)=>(s.configurable=!0,s.enumerable=!0,Reflect.decorate&&typeof e!="object"&&Object.defineProperty(t,e,s),s);/**
|
|
6
|
-
* @license
|
|
7
|
-
* Copyright 2017 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
9
|
-
*/function _(t,e){return(s,i,o)=>{const n=d=>{var h;return((h=d.renderRoot)==null?void 0:h.querySelector(t))??null};return f(s,i,{get(){return n(this)}})}}class x{get extId(){return this.attributes["ext-id"]}}var v=Object.defineProperty,w=Object.getOwnPropertyDescriptor,r=(t,e,s,i)=>{for(var o=i>1?void 0:i?w(e,s):e,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(i?d(e,s,o):d(o))||o);return i&&o&&v(e,s,o),o};let l=class extends m{constructor(){var t,e,s,i,o,n;super(...arguments),this.selectedRadius=50,this.getByAddress=(e=(t=c)==null?void 0:t.pos)==null?void 0:e.getByAddress,this.getByCoordinates=(i=(s=c)==null?void 0:s.pos)==null?void 0:i.getByCoordinates,this.getAffiliateSuppliers=(n=(o=c)==null?void 0:o.supplier)==null?void 0:n.getAffiliateSuppliers,this._posList=[],this._markers=[],this._searchingPos=!1,this._searchSubmitted=!1,this._previousSearchMethod=()=>{},this._suppliers=[],this._selectedSuppliers=[],this._showPosList=!1,this._posSelected=!1,this.subscriptions=[]}set geolocationCoordinates(t){var e,s;this._geolocationCoordinates=t,(e=t==null?void 0:t.coords)!=null&&e.latitude&&((s=t==null?void 0:t.coords)!=null&&s.longitude)&&this.setGeolocation()}get geolocationCoordinates(){return this._geolocationCoordinates}_nameOfStore(t){return`${t.supplier.attributes.name} - ${t.attributes.name}`}connectedCallback(){super.connectedCallback(),this.initLeaflet(),this.fetchSuppliers(),this.initEvents()}disconnectedCallback(){this.subscriptions.forEach(t=>t.unsubscribe()),super.disconnectedCallback(),this._leafletCss.remove(),this._miamDs.remove(),this._leafletJs.remove()}render(){if(this.show)return this.posSelectionTemplate()}firstUpdated(){this._posSelected=!1,this.loadMap(),this.geolocationTimeout(),this.listenFormSubmit()}posSelectionTemplate(){return a`
|
|
1
|
+
import{i as h,h as u,a as c,k as a}from"./no-shadow-element-l9trQfcI.js";import{t as m}from"./custom-element-BhZVzxrc.js";import{n as p}from"./property-leIVgCvV.js";import{r as g}from"./state-CccUMzBZ.js";import{e as b}from"./query-BApjzB0v.js";class f{get extId(){return this.attributes["ext-id"]}}var _=Object.defineProperty,x=Object.getOwnPropertyDescriptor,r=(t,e,s,i)=>{for(var o=i>1?void 0:i?x(e,s):e,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(i?d(e,s,o):d(o))||o);return i&&o&&_(e,s,o),o};let l=class extends u{constructor(){var t,e,s,i,o,n;super(...arguments),this.selectedRadius=50,this.getByAddress=(e=(t=c)==null?void 0:t.pos)==null?void 0:e.getByAddress,this.getByCoordinates=(i=(s=c)==null?void 0:s.pos)==null?void 0:i.getByCoordinates,this.getAffiliateSuppliers=(n=(o=c)==null?void 0:o.supplier)==null?void 0:n.getAffiliateSuppliers,this._posList=[],this._markers=[],this._searchingPos=!1,this._searchSubmitted=!1,this._previousSearchMethod=()=>{},this._suppliers=[],this._selectedSuppliers=[],this._showPosList=!1,this._posSelected=!1,this.subscriptions=[]}set geolocationCoordinates(t){var e,s;this._geolocationCoordinates=t,(e=t==null?void 0:t.coords)!=null&&e.latitude&&((s=t==null?void 0:t.coords)!=null&&s.longitude)&&this.setGeolocation()}get geolocationCoordinates(){return this._geolocationCoordinates}_nameOfStore(t){return`${t.supplier.attributes.name} - ${t.attributes.name}`}connectedCallback(){super.connectedCallback(),this.initLeaflet(),this.fetchSuppliers(),this.initEvents()}disconnectedCallback(){this.subscriptions.forEach(t=>t.unsubscribe()),super.disconnectedCallback(),this._leafletCss.remove(),this._miamDs.remove(),this._leafletJs.remove()}render(){if(this.show)return this.posSelectionTemplate()}firstUpdated(){this._posSelected=!1,this.loadMap(),this.geolocationTimeout(),this.listenFormSubmit()}posSelectionTemplate(){return a`
|
|
10
2
|
<div class="wrapper mealz-ds-body">
|
|
11
3
|
<div class="pos-selection">
|
|
12
4
|
<div class="title">
|
|
@@ -85,7 +77,7 @@ import{i as u,h as m,a as c,k as a}from"./no-shadow-element-l9trQfcI.js";import{
|
|
|
85
77
|
</div>
|
|
86
78
|
`)}
|
|
87
79
|
</div>
|
|
88
|
-
`}getButtonLabel(){if(this._showPosList)return"Voir la carte";const t=this._posList.length;return t===1?"Voir le magasin":`Voir les ${t} magasins`}setAddress(t=!1){!this._addressInput.value||this._addressInput.value.length<3||this._searchingPos||!t&&this._prevAddress===this._addressInput.value+", France"||(this._previousSearchMethod=this.setAddress,this._prevAddress=this._addressInput.value+", France",this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByAddress(this._prevAddress,this.selectedRadius,this._selectedSuppliers).subscribe(e=>{this.setPosList(e),this.setNewLocation(),this.dispatchSearch(this._prevAddress,e.data.length),this._searchingPos=!1,this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()})))}setGeolocation(){this._prevAddress="",this._previousSearchMethod=this.setGeolocation,this.getPosByCoordinates()}getPosByCoordinates(){this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByCoordinates(this.geolocationCoordinates.coords.latitude,this.geolocationCoordinates.coords.longitude,this.selectedRadius,this._selectedSuppliers).subscribe(t=>{this._addressInput.value="",this.setPosList(t),this._searchingPos=!1,this.setNewLocation(),this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()}))}setPosList(t){this._posList=t.data.map(e=>{const s=Object.assign(new
|
|
80
|
+
`}getButtonLabel(){if(this._showPosList)return"Voir la carte";const t=this._posList.length;return t===1?"Voir le magasin":`Voir les ${t} magasins`}setAddress(t=!1){!this._addressInput.value||this._addressInput.value.length<3||this._searchingPos||!t&&this._prevAddress===this._addressInput.value+", France"||(this._previousSearchMethod=this.setAddress,this._prevAddress=this._addressInput.value+", France",this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByAddress(this._prevAddress,this.selectedRadius,this._selectedSuppliers).subscribe(e=>{this.setPosList(e),this.setNewLocation(),this.dispatchSearch(this._prevAddress,e.data.length),this._searchingPos=!1,this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()})))}setGeolocation(){this._prevAddress="",this._previousSearchMethod=this.setGeolocation,this.getPosByCoordinates()}getPosByCoordinates(){this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByCoordinates(this.geolocationCoordinates.coords.latitude,this.geolocationCoordinates.coords.longitude,this.selectedRadius,this._selectedSuppliers).subscribe(t=>{this._addressInput.value="",this.setPosList(t),this._searchingPos=!1,this.setNewLocation(),this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()}))}setPosList(t){this._posList=t.data.map(e=>{const s=Object.assign(new f,e);return s.supplier=t.included.find(i=>i.id===s.relationships.supplier.data.id),s}).sort((e,s)=>e.attributes.name.includes("onoprix")?-1:s.attributes.name.includes("onoprix")?1:0)}dispatchPos(t){this._posSelected=!0,this.requestUpdate();const e={detail:{posId:t.id,posExtId:t.extId,supplierId:t.supplier.id,supplierName:t.supplier.attributes.name,posName:this._nameOfStore(t)},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("posIdChange",e))}dispatchShow(t){const e={detail:{show:t},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("showChange",e))}dispatchSearch(t,e){const s={detail:{searchTerm:t,storesFoundCount:e},bubbles:!0,composed:!0};console.debug("[MealzComponents] dispatchEvent searchChange",s),this.dispatchEvent(new CustomEvent("searchChange",s))}initLeaflet(){this._leafletCss=document.createElement("link"),this._leafletCss.setAttribute("rel","stylesheet"),this._leafletCss.setAttribute("href","https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"),this._leafletCss.setAttribute("integrity","sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="),this._leafletCss.setAttribute("crossorigin",""),this._leafletJs=document.createElement("script"),this._leafletJs.setAttribute("src","https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"),this._leafletJs.setAttribute("integrity","sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo="),this._leafletJs.setAttribute("crossorigin",""),this._miamDs=document.createElement("link"),this._miamDs.setAttribute("rel","stylesheet"),this._miamDs.setAttribute("href","https://unpkg.com/mealz-ds@2.0.0/mealz-ds.min.css"),this.shadowRoot.appendChild(this._miamDs),this.shadowRoot.appendChild(this._leafletCss),document.head.appendChild(this._leafletJs)}waitForLeaflet(t){let i=50;console.debug("[Map] Checking for window.L");const o=setInterval(()=>{window.L!==void 0||i===0?(clearInterval(o),window.L!==void 0?(console.debug("[Map] window.L is defined"),t(!0)):(console.error("[Map] Failed to load Leaflet after",5e3,"ms"),t(!1))):i--},100)}initMap(){this._map&&(this._map.off(),this._map.remove()),this.setNewLocation(),window.L.tileLayer("https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png",{maxZoom:19,attribution:"Map tiles by Carto, under CC BY 3.0. Data by OpenStreetMap, under ODbL."}).addTo(this._map)}loadMap(){this.waitForLeaflet(t=>{t&&this.initMap()})}initEvents(){this._filterEvent=new CustomEvent("filterChange",{detail:{supplierName:""},bubbles:!0,composed:!0})}fetchSuppliers(){this.subscriptions.push(this.getAffiliateSuppliers().subscribe(t=>{this._suppliers=t.map(e=>({id:e.id,name:e.attributes.name})),this.requestUpdate()}))}setNewLocation(){var e;const t=this.shadowRoot.getElementById("map");t&&(this._map?(this._markers.forEach(s=>{this._map.removeLayer(s)}),this._markers=[],this._map.panTo(this.getCoordinates())):this._map=(e=window.L)==null?void 0:e.map(t).setView(this.getCoordinates(),13),this.addMarkers())}getCoordinates(){return this._posList.length<1?[48.866667,2.333333]:[this._posList[0].attributes.latitude,this._posList[0].attributes.longitude]}addMarkers(){this._posList.length>0&&this._posList.forEach((t,e)=>{this._markers.push(window.L.marker([t.attributes.latitude,t.attributes.longitude],{icon:this.buildIcon(t.supplier)}).addTo(this._map));const s=window.L.popup({content:`
|
|
89
81
|
<div class="pos-item">
|
|
90
82
|
<div class="top">
|
|
91
83
|
<img class="pos-img" src="${t.supplier.attributes.logo}" alt="${t.supplier.attributes.name}"/>
|
|
@@ -98,7 +90,7 @@ import{i as u,h as m,a as c,k as a}from"./no-shadow-element-l9trQfcI.js";import{
|
|
|
98
90
|
<button id="select" class="mealz-ds-button primary select-pos-button">Sélectionner</button>
|
|
99
91
|
</div>
|
|
100
92
|
</div>
|
|
101
|
-
`});this._markers[e].bindPopup(s).on("popupopen",i=>{i.target.getPopup().getElement().querySelector("#select").addEventListener("click",()=>{this.dispatchPos(t)})})})}buildIcon(t){return window.L.icon({iconUrl:t.attributes.logo||"https://cdn-icons-png.flaticon.com/512/3515/3515146.png",shadowUrl:"https://storage.googleapis.com/assets.miam.tech/mealz-components/store-locator/marker.svg",iconSize:[32,32],shadowSize:[44,53],iconAnchor:[16,45],shadowAnchor:[22,45],popupAnchor:[0,-55]})}togglePosList(t){this._showPosList=!t;const e=this.shadowRoot.getElementById("pos-list"),s={bubbles:!0,composed:!0};e&&(t?(e.style.display="none",this.dispatchEvent(new CustomEvent("mapSelected",s))):(e.style.display="flex",this.dispatchEvent(new CustomEvent("listSelected",s))),this.requestUpdate())}geolocationTimeout(){setTimeout(()=>{this.geolocationCoordinates===void 0&&(this.geolocationCoordinates={})},2e4)}listenFormSubmit(){this.shadowRoot.getElementById("store-locator-form").addEventListener("submit",e=>{e.preventDefault(),this.setAddress()})}};l.styles=[
|
|
93
|
+
`});this._markers[e].bindPopup(s).on("popupopen",i=>{i.target.getPopup().getElement().querySelector("#select").addEventListener("click",()=>{this.dispatchPos(t)})})})}buildIcon(t){return window.L.icon({iconUrl:t.attributes.logo||"https://cdn-icons-png.flaticon.com/512/3515/3515146.png",shadowUrl:"https://storage.googleapis.com/assets.miam.tech/mealz-components/store-locator/marker.svg",iconSize:[32,32],shadowSize:[44,53],iconAnchor:[16,45],shadowAnchor:[22,45],popupAnchor:[0,-55]})}togglePosList(t){this._showPosList=!t;const e=this.shadowRoot.getElementById("pos-list"),s={bubbles:!0,composed:!0};e&&(t?(e.style.display="none",this.dispatchEvent(new CustomEvent("mapSelected",s))):(e.style.display="flex",this.dispatchEvent(new CustomEvent("listSelected",s))),this.requestUpdate())}geolocationTimeout(){setTimeout(()=>{this.geolocationCoordinates===void 0&&(this.geolocationCoordinates={})},2e4)}listenFormSubmit(){this.shadowRoot.getElementById("store-locator-form").addEventListener("submit",e=>{e.preventDefault(),this.setAddress()})}};l.styles=[h`
|
|
102
94
|
:host {
|
|
103
95
|
display: block;
|
|
104
96
|
height: 100%;
|
|
@@ -405,4 +397,4 @@ import{i as u,h as m,a as c,k as a}from"./no-shadow-element-l9trQfcI.js";import{
|
|
|
405
397
|
top: 0;
|
|
406
398
|
}
|
|
407
399
|
}
|
|
408
|
-
`];r([p({type:Boolean})],l.prototype,"show",2);r([p({type:Number})],l.prototype,"selectedRadius",2);r([p({type:GeolocationPosition})],l.prototype,"geolocationCoordinates",1);r([p()],l.prototype,"getByAddress",2);r([p()],l.prototype,"getByCoordinates",2);r([p()],l.prototype,"getAffiliateSuppliers",2);r([
|
|
400
|
+
`];r([p({type:Boolean})],l.prototype,"show",2);r([p({type:Number})],l.prototype,"selectedRadius",2);r([p({type:GeolocationPosition})],l.prototype,"geolocationCoordinates",1);r([p()],l.prototype,"getByAddress",2);r([p()],l.prototype,"getByCoordinates",2);r([p()],l.prototype,"getAffiliateSuppliers",2);r([g()],l.prototype,"_geolocationCoordinates",2);r([b("input")],l.prototype,"_addressInput",2);l=r([m("mealz-store-locator")],l);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../../assets/store-locator-
|
|
1
|
+
import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../../assets/store-locator-Crx8huGH.js";import{N as R,k as l,m as d,D as k,a as U,s as O,R as D}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as x}from"../../assets/custom-element-BhZVzxrc.js";import{n as E}from"../../assets/property-leIVgCvV.js";import"../../counter/counter.min.js";import"../../price/price.min.js";import"../../modal/modal.min.js";import{P as N}from"../../assets/price-BoM226Kw.js";import{c as M}from"../../assets/capitalize-DUAqYmp4.js";import{e as q,i as L,t as V}from"../../assets/unsafe-html-CmALAWuN.js";import{d as F}from"../../assets/delay-ILvLVH1b.js";import"../../assets/state-CccUMzBZ.js";import"../../assets/query-BApjzB0v.js";import"../../assets/debounceTime-Bo5F3ux-.js";import"../../assets/async-D3oCs_PQ.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../assets/take-DO4w5a1Y.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/map-C4rf5Jbc.js";import"../../assets/mergeMap-buGewtOo.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../assets/executeSchedule-DfyZaGAH.js";import"../../assets/timer-BOl4bYNY.js";var j=Object.defineProperty,H=Object.getOwnPropertyDescriptor,B=(e,t,i,a)=>{for(var s=a>1?void 0:a?H(t,i):t,n=e.length-1,r;n>=0;n--)(r=e[n])&&(s=(a?r(t,i,s):r(s))||s);return a&&s&&j(t,i,s),s};let g=class extends R{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">Besoin de quelque chose en particulier ?</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(),d.productAddition.open()}sendbasketEntryAddEvent(){d.analytics.sendEvent("basket.entry.add",this.analyticsPath,{})}};B([E({type:String})],g.prototype,"analyticsPath",2);g=B([x("mealz-product-addition")],g);customElements.get("mealz-product-addition")||customElements.define("mealz-product-addition",g);var G=Object.defineProperty,K=Object.getOwnPropertyDescriptor,f=(e,t,a
|
|
9
|
+
`}openProductAdditionModal(){this.sendbasketEntryAddEvent(),d.productAddition.open()}sendbasketEntryAddEvent(){d.analytics.sendEvent("basket.entry.add",this.analyticsPath,{})}};B([E({type:String})],g.prototype,"analyticsPath",2);g=B([x("mealz-product-addition")],g);customElements.get("mealz-product-addition")||customElements.define("mealz-product-addition",g);var G=Object.defineProperty,K=Object.getOwnPropertyDescriptor,f=(e,t,i,a)=>{for(var s=a>1?void 0:a?K(t,i):t,n=e.length-1,r;n>=0;n--)(r=e[n])&&(s=(a?r(t,i,s):r(s))||s);return a&&s&&G(t,i,s),s};let z=class extends R{constructor(){super(),this.analyticsPath="",this.loading=!1,this.isRecipeModalDisplayed=!1,this.priceService=N.getInstance(),this.styleURL=new URL("./catalog/basket-preview/basket-preview-product/basket-preview-product.css",this.getBaseURL())}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>
|
|
@@ -107,11 +107,11 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
107
107
|
* @license
|
|
108
108
|
* Copyright 2020 Google LLC
|
|
109
109
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
110
|
-
*/const{I:Q}=O,S=()=>document.createComment(""),w=(e,t,
|
|
110
|
+
*/const{I:Q}=O,S=()=>document.createComment(""),w=(e,t,i)=>{var n;const a=e._$AA.parentNode,s=t===void 0?e._$AB:t._$AA;if(i===void 0){const r=a.insertBefore(S(),s),p=a.insertBefore(S(),s);i=new Q(r,p,e,e.options)}else{const r=i._$AB.nextSibling,p=i._$AM,m=p!==e;if(m){let b;(n=i._$AQ)==null||n.call(i,e),i._$AM=e,i._$AP!==void 0&&(b=e._$AU)!==p._$AU&&i._$AP(b)}if(r!==s||m){let b=i._$AA;for(;b!==r;){const y=b.nextSibling;a.insertBefore(b,s),b=y}}}return i},_=(e,t,i=e)=>(e._$AI(t,i),e),W={},J=(e,t=W)=>e._$AH=t,Y=e=>e._$AH,P=e=>{var a;(a=e._$AP)==null||a.call(e,!1,!0);let t=e._$AA;const i=e._$AB.nextSibling;for(;t!==i;){const s=t.nextSibling;t.remove(),t=s}};/**
|
|
111
111
|
* @license
|
|
112
112
|
* Copyright 2017 Google LLC
|
|
113
113
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
114
|
-
*/const T=(e,t,
|
|
114
|
+
*/const T=(e,t,i)=>{const a=new Map;for(let s=t;s<=i;s++)a.set(e[s],s);return a},Z=q(class extends L{constructor(e){if(super(e),e.type!==V.CHILD)throw Error("repeat() can only be used in text expressions")}dt(e,t,i){let a;i===void 0?i=t:t!==void 0&&(a=t);const s=[],n=[];let r=0;for(const p of e)s[r]=a?a(p,r):r,n[r]=i(p,r),r++;return{values:n,keys:s}}render(e,t,i){return this.dt(e,t,i).values}update(e,[t,i,a]){const s=Y(e),{values:n,keys:r}=this.dt(t,i,a);if(!Array.isArray(s))return this.ut=r,n;const p=this.ut??(this.ut=[]),m=[];let b,y,c=0,u=s.length-1,o=0,h=n.length-1;for(;c<=u&&o<=h;)if(s[c]===null)c++;else if(s[u]===null)u--;else if(p[c]===r[o])m[o]=_(s[c],n[o]),c++,o++;else if(p[u]===r[h])m[h]=_(s[u],n[h]),u--,h--;else if(p[c]===r[h])m[h]=_(s[c],n[h]),w(e,m[h+1],s[c]),c++,h--;else if(p[u]===r[o])m[o]=_(s[u],n[o]),w(e,s[c],s[u]),u--,o++;else if(b===void 0&&(b=T(r,o,h),y=T(p,c,u)),b.has(p[c]))if(b.has(p[u])){const v=y.get(r[o]),$=v!==void 0?s[v]:null;if($===null){const C=w(e,s[c]);_(C,n[o]),m[o]=C}else m[o]=_($,n[o]),w(e,s[c],$),s[v]=null;o++}else P(s[u]),u--;else P(s[c]),c++;for(;o<=h;){const v=w(e,m[h+1]);_(v,n[o]),m[o++]=v}for(;c<=u;){const v=s[c++];v!==null&&P(v)}return this.ut=r,J(e,m),D}}),A={isRecipeDetailsVisible:{paramName:"displayRecipe",getValue:()=>{var t;const e=d.recipes.displayedRecipe$.value;return((t=e==null?void 0:e.recipe)==null?void 0:t.id)||null},openDrawer:e=>{d.recipes.openDetails(e)}},isBasketPreviewVisible:{paramName:"myMeals",getValue:()=>{const{activeTabIndex:e}=d.basket.basketPreviewState$.getValue();return e===1?"products":"recipes"},openDrawer:e=>{d.basket.basketPreviewState$.next({isOpen:!0,activeTabIndex:e==="products"?1:0})}}};function X(){return Object.values(A).map(e=>e.paramName)}function Re(){const e=new URL(window.location.href);for(const t of Object.values(A)){const i=e.searchParams.get(t.paramName);if(i&&t.openDrawer){t.openDrawer(i);return}}}function xe(e){e.subscribe(t=>{const i=new URL(window.location.href);X().forEach(s=>{i.searchParams.delete(s)});const a=A[t];if(a){const s=a.getValue();s&&i.searchParams.set(a.paramName,s)}window.history.replaceState({},"",i.toString())})}function ee(e){const t=new URL(window.location.href);t.searchParams.delete("myMeals"),e===0?t.searchParams.append("myMeals","recipes"):e===1&&t.searchParams.append("myMeals","products"),window.history.replaceState({},"",t.toString())}var te=Object.getOwnPropertyDescriptor,se=(e,t,i,a)=>{for(var s=a>1?void 0:a?te(t,i):t,n=e.length-1,r;n>=0;n--)(r=e[n])&&(s=r(s)||s);return s};let I=class extends R{constructor(){super(),this.priceService=N.getInstance(),this.subscriptions=[],this.recipePrices=[],this.recipePreviews=[],this.products=[],this.tabs=["Recettes","Produits"],this.selectedTabIndex=0,this.analyticsPath="/basket/recipes",this.drawerStoreIndicator=null,this.styleURL=new URL("./catalog/basket-preview/basket-preview.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.pageview(),this.listenToActiveTab(),this.listenToCloseEvent(),this.priceService.initFormatter(),this.noSupplier=d.supplier.isNoSupplier(),this.noSupplier&&this.appendStoreIndicatorToDrawerHeader(),this.updateRecipeView(),this.subscriptions.push(U.basket.recipeCount().subscribe(e=>{this.recipesCount=e,this.requestUpdate()}),d.basket.entries$().subscribe(e=>{this.products=e.filter(t=>t.attributes.status==="active"),this.requestUpdate()}),d.productAddition.productAdded$.pipe(F(200)).subscribe(e=>{this.selectedTabIndex=1,setTimeout(()=>this.scrollToAddedProduct(e),0),this.requestUpdate()}),d.basket.recipePricesInBasket$().subscribe(e=>{this.recipePrices=e,this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}updated(){this.drawerStoreIndicator&&this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath)}render(){return l`
|
|
115
115
|
<div class="mealz-basket-preview">
|
|
116
116
|
${this.renderNbrMealsInBasket()}
|
|
117
117
|
${this.noSupplier||d.basket.displayProductsInBasket()?l`
|
|
@@ -137,10 +137,10 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
137
137
|
<div class="mealz-basket-preview__products">
|
|
138
138
|
${Z(this.products,e=>e.id,(e,t)=>this.renderProductCard(e,t===this.products.length-1))}
|
|
139
139
|
</div>
|
|
140
|
-
`}renderProductCard(e,t=!1){if(e.selectedItem){const
|
|
140
|
+
`}renderProductCard(e,t=!1){if(e.selectedItem){const i=this.recipePreviews.reduce((a,s)=>(e.recipesIds.includes(+s.id)&&a.push(s.title),a),[]);return l`
|
|
141
141
|
<mealz-basket-preview-product
|
|
142
142
|
.basketEntry=${e}
|
|
143
|
-
.recipeNames=${
|
|
143
|
+
.recipeNames=${i}
|
|
144
144
|
.analyticsPath=${this.analyticsPath}
|
|
145
145
|
></mealz-basket-preview-product>
|
|
146
146
|
${t?k:l`
|
|
@@ -194,7 +194,7 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
194
194
|
</div>
|
|
195
195
|
</div>
|
|
196
196
|
</div>
|
|
197
|
-
`}calculateTotalPrice(){var e;return(e=this.recipePrices)==null?void 0:e.reduce((t,
|
|
197
|
+
`}calculateTotalPrice(){var e;return(e=this.recipePrices)==null?void 0:e.reduce((t,i)=>t+ +i.price,0)}renderPlaceOrderFooter(){return l`
|
|
198
198
|
<div class="mealz-basket-preview__footer mealz-basket-preview__place-order-footer">
|
|
199
199
|
<div class="mealz-basket-preview__basket-price">
|
|
200
200
|
<span class="mealz-basket-preview__basket-price-label mealz-ds-text weight-xl size-l">
|
|
@@ -225,4 +225,4 @@ import"../../store-indicator/store-indicator.min.js";import"../../slider-tabs/sl
|
|
|
225
225
|
panier
|
|
226
226
|
</h2>
|
|
227
227
|
</div>
|
|
228
|
-
`}appendStoreIndicatorToDrawerHeader(){const e=document.querySelector("mealz-drawer"),t=document.querySelector("mealz-store-indicator");!e||t||(this.drawerStoreIndicator=document.createElement("mealz-store-indicator"),this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath),e.appendToHeaderComponent(this.drawerStoreIndicator))}placeOrder(){d.basket.transfer()}recipeCardClick(e){d.recipes.openDetails(e.id,e.guests,this.analyticsPath)}removeRecipeClick(e){e.isGettingRemoved=!0,this.requestUpdate(),d.basket.removeRecipe(e.id,this.analyticsPath).subscribe(()=>{e.isGettingRemoved=!1,this.recipePreviews=this.recipePreviews.filter(t=>t.id!==e.id),this.requestUpdate()})}updateTabIndex(e){this.selectedTabIndex=e,ee(e),this.selectedTabIndex===0?(this.analyticsPath="/basket/recipes",this.updateRecipeView(),this.pageview()):(this.analyticsPath="/basket/products",this.pageview()),this.requestUpdate()}updateRecipeView(){this.subscriptions.push(d.basket.buildPreview().subscribe(e=>{e.map(t=>t.isGettingRemoved=!1),this.recipePreviews=e,this.requestUpdate()}))}scrollToAddedProduct(e){var
|
|
228
|
+
`}appendStoreIndicatorToDrawerHeader(){const e=document.querySelector("mealz-drawer"),t=document.querySelector("mealz-store-indicator");!e||t||(this.drawerStoreIndicator=document.createElement("mealz-store-indicator"),this.drawerStoreIndicator.setAttribute("analyticsPath",this.analyticsPath),e.appendToHeaderComponent(this.drawerStoreIndicator))}placeOrder(){d.basket.transfer()}recipeCardClick(e){d.recipes.openDetails(e.id,e.guests,this.analyticsPath)}removeRecipeClick(e){e.isGettingRemoved=!0,this.requestUpdate(),d.basket.removeRecipe(e.id,this.analyticsPath).subscribe(()=>{e.isGettingRemoved=!1,this.recipePreviews=this.recipePreviews.filter(t=>t.id!==e.id),this.requestUpdate()})}updateTabIndex(e){this.selectedTabIndex=e,ee(e),this.selectedTabIndex===0?(this.analyticsPath="/basket/recipes",this.updateRecipeView(),this.pageview()):(this.analyticsPath="/basket/products",this.pageview()),this.requestUpdate()}updateRecipeView(){this.subscriptions.push(d.basket.buildPreview().subscribe(e=>{e.map(t=>t.isGettingRemoved=!1),this.recipePreviews=e,this.requestUpdate()}))}scrollToAddedProduct(e){var i;const t=document.querySelector(`#mealz-basket-preview-product-${e}`);if(t)t.scrollIntoView({block:"center",behavior:"smooth"});else{const a=this.getElementsByTagName("MEALZ-BASKET-PREVIEW-PRODUCT");(i=a.item(a.length-1))==null||i.scrollIntoView({block:"center",behavior:"smooth"})}}listenToActiveTab(){this.subscriptions.push(d.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()||d.analytics.sendEvent("pageview",this.analyticsPath,{})}sendCloseEvent(){this.isHidden()||d.analytics.sendEvent("basket.close",this.analyticsPath,{})}};I=se([x("mealz-basket-preview")],I);customElements.get("mealz-basket-preview")||customElements.define("mealz-basket-preview",I);export{xe as l,Re as o};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../basket-preview/basket-preview.min.js";import"../../drawer-view-swapper/drawer-view-swapper.min.js";import{N as n,m}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as l}from"../../assets/custom-element-BhZVzxrc.js";import"../../store-indicator/store-indicator.min.js";import"../../assets/store-locator-
|
|
1
|
+
import"../basket-preview/basket-preview.min.js";import"../../drawer-view-swapper/drawer-view-swapper.min.js";import{N as n,m}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as l}from"../../assets/custom-element-BhZVzxrc.js";import"../../store-indicator/store-indicator.min.js";import"../../assets/store-locator-Crx8huGH.js";import"../../assets/property-leIVgCvV.js";import"../../assets/state-CccUMzBZ.js";import"../../assets/query-BApjzB0v.js";import"../../slider-tabs/slider-tabs.min.js";import"../../counter/counter.min.js";import"../../assets/debounceTime-Bo5F3ux-.js";import"../../assets/async-D3oCs_PQ.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../price/price.min.js";import"../../assets/price-BoM226Kw.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-CmALAWuN.js";import"../../assets/capitalize-DUAqYmp4.js";import"../../assets/delay-ILvLVH1b.js";import"../../assets/take-DO4w5a1Y.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/map-C4rf5Jbc.js";import"../../assets/mergeMap-buGewtOo.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../assets/executeSchedule-DfyZaGAH.js";import"../../assets/timer-BOl4bYNY.js";import"../../drawer/drawer.min.js";import"../../store-locator-drawer/store-locator-drawer.min.js";import"../../assets/skipWhile-DuMEda_n.js";import"../../assets/switchMap-D8q0hRYH.js";import"../../recipe-details/recipe-details.min.js";import"../../recipe-pricing/recipe-pricing.min.js";import"../../assets/filter-CEeE8t7I.js";import"../../assets/combineLatest-P4GAEtOW.js";import"../../assets/from-jBe2xW5a.js";import"../../assets/mapOneOrManyArgs-DNd_tswl.js";import"../../assets/of-BTA69Qgj.js";import"../../assets/tap-BCGrRktL.js";import"../../assets/recipe-BwGs-blm.js";import"../../assets/merge-C-u9uFzU.js";import"../../assets/product-card-DqcKyf1c.js";import"../../assets/promotion-badge-BwN2GpDz.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"../../last-order-modal/last-order-modal.min.js";import"../../planner/planner-onboarding/planner-onboarding.min.js";import"../../onboarding/onboarding.min.js";import"../../planner/planner-catalog/planner-catalog.min.js";import"../catalog-load-more.min.js";import"../../assets/http-aOzufNsj.js";import"../../replace-item/replace-item.min.js";import"../../replace-item/replace-item-card/replace-item-card.min.js";import"../../assets/price-utils-BRFZa-3D.js";import"../../assets/distinctUntilChanged-BkBiB4M3.js";import"../../replace-item-planner/replace-item-planner.min.js";import"../../replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js";import"../../history-drawer/history-drawer.min.js";var c=Object.getOwnPropertyDescriptor,u=(t,i,r,s)=>{for(var e=s>1?void 0:s?c(i,r):i,o=t.length-1,p;o>=0;o--)(p=t[o])&&(e=p(e)||e);return e};let a=class extends n{constructor(){super(...arguments),this.analyticsPath="",this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.subscriptions.push(mealz.basket.recipeCount().subscribe(t=>{this.recipesCount=t,this.updateDOM()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(t=>t.unsubscribe())}render(){var i;if(this.button=this.querySelector(".mealz-my-meals-button"),!this.button)return;const t=(i=this.attributes["starting-data"])==null?void 0:i.value;if(t){const{path:r}=JSON.parse(t);this.analyticsPath=r,this.removeAttribute("starting-data")}this.button.addEventListener("click",r=>{r.stopPropagation(),this.toggleBasketPreview()})}toggleBasketPreview(){this.sendBasketDisplayEvent(),m.basket.basketPreviewState$.next({isOpen:!0})}updateDOM(){var i;if(!this.button)return;this.recipesCount?this.button.classList.remove("hidden"):this.button.classList.add("hidden");const t=(i=this.button.querySelector(".mealz-my-meals-button__text"))==null?void 0:i.firstElementChild;t&&(t.innerHTML=`${this.recipesCount||0}`)}sendBasketDisplayEvent(){m.analytics.sendEvent("basket.display",this.analyticsPath,{})}};a=u([l("mealz-my-meals-button")],a);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-drawer.min.js";import{N as w,D as d,k as t,m as n,B as c,w as z}from"../assets/no-shadow-element-l9trQfcI.js";import{t as v}from"../assets/custom-element-BhZVzxrc.js";import{n as g}from"../assets/property-leIVgCvV.js";import"../recipe-details/recipe-details.min.js";import"../assets/store-locator-
|
|
1
|
+
import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-drawer.min.js";import{N as w,D as d,k as t,m as n,B as c,w as z}from"../assets/no-shadow-element-l9trQfcI.js";import{t as v}from"../assets/custom-element-BhZVzxrc.js";import{n as g}from"../assets/property-leIVgCvV.js";import"../recipe-details/recipe-details.min.js";import"../assets/store-locator-Crx8huGH.js";import"../planner/planner-catalog/planner-catalog.min.js";import"../replace-item/replace-item.min.js";import"../replace-item-planner/replace-item-planner.min.js";import"../history-drawer/history-drawer.min.js";import{o as k,l as R}from"../catalog/basket-preview/basket-preview.min.js";import{m as f}from"../assets/merge-C-u9uFzU.js";import{m as p}from"../assets/map-C4rf5Jbc.js";import"../assets/unsafe-html-CmALAWuN.js";import"../assets/state-CccUMzBZ.js";import"../assets/skipWhile-DuMEda_n.js";import"../assets/OperatorSubscriber-EGuECN6g.js";import"../assets/switchMap-D8q0hRYH.js";import"../assets/innerFrom-CfKCbnvr.js";import"../recipe-pricing/recipe-pricing.min.js";import"../assets/filter-CEeE8t7I.js";import"../assets/combineLatest-P4GAEtOW.js";import"../assets/from-jBe2xW5a.js";import"../assets/executeSchedule-DfyZaGAH.js";import"../assets/mapOneOrManyArgs-DNd_tswl.js";import"../assets/of-BTA69Qgj.js";import"../assets/take-DO4w5a1Y.js";import"../assets/empty-Cv-4tfKR.js";import"../assets/tap-BCGrRktL.js";import"../assets/price-BoM226Kw.js";import"../assets/recipe-BwGs-blm.js";import"../assets/capitalize-DUAqYmp4.js";import"../counter/counter.min.js";import"../assets/debounceTime-Bo5F3ux-.js";import"../assets/async-D3oCs_PQ.js";import"../assets/product-card-DqcKyf1c.js";import"../price/price.min.js";import"../assets/promotion-badge-BwN2GpDz.js";import"../assets/delay-ILvLVH1b.js";import"../assets/mergeMap-buGewtOo.js";import"../assets/timer-BOl4bYNY.js";import"../store-indicator/store-indicator.min.js";import"../assets/query-BApjzB0v.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"../last-order-modal/last-order-modal.min.js";import"../planner/planner-onboarding/planner-onboarding.min.js";import"../onboarding/onboarding.min.js";import"../catalog/catalog-load-more.min.js";import"../assets/http-aOzufNsj.js";import"../replace-item/replace-item-card/replace-item-card.min.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/distinctUntilChanged-BkBiB4M3.js";import"../replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js";import"../slider-tabs/slider-tabs.min.js";import"../modal/modal.min.js";var C=Object.defineProperty,S=Object.getOwnPropertyDescriptor,V=(e,s,r,o)=>{for(var i=o>1?void 0:o?S(s,r):s,a=e.length-1,l;a>=0;a--)(l=e[a])&&(i=(o?l(s,r,i):l(i))||i);return o&&i&&C(s,r,i),i};let m=class extends w{constructor(){super(),this.styleURL=new URL("./recipe-details/sponsor-block/sponsor-block.css",this.getBaseURL())}render(){var b,$,y;if(!this.sponsorBlock)return d;const{pictureUrl:e,content:s,backgroundColor:r="#FFFFFF",fontSize:o=16,fontColor:i="#000000"}=this.sponsorBlock,a=(y=($=(b=this.sponsorBlock.relationships)==null?void 0:b["sponsor-block-type"])==null?void 0:$.data)==null?void 0:y.name;if(!a)return t``;const l=a.toLowerCase(),h=`background-color: ${r}; font-size: ${o}px; color: ${i};`;switch(a){case"TEXT":case"SMALL_TEXT":case"TITLE":case"SMALL_TITLE":return t`
|
|
2
2
|
<div class="sponsor-text-blocks sponsor-${l}-block" style="background-color: ${r};">
|
|
3
|
-
<span class="sponsor-${l}-block__text" style="font-size: ${
|
|
3
|
+
<span class="sponsor-${l}-block__text" style="font-size: ${a.includes("TITLE")?32:16}px; color: ${i};">
|
|
4
4
|
${s}
|
|
5
5
|
</span>
|
|
6
6
|
</div>`;case"LOGO":case"PICTURE":case"SMALL_PICTURE":return t`
|
|
@@ -23,7 +23,7 @@ import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-dra
|
|
|
23
23
|
${s}
|
|
24
24
|
</span>
|
|
25
25
|
<img class="sponsor-text-and-image-block__image" src="${e}">
|
|
26
|
-
</div>`;default:return d}}};V([g()],m.prototype,"sponsorBlock",2);m=V([v("mealz-sponsor-block")],m);customElements.get("mealz-sponsor-block")||customElements.define("mealz-sponsor-storytelling",m);var D=Object.getOwnPropertyDescriptor,I=(e,s,r,
|
|
26
|
+
</div>`;default:return d}}};V([g()],m.prototype,"sponsorBlock",2);m=V([v("mealz-sponsor-block")],m);customElements.get("mealz-sponsor-block")||customElements.define("mealz-sponsor-storytelling",m);var D=Object.getOwnPropertyDescriptor,I=(e,s,r,o)=>{for(var i=o>1?void 0:o?D(s,r):s,a=e.length-1,l;a>=0;a--)(l=e[a])&&(i=l(i)||i);return i};let P=class extends w{constructor(){super(),this.sponsorBlocks=[],this.subscriptions=[],this.styleURL=new URL("./recipe-details/recipe-addon/recipe-addon.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.listenToCloseEvent(),this.subscriptions.push(n.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.getSponsorBlocks())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}getSponsorBlocks(){var s,r;const e=(r=(s=this.recipe.relationships)==null?void 0:s.sponsors)==null?void 0:r.data[0];e&&this.subscriptions.push(n.sponsor.getSponsorBlocks(e.id).subscribe(o=>{o&&(this.sponsorBlocks=o,this.requestUpdate())}))}render(){var e;return t`
|
|
27
27
|
<div class="mealz-recipe-addon">
|
|
28
28
|
<div class="mealz-recipe-addon__header">
|
|
29
29
|
<button class="mealz-recipe-addon__header-back-button mealz-ds-button ghost" @click="${this.closeRecipeAddon}">
|
|
@@ -46,7 +46,7 @@ import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-dra
|
|
|
46
46
|
${this.sponsorBlocks.map(r=>t`
|
|
47
47
|
<mealz-sponsor-block .sponsorBlock=${r}></mealz-sponsor-block>
|
|
48
48
|
`)}
|
|
49
|
-
`}listenToCloseEvent(){document.querySelector("mealz-drawer").addEventListener("drawerClosed",()=>{this.closeRecipeAddon()})}closeRecipeAddon(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayRecipeAddon$.next(!1)}};P=I([v("mealz-recipe-addon")],P);var L=Object.defineProperty,x=Object.getOwnPropertyDescriptor,_=(e,s,r,
|
|
49
|
+
`}listenToCloseEvent(){document.querySelector("mealz-drawer").addEventListener("drawerClosed",()=>{this.closeRecipeAddon()})}closeRecipeAddon(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayRecipeAddon$.next(!1)}};P=I([v("mealz-recipe-addon")],P);var L=Object.defineProperty,x=Object.getOwnPropertyDescriptor,_=(e,s,r,o)=>{for(var i=o>1?void 0:o?x(s,r):s,a=e.length-1,l;a>=0;a--)(l=e[a])&&(i=(o?l(s,r,i):l(i))||i);return o&&i&&L(s,r,i),i};let u=class extends w{constructor(){super(),this.displayBasketPreview=!1,this.displayProductAddition=!1,this.displayReplaceProduct=!1,this.displayPreferences$=new c(!1),this.displayStoreLocator$=new c(!1),this.displayRecipeAddon$=new c(!1),this.displayPlannerCatalog$=new c(!1),this.displayHistoryDrawer$=new c(null),this.currentView$=new c(void 0),this.subscriptions=[],this.scrollPositions=new Map,this.viewSelector=[{isStoreLocatorVisible:()=>this.displayStoreLocator$.value},{isRecipeAddonVisible:()=>this.displayRecipeAddon$.value},{isReplaceItemVisible:()=>!!this.displayReplaceItem},{isReplaceItemPlannerVisible:()=>!!this.displayReplaceItemPlanner},{isRecipeDetailsVisible:()=>!!this.displayedRecipeDetails},{isBasketPreviewVisible:()=>this.displayBasketPreview},{isProductAdditionVisible:()=>this.displayProductAddition},{isReplaceProductVisible:()=>this.displayReplaceProduct},{isPlannerCatalogVisible:()=>this.displayPlannerCatalog$.value},{isHistoryDrawerVisible:()=>!!this.displayHistoryDrawer$.value},{isPreferencesVisible:()=>this.displayPreferences$.value}],this.styleURL=new URL("./drawer-view-swapper/drawer-view-swapper.css",this.getBaseURL()),k(),R(this.currentView$)}connectedCallback(){super.connectedCallback(),this.waitForSDKAndSetup()}waitForSDKAndSetup(){try{z().then(()=>{this.setupSubscriptions()})}catch(e){console.error("Error waiting for MealzInternal SDK:",e)}}setupSubscriptions(){this.subscriptions.push(f(n.pos.currentPos().pipe(p(e=>{this.pos=e,this.noSupplier=n.supplier.isNoSupplier()})),n.recipes.displayedRecipe$.pipe(p(e=>{this.displayedRecipeDetails=e,this.noSupplier&&!this.pos&&e&&this.displayStoreLocator$.next(!0)})),f(n.replaceItem.basketEntryToReplace$.pipe(p(e=>e||{displayReplaceItem:void 0})),n.replaceItem.replaceProductFromPreviewOpen$.pipe(p(e=>e?{basketEntry:e}:{displayReplaceItem:void 0})),n.replaceItem.additionModalOpen$.pipe(p(e=>e?{addProductMode:!0}:{displayReplaceItem:void 0}))).pipe(p(e=>{this.displayReplaceItem="displayReplaceItem"in e?void 0:e})),n.basket.basketPreviewState$.pipe(p(({isOpen:e})=>this.displayBasketPreview=e)),n.planner.itemToReplace$.pipe(p(e=>this.displayReplaceItemPlanner=e)),this.displayRecipeAddon$,this.displayStoreLocator$,this.displayPlannerCatalog$,this.displayHistoryDrawer$,this.displayPreferences$).subscribe(()=>{this.findView(),this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}getDrawerContentContainer(){return this.querySelector(".mealz-drawer__content-container")}findView(){const e=this.getNextViewName();e!==this.currentView$.value?(this.saveCurrentScrollPosition(),this.currentView$.next(e),this.requestUpdate(),e?this.restoreScrollPosition(e):this.resetScrollPositions()):this.currentView$.next(e)}getNextViewName(){for(const e of this.viewSelector){const[s,r]=Object.entries(e)[0];if(r())return s}}saveCurrentScrollPosition(){if(this.currentView$.value){const e=this.getDrawerContentContainer();e&&this.scrollPositions.set(this.currentView$.value,e.scrollTop)}}restoreScrollPosition(e){requestAnimationFrame(()=>{const s=this.getDrawerContentContainer();s&&this.scrollPositions.has(e)&&(s.scrollTop=this.scrollPositions.get(e)??0)})}resetScrollPositions(){this.scrollPositions.clear()}render(){return t`
|
|
50
50
|
<div class="mealz-drawer-view-swapper">${this.drawerIsOpen()?this.displayDrawer():d}</div>`}drawerIsOpen(){return this.currentView$.value!==void 0}closeDrawer(){n.recipes.displayedRecipe$.next(null),n.basket.basketPreviewState$.next({isOpen:!1}),this.displayPlannerCatalog$.next(!1),this.displayPreferences$.next(!1)}displayDrawer(){return this.drawerIsOpen()?t`
|
|
51
51
|
<mealz-drawer @drawerClosed=${this.closeDrawer}
|
|
52
52
|
.titleSlot=
|
package/dist/modal/modal.min.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import{N as m,k as
|
|
1
|
+
import{N as m,k as h}from"../assets/no-shadow-element-l9trQfcI.js";import{t as p}from"../assets/custom-element-BhZVzxrc.js";import{n as d}from"../assets/property-leIVgCvV.js";import{a as c}from"../assets/unsafe-html-CmALAWuN.js";var v=Object.defineProperty,u=Object.getOwnPropertyDescriptor,i=(r,o,s,l)=>{for(var e=l>1?void 0:l?u(o,s):o,a=r.length-1,n;a>=0;a--)(n=r[a])&&(e=(l?n(o,s,e):n(e))||e);return l&&e&&v(o,s,e),e};let t=class extends m{constructor(){super(),this.styleURL=new URL("./modal/modal.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.createCloseEvent(),this.addEventListener("onboardingConfirmed",this.closeModal)}disconnectedCallback(){this.closeEvent=null,this.removeEventListener("onboardingConfirmed",this.closeModal),super.disconnectedCallback()}createCloseEvent(){this.closeEvent=new CustomEvent("modalClosed",{bubbles:!0,composed:!0})}render(){return h`
|
|
2
2
|
<div @click=${()=>this.closeModal()} class="mealz-shadow-overlay"></div>
|
|
3
3
|
<div class="mealz-modal">
|
|
4
4
|
<div class="mealz-modal__header">
|
|
5
5
|
<div class="mealz-modal__title mealz-ds-text weight-xxl">
|
|
6
|
-
${typeof this.titleSlot=="string"?
|
|
6
|
+
${typeof this.titleSlot=="string"?c(this.titleSlot):this.titleSlot}
|
|
7
7
|
</div>
|
|
8
8
|
<button @click=${()=>this.closeModal()}
|
|
9
9
|
class="mealz-modal__close-icon mealz-ds-button square small">
|
|
@@ -12,7 +12,7 @@ import{N as m,k as v}from"../assets/no-shadow-element-l9trQfcI.js";import{t as h
|
|
|
12
12
|
</button>
|
|
13
13
|
</div>
|
|
14
14
|
<div class="mealz-modal__content-container">
|
|
15
|
-
${typeof this.contentSlot=="string"?
|
|
15
|
+
${typeof this.contentSlot=="string"?c(this.contentSlot):this.contentSlot}
|
|
16
16
|
</div>
|
|
17
17
|
</div>
|
|
18
|
-
`}closeModal(){this.dispatchEvent(this.closeEvent),this.remove()}};
|
|
18
|
+
`}closeModal(){this.dispatchEvent(this.closeEvent),this.remove()}openOnboardingModal(){this.titleSlot="Comment faire un menu ?",this.contentSlot="<mealz-planner-onboarding-modal></mealz-planner-onboarding-modal>",document.body.appendChild(this)}};i([d({type:String})],t.prototype,"titleSlot",2);i([d({type:String})],t.prototype,"contentSlot",2);t=i([p("mealz-modal")],t);customElements.get("mealz-modal")||customElements.define("mealz-modal",t);export{t as M};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.mealz-onboarding-overlay{position:fixed;z-index:calc(var(--m-z-index-modal-overlay) - 1);top:0;left:0;width:100vw;height:100dvh;-webkit-tap-highlight-color:transparent;opacity:0;animation:fadeIn .3s ease-in-out forwards}@keyframes fadeIn{to{opacity:1}}.mealz-onboarding-stage{position:fixed;box-shadow:0 0 0 9999px var(--mealz-ds-color-neutral-black, #0F191F);opacity:0;border-radius:12px;outline-offset:0;z-index:10001;pointer-events:none;animation:fadeInStage .3s ease-in-out forwards;transition:all .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeInStage{to{opacity:.7}}.mealz-onboarding-highlight{position:relative;z-index:10002}.mealz-onboarding-popover{position:fixed;top:auto;bottom:110px;left:50%;transform:translate(-50%) translateY(20px);background-color:var(--mealz-ds-color-neutral-white, #fff);padding:24px;border-radius:16px;min-width:336px;width:336px;box-shadow:0 8px 24px #1018282e;z-index:10003;opacity:0;animation:slideUpFadeIn .3s ease-in-out forwards}@keyframes slideUpFadeIn{to{opacity:1;transform:translate(-50%) translateY(0)!important}}.mealz-onboarding-popover__no-bottom-radius{border-bottom-left-radius:0;border-bottom-right-radius:0}@media (max-width: 768px){.mealz-onboarding-popover{width:100%}.mealz-onboarding-popover .mealz-onboarding-popover__footer-button{width:100%;flex:1}}.mealz-onboarding-popover .mealz-onboarding-popover__header{display:flex;justify-content:space-between;align-items:center}.mealz-onboarding-popover .mealz-onboarding-popover__header>*:not(:last-child){margin-right:8px}.mealz-onboarding-popover .mealz-onboarding-popover__content{padding:24px 0}.mealz-onboarding-popover .mealz-onboarding-popover__footer{display:flex;justify-content:space-between;align-items:center}.mealz-onboarding-popover .mealz-onboarding-popover__footer>*:not(:last-child){margin-right:24px}.mealz-onboarding-popover .mealz-onboarding-popover__footer-centered{justify-content:center}.mealz-onboarding-popover__progress{--progress: calc(var(--value) / var(--total) * 360deg);width:40px;height:40px;border-radius:50%;background:conic-gradient(var(--mealz-ds-color-primary, #24748F) var(--progress),var(--mealz-ds-color-primary-100, #E4EAEC) 0deg);display:grid;place-items:center}.mealz-onboarding-popover__progress-inner{width:32px;height:32px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center}.mealz-onboarding-popover__progress-inner span{color:var(--mealz-ds-color-neutral-black, #0F191F);opacity:.7}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import{N as m,k as h}from"../assets/no-shadow-element-l9trQfcI.js";import{t as v}from"../assets/custom-element-BhZVzxrc.js";import{n as d}from"../assets/property-leIVgCvV.js";import{r as c}from"../assets/state-CccUMzBZ.js";import{e as u}from"../assets/query-BApjzB0v.js";var f=Object.defineProperty,b=Object.getOwnPropertyDescriptor,l=(t,e,o,r)=>{for(var i=r>1?void 0:r?b(e,o):e,n=t.length-1,a;n>=0;n--)(a=t[n])&&(i=(r?a(e,o,i):a(i))||i);return r&&i&&f(e,o,i),i};let s=class extends m{constructor(t){super(),this.isTourActive=!1,this.stepIndex=0,this.popoverTitle="",this.popoverDescription="",this.steps=[],this.showProgress=!0,this.bottomMargin=110,this.highlightedElement=null,this.isThrottling=!1,this.originalBodyOverflow=null,this.originalDrawerOverflow=null,this.drawerContainer=null,this.drawerScrollTimeout=null,this.cachedChildren=[],this.cachedRootElement=null,this.focusableSelector='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])',this.boundThrottledStageUpdate=this.throttledStageUpdate.bind(this),this.boundHandleDocumentClick=this.handleDocumentClick.bind(this),this.boundHandleKeydown=this.handleKeydown.bind(this),this.boundPreventScroll=this.preventScroll.bind(this),this.boundOnDrawerScroll=this.onDrawerScroll.bind(this),this.configurations=t,this.styleURL=new URL("./onboarding/onboarding.css",this.getBaseURL())}get currentStep(){return this.steps[this.stepIndex]}disconnectedCallback(){super.disconnectedCallback(),this.removeHighlight(),this.disableHoverBlock(),this.bindGlobalEvents(!1)}startOnboardingTour(){!this.steps||this.steps.length===0||(this.stepIndex=0,this.applyCurrentStep(),this.isTourActive=!0,this.bindGlobalEvents(!0),this.focusPopoverAsync(),this.lockScroll())}endOnboardingTour(){var t;this.removeHighlight(),this.disableHoverBlock(),this.isTourActive=!1,this.stageElement&&Object.assign(this.stageElement.style,{top:"",left:"",width:"",height:""}),this.bindGlobalEvents(!1),(t=this.triggerButton)==null||t.focus(),this.unlockScroll(),this.dispatchEvent(new CustomEvent("onboarding-closed"))}shouldShowProgress(){return this.showProgress}render(){return this.isTourActive?h`
|
|
2
|
+
<div class="mealz-onboarding-overlay" aria-hidden="true"></div>
|
|
3
|
+
<div class="mealz-onboarding-stage" aria-hidden="true" @click=${()=>this.goToNextStep()}></div>
|
|
4
|
+
<div class="mealz-onboarding-popover ${this.bottomMargin===0?"mealz-onboarding-popover__no-bottom-radius":""}"
|
|
5
|
+
style="bottom: ${this.bottomMargin}px !important;"
|
|
6
|
+
role="dialog"
|
|
7
|
+
aria-modal="true"
|
|
8
|
+
tabindex="-1"
|
|
9
|
+
aria-labelledby=${this.popoverTitle}
|
|
10
|
+
aria-describedby=${this.popoverDescription}
|
|
11
|
+
>
|
|
12
|
+
<div class="mealz-onboarding-popover__header">
|
|
13
|
+
${this.popoverTitleTemplate()}
|
|
14
|
+
<button aria-label="Fermer le tutoriel" @click=${()=>this.endOnboardingTour()}
|
|
15
|
+
class="mealz-ds-button square small">
|
|
16
|
+
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_Black.svg" alt="">
|
|
17
|
+
</button>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="mealz-onboarding-popover__content">
|
|
20
|
+
${this.popoverDescriptionTemplate()}
|
|
21
|
+
</div>
|
|
22
|
+
<div class="mealz-onboarding-popover__footer ${this.shouldShowProgress()?"":"mealz-onboarding-popover__footer-centered"}">
|
|
23
|
+
${this.shouldShowProgress()?h`
|
|
24
|
+
<div class="mealz-onboarding-popover__progress"
|
|
25
|
+
style="--value:${this.stepIndex+1}; --total:${this.steps.length}">
|
|
26
|
+
<div class="mealz-onboarding-popover__progress-inner">
|
|
27
|
+
<span class="mealz-ds-text size-s weight-xl">${this.stepIndex+1}/${this.steps.length}</span>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
`:null}
|
|
31
|
+
${this.popoverNextButtonTemplate()}
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
`:null}popoverTitleTemplate(){return this.popoverTitle?h`<span class="mealz-ds-text weight-xxl size-m">${this.popoverTitle}</span>`:null}popoverDescriptionTemplate(){return this.popoverDescription?h`<div class="mealz-ds-text size-m" .innerHTML=${this.popoverDescription}></div>`:null}popoverNextButtonTemplate(){return h`
|
|
35
|
+
<button class="mealz-onboarding-popover__footer-button mealz-ds-button primary"
|
|
36
|
+
@click=${()=>this.goToNextStep()}>
|
|
37
|
+
<span class="mealz-ds-text size-m">
|
|
38
|
+
${this.isFinalStep()?"J'ai compris":"Suivant"}
|
|
39
|
+
</span>
|
|
40
|
+
</button>
|
|
41
|
+
`}isFinalStep(){return this.stepIndex>=this.steps.length-1}goToNextStep(){if(this.isFinalStep())return this.endOnboardingTour();this.disableHoverBlock(),this.stepIndex+=1,this.applyCurrentStep()}applyCurrentStep(){var o;if(this.removeHighlight(),!this.currentStep)return;const t=this.getCurrentElement();t&&(this.highlightedElement=t,t.classList.add("mealz-onboarding-highlight"),!this.isElementFullyVisible(t)&&t.tagName.toLowerCase()!=="div"&&t.scrollIntoView({behavior:"smooth",block:"center",inline:"center"}),requestAnimationFrame(()=>{this.updateStagePosition(),this.updatePopoverPosition()}));const e=((o=this.currentStep)==null?void 0:o.popover)||{};this.popoverTitle=e.title||"",this.popoverDescription=e.description||"",this.enableHoverBlock(),this.focusPopoverAsync()}getCurrentElement(){var e;const t=(e=this.currentStep)==null?void 0:e.element;try{if(typeof t=="string"){const o=document.querySelector(t);if(o&&this.isElementFullyVisible(o))return o;const r=Array.from(document.querySelectorAll(t));return r.length===0?null:r.find(n=>this.isElementFullyVisible(n))||r[0]||null}return t||null}catch(o){return console.warn("Failed to get element for onboarding:",o),null}}isElementFullyVisible(t){if(!(t instanceof HTMLElement))return!1;const e=t.getBoundingClientRect();return e.top>=0&&e.bottom<=window.innerHeight}resetStageElement(){this.stageElement&&Object.assign(this.stageElement.style,{top:"",left:"",width:"",height:""})}updateStagePosition(){if(!this.stageElement)return;const t=this.highlightedElement;if(!t){this.resetStageElement();return}const e=10,o=t.getBoundingClientRect(),r={top:0,left:0,right:window.innerWidth,bottom:window.innerHeight},i={top:Math.max(o.top,r.top),bottom:Math.min(o.bottom,r.bottom),left:Math.max(o.left,r.left),right:Math.min(o.right,r.right)};if(this.applyClippingElements(t,i),i.top>=i.bottom||i.left>=i.right){this.resetStageElement();return}Object.assign(this.stageElement.style,{position:"fixed",top:`${i.top-e}px`,left:`${i.left-e}px`,width:`${i.right-i.left+e*2}px`,height:`${i.bottom-i.top+e*2}px`})}applyClippingElements(t,e){[".mealz-planner-current-menu__footer"].forEach(r=>{var a,p;const i=document.querySelector(r);if(!i||!((a=i.parentElement)!=null&&a.contains(t))||(p=t.parentElement)!=null&&p.contains(i))return;const n=i.getBoundingClientRect();n.top<e.bottom&&n.bottom>e.top&&(e.bottom=Math.min(e.bottom,n.top))})}throttledStageUpdate(){this.isThrottling||(this.isThrottling=!0,requestAnimationFrame(()=>{this.updateStagePosition(),this.updatePopoverPosition(),this.isThrottling=!1}))}updatePopoverPosition(){var p,g;if(!this.popoverElement||!((g=(p=this.currentStep)==null?void 0:p.popover)!=null&&g.overElement))return;let t=null;const e=this.currentStep.popover.overElement;if(typeof e=="string"?t=document.querySelector(e):e instanceof HTMLElement&&(t=e),!t)return;const o=t.getBoundingClientRect(),r=this.currentStep.popover.spacerTop??0,i=this.currentStep.popover.spacerLeft??0,n=this.currentStep.popover.spacerRight??0,a=this.currentStep.popover.spacerBottom??0;this.popoverElement.style.top=`${o.top}px`,this.popoverElement.style.left=`${o.left}px`,this.popoverElement.style.right="initial",this.popoverElement.style.bottom="initial",this.popoverElement.style.transform="initial",n&&(this.popoverElement.style.left="initial",this.popoverElement.style.right=`${o.right+n}px`),a&&(this.popoverElement.style.top="initial",this.popoverElement.style.bottom=`${o.bottom+a}px`),r&&(this.popoverElement.style.top=`${o.top+r}px`),i&&(this.popoverElement.style.left=`${o.left+i}px`)}onDrawerScroll(){this.drawerScrollTimeout&&clearTimeout(this.drawerScrollTimeout),this.drawerScrollTimeout=window.setTimeout(()=>{this.updateStagePosition()},120)}handleKeydown(t){this.isTourActive&&(t.key==="Escape"&&this.endOnboardingTour(),t.key==="Tab"&&this.popoverElement&&this.trapFocusWithinPopover(t))}handleDocumentClick(t){!this.isTourActive||t.target.closest(".mealz-onboarding-popover")||(t.preventDefault(),t.stopImmediatePropagation(),t.stopPropagation(),this.goToNextStep())}getDrawerContainer(){return this.drawerContainer||(this.drawerContainer=document.querySelector(".mealz-drawer__content-container")),this.drawerContainer}preventScroll(t){t.preventDefault(),t.stopPropagation()}lockScroll(){this.originalBodyOverflow===null&&(this.originalBodyOverflow=document.body.style.overflow||""),document.body.style.overflow="hidden";const t=this.getDrawerContainer();t&&(this.originalDrawerOverflow===null&&(this.originalDrawerOverflow=t.style.overflow||""),t.style.overflow="hidden")}unlockScroll(){this.originalBodyOverflow!==null&&(document.body.style.overflow=this.originalBodyOverflow,this.originalBodyOverflow=null);const t=this.getDrawerContainer();t&&this.originalDrawerOverflow!==null&&(t.style.overflow=this.originalDrawerOverflow,this.originalDrawerOverflow=null)}enableHoverBlock(){this.getCurrentElement()&&this.toggleHoverBlock("none","default")}disableHoverBlock(){this.getCurrentElement()&&this.toggleHoverBlock("auto","")}toggleHoverBlock(t,e){const o=this.getCurrentElement();o&&(o.style.pointerEvents=t,o.style.cursor=e,(this.cachedRootElement!==o||this.cachedChildren.length===0)&&(this.cachedRootElement=o,this.cachedChildren=Array.from(o.querySelectorAll("*"))),this.cachedChildren.forEach(r=>{r.style.pointerEvents=t,r.style.cursor=e}))}removeHighlight(){this.highlightedElement&&(this.highlightedElement.classList.remove("mealz-onboarding-highlight"),this.highlightedElement=null)}getConfig(t){return this.configurations[t]||this.configurations.guide}hasSeenOnboarding(t){const e=this.getConfig(t);return e.localStorageKey?localStorage.getItem(e.localStorageKey)==="true":!1}markOnboardingAsSeen(t){const e=this.getConfig(t);e.localStorageKey&&localStorage.setItem(e.localStorageKey,"true")}bindGlobalEvents(t){var o;const e=t?"addEventListener":"removeEventListener";window[e]("scroll",this.boundThrottledStageUpdate,!0),window[e]("resize",this.boundThrottledStageUpdate,!0),window[e]("wheel",this.boundPreventScroll,{passive:!1,capture:!0}),window[e]("touchmove",this.boundPreventScroll,{passive:!1,capture:!0}),document[e]("click",this.boundHandleDocumentClick,!0),document[e]("keydown",this.boundHandleKeydown,!0),this.drawerContainer=this.getDrawerContainer(),(o=this.drawerContainer)==null||o[e]("scroll",this.boundOnDrawerScroll,{passive:!0}),t||(this.drawerContainer=null,this.drawerScrollTimeout&&(clearTimeout(this.drawerScrollTimeout),this.drawerScrollTimeout=null))}focusPopoverAsync(){this.updateComplete.then(()=>{if(!this.popoverElement)return;const t=this.popoverElement.querySelector(".mealz-onboarding-popover__footer button");if(t){t.focus({preventScroll:!0});return}})}trapFocusWithinPopover(t){if(!this.popoverElement)return;const e=this.popoverElement.querySelectorAll(this.focusableSelector),o=e[0],r=e[e.length-1],i=document.activeElement;if(!(!!i&&this.popoverElement.contains(i))){t.preventDefault(),(o||this.popoverElement).focus();return}if(t.shiftKey&&i===o){t.preventDefault(),(r||this.popoverElement).focus();return}!t.shiftKey&&i===r&&(t.preventDefault(),(o||this.popoverElement).focus())}};l([c()],s.prototype,"isTourActive",2);l([c()],s.prototype,"stepIndex",2);l([c()],s.prototype,"popoverTitle",2);l([c()],s.prototype,"popoverDescription",2);l([u(".mealz-onboarding-stage")],s.prototype,"stageElement",2);l([u(".mealz-onboarding-popover")],s.prototype,"popoverElement",2);l([u('button[aria-label="Start onboarding"]')],s.prototype,"triggerButton",2);l([d({type:Array})],s.prototype,"steps",2);l([d({type:Boolean})],s.prototype,"showProgress",2);l([d({type:Number})],s.prototype,"bottomMargin",2);s=l([v("mealz-onboarding")],s);export{s as M};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.mealz-planner-current-menu{color:var(--miam-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-breadcrumb{margin:0}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__menu-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-catalog-toolbar__loader{position:relative;top:-10px}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__menu-badge{right:8px;background-color:var(--mealz-ds-color-danger-500, #E02D2D)}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-catalog-toolbar__loader{right:12px}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content{display:flex;height:80vh}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:480px;flex-shrink:0}.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-content{flex-grow:1;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-content::-webkit-scrollbar{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:24px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:column}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts .mealz-planner-current-menu__menu-subtitle{color:var(--mealz-ds-color-neutral-black, #0F191F);opacity:.7}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences{height:100%;margin-left:8px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences img{width:16px;height:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences .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__menu-recipes{margin-bottom:8px}.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%}.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:8px 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-right:4px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras{padding:16px;margin-bottom:24px;background-color:var(--mealz-ds-color-primary-100, #E4EAEC)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices{display:flex;overflow-x:scroll;scrollbar-width:none;-ms-overflow-style:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>*:not(:last-child){margin-right:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>*{display:flex;flex-direction:column;align-items:flex-start;width:min-content;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>* img{margin-bottom:4px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices::-webkit-scrollbar{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras>*:not(:last-child){margin-bottom:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;position:relative;width:100%;bottom:0;padding:24px;box-sizing:border-box;background:#fff;box-shadow:0 -2px 8px #0f191f1f}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{height:fit-content}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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: 1023px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:375px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 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,166px)}.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:166px;height:224px}.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}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer{flex-direction:column-reverse;padding:24px 16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-budget-gauge{margin-right:0;margin-bottom:16px;align-items:center}}@media (max-width: 850px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:320px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 320px)}}@media (max-width: 768px){.mealz-planner-current-menu .mealz-breadcrumb{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header{display:flex;justify-content:space-between;width:100%}.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{padding:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.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-recipe-list{justify-content:center}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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{color:var(--miam-color-neutral-black, #0F191F)}.mealz-planner-current-menu .mealz-breadcrumb{margin:0}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu{display:flex}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__menu-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-catalog-toolbar__loader{position:relative;top:-10px}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__menu-badge{right:8px;background-color:var(--mealz-ds-color-danger-500, #E02D2D)}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-planner-current-menu__preferences-badge,.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .mealz-catalog-toolbar__loader{right:12px}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header .mealz-planner-current-menu__mobile-preferences-and-menu .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content{display:flex;height:80vh}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:480px;flex-shrink:0}.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-content{flex-grow:1;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-content::-webkit-scrollbar{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top{padding:24px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts{display:flex;flex-direction:column}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-texts .mealz-planner-current-menu__menu-subtitle{color:var(--mealz-ds-color-neutral-black, #0F191F);opacity:.7}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-actions{display:flex;align-items:center}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences{height:100%;margin-left:8px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences img{width:16px;height:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences .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__menu-recipes{margin-bottom:8px}.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%}.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:8px 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-right:4px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras{padding:16px;margin-bottom:24px;background-color:var(--mealz-ds-color-primary-100, #E4EAEC)}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices{display:flex;overflow-x:scroll;scrollbar-width:none;-ms-overflow-style:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>*:not(:last-child){margin-right:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>*{display:flex;flex-direction:column;align-items:flex-start;width:min-content;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices>* img{margin-bottom:4px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras .mealz-planner-current-menu__meal-extras-choices::-webkit-scrollbar{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__meal-extras>*:not(:last-child){margin-bottom:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;position:relative;width:100%;bottom:0;padding:24px;box-sizing:border-box;background:#fff;box-shadow:0 -2px 8px #0f191f1f}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button{height:fit-content}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-current-menu__footer-button .hidden{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__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: 1023px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:375px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 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,166px)}.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:166px;height:224px}.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}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer{flex-direction:column-reverse;padding:24px 16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__footer .mealz-planner-budget-gauge{margin-right:0;margin-bottom:16px;align-items:center}}@media (max-width: 850px){.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__recipe{width:320px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu{width:calc(100% - 320px)}}@media (max-width: 768px){.mealz-planner-current-menu .mealz-breadcrumb{display:none}.mealz-planner-current-menu .mealz-planner-current-menu__mobile-header{display:flex;justify-content:space-between;width:100%}.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{padding:16px}.mealz-planner-current-menu .mealz-planner-current-menu__content .mealz-planner-current-menu__menu .mealz-planner-current-menu__menu-top .mealz-planner-current-menu__menu-header .mealz-planner-current-menu__menu-header-preferences:not(.ghost):not(.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__menu-header .mealz-planner-current-menu__onboarding-button{display:none}.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__content .mealz-planner-current-menu__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"../../drawer-view-swapper/drawer-view-swapper.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../to-basket-loader/to-basket-loader.min.js";import{M as d}from"../planner-abandon-modal/planner-abandon-modal.min.js";import{M as u}from"../planner-open-catalog-modal/planner-open-catalog-modal.min.js";import{N as m,B as h,m as s}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as g}from"../../assets/custom-element-BhZVzxrc.js";import{t as o}from"../../assets/take-DO4w5a1Y.js";import{f}from"../../assets/filter-CEeE8t7I.js";import{m as l}from"../../assets/map-C4rf5Jbc.js";import{c as b}from"../../assets/combineLatest-P4GAEtOW.js";import"../../drawer/drawer.min.js";import"../../assets/property-leIVgCvV.js";import"../../assets/unsafe-html-CmALAWuN.js";import"../../store-locator-drawer/store-locator-drawer.min.js";import"../../assets/state-CccUMzBZ.js";import"../../assets/skipWhile-DuMEda_n.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../assets/switchMap-D8q0hRYH.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../recipe-details/recipe-details.min.js";import"../../recipe-pricing/recipe-pricing.min.js";import"../../assets/price-BoM226Kw.js";import"../../assets/from-jBe2xW5a.js";import"../../assets/executeSchedule-DfyZaGAH.js";import"../../assets/mapOneOrManyArgs-DNd_tswl.js";import"../../assets/of-BTA69Qgj.js";import"../../assets/tap-BCGrRktL.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/recipe-BwGs-blm.js";import"../../assets/merge-C-u9uFzU.js";import"../../assets/mergeMap-buGewtOo.js";import"../../assets/capitalize-DUAqYmp4.js";import"../../counter/counter.min.js";import"../../assets/debounceTime-Bo5F3ux-.js";import"../../assets/async-D3oCs_PQ.js";import"../../assets/product-card-DqcKyf1c.js";import"../../price/price.min.js";import"../../assets/promotion-badge-BwN2GpDz.js";import"../../assets/delay-ILvLVH1b.js";import"../../assets/timer-BOl4bYNY.js";import"../../store-indicator/store-indicator.min.js";import"../../assets/store-locator-m8sx3XDc.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"../../last-order-modal/last-order-modal.min.js";import"../planner-catalog/planner-catalog.min.js";import"../../catalog/catalog-load-more.min.js";import"../../assets/http-aOzufNsj.js";import"../../replace-item/replace-item.min.js";import"../../replace-item/replace-item-card/replace-item-card.min.js";import"../../assets/price-utils-BRFZa-3D.js";import"../../assets/distinctUntilChanged-BkBiB4M3.js";import"../../replace-item-planner/replace-item-planner.min.js";import"../../replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js";import"../../history-drawer/history-drawer.min.js";import"../../catalog/basket-preview/basket-preview.min.js";import"../../modal/modal.min.js";var y=Object.getOwnPropertyDescriptor,B=(e,t,n,r)=>{for(var i=r>1?void 0:r?y(t,n):t,a=e.length-1,p;a>=0;a--)(p=e[a])&&(i=p(i)||i);return i};let c=class extends m{constructor(){super(...arguments),this.wasDesktop=window.innerWidth>768,this.analyticsPath="/meals-planner/current",this.loaderToBasketComplete$=new h(!1),this.subscriptions=[]}get selectors(){return{recipe:".mealz-planner-current-menu__recipe",menu:".mealz-planner-current-menu__menu",displayMenuButton:".mealz-planner-current-menu__mobile-menu-button",displayRecipeButton:".mealz-planner-current-menu__mobile-recipe-button",returnButton:".mealz-planner-current-menu__mobile-return-button",preferencesButton:".mealz-planner-current-menu__menu-header-preferences",preferencesMobileButton:".mealz-planner-current-menu__mobile-preferences-button",cancelMenuButton:".mealz-planner-current-menu__cancel-menu-button",footerButton:".mealz-planner-current-menu__footer-button",footerIcon:".mealz-planner-current-menu__footer-icon",footerDisabledIcon:".mealz-planner-current-menu__footer-disabled-icon",recipeCounterBadge:".mealz-planner-current-menu__menu-badge",preferencesCounterBadges:[".mealz-planner-current-menu__preferences-badge"],mealExtras:[".mealz-planner-current-menu__meal-extras-choice"]}}get nbrRecipeInMenu(){return this.querySelectorAll(".mealz-planner-recipe-card").length}connectedCallback(){super.connectedCallback(),this.pageview(),this.initSelectors(),this.addEventListeners(),this.handleResize(),window.addEventListener("resize",()=>this.handleResize()),s.recipes.setIsRecipeDetailsFromPlanner(!0),this.subscriptions.push(s.preferences.preferencesCount().subscribe(e=>this.updatePreferencesCount(e))),this.updateRecipeCounterBadge(this.nbrRecipeInMenu)}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){var t;const e=(t=this.attributes["starting-data"])==null?void 0:t.value;e&&(Object.assign(this,JSON.parse(e)),this.removeAttribute("starting-data"))}addEventListeners(){this.addClickListener("displayMenuButton",()=>{this.toggleMobileView(!0)}),this.addClickListener("displayRecipeButton",()=>{this.toggleMobileView(!1)}),this.addClickListener("preferencesButton",()=>{this.openPreferences()}),this.addClickListener("preferencesMobileButton",()=>{this.openPreferences()}),this.addClickListener("cancelMenuButton",this.cancelMenu.bind(this)),this.addClickListener("footerButton",()=>{this.handleMenu()});const{mealExtras:e}=this.elements;e==null||e.forEach(t=>{t.addEventListener("click",this.openCatalogSelection.bind(this))})}toggleMobileView(e){const{recipe:t,menu:n,displayMenuButton:r,displayRecipeButton:i,returnButton:a}=this.elements;!t||!n||!r||!i||!a||(t.style.display=e?"none":"block",n.style.display=e?"flex":"none",r.style.display=e?"none":"flex",i.style.display=e?"block":"none",a.style.display=e?"none":"block")}handleResize(){const{menu:e,recipe:t}=this.elements;if(!e||!t)return;const n=window.innerWidth>768;n?(e.style.display="flex",t.style.display="block"):this.wasDesktop&&this.toggleMobileView(!1),this.wasDesktop=n}async openPreferences(){const e=document.querySelector("mealz-drawer-view-swapper");e.displayPreferences$.next(!0),await e.updateComplete}updatePreferencesCount(e){const{preferencesCounterBadges:t}=this.elements;t&&t.forEach(n=>{const r=n.querySelector("p");r.textContent=e.toString(),n.classList.toggle("hidden",e===0)})}updateRecipeCounterBadge(e){const{recipeCounterBadge:t}=this.elements;if(!t)return;const n=t.querySelector("p");n.textContent=e.toString(),t.classList.toggle("hidden",e===0)}openCatalogSelection(e){const t=e.target.closest(".mealz-planner-current-menu__meal-extras-choice");if(!t)return;const r=["starter","dessert","drink"].find(i=>t.classList.contains(i));r&&(this.openCatalogDrawer(r),this.categoryDisplayEvent(r))}cancelMenu(){const e=new d;e.addEventListener("resetMenu",()=>this.resetMenu()),e.displayPlannerAbandonModal()}resetMenu(){const e=s.planner.deleteMenu(this.menuId);this.resetMenuEvent(),e.pipe(o(1)).subscribe(()=>{this.updateRecipeCounterBadge(0),this.redirectToDashboard()})}redirectToDashboard(){var e;(e=this.plannerRoutes)!=null&&e.dashboard&&(window.location.href=this.plannerRoutes.dashboard)}redirectToHomeWithBasketPreview(){var e;(e=this.plannerRoutes)!=null&&e.catalogHome&&(window.location.href=this.plannerRoutes.catalogHome+"?myMeals=products")}handleMenu(){this.storeId?(this.displayAddToBasketLoaderView(),this.finalizeMenuEvent(),this.navigateOnceDone()):console.log("register menu")}navigateOnceDone(){const e=this.loaderToBasketComplete$.pipe(f(n=>n===!0),o(1)),t=s.planner.menuToBasket(this.basket.id).pipe(o(1),l(()=>s.basket.updateRetailerBasketFromPlanner()));this.subscriptions.push(b([t,e]).pipe(o(1)).subscribe(()=>{this.loaderToBasketElement.remove(),this.redirectToHomeWithBasketPreview()}))}retrieveRecipesImgs(){const e=[];return document.querySelectorAll(".mealz-planner-recipe-card").forEach(n=>{if(n.querySelector(".mealz-planner-recipe-card__in-basket:not(.hidden)"))return;const i=n.querySelector("img");i&&i.src&&e.push(i.src)}),e}displayAddToBasketLoaderView(){const e=document.querySelector(".mealz-planner-current-menu");e&&(e.style.display="none");const t=this.retrieveRecipesImgs();this.loaderToBasketElement=document.querySelector("mealz-to-basket-loader"),this.loaderToBasketElement||(this.loaderToBasketElement=document.createElement("mealz-to-basket-loader"),this.loaderToBasketElement.recipeImgs=t,this.loaderToBasketElement.addEventListener("basketComplete",()=>{this.loaderToBasketComplete$.next(!0)}),e.insertAdjacentElement("afterend",this.loaderToBasketElement))}updateFooterButton(e){const{footerButton:t,footerIcon:n,footerDisabledIcon:r}=this.elements;!t||!n||!r||(t.classList.toggle("disabled",!e),n.classList.toggle("hidden",!e),r.classList.toggle("hidden",e))}openCatalogModal(){const e=new u;e.addEventListener("openCatalog",()=>{this.openCatalogDrawer()}),e.displayMealzPlannerOpenCatalogModal()}async openCatalogDrawer(e){const t=document.querySelector("mealz-drawer-view-swapper");t.displayPlannerCatalog$.next(!0),await t.updateComplete;const n=document.querySelector("mealz-planner-catalog");n&&(n.setConfig(this.storeId,this.catalogURL,this.sessionId,e),n.getPlannerCatalog(),n.pageview())}addRecipe(e,t){var i,a;const n=(a=(i=s.recipes)==null?void 0:i.productsPlannerByCategory$)==null?void 0:a.value,r=(n==null?void 0:n.toPickProducts)||[];return s.planner.addRecipeToMenu(e,t,!!s.pos.currentPos().value,r).pipe(o(1),l(async()=>{await this.addRecipeToList(e),this.showResetMenuButton(),this.updateFooterButtonState(),this.updateRecipeCounterBadge(this.nbrRecipeInMenu),this.recipeAddedEvent(e)}))}removeRecipe(e){return s.planner.removeRecipeFromMenu(e).pipe(o(1),l(()=>{const t=this.findRecipeIndexById(e);t!==-1&&(this.removeRecipeFromList(t),this.updateFooterButtonState(),this.updateRecipeCounterBadge(this.nbrRecipeInMenu),this.recipeRemovedEvent(e))}))}async addRecipeToList(e){const t=document.querySelector("mealz-planner-recipe-list");t&&await t.addRecipeCardToList(e)}removeRecipeFromList(e){const t=document.querySelector("mealz-planner-recipe-list");t&&t.removeRecipeCardFromList(e)}showResetMenuButton(){const e=document.querySelector(".mealz-planner-current-menu__cancel-menu");e&&e.classList.remove("hidden")}updateFooterButtonState(){const e=this.nbrRecipeInMenu>0;this.updateFooterButton(e)}findRecipeIndexById(e){const t=document.querySelectorAll("mealz-planner-recipe-card");for(let n=0;n<t.length;n++)if(t[n].recipeId===e)return n;return-1}pageview(){s.analytics.sendEvent("pageview",this.analyticsPath,{})}resetMenuEvent(){s.analytics.sendEvent("planner.reset",this.analyticsPath,{})}finalizeMenuEvent(){s.analytics.sendEvent("planner.finalize",this.analyticsPath,{budget_user:0,recipe_count:this.nbrRecipeInMenu,guests:this.guests})}recipeAddedEvent(e){s.analytics.sendEvent("planner.recipe.add",this.analyticsPath,{recipe_id:e})}recipeRemovedEvent(e){s.analytics.sendEvent("planner.recipe.delete",this.analyticsPath,{recipe_id:e})}categoryDisplayEvent(e){s.analytics.sendEvent("category.display",this.analyticsPath,{category_id:e})}};c=B([g("mealz-planner-current-menu")],c);customElements.get("mealz-planner-current-menu")||customElements.define("mealz-planner-current-menu",c);
|
|
1
|
+
import"../../drawer-view-swapper/drawer-view-swapper.min.js";import"../../slider-tabs/slider-tabs.min.js";import"../planner-onboarding-modal/planner-onboarding-modal.min.js";import"../to-basket-loader/to-basket-loader.min.js";import{M as h}from"../../modal/modal.min.js";import{M as b}from"../planner-abandon-modal/planner-abandon-modal.min.js";import{M as p}from"../planner-onboarding/planner-onboarding.min.js";import{M as g}from"../planner-open-catalog-modal/planner-open-catalog-modal.min.js";import{M as f}from"../planner-welcome-modal/planner-welcome-modal.min.js";import{N as M,B as y,m as o}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as w}from"../../assets/custom-element-BhZVzxrc.js";import{r as C}from"../../assets/state-CccUMzBZ.js";import{t as a}from"../../assets/take-DO4w5a1Y.js";import{f as d}from"../../assets/filter-CEeE8t7I.js";import{m as u}from"../../assets/map-C4rf5Jbc.js";import{c as v}from"../../assets/combineLatest-P4GAEtOW.js";import"../../drawer/drawer.min.js";import"../../assets/property-leIVgCvV.js";import"../../assets/unsafe-html-CmALAWuN.js";import"../../store-locator-drawer/store-locator-drawer.min.js";import"../../assets/skipWhile-DuMEda_n.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../assets/switchMap-D8q0hRYH.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../recipe-details/recipe-details.min.js";import"../../recipe-pricing/recipe-pricing.min.js";import"../../assets/from-jBe2xW5a.js";import"../../assets/executeSchedule-DfyZaGAH.js";import"../../assets/mapOneOrManyArgs-DNd_tswl.js";import"../../assets/of-BTA69Qgj.js";import"../../assets/tap-BCGrRktL.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/price-BoM226Kw.js";import"../../assets/recipe-BwGs-blm.js";import"../../assets/merge-C-u9uFzU.js";import"../../assets/mergeMap-buGewtOo.js";import"../../assets/capitalize-DUAqYmp4.js";import"../../counter/counter.min.js";import"../../assets/debounceTime-Bo5F3ux-.js";import"../../assets/async-D3oCs_PQ.js";import"../../assets/product-card-DqcKyf1c.js";import"../../price/price.min.js";import"../../assets/promotion-badge-BwN2GpDz.js";import"../../assets/delay-ILvLVH1b.js";import"../../assets/timer-BOl4bYNY.js";import"../../store-indicator/store-indicator.min.js";import"../../assets/store-locator-Crx8huGH.js";import"../../assets/query-BApjzB0v.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"../../last-order-modal/last-order-modal.min.js";import"../../onboarding/onboarding.min.js";import"../planner-catalog/planner-catalog.min.js";import"../../catalog/catalog-load-more.min.js";import"../../assets/http-aOzufNsj.js";import"../../replace-item/replace-item.min.js";import"../../replace-item/replace-item-card/replace-item-card.min.js";import"../../assets/price-utils-BRFZa-3D.js";import"../../assets/distinctUntilChanged-BkBiB4M3.js";import"../../replace-item-planner/replace-item-planner.min.js";import"../../replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js";import"../../history-drawer/history-drawer.min.js";import"../../catalog/basket-preview/basket-preview.min.js";var B=Object.defineProperty,z=Object.getOwnPropertyDescriptor,m=(e,t,n,r)=>{for(var i=r>1?void 0:r?z(t,n):t,s=e.length-1,c;s>=0;s--)(c=e[s])&&(i=(r?c(t,n,i):c(i))||i);return r&&i&&B(t,n,i),i};let l=class extends M{constructor(){super(...arguments),this.analyticsPath="/meals-planner/current",this.loaderToBasketComplete$=new y(!1),this.subscriptions=[],this.isCustomMenu=!1,this.isMobile=window.innerWidth<=768}get selectors(){return{recipe:".mealz-planner-current-menu__recipe",menu:".mealz-planner-current-menu__menu",displayMenuButton:".mealz-planner-current-menu__mobile-menu-button",displayRecipeButton:".mealz-planner-current-menu__mobile-recipe-button",returnButton:".mealz-planner-current-menu__mobile-return-button",preferencesButton:".mealz-planner-current-menu__menu-header-preferences",preferencesMobileButton:".mealz-planner-current-menu__mobile-preferences-button",onboardingButton:".mealz-planner-current-menu__onboarding-button",onboardingButtonMobile:".mealz-planner-current-menu__mobile-onboarding-button",cancelMenuButton:".mealz-planner-current-menu__cancel-menu-button",footerButton:".mealz-planner-current-menu__footer-button",footerIcon:".mealz-planner-current-menu__footer-icon",footerDisabledIcon:".mealz-planner-current-menu__footer-disabled-icon",recipeCounterBadge:".mealz-planner-current-menu__menu-badge",preferencesCounterBadges:[".mealz-planner-current-menu__preferences-badge"],mealExtras:[".mealz-planner-current-menu__meal-extras-choice"]}}get nbrRecipeInMenu(){return this.querySelectorAll(".mealz-planner-recipe-card").length}connectedCallback(){super.connectedCallback(),this.pageview(),this.initSelectors(),this.addEventListeners(),this.handleResize(),window.addEventListener("resize",()=>this.handleResize()),o.recipes.setIsRecipeDetailsFromPlanner(!0),this.isCustomMenu=localStorage.getItem("_miam/isCustomMenu")==="true",this.isCustomMenu||this.setDefaultMobileView(),this.subscriptions.push(o.preferences.preferencesCount().subscribe(e=>this.updatePreferencesCount(e))),this.updateRecipeCounterBadge(this.nbrRecipeInMenu),this.showWelcomeModal()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){var t;const e=(t=this.attributes["starting-data"])==null?void 0:t.value;e&&(Object.assign(this,JSON.parse(e)),this.removeAttribute("starting-data"))}showWelcomeModal(){const e=this.isCustomMenu?"_miam/customMenuOnboarding":"_miam/suggestionOnboarding";if(localStorage.getItem(e)==="true")return;const n=new f;n.isCustomMenu=this.isCustomMenu,n.addEventListener("openOnboarding",r=>{const i=r.detail??{};this.startPlannerOnboarding(i.isCustomMenu??this.isCustomMenu,!1)}),n.addEventListener("onboarding-skipped",()=>{localStorage.setItem(e,"true"),this.startPlannerOnboarding(!1,!0)}),n.displayPlannerWelcomeModal(),this.autoCloseWelcomeOnDrawerOpen(n)}autoCloseWelcomeOnDrawerOpen(e){requestAnimationFrame(()=>{const n=document.querySelector("mealz-drawer-view-swapper");if(!n)return;const r=n.currentView$.subscribe(i=>{i!==void 0&&(document.body.contains(e)&&e.remove(),r.unsubscribe())})})}startPlannerOnboarding(e,t){this.scrollIntoView({behavior:"smooth",block:"center"});const n=new p;n.isCustomMenu=e,document.body.appendChild(n),t?(n.type=this.isMobile?"guide-mobile":"guide",n.launchOnboardingTour()):(this.isMobile?n.type=e?"custom-mobile":"suggestion-mobile":n.type=e?"custom":"suggestion",n.startTour())}addEventListeners(){this.addClickListener("displayMenuButton",()=>{this.toggleMobileView(!0)}),this.addClickListener("displayRecipeButton",()=>{this.toggleMobileView(!1)}),this.addClickListener("preferencesButton",()=>{this.openPreferences()}),this.addClickListener("preferencesMobileButton",()=>{this.openPreferences()}),this.addClickListener("cancelMenuButton",this.cancelMenu.bind(this)),this.addClickListener("footerButton",()=>{this.handleMenu()}),this.addClickListener("onboardingButton",()=>this.openOnboardingModal()),this.addClickListener("onboardingButtonMobile",()=>this.openOnboardingModal());const{mealExtras:e}=this.elements;e==null||e.forEach(t=>{t.addEventListener("click",this.openCatalogSelection.bind(this))})}toggleMobileView(e){const{recipe:t,menu:n,displayMenuButton:r,displayRecipeButton:i,returnButton:s}=this.elements;!t||!n||!r||!i||!s||(t.style.display=e?"none":"block",n.style.display=e?"flex":"none",r.style.display=e?"none":"flex",i.style.display=e?"block":"none",s.style.display=e?"none":"block")}setDefaultMobileView(){this.isMobile&&this.toggleMobileView(!0)}handleResize(){const{menu:e,recipe:t}=this.elements;!e||!t||(this.isMobile?this.toggleMobileView(!1):(e.style.display="flex",t.style.display="block"))}async openPreferences(){const e=document.querySelector("mealz-drawer-view-swapper");e&&(e.displayPreferences$.next(!0),await e.updateComplete)}updatePreferencesCount(e){const{preferencesCounterBadges:t}=this.elements;t&&t.forEach(n=>{const r=n.querySelector("p");r&&(r.textContent=e.toString(),n.classList.toggle("hidden",e===0))})}updateRecipeCounterBadge(e){const{recipeCounterBadge:t}=this.elements;if(!t)return;const n=t.querySelector("p");n.textContent=e.toString(),t.classList.toggle("hidden",e===0)}openCatalogSelection(e){const t=e.target.closest(".mealz-planner-current-menu__meal-extras-choice");if(!t)return;const r=["starter","dessert","drink"].find(i=>t.classList.contains(i));r&&(this.openCatalogDrawer(r),this.categoryDisplayEvent(r))}openOnboardingModal(){new h().openOnboardingModal()}cancelMenu(){const e=new b;e.addEventListener("resetMenu",()=>this.resetMenu()),e.displayPlannerAbandonModal()}resetMenu(){const e=o.planner.deleteMenu(this.menuId);this.resetMenuEvent(),e.pipe(a(1)).subscribe(()=>{this.updateRecipeCounterBadge(0),this.redirectToDashboard()})}redirectToDashboard(){var e;(e=this.plannerRoutes)!=null&&e.dashboard&&(window.location.href=this.plannerRoutes.dashboard)}redirectToHomeWithBasketPreview(){var e;(e=this.plannerRoutes)!=null&&e.catalogHome&&(window.location.href=this.plannerRoutes.catalogHome+"?myMeals=products")}handleMenu(){this.storeId?(this.displayAddToBasketLoaderView(),this.finalizeMenuEvent(),this.navigateOnceDone()):console.log("register menu")}navigateOnceDone(){const e=this.loaderToBasketComplete$.pipe(d(n=>n===!0),a(1)),t=o.planner.menuToBasket(this.basket.id).pipe(a(1),u(()=>o.basket.updateRetailerBasketFromPlanner()));this.subscriptions.push(v([t,e]).pipe(a(1)).subscribe(()=>{this.loaderToBasketElement.remove(),this.redirectToHomeWithBasketPreview()}))}retrieveRecipesImgs(){const e=[];return document.querySelectorAll(".mealz-planner-recipe-card").forEach(n=>{if(n.querySelector(".mealz-planner-recipe-card__in-basket:not(.hidden)"))return;const i=n.querySelector("img");i&&i.src&&e.push(i.src)}),e}displayAddToBasketLoaderView(){const e=document.querySelector(".mealz-planner-current-menu");if(!e)return;e.style.display="none";const t=this.retrieveRecipesImgs();this.loaderToBasketElement=document.querySelector("mealz-to-basket-loader")||document.createElement("mealz-to-basket-loader"),document.querySelector("mealz-to-basket-loader")||(this.loaderToBasketElement.recipeImgs=t,this.loaderToBasketElement.addEventListener("basketComplete",()=>{this.loaderToBasketComplete$.next(!0)}),e.insertAdjacentElement("afterend",this.loaderToBasketElement))}updateFooterButton(e){const{footerButton:t,footerIcon:n,footerDisabledIcon:r}=this.elements;!t||!n||!r||(t.classList.toggle("disabled",!e),n.classList.toggle("hidden",!e),r.classList.toggle("hidden",e))}openCatalogModal(){const e=new g;e.addEventListener("openCatalog",()=>{this.openCatalogDrawer()}),e.displayMealzPlannerOpenCatalogModal()}async openCatalogDrawer(e){const t=document.querySelector("mealz-drawer-view-swapper");if(!t)return;t.displayPlannerCatalog$.next(!0),await t.updateComplete;const n=document.querySelector("mealz-planner-catalog");n&&(n.setConfig(this.storeId,this.catalogURL,this.sessionId,e),n.getPlannerCatalog(),n.pageview())}addRecipe(e,t){var i,s;const n=(s=(i=o.recipes)==null?void 0:i.productsPlannerByCategory$)==null?void 0:s.value,r=(n==null?void 0:n.toPickProducts)||[];return o.planner.addRecipeToMenu(e,t,!!o.pos.currentPos().value,r).pipe(a(1),u(async()=>{await this.addRecipeToList(e),this.showResetMenuButton(),this.updateFooterButtonState(),this.updateRecipeCounterBadge(this.nbrRecipeInMenu),this.recipeAddedEvent(e),this.shouldShowMenuToBasketOnboarding()}))}removeRecipe(e){return o.planner.removeRecipeFromMenu(e).pipe(a(1),u(()=>{const t=this.findRecipeIndexById(e);t!==-1&&(this.removeRecipeFromList(t),this.updateFooterButtonState(),this.updateRecipeCounterBadge(this.nbrRecipeInMenu),this.recipeRemovedEvent(e))}))}async addRecipeToList(e){const t=document.querySelector("mealz-planner-recipe-list");t&&await t.addRecipeCardToList(e)}removeRecipeFromList(e){const t=document.querySelector("mealz-planner-recipe-list");t&&t.removeRecipeCardFromList(e)}showResetMenuButton(){const e=document.querySelector(".mealz-planner-current-menu__cancel-menu");e&&e.classList.remove("hidden")}shouldShowMenuToBasketOnboarding(){var r;if(localStorage.getItem("_miam/menuToBasketOnboarding")==="true")return;this.isMobile&&this.toggleMobileView(!0);const t=document.querySelector("mealz-drawer-view-swapper");((r=t==null?void 0:t.currentView$)==null?void 0:r.value)!==void 0?this.subscriptions.push(t.currentView$.pipe(d(i=>i===void 0),a(1)).subscribe(()=>{this.showMenuToBasketOnboarding()})):this.showMenuToBasketOnboarding()}showMenuToBasketOnboarding(){this.updateComplete.then(()=>{const e=new p;e.type=this.isMobile?"menu-to-basket-mobile":"menu-to-basket",document.body.appendChild(e),e.launchOnboardingTour()})}updateFooterButtonState(){const e=this.nbrRecipeInMenu>0;this.updateFooterButton(e)}findRecipeIndexById(e){const t=document.querySelectorAll("mealz-planner-recipe-card");for(let n=0;n<t.length;n++)if(t[n].recipeId===e)return n;return-1}pageview(){o.analytics.sendEvent("pageview",this.analyticsPath,{})}resetMenuEvent(){o.analytics.sendEvent("planner.reset",this.analyticsPath,{})}finalizeMenuEvent(){o.analytics.sendEvent("planner.finalize",this.analyticsPath,{budget_user:0,recipe_count:this.nbrRecipeInMenu,guests:this.guests})}recipeAddedEvent(e){o.analytics.sendEvent("planner.recipe.add",this.analyticsPath,{recipe_id:e})}recipeRemovedEvent(e){o.analytics.sendEvent("planner.recipe.delete",this.analyticsPath,{recipe_id:e})}categoryDisplayEvent(e){o.analytics.sendEvent("category.display",this.analyticsPath,{category_id:e})}};m([C()],l.prototype,"isMobile",2);l=m([w("mealz-planner-current-menu")],l);customElements.get("mealz-planner-current-menu")||customElements.define("mealz-planner-current-menu",l);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.mealz-planner-dashboard .mealz-planner-dashboard__title{color:#000;margin:32px 0;padding:0 80px;display:flex;align-items:center;gap:12px}.mealz-planner-dashboard .mealz-planner-dashboard__title .mealz-planner-dashboard__title-icon:not(.ghost):not(.disabled):not([disabled]){width:18px;height:18px;background-color:var(--mealz-ds-color-primary-100, #E4EAEC)}.mealz-planner-dashboard .mealz-planner-dashboard__title .mealz-planner-dashboard__title-icon:not(.ghost):not(.disabled):not([disabled]) img{cursor:pointer;width:13px;height:13px}.mealz-planner-dashboard .mealz-planner-dashboard__content{padding:0 80px;box-sizing:border-box;min-height:90dvh}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options{display:flex;margin-bottom:16px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options mealz-planner-menu-option{flex:1;height:auto;display:flex;align-items:stretch}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options>*:not(:last-child){margin-right:16px}
|
|
1
|
+
.mealz-planner-dashboard .mealz-planner-dashboard__title{color:#000;margin:32px 0;padding:0 80px;display:flex;align-items:center;gap:12px}.mealz-planner-dashboard .mealz-planner-dashboard__title .mealz-planner-dashboard__title-icon:not(.ghost):not(.disabled):not([disabled]){width:18px;height:18px;background-color:var(--mealz-ds-color-primary-100, #E4EAEC)}.mealz-planner-dashboard .mealz-planner-dashboard__title .mealz-planner-dashboard__title-icon:not(.ghost):not(.disabled):not([disabled]) img{cursor:pointer;width:13px;height:13px}.mealz-planner-dashboard .mealz-planner-dashboard__content{padding:0 80px;box-sizing:border-box;min-height:90dvh}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options{display:flex;margin-bottom:16px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options mealz-planner-menu-option{flex:1;height:auto;display:flex;align-items:stretch}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options>*:not(:last-child){margin-right:16px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history{display:flex;justify-content:space-between;align-items:center}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history>*:not(:last-child){margin-right:16px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__onboarding-container,.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__history-container{display:flex;flex:1;justify-content:space-between;align-items:center;width:100%;padding:16px;border:1px solid var(--mealz-ds-color-neutral-200, #D9DDE1);border-radius:12px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__history-container{color:var(--mealz-ds-color-neutral-black, #0F191F);text-decoration:none}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__onboarding-container{cursor:pointer}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__onboarding-content,.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__history-content{display:flex;align-items:center;margin-right:12px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__onboarding-content>*:not(:last-child),.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__history-content>*:not(:last-child){margin-right:8px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__onboarding-icon,.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history .mealz-planner-dashboard__history-icon{width:24px;height:24px}@media (max-width: 1023px){.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options,.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history{flex-direction:column;margin-bottom:12px}.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__options>*:not(:last-child),.mealz-planner-dashboard .mealz-planner-dashboard__content .mealz-planner-dashboard__onboarding-and-history>*:not(:last-child){margin-right:0;margin-bottom:12px}}@media (max-width: 1023px){.mealz-planner-dashboard .mealz-planner-dashboard__title{margin:24px 0;padding:0 24px}.mealz-planner-dashboard .mealz-planner-dashboard__content{padding:0 24px}}@media (max-width: 700px){.mealz-planner-dashboard .mealz-planner-dashboard__title{margin:16px 0}.mealz-planner-dashboard .mealz-planner-dashboard__content{padding:0 16px}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as c,m as l}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as
|
|
1
|
+
import"../planner-onboarding-modal/planner-onboarding-modal.min.js";import{M as d}from"../../modal/modal.min.js";import{N as c,m as l}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as m}from"../../assets/custom-element-BhZVzxrc.js";import"../../assets/state-CccUMzBZ.js";import"../../assets/property-leIVgCvV.js";import"../../assets/unsafe-html-CmALAWuN.js";var h=Object.getOwnPropertyDescriptor,p=(e,a,t,s)=>{for(var n=s>1?void 0:s?h(a,t):a,r=e.length-1,i;r>=0;r--)(i=e[r])&&(n=i(n)||n);return n};let o=class extends c{constructor(){super(...arguments),this.analyticsPath="/meals-planner/dashboard"}get selectors(){return{historyLink:".mealz-planner-dashboard__history-container",onboardingButton:".mealz-planner-dashboard__onboarding-container"}}connectedCallback(){super.connectedCallback(),this.pageview(),this.initSelectors(),this.addEventListeners()}addEventListeners(){var e,a;(e=this.elements.historyLink)==null||e.addEventListener("click",t=>this.navigateToHistory(t)),(a=this.elements.onboardingButton)==null||a.addEventListener("click",t=>this.openOnboardingModal(t))}navigateToHistory(e){e.preventDefault();const a=e.currentTarget;l.hook.hookCallback().subscribe(t=>{t&&(window.location.href=a.href)})}openOnboardingModal(e){e.preventDefault(),new d().openOnboardingModal()}pageview(){l.analytics.sendEvent("pageview",this.analyticsPath,{})}};o=p([m("mealz-planner-dashboard")],o);customElements.get("mealz-planner-dashboard")||customElements.define("mealz-planner-dashboard",o);
|