ng-miam 8.5.0 → 8.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/bundles/ng-miam.umd.js +176 -106
  2. package/bundles/ng-miam.umd.js.map +1 -1
  3. package/bundles/ng-miam.umd.min.js +1 -1
  4. package/bundles/ng-miam.umd.min.js.map +1 -1
  5. package/esm2015/lib/_components/modal/modal.component.js +17 -18
  6. package/esm2015/lib/_services/basket-transfer.service.js +11 -6
  7. package/esm2015/lib/_services/baskets-synchronizing/baskets-comparator.service.js +3 -3
  8. package/esm2015/lib/_services/baskets-synchronizing/baskets-synchronizer.service.js +43 -16
  9. package/esm2015/lib/_services/baskets.service.js +18 -5
  10. package/esm2015/lib/_services/context.service.js +1 -1
  11. package/esm2015/lib/_services/interceptor.service.js +2 -2
  12. package/esm2015/lib/_services/list-scan.service.js +2 -2
  13. package/esm2015/lib/_services/user.service.js +4 -7
  14. package/esm2015/lib/_types/items-comparator.js +3 -3
  15. package/esm2015/lib/_web-components/list-scan/files-inputs/files-inputs.component.js +14 -14
  16. package/esm2015/lib/_web-components/list-scan/list-scan.component.js +24 -11
  17. package/esm2015/lib/_web-components/preferences/preferences.component.js +5 -4
  18. package/esm2015/lib/_web-components/recipe-cards/recipe-card/recipe-card.component.js +2 -2
  19. package/esm2015/lib/_web-components/recipe-catalog/recipe-catalog.component.js +7 -1
  20. package/fesm2015/ng-miam.js +164 -102
  21. package/fesm2015/ng-miam.js.map +1 -1
  22. package/lib/_services/basket-transfer.service.d.ts +2 -1
  23. package/lib/_services/basket-transfer.service.d.ts.map +1 -1
  24. package/lib/_services/baskets-synchronizing/baskets-synchronizer.service.d.ts +15 -0
  25. package/lib/_services/baskets-synchronizing/baskets-synchronizer.service.d.ts.map +1 -1
  26. package/lib/_services/baskets.service.d.ts +7 -1
  27. package/lib/_services/baskets.service.d.ts.map +1 -1
  28. package/lib/_services/context.service.d.ts.map +1 -1
  29. package/lib/_services/list-scan.service.d.ts +1 -1
  30. package/lib/_services/list-scan.service.d.ts.map +1 -1
  31. package/lib/_services/user.service.d.ts +1 -1
  32. package/lib/_services/user.service.d.ts.map +1 -1
  33. package/lib/_types/items-comparator.d.ts +1 -1
  34. package/lib/_types/items-comparator.d.ts.map +1 -1
  35. package/lib/_web-components/list-scan/files-inputs/files-inputs.component.d.ts +2 -2
  36. package/lib/_web-components/list-scan/files-inputs/files-inputs.component.d.ts.map +1 -1
  37. package/lib/_web-components/list-scan/list-scan.component.d.ts +8 -3
  38. package/lib/_web-components/list-scan/list-scan.component.d.ts.map +1 -1
  39. package/lib/_web-components/preferences/preferences.component.d.ts.map +1 -1
  40. package/lib/_web-components/recipe-catalog/recipe-catalog.component.d.ts.map +1 -1
  41. package/package.json +1 -1
@@ -2479,11 +2479,8 @@
2479
2479
  _this.ignoredBasketsService.resetIgnoredIngredients();
2480
2480
  }
2481
2481
  _this.initRoles();
2482
- return rxjs.forkJoin([
2483
- _this.initProvider(),
2484
- _this.initSupplier()
2485
- ]);
2486
- }));
2482
+ return rxjs.combineLatest([_this.initProvider(), _this.initSupplier()]); // forkJoin does not work with BehaviorSubject as it never completes
2483
+ }), operators.skipWhile(function (res) { return res[0] === undefined || res[1] === undefined; }), operators.take(1));
2487
2484
  };
2488
2485
  UserService.prototype.resetUserInfo = function () {
2489
2486
  this.userInfo$.next(null);
@@ -4253,13 +4250,27 @@
4253
4250
  }));
4254
4251
  };
4255
4252
  /** ******************************************************** ADD FROM PICTURE ******************************************************** **/
4256
- BasketsService.prototype.addEntriesFromPicture = function (file, include, disableIngredientsMatching) {
4253
+ /**
4254
+ * Add entries to basket from a picture or file
4255
+ * @param file an image or PDF of a groceries list
4256
+ * @param include
4257
+ * @param isSchoolList if true, indicates to the api that the file is a school shopping list
4258
+ */
4259
+ BasketsService.prototype.addEntriesFromPicture = function (file, include, isSchoolList) {
4257
4260
  var _this = this;
4258
4261
  if (include === void 0) { include = []; }
4259
- if (disableIngredientsMatching === void 0) { disableIngredientsMatching = false; }
4260
- return this.waitForBasket.pipe(operators.switchMap(function (basket) {
4261
- var url = environment$1.miamAPI + "/api/v1/baskets/" + basket.id + "/add-entries-from-picture" +
4262
- ("?fields[baskets]=" + BASKET_SPARSE_FIELDS.baskets.join(',') + (disableIngredientsMatching ? '&disable_matching=true' : ''));
4262
+ if (isSchoolList === void 0) { isSchoolList = false; }
4263
+ return this.waitForBasket.pipe(operators.switchMap(function (basket) { return _this.posService.pos$.pipe(operators.skipWhile(function (pos) { return !pos; }), operators.take(1), operators.map(function (pos) { return [basket, pos]; })); }), operators.switchMap(function (_b) {
4264
+ var _c = __read(_b, 2), basket = _c[0], pos = _c[1];
4265
+ var url;
4266
+ if (isSchoolList) {
4267
+ url = environment$1.miamAPI + "/api/v1/baskets/school-list?fields[baskets]=" + BASKET_SPARSE_FIELDS.baskets.join(',') +
4268
+ ("&point_of_sale_id=" + pos.id);
4269
+ }
4270
+ else {
4271
+ url = environment$1.miamAPI + "/api/v1/baskets/" + basket.id + "/add-entries-from-picture" +
4272
+ ("?fields[baskets]=" + BASKET_SPARSE_FIELDS.baskets.join(','));
4273
+ }
4263
4274
  var formData = new FormData();
4264
4275
  formData.append('picture', file);
4265
4276
  formData.append('include', include.join(','));
@@ -4847,11 +4858,12 @@
4847
4858
  }
4848
4859
  };
4849
4860
  /**
4850
- * Remove any entries that are not in the current basket
4861
+ * Remove any entries that are not in the current basket or any remaining entry that does not have the same ext-id as the product compared
4851
4862
  * @param entriesInBasket Content of the last received Miam basket
4852
4863
  */
4853
4864
  ItemsComparator.prototype.cleanBasketEntries = function (entriesInBasket) {
4854
- this.miamBasketEntries = this.miamBasketEntries.filter(function (entry) { return entriesInBasket.find(function (e) { return e.id === entry.id; }); });
4865
+ var _this = this;
4866
+ this.miamBasketEntries = this.miamBasketEntries.filter(function (entry) { var _a, _b, _c; return ((_b = (_a = entriesInBasket.find(function (e) { return e.id === entry.id; })) === null || _a === void 0 ? void 0 : _a.selectedItem) === null || _b === void 0 ? void 0 : _b.attributes['ext-id']) === ((_c = _this.retailerProduct) === null || _c === void 0 ? void 0 : _c.id); });
4855
4867
  };
4856
4868
  /**
4857
4869
  * Clear miamBasketEntries
@@ -4897,8 +4909,8 @@
4897
4909
  BasketsComparatorService.prototype.initBasketComparator = function (firstMiamBasket, firstRetailerBasket, fromRetailer) {
4898
4910
  this.extIdToItemsComparator = {};
4899
4911
  this.updateRetailerProducts(firstRetailerBasket);
4900
- this.updateEntriesFromMiam(firstMiamBasket);
4901
4912
  this.addEntriesFromMiam(firstMiamBasket);
4913
+ this.updateEntriesFromMiam(firstMiamBasket);
4902
4914
  if (fromRetailer) {
4903
4915
  return this.resolveFromRetailer();
4904
4916
  }
@@ -4927,8 +4939,8 @@
4927
4939
  })) + "\n - current comparison: " + JSON.stringify(Object.keys(this.extIdToItemsComparator).map(function (key) { return ({ id: key, MQ: _this.extIdToItemsComparator[key].miamQuantity, RQ: _this.extIdToItemsComparator[key].retailerQuantity }); })));
4928
4940
  // Note: MQ means Miam Quantity and RQ means Retailer Quantity but this makes the logs more compact and thus readable
4929
4941
  this.cleanMiamEntries(miamBasket);
4930
- this.updateEntriesFromMiam(miamBasket);
4931
4942
  this.addEntriesFromMiam(miamBasket);
4943
+ this.updateEntriesFromMiam(miamBasket);
4932
4944
  return this.resolveFromMiam(miamBasket);
4933
4945
  };
4934
4946
  /**
@@ -5093,6 +5105,8 @@
5093
5105
  this.comparatorService = comparatorService;
5094
5106
  this.basketsService = basketsService;
5095
5107
  this.supplierService = supplierService;
5108
+ this.ignoreUpdatesFromMiam = false;
5109
+ this.firstMiamBasketProcess = true;
5096
5110
  /**
5097
5111
  * This method needs to be passed to Miam by the retailer
5098
5112
  */
@@ -5105,26 +5119,46 @@
5105
5119
  _this.listenToMiam();
5106
5120
  })).subscribe();
5107
5121
  }
5122
+ Object.defineProperty(BasketsSynchronizerService.prototype, "ignoreMiam", {
5123
+ /**
5124
+ * The scan-list is not supposed to add product to the retailer's cart before it is confirmed so the easiest way to prevent this is to
5125
+ * ignore updates from Miam until then.
5126
+ * When stopping ignoring updates from Miam, trigger and update from Miam
5127
+ */
5128
+ set: function (ignore) {
5129
+ var _this = this;
5130
+ this.ignoreUpdatesFromMiam = ignore;
5131
+ if (!ignore) {
5132
+ this.basketsService.activeBasketEntries().pipe(operators.take(1)).subscribe(function (miamBasket) { return _this.processMiamBasket(miamBasket); });
5133
+ }
5134
+ },
5135
+ enumerable: false,
5136
+ configurable: true
5137
+ });
5108
5138
  /**
5109
5139
  * Start listening on Miam's basket
5110
5140
  */
5111
5141
  BasketsSynchronizerService.prototype.listenToMiam = function () {
5112
5142
  var _this = this;
5113
- var isFirstSubscribe = true;
5114
5143
  this.basketsService.activeBasketEntries().subscribe(function (miamBasket) {
5115
- var _a;
5116
- // eslint-disable-next-line no-console
5117
- console.debug("[Miam] Miam basket received\n - " + JSON.stringify(miamBasket === null || miamBasket === void 0 ? void 0 : miamBasket.map(function (e) { return ({ id: e.id, quantity: e.attributes.quantity }); })) + "\n - First Miam basket was: " + JSON.stringify((_a = _this.firstMiamBasket) === null || _a === void 0 ? void 0 : _a.map(function (e) { return ({ id: e.id, quantity: e.attributes.quantity }); })));
5118
- if (!_this.firstMiamBasket && miamBasket.length === 0 && isFirstSubscribe) {
5119
- // Skip first empty arrays received
5120
- isFirstSubscribe = false;
5121
- return;
5122
- }
5123
- else {
5124
- _this.miamBasketChanged(miamBasket);
5144
+ if (!_this.ignoreUpdatesFromMiam) {
5145
+ _this.processMiamBasket(miamBasket);
5125
5146
  }
5126
5147
  });
5127
5148
  };
5149
+ BasketsSynchronizerService.prototype.processMiamBasket = function (miamBasket) {
5150
+ var _a;
5151
+ // eslint-disable-next-line no-console
5152
+ console.debug("[Miam] Miam basket received\n - " + JSON.stringify(miamBasket === null || miamBasket === void 0 ? void 0 : miamBasket.map(function (e) { return ({ id: e.id, quantity: e.attributes.quantity }); })) + "\n - First Miam basket was: " + JSON.stringify((_a = this.firstMiamBasket) === null || _a === void 0 ? void 0 : _a.map(function (e) { return ({ id: e.id, quantity: e.attributes.quantity }); })));
5153
+ if (!this.firstMiamBasket && miamBasket.length === 0 && this.firstMiamBasketProcess) {
5154
+ // Skip first empty arrays received
5155
+ this.firstMiamBasketProcess = false;
5156
+ return;
5157
+ }
5158
+ else {
5159
+ this.miamBasketChanged(miamBasket);
5160
+ }
5161
+ };
5128
5162
  /**
5129
5163
  * Process the new basket from Miam
5130
5164
  * @param miamBasket entries from updated basket
@@ -5238,12 +5272,22 @@
5238
5272
  this.isProcessingRetailerEvent = false;
5239
5273
  return;
5240
5274
  }
5241
- this.basketsService.removeBasketEntries(entriesToRemove).subscribe(function () {
5275
+ this.entriesToClean().pipe(operators.switchMap(function (entries) {
5276
+ entriesToRemove = __spread(entriesToRemove, entries);
5277
+ return _this.basketsService.removeBasketEntries(entriesToRemove);
5278
+ })).subscribe(function () {
5242
5279
  // eslint-disable-next-line no-console
5243
5280
  console.debug('[Miam] stop processing retailer event');
5244
5281
  _this.isProcessingRetailerEvent = false;
5245
5282
  });
5246
5283
  };
5284
+ /**
5285
+ * Only in the scan-list can entries with no selectedItem can be added to the basket. If there are any when the retailer
5286
+ * sends an update, return them so we can add them to entriesToRemove
5287
+ */
5288
+ BasketsSynchronizerService.prototype.entriesToClean = function () {
5289
+ return this.basketsService.activeBasketEntries().pipe(operators.take(1), operators.map(function (entries) { return entries.filter(function (entry) { return !entry.selectedItem; }).map(function (entry) { return ({ id: entry.id, quantity: entry.quantity }); }); }));
5290
+ };
5247
5291
  // -----------------------------------------------------------------------------------------------------------------------------
5248
5292
  // ---------------------------------------------- To be called on retailer's side ----------------------------------------------
5249
5293
  // -----------------------------------------------------------------------------------------------------------------------------
@@ -7724,7 +7768,7 @@
7724
7768
  i0__namespace.ɵɵelementEnd();
7725
7769
  }
7726
7770
  }
7727
- var _c4$4 = function (a0, a1) { return { "image-container-mode": a0, "dragover-mode": a1 }; };
7771
+ var _c4$3 = function (a0, a1) { return { "image-container-mode": a0, "dragover-mode": a1 }; };
7728
7772
  var DragDropInputComponent = /** @class */ (function () {
7729
7773
  function DragDropInputComponent(cdr) {
7730
7774
  this.cdr = cdr;
@@ -7852,7 +7896,7 @@
7852
7896
  }
7853
7897
  if (rf & 2) {
7854
7898
  var _r1 = i0__namespace.ɵɵreference(3);
7855
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction2(6, _c4$4, ctx.imageUrl, ctx.isDragover && !ctx.imageUrl));
7899
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction2(6, _c4$3, ctx.imageUrl, ctx.isDragover && !ctx.imageUrl));
7856
7900
  i0__namespace.ɵɵadvance(1);
7857
7901
  i0__namespace.ɵɵproperty("ngIf", !ctx.photoMode && !ctx.bigImageWarning)("ngIfElse", _r1);
7858
7902
  i0__namespace.ɵɵadvance(5);
@@ -8174,6 +8218,7 @@
8174
8218
  this.recipesService = recipesService;
8175
8219
  this.supplierService = supplierService;
8176
8220
  this.basketIsBeingTransferred = new rxjs.BehaviorSubject(false);
8221
+ this.transferComplete$ = new rxjs.Subject();
8177
8222
  this.subscriptions = [];
8178
8223
  this.subscriptions.push(this.startTransferOnSupplierLoaded(), this.checkBasketStatus());
8179
8224
  }
@@ -8253,7 +8298,11 @@
8253
8298
  sessionStorage.setItem('_miam/basketActionInterrupted', 'true');
8254
8299
  return this.http.patch(transferBasketUrl, {}).pipe(
8255
8300
  // If basket transfer was aborted on affiliated website, PATCH returns an error, but we don't need to do anything about it
8256
- operators.catchError(function () { return rxjs.of(null); }), operators.switchMap(function () { return _this.basketsService.refreshCurrentBasket().pipe(operators.switchMap(function () {
8301
+ operators.catchError(function () {
8302
+ _this.transferComplete$.next();
8303
+ return rxjs.of(null);
8304
+ }), operators.switchMap(function () { return _this.basketsService.refreshCurrentBasket().pipe(operators.switchMap(function () {
8305
+ _this.transferComplete$.next();
8257
8306
  sessionStorage.removeItem('_miam/basketActionInterrupted');
8258
8307
  return rxjs.of(true);
8259
8308
  })); }));
@@ -8270,12 +8319,12 @@
8270
8319
  };
8271
8320
  BasketTransferService.prototype.forcePosIfUnset = function (transferPosExtId) {
8272
8321
  var _this = this;
8273
- return this.posService.pos$.pipe(operators.map(function (pos) {
8322
+ return this.posService.pos$.pipe(operators.takeUntil(this.transferComplete$), operators.switchMap(function (pos) {
8274
8323
  var posSet = pos && pos.extId === transferPosExtId;
8275
8324
  if (!posSet) {
8276
8325
  _this.contextService.forcePosCallback(transferPosExtId);
8277
8326
  }
8278
- return posSet;
8327
+ return rxjs.of(posSet);
8279
8328
  }));
8280
8329
  };
8281
8330
  BasketTransferService.prototype.getTransferData = function () {
@@ -8505,7 +8554,7 @@
8505
8554
  MiamInterceptor.prototype.setMiamHeaders = function (request) {
8506
8555
  var headersToAdd = {
8507
8556
  'miam-origin': this.context.origin.value,
8508
- 'miam-front-version': '8.5.0',
8557
+ 'miam-front-version': '8.5.1',
8509
8558
  'miam-front-type': 'web',
8510
8559
  'miam-api-version': '4.7.0'
8511
8560
  };
@@ -8573,7 +8622,7 @@
8573
8622
  this.sendingFile.next(true);
8574
8623
  this.subscriptions.push(this.basketsService.currentAndPreviewFetching.pipe(operators.skipWhile(function (fetching) { return fetching; }), operators.take(1), operators.switchMap(function () { return _this.basketsService.waitForBasketEntries; })).subscribe(function (currentEntries) {
8575
8624
  _this.entriesToIgnore = currentEntries;
8576
- _this.basketsService.addEntriesFromPicture(file, ['basket-entries'], !!_this.disableIngredientsMatching).pipe(operators.switchMap(function () { return _this.basketsService.waitForBasketEntries; })).subscribe(function (entries) {
8625
+ _this.basketsService.addEntriesFromPicture(file, ['basket-entries'], !!_this.isSchoolList).pipe(operators.switchMap(function () { return _this.basketsService.waitForBasketEntries; })).subscribe(function (entries) {
8577
8626
  var addedEntries = _this.filterOldEntries(entries);
8578
8627
  _this.listenForBasketChanges();
8579
8628
  _this.sendingFile.next(false);
@@ -9250,29 +9299,6 @@
9250
9299
  }, null);
9251
9300
  })();
9252
9301
 
9253
- var LoaderComponent = /** @class */ (function () {
9254
- function LoaderComponent() {
9255
- }
9256
- return LoaderComponent;
9257
- }());
9258
- LoaderComponent.ɵfac = function LoaderComponent_Factory(t) { return new (t || LoaderComponent)(); };
9259
- LoaderComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: LoaderComponent, selectors: [["ng-miam-loader"]], decls: 1, vars: 0, consts: [[1, "miam-loader"]], template: function LoaderComponent_Template(rf, ctx) {
9260
- if (rf & 1) {
9261
- i0__namespace.ɵɵelement(0, "div", 0);
9262
- }
9263
- }, styles: [".miam-loader{border:var(--m-loader-thickness) solid var(--m-color-grey);border-top:var(--m-loader-thickness) solid var(--m-color-ternary);border-radius:var(--m-border-radius-circle);width:var(--m-loader-size);height:var(--m-loader-size);animation:miam-loader-spin .5s linear infinite}@keyframes miam-loader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}"], encapsulation: 2 });
9264
- (function () {
9265
- (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(LoaderComponent, [{
9266
- type: i0.Component,
9267
- args: [{
9268
- selector: 'ng-miam-loader',
9269
- templateUrl: './loader.component.html',
9270
- encapsulation: i0.ViewEncapsulation.None,
9271
- styleUrls: ['./loader.component.scss']
9272
- }]
9273
- }], function () { return []; }, null);
9274
- })();
9275
-
9276
9302
  function ModalComponent_ng_container_0_div_7_Template(rf, ctx) {
9277
9303
  if (rf & 1) {
9278
9304
  i0__namespace.ɵɵelementStart(0, "div", 13);
@@ -9319,18 +9345,18 @@
9319
9345
  i0__namespace.ɵɵtextInterpolate(ctx_r9.cancelButtonText);
9320
9346
  }
9321
9347
  }
9322
- function ModalComponent_ng_container_0_div_14_ng_container_1_button_2_ng_miam_loader_2_Template(rf, ctx) {
9348
+ function ModalComponent_ng_container_0_div_14_ng_container_1_button_2_div_2_Template(rf, ctx) {
9323
9349
  if (rf & 1) {
9324
- i0__namespace.ɵɵelement(0, "ng-miam-loader");
9350
+ i0__namespace.ɵɵelement(0, "div", 23);
9325
9351
  }
9326
9352
  }
9327
9353
  function ModalComponent_ng_container_0_div_14_ng_container_1_button_2_Template(rf, ctx) {
9328
9354
  if (rf & 1) {
9329
9355
  var _r12_1 = i0__namespace.ɵɵgetCurrentView();
9330
- i0__namespace.ɵɵelementStart(0, "button", 21);
9356
+ i0__namespace.ɵɵelementStart(0, "button", 22);
9331
9357
  i0__namespace.ɵɵlistener("click", function ModalComponent_ng_container_0_div_14_ng_container_1_button_2_Template_button_click_0_listener() { i0__namespace.ɵɵrestoreView(_r12_1); var ctx_r11 = i0__namespace.ɵɵnextContext(4); return ctx_r11.onCancel(); });
9332
9358
  i0__namespace.ɵɵtemplate(1, ModalComponent_ng_container_0_div_14_ng_container_1_button_2_span_1_Template, 2, 1, "span", 0);
9333
- i0__namespace.ɵɵtemplate(2, ModalComponent_ng_container_0_div_14_ng_container_1_button_2_ng_miam_loader_2_Template, 1, 0, "ng-miam-loader", 0);
9359
+ i0__namespace.ɵɵtemplate(2, ModalComponent_ng_container_0_div_14_ng_container_1_button_2_div_2_Template, 1, 0, "div", 21);
9334
9360
  i0__namespace.ɵɵelementEnd();
9335
9361
  }
9336
9362
  if (rf & 2) {
@@ -9354,9 +9380,9 @@
9354
9380
  i0__namespace.ɵɵtextInterpolate(ctx_r7.confirmButtonText);
9355
9381
  }
9356
9382
  }
9357
- function ModalComponent_ng_container_0_div_14_ng_container_1_ng_miam_loader_5_Template(rf, ctx) {
9383
+ function ModalComponent_ng_container_0_div_14_ng_container_1_div_5_Template(rf, ctx) {
9358
9384
  if (rf & 1) {
9359
- i0__namespace.ɵɵelement(0, "ng-miam-loader");
9385
+ i0__namespace.ɵɵelement(0, "div", 23);
9360
9386
  }
9361
9387
  }
9362
9388
  function ModalComponent_ng_container_0_div_14_ng_container_1_Template(rf, ctx) {
@@ -9368,7 +9394,7 @@
9368
9394
  i0__namespace.ɵɵelementStart(3, "button", 20);
9369
9395
  i0__namespace.ɵɵlistener("click", function ModalComponent_ng_container_0_div_14_ng_container_1_Template_button_click_3_listener() { i0__namespace.ɵɵrestoreView(_r14_1); var ctx_r13 = i0__namespace.ɵɵnextContext(3); return ctx_r13.onConfirm(); });
9370
9396
  i0__namespace.ɵɵtemplate(4, ModalComponent_ng_container_0_div_14_ng_container_1_span_4_Template, 2, 1, "span", 0);
9371
- i0__namespace.ɵɵtemplate(5, ModalComponent_ng_container_0_div_14_ng_container_1_ng_miam_loader_5_Template, 1, 0, "ng-miam-loader", 0);
9397
+ i0__namespace.ɵɵtemplate(5, ModalComponent_ng_container_0_div_14_ng_container_1_div_5_Template, 1, 0, "div", 21);
9372
9398
  i0__namespace.ɵɵelementEnd();
9373
9399
  i0__namespace.ɵɵelementEnd();
9374
9400
  i0__namespace.ɵɵelementContainerEnd();
@@ -9389,22 +9415,22 @@
9389
9415
  if (rf & 1) {
9390
9416
  var _r16_1 = i0__namespace.ɵɵgetCurrentView();
9391
9417
  i0__namespace.ɵɵelementContainerStart(0);
9392
- i0__namespace.ɵɵelementStart(1, "div", 22);
9393
- i0__namespace.ɵɵelementStart(2, "div", 23);
9394
- i0__namespace.ɵɵelementStart(3, "div", 24);
9418
+ i0__namespace.ɵɵelementStart(1, "div", 24);
9419
+ i0__namespace.ɵɵelementStart(2, "div", 25);
9420
+ i0__namespace.ɵɵelementStart(3, "div", 26);
9395
9421
  i0__namespace.ɵɵelementStart(4, "span");
9396
9422
  i0__namespace.ɵɵtext(5);
9397
9423
  i0__namespace.ɵɵpipe(6, "currency");
9398
9424
  i0__namespace.ɵɵelementEnd();
9399
9425
  i0__namespace.ɵɵelementEnd();
9400
- i0__namespace.ɵɵelementStart(7, "span", 25);
9401
- i0__namespace.ɵɵi18n(8, 26);
9426
+ i0__namespace.ɵɵelementStart(7, "span", 27);
9427
+ i0__namespace.ɵɵi18n(8, 28);
9402
9428
  i0__namespace.ɵɵelementEnd();
9403
9429
  i0__namespace.ɵɵelementEnd();
9404
- i0__namespace.ɵɵelementStart(9, "button", 27);
9430
+ i0__namespace.ɵɵelementStart(9, "button", 29);
9405
9431
  i0__namespace.ɵɵlistener("click", function ModalComponent_ng_container_0_div_14_ng_container_2_Template_button_click_9_listener() { i0__namespace.ɵɵrestoreView(_r16_1); var ctx_r15 = i0__namespace.ɵɵnextContext(3); return ctx_r15.basketTransferService.confirmBasket(); });
9406
9432
  i0__namespace.ɵɵelementStart(10, "span");
9407
- i0__namespace.ɵɵi18n(11, 28);
9433
+ i0__namespace.ɵɵi18n(11, 30);
9408
9434
  i0__namespace.ɵɵelementEnd();
9409
9435
  i0__namespace.ɵɵelementEnd();
9410
9436
  i0__namespace.ɵɵelementEnd();
@@ -9589,7 +9615,7 @@
9589
9615
  else {
9590
9616
  i18n_6 = $localize(templateObject_4$p || (templateObject_4$p = __makeTemplateObject([":\u241Fd3276a66cd37a042eef60b47ad3ac37a6935cb08\u241F6395936232189121511:Passer commande"], [":\u241Fd3276a66cd37a042eef60b47ad3ac37a6935cb08\u241F6395936232189121511:Passer commande"])));
9591
9617
  }
9592
- return [[4, "ngIf"], [1, "miam-modal__container", 3, "ngClass"], [1, "miam-shadow-overlay", 3, "click"], [1, "miam-modal", "miam-ds-text", 3, "ngClass"], [1, "miam-modal__content-container"], [1, "miam-modal__header-container"], [1, "miam-modal__header"], ["class", "miam-modal__title miam-ds-text size-xl weight-xxl", 4, "ngIf"], ["class", "miam-modal__title miam-ds-text", 4, "ngIf"], [1, "miam-modal__close-icon", "miam-ds-button", "ghost", 3, "click"], [1, "miam-modal__content__scroll-protection"], [1, "miam-modal__content", "miam-ds-text"], ["class", "miam-modal__actions", 4, "ngIf"], [1, "miam-modal__title", "miam-ds-text", "size-xl", "weight-xxl"], [1, "miam-modal__title", "miam-ds-text"], i18n_0, i18n_2, [1, "miam-modal__actions"], [1, "miam-modal__interactions"], ["class", "miam-ds-button secondary", 3, "disabled", "click", 4, "ngIf"], [1, "miam-ds-button", 3, "disabled", "ngClass", "click"], [1, "miam-ds-button", "secondary", 3, "disabled", "click"], [1, "miam-modal__place-order"], [1, "miam-modal__place-order-price"], [1, "miam-modal__total-price", "miam-ds-text", "size-l", "weight-xxl"], [1, "miam-modal__total-price-label", "miam-ds-text", "size-s"], i18n_4, [1, "miam-modal__place-order-cta", "miam-ds-button", 3, "ngClass", "click"], i18n_6];
9618
+ return [[4, "ngIf"], [1, "miam-modal__container", 3, "ngClass"], [1, "miam-shadow-overlay", 3, "click"], [1, "miam-modal", "miam-ds-text", 3, "ngClass"], [1, "miam-modal__content-container"], [1, "miam-modal__header-container"], [1, "miam-modal__header"], ["class", "miam-modal__title miam-ds-text size-xl weight-xxl", 4, "ngIf"], ["class", "miam-modal__title miam-ds-text", 4, "ngIf"], [1, "miam-modal__close-icon", "miam-ds-button", "ghost", 3, "click"], [1, "miam-modal__content__scroll-protection"], [1, "miam-modal__content", "miam-ds-text"], ["class", "miam-modal__actions", 4, "ngIf"], [1, "miam-modal__title", "miam-ds-text", "size-xl", "weight-xxl"], [1, "miam-modal__title", "miam-ds-text"], i18n_0, i18n_2, [1, "miam-modal__actions"], [1, "miam-modal__interactions"], ["class", "miam-ds-button secondary", 3, "disabled", "click", 4, "ngIf"], [1, "miam-ds-button", 3, "disabled", "ngClass", "click"], ["class", "miam-ds-loader", 4, "ngIf"], [1, "miam-ds-button", "secondary", 3, "disabled", "click"], [1, "miam-ds-loader"], [1, "miam-modal__place-order"], [1, "miam-modal__place-order-price"], [1, "miam-modal__total-price", "miam-ds-text", "size-l", "weight-xxl"], [1, "miam-modal__total-price-label", "miam-ds-text", "size-s"], i18n_4, [1, "miam-modal__place-order-cta", "miam-ds-button", 3, "ngClass", "click"], i18n_6];
9593
9619
  }, template: function ModalComponent_Template(rf, ctx) {
9594
9620
  if (rf & 1) {
9595
9621
  i0__namespace.ɵɵprojectionDef(_c9);
@@ -9598,7 +9624,7 @@
9598
9624
  if (rf & 2) {
9599
9625
  i0__namespace.ɵɵproperty("ngIf", ctx.display);
9600
9626
  }
9601
- }, directives: [i2__namespace$1.NgIf, i2__namespace$1.NgClass, LoaderComponent], pipes: [i2__namespace$1.CurrencyPipe], styles: [".miam-no-scroll{overflow:hidden}.miam-modal__container .miam-shadow-overlay{position:fixed;background:var(--miam-ds-color-neutral-black);animation-name:show;animation-duration:.3s;opacity:.6;animation-timing-function:ease-in-out;z-index:var(--m-z-index-modal-overlay);top:0;left:0;width:100vw;height:100dvh;-webkit-tap-highlight-color:transparent}@keyframes show{0%{opacity:0}to{opacity:.6}}.miam-modal__container .miam-modal{z-index:var(--m-z-index-modal);position:fixed;overflow:hidden;background-color:var(--miam-ds-color-background-primary);display:flex;flex-direction:column}@media print{.miam-modal__container .miam-modal{overflow-y:unset!important;position:unset!important;height:unset!important}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__close-icon{display:none}}.miam-modal__container .miam-modal.with-header .miam-modal__content-container .miam-modal__content{margin-top:24px;margin-bottom:24px}.miam-modal__container .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__title{display:none}.miam-modal__container .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{position:absolute;top:0;right:0;z-index:var(--m-z-index-position-absolute-high)}.miam-modal__container .miam-modal .miam-modal__content-container{position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header{display:flex;flex-direction:row;justify-content:space-between}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header .miam-modal__title{font-weight:900;overflow:hidden;text-overflow:ellipsis;align-self:center}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:8px;padding:16px;background:50%/24px no-repeat url(https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_primary.svg)}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__content__scroll-protection{overflow:hidden;height:100%;display:flex}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__content{width:100%;overflow-y:auto;overflow-x:hidden;scrollbar-color:var(--miam-ds-color-primary-100),var(--miam-ds-color-primary)}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__interactions{display:flex;justify-content:flex-end;flex-direction:row}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__interactions button+button{margin-left:12px}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__place-order{display:flex;justify-content:space-between;align-items:center}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__place-order .miam-modal__place-order-price{display:flex;flex-direction:column}.miam-modal__container.center .miam-modal{height:auto;min-width:464px;width:600px;max-width:700px;max-height:96dvh;box-sizing:border-box;top:50%;left:50%;right:unset;transform:translate(-50%,-50%);border-radius:8px;background-color:var(--miam-ds-color-neutral-white);padding:24px}.miam-modal__container.right .miam-modal{right:0;animation-name:openRightDrawer}@keyframes openRightDrawer{0%{right:-1200px}to{right:0}}.miam-modal__container.left .miam-modal{left:0;animation-name:openLeftDrawer}@keyframes openLeftDrawer{0%{left:-1200px}to{left:0}}.miam-modal__container.left .miam-modal,.miam-modal__container.right .miam-modal{animation-duration:.5s;animation-timing-function:cubic-bezier(.75,0,.2,1);height:100%;width:1000px;top:0}.miam-modal__container.left .miam-modal .miam-modal__content-container,.miam-modal__container.right .miam-modal .miam-modal__content-container{height:100%;box-sizing:border-box}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__content,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__content{height:100%;box-sizing:border-box;margin:unset}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions{border-top:1px solid var(--miam-ds-color-border)}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions{padding:24px}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order{padding:18px}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price{color:var(--miam-ds-color-primary,#24748f)}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price-label,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price-label{color:var(--miam-ds-color-neutral-400,#8c96a2)}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__header,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__header{border-bottom:1px solid var(--miam-ds-color-border);padding:24px}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:unset}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__content,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__content{padding:16px}.miam-modal__container.left .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon,.miam-modal__container.right .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:24px}.miam-modal__container.left.small-width .miam-modal,.miam-modal__container.right.small-width .miam-modal{min-width:680px;max-width:680px}.miam-modal__container.left.tiny-width .miam-modal,.miam-modal__container.right.tiny-width .miam-modal{min-width:360px;max-width:360px}@media (max-width:1023px){.miam-modal__container.center .miam-modal{min-width:unset;transform:unset;border-radius:unset;padding:unset}.miam-modal__container.center .miam-modal.with-header .miam-modal__content-container .miam-modal__header{border-bottom:1px solid var(--miam-ds-color-border);padding:24px}.miam-modal__container.center .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:unset}.miam-modal__container.center .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:24px}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__content{box-sizing:border-box;height:100%;margin:unset;padding:24px}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions{border-top:1px solid var(--miam-ds-color-border);padding:24px}.miam-modal__container.center .miam-modal,.miam-modal__container.left .miam-modal,.miam-modal__container.left.small-width .miam-modal,.miam-modal__container.left.tiny-width .miam-modal,.miam-modal__container.right .miam-modal,.miam-modal__container.right.small-width .miam-modal,.miam-modal__container.right.tiny-width .miam-modal{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;top:0;bottom:0;right:0;animation-name:openBottomSheet;animation-duration:.5s;animation-timing-function:cubic-bezier(.075,.82,.165,1)}@keyframes openBottomSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions{flex-direction:column-reverse}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary{background-color:var(--miam-ds-color-primary)}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary{background-color:transparent}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button{margin-left:unset;margin-bottom:12px}}"], encapsulation: 2, changeDetection: 0 });
9627
+ }, directives: [i2__namespace$1.NgIf, i2__namespace$1.NgClass], pipes: [i2__namespace$1.CurrencyPipe], styles: [".miam-no-scroll{overflow:hidden}.miam-modal__container .miam-shadow-overlay{position:fixed;background:var(--miam-ds-color-neutral-black);animation-name:show;animation-duration:.3s;opacity:.6;animation-timing-function:ease-in-out;z-index:var(--m-z-index-modal-overlay);top:0;left:0;width:100vw;height:100dvh;-webkit-tap-highlight-color:transparent}@keyframes show{0%{opacity:0}to{opacity:.6}}.miam-modal__container .miam-modal{z-index:var(--m-z-index-modal);position:fixed;overflow:hidden;background-color:var(--miam-ds-color-background-primary);display:flex;flex-direction:column}@media print{.miam-modal__container .miam-modal{overflow-y:unset!important;position:unset!important;height:unset!important}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__close-icon{display:none}}.miam-modal__container .miam-modal.with-header .miam-modal__content-container .miam-modal__content{margin-top:24px;margin-bottom:24px}.miam-modal__container .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__title{display:none}.miam-modal__container .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{position:absolute;top:0;right:0;z-index:var(--m-z-index-position-absolute-high)}.miam-modal__container .miam-modal .miam-modal__content-container{position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header{display:flex;flex-direction:row;justify-content:space-between}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header .miam-modal__title{font-weight:900;overflow:hidden;text-overflow:ellipsis;align-self:center}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:8px;padding:16px;background:50%/24px no-repeat url(https://storage.googleapis.com/assets.miam.tech/generic/icons/Cross_primary.svg)}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__content__scroll-protection{overflow:hidden;height:100%;display:flex}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__content{width:100%;overflow-y:auto;overflow-x:hidden;scrollbar-color:var(--miam-ds-color-primary-100),var(--miam-ds-color-primary)}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__interactions{display:flex;justify-content:flex-end;flex-direction:row}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__interactions button+button{margin-left:12px}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__place-order{display:flex;justify-content:space-between;align-items:center}.miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__place-order .miam-modal__place-order-price{display:flex;flex-direction:column}.miam-modal__container.center .miam-modal{height:auto;min-width:464px;width:600px;max-width:700px;max-height:96dvh;box-sizing:border-box;top:50%;left:50%;right:unset;transform:translate(-50%,-50%);border-radius:8px;background-color:var(--miam-ds-color-neutral-white);padding:24px}.miam-modal__container.right .miam-modal{right:0;animation-name:openRightDrawer}@keyframes openRightDrawer{0%{right:-1200px}to{right:0}}.miam-modal__container.left .miam-modal{left:0;animation-name:openLeftDrawer}@keyframes openLeftDrawer{0%{left:-1200px}to{left:0}}.miam-modal__container.left .miam-modal,.miam-modal__container.right .miam-modal{animation-duration:.5s;animation-timing-function:cubic-bezier(.75,0,.2,1);height:100%;width:1000px;top:0}.miam-modal__container.left .miam-modal .miam-modal__content-container,.miam-modal__container.right .miam-modal .miam-modal__content-container{height:100%;box-sizing:border-box}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__content,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__content{height:100%;box-sizing:border-box;margin:unset}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions{border-top:1px solid var(--miam-ds-color-border)}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions{padding:24px}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order{padding:18px}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price{color:var(--miam-ds-color-primary,#24748f)}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price-label,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__place-order .miam-modal__total-price-label{color:var(--miam-ds-color-neutral-400,#8c96a2)}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__header,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__header{border-bottom:1px solid var(--miam-ds-color-border);padding:24px}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:unset}.miam-modal__container.left .miam-modal.with-header .miam-modal__content-container .miam-modal__content,.miam-modal__container.right .miam-modal.with-header .miam-modal__content-container .miam-modal__content{padding:16px}.miam-modal__container.left .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon,.miam-modal__container.right .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:24px}.miam-modal__container.left.small-width .miam-modal,.miam-modal__container.right.small-width .miam-modal{min-width:680px;max-width:680px}.miam-modal__container.left.tiny-width .miam-modal,.miam-modal__container.right.tiny-width .miam-modal{min-width:360px;max-width:360px}@media (max-width:1023px){.miam-modal__container.center .miam-modal{min-width:60vw;padding:unset;max-width:calc(100vw - 48px)}.miam-modal__container.center .miam-modal.with-header .miam-modal__content-container .miam-modal__header{border-bottom:1px solid var(--miam-ds-color-border);padding:24px}.miam-modal__container.center .miam-modal.with-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:unset}.miam-modal__container.center .miam-modal.without-header .miam-modal__content-container .miam-modal__header .miam-modal__close-icon{margin:24px}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__content{box-sizing:border-box;height:100%;margin:unset;padding:24px}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions{border-top:1px solid var(--miam-ds-color-border)}.miam-modal__container.center .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions{justify-content:center;padding:16px 8px}.miam-modal__container.left .miam-modal,.miam-modal__container.left.small-width .miam-modal,.miam-modal__container.left.tiny-width .miam-modal,.miam-modal__container.right .miam-modal,.miam-modal__container.right.small-width .miam-modal,.miam-modal__container.right.tiny-width .miam-modal{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;top:0;bottom:0;right:0;animation-name:openBottomSheet;animation-duration:.5s;animation-timing-function:cubic-bezier(.075,.82,.165,1)}@keyframes openBottomSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions{flex-direction:column-reverse}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-modal__interactions{justify-content:center;padding:24px 8px}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.primary{background-color:var(--miam-ds-color-primary)}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button:hover.secondary{background-color:transparent}.miam-modal__container.left .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.left.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.left.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right.small-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button,.miam-modal__container.right.tiny-width .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button{margin-left:unset;margin-bottom:12px}}"], encapsulation: 2, changeDetection: 0 });
9602
9628
  (function () {
9603
9629
  (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(ModalComponent, [{
9604
9630
  type: i0.Component,
@@ -10574,6 +10600,29 @@
10574
10600
  })();
10575
10601
  var templateObject_1$L, templateObject_2$D, templateObject_3$t, templateObject_4$o, templateObject_5$l, templateObject_6$i, templateObject_7$f, templateObject_8$b, templateObject_9$7, templateObject_10$5, templateObject_11$5, templateObject_12$4, templateObject_13$4, templateObject_14$3, templateObject_15$3, templateObject_16$2, templateObject_17$2;
10576
10602
 
10603
+ var LoaderComponent = /** @class */ (function () {
10604
+ function LoaderComponent() {
10605
+ }
10606
+ return LoaderComponent;
10607
+ }());
10608
+ LoaderComponent.ɵfac = function LoaderComponent_Factory(t) { return new (t || LoaderComponent)(); };
10609
+ LoaderComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: LoaderComponent, selectors: [["ng-miam-loader"]], decls: 1, vars: 0, consts: [[1, "miam-loader"]], template: function LoaderComponent_Template(rf, ctx) {
10610
+ if (rf & 1) {
10611
+ i0__namespace.ɵɵelement(0, "div", 0);
10612
+ }
10613
+ }, styles: [".miam-loader{border:var(--m-loader-thickness) solid var(--m-color-grey);border-top:var(--m-loader-thickness) solid var(--m-color-ternary);border-radius:var(--m-border-radius-circle);width:var(--m-loader-size);height:var(--m-loader-size);animation:miam-loader-spin .5s linear infinite}@keyframes miam-loader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}"], encapsulation: 2 });
10614
+ (function () {
10615
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(LoaderComponent, [{
10616
+ type: i0.Component,
10617
+ args: [{
10618
+ selector: 'ng-miam-loader',
10619
+ templateUrl: './loader.component.html',
10620
+ encapsulation: i0.ViewEncapsulation.None,
10621
+ styleUrls: ['./loader.component.scss']
10622
+ }]
10623
+ }], function () { return []; }, null);
10624
+ })();
10625
+
10577
10626
  var MealsPlannerLinkComponent = /** @class */ (function () {
10578
10627
  function MealsPlannerLinkComponent(context) {
10579
10628
  this.context = context;
@@ -10860,7 +10909,7 @@
10860
10909
  }
10861
10910
  }
10862
10911
  var _c1$d = function (a0) { return { full: a0 }; };
10863
- var _c2$7 = function (a0) { return { "danger": a0 }; };
10912
+ var _c2$8 = function (a0) { return { "danger": a0 }; };
10864
10913
  var ProgressTrackerComponent = /** @class */ (function () {
10865
10914
  function ProgressTrackerComponent() {
10866
10915
  }
@@ -10916,7 +10965,7 @@
10916
10965
  i0__namespace.ɵɵadvance(1);
10917
10966
  i0__namespace.ɵɵproperty("ngIf", ctx.value > ctx.max);
10918
10967
  i0__namespace.ɵɵadvance(1);
10919
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c2$7, ctx.value > ctx.max));
10968
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(11, _c2$8, ctx.value > ctx.max));
10920
10969
  i0__namespace.ɵɵadvance(1);
10921
10970
  i0__namespace.ɵɵtextInterpolate2("", ctx.roundedValue, " ", ctx.unit, "");
10922
10971
  }
@@ -12203,7 +12252,7 @@
12203
12252
 
12204
12253
  var _c0$j = ["miamLeftOfSliderTrack"];
12205
12254
  var _c1$b = ["miamSliderColored"];
12206
- var _c2$6 = ["miamSliderHandle"];
12255
+ var _c2$7 = ["miamSliderHandle"];
12207
12256
  function SliderComponent_ng_miam_icon_2_Template(rf, ctx) {
12208
12257
  if (rf & 1) {
12209
12258
  i0__namespace.ɵɵelement(0, "ng-miam-icon", 10);
@@ -12313,7 +12362,7 @@
12313
12362
  if (rf & 1) {
12314
12363
  i0__namespace.ɵɵviewQuery(_c0$j, 1);
12315
12364
  i0__namespace.ɵɵviewQuery(_c1$b, 1);
12316
- i0__namespace.ɵɵviewQuery(_c2$6, 1);
12365
+ i0__namespace.ɵɵviewQuery(_c2$7, 1);
12317
12366
  }
12318
12367
  if (rf & 2) {
12319
12368
  var _t = void 0;
@@ -16010,7 +16059,7 @@
16010
16059
  i0__namespace.ɵɵelement(0, "img", 23);
16011
16060
  }
16012
16061
  }
16013
- var _c2$5 = function (a0) { return { loading: a0 }; };
16062
+ var _c2$6 = function (a0) { return { loading: a0 }; };
16014
16063
  function BasketPreviewProductComponent_div_0_Template(rf, ctx) {
16015
16064
  if (rf & 1) {
16016
16065
  var _r8_1 = i0__namespace.ɵɵgetCurrentView();
@@ -16073,7 +16122,7 @@
16073
16122
  i0__namespace.ɵɵadvance(1);
16074
16123
  i0__namespace.ɵɵproperty("ngIf", ctx_r0.basketEntry.recipesIds.length != 0 || ctx_r0.displayReplace);
16075
16124
  i0__namespace.ɵɵadvance(1);
16076
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(24, _c2$5, ctx_r0.loading));
16125
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(24, _c2$6, ctx_r0.loading));
16077
16126
  i0__namespace.ɵɵadvance(1);
16078
16127
  i0__namespace.ɵɵproperty("ngIf", ctx_r0.loading);
16079
16128
  i0__namespace.ɵɵadvance(1);
@@ -16915,7 +16964,7 @@
16915
16964
  i0__namespace.ɵɵelement(0, "ng-miam-product-addition-card");
16916
16965
  }
16917
16966
  }
16918
- var _c4$3 = function (a0) { return { "display": a0 }; };
16967
+ var _c4$2 = function (a0) { return { "display": a0 }; };
16919
16968
  function BasketPreviewBlockComponent_div_2_ng_container_1_div_4_ng_miam_basket_preview_line_2_Template(rf, ctx) {
16920
16969
  if (rf & 1) {
16921
16970
  var _r21_1 = i0__namespace.ɵɵgetCurrentView();
@@ -16926,7 +16975,7 @@
16926
16975
  if (rf & 2) {
16927
16976
  var line_r19 = ctx.$implicit;
16928
16977
  var ctx_r16 = i0__namespace.ɵɵnextContext(4);
16929
- i0__namespace.ɵɵproperty("line", line_r19)("blockStates", ctx_r16.blockStates)("recipesAlwaysExpanded", ctx_r16.recipesAlwaysExpanded)("itemsAlwaysExpanded", ctx_r16.itemsAlwaysExpanded)("displayItemsUnitaryPrice", ctx_r16.displayItemsUnitaryPrice)("legacyMode", ctx_r16.legacyMode)("originTrace", ctx_r16.eventTrace())("ngStyle", i0__namespace.ɵɵpureFunction1(8, _c4$3, (ctx_r16.blockStates == null ? null : ctx_r16.blockStates.value == null ? null : ctx_r16.blockStates.value.overlayOpen) ? "none" : "block"));
16978
+ i0__namespace.ɵɵproperty("line", line_r19)("blockStates", ctx_r16.blockStates)("recipesAlwaysExpanded", ctx_r16.recipesAlwaysExpanded)("itemsAlwaysExpanded", ctx_r16.itemsAlwaysExpanded)("displayItemsUnitaryPrice", ctx_r16.displayItemsUnitaryPrice)("legacyMode", ctx_r16.legacyMode)("originTrace", ctx_r16.eventTrace())("ngStyle", i0__namespace.ɵɵpureFunction1(8, _c4$2, (ctx_r16.blockStates == null ? null : ctx_r16.blockStates.value == null ? null : ctx_r16.blockStates.value.overlayOpen) ? "none" : "block"));
16930
16979
  }
16931
16980
  }
16932
16981
  function BasketPreviewBlockComponent_div_2_ng_container_1_div_4_ng_miam_replace_item_3_Template(rf, ctx) {
@@ -17876,6 +17925,7 @@
17876
17925
  i0__namespace.ɵɵelementContainerEnd();
17877
17926
  }
17878
17927
  }
17928
+ var _c2$5 = function (a0) { return { "disabled": a0 }; };
17879
17929
  function ListScanFilesInputsComponent_div_1_Template(rf, ctx) {
17880
17930
  if (rf & 1) {
17881
17931
  var _r7_1 = i0__namespace.ɵɵgetCurrentView();
@@ -17884,7 +17934,7 @@
17884
17934
  i0__namespace.ɵɵlistener("change", function ListScanFilesInputsComponent_div_1_Template_input_change_1_listener($event) { i0__namespace.ɵɵrestoreView(_r7_1); var ctx_r6 = i0__namespace.ɵɵnextContext(); return ctx_r6.listScanService.sendFile($event); });
17885
17935
  i0__namespace.ɵɵelementEnd();
17886
17936
  i0__namespace.ɵɵelementStart(2, "label", 5);
17887
- i0__namespace.ɵɵelementStart(3, "button", 6);
17937
+ i0__namespace.ɵɵelementStart(3, "div", 6);
17888
17938
  i0__namespace.ɵɵtemplate(4, ListScanFilesInputsComponent_div_1_ng_container_4_Template, 5, 0, "ng-container", 1);
17889
17939
  i0__namespace.ɵɵelementEnd();
17890
17940
  i0__namespace.ɵɵelementEnd();
@@ -17896,7 +17946,7 @@
17896
17946
  i0__namespace.ɵɵadvance(1);
17897
17947
  i0__namespace.ɵɵproperty("disabled", ctx_r0.loading);
17898
17948
  i0__namespace.ɵɵadvance(2);
17899
- i0__namespace.ɵɵproperty("disabled", ctx_r0.loading);
17949
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c2$5, ctx_r0.loading));
17900
17950
  i0__namespace.ɵɵadvance(1);
17901
17951
  i0__namespace.ɵɵproperty("ngIf", !ctx_r0.loading)("ngIfElse", _r3);
17902
17952
  }
@@ -17911,7 +17961,6 @@
17911
17961
  i0__namespace.ɵɵelementContainerEnd();
17912
17962
  }
17913
17963
  }
17914
- var _c4$2 = function (a0) { return { "disabled": a0 }; };
17915
17964
  function ListScanFilesInputsComponent_ng_template_2_Template(rf, ctx) {
17916
17965
  if (rf & 1) {
17917
17966
  var _r10_1 = i0__namespace.ɵɵgetCurrentView();
@@ -17929,7 +17978,7 @@
17929
17978
  var _r3 = i0__namespace.ɵɵreference(5);
17930
17979
  i0__namespace.ɵɵproperty("disabled", ctx_r2.loading);
17931
17980
  i0__namespace.ɵɵadvance(2);
17932
- i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c4$2, ctx_r2.loading));
17981
+ i0__namespace.ɵɵproperty("ngClass", i0__namespace.ɵɵpureFunction1(4, _c2$5, ctx_r2.loading));
17933
17982
  i0__namespace.ɵɵadvance(1);
17934
17983
  i0__namespace.ɵɵproperty("ngIf", !ctx_r2.loading)("ngIfElse", _r3);
17935
17984
  }
@@ -17944,7 +17993,7 @@
17944
17993
  this.cdr = cdr;
17945
17994
  this.mediaMatcher = mediaMatcher;
17946
17995
  this.listScanService = listScanService;
17947
- this.disableIngredientsMatching = false;
17996
+ this.isSchoolList = false;
17948
17997
  this.icon = exports.Icon;
17949
17998
  this.loading = false;
17950
17999
  this.isMobile = false;
@@ -17960,7 +18009,7 @@
17960
18009
  return ListScanFilesInputsComponent;
17961
18010
  }());
17962
18011
  ListScanFilesInputsComponent.ɵfac = function ListScanFilesInputsComponent_Factory(t) { return new (t || ListScanFilesInputsComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ChangeDetectorRef), i0__namespace.ɵɵdirectiveInject(i2__namespace.MediaMatcher), i0__namespace.ɵɵdirectiveInject(ListScanService)); };
17963
- ListScanFilesInputsComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: ListScanFilesInputsComponent, selectors: [["ng-miam-list-scan-files-inputs"]], inputs: { disableIngredientsMatching: "disableIngredientsMatching" }, decls: 6, vars: 2, consts: function () {
18012
+ ListScanFilesInputsComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: ListScanFilesInputsComponent, selectors: [["ng-miam-list-scan-files-inputs"]], inputs: { isSchoolList: "isSchoolList" }, decls: 6, vars: 2, consts: function () {
17964
18013
  var i18n_0;
17965
18014
  if (typeof ngI18nClosureMode !== "undefined" && ngI18nClosureMode) {
17966
18015
  var MSG_EXTERNAL_3102383292942643907$$LIB__WEB_COMPONENTS_LIST_SCAN_FILES_INPUTS_FILES_INPUTS_COMPONENT_TS___1 = goog.getMsg("Scanner ma liste");
@@ -17969,19 +18018,19 @@
17969
18018
  else {
17970
18019
  i18n_0 = $localize(templateObject_1$v || (templateObject_1$v = __makeTemplateObject([":\u241F0d34d321e3c6aa810d833ba95ed446bcdd84903a\u241F3102383292942643907:Scanner ma liste"], [":\u241F0d34d321e3c6aa810d833ba95ed446bcdd84903a\u241F3102383292942643907:Scanner ma liste"])));
17971
18020
  }
17972
- var i18n_2;
18021
+ var i18n_3;
17973
18022
  if (typeof ngI18nClosureMode !== "undefined" && ngI18nClosureMode) {
17974
- var MSG_EXTERNAL_8936498507024821269$$LIB__WEB_COMPONENTS_LIST_SCAN_FILES_INPUTS_FILES_INPUTS_COMPONENT_TS___3 = goog.getMsg("Importer ma liste");
17975
- i18n_2 = MSG_EXTERNAL_8936498507024821269$$LIB__WEB_COMPONENTS_LIST_SCAN_FILES_INPUTS_FILES_INPUTS_COMPONENT_TS___3;
18023
+ var MSG_EXTERNAL_8936498507024821269$$LIB__WEB_COMPONENTS_LIST_SCAN_FILES_INPUTS_FILES_INPUTS_COMPONENT_TS___4 = goog.getMsg("Importer ma liste");
18024
+ i18n_3 = MSG_EXTERNAL_8936498507024821269$$LIB__WEB_COMPONENTS_LIST_SCAN_FILES_INPUTS_FILES_INPUTS_COMPONENT_TS___4;
17976
18025
  }
17977
18026
  else {
17978
- i18n_2 = $localize(templateObject_2$o || (templateObject_2$o = __makeTemplateObject([":\u241Ff609f2fd28615425afab0e9ac43aca8d99c16d47\u241F8936498507024821269:Importer ma liste"], [":\u241Ff609f2fd28615425afab0e9ac43aca8d99c16d47\u241F8936498507024821269:Importer ma liste"])));
18027
+ i18n_3 = $localize(templateObject_2$o || (templateObject_2$o = __makeTemplateObject([":\u241Ff609f2fd28615425afab0e9ac43aca8d99c16d47\u241F8936498507024821269:Importer ma liste"], [":\u241Ff609f2fd28615425afab0e9ac43aca8d99c16d47\u241F8936498507024821269:Importer ma liste"])));
17979
18028
  }
17980
- return [[1, "miam-files-inputs"], [4, "ngIf", "ngIfElse"], ["desktop", ""], ["loader", ""], ["type", "file", "name", "photo", "id", "photo", "accept", "image/*", "capture", "environment", 1, "miam-files-inputs__inputfile", 3, "disabled", "change"], ["for", "photo"], [1, "miam-ds-button", "primary", 3, "disabled"], ["src", "https://storage.googleapis.com/assets.miam.tech/generic/icons/ListScanner.svg", "alt", "take a photo"], [1, "miam-ds-text", "size-m", "weight-xl"], i18n_0, ["type", "file", "name", "file", "id", "file", "accept", "image/*,application/pdf", 1, "miam-files-inputs__inputfile", 3, "disabled", "change"], ["for", "file"], [1, "miam-ds-button", "secondary", 3, "ngClass"], ["src", "https://storage.googleapis.com/assets.miam.tech/generic/icons/Upload.svg", "alt", "upload"], i18n_2, [1, "miam-ds-loader"]];
18029
+ return [[1, "miam-files-inputs"], [4, "ngIf", "ngIfElse"], ["desktop", ""], ["loader", ""], ["type", "file", "name", "photo", "id", "photo", "accept", "image/*", "capture", "environment", 1, "miam-files-inputs__inputfile", 3, "disabled", "change"], ["for", "photo"], [1, "miam-ds-button", "primary", 3, "ngClass"], ["src", "https://storage.googleapis.com/assets.miam.tech/generic/icons/ListScanner.svg", "alt", "take a photo"], [1, "miam-ds-text", "size-m", "weight-xl"], i18n_0, ["type", "file", "name", "file", "id", "file", "accept", "image/*,application/pdf", 1, "miam-files-inputs__inputfile", 3, "disabled", "change"], ["for", "file"], [1, "miam-ds-button", "secondary", 3, "ngClass"], ["src", "https://storage.googleapis.com/assets.miam.tech/generic/icons/Upload.svg", "alt", "upload"], i18n_3, [1, "miam-ds-loader"]];
17981
18030
  }, template: function ListScanFilesInputsComponent_Template(rf, ctx) {
17982
18031
  if (rf & 1) {
17983
18032
  i0__namespace.ɵɵelementStart(0, "div", 0);
17984
- i0__namespace.ɵɵtemplate(1, ListScanFilesInputsComponent_div_1_Template, 5, 4, "div", 1);
18033
+ i0__namespace.ɵɵtemplate(1, ListScanFilesInputsComponent_div_1_Template, 5, 6, "div", 1);
17985
18034
  i0__namespace.ɵɵtemplate(2, ListScanFilesInputsComponent_ng_template_2_Template, 4, 6, "ng-template", null, 2, i0__namespace.ɵɵtemplateRefExtractor);
17986
18035
  i0__namespace.ɵɵtemplate(4, ListScanFilesInputsComponent_ng_template_4_Template, 1, 0, "ng-template", null, 3, i0__namespace.ɵɵtemplateRefExtractor);
17987
18036
  i0__namespace.ɵɵelementEnd();
@@ -18002,7 +18051,7 @@
18002
18051
  encapsulation: i0.ViewEncapsulation.None,
18003
18052
  changeDetection: i0.ChangeDetectionStrategy.OnPush
18004
18053
  }]
18005
- }], function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: i2__namespace.MediaMatcher }, { type: ListScanService }]; }, { disableIngredientsMatching: [{
18054
+ }], function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: i2__namespace.MediaMatcher }, { type: ListScanService }]; }, { isSchoolList: [{
18006
18055
  type: i0.Input
18007
18056
  }] });
18008
18057
  })();
@@ -18010,12 +18059,17 @@
18010
18059
 
18011
18060
  var ListScanComponent = /** @class */ (function (_super) {
18012
18061
  __extends(ListScanComponent, _super);
18013
- function ListScanComponent(cdr, analyticsService, listScanService) {
18062
+ function ListScanComponent(cdr, analyticsService, listScanService, basketSynchro) {
18014
18063
  var _this = _super.call(this, analyticsService) || this;
18015
18064
  _this.cdr = cdr;
18016
18065
  _this.analyticsService = analyticsService;
18017
18066
  _this.listScanService = listScanService;
18067
+ _this.basketSynchro = basketSynchro;
18068
+ /**
18069
+ * DEPRECATED TODO REMOVE FOR 9.0
18070
+ */
18018
18071
  _this.disableIngredientsMatching = false;
18072
+ _this.isSchoolList = false;
18019
18073
  _this.confirmed = new i0.EventEmitter();
18020
18074
  _this.basketPreviewShown = false;
18021
18075
  _this.cancelConfirmationShown = false;
@@ -18024,12 +18078,18 @@
18024
18078
  return _this;
18025
18079
  }
18026
18080
  ListScanComponent.prototype.ngOnInit = function () {
18081
+ var _this = this;
18027
18082
  this.listenEntries();
18028
18083
  this.listenCancelling();
18084
+ this.subscriptions.push(this.listScanService.sendingFile.subscribe(function (sending) {
18085
+ if (sending) {
18086
+ _this.basketSynchro.ignoreMiam = true;
18087
+ }
18088
+ }));
18029
18089
  };
18030
18090
  ListScanComponent.prototype.ngOnChanges = function (changes) {
18031
- if (changes.disableIngredientsMatching) {
18032
- this.listScanService.disableIngredientsMatching = this.disableIngredientsMatching;
18091
+ if (changes.isSchoolList) {
18092
+ this.listScanService.isSchoolList = this.isSchoolList;
18033
18093
  }
18034
18094
  };
18035
18095
  ListScanComponent.prototype.ngOnDestroy = function () {
@@ -18059,6 +18119,7 @@
18059
18119
  }));
18060
18120
  };
18061
18121
  ListScanComponent.prototype.confirm = function () {
18122
+ this.basketSynchro.ignoreMiam = false;
18062
18123
  this.basketPreviewShown = false;
18063
18124
  this.cdr.detectChanges();
18064
18125
  this.confirmed.emit();
@@ -18073,8 +18134,8 @@
18073
18134
  };
18074
18135
  return ListScanComponent;
18075
18136
  }(EventTracerComponent));
18076
- ListScanComponent.ɵfac = function ListScanComponent_Factory(t) { return new (t || ListScanComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ChangeDetectorRef), i0__namespace.ɵɵdirectiveInject(AnalyticsService), i0__namespace.ɵɵdirectiveInject(ListScanService)); };
18077
- ListScanComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: ListScanComponent, selectors: [["ng-miam-list-scan"]], inputs: { disableIngredientsMatching: "disableIngredientsMatching" }, outputs: { confirmed: "confirmed" }, features: [i0__namespace.ɵɵInheritDefinitionFeature, i0__namespace.ɵɵNgOnChangesFeature], decls: 7, vars: 8, consts: function () {
18137
+ ListScanComponent.ɵfac = function ListScanComponent_Factory(t) { return new (t || ListScanComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ChangeDetectorRef), i0__namespace.ɵɵdirectiveInject(AnalyticsService), i0__namespace.ɵɵdirectiveInject(ListScanService), i0__namespace.ɵɵdirectiveInject(BasketsSynchronizerService)); };
18138
+ ListScanComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: ListScanComponent, selectors: [["ng-miam-list-scan"]], inputs: { disableIngredientsMatching: "disableIngredientsMatching", isSchoolList: "isSchoolList" }, outputs: { confirmed: "confirmed" }, features: [i0__namespace.ɵɵInheritDefinitionFeature, i0__namespace.ɵɵNgOnChangesFeature], decls: 7, vars: 8, consts: function () {
18078
18139
  var i18n_0;
18079
18140
  if (typeof ngI18nClosureMode !== "undefined" && ngI18nClosureMode) {
18080
18141
  var MSG_EXTERNAL_5810732921987905942$$LIB__WEB_COMPONENTS_LIST_SCAN_LIST_SCAN_COMPONENT_TS_1 = goog.getMsg("Nous avons trouv\u00E9 pour vous");
@@ -18131,7 +18192,7 @@
18131
18192
  else {
18132
18193
  i18n_12 = $localize(templateObject_7$7 || (templateObject_7$7 = __makeTemplateObject([":\u241Fa9903fc890d9d8680ad01355e929d4ba7e54ef15\u241F8748233983301350015:Souhaitez-vous vraiment abandonner votre liste ?"], [":\u241Fa9903fc890d9d8680ad01355e929d4ba7e54ef15\u241F8748233983301350015:Souhaitez-vous vraiment abandonner votre liste ?"])));
18133
18194
  }
18134
- return [[1, "miam-list-scan"], [3, "disableIngredientsMatching"], ["title", i18n_0, "cancelButtonText", i18n_2, "confirmButtonText", i18n_4, "modalStyle", "right", 1, "miam-list-scan__result", 3, "noHeaderMode", "display", "cancel", "close", "confirm"], [1, "miam-list-scan__content", 3, "closed", "cancelled"], ["title", i18n_6, "cancelButtonText", i18n_8, "confirmButtonText", i18n_10, 1, "miam-list-scan__confirmation", 3, "display", "noHeaderMode", "confirmButtonDisabled", "confirmButtonIsLoading", "cancelButtonDisabled", "displayChange", "close", "cancel", "confirm"], [1, "miam-ds-text", "size-m", "weight-m"], i18n_12];
18195
+ return [[1, "miam-list-scan"], [3, "isSchoolList"], ["title", i18n_0, "cancelButtonText", i18n_2, "confirmButtonText", i18n_4, "modalStyle", "right", 1, "miam-list-scan__result", 3, "noHeaderMode", "display", "cancel", "close", "confirm"], [1, "miam-list-scan__content", 3, "closed", "cancelled"], ["title", i18n_6, "cancelButtonText", i18n_8, "confirmButtonText", i18n_10, 1, "miam-list-scan__confirmation", 3, "display", "noHeaderMode", "confirmButtonDisabled", "confirmButtonIsLoading", "cancelButtonDisabled", "displayChange", "close", "cancel", "confirm"], [1, "miam-ds-text", "size-m", "weight-m"], i18n_12];
18135
18196
  }, template: function ListScanComponent_Template(rf, ctx) {
18136
18197
  if (rf & 1) {
18137
18198
  i0__namespace.ɵɵelementStart(0, "div", 0);
@@ -18152,13 +18213,13 @@
18152
18213
  }
18153
18214
  if (rf & 2) {
18154
18215
  i0__namespace.ɵɵadvance(1);
18155
- i0__namespace.ɵɵproperty("disableIngredientsMatching", ctx.disableIngredientsMatching);
18216
+ i0__namespace.ɵɵproperty("isSchoolList", ctx.isSchoolList);
18156
18217
  i0__namespace.ɵɵadvance(1);
18157
18218
  i0__namespace.ɵɵproperty("noHeaderMode", false)("display", ctx.basketPreviewShown);
18158
18219
  i0__namespace.ɵɵadvance(2);
18159
18220
  i0__namespace.ɵɵproperty("display", ctx.cancelConfirmationShown)("noHeaderMode", false)("confirmButtonDisabled", ctx.cancelling)("confirmButtonIsLoading", ctx.cancelling)("cancelButtonDisabled", ctx.cancelling);
18160
18221
  }
18161
- }, directives: [ListScanFilesInputsComponent, ModalComponent, ListScanBasketPreviewComponent], styles: [".miam-list-scan .miam-list-scan__content{height:100%}"], encapsulation: 2, changeDetection: 0 });
18222
+ }, directives: [ListScanFilesInputsComponent, ModalComponent, ListScanBasketPreviewComponent], styles: [".miam-list-scan .miam-list-scan__content{height:100%}@media (max-width:1023px){.miam-list-scan ng-miam-modal .miam-modal__container .miam-modal .miam-modal__content-container .miam-modal__actions .miam-ds-button+button{margin-left:12px;margin-bottom:0}}.miam-list-scan ng-miam-modal.miam-list-scan__confirmation .miam-modal__container .miam-shadow-overlay{z-index:calc(var(--m-z-index-modal-overlay) + 1)}"], encapsulation: 2, changeDetection: 0 });
18162
18223
  (function () {
18163
18224
  (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(ListScanComponent, [{
18164
18225
  type: i0.Component,
@@ -18169,7 +18230,9 @@
18169
18230
  encapsulation: i0.ViewEncapsulation.None,
18170
18231
  changeDetection: i0.ChangeDetectionStrategy.OnPush
18171
18232
  }]
18172
- }], function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: AnalyticsService }, { type: ListScanService }]; }, { disableIngredientsMatching: [{
18233
+ }], function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: AnalyticsService }, { type: ListScanService }, { type: BasketsSynchronizerService }]; }, { disableIngredientsMatching: [{
18234
+ type: i0.Input
18235
+ }], isSchoolList: [{
18173
18236
  type: i0.Input
18174
18237
  }], confirmed: [{
18175
18238
  type: i0.Output
@@ -19305,7 +19368,7 @@
19305
19368
  else if (this.recipeId) {
19306
19369
  this.loadRecipeFromId();
19307
19370
  }
19308
- if ((simpleChanges.productIds && !this.randomModeEnable) || !this.recipe) {
19371
+ else if (simpleChanges.productIds && !this.randomModeEnable) {
19309
19372
  this.loadRecipeFromContext();
19310
19373
  }
19311
19374
  };
@@ -22910,7 +22973,7 @@
22910
22973
  var _this = this;
22911
22974
  // From localStorage
22912
22975
  var preferences = this.preferencesService.preferencesInStorage || { with: [], without: [] };
22913
- var storedIngredients = preferences.without.filter(function (i) { return i.id.includes('ingredient_category_') || i.id.includes('ingredientsdefinition_'); });
22976
+ var storedIngredients = preferences.without.filter(function (i) { return i.id.includes('ingredient_category_') || i.id.includes('ingredientsdefinition_') || i.id.includes('meal_type_'); });
22914
22977
  storedIngredients.forEach(function (i) {
22915
22978
  if (_this.forcedIngredients.findIndex(function (f) { return f.id === i.id; }) === -1) {
22916
22979
  var tag = _this.tagsService.new();
@@ -22927,8 +22990,9 @@
22927
22990
  });
22928
22991
  // From tagsToAdd
22929
22992
  this.preferencesService.tagsToAdd.forEach(function (tag) {
22930
- if ((tag.tag.id.includes('ingredient_category_') || tag.tag.id.includes('ingredientsdefinition_')) &&
22931
- _this.ingredients.findIndex(function (t) { return t.tag.id === tag.tag.id; }) === -1) {
22993
+ if ((tag.tag.id.includes('ingredient_category_') ||
22994
+ tag.tag.id.includes('ingredientsdefinition_') ||
22995
+ tag.tag.id.includes('meal_type_')) && _this.ingredients.findIndex(function (t) { return t.tag.id === tag.tag.id; }) === -1) {
22932
22996
  _this.ingredients.push(tag);
22933
22997
  }
22934
22998
  });
@@ -25313,6 +25377,12 @@
25313
25377
  _this.setStickyObserver();
25314
25378
  })).subscribe());
25315
25379
  }
25380
+ else {
25381
+ // No catalog setting returned by api => load catalog header nevertheless in default mode
25382
+ this.catalogSettingHasLoaded = true;
25383
+ this.cdr.detectChanges();
25384
+ this.setStickyObserver();
25385
+ }
25316
25386
  };
25317
25387
  RecipeCatalogComponent.prototype.deepCloneAndResetValues = function (filters) {
25318
25388
  return filters.map(function (filter) { return (Object.assign(Object.assign({}, filter), { value: false })); });