mealz-components 2.6.0 → 2.6.2
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/accordion-BGFgJnk1.js +19 -0
- package/dist/assets/product-card-wIoU7Z_5.js +189 -0
- package/dist/assets/promotion-badge-CDaL7Tqv.js +12 -0
- package/dist/basket-transfer-modal/basket-transfer-modal.min.js +5 -5
- package/dist/catalog/basket-preview/basket-preview.min.js +14 -14
- package/dist/catalog/catalog-category/catalog-category.min.js +1 -1
- package/dist/catalog/catalog-favorites/catalog-favorites.min.js +1 -1
- package/dist/catalog/catalog-history/catalog-history.min.js +1 -1
- package/dist/catalog/catalog-home/catalog-home.min.js +1 -1
- package/dist/catalog/catalog-home-header/catalog-home-header.min.js +1 -1
- package/dist/catalog/catalog-list/catalog-list.min.js +1 -1
- package/dist/catalog/catalog-tabs/catalog-tabs.min.js +1 -1
- package/dist/catalog/catalog-toolbar/catalog-toolbar.min.js +1 -1
- package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
- package/dist/counter/counter.min.js +2 -2
- package/dist/drawer/drawer.min.js +5 -5
- package/dist/drawer-view-swapper/drawer-view-swapper.min.js +23 -23
- package/dist/history-drawer/history-drawer.min.js +1 -1
- package/dist/history-order/history-order.min.js +1 -1
- package/dist/history-order-expanded/history-order-expanded.min.js +1 -1
- package/dist/last-order-badge/last-order-badge.min.js +2 -2
- package/dist/last-order-modal/last-order-modal.min.js +4 -4
- package/dist/like-button/like-button.min.js +1 -1
- package/dist/modal/modal.min.js +4 -4
- package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.min.js +2 -2
- package/dist/onboarding/onboarding.min.js +4 -4
- package/dist/order-again/order-again.min.js +2 -2
- package/dist/planner/helpers/get-planner-onboarding-modal-config.min.js +1 -1
- package/dist/planner/helpers/init-planner-onboarding-modal.min.js +1 -1
- package/dist/planner/helpers/open-onboarding-modal.min.js +1 -1
- package/dist/planner/helpers/planner-onboarding-storage.min.js +1 -0
- package/dist/planner/planner-abandon-modal/planner-abandon-modal.min.js +2 -2
- package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.min.js +2 -2
- package/dist/planner/planner-budget-gauge/planner-budget-gauge.min.js +1 -1
- package/dist/planner/planner-catalog/planner-catalog.min.js +2 -2
- 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-current-menu-modal/planner-current-menu-modal.min.js +2 -2
- package/dist/planner/planner-form/planner-form.min.js +7 -7
- package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
- package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -1
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +6 -6
- package/dist/planner/planner-open-catalog-modal/planner-open-catalog-modal.min.js +2 -2
- package/dist/planner/planner-quick-menu/planner-quick-menu.min.js +1 -1
- package/dist/planner/planner-recipe-card/planner-recipe-card.min.js +1 -1
- package/dist/planner/planner-recipe-list/planner-recipe-list.min.js +1 -1
- package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.min.js +1 -1
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +3 -3
- package/dist/planner/to-basket-loader/to-basket-loader.min.js +5 -5
- package/dist/planner-entry/planner-entry.min.js +1 -1
- package/dist/preferences/preferences.min.js +4 -4
- package/dist/price/price.min.js +3 -3
- package/dist/products-to-basket-cta/products-to-basket-cta.min.js +1 -1
- package/dist/recipe-card/recipe-card.min.js +1 -1
- package/dist/recipe-card-cta/recipe-card-cta.min.js +1 -1
- package/dist/recipe-details/recipe-details.min.js +111 -111
- package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
- package/dist/recipe-to-basket/recipe-to-basket.min.js +1 -1
- package/dist/replace-item/replace-item-card/replace-item-card.min.js +11 -11
- package/dist/replace-item/replace-item.min.js +13 -13
- package/dist/replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js +4 -4
- package/dist/replace-item-planner/replace-item-planner.min.js +13 -13
- package/dist/select/select.min.js +6 -6
- package/dist/slider-tabs/slider-tabs.min.js +3 -3
- package/dist/store-indicator/store-indicator.min.js +2 -2
- package/dist/store-locator/store-locator.min.js +2 -2
- package/dist/store-locator-drawer/store-locator-drawer.min.js +2 -2
- package/dist/supplier-selector/supplier-selector.min.js +6 -6
- package/package.json +1 -1
- package/dist/assets/accordion-sjJSL32r.js +0 -19
- package/dist/assets/custom-element-BhZVzxrc.js +0 -5
- package/dist/assets/product-card-TLfT6URx.js +0 -189
- package/dist/assets/promotion-badge-B-er7bV2.js +0 -12
- package/dist/planner/planner-dashboard/planner-dashboard.css +0 -1
- package/dist/planner/planner-dashboard/planner-dashboard.min.js +0 -1
- package/dist/planner-banner/planner-banner.css +0 -1
- package/dist/planner-card-link/planner-card-link.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../basket-preview/basket-preview.min.js";import"../../drawer-view-swapper/drawer-view-swapper.min.js";import{N as
|
|
1
|
+
import"../basket-preview/basket-preview.min.js";import"../../drawer-view-swapper/drawer-view-swapper.min.js";import{N as e}from"../../assets/no-shadow-element-D62BBu0I.js";import{m as r}from"../../assets/mealz-sdk-E_fNZM-c.js";import"../../store-indicator/store-indicator.min.js";import"../../store-locator/store-locator.min.js";import"../../assets/property-CoRN-Ln2.js";import"../../assets/state-DDIoBQp5.js";import"../../assets/query-BApjzB0v.js";import"../../slider-tabs/slider-tabs.min.js";import"../../counter/counter.min.js";import"../../assets/debounceTime-Cf_7YmIn.js";import"../../assets/async-C5Kj_SqM.js";import"../../assets/OperatorSubscriber-DfCnFunn.js";import"../../price/price.min.js";import"../../assets/price-D6RVRYHJ.js";import"../../assets/singleton-COF3iBbF.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-DWUMaK1p.js";import"../../onboarding/events.min.js";import"../../assets/capitalize-DUAqYmp4.js";import"../../assets/delay-DHNms76g.js";import"../../assets/take-CpvJwza7.js";import"../../assets/empty-qrpgDBbc.js";import"../../assets/map-DT-7dkaR.js";import"../../assets/mergeMap-D2yctTHQ.js";import"../../assets/innerFrom-DePszgj9.js";import"../../assets/executeSchedule-CEDvgTzM.js";import"../../assets/timer-3Kpx74mt.js";import"../../assets/isScheduler-CqHuyMwD.js";import"../../assets/isDate-BwHtzZM4.js";import"../../assets/switchMap-BAdE9Uzw.js";import"../../drawer/drawer.min.js";import"../../store-locator-drawer/store-locator-drawer.min.js";import"../../assets/skipWhile-Beza3ws3.js";import"../../assets/filter-q99GWcpD.js";import"../../recipe-details/recipe-details.min.js";import"../../recipe-pricing/recipe-pricing.min.js";import"../../assets/viewport-listener-DsRHfwo4.js";import"../../assets/merge-DzIA6T0M.js";import"../../assets/mergeAll-DpEYIxY3.js";import"../../assets/args-DAL2bHut.js";import"../../assets/from-D8c5akO7.js";import"../../assets/product-card-wIoU7Z_5.js";import"../../assets/promotion-badge-CDaL7Tqv.js";import"../../assets/guestObserver-C5qvv1Ll.js";import"../../assets/accordion-BGFgJnk1.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"../../onboarding/analytics/onboarding-analytics.min.js";import"../../assets/responsive-C7Qf71r3.js";import"../../planner/helpers/planner-onboarding-storage.min.js";import"../../assets/tap-BN_fPb40.js";import"../../assets/combineLatest-Capvy1jI.js";import"../../assets/mapOneOrManyArgs-CHGhEDCk.js";import"../../planner/planner-catalog/planner-catalog.min.js";import"../catalog-load-more.min.js";import"../../assets/http-Bepz6wA4.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-kXqVrZ5h.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"../../assets/of-DtJFltSl.js";import"../../supplier-selector/supplier-selector.min.js";import"../../preferences/preferences.min.js";class m extends e{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:o}=JSON.parse(t);this.analyticsPath=o,this.removeAttribute("starting-data")}this.button.addEventListener("click",o=>{o.stopPropagation(),this.toggleBasketPreview()})}toggleBasketPreview(){this.sendBasketDisplayEvent(),r.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(){r.analytics.sendEvent("basket.display",this.analyticsPath,{})}}customElements.get("mealz-my-meals-button")||customElements.define("mealz-my-meals-button",m);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as h,B as c,k as a}from"../assets/no-shadow-element-D62BBu0I.js";import{n as i}from"../assets/property-CoRN-Ln2.js";import{d as m}from"../assets/debounceTime-Cf_7YmIn.js";import"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/async-C5Kj_SqM.js";import"../assets/OperatorSubscriber-DfCnFunn.js";var d=Object.defineProperty,n=(l,e,t,p)=>{for(var o=void 0,u=l.length-1,r;u>=0;u--)(r=l[u])&&(o=r(e,t,o)||o);return o&&d(e,t,o),o};class s extends h{constructor(){super(),this.disabled=!1,this.floating=!1,this.biColor=!1,this.min=1,this.max=99,this.value=4,this.debounce=0,this.minusLoading=!1,this.plusLoading=!1,this.minusButton=null,this.plusButton=null,this.valueText=null,this.icons={minus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-primary.svg",minus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/minus-white.svg",plus:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-primary.svg",plus_white:"https://storage.googleapis.com/assets.miam.tech/generic/icons/plus-white.svg",people:"https://storage.googleapis.com/assets.miam.tech/generic/icons/people-primary.svg"},this.subscriptions=[],this.hydrateOnly=!1,this.styleURL=new URL("./counter/counter.css",this.getBaseURL())}get selectors(){return{minusButton:".mealz-counter__minus",plusButton:".mealz-counter__plus",valueText:".mealz-counter__value-text"}}connectedCallback(){super.connectedCallback(),this.applyStartingDataFromAttribute(),this.valueSubject=new c(this.value),this.subscriptions.push(this.valueSubject.subscribe(()=>{this.updateDOM(),this.requestUpdate()})),this.subscriptions.push(this.valueSubject.pipe(m(this.debounce)).subscribe(()=>{this.dispatchValue()})),this.findElementsInDocument(),this.addEveryEventListeners(),this.updateDOM()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}renderMinus(){return this.minusLoading?a`
|
|
2
2
|
<div class="mealz-ds-loader"></div>
|
|
3
3
|
`:a`
|
|
4
4
|
<img alt="remove one" src="${this.disabled&&this.biColor?this.icons.minus_white:this.icons.minus}">
|
|
@@ -44,4 +44,4 @@ import{N as c,B as m,k as a}from"../assets/no-shadow-element-D62BBu0I.js";import
|
|
|
44
44
|
</button>
|
|
45
45
|
</div>
|
|
46
46
|
</div>
|
|
47
|
-
`}findElementsInDocument(){this.initSelectors(),this.minusButton=this.elements.minusButton,this.plusButton=this.elements.plusButton,this.valueText=this.elements.valueText}addEveryEventListeners(){this.addClickListener("minusButton",this.decrement.bind(this)),this.addClickListener("plusButton",this.increment.bind(this))}applyStartingDataFromAttribute(){const e=this.getAttribute("starting-data");if(e){try{const t=JSON.parse(e);this.hydrateOnly=!0,typeof t.disabled=="boolean"&&(this.disabled=t.disabled),typeof t.floating=="boolean"&&(this.floating=t.floating),typeof t.biColor=="boolean"&&(this.biColor=t.biColor),typeof t.min=="number"&&(this.min=t.min),typeof t.max=="number"&&(this.max=t.max),typeof t.debounce=="number"&&(this.debounce=t.debounce),typeof t.value=="number"&&(this.value=t.value)}catch(t){console.warn("[mealz-counter] Invalid starting-data JSON",t)}this.removeAttribute("starting-data")}}updateDOM(){if(this.valueText&&(this.valueText.textContent=String(this.value)),this.minusButton){const e=this.value===this.min;this.minusButton.classList.toggle("mealz-counter__minus__remove",e)}}decrement(){this.value>this.min&&this.valueSubject.next(--this.value)}increment(){this.value<this.max&&this.valueSubject.next(++this.value)}dispatchValue(){const e={detail:{value:this.value},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("valueChange",e))}}
|
|
47
|
+
`}findElementsInDocument(){this.initSelectors(),this.minusButton=this.elements.minusButton,this.plusButton=this.elements.plusButton,this.valueText=this.elements.valueText}addEveryEventListeners(){this.addClickListener("minusButton",this.decrement.bind(this)),this.addClickListener("plusButton",this.increment.bind(this))}applyStartingDataFromAttribute(){const e=this.getAttribute("starting-data");if(e){try{const t=JSON.parse(e);this.hydrateOnly=!0,typeof t.disabled=="boolean"&&(this.disabled=t.disabled),typeof t.floating=="boolean"&&(this.floating=t.floating),typeof t.biColor=="boolean"&&(this.biColor=t.biColor),typeof t.min=="number"&&(this.min=t.min),typeof t.max=="number"&&(this.max=t.max),typeof t.debounce=="number"&&(this.debounce=t.debounce),typeof t.value=="number"&&(this.value=t.value)}catch(t){console.warn("[mealz-counter] Invalid starting-data JSON",t)}this.removeAttribute("starting-data")}}updateDOM(){if(this.valueText&&(this.valueText.textContent=String(this.value)),this.minusButton){const e=this.value===this.min;this.minusButton.classList.toggle("mealz-counter__minus__remove",e)}}decrement(){this.value>this.min&&this.valueSubject.next(--this.value)}increment(){this.value<this.max&&this.valueSubject.next(++this.value)}dispatchValue(){const e={detail:{value:this.value},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("valueChange",e))}}n([i({type:Boolean})],s.prototype,"disabled");n([i({type:Boolean})],s.prototype,"floating");n([i({type:Boolean})],s.prototype,"biColor");n([i({type:Number})],s.prototype,"min");n([i({type:Number})],s.prototype,"max");n([i({type:Number})],s.prototype,"value");n([i({type:Number})],s.prototype,"debounce");customElements.get("mealz-counter")||customElements.define("mealz-counter",s);
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as c,D as h,k as m}from"../assets/no-shadow-element-D62BBu0I.js";import{n}from"../assets/property-CoRN-Ln2.js";import{a as i}from"../assets/unsafe-html-DWUMaK1p.js";import"../assets/mealz-sdk-E_fNZM-c.js";var p=Object.defineProperty,d=(s,e,a,v)=>{for(var t=void 0,r=s.length-1,l;r>=0;r--)(l=s[r])&&(t=l(e,a,t)||t);return t&&p(e,a,t),t};class o extends c{constructor(){super(),this.headerComponents=[],this.styleURL=new URL("./drawer/drawer.css",this.getBaseURL())}updated(e){(e.has("titleSlot")||e.has("contentSlot"))&&this.setHeaderClass()}connectedCallback(){super.connectedCallback(),this.createCloseEvent()}disconnectedCallback(){this.closeEvent=null,super.disconnectedCallback()}setHeaderClass(){const e=this.getElementsByClassName("mealz-drawer")[0];e&&(e.classList.remove("with-header","without-header"),e.classList.add(this.titleSlot?"with-header":"without-header"))}createCloseEvent(){this.closeEvent=new CustomEvent("drawerClosed",{bubbles:!0,composed:!0})}render(){return m`
|
|
2
2
|
<div @click=${()=>this.closeDrawer()} class="mealz-shadow-overlay"></div>
|
|
3
3
|
<div class="mealz-drawer">
|
|
4
4
|
<div class="mealz-drawer__header">
|
|
5
5
|
<div class="mealz-drawer__header-container">
|
|
6
6
|
<div class="mealz-drawer__title mealz-ds-text size-l weight-xxl">
|
|
7
|
-
${typeof this.titleSlot=="string"?
|
|
7
|
+
${typeof this.titleSlot=="string"?i(this.titleSlot):this.titleSlot}
|
|
8
8
|
</div>
|
|
9
9
|
<button @click=${()=>this.closeDrawer()} class="mealz-drawer__close-icon mealz-ds-button square small">
|
|
10
10
|
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_Black.svg" alt="Close">
|
|
11
11
|
</button>
|
|
12
12
|
</div>
|
|
13
|
-
${this.headerComponents.length>0?this.headerComponents:
|
|
13
|
+
${this.headerComponents.length>0?this.headerComponents:h}
|
|
14
14
|
</div>
|
|
15
15
|
<div class="mealz-drawer__content-container">
|
|
16
|
-
${typeof this.contentSlot=="string"?
|
|
16
|
+
${typeof this.contentSlot=="string"?i(this.contentSlot):this.contentSlot}
|
|
17
17
|
</div>
|
|
18
|
-
</div>`}closeDrawer(){this.dispatchEvent(this.closeEvent),this.remove()}appendToHeaderComponent(e){document.querySelector(".mealz-drawer__header")&&this.headerComponents.push(e),this.requestUpdate()}}
|
|
18
|
+
</div>`}closeDrawer(){this.dispatchEvent(this.closeEvent),this.remove()}appendToHeaderComponent(e){document.querySelector(".mealz-drawer__header")&&this.headerComponents.push(e),this.requestUpdate()}}d([n({type:String})],o.prototype,"titleSlot");d([n({type:String})],o.prototype,"contentSlot");customElements.get("mealz-drawer")||customElements.define("mealz-drawer",o);
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-drawer.min.js";import{N as
|
|
2
|
-
<div class="sponsor-text-blocks sponsor-${
|
|
3
|
-
<span class="sponsor-${
|
|
1
|
+
import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-drawer.min.js";import{N as h,D as d,k as r,B as c}from"../assets/no-shadow-element-D62BBu0I.js";import{n as y}from"../assets/property-CoRN-Ln2.js";import{m as t,w as g,i as S}from"../assets/mealz-sdk-E_fNZM-c.js";import"../recipe-details/recipe-details.min.js";import"../store-locator/store-locator.min.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"../supplier-selector/supplier-selector.min.js";import{o as k,l as P}from"../catalog/basket-preview/basket-preview.min.js";import"../preferences/preferences.min.js";import{m as b}from"../assets/merge-DzIA6T0M.js";import{m as p}from"../assets/map-DT-7dkaR.js";import"../assets/unsafe-html-DWUMaK1p.js";import"../assets/skipWhile-Beza3ws3.js";import"../assets/OperatorSubscriber-DfCnFunn.js";import"../assets/switchMap-BAdE9Uzw.js";import"../assets/innerFrom-DePszgj9.js";import"../assets/filter-q99GWcpD.js";import"../recipe-pricing/recipe-pricing.min.js";import"../assets/viewport-listener-DsRHfwo4.js";import"../assets/debounceTime-Cf_7YmIn.js";import"../assets/async-C5Kj_SqM.js";import"../assets/take-CpvJwza7.js";import"../assets/empty-qrpgDBbc.js";import"../assets/price-D6RVRYHJ.js";import"../assets/singleton-COF3iBbF.js";import"../assets/capitalize-DUAqYmp4.js";import"../counter/counter.min.js";import"../assets/product-card-wIoU7Z_5.js";import"../price/price.min.js";import"../assets/promotion-badge-CDaL7Tqv.js";import"../assets/guestObserver-C5qvv1Ll.js";import"../assets/delay-DHNms76g.js";import"../assets/mergeMap-D2yctTHQ.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/timer-3Kpx74mt.js";import"../assets/isScheduler-CqHuyMwD.js";import"../assets/isDate-BwHtzZM4.js";import"../assets/accordion-BGFgJnk1.js";import"../store-indicator/store-indicator.min.js";import"../assets/state-DDIoBQp5.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"../onboarding/events.min.js";import"../onboarding/analytics/onboarding-analytics.min.js";import"../assets/responsive-C7Qf71r3.js";import"../planner/helpers/planner-onboarding-storage.min.js";import"../assets/tap-BN_fPb40.js";import"../assets/combineLatest-Capvy1jI.js";import"../assets/from-D8c5akO7.js";import"../assets/mapOneOrManyArgs-CHGhEDCk.js";import"../assets/args-DAL2bHut.js";import"../catalog/catalog-load-more.min.js";import"../assets/http-Bepz6wA4.js";import"../replace-item/replace-item-card/replace-item-card.min.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/distinctUntilChanged-kXqVrZ5h.js";import"../replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js";import"../assets/of-DtJFltSl.js";import"../slider-tabs/slider-tabs.min.js";import"../modal/modal.min.js";import"../assets/mergeAll-DpEYIxY3.js";var z=Object.defineProperty,R=(l,e,i,a)=>{for(var s=void 0,o=l.length-1,n;o>=0;o--)(n=l[o])&&(s=n(e,i,s)||s);return s&&z(e,i,s),s};class f extends h{constructor(){super(),this.styleURL=new URL("./recipe-details/sponsor-block/sponsor-block.css",this.getBaseURL())}render(){var w,v,$;if(!this.sponsorBlock)return d;const{pictureUrl:e,content:i,backgroundColor:a="#FFFFFF",fontSize:s=16,fontColor:o="#000000"}=this.sponsorBlock,n=($=(v=(w=this.sponsorBlock.relationships)==null?void 0:w["sponsor-block-type"])==null?void 0:v.data)==null?void 0:$.name;if(!n)return r``;const m=n.toLowerCase(),u=`background-color: ${a}; font-size: ${s}px; color: ${o};`;switch(n){case"TEXT":case"SMALL_TEXT":case"TITLE":case"SMALL_TITLE":return r`
|
|
2
|
+
<div class="sponsor-text-blocks sponsor-${m}-block" style="background-color: ${a};">
|
|
3
|
+
<span class="sponsor-${m}-block__text" style="font-size: ${n.includes("TITLE")?32:16}px; color: ${o};">
|
|
4
4
|
${i}
|
|
5
5
|
</span>
|
|
6
|
-
</div>`;case"LOGO":case"PICTURE":case"SMALL_PICTURE":return
|
|
7
|
-
<div class="sponsor-${
|
|
8
|
-
<img class="sponsor-${
|
|
9
|
-
</div>`;case"IMAGE_WITH_TEXT":return
|
|
6
|
+
</div>`;case"LOGO":case"PICTURE":case"SMALL_PICTURE":return r`
|
|
7
|
+
<div class="sponsor-${m}-block" style="background-color: ${a};">
|
|
8
|
+
<img class="sponsor-${m}-block__picture sponsor-img" src="${e}" />
|
|
9
|
+
</div>`;case"IMAGE_WITH_TEXT":return r`
|
|
10
10
|
<div class="sponsor-image-with-text-block" style="background-image: url(${e});">
|
|
11
|
-
<span class="sponsor-image-with-text-block__text" style="${
|
|
11
|
+
<span class="sponsor-image-with-text-block__text" style="${u}">
|
|
12
12
|
${i}
|
|
13
13
|
</span>
|
|
14
|
-
</div>`;case"IMAGE_AND_TEXT":return
|
|
14
|
+
</div>`;case"IMAGE_AND_TEXT":return r`
|
|
15
15
|
<div class="sponsor-image-and-text-block">
|
|
16
16
|
<img class="sponsor-image-and-text-block__image" src="${e}">
|
|
17
|
-
<span class="sponsor-image-and-text-block__text" style="${
|
|
17
|
+
<span class="sponsor-image-and-text-block__text" style="${u}">
|
|
18
18
|
${i}
|
|
19
19
|
</span>
|
|
20
|
-
</div>`;case"TEXT_AND_IMAGE":return
|
|
20
|
+
</div>`;case"TEXT_AND_IMAGE":return r`
|
|
21
21
|
<div class="sponsor-text-and-image-block">
|
|
22
|
-
<span class="sponsor-text-and-image-block__text" style="${
|
|
22
|
+
<span class="sponsor-text-and-image-block__text" style="${u}">
|
|
23
23
|
${i}
|
|
24
24
|
</span>
|
|
25
25
|
<img class="sponsor-text-and-image-block__image" src="${e}">
|
|
26
|
-
</div>`;default:return d}}}
|
|
26
|
+
</div>`;default:return d}}}R([y()],f.prototype,"sponsorBlock");customElements.get("mealz-sponsor-block")||customElements.define("mealz-sponsor-storytelling",f);class C extends h{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(t.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.getSponsorBlocks())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}getSponsorBlocks(){var i,a,s;const e=(s=(a=(i=this.recipe)==null?void 0:i.relationships)==null?void 0:a.sponsors)==null?void 0:s.data[0];e&&this.subscriptions.push(t.sponsor.getSponsorBlocks(e.id).subscribe(o=>{o&&(this.sponsorBlocks=o,this.requestUpdate())}))}render(){var e;return r`
|
|
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}">
|
|
30
30
|
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/arrow-right.svg" alt="arrow icon"/>
|
|
31
31
|
<span class="mealz-ds-text weight-xl">Retour</span>
|
|
32
32
|
</button>
|
|
33
|
-
${(e=this.recipe)!=null&&e.sponsorLogoUrl?
|
|
33
|
+
${(e=this.recipe)!=null&&e.sponsorLogoUrl?r`<img class="mealz-recipe-addon__header-logo" src="${this.recipe.sponsorLogoUrl}" />`:d}
|
|
34
34
|
</div>
|
|
35
35
|
<div class="mealz-recipe-addon__content">
|
|
36
36
|
${this.renderContent()}
|
|
37
37
|
</div>
|
|
38
38
|
</div>
|
|
39
|
-
`}renderContent(){var e,i;return(i=(e=this.recipe)==null?void 0:e.attributes)!=null&&i["informational-page-html"]?
|
|
39
|
+
`}renderContent(){var e,i;return(i=(e=this.recipe)==null?void 0:e.attributes)!=null&&i["informational-page-html"]?r`
|
|
40
40
|
<iframe
|
|
41
41
|
class="mealz-recipe-addon__content__iframe"
|
|
42
42
|
frameborder="0"
|
|
43
43
|
src="${this.recipe.attributes["informational-page-html"]}">
|
|
44
44
|
</iframe>
|
|
45
|
-
`:
|
|
46
|
-
${this.sponsorBlocks.map(
|
|
47
|
-
<mealz-sponsor-block .sponsorBlock=${
|
|
45
|
+
`:r`
|
|
46
|
+
${this.sponsorBlocks.map(a=>r`
|
|
47
|
+
<mealz-sponsor-block .sponsorBlock=${a}></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)}}
|
|
50
|
-
<div class="mealz-drawer-view-swapper">${this.drawerIsOpen()?this.displayDrawer():d}</div>`}drawerIsOpen(){return this.currentView$.value!==void 0}closeDrawer(){this.displayStoreLocator$.next(!1),this.displayPlannerCatalog$.next(!1),this.displayPreferences$.next(!1),
|
|
49
|
+
`}listenToCloseEvent(){document.querySelector("mealz-drawer").addEventListener("drawerClosed",()=>{this.closeRecipeAddon()})}closeRecipeAddon(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayRecipeAddon$.next(!1)}}customElements.get("mealz-recipe-addon")||customElements.define("mealz-recipe-addon",C);var _=Object.defineProperty,A=(l,e,i,a)=>{for(var s=void 0,o=l.length-1,n;o>=0;o--)(n=l[o])&&(s=n(e,i,s)||s);return s&&_(e,i,s),s};class V extends h{constructor(){super(),this.displayBasketPreview=!1,this.displayProductAddition=!1,this.displayReplaceProduct=!1,this.displayPreferences$=new c(!1),this.displayStoreLocator$=new c(!1),this.displaySupplierSelector$=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.activeViewNames$=new c([]),this.subscriptions=[],this.viewHistory=[],this.scrollPositions=new Map,this.viewSelector=[{isSupplierSelectorVisible:()=>this.displaySupplierSelector$.value},{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(),P(this.currentView$)}connectedCallback(){super.connectedCallback(),this.waitForSDKAndSetup()}waitForSDKAndSetup(){try{g().then(()=>{this.setupSubscriptions()})}catch(e){console.error("Error waiting for MealzInternal SDK:",e)}}setupSubscriptions(){this.subscriptions.push(b(t.pos.currentPos().pipe(p(e=>{this.pos=e,this.noSupplier=t.supplier.isNoSupplier()})),t.recipes.displayedRecipe$.pipe(p(e=>{this.displayedRecipeDetails=e,this.noSupplier&&!this.pos&&e&&t.noSupplier.displaySupplierSelector$.next(!0)})),t.noSupplier.displaySupplierSelector$.pipe(p(e=>{this.displaySupplierSelector$.next(e)})),b(t.replaceItem.basketEntryToReplace$.pipe(p(e=>e||{displayReplaceItem:void 0})),t.replaceItem.replaceProductFromPreviewOpen$.pipe(p(e=>e?{basketEntry:e}:{displayReplaceItem:void 0})),t.replaceItem.additionModalOpen$.pipe(p(e=>e?{addProductMode:!0}:{displayReplaceItem:void 0}))).pipe(p(e=>{this.displayReplaceItem="displayReplaceItem"in e?void 0:e})),t.basket.basketPreviewState$.pipe(p(({isOpen:e})=>this.displayBasketPreview=e)),t.planner.itemToReplace$.pipe(p(e=>this.displayReplaceItemPlanner=e)),this.displayRecipeAddon$,this.displayStoreLocator$,this.displayPlannerCatalog$,this.displayHistoryDrawer$,this.displayPreferences$).subscribe(()=>{this.updateActiveViews(),this.findView(),this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}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)}getDrawerContentContainer(){return this.querySelector(".mealz-drawer__content-container")}getNextViewName(){return this.computeActiveViewNames()[0]}computeActiveViewNames(){const e=[];for(const i of this.viewSelector){const[a,s]=Object.entries(i)[0];s()&&e.push(a)}return e}getActiveViewNames(){return[...this.activeViewNames$.value]}updateActiveViews(){const e=this.computeActiveViewNames(),i=this.activeViewNames$.value;(e.length!==i.length||e.some((s,o)=>s!==i[o]))&&(this.activeViewNames$.next(e),this.dispatchEvent(new CustomEvent("mealz-active-views-changed",{detail:{activeViews:e},bubbles:!0,composed:!0})))}saveCurrentScrollPosition(){if(this.currentView$.value){const e=this.getDrawerContentContainer();e&&this.scrollPositions.set(this.currentView$.value,e.scrollTop)}}restoreScrollPosition(e){requestAnimationFrame(()=>{const i=this.getDrawerContentContainer();i&&this.scrollPositions.has(e)&&(i.scrollTop=this.scrollPositions.get(e)??0)})}resetScrollPositions(){this.scrollPositions.clear()}addToHistory(e){this.viewHistory[this.viewHistory.length-1]!==e&&this.viewHistory.push(e)}render(){return r`
|
|
50
|
+
<div class="mealz-drawer-view-swapper">${this.drawerIsOpen()?this.displayDrawer():d}</div>`}drawerIsOpen(){return this.currentView$.value!==void 0}closeDrawer(){this.displayStoreLocator$.next(!1),this.displayPlannerCatalog$.next(!1),this.displayPreferences$.next(!1),S()&&(t.recipes.displayedRecipe$.next(null),t.basket.basketPreviewState$.next({isOpen:!1}),t.noSupplier&&t.noSupplier.displaySupplierSelector$&&t.noSupplier.displaySupplierSelector$.next(!1),t.productAddition&&typeof t.productAddition.close=="function"&&t.productAddition.close())}displayDrawer(){return this.drawerIsOpen()?r`
|
|
51
51
|
<mealz-drawer @drawerClosed=${this.closeDrawer}
|
|
52
52
|
.titleSlot=
|
|
53
|
-
${this.currentView$.value==="isSupplierSelectorVisible"?
|
|
54
|
-
.contentSlot=${
|
|
53
|
+
${this.currentView$.value==="isSupplierSelectorVisible"?r`<span>Mes courses avec Marmiton</span>`:this.currentView$.value==="isBasketPreviewVisible"?r`<span>Mes repas</span>`:this.currentView$.value==="isHistoryDrawerVisible"?r`<span>Commande du ${this.displayHistoryDrawer$.value.orderDate}</span>`:this.currentView$.value==="isPlannerCatalogVisible"?r`<span>Ajouter une recette</span>`:d}
|
|
54
|
+
.contentSlot=${r`
|
|
55
55
|
<mealz-supplier-selector
|
|
56
56
|
class="${this.currentView$.value==="isSupplierSelectorVisible"?"visible":"hidden"}">
|
|
57
57
|
</mealz-supplier-selector>
|
|
@@ -93,4 +93,4 @@ import"../drawer/drawer.min.js";import"../store-locator-drawer/store-locator-dra
|
|
|
93
93
|
</mealz-history-drawer>
|
|
94
94
|
`}
|
|
95
95
|
</mealz-drawer>
|
|
96
|
-
`:
|
|
96
|
+
`:r``}}A([y({type:Boolean})],V.prototype,"displayBasketPreview");customElements.get("mealz-drawer-view-swapper")||customElements.define("mealz-drawer-view-swapper",V);if(!document.querySelector("mealz-drawer-view-swapper")){const l=document.createElement("mealz-drawer-view-swapper");document.body.appendChild(l)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as l,k as h}from"../assets/no-shadow-element-D62BBu0I.js";import{
|
|
1
|
+
import{N as l,k as h}from"../assets/no-shadow-element-D62BBu0I.js";import{n as c}from"../assets/property-CoRN-Ln2.js";import{b as w}from"../assets/http-Bepz6wA4.js";import{a as m}from"../assets/unsafe-html-DWUMaK1p.js";import{s as u}from"../assets/skipWhile-Beza3ws3.js";import{s as f}from"../assets/switchMap-BAdE9Uzw.js";import{m as D}from"../assets/map-DT-7dkaR.js";import{o as n}from"../assets/of-DtJFltSl.js";import"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/OperatorSubscriber-DfCnFunn.js";import"../assets/innerFrom-DePszgj9.js";import"../assets/args-DAL2bHut.js";import"../assets/isScheduler-CqHuyMwD.js";import"../assets/from-D8c5akO7.js";import"../assets/executeSchedule-CEDvgTzM.js";var y=Object.defineProperty,C=(o,r,s,a)=>{for(var t=void 0,e=o.length-1,i;e>=0;e--)(i=o[e])&&(t=i(r,s,t)||t);return t&&y(r,s,t),t};class d extends l{constructor(){super(...arguments),this.skipInitialUpdate=!1,this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.historyOrderDisplay&&(this.skipInitialUpdate=!0,this.listenToCloseEvent(),this.loadDrawerContent())}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(r=>r.unsubscribe())}updated(r){if(this.skipInitialUpdate){this.skipInitialUpdate=!1;return}r.has("historyOrderDisplay")&&this.historyOrderDisplay&&this.loadDrawerContent()}render(){if(!(!this.drawerContent||!this.historyOrderDisplay))return h`${m(this.drawerContent)}`}loadDrawerContent(){const{historyDrawerData:r,orderId:s}=this.historyOrderDisplay;this.subscriptions.push(this.setDataFromStartingData(r,s).subscribe(({drawerContent:a})=>{a&&(this.drawerContent=a,this.requestUpdate())}))}listenToCloseEvent(){document.querySelector("mealz-drawer").addEventListener("drawerClosed",()=>{this.closeHistoryDrawer(),this.drawerClose()})}closeHistoryDrawer(){const r=document.querySelector("mealz-drawer-view-swapper");r&&r.displayHistoryDrawer$.next(null)}drawerClose(){const r=new URL(window.location.href);r.searchParams.delete("order"),window.history.pushState({},"",r.toString())}fetchDrawerData(r,s,a,t){const e=new URLSearchParams;return e.append("order",s.toString()),t&&e.append("store_id",t),this.isMealzInternalReady$.pipe(u(i=>!i),f(async()=>{const i=w(a),p=r.includes("?")?"&":"?";return await(await fetch(r+p+e.toString(),{method:"GET",headers:i})).text()}))}setDrawerData(r,s,a,t){return this.fetchDrawerData(r,s,a,t).pipe(D(e=>(this.drawerContent=e||"",{drawerContent:this.drawerContent})))}setDataFromStartingData(r,s){if(this.drawerContent)return n({drawerContent:this.drawerContent});const a=JSON.parse(r),{storeId:t,sessionId:e,drawerDataURL:i}=a;return!e||!i?n(null):this.setDrawerData(i,s,e,t)}}C([c({type:Object})],d.prototype,"historyOrderDisplay");customElements.get("mealz-history-drawer")||customElements.define("mealz-history-drawer",d);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as n}from"../assets/no-shadow-element-D62BBu0I.js";import"../assets/mealz-sdk-E_fNZM-c.js";class h extends n{connectedCallback(){var a;if(super.connectedCallback(),this.historyOrderHTML=this.querySelector(".mealz-history-order"),!this.historyOrderHTML)return;const e=(a=this.attributes["starting-data"])==null?void 0:a.value;if(!e)return;const{orderId:r,updatedAt:t,storeId:s,sessionId:i,drawerDataURL:o}=JSON.parse(e),d=JSON.stringify({storeId:s,sessionId:i,drawerDataURL:o});this.historyOrderHTML.addEventListener("click",()=>{this.updateURLWithOrder(r),this.openHistoryDrawer(d,r,t)}),this.removeAttribute("starting-data")}updateURLWithOrder(e){const r=new URL(window.location.href);r.searchParams.set("order",e),window.history.pushState({},"",r.toString())}openHistoryDrawer(e,r,t){document.querySelector("mealz-drawer-view-swapper").displayHistoryDrawer$.next({historyDrawerData:e,orderId:r,orderDate:t})}}customElements.get("mealz-history-order")||customElements.define("mealz-history-order",h);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{N as n}from"../assets/no-shadow-element-D62BBu0I.js";import{m as o}from"../assets/mealz-sdk-E_fNZM-c.js";class d extends n{render(){var r;this.recipesElements=Array.from(this.querySelectorAll(".mealz-history-order-expanded__recipe"));const t=(r=this.attributes["starting-data"])==null?void 0:r.value;if(!t)return;const{recipesInfos:s}=JSON.parse(t);this.recipesElements.forEach((a,i)=>{a.addEventListener("click",()=>{const e=JSON.parse(s[i].startingData);o.recipes.openDetails(e.id,e.guests,e.initialTabIndex)})}),this.removeAttribute("starting-data")}}customElements.get("mealz-history-order-expanded")||customElements.define("mealz-history-order-expanded",d);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../price/price.min.js";import"../assets/product-card-
|
|
1
|
+
import"../price/price.min.js";import"../assets/product-card-wIoU7Z_5.js";import"../counter/counter.min.js";import"../assets/promotion-badge-CDaL7Tqv.js";import{N as p,k as l}from"../assets/no-shadow-element-D62BBu0I.js";import{n as d}from"../assets/property-CoRN-Ln2.js";import"../assets/price-D6RVRYHJ.js";import"../assets/singleton-COF3iBbF.js";import"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/guestObserver-C5qvv1Ll.js";import"../assets/capitalize-DUAqYmp4.js";import"../assets/delay-DHNms76g.js";import"../assets/async-C5Kj_SqM.js";import"../assets/take-CpvJwza7.js";import"../assets/empty-qrpgDBbc.js";import"../assets/OperatorSubscriber-DfCnFunn.js";import"../assets/map-DT-7dkaR.js";import"../assets/mergeMap-D2yctTHQ.js";import"../assets/innerFrom-DePszgj9.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/timer-3Kpx74mt.js";import"../assets/isScheduler-CqHuyMwD.js";import"../assets/isDate-BwHtzZM4.js";import"../assets/debounceTime-Cf_7YmIn.js";var n=Object.defineProperty,m=(r,e,a,g)=>{for(var t=void 0,o=r.length-1,i;o>=0;o--)(i=r[o])&&(t=i(e,a,t)||t);return t&&n(e,a,t),t};class s extends p{constructor(){super(),this.disabled=!1,this.styleURL=new URL("./last-order-badge/last-order-badge.css",this.getBaseURL())}toggleLastOrderModal(){if(this.disabled)return;const e=new CustomEvent("openLastOrderModal");this.dispatchEvent(e)}render(){return l`
|
|
2
2
|
<button
|
|
3
3
|
class="mealz-last-order-badge mealz-ds-badge"
|
|
4
4
|
?disabled=${this.disabled}
|
|
@@ -10,4 +10,4 @@ import"../price/price.min.js";import"../assets/product-card-TLfT6URx.js";import"
|
|
|
10
10
|
<span>${this.orderHistoryDate}</span>
|
|
11
11
|
</div>
|
|
12
12
|
</button>
|
|
13
|
-
`}}
|
|
13
|
+
`}}m([d({type:String})],s.prototype,"orderHistoryDate");m([d({type:Boolean,reflect:!0})],s.prototype,"disabled");customElements.get("mealz-last-order-badge")||customElements.define("mealz-last-order-badge",s);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import"../price/price.min.js";import"../assets/product-card-
|
|
1
|
+
import"../price/price.min.js";import"../assets/product-card-wIoU7Z_5.js";import"../counter/counter.min.js";import"../assets/promotion-badge-CDaL7Tqv.js";import{N as a,k as e,D as o}from"../assets/no-shadow-element-D62BBu0I.js";import{m as i}from"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/property-CoRN-Ln2.js";import"../assets/price-D6RVRYHJ.js";import"../assets/singleton-COF3iBbF.js";import"../assets/guestObserver-C5qvv1Ll.js";import"../assets/capitalize-DUAqYmp4.js";import"../assets/delay-DHNms76g.js";import"../assets/async-C5Kj_SqM.js";import"../assets/take-CpvJwza7.js";import"../assets/empty-qrpgDBbc.js";import"../assets/OperatorSubscriber-DfCnFunn.js";import"../assets/map-DT-7dkaR.js";import"../assets/mergeMap-D2yctTHQ.js";import"../assets/innerFrom-DePszgj9.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/timer-3Kpx74mt.js";import"../assets/isScheduler-CqHuyMwD.js";import"../assets/isDate-BwHtzZM4.js";import"../assets/debounceTime-Cf_7YmIn.js";class n extends a{constructor(){super(),this.inBasket=!1,this.subscriptions=[],this.styleURL=new URL("./last-order-modal/last-order-modal.css",this.getBaseURL())}displayLastOrderModal(t){this.isRecipeInBasket(),this.analyticsPath=`/recipes/${this.recipeId}/shopping`,this.orderLabel=t;const s=document.createElement("mealz-modal");s.titleSlot=e`<span>Commande du ${this.orderLabel}</span>`,s.contentSlot=this.renderModal(),this.appendChild(s),document.body.appendChild(this),s.addEventListener("modalClosed",()=>{this.subscriptions.forEach(r=>r.unsubscribe()),this.remove()})}isRecipeInBasket(){this.subscriptions.push(i.recipes.recipePrice$.subscribe(t=>{this.inBasket=t.inBasket>0,this.requestUpdate()}))}orderAgain(){const t=new CustomEvent("orderAgain");this.dispatchEvent(t),this.sendAddAllAgainEvent(),this.remove()}renderModal(){return e`
|
|
2
2
|
<div class="mealz-last-order-modal__content">
|
|
3
3
|
<div class="mealz-last-order-modal__description">
|
|
4
4
|
<span class="mealz-ds-text size-m">
|
|
5
|
-
${this.inBasket?
|
|
5
|
+
${this.inBasket?e`Vous avez déjà ajouté cette recette à votre panier.`:e`Nous avons conservé votre dernière sélection de produits pour cette recette`}
|
|
6
6
|
</span>
|
|
7
7
|
</div>
|
|
8
|
-
${this.inBasket?
|
|
8
|
+
${this.inBasket?o:e`
|
|
9
9
|
<div class="mealz-last-order-modal__button-container">
|
|
10
10
|
<button @click=${()=>this.orderAgain()}
|
|
11
11
|
class="mealz-ds-button primary mealz-ds-text weight-l mealz-last-order-modal__order-again-button">
|
|
@@ -14,4 +14,4 @@ import"../price/price.min.js";import"../assets/product-card-TLfT6URx.js";import"
|
|
|
14
14
|
</div>
|
|
15
15
|
`}
|
|
16
16
|
</div>
|
|
17
|
-
`}sendAddAllAgainEvent(){
|
|
17
|
+
`}sendAddAllAgainEvent(){i.analytics.sendEvent("entry.add-all-again",this.analyticsPath,{recipe_id:this.recipeId,entry_count:i.recipes.remainingBasketEntries$.value.length})}}customElements.get("mealz-last-order-modal")||customElements.define("mealz-last-order-modal",n);export{n as L};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as h}from"../assets/no-shadow-element-D62BBu0I.js";import{m as e}from"../assets/mealz-sdk-E_fNZM-c.js";class c extends h{constructor(){super(),this.liked=null,this.likeId="",this.recipeId="",this.analyticsPath="",this.subscriptions=[],this.styleURL=new URL("./like-button/like-button.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(e.recipes.recipeLikeUpdated().subscribe(({id:t,isPast:i})=>{t===this.recipeId&&(this.liked=!i,this.updateDOM())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(t=>t.unsubscribe())}render(){this.button=this.querySelector(".mealz-like-button"),this.button&&(this.icon=this.button.querySelector(".mealz-like-button__icon"),this.hearts=Array.from(this.button.querySelectorAll(".mealz-like-button__icon img")),!(!this.icon||!this.hearts)&&(this.getInitialStatus(),this.button.addEventListener("click",t=>{t.stopPropagation(),this.toggle()})))}getInitialStatus(){var a;const t=(a=this.attributes["starting-data"])==null?void 0:a.value;if(!t)return;const{id:i,recipeId:l,liked:s,path:n,likeHidden:r}=JSON.parse(t);this.likeId=i,this.recipeId=l,this.liked=s!==void 0?s:!1,this.analyticsPath=n,r&&this.initHiddenLike(),this.removeAttribute("starting-data")}initHiddenLike(){this.subscriptions.push(e.recipes.getRecipeLike(this.recipeId).subscribe(t=>{this.likeId=t.id,this.liked=t.attributes["is-past"]===!1,this.updateDOM(),this.button.classList.remove("hidden")}))}toggle(){e.recipes.updateRecipeLike(this.likeId,this.recipeId,this.liked,this.analyticsPath)}updateDOM(){this.button&&(this.icon.classList.toggle("fill",this.liked),this.hearts[0].classList.toggle("active",!this.liked),this.hearts[1].classList.toggle("active",this.liked))}}customElements.get("mealz-like-button")||customElements.define("mealz-like-button",c);
|
package/dist/modal/modal.min.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import{R as u,N as p,D as b,k as f}from"../assets/no-shadow-element-D62BBu0I.js";import{
|
|
1
|
+
import{R as u,N as p,D as b,k as f}from"../assets/no-shadow-element-D62BBu0I.js";import{n as a}from"../assets/property-CoRN-Ln2.js";import{e as v,i as y,t as C,a as d}from"../assets/unsafe-html-DWUMaK1p.js";import{M as m,a as g}from"../onboarding/events.min.js";import"../assets/mealz-sdk-E_fNZM-c.js";/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2018 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
-
*/const h="important",
|
|
5
|
+
*/const h="important",E=" !"+h,k=v(class extends y{constructor(i){var e;if(super(i),i.type!==C.ATTRIBUTE||i.name!=="style"||((e=i.strings)==null?void 0:e.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(i){return Object.keys(i).reduce((e,s)=>{const t=i[s];return t==null?e:e+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${t};`},"")}update(i,[e]){const{style:s}=i.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(const t of this.ft)e[t]==null&&(this.ft.delete(t),t.includes("-")?s.removeProperty(t):s[t]=null);for(const t in e){const o=e[t];if(o!=null){this.ft.add(t);const l=typeof o=="string"&&o.endsWith(E);t.includes("-")||l?s.setProperty(t,l?o.slice(0,-11):o,l?h:""):s[t]=o}}return u}});var S=Object.defineProperty,r=(i,e,s,t)=>{for(var o=void 0,l=i.length-1,c;l>=0;l--)(c=i[l])&&(o=c(e,s,o)||o);return o&&S(e,s,o),o};class n extends p{constructor(){super(),this.titleSlot="",this.contentSlot="",this.disableMobileBottomSheet=!1,this.modalClickHandlers=[],this.boundHandleOnboardingConfirmed=()=>{this.closeByUser("action")},this.styleURL=new URL("./modal/modal.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.createCloseEvent(),this.addEventListener("onboardingConfirmed",this.boundHandleOnboardingConfirmed),this.wireCloseTargets()}disconnectedCallback(){this.removeEventListener("onboardingConfirmed",this.boundHandleOnboardingConfirmed),this.cleanupModalClickHandlers(),super.disconnectedCallback()}createCloseEvent(){this.closeEvent=new CustomEvent(m,{bubbles:!0,composed:!0})}render(){const e=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 600px)").matches,s=this.disableMobileBottomSheet&&e?k({top:"50%",bottom:"unset",right:"unset",borderRadius:"16px",margin:"0 16px",transform:"translate(0, -50%)"}):b;return f`
|
|
6
6
|
<div @click=${()=>this.closeByUser("overlay")} class="mealz-shadow-overlay"></div>
|
|
7
|
-
<div class="mealz-modal" style=${
|
|
7
|
+
<div class="mealz-modal" style=${s}>
|
|
8
8
|
<div class="mealz-modal__header">
|
|
9
9
|
<div class="mealz-modal__title mealz-ds-text weight-xxl">
|
|
10
10
|
${typeof this.titleSlot=="string"?d(this.titleSlot):this.titleSlot}
|
|
@@ -19,4 +19,4 @@ import{R as u,N as p,D as b,k as f}from"../assets/no-shadow-element-D62BBu0I.js"
|
|
|
19
19
|
${typeof this.contentSlot=="string"?d(this.contentSlot):this.contentSlot}
|
|
20
20
|
</div>
|
|
21
21
|
</div>
|
|
22
|
-
`}close(){this.dispatchEvent(this.closeEvent),this.remove()}closeByUser(
|
|
22
|
+
`}close(){this.dispatchEvent(this.closeEvent),this.remove()}closeByUser(e="action"){const s=new CustomEvent(g,{bubbles:!0,composed:!0,cancelable:!0,detail:{origin:e}});if(!this.dispatchEvent(s))return;const o=new CustomEvent(m,{bubbles:!0,composed:!0,detail:{origin:e}});this.dispatchEvent(o),this.remove()}wireCloseTargets(){if(!this.closeTargets)return;const{closeOverlay:e,closeButton:s}=this.closeTargets;if(e){const t=this.querySelector(e);t&&this.addModalClickListener(t,()=>this.closeByUser("overlay"))}if(s){const t=this.querySelector(s);t&&this.addModalClickListener(t,()=>this.closeByUser("x"))}}addModalClickListener(e,s){const t=s;e.addEventListener("click",t),this.modalClickHandlers.push({element:e,handler:t})}cleanupModalClickHandlers(){this.modalClickHandlers.forEach(({element:e,handler:s})=>{e.removeEventListener("click",s)}),this.modalClickHandlers=[]}}r([a({type:String})],n.prototype,"titleSlot");r([a({type:String})],n.prototype,"contentSlot");r([a({attribute:!1})],n.prototype,"closeTargets");r([a({type:Boolean,attribute:"disable-mobile-bottom-sheet"})],n.prototype,"disableMobileBottomSheet");customElements.get("mealz-modal")||customElements.define("mealz-modal",n);export{n as M};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{N as n}from"../assets/no-shadow-element-D62BBu0I.js";import{m as e}from"../assets/mealz-sdk-E_fNZM-c.js";class r extends n{constructor(){super(...arguments),this.inBasket=!1,this.showFixedButton=!1,this.recipeId="",this.subscriptions=[],this.inBasketContent=`
|
|
2
2
|
<img alt="see ingredients in icon" src="https://storage.googleapis.com/assets.miam.tech/generic/icons/InCart_primary.svg"/>
|
|
3
3
|
<span class="mealz-ds-text weight-l">Voir les ingrédients</span>
|
|
4
4
|
`,this.addToBasketContent=`
|
|
5
5
|
<img alt="add ingredients to basket icon" src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Basket.svg"/>
|
|
6
6
|
<span class="mealz-ds-text weight-l">Acheter les ingrédients</span>
|
|
7
|
-
`}disconnectedCallback(){super.disconnectedCallback(),this.observer&&this.ctaBtn&&(this.observer.unobserve(this.ctaBtn),this.observer.disconnect()),this.subscriptions.forEach(t=>t.unsubscribe())}render(){this.ctaBtn=this.querySelector(".mealz-no-supplier-add-to-cart-cta.mealz-no-supplier-add-to-cart-cta--static"),this.fixedCtaBtn=this.querySelector(".mealz-no-supplier-add-to-cart-cta.mealz-no-supplier-add-to-cart-cta--fixed"),!(!this.ctaBtn||!this.fixedCtaBtn)&&(this.getInitialStatus(),this.listenToRecipeInBasket(),this.setupEventListeners(),this.setupIntersectionObserver())}getInitialStatus(){const t=this.getAttribute("starting-data");if(!t)return;const{recipeId:
|
|
7
|
+
`}disconnectedCallback(){super.disconnectedCallback(),this.observer&&this.ctaBtn&&(this.observer.unobserve(this.ctaBtn),this.observer.disconnect()),this.subscriptions.forEach(t=>t.unsubscribe())}render(){this.ctaBtn=this.querySelector(".mealz-no-supplier-add-to-cart-cta.mealz-no-supplier-add-to-cart-cta--static"),this.fixedCtaBtn=this.querySelector(".mealz-no-supplier-add-to-cart-cta.mealz-no-supplier-add-to-cart-cta--fixed"),!(!this.ctaBtn||!this.fixedCtaBtn)&&(this.getInitialStatus(),this.listenToRecipeInBasket(),this.setupEventListeners(),this.setupIntersectionObserver())}getInitialStatus(){const t=this.getAttribute("starting-data");if(!t)return;const{recipeId:a,inBasket:s,guests:i}=JSON.parse(t);this.recipeId=a,this.inBasket=s!==void 0?s:!1,this.guests=typeof i=="number"?i:void 0,this.removeAttribute("starting-data")}setupEventListeners(){this.ctaBtn.addEventListener("click",t=>{t.stopPropagation(),this.handleCtaClick()}),this.fixedCtaBtn.addEventListener("click",t=>{t.stopPropagation(),this.handleCtaClick()})}setupIntersectionObserver(){this.observer=new IntersectionObserver(([t])=>{this.showFixedButton=!t.isIntersecting,this.fixedCtaBtn.style.display=this.showFixedButton?"flex":"none",this.showFixedButton&&(this.fixedCtaBtn.style.animation="slideUp 300ms cubic-bezier(.25,.8,.25,1)")},{threshold:0}),this.observer.observe(this.ctaBtn)}updateDOM(){this.updateButtonState(this.ctaBtn),this.updateButtonState(this.fixedCtaBtn)}updateButtonState(t){t&&(this.inBasket?(t.className=t.className.replace("primary","secondary"),t.innerHTML=this.inBasketContent):(t.className=t.className.replace("secondary","primary"),t.innerHTML=this.addToBasketContent))}handleCtaClick(){this.inBasket?e.recipes.openDetails(this.recipeId,null,0,"",!0):e.noSupplier.addRecipeToBasketFromIdAndOpenPreview(this.recipeId,this.guests)}listenToRecipeInBasket(){this.subscriptions.push(e.recipes.isRecipeInBasket(this.recipeId).subscribe(t=>{this.inBasket=t,this.updateDOM()}))}}customElements.get("mealz-no-supplier-add-to-cart-cta")||customElements.define("mealz-no-supplier-add-to-cart-cta",r);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as b,k as d}from"../assets/no-shadow-element-D62BBu0I.js";import{n as u}from"../assets/property-CoRN-Ln2.js";import{r as m}from"../assets/state-DDIoBQp5.js";import{e as g}from"../assets/query-BApjzB0v.js";import{O as S,c as E,b as y}from"./events.min.js";import"../assets/mealz-sdk-E_fNZM-c.js";var w=Object.defineProperty,a=(f,t,e,o)=>{for(var s=void 0,i=f.length-1,n;i>=0;i--)(n=f[i])&&(s=n(t,e,s)||s);return s&&w(t,e,s),s},p;const l=(p=class extends b{constructor(){super(),this.isTourActive=!1,this.stepIndex=0,this.popoverTitle="",this.popoverDescription="",this.steps=[],this.showProgress=!0,this.bottomMargin=110,this.configurations={},this.type="guide",this.highlightedElement=null,this.isThrottling=!1,this.originalBodyOverflow=null,this.originalDrawerOverflow=null,this.drawerContainer=null,this.drawerScrollTimeout=null,this.cachedRootElement=null,this.lastStageTargetTopPx=null,this.cachedNodesWithStyles=[],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.boundOnDrawerScroll=this.onDrawerScroll.bind(this),this.boundHandleWindowScroll=this.handleWindowScroll.bind(this),this.scrollDisableTransitionTimeout=null,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)}getStepSeenStorageKey(t){return`${p.STEP_SEEN_KEY_PREFIX}${t}`}hasSeenStep(t){try{return localStorage.getItem(this.getStepSeenStorageKey(t))==="true"}catch{return!1}}markStepAsSeen(t){try{localStorage.setItem(this.getStepSeenStorageKey(t),"true")}catch{}}filterAlreadySeenSteps(t){return(t||[]).filter(e=>!e.stepId||!this.hasSeenStep(e.stepId))}startOnboardingTour(){const t=this.getConfig(this.type);return t&&(this.steps=this.filterAlreadySeenSteps(t.steps||[]),this.showProgress=t.showProgress??this.steps.length>1),!this.steps||this.steps.length===0?!1:(this.stepIndex=0,this.applyCurrentStep(),this.isTourActive=!0,this.bindGlobalEvents(!0),this.focusPopoverAsync(),!0)}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.dispatchEvent(new CustomEvent(S))}shouldShowProgress(){return this.showProgress}getPopoverStyle(){var e;const t=(e=this.currentStep)==null?void 0:e.popover;return(t==null?void 0:t.fixedPosition)==="top"?`top: ${t.fixedOffset??0}px !important; bottom: initial !important;`:(t==null?void 0:t.fixedPosition)==="bottom"?`top: initial !important; bottom: ${t.fixedOffset??this.bottomMargin}px !important;`:`bottom: ${this.bottomMargin}px !important;`}render(){return this.isTourActive?d`
|
|
2
2
|
<div class="mealz-onboarding-overlay" aria-hidden="true"></div>
|
|
3
3
|
<div class="mealz-onboarding-stage" aria-hidden="true" @click=${()=>this.goToNextStep()}></div>
|
|
4
4
|
<div class="mealz-onboarding-popover ${this.bottomMargin===0?"mealz-onboarding-popover__no-bottom-radius":""}"
|
|
@@ -20,7 +20,7 @@ import{N as v,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as b
|
|
|
20
20
|
${this.popoverDescriptionTemplate()}
|
|
21
21
|
</div>
|
|
22
22
|
<div class="mealz-onboarding-popover__footer ${this.shouldShowProgress()?"":"mealz-onboarding-popover__footer-centered"}">
|
|
23
|
-
${this.shouldShowProgress()?
|
|
23
|
+
${this.shouldShowProgress()?d`
|
|
24
24
|
<div class="mealz-onboarding-popover__progress"
|
|
25
25
|
style="--value:${this.stepIndex+1}; --total:${this.steps.length}">
|
|
26
26
|
<div class="mealz-onboarding-popover__progress-inner">
|
|
@@ -31,11 +31,11 @@ import{N as v,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as b
|
|
|
31
31
|
${this.popoverNextButtonTemplate()}
|
|
32
32
|
</div>
|
|
33
33
|
</div>
|
|
34
|
-
`:null}popoverTitleTemplate(){return this.popoverTitle?
|
|
34
|
+
`:null}popoverTitleTemplate(){return this.popoverTitle?d`<span class="mealz-ds-text weight-xxl size-m">${this.popoverTitle}</span>`:null}popoverDescriptionTemplate(){return this.popoverDescription?d`<div class="mealz-ds-text size-m" .innerHTML=${this.popoverDescription}></div>`:null}popoverNextButtonTemplate(){return d`
|
|
35
35
|
<button class="mealz-onboarding-popover__footer-button mealz-ds-button primary"
|
|
36
36
|
@click=${()=>this.goToNextStep()}>
|
|
37
37
|
<span class="mealz-ds-text size-m">
|
|
38
38
|
${this.isFinalStep()?"J'ai compris":"Suivant"}
|
|
39
39
|
</span>
|
|
40
40
|
</button>
|
|
41
|
-
`}isFinalStep(){return this.stepIndex>=this.steps.length-1}goToNextStep(){if(this.isFinalStep())return this.dispatchEvent(new CustomEvent(
|
|
41
|
+
`}isFinalStep(){return this.stepIndex>=this.steps.length-1}goToNextStep(){if(this.isFinalStep())return this.dispatchEvent(new CustomEvent(E)),this.endOnboardingTour();this.disableHoverBlock(),this.stepIndex+=1,this.applyCurrentStep(),this.dispatchEvent(new CustomEvent(y,{detail:{stepIndex:this.stepIndex}}))}applyCurrentStep(){var o;if(this.removeHighlight(),!this.currentStep)return;this.currentStep.stepId&&this.markStepAsSeen(this.currentStep.stepId);const t=this.getCurrentElement();t&&(this.highlightedElement=t,t.classList.add("mealz-onboarding-highlight"),this.scrollToTargetElement(t),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()}scrollToTargetElement(t){var e,o;if((e=this.currentStep)!=null&&e.forceScrollIntoView||!this.isElementFullyVisible(t)&&t.tagName.toLowerCase()!=="div"){const s=window.matchMedia("(max-width: 768px)").matches;t.scrollIntoView({behavior:"smooth",block:"center",inline:s?"nearest":"center",...(o=this.currentStep)==null?void 0:o.scrollIntoViewOptionsOverride})}}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 s=Array.from(document.querySelectorAll(t));return s.length===0?null:s.find(n=>this.isElementFullyVisible(n))||s[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:""}),this.lastStageTargetTopPx=null}updateStagePosition(){if(!this.stageElement)return;const t=this.highlightedElement;if(!t){this.resetStageElement();return}const e=10,o=t.getBoundingClientRect(),s={top:0,left:0,right:window.innerWidth,bottom:window.innerHeight},i={top:Math.max(o.top,s.top),bottom:Math.min(o.bottom,s.bottom),left:Math.max(o.left,s.left),right:Math.min(o.right,s.right)};if(this.applyClippingElements(t,i),i.top>=i.bottom||i.left>=i.right){this.resetStageElement();return}const n=window.matchMedia("(max-width: 768px)").matches;let r=i.left-e,h=i.right-i.left+e*2;n&&r<0&&h>=window.innerWidth&&(r=8,h=Math.max(0,window.innerWidth-16));const c=i.top-e;this.lastStageTargetTopPx=c,Object.assign(this.stageElement.style,{position:"fixed",top:`${c}px`,left:`${r}px`,width:`${h}px`,height:`${i.bottom-i.top+e*2}px`})}applyClippingElements(t,e){[".mealz-planner-current-menu__footer"].forEach(s=>{var r,h;const i=document.querySelector(s);if(!i||!((r=i.parentElement)!=null&&r.contains(t))||(h=t.parentElement)!=null&&h.contains(i)||i.contains(t)||t.contains(i))return;const n=i.getBoundingClientRect();n.top<e.bottom&&n.bottom>e.top&&(e.bottom=Math.min(e.bottom,n.top))})}setStageTransitionEnabled(t){this.stageElement&&(this.stageElement.style.transition=t?"":"none")}handleWindowScroll(){this.isTourActive&&(this.setStageTransitionEnabled(!1),this.updateStagePosition(),this.updatePopoverPosition(),this.scrollDisableTransitionTimeout&&clearTimeout(this.scrollDisableTransitionTimeout),this.scrollDisableTransitionTimeout=window.setTimeout(()=>{this.setStageTransitionEnabled(!0),this.scrollDisableTransitionTimeout=null},120))}throttledStageUpdate(){this.isThrottling||(this.isThrottling=!0,requestAnimationFrame(()=>{this.updateStagePosition(),this.updatePopoverPosition(),this.isThrottling=!1}))}updatePopoverPosition(){var c;if(!this.popoverElement)return;const t=(c=this.currentStep)==null?void 0:c.popover;if(!t||t.fixedPosition)return;if(typeof t.spacerAboveStage=="number"){if(typeof this.lastStageTargetTopPx!="number")return;const v=window.innerHeight-this.lastStageTargetTopPx+t.spacerAboveStage;this.popoverElement.style.bottom=`${v}px`;return}let e=null;const o=t.overElement;if(!o||(typeof o=="string"?e=document.querySelector(o):o instanceof HTMLElement&&(e=o),!e))return;const s=e.getBoundingClientRect(),i=t.spacerTop??0,n=t.spacerLeft??0,r=t.spacerRight??0,h=t.spacerBottom??0;this.popoverElement.style.top=`${s.top}px`,this.popoverElement.style.left=`${s.left}px`,this.popoverElement.style.right="initial",this.popoverElement.style.bottom="initial",this.popoverElement.style.transform="initial",r&&(this.popoverElement.style.left="initial",this.popoverElement.style.right=`${s.right+r}px`),h&&(this.popoverElement.style.top="initial",this.popoverElement.style.bottom=`${s.bottom+h}px`),i&&(this.popoverElement.style.top=`${s.top+i}px`),n&&(this.popoverElement.style.left=`${s.left+n}px`)}onDrawerScroll(){this.setStageTransitionEnabled(!1),this.updateStagePosition(),this.updatePopoverPosition(),this.drawerScrollTimeout&&clearTimeout(this.drawerScrollTimeout),this.drawerScrollTimeout=window.setTimeout(()=>{this.setStageTransitionEnabled(!0),this.drawerScrollTimeout=null},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}enableHoverBlock(){this.getCurrentElement()&&this.toggleHoverBlock("none","default")}disableHoverBlock(){if(this.getCurrentElement()){this.toggleHoverBlock("auto","");return}this.cachedNodesWithStyles.length&&this.cachedNodesWithStyles.forEach(({element:e,pointerEvents:o,cursor:s})=>{e.style.pointerEvents=o,e.style.cursor=s}),this.cachedRootElement=null,this.cachedNodesWithStyles=[]}toggleHoverBlock(t,e){const o=this.getCurrentElement();if(!o)return;const s=t==="auto"&&e==="";if(s&&this.cachedNodesWithStyles.length===0){const i=Array.from(o.querySelectorAll("*"));[o,...i].forEach(r=>{r.style.pointerEvents==="none"&&(r.style.pointerEvents=""),r.style.cursor==="default"&&(r.style.cursor="")}),this.cachedRootElement=null,this.cachedNodesWithStyles=[];return}if(this.cachedRootElement!==o||this.cachedNodesWithStyles.length===0){this.cachedRootElement=o;const i=Array.from(o.querySelectorAll("*")),n=[o,...i];this.cachedNodesWithStyles=n.map(r=>({element:r,pointerEvents:r.style.pointerEvents||"",cursor:r.style.cursor||""}))}if(s){this.cachedNodesWithStyles.forEach(({element:i,pointerEvents:n,cursor:r})=>{i.style.pointerEvents=n,i.style.cursor=r}),this.cachedRootElement=null,this.cachedNodesWithStyles=[];return}this.cachedNodesWithStyles.forEach(({element:i})=>{i.style.pointerEvents=t,i.style.cursor=e})}removeHighlight(){this.highlightedElement&&(this.highlightedElement.classList.remove("mealz-onboarding-highlight"),this.highlightedElement=null)}getConfig(t){var e,o;return((e=this.configurations)==null?void 0:e[t])||((o=this.configurations)==null?void 0:o.guide)}hasSeenOnboarding(t){const e=this.getConfig(t);if(!(e!=null&&e.localStorageKey))return!1;try{return localStorage.getItem(e.localStorageKey)==="true"}catch{return!1}}bindGlobalEvents(t){var e,o;t?(window.addEventListener("scroll",this.boundHandleWindowScroll,{capture:!0,passive:!0}),window.addEventListener("resize",this.boundThrottledStageUpdate,!0),document.addEventListener("click",this.boundHandleDocumentClick,!0),document.addEventListener("keydown",this.boundHandleKeydown,!0),this.drawerContainer=this.getDrawerContainer(),(e=this.drawerContainer)==null||e.addEventListener("scroll",this.boundOnDrawerScroll,{passive:!0})):(window.removeEventListener("scroll",this.boundHandleWindowScroll,{capture:!0}),window.removeEventListener("resize",this.boundThrottledStageUpdate,!0),document.removeEventListener("click",this.boundHandleDocumentClick,!0),document.removeEventListener("keydown",this.boundHandleKeydown,!0),this.drawerContainer=this.getDrawerContainer(),(o=this.drawerContainer)==null||o.removeEventListener("scroll",this.boundOnDrawerScroll)),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],s=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(),(s||this.popoverElement).focus();return}!t.shiftKey&&i===s&&(t.preventDefault(),(o||this.popoverElement).focus())}},p.STEP_SEEN_KEY_PREFIX="_miam/onboardingStepSeen/",p);a([m()],l.prototype,"isTourActive");a([m()],l.prototype,"stepIndex");a([m()],l.prototype,"popoverTitle");a([m()],l.prototype,"popoverDescription");a([g(".mealz-onboarding-stage")],l.prototype,"stageElement");a([g(".mealz-onboarding-popover")],l.prototype,"popoverElement");a([g('button[aria-label="Start onboarding"]')],l.prototype,"triggerButton");a([u({type:Array})],l.prototype,"steps");a([u({type:Boolean})],l.prototype,"showProgress");a([u({type:Number})],l.prototype,"bottomMargin");a([u({attribute:!1})],l.prototype,"configurations");a([u({type:String})],l.prototype,"type");let T=l;customElements.get("mealz-onboarding")||customElements.define("mealz-onboarding",T);export{T as M};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../price/price.min.js";import"../assets/product-card-
|
|
1
|
+
import"../price/price.min.js";import"../assets/product-card-wIoU7Z_5.js";import"../counter/counter.min.js";import"../assets/promotion-badge-CDaL7Tqv.js";import{N as i,k as a}from"../assets/no-shadow-element-D62BBu0I.js";import{m as e}from"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/property-CoRN-Ln2.js";import"../assets/price-D6RVRYHJ.js";import"../assets/singleton-COF3iBbF.js";import"../assets/guestObserver-C5qvv1Ll.js";import"../assets/capitalize-DUAqYmp4.js";import"../assets/delay-DHNms76g.js";import"../assets/async-C5Kj_SqM.js";import"../assets/take-CpvJwza7.js";import"../assets/empty-qrpgDBbc.js";import"../assets/OperatorSubscriber-DfCnFunn.js";import"../assets/map-DT-7dkaR.js";import"../assets/mergeMap-D2yctTHQ.js";import"../assets/innerFrom-DePszgj9.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/timer-3Kpx74mt.js";import"../assets/isScheduler-CqHuyMwD.js";import"../assets/isDate-BwHtzZM4.js";import"../assets/debounceTime-Cf_7YmIn.js";class s extends i{constructor(){super(),this.subscriptions=[],this.styleURL=new URL("./order-again/order-again.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.analyticsPath=`/recipes/${this.recipeId}/shopping`}orderAgain(){const t=new CustomEvent("orderAgain");this.dispatchEvent(t),this.sendAddAllAgainEvent()}render(){return a`
|
|
2
2
|
<div class="mealz-order-again">
|
|
3
3
|
<div class="mealz-order-again__texts">
|
|
4
4
|
<span class="mealz-ds-text size-l weight-xxl">Cette recette vous a plu ?</span>
|
|
@@ -17,4 +17,4 @@ import"../price/price.min.js";import"../assets/product-card-TLfT6URx.js";import"
|
|
|
17
17
|
<span>Commander à nouveau</span>
|
|
18
18
|
</button>
|
|
19
19
|
</div>
|
|
20
|
-
`}sendAddAllAgainEvent(){
|
|
20
|
+
`}sendAddAllAgainEvent(){e.analytics.sendEvent("entry.add-all-again",this.analyticsPath,{recipe_id:this.recipeId,entry_count:e.recipes.remainingBasketEntries$.value.length})}}customElements.get("mealz-order-again")||customElements.define("mealz-order-again",s);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{k as
|
|
1
|
+
import{k as a}from"../../assets/no-shadow-element-D62BBu0I.js";import{M as r}from"../../modal/modal.min.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/property-CoRN-Ln2.js";import"../../assets/unsafe-html-DWUMaK1p.js";import"../../onboarding/events.min.js";function s(){var e;const n=(e=document.querySelector("mealz-planner-onboarding-modal"))==null?void 0:e.closest("mealz-modal");if(n)return n;const o=new r;return o.titleSlot="Comment faire un menu ?",o.contentSlot=a`<mealz-planner-onboarding-modal></mealz-planner-onboarding-modal>`,o}export{s as g};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as t}from"./get-planner-onboarding-modal-config.min.js";import"../../assets/no-shadow-element-D62BBu0I.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../modal/modal.min.js";import"../../assets/
|
|
1
|
+
import{g as t}from"./get-planner-onboarding-modal-config.min.js";import"../../assets/no-shadow-element-D62BBu0I.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../modal/modal.min.js";import"../../assets/property-CoRN-Ln2.js";import"../../assets/unsafe-html-DWUMaK1p.js";import"../../onboarding/events.min.js";const o=t();document.body.contains(o)||document.body.appendChild(o);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{M as
|
|
1
|
+
import{M as t}from"../planner-onboarding-modal/planner-onboarding-modal.min.js";import{a as d}from"../../onboarding/events.min.js";import{g as l}from"./get-planner-onboarding-modal-config.min.js";import{a as s}from"./planner-onboarding-storage.min.js";import"../../assets/no-shadow-element-D62BBu0I.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/state-DDIoBQp5.js";import"../../assets/property-CoRN-Ln2.js";import"../../onboarding/analytics/onboarding-analytics.min.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-DWUMaK1p.js";function D(r="dashboard"){if(s())return;const n=l();document.body.contains(n)||document.body.appendChild(n),requestAnimationFrame(()=>{const o=n.querySelector("mealz-planner-onboarding-modal");o instanceof t&&(o.isConnected&&o.requestUpdate(),o.onModalDisplayed&&o.onModalDisplayed(),o.onQuestionMarkClick&&o.onQuestionMarkClick(r),n.addEventListener(d,a=>{var e;const i=(e=a.detail)==null?void 0:e.origin;(i==="overlay"||i==="x")&&typeof o.closeModalViaX=="function"&&(a.preventDefault(),o.closeModalViaX())}),o.addEventListener("onboardingConfirmed",()=>{n.close()}))})}export{D as o};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const n="_miam/plannerOnboardingsDisabled",e=["_miam/customMenuOnboarding","_miam/suggestionOnboarding","_miam/currentMenuOnboarding","_miam/menuToBasketOnboarding","_miam/recipeDetailsOnboarding","_miam/guideOnboarding"];function r(){try{return localStorage.getItem(n)==="true"}catch{return!1}}function t(){try{localStorage.setItem(n,"true")}catch{}}function o(){try{for(const a of e)localStorage.setItem(a,"true")}catch{}}export{r as a,t as d,o as m};
|