ng-miam 3.2.2 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/bundles/ng-miam.umd.js +7452 -5975
  2. package/bundles/ng-miam.umd.js.map +1 -1
  3. package/bundles/ng-miam.umd.min.js +2 -2
  4. package/bundles/ng-miam.umd.min.js.map +1 -1
  5. package/esm2015/lib/_components/abstracts/abstract-recipe-card.component.js +1 -1
  6. package/esm2015/lib/_components/icon/icon.component.js +65 -6
  7. package/esm2015/lib/_components/recipe-filters/recipe-filters.component.js +94 -40
  8. package/esm2015/lib/_components/recipe-type-chooser/recipe-type-chooser.component.js +23 -30
  9. package/esm2015/lib/_components/text-input/text-input.component.js +6 -4
  10. package/esm2015/lib/_models/article.js +43 -0
  11. package/esm2015/lib/_models/basket.js +2 -2
  12. package/esm2015/lib/_models/groceries-entry.js +23 -2
  13. package/esm2015/lib/_models/groceries-list.js +5 -2
  14. package/esm2015/lib/_models/index.js +4 -1
  15. package/esm2015/lib/_models/package.js +14 -3
  16. package/esm2015/lib/_models/recipe.js +4 -1
  17. package/esm2015/lib/_models/user.js +10 -1
  18. package/esm2015/lib/_services/analytics.service.js +7 -1
  19. package/esm2015/lib/_services/articles.service.js +21 -0
  20. package/esm2015/lib/_services/baskets.service.js +7 -3
  21. package/esm2015/lib/_services/context.service.js +15 -1
  22. package/esm2015/lib/_services/groceries-lists.service.js +23 -6
  23. package/esm2015/lib/_services/index.js +3 -1
  24. package/esm2015/lib/_services/ingredients.service.js +2 -2
  25. package/esm2015/lib/_services/interceptor.service.js +2 -3
  26. package/esm2015/lib/_services/package.service.js +32 -9
  27. package/esm2015/lib/_services/recipe-events.service.js +2 -2
  28. package/esm2015/lib/_services/recipe-likes.service.js +6 -2
  29. package/esm2015/lib/_services/recipe-share.service.js +2 -2
  30. package/esm2015/lib/_services/recipes.service.js +2 -2
  31. package/esm2015/lib/_services/suppliers.service.js +2 -2
  32. package/esm2015/lib/_services/toastr.service.js +52 -0
  33. package/esm2015/lib/_services/user.service.js +64 -21
  34. package/esm2015/lib/_types/icon.enum.js +22 -18
  35. package/esm2015/lib/_web-components/{basket-preview-block → basket-preview/basket-preview-block}/basket-preview-block.component.js +15 -15
  36. package/esm2015/lib/_web-components/{basket-preview-disabled → basket-preview/basket-preview-disabled}/basket-preview-disabled.component.js +3 -3
  37. package/esm2015/lib/_web-components/{basket-preview-line → basket-preview/basket-preview-line}/basket-preview-line.component.js +22 -19
  38. package/esm2015/lib/_web-components/basket-preview/basket-preview.module.js +78 -0
  39. package/esm2015/lib/_web-components/basket-preview/index.js +7 -0
  40. package/esm2015/lib/_web-components/{replace-item → basket-preview/replace-item}/replace-item.component.js +8 -8
  41. package/esm2015/lib/_web-components/catalog-article-card/catalog-article-card.component.js +71 -0
  42. package/esm2015/lib/_web-components/catalog-category/catalog-category.component.js +134 -92
  43. package/esm2015/lib/_web-components/catalog-header/catalog-header.component.js +51 -34
  44. package/esm2015/lib/_web-components/catalog-list/catalog-list.component.js +106 -61
  45. package/esm2015/lib/_web-components/catalog-recipe-card/catalog-recipe-card.component.js +65 -52
  46. package/esm2015/lib/_web-components/drawer/drawer.component.js +1 -1
  47. package/esm2015/lib/_web-components/favorite-page/favorite-page.component.js +8 -6
  48. package/esm2015/lib/_web-components/index.js +5 -6
  49. package/esm2015/lib/_web-components/list-scan/basket-preview/basket-preview.component.js +145 -0
  50. package/esm2015/lib/_web-components/list-scan/index.js +3 -0
  51. package/esm2015/lib/_web-components/list-scan/ingredients-list/ingredients-list.component.js +150 -0
  52. package/esm2015/lib/_web-components/list-scan/list-scan.component.js +87 -0
  53. package/esm2015/lib/_web-components/list-scan/list-scan.module.js +60 -0
  54. package/esm2015/lib/_web-components/list-scan/overlay-button/overlay-button.component.js +104 -0
  55. package/esm2015/lib/_web-components/loader/index.js +3 -0
  56. package/esm2015/lib/_web-components/loader/loader.module.js +39 -0
  57. package/esm2015/lib/_web-components/personal-recipes/personal-recipes.component.js +7 -5
  58. package/esm2015/lib/_web-components/recipe-card/recipe-card.component.js +73 -58
  59. package/esm2015/lib/_web-components/recipe-catalog/recipe-catalog.component.js +152 -92
  60. package/esm2015/lib/_web-components/recipe-details/recipe-details.component.js +307 -270
  61. package/esm2015/lib/_web-components/recipe-modal/recipe-modal.component.js +1 -1
  62. package/esm2015/lib/_web-components/recipe-stepper/recipe-stepper.component.js +1 -1
  63. package/esm2015/lib/_web-components/recipes-history/recipes-history.component.js +1 -1
  64. package/esm2015/lib/_web-components/suggestion-card/suggestion-card.component.js +3 -6
  65. package/esm2015/lib/_web-components/web-components.module.js +35 -65
  66. package/esm2015/lib/environments/environment.js +6 -0
  67. package/esm2015/lib/ng-miam.module.js +4 -4
  68. package/fesm2015/ng-miam.js +6540 -5287
  69. package/fesm2015/ng-miam.js.map +1 -1
  70. package/lib/_components/abstracts/abstract-recipe-card.component.d.ts +1 -1
  71. package/lib/_components/recipe-filters/recipe-filters.component.d.ts +14 -4
  72. package/lib/_components/recipe-type-chooser/recipe-type-chooser.component.d.ts +2 -2
  73. package/lib/_components/text-input/text-input.component.d.ts +2 -1
  74. package/lib/_models/article.d.ts +23 -0
  75. package/lib/_models/basket.d.ts +1 -2
  76. package/lib/_models/groceries-entry.d.ts +8 -1
  77. package/lib/_models/groceries-list.d.ts +4 -3
  78. package/lib/_models/index.d.ts +3 -0
  79. package/lib/_models/package.d.ts +10 -3
  80. package/lib/_models/recipe.d.ts +1 -0
  81. package/lib/_models/user.d.ts +16 -1
  82. package/lib/_services/articles.service.d.ts +10 -0
  83. package/lib/_services/context.service.d.ts +12 -6
  84. package/lib/_services/groceries-lists.service.d.ts +4 -1
  85. package/lib/_services/index.d.ts +2 -0
  86. package/lib/_services/package.service.d.ts +6 -1
  87. package/lib/_services/toastr.service.d.ts +10 -0
  88. package/lib/_services/user.service.d.ts +12 -6
  89. package/lib/_types/icon.enum.d.ts +21 -17
  90. package/lib/_web-components/{basket-preview-block → basket-preview/basket-preview-block}/basket-preview-block.component.d.ts +6 -6
  91. package/lib/_web-components/{basket-preview-disabled → basket-preview/basket-preview-disabled}/basket-preview-disabled.component.d.ts +2 -2
  92. package/lib/_web-components/{basket-preview-line → basket-preview/basket-preview-line}/basket-preview-line.component.d.ts +7 -7
  93. package/lib/_web-components/basket-preview/basket-preview.module.d.ts +16 -0
  94. package/lib/_web-components/basket-preview/index.d.ts +5 -0
  95. package/lib/_web-components/{replace-item → basket-preview/replace-item}/replace-item.component.d.ts +5 -5
  96. package/lib/_web-components/catalog-article-card/catalog-article-card.component.d.ts +8 -0
  97. package/lib/_web-components/catalog-category/catalog-category.component.d.ts +12 -7
  98. package/lib/_web-components/catalog-header/catalog-header.component.d.ts +5 -2
  99. package/lib/_web-components/catalog-list/catalog-list.component.d.ts +13 -6
  100. package/lib/_web-components/catalog-recipe-card/catalog-recipe-card.component.d.ts +1 -0
  101. package/lib/_web-components/favorite-page/favorite-page.component.d.ts +0 -1
  102. package/lib/_web-components/index.d.ts +4 -5
  103. package/lib/_web-components/list-scan/basket-preview/basket-preview.component.d.ts +25 -0
  104. package/lib/_web-components/list-scan/index.d.ts +2 -0
  105. package/lib/_web-components/list-scan/ingredients-list/ingredients-list.component.d.ts +22 -0
  106. package/lib/_web-components/list-scan/list-scan.component.d.ts +17 -0
  107. package/lib/_web-components/list-scan/list-scan.module.d.ts +16 -0
  108. package/lib/_web-components/list-scan/overlay-button/overlay-button.component.d.ts +19 -0
  109. package/lib/_web-components/loader/index.d.ts +2 -0
  110. package/lib/_web-components/loader/loader.module.d.ts +10 -0
  111. package/lib/_web-components/personal-recipes/personal-recipes.component.d.ts +0 -1
  112. package/lib/_web-components/recipe-card/recipe-card.component.d.ts +1 -0
  113. package/lib/_web-components/recipe-catalog/recipe-catalog.component.d.ts +13 -4
  114. package/lib/_web-components/recipe-details/recipe-details.component.d.ts +8 -3
  115. package/lib/_web-components/suggestion-card/suggestion-card.component.d.ts +0 -1
  116. package/lib/_web-components/web-components.module.d.ts +38 -65
  117. package/lib/{environment.d.ts → environments/environment.d.ts} +1 -1
  118. package/miam-style.css +1 -1
  119. package/package.json +1 -1
  120. package/esm2015/lib/environment.js +0 -8
@@ -13,7 +13,7 @@ export declare abstract class AbstractRecipeCardComponent implements OnDestroy {
13
13
  groceriesListsService: GroceriesListsService;
14
14
  userService: UserService;
15
15
  protected posService: PointOfSalesService;
16
- private contextService;
16
+ contextService: ContextService;
17
17
  protected analyticsService: AnalyticsService;
18
18
  protected element: ElementRef;
19
19
  headerText: string;
@@ -1,30 +1,40 @@
1
1
  import { MediaMatcher } from '@angular/cdk/layout';
2
- import { ChangeDetectorRef, EventEmitter, OnChanges } from '@angular/core';
2
+ import { ChangeDetectorRef, EventEmitter, OnChanges, OnInit, OnDestroy } from '@angular/core';
3
+ import { UserService } from '../../_services';
3
4
  import { Icon } from '../../_types/icon.enum';
4
5
  import { RecipeFilters } from '../../_types/recipe-filters';
5
6
  import * as i0 from "@angular/core";
6
- export declare class RecipeFiltersComponent implements OnChanges {
7
+ export declare class RecipeFiltersComponent implements OnInit, OnChanges, OnDestroy {
7
8
  private cdr;
8
9
  mediaMatcher: MediaMatcher;
10
+ private usersService;
9
11
  filters: RecipeFilters;
10
12
  mobileFixed: boolean;
11
13
  filterToRemove: string;
12
14
  filterChanged: EventEmitter<RecipeFilters>;
13
15
  filterReset: EventEmitter<void>;
14
16
  filterCollapsed: EventEmitter<void>;
17
+ preferencesChanged: EventEmitter<void>;
15
18
  isFilterCollapsed: boolean;
16
19
  icon: typeof Icon;
17
20
  filtersToDisplay: any[];
18
21
  isMobile: boolean;
19
22
  willDoubleBuild: boolean;
20
- constructor(cdr: ChangeDetectorRef, mediaMatcher: MediaMatcher);
23
+ isLogged: boolean;
24
+ hasChildren: boolean;
25
+ private subscriptions;
26
+ constructor(cdr: ChangeDetectorRef, mediaMatcher: MediaMatcher, usersService: UserService);
27
+ ngOnInit(): void;
21
28
  ngOnChanges(): void;
29
+ ngOnDestroy(): void;
22
30
  filtersChanged(): void;
23
31
  buildFiltersArray(): string[];
24
32
  getSelectedFilters(filtersArray: any): string[];
25
33
  removeFilter(filterText: string): void;
26
34
  uncheckFiltersOnChange(field: string): void;
27
35
  toggleFilter(): void;
36
+ updateUserPreference(preference: any, state: any): void;
37
+ private setUserObservables;
28
38
  static ɵfac: i0.ɵɵFactoryDef<RecipeFiltersComponent, never>;
29
- static ɵcmp: i0.ɵɵComponentDefWithMeta<RecipeFiltersComponent, "ng-miam-recipe-filters", never, { "filters": "filters"; "mobileFixed": "mobileFixed"; "filterToRemove": "filterToRemove"; }, { "filterChanged": "filterChanged"; "filterReset": "filterReset"; "filterCollapsed": "filterCollapsed"; }, never, never>;
39
+ static ɵcmp: i0.ɵɵComponentDefWithMeta<RecipeFiltersComponent, "ng-miam-recipe-filters", never, { "filters": "filters"; "mobileFixed": "mobileFixed"; "filterToRemove": "filterToRemove"; }, { "filterChanged": "filterChanged"; "filterReset": "filterReset"; "filterCollapsed": "filterCollapsed"; "preferencesChanged": "preferencesChanged"; }, never, never>;
30
40
  }
@@ -10,12 +10,12 @@ export declare class RecipeTypeChooserComponent implements OnChanges {
10
10
  private mediaMatcher;
11
11
  formControl: FormControl;
12
12
  icon: typeof Icon;
13
- chosenType: string;
13
+ choosedType: string;
14
14
  isMobile: boolean;
15
15
  constructor(cdr: ChangeDetectorRef, recipeTypeService: RecipeTypeService, mediaMatcher: MediaMatcher);
16
16
  ngOnChanges(changes: SimpleChanges): void;
17
17
  initTypeChooser(): void;
18
- chosen(type: string): void;
18
+ choosed(type: string): void;
19
19
  static ɵfac: i0.ɵɵFactoryDef<RecipeTypeChooserComponent, never>;
20
20
  static ɵcmp: i0.ɵɵComponentDefWithMeta<RecipeTypeChooserComponent, "ng-miam-recipe-type-chooser", never, { "formControl": "formControl"; }, {}, never, never>;
21
21
  }
@@ -5,8 +5,9 @@ export declare class TextInputComponent {
5
5
  icon: Icon;
6
6
  placeholder: string;
7
7
  formControl: FormControl;
8
+ disable: boolean;
8
9
  uniqueId: any;
9
10
  constructor();
10
11
  static ɵfac: i0.ɵɵFactoryDef<TextInputComponent, never>;
11
- static ɵcmp: i0.ɵɵComponentDefWithMeta<TextInputComponent, "ng-miam-text-input", never, { "icon": "icon"; "placeholder": "placeholder"; "formControl": "formControl"; }, {}, never, never>;
12
+ static ɵcmp: i0.ɵɵComponentDefWithMeta<TextInputComponent, "ng-miam-text-input", never, { "icon": "icon"; "placeholder": "placeholder"; "formControl": "formControl"; "disable": "disable"; }, {}, never, never>;
12
13
  }
@@ -0,0 +1,23 @@
1
+ import { DocumentCollection, DocumentResource, Resource } from 'ngx-jsonapi';
2
+ import { RecipeProvider, Package } from '.';
3
+ export declare class Article extends Resource {
4
+ attributes: {
5
+ title: string;
6
+ image: string;
7
+ url: string;
8
+ logo: string;
9
+ date: string;
10
+ 'hidden-css-classes': string;
11
+ };
12
+ relationships: {
13
+ provider: DocumentResource<RecipeProvider>;
14
+ packages: DocumentCollection<Package>;
15
+ };
16
+ get title(): string;
17
+ get image(): string;
18
+ get url(): string;
19
+ get logo(): string;
20
+ get date(): Date;
21
+ get hiddenCssClasses(): string[];
22
+ set hiddenCssClasses(classes: string[]);
23
+ }
@@ -1,6 +1,5 @@
1
1
  import { Resource, DocumentCollection, DocumentResource } from 'ngx-jsonapi';
2
- import { BasketEntry } from './basket-entry';
3
- import { PointOfSale } from './point-of-sale';
2
+ import { BasketEntry, PointOfSale } from '.';
4
3
  export interface BasketCompletion {
5
4
  total: number;
6
5
  found: number;
@@ -2,7 +2,7 @@ import { Resource } from 'ngx-jsonapi';
2
2
  export declare class GroceriesEntry extends Resource {
3
3
  attributes: {
4
4
  name: string;
5
- 'capacity-volume': string;
5
+ 'capacity-volume': number;
6
6
  'capacity-unit': string;
7
7
  'capacity-factor': string;
8
8
  status: string;
@@ -10,4 +10,11 @@ export declare class GroceriesEntry extends Resource {
10
10
  };
11
11
  get status(): string;
12
12
  set status(st: string);
13
+ get name(): string;
14
+ set name(n: string);
15
+ get recipesIds(): Array<string | number>;
16
+ get volume(): number;
17
+ set volume(v: number);
18
+ get unit(): string;
19
+ set unit(u: string);
13
20
  }
@@ -1,6 +1,6 @@
1
- import { DocumentCollection, Resource } from "ngx-jsonapi";
2
- import { GroceriesEntry } from "./groceries-entry";
3
- import { Recipe } from "./recipe";
1
+ import { DocumentCollection, Resource } from 'ngx-jsonapi';
2
+ import { GroceriesEntry } from './groceries-entry';
3
+ import { Recipe } from './recipe';
4
4
  export declare class GroceriesList extends Resource {
5
5
  attributes: {
6
6
  name: string;
@@ -21,6 +21,7 @@ export declare class GroceriesList extends Resource {
21
21
  id: string;
22
22
  guests: string;
23
23
  }[];
24
+ get entries(): DocumentCollection<GroceriesEntry>;
24
25
  hasRecipe(recipeId: string): boolean;
25
26
  guestsForRecipe(recipe: Recipe): number;
26
27
  }
@@ -1,6 +1,7 @@
1
1
  export * from './ingredient';
2
2
  export * from './item';
3
3
  export * from './point-of-sale';
4
+ export * from './package';
4
5
  export * from './quantity-unit';
5
6
  export * from './recipe';
6
7
  export * from './recipe-provider';
@@ -14,3 +15,5 @@ export * from './basket-entry';
14
15
  export * from './basket-entries-item';
15
16
  export * from './basket-preview-line';
16
17
  export * from './sponsor';
18
+ export * from './article';
19
+ export * from './user';
@@ -1,14 +1,21 @@
1
- import { DocumentResource, Resource } from 'ngx-jsonapi';
2
- import { RecipeProvider } from './recipe-provider';
3
- import { RecipeStatus } from './recipe-status';
1
+ import { DocumentCollection, DocumentResource, Resource } from 'ngx-jsonapi';
2
+ import { Supplier, Recipe, RecipeProvider, RecipeStatus } from '.';
4
3
  export declare class Package extends Resource {
5
4
  attributes: {
6
5
  title: string;
7
6
  'author-id': string;
7
+ editable: boolean;
8
+ shared: boolean;
9
+ 'catalog-category': boolean;
10
+ 'catalog-position': string;
11
+ 'recipes-count': string;
8
12
  };
9
13
  get title(): string;
10
14
  relationships: {
11
15
  provider: DocumentResource<RecipeProvider>;
12
16
  status: DocumentResource<RecipeStatus>;
17
+ recipes: DocumentCollection<Recipe>;
18
+ 'shared-suppliers': DocumentCollection<Supplier>;
13
19
  };
20
+ get status(): RecipeStatus;
14
21
  }
@@ -69,6 +69,7 @@ export declare class Recipe extends Resource {
69
69
  get recipeType(): RecipeType;
70
70
  get modifiedIngredients(): SimplifiedIngredient[];
71
71
  get normalizedIngredients(): SimplifiedIngredient[];
72
+ get videoId(): string;
72
73
  private formatDuration;
73
74
  }
74
75
  export {};
@@ -10,8 +10,23 @@ export declare class User {
10
10
  recipe_provider: string;
11
11
  permissions: string[];
12
12
  roles: string[];
13
+ env: {
14
+ dev: {
15
+ supplier_id: string;
16
+ };
17
+ uat: {
18
+ supplier_id: string;
19
+ };
20
+ prod: {
21
+ supplier_id: string;
22
+ };
23
+ };
24
+ };
25
+ user_metadata: {
26
+ address?: string;
27
+ preferences?: {};
13
28
  };
14
- user_metadata: any;
15
29
  forbidProfiling: boolean;
16
30
  constructor(attrs?: {});
31
+ get supplierId(): any;
17
32
  }
@@ -0,0 +1,10 @@
1
+ import { Service } from 'ngx-jsonapi';
2
+ import { Article } from '../_models/article';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ArticlesService extends Service<Article> {
5
+ resource: typeof Article;
6
+ type: string;
7
+ constructor();
8
+ static ɵfac: i0.ɵɵFactoryDef<ArticlesService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDef<ArticlesService>;
10
+ }
@@ -9,7 +9,7 @@ import { Icon } from '../_types/icon.enum';
9
9
  import { RecipesService } from './recipes.service';
10
10
  import { MediaMatcher, BreakpointObserver } from '@angular/cdk/layout';
11
11
  import { SuppliersService } from './suppliers.service';
12
- import { User } from '../_models/user';
12
+ import { User } from '../_models';
13
13
  import * as i0 from "@angular/core";
14
14
  interface IconOverride {
15
15
  icon: Icon;
@@ -28,6 +28,8 @@ export declare class ContextService {
28
28
  private breakpointObserver;
29
29
  userInfo: User;
30
30
  icons: IconOverride[];
31
+ videoRecipesEnabled: boolean;
32
+ articlesInCatalogEnabled: boolean;
31
33
  hookCallback: (isLogged: any, isPosValid: any) => boolean;
32
34
  private CORSIssues;
33
35
  private isSmallScreen$;
@@ -47,7 +49,7 @@ export declare class ContextService {
47
49
  pos: {
48
50
  load: (posId: any) => void;
49
51
  loadWithExtId: (extId: any, supplierId: any) => void;
50
- pos$: BehaviorSubject<import("ng-miam").PointOfSale>;
52
+ pos$: BehaviorSubject<import("../_models").PointOfSale>;
51
53
  };
52
54
  supplier: {
53
55
  load: (supplierId: number | string) => void;
@@ -55,8 +57,8 @@ export declare class ContextService {
55
57
  };
56
58
  basket: {
57
59
  stats$: BehaviorSubject<import("./baskets.service").BasketStats>;
58
- entries$: Observable<import("ng-miam").BasketEntry[]>;
59
- confirm: () => Observable<import("ng-miam").Basket>;
60
+ entries$: Observable<import("../_models").BasketEntry[]>;
61
+ confirm: () => Observable<import("../_models").Basket>;
60
62
  paid: (price?: number) => void;
61
63
  removeEntries: (entries: {
62
64
  id: string;
@@ -65,11 +67,11 @@ export declare class ContextService {
65
67
  };
66
68
  recipes: {
67
69
  provider: {
68
- load: (id: any) => Observable<import("ng-miam").RecipeProvider>;
70
+ load: (id: any) => Observable<import("../_models").RecipeProvider>;
69
71
  };
70
72
  display: (id: any, previewAllowed?: boolean, previewMode?: boolean) => void;
71
73
  hidden: import("@angular/core").EventEmitter<boolean>;
72
- search: (provider: any, query: any) => Observable<import("ng-miam").Recipe[]>;
74
+ search: (provider: any, query: any) => Observable<import("../_models").Recipe[]>;
73
75
  };
74
76
  analytics: {
75
77
  init: (gaKey: string, optimizeKey?: string) => void;
@@ -77,6 +79,10 @@ export declare class ContextService {
77
79
  hook: {
78
80
  setHookCallback: (callback: (isLogged: any, isPosValid: any) => boolean) => void;
79
81
  };
82
+ features: {
83
+ enableVideoRecipes: () => void;
84
+ enableArticlesInCatalog: () => void;
85
+ };
80
86
  /**
81
87
  * Override two times 'll not be considered
82
88
  * @param icon have to be a knowed icon name see section 'Custom icons' in read me
@@ -2,21 +2,24 @@ import { GroceriesList } from '../_models/groceries-list';
2
2
  import { Service } from 'ngx-jsonapi';
3
3
  import { Observable, BehaviorSubject } from 'rxjs';
4
4
  import { AnalyticsService } from './analytics.service';
5
+ import { HttpClient } from '@angular/common/http';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class GroceriesListsService extends Service<GroceriesList> {
7
8
  private miamBasketURL;
9
+ private http;
8
10
  private analyticsService;
9
11
  resource: typeof GroceriesList;
10
12
  type: string;
11
13
  list$: BehaviorSubject<GroceriesList>;
12
14
  private currentSubscription;
13
- constructor(miamBasketURL: string, analyticsService: AnalyticsService);
15
+ constructor(miamBasketURL: string, http: HttpClient, analyticsService: AnalyticsService);
14
16
  refreshCurrentList(): Observable<GroceriesList>;
15
17
  resetList(): Observable<GroceriesList>;
16
18
  appendRecipeToList(recipeId: string, guests: number, openBasket?: boolean): Observable<GroceriesList>;
17
19
  removeRecipeFromList(recipeId: string): Observable<GroceriesList>;
18
20
  updateRecipeGuests(recipeId: string, guests: number): Observable<GroceriesList>;
19
21
  removeRecipesFromList(): Observable<GroceriesList>;
22
+ addEntriesFromPicture(file: File, include?: any[]): Observable<GroceriesList>;
20
23
  private saveList;
21
24
  private assignList;
22
25
  static ɵfac: i0.ɵɵFactoryDef<GroceriesListsService, never>;
@@ -19,3 +19,5 @@ export * from './groceries-entries.service';
19
19
  export * from './sponsor.service';
20
20
  export * from './user.service';
21
21
  export * from './package.service';
22
+ export * from './articles.service';
23
+ export * from './toastr.service';
@@ -1,16 +1,21 @@
1
+ import { HttpClient } from '@angular/common/http';
1
2
  import { DocumentCollection, Service } from 'ngx-jsonapi';
2
3
  import { Observable } from 'rxjs';
4
+ import { Supplier } from '../_models';
3
5
  import { Package } from '../_models/package';
4
6
  import { RecipeProviderService } from './recipe-provider.service';
5
7
  import { RecipeStatusService } from './recipe-status.service';
6
8
  import * as i0 from "@angular/core";
7
9
  export declare class PackageService extends Service<Package> {
10
+ private http;
8
11
  private providerService;
9
12
  private statusService;
10
13
  resource: typeof Package;
11
14
  type: string;
12
- constructor(providerService: RecipeProviderService, statusService: RecipeStatusService);
15
+ constructor(http: HttpClient, providerService: RecipeProviderService, statusService: RecipeStatusService);
13
16
  categories_for(suppliersIds: any): Observable<DocumentCollection<Package>>;
17
+ unshareWithSupplier(pack: Package, supplier: Supplier): Observable<any>;
18
+ shareWithSupplierOrUpdate(pack: Package, supplier: Supplier, category: boolean, catalog_position: number, edit_content: boolean): Observable<any>;
14
19
  static ɵfac: i0.ɵɵFactoryDef<PackageService, never>;
15
20
  static ɵprov: i0.ɵɵInjectableDef<PackageService>;
16
21
  }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class ToastrService {
3
+ constructor();
4
+ info(message: any, title?: any, options?: any): void;
5
+ private injectJquery;
6
+ private injectScript;
7
+ private injectCss;
8
+ static ɵfac: i0.ɵɵFactoryDef<ToastrService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDef<ToastrService>;
10
+ }
@@ -1,17 +1,18 @@
1
1
  import { HttpClient } from "@angular/common/http";
2
- import { RecipeProviderService } from "../_services/recipe-provider.service";
3
2
  import { BehaviorSubject, Observable } from "rxjs";
4
- import { RecipeProvider } from "../_models";
5
- import { User } from "../_models/user";
3
+ import { RecipeProvider, Supplier, User } from "../_models";
4
+ import { SuppliersService, RecipeProviderService, ToastrService } from '.';
6
5
  import * as i0 from "@angular/core";
7
6
  export declare class UserService {
8
7
  private http;
9
8
  private recipesProvidersService;
9
+ private toastr;
10
+ private suppliersService;
11
+ isLogged$: BehaviorSubject<boolean>;
12
+ private userInfo$;
10
13
  private userProviders$;
11
14
  private userRoles$;
12
- isLogged$: BehaviorSubject<boolean>;
13
- userInfo: User;
14
- constructor(http: HttpClient, recipesProvidersService: RecipeProviderService);
15
+ constructor(http: HttpClient, recipesProvidersService: RecipeProviderService, toastr: ToastrService, suppliersService: SuppliersService);
15
16
  get userProvider(): Observable<RecipeProvider>;
16
17
  get userRoles(): Observable<string[]>;
17
18
  get isAdmin(): Observable<boolean>;
@@ -19,8 +20,13 @@ export declare class UserService {
19
20
  toggleIsLogged(logged: boolean): void;
20
21
  setUserInfo(forbidProfiling: any): Observable<any>;
21
22
  resetUserInfo(): void;
23
+ setPreference(pref: any, state: any): Observable<User>;
24
+ hasPreference(pref: any): Observable<boolean>;
25
+ preferenceDefined(pref: any): Observable<boolean>;
26
+ profilingForbidden(): boolean;
22
27
  private initProvider;
23
28
  private initRoles;
29
+ getUserSupplier(): Observable<Supplier>;
24
30
  static ɵfac: i0.ɵɵFactoryDef<UserService, never>;
25
31
  static ɵprov: i0.ɵɵInjectableDef<UserService>;
26
32
  }
@@ -32,21 +32,25 @@ export declare enum Icon {
32
32
  Search = 30,
33
33
  Group = 31,
34
34
  Cart = 32,
35
- Help = 33,
36
- RecipeHelp = 34,
37
- Print = 35,
38
- Meal = 36,
39
- HorizontalDots = 37,
40
- NoRecipeFound = 38,
41
- Preheat = 39,
42
- caretDown = 40,
43
- Empty = 41,
44
- OpenBook = 42,
45
- CircledPlus = 43,
46
- MainDish = 44,
47
- Dessert = 45,
48
- Starter = 46,
49
- Edit = 47,
50
- Warning = 48,
51
- Preparation = 49
35
+ CartPlus = 33,
36
+ Help = 34,
37
+ RecipeHelp = 35,
38
+ Print = 36,
39
+ Meal = 37,
40
+ HorizontalDots = 38,
41
+ NoRecipeFound = 39,
42
+ Preheat = 40,
43
+ caretDown = 41,
44
+ Empty = 42,
45
+ OpenBook = 43,
46
+ CircledPlus = 44,
47
+ MainDish = 45,
48
+ Dessert = 46,
49
+ Starter = 47,
50
+ Edit = 48,
51
+ Warning = 49,
52
+ Preparation = 50,
53
+ ListScanner = 51,
54
+ DrawerHorizontalCloseBar = 52,
55
+ Video = 53
52
56
  }
@@ -1,12 +1,12 @@
1
1
  import { OnInit, OnDestroy, ChangeDetectorRef, EventEmitter } from '@angular/core';
2
2
  import { BehaviorSubject } from 'rxjs';
3
- import { GroceriesListsService } from '../../_services/groceries-lists.service';
4
- import { BasketsService, BasketStats } from '../../_services/baskets.service';
5
- import { BasketPreviewLine } from '../../_models/basket-preview-line';
3
+ import { GroceriesListsService } from '../../../_services/groceries-lists.service';
4
+ import { BasketsService, BasketStats } from '../../../_services/baskets.service';
5
+ import { BasketPreviewLine } from '../../../_models/basket-preview-line';
6
6
  import { BasketPreviewLineComponent } from '../basket-preview-line/basket-preview-line.component';
7
- import { PointOfSalesService } from '../../_services/point-of-sales.service';
8
- import { ContextService } from '../../_services/context.service';
9
- import { Icon } from '../../_types/icon.enum';
7
+ import { PointOfSalesService } from '../../../_services/point-of-sales.service';
8
+ import { ContextService } from '../../../_services/context.service';
9
+ import { Icon } from '../../../_types/icon.enum';
10
10
  import { MediaMatcher } from '@angular/cdk/layout';
11
11
  import * as i0 from "@angular/core";
12
12
  export declare class BasketPreviewBlockComponent implements OnInit, OnDestroy {
@@ -1,6 +1,6 @@
1
1
  import { OnInit, EventEmitter, ChangeDetectorRef } from '@angular/core';
2
- import { BasketEntry } from '../../_models/basket-entry';
3
- import { Icon } from '../../_types/icon.enum';
2
+ import { BasketEntry } from '../../../_models/basket-entry';
3
+ import { Icon } from '../../../_types/icon.enum';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class BasketPreviewDisabledComponent implements OnInit {
6
6
  cdr: ChangeDetectorRef;
@@ -1,11 +1,11 @@
1
1
  import { EventEmitter, OnDestroy, ChangeDetectorRef, OnInit, ElementRef } from '@angular/core';
2
- import { BasketPreviewLine } from '../../_models/basket-preview-line';
2
+ import { BasketPreviewLine } from '../../../_models/basket-preview-line';
3
3
  import { BehaviorSubject } from 'rxjs';
4
- import { BasketEntry } from '../../_models/basket-entry';
5
- import { GroceriesListsService } from '../../_services/groceries-lists.service';
6
- import { BasketsService, ContextService, PointOfSalesService, RecipesService, UserService } from '../../_services';
7
- import { AnalyticsService } from '../../_services/analytics.service';
8
- import { Icon } from '../../_types/icon.enum';
4
+ import { BasketEntry } from '../../../_models/basket-entry';
5
+ import { GroceriesListsService } from '../../../_services/groceries-lists.service';
6
+ import { BasketsService, ContextService, PointOfSalesService, RecipesService, UserService } from '../../../_services';
7
+ import { AnalyticsService } from '../../../_services/analytics.service';
8
+ import { Icon } from '../../../_types/icon.enum';
9
9
  import * as i0 from "@angular/core";
10
10
  export declare class BasketPreviewLineComponent implements OnInit, OnDestroy {
11
11
  cdr: ChangeDetectorRef;
@@ -47,7 +47,7 @@ export declare class BasketPreviewLineComponent implements OnInit, OnDestroy {
47
47
  toggleExpanded(event: any): void;
48
48
  deleteEntry(entry: BasketEntry): void;
49
49
  changeProduct(line: BasketPreviewLine): void;
50
- productChoosen(line?: BasketPreviewLine): void;
50
+ productChosen(line?: BasketPreviewLine): void;
51
51
  buildEntriesLines(): void;
52
52
  addEntry(entry: BasketEntry): void;
53
53
  trackByItemId(index: number, line: BasketPreviewLine): string;
@@ -0,0 +1,16 @@
1
+ import { Injector } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./basket-preview-block/basket-preview-block.component";
4
+ import * as i2 from "./basket-preview-line/basket-preview-line.component";
5
+ import * as i3 from "./basket-preview-disabled/basket-preview-disabled.component";
6
+ import * as i4 from "./replace-item/replace-item.component";
7
+ import * as i5 from "@angular/common";
8
+ import * as i6 from "@angular/forms";
9
+ import * as i7 from "../../_utils/utils.module";
10
+ import * as i8 from "../../_components/components.module";
11
+ import * as i9 from "../loader/loader.module";
12
+ export declare class BasketPreviewModule {
13
+ constructor(injector: Injector);
14
+ static ɵmod: i0.ɵɵNgModuleDefWithMeta<BasketPreviewModule, [typeof i1.BasketPreviewBlockComponent, typeof i2.BasketPreviewLineComponent, typeof i3.BasketPreviewDisabledComponent, typeof i4.ReplaceItemComponent], [typeof i5.CommonModule, typeof i6.FormsModule, typeof i7.UtilsModule, typeof i8.ComponentsModule, typeof i9.LoaderModule], [typeof i1.BasketPreviewBlockComponent, typeof i2.BasketPreviewLineComponent, typeof i3.BasketPreviewDisabledComponent, typeof i4.ReplaceItemComponent]>;
15
+ static ɵinj: i0.ɵɵInjectorDef<BasketPreviewModule>;
16
+ }
@@ -0,0 +1,5 @@
1
+ export * from './basket-preview.module';
2
+ export * from './basket-preview-block/basket-preview-block.component';
3
+ export * from './basket-preview-line/basket-preview-line.component';
4
+ export * from './basket-preview-disabled/basket-preview-disabled.component';
5
+ export * from './replace-item/replace-item.component';
@@ -1,9 +1,9 @@
1
1
  import { OnInit, EventEmitter, ElementRef, ChangeDetectorRef } from '@angular/core';
2
- import { BasketPreviewLine } from '../../_models/basket-preview-line';
3
- import { Item } from '../../_models/item';
4
- import { Icon } from '../../_types/icon.enum';
5
- import { BasketsService } from '../../_services';
6
- import { AnalyticsService } from '../../_services/analytics.service';
2
+ import { BasketPreviewLine } from '../../../_models/basket-preview-line';
3
+ import { Item } from '../../../_models/item';
4
+ import { Icon } from '../../../_types/icon.enum';
5
+ import { BasketsService } from '../../../_services';
6
+ import { AnalyticsService } from '../../../_services/analytics.service';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class ReplaceItemComponent implements OnInit {
9
9
  private cdr;
@@ -0,0 +1,8 @@
1
+ import { Article } from '../../_models';
2
+ import * as i0 from "@angular/core";
3
+ export declare class CatalogArticleCardComponent {
4
+ article: Article;
5
+ showArticle(): void;
6
+ static ɵfac: i0.ɵɵFactoryDef<CatalogArticleCardComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDefWithMeta<CatalogArticleCardComponent, "ng-miam-catalog-article-card", never, { "article": "article"; }, {}, never, never>;
8
+ }
@@ -1,13 +1,15 @@
1
1
  import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, QueryList } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import { Recipe } from '../../_models';
4
- import { RecipeLikesService, RecipesService } from '../../_services';
2
+ import { Observable, Subscription } from 'rxjs';
3
+ import { Article, Recipe } from '../../_models';
4
+ import { ArticlesService, ContextService, RecipeLikesService, RecipesService } from '../../_services';
5
5
  import { Icon } from '../../_types/icon.enum';
6
6
  import { CatalogRecipeCardComponent } from '../catalog-recipe-card/catalog-recipe-card.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class CatalogCategoryComponent implements OnDestroy, OnChanges {
9
9
  private recipesService;
10
10
  private recipeLikesService;
11
+ private articlesService;
12
+ private context;
11
13
  private cdr;
12
14
  filters: any;
13
15
  title: string;
@@ -17,17 +19,20 @@ export declare class CatalogCategoryComponent implements OnDestroy, OnChanges {
17
19
  recipeCards: QueryList<CatalogRecipeCardComponent>;
18
20
  subscriptions: Subscription[];
19
21
  recipes: Recipe[];
22
+ articles: Article[];
20
23
  isLoading: boolean;
24
+ hide: boolean;
21
25
  icon: typeof Icon;
22
- recipeCardsTotalSize: number;
26
+ cardsTotalSize: number;
23
27
  numberOfSections: number;
24
28
  currentSection: number;
25
- nbCardsInAnExtremSections: number;
29
+ nbCardsInAnExtremeSection: number;
26
30
  nbCardsInAMiddleSection: number;
27
31
  categoryBandWidth: number;
28
- constructor(recipesService: RecipesService, recipeLikesService: RecipeLikesService, cdr: ChangeDetectorRef);
32
+ constructor(recipesService: RecipesService, recipeLikesService: RecipeLikesService, articlesService: ArticlesService, context: ContextService, cdr: ChangeDetectorRef);
29
33
  ngOnChanges(): void;
30
- loadRecipes(): void;
34
+ loadRecipes(): Observable<Recipe[]>;
35
+ loadArticles(): Observable<Article[]>;
31
36
  createSections(): void;
32
37
  recalculateSections(): void;
33
38
  xTranslation(): number;
@@ -1,12 +1,15 @@
1
1
  import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, OnInit } from '@angular/core';
2
2
  import { Subscription } from 'rxjs';
3
3
  import { Recipe } from '../../_models';
4
- import { RecipesService } from '../../_services';
4
+ import { RecipesService, ContextService } from '../../_services';
5
+ import { AnalyticsService } from '../../_services/analytics.service';
5
6
  import { Icon } from '../../_types/icon.enum';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare class CatalogHeaderComponent implements OnDestroy, OnInit, OnChanges {
8
9
  private recipesService;
9
10
  private cdr;
11
+ private analytics;
12
+ context: ContextService;
10
13
  returnButtonPressed: EventEmitter<void>;
11
14
  searchStringChanged: EventEmitter<string>;
12
15
  forcedRecipe: Recipe;
@@ -18,7 +21,7 @@ export declare class CatalogHeaderComponent implements OnDestroy, OnInit, OnChan
18
21
  defaultRecipe: Recipe;
19
22
  isLoading: boolean;
20
23
  icon: typeof Icon;
21
- constructor(recipesService: RecipesService, cdr: ChangeDetectorRef);
24
+ constructor(recipesService: RecipesService, cdr: ChangeDetectorRef, analytics: AnalyticsService, context: ContextService);
22
25
  ngOnInit(): void;
23
26
  ngOnChanges(): void;
24
27
  openRecipe(): void;