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.
- package/dist/accordion/accordion.css +1 -1
- package/dist/assets/{OperatorSubscriber-B37s2U6v.js → OperatorSubscriber-DF1TYu__.js} +1 -1
- package/dist/assets/accordion-la5mVBfL.js +19 -0
- package/dist/assets/{async-guWcMFmJ.js → async-D5WN8Wfc.js} +1 -1
- package/dist/assets/{combineLatest-qLpwa5de.js → combineLatest-BN0_WcEG.js} +1 -1
- package/dist/assets/{debounceTime-cu8WlLF0.js → debounceTime-D7R6Z3Am.js} +1 -1
- package/dist/assets/delay-wUm-cx7a.js +1 -0
- package/dist/assets/{distinctUntilChanged-DmoT2we5.js → distinctUntilChanged-VvZTmHoN.js} +1 -1
- package/dist/assets/empty-Bs9kqCuA.js +1 -0
- package/dist/assets/{executeSchedule-Dqc6shOu.js → executeSchedule-C0acKsif.js} +1 -1
- package/dist/assets/{filter-BjN-BbQD.js → filter-DQ4vwAGj.js} +1 -1
- package/dist/assets/{from-CEPL7XsE.js → from-BTlWkhKh.js} +1 -1
- package/dist/assets/{innerFrom-D8hyVDmo.js → innerFrom-FMZwm2mb.js} +1 -1
- package/dist/assets/{map-D6X2syNu.js → map-DHslluWD.js} +1 -1
- package/dist/assets/mapOneOrManyArgs-Bdu6mo6S.js +1 -0
- package/dist/assets/merge-tdU3EgEI.js +1 -0
- package/dist/assets/mergeAll-DTkL1sF8.js +1 -0
- package/dist/assets/{mergeMap-CX64J-ac.js → mergeMap-g-JGW99j.js} +1 -1
- package/dist/assets/{no-shadow-element-D4NOg0uW.js → no-shadow-element-Dz9jgDtr.js} +7 -7
- package/dist/assets/{of-CzgrATec.js → of-hd4MpK5g.js} +1 -1
- package/dist/assets/{price-DdIbni0N.js → price-CHipCs2z.js} +1 -1
- package/dist/assets/{product-card-CcuyZyd6.js → product-card-c_0I2Lp_.js} +14 -14
- package/dist/assets/{promotion-badge-TYkTBrOQ.js → promotion-badge-CzwsPJJq.js} +3 -3
- package/dist/assets/{property-BXNy7Yd-.js → property-Bx8Yvr4_.js} +1 -1
- package/dist/assets/skip-BuAl4dWz.js +1 -0
- package/dist/assets/{skipWhile-B_4e7jSH.js → skipWhile-BzDgmir5.js} +1 -1
- package/dist/assets/{state-b8IyfZUU.js → state-C5zM4-Pq.js} +1 -1
- package/dist/assets/{switchMap-BYsewftM.js → switchMap-6Z80ObHE.js} +1 -1
- package/dist/assets/{take-ujVMxFwY.js → take-ByPtGQky.js} +1 -1
- package/dist/assets/{tap-DwBV-qFl.js → tap-K_D6lo97.js} +1 -1
- package/dist/assets/{timer-D3X0vtFO.js → timer-C3uKg-qK.js} +1 -1
- package/dist/assets/{unsafe-html-C8GMyVYZ.js → unsafe-html-Bv_ydUHb.js} +1 -1
- package/dist/assets/{viewport-listener-BRwa66-G.js → viewport-listener-DrFhSZNW.js} +1 -1
- package/dist/basket-transfer-modal/basket-transfer-modal.min.js +12 -13
- package/dist/catalog/basket-preview/basket-preview-product/basket-preview-product.css +1 -1
- package/dist/catalog/basket-preview/basket-preview.css +1 -1
- package/dist/catalog/basket-preview/basket-preview.min.js +48 -43
- package/dist/catalog/catalog-category/catalog-category.min.js +1 -1
- package/dist/catalog/catalog-favorites/catalog-favorites.min.js +1 -1
- package/dist/catalog/catalog-history/catalog-history.min.js +1 -1
- package/dist/catalog/catalog-home/catalog-home.min.js +1 -1
- package/dist/catalog/catalog-list/catalog-list.min.js +1 -1
- package/dist/catalog/catalog-load-more.min.js +1 -1
- package/dist/catalog/catalog-tabs/catalog-tabs.min.js +1 -1
- package/dist/catalog/catalog-toolbar/catalog-toolbar.min.js +1 -1
- package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
- package/dist/counter/counter.min.js +1 -1
- package/dist/drawer/drawer.min.js +1 -1
- package/dist/drawer-view-swapper/drawer-view-swapper.css +1 -1
- package/dist/drawer-view-swapper/drawer-view-swapper.min.js +24 -20
- package/dist/history-drawer/history-drawer.min.js +1 -1
- package/dist/history-order/history-order.min.js +1 -1
- package/dist/history-order-expanded/history-order-expanded.min.js +1 -1
- package/dist/last-order-badge/last-order-badge.min.js +2 -2
- package/dist/last-order-modal/last-order-modal.min.js +1 -1
- package/dist/like-button/like-button.min.js +1 -1
- package/dist/modal/modal.min.js +1 -1
- package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.css +1 -0
- package/dist/no-supplier-add-to-cart-cta/no-supplier-add-to-cart-cta.min.js +7 -0
- package/dist/onboarding/onboarding.min.js +2 -2
- package/dist/order-again/order-again.min.js +1 -1
- package/dist/planner/helpers/open-onboarding-modal.min.js +1 -1
- package/dist/planner/planner-abandon-modal/planner-abandon-modal.min.js +1 -1
- package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.css +1 -1
- package/dist/planner/planner-budget-edit-modal/planner-budget-edit-modal.min.js +6 -6
- package/dist/planner/planner-budget-gauge/planner-budget-gauge.css +1 -1
- package/dist/planner/planner-budget-gauge/planner-budget-gauge.min.js +1 -1
- package/dist/planner/planner-catalog/planner-catalog.min.js +2 -2
- package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
- package/dist/planner/planner-current-menu-modal/planner-current-menu-modal.min.js +1 -1
- package/dist/planner/planner-dashboard/planner-dashboard.min.js +1 -1
- package/dist/planner/planner-form/planner-form.min.js +1 -1
- package/dist/planner/planner-menu-option/planner-menu-option.min.js +1 -1
- package/dist/planner/planner-onboarding/planner-onboarding.min.js +1 -1
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +6 -6
- package/dist/planner/planner-open-catalog-modal/planner-open-catalog-modal.min.js +1 -1
- package/dist/planner/planner-recipe-card/planner-recipe-card.min.js +1 -1
- package/dist/planner/planner-recipe-list/planner-recipe-list.min.js +1 -1
- package/dist/planner/planner-recipe-suggestion/planner-recipe-suggestion.min.js +1 -1
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +2 -2
- package/dist/planner/to-basket-loader/to-basket-loader.min.js +2 -2
- package/dist/planner-entry/planner-entry.min.js +1 -1
- package/dist/preferences/preferences.min.js +21 -39
- package/dist/price/price.min.js +1 -1
- package/dist/product-addition/product-addition.css +1 -1
- package/dist/recipe-card/recipe-card.min.js +1 -1
- package/dist/recipe-card-cta/recipe-card-cta.min.js +1 -1
- package/dist/recipe-details/recipe-details.min.js +49 -41
- package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
- package/dist/replace-item/replace-item-card/replace-item-card.min.js +5 -5
- package/dist/replace-item/replace-item.min.js +2 -2
- package/dist/replace-item-planner/replace-item-card-planner/replace-item-card-planner.min.js +1 -1
- package/dist/replace-item-planner/replace-item-planner.min.js +1 -1
- package/dist/select/select.min.js +1 -1
- package/dist/slider-tabs/slider-tabs.min.js +2 -2
- package/dist/store-indicator/store-indicator.min.js +1 -1
- package/dist/store-locator/store-locator.css +1 -1
- package/dist/store-locator/store-locator.min.js +97 -0
- package/dist/store-locator-drawer/store-locator-drawer.min.js +4 -37
- package/dist/store-locator.css +290 -0
- package/dist/supplier-selector/supplier-selector.css +1 -0
- package/dist/supplier-selector/supplier-selector.min.js +53 -0
- package/dist/supplier-selector.css +99 -0
- package/package.json +1 -1
- package/dist/add-to-cart-cta/add-to-cart-cta.css +0 -1
- package/dist/add-to-cart-cta/add-to-cart-cta.min.js +0 -7
- package/dist/assets/delay-DX2Gy1PY.js +0 -1
- package/dist/assets/empty-DhPhHznc.js +0 -1
- package/dist/assets/mapOneOrManyArgs-UKKoFfIU.js +0 -1
- package/dist/assets/merge-Cw-bwf6Z.js +0 -1
- package/dist/assets/mergeAll-9jcORGP2.js +0 -1
- package/dist/assets/store-locator-CQ_XQBby.js +0 -95
- package/dist/no-supplier-onboarding/no-supplier-onboarding.css +0 -1
|
@@ -1,22 +1,4 @@
|
|
|
1
|
-
import{N as _,
|
|
2
|
-
<button
|
|
3
|
-
class="mealz-accordion__header"
|
|
4
|
-
@click=${()=>this.toggleAccordion()}
|
|
5
|
-
aria-expanded=${!this.isCollapsed}
|
|
6
|
-
>
|
|
7
|
-
${typeof this.titleSlot=="string"?z(this.titleSlot):this.titleSlot}
|
|
8
|
-
<img
|
|
9
|
-
class="mealz-accordion__icon"
|
|
10
|
-
src=${this.iconUrl??"https://storage.googleapis.com/assets.miam.tech/generic/icons/chevron-down.svg"}
|
|
11
|
-
alt="open and close icon"
|
|
12
|
-
/>
|
|
13
|
-
</button>
|
|
14
|
-
<div class="mealz-accordion__collapsable-container">
|
|
15
|
-
<div class="mealz-accordion__collapsable-content">
|
|
16
|
-
${typeof this.contentSlot=="string"?z(this.contentSlot):this.contentSlot}
|
|
17
|
-
</div>
|
|
18
|
-
</div>
|
|
19
|
-
`}};g([p({type:String})],h.prototype,"titleSlot",2);g([p({type:String})],h.prototype,"contentSlot",2);g([p({type:String})],h.prototype,"iconUrl",2);g([p({type:Boolean})],h.prototype,"isCollapsed",2);h=g([b("mealz-accordion")],h);var P=Object.defineProperty,E=Object.getOwnPropertyDescriptor,v=(e,s,r,a)=>{for(var t=a>1?void 0:a?E(s,r):s,n=e.length-1,l;n>=0;n--)(l=e[n])&&(t=(a?l(s,r,t):l(t))||t);return a&&t&&P(s,r,t),t};let m=class extends _{constructor(){super(),this.suggestedTags=[],this.notFound=!1,this.searchQuery=new $(""),this.subscription=new S,this.styleURL=new URL("./preferences/preferences-search/preferences-search.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.listenOnSearchChange()}disconnectedCallback(){super.disconnectedCallback(),this.subscription.unsubscribe()}searchInputUpdate(e){this.searchQuery.next(e.target.value)}listenOnSearchChange(){this.subscription.add(this.searchQuery.pipe(C(250),T(),k(e=>e.length>0?i.tags.autocomplete(e):[])).subscribe(e=>{var s,r;this.suggestedTags=(s=e==null?void 0:e.data)==null?void 0:s.filter(a=>a.attributes["tag-type-id"]==="ingredient_category"||a.attributes["tag-type-id"]==="ingredientsdefinition"),this.notFound=((r=this.suggestedTags)==null?void 0:r.length)===0,this.requestUpdate()}))}addTag(e){i.preferences.newTagFromSearch(e),this.dispatchEvent(new CustomEvent("backAndReload"))}render(){return c`
|
|
1
|
+
import"../assets/accordion-la5mVBfL.js";import{N as _,B as z,a as y,k as r}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as b}from"../assets/custom-element-BhZVzxrc.js";import{r as p}from"../assets/state-C5zM4-Pq.js";import{m as t}from"../assets/mealz-sdk-E_fNZM-c.js";import{d as w}from"../assets/debounceTime-D7R6Z3Am.js";import{d as T}from"../assets/distinctUntilChanged-VvZTmHoN.js";import{s as $}from"../assets/switchMap-6Z80ObHE.js";import{n as g}from"../assets/property-Bx8Yvr4_.js";import{f as k}from"../assets/filter-DQ4vwAGj.js";import"../assets/unsafe-html-Bv_ydUHb.js";import"../assets/async-D5WN8Wfc.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/innerFrom-FMZwm2mb.js";var S=Object.defineProperty,x=Object.getOwnPropertyDescriptor,m=(e,s,n,a)=>{for(var i=a>1?void 0:a?x(s,n):s,c=e.length-1,d;c>=0;c--)(d=e[c])&&(i=(a?d(s,n,i):d(i))||i);return a&&i&&S(s,n,i),i};let u=class extends _{constructor(){super(),this.suggestedTags=[],this.notFound=!1,this.searchQuery=new z(""),this.subscription=new y,this.styleURL=new URL("./preferences/preferences-search/preferences-search.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.listenOnSearchChange()}disconnectedCallback(){super.disconnectedCallback(),this.subscription.unsubscribe()}searchInputUpdate(e){this.searchQuery.next(e.target.value)}listenOnSearchChange(){this.subscription.add(this.searchQuery.pipe(w(250),T(),$(e=>e.length>0?t.tags.autocomplete(e):[])).subscribe(e=>{var s,n;this.suggestedTags=(s=e==null?void 0:e.data)==null?void 0:s.filter(a=>a.attributes["tag-type-id"]==="ingredient_category"||a.attributes["tag-type-id"]==="ingredientsdefinition"),this.notFound=((n=this.suggestedTags)==null?void 0:n.length)===0,this.requestUpdate()}))}addTag(e){t.preferences.newTagFromSearch(e),this.dispatchEvent(new CustomEvent("backAndReload"))}render(){return r`
|
|
20
2
|
<div class="mealz-preferences-search">
|
|
21
3
|
<div class="mealz-preferences-search__searchbar-container">
|
|
22
4
|
<div class="mealz-preferences-search__searchbar mealz-ds-searchbar">
|
|
@@ -31,15 +13,15 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
31
13
|
</div>
|
|
32
14
|
</div>
|
|
33
15
|
|
|
34
|
-
${this.notFound?
|
|
16
|
+
${this.notFound?r`
|
|
35
17
|
<div class="mealz-preferences-search__not-found">
|
|
36
18
|
<span class="mealz-ds-text">
|
|
37
19
|
Pas de panique, nous ne trouvons pas cet ingrédient.
|
|
38
20
|
Aucun risque de le retrouver dans votre assiette.
|
|
39
21
|
</span>
|
|
40
22
|
</div>
|
|
41
|
-
`:
|
|
42
|
-
${this.suggestedTags.map(e=>
|
|
23
|
+
`:r`
|
|
24
|
+
${this.suggestedTags.map(e=>r`
|
|
43
25
|
<button
|
|
44
26
|
class="mealz-preferences-search__suggested__tag"
|
|
45
27
|
@click=${()=>this.addTag(e)}
|
|
@@ -51,7 +33,7 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
51
33
|
`)}
|
|
52
34
|
`}
|
|
53
35
|
</div>
|
|
54
|
-
`}};
|
|
36
|
+
`}};m([p()],u.prototype,"suggestedTags",2);m([p()],u.prototype,"notFound",2);u=m([b("mealz-preferences-search")],u);customElements.get("mealz-preferences-search")||customElements.define("mealz-preferences-search",u);class f{constructor(){this.attributes={"tag-type-id":"",name:"","icon-url":"","picture-url":""}}get tagType(){return this.attributes["tag-type-id"]}get name(){return this.attributes.name}}var C=Object.defineProperty,I=Object.getOwnPropertyDescriptor,o=(e,s,n,a)=>{for(var i=a>1?void 0:a?I(s,n):s,c=e.length-1,d;c>=0;c--)(d=e[c])&&(i=(a?d(s,n,i):d(i))||i);return a&&i&&C(s,n,i),i};let l=class extends _{constructor(){super(),this.isOpen=!1,this.diets=[],this.ingredients=[],this.equipments=[],this.displayType="defaultView",this.analyticsPath="/preferences",this.openedModalSubscriptions=[],this.subscriptions=[],this.forcedIngredients=[{id:"ingredient_category_lgumes",name:"Légume"},{id:"ingredient_category_viandes-blanches",name:"Viande blanche"},{id:"ingredient_category_fromage",name:"Fromage"},{id:"ingredient_category_poissons",name:"Poisson"},{id:"ingredient_category_fruits",name:"Fruit"},{id:"ingredientsdefinition_coriandre",name:"Coriandre"},{id:"ingredientsdefinition_brocoli",name:"Brocoli"},{id:"ingredientsdefinition_oeuf",name:"Oeuf"},{id:"ingredient_category_alcool",name:"Alcool"}],this.drawerViewSwapper=document.querySelector("mealz-drawer-view-swapper")}connectedCallback(){super.connectedCallback(),this.initSubscriptions()}disconnectedCallback(){super.disconnectedCallback(),this.openedModalSubscriptions.forEach(e=>e.unsubscribe()),this.subscriptions.forEach(e=>e.unsubscribe())}initSubscriptions(){this.subscriptions.push(this.drawerViewSwapper.displayPreferences$.subscribe(e=>{this.isOpen=e,e?(this.fetchTags(),this.pageview()):this.openedModalSubscriptions.forEach(s=>s.unsubscribe()),this.requestUpdate()}),t.supplier.currentSupplier().pipe(k(e=>!!e)).subscribe(e=>{this.supplierId=e.id,this.fetchTags(),this.requestUpdate()}))}defaultViewHeader(){return r`
|
|
55
37
|
<button class="mealz-ds-button ghost square mealz-preferences__back-button" @click=${this.close}>
|
|
56
38
|
<img class="mealz-preferences__back-image" alt="go back"
|
|
57
39
|
src="https://storage.googleapis.com/assets.miam.tech/generic/icons/arrow-right.svg">
|
|
@@ -63,13 +45,13 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
63
45
|
<img class="mealz-preferences__close-image" alt="close modal"
|
|
64
46
|
src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_primary.svg">
|
|
65
47
|
</button>
|
|
66
|
-
`}defaultViewContent(){return
|
|
48
|
+
`}defaultViewContent(){return r`
|
|
67
49
|
<!-- GUESTS -->
|
|
68
50
|
<div class="mealz-preferences__guests">
|
|
69
51
|
<span class="mealz-ds-text mealz-preferences__guest-label">Nombre de personnes</span>
|
|
70
52
|
<mealz-counter
|
|
71
53
|
class="mealz-preferences__guest-counter"
|
|
72
|
-
.value=${
|
|
54
|
+
.value=${t.preferences.guests$.value}
|
|
73
55
|
@valueChange=${this.updateGuests}
|
|
74
56
|
>
|
|
75
57
|
</mealz-counter>
|
|
@@ -79,10 +61,10 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
79
61
|
<mealz-accordion
|
|
80
62
|
class="mealz-preferences__diet-section"
|
|
81
63
|
.isCollapsed=${!1}
|
|
82
|
-
.titleSlot=${
|
|
83
|
-
.contentSlot=${
|
|
64
|
+
.titleSlot=${r`<span class="mealz-ds-text weight-xl">Avez-vous un régime particulier ?</span>`}
|
|
65
|
+
.contentSlot=${r`
|
|
84
66
|
<div class="mealz-preferences__list">
|
|
85
|
-
${this.diets.map(e=>
|
|
67
|
+
${this.diets.map(e=>r`
|
|
86
68
|
<div class="mealz-preferences__list__item mealz-ds-checkbox" @click=${()=>this.toggleTag(e)}>
|
|
87
69
|
<div class="mealz-ds-text mealz-preferences__list__item__name">
|
|
88
70
|
${e.tag.attributes.name}
|
|
@@ -98,14 +80,14 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
98
80
|
<mealz-accordion
|
|
99
81
|
class="mealz-preferences__dislikes-section"
|
|
100
82
|
.isCollapsed=${!1}
|
|
101
|
-
.titleSlot=${
|
|
102
|
-
.contentSlot=${
|
|
103
|
-
${this.ingredients.map(e=>
|
|
83
|
+
.titleSlot=${r`<span class="mealz-ds-text weight-xl">Je n'aime pas</span>`}
|
|
84
|
+
.contentSlot=${r`
|
|
85
|
+
${this.ingredients.map(e=>r`
|
|
104
86
|
<button class="mealz-ds-badge mealz-preferences__badge ${e.checked?"checked":""}"
|
|
105
87
|
@click=${()=>this.toggleTag(e)}>
|
|
106
88
|
<div class="mealz-preferences__badge-label">
|
|
107
89
|
<span>${e.tag.attributes.name}</span>
|
|
108
|
-
${this.isAdditionalIngredient(e)?
|
|
90
|
+
${this.isAdditionalIngredient(e)?r`
|
|
109
91
|
<img alt="remove ${e.tag.attributes.name}"
|
|
110
92
|
class="mealz-preferences__remove-tag"
|
|
111
93
|
src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross.svg">
|
|
@@ -127,10 +109,10 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
127
109
|
<mealz-accordion
|
|
128
110
|
class="mealz-preferences__equipments-section"
|
|
129
111
|
.isCollapsed=${!1}
|
|
130
|
-
.titleSlot=${
|
|
131
|
-
.contentSlot=${
|
|
112
|
+
.titleSlot=${r`<span class="mealz-ds-text weight-xl">Équipements</span>`}
|
|
113
|
+
.contentSlot=${r`
|
|
132
114
|
<div class="mealz-preferences__list">
|
|
133
|
-
${this.equipments.map(e=>
|
|
115
|
+
${this.equipments.map(e=>r`
|
|
134
116
|
<div class="mealz-preferences__list__item mealz-ds-checkbox" @click=${()=>this.toggleTag(e)}>
|
|
135
117
|
<div class="mealz-ds-text mealz-preferences__list__item__name">
|
|
136
118
|
${e.tag.attributes.name}
|
|
@@ -151,7 +133,7 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
151
133
|
Appliquer
|
|
152
134
|
</button>
|
|
153
135
|
</div>
|
|
154
|
-
`}searchViewHeader(){return
|
|
136
|
+
`}searchViewHeader(){return r`
|
|
155
137
|
<div class="mealz-preferences__nav-and-title">
|
|
156
138
|
<button class="mealz-ds-button ghost square mealz-preferences__search-back-button"
|
|
157
139
|
@click=${this.goToDefaultView}>
|
|
@@ -162,16 +144,16 @@ import{N as _,k as c,B as $,S}from"../assets/no-shadow-element-D4NOg0uW.js";impo
|
|
|
162
144
|
<span>Je n'aime pas</span>
|
|
163
145
|
</div>
|
|
164
146
|
</div>
|
|
165
|
-
`}render(){return this.isOpen?
|
|
147
|
+
`}render(){return this.isOpen?r`
|
|
166
148
|
<div class="mealz-preferences">
|
|
167
149
|
<div class="mealz-preferences__header">
|
|
168
150
|
${this.displayType==="defaultView"?this.defaultViewHeader():this.searchViewHeader()}
|
|
169
151
|
</div>
|
|
170
152
|
|
|
171
|
-
${this.displayType==="defaultView"?this.defaultViewContent():
|
|
153
|
+
${this.displayType==="defaultView"?this.defaultViewContent():r`
|
|
172
154
|
<mealz-preferences-search
|
|
173
155
|
@backAndReload=${()=>{this.fetchTags(),this.goToDefaultView()}}
|
|
174
156
|
></mealz-preferences-search>
|
|
175
157
|
`}
|
|
176
158
|
</div>
|
|
177
|
-
`:
|
|
159
|
+
`:r``}close(){this.sendCloseEvent(),this.drawerViewSwapper.displayPreferences$.next(!1),t.preferences.resetTagsActions()}pageview(){t.analytics.sendEvent("pageview",this.analyticsPath,{})}sendCloseEvent(){t.analytics.sendEvent("preferences.close",this.analyticsPath,{})}createTagSubscription(e,s){this.openedModalSubscriptions.push(t.tags.all({remotefilter:{tag_type:e,for_supplier:this.supplierId}}).subscribe(n=>{this[`${e}s`]=n.data.map(a=>({tag:a,checked:t.preferences.tagShouldBeChecked(a,s),without:e!=="diet"})),this.requestUpdate()}))}fetchTags(){this.supplierId&&(this.createTagSubscription("diet",!1),this.createTagSubscription("equipment",!0),this.initIngredientTags())}reset(){t.preferences.resetPreferences(),t.preferences.sendCacheRequest("remove","preferences").subscribe(),this.fetchTags()}initIngredientTags(){this.ingredients=[],this.forcedIngredients.forEach(e=>{const s=new f;s.id=e.id,s.attributes.name=e.name,this.ingredients.push({tag:s,checked:t.preferences.tagShouldBeChecked(s,!0),without:!0})}),this.getAdditionalIngredients()}getAdditionalIngredients(){(t.preferences.preferencesInStorage()||{without:[]}).without.filter(i=>i.id.includes("ingredient_category_")||i.id.includes("ingredientsdefinition_")||i.id.includes("meal_type_")).forEach(i=>{if(this.forcedIngredients.findIndex(c=>c.id===i.id)===-1){const c=new f;c.id=i.id,c.attributes={"tag-type-id":"",name:i.name,"icon-url":"","picture-url":""},t.preferences.tagShouldBeChecked(c,!0)&&this.ingredients.push({tag:c,checked:!0,without:!0})}});const n=["ingredient_category_","ingredientsdefinition_","meal_type_"],a=t.preferences.tagsToAdd.filter(i=>{const c=i.tag.id,d=n.some(h=>c.includes(h)),v=!this.ingredients.some(h=>h.tag.id===c);return d&&v});this.ingredients.push(...a),this.updateFiltersInCache()}toggleTag(e){e.checked=!e.checked,e.tag.attributes["tag-type-id"]==="equipment"!==e.checked?t.preferences.addTag(e):(t.preferences.removeTag(e),this.isAdditionalIngredient(e)&&this.ingredients.splice(this.ingredients.findIndex(s=>s.tag.id===e.tag.id),1)),this.requestUpdate()}isAdditionalIngredient(e){return this.forcedIngredients.findIndex(s=>s.id===e.tag.id)===-1&&(e.tag.id.includes("ingredient_category_")||e.tag.id.includes("ingredientsdefinition_"))}updateAndBack(){t.preferences.updatePreferences(),t.preferences.preferencesChanged(),this.updateFiltersInCache(!0)}goToDefaultView(){this.displayType="defaultView",this.requestUpdate()}goToSearchView(){this.displayType="searchView",this.requestUpdate()}updateFiltersInCache(e=!1){const s=t.preferences.addPreferencesToRemoteFilters(this.filters,!0),n={exclude_tags:s.exclude_tags,include_tags:s.include_tags,...t.preferences.guests$.value!==4&&{guests:t.preferences.guests$.value}};(Object.keys(n).length>0?t.preferences.sendCacheRequest("set","preferences",n):t.preferences.sendCacheRequest("remove","preferences")).subscribe(()=>{e&&(t.preferences.preferencesChanged(),this.close())})}updateGuests(e){t.preferences.guests$.next(e.detail.value),this.requestUpdate()}};o([g({type:Object})],l.prototype,"filters",2);o([g({type:Boolean})],l.prototype,"isOpen",2);o([p()],l.prototype,"diets",2);o([p()],l.prototype,"ingredients",2);o([p()],l.prototype,"equipments",2);o([p()],l.prototype,"displayType",2);o([g({type:String})],l.prototype,"analyticsPath",2);l=o([b("mealz-preferences")],l);customElements.get("mealz-preferences")||customElements.define("mealz-preferences",l);
|
package/dist/price/price.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{N as n,k as a,D as d}from"../assets/no-shadow-element-
|
|
1
|
+
import{N as n,k as a,D as d}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as v}from"../assets/custom-element-BhZVzxrc.js";import{n as m}from"../assets/property-Bx8Yvr4_.js";import{P as h}from"../assets/price-CHipCs2z.js";import"../assets/mealz-sdk-E_fNZM-c.js";var u=Object.defineProperty,P=Object.getOwnPropertyDescriptor,l=(o,i,c,t)=>{for(var e=t>1?void 0:t?P(i,c):i,s=o.length-1,p;s>=0;s--)(p=o[s])&&(e=(t?p(i,c,e):p(e))||e);return t&&e&&u(i,c,e),e};let r=class extends n{constructor(){super(),this.priceService=h.getInstance(),this.styleURL=new URL("./price/price.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.priceService.initFormatter()}renderOldPrice(){return a`
|
|
2
2
|
<div class="mealz-price__previous mealz-ds-text weight-l size-xs">
|
|
3
3
|
${this.priceService.priceTemplate(this.oldPrice)}
|
|
4
4
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.mealz-product-addition{padding:
|
|
1
|
+
.mealz-product-addition{padding:16px;display:flex;align-items:center;justify-content:space-between;background:var(--mealz-ds-color-neutral-100, #F7F8F9);gap:8px}.mealz-product-addition .mealz-product-addition__button{border-radius:32px;flex-shrink:0}@media (max-width: 480px){.mealz-product-addition{margin:0 16px;border-radius:12px}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as S}from"../assets/no-shadow-element-Dz9jgDtr.js";import{V as f}from"../assets/viewport-listener-DrFhSZNW.js";import{t as I}from"../assets/custom-element-BhZVzxrc.js";import{h as w}from"../assets/session-handler-BZFnRy_K.js";import{w as y,m as c}from"../assets/mealz-sdk-E_fNZM-c.js";import{f as m}from"../assets/filter-DQ4vwAGj.js";import{s as b}from"../assets/switchMap-6Z80ObHE.js";import{c as v}from"../assets/combineLatest-BN0_WcEG.js";import{t as d}from"../assets/take-ByPtGQky.js";import"../assets/debounceTime-D7R6Z3Am.js";import"../assets/async-D5WN8Wfc.js";import"../assets/OperatorSubscriber-DF1TYu__.js";import"../assets/innerFrom-FMZwm2mb.js";import"../assets/from-BTlWkhKh.js";import"../assets/executeSchedule-C0acKsif.js";import"../assets/mapOneOrManyArgs-Bdu6mo6S.js";import"../assets/map-DHslluWD.js";import"../assets/empty-Bs9kqCuA.js";class o{constructor(){this.trackedRecipes=new Map,this.hasScrolled=!1,this.scrollListener=null,this.cleanupInterval=null,this.MAX_RECIPES=1e3,this.CLEANUP_INTERVAL=300*1e3,this.handlePageUnload=()=>{this.destroy()},this.setupScrollListener(),this.startAutoCleanup(),this.setupPageUnloadListener()}static getInstance(){return o.instance||(o.instance=new o),o.instance}trackRecipeShow(t,s,i){const r=Date.now(),n=!this.trackedRecipes.get(t),l=this.hasScrolled;!n&&!l||(this.trackedRecipes.size>=this.MAX_RECIPES&&this.cleanOldRecipes(),this.trackedRecipes.set(t,r),window.mealzInternal.analytics.sendEvent("recipe.show",s,{recipe_id:t,category_id:i}))}cleanOldRecipes(){const s=Date.now()-3600*1e3;for(const[i,r]of this.trackedRecipes.entries())r<s&&this.trackedRecipes.delete(i)}clearAllRecipes(){this.trackedRecipes.clear()}destroy(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null),window.removeEventListener("beforeunload",this.handlePageUnload),this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null),this.trackedRecipes.clear(),this.hasScrolled=!1,o.instance=null}setupScrollListener(){let t;this.scrollListener=()=>{this.hasScrolled=!0,clearTimeout(t),t=window.setTimeout(()=>{this.hasScrolled=!1},2e3)},window.addEventListener("scroll",this.scrollListener)}startAutoCleanup(){this.cleanupInterval=window.setInterval(()=>{this.cleanOldRecipes()},this.CLEANUP_INTERVAL)}setupPageUnloadListener(){window.addEventListener("beforeunload",this.handlePageUnload)}}var L=Object.getOwnPropertyDescriptor,C=(e,t,s,i)=>{for(var r=i>1?void 0:i?L(t,s):t,a=e.length-1,n;a>=0;a--)(n=e[a])&&(r=n(r)||r);return r};let p=class extends S{constructor(){super(...arguments),this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.getInitialStatus(),this.listenInView(),y().then(()=>{this.setupSubscriptions()}).catch(e=>{console.warn("Failed to initialize SDK subscriptions:",e)})}setupSubscriptions(){this.subscriptions.push(c.basket.recipePricesInBasket$().subscribe(e=>{if(!e)return;const t=e.find(s=>s.id===this.recipeId);e.length>0&&t&&parseFloat(t.price)>0?(this.guests=c.basket.guestsForRecipe(t.id),this.updatedRecipeId=t.id,this.updateDOM()):this.render()}),this.setupPlannerMenuSubscription(),this.setupGuestUpdatesSubscription())}setupPlannerMenuSubscription(){return c.planner.menuPrice$.pipe(m(()=>this.planner&&!!this.recipeId),b(()=>v([c.planner.isRecipeInMenu$(this.recipeId).pipe(d(1))])),m(([e,t])=>e&&typeof t=="number"&&t>0)).subscribe(([e,t])=>{this.guests=t,this.updateGuestDisplay()})}setupGuestUpdatesSubscription(){return c.recipes.guestsUpdated().subscribe(e=>{e.recipeId===this.recipeId&&(this.guests=e.guests,this.updatedRecipeId=this.recipeId,this.updateDOM())})}disconnectedCallback(){var t;super.disconnectedCallback(),this.subscriptions.forEach(s=>s.unsubscribe()),(t=this.analyticsViewportObserver)==null||t.disconnect(),o.getInstance().cleanOldRecipes()}render(){this.recipeCardTop=this.querySelector(".mealz-recipe-card__top"),this.recipeCardCta=this.querySelector(".mealz-recipe-card__cta"),this.recipeCardTop&&(this.getInitialStatus(),this.recipeCardTop.addEventListener("click",()=>this.openDetails()),this.recipeCardCta&&this.recipeCardCta.addEventListener("click",()=>this.recipeCardCtaClick()))}listenInView(){this.analyticsViewportObserver=new f(this,()=>{this.sendAnalyticsShow()},{threshold:.8,debounce:1e3})}getInitialStatus(){var h;const e=(h=this.attributes["starting-data"])==null?void 0:h.value;if(!e)return;const{id:t,guests:s,path:i,categoryId:r,initialTabIndex:a,planner:n,sessionId:l,recipe:g}=JSON.parse(e);if(this.recipeId=t,this.analyticsPath=i,this.categoryId=r,this.guests=s,this.initialTabIndex=a,this.planner=n,this.recipe=g,w(l),!this.guests){this.guests=this.getGuests();const u=this.querySelector(".mealz-recipe-card__counter p");u&&(u.innerHTML=this.guests.toString())}this.removeAttribute("starting-data"),this.updateDOM()}openDetails(){c.recipes.openDetails(this.recipeId,this.guests,this.initialTabIndex,this.analyticsPath,this.planner,this.categoryId)}recipeCardCtaClick(){this.planner?this.handleCTAClickForPlanner():this.openDetails()}getGuests(){const e=localStorage.getItem("_miam/preferences/guests");if(e){const t=+e;if(!isNaN(t)&&t>0&&t<=30)return t}return 4}handleCTAClickForPlanner(){const e=this.querySelector("mealz-recipe-card-cta");if(!e)return;const t=e.getStatus();t==="add"?(this.showAddingToMenuState(e),this.addRecipeToMenu()):t==="in-menu"&&(this.showRemovingFromMenuState(e),this.removeRecipeFromMenu())}addRecipeToMenu(){var i,r;const e=document.querySelector("mealz-planner-recipe-suggestion"),t=(e==null?void 0:e.guests)||this.guests;e&&(e.recipeId=this.recipeId);const s=document.querySelector("mealz-planner-current-menu");if(!s){const a=(r=(i=c.recipes)==null?void 0:i.productsPlannerByCategory$)==null?void 0:r.value,n=(a==null?void 0:a.toPickProducts)||[];c.planner.addRecipeToMenu(this.recipeId,t,!!c.pos.currentPos().value,n).pipe(d(1)).subscribe(()=>{this.removeRecipeCardLoader("add");const l=document.querySelector("mealz-planner-recipe-list");l==null||l.addRecipeCardToList(this.recipeId)});return}s.addRecipe(this.recipeId,t).subscribe(()=>{this.removeRecipeCardLoader("add"),e==null||e.addAndSelectNewSuggestion(this.recipe)})}removeRecipeFromMenu(){const e=document.querySelector("mealz-planner-recipe-suggestion");if(!e){c.planner.removeRecipeFromMenu(this.recipeId).pipe(d(1)).subscribe(()=>this.removeRecipeCardLoader("remove"));return}e.removeRecipe(this.recipeId).subscribe(()=>this.removeRecipeCardLoader("remove"))}showRemovingFromMenuState(e){const t=this.querySelector(".mealz-recipe-card-cta__loader"),s=e.querySelector("img.in-menu");t==null||t.classList.remove("hidden"),s==null||s.classList.add("hidden")}removeRecipeCardLoader(e){const t=this.querySelector("mealz-recipe-card-cta");if(!t)return;const s=this.querySelector(".mealz-recipe-card-cta"),i=this.querySelector(".mealz-recipe-card-cta__loader"),r=t.querySelector("img.add"),a=t.querySelector("img.in-menu");e==="add"?(i==null||i.classList.add("hidden"),s==null||s.classList.replace("primary","secondary"),a==null||a.classList.remove("hidden"),t.updateStatus("in-menu")):(i==null||i.classList.add("hidden"),s==null||s.classList.replace("secondary","primary"),r==null||r.classList.remove("hidden"),t.updateStatus("add"))}showAddingToMenuState(e){const t=this.querySelector(".mealz-recipe-card-cta__loader"),s=e.querySelector("img.add"),i=e.querySelector("img.in-menu");t==null||t.classList.remove("hidden"),s==null||s.classList.add("hidden"),i==null||i.classList.add("hidden")}updateDOM(){if(this.recipeId!==this.updatedRecipeId)return;const e=this.querySelector(".mealz-recipe-card__counter p");e&&(e.innerHTML=this.guests.toString())}updateGuestDisplay(){const e=this.querySelector(".mealz-recipe-card__counter p");e&&this.guests&&(e.innerHTML=this.guests.toString())}sendAnalyticsShow(){o.getInstance().trackRecipeShow(this.recipeId,this.analyticsPath,this.categoryId)}};p=C([I("mealz-recipe-card")],p);customElements.get("mealz-recipe-card")||customElements.define("mealz-recipe-card",p);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as m}from"../assets/no-shadow-element-
|
|
1
|
+
import{N as m}from"../assets/no-shadow-element-Dz9jgDtr.js";import{t as f}from"../assets/custom-element-BhZVzxrc.js";import{w as b,m as n}from"../assets/mealz-sdk-E_fNZM-c.js";import{m as u}from"../assets/map-DHslluWD.js";import{d as c}from"../assets/distinctUntilChanged-VvZTmHoN.js";import{m as C}from"../assets/mergeAll-DTkL1sF8.js";import{f as k,p as h}from"../assets/from-BTlWkhKh.js";import{o as g}from"../assets/OperatorSubscriber-DF1TYu__.js";import{c as v}from"../assets/combineLatest-BN0_WcEG.js";import"../assets/mergeMap-g-JGW99j.js";import"../assets/innerFrom-FMZwm2mb.js";import"../assets/executeSchedule-C0acKsif.js";import"../assets/mapOneOrManyArgs-Bdu6mo6S.js";function I(){return C(1)}function d(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return I()(k(e,h(e)))}function o(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var s=h(e);return g(function(i,a){(s?d(e,i,s):d(e,i)).subscribe(a)})}var L=Object.getOwnPropertyDescriptor,S=(e,t,s,i)=>{for(var a=i>1?void 0:i?L(t,s):t,r=e.length-1,p;r>=0;r--)(p=e[r])&&(a=p(a)||a);return a};let l=class extends m{constructor(){super(...arguments),this.subscriptions=[],this.clickHandler=()=>{},this.recipeId="",this.status="add",this.planner=!1,this.recipeCta=null,this.guests=4,this.standalone=!1,this.inBasket=!1}connectedCallback(){super.connectedCallback(),this.getInitialStatus(),b().then(()=>{this.setupClickHandler(),this.setupSubscriptions()}).catch(e=>{console.warn("Failed to initialize SDK subscriptions:",e)})}setupSubscriptions(){const e=n.basket.recipePricesInBasket$().pipe(u(t=>t.some(s=>s.id===this.recipeId)),c(),o(!1));this.subscriptions.push(v([n.planner.isRecipeInMenu$(this.recipeId).pipe(o(!1),c()),e]).pipe(u(([t,s])=>this.planner?s?"in-basket":t?"in-menu":"add":s?"in-basket":"add"),c()).subscribe(t=>this.updateStatus(t)))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.removeClickHandler()}render(){this.recipeCta=this.querySelector(".mealz-recipe-card-cta"),this.recipeCta&&this.updateStatus(this.status)}getInitialStatus(){const e=this.attributes.getNamedItem("starting-data"),t=(e==null?void 0:e.value)||"{}",s=JSON.parse(t);if(s){if(s.recipeId)this.recipeId=s.recipeId,this.guests=s.guests||4,this.standalone=!0,this.inBasket=s.inBasket||!1,this.planner=s.planner||!1,this.status=s.status||"add",this.updateDOM(this.inBasket);else{const i=e==null?void 0:e.value;this.recipeId=i||"",this.standalone=!1;const a=this.classList.contains("in-basket");this.updateDOM(a)}if(this.removeAttribute("starting-data"),this.planner)this.updateStatus(this.status);else{const i=this.classList.contains("in-basket");this.updateStatus(i?"in-basket":"add")}}}setupClickHandler(){this.standalone&&(this.recipeCta=this.querySelector(".mealz-recipe-card-cta"),this.recipeCta&&(this.clickHandler=()=>{n.recipes.openDetails(this.recipeId,this.guests,0,"/recipes")},this.recipeCta.addEventListener("click",this.clickHandler)))}removeClickHandler(){this.recipeCta&&this.clickHandler&&this.recipeCta.removeEventListener("click",this.clickHandler)}updateStatus(e){this.recipeCta&&(this.recipeCta.classList.remove("hidden"),this.status!==e&&(this.status=e,this.recipeCta.classList.remove("in-basket","in-menu","add"),this.recipeCta.classList.add(this.status),this.recipeCta.classList.toggle("primary",this.status==="add"),this.recipeCta.classList.toggle("secondary",this.status!=="add"),this.updateButtonState(),this.updateImages()))}updateButtonState(){this.recipeCta&&(this.planner&&this.status==="in-basket"?this.recipeCta.setAttribute("disabled","true"):this.recipeCta.removeAttribute("disabled"))}updateImages(){if(!this.recipeCta)return;this.recipeCta.querySelectorAll("img").forEach(t=>{t.classList.contains(this.status)?t.classList.remove("hidden"):t.classList.add("hidden")})}getStatus(){return this.status}updateDOM(e){const t=this.querySelector(".mealz-recipe-card-cta");t&&(t.classList.remove("hidden"),e?(t.classList.replace("primary","secondary"),t.classList.add("in-basket")):(t.classList.replace("secondary","primary"),t.classList.remove("in-basket")))}};l=S([f("mealz-recipe-card-cta")],l);customElements.get("mealz-recipe-card-cta")||customElements.define("mealz-recipe-card-cta",l);
|