mealz-components 2.6.0 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/assets/accordion-Unx2E22K.js +19 -0
  2. package/dist/assets/product-card-wIoU7Z_5.js +189 -0
  3. package/dist/assets/promotion-badge-CDaL7Tqv.js +12 -0
  4. package/dist/basket-transfer-modal/basket-transfer-modal.min.js +5 -5
  5. package/dist/catalog/basket-preview/basket-preview.min.js +14 -14
  6. package/dist/catalog/catalog-category/catalog-category.min.js +1 -1
  7. package/dist/catalog/catalog-favorites/catalog-favorites.min.js +1 -1
  8. package/dist/catalog/catalog-history/catalog-history.min.js +1 -1
  9. package/dist/catalog/catalog-home/catalog-home.min.js +1 -1
  10. package/dist/catalog/catalog-home-header/catalog-home-header.min.js +1 -1
  11. package/dist/catalog/catalog-list/catalog-list.min.js +1 -1
  12. package/dist/catalog/catalog-tabs/catalog-tabs.min.js +1 -1
  13. package/dist/catalog/catalog-toolbar/catalog-toolbar.min.js +1 -1
  14. package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
  15. package/dist/counter/counter.min.js +2 -2
  16. package/dist/drawer/drawer.min.js +5 -5
  17. package/dist/drawer-view-swapper/drawer-view-swapper.min.js +23 -23
  18. package/dist/history-drawer/history-drawer.min.js +1 -1
  19. package/dist/history-order/history-order.min.js +1 -1
  20. package/dist/history-order-expanded/history-order-expanded.min.js +1 -1
  21. package/dist/last-order-badge/last-order-badge.min.js +2 -2
  22. package/dist/last-order-modal/last-order-modal.min.js +4 -4
  23. package/dist/like-button/like-button.min.js +1 -1
  24. package/dist/modal/modal.min.js +4 -4
  25. package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.min.js +2 -2
  26. package/dist/onboarding/onboarding.min.js +2 -2
  27. package/dist/order-again/order-again.min.js +2 -2
  28. package/dist/planner/helpers/get-planner-onboarding-modal-config.min.js +1 -1
  29. package/dist/planner/helpers/init-planner-onboarding-modal.min.js +1 -1
  30. package/dist/planner/helpers/open-onboarding-modal.min.js +1 -1
  31. package/dist/planner/planner-abandon-modal/planner-abandon-modal.min.js +2 -2
  32. package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.min.js +2 -2
  33. package/dist/planner/planner-budget-gauge/planner-budget-gauge.min.js +1 -1
  34. package/dist/planner/planner-catalog/planner-catalog.min.js +2 -2
  35. package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
  36. package/dist/planner/planner-current-menu-modal/planner-current-menu-modal.min.js +2 -2
  37. package/dist/planner/planner-dashboard/planner-dashboard.min.js +1 -1
  38. package/dist/planner/planner-form/planner-form.min.js +7 -7
  39. package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
  40. package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -1
  41. package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +6 -6
  42. package/dist/planner/planner-open-catalog-modal/planner-open-catalog-modal.min.js +2 -2
  43. package/dist/planner/planner-quick-menu/planner-quick-menu.min.js +1 -1
  44. package/dist/planner/planner-recipe-card/planner-recipe-card.min.js +1 -1
  45. package/dist/planner/planner-recipe-list/planner-recipe-list.min.js +1 -1
  46. package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.min.js +1 -1
  47. package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +2 -2
  48. package/dist/planner/to-basket-loader/to-basket-loader.min.js +5 -5
  49. package/dist/planner-entry/planner-entry.min.js +1 -1
  50. package/dist/preferences/preferences.min.js +4 -4
  51. package/dist/price/price.min.js +3 -3
  52. package/dist/products-to-basket-cta/products-to-basket-cta.min.js +1 -1
  53. package/dist/recipe-card/recipe-card.min.js +1 -1
  54. package/dist/recipe-card-cta/recipe-card-cta.min.js +1 -1
  55. package/dist/recipe-details/recipe-details.min.js +93 -93
  56. package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
  57. package/dist/recipe-to-basket/recipe-to-basket.min.js +1 -1
  58. package/dist/replace-item/replace-item-card/replace-item-card.min.js +11 -11
  59. package/dist/replace-item/replace-item.min.js +13 -13
  60. package/dist/replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js +4 -4
  61. package/dist/replace-item-planner/replace-item-planner.min.js +13 -13
  62. package/dist/select/select.min.js +6 -6
  63. package/dist/slider-tabs/slider-tabs.min.js +3 -3
  64. package/dist/store-indicator/store-indicator.min.js +2 -2
  65. package/dist/store-locator/store-locator.min.js +2 -2
  66. package/dist/store-locator-drawer/store-locator-drawer.min.js +2 -2
  67. package/dist/supplier-selector/supplier-selector.min.js +6 -6
  68. package/package.json +1 -1
  69. package/dist/assets/accordion-sjJSL32r.js +0 -19
  70. package/dist/assets/custom-element-BhZVzxrc.js +0 -5
  71. package/dist/assets/product-card-TLfT6URx.js +0 -189
  72. package/dist/assets/promotion-badge-B-er7bV2.js +0 -12
@@ -1 +1 @@
1
- import"../basket-preview/basket-preview.min.js";import"../../drawer-view-swapper/drawer-view-swapper.min.js";import{N as n}from"../../assets/no-shadow-element-D62BBu0I.js";import{t as l}from"../../assets/custom-element-BhZVzxrc.js";import{m as a}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-TLfT6URx.js";import"../../assets/promotion-badge-B-er7bV2.js";import"../../assets/guestObserver-C5qvv1Ll.js";import"../../assets/accordion-sjJSL32r.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"../../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";var u=Object.getOwnPropertyDescriptor,c=(t,i,r,s)=>{for(var o=s>1?void 0:s?u(i,r):i,e=t.length-1,p;e>=0;e--)(p=t[e])&&(o=p(o)||o);return o};let m=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(),a.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(){a.analytics.sendEvent("basket.display",this.analyticsPath,{})}};m=c([l("mealz-my-meals-button")],m);customElements.get("mealz-my-meals-button")||customElements.define("mealz-my-meals-button",m);
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-Unx2E22K.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"../../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 c,B as m,k as a}from"../assets/no-shadow-element-D62BBu0I.js";import{t as d}from"../assets/custom-element-BhZVzxrc.js";import{n as o}from"../assets/property-CoRN-Ln2.js";import{d as p}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 b=Object.defineProperty,v=Object.getOwnPropertyDescriptor,i=(e,t,r,l)=>{for(var n=l>1?void 0:l?v(t,r):t,u=e.length-1,h;u>=0;u--)(h=e[u])&&(n=(l?h(t,r,n):h(n))||n);return l&&n&&b(t,r,n),n};let s=class extends c{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 m(this.value),this.subscriptions.push(this.valueSubject.subscribe(()=>{this.updateDOM(),this.requestUpdate()})),this.subscriptions.push(this.valueSubject.pipe(p(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`
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))}};i([o({type:Boolean})],s.prototype,"disabled",2);i([o({type:Boolean})],s.prototype,"floating",2);i([o({type:Boolean})],s.prototype,"biColor",2);i([o({type:Number})],s.prototype,"min",2);i([o({type:Number})],s.prototype,"max",2);i([o({type:Number})],s.prototype,"value",2);i([o({type:Number})],s.prototype,"debounce",2);s=i([d("mealz-counter")],s);customElements.get("mealz-counter")||customElements.define("mealz-counter",s);
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 h,D as m,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as w}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-CoRN-Ln2.js";import{a as d}from"../assets/unsafe-html-DWUMaK1p.js";import"../assets/mealz-sdk-E_fNZM-c.js";var v=Object.defineProperty,u=Object.getOwnPropertyDescriptor,n=(e,s,o,a)=>{for(var t=a>1?void 0:a?u(s,o):s,l=e.length-1,i;l>=0;l--)(i=e[l])&&(t=(a?i(s,o,t):i(t))||t);return a&&t&&v(s,o,t),t};let r=class extends h{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 p`
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"?d(this.titleSlot):this.titleSlot}
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:m}
13
+ ${this.headerComponents.length>0?this.headerComponents:h}
14
14
  </div>
15
15
  <div class="mealz-drawer__content-container">
16
- ${typeof this.contentSlot=="string"?d(this.contentSlot):this.contentSlot}
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()}};n([c({type:String})],r.prototype,"titleSlot",2);n([c({type:String})],r.prototype,"contentSlot",2);r=n([w("mealz-drawer")],r);customElements.get("mealz-drawer")||customElements.define("mealz-drawer",r);
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 v,D as d,k as a,B as c}from"../assets/no-shadow-element-D62BBu0I.js";import{t as $}from"../assets/custom-element-BhZVzxrc.js";import{n as V}from"../assets/property-CoRN-Ln2.js";import{m as o,w as z,i as _}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 R}from"../catalog/basket-preview/basket-preview.min.js";import"../preferences/preferences.min.js";import{m as g}from"../assets/merge-DzIA6T0M.js";import{m as n}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-TLfT6URx.js";import"../price/price.min.js";import"../assets/promotion-badge-B-er7bV2.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-sjJSL32r.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"../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 C=Object.defineProperty,D=Object.getOwnPropertyDescriptor,S=(e,i,t,r)=>{for(var s=r>1?void 0:r?D(i,t):i,l=e.length-1,p;l>=0;l--)(p=e[l])&&(s=(r?p(i,t,s):p(s))||s);return r&&s&&C(i,t,s),s};let m=class extends v{constructor(){super(),this.styleURL=new URL("./recipe-details/sponsor-block/sponsor-block.css",this.getBaseURL())}render(){var b,y,f;if(!this.sponsorBlock)return d;const{pictureUrl:e,content:i,backgroundColor:t="#FFFFFF",fontSize:r=16,fontColor:s="#000000"}=this.sponsorBlock,l=(f=(y=(b=this.sponsorBlock.relationships)==null?void 0:b["sponsor-block-type"])==null?void 0:y.data)==null?void 0:f.name;if(!l)return a``;const p=l.toLowerCase(),h=`background-color: ${t}; font-size: ${r}px; color: ${s};`;switch(l){case"TEXT":case"SMALL_TEXT":case"TITLE":case"SMALL_TITLE":return a`
2
- <div class="sponsor-text-blocks sponsor-${p}-block" style="background-color: ${t};">
3
- <span class="sponsor-${p}-block__text" style="font-size: ${l.includes("TITLE")?32:16}px; color: ${s};">
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-Unx2E22K.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"../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 a`
7
- <div class="sponsor-${p}-block" style="background-color: ${t};">
8
- <img class="sponsor-${p}-block__picture sponsor-img" src="${e}" />
9
- </div>`;case"IMAGE_WITH_TEXT":return a`
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="${h}">
11
+ <span class="sponsor-image-with-text-block__text" style="${u}">
12
12
  ${i}
13
13
  </span>
14
- </div>`;case"IMAGE_AND_TEXT":return a`
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="${h}">
17
+ <span class="sponsor-image-and-text-block__text" style="${u}">
18
18
  ${i}
19
19
  </span>
20
- </div>`;case"TEXT_AND_IMAGE":return a`
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="${h}">
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}}};S([V()],m.prototype,"sponsorBlock",2);m=S([$("mealz-sponsor-block")],m);customElements.get("mealz-sponsor-block")||customElements.define("mealz-sponsor-storytelling",m);var A=Object.getOwnPropertyDescriptor,x=(e,i,t,r)=>{for(var s=r>1?void 0:r?A(i,t):i,l=e.length-1,p;l>=0;l--)(p=e[l])&&(s=p(s)||s);return s};let w=class extends v{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(o.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.getSponsorBlocks())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}getSponsorBlocks(){var i,t,r;const e=(r=(t=(i=this.recipe)==null?void 0:i.relationships)==null?void 0:t.sponsors)==null?void 0:r.data[0];e&&this.subscriptions.push(o.sponsor.getSponsorBlocks(e.id).subscribe(s=>{s&&(this.sponsorBlocks=s,this.requestUpdate())}))}render(){var e;return a`
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?a`<img class="mealz-recipe-addon__header-logo" src="${this.recipe.sponsorLogoUrl}" />`:d}
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"]?a`
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
- `:a`
46
- ${this.sponsorBlocks.map(t=>a`
47
- <mealz-sponsor-block .sponsorBlock=${t}></mealz-sponsor-block>
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)}};w=x([$("mealz-recipe-addon")],w);customElements.get("mealz-recipe-addon")||customElements.define("mealz-recipe-addon",w);var I=Object.defineProperty,E=Object.getOwnPropertyDescriptor,P=(e,i,t,r)=>{for(var s=r>1?void 0:r?E(i,t):i,l=e.length-1,p;l>=0;l--)(p=e[l])&&(s=(r?p(i,t,s):p(s))||s);return r&&s&&I(i,t,s),s};let u=class extends v{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(),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(g(o.pos.currentPos().pipe(n(e=>{this.pos=e,this.noSupplier=o.supplier.isNoSupplier()})),o.recipes.displayedRecipe$.pipe(n(e=>{this.displayedRecipeDetails=e,this.noSupplier&&!this.pos&&e&&o.noSupplier.displaySupplierSelector$.next(!0)})),o.noSupplier.displaySupplierSelector$.pipe(n(e=>{this.displaySupplierSelector$.next(e)})),g(o.replaceItem.basketEntryToReplace$.pipe(n(e=>e||{displayReplaceItem:void 0})),o.replaceItem.replaceProductFromPreviewOpen$.pipe(n(e=>e?{basketEntry:e}:{displayReplaceItem:void 0})),o.replaceItem.additionModalOpen$.pipe(n(e=>e?{addProductMode:!0}:{displayReplaceItem:void 0}))).pipe(n(e=>{this.displayReplaceItem="displayReplaceItem"in e?void 0:e})),o.basket.basketPreviewState$.pipe(n(({isOpen:e})=>this.displayBasketPreview=e)),o.planner.itemToReplace$.pipe(n(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[t,r]=Object.entries(i)[0];r()&&e.push(t)}return e}getActiveViewNames(){return[...this.activeViewNames$.value]}updateActiveViews(){const e=this.computeActiveViewNames(),i=this.activeViewNames$.value;(e.length!==i.length||e.some((r,s)=>r!==i[s]))&&(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 a`
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),_()&&(o.recipes.displayedRecipe$.next(null),o.basket.basketPreviewState$.next({isOpen:!1}),o.noSupplier&&o.noSupplier.displaySupplierSelector$&&o.noSupplier.displaySupplierSelector$.next(!1),o.productAddition&&typeof o.productAddition.close=="function"&&o.productAddition.close())}displayDrawer(){return this.drawerIsOpen()?a`
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"?a`<span>Mes courses avec Marmiton</span>`:this.currentView$.value==="isBasketPreviewVisible"?a`<span>Mes repas</span>`:this.currentView$.value==="isHistoryDrawerVisible"?a`<span>Commande du ${this.displayHistoryDrawer$.value.orderDate}</span>`:this.currentView$.value==="isPlannerCatalogVisible"?a`<span>Ajouter une recette</span>`:d}
54
- .contentSlot=${a`
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
- `:a``}};P([V({type:Boolean})],u.prototype,"displayBasketPreview",2);u=P([$("mealz-drawer-view-swapper")],u);customElements.get("mealz-drawer-view-swapper")||customElements.define("mealz-drawer-view-swapper",u);if(!document.querySelector("mealz-drawer-view-swapper")){const e=document.createElement("mealz-drawer-view-swapper");document.body.appendChild(e)}
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{t as c}from"../assets/custom-element-BhZVzxrc.js";import{n as w}from"../assets/property-CoRN-Ln2.js";import{b as m}from"../assets/http-Bepz6wA4.js";import{a as u}from"../assets/unsafe-html-DWUMaK1p.js";import{s as f}from"../assets/skipWhile-Beza3ws3.js";import{s as D}from"../assets/switchMap-BAdE9Uzw.js";import{m as y}from"../assets/map-DT-7dkaR.js";import{o as p}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 C=Object.defineProperty,b=Object.getOwnPropertyDescriptor,d=(r,e,s,a)=>{for(var t=a>1?void 0:a?b(e,s):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(t=(a?o(e,s,t):o(t))||t);return a&&t&&C(e,s,t),t};let n=class 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`${u(this.drawerContent)}`}loadDrawerContent(){const{historyDrawerData:r,orderId:e}=this.historyOrderDisplay;this.subscriptions.push(this.setDataFromStartingData(r,e).subscribe(({drawerContent:s})=>{s&&(this.drawerContent=s,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,e,s,a){const t=new URLSearchParams;return t.append("order",e.toString()),a&&t.append("store_id",a),this.isMealzInternalReady$.pipe(f(i=>!i),D(async()=>{const i=m(s),o=r.includes("?")?"&":"?";return await(await fetch(r+o+t.toString(),{method:"GET",headers:i})).text()}))}setDrawerData(r,e,s,a){return this.fetchDrawerData(r,e,s,a).pipe(y(t=>(this.drawerContent=t||"",{drawerContent:this.drawerContent})))}setDataFromStartingData(r,e){if(this.drawerContent)return p({drawerContent:this.drawerContent});const s=JSON.parse(r),{storeId:a,sessionId:t,drawerDataURL:i}=s;return!t||!i?p(null):this.setDrawerData(i,e,t,a)}};d([w({type:Object})],n.prototype,"historyOrderDisplay",2);n=d([c("mealz-history-drawer")],n);customElements.get("mealz-history-drawer")||customElements.define("mealz-history-drawer",n);
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 l}from"../assets/no-shadow-element-D62BBu0I.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import"../assets/mealz-sdk-E_fNZM-c.js";var c=Object.getOwnPropertyDescriptor,w=(e,r,s,a)=>{for(var t=a>1?void 0:a?c(r,s):r,o=e.length-1,i;o>=0;o--)(i=e[o])&&(t=i(t)||t);return t};let d=class extends l{connectedCallback(){var n;if(super.connectedCallback(),this.historyOrderHTML=this.querySelector(".mealz-history-order"),!this.historyOrderHTML)return;const e=(n=this.attributes["starting-data"])==null?void 0:n.value;if(!e)return;const{orderId:r,updatedAt:s,storeId:a,sessionId:t,drawerDataURL:o}=JSON.parse(e),i=JSON.stringify({storeId:a,sessionId:t,drawerDataURL:o});this.historyOrderHTML.addEventListener("click",()=>{this.updateURLWithOrder(r),this.openHistoryDrawer(i,r,s)}),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,s){document.querySelector("mealz-drawer-view-swapper").displayHistoryDrawer$.next({historyDrawerData:e,orderId:r,orderDate:s})}};d=w([h("mealz-history-order")],d);customElements.get("mealz-history-order")||customElements.define("mealz-history-order",d);
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{t as d}from"../assets/custom-element-BhZVzxrc.js";import{N as l}from"../assets/no-shadow-element-D62BBu0I.js";import{m}from"../assets/mealz-sdk-E_fNZM-c.js";var p=Object.getOwnPropertyDescriptor,c=(r,s,a,i)=>{for(var t=i>1?void 0:i?p(s,a):s,e=r.length-1,o;e>=0;e--)(o=r[e])&&(t=o(t)||t);return t};let n=class extends l{render(){var a;this.recipesElements=Array.from(this.querySelectorAll(".mealz-history-order-expanded__recipe"));const r=(a=this.attributes["starting-data"])==null?void 0:a.value;if(!r)return;const{recipesInfos:s}=JSON.parse(r);this.recipesElements.forEach((i,t)=>{i.addEventListener("click",()=>{const e=JSON.parse(s[t].startingData);m.recipes.openDetails(e.id,e.guests,e.initialTabIndex)})}),this.removeAttribute("starting-data")}};n=c([d("mealz-history-order-expanded")],n);customElements.get("mealz-history-order-expanded")||customElements.define("mealz-history-order-expanded",n);
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-TLfT6URx.js";import"../counter/counter.min.js";import"../assets/promotion-badge-B-er7bV2.js";import{N as l,k as n}from"../assets/no-shadow-element-D62BBu0I.js";import{t as g}from"../assets/custom-element-BhZVzxrc.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 c=Object.defineProperty,b=Object.getOwnPropertyDescriptor,p=(r,o,a,s)=>{for(var t=s>1?void 0:s?b(o,a):o,i=r.length-1,m;i>=0;i--)(m=r[i])&&(t=(s?m(o,a,t):m(t))||t);return s&&t&&c(o,a,t),t};let e=class extends l{constructor(){super(),this.disabled=!1,this.styleURL=new URL("./last-order-badge/last-order-badge.css",this.getBaseURL())}toggleLastOrderModal(){if(this.disabled)return;const r=new CustomEvent("openLastOrderModal");this.dispatchEvent(r)}render(){return n`
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
- `}};p([d({type:String})],e.prototype,"orderHistoryDate",2);p([d({type:Boolean,reflect:!0})],e.prototype,"disabled",2);e=p([g("mealz-last-order-badge")],e);customElements.get("mealz-last-order-badge")||customElements.define("mealz-last-order-badge",e);
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-TLfT6URx.js";import"../counter/counter.min.js";import"../assets/promotion-badge-B-er7bV2.js";import{N as m,k as s,D as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as c}from"../assets/custom-element-BhZVzxrc.js";import{m as o}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";var h=Object.getOwnPropertyDescriptor,u=(e,t,i,d)=>{for(var r=d>1?void 0:d?h(t,i):t,a=e.length-1,l;a>=0;a--)(l=e[a])&&(r=l(r)||r);return r};let n=class extends m{constructor(){super(),this.inBasket=!1,this.subscriptions=[],this.styleURL=new URL("./last-order-modal/last-order-modal.css",this.getBaseURL())}displayLastOrderModal(e){this.isRecipeInBasket(),this.analyticsPath=`/recipes/${this.recipeId}/shopping`,this.orderLabel=e;const t=document.createElement("mealz-modal");t.titleSlot=s`<span>Commande du ${this.orderLabel}</span>`,t.contentSlot=this.renderModal(),this.appendChild(t),document.body.appendChild(this),t.addEventListener("modalClosed",()=>{this.subscriptions.forEach(i=>i.unsubscribe()),this.remove()})}isRecipeInBasket(){this.subscriptions.push(o.recipes.recipePrice$.subscribe(e=>{this.inBasket=e.inBasket>0,this.requestUpdate()}))}orderAgain(){const e=new CustomEvent("orderAgain");this.dispatchEvent(e),this.sendAddAllAgainEvent(),this.remove()}renderModal(){return s`
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?s`Vous avez déjà ajouté cette recette à votre panier.`:s`Nous avons conservé votre dernière sélection de produits pour cette recette`}
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?p:s`
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(){o.analytics.sendEvent("entry.add-all-again",this.analyticsPath,{recipe_id:this.recipeId,entry_count:o.recipes.remainingBasketEntries$.value.length})}};n=u([c("mealz-last-order-modal")],n);customElements.get("mealz-last-order-modal")||customElements.define("mealz-last-order-modal",n);export{n as L};
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 c}from"../assets/no-shadow-element-D62BBu0I.js";import{t as o}from"../assets/custom-element-BhZVzxrc.js";import{m as n}from"../assets/mealz-sdk-E_fNZM-c.js";var u=Object.getOwnPropertyDescriptor,d=(t,i,r,s)=>{for(var e=s>1?void 0:s?u(i,r):i,l=t.length-1,a;l>=0;l--)(a=t[l])&&(e=a(e)||e);return e};let h=class extends c{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(n.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:r,liked:s,path:e,likeHidden:l}=JSON.parse(t);this.likeId=i,this.recipeId=r,this.liked=s!==void 0?s:!1,this.analyticsPath=e,l&&this.initHiddenLike(),this.removeAttribute("starting-data")}initHiddenLike(){this.subscriptions.push(n.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(){n.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))}};h=d([o("mealz-like-button")],h);customElements.get("mealz-like-button")||customElements.define("mealz-like-button",h);
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);
@@ -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{t as v}from"../assets/custom-element-BhZVzxrc.js";import{n as a}from"../assets/property-CoRN-Ln2.js";import{e as y,i as C,t as g,a as d}from"../assets/unsafe-html-DWUMaK1p.js";import{M as m,a as E}from"../onboarding/events.min.js";import"../assets/mealz-sdk-E_fNZM-c.js";/**
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",w=" !"+h,S=y(class extends C{constructor(t){var e;if(super(t),t.type!==g.ATTRIBUTE||t.name!=="style"||((e=t.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(t){return Object.keys(t).reduce((e,s)=>{const o=t[s];return o==null?e:e+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${o};`},"")}update(t,[e]){const{style:s}=t.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(const o of this.ft)e[o]==null&&(this.ft.delete(o),o.includes("-")?s.removeProperty(o):s[o]=null);for(const o in e){const l=e[o];if(l!=null){this.ft.add(o);const i=typeof l=="string"&&l.endsWith(w);o.includes("-")||i?s.setProperty(o,i?l.slice(0,-11):l,i?h:""):s[o]=l}}return u}});var k=Object.defineProperty,M=Object.getOwnPropertyDescriptor,r=(t,e,s,o)=>{for(var l=o>1?void 0:o?M(e,s):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(l=(o?c(e,s,l):c(l))||l);return o&&l&&k(e,s,l),l};let n=class 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 t=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 600px)").matches,e=this.disableMobileBottomSheet&&t?S({top:"50%",bottom:"unset",right:"unset",borderRadius:"16px",margin:"0 16px",transform:"translate(0, -50%)"}):b;return f`
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=${e}>
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(t="action"){const e=new CustomEvent(E,{bubbles:!0,composed:!0,cancelable:!0,detail:{origin:t}});if(!this.dispatchEvent(e))return;const o=new CustomEvent(m,{bubbles:!0,composed:!0,detail:{origin:t}});this.dispatchEvent(o),this.remove()}wireCloseTargets(){if(!this.closeTargets)return;const{closeOverlay:t,closeButton:e}=this.closeTargets;if(t){const s=this.querySelector(t);s&&this.addModalClickListener(s,()=>this.closeByUser("overlay"))}if(e){const s=this.querySelector(e);s&&this.addModalClickListener(s,()=>this.closeByUser("x"))}}addModalClickListener(t,e){const s=e;t.addEventListener("click",s),this.modalClickHandlers.push({element:t,handler:s})}cleanupModalClickHandlers(){this.modalClickHandlers.forEach(({element:t,handler:e})=>{t.removeEventListener("click",e)}),this.modalClickHandlers=[]}};r([a({type:String})],n.prototype,"titleSlot",2);r([a({type:String})],n.prototype,"contentSlot",2);r([a({attribute:!1})],n.prototype,"closeTargets",2);r([a({type:Boolean,attribute:"disable-mobile-bottom-sheet"})],n.prototype,"disableMobileBottomSheet",2);n=r([v("mealz-modal")],n);customElements.get("mealz-modal")||customElements.define("mealz-modal",n);export{n as M};
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{t as h}from"../assets/custom-element-BhZVzxrc.js";import{N as d}from"../assets/no-shadow-element-D62BBu0I.js";import{m as r}from"../assets/mealz-sdk-E_fNZM-c.js";var l=Object.getOwnPropertyDescriptor,p=(t,s,i,e)=>{for(var a=e>1?void 0:e?l(s,i):s,n=t.length-1,o;n>=0;n--)(o=t[n])&&(a=o(a)||a);return a};let c=class extends d{constructor(){super(...arguments),this.inBasket=!1,this.showFixedButton=!1,this.recipeId="",this.subscriptions=[],this.inBasketContent=`
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:s,inBasket:i,guests:e}=JSON.parse(t);this.recipeId=s,this.inBasket=i!==void 0?i:!1,this.guests=typeof e=="number"?e: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?r.recipes.openDetails(this.recipeId,null,0,"",!0):r.noSupplier.addRecipeToBasketFromIdAndOpenPreview(this.recipeId,this.guests)}listenToRecipeInBasket(){this.subscriptions.push(r.recipes.isRecipeInBasket(this.recipeId).subscribe(t=>{this.inBasket=t,this.updateDOM()}))}};c=p([h("mealz-no-supplier-add-to-cart-cta")],c);
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 v,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as b}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-CoRN-Ln2.js";import{r as d}from"../assets/state-DDIoBQp5.js";import{e as u}from"../assets/query-BApjzB0v.js";import{O as E,c as y,b as S}from"./events.min.js";import"../assets/mealz-sdk-E_fNZM-c.js";var w=Object.defineProperty,T=Object.getOwnPropertyDescriptor,a=(t,e,o,s)=>{for(var i=s>1?void 0:s?T(e,o):e,n=t.length-1,r;n>=0;n--)(r=t[n])&&(i=(s?r(e,o,i):r(i))||i);return s&&i&&w(e,o,i),i};let l=class extends v{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.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)}startOnboardingTour(){const t=this.getConfig(this.type);t&&(this.steps=t.steps||[],this.showProgress=t.showProgress??!0),!(!this.steps||this.steps.length===0)&&(this.stepIndex=0,this.applyCurrentStep(),this.isTourActive=!0,this.bindGlobalEvents(!0),this.focusPopoverAsync())}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(E))}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?p`
1
+ import{N as b,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{n as c}from"../assets/property-CoRN-Ln2.js";import{r as d}from"../assets/state-DDIoBQp5.js";import{e as m}from"../assets/query-BApjzB0v.js";import{O as E,c as y,b as S}from"./events.min.js";import"../assets/mealz-sdk-E_fNZM-c.js";var w=Object.defineProperty,a=(u,t,e,o)=>{for(var s=void 0,i=u.length-1,n;i>=0;i--)(n=u[i])&&(s=n(t,e,s)||s);return s&&w(t,e,s),s};class l 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.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)}startOnboardingTour(){const t=this.getConfig(this.type);t&&(this.steps=t.steps||[],this.showProgress=t.showProgress??!0),!(!this.steps||this.steps.length===0)&&(this.stepIndex=0,this.applyCurrentStep(),this.isTourActive=!0,this.bindGlobalEvents(!0),this.focusPopoverAsync())}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(E))}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?p`
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":""}"
@@ -38,4 +38,4 @@ import{N as v,k as p}from"../assets/no-shadow-element-D62BBu0I.js";import{t as b
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(y)),this.endOnboardingTour();this.disableHoverBlock(),this.stepIndex+=1,this.applyCurrentStep(),this.dispatchEvent(new CustomEvent(S,{detail:{stepIndex:this.stepIndex}}))}applyCurrentStep(){var o;if(this.removeHighlight(),!this.currentStep)return;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:""})}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)),Object.assign(this.stageElement.style,{position:"fixed",top:`${i.top-e}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 h,m,g,f;if(!this.popoverElement||!((m=(h=this.currentStep)==null?void 0:h.popover)!=null&&m.overElement)||(f=(g=this.currentStep)==null?void 0:g.popover)!=null&&f.fixedPosition)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(),s=this.currentStep.popover.spacerTop??0,i=this.currentStep.popover.spacerLeft??0,n=this.currentStep.popover.spacerRight??0,r=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`),r&&(this.popoverElement.style.top="initial",this.popoverElement.style.bottom=`${o.bottom+r}px`),s&&(this.popoverElement.style.top=`${o.top+s}px`),i&&(this.popoverElement.style.left=`${o.left+i}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())}};a([d()],l.prototype,"isTourActive",2);a([d()],l.prototype,"stepIndex",2);a([d()],l.prototype,"popoverTitle",2);a([d()],l.prototype,"popoverDescription",2);a([u(".mealz-onboarding-stage")],l.prototype,"stageElement",2);a([u(".mealz-onboarding-popover")],l.prototype,"popoverElement",2);a([u('button[aria-label="Start onboarding"]')],l.prototype,"triggerButton",2);a([c({type:Array})],l.prototype,"steps",2);a([c({type:Boolean})],l.prototype,"showProgress",2);a([c({type:Number})],l.prototype,"bottomMargin",2);a([c({attribute:!1})],l.prototype,"configurations",2);a([c({type:String})],l.prototype,"type",2);l=a([b("mealz-onboarding")],l);customElements.get("mealz-onboarding")||customElements.define("mealz-onboarding",l);export{l as M};
41
+ `}isFinalStep(){return this.stepIndex>=this.steps.length-1}goToNextStep(){if(this.isFinalStep())return this.dispatchEvent(new CustomEvent(y)),this.endOnboardingTour();this.disableHoverBlock(),this.stepIndex+=1,this.applyCurrentStep(),this.dispatchEvent(new CustomEvent(S,{detail:{stepIndex:this.stepIndex}}))}applyCurrentStep(){var o;if(this.removeHighlight(),!this.currentStep)return;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:""})}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)),Object.assign(this.stageElement.style,{position:"fixed",top:`${i.top-e}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 h,g,f,v;if(!this.popoverElement||!((g=(h=this.currentStep)==null?void 0:h.popover)!=null&&g.overElement)||(v=(f=this.currentStep)==null?void 0:f.popover)!=null&&v.fixedPosition)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(),s=this.currentStep.popover.spacerTop??0,i=this.currentStep.popover.spacerLeft??0,n=this.currentStep.popover.spacerRight??0,r=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`),r&&(this.popoverElement.style.top="initial",this.popoverElement.style.bottom=`${o.bottom+r}px`),s&&(this.popoverElement.style.top=`${o.top+s}px`),i&&(this.popoverElement.style.left=`${o.left+i}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())}}a([d()],l.prototype,"isTourActive");a([d()],l.prototype,"stepIndex");a([d()],l.prototype,"popoverTitle");a([d()],l.prototype,"popoverDescription");a([m(".mealz-onboarding-stage")],l.prototype,"stageElement");a([m(".mealz-onboarding-popover")],l.prototype,"popoverElement");a([m('button[aria-label="Start onboarding"]')],l.prototype,"triggerButton");a([c({type:Array})],l.prototype,"steps");a([c({type:Boolean})],l.prototype,"showProgress");a([c({type:Number})],l.prototype,"bottomMargin");a([c({attribute:!1})],l.prototype,"configurations");a([c({type:String})],l.prototype,"type");customElements.get("mealz-onboarding")||customElements.define("mealz-onboarding",l);export{l as M};
@@ -1,4 +1,4 @@
1
- import"../price/price.min.js";import"../assets/product-card-TLfT6URx.js";import"../counter/counter.min.js";import"../assets/promotion-badge-B-er7bV2.js";import{N as m,k as c}from"../assets/no-shadow-element-D62BBu0I.js";import{t as d}from"../assets/custom-element-BhZVzxrc.js";import{m as o}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";var p=Object.getOwnPropertyDescriptor,g=(e,i,l,s)=>{for(var t=s>1?void 0:s?p(i,l):i,a=e.length-1,n;a>=0;a--)(n=e[a])&&(t=n(t)||t);return t};let r=class extends m{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 e=new CustomEvent("orderAgain");this.dispatchEvent(e),this.sendAddAllAgainEvent()}render(){return c`
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(){o.analytics.sendEvent("entry.add-all-again",this.analyticsPath,{recipe_id:this.recipeId,entry_count:o.recipes.remainingBasketEntries$.value.length})}};r=g([d("mealz-order-again")],r);customElements.get("mealz-order-again")||customElements.define("mealz-order-again",r);
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 r}from"../../assets/no-shadow-element-D62BBu0I.js";import{M as t}from"../../modal/modal.min.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/custom-element-BhZVzxrc.js";import"../../assets/property-CoRN-Ln2.js";import"../../assets/unsafe-html-DWUMaK1p.js";import"../../onboarding/events.min.js";function c(){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 t;return o.titleSlot="Comment faire un menu ?",o.contentSlot=r`<mealz-planner-onboarding-modal></mealz-planner-onboarding-modal>`,o}export{c as g};
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/custom-element-BhZVzxrc.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
+ 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 r}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"../../assets/no-shadow-element-D62BBu0I.js";import"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/custom-element-BhZVzxrc.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 C(t="dashboard"){const n=l();document.body.contains(n)||document.body.appendChild(n),requestAnimationFrame(()=>{const o=n.querySelector("mealz-planner-onboarding-modal");o instanceof r&&(o.isConnected&&o.requestUpdate(),o.onModalDisplayed&&o.onModalDisplayed(),o.onQuestionMarkClick&&o.onQuestionMarkClick(t),n.addEventListener(d,i=>{var e;const a=(e=i.detail)==null?void 0:e.origin;(a==="overlay"||a==="x")&&typeof o.closeModalViaX=="function"&&(i.preventDefault(),o.closeModalViaX())}),o.addEventListener("onboardingConfirmed",()=>{n.close()}))})}export{C as o};
1
+ import{M as r}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"../../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 v(t="dashboard"){const n=l();document.body.contains(n)||document.body.appendChild(n),requestAnimationFrame(()=>{const o=n.querySelector("mealz-planner-onboarding-modal");o instanceof r&&(o.isConnected&&o.requestUpdate(),o.onModalDisplayed&&o.onModalDisplayed(),o.onQuestionMarkClick&&o.onQuestionMarkClick(t),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{v as o};
@@ -1,4 +1,4 @@
1
- import{N as m,k as r}from"../../assets/no-shadow-element-D62BBu0I.js";import{M as i}from"../../modal/modal.min.js";import{t as p}from"../../assets/custom-element-BhZVzxrc.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";var c=Object.getOwnPropertyDescriptor,b=(n,o,d,l)=>{for(var e=l>1?void 0:l?c(o,d):o,a=n.length-1,s;a>=0;a--)(s=n[a])&&(e=s(e)||e);return e};let t=class extends m{constructor(){super(),this.styleURL=new URL("./planner/planner-abandon-modal/planner-abandon-modal.css",this.getBaseURL())}displayPlannerAbandonModal(){const n=new i;document.body.appendChild(this),n.titleSlot=r`<span>Abandonner le menu</span>`,n.contentSlot=this.renderModal(),this.appendChild(n),n.addEventListener("modalClosed",()=>{this.remove()})}abandonMenu(){const n=new CustomEvent("resetMenu");this.dispatchEvent(n),this.remove()}renderModal(){return r`
1
+ import{N as a,k as e}from"../../assets/no-shadow-element-D62BBu0I.js";import{M as t}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";class o extends a{constructor(){super(),this.styleURL=new URL("./planner/planner-abandon-modal/planner-abandon-modal.css",this.getBaseURL())}displayPlannerAbandonModal(){const n=new t;document.body.appendChild(this),n.titleSlot=e`<span>Abandonner le menu</span>`,n.contentSlot=this.renderModal(),this.appendChild(n),n.addEventListener("modalClosed",()=>{this.remove()})}abandonMenu(){const n=new CustomEvent("resetMenu");this.dispatchEvent(n),this.remove()}renderModal(){return e`
2
2
  <div class="mealz-planner-abandon-modal__content">
3
3
  <div class="mealz-planner-abandon-modal__description">
4
4
  <span class="mealz-ds-text size-m">
@@ -11,4 +11,4 @@ import{N as m,k as r}from"../../assets/no-shadow-element-D62BBu0I.js";import{M a
11
11
  Abandonner
12
12
  </button>
13
13
  </div>
14
- `}};t=b([p("mealz-planner-abandon-modal")],t);customElements.get("mealz-planner-abandon-modal")||customElements.define("mealz-planner-abandon-modal",t);export{t as M};
14
+ `}}customElements.get("mealz-planner-abandon-modal")||customElements.define("mealz-planner-abandon-modal",o);export{o as M};