mealz-components 2.0.0-beta.5 → 2.0.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/query-BApjzB0v.js +9 -0
- package/dist/assets/{store-locator-m8sx3XDc.js → store-locator-Crx8huGH.js} +4 -12
- package/dist/catalog/basket-preview/basket-preview.min.js +8 -8
- package/dist/catalog/my-meals-button/my-meals-button.min.js +1 -1
- package/dist/drawer-view-swapper/drawer-view-swapper.min.js +4 -4
- package/dist/modal/modal.min.js +4 -4
- package/dist/onboarding/onboarding.css +1 -0
- package/dist/onboarding/onboarding.min.js +41 -0
- package/dist/planner/planner-current-menu/planner-current-menu.css +1 -1
- package/dist/planner/planner-current-menu/planner-current-menu.min.js +1 -1
- package/dist/planner/planner-dashboard/planner-dashboard.css +1 -1
- package/dist/planner/planner-dashboard/planner-dashboard.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 -0
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.css +1 -0
- package/dist/planner/planner-onboarding-modal/planner-onboarding-modal.min.js +53 -0
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.css +1 -0
- package/dist/planner/planner-welcome-modal/planner-welcome-modal.min.js +17 -0
- package/dist/recipe-card/recipe-card.min.js +1 -1
- package/dist/recipe-details/recipe-details.min.js +29 -29
- package/dist/recipe-pricing/recipe-pricing.min.js +1 -1
- package/dist/slider-tabs/slider-tabs.min.js +1 -1
- package/dist/store-indicator/store-indicator.min.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../planner-form/planner-form.min.js";import"../to-basket-loader/to-basket-loader.min.js";import{M as h}from"../planner-abandon-modal/planner-abandon-modal.min.js";import{N as p,m as o}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as M}from"../../assets/custom-element-BhZVzxrc.js";import{t as c}from"../../assets/take-DO4w5a1Y.js";import"../../assets/property-leIVgCvV.js";import"../planner-current-menu-modal/planner-current-menu-modal.min.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-CmALAWuN.js";import"../../assets/switchMap-D8q0hRYH.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/state-CccUMzBZ.js";var f=Object.getOwnPropertyDescriptor,y=(e,t,n
|
|
1
|
+
import"../planner-form/planner-form.min.js";import"../to-basket-loader/to-basket-loader.min.js";import{M as h}from"../planner-abandon-modal/planner-abandon-modal.min.js";import{N as p,m as o}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as M}from"../../assets/custom-element-BhZVzxrc.js";import{t as c}from"../../assets/take-DO4w5a1Y.js";import"../../assets/property-leIVgCvV.js";import"../planner-current-menu-modal/planner-current-menu-modal.min.js";import"../../modal/modal.min.js";import"../../assets/unsafe-html-CmALAWuN.js";import"../../assets/switchMap-D8q0hRYH.js";import"../../assets/innerFrom-CfKCbnvr.js";import"../../assets/OperatorSubscriber-EGuECN6g.js";import"../../assets/empty-Cv-4tfKR.js";import"../../assets/state-CccUMzBZ.js";var f=Object.getOwnPropertyDescriptor,y=(e,t,s,n)=>{for(var i=n>1?void 0:n?f(t,s):t,r=e.length-1,a;r>=0;r--)(a=e[r])&&(i=a(i)||i);return i};let d=class extends p{constructor(){super(...arguments),this.menuId="",this.isCustomMenu=!1,this.guests=4,this.recipeIds=[],this.recipeImgs=[],this.analyticsPath="/meals-planner/dashboard",this.isRedirecting=!1}get selectors(){return{cancelMenuButton:".mealz-planner-menu-option__cancel",menuOption:".mealz-planner-menu-option__container"}}connectedCallback(){super.connectedCallback(),this.initSelectors(),this.addEventListeners()}render(){var u;const e=(u=this.attributes["starting-data"])==null?void 0:u.value;if(!e)return;const{isCustomMenu:t,guestsPreference:s,storeId:n,hasCustomRecipes:i,menuId:r,recipesId:a,currentMenuPageUrl:l,recipeImgs:m}=JSON.parse(e);this.isCustomMenu=t,this.storeId=n,this.hasCustomRecipes=i,this.menuId=r,this.currentMenuPageUrl=l,this.recipeImgs=m||[],a&&(this.recipeIds=a),s&&(this.guests=s),this.removeAttribute("starting-data")}addEventListeners(){this.addClickListener("cancelMenuButton",()=>this.cancelMenu()),this.addClickListener("menuOption",()=>this.navigateToMenuOrShowForm())}navigateToMenuOrShowForm(){o.hook.hookCallback().subscribe(e=>{e&&(localStorage.setItem("_miam/isCustomMenu",this.isCustomMenu.toString()),!this.isCustomMenu||this.recipeIds.length===0?this.displayPlannerForm():this.redirectToMenu())})}displayPlannerForm(){const e=document.querySelector(".mealz-planner-dashboard");e&&(e.style.display="none");let t=document.querySelector("mealz-planner-form");t||(t=document.createElement("mealz-planner-form"),t.guests=this.guests,t.isCustomMenu=this.isCustomMenu,t.hideBudget=!this.isCustomMenu||!this.storeId,t.currentMenuModal=!this.isCustomMenu&&this.hasCustomRecipes,t.menuId=this.menuId,t.addEventListener("displayDashboard",()=>this.displayDashboard()),t.addEventListener("generateMenu",s=>this.generateMenu(s)),e?e.insertAdjacentElement("afterend",t):document.body.appendChild(t))}generateMenu(e){if(this.recipeIds.length===0){this.redirectToMenu();return}this.displayAddToBasketLoaderView(e.detail.guests)}displayAddToBasketLoaderView(e){this.hideUIElements(),this.setupBasketLoader(e)}hideUIElements(){const e=document.querySelector(".mealz-planner-dashboard");e&&(e.style.display="none");const t=document.querySelector("mealz-planner-form");t&&(t.style.display="none")}setupBasketLoader(e){if(this.loaderToBasketElement=document.querySelector("mealz-to-basket-loader"),!this.loaderToBasketElement){this.loaderToBasketElement=document.createElement("mealz-to-basket-loader"),this.loaderToBasketElement.recipeImgs=this.recipeImgs,this.setupSynchronization(this.loaderToBasketElement,e);const t=document.querySelector("mealz-planner-form");t?t.insertAdjacentElement("afterend",this.loaderToBasketElement):document.body.appendChild(this.loaderToBasketElement)}}setupSynchronization(e,t){let s=!1,n=!1;const i=()=>{s&&n&&this.redirectToMenu()};e.addEventListener("basketComplete",()=>{s=!0,i()}),this.addRecipesSequentially(0,t,()=>{n=!0,i()})}addRecipesSequentially(e,t,s){var r,a;if(e>=this.recipeIds.length){s&&s();return}const n=(a=(r=o.recipes)==null?void 0:r.productsPlannerByCategory$)==null?void 0:a.value,i=(n==null?void 0:n.toPickProducts)||[];o.planner.addRecipeToMenu(this.recipeIds[e],t,!!o.pos.currentPos().value,i).pipe(c(1)).subscribe({next:()=>{this.recipeAddedEvent(this.recipeIds[e]),this.addRecipesSequentially(e+1,t,s)},error:l=>{console.error("Error adding recipe to menu:",l),this.addRecipesSequentially(e+1,t,s)}})}redirectToMenu(){if(this.isRedirecting)return;this.isRedirecting=!0,this.loaderToBasketElement&&this.loaderToBasketElement.remove(),this.sendRedirectToMenuEvent();const e=this.currentMenuPageUrl;e&&e!==window.location.href&&(window.location.href=e)}sendRedirectToMenuEvent(){const e=new CustomEvent("redirectToMenu",{bubbles:!0,composed:!0,detail:{url:this.currentMenuPageUrl}});this.dispatchEvent(e)}displayDashboard(){const e=document.querySelector(".mealz-planner-dashboard");e&&(e.style.display="block")}cancelMenu(){const e=new h;e.addEventListener("resetMenu",()=>this.resetMenu()),e.displayPlannerAbandonModal()}resetMenu(){const e=o.planner.deleteMenu(this.menuId);this.resetMenuEvent(),e.pipe(c(1)).subscribe(()=>{window.location.reload()})}resetMenuEvent(){o.analytics.sendEvent("planner.reset",this.analyticsPath,{})}recipeAddedEvent(e){o.analytics.sendEvent("planner.recipe.add",this.analyticsPath,{recipe_id:e})}};d=y([M("mealz-planner-menu-option")],d);customElements.get("mealz-planner-menu-option")||customElements.define("mealz-planner-menu-option",d);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as p}from"../../assets/custom-element-BhZVzxrc.js";import{n as l}from"../../assets/property-leIVgCvV.js";import{r as m}from"../../assets/state-CccUMzBZ.js";import{M as c}from"../../onboarding/onboarding.min.js";import{N as g}from"../../assets/no-shadow-element-l9trQfcI.js";import"../../assets/query-BApjzB0v.js";var d=Object.defineProperty,b=Object.getOwnPropertyDescriptor,s=(e,t,n,i)=>{for(var o=i>1?void 0:i?b(t,n):t,a=e.length-1,u;a>=0;a--)(u=e[a])&&(o=(i?u(t,n,o):u(o))||o);return i&&o&&d(t,n,o),o};const v={custom:{type:"custom",steps:[{element:".mealz-planner-current-menu__menu-top",popover:{title:"Retrouvez votre menu ici",description:"Toutes les recettes que vous sélectionnerez et l'accès au catalogue de recettes seront visibles ici.",overElement:".mealz-planner-current-menu__meal-extras",spacerTop:16,spacerLeft:16}},{element:".mealz-planner-recipe-suggestion",popover:{title:"Inspirez-vous avec nos suggestions",description:"Visualisez notre proposition de recette rien que pour vous ici.<br>Cliquez dessus pour en voir les détails.",overElement:".mealz-planner-current-menu__meal-extras",spacerTop:16,spacerLeft:16}},{element:".mealz-planner-recipe-suggestion__actions-add-button",popover:{title:"Cette recette vous plaît ?",description:'Ajoutez-la en 1 clic à votre menu grâce au bouton <b>"Ajouter au menu"</b>. ',overElement:".mealz-planner-current-menu__meal-extras",spacerTop:16,spacerLeft:16}},{element:".mealz-planner-recipe-suggestion__actions-swap-button",popover:{title:"Cette recette ne vous plaît pas ?",description:'Cliquez sur <b>"Autre suggestion"</b> pour découvrir une nouvelle suggestion, ou sélectionnez la recette de votre choix en explorant notre catalogue',overElement:".mealz-planner-current-menu__meal-extras",spacerTop:16,spacerLeft:16}}],localStorageKey:"_miam/customMenuOnboarding",showProgress:!0},"custom-mobile":{type:"custom-mobile",steps:[{element:".mealz-planner-current-menu__mobile-menu-button img",popover:{title:"Retrouvez votre menu ici",description:"Toutes les recettes que vous sélectionnerez et l'accès au catalogue de recettes seront visibles ici.",overElement:".mealz-planner-recipe-suggestion__content",spacerTop:89}},{element:".mealz-planner-recipe-suggestion",popover:{title:"Inspirez-vous avec nos suggestions",description:"Visualisez notre proposition de recette rien que pour vous ici.<br>Cliquez dessus pour en voir les détails.",overElement:".mealz-planner-recipe-suggestion__content",spacerTop:89}},{element:".mealz-planner-recipe-suggestion__actions-add-button",popover:{title:"Cette recette vous plaît ?",description:'Ajoutez-la en 1 clic à votre menu grâce au bouton <b>"Ajouter au menu"</b>.',overElement:".mealz-planner-recipe-suggestion__content",spacerTop:89}},{element:".mealz-planner-recipe-suggestion__actions-swap-button",popover:{title:"Cette recette ne vous plaît pas ?",description:'Cliquez sur <b>"Autre suggestion"</b> pour découvrir une nouvelle suggestion, ou sélectionnez la recette de votre choix en explorant notre catalogue',overElement:".mealz-planner-recipe-suggestion__content",spacerTop:89}}],localStorageKey:"_miam/customMenuOnboarding",showProgress:!0},suggestion:{type:"suggestion",steps:[{element:".mealz-planner-current-menu__menu-top",popover:{title:"Retrouvez votre menu ici",description:"Toutes les recettes que vous sélectionnerez et l'accès au catalogue de recettes seront visibles ici."}},{element:".mealz-planner-recipe-suggestion",popover:{title:"Inspirez-vous avec nos suggestions",description:"Visualisez notre proposition de recette rien que pour vous ici.<br>Cliquez dessus pour en voir les détails."}}],localStorageKey:"_miam/suggestionOnboarding",showProgress:!0},"suggestion-mobile":{type:"suggestion-mobile",steps:[{element:".mealz-planner-current-menu__menu-top",popover:{title:"Retrouvez votre menu ici",description:"Toutes les recettes que vous sélectionnerez et l'accès au catalogue de recettes seront visibles ici."}},{element:".mealz-planner-recipe-card",popover:{title:"Vos recettes en un coup d’œil",description:"Consultez le détail d’une recette ou retirez-la de votre menu en un clic."}}],localStorageKey:"_miam/suggestionOnboarding",showProgress:!0,bottomMargin:0},guide:{type:"guide",steps:[{element:".mealz-planner-current-menu__onboarding-button",popover:{title:"Besoin d'aide ?",description:"Retrouvez à tout moment notre guide en quelques étapes simples."}}],localStorageKey:"_miam/guideOnboarding",showProgress:!1,bottomMargin:0},"guide-mobile":{type:"guide-mobile",steps:[{element:".mealz-planner-current-menu__mobile-onboarding-button",popover:{title:"Besoin d'aide ?",description:"Retrouvez à tout moment notre guide en quelques étapes simples."}}],localStorageKey:"_miam/guideOnboarding",showProgress:!1,bottomMargin:0},"recipe-details":{type:"recipe-details",steps:[{element:"mealz-product-card-planner:first-of-type .mealz-product-card-planner__checkbox input",popover:{title:"Personnalisez votre recette",description:"Vous avez déjà certains produits ? Désélectionnez-les pour qu’ils ne soient pas ajoutés à votre panier.<br>Les produits sélectionnés seront eux ajoutés automatiquement au panier."}}],localStorageKey:"_miam/recipeDetailsOnboarding",showProgress:!1,bottomMargin:0},"menu-to-basket":{type:"menu-to-basket",steps:[{element:".mealz-planner-current-menu__footer-button:not(.disabled)",popover:{title:"Votre menu est terminé ?",description:'Quand votre menu sera terminé, utiliser le bouton <b>"Mettre le menu au panier"</b> pour mettre les produits de toutes les recettes dans votre panier.',overElement:".mealz-planner-current-menu__meal-extras",spacerTop:16,spacerLeft:16}}],localStorageKey:"_miam/menuToBasketOnboarding",showProgress:!1},"menu-to-basket-mobile":{type:"menu-to-basket",steps:[{element:".mealz-planner-current-menu__footer-button:not(.disabled)",popover:{title:"Votre menu est terminé ?",description:'Quand votre menu sera terminé, utiliser le bouton <b>"Mettre le menu au panier"</b> pour mettre les produits de toutes les recettes dans votre panier.',overElement:".mealz-planner-current-menu__footer",spacerLeft:0,spacerTop:-272}}],localStorageKey:"_miam/menuToBasketOnboarding",showProgress:!1}};let r=class extends g{constructor(){super(...arguments),this.isCustomMenu=!1,this.type="custom",this.isMobile=window.innerWidth<=768,this.onboardingComponent=null}connectedCallback(){super.connectedCallback(),this.initOnboarding()}initOnboarding(){this.onboardingComponent||(this.onboardingComponent=new c(v),this.appendChild(this.onboardingComponent),this.listenToOnboardingClosed()),this.updateOnboardingConfig()}listenToOnboardingClosed(){var e;(e=this.onboardingComponent)==null||e.addEventListener("onboarding-closed",()=>{var t,n;(t=this.onboardingComponent)==null||t.markOnboardingAsSeen(this.type),(this.type==="custom"||this.type==="suggestion"||this.type==="custom-mobile"||this.type==="suggestion-mobile")&&!((n=this.onboardingComponent)!=null&&n.hasSeenOnboarding("guide"))?this.openGuideOnboarding():this.remove()})}updateOnboardingConfig(){if(!this.onboardingComponent)return;const e=this.onboardingComponent.getConfig(this.type);this.onboardingComponent.steps=e.steps,this.onboardingComponent.showProgress=e.showProgress??!0;let t=e.bottomMargin??110;t===0&&!this.isMobile&&(t=24),this.onboardingComponent.bottomMargin=t}openGuideOnboarding(){this.type=this.isMobile?"guide-mobile":"guide",setTimeout(()=>{this.onboardingComponent&&(this.updateOnboardingConfig(),this.launchOnboardingTour())},300)}startTour(){this.onboardingComponent||this.initOnboarding(),this.launchOnboardingTour()}launchOnboardingTour(){this.onboardingComponent&&(this.updateOnboardingConfig(),this.onboardingComponent.startOnboardingTour())}startOnboardingByType(e){this.type=e,this.onboardingComponent||this.initOnboarding(),this.launchOnboardingTour()}disconnectedCallback(){super.disconnectedCallback(),this.onboardingComponent&&(this.onboardingComponent.remove(),this.onboardingComponent=null)}};s([l({type:Boolean})],r.prototype,"isCustomMenu",2);s([l({type:String})],r.prototype,"type",2);s([m()],r.prototype,"isMobile",2);r=s([p("mealz-planner-onboarding")],r);export{r as M};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.mealz-modal{height:680px;max-width:600px;max-height:100%;padding:0;z-index:calc(var(--m-z-index-modal) + 2)}.mealz-modal .mealz-modal__header{padding:24px}.mealz-modal .mealz-modal__content-container{padding-top:0;height:calc(100% - 80px);box-sizing:border-box}@media (max-width: 768px){.mealz-modal{height:740px;width:100%;max-width:unset;top:unset;left:0;bottom:0;right:0;border-radius:16px 16px 0 0;transform:none}}.mealz-planner-onboarding-modal{display:flex;flex-direction:column;height:100%}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body{display:flex;flex-direction:column;justify-content:space-between;align-items:center;flex:1;padding:0 24px;overflow:scroll}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__img{width:100%;height:auto;margin-bottom:16px;max-width:552px}@media (max-width: 768px){.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__img{max-width:343px}}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__title{margin-bottom:4px;text-align:center}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__text{text-align:center}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__text span{display:inline;padding:0 4px 0 0}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__text .mealz-planner-onboarding-modal__bold{font-weight:700}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__content .mealz-planner-onboarding-modal__text .mealz-planner-onboarding-modal__bold:last-of-type{color:var(--mealz-ds-color-primary)}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__track{display:flex;justify-content:center;width:100%;margin-top:24px}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__track>*:not(:last-child){margin-right:8px}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__track .mealz-planner-onboarding-modal__indicator{width:32px;height:8px;border-radius:50px;background-color:var(--mealz-ds-color-primary, #24748F);opacity:.4;transition:all .3s ease-in-out}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body .mealz-planner-onboarding-modal__track .mealz-planner-onboarding-modal__indicator.active{width:80px;height:8px;opacity:1}@media (max-width: 768px){.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__body{padding:0 16px}}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons{display:flex;justify-content:center;width:100%;margin-bottom:16px;margin-top:24px}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons>*:not(:last-child){margin-right:8px}@media (max-width: 768px){.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons{flex-direction:column-reverse;padding:0 16px}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons>*:not(:last-child){margin-right:0}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons>*:not(:first-child){margin-bottom:8px}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons .mealz-planner-onboarding-modal__previous,.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__navigation-buttons .mealz-planner-onboarding-modal__next{width:100%;flex:1}}.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__previous.hidden,.mealz-planner-onboarding-modal .mealz-planner-onboarding-modal__next.hidden{display:none}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import{N as g,k as e}from"../../assets/no-shadow-element-l9trQfcI.js";import{t as d}from"../../assets/custom-element-BhZVzxrc.js";import{r as m}from"../../assets/state-CccUMzBZ.js";import"../../assets/property-leIVgCvV.js";var c=Object.defineProperty,u=Object.getOwnPropertyDescriptor,p=(s,t,a,o)=>{for(var n=o>1?void 0:o?u(t,a):t,r=s.length-1,l;r>=0;r--)(l=s[r])&&(n=(o?l(t,a,n):l(n))||n);return o&&n&&c(t,a,n),n};let i=class extends g{constructor(){super(),this.step=1,this.isMobile=window.innerWidth<=768,this.steps=[{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step1.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step1-mobile.png",title:"Retrouvez votre menu",content:"Toutes les recettes que vous sélectionnerez et l'accès au catalogue de recettes seront visibles ici."},{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step2.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step2-mobile.png",title:"Inspirez-vous avec nos suggestions",content:e`Visualisez notre proposition de recette rien que pour vous ici.<br>Cliquez dessus pour en voir les détails.`},{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step3.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step3-mobile.png",title:"Une recette vous plaît ?",content:e`
|
|
2
|
+
Ajoutez-la en 1 clic à votre menu grâce au bouton
|
|
3
|
+
<span class="mealz-ds-text weight-xl">"Ajouter au menu"</span>.
|
|
4
|
+
`},{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step4.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step4-mobile.png",title:"Une recette ne vous plaît pas ?",content:e`
|
|
5
|
+
Cliquez sur
|
|
6
|
+
<span class="mealz-ds-text weight-xl">"Autre suggestion"</span>
|
|
7
|
+
pour découvrir une nouvelle suggestion, ou sélectionnez la recette de votre choix en explorant notre catalogue.
|
|
8
|
+
`},{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step5.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step5-mobile.png",title:"Personnalisez votre recette",content:e`
|
|
9
|
+
Vous avez déjà certains produits ?<br>
|
|
10
|
+
Désélectionnez-les pour qu’ils ne soient pas ajoutés à votre panier.<br>
|
|
11
|
+
Les produits sélectionnés seront eux ajoutés automatiquement au panier.`},{imgDesktop:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step6.png",imgMobile:"https://storage.googleapis.com/assets.miam.tech/generic/meals-planner/onboarding/planner-onboarding-step6-mobile.png",title:"Votre menu est terminé ?",content:e`
|
|
12
|
+
Quand votre menu sera terminé, utilisez le bouton
|
|
13
|
+
<span class="mealz-ds-text weight-xl">"Mettre le menu au panier"</span>
|
|
14
|
+
pour mettre les produits de toutes les recettes dans votre panier.
|
|
15
|
+
`}],this.styleURL=new URL("./planner/planner-onboarding-modal/planner-onboarding-modal.css",this.getBaseURL()),this.boundHandleResize=this.handleResize.bind(this)}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.boundHandleResize)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.boundHandleResize)}handleResize(){this.isMobile=window.innerWidth<=768}render(){const{imgDesktop:s,imgMobile:t,title:a,content:o}=this.steps[this.step-1],n=this.isMobile?t:s;return e`
|
|
16
|
+
<div class="mealz-planner-onboarding-modal">
|
|
17
|
+
<div class="mealz-planner-onboarding-modal__body">
|
|
18
|
+
<div class="mealz-planner-onboarding-modal__content step${this.step}">
|
|
19
|
+
<img class="mealz-planner-onboarding-modal__img" src="${n}">
|
|
20
|
+
<span class="mealz-planner-onboarding-modal__title mealz-ds-text size-m weight-xxl">
|
|
21
|
+
${a}
|
|
22
|
+
</span>
|
|
23
|
+
<span class="mealz-planner-onboarding-modal__text mealz-ds-text size-m">
|
|
24
|
+
${o}
|
|
25
|
+
</span>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="mealz-planner-onboarding-modal__track">
|
|
28
|
+
${this.renderStepIndicators()}
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
${this.renderNavigationButtons()}
|
|
32
|
+
</div>
|
|
33
|
+
`}renderStepIndicators(){return this.steps.map((s,t)=>e`
|
|
34
|
+
<div class="mealz-planner-onboarding-modal__indicator ${this.step===t+1?"active":""}"></div>
|
|
35
|
+
`)}renderNavigationButtons(){const s=this.step===this.steps.length;return e`
|
|
36
|
+
<div class="mealz-planner-onboarding-modal__navigation-buttons">
|
|
37
|
+
<button @click="${()=>this.previousStep()}"
|
|
38
|
+
class="mealz-planner-onboarding-modal__previous mealz-ds-button ${this.step===1?"hidden":""}">
|
|
39
|
+
<span class="mealz-ds-text size-s weight-xl">Précédent </span>
|
|
40
|
+
</button>
|
|
41
|
+
${s?e`
|
|
42
|
+
<button @click="${()=>this.closeModal()}"
|
|
43
|
+
class="mealz-planner-onboarding-modal__next mealz-ds-button primary">
|
|
44
|
+
<span class="mealz-ds-text size-s weight-xl">J'ai compris</span>
|
|
45
|
+
</button>
|
|
46
|
+
`:e`
|
|
47
|
+
<button @click="${()=>this.nextStep()}"
|
|
48
|
+
class="mealz-planner-onboarding-modal__next mealz-ds-button primary">
|
|
49
|
+
<span class="mealz-ds-text size-s weight-xl">Suivant</span>
|
|
50
|
+
</button>
|
|
51
|
+
`}
|
|
52
|
+
</div>
|
|
53
|
+
`}previousStep(){this.step=Math.max(this.step-1,1)}nextStep(){this.step=Math.min(this.step+1,this.steps.length)}closeModal(){this.dispatchEvent(new CustomEvent("onboardingConfirmed",{bubbles:!0,composed:!0}))}};p([m()],i.prototype,"step",2);p([m()],i.prototype,"isMobile",2);i=p([d("mealz-planner-onboarding-modal")],i);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
mealz-planner-welcome-modal .mealz-modal{width:480px}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container{padding-top:0}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__description{display:flex;flex-direction:column;margin:24px 0;gap:12px}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container{width:100%;display:flex;justify-content:center;margin-top:24px}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container>*:not(:last-child){margin-right:8px}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container .mealz-planner-welcome-modal__refuse-button,mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container .mealz-planner-welcome-modal__start-button{padding:12px 20px}@media (max-width: 600px){mealz-planner-welcome-modal .mealz-modal{width:unset}}@media (max-width: 768px){mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container{flex-direction:column-reverse}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container>*:not(:first-child){margin-bottom:8px}mealz-planner-welcome-modal .mealz-modal .mealz-modal__content-container .mealz-planner-welcome-modal__button-container>*:not(:last-child){margin-right:0}}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import{N as d,k as r}from"../../assets/no-shadow-element-l9trQfcI.js";import{M as p}from"../../modal/modal.min.js";import{t as c}from"../../assets/custom-element-BhZVzxrc.js";import{n as u}from"../../assets/property-leIVgCvV.js";import"../../assets/unsafe-html-CmALAWuN.js";var v=Object.defineProperty,h=Object.getOwnPropertyDescriptor,m=(e,o,t,s)=>{for(var n=s>1?void 0:s?h(o,t):o,a=e.length-1,l;a>=0;a--)(l=e[a])&&(n=(s?l(o,t,n):l(n))||n);return s&&n&&v(o,t,n),n};let i=class extends d{constructor(){super(),this.isCustomMenu=!1,this.styleURL=new URL("./planner/planner-welcome-modal/planner-welcome-modal.css",this.getBaseURL())}displayPlannerWelcomeModal(){const e=new p;document.body.appendChild(this);const o=this.isCustomMenu?"Bienvenue dans votre premier menu personnalisé":"Bienvenue dans votre première sélection du moment";e.titleSlot=r`<span>${o}</span>`,e.contentSlot=this.renderModal(),this.appendChild(e),e.addEventListener("modalClosed",()=>this.openGuideModal())}openGuideModal(){const e=new CustomEvent("onboarding-skipped");this.dispatchEvent(e),this.remove()}startOnboardingTour(){const e=new CustomEvent("openOnboarding",{detail:{isCustomMenu:this.isCustomMenu}});this.dispatchEvent(e),this.remove()}renderModal(){const e=this.isCustomMenu?"Découvrez comment composer facilement votre menu selon vos envies.":"Découvrez le menu de la semaine que nous avons composé pour vous.";return r`
|
|
2
|
+
<div class="mealz-planner-welcome-modal__content">
|
|
3
|
+
<div class="mealz-planner-welcome-modal__description mealz-ds-text size-m">
|
|
4
|
+
<span>${e}</span>
|
|
5
|
+
</div>
|
|
6
|
+
<div class="mealz-planner-welcome-modal__button-container">
|
|
7
|
+
<button @click=${()=>this.openGuideModal()}
|
|
8
|
+
class="mealz-ds-button ghost mealz-planner-welcome-modal__refuse-button">
|
|
9
|
+
<span class="mealz-ds-text size-s weight-xl">Passer le guide</span>
|
|
10
|
+
</button>
|
|
11
|
+
<button @click=${()=>this.startOnboardingTour()}
|
|
12
|
+
class="mealz-ds-button primary mealz-planner-welcome-modal__start-button">
|
|
13
|
+
<span class="mealz-ds-text size-s weight-xl">Commencer</span>
|
|
14
|
+
</button>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
`}};m([u({type:Boolean})],i.prototype,"isCustomMenu",2);i=m([c("mealz-planner-welcome-modal")],i);export{i as M};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as
|
|
1
|
+
import{N as w,m as n}from"../assets/no-shadow-element-l9trQfcI.js";import{V as m}from"../assets/viewport-listener-RTCBatPv.js";import{t as v}from"../assets/custom-element-BhZVzxrc.js";import{h as y}from"../assets/session-handler-BnuvphmJ.js";import{f as d}from"../assets/filter-CEeE8t7I.js";import{s as b}from"../assets/switchMap-D8q0hRYH.js";import{c as L}from"../assets/combineLatest-P4GAEtOW.js";import{t as l}from"../assets/take-DO4w5a1Y.js";import"../assets/debounceTime-Bo5F3ux-.js";import"../assets/async-D3oCs_PQ.js";import"../assets/OperatorSubscriber-EGuECN6g.js";import"../assets/innerFrom-CfKCbnvr.js";import"../assets/from-jBe2xW5a.js";import"../assets/executeSchedule-DfyZaGAH.js";import"../assets/mapOneOrManyArgs-DNd_tswl.js";import"../assets/map-C4rf5Jbc.js";import"../assets/empty-Cv-4tfKR.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(e,i,s){const r=Date.now(),a=!this.trackedRecipes.get(e),p=this.hasScrolled;!a&&!p||(this.trackedRecipes.size>=this.MAX_RECIPES&&this.cleanOldRecipes(),this.trackedRecipes.set(e,r),window.mealzInternal.analytics.sendEvent("recipe.show",i,{recipe_id:e,category_id:s}))}cleanOldRecipes(){const i=Date.now()-3600*1e3;for(const[s,r]of this.trackedRecipes.entries())r<i&&this.trackedRecipes.delete(s)}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 e;this.scrollListener=()=>{this.hasScrolled=!0,clearTimeout(e),e=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 C=Object.getOwnPropertyDescriptor,P=(t,e,i,s)=>{for(var r=s>1?void 0:s?C(e,i):e,c=t.length-1,a;c>=0;c--)(a=t[c])&&(r=a(r)||r);return r};let g=class extends w{constructor(){super(...arguments),this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.getInitialStatus(),this.listenInView(),this.setupSubscriptions()}setupSubscriptions(){this.subscriptions.push(n.basket.recipePricesInBasket$().subscribe(t=>{const e=t.find(i=>i.id===this.recipeId);e?(this.inBasket=!0,this.updatedRecipeId=e.id,this.updateDOM()):this.inBasket=!1}),this.setupPlannerMenuSubscription(),this.setupGuestUpdatesSubscription())}setupPlannerMenuSubscription(){return n.planner.menuPrice$.pipe(d(()=>this.planner&&!!this.recipeId),b(()=>L([n.planner.isRecipeInMenu$(this.recipeId).pipe(l(1)),n.planner.getGuestsForRecipe(this.recipeId).pipe(l(1))])),d(([t,e])=>t&&typeof e=="number"&&e>0)).subscribe(([t,e])=>{this.guests=e,this.updateGuestDisplay()})}setupGuestUpdatesSubscription(){return n.recipes.guestsUpdated().pipe(d(()=>!!this.recipeId)).subscribe(({guests:t,recipeId:e})=>{e===this.recipeId&&this.inBasket&&(this.guests=t,this.updateGuestDisplay(),this.recipePricing&&this.recipePricing.fetchPrice(this.posId,this.guests,this.recipeId))})}disconnectedCallback(){var e,i;super.disconnectedCallback(),this.subscriptions.forEach(s=>s.unsubscribe()),(e=this.priceViewportObserver)==null||e.disconnect(),(i=this.analyticsViewportObserver)==null||i.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.priceViewportObserver=new m(this,()=>{this.handleIntersection()}),this.analyticsViewportObserver=new m(this,()=>{this.sendAnalyticsShow()},{threshold:.8,debounce:1e3})}handleIntersection(){this.recipePricing=this.querySelector("mealz-recipe-pricing"),this.recipePricing&&(this.recipePricing.fetchPrice(this.posId,this.guests,this.recipeId),this.priceViewportObserver.disconnect())}getInitialStatus(){var h;const t=(h=this.attributes["starting-data"])==null?void 0:h.value;if(!t){this.inBasket=!1;return}const{id:e,guests:i,posId:s,path:r,categoryId:c,initialTabIndex:a,planner:p,sessionId:S,recipe:f,inBasket:I}=JSON.parse(t);if(this.posId=s,this.recipeId=e,this.analyticsPath=r,this.categoryId=c,this.guests=i,this.initialTabIndex=a,this.planner=p,this.recipe=f,this.inBasket=I||!1,y(S),!i){this.guests=this.getGuests();const u=this.querySelector(".mealz-recipe-card__counter p");u&&(u.innerHTML=this.guests.toString())}this.removeAttribute("starting-data")}openDetails(){n.recipes.openDetails(this.recipeId,this.guests,this.initialTabIndex,this.analyticsPath,this.planner,this.categoryId)}recipeCardCtaClick(){this.planner?this.handleCTAClickForPlanner():this.openDetails()}getGuests(){const t=localStorage.getItem("_miam/preferences/guests");if(t){const e=+t;if(!isNaN(e)&&e>0&&e<=30)return e}return 4}handleCTAClickForPlanner(){const t=this.querySelector("mealz-recipe-card-cta");if(!t)return;const e=t.getStatus();e==="add"?(this.showAddingToMenuState(t),this.addRecipeToMenu()):e==="in-menu"&&(this.showRemovingFromMenuState(t),this.removeRecipeFromMenu())}addRecipeToMenu(){var s,r;const t=document.querySelector("mealz-planner-recipe-suggestion"),e=(t==null?void 0:t.guests)||this.guests;t.recipeId=this.recipeId;const i=document.querySelector("mealz-planner-current-menu");if(!i){const c=(r=(s=n.recipes)==null?void 0:s.productsPlannerByCategory$)==null?void 0:r.value,a=(c==null?void 0:c.toPickProducts)||[];n.planner.addRecipeToMenu(this.recipeId,e,!!n.pos.currentPos().value,a).pipe(l(1)).subscribe(()=>{this.removeRecipeCardLoader("add");const p=document.querySelector("mealz-planner-recipe-list");p==null||p.addRecipeCardToList(this.recipeId)});return}i.addRecipe(this.recipeId,e).subscribe(()=>{this.removeRecipeCardLoader("add"),t.addAndSelectNewSuggestion(this.recipe)})}removeRecipeFromMenu(){const t=document.querySelector("mealz-planner-recipe-suggestion");if(!t){n.planner.removeRecipeFromMenu(this.recipeId).pipe(l(1)).subscribe(()=>this.removeRecipeCardLoader("remove"));return}t.removeRecipe(this.recipeId).subscribe(()=>this.removeRecipeCardLoader("remove"))}showRemovingFromMenuState(t){const e=this.querySelector(".mealz-recipe-card-cta__loader"),i=t.querySelector("img.in-menu");e==null||e.classList.remove("hidden"),i==null||i.classList.add("hidden")}removeRecipeCardLoader(t){const e=this.querySelector("mealz-recipe-card-cta");if(!e)return;const i=this.querySelector(".mealz-recipe-card-cta"),s=this.querySelector(".mealz-recipe-card-cta__loader"),r=e.querySelector("img.add"),c=e.querySelector("img.in-menu");t==="add"?(s==null||s.classList.add("hidden"),i==null||i.classList.replace("primary","secondary"),c==null||c.classList.remove("hidden"),e.updateStatus("in-menu")):(s==null||s.classList.add("hidden"),i==null||i.classList.replace("secondary","primary"),r==null||r.classList.remove("hidden"),e.updateStatus("add"))}showAddingToMenuState(t){const e=this.querySelector(".mealz-recipe-card-cta__loader"),i=t.querySelector("img.add"),s=t.querySelector("img.in-menu");e==null||e.classList.remove("hidden"),i==null||i.classList.add("hidden"),s==null||s.classList.add("hidden")}updateDOM(){if(this.recipeId!==this.updatedRecipeId)return;const t=this.querySelector(".mealz-recipe-card__counter p");t&&(t.innerHTML=this.guests.toString(),this.updatedRecipeId&&this.guests&&this.recipePricing&&this.recipePricing.fetchPrice(this.posId,this.guests,this.recipeId))}updateGuestDisplay(){const t=this.querySelector(".mealz-recipe-card__counter p");t&&this.guests&&(t.innerHTML=this.guests.toString())}sendAnalyticsShow(){o.getInstance().trackRecipeShow(this.recipeId,this.analyticsPath,this.categoryId)}};g=P([v("mealz-recipe-card")],g);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";import{N as u,m as
|
|
1
|
+
import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";import{N as u,m as r,D as o,k as s}from"../assets/no-shadow-element-l9trQfcI.js";import{t as h}from"../assets/custom-element-BhZVzxrc.js";import{n as p}from"../assets/property-leIVgCvV.js";import{P as B}from"../assets/price-BoM226Kw.js";import{R as A}from"../assets/recipe-BwGs-blm.js";import{m as w}from"../assets/merge-C-u9uFzU.js";import{m as d}from"../assets/map-C4rf5Jbc.js";import{t as P}from"../assets/take-DO4w5a1Y.js";import{c as D}from"../assets/capitalize-DUAqYmp4.js";import"../counter/counter.min.js";import{G as L}from"../assets/product-card-DqcKyf1c.js";import"../price/price.min.js";import"../assets/promotion-badge-BwN2GpDz.js";import"../store-indicator/store-indicator.min.js";import"../last-order-badge/last-order-badge.min.js";import"../order-again/order-again.min.js";import"../like-button/like-button.min.js";import{L as M}from"../last-order-modal/last-order-modal.min.js";import{a as N}from"../assets/unsafe-html-CmALAWuN.js";import{M as q}from"../planner/planner-onboarding/planner-onboarding.min.js";import{f as I}from"../assets/filter-CEeE8t7I.js";import{t as G}from"../assets/tap-BCGrRktL.js";import{s as T}from"../assets/switchMap-D8q0hRYH.js";import{c as E}from"../assets/combineLatest-P4GAEtOW.js";import"../assets/skipWhile-DuMEda_n.js";import"../assets/OperatorSubscriber-EGuECN6g.js";import"../assets/innerFrom-CfKCbnvr.js";import"../assets/from-jBe2xW5a.js";import"../assets/executeSchedule-DfyZaGAH.js";import"../assets/mapOneOrManyArgs-DNd_tswl.js";import"../assets/of-BTA69Qgj.js";import"../assets/mergeMap-buGewtOo.js";import"../assets/empty-Cv-4tfKR.js";import"../assets/debounceTime-Bo5F3ux-.js";import"../assets/async-D3oCs_PQ.js";import"../assets/delay-ILvLVH1b.js";import"../assets/timer-BOl4bYNY.js";import"../assets/store-locator-Crx8huGH.js";import"../assets/state-CccUMzBZ.js";import"../assets/query-BApjzB0v.js";import"../onboarding/onboarding.min.js";var F=Object.defineProperty,V=Object.getOwnPropertyDescriptor,v=(e,t,a,n)=>{for(var i=n>1?void 0:n?V(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=(n?c(t,a,i):c(i))||i);return n&&i&&F(t,a,i),i};let m=class extends u{constructor(){super(),this.noPosDisplay=!1,this.noSupplier=!1,this.recipeId="",this.plannerMode=!1,this.subscriptions=[],this.remainingBasketEntries=[],this.recipePrice={remaining:0,inBasket:0,total:0,totalPerGuest:0},this.priceService=B.getInstance(),this.allIngredientsToBasketLoading=!1,this.inMenu=!1,this.menuUpdateLoading=!1,this.styleURL=new URL("./recipe-details/details-footer/details-footer.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.priceService.initFormatter(),this.analyticsPath=`/recipes/${this.recipeId}/shopping`,this.subscriptions.push(w(r.recipes.remainingBasketEntries$.pipe(d(e=>{this.remainingBasketEntries=e})),r.recipes.recipePrice$.pipe(d(e=>{const t=e.remaining+e.inBasket;this.recipePrice={...e,total:t,totalPerGuest:0}})),r.recipes.allIngredientsToBasketLoading$.pipe(d(e=>{this.allIngredientsToBasketLoading=e})),r.recipes.ingredientToBasketLoading$.pipe(d(e=>{this.ingredientToBasketLoading=e})),r.recipes.updateIngredientFromBasketLoading$.pipe(d(e=>{this.updateIngredientFromBasketLoading=e})),r.recipes.productsLoading$.pipe(d(e=>{this.productsLoading=e})),r.planner.isRecipeInMenu$(this.recipeId).pipe(d(e=>this.inMenu=e)),r.planner.plannerRecipePrice$.pipe(d(e=>{this.recipePrice.totalPerGuest=this.guests>0?e/this.guests:e}))).subscribe(()=>this.requestUpdate()))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}closeRecipeDetails(e=!1){r.recipes.displayedRecipe$.next(null),e&&r.basket.basketPreviewState$.next({isOpen:!0,activeTabIndex:r.basket.basketPreviewState$.getValue().activeTabIndex})}continueShopping(){this.closeRecipeDetails(),this.sendContinueEvent()}addToMenu(){var a,n;this.menuUpdateLoading=!0,this.requestUpdate();const e=document.querySelector("mealz-planner-recipe-suggestion");e.recipeId=this.recipeId;const t=document.querySelector("mealz-planner-current-menu");if(!t){const i=(n=(a=r.recipes)==null?void 0:a.productsPlannerByCategory$)==null?void 0:n.value,l=(i==null?void 0:i.toPickProducts)||[];r.planner.addRecipeToMenu(this.recipeId,this.guests,!!r.pos.currentPos().value,l).pipe(P(1)).subscribe(()=>{this.inMenu=!0;const c=document.querySelector("mealz-planner-recipe-list");c==null||c.addRecipeCardToList(this.recipeId),this.menuUpdateLoading=!1,this.requestUpdate()});return}t.addRecipe(this.recipeId,this.guests).subscribe(()=>{this.inMenu=!0,e.addAndSelectNewSuggestion(this.recipe),this.menuUpdateLoading=!1,this.requestUpdate()})}removeFromMenu(){this.menuUpdateLoading=!0,this.requestUpdate();const e=document.querySelector("mealz-planner-recipe-suggestion");if(!e){r.planner.removeRecipeFromMenu(this.recipeId).pipe(P(1)).subscribe(()=>{this.inMenu=!1,this.menuUpdateLoading=!1,this.requestUpdate()});return}e.removeRecipe(this.recipeId).subscribe(()=>{this.inMenu=!1,this.menuUpdateLoading=!1,this.requestUpdate()})}addAllIngredients(){r.recipes.addAllIngredientsToBasket({originPath:this.analyticsPath,props:{}}),this.sendAddAllEvent(),this.recipePrice.inBasket===0&&this.sendAddRecipeEvent()}render(){if(this.noPosDisplay&&!this.plannerMode)return o;const e=this.remainingBasketEntries.length>0&&!this.plannerMode,t=this.plannerMode&&this.noPosDisplay,a=this.plannerMode&&!this.inMenu;return s`
|
|
2
2
|
<div class="mealz-recipe-details__footer">
|
|
3
3
|
${this.productsLoading&&!this.plannerMode?o:s`
|
|
4
4
|
<!-- ADD TO BASKET CTA -->
|
|
5
|
-
${e||t||
|
|
5
|
+
${e||t||a?this.renderAddToBasketButton():s`
|
|
6
6
|
<div class="mealz-recipe-details__recipe-is-in-basket-cta-container">
|
|
7
7
|
${this.renderBasketActions()}
|
|
8
8
|
</div>
|
|
@@ -19,7 +19,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
19
19
|
@click=${()=>this.addToMenu()}
|
|
20
20
|
>
|
|
21
21
|
<span class="mealz-ds-text size-s weight-xl">Ajouter au menu</span>
|
|
22
|
-
<img
|
|
22
|
+
<img src="https://storage.googleapis.com/assets.miam.tech/generic/icons/Pot-add_white.svg" alt="add to menu icon" />
|
|
23
23
|
</button>
|
|
24
24
|
`:s`
|
|
25
25
|
<button
|
|
@@ -91,7 +91,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
91
91
|
${this.plannerMode?"par personne":"dans votre panier"}
|
|
92
92
|
</span>
|
|
93
93
|
</div>
|
|
94
|
-
`}sendAddAllEvent(){
|
|
94
|
+
`}sendAddAllEvent(){r.analytics.sendEvent("entry.add-all",this.analyticsPath,{recipe_id:this.recipeId,entry_count:this.remainingBasketEntries.length})}sendAddRecipeEvent(){r.analytics.sendEvent("recipe.add",this.analyticsPath,{recipe_id:this.recipeId})}sendContinueEvent(){r.analytics.sendEvent("recipe.continue",this.analyticsPath,{recipe_id:this.recipeId})}};v([p({type:Boolean})],m.prototype,"noPosDisplay",2);v([p({type:Boolean})],m.prototype,"noSupplier",2);v([p({type:String})],m.prototype,"recipeId",2);v([p({type:Boolean})],m.prototype,"plannerMode",2);v([p({type:Number})],m.prototype,"guests",2);v([p({type:A})],m.prototype,"recipe",2);m=v([h("mealz-details-footer")],m);customElements.get("mealz-details-footer")||customElements.define("mealz-details-footer",m);var H=Object.getOwnPropertyDescriptor,j=(e,t,a,n)=>{for(var i=n>1?void 0:n?H(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let C=class extends u{constructor(){super(),this.tags=[],this.displayTags=!1,this.subscriptions=[],this.styleURL=new URL("./recipe-details/details-infos/details-infos.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(r.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.tags=e.recipe.relationships.tags.data.map(t=>t.attributes.name),this.requestUpdate())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}toggleTags(){this.displayTags=!this.displayTags,this.requestUpdate()}noTimePlaceholder(){return s`<span class="mealz-recipe-details-infos__no-time-placeholder">0 min</span>`}noDataPlaceholder(){return s`<span class="mealz-recipe-details-infos__no-data-placeholder">-</span>`}getRecipeDifficultyIntoClassName(){switch(this.recipe.attributes.difficulty){case 1:return"easy";case 2:return"medium";case 3:return"hard";default:return"no-difficulty-defined"}}getRecipeDifficultyIntoText(){switch(this.recipe.attributes.difficulty){case 1:return s`<span class="mealz-ds-text">Facile</span>`;case 2:return s`<span class="mealz-ds-text">Moyen</span>`;case 3:return s`<span class="mealz-ds-text">Difficile</span>`;default:return o}}renderPreparationTime(){return s`
|
|
95
95
|
<!-- PREPARATION TIME -->
|
|
96
96
|
<div
|
|
97
97
|
class="
|
|
@@ -157,7 +157,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
157
157
|
${this.renderRecipeDifficulty()}
|
|
158
158
|
${this.renderMoreTags()}
|
|
159
159
|
</div>
|
|
160
|
-
`}};
|
|
160
|
+
`}};C=j([h("mealz-details-infos")],C);var K=Object.getOwnPropertyDescriptor,Q=(e,t,a,n)=>{for(var i=n>1?void 0:n?K(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let x=class extends u{constructor(){super(),this.steps=[],this.subscriptions=[],this.styleURL=new URL("./recipe-details/details-steps/details-steps.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(r.recipes.displayedRecipe$.subscribe(e=>{e&&(this.steps=e.recipe.relationships["recipe-steps"].data.sort((t,a)=>t.attributes["step-number"]-a.attributes["step-number"]).map(t=>t.attributes.description),this.requestUpdate())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return s`
|
|
161
161
|
<div class="mealz-details-steps">
|
|
162
162
|
<!-- HEADER -->
|
|
163
163
|
<div class="mealz-ds-text weight-xxl mealz-details-steps__header">
|
|
@@ -180,7 +180,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
180
180
|
`)}
|
|
181
181
|
</div>
|
|
182
182
|
</div>
|
|
183
|
-
`}};
|
|
183
|
+
`}};x=Q([h("mealz-details-steps")],x);var Y=Object.getOwnPropertyDescriptor,J=(e,t,a,n)=>{for(var i=n>1?void 0:n?Y(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let S=class extends u{constructor(){super(),this.ingredients=[],this.subscriptions=[],this.styleURL=new URL("./recipe-details/details-ingredients/details-ingredients.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.subscriptions.push(r.recipes.displayedRecipe$.subscribe(e=>{e&&(this.ingredients=e.recipe.relationships.ingredients.data,this.requestUpdate())}))}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){var e,t;return s`
|
|
184
184
|
<div class="mealz-details-ingredients">
|
|
185
185
|
<!-- HEADER -->
|
|
186
186
|
<div class="mealz-ds-text weight-xxl mealz-details-ingredients__header">
|
|
@@ -189,27 +189,27 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
189
189
|
</div>
|
|
190
190
|
<!-- LIST -->
|
|
191
191
|
<div class="mealz-details-ingredients__list">
|
|
192
|
-
${this.ingredients.map(
|
|
192
|
+
${this.ingredients.map(a=>s`
|
|
193
193
|
<div class="mealz-details-ingredients__item">
|
|
194
194
|
<!-- PICTURE -->
|
|
195
195
|
<div class="mealz-ds-avatar mealz-details-ingredients__picture_container">
|
|
196
196
|
<img class="mealz-details-ingredients__picture"
|
|
197
|
-
src="${this.ingredientPicture(
|
|
198
|
-
alt="${
|
|
197
|
+
src="${this.ingredientPicture(a)}"
|
|
198
|
+
alt="${a.attributes.name} picture">
|
|
199
199
|
</div>
|
|
200
200
|
<!-- NAME -->
|
|
201
201
|
<span class="mealz-ds-text size-s weight-xxl mealz-details-ingredients__name">
|
|
202
|
-
${D(
|
|
202
|
+
${D(a.attributes.name)}
|
|
203
203
|
</span>
|
|
204
204
|
<!-- QUANTITY -->
|
|
205
205
|
<div class="mealz-ds-text size-s weight-l mealz-details-ingredients__row__qty">
|
|
206
|
-
${
|
|
206
|
+
${a.attributes.quantity} ${a.attributes.unit}
|
|
207
207
|
</div>
|
|
208
208
|
</div>
|
|
209
209
|
`)}
|
|
210
210
|
</div>
|
|
211
211
|
</div>
|
|
212
|
-
`}ingredientPicture(e){return e.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}};S=
|
|
212
|
+
`}ingredientPicture(e){return e.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}};S=J([h("mealz-details-ingredients")],S);var W=Object.defineProperty,X=Object.getOwnPropertyDescriptor,b=(e,t,a,n)=>{for(var i=n>1?void 0:n?X(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=(n?c(t,a,i):c(i))||i);return n&&i&&W(t,a,i),i};const f=["unavailable"],Z=["ticked","unselected"];let g=class extends u{constructor(){super(),this.isSponsored=!1,this.subscriptions=[],this.guestObserverService=L.getInstance(),this.modifiedIngQty=0,this.analyticsPath="/meals-planner/current",this.styleURL=new URL("./product-card/product-card-planner.css",this.getBaseURL())}get status(){var e;return(e=this.product)==null?void 0:e.status}set status(e){this.product.status=e,this.requestUpdate()}get productImage(){var e;return((e=this.product.item)==null?void 0:e.attributes.image)||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}get ingredientPicture(){return this.product.ingredient.picture||"https://storage.googleapis.com/assets.miam.tech/generic/images/default-ingredient-picture.svg"}updated(){var e,t;this.product&&(this.isSponsored=((t=(e=this.product.item)==null?void 0:e.attributes)==null?void 0:t.sponsored)===!0)}connectedCallback(){super.connectedCallback(),this.listenGuestsChange(),this.calculateQty()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}listenGuestsChange(){this.subscriptions.push(this.guestObserverService.guests$.subscribe(e=>{this.currentGuests=e,this.calculateQty()}))}calculateQty(){const e=this.product.ingredient.attributes.quantity/this.initialGuests;this.modifiedIngQty=Number((e*this.currentGuests).toFixed(2)),this.requestUpdate()}openReplaceItemView(){r.planner.openReplaceItemView(this.product),this.replaceItemViewEvent()}onCheckboxChange(e){e.target.checked?(this.status="ticked",r.planner.selectProduct(+this.product.item.id,this.product.ingredient.relationships.definition.data.id),this.addItemEvent()):(this.status="unselected",r.planner.unselectProduct(+this.product.item.id,this.product.ingredient.relationships.definition.data.id),this.deleteItemEvent()),this.requestUpdate()}render(){return s`
|
|
213
213
|
<div class="mealz-product-card-planner
|
|
214
214
|
${this.status==="ticked"?"added":""}
|
|
215
215
|
${f.includes(this.status)||this.oftenIgnored?"disabled":""}
|
|
@@ -220,7 +220,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
220
220
|
${this.oftenIgnored?"disabled":""}
|
|
221
221
|
${this.status==="unavailable"?"unavailable":""}"
|
|
222
222
|
>
|
|
223
|
-
${
|
|
223
|
+
${Z.includes(this.status)&&!this.oftenIgnored?this.renderEnabledProductCard():this.renderDisabledOrUnavailableProduct()}
|
|
224
224
|
</div>
|
|
225
225
|
</div>
|
|
226
226
|
`}renderEnabledProductCard(){return s`
|
|
@@ -318,7 +318,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
318
318
|
<span>Remplacer</span>
|
|
319
319
|
</button>
|
|
320
320
|
`:""}
|
|
321
|
-
`}addItemEvent(){
|
|
321
|
+
`}addItemEvent(){r.analytics.sendEvent("planner.item.add",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}deleteItemEvent(){r.analytics.sendEvent("planner.item.delete",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}replaceItemViewEvent(){r.analytics.sendEvent("planner.item.replace",this.analyticsPath,{recipe_id:this.recipeId,item_id:this.product.item.id})}};b([p({type:Object})],g.prototype,"product",2);b([p({type:String})],g.prototype,"recipeId",2);b([p({type:Number})],g.prototype,"initialGuests",2);b([p({type:Number})],g.prototype,"currentGuests",2);b([p({type:Boolean})],g.prototype,"oftenIgnored",2);g=b([h("mealz-product-card-planner")],g);customElements.get("mealz-product-card-planner")||customElements.define("mealz-product-card-planner",g);var ee=Object.defineProperty,te=Object.getOwnPropertyDescriptor,U=(e,t,a,n)=>{for(var i=n>1?void 0:n?te(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=(n?c(t,a,i):c(i))||i);return n&&i&&ee(t,a,i),i};let y=class extends u{constructor(){super(),this.styleURL=new URL("./legal-notice/legal-notice.css",this.getBaseURL())}get containsAlcohol(){var t;return(((t=this.tags)==null?void 0:t.data)||[]).some(a=>a.id==="ingredient_category_alcool")}render(){return this.containsAlcohol?s`
|
|
322
322
|
<div class="mealz-products-picker__legal-notices">
|
|
323
323
|
<span class="mealz-ds-text weight-xxl mealz-products-picker__legal-notices-header">Mentions légales</span>
|
|
324
324
|
<div class="mealz-products-picker__legal-notices-content">
|
|
@@ -330,7 +330,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
330
330
|
</span>
|
|
331
331
|
</div>
|
|
332
332
|
</div>
|
|
333
|
-
`:o}};U([p()],y.prototype,"tags",2);y=U([h("mealz-legal-notice")],y);var
|
|
333
|
+
`:o}};U([p()],y.prototype,"tags",2);y=U([h("mealz-legal-notice")],y);var se=Object.getOwnPropertyDescriptor,ie=(e,t,a,n)=>{for(var i=n>1?void 0:n?se(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let R=class extends u{constructor(){super(),this.styleURL=[new URL("./product-card/product-card-skeleton/product-card-skeleton.css",this.getBaseURL()),new URL("./product-card/product-card.css",this.getBaseURL())]}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}render(){return s`
|
|
334
334
|
<!-- PRODUCT CARD -->
|
|
335
335
|
<div class="mealz-product-card skeleton">
|
|
336
336
|
<!-- HEADER -->
|
|
@@ -373,7 +373,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
373
373
|
</div>
|
|
374
374
|
</div>
|
|
375
375
|
</div>
|
|
376
|
-
`}};
|
|
376
|
+
`}};R=ie([h("mealz-products-card-skeleton")],R);var ae=Object.defineProperty,re=Object.getOwnPropertyDescriptor,k=(e,t,a,n)=>{for(var i=n>1?void 0:n?re(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=(n?c(t,a,i):c(i))||i);return n&&i&&ae(t,a,i),i};let z=class extends u{constructor(){super(),this.inBasket=!1,this.plannerMode=!1,this.numberUnavailableProducts=0,this.subscriptions=[],this.noSupplier=r.supplier.isNoSupplier(),this.hasEmittedReady=!1,this.styleURL=new URL("./products-picker/products-picker.css",this.getBaseURL())}get totalProducts(){return this.recipe.relationships.ingredients.data.length}connectedCallback(){super.connectedCallback(),this.resetProducts(),this.listenToProducts(),this.subscriptions.push(r.recipes.displayedRecipe$.subscribe(e=>{e&&(this.recipe=e.recipe,this.analyticsPath=`/recipes/${this.recipe.id}/shopping`,this.requestUpdate())}))}disconnectedCallback(){super.disconnectedCallback(),this.resetProducts(),this.subscriptions.forEach(e=>e.unsubscribe())}resetProducts(){this.productsByCategory={toPickProducts:[],oftenIgnoredProducts:[]},this.numberUnavailableProducts=0,this.requestUpdate()}listenToProducts(){const e=this.plannerMode?r.recipes.productsPlannerByCategory$:r.recipes.productsByCategory$;this.subscriptions.push(e.subscribe(t=>{this.productsByCategory=t,this.plannerMode?this.numberUnavailableProducts=[...t.oftenIgnoredProducts,...t.toPickProducts].filter(a=>a.status==="unavailable").length:this.numberUnavailableProducts=[...t.oftenIgnoredProducts,...t.toPickProducts].filter(a=>a.basketEntry.status==="out_of_stock").length,this.requestUpdate(),this.notifyReadyIfRendered()}))}async notifyReadyIfRendered(){if(this.hasEmittedReady)return;if(await this.updateComplete,this.querySelector(".mealz-product-card-planner__checkbox")||this.querySelector(".mealz-product-card__checkbox")){this.hasEmittedReady=!0;const t=new CustomEvent("products-picker-ready",{bubbles:!0,composed:!0});this.dispatchEvent(t)}}scrollToFirstUnavailable(){const e=document.querySelector(this.plannerMode?".mealz-products-picker":".mealz-products-picker__container");if(e){const t=e.querySelector(this.plannerMode?".mealz-product-card-planner.unavailable":".mealz-product-card__container.out_of_stock");t&&t.scrollIntoView({behavior:"smooth",block:"center"})}}isAlreadyOnCatalogPage(){return window.location.href.includes(r.router.getCatalogUrl())}closeRecipeModal(){}currentPath(){return""}guestsChange(){const e=new CustomEvent("guestChange",{bubbles:!0,composed:!0});this.dispatchEvent(e)}render(){var e,t,a;return s`
|
|
377
377
|
<div class="mealz-products-picker">
|
|
378
378
|
${this.inBasket&&this.plannerMode?s`
|
|
379
379
|
<div class="mealz-products-picker__overlay">
|
|
@@ -388,17 +388,17 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
388
388
|
${this.renderHeader()}
|
|
389
389
|
<div class="mealz-products-picker__list">
|
|
390
390
|
<!-- TO PICK PRODUCTS -->
|
|
391
|
-
${((e=this.productsByCategory)==null?void 0:e.toPickProducts.length)>0?this.productsByCategory.toPickProducts.map(
|
|
391
|
+
${((e=this.productsByCategory)==null?void 0:e.toPickProducts.length)>0?this.productsByCategory.toPickProducts.map(n=>{var i,l,c,_;return this.plannerMode?s`
|
|
392
392
|
<mealz-product-card-planner
|
|
393
|
-
.product="${
|
|
393
|
+
.product="${n}"
|
|
394
394
|
.recipeId="${this.recipe.id}"
|
|
395
395
|
.oftenIgnored="${!1}"
|
|
396
396
|
.initialGuests="${((i=this.recipe)==null?void 0:i.attributes["number-of-guests"])||4}"
|
|
397
|
-
.currentGuests="${this.recipe.modifiedGuests||((
|
|
397
|
+
.currentGuests="${this.recipe.modifiedGuests||((l=this.recipe)==null?void 0:l.attributes["number-of-guests"])||4}"
|
|
398
398
|
></mealz-product-card-planner>
|
|
399
399
|
`:s`
|
|
400
400
|
<mealz-product-card
|
|
401
|
-
.product="${
|
|
401
|
+
.product="${n}"
|
|
402
402
|
.recipeId="${this.recipe.id}"
|
|
403
403
|
.initialGuests="${((c=this.recipe)==null?void 0:c.attributes["number-of-guests"])||4}"
|
|
404
404
|
.currentGuests="${this.recipe.modifiedGuests||((_=this.recipe)==null?void 0:_.attributes["number-of-guests"])||4}"
|
|
@@ -409,22 +409,22 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
409
409
|
</div>
|
|
410
410
|
<!-- OFTEN IGNORED PRODUCTS -->
|
|
411
411
|
<div class="mealz-products-picker__secondary-list">
|
|
412
|
-
${((
|
|
412
|
+
${((a=(t=this.productsByCategory)==null?void 0:t.oftenIgnoredProducts)==null?void 0:a.length)>0?s`
|
|
413
413
|
<span class="mealz-ds-text weight-xl">
|
|
414
414
|
Déjà dans le placard
|
|
415
415
|
</span>
|
|
416
416
|
<div class="mealz-products-picker__list">
|
|
417
|
-
${this.productsByCategory.oftenIgnoredProducts.map(
|
|
417
|
+
${this.productsByCategory.oftenIgnoredProducts.map(n=>{var i,l,c,_;return this.plannerMode?s`
|
|
418
418
|
<mealz-product-card-planner
|
|
419
|
-
.product="${
|
|
419
|
+
.product="${n}"
|
|
420
420
|
.recipeId="${this.recipe.id}"
|
|
421
421
|
.oftenIgnored="${!0}"
|
|
422
422
|
.initialGuests="${((i=this.recipe)==null?void 0:i.attributes["number-of-guests"])||4}"
|
|
423
|
-
.currentGuests="${this.recipe.modifiedGuests||((
|
|
423
|
+
.currentGuests="${this.recipe.modifiedGuests||((l=this.recipe)==null?void 0:l.attributes["number-of-guests"])||4}"
|
|
424
424
|
></mealz-product-card-planner>
|
|
425
425
|
`:s`
|
|
426
426
|
<mealz-product-card
|
|
427
|
-
.product="${
|
|
427
|
+
.product="${n}"
|
|
428
428
|
.recipeId="${this.recipe.id}"
|
|
429
429
|
.initialGuests="${((c=this.recipe)==null?void 0:c.attributes["number-of-guests"])||4}"
|
|
430
430
|
.currentGuests="${this.recipe.modifiedGuests||((_=this.recipe)==null?void 0:_.attributes["number-of-guests"])||4}"
|
|
@@ -475,7 +475,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
475
475
|
<div class="mealz-products-picker__more">
|
|
476
476
|
${!this.isAlreadyOnCatalogPage()&&!this.plannerMode?s`
|
|
477
477
|
<a class="mealz-products-picker__more-anchor"
|
|
478
|
-
href="${
|
|
478
|
+
href="${r.router.getCatalogUrl()}"
|
|
479
479
|
@click="${this.sendHomeDisplayEvent}">
|
|
480
480
|
<button class="mealz-products-picker__go-to-catalog-button mealz-ds-button secondary">
|
|
481
481
|
<span class="mealz-ds-text weight-l size-s">Voir plus d'idées repas</span>
|
|
@@ -488,7 +488,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
488
488
|
`}
|
|
489
489
|
</div>
|
|
490
490
|
<mealz-legal-notice .tags="${this.recipe.relationships.tags}"></mealz-legal-notice>
|
|
491
|
-
`}sendHomeDisplayEvent(){
|
|
491
|
+
`}sendHomeDisplayEvent(){r.analytics.sendEvent("home.display",this.analyticsPath,{})}};k([p({type:Boolean})],z.prototype,"inBasket",2);k([p({type:Boolean})],z.prototype,"plannerMode",2);z=k([h("mealz-products-picker")],z);customElements.get("mealz-products-picker")||customElements.define("mealz-products-picker",z);var ne=Object.getOwnPropertyDescriptor,le=(e,t,a,n)=>{for(var i=n>1?void 0:n?ne(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let $=class extends u{constructor(){super(),this.invalidPos=!1,this.subscriptions=[],this.styleURL=new URL("./recipe-details/no-pos-selected/no-pos-selected.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.listenIfPosInvalid()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}listenIfPosInvalid(){this.subscriptions.push(r.recipes.invalidPosDisplay$.subscribe(e=>{this.invalidPos=e,this.requestUpdate()}))}callPosSelector(){const e=new CustomEvent("posSelected",{bubbles:!0,composed:!0});this.dispatchEvent(e)}openStoreLocator(){const e=document.querySelector("mealz-drawer-view-swapper");e&&e.displayStoreLocator$.next(!0)}render(){return s`
|
|
492
492
|
<div class="mealz-no-pos-selected">
|
|
493
493
|
${this.invalidPos?s`
|
|
494
494
|
<!-- INVALID POS -->
|
|
@@ -528,7 +528,7 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
528
528
|
Sélectionner un magasin
|
|
529
529
|
</button>
|
|
530
530
|
</div>
|
|
531
|
-
`}};$=
|
|
531
|
+
`}};$=le([h("mealz-no-pos-selected")],$);customElements.get("mealz-no-pos-selected")||customElements.define("mealz-no-pos-selected",$);var ce=Object.getOwnPropertyDescriptor,oe=(e,t,a,n)=>{for(var i=n>1?void 0:n?ce(t,a):t,l=e.length-1,c;l>=0;l--)(c=e[l])&&(i=c(i)||i);return i};let O=class extends u{constructor(){super(),this.activeTabIndex=0,this.subscriptions=[],this.remainingBasketEntries=[],this.guestObserverService=L.getInstance(),this.isSticky=!1,this.styleURL=new URL("./recipe-details/recipe-details.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.handleNoSupplierMode(),this.subscriptions.push(w(r.recipes.displayedRecipe$.pipe(I(e=>!!e),G(e=>{this.recipe=e.recipe,this.sponsor=e.recipe.relationships.sponsors.data[0],this.analyticsPath=`/recipes/${this.recipe.id}/shopping`,this.plannerMode=e.planner,this.getLikeButton(),this.checkSponsorStorytelling(),this.pageview(),this.listenToCloseEvent(),this.setStickyObserver(),this.startRecipeDetailsOnboardingIfNeeded()}),T(()=>this.listenToRecipeInBasket())),this.listenPosStatus(),this.listenRemainingBasketEntries(),this.listenLastOrderDate(),this.listenToLoadingStates(),this.listenToAddAllToBasket()).subscribe(()=>{this.requestUpdate()})),this.addEventListener("products-picker-ready",()=>this.startRecipeDetailsOnboardingIfNeeded())}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.topObserver&&this.topObserver.disconnect(),this.stickyTimeout&&clearTimeout(this.stickyTimeout)}setStickyObserver(){this.topObserver||this.updateComplete.then(()=>{const e=this.querySelector(".mealz-recipe-details__sticky-anchor");e&&(this.topObserver=new IntersectionObserver(([t])=>{this.stickyTimeout&&clearTimeout(this.stickyTimeout),this.stickyTimeout=window.setTimeout(()=>{const a=!t.isIntersecting;this.isSticky!==a&&(this.isSticky=a,this.requestUpdate())},150)},{threshold:0}),this.topObserver.observe(e))})}startRecipeDetailsOnboardingIfNeeded(){localStorage.getItem("_miam/recipeDetailsOnboarding")==="true"||!this.plannerMode||this.updateComplete.then(()=>{this.scrollJustAfterImage();let t=document.querySelector("mealz-planner-onboarding");t?t.type="recipe-details":(t=new q,t.type="recipe-details",document.body.appendChild(t)),t.launchOnboardingTour()})}scrollJustAfterImage(){const e=this.querySelector(".mealz-recipe-details__tabs");if(!e)return;const t=document.querySelector(".mealz-drawer__content-container");if(t){const a=e.getBoundingClientRect(),n=t.getBoundingClientRect();t.scrollTop+=a.top-n.top;return}e.scrollIntoView({behavior:"smooth",block:"start"})}handleNoSupplierMode(){this.noSupplier=r.supplier.isNoSupplier(),this.requestUpdate()}close(){this.sendCloseEvent(),r.recipes.displayedRecipe$.next(null)}listenToCloseEvent(){document.querySelector("mealz-drawer").addEventListener("drawerClosed",()=>{this.sendCloseEvent()})}selectTab(e){this.activeTabIndex=e,this.activeTabIndex===1&&this.sendCookingDisplayEvent(),this.requestUpdate()}getLikeButton(){this.noSupplier||this.subscriptions.push(r.user.isAuthenticated().pipe(I(e=>e),T(()=>r.html.like(this.recipe.id))).subscribe(e=>{this.likeButtonHTML=e,this.requestUpdate()}))}checkSponsorStorytelling(){this.sponsor&&this.subscriptions.push(r.sponsor.hasStorytelling(this.sponsor.id).subscribe(e=>{this.hasSponsorStorytelling=e,this.requestUpdate()}))}listenPosStatus(){return E({noPosDisplay:r.recipes.noPosDisplay$,invalidPosDisplay:r.recipes.invalidPosDisplay$}).pipe(d(({noPosDisplay:e,invalidPosDisplay:t})=>{this.noPosDisplay=e,this.invalidPosDisplay=t,this.activeTabIndex=e?1:0}))}listenLastOrderDate(){return r.recipes.orderHistoryDate$.pipe(d(e=>{this.orderHistoryDate=e}))}listenToLoadingStates(){return E([r.recipes.ingredientToBasketLoading$,r.recipes.updateIngredientFromBasketLoading$]).pipe(d(([e,t])=>{this.basketIsUpdating=e||t}))}listenRemainingBasketEntries(){return r.recipes.remainingBasketEntries$.pipe(d(e=>{this.remainingBasketEntries=e}))}listenToAddAllToBasket(){return r.recipes.allIngredientsToBasketLoading$.pipe(d(e=>{e&&(this.selectTab(0),setTimeout(()=>{this.scrollToPicker()},50))}))}listenToRecipeInBasket(){return r.recipes.isRecipeInBasket(this.recipe.id).pipe(d(e=>{this.inBasket=e}))}scrollToPicker(){const e=this.querySelector(".mealz-products-picker");if(e){const t=this.querySelector(".mealz-recipe-details__title-container"),a=(t==null?void 0:t.offsetHeight)||0;e.style.scrollMarginTop=`${a}px`,e.scrollIntoView({behavior:"instant",block:"start"})}}scrollToReplacedItem(e){var a,n;const t=this.querySelectorAll("mealz-product-card-planner");for(const i of Array.from(t)){const l=i;if(((n=(a=l.product)==null?void 0:a.item)==null?void 0:n.id)===e){l.scrollIntoView({behavior:"instant",block:"center"});break}}}openLastOrderModal(){this.sendOrderedDisplayEvent();const e=new M;e.recipeId=this.recipe.id,e.addEventListener("orderAgain",()=>this.orderAgain()),e.displayLastOrderModal(this.orderHistoryDate)}orderAgain(){r.recipes.addAllIngredientsToBasket({originPath:this.analyticsPath,props:{}})}updateGuests(e){if(this.recipe.modifiedGuests===e.detail.value)return;this.recipe.modifiedGuests=e.detail.value,this.guestObserverService.updateGuests(this.recipe.modifiedGuests);const t={originPath:this.analyticsPath,props:{}};this.plannerMode?r.planner.updateGuests(this.recipe.modifiedGuests,t):r.recipes.updateGuests(t),this.requestUpdate()}render(){return s`
|
|
532
532
|
<div class="mealz-recipe-details">
|
|
533
533
|
<!-- IF IS LOADING -->
|
|
534
534
|
${this.recipe?o:s`
|
|
@@ -695,4 +695,4 @@ import"../drawer/drawer.min.js";import"../recipe-pricing/recipe-pricing.min.js";
|
|
|
695
695
|
</div>
|
|
696
696
|
`:o}
|
|
697
697
|
</div>
|
|
698
|
-
`}showRecipeAddon(){this.sendSponsorDisplayEvent(),document.querySelector("mealz-drawer-view-swapper").displayRecipeAddon$.next(!0)}pageview(){
|
|
698
|
+
`}showRecipeAddon(){this.sendSponsorDisplayEvent(),document.querySelector("mealz-drawer-view-swapper").displayRecipeAddon$.next(!0)}pageview(){r.analytics.sendEvent("pageview",this.analyticsPath,{})}sendSponsorDisplayEvent(){r.analytics.sendEvent("sponsor.display",this.analyticsPath,{recipe_id:this.recipe.id})}sendCloseEvent(){r.analytics.sendEvent("recipe.close",this.analyticsPath,{recipe_id:this.recipe.id})}sendCookingDisplayEvent(){r.analytics.sendEvent("recipe.cooking.display",this.analyticsPath,{recipe_id:this.recipe.id})}sendOrderedDisplayEvent(){r.analytics.sendEvent("recipe.ordered.display",this.analyticsPath,{recipe_id:this.recipe.id})}};O=oe([h("mealz-recipe-details")],O);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{O as
|
|
1
|
+
import{O as D,N as z,B as A,m as c}from"../assets/no-shadow-element-l9trQfcI.js";import{t as C}from"../assets/custom-element-BhZVzxrc.js";import{f as P}from"../assets/filter-CEeE8t7I.js";import{a as _,b as k,c as w}from"../assets/combineLatest-P4GAEtOW.js";import{s as O}from"../assets/skipWhile-DuMEda_n.js";import{s as g}from"../assets/switchMap-D8q0hRYH.js";import{i as L}from"../assets/innerFrom-CfKCbnvr.js";import{b as F}from"../assets/from-jBe2xW5a.js";import{c as E}from"../assets/OperatorSubscriber-EGuECN6g.js";import{m as R}from"../assets/mapOneOrManyArgs-DNd_tswl.js";import{o as f}from"../assets/of-BTA69Qgj.js";import{t as y}from"../assets/take-DO4w5a1Y.js";import{t as $}from"../assets/tap-BCGrRktL.js";import"../assets/executeSchedule-DfyZaGAH.js";import"../assets/map-C4rf5Jbc.js";import"../assets/empty-Cv-4tfKR.js";function B(){for(var e=[],i=0;i<arguments.length;i++)e[i]=arguments[i];var r=F(e),s=_(e),t=s.args,a=s.keys,l=new D(function(h){var o=t.length;if(!o){h.complete();return}for(var n=new Array(o),u=o,b=o,I=function(v){var m=!1;L(t[v]).subscribe(E(h,function(M){m||(m=!0,b--),n[v]=M},function(){return u--},void 0,function(){(!u||!m)&&(b||h.next(a?k(a,n):n),h.complete())}))},d=0;d<o;d++)I(d)});return r?l.pipe(R(r)):l}class p{constructor(){this.priceMemorized=new Map,this.displayedPrices=new Set,this.cleanupInterval=null,this.MAX_MEMO_SIZE=500,this.CLEANUP_INTERVAL=600*1e3,this.handlePageUnload=()=>{this.destroy()},this.startAutoCleanup(),this.setupPageUnloadListener()}static getInstance(){return p.instance||(p.instance=new p),p.instance}getMemorizedPrice(i,r){const s=`${i}-${r}`;return this.priceMemorized.get(s)}memorizedPrice(i,r,s){const t=`${i}-${r}`;this.priceMemorized.size>=this.MAX_MEMO_SIZE&&this.cleanOldPrices(),this.priceMemorized.set(t,{price:s,guests:r})}isPriceDisplayed(i,r){const s=`${i}-${r}`;return this.displayedPrices.has(s)}markPriceAsDisplayed(i,r){const s=`${i}-${r}`;this.displayedPrices.add(s)}cleanOldPrices(){this.priceMemorized.size>this.MAX_MEMO_SIZE*.8&&Array.from(this.priceMemorized.entries()).slice(0,Math.floor(this.priceMemorized.size*.3)).forEach(([s])=>{this.priceMemorized.delete(s),this.displayedPrices.delete(s)})}clearAllPrices(){this.priceMemorized.clear(),this.displayedPrices.clear()}destroy(){window.removeEventListener("beforeunload",this.handlePageUnload),this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null),this.priceMemorized.clear(),this.displayedPrices.clear(),p.instance=null}startAutoCleanup(){this.cleanupInterval=window.setInterval(()=>{this.cleanOldPrices()},this.CLEANUP_INTERVAL)}setupPageUnloadListener(){window.addEventListener("beforeunload",this.handlePageUnload)}}var V=Object.getOwnPropertyDescriptor,N=(e,i,r,s)=>{for(var t=s>1?void 0:s?V(i,r):i,a=e.length-1,l;a>=0;a--)(l=e[a])&&(t=l(t)||t);return t};let S=class extends z{constructor(){super(...arguments),this.formattedPrice="",this.rendered=new A(!1),this.inBasket=!1,this.planner=!1,this.lastPlannerPrice=0,this.plannerPriceSubscription=null,this.lastAppliedPrice="",this.priceDisplayed=!1,this.subscriptions=[]}connectedCallback(){super.connectedCallback(),this.classList.add("re-rendering"),this.getInitialStatus(),this.setupSubscriptions(),requestAnimationFrame(()=>{this.classList.remove("re-rendering")})}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe()),this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null)}setupSubscriptions(){this.subscriptions.push(c.recipes.guestsUpdated().subscribe(e=>{e.recipeId===this.recipeId&&(this.serves=e.guests,this.recalculatePrice())}),this.listenToBasket(),this.setupDisplayedRecipeSubscription(),this.setupGuestUpdatesSubscription(),this.setupMenuPriceSubscription())}setupDisplayedRecipeSubscription(){return c.recipes.displayedRecipe$.pipe(P(()=>this.planner&&!!this.recipeId)).subscribe(e=>{var i;((i=e==null?void 0:e.recipe)==null?void 0:i.id)===this.recipeId?(this.lastDisplayedRecipeId=this.recipeId,this.trackPlannerRecipePrice(),this.updateGuestCountFromMenu()):!(e!=null&&e.recipe)&&this.lastDisplayedRecipeId===this.recipeId&&(this.updatePriceFromCapturedPlannerPrice(),this.lastDisplayedRecipeId=null,this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null))})}setupGuestUpdatesSubscription(){return c.recipes.guestsUpdated().pipe(P(()=>!!this.recipeId)).subscribe(({guests:e,recipeId:i})=>{i===this.recipeId&&(this.serves=e,this.recalculatePrice())})}setupMenuPriceSubscription(){return c.planner.menuPrice$.pipe(P(()=>this.planner&&!!this.recipeId)).subscribe(e=>{if(this.updateGuestCountFromMenu(),this.lastPlannerPrice>0&&this.serves>0){const i=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(i.toFixed(2))}})}fetchPrice(e,i,r){var h,o;const s=(h=this.recipePricing)==null?void 0:h.querySelector(".mealz-recipe-pricing__wrapper"),t=(o=this.attributes["starting-data"])==null?void 0:o.value;if(!t){if(this.priceDisplayed)return;s==null||s.classList.replace("active","hidden"),this.priceDisplayed=!1;return}if(t){const n=JSON.parse(t);if(this.removeAttribute("starting-data"),n.pricePerServe!==null||n.inBasket){s==null||s.classList.replace("hidden","active"),this.applyCurrencyDisplay(n.pricePerServe),this.inBasket=n.inBasket;return}}const a=p.getInstance(),l=a.getMemorizedPrice(r,i);if(l){requestAnimationFrame(()=>{this.applyCurrencyDisplay(l.price),a.markPriceAsDisplayed(r,i)});return}s==null||s.classList.replace("active","hidden"),this.subscriptions.push(c.recipes.fetchPricing(r,e,i).subscribe(n=>{if(n!=null&&n.price_per_serve){const u=p.getInstance();u.memorizedPrice(r,i,n.price_per_serve),requestAnimationFrame(()=>{s==null||s.classList.replace("hidden","active"),this.applyCurrencyDisplay(n.price_per_serve),u.markPriceAsDisplayed(r,i)})}}))}render(){this.recipePricing=this.querySelector(".mealz-recipe-pricing"),this.recipePricing&&(this.recipeId&&this.pricePerServe&&p.getInstance().isPriceDisplayed(this.recipeId,this.serves)&&requestAnimationFrame(()=>{this.applyCurrencyDisplay(this.pricePerServe)}),this.rendered.next(!0),this.getInitialStatus())}getInitialStatus(){var a;const e=(a=this.attributes["starting-data"])==null?void 0:a.value;if(!e)return;const{recipeId:i,pricePerServe:r,serves:s,planner:t}=JSON.parse(e);this.recipeId=i,this.pricePerServe=(r==null?void 0:r.toString())??null,this.serves=s,this.planner=t||!1,this.applyCurrencyDisplay(this.pricePerServe)}applyCurrencyDisplay(e){if(this.lastAppliedPrice===e)return;const i=parseFloat(e);isNaN(i)||(this.lastAppliedPrice=e,this.formattedPrice=i.toLocaleString("fr-FR",{minimumFractionDigits:2,maximumFractionDigits:2}),this.updateDOM())}showPrice(){var r,s;if(this.priceDisplayed)return;const e=(r=this.recipePricing)==null?void 0:r.querySelector(".mealz-recipe-pricing__loading"),i=(s=this.recipePricing)==null?void 0:s.querySelector(".mealz-recipe-pricing__wrapper");e==null||e.classList.replace("active","hidden"),i==null||i.classList.replace("hidden","active"),this.priceDisplayed=!0}updateDOM(){var i;const e=(i=this.recipePricing)==null?void 0:i.querySelector(".mealz-recipe-pricing__wrapper__price");e&&(e.innerHTML=this.formattedPrice+" €",this.showPrice())}listenToBasket(){return w([this.rendered,c.basket.recipePricesInBasket$()]).pipe(O(([e,i])=>!e||!i),g(([,e])=>B([f(e),c.pos.currentPos().pipe(y(1))])),g(([e,i])=>(this.recipePricingValue=e.find(r=>r.id===this.recipeId),this.recipePricingValue?(this.inBasket=!0,this.applyCurrencyDisplay((+this.recipePricingValue.price/this.serves).toString()),f(null)):i&&this.inBasket?c.recipes.fetchPricing(this.recipeId,i.id,this.serves).pipe($(r=>{r!=null&&r.price_per_serve&&(this.applyCurrencyDisplay(r.price_per_serve),this.inBasket=!1)})):(this.formattedPrice=this.pricePerServe,f(null))))).subscribe(()=>{this.priceDisplayed||(this.showPrice(),this.priceDisplayed=!0)})}recalculatePrice(){if(this.recipePricingValue){const e=(parseFloat(this.recipePricingValue.price)/this.recipePricingValue.guests).toString();requestAnimationFrame(()=>{this.applyCurrencyDisplay(e);const i=p.getInstance();i.memorizedPrice(this.recipeId,this.recipePricingValue.guests,e),i.markPriceAsDisplayed(this.recipeId,this.recipePricingValue.guests)})}}trackPlannerRecipePrice(){this.plannerPriceSubscription&&(this.plannerPriceSubscription.unsubscribe(),this.plannerPriceSubscription=null),this.plannerPriceSubscription=c.planner.plannerRecipePrice$.subscribe(e=>{e>0&&(this.lastPlannerPrice=e)})}updateGuestCountFromMenu(){!this.planner||!this.recipeId||c.planner.getGuestsForRecipe(this.recipeId).pipe(y(1)).subscribe(e=>{e&&e>0&&(this.serves=e)})}updatePriceFromCapturedPlannerPrice(){!this.planner||!this.recipeId||c.planner.isRecipeInMenu$(this.recipeId).pipe(y(1)).subscribe(e=>{if(e&&this.lastPlannerPrice>0){if(this.serves>0){const i=this.lastPlannerPrice/this.serves;this.applyCurrencyDisplay(i.toFixed(2))}}else this.pricePerServe&&this.applyCurrencyDisplay(this.pricePerServe)})}};S=N([C("mealz-recipe-pricing")],S);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../assets/store-locator-
|
|
1
|
+
import"../assets/store-locator-Crx8huGH.js";import{N as h,k as c}from"../assets/no-shadow-element-l9trQfcI.js";import{t as o}from"../assets/custom-element-BhZVzxrc.js";import{n as b}from"../assets/property-leIVgCvV.js";import"../assets/state-CccUMzBZ.js";import"../assets/query-BApjzB0v.js";var p=Object.defineProperty,m=Object.getOwnPropertyDescriptor,n=(e,t,i,l)=>{for(var s=l>1?void 0:l?m(t,i):t,d=e.length-1,r;d>=0;d--)(r=e[d])&&(s=(l?r(t,i,s):r(s))||s);return l&&s&&p(t,i,s),s};let a=class extends h{constructor(){super(),this._selectedTabIndex=0,this.styleURL=new URL("./slider-tabs/slider-tabs.css",this.getBaseURL())}get selectedTabIndex(){return this._selectedTabIndex}set selectedTabIndex(e){this._selectedTabIndex!==e&&(this._selectedTabIndex=e,this.sliderElement&&this.updateSlider())}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback()}firstUpdated(){this.sliderElement=this.querySelector(".mealz-slider-tab__background"),this.updateSlider()}render(){return c`
|
|
2
2
|
<div class="mealz-slider-tabs">
|
|
3
3
|
${this.tabs.map((e,t)=>c`
|
|
4
4
|
<button
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"../assets/store-locator-
|
|
1
|
+
import"../assets/store-locator-Crx8huGH.js";import{N as p,D as m,k as u,m as l}from"../assets/no-shadow-element-l9trQfcI.js";import{t as d}from"../assets/custom-element-BhZVzxrc.js";import{n as h}from"../assets/property-leIVgCvV.js";import"../assets/state-CccUMzBZ.js";import"../assets/query-BApjzB0v.js";var b=Object.defineProperty,w=Object.getOwnPropertyDescriptor,c=(e,s,i,a)=>{for(var t=a>1?void 0:a?w(s,i):s,o=e.length-1,n;o>=0;o--)(n=e[o])&&(t=(a?n(s,i,t):n(t))||t);return a&&t&&b(s,i,t),t};let r=class extends p{constructor(){super(),this.analyticsPath="",this.subscriptions=[],this.styleURL=new URL("./store-indicator/store-indicator.css",this.getBaseURL())}connectedCallback(){super.connectedCallback(),this.setCurrentPosLabel()}disconnectedCallback(){super.disconnectedCallback(),this.subscriptions.forEach(e=>e.unsubscribe())}render(){return this.currentPosLabel?u`
|
|
2
2
|
<div class="mealz-store-indicator">
|
|
3
3
|
<span class="mealz-store-indicator__pos-label mealz-ds-text weight-xl">
|
|
4
4
|
${this.currentPosLabel}
|