mealz-components 2.4.0 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/assets/{OperatorSubscriber-DF1TYu__.js → OperatorSubscriber-BaYaQC1O.js} +1 -1
  2. package/dist/assets/{accordion-Ba11uzYA.js → accordion-DJLqKUJq.js} +1 -1
  3. package/dist/assets/args-BozZ6oU-.js +1 -0
  4. package/dist/assets/{async-D5WN8Wfc.js → async-CFBGA-Dz.js} +1 -1
  5. package/dist/assets/combineLatest-BmqPE0OB.js +1 -0
  6. package/dist/assets/{debounceTime-D7R6Z3Am.js → debounceTime-B4DpnstH.js} +1 -1
  7. package/dist/assets/delay-BNnJ-6LE.js +1 -0
  8. package/dist/assets/{distinctUntilChanged-VvZTmHoN.js → distinctUntilChanged-91AVuO2B.js} +1 -1
  9. package/dist/assets/empty-0eVnsLmk.js +1 -0
  10. package/dist/assets/executeSchedule-CEDvgTzM.js +1 -0
  11. package/dist/assets/{filter-DQ4vwAGj.js → filter-BZ75lS5D.js} +1 -1
  12. package/dist/assets/from-CAidt5N1.js +1 -0
  13. package/dist/assets/{innerFrom-FMZwm2mb.js → innerFrom-BgPDnAsH.js} +1 -1
  14. package/dist/assets/isScheduler-C5PGPVU1.js +1 -0
  15. package/dist/assets/{map-DHslluWD.js → map-BVOhpQm0.js} +1 -1
  16. package/dist/assets/mapOneOrManyArgs-COA1aRZM.js +1 -0
  17. package/dist/assets/merge-Cm-mm3_Q.js +1 -0
  18. package/dist/assets/mergeAll-BdUAXyrs.js +1 -0
  19. package/dist/assets/{mergeMap-g-JGW99j.js → mergeMap-Dw_YYHwH.js} +1 -1
  20. package/dist/assets/{no-shadow-element-Dz9jgDtr.js → no-shadow-element-YPHUv5PR.js} +1 -1
  21. package/dist/assets/of-DiALp3BZ.js +1 -0
  22. package/dist/assets/{price-CHipCs2z.js → price-DAxY_7sk.js} +1 -1
  23. package/dist/assets/{product-card-c_0I2Lp_.js → product-card-HetVhdJ3.js} +1 -1
  24. package/dist/assets/{promotion-badge-CzwsPJJq.js → promotion-badge-8Arhhb-p.js} +1 -1
  25. package/dist/assets/{property-Bx8Yvr4_.js → property-_7ObQ3dl.js} +1 -1
  26. package/dist/assets/skip-zbH-ayby.js +1 -0
  27. package/dist/assets/{skipWhile-BzDgmir5.js → skipWhile-BZVFq1Cg.js} +1 -1
  28. package/dist/assets/{state-C5zM4-Pq.js → state-W5mtSPAs.js} +1 -1
  29. package/dist/assets/{switchMap-6Z80ObHE.js → switchMap-Dk_0Nhlo.js} +1 -1
  30. package/dist/assets/{take-ByPtGQky.js → take-CozE9iSG.js} +1 -1
  31. package/dist/assets/{tap-K_D6lo97.js → tap-C8CJ3R2H.js} +1 -1
  32. package/dist/assets/timer-D82-ik89.js +1 -0
  33. package/dist/assets/{unsafe-html-uboinnys.js → unsafe-html-CY0Np4--.js} +1 -1
  34. package/dist/assets/{viewport-listener-DrFhSZNW.js → viewport-listener-CDsKFDz1.js} +1 -1
  35. package/dist/basket-transfer-modal/basket-transfer-modal.min.js +1 -1
  36. package/dist/catalog/basket-preview/basket-preview.min.js +3 -3
  37. package/dist/catalog/catalog-category/catalog-category.min.js +1 -1
  38. package/dist/catalog/catalog-favorites/catalog-favorites.min.js +1 -1
  39. package/dist/catalog/catalog-history/catalog-history.min.js +1 -1
  40. package/dist/catalog/catalog-home/catalog-home.min.js +1 -1
  41. package/dist/catalog/catalog-list/catalog-list.min.js +1 -1
  42. package/dist/catalog/catalog-load-more.min.js +1 -1
  43. package/dist/catalog/catalog-tabs/catalog-tabs.min.js +1 -1
  44. package/dist/catalog/catalog-toolbar/catalog-toolbar.min.js +1 -1
  45. package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
  46. package/dist/counter/counter.min.js +1 -1
  47. package/dist/drawer/drawer.min.js +1 -1
  48. package/dist/drawer-view-swapper/drawer-view-swapper.min.js +24 -24
  49. package/dist/history-drawer/history-drawer.min.js +1 -1
  50. package/dist/history-order/history-order.min.js +1 -1
  51. package/dist/history-order-expanded/history-order-expanded.min.js +1 -1
  52. package/dist/last-order-badge/last-order-badge.min.js +2 -2
  53. package/dist/last-order-modal/last-order-modal.min.js +1 -1
  54. package/dist/like-button/like-button.min.js +1 -1
  55. package/dist/modal/modal.min.js +1 -1
  56. package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.min.js +1 -1
  57. package/dist/onboarding/onboarding.min.js +2 -2
  58. package/dist/order-again/order-again.min.js +1 -1
  59. package/dist/planner/helpers/menu-title.min.js +1 -0
  60. package/dist/planner/helpers/open-onboarding-modal.min.js +1 -1
  61. package/dist/planner/planner-abandon-modal/planner-abandon-modal.min.js +1 -1
  62. package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.min.js +1 -1
  63. package/dist/planner/planner-budget-gauge/planner-budget-gauge.min.js +1 -1
  64. package/dist/planner/planner-catalog/planner-catalog.min.js +2 -2
  65. package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
  66. package/dist/planner/planner-current-menu-modal/planner-current-menu-modal.min.js +1 -1
  67. package/dist/planner/planner-dashboard/planner-dashboard.min.js +1 -1
  68. package/dist/planner/planner-form/planner-form.min.js +9 -9
  69. package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
  70. package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -1
  71. package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +1 -1
  72. package/dist/planner/planner-open-catalog-modal/planner-open-catalog-modal.min.js +1 -1
  73. package/dist/planner/planner-quick-menu/planner-quick-menu.min.js +1 -1
  74. package/dist/planner/planner-recipe-card/planner-recipe-card.min.js +1 -1
  75. package/dist/planner/planner-recipe-list/planner-recipe-list.css +1 -1
  76. package/dist/planner/planner-recipe-list/planner-recipe-list.min.js +1 -1
  77. package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.css +1 -1
  78. package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.min.js +1 -1
  79. package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +1 -1
  80. package/dist/planner/to-basket-loader/to-basket-loader.min.js +1 -1
  81. package/dist/planner-entry/planner-entry.min.js +1 -1
  82. package/dist/preferences/preferences.min.js +21 -21
  83. package/dist/price/price.min.js +1 -1
  84. package/dist/recipe-card/recipe-card.min.js +1 -1
  85. package/dist/recipe-card-cta/recipe-card-cta.css +1 -1
  86. package/dist/recipe-card-cta/recipe-card-cta.min.js +1 -1
  87. package/dist/recipe-details/details-footer/details-footer.css +1 -1
  88. package/dist/recipe-details/recipe-details.css +1 -1
  89. package/dist/recipe-details/recipe-details.min.js +93 -93
  90. package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
  91. package/dist/replace-item/replace-item-card/replace-item-card.min.js +1 -1
  92. package/dist/replace-item/replace-item.min.js +1 -1
  93. package/dist/replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js +1 -1
  94. package/dist/replace-item-planner/replace-item-planner.min.js +1 -1
  95. package/dist/select/select.min.js +1 -1
  96. package/dist/slider-tabs/slider-tabs.min.js +1 -1
  97. package/dist/store-indicator/store-indicator.min.js +1 -1
  98. package/dist/store-locator/store-locator.min.js +1 -1
  99. package/dist/store-locator-drawer/store-locator-drawer.min.js +1 -1
  100. package/dist/supplier-selector/supplier-selector.min.js +1 -1
  101. package/package.json +1 -1
  102. package/dist/assets/combineLatest-BN0_WcEG.js +0 -1
  103. package/dist/assets/delay-wUm-cx7a.js +0 -1
  104. package/dist/assets/empty-Bs9kqCuA.js +0 -1
  105. package/dist/assets/executeSchedule-C0acKsif.js +0 -1
  106. package/dist/assets/from-BTlWkhKh.js +0 -1
  107. package/dist/assets/mapOneOrManyArgs-Bdu6mo6S.js +0 -1
  108. package/dist/assets/merge-tdU3EgEI.js +0 -1
  109. package/dist/assets/mergeAll-DTkL1sF8.js +0 -1
  110. package/dist/assets/of-hd4MpK5g.js +0 -1
  111. package/dist/assets/skip-BuAl4dWz.js +0 -1
  112. package/dist/assets/timer-C3uKg-qK.js +0 -1
@@ -1 +1 @@
1
- import{N as P,B as m}from"../assets/no-shadow-element-Dz9jgDtr.js";import{V as b}from"../assets/viewport-listener-DrFhSZNW.js";import{t as f}from"../assets/custom-element-BhZVzxrc.js";import{w as I,m as n}from"../assets/mealz-sdk-E_fNZM-c.js";import{s as g}from"../assets/skipWhile-BzDgmir5.js";import{t as l}from"../assets/take-ByPtGQky.js";import{f as h}from"../assets/filter-DQ4vwAGj.js";import"../assets/debounceTime-D7R6Z3Am.js";import"../assets/async-D5WN8Wfc.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/empty-Bs9kqCuA.js";class p{constructor(){this.priceMemorized=new Map,this.displayedPrices=new Set,this.cleanupInterval=null,this.MAX_MEMO_SIZE=500,this.CLEANUP_INTERVAL=600*1e3,this.handlePageUnload=()=>{this.destroy()},this.startAutoCleanup(),this.setupPageUnloadListener()}static getInstance(){return p.instance||(p.instance=new p),p.instance}getMemorizedPrice(e,r){const s=`${e}-${r}`;return this.priceMemorized.get(s)}memorizedPrice(e,r,s){const c=`${e}-${r}`;this.priceMemorized.size>=this.MAX_MEMO_SIZE&&this.cleanOldPrices(),this.priceMemorized.set(c,{price:s,guests:r})}isPriceDisplayed(e,r){const s=`${e}-${r}`;return this.displayedPrices.has(s)}markPriceAsDisplayed(e,r){const s=`${e}-${r}`;this.displayedPrices.add(s)}cleanOldPrices(){this.priceMemorized.size>this.MAX_MEMO_SIZE*.8&&Array.from(this.priceMemorized.entries()).slice(0,Math.floor(this.priceMemorized.size*.3)).forEach(([s])=>{this.priceMemorized.delete(s),this.displayedPrices.delete(s)})}clearAllPrices(){this.priceMemorized.clear(),this.displayedPrices.clear()}destroy(){window.removeEventListener("beforeunload",this.handlePageUnload),this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null),this.priceMemorized.clear(),this.displayedPrices.clear(),p.instance=null}startAutoCleanup(){this.cleanupInterval=window.setInterval(()=>{this.cleanOldPrices()},this.CLEANUP_INTERVAL)}setupPageUnloadListener(){window.addEventListener("beforeunload",this.handlePageUnload)}}var v=Object.getOwnPropertyDescriptor,y=(i,e,r,s)=>{for(var c=s>1?void 0:s?v(e,r):e,t=i.length-1,a;t>=0;t--)(a=i[t])&&(c=a(c)||c);return c};let o=class extends P{constructor(){super(...arguments),this.recipePricing=null,this.formattedPrice="",this.recipeId="",this.pricePerServe="",this.recipePricingValue=null,this.serves=0,this.posId="",this.extStoreId="",this.rendered=new m(!1),this.priceViewportObserver=null,this.priceFetched=!1,this.planner=!1,this.lastDisplayedRecipeId="",this.lastPlannerPrice=0,this.plannerPriceSubscription=null,this.lastAppliedPrice="",this.priceDisplayed=!1,this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.classList.add("re-rendering"),this.getInitialStatus(),this.listenInView(),I().then(()=>{this.setupSubscriptions()}).catch(i=>{console.warn("Failed to initialize SDK subscriptions:",i)}),requestAnimationFrame(()=>{this.classList.remove("re-rendering")})}disconnectedCallback(){var i;super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null),(i=this.priceViewportObserver)==null||i.disconnect()}setupSubscriptions(){const i=n;this.subscriptions.push(this.rendered.pipe(g(e=>!e),l(1)).subscribe(()=>{const e=i.basket.recipePricesInBasket$().subscribe(r=>{if(!r)return;const s=r.find(c=>c.id===this.recipeId);r.length>0&&s&&parseFloat(s.price)>0&&(this.serves=i.basket.guestsForRecipe(s.id),this.recipePricingValue={id:s.id,price:parseFloat(s.price),guests:this.serves},this.recalculatePrice(parseFloat(s.price),this.serves))});this.subscriptions.push(e)}),i.recipes.recipePriceUpdated().subscribe(e=>{e.recipeId===this.recipeId&&!e.inBasket&&this.recipePricingValue&&(this.recipePricingValue.price=e.remaining,this.recalculatePrice(e.remaining,this.serves))}),this.setupDisplayedRecipeSubscription(),this.setupGuestUpdatesSubscription(),this.setupMenuPriceSubscription())}setupDisplayedRecipeSubscription(){return n.recipes.displayedRecipe$.pipe(h(()=>this.planner&&!!this.recipeId)).subscribe(e=>{var r;((r=e==null?void 0:e.recipe)==null?void 0:r.id)===this.recipeId?(this.lastDisplayedRecipeId=this.recipeId,this.trackPlannerRecipePrice(),this.updateGuestCountFromMenu()):!(e!=null&&e.recipe)&&this.lastDisplayedRecipeId===this.recipeId&&(this.updatePriceFromCapturedPlannerPrice(),this.lastDisplayedRecipeId="",this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null))})}setupGuestUpdatesSubscription(){return n.recipes.guestsUpdated().pipe(h(()=>!!this.recipeId)).subscribe(({guests:e,recipeId:r})=>{r===this.recipeId&&(this.serves=e,this.recipePricingValue&&this.recipePricingValue.price!==null&&this.recalculatePrice(this.recipePricingValue.price,this.serves))})}setupMenuPriceSubscription(){return n.planner.menuPrice$.pipe(h(()=>this.planner&&!!this.recipeId)).subscribe(()=>{if(this.lastPlannerPrice>0&&this.serves>0){const e=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(e.toFixed(2))}})}fetchPrice(){const i=p.getInstance(),e=i.getMemorizedPrice(this.recipeId,this.serves);if(e){requestAnimationFrame(()=>{this.applyCurrencyDisplay(e.price),i.markPriceAsDisplayed(this.recipeId,this.serves)});return}this.fetchAndUpdatePrice()}render(){this.recipePricing=this.querySelector(".mealz-recipe-pricing"),this.recipePricing&&(this.recipeId&&this.pricePerServe&&p.getInstance().isPriceDisplayed(this.recipeId,this.serves)&&requestAnimationFrame(()=>{this.applyCurrencyDisplay(this.pricePerServe)}),this.rendered.next(!0),this.getInitialStatus())}getInitialStatus(){const i=this.attributes.getNamedItem("starting-data"),e=i==null?void 0:i.value;if(!e)return;const r=JSON.parse(e),{recipeId:s,extStoreId:c,posId:t,pricePerServe:a,serves:d,planner:u}=r;this.extStoreId=c||"",this.posId=t||"",this.recipeId=s,this.pricePerServe=(a==null?void 0:a.toString())??"",this.serves=d,this.planner=u||!1,this.recipePricingValue={id:this.recipeId,price:null,guests:this.serves},this.pricePerServe&&this.applyCurrencyDisplay(this.pricePerServe)}applyCurrencyDisplay(i){if(this.lastAppliedPrice===i)return;const e=parseFloat(i);isNaN(e)||(this.lastAppliedPrice=i,this.formattedPrice=e.toLocaleString("fr-FR",{minimumFractionDigits:2,maximumFractionDigits:2}),this.recipePricing||(this.recipePricing=this.querySelector(".mealz-recipe-pricing")),this.updateDOM())}showPrice(){var r,s;if(this.priceDisplayed)return;const i=(r=this.recipePricing)==null?void 0:r.querySelector(".mealz-recipe-pricing__loading"),e=(s=this.recipePricing)==null?void 0:s.querySelector(".mealz-recipe-pricing__wrapper");i==null||i.classList.replace("active","hidden"),e==null||e.classList.replace("hidden","active"),this.priceDisplayed=!0}updateDOM(){var e;const i=(e=this.recipePricing)==null?void 0:e.querySelector(".mealz-recipe-pricing__wrapper__price");i&&(i.innerHTML=this.formattedPrice+" €",this.showPrice())}recalculatePrice(i,e){const r=(i/e).toString();this.applyCurrencyDisplay(r)}trackPlannerRecipePrice(){const i=n;this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null),this.plannerPriceSubscription=i.planner.plannerRecipePrice$.subscribe(e=>{e>0&&(this.lastPlannerPrice=e)})}updateGuestCountFromMenu(){if(!this.planner||!this.recipeId)return;n.planner.getGuestsForRecipe(this.recipeId).pipe(l(1)).subscribe(e=>{e&&e>0&&(this.serves=e)})}updatePriceFromCapturedPlannerPrice(){if(!this.planner||!this.recipeId)return;n.planner.isRecipeInMenu$(this.recipeId).pipe(l(1)).subscribe(e=>{if(e&&this.lastPlannerPrice>0){if(this.serves>0){const r=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(r.toFixed(2))}}else this.pricePerServe&&this.applyCurrencyDisplay(this.pricePerServe)})}listenInView(){this.priceViewportObserver=new b(this,()=>{var i;!this.priceFetched&&((i=this.recipePricingValue)==null?void 0:i.price)===null&&this.fetchPrice()})}fetchAndUpdatePrice(){const i=this.posId||this.extStoreId,e=!!this.extStoreId;if(!i||!this.recipeId||!this.serves)return;const c=n.recipes.fetchPricing(this.recipeId,i,this.serves,e).subscribe({next:t=>{t&&t["price-per-serve"]&&(this.pricePerServe=t["price-per-serve"].toString(),this.recipePricingValue={id:this.recipeId,price:t.price,guests:this.serves},this.recalculatePrice(t.price,this.serves),this.priceFetched=!0)},error:t=>{console.error("Failed to fetch recipe pricing:",t)}});this.subscriptions.push(c)}};o=y([f("mealz-recipe-pricing")],o);customElements.get("mealz-recipe-pricing")||customElements.define("mealz-recipe-pricing",o);
1
+ import{N as P,B as m}from"../assets/no-shadow-element-YPHUv5PR.js";import{V as b}from"../assets/viewport-listener-CDsKFDz1.js";import{t as f}from"../assets/custom-element-BhZVzxrc.js";import{w as I,m as n}from"../assets/mealz-sdk-E_fNZM-c.js";import{s as g}from"../assets/skipWhile-BZVFq1Cg.js";import{t as l}from"../assets/take-CozE9iSG.js";import{f as h}from"../assets/filter-BZ75lS5D.js";import"../assets/debounceTime-B4DpnstH.js";import"../assets/async-CFBGA-Dz.js";import"../assets/OperatorSubscriber-BaYaQC1O.js";import"../assets/empty-0eVnsLmk.js";class p{constructor(){this.priceMemorized=new Map,this.displayedPrices=new Set,this.cleanupInterval=null,this.MAX_MEMO_SIZE=500,this.CLEANUP_INTERVAL=600*1e3,this.handlePageUnload=()=>{this.destroy()},this.startAutoCleanup(),this.setupPageUnloadListener()}static getInstance(){return p.instance||(p.instance=new p),p.instance}getMemorizedPrice(e,r){const s=`${e}-${r}`;return this.priceMemorized.get(s)}memorizedPrice(e,r,s){const c=`${e}-${r}`;this.priceMemorized.size>=this.MAX_MEMO_SIZE&&this.cleanOldPrices(),this.priceMemorized.set(c,{price:s,guests:r})}isPriceDisplayed(e,r){const s=`${e}-${r}`;return this.displayedPrices.has(s)}markPriceAsDisplayed(e,r){const s=`${e}-${r}`;this.displayedPrices.add(s)}cleanOldPrices(){this.priceMemorized.size>this.MAX_MEMO_SIZE*.8&&Array.from(this.priceMemorized.entries()).slice(0,Math.floor(this.priceMemorized.size*.3)).forEach(([s])=>{this.priceMemorized.delete(s),this.displayedPrices.delete(s)})}clearAllPrices(){this.priceMemorized.clear(),this.displayedPrices.clear()}destroy(){window.removeEventListener("beforeunload",this.handlePageUnload),this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null),this.priceMemorized.clear(),this.displayedPrices.clear(),p.instance=null}startAutoCleanup(){this.cleanupInterval=window.setInterval(()=>{this.cleanOldPrices()},this.CLEANUP_INTERVAL)}setupPageUnloadListener(){window.addEventListener("beforeunload",this.handlePageUnload)}}var v=Object.getOwnPropertyDescriptor,y=(i,e,r,s)=>{for(var c=s>1?void 0:s?v(e,r):e,t=i.length-1,a;t>=0;t--)(a=i[t])&&(c=a(c)||c);return c};let o=class extends P{constructor(){super(...arguments),this.recipePricing=null,this.formattedPrice="",this.recipeId="",this.pricePerServe="",this.recipePricingValue=null,this.serves=0,this.posId="",this.extStoreId="",this.rendered=new m(!1),this.priceViewportObserver=null,this.priceFetched=!1,this.planner=!1,this.lastDisplayedRecipeId="",this.lastPlannerPrice=0,this.plannerPriceSubscription=null,this.lastAppliedPrice="",this.priceDisplayed=!1,this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.classList.add("re-rendering"),this.getInitialStatus(),this.listenInView(),I().then(()=>{this.setupSubscriptions()}).catch(i=>{console.warn("Failed to initialize SDK subscriptions:",i)}),requestAnimationFrame(()=>{this.classList.remove("re-rendering")})}disconnectedCallback(){var i;super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null),(i=this.priceViewportObserver)==null||i.disconnect()}setupSubscriptions(){const i=n;this.subscriptions.push(this.rendered.pipe(g(e=>!e),l(1)).subscribe(()=>{const e=i.basket.recipePricesInBasket$().subscribe(r=>{if(!r)return;const s=r.find(c=>c.id===this.recipeId);r.length>0&&s&&parseFloat(s.price)>0&&(this.serves=i.basket.guestsForRecipe(s.id),this.recipePricingValue={id:s.id,price:parseFloat(s.price),guests:this.serves},this.recalculatePrice(parseFloat(s.price),this.serves))});this.subscriptions.push(e)}),i.recipes.recipePriceUpdated().subscribe(e=>{e.recipeId===this.recipeId&&!e.inBasket&&this.recipePricingValue&&(this.recipePricingValue.price=e.remaining,this.recalculatePrice(e.remaining,this.serves))}),this.setupDisplayedRecipeSubscription(),this.setupGuestUpdatesSubscription(),this.setupMenuPriceSubscription())}setupDisplayedRecipeSubscription(){return n.recipes.displayedRecipe$.pipe(h(()=>this.planner&&!!this.recipeId)).subscribe(e=>{var r;((r=e==null?void 0:e.recipe)==null?void 0:r.id)===this.recipeId?(this.lastDisplayedRecipeId=this.recipeId,this.trackPlannerRecipePrice(),this.updateGuestCountFromMenu()):!(e!=null&&e.recipe)&&this.lastDisplayedRecipeId===this.recipeId&&(this.updatePriceFromCapturedPlannerPrice(),this.lastDisplayedRecipeId="",this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null))})}setupGuestUpdatesSubscription(){return n.recipes.guestsUpdated().pipe(h(()=>!!this.recipeId)).subscribe(({guests:e,recipeId:r})=>{r===this.recipeId&&(this.serves=e,this.recipePricingValue&&this.recipePricingValue.price!==null&&this.recalculatePrice(this.recipePricingValue.price,this.serves))})}setupMenuPriceSubscription(){return n.planner.menuPrice$.pipe(h(()=>this.planner&&!!this.recipeId)).subscribe(()=>{if(this.lastPlannerPrice>0&&this.serves>0){const e=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(e.toFixed(2))}})}fetchPrice(){const i=p.getInstance(),e=i.getMemorizedPrice(this.recipeId,this.serves);if(e){requestAnimationFrame(()=>{this.applyCurrencyDisplay(e.price),i.markPriceAsDisplayed(this.recipeId,this.serves)});return}this.fetchAndUpdatePrice()}render(){this.recipePricing=this.querySelector(".mealz-recipe-pricing"),this.recipePricing&&(this.recipeId&&this.pricePerServe&&p.getInstance().isPriceDisplayed(this.recipeId,this.serves)&&requestAnimationFrame(()=>{this.applyCurrencyDisplay(this.pricePerServe)}),this.rendered.next(!0),this.getInitialStatus())}getInitialStatus(){const i=this.attributes.getNamedItem("starting-data"),e=i==null?void 0:i.value;if(!e)return;const r=JSON.parse(e),{recipeId:s,extStoreId:c,posId:t,pricePerServe:a,serves:d,planner:u}=r;this.extStoreId=c||"",this.posId=t||"",this.recipeId=s,this.pricePerServe=(a==null?void 0:a.toString())??"",this.serves=d,this.planner=u||!1,this.recipePricingValue={id:this.recipeId,price:null,guests:this.serves},this.pricePerServe&&this.applyCurrencyDisplay(this.pricePerServe)}applyCurrencyDisplay(i){if(this.lastAppliedPrice===i)return;const e=parseFloat(i);isNaN(e)||(this.lastAppliedPrice=i,this.formattedPrice=e.toLocaleString("fr-FR",{minimumFractionDigits:2,maximumFractionDigits:2}),this.recipePricing||(this.recipePricing=this.querySelector(".mealz-recipe-pricing")),this.updateDOM())}showPrice(){var r,s;if(this.priceDisplayed)return;const i=(r=this.recipePricing)==null?void 0:r.querySelector(".mealz-recipe-pricing__loading"),e=(s=this.recipePricing)==null?void 0:s.querySelector(".mealz-recipe-pricing__wrapper");i==null||i.classList.replace("active","hidden"),e==null||e.classList.replace("hidden","active"),this.priceDisplayed=!0}updateDOM(){var e;const i=(e=this.recipePricing)==null?void 0:e.querySelector(".mealz-recipe-pricing__wrapper__price");i&&(i.innerHTML=this.formattedPrice+" €",this.showPrice())}recalculatePrice(i,e){const r=(i/e).toString();this.applyCurrencyDisplay(r)}trackPlannerRecipePrice(){const i=n;this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null),this.plannerPriceSubscription=i.planner.plannerRecipePrice$.subscribe(e=>{e>0&&(this.lastPlannerPrice=e)})}updateGuestCountFromMenu(){if(!this.planner||!this.recipeId)return;n.planner.getGuestsForRecipe(this.recipeId).pipe(l(1)).subscribe(e=>{e&&e>0&&(this.serves=e)})}updatePriceFromCapturedPlannerPrice(){if(!this.planner||!this.recipeId)return;n.planner.isRecipeInMenu$(this.recipeId).pipe(l(1)).subscribe(e=>{if(e&&this.lastPlannerPrice>0){if(this.serves>0){const r=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(r.toFixed(2))}}else this.pricePerServe&&this.applyCurrencyDisplay(this.pricePerServe)})}listenInView(){this.priceViewportObserver=new b(this,()=>{var i;!this.priceFetched&&((i=this.recipePricingValue)==null?void 0:i.price)===null&&this.fetchPrice()})}fetchAndUpdatePrice(){const i=this.posId||this.extStoreId,e=!!this.extStoreId;if(!i||!this.recipeId||!this.serves)return;const c=n.recipes.fetchPricing(this.recipeId,i,this.serves,e).subscribe({next:t=>{t&&t["price-per-serve"]&&(this.pricePerServe=t["price-per-serve"].toString(),this.recipePricingValue={id:this.recipeId,price:t.price,guests:this.serves},this.recalculatePrice(t.price,this.serves),this.priceFetched=!0)},error:t=>{console.error("Failed to fetch recipe pricing:",t)}});this.subscriptions.push(c)}};o=y([f("mealz-recipe-pricing")],o);customElements.get("mealz-recipe-pricing")||customElements.define("mealz-recipe-pricing",o);
@@ -1,4 +1,4 @@
1
- import"../../assets/promotion-badge-CzwsPJJq.js";import{N as n,k as s}from"../../assets/no-shadow-element-Dz9jgDtr.js";import{t as h}from"../../assets/custom-element-BhZVzxrc.js";import{n as p}from"../../assets/property-Bx8Yvr4_.js";import{g as u,a as z}from"../../assets/price-utils-BRFZa-3D.js";import{m as o}from"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/price-CHipCs2z.js";var b=Object.defineProperty,_=Object.getOwnPropertyDescriptor,l=(e,i,c,a)=>{for(var t=a>1?void 0:a?_(i,c):i,m=e.length-1,d;m>=0;m--)(d=e[m])&&(t=(a?d(i,c,t):d(t))||t);return a&&t&&b(i,c,t),t};let r=class extends n{constructor(){super(),this.noSupplier=o.supplier.isNoSupplier(),this.subscriptions=[],this.styleURL=new URL("./replace-item/replace-item-card/replace-item-card.css",this.getBaseURL()),this.subscriptions.push(o.replaceItem.replaceItemLoading$.subscribe(e=>{this.replaceItemLoading=e,this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}onSelectItem(e){const i={detail:{item:e},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("selectItem",i))}render(){var e,i,c,a,t,m;return s`
1
+ import"../../assets/promotion-badge-8Arhhb-p.js";import{N as n,k as s}from"../../assets/no-shadow-element-YPHUv5PR.js";import{t as h}from"../../assets/custom-element-BhZVzxrc.js";import{n as p}from"../../assets/property-_7ObQ3dl.js";import{g as u,a as z}from"../../assets/price-utils-BRFZa-3D.js";import{m as o}from"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/price-DAxY_7sk.js";var b=Object.defineProperty,_=Object.getOwnPropertyDescriptor,l=(e,i,c,a)=>{for(var t=a>1?void 0:a?_(i,c):i,m=e.length-1,d;m>=0;m--)(d=e[m])&&(t=(a?d(i,c,t):d(t))||t);return a&&t&&b(i,c,t),t};let r=class extends n{constructor(){super(),this.noSupplier=o.supplier.isNoSupplier(),this.subscriptions=[],this.styleURL=new URL("./replace-item/replace-item-card/replace-item-card.css",this.getBaseURL()),this.subscriptions.push(o.replaceItem.replaceItemLoading$.subscribe(e=>{this.replaceItemLoading=e,this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}onSelectItem(e){const i={detail:{item:e},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("selectItem",i))}render(){var e,i,c,a,t,m;return s`
2
2
  <div
3
3
  class="
4
4
  mealz-replace-item-card
@@ -1,4 +1,4 @@
1
- import"./replace-item-card/replace-item-card.min.js";import{N as h,n as u,D as o,k as i}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as g}from"../assets/custom-element-BhZVzxrc.js";import{c as _}from"../assets/capitalize-DUAqYmp4.js";import{m as s}from"../assets/mealz-sdk-E_fNZM-c.js";import{m as b}from"../assets/merge-tdU3EgEI.js";import{m as n}from"../assets/map-DHslluWD.js";import{d as z}from"../assets/debounceTime-D7R6Z3Am.js";import{f as v}from"../assets/filter-DQ4vwAGj.js";import{d as S}from"../assets/distinctUntilChanged-VvZTmHoN.js";import{s as $}from"../assets/switchMap-6Z80ObHE.js";import"../assets/promotion-badge-CzwsPJJq.js";import"../assets/property-Bx8Yvr4_.js";import"../assets/price-CHipCs2z.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/mergeAll-DTkL1sF8.js";import"../assets/mergeMap-g-JGW99j.js";import"../assets/innerFrom-FMZwm2mb.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/executeSchedule-C0acKsif.js";import"../assets/empty-Bs9kqCuA.js";import"../assets/from-BTlWkhKh.js";import"../assets/async-D5WN8Wfc.js";var f=Object.getOwnPropertyDescriptor,I=(e,t,c,a)=>{for(var r=a>1?void 0:a?f(t,c):t,l=e.length-1,m;l>=0;l--)(m=e[l])&&(r=m(r)||r);return r};let p=class extends h{constructor(){super(),this.addProductMode=!1,this.fromRecipeDetails=!1,this.isLoading=!1,this.subscriptions=[],this.searchString="",this.itemsWithPricesList=[],this.searchSubject=new u,this.styleURL=new URL("./replace-item/replace-item.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(this.setupSearchObservable(),s.replaceItem.basketEntryToReplace$.subscribe(e=>{this.handleToReplace(e)}),b(s.recipes.displayedRecipe$.pipe(n(e=>{var t;this.currentRecipeId=(t=e==null?void 0:e.recipe)==null?void 0:t.id,this.fromRecipeDetails=!!this.currentRecipeId})),s.replaceItem.replaceProductFromPreviewOpen$.pipe(n(e=>{this.basketEntry=e})),s.replaceItem.additionModalOpen$.pipe(n(e=>{this.addProductMode=e})),s.replaceItem.itemsWithPricesList$.pipe(n(e=>{this.itemsWithPricesList=e})),s.replaceItem.fetchingItemLoading$.pipe(n(e=>{this.isLoading=e}))).subscribe(()=>this.requestUpdate()))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}handleToReplace(e){if(this.searchString="",!e){this.basketEntry=void 0,this.ingredient=void 0,this.ignoreSelected=!1;return}this.basketEntry=e.basketEntry,this.ingredient=e.ingredient,this.ignoreSelected=e.ignoreSelected||!1,this.requestUpdate()}onClose(){s.replaceItem.replaceItemLoading$.next(void 0),s.replaceItem.basketEntryToReplace$.next(void 0),s.productAddition.close()}onSearchInputChange(e){this.searchString=e.target.value,this.searchSubject.next(this.searchString)}setupSearchObservable(){return this.searchSubject.pipe(z(200),v(e=>e.length>=3),S(),$(e=>s.replaceItem.searchItem(e))).subscribe()}onSelectItem(e){var a;const t=(a=this.basketEntry)==null?void 0:a.id,c=this.fromRecipeDetails?`/recipes/${this.currentRecipeId}/shopping`:"/basket/products";s.replaceItem.onSelectItem(e.detail.item,this.searchString,()=>{this.onClose(),s.productAddition.productAdded$.next(t)},{originPath:`${c}/item-selector`,props:{}})}renderIssues(){var e,t;return i`
1
+ import"./replace-item-card/replace-item-card.min.js";import{N as h,n as u,D as o,k as i}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as g}from"../assets/custom-element-BhZVzxrc.js";import{c as _}from"../assets/capitalize-DUAqYmp4.js";import{m as s}from"../assets/mealz-sdk-E_fNZM-c.js";import{m as b}from"../assets/merge-Cm-mm3_Q.js";import{m as n}from"../assets/map-BVOhpQm0.js";import{d as z}from"../assets/debounceTime-B4DpnstH.js";import{f as v}from"../assets/filter-BZ75lS5D.js";import{d as S}from"../assets/distinctUntilChanged-91AVuO2B.js";import{s as $}from"../assets/switchMap-Dk_0Nhlo.js";import"../assets/promotion-badge-8Arhhb-p.js";import"../assets/property-_7ObQ3dl.js";import"../assets/price-DAxY_7sk.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/mergeAll-BdUAXyrs.js";import"../assets/mergeMap-Dw_YYHwH.js";import"../assets/innerFrom-BgPDnAsH.js";import"../assets/OperatorSubscriber-BaYaQC1O.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/empty-0eVnsLmk.js";import"../assets/args-BozZ6oU-.js";import"../assets/isScheduler-C5PGPVU1.js";import"../assets/from-CAidt5N1.js";import"../assets/async-CFBGA-Dz.js";var f=Object.getOwnPropertyDescriptor,I=(e,t,c,a)=>{for(var r=a>1?void 0:a?f(t,c):t,l=e.length-1,m;l>=0;l--)(m=e[l])&&(r=m(r)||r);return r};let p=class extends h{constructor(){super(),this.addProductMode=!1,this.fromRecipeDetails=!1,this.isLoading=!1,this.subscriptions=[],this.searchString="",this.itemsWithPricesList=[],this.searchSubject=new u,this.styleURL=new URL("./replace-item/replace-item.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(this.setupSearchObservable(),s.replaceItem.basketEntryToReplace$.subscribe(e=>{this.handleToReplace(e)}),b(s.recipes.displayedRecipe$.pipe(n(e=>{var t;this.currentRecipeId=(t=e==null?void 0:e.recipe)==null?void 0:t.id,this.fromRecipeDetails=!!this.currentRecipeId})),s.replaceItem.replaceProductFromPreviewOpen$.pipe(n(e=>{this.basketEntry=e})),s.replaceItem.additionModalOpen$.pipe(n(e=>{this.addProductMode=e})),s.replaceItem.itemsWithPricesList$.pipe(n(e=>{this.itemsWithPricesList=e})),s.replaceItem.fetchingItemLoading$.pipe(n(e=>{this.isLoading=e}))).subscribe(()=>this.requestUpdate()))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}handleToReplace(e){if(this.searchString="",!e){this.basketEntry=void 0,this.ingredient=void 0,this.ignoreSelected=!1;return}this.basketEntry=e.basketEntry,this.ingredient=e.ingredient,this.ignoreSelected=e.ignoreSelected||!1,this.requestUpdate()}onClose(){s.replaceItem.replaceItemLoading$.next(void 0),s.replaceItem.basketEntryToReplace$.next(void 0),s.productAddition.close()}onSearchInputChange(e){this.searchString=e.target.value,this.searchSubject.next(this.searchString)}setupSearchObservable(){return this.searchSubject.pipe(z(200),v(e=>e.length>=3),S(),$(e=>s.replaceItem.searchItem(e))).subscribe()}onSelectItem(e){var a;const t=(a=this.basketEntry)==null?void 0:a.id,c=this.fromRecipeDetails?`/recipes/${this.currentRecipeId}/shopping`:"/basket/products";s.replaceItem.onSelectItem(e.detail.item,this.searchString,()=>{this.onClose(),s.productAddition.productAdded$.next(t)},{originPath:`${c}/item-selector`,props:{}})}renderIssues(){var e,t;return i`
2
2
  <!-- NO SUBSTITUTION PRODUCT -->
3
3
  ${!this.isLoading&&this.itemsWithPricesList.length===1&&!this.searchString?i`
4
4
  <div class="mealz-replace-item__error">
@@ -1,4 +1,4 @@
1
- import"../../assets/promotion-badge-CzwsPJJq.js";import{N as d,k as t}from"../../assets/no-shadow-element-Dz9jgDtr.js";import{t as o}from"../../assets/custom-element-BhZVzxrc.js";import{n}from"../../assets/property-Bx8Yvr4_.js";import{g as h,a as u}from"../../assets/price-utils-BRFZa-3D.js";import{m as z}from"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/price-CHipCs2z.js";var P=Object.defineProperty,_=Object.getOwnPropertyDescriptor,p=(a,r,l,s)=>{for(var e=s>1?void 0:s?_(r,l):r,c=a.length-1,m;c>=0;c--)(m=a[c])&&(e=(s?m(r,l,e):m(e))||e);return s&&e&&P(r,l,e),e};let i=class extends d{constructor(){super(),this.noSupplier=z.supplier.isNoSupplier(),this.styleURL=new URL("./replace-item-planner/replace-item-card-planner/replace-item-card-planner.css",this.getBaseURL())}onSelectItem(){this.itemWithPrice.status="ticked";const a={detail:{itemWithPrice:this.itemWithPrice},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("selectItem",a)),this.requestUpdate()}render(){return t`
1
+ import"../../assets/promotion-badge-8Arhhb-p.js";import{N as d,k as t}from"../../assets/no-shadow-element-YPHUv5PR.js";import{t as o}from"../../assets/custom-element-BhZVzxrc.js";import{n}from"../../assets/property-_7ObQ3dl.js";import{g as h,a as u}from"../../assets/price-utils-BRFZa-3D.js";import{m as z}from"../../assets/mealz-sdk-E_fNZM-c.js";import"../../assets/price-DAxY_7sk.js";var P=Object.defineProperty,_=Object.getOwnPropertyDescriptor,p=(a,r,l,s)=>{for(var e=s>1?void 0:s?_(r,l):r,c=a.length-1,m;c>=0;c--)(m=a[c])&&(e=(s?m(r,l,e):m(e))||e);return s&&e&&P(r,l,e),e};let i=class extends d{constructor(){super(),this.noSupplier=z.supplier.isNoSupplier(),this.styleURL=new URL("./replace-item-planner/replace-item-card-planner/replace-item-card-planner.css",this.getBaseURL())}onSelectItem(){this.itemWithPrice.status="ticked";const a={detail:{itemWithPrice:this.itemWithPrice},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("selectItem",a)),this.requestUpdate()}render(){return t`
2
2
  <div class=" mealz-replace-item-card-planner
3
3
  ${this.itemWithPrice.status==="ticked"?"selected":""}"
4
4
  >
@@ -1,4 +1,4 @@
1
- import"./replace-item-card-planner/replace-item-card-planner.min.js";import{N as h,n as d,D as o,k as a}from"../assets/no-shadow-element-Dz9jgDtr.js";import{c as u}from"../assets/capitalize-DUAqYmp4.js";import{t as g}from"../assets/custom-element-BhZVzxrc.js";import{m as i}from"../assets/mealz-sdk-E_fNZM-c.js";import{m as _}from"../assets/merge-tdU3EgEI.js";import{m}from"../assets/map-DHslluWD.js";import{d as b}from"../assets/debounceTime-D7R6Z3Am.js";import{f as z}from"../assets/filter-DQ4vwAGj.js";import{d as v}from"../assets/distinctUntilChanged-VvZTmHoN.js";import{s as S}from"../assets/switchMap-6Z80ObHE.js";import"../assets/promotion-badge-CzwsPJJq.js";import"../assets/property-Bx8Yvr4_.js";import"../assets/price-CHipCs2z.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/mergeAll-DTkL1sF8.js";import"../assets/mergeMap-g-JGW99j.js";import"../assets/innerFrom-FMZwm2mb.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/executeSchedule-C0acKsif.js";import"../assets/empty-Bs9kqCuA.js";import"../assets/from-BTlWkhKh.js";import"../assets/async-D5WN8Wfc.js";var f=Object.getOwnPropertyDescriptor,$=(e,t,s,n)=>{for(var r=n>1?void 0:n?f(t,s):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(r=c(r)||r);return r};let p=class extends h{constructor(){super(),this.isLoading=!1,this.subscriptions=[],this.searchString="",this.itemsWithPricesList=[],this.analyticsPath="/meals-planner/current",this.searchSubject=new d,this.styleURL=new URL("./replace-item-planner/replace-item-planner.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(this.setupSearchObservable(),i.planner.itemToReplace$.subscribe(e=>{this.handleToReplace(e)}),_(i.recipes.displayedRecipe$.pipe(m(e=>{var t;this.currentRecipeId=(t=e==null?void 0:e.recipe)==null?void 0:t.id})),i.planner.itemsWithPricesList$.pipe(m(e=>{this.itemsWithPricesList=e})),i.planner.fetchingItemLoading$.pipe(m(e=>{this.isLoading=e}))).subscribe(()=>{this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}handleToReplace(e){if(this.searchString="",!e){this.item=void 0,this.ingredient=void 0;return}this.item=e.item,this.ingredient=e.ingredient,this.requestUpdate()}onClose(){i.planner.itemToReplace$.next(void 0)}onSearchInputChange(e){this.searchString=e.target.value,this.searchSubject.next(this.searchString)}setupSearchObservable(){return this.searchSubject.pipe(b(200),z(e=>e.length>=3),v(),S(e=>i.planner.searchItem(e,this.ingredient,this.item))).subscribe()}onSelectItem(e){this.replacedItemEvent(e.detail.itemWithPrice),i.planner.replaceProduct(e.detail.itemWithPrice),this.item=e.detail.itemWithPrice.item,this.onClose()}formatNumber(e){const t=i.user.getLanguage()||"fr";return new Intl.NumberFormat(t,{minimumFractionDigits:1,maximumFractionDigits:2}).format(e)}renderIssues(){var e,t;return a`
1
+ import"./replace-item-card-planner/replace-item-card-planner.min.js";import{N as h,n as d,D as o,k as a}from"../assets/no-shadow-element-YPHUv5PR.js";import{c as u}from"../assets/capitalize-DUAqYmp4.js";import{t as g}from"../assets/custom-element-BhZVzxrc.js";import{m as i}from"../assets/mealz-sdk-E_fNZM-c.js";import{m as _}from"../assets/merge-Cm-mm3_Q.js";import{m}from"../assets/map-BVOhpQm0.js";import{d as b}from"../assets/debounceTime-B4DpnstH.js";import{f as z}from"../assets/filter-BZ75lS5D.js";import{d as v}from"../assets/distinctUntilChanged-91AVuO2B.js";import{s as S}from"../assets/switchMap-Dk_0Nhlo.js";import"../assets/promotion-badge-8Arhhb-p.js";import"../assets/property-_7ObQ3dl.js";import"../assets/price-DAxY_7sk.js";import"../assets/price-utils-BRFZa-3D.js";import"../assets/mergeAll-BdUAXyrs.js";import"../assets/mergeMap-Dw_YYHwH.js";import"../assets/innerFrom-BgPDnAsH.js";import"../assets/OperatorSubscriber-BaYaQC1O.js";import"../assets/executeSchedule-CEDvgTzM.js";import"../assets/empty-0eVnsLmk.js";import"../assets/args-BozZ6oU-.js";import"../assets/isScheduler-C5PGPVU1.js";import"../assets/from-CAidt5N1.js";import"../assets/async-CFBGA-Dz.js";var f=Object.getOwnPropertyDescriptor,$=(e,t,s,n)=>{for(var r=n>1?void 0:n?f(t,s):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(r=c(r)||r);return r};let p=class extends h{constructor(){super(),this.isLoading=!1,this.subscriptions=[],this.searchString="",this.itemsWithPricesList=[],this.analyticsPath="/meals-planner/current",this.searchSubject=new d,this.styleURL=new URL("./replace-item-planner/replace-item-planner.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(this.setupSearchObservable(),i.planner.itemToReplace$.subscribe(e=>{this.handleToReplace(e)}),_(i.recipes.displayedRecipe$.pipe(m(e=>{var t;this.currentRecipeId=(t=e==null?void 0:e.recipe)==null?void 0:t.id})),i.planner.itemsWithPricesList$.pipe(m(e=>{this.itemsWithPricesList=e})),i.planner.fetchingItemLoading$.pipe(m(e=>{this.isLoading=e}))).subscribe(()=>{this.requestUpdate()}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}handleToReplace(e){if(this.searchString="",!e){this.item=void 0,this.ingredient=void 0;return}this.item=e.item,this.ingredient=e.ingredient,this.requestUpdate()}onClose(){i.planner.itemToReplace$.next(void 0)}onSearchInputChange(e){this.searchString=e.target.value,this.searchSubject.next(this.searchString)}setupSearchObservable(){return this.searchSubject.pipe(b(200),z(e=>e.length>=3),v(),S(e=>i.planner.searchItem(e,this.ingredient,this.item))).subscribe()}onSelectItem(e){this.replacedItemEvent(e.detail.itemWithPrice),i.planner.replaceProduct(e.detail.itemWithPrice),this.item=e.detail.itemWithPrice.item,this.onClose()}formatNumber(e){const t=i.user.getLanguage()||"fr";return new Intl.NumberFormat(t,{minimumFractionDigits:1,maximumFractionDigits:2}).format(e)}renderIssues(){var e,t;return a`
2
2
  <!-- NO SUBSTITUTION PRODUCT -->
3
3
  ${!this.isLoading&&this.itemsWithPricesList.length===1&&!this.searchString?a`
4
4
  <div class="mealz-replace-item-planner__error">
@@ -1,4 +1,4 @@
1
- import{N as d,k as n}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-Bx8Yvr4_.js";import{r as u}from"../assets/state-C5zM4-Pq.js";import"../assets/mealz-sdk-E_fNZM-c.js";var _=Object.defineProperty,m=Object.getOwnPropertyDescriptor,a=(e,i,t,o)=>{for(var l=o>1?void 0:o?m(i,t):i,p=e.length-1,r;p>=0;p--)(r=e[p])&&(l=(o?r(i,t,l):r(l))||l);return o&&l&&_(i,t,l),l};let s=class extends d{constructor(){super(),this.options=[],this.value="",this.placeholder="",this.disabled=!1,this._open=!1,this._onWindowClick=e=>{e.composedPath().includes(this)||this._open&&(this._open=!1,this.requestUpdate())},this.styleURL=new URL("./select/select.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this._attachOutsideClick()}disconnectedCallback(){this._detachOutsideClick(),super.disconnectedCallback()}render(){const e=this.options.find(t=>t.id===this.value),i=(e==null?void 0:e.label)||this.placeholder||"";return n`
1
+ import{N as d,k as n}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-_7ObQ3dl.js";import{r as u}from"../assets/state-W5mtSPAs.js";import"../assets/mealz-sdk-E_fNZM-c.js";var _=Object.defineProperty,m=Object.getOwnPropertyDescriptor,a=(e,i,t,o)=>{for(var l=o>1?void 0:o?m(i,t):i,p=e.length-1,r;p>=0;p--)(r=e[p])&&(l=(o?r(i,t,l):r(l))||l);return o&&l&&_(i,t,l),l};let s=class extends d{constructor(){super(),this.options=[],this.value="",this.placeholder="",this.disabled=!1,this._open=!1,this._onWindowClick=e=>{e.composedPath().includes(this)||this._open&&(this._open=!1,this.requestUpdate())},this.styleURL=new URL("./select/select.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this._attachOutsideClick()}disconnectedCallback(){this._detachOutsideClick(),super.disconnectedCallback()}render(){const e=this.options.find(t=>t.id===this.value),i=(e==null?void 0:e.label)||this.placeholder||"";return n`
2
2
  <div class="mealz-select">
3
3
  <button
4
4
  type="button"
@@ -1,4 +1,4 @@
1
- import"../store-locator/store-locator.min.js";import{N as o,k as c}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import{n as b}from"../assets/property-Bx8Yvr4_.js";import"../assets/state-C5zM4-Pq.js";import"../assets/query-BApjzB0v.js";import"../assets/mealz-sdk-E_fNZM-c.js";var m=Object.defineProperty,p=Object.getOwnPropertyDescriptor,n=(e,t,i,a)=>{for(var s=a>1?void 0:a?p(t,i):t,d=e.length-1,r;d>=0;d--)(r=e[d])&&(s=(a?r(t,i,s):r(s))||s);return a&&s&&m(t,i,s),s};let l=class extends o{constructor(){super(),this._selectedTabIndex=0,this.styleURL=new URL("./slider-tabs/slider-tabs.css",this.getBaseURL())}get selectedTabIndex(){return this._selectedTabIndex}set selectedTabIndex(e){this._selectedTabIndex!==e&&(this._selectedTabIndex=e,this.sliderElement&&this.updateSlider())}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}firstUpdated(){this.sliderElement=this.querySelector(".mealz-slider-tab__background"),this.updateSlider()}render(){return c`
1
+ import"../store-locator/store-locator.min.js";import{N as o,k as c}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import{n as b}from"../assets/property-_7ObQ3dl.js";import"../assets/state-W5mtSPAs.js";import"../assets/query-BApjzB0v.js";import"../assets/mealz-sdk-E_fNZM-c.js";var m=Object.defineProperty,p=Object.getOwnPropertyDescriptor,n=(e,t,i,a)=>{for(var s=a>1?void 0:a?p(t,i):t,d=e.length-1,r;d>=0;d--)(r=e[d])&&(s=(a?r(t,i,s):r(s))||s);return a&&s&&m(t,i,s),s};let l=class extends o{constructor(){super(),this._selectedTabIndex=0,this.styleURL=new URL("./slider-tabs/slider-tabs.css",this.getBaseURL())}get selectedTabIndex(){return this._selectedTabIndex}set selectedTabIndex(e){this._selectedTabIndex!==e&&(this._selectedTabIndex=e,this.sliderElement&&this.updateSlider())}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}firstUpdated(){this.sliderElement=this.querySelector(".mealz-slider-tab__background"),this.updateSlider()}render(){return c`
2
2
  <div class="mealz-slider-tabs">
3
3
  ${this.tabs.map((e,t)=>c`
4
4
  <button
@@ -1,4 +1,4 @@
1
- import"../store-locator/store-locator.min.js";import{N as p,D as m,k as u}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as d}from"../assets/custom-element-BhZVzxrc.js";import{n as h}from"../assets/property-Bx8Yvr4_.js";import{m as l}from"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/state-C5zM4-Pq.js";import"../assets/query-BApjzB0v.js";var b=Object.defineProperty,w=Object.getOwnPropertyDescriptor,c=(e,s,i,r)=>{for(var t=r>1?void 0:r?w(s,i):s,o=e.length-1,n;o>=0;o--)(n=e[o])&&(t=(r?n(s,i,t):n(t))||t);return r&&t&&b(s,i,t),t};let a=class extends p{constructor(){super(),this.analyticsPath="",this.subscriptions=[],this.styleURL=new URL("./store-indicator/store-indicator.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.setCurrentPosLabel()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return this.currentPosLabel?u`
1
+ import"../store-locator/store-locator.min.js";import{N as p,D as m,k as u}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as d}from"../assets/custom-element-BhZVzxrc.js";import{n as h}from"../assets/property-_7ObQ3dl.js";import{m as l}from"../assets/mealz-sdk-E_fNZM-c.js";import"../assets/state-W5mtSPAs.js";import"../assets/query-BApjzB0v.js";var b=Object.defineProperty,w=Object.getOwnPropertyDescriptor,c=(e,s,i,r)=>{for(var t=r>1?void 0:r?w(s,i):s,o=e.length-1,n;o>=0;o--)(n=e[o])&&(t=(r?n(s,i,t):n(t))||t);return r&&t&&b(s,i,t),t};let a=class extends p{constructor(){super(),this.analyticsPath="",this.subscriptions=[],this.styleURL=new URL("./store-indicator/store-indicator.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.setCurrentPosLabel()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return this.currentPosLabel?u`
2
2
  <div class="mealz-store-indicator">
3
3
  <span class="mealz-store-indicator__pos-label mealz-ds-text weight-xl">
4
4
  ${this.currentPosLabel}
@@ -1,4 +1,4 @@
1
- import{N as u,k as a}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as m}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-Bx8Yvr4_.js";import{r as _}from"../assets/state-C5zM4-Pq.js";import{e as p}from"../assets/query-BApjzB0v.js";import{a as h}from"../assets/mealz-sdk-E_fNZM-c.js";class f{get extId(){return this.attributes["ext-id"]}}var g=Object.defineProperty,b=Object.getOwnPropertyDescriptor,l=(t,e,s,i)=>{for(var o=i>1?void 0:i?b(e,s):e,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(i?d(e,s,o):d(o))||o);return i&&o&&g(e,s,o),o};let r=class extends u{constructor(){var t,e,s,i,o,n;super(),this.selectedRadius=50,this.getByAddress=(e=(t=h)==null?void 0:t.pos)==null?void 0:e.getByAddress,this.getByCoordinates=(i=(s=h)==null?void 0:s.pos)==null?void 0:i.getByCoordinates,this.getAffiliateSuppliers=(n=(o=h)==null?void 0:o.supplier)==null?void 0:n.getAffiliateSuppliers,this._show=!1,this._posList=[],this._suppliers=[],this._markers=[],this._searchingPos=!1,this._searchSubmitted=!1,this._prevAddress="",this._selectedSuppliers=[],this._showPosList=!1,this._posSelected=!1,this.subscriptions=[],this.styleURL=new URL("/store-locator.css",import.meta.url)}get show(){return this._show}set show(t){this._show=t,this._show&&(this._posSelected=!1,this.initialSearch(),this._map&&this.ensureMapSize())}set geolocationCoordinates(t){var e,s;this._geolocationCoordinates=t,typeof((e=t==null?void 0:t.coords)==null?void 0:e.latitude)=="number"&&typeof((s=t==null?void 0:t.coords)==null?void 0:s.longitude)=="number"&&this.setGeolocation()}get geolocationCoordinates(){return this._geolocationCoordinates}getMapContainer(){var e;const t=this._mapElement??((e=this.querySelector)==null?void 0:e.call(this,"#mealz-store-locator__map"));return t instanceof HTMLElement?t:null}_nameOfStore(t){return`${t.supplier.attributes.name} - ${t.attributes.name}`}connectedCallback(){super.connectedCallback(),this.initLeaflet(),this.initEvents(),this.initResizeObserver()}disconnectedCallback(){var t,e,s;this.subscriptions.forEach(i=>i.unsubscribe()),this._resizeObserver&&this._resizeObserver.disconnect(),super.disconnectedCallback(),this._map&&(this._map.off(),this._map.remove(),this._map=void 0),(t=this._leafletCss)==null||t.remove(),(e=this._miamDs)==null||e.remove(),(s=this._leafletJs)==null||s.remove()}firstUpdated(){this._posSelected=!1,this.loadMap(),this.geolocationTimeout(),this.listenFormSubmit(),this._map&&this.ensureMapSize()}render(){return this.show?this.posSelectionTemplate():a``}posSelectionTemplate(){return a`
1
+ import{N as u,k as a}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as m}from"../assets/custom-element-BhZVzxrc.js";import{n as c}from"../assets/property-_7ObQ3dl.js";import{r as _}from"../assets/state-W5mtSPAs.js";import{e as p}from"../assets/query-BApjzB0v.js";import{a as h}from"../assets/mealz-sdk-E_fNZM-c.js";class f{get extId(){return this.attributes["ext-id"]}}var g=Object.defineProperty,b=Object.getOwnPropertyDescriptor,l=(t,e,s,i)=>{for(var o=i>1?void 0:i?b(e,s):e,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(i?d(e,s,o):d(o))||o);return i&&o&&g(e,s,o),o};let r=class extends u{constructor(){var t,e,s,i,o,n;super(),this.selectedRadius=50,this.getByAddress=(e=(t=h)==null?void 0:t.pos)==null?void 0:e.getByAddress,this.getByCoordinates=(i=(s=h)==null?void 0:s.pos)==null?void 0:i.getByCoordinates,this.getAffiliateSuppliers=(n=(o=h)==null?void 0:o.supplier)==null?void 0:n.getAffiliateSuppliers,this._show=!1,this._posList=[],this._suppliers=[],this._markers=[],this._searchingPos=!1,this._searchSubmitted=!1,this._prevAddress="",this._selectedSuppliers=[],this._showPosList=!1,this._posSelected=!1,this.subscriptions=[],this.styleURL=new URL("/store-locator.css",import.meta.url)}get show(){return this._show}set show(t){this._show=t,this._show&&(this._posSelected=!1,this.initialSearch(),this._map&&this.ensureMapSize())}set geolocationCoordinates(t){var e,s;this._geolocationCoordinates=t,typeof((e=t==null?void 0:t.coords)==null?void 0:e.latitude)=="number"&&typeof((s=t==null?void 0:t.coords)==null?void 0:s.longitude)=="number"&&this.setGeolocation()}get geolocationCoordinates(){return this._geolocationCoordinates}getMapContainer(){var e;const t=this._mapElement??((e=this.querySelector)==null?void 0:e.call(this,"#mealz-store-locator__map"));return t instanceof HTMLElement?t:null}_nameOfStore(t){return`${t.supplier.attributes.name} - ${t.attributes.name}`}connectedCallback(){super.connectedCallback(),this.initLeaflet(),this.initEvents(),this.initResizeObserver()}disconnectedCallback(){var t,e,s;this.subscriptions.forEach(i=>i.unsubscribe()),this._resizeObserver&&this._resizeObserver.disconnect(),super.disconnectedCallback(),this._map&&(this._map.off(),this._map.remove(),this._map=void 0),(t=this._leafletCss)==null||t.remove(),(e=this._miamDs)==null||e.remove(),(s=this._leafletJs)==null||s.remove()}firstUpdated(){this._posSelected=!1,this.loadMap(),this.geolocationTimeout(),this.listenFormSubmit(),this._map&&this.ensureMapSize()}render(){return this.show?this.posSelectionTemplate():a``}posSelectionTemplate(){return a`
2
2
  <div class="mealz-store-locator mealz-ds-body">
3
3
  <div class="mealz-store-locator__pos-selection">
4
4
  <button
@@ -1,4 +1,4 @@
1
- import{N as c,k as i}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as p}from"../assets/custom-element-BhZVzxrc.js";import{m as s}from"../assets/mealz-sdk-E_fNZM-c.js";import{s as h}from"../assets/skipWhile-BzDgmir5.js";import{s as u}from"../assets/switchMap-6Z80ObHE.js";import{m}from"../assets/map-DHslluWD.js";import{f as w}from"../assets/filter-DQ4vwAGj.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/innerFrom-FMZwm2mb.js";var S=Object.getOwnPropertyDescriptor,b=(e,t,o,l)=>{for(var r=l>1?void 0:l?S(t,o):t,a=e.length-1,d;a>=0;a--)(d=e[a])&&(r=d(r)||r);return r};let n=class extends c{constructor(){super(...arguments),this.analyticsPath="/locator",this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.listenToDrawerViewSwapper(),this.listenToCloseEvent(),this.listenToUserCoordinates()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return i`
1
+ import{N as c,k as i}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as p}from"../assets/custom-element-BhZVzxrc.js";import{m as s}from"../assets/mealz-sdk-E_fNZM-c.js";import{s as h}from"../assets/skipWhile-BZVFq1Cg.js";import{s as u}from"../assets/switchMap-Dk_0Nhlo.js";import{m}from"../assets/map-BVOhpQm0.js";import{f as w}from"../assets/filter-BZ75lS5D.js";import"../assets/OperatorSubscriber-BaYaQC1O.js";import"../assets/innerFrom-BgPDnAsH.js";var S=Object.getOwnPropertyDescriptor,b=(e,t,o,l)=>{for(var r=l>1?void 0:l?S(t,o):t,a=e.length-1,d;a>=0;a--)(d=e[a])&&(r=d(r)||r);return r};let n=class extends c{constructor(){super(...arguments),this.analyticsPath="/locator",this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.listenToDrawerViewSwapper(),this.listenToCloseEvent(),this.listenToUserCoordinates()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return i`
2
2
  <!-- NEED TO SET REAL VALUE TO .SHOW CONTINUE HERE -->
3
3
  <mealz-store-locator
4
4
  .show="${!0}"
@@ -1,4 +1,4 @@
1
- import{N as p,k as l}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as c}from"../assets/custom-element-BhZVzxrc.js";import{w as u}from"../assets/mealz-sdk-E_fNZM-c.js";import{f as d}from"../assets/filter-DQ4vwAGj.js";import"../assets/OperatorSubscriber-DF1TYu__.js";var m=Object.getOwnPropertyDescriptor,g=(e,s,t,r)=>{for(var i=r>1?void 0:r?m(s,t):s,a=e.length-1,n;a>=0;a--)(n=e[a])&&(i=n(i)||i);return i};let o=class extends p{constructor(){super(),this.onboardingSteps=[{title:"Choisissez une recette",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingRecipe.png"},{title:"Sélectionnez votre magasin",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingDrive.png"},{title:"Commandez vos ingrédients",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingIngredients.png"}],this.subscriptions=[],this.supplierList=[],this.analyticsPath="/supplier-selector",this.styleURL=new URL("/supplier-selector.css",import.meta.url)}connectedCallback(){super.connectedCallback(),u().then(()=>this.loadAvailableSuppliers()).catch(e=>{console.warn("[MealzSupplierSelector] MealzInternal SDK not available, suppliers will not be loaded.",e)}),this.listenToDrawerViewSwapper(),this.listenToCloseEvent()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}loadAvailableSuppliers(){var r;const e=window.mealz,s=(r=e==null?void 0:e.supplier)==null?void 0:r.getAffiliateSuppliers;if(!s){console.warn("[MealzSupplierSelector] mealz.supplier.getAffiliateSuppliers is not available.");return}const t=s();if(!t||typeof t.subscribe!="function"){console.warn("[MealzSupplierSelector] getAffiliateSuppliers did not return a subscribable observable.");return}this.subscriptions.push(t.subscribe(i=>{this.supplierList=i,this.requestUpdate()}))}selectSupplier(e){localStorage.setItem("_miam/selectedSupplierId",e.id),this.sendSelectSupplierEvent(e);const s=this.closest("mealz-drawer-view-swapper"),t=document.querySelector("mealz-store-locator");s&&(s.displayStoreLocator$.next(!0),window.mealzInternal.noSupplier.displaySupplierSelector$.next(!1),t&&(t.show=!0))}listenToDrawerViewSwapper(){const e=document.querySelector("mealz-drawer-view-swapper");e&&this.subscriptions.push(e.displaySupplierSelector$.pipe(d(s=>s)).subscribe(()=>this.pageview()))}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",()=>{this.sendCloseEvent()})}render(){return l`
1
+ import{N as p,k as l}from"../assets/no-shadow-element-YPHUv5PR.js";import{t as c}from"../assets/custom-element-BhZVzxrc.js";import{w as u}from"../assets/mealz-sdk-E_fNZM-c.js";import{f as d}from"../assets/filter-BZ75lS5D.js";import"../assets/OperatorSubscriber-BaYaQC1O.js";var m=Object.getOwnPropertyDescriptor,g=(e,s,t,r)=>{for(var i=r>1?void 0:r?m(s,t):s,a=e.length-1,n;a>=0;a--)(n=e[a])&&(i=n(i)||i);return i};let o=class extends p{constructor(){super(),this.onboardingSteps=[{title:"Choisissez une recette",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingRecipe.png"},{title:"Sélectionnez votre magasin",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingDrive.png"},{title:"Commandez vos ingrédients",image:"https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/onboardingIngredients.png"}],this.subscriptions=[],this.supplierList=[],this.analyticsPath="/supplier-selector",this.styleURL=new URL("/supplier-selector.css",import.meta.url)}connectedCallback(){super.connectedCallback(),u().then(()=>this.loadAvailableSuppliers()).catch(e=>{console.warn("[MealzSupplierSelector] MealzInternal SDK not available, suppliers will not be loaded.",e)}),this.listenToDrawerViewSwapper(),this.listenToCloseEvent()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}loadAvailableSuppliers(){var r;const e=window.mealz,s=(r=e==null?void 0:e.supplier)==null?void 0:r.getAffiliateSuppliers;if(!s){console.warn("[MealzSupplierSelector] mealz.supplier.getAffiliateSuppliers is not available.");return}const t=s();if(!t||typeof t.subscribe!="function"){console.warn("[MealzSupplierSelector] getAffiliateSuppliers did not return a subscribable observable.");return}this.subscriptions.push(t.subscribe(i=>{this.supplierList=i,this.requestUpdate()}))}selectSupplier(e){localStorage.setItem("_miam/selectedSupplierId",e.id),this.sendSelectSupplierEvent(e);const s=this.closest("mealz-drawer-view-swapper"),t=document.querySelector("mealz-store-locator");s&&(s.displayStoreLocator$.next(!0),window.mealzInternal.noSupplier.displaySupplierSelector$.next(!1),t&&(t.show=!0))}listenToDrawerViewSwapper(){const e=document.querySelector("mealz-drawer-view-swapper");e&&this.subscriptions.push(e.displaySupplierSelector$.pipe(d(s=>s)).subscribe(()=>this.pageview()))}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",()=>{this.sendCloseEvent()})}render(){return l`
2
2
  <div class="mealz-supplier-selector">
3
3
  ${this.renderOnboarding()}
4
4
  ${this.renderSuppliers()}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mealz-components",
3
3
  "type": "module",
4
- "version": "2.4.0",
4
+ "version": "2.4.2",
5
5
  "main": "./dist/mealz-components.js",
6
6
  "module": "./dist/mealz-components.js",
7
7
  "scripts": {
@@ -1 +0,0 @@
1
- import{O,t as v}from"./no-shadow-element-Dz9jgDtr.js";import{p as b,b as h,f as m}from"./from-BTlWkhKh.js";import{m as A}from"./mapOneOrManyArgs-Bdu6mo6S.js";import{c as S}from"./OperatorSubscriber-DF1TYu__.js";import{e as j}from"./executeSchedule-C0acKsif.js";var k=Array.isArray,d=Object.getPrototypeOf,P=Object.prototype,w=Object.keys;function x(r){if(r.length===1){var e=r[0];if(k(e))return{args:e,keys:null};if(F(e)){var t=w(e);return{args:t.map(function(n){return e[n]}),keys:t}}}return{args:r,keys:null}}function F(r){return r&&typeof r=="object"&&d(r)===P}function L(r,e){return r.reduce(function(t,n,a){return t[n]=e[a],t},{})}function q(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=b(r),n=h(r),a=x(r),o=a.args,c=a.keys;if(o.length===0)return m([],t);var u=new O(V(o,t,c?function(i){return L(c,i)}:v));return n?u.pipe(A(n)):u}function V(r,e,t){return t===void 0&&(t=v),function(n){l(e,function(){for(var a=r.length,o=new Array(a),c=a,u=a,i=function(s){l(e,function(){var y=m(r[s],e),p=!1;y.subscribe(S(n,function(g){o[s]=g,p||(p=!0,u--),u||n.next(t(o.slice()))},function(){--c||n.complete()}))},n)},f=0;f<a;f++)i(f)},n)}}function l(r,e,t){r?j(t,r,e):e()}export{q as c};
@@ -1 +0,0 @@
1
- import{a as i}from"./async-D5WN8Wfc.js";import{t as m}from"./take-ByPtGQky.js";import{m as a}from"./map-DHslluWD.js";import{m as e}from"./mergeMap-g-JGW99j.js";import{i as f}from"./innerFrom-FMZwm2mb.js";import{t as p}from"./timer-C3uKg-qK.js";function u(r){return a(function(){return r})}function s(r,t){return e(function(n,o){return f(r(n,o)).pipe(m(1),u(n))})}function l(r,t){t===void 0&&(t=i);var n=p(r,t);return s(function(){return n})}export{l as d};
@@ -1 +0,0 @@
1
- import{O as r}from"./no-shadow-element-Dz9jgDtr.js";var t=new r(function(e){return e.complete()});export{t as E};
@@ -1 +0,0 @@
1
- import{i as d}from"./no-shadow-element-Dz9jgDtr.js";function o(i){return i&&d(i.schedule)}function h(i,e,n,s,u){s===void 0&&(s=0),u===void 0&&(u=!1);var c=e.schedule(function(){n(),u?i.add(this.schedule(null,s)):this.unsubscribe()},s);if(i.add(c),!u)return c}export{h as e,o as i};
@@ -1 +0,0 @@
1
- import{i as m,O as f}from"./no-shadow-element-Dz9jgDtr.js";import{i as S,e as a}from"./executeSchedule-C0acKsif.js";import{i,b as x,r as I,c as O,a as w,d as A,e as k,f as y,g as L,h as R}from"./innerFrom-FMZwm2mb.js";import{o as v,c as E}from"./OperatorSubscriber-DF1TYu__.js";function u(e){return e[e.length-1]}function z(e){return m(u(e))?e.pop():void 0}function B(e){return S(u(e))?e.pop():void 0}function C(e,n){return typeof u(e)=="number"?e.pop():n}function d(e,n){return n===void 0&&(n=0),v(function(r,t){r.subscribe(E(t,function(o){return a(t,e,function(){return t.next(o)},n)},function(){return a(t,e,function(){return t.complete()},n)},function(o){return a(t,e,function(){return t.error(o)},n)}))})}function p(e,n){return n===void 0&&(n=0),v(function(r,t){t.add(e.schedule(function(){return r.subscribe(t)},n))})}function F(e,n){return i(e).pipe(p(n),d(n))}function P(e,n){return i(e).pipe(p(n),d(n))}function T(e,n){return new f(function(r){var t=0;return n.schedule(function(){t===e.length?r.complete():(r.next(e[t++]),r.closed||this.schedule())})})}function G(e,n){return new f(function(r){var t;return a(r,n,function(){t=e[x](),a(r,n,function(){var o,c,l;try{o=t.next(),c=o.value,l=o.done}catch(h){r.error(h);return}l?r.complete():r.next(c)},0,!0)}),function(){return m(t==null?void 0:t.return)&&t.return()}})}function s(e,n){if(!e)throw new Error("Iterable cannot be null");return new f(function(r){a(r,n,function(){var t=e[Symbol.asyncIterator]();a(r,n,function(){t.next().then(function(o){o.done?r.complete():r.next(o.value)})},0,!0)})})}function N(e,n){return s(I(e),n)}function _(e,n){if(e!=null){if(O(e))return F(e,n);if(w(e))return T(e,n);if(A(e))return P(e,n);if(k(e))return s(e,n);if(y(e))return G(e,n);if(L(e))return N(e,n)}throw R(e)}function D(e,n){return n?_(e,n):i(e)}export{C as a,z as b,D as f,B as p};
@@ -1 +0,0 @@
1
- import{b as n,c as p}from"./no-shadow-element-Dz9jgDtr.js";import{m as o}from"./map-DHslluWD.js";var t=Array.isArray;function i(a,r){return t(r)?a.apply(void 0,n([],p(r))):a(r)}function y(a){return o(function(r){return i(a,r)})}export{y as m};
@@ -1 +0,0 @@
1
- import{m as n}from"./mergeAll-DTkL1sF8.js";import{i as t}from"./innerFrom-FMZwm2mb.js";import{E as s}from"./empty-Bs9kqCuA.js";import{p,a as f,f as u}from"./from-BTlWkhKh.js";function h(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var o=p(r),a=f(r,1/0),m=r;return m.length?m.length===1?t(m[0]):n(a)(u(m,o)):s}export{h as m};
@@ -1 +0,0 @@
1
- import{m}from"./mergeMap-g-JGW99j.js";import{t}from"./no-shadow-element-Dz9jgDtr.js";function o(i){return i===void 0&&(i=1/0),m(t,i)}export{o as m};
@@ -1 +0,0 @@
1
- import{p as o,f as s}from"./from-BTlWkhKh.js";function f(){for(var a=[],r=0;r<arguments.length;r++)a[r]=arguments[r];var e=o(a);return s(a,e)}export{f as o};
@@ -1 +0,0 @@
1
- import{f as n}from"./filter-DQ4vwAGj.js";function o(r){return n(function(f,t){return r<=t})}export{o as s};
@@ -1 +0,0 @@
1
- import{O as p}from"./no-shadow-element-Dz9jgDtr.js";import{b as m}from"./async-D5WN8Wfc.js";import{i as r}from"./executeSchedule-C0acKsif.js";function v(n){return n instanceof Date&&!isNaN(n)}function x(n,o,i){n===void 0&&(n=0),i===void 0&&(i=m);var t=-1;return o!=null&&(r(o)?i=o:t=o),new p(function(f){var a=v(n)?+n-i.now():n;a<0&&(a=0);var s=0;return i.schedule(function(){f.closed||(f.next(s++),0<=t?this.schedule(void 0,t):f.complete())},a)})}export{x as t};