mealz-components 2.2.0 → 2.3.0

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 (113) hide show
  1. package/dist/accordion/accordion.css +1 -1
  2. package/dist/assets/{OperatorSubscriber-B37s2U6v.js → OperatorSubscriber-DF1TYu__.js} +1 -1
  3. package/dist/assets/accordion-la5mVBfL.js +19 -0
  4. package/dist/assets/{async-guWcMFmJ.js → async-D5WN8Wfc.js} +1 -1
  5. package/dist/assets/{combineLatest-qLpwa5de.js → combineLatest-BN0_WcEG.js} +1 -1
  6. package/dist/assets/{debounceTime-cu8WlLF0.js → debounceTime-D7R6Z3Am.js} +1 -1
  7. package/dist/assets/delay-wUm-cx7a.js +1 -0
  8. package/dist/assets/{distinctUntilChanged-DmoT2we5.js → distinctUntilChanged-VvZTmHoN.js} +1 -1
  9. package/dist/assets/empty-Bs9kqCuA.js +1 -0
  10. package/dist/assets/{executeSchedule-Dqc6shOu.js → executeSchedule-C0acKsif.js} +1 -1
  11. package/dist/assets/{filter-BjN-BbQD.js → filter-DQ4vwAGj.js} +1 -1
  12. package/dist/assets/{from-CEPL7XsE.js → from-BTlWkhKh.js} +1 -1
  13. package/dist/assets/{innerFrom-D8hyVDmo.js → innerFrom-FMZwm2mb.js} +1 -1
  14. package/dist/assets/{map-D6X2syNu.js → map-DHslluWD.js} +1 -1
  15. package/dist/assets/mapOneOrManyArgs-Bdu6mo6S.js +1 -0
  16. package/dist/assets/merge-tdU3EgEI.js +1 -0
  17. package/dist/assets/mergeAll-DTkL1sF8.js +1 -0
  18. package/dist/assets/{mergeMap-CX64J-ac.js → mergeMap-g-JGW99j.js} +1 -1
  19. package/dist/assets/{no-shadow-element-D4NOg0uW.js → no-shadow-element-Dz9jgDtr.js} +7 -7
  20. package/dist/assets/{of-CzgrATec.js → of-hd4MpK5g.js} +1 -1
  21. package/dist/assets/{price-DdIbni0N.js → price-CHipCs2z.js} +1 -1
  22. package/dist/assets/{product-card-CcuyZyd6.js → product-card-c_0I2Lp_.js} +14 -14
  23. package/dist/assets/{promotion-badge-TYkTBrOQ.js → promotion-badge-CzwsPJJq.js} +3 -3
  24. package/dist/assets/{property-BXNy7Yd-.js → property-Bx8Yvr4_.js} +1 -1
  25. package/dist/assets/skip-BuAl4dWz.js +1 -0
  26. package/dist/assets/{skipWhile-B_4e7jSH.js → skipWhile-BzDgmir5.js} +1 -1
  27. package/dist/assets/{state-b8IyfZUU.js → state-C5zM4-Pq.js} +1 -1
  28. package/dist/assets/{switchMap-BYsewftM.js → switchMap-6Z80ObHE.js} +1 -1
  29. package/dist/assets/{take-ujVMxFwY.js → take-ByPtGQky.js} +1 -1
  30. package/dist/assets/{tap-DwBV-qFl.js → tap-K_D6lo97.js} +1 -1
  31. package/dist/assets/{timer-D3X0vtFO.js → timer-C3uKg-qK.js} +1 -1
  32. package/dist/assets/{unsafe-html-C8GMyVYZ.js → unsafe-html-Bv_ydUHb.js} +1 -1
  33. package/dist/assets/{viewport-listener-BRwa66-G.js → viewport-listener-DrFhSZNW.js} +1 -1
  34. package/dist/basket-transfer-modal/basket-transfer-modal.min.js +12 -13
  35. package/dist/catalog/basket-preview/basket-preview-product/basket-preview-product.css +1 -1
  36. package/dist/catalog/basket-preview/basket-preview.css +1 -1
  37. package/dist/catalog/basket-preview/basket-preview.min.js +48 -43
  38. package/dist/catalog/catalog-category/catalog-category.min.js +1 -1
  39. package/dist/catalog/catalog-favorites/catalog-favorites.min.js +1 -1
  40. package/dist/catalog/catalog-history/catalog-history.min.js +1 -1
  41. package/dist/catalog/catalog-home/catalog-home.min.js +1 -1
  42. package/dist/catalog/catalog-list/catalog-list.min.js +1 -1
  43. package/dist/catalog/catalog-load-more.min.js +1 -1
  44. package/dist/catalog/catalog-tabs/catalog-tabs.min.js +1 -1
  45. package/dist/catalog/catalog-toolbar/catalog-toolbar.min.js +1 -1
  46. package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
  47. package/dist/counter/counter.min.js +1 -1
  48. package/dist/drawer/drawer.min.js +1 -1
  49. package/dist/drawer-view-swapper/drawer-view-swapper.css +1 -1
  50. package/dist/drawer-view-swapper/drawer-view-swapper.min.js +24 -20
  51. package/dist/history-drawer/history-drawer.min.js +1 -1
  52. package/dist/history-order/history-order.min.js +1 -1
  53. package/dist/history-order-expanded/history-order-expanded.min.js +1 -1
  54. package/dist/last-order-badge/last-order-badge.min.js +2 -2
  55. package/dist/last-order-modal/last-order-modal.min.js +1 -1
  56. package/dist/like-button/like-button.min.js +1 -1
  57. package/dist/modal/modal.min.js +1 -1
  58. package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.css +1 -0
  59. package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.min.js +7 -0
  60. package/dist/onboarding/onboarding.min.js +2 -2
  61. package/dist/order-again/order-again.min.js +1 -1
  62. package/dist/planner/helpers/open-onboarding-modal.min.js +1 -1
  63. package/dist/planner/planner-abandon-modal/planner-abandon-modal.min.js +1 -1
  64. package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.css +1 -1
  65. package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.min.js +6 -6
  66. package/dist/planner/planner-budget-gauge/planner-budget-gauge.css +1 -1
  67. package/dist/planner/planner-budget-gauge/planner-budget-gauge.min.js +1 -1
  68. package/dist/planner/planner-catalog/planner-catalog.min.js +2 -2
  69. package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
  70. package/dist/planner/planner-current-menu-modal/planner-current-menu-modal.min.js +1 -1
  71. package/dist/planner/planner-dashboard/planner-dashboard.min.js +1 -1
  72. package/dist/planner/planner-form/planner-form.min.js +1 -1
  73. package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
  74. package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -1
  75. package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +6 -6
  76. package/dist/planner/planner-open-catalog-modal/planner-open-catalog-modal.min.js +1 -1
  77. package/dist/planner/planner-recipe-card/planner-recipe-card.min.js +1 -1
  78. package/dist/planner/planner-recipe-list/planner-recipe-list.min.js +1 -1
  79. package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.min.js +1 -1
  80. package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +2 -2
  81. package/dist/planner/to-basket-loader/to-basket-loader.min.js +2 -2
  82. package/dist/planner-entry/planner-entry.min.js +1 -1
  83. package/dist/preferences/preferences.min.js +21 -39
  84. package/dist/price/price.min.js +1 -1
  85. package/dist/product-addition/product-addition.css +1 -1
  86. package/dist/recipe-card/recipe-card.min.js +1 -1
  87. package/dist/recipe-card-cta/recipe-card-cta.min.js +1 -1
  88. package/dist/recipe-details/recipe-details.min.js +49 -41
  89. package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
  90. package/dist/replace-item/replace-item-card/replace-item-card.min.js +5 -5
  91. package/dist/replace-item/replace-item.min.js +2 -2
  92. package/dist/replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js +1 -1
  93. package/dist/replace-item-planner/replace-item-planner.min.js +1 -1
  94. package/dist/select/select.min.js +1 -1
  95. package/dist/slider-tabs/slider-tabs.min.js +2 -2
  96. package/dist/store-indicator/store-indicator.min.js +1 -1
  97. package/dist/store-locator/store-locator.css +1 -1
  98. package/dist/store-locator/store-locator.min.js +97 -0
  99. package/dist/store-locator-drawer/store-locator-drawer.min.js +4 -37
  100. package/dist/store-locator.css +290 -0
  101. package/dist/supplier-selector/supplier-selector.css +1 -0
  102. package/dist/supplier-selector/supplier-selector.min.js +53 -0
  103. package/dist/supplier-selector.css +99 -0
  104. package/package.json +1 -1
  105. package/dist/add-to-cart-cta/add-to-cart-cta.css +0 -1
  106. package/dist/add-to-cart-cta/add-to-cart-cta.min.js +0 -7
  107. package/dist/assets/delay-DX2Gy1PY.js +0 -1
  108. package/dist/assets/empty-DhPhHznc.js +0 -1
  109. package/dist/assets/mapOneOrManyArgs-UKKoFfIU.js +0 -1
  110. package/dist/assets/merge-Cw-bwf6Z.js +0 -1
  111. package/dist/assets/mergeAll-9jcORGP2.js +0 -1
  112. package/dist/assets/store-locator-CQ_XQBby.js +0 -95
  113. package/dist/no-supplier-onboarding/no-supplier-onboarding.css +0 -1
@@ -1 +1 @@
1
- .mealz-store-locator{display:block;height:100%}.mealz-store-locator .mealz-wrapper{height:100%;display:flex}.mealz-store-locator .mealz-pos-selection{display:flex;width:320px;padding:40px var(--spacing-padding-16-px, 16px);flex-direction:column;align-items:stretch;gap:var(--spacing-padding-16-px, 16px);flex-shrink:0;background:var(--mealz-ds-color-neutral-white, #FFFFFF);box-shadow:2px 0 16px #00000026;z-index:1}.mealz-store-locator .mealz-pos-selection #mealz-store-locator-form{display:flex;flex-direction:column;gap:8px}.mealz-store-locator .mealz-pos-selection .mealz-title{color:var(--mealz-ds-color-neutral-black, #0F191F);font-size:28px;font-weight:700;line-height:120%}.mealz-store-locator .mealz-pos-selection .mealz-title .mealz-back-button{display:none}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container{display:flex;gap:8px;height:40px;position:relative}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container .mealz-address-input{padding-left:8px}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container .mealz-locate-button+.mealz-address-input{padding-left:40px}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container .mealz-address-input{flex:1;border:1px solid var(--mealz-ds-color-neutral-200, #D9DDE1);border-radius:4px;font-size:14px}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container .mealz-locate-button{position:absolute;background:unset;border:unset;padding:0;top:8px;left:8px;width:24px;height:24px}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container .mealz-locate-button img{cursor:pointer;width:24px;height:24px}.mealz-store-locator .mealz-pos-selection #mealz-pos-list{flex-direction:column;align-items:flex-start;gap:var(--spacing-padding-12-px, 12px);align-self:stretch;overflow:auto}.mealz-store-locator .mealz-pos-list__visible,.mealz-store-locator .mealz-pos-list__hidden{display:flex}.mealz-store-locator .mealz-pos-selection .mealz-pos-loader{flex:1;width:100%;display:flex;justify-content:center;align-items:center}.mealz-store-locator .mealz-pos-selection .mealz-pos-loader .mealz-ds-loader{margin:16px;display:flex;width:72px;height:72px;background-position-x:36px;background-size:36px 36px}.mealz-store-locator .mealz-pos-selection .mealz-no-pos-found{margin-bottom:16px;width:100%;flex:1;display:flex;justify-content:center;align-items:center;flex-direction:column}.mealz-store-locator .mealz-ds-dropdown:after{right:12px;top:17px}.mealz-store-locator .mealz-pos-item{display:flex;flex-direction:column;padding:8px;align-items:flex-start;gap:16px;align-self:stretch;border-radius:8px;border:1px solid var(--mealz-ds-color-neutral-200, #D9DDE1)}.mealz-store-locator .mealz-pos-item .mealz-top{display:flex;align-items:flex-start;gap:8px;align-self:stretch}.mealz-store-locator .mealz-pos-item .mealz-top img{width:40px;height:40px;flex-shrink:0}.mealz-store-locator .mealz-pos-item .mealz-top .mealz-name{color:var(--mealz-ds-color-neutral-black, #0F191F);font-size:14px;font-weight:700;line-height:150%}.mealz-store-locator .mealz-pos-item .mealz-top .mealz-address{color:var(--mealz-ds-color-neutral-500, #8C96A2);font-size:12px;font-weight:600;line-height:150%}.mealz-store-locator .mealz-pos-item .mealz-bottom{display:flex;justify-content:flex-end;width:100%}.mealz-store-locator .mealz-pos-item .mealz-bottom .mealz-select-pos-button{border-radius:1000px}.mealz-store-locator #mealz-mobile-buttons-wrapper{display:none}.mealz-store-locator #mealz-map{width:100%;min-height:100%;z-index:0;position:absolute;top:0}.mealz-store-locator #mealz-map .mealz-pos-item{border:none;padding:0}.mealz-store-locator #mealz-map .leaflet-marker-pane .mealz-marker-icon{border-radius:50%;overflow:hidden;object-fit:cover;border:4px solid var(--mealz-ds-color-neutral-white, #FFFFFF);box-sizing:content-box}@media (max-width: 768px){.mealz-store-locator .mealz-wrapper{position:absolute;flex-direction:column;top:0;left:0;right:0;bottom:0}.mealz-store-locator .mealz-pos-selection{width:100%;padding:0;gap:0}.mealz-store-locator .mealz-pos-selection #mealz-store-locator-form{padding:24px 16px}.mealz-store-locator .mealz-pos-selection .mealz-title{position:relative;min-height:56px;font-size:16px;display:flex;align-items:center;justify-content:center;border-bottom:solid 1px var(--mealz-ds-color-neutral-200, #D9DDE1)}.mealz-store-locator .mealz-pos-selection .mealz-title .mealz-back-button{position:absolute;display:flex;transform:rotate(180deg);top:12px;left:8px;width:32px;height:32px}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container input{width:calc(100% - 44px)}.mealz-store-locator .mealz-pos-selection .mealz-address-input-container button{width:36px}.mealz-store-locator .mealz-pos-selection .mealz-suppliers-selection-container{width:calc(100% - 32px);margin:8px 16px 24px}.mealz-store-locator .mealz-pos-selection #mealz-pos-list{padding:0 16px 12px;align-items:center}.mealz-store-locator .mealz-pos-list__visible{display:flex}.mealz-store-locator .mealz-pos-list__hidden{display:none}.mealz-store-locator .mealz-pos-selection__height{height:100%}.mealz-store-locator .mealz-pos-selection .mealz-pos-loader{position:absolute;height:100%}.mealz-store-locator .mealz-suppliers-list-wrapper__not-mobile{display:none}.mealz-store-locator .mealz-suppliers-list-wrapper__mobile{display:block}.mealz-store-locator .mealz-suppliers-list-wrapper__mobile .mealz-suppliers-list{position:relative;z-index:1;width:calc(100% - 32px);margin:-16px 16px 8px}.mealz-store-locator .mealz-suppliers-list-wrapper__mobile .mealz-suppliers-list .mealz-suppliers-list__supplier{padding:8px 16px}.mealz-store-locator #mealz-mobile-buttons-wrapper{width:100%;display:flex;justify-content:center;padding:12px 0}.mealz-store-locator #mealz-mobile-buttons-wrapper button{border-radius:1000px}.mealz-store-locator .mealz-mobile-buttons-wrapper__see-list{z-index:1;bottom:40px;position:absolute}.mealz-store-locator .mealz-mobile-buttons-wrapper__see-map{margin-top:auto}.mealz-store-locator #mealz-map{min-height:unset;position:absolute;bottom:0;top:0}}
1
+ .mealz-store-locator{height:100%;display:flex}.mealz-store-locator .mealz-store-locator__pos-selection{display:flex;width:320px;padding:40px var(--spacing-padding-16-px, 16px);flex-direction:column;align-items:stretch;gap:var(--spacing-padding-16-px, 16px);flex-shrink:0;background:var(--mealz-ds-color-neutral-white, #ffffff);box-shadow:2px 0 16px #00000026;z-index:1}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__title{color:var(--mealz-ds-color-neutral-black, #0f191f);font-size:28px;font-weight:700;line-height:120%}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__go-back-button{border-radius:100%;height:40px;width:40px;display:flex;justify-content:center;align-items:center}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__go-back-button img{width:15px;height:15px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form{display:flex;flex-direction:column;gap:8px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container{display:flex;gap:8px;height:40px;position:relative}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__locate-button{position:absolute;background:unset;border:unset;padding:0;top:8px;left:8px;width:24px;height:24px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__locate-button .mealz-store-locator__geolocation-icon{cursor:pointer;width:24px;height:24px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__locate-button+.mealz-store-locator__address-input{padding-left:40px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__address-input{padding-left:8px;flex:1;border:1px solid var(--mealz-ds-color-neutral-200, #D9DDE1);border-radius:4px;font-size:14px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__select-supplier{display:flex}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__select-supplier .mealz-store-locator__select-supplier-select{flex:1;padding:10px;max-width:initial}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__pos-loader{flex:1;width:100%;display:flex;justify-content:center;align-items:center}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__pos-loader .mealz-ds-loader{margin:16px;display:flex;width:72px;height:72px;background-position-x:36px;background-size:36px 36px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__pos-list{flex-direction:column;align-items:flex-start;gap:var(--spacing-padding-12-px, 12px);align-self:stretch;overflow:auto}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__pos-list__visible,.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__pos-list__hidden{display:flex}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__no-pos-found{margin-bottom:16px;width:100%;flex:1;display:flex;justify-content:center;align-items:center;flex-direction:column}.mealz-store-locator #mealz-store-locator__view-swapper-button{display:none}.mealz-store-locator .mealz-store-locator__pos-item{display:flex;flex-direction:column;padding:8px;align-items:flex-start;gap:16px;align-self:stretch;border-radius:8px;border:1px solid var(--mealz-ds-color-neutral-200, #eff1f3)}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-data{display:flex;align-items:flex-start;gap:8px;align-self:stretch}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-data .mealz-store-locator__pos-picture{width:40px;height:40px;flex-shrink:0}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-data .mealz-store-locator__pos-name{color:var(--mealz-ds-color-neutral-black, #0f191f);font-size:14px;font-weight:700;line-height:150%}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-data .mealz-store-locator__pos-address{color:var(--mealz-ds-color-neutral-500, #8c96a2);font-size:12px;font-weight:600;line-height:150%}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-cta{display:flex;justify-content:flex-end;width:100%}.mealz-store-locator .mealz-store-locator__pos-item .mealz-store-locator__pos-cta .mealz-select-pos-button{border-radius:1000px}.mealz-store-locator #mealz-store-locator__map{z-index:0;flex:1 1 0;min-height:400px;width:100%}.mealz-store-locator #mealz-store-locator__map .mealz-store-locator__pos-item{border:none;padding:0}.mealz-store-locator #mealz-store-locator__map .leaflet-marker-pane .mealz-marker-icon{border-radius:50%;overflow:hidden;object-fit:cover;border:4px solid var(--mealz-ds-color-neutral-white, #FFFFFF);box-sizing:content-box}@media (max-width: 768px){.mealz-store-locator{position:absolute;flex-direction:column;top:0;right:0;bottom:0;left:0}.mealz-store-locator .mealz-store-locator__pos-selection{width:100%;padding:0;gap:0}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__go-back-button{position:absolute;z-index:1;top:12px;left:8px;width:32px;height:32px}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__title{position:relative;min-height:56px;font-size:16px;display:flex;align-items:center;justify-content:center;border-bottom:solid 1px var(--mealz-ds-color-neutral-200, #eff1f3)}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form{padding:24px 16px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__address-input{width:calc(100% - 44px)}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__store-locator-form .mealz-store-locator__address-input-container .mealz-store-locator__search-address-button{width:36px}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__pos-list{padding:0 16px 12px;align-items:center}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__pos-list.mealz-store-locator__pos-list__visible{display:flex}.mealz-store-locator .mealz-store-locator__pos-selection #mealz-store-locator__pos-list.mealz-store-locator__pos-list__hidden{display:none}.mealz-store-locator .mealz-store-locator__pos-selection .mealz-store-locator__pos-loader{position:absolute;height:100%}.mealz-store-locator .mealz-store-locator__pos-selection.mealz-store-locator__pos-selection__height{height:100%}.mealz-store-locator #mealz-store-locator__view-swapper-button{width:100%;display:flex;justify-content:center;padding:12px 0}.mealz-store-locator #mealz-store-locator__view-swapper-button.mealz-store-locator__see-list-button{z-index:1;bottom:40px;position:absolute}.mealz-store-locator #mealz-store-locator__view-swapper-button.mealz-store-locator__see-map-button{box-shadow:-2px 0 18px #00000026;margin-top:auto}}
@@ -0,0 +1,97 @@
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 g{get extId(){return this.attributes["ext-id"]}}var b=Object.defineProperty,f=Object.getOwnPropertyDescriptor,l=(t,e,s,i)=>{for(var o=i>1?void 0:i?f(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&&b(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._posList=[],this._suppliers=[],this._markers=[],this._searchingPos=!1,this._searchSubmitted=!1,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,(e=t==null?void 0:t.coords)!=null&&e.latitude&&((s=t==null?void 0:t.coords)!=null&&s.longitude)&&this.setGeolocation()}get geolocationCoordinates(){return this._geolocationCoordinates}_nameOfStore(t){return`${t.supplier.attributes.name} - ${t.attributes.name}`}connectedCallback(){super.connectedCallback(),this.initLeaflet(),this.initEvents(),this.initResizeObserver()}disconnectedCallback(){this.subscriptions.forEach(t=>t.unsubscribe()),this._resizeObserver&&this._resizeObserver.disconnect(),super.disconnectedCallback(),this._leafletCss.remove(),this._miamDs.remove(),this._leafletJs.remove()}firstUpdated(){this._posSelected=!1,this.loadMap(),this.geolocationTimeout(),this.listenFormSubmit(),this._map&&this.ensureMapSize()}render(){if(this.show)return this.posSelectionTemplate()}posSelectionTemplate(){return a`
2
+ <div class="mealz-store-locator mealz-ds-body">
3
+ <div class="mealz-store-locator__pos-selection">
4
+ <button
5
+ class="mealz-store-locator__go-back-button mealz-ds-button square"
6
+ @click=${()=>this.dispatchShow(!1)}>
7
+ <img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/ArrowLeft_dark.svg" alt="Retour"
8
+ aria-hidden="true">
9
+ </button>
10
+ <div class="mealz-store-locator__title">
11
+ <span>Sélectionner un magasin</span>
12
+ </div>
13
+ <form id="mealz-store-locator__store-locator-form">
14
+ <div class="mealz-store-locator__address-input-container">
15
+ ${this.geolocationButtonTemplate()}
16
+ <input required class="mealz-store-locator__address-input" type="text" name="address"
17
+ placeholder="Votre code postal ou ville">
18
+ <button type="submit"
19
+ class="mealz-ds-button primary mealz-store-locator__search-address-button">
20
+ OK
21
+ </button>
22
+ </div>
23
+ </form>
24
+ ${this.posListTemplate()}
25
+ ${this._posList.length>0?a`
26
+ <div id="mealz-store-locator__view-swapper-button"
27
+ class="${this._showPosList?"mealz-store-locator__see-map-button":"mealz-store-locator__see-list-button"}">
28
+ <button @click=${()=>this.togglePosList(this._showPosList)}
29
+ class="mealz-ds-button primary hide-pos-button">
30
+ ${this.getButtonLabel()}
31
+ </button>
32
+ </div>`:""}
33
+ </div>
34
+ ${this.posMapTemplate()}
35
+ </div>
36
+ `}geolocationButtonTemplate(){var e,s,i,o;let t;if(this.geolocationCoordinates===void 0)t=a`
37
+ <div class="mealz-ds-loader"></div>`;else if((s=(e=this.geolocationCoordinates)==null?void 0:e.coords)!=null&&s.longitude&&((o=(i=this.geolocationCoordinates)==null?void 0:i.coords)!=null&&o.latitude))t=a`<img title="Votre position" class="mealz-store-locator__geolocation-icon"
38
+ src="https://storage.googleapis.com/assets.miam.tech/generic/icons/locate-primary.svg"
39
+ alt="Geolocaliser"/>`;else return a``;return a`
40
+ <button type="button" ?disabled=${this.geolocationCoordinates===void 0}
41
+ class="mealz-store-locator__locate-button mealz-ds-button square ghost locate-button"
42
+ @click=${this.setGeolocation}>
43
+ ${t}
44
+ </button>
45
+ `}posMapTemplate(){return a`
46
+ <div id="mealz-store-locator__map"></div>
47
+ `}posListTemplate(){if(this._searchingPos)return a`
48
+ <div class="mealz-store-locator__pos-loader">
49
+ <div class="mealz-ds-loader"></div>
50
+ </div>
51
+ `;if(this._posList.length<1&&this._searchSubmitted)return a`
52
+ <div class="mealz-store-locator__no-pos-found">
53
+ <b>Aucun magasin trouvé à proximité.</b>
54
+ <span>Essayez une autre adresse.</span>
55
+ </div>
56
+ `;if(this._posList.length<1)return;const t=document.querySelector(".mealz-store-locator__pos-selection");return t&&t.classList.toggle("mealz-store-locator__pos-selection__height",this._showPosList),a`
57
+ <div id="mealz-store-locator__pos-list"
58
+ class="${this._showPosList?"mealz-store-locator__pos-list__visible":"mealz-store-locator__pos-list__hidden"}">
59
+ ${this._posList.map(e=>a`
60
+ <div class="mealz-store-locator__pos-item">
61
+ <div class="mealz-store-locator__pos-data">
62
+ <img class="mealz-store-locator__pos-picture" src="${e.supplier.attributes.logo}"
63
+ alt="${e.supplier.attributes.name}"/>
64
+ <div>
65
+ <div class="mealz-store-locator__pos-name">${this._nameOfStore(e)}</div>
66
+ <div class="mealz-store-locator__pos-address">${e.attributes.address}</div>
67
+ </div>
68
+ </div>
69
+ <div class="mealz-store-locator__pos-cta">
70
+ <button @click=${()=>this.dispatchPos(e)}
71
+ class="mealz-ds-button primary small mealz-select-pos-button"
72
+ ?disabled=${this._posSelected}>
73
+ ${this._posSelected?a`
74
+ <div class="mealz-ds-loader"></div>`:"Sélectionner"}
75
+ </button>
76
+ </div>
77
+ </div>
78
+ `)}
79
+ </div>
80
+ `}addAddressMarker(){if(!this._map||!this._userLocation)return;this._userLocationMarker&&(this._map.removeLayer(this._userLocationMarker),this._userLocationMarker=void 0);const t=getComputedStyle(document.documentElement).getPropertyValue("--mealz-ds-color-primary").trim()||"#24748F";this._userLocationMarker=window.L.circleMarker([this._userLocation.latitude,this._userLocation.longitude],{stroke:!1,fillOpacity:1,fill:!0,color:t,className:"mealz-store-locator__address-marker"}).addTo(this._map)}getButtonLabel(){if(this._showPosList)return"Voir la carte";const t=this._posList.length;return t===1?"Voir le magasin":`Voir les ${t} magasins`}dispatchShow(t){const e={detail:{show:t},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("showChange",e))}initLeaflet(){this._leafletCss=document.createElement("link"),this._leafletCss.setAttribute("rel","stylesheet"),this._leafletCss.setAttribute("href","https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"),this._leafletCss.setAttribute("integrity","sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="),this._leafletCss.setAttribute("crossorigin",""),this._leafletJs=document.createElement("script"),this._leafletJs.setAttribute("src","https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"),this._leafletJs.setAttribute("integrity","sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo="),this._leafletJs.setAttribute("crossorigin",""),this._miamDs=document.createElement("link"),this._miamDs.setAttribute("rel","stylesheet"),this._miamDs.setAttribute("href","https://unpkg.com/mealz-ds@2.0.0/mealz-ds.min.css"),document.head.appendChild(this._miamDs),document.head.appendChild(this._leafletCss),document.head.appendChild(this._leafletJs)}waitForLeaflet(t){let i=50;console.debug("[Map] Checking for window.L");const o=setInterval(()=>{window.L!==void 0||i===0?(clearInterval(o),window.L!==void 0?(console.debug("[Map] window.L is defined"),t(!0)):(console.error("[Map] Failed to load Leaflet after",5e3,"ms"),t(!1))):i--},100)}loadMap(){this.waitForLeaflet(t=>{t&&(this._map&&(this._map.off(),this._map.remove()),this.setNewLocation(),window.L.tileLayer("https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png",{maxZoom:19,attribution:"Map tiles by Carto, under CC BY 3.0. Data by OpenStreetMap, under ODbL."}).addTo(this._map))})}initEvents(){this._filterEvent=new CustomEvent("filterChange",{detail:{supplierName:""},bubbles:!0,composed:!0})}initResizeObserver(){this._resizeObserver=new ResizeObserver(()=>{this._map&&this._map.invalidateSize()})}ensureMapSize(){!this._map||!this._mapElement||requestAnimationFrame(()=>{this._map&&this._mapElement.offsetWidth>0&&this._mapElement.offsetHeight>0?this._map.invalidateSize():requestAnimationFrame(()=>{this._map&&this._map.invalidateSize()})})}initialSearch(){var t,e,s,i;this.setSupplier(),!this._prevAddress&&((e=(t=this.geolocationCoordinates)==null?void 0:t.coords)!=null&&e.latitude)&&((i=(s=this.geolocationCoordinates)==null?void 0:s.coords)!=null&&i.longitude)?this.getPosByCoordinates():this.setAddress(!0)}setAddress(t=!1){var e;!t&&(!this._addressInput.value||this._addressInput.value.length<3||this._searchingPos)||!t&&this._prevAddress===this._addressInput.value+", France"||(this._prevAddress=(e=this._addressInput)!=null&&e.value?this._addressInput.value+", France":"Paris, France",this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByAddress(this._prevAddress,this.selectedRadius,this._selectedSuppliers).subscribe(s=>{this._userLocation=s["current-coordinates"],this.addAddressMarker(),this.setPosList(s),this.setNewLocation(),this.dispatchSearch(this._prevAddress,s.data.length),this._searchingPos=!1,this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()})))}setGeolocation(){this._prevAddress="",this.getPosByCoordinates()}getPosByCoordinates(){this._searchingPos=!0,this.requestUpdate(),this.subscriptions.push(this.getByCoordinates(this.geolocationCoordinates.coords.latitude,this.geolocationCoordinates.coords.longitude,this.selectedRadius,this._selectedSuppliers).subscribe(t=>{this._addressInput.value="",this._userLocation=t["current-coordinates"],this.addAddressMarker(),this.setPosList(t),this._searchingPos=!1,this.setNewLocation(),this._searchSubmitted=!0,this.togglePosList(!1),this.requestUpdate()}))}setPosList(t){this._posList=t.data.map(e=>{const s=Object.assign(new g,e);return s.supplier=t.included.find(i=>i.id===s.relationships.supplier.data.id),s}).sort((e,s)=>e.attributes.name.includes("onoprix")?-1:s.attributes.name.includes("onoprix")?1:0)}setNewLocation(){var e;const t=document.getElementById("mealz-store-locator__map");t&&(this._map?(this._markers.forEach(s=>{this._map.removeLayer(s)}),this._markers=[],this._map.panTo(this.getCoordinates())):(this._map=(e=window.L)==null?void 0:e.map(t).setView(this.getCoordinates(),13),this._resizeObserver&&this._resizeObserver.observe(t),this.ensureMapSize()),this.addMarkers())}getCoordinates(){var t,e;return(t=this._userLocation)!=null&&t.latitude&&((e=this._userLocation)!=null&&e.longitude)?[Number(this._userLocation.latitude),Number(this._userLocation.longitude)]:this._posList.length>0?[Number(this._posList[0].attributes.latitude),Number(this._posList[0].attributes.longitude)]:[48.866667,2.333333]}addMarkers(){this._posList.length>0&&this._posList.forEach((t,e)=>{this._markers.push(window.L.marker([t.attributes.latitude,t.attributes.longitude],{icon:this.buildIcon(t.supplier)}).addTo(this._map));const s=window.L.popup({content:`
81
+ <div class="mealz-store-locator__pos-item">
82
+ <div class="mealz-store-locator__pos-data">
83
+ <img class="mealz-store-locator__pos-picture" src="${t.supplier.attributes.logo}"
84
+ alt="${t.supplier.attributes.name}"/>
85
+ <div>
86
+ <div class="mealz-store-locator__pos-name">${this._nameOfStore(t)}</div>
87
+ <div class="mealz-store-locator__pos-address">${t.attributes.address}</div>
88
+ </div>
89
+ </div>
90
+ <div class="mealz-store-locator__pos-cta">
91
+ <button id="mealz-select"
92
+ class="mealz-ds-button primary small mealz-select-pos-button">
93
+ Sélectionner
94
+ </button>
95
+ </div>
96
+ </div>
97
+ `});this._markers[e].bindPopup(s).on("popupopen",i=>{var n,d;const o=(n=i.target.getPopup())==null?void 0:n.getElement();(d=o==null?void 0:o.querySelector("#mealz-select"))==null||d.addEventListener("click",()=>{this.dispatchPos(t)})})})}buildIcon(t){return window.L.icon({iconUrl:t.attributes.logo||"https://cdn-icons-png.flaticon.com/512/3515/3515146.png",shadowUrl:"https://storage.googleapis.com/assets.miam.tech/mealz-components/store-locator/marker.svg",iconSize:[24,24],shadowSize:[44,53],iconAnchor:[16,43],shadowAnchor:[22,45],popupAnchor:[0,-55],className:"mealz-marker-icon"})}togglePosList(t){this._showPosList=!t;const e=document.getElementById("mealz-store-locator__pos-list"),s={bubbles:!0,composed:!0};e&&(t?(e.style.display="none",this.dispatchEvent(new CustomEvent("mapSelected",s))):(e.style.display="flex",this.dispatchEvent(new CustomEvent("listSelected",s))),this.requestUpdate())}geolocationTimeout(){setTimeout(()=>{this.geolocationCoordinates===void 0&&(this.geolocationCoordinates={})},2e4)}listenFormSubmit(){document.getElementById("mealz-store-locator__store-locator-form").addEventListener("submit",e=>{e.preventDefault(),this.setAddress()})}setSupplier(){const t=localStorage.getItem("_miam/selectedSupplierId");t&&(this._selectedSuppliers=[t])}dispatchPos(t){this._posSelected=!0,this.requestUpdate();const e={detail:{posId:t.id,posExtId:t.extId,supplierId:t.supplier.id,supplierName:t.supplier.attributes.name,posName:this._nameOfStore(t)},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("posIdChange",e))}resetPosSelection(){this._posSelected&&(this._posSelected=!1,this.requestUpdate())}dispatchSearch(t,e){const s={detail:{searchTerm:t,storesFoundCount:e},bubbles:!0,composed:!0};this.dispatchEvent(new CustomEvent("searchChange",s))}};l([c({type:Number})],r.prototype,"selectedRadius",2);l([c()],r.prototype,"getByAddress",2);l([c()],r.prototype,"getByCoordinates",2);l([c()],r.prototype,"getAffiliateSuppliers",2);l([c({type:Boolean})],r.prototype,"show",1);l([c({attribute:!1})],r.prototype,"geolocationCoordinates",1);l([_()],r.prototype,"_geolocationCoordinates",2);l([p("input")],r.prototype,"_addressInput",2);l([p("#mealz-store-locator__map")],r.prototype,"_mapElement",2);r=l([m("mealz-store-locator")],r);customElements.get("mealz-store-locator")||customElements.define("mealz-store-locator",r);
@@ -1,43 +1,10 @@
1
- import{N as c,k as r}from"../assets/no-shadow-element-D4NOg0uW.js";import{t as m}from"../assets/custom-element-BhZVzxrc.js";import{r as u}from"../assets/state-b8IyfZUU.js";import{m as o}from"../assets/mealz-sdk-E_fNZM-c.js";import{s as g}from"../assets/skipWhile-B_4e7jSH.js";import{s as b}from"../assets/switchMap-BYsewftM.js";import{m as v}from"../assets/map-D6X2syNu.js";import"../assets/property-BXNy7Yd-.js";import"../assets/OperatorSubscriber-B37s2U6v.js";import"../assets/innerFrom-D8hyVDmo.js";var z=Object.defineProperty,S=Object.getOwnPropertyDescriptor,h=(e,s,n,i)=>{for(var t=i>1?void 0:i?S(s,n):s,a=e.length-1,l;a>=0;a--)(l=e[a])&&(t=(i?l(s,n,t):l(t))||t);return i&&t&&z(s,n,t),t};let d=class extends c{constructor(){super(),this.step=1,this.modalConfirmed=!1,this.steps=[{img:"https://storage.googleapis.com/assets.miam.tech/generic/images/8.7/noSupplierOnboardingStep1.png",title:"Les recettes sont commandables en ligne !",content:r`<span class="mealz-no-supplier-onboarding__bold">Commandez</span>
2
- dès à présent les ingrédients de vos recettes en cliquant sur le bouton
3
- <span class="mealz-no-supplier-onboarding__bold">“Mes courses”</span>`},{img:"https://storage.googleapis.com/assets.miam.tech/generic/images/8.7/noSupplierOnboardingStep2.png",title:"Choisissez votre drive",content:"Sélectionnez un magasin parmi les enseignes participantes et disponibles proches de vous"},{img:"https://storage.googleapis.com/assets.miam.tech/generic/images/8.7/noSupplierOnboardingStep3.png",title:"Une recette, des produits",content:"Ajoutez les produits de votre choix dans votre panier et ajustez les quantités."},{img:"https://storage.googleapis.com/assets.miam.tech/generic/images/8.7/noSupplierOnboardingStep4.png",title:"Commande en 1 clic",content:"Accédez à votre panier et passez votre commande dans le magasin sélectionné."}],this.analyticsPath="/onboarding",this.styleURL=new URL("./no-supplier-onboarding/no-supplier-onboarding.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.pageview(),this.listenToModalCloseEvent()}render(){const{img:e,title:s,content:n}=this.steps[this.step-1];return r`
4
- <div class="mealz-no-supplier-onboarding">
5
- <div class="mealz-no-supplier-onboarding__body">
6
- <div class="mealz-no-supplier-onboarding__content step${this.step}">
7
- <span class="mealz-no-supplier-onboarding__title mealz-ds-text size-xl weight-xl">
8
- ${s}
9
- </span>
10
- <span class="mealz-no-supplier-onboarding__text mealz-ds-text size-s weight-m">
11
- ${n}
12
- </span>
13
- <img class="mealz-no-supplier-onboarding__img" src="${e}">
14
- </div>
15
- <div class="mealz-no-supplier-onboarding__track">
16
- ${this.renderStepIndicators()}
17
- </div>
18
- <button class="mealz-ds-button primary mealz-no-supplier-onboarding__confirm" @click="${this.onConfirm}">
19
- <span class="mealz-ds-text">Je choisis mon magasin ou mon drive</span>
20
- </button>
21
- </div>
22
- ${this.renderNavigationButtons()}
23
- </div>
24
- `}renderStepIndicators(){return this.steps.map((e,s)=>r`
25
- <img class="${this.step===s+1?"active":""}"
26
- src="https://storage.googleapis.com/assets.miam.tech/generic/icons/8.7/BulletPoint.svg" alt="step ${s+1}">
27
- `)}renderNavigationButtons(){return r`
28
- <button @click="${this.previousStep}"
29
- class="mealz-no-supplier-onboarding__previous mealz-ds-button primary ghost square ${this.step===1?"hidden":""}">
30
- <img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/ArrowLeft_dark.svg" alt="previous step">
31
- </button>
32
- <button @click="${this.nextStep}"
33
- class="mealz-no-supplier-onboarding__next mealz-ds-button primary ghost square${this.step===this.steps.length?"hidden":""}">
34
- <img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/ArrowLeft_dark.svg" alt="next step">
35
- </button>
36
- `}previousStep(){this.step=Math.max(this.step-1,1)}nextStep(){this.step=Math.min(this.step+1,this.steps.length)}onConfirm(){this.modalConfirmed=!0,this.sendConfirmEvent(),this.dispatchEvent(new CustomEvent("onboardingConfirmed",{bubbles:!0,composed:!0}))}listenToModalCloseEvent(){document.querySelector("mealz-modal").addEventListener("modalClosed",()=>{this.modalConfirmed||this.sendCloseEvent(),sessionStorage.setItem("_miam/noSupplier/onboarding","was-closed")})}pageview(){o.analytics.sendEvent("pageview",this.analyticsPath,{})}sendConfirmEvent(){o.analytics.sendEvent("onboarding.action",this.analyticsPath,{steps_completed:this.step.toString()})}sendCloseEvent(){o.analytics.sendEvent("onboarding.close",this.analyticsPath,{steps_completed:this.step.toString()})}};h([u()],d.prototype,"step",2);d=h([m("mealz-no-supplier-onboarding")],d);customElements.get("mealz-no-supplier-onboarding")||customElements.define("mealz-no-supplier-onboarding",d);var _=Object.getOwnPropertyDescriptor,f=(e,s,n,i)=>{for(var t=i>1?void 0:i?_(s,n):s,a=e.length-1,l;a>=0;a--)(l=e[a])&&(t=l(t)||t);return t};let p=class extends c{constructor(){super(...arguments),this.analyticsPath="/locator",this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.pageview(),this.listenToCloseEvent(),this.listenToUserCoordinates()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return this.shouldDisplayOnboarding()&&this.displayOnboardingModal(),r`
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`
2
+ <!-- NEED TO SET REAL VALUE TO .SHOW CONTINUE HERE -->
37
3
  <mealz-store-locator
38
4
  .show="${!0}"
39
5
  .geolocationCoordinates="${this.hostCoordinates}"
40
6
  @posIdChange=${e=>this.changePosAndSupplier(e)}
41
7
  @searchChange=${e=>this.sendSearchEvent(e)}
8
+ @showChange=${()=>this.navigateBack()}
42
9
  ></mealz-store-locator>
43
- `}listenToUserCoordinates(){var e,s;(s=(e=window.mealzInternal)==null?void 0:e.user)!=null&&s.userCoordinates$&&this.subscriptions.push(window.mealzInternal.user.userCoordinates$.subscribe(n=>{this.hostCoordinates=n,this.requestUpdate()}))}shouldDisplayOnboarding(){const e=sessionStorage.getItem("_miam/noSupplier/onboarding")==="was-closed",s=document.querySelector("mealz-drawer-view-swapper");return!e&&!!(s!=null&&s.displayStoreLocator$.value)}displayOnboardingModal(){const e=document.createElement("mealz-modal");e.titleSlot=r`<span class="mealz-no-supplier-onboarding__badge mealz-ds-badge size-l">NOUVEAU !</span>`,e.contentSlot=r`<mealz-no-supplier-onboarding></mealz-no-supplier-onboarding>`,document.body.appendChild(e)}changePosAndSupplier(e){const s=o.pos.currentPos().value;if((s==null?void 0:s.id)===e.detail.posId){this.closeStoreLocator();return}this.selectedPosId=e.detail.posId,this.selectedSupplierName=e.detail.supplierName,this.changePos()}changePos(){this.selectedPosId&&this.subscriptions.push(o.pos.loadPos(this.selectedPosId).pipe(g(e=>!e||e.id!==this.selectedPosId),b(e=>(this.sendSelectedEvent(e),o.pos.basketLoadedForNewPos())),v(()=>(o.storeLocator.newStoreSelected(),this.closeStoreLocator()))).subscribe())}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",()=>{this.closeStoreLocator(),this.sendCloseEvent()})}closeStoreLocator(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayStoreLocator$.next(!1)}isHidden(){return this.classList.contains("hidden")}pageview(){this.isHidden()||o.analytics.sendEvent("pageview",this.analyticsPath,{})}sendSelectedEvent(e){this.isHidden()||o.analytics.sendEvent("locator.select",this.analyticsPath,{pos_name:e.attributes.name,pos_id:e.id,supplier_name:this.selectedSupplierName})}sendSearchEvent(e){this.isHidden()||o.analytics.sendEvent("locator.search",this.analyticsPath,{search_term:e.detail.searchTerm,stores_found_count:e.detail.storesFoundCount.toString()})}sendCloseEvent(){this.isHidden()||o.analytics.sendEvent("locator.close",this.analyticsPath,{})}};p=f([m("mealz-store-locator-drawer")],p);customElements.get("mealz-store-locator-drawer")||customElements.define("mealz-store-locator-drawer",p);
10
+ `}listenToUserCoordinates(){var e,t;(t=(e=window.mealzInternal)==null?void 0:e.user)!=null&&t.userCoordinates$&&this.subscriptions.push(window.mealzInternal.user.userCoordinates$.subscribe(o=>{this.hostCoordinates=o,this.requestUpdate()}))}shouldDisplayOnboarding(){const e=sessionStorage.getItem("_miam/noSupplier/onboarding")==="was-closed",t=document.querySelector("mealz-drawer-view-swapper");return!e&&!!(t!=null&&t.displayStoreLocator$.value)}displayOnboardingModal(){const e=document.createElement("mealz-modal");e.titleSlot=i`<span class="mealz-no-supplier-onboarding__badge mealz-ds-badge size-l">NOUVEAU !</span>`,e.contentSlot=i`<mealz-no-supplier-onboarding></mealz-no-supplier-onboarding>`,document.body.appendChild(e)}changePosAndSupplier(e){const t=s.pos.currentPos().value;if((t==null?void 0:t.id)===e.detail.posId){this.closeStoreLocator();return}this.selectedPosId=e.detail.posId,localStorage.setItem("_miam/noSupplier/posId",this.selectedPosId),this.selectedSupplierName=e.detail.supplierName,this.changePos()}changePos(){this.selectedPosId&&this.subscriptions.push(s.pos.loadPos(this.selectedPosId).pipe(h(e=>!e||e.id!==this.selectedPosId),u(e=>(this.sendSelectedEvent(e),s.pos.basketLoadedForNewPos())),m(()=>(s.storeLocator.newStoreSelected(),this.closeStoreLocator()))).subscribe())}listenToCloseEvent(){const e=document.querySelector("mealz-drawer");e&&e.addEventListener("drawerClosed",()=>{this.closeStoreLocator(),this.sendCloseEvent()})}navigateBack(){var e,t,o;(o=(t=(e=s)==null?void 0:e.noSupplier)==null?void 0:t.displaySupplierSelector$)==null||o.next(!0),this.closeStoreLocator()}closeStoreLocator(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayStoreLocator$.next(!1);const t=this.querySelector("mealz-store-locator");t==null||t.resetPosSelection()}listenToDrawerViewSwapper(){const e=document.querySelector("mealz-drawer-view-swapper");e&&this.subscriptions.push(e.displayStoreLocator$.pipe(w(t=>t)).subscribe(()=>this.pageview()))}isHidden(){return this.classList.contains("hidden")}pageview(){this.isHidden()||s.analytics.sendEvent("pageview",this.analyticsPath,{})}sendSelectedEvent(e){this.isHidden()||s.analytics.sendEvent("locator.select",this.analyticsPath,{pos_name:e.attributes.name,pos_id:e.id,supplier_name:this.selectedSupplierName})}sendSearchEvent(e){this.isHidden()||s.analytics.sendEvent("locator.search",this.analyticsPath,{search_term:e.detail.searchTerm,stores_found_count:e.detail.storesFoundCount.toString()})}sendCloseEvent(){this.isHidden()||s.analytics.sendEvent("locator.close",this.analyticsPath,{})}};n=b([p("mealz-store-locator-drawer")],n);customElements.get("mealz-store-locator-drawer")||customElements.define("mealz-store-locator-drawer",n);
@@ -0,0 +1,290 @@
1
+ .mealz-store-locator {
2
+ height: 100%;
3
+ display: flex;
4
+
5
+ .mealz-store-locator__pos-selection {
6
+ display: flex;
7
+ width: 320px;
8
+ padding: 40px var(--spacing-padding-16-px, 16px);
9
+ flex-direction: column;
10
+ align-items: stretch;
11
+ gap: var(--spacing-padding-16-px, 16px);
12
+ flex-shrink: 0;
13
+ background: var(--mealz-ds-color-neutral-white, #ffffff);
14
+ box-shadow: 2px 0px 16px 0px rgba(0, 0, 0, 0.15);
15
+ z-index: 1;
16
+
17
+ .mealz-store-locator__title {
18
+ color: var(--mealz-ds-color-neutral-black, #0f191f);
19
+ font-size: 28px;
20
+ font-weight: 700;
21
+ line-height: 120%;
22
+ }
23
+
24
+ .mealz-store-locator__go-back-button {
25
+ border-radius: 100%;
26
+ height: 40px;
27
+ width: 40px;
28
+ display: flex;
29
+ justify-content: center;
30
+ align-items: center;
31
+
32
+ img {
33
+ width: 15px;
34
+ height: 15px;
35
+ }
36
+ }
37
+
38
+ #mealz-store-locator__store-locator-form {
39
+ display: flex;
40
+ flex-direction: column;
41
+ gap: 8px;
42
+
43
+ .mealz-store-locator__address-input-container {
44
+ display: flex;
45
+ gap: 8px;
46
+ height: 40px;
47
+ position: relative;
48
+
49
+ .mealz-store-locator__locate-button {
50
+ position: absolute;
51
+ background: unset;
52
+ border: unset;
53
+ padding: 0;
54
+ top: 8px;
55
+ left: 8px;
56
+ width: 24px;
57
+ height: 24px;
58
+
59
+ .mealz-store-locator__geolocation-icon {
60
+ cursor: pointer;
61
+ width: 24px;
62
+ height: 24px;
63
+ }
64
+ }
65
+
66
+ .mealz-store-locator__locate-button
67
+ + .mealz-store-locator__address-input {
68
+ padding-left: 40px;
69
+ }
70
+
71
+ .mealz-store-locator__address-input {
72
+ padding-left: 8px;
73
+ flex: 1;
74
+ border: 1px solid var(--mealz-ds-color-neutral-200, #D9DDE1);
75
+ border-radius: 4px;
76
+ font-size: 14px;
77
+ }
78
+ }
79
+
80
+ .mealz-store-locator__select-supplier {
81
+ display: flex;
82
+
83
+ .mealz-store-locator__select-supplier-select {
84
+ flex: 1;
85
+ padding: 10px;
86
+ max-width: initial;
87
+ }
88
+ }
89
+ }
90
+
91
+ .mealz-store-locator__pos-loader {
92
+ flex: 1;
93
+ width: 100%;
94
+ display: flex;
95
+ justify-content: center;
96
+ align-items: center;
97
+ }
98
+
99
+ .mealz-store-locator__pos-loader .mealz-ds-loader {
100
+ margin: 16px;
101
+ display: flex;
102
+ width: 72px;
103
+ height: 72px;
104
+ background-position-x: 36px;
105
+ background-size: 36px 36px;
106
+ }
107
+
108
+ #mealz-store-locator__pos-list {
109
+ flex-direction: column;
110
+ align-items: flex-start;
111
+ gap: var(--spacing-padding-12-px, 12px);
112
+ align-self: stretch;
113
+ overflow: auto;
114
+ }
115
+
116
+ .mealz-store-locator__pos-list__visible,
117
+ .mealz-store-locator__pos-list__hidden {
118
+ display: flex;
119
+ }
120
+
121
+ .mealz-store-locator__no-pos-found {
122
+ margin-bottom: 16px;
123
+ width: 100%;
124
+ flex: 1;
125
+ display: flex;
126
+ justify-content: center;
127
+ align-items: center;
128
+ flex-direction: column;
129
+ }
130
+ }
131
+
132
+ #mealz-store-locator__view-swapper-button {
133
+ display: none;
134
+ }
135
+
136
+ .mealz-store-locator__pos-item {
137
+ display: flex;
138
+ flex-direction: column;
139
+ padding: 8px;
140
+ align-items: flex-start;
141
+ gap: 16px;
142
+ align-self: stretch;
143
+ border-radius: 8px;
144
+ border: 1px solid var(--mealz-ds-color-neutral-200, #eff1f3);
145
+
146
+ .mealz-store-locator__pos-data {
147
+ display: flex;
148
+ align-items: flex-start;
149
+ gap: 8px;
150
+ align-self: stretch;
151
+
152
+ .mealz-store-locator__pos-picture {
153
+ width: 40px;
154
+ height: 40px;
155
+ flex-shrink: 0;
156
+ }
157
+
158
+ .mealz-store-locator__pos-name {
159
+ color: var(--mealz-ds-color-neutral-black, #0f191f);
160
+ font-size: 14px;
161
+ font-weight: 700;
162
+ line-height: 150%;
163
+ }
164
+
165
+ .mealz-store-locator__pos-address {
166
+ color: var(--mealz-ds-color-neutral-500, #8c96a2);
167
+ font-size: 12px;
168
+ font-weight: 600;
169
+ line-height: 150%;
170
+ }
171
+ }
172
+
173
+ .mealz-store-locator__pos-cta {
174
+ display: flex;
175
+ justify-content: flex-end;
176
+ width: 100%;
177
+
178
+ .mealz-select-pos-button {
179
+ border-radius: 1000px;
180
+ }
181
+ }
182
+ }
183
+
184
+ #mealz-store-locator__map {
185
+ z-index: 0;
186
+ flex: 1 1 0;
187
+ min-height: 400px;
188
+ width: 100%;
189
+
190
+ .mealz-store-locator__pos-item {
191
+ border: none;
192
+ padding: 0;
193
+ }
194
+
195
+ .leaflet-marker-pane .mealz-marker-icon {
196
+ border-radius: 50%;
197
+ overflow: hidden;
198
+ object-fit: cover;
199
+ border: 4px solid var(--mealz-ds-color-neutral-white, #FFFFFF);
200
+ box-sizing: content-box;
201
+ }
202
+ }
203
+ }
204
+
205
+ @media (max-width: 768px) {
206
+ .mealz-store-locator {
207
+ position: absolute;
208
+ flex-direction: column;
209
+ inset: 0;
210
+
211
+ .mealz-store-locator__pos-selection {
212
+ width: 100%;
213
+ padding: 0;
214
+ gap: 0;
215
+
216
+ .mealz-store-locator__go-back-button {
217
+ position: absolute;
218
+ z-index: 1;
219
+ top: 12px;
220
+ left: 8px;
221
+ width: 32px;
222
+ height: 32px;
223
+ }
224
+
225
+ .mealz-store-locator__title {
226
+ position: relative;
227
+ min-height: 56px;
228
+ font-size: 16px;
229
+ display: flex;
230
+ align-items: center;
231
+ justify-content: center;
232
+ border-bottom: solid 1px var(--mealz-ds-color-neutral-200, #eff1f3);
233
+ }
234
+
235
+ #mealz-store-locator__store-locator-form {
236
+ padding: 24px 16px;
237
+
238
+ .mealz-store-locator__address-input-container {
239
+ .mealz-store-locator__address-input {
240
+ width: calc(100% - 44px);
241
+ }
242
+
243
+ .mealz-store-locator__search-address-button {
244
+ width: 36px;
245
+ }
246
+ }
247
+ }
248
+
249
+ #mealz-store-locator__pos-list {
250
+ padding: 0 16px 12px;
251
+ align-items: center;
252
+
253
+ &.mealz-store-locator__pos-list__visible {
254
+ display: flex;
255
+ }
256
+
257
+ &.mealz-store-locator__pos-list__hidden {
258
+ display: none;
259
+ }
260
+ }
261
+
262
+ .mealz-store-locator__pos-loader {
263
+ position: absolute;
264
+ height: 100%;
265
+ }
266
+
267
+ &.mealz-store-locator__pos-selection__height {
268
+ height: 100%;
269
+ }
270
+ }
271
+
272
+ #mealz-store-locator__view-swapper-button {
273
+ width: 100%;
274
+ display: flex;
275
+ justify-content: center;
276
+ padding: 12px 0;
277
+
278
+ &.mealz-store-locator__see-list-button {
279
+ z-index: 1;
280
+ bottom: 40px;
281
+ position: absolute;
282
+ }
283
+
284
+ &.mealz-store-locator__see-map-button {
285
+ box-shadow: -2px 0 18px 0 rgba(0, 0, 0, 0.15);
286
+ margin-top: auto;
287
+ }
288
+ }
289
+ }
290
+ }
@@ -0,0 +1 @@
1
+ .mealz-supplier-selector .mealz-supplier-selector__onboarding-container{padding:24px;background-color:var(--mealz-ds-color-primary-100, #e4eaec)}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-title{margin:0 0 8px}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps{overflow-y:scroll;margin-top:16px;display:flex}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps>*:not(:last-child){margin-right:16px}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps .mealz-supplier-selector__card{background-color:var(--mealz-ds-color-neutral-white, #fff);display:flex;align-items:center;padding:16px;border-radius:12px}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps .mealz-supplier-selector__card .mealz-supplier-selector__instructions{flex:1 1 0;margin-right:24px}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps .mealz-supplier-selector__card .mealz-supplier-selector__instructions .mealz-supplier-selector__step-counter{display:flex;justify-content:center;align-items:center;margin-bottom:8px;height:32px;width:32px;border-radius:50%;background-color:var(--mealz-ds-color-primary, #24748F);color:var(--mealz-ds-color-neutral-white, #fff)}.mealz-supplier-selector .mealz-supplier-selector__onboarding-container .mealz-supplier-selector__onboarding-steps .mealz-supplier-selector__card .mealz-supplier-selector__onboarding-step-image{flex:1 1 0}.mealz-supplier-selector .mealz-supplier-selector__suppliers-container{padding:24px}.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));margin:0 -6px -6px}.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list .mealz-supplier-selector__supplier-button-card{border-radius:8px;background:none;border:none;padding:0;margin:6px;cursor:pointer;position:relative;overflow:hidden}.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list .mealz-supplier-selector__supplier-button-card .mealz-supplier-selector__supplier-logo{display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:65%;max-height:100%;width:auto;height:auto;object-fit:contain}.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list .mealz-supplier-selector__supplier-button-card .mealz-supplier-selector__supplier-bg{display:block}@media (max-width: 575px){.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media (max-width: 375px){.mealz-supplier-selector .mealz-supplier-selector__suppliers-container .mealz-supplier-selector__supplier-list{grid-template-columns:repeat(1,minmax(150px,1fr))}}
@@ -0,0 +1,53 @@
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`
2
+ <div class="mealz-supplier-selector">
3
+ ${this.renderOnboarding()}
4
+ ${this.renderSuppliers()}
5
+ </div>
6
+ `}renderOnboarding(){return l`
7
+ <div class="mealz-supplier-selector__onboarding-container">
8
+ <h3 class="mealz-supplier-selector__onboarding-title mealz-ds-text weight-xl">
9
+ ✨ Nouveau ! Faites vos courses en un clic avec Marmiton.
10
+ </h3>
11
+ <span class="mealz-supplier-selector__onboarding-text mealz-ds-text">
12
+ Choisissez une recette, sélectionnez votre magasin, on s'occupe du reste !<br/>
13
+ Vos ingrédients sont ajoutés automatiquement dans votre panier, prêt à être commandés.
14
+ </span>
15
+ <div class="mealz-supplier-selector__onboarding-steps">
16
+ ${this.onboardingSteps.map((e,s)=>l`
17
+ <div class="mealz-supplier-selector__card">
18
+ <div class="mealz-supplier-selector__instructions">
19
+ <div class="mealz-supplier-selector__step-counter">
20
+ <span class="mealz-ds-text weight-l">${s+1}</span>
21
+ </div>
22
+ <span class="mealz-supplier-selector__onboarding-step-text mealz-ds-text weight-xl">${e.title}</span>
23
+ </div>
24
+ <img class="mealz-supplier-selector__onboarding-step-image" src="${e.image}" alt="${e.title}"
25
+ aria-hidden="true">
26
+ </div>
27
+ `)}
28
+ </div>
29
+ </div>
30
+ `}renderSuppliers(){return l`
31
+ <div class="mealz-supplier-selector__suppliers-container">
32
+ <h3 class="mealz-supplier-selector__onboarding-title mealz-ds-text weight-xl">
33
+ Pour commencer, sélectionnez votre enseigne.
34
+ </h3>
35
+ <div class="mealz-supplier-selector__supplier-list">
36
+ ${this.supplierList.map(e=>l`
37
+ <button class="mealz-supplier-selector__supplier-button-card"
38
+ @click="${()=>this.selectSupplier(e)}">
39
+ <img
40
+ class="mealz-supplier-selector__supplier-bg"
41
+ src="https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/retailer-bg-${e.id}.png"
42
+ alt="${e.name} background"
43
+ aria-hidden="true">
44
+ <img
45
+ class="mealz-supplier-selector__supplier-logo"
46
+ src="https://storage.googleapis.com/assets.miam.tech/generic/images/9.1/retailer-${e.id}.svg"
47
+ alt="${e.name}"
48
+ aria-hidden="true">
49
+ </button>
50
+ `)}
51
+ </div>
52
+ </div>
53
+ `}pageview(){window.mealzInternal.analytics.sendEvent("pageview",this.analyticsPath,{})}sendSelectSupplierEvent(e){window.mealzInternal.analytics.sendEvent("supplier-selector.select",this.analyticsPath,{supplier_id:e.id})}sendCloseEvent(){window.mealzInternal.analytics.sendEvent("supplier-selector.close",this.analyticsPath,{})}};o=g([c("mealz-supplier-selector")],o);customElements.get("mealz-supplier-selector")||customElements.define("mealz-supplier-selector",o);