@infrab4a/connect-angular 5.7.5-beta.0 → 5.7.5

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 (198) hide show
  1. package/angular-connect.module.d.ts +36 -0
  2. package/angular-elastic-search.module.d.ts +9 -0
  3. package/angular-firebase-auth.module.d.ts +11 -0
  4. package/angular-firestore.module.d.ts +17 -0
  5. package/angular-hasura-graphql.module.d.ts +14 -0
  6. package/angular-vertex-search.module.d.ts +9 -0
  7. package/consts/backend-url.const.d.ts +1 -0
  8. package/consts/category-structure.d.ts +1 -0
  9. package/consts/default-shop.const.d.ts +1 -0
  10. package/consts/es-config.const.d.ts +1 -0
  11. package/consts/firebase-const.d.ts +4 -0
  12. package/consts/hasura-options.const.d.ts +1 -0
  13. package/consts/index.d.ts +8 -0
  14. package/consts/persistence.const.d.ts +1 -0
  15. package/consts/storage-base-url.const.d.ts +1 -0
  16. package/consts/vertex-config.const.d.ts +1 -0
  17. package/esm2020/angular-connect.module.mjs +291 -0
  18. package/esm2020/angular-elastic-search.module.mjs +34 -0
  19. package/esm2020/angular-firebase-auth.module.mjs +141 -0
  20. package/esm2020/angular-firestore.module.mjs +569 -0
  21. package/esm2020/angular-hasura-graphql.module.mjs +421 -0
  22. package/esm2020/angular-vertex-search.module.mjs +34 -0
  23. package/esm2020/consts/backend-url.const.mjs +2 -0
  24. package/esm2020/consts/category-structure.mjs +2 -0
  25. package/esm2020/consts/default-shop.const.mjs +2 -0
  26. package/esm2020/consts/es-config.const.mjs +2 -0
  27. package/esm2020/consts/firebase-const.mjs +5 -0
  28. package/esm2020/consts/hasura-options.const.mjs +2 -0
  29. package/esm2020/consts/index.mjs +9 -0
  30. package/esm2020/consts/persistence.const.mjs +2 -0
  31. package/esm2020/consts/storage-base-url.const.mjs +2 -0
  32. package/esm2020/consts/vertex-config.const.mjs +2 -0
  33. package/esm2020/helpers/index.mjs +2 -0
  34. package/esm2020/helpers/mobile-operation-system-checker.helper.mjs +7 -0
  35. package/esm2020/index.mjs +7 -0
  36. package/esm2020/infrab4a-connect-angular.mjs +5 -0
  37. package/esm2020/interfaces/catalog-strategies.interface.mjs +2 -0
  38. package/esm2020/interfaces/category-facades.interface.mjs +2 -0
  39. package/esm2020/interfaces/index.mjs +3 -0
  40. package/esm2020/persistence/cookie-data-persistence.mjs +22 -0
  41. package/esm2020/persistence/data-persistence.mjs +2 -0
  42. package/esm2020/persistence/index.mjs +3 -0
  43. package/esm2020/services/auth.service.mjs +37 -0
  44. package/esm2020/services/cart/cart-services.facade.mjs +21 -0
  45. package/esm2020/services/cart/index.mjs +2 -0
  46. package/esm2020/services/cart.service.mjs +73 -0
  47. package/esm2020/services/catalog/adapters/category-structure.adapter.mjs +2 -0
  48. package/esm2020/services/catalog/adapters/index.mjs +4 -0
  49. package/esm2020/services/catalog/adapters/new-category-structure.adapter.mjs +43 -0
  50. package/esm2020/services/catalog/adapters/old-category-structure.adapter.mjs +23 -0
  51. package/esm2020/services/catalog/catalog.service.mjs +111 -0
  52. package/esm2020/services/catalog/category.service.mjs +42 -0
  53. package/esm2020/services/catalog/context/catalog-search.context.mjs +40 -0
  54. package/esm2020/services/catalog/enums/index.mjs +2 -0
  55. package/esm2020/services/catalog/enums/product-sorts.enum.mjs +11 -0
  56. package/esm2020/services/catalog/facades/catalog-service.facade.mjs +32 -0
  57. package/esm2020/services/catalog/facades/catalog-strategies.facade.mjs +17 -0
  58. package/esm2020/services/catalog/facades/category-repository.facade.mjs +20 -0
  59. package/esm2020/services/catalog/facades/category-service.facade.mjs +30 -0
  60. package/esm2020/services/catalog/facades/index.mjs +6 -0
  61. package/esm2020/services/catalog/facades/product-catalog.facade.mjs +21 -0
  62. package/esm2020/services/catalog/helpers/brand-manager.helper.mjs +62 -0
  63. package/esm2020/services/catalog/helpers/catalog-filter.helper.mjs +44 -0
  64. package/esm2020/services/catalog/helpers/catalog-sort.helper.mjs +52 -0
  65. package/esm2020/services/catalog/helpers/index.mjs +5 -0
  66. package/esm2020/services/catalog/helpers/product-fields.helper.mjs +43 -0
  67. package/esm2020/services/catalog/index.mjs +8 -0
  68. package/esm2020/services/catalog/models/category-with-tree.model.mjs +10 -0
  69. package/esm2020/services/catalog/models/index.mjs +2 -0
  70. package/esm2020/services/catalog/services/catalog-helpers.service.mjs +33 -0
  71. package/esm2020/services/catalog/services/catalog-operations.facade.mjs +26 -0
  72. package/esm2020/services/catalog/services/catalog-repository.service.mjs +25 -0
  73. package/esm2020/services/catalog/services/index.mjs +5 -0
  74. package/esm2020/services/catalog/services/product-management.facade.mjs +25 -0
  75. package/esm2020/services/catalog/strategies/category-search.strategy.mjs +133 -0
  76. package/esm2020/services/catalog/strategies/index.mjs +4 -0
  77. package/esm2020/services/catalog/strategies/profile-search.strategy.mjs +42 -0
  78. package/esm2020/services/catalog/strategies/term-search.strategy.mjs +126 -0
  79. package/esm2020/services/catalog/strategies/types/strategy-params.type.mjs +2 -0
  80. package/esm2020/services/catalog/types/fetch-products-options.type.mjs +2 -0
  81. package/esm2020/services/catalog/types/fetch-products-params.type.mjs +2 -0
  82. package/esm2020/services/catalog/types/fetch-products-response.type.mjs +2 -0
  83. package/esm2020/services/catalog/types/index.mjs +6 -0
  84. package/esm2020/services/catalog/types/method-params.type.mjs +2 -0
  85. package/esm2020/services/catalog/types/product-sort.type.mjs +2 -0
  86. package/esm2020/services/catalog/wishlist.service.mjs +258 -0
  87. package/esm2020/services/checkout/checkout-dependencies.facade.mjs +20 -0
  88. package/esm2020/services/checkout/checkout-repositories.facade.mjs +20 -0
  89. package/esm2020/services/checkout/index.mjs +3 -0
  90. package/esm2020/services/checkout-subscription.service.mjs +55 -0
  91. package/esm2020/services/checkout.service.mjs +106 -0
  92. package/esm2020/services/coupon/coupon-repositories.facade.mjs +24 -0
  93. package/esm2020/services/coupon/index.mjs +2 -0
  94. package/esm2020/services/coupon/types/coupon-params.type.mjs +2 -0
  95. package/esm2020/services/coupon.service.mjs +248 -0
  96. package/esm2020/services/helpers/index.mjs +2 -0
  97. package/esm2020/services/helpers/util.helper.mjs +18 -0
  98. package/esm2020/services/home-shop/home-shop-repositories.facade.mjs +24 -0
  99. package/esm2020/services/home-shop/index.mjs +2 -0
  100. package/esm2020/services/home-shop.service.mjs +119 -0
  101. package/esm2020/services/index.mjs +11 -0
  102. package/esm2020/services/order-product-review.service.mjs +126 -0
  103. package/esm2020/services/order.service.mjs +30 -0
  104. package/esm2020/services/shared/configuration.facade.mjs +29 -0
  105. package/esm2020/services/shared/index.mjs +2 -0
  106. package/esm2020/services/types/index.mjs +5 -0
  107. package/esm2020/services/types/pending-product-review.type.mjs +2 -0
  108. package/esm2020/services/types/product-review-create.type.mjs +2 -0
  109. package/esm2020/services/types/required-checkout-data.type.mjs +2 -0
  110. package/esm2020/services/types/required-checkout-subscription-data.type.mjs +2 -0
  111. package/esm2020/types/firebase-app-config.type.mjs +2 -0
  112. package/esm2020/types/index.mjs +2 -0
  113. package/fesm2015/infrab4a-connect-angular.mjs +3630 -0
  114. package/fesm2015/infrab4a-connect-angular.mjs.map +1 -0
  115. package/{fesm2022 → fesm2020}/infrab4a-connect-angular.mjs +3433 -3384
  116. package/fesm2020/infrab4a-connect-angular.mjs.map +1 -0
  117. package/helpers/index.d.ts +1 -0
  118. package/helpers/mobile-operation-system-checker.helper.d.ts +3 -0
  119. package/index.d.ts +6 -0
  120. package/interfaces/catalog-strategies.interface.d.ts +31 -0
  121. package/interfaces/category-facades.interface.d.ts +6 -0
  122. package/interfaces/index.d.ts +2 -0
  123. package/package.json +19 -12
  124. package/persistence/cookie-data-persistence.d.ts +10 -0
  125. package/persistence/data-persistence.d.ts +6 -0
  126. package/persistence/index.d.ts +2 -0
  127. package/services/auth.service.d.ts +18 -0
  128. package/services/cart/cart-services.facade.d.ts +12 -0
  129. package/services/cart/index.d.ts +1 -0
  130. package/services/cart.service.d.ts +26 -0
  131. package/services/catalog/adapters/category-structure.adapter.d.ts +4 -0
  132. package/services/catalog/adapters/index.d.ts +3 -0
  133. package/services/catalog/adapters/new-category-structure.adapter.d.ts +12 -0
  134. package/services/catalog/adapters/old-category-structure.adapter.d.ts +10 -0
  135. package/services/catalog/catalog.service.d.ts +24 -0
  136. package/services/catalog/category.service.d.ts +23 -0
  137. package/services/catalog/context/catalog-search.context.d.ts +14 -0
  138. package/services/catalog/enums/index.d.ts +1 -0
  139. package/services/catalog/enums/product-sorts.enum.d.ts +9 -0
  140. package/services/catalog/facades/catalog-service.facade.d.ts +15 -0
  141. package/services/catalog/facades/catalog-strategies.facade.d.ts +10 -0
  142. package/services/catalog/facades/category-repository.facade.d.ts +9 -0
  143. package/services/catalog/facades/category-service.facade.d.ts +15 -0
  144. package/services/catalog/facades/index.d.ts +5 -0
  145. package/services/catalog/facades/product-catalog.facade.d.ts +10 -0
  146. package/services/catalog/helpers/brand-manager.helper.d.ts +14 -0
  147. package/services/catalog/helpers/catalog-filter.helper.d.ts +8 -0
  148. package/services/catalog/helpers/catalog-sort.helper.d.ts +7 -0
  149. package/services/catalog/helpers/index.d.ts +4 -0
  150. package/services/catalog/helpers/product-fields.helper.d.ts +7 -0
  151. package/services/catalog/index.d.ts +7 -0
  152. package/services/catalog/models/category-with-tree.model.d.ts +4 -0
  153. package/services/catalog/models/index.d.ts +1 -0
  154. package/services/catalog/services/catalog-helpers.service.d.ts +17 -0
  155. package/services/catalog/services/catalog-operations.facade.d.ts +13 -0
  156. package/services/catalog/services/catalog-repository.service.d.ts +12 -0
  157. package/services/catalog/services/index.d.ts +4 -0
  158. package/services/catalog/services/product-management.facade.d.ts +12 -0
  159. package/services/catalog/strategies/category-search.strategy.d.ts +19 -0
  160. package/services/catalog/strategies/index.d.ts +3 -0
  161. package/services/catalog/strategies/profile-search.strategy.d.ts +14 -0
  162. package/services/catalog/strategies/term-search.strategy.d.ts +20 -0
  163. package/services/catalog/strategies/types/strategy-params.type.d.ts +59 -0
  164. package/services/catalog/types/fetch-products-options.type.d.ts +8 -0
  165. package/services/catalog/types/fetch-products-params.type.d.ts +25 -0
  166. package/services/catalog/types/fetch-products-response.type.d.ts +19 -0
  167. package/services/catalog/types/index.d.ts +5 -0
  168. package/services/catalog/types/method-params.type.d.ts +17 -0
  169. package/services/catalog/types/product-sort.type.d.ts +2 -0
  170. package/services/catalog/wishlist.service.d.ts +60 -0
  171. package/services/checkout/checkout-dependencies.facade.d.ts +10 -0
  172. package/services/checkout/checkout-repositories.facade.d.ts +9 -0
  173. package/services/checkout/index.d.ts +2 -0
  174. package/services/checkout-subscription.service.d.ts +19 -0
  175. package/services/checkout.service.d.ts +30 -0
  176. package/services/coupon/coupon-repositories.facade.d.ts +10 -0
  177. package/services/coupon/index.d.ts +1 -0
  178. package/services/coupon/types/coupon-params.type.d.ts +13 -0
  179. package/services/coupon.service.d.ts +36 -0
  180. package/services/helpers/index.d.ts +1 -0
  181. package/services/helpers/util.helper.d.ts +3 -0
  182. package/services/home-shop/home-shop-repositories.facade.d.ts +10 -0
  183. package/services/home-shop/index.d.ts +1 -0
  184. package/services/home-shop.service.d.ts +26 -0
  185. package/services/index.d.ts +10 -0
  186. package/services/order-product-review.service.d.ts +18 -0
  187. package/services/order.service.d.ts +13 -0
  188. package/services/shared/configuration.facade.d.ts +12 -0
  189. package/services/shared/index.d.ts +1 -0
  190. package/services/types/index.d.ts +4 -0
  191. package/services/types/pending-product-review.type.d.ts +12 -0
  192. package/services/types/product-review-create.type.d.ts +14 -0
  193. package/services/types/required-checkout-data.type.d.ts +2 -0
  194. package/services/types/required-checkout-subscription-data.type.d.ts +2 -0
  195. package/types/firebase-app-config.type.d.ts +1 -0
  196. package/types/index.d.ts +1 -0
  197. package/fesm2022/infrab4a-connect-angular.mjs.map +0 -1
  198. package/types/infrab4a-connect-angular.d.ts +0 -758
@@ -0,0 +1,17 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { CategorySearchStrategy, ProfileSearchStrategy, TermSearchStrategy } from '../strategies';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../strategies";
5
+ export class CatalogStrategiesFacade {
6
+ constructor(categoryStrategy, termStrategy, profileStrategy) {
7
+ this.categoryStrategy = categoryStrategy;
8
+ this.termStrategy = termStrategy;
9
+ this.profileStrategy = profileStrategy;
10
+ }
11
+ }
12
+ CatalogStrategiesFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogStrategiesFacade, deps: [{ token: i1.CategorySearchStrategy }, { token: i1.TermSearchStrategy }, { token: i1.ProfileSearchStrategy }], target: i0.ɵɵFactoryTarget.Injectable });
13
+ CatalogStrategiesFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogStrategiesFacade });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogStrategiesFacade, decorators: [{
15
+ type: Injectable
16
+ }], ctorParameters: function () { return [{ type: i1.CategorySearchStrategy }, { type: i1.TermSearchStrategy }, { type: i1.ProfileSearchStrategy }]; } });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1zdHJhdGVnaWVzLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy9mYWNhZGVzL2NhdGFsb2ctc3RyYXRlZ2llcy5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUE7OztBQUdqRyxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFlBQ2tCLGdCQUF3QyxFQUN4QyxZQUFnQyxFQUNoQyxlQUFzQztRQUZ0QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO1FBQ3hDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7SUFDckQsQ0FBQzs7b0hBTE8sdUJBQXVCO3dIQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuaW1wb3J0IHsgQ2F0ZWdvcnlTZWFyY2hTdHJhdGVneSwgUHJvZmlsZVNlYXJjaFN0cmF0ZWd5LCBUZXJtU2VhcmNoU3RyYXRlZ3kgfSBmcm9tICcuLi9zdHJhdGVnaWVzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ1N0cmF0ZWdpZXNGYWNhZGUge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGNhdGVnb3J5U3RyYXRlZ3k6IENhdGVnb3J5U2VhcmNoU3RyYXRlZ3ksXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGVybVN0cmF0ZWd5OiBUZXJtU2VhcmNoU3RyYXRlZ3ksXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgcHJvZmlsZVN0cmF0ZWd5OiBQcm9maWxlU2VhcmNoU3RyYXRlZ3ksXHJcbiAgKSB7fVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class CategoryRepositoryFacade {
4
+ constructor(categoryRepository, categoryFilterRepository) {
5
+ this.categoryRepository = categoryRepository;
6
+ this.categoryFilterRepository = categoryFilterRepository;
7
+ }
8
+ }
9
+ CategoryRepositoryFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryRepositoryFacade, deps: [{ token: 'CategoryRepository' }, { token: 'CategoryFilterRepository' }], target: i0.ɵɵFactoryTarget.Injectable });
10
+ CategoryRepositoryFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryRepositoryFacade });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryRepositoryFacade, decorators: [{
12
+ type: Injectable
13
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
14
+ type: Inject,
15
+ args: ['CategoryRepository']
16
+ }] }, { type: undefined, decorators: [{
17
+ type: Inject,
18
+ args: ['CategoryFilterRepository']
19
+ }] }]; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktcmVwb3NpdG9yeS5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvZmFjYWRlcy9jYXRlZ29yeS1yZXBvc2l0b3J5LmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFJbEQsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxZQUNnRCxrQkFBc0MsRUFDaEMsd0JBQWtEO1FBRHhELHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDaEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtJQUNyRyxDQUFDOztxSEFKTyx3QkFBd0Isa0JBRXpCLG9CQUFvQixhQUNwQiwwQkFBMEI7eUhBSHpCLHdCQUF3QjsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOzswQkFHTixNQUFNOzJCQUFDLG9CQUFvQjs7MEJBQzNCLE1BQU07MkJBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQ2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5LCBDYXRlZ29yeVJlcG9zaXRvcnkgfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENhdGVnb3J5UmVwb3NpdG9yeUZhY2FkZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KCdDYXRlZ29yeVJlcG9zaXRvcnknKSBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnlSZXBvc2l0b3J5OiBDYXRlZ29yeVJlcG9zaXRvcnksXHJcbiAgICBASW5qZWN0KCdDYXRlZ29yeUZpbHRlclJlcG9zaXRvcnknKSBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5OiBDYXRlZ29yeUZpbHRlclJlcG9zaXRvcnksXHJcbiAgKSB7fVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { Shops } from '@infrab4a/connect';
3
+ import { DEFAULT_SHOP } from '../../../consts';
4
+ import { CategoryService } from '../category.service';
5
+ import { CategoryRepositoryFacade } from './category-repository.facade';
6
+ import { ProductCatalogFacade } from './product-catalog.facade';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "./category-repository.facade";
9
+ import * as i2 from "./product-catalog.facade";
10
+ import * as i3 from "@infrab4a/connect";
11
+ export class CategoryServiceFacade {
12
+ constructor(categoryRepositoryFacade, productCatalogFacade, shop) {
13
+ this.categoryRepositoryFacade = categoryRepositoryFacade;
14
+ this.productCatalogFacade = productCatalogFacade;
15
+ this.shop = shop;
16
+ this.categoryService = new CategoryService(this.categoryRepositoryFacade, this.productCatalogFacade, this.shop);
17
+ }
18
+ getCategoryService() {
19
+ return this.categoryService;
20
+ }
21
+ }
22
+ CategoryServiceFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryServiceFacade, deps: [{ token: i1.CategoryRepositoryFacade }, { token: i2.ProductCatalogFacade }, { token: DEFAULT_SHOP }], target: i0.ɵɵFactoryTarget.Injectable });
23
+ CategoryServiceFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryServiceFacade });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategoryServiceFacade, decorators: [{
25
+ type: Injectable
26
+ }], ctorParameters: function () { return [{ type: i1.CategoryRepositoryFacade }, { type: i2.ProductCatalogFacade }, { type: i3.Shops, decorators: [{
27
+ type: Inject,
28
+ args: [DEFAULT_SHOP]
29
+ }] }]; } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktc2VydmljZS5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvZmFjYWRlcy9jYXRlZ29yeS1zZXJ2aWNlLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUVyRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTs7Ozs7QUFHL0QsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQyxZQUNtQix3QkFBa0QsRUFDbEQsb0JBQTBDLEVBQ3BCLElBQVc7UUFGakMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQ3BCLFNBQUksR0FBSixJQUFJLENBQU87UUFFbEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNqSCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQTtJQUM3QixDQUFDOztrSEFiVSxxQkFBcUIsOEZBTXRCLFlBQVk7c0hBTlgscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQU9OLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IFNob3BzIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBERUZBVUxUX1NIT1AgfSBmcm9tICcuLi8uLi8uLi9jb25zdHMnXHJcbmltcG9ydCB7IENhdGVnb3J5U2VydmljZSB9IGZyb20gJy4uL2NhdGVnb3J5LnNlcnZpY2UnXHJcblxyXG5pbXBvcnQgeyBDYXRlZ29yeVJlcG9zaXRvcnlGYWNhZGUgfSBmcm9tICcuL2NhdGVnb3J5LXJlcG9zaXRvcnkuZmFjYWRlJ1xyXG5pbXBvcnQgeyBQcm9kdWN0Q2F0YWxvZ0ZhY2FkZSB9IGZyb20gJy4vcHJvZHVjdC1jYXRhbG9nLmZhY2FkZSdcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENhdGVnb3J5U2VydmljZUZhY2FkZSB7XHJcbiAgcHJpdmF0ZSBjYXRlZ29yeVNlcnZpY2U6IENhdGVnb3J5U2VydmljZVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2F0ZWdvcnlSZXBvc2l0b3J5RmFjYWRlOiBDYXRlZ29yeVJlcG9zaXRvcnlGYWNhZGUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb2R1Y3RDYXRhbG9nRmFjYWRlOiBQcm9kdWN0Q2F0YWxvZ0ZhY2FkZSxcclxuICAgIEBJbmplY3QoREVGQVVMVF9TSE9QKSBwcml2YXRlIHJlYWRvbmx5IHNob3A6IFNob3BzLFxyXG4gICkge1xyXG4gICAgdGhpcy5jYXRlZ29yeVNlcnZpY2UgPSBuZXcgQ2F0ZWdvcnlTZXJ2aWNlKHRoaXMuY2F0ZWdvcnlSZXBvc2l0b3J5RmFjYWRlLCB0aGlzLnByb2R1Y3RDYXRhbG9nRmFjYWRlLCB0aGlzLnNob3ApXHJcbiAgfVxyXG5cclxuICBnZXRDYXRlZ29yeVNlcnZpY2UoKTogQ2F0ZWdvcnlTZXJ2aWNlIHtcclxuICAgIHJldHVybiB0aGlzLmNhdGVnb3J5U2VydmljZVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,6 @@
1
+ export { CatalogServiceFacade } from './catalog-service.facade';
2
+ export { CatalogStrategiesFacade } from './catalog-strategies.facade';
3
+ export { CategoryRepositoryFacade } from './category-repository.facade';
4
+ export { CategoryServiceFacade } from './category-service.facade';
5
+ export { ProductCatalogFacade } from './product-catalog.facade';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvZmFjYWRlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENhdGFsb2dTZXJ2aWNlRmFjYWRlIH0gZnJvbSAnLi9jYXRhbG9nLXNlcnZpY2UuZmFjYWRlJ1xyXG5leHBvcnQgeyBDYXRhbG9nU3RyYXRlZ2llc0ZhY2FkZSB9IGZyb20gJy4vY2F0YWxvZy1zdHJhdGVnaWVzLmZhY2FkZSdcclxuZXhwb3J0IHsgQ2F0ZWdvcnlSZXBvc2l0b3J5RmFjYWRlIH0gZnJvbSAnLi9jYXRlZ29yeS1yZXBvc2l0b3J5LmZhY2FkZSdcclxuZXhwb3J0IHsgQ2F0ZWdvcnlTZXJ2aWNlRmFjYWRlIH0gZnJvbSAnLi9jYXRlZ29yeS1zZXJ2aWNlLmZhY2FkZSdcclxuZXhwb3J0IHsgUHJvZHVjdENhdGFsb2dGYWNhZGUgfSBmcm9tICcuL3Byb2R1Y3QtY2F0YWxvZy5mYWNhZGUnXHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { CATEGORY_STRUCTURE } from '../../../consts';
3
+ import * as i0 from "@angular/core";
4
+ export class ProductCatalogFacade {
5
+ constructor(productCatalogRepository, categoryStructureAdapter) {
6
+ this.productCatalogRepository = productCatalogRepository;
7
+ this.categoryStructureAdapter = categoryStructureAdapter;
8
+ }
9
+ }
10
+ ProductCatalogFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductCatalogFacade, deps: [{ token: 'ProductCatalogRepository' }, { token: CATEGORY_STRUCTURE }], target: i0.ɵɵFactoryTarget.Injectable });
11
+ ProductCatalogFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductCatalogFacade });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductCatalogFacade, decorators: [{
13
+ type: Injectable
14
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
15
+ type: Inject,
16
+ args: ['ProductCatalogRepository']
17
+ }] }, { type: undefined, decorators: [{
18
+ type: Inject,
19
+ args: [CATEGORY_STRUCTURE]
20
+ }] }]; } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1jYXRhbG9nLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy9mYWNhZGVzL3Byb2R1Y3QtY2F0YWxvZy5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHbEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7O0FBSXBELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFDc0Qsd0JBQWtELEVBQzFELHdCQUFrRDtRQUQxQyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQzFELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7SUFDN0YsQ0FBQzs7aUhBSk8sb0JBQW9CLGtCQUVyQiwwQkFBMEIsYUFDMUIsa0JBQWtCO3FIQUhqQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVTs7MEJBR04sTUFBTTsyQkFBQywwQkFBMEI7OzBCQUNqQyxNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IFByb2R1Y3RDYXRhbG9nUmVwb3NpdG9yeSB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xyXG5cclxuaW1wb3J0IHsgQ0FURUdPUllfU1RSVUNUVVJFIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RzJ1xyXG5pbXBvcnQgeyBDYXRlZ29yeVN0cnVjdHVyZUFkYXB0ZXIgfSBmcm9tICcuLi9hZGFwdGVycydcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFByb2R1Y3RDYXRhbG9nRmFjYWRlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoJ1Byb2R1Y3RDYXRhbG9nUmVwb3NpdG9yeScpIHB1YmxpYyByZWFkb25seSBwcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnk6IFByb2R1Y3RDYXRhbG9nUmVwb3NpdG9yeSxcclxuICAgIEBJbmplY3QoQ0FURUdPUllfU1RSVUNUVVJFKSBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnlTdHJ1Y3R1cmVBZGFwdGVyOiBDYXRlZ29yeVN0cnVjdHVyZUFkYXB0ZXIsXHJcbiAgKSB7fVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,62 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { isEmpty, Where } from '@infrab4a/connect';
3
+ import { ProductCatalogFacade } from '../facades';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../facades";
6
+ export class BrandManagerHelper {
7
+ constructor(productCatalog) {
8
+ this.productCatalog = productCatalog;
9
+ this.brandsList = {};
10
+ }
11
+ async setBrandsList(options, brands) {
12
+ const filterBrands = options.filters?.brands;
13
+ const indexKey = this.buildIndexBrands(options);
14
+ if (isEmpty(brands) && options.filters) {
15
+ delete options.filters.brands;
16
+ }
17
+ this.brandsList[indexKey] = this.brandsList[indexKey] || brands || (await this.fetchBrandsOnly(options));
18
+ this.brandsList[indexKey] = this.brandsList[indexKey].filter(Boolean);
19
+ if (options.filters) {
20
+ options.filters = {
21
+ ...options.filters,
22
+ brands: filterBrands,
23
+ };
24
+ }
25
+ }
26
+ getBrandsList(indexKey) {
27
+ return this.brandsList[indexKey];
28
+ }
29
+ buildIndexBrands(options) {
30
+ if (options.category)
31
+ return `category-${options.category.id}`;
32
+ if (options.term)
33
+ return `term-${options.term}`;
34
+ if (options.profile)
35
+ return `profile-${options.profile.join(',')}`;
36
+ return '';
37
+ }
38
+ async fetchBrandsOnly(options) {
39
+ let filters = {};
40
+ if (options.category) {
41
+ filters = await this.productCatalog.categoryStructureAdapter.buildProductFilterByCategory(options.category);
42
+ }
43
+ return this.productCatalog.productCatalogRepository
44
+ .findCatalog({
45
+ fields: ['id'],
46
+ filters: {
47
+ ...filters,
48
+ published: { operator: Where.EQUALS, value: true },
49
+ },
50
+ options: {
51
+ distinct: ['brand'],
52
+ },
53
+ }, options.mainGender)
54
+ .then((result) => result.distinct.brand);
55
+ }
56
+ }
57
+ BrandManagerHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: BrandManagerHelper, deps: [{ token: i1.ProductCatalogFacade }], target: i0.ɵɵFactoryTarget.Injectable });
58
+ BrandManagerHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: BrandManagerHelper });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: BrandManagerHelper, decorators: [{
60
+ type: Injectable
61
+ }], ctorParameters: function () { return [{ type: i1.ProductCatalogFacade }]; } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhbmQtbWFuYWdlci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvaGVscGVycy9icmFuZC1tYW5hZ2VyLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFHbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFBOzs7QUFHakQsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixZQUE2QixjQUFvQztRQUFwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFGekQsZUFBVSxHQUE2QixFQUFFLENBQUE7SUFFbUIsQ0FBQztJQUVyRSxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQTRCLEVBQUUsTUFBZ0I7UUFDaEUsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUE7UUFDNUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRS9DLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDdEMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQTtTQUM5QjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxNQUFNLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtRQUN4RyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBRXJFLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNuQixPQUFPLENBQUMsT0FBTyxHQUFHO2dCQUNoQixHQUFHLE9BQU8sQ0FBQyxPQUFPO2dCQUNsQixNQUFNLEVBQUUsWUFBWTthQUNyQixDQUFBO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLFFBQWdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBNEI7UUFDM0MsSUFBSSxPQUFPLENBQUMsUUFBUTtZQUFFLE9BQU8sWUFBWSxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFBO1FBRTlELElBQUksT0FBTyxDQUFDLElBQUk7WUFBRSxPQUFPLFFBQVEsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBRS9DLElBQUksT0FBTyxDQUFDLE9BQU87WUFBRSxPQUFPLFdBQVcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQTtRQUVsRSxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFFTyxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQTRCO1FBQ3hELElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQTtRQUVoQixJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDcEIsT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7U0FDNUc7UUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCO2FBQ2hELFdBQVcsQ0FDVjtZQUNFLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztZQUNkLE9BQU8sRUFBRTtnQkFDUCxHQUFHLE9BQU87Z0JBQ1YsU0FBUyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTthQUNuRDtZQUNELE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDcEI7U0FDRixFQUNELE9BQU8sQ0FBQyxVQUFVLENBQ25CO2FBQ0EsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzVDLENBQUM7OytHQTVEVSxrQkFBa0I7bUhBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IGlzRW1wdHksIFdoZXJlIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcclxuaW1wb3J0IHsgUHJvZHVjdENhdGFsb2dGYWNhZGUgfSBmcm9tICcuLi9mYWNhZGVzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQnJhbmRNYW5hZ2VySGVscGVyIHtcclxuICBwcml2YXRlIGJyYW5kc0xpc3Q6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHt9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdENhdGFsb2c6IFByb2R1Y3RDYXRhbG9nRmFjYWRlKSB7fVxyXG5cclxuICBhc3luYyBzZXRCcmFuZHNMaXN0KG9wdGlvbnM6IENhdGFsb2dTZWFyY2hQYXJhbXMsIGJyYW5kczogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IGZpbHRlckJyYW5kcyA9IG9wdGlvbnMuZmlsdGVycz8uYnJhbmRzXHJcbiAgICBjb25zdCBpbmRleEtleSA9IHRoaXMuYnVpbGRJbmRleEJyYW5kcyhvcHRpb25zKVxyXG5cclxuICAgIGlmIChpc0VtcHR5KGJyYW5kcykgJiYgb3B0aW9ucy5maWx0ZXJzKSB7XHJcbiAgICAgIGRlbGV0ZSBvcHRpb25zLmZpbHRlcnMuYnJhbmRzXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5icmFuZHNMaXN0W2luZGV4S2V5XSA9IHRoaXMuYnJhbmRzTGlzdFtpbmRleEtleV0gfHwgYnJhbmRzIHx8IChhd2FpdCB0aGlzLmZldGNoQnJhbmRzT25seShvcHRpb25zKSlcclxuICAgIHRoaXMuYnJhbmRzTGlzdFtpbmRleEtleV0gPSB0aGlzLmJyYW5kc0xpc3RbaW5kZXhLZXldLmZpbHRlcihCb29sZWFuKVxyXG5cclxuICAgIGlmIChvcHRpb25zLmZpbHRlcnMpIHtcclxuICAgICAgb3B0aW9ucy5maWx0ZXJzID0ge1xyXG4gICAgICAgIC4uLm9wdGlvbnMuZmlsdGVycyxcclxuICAgICAgICBicmFuZHM6IGZpbHRlckJyYW5kcyxcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QnJhbmRzTGlzdChpbmRleEtleTogc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuYnJhbmRzTGlzdFtpbmRleEtleV1cclxuICB9XHJcblxyXG4gIGJ1aWxkSW5kZXhCcmFuZHMob3B0aW9uczogQ2F0YWxvZ1NlYXJjaFBhcmFtcyk6IHN0cmluZyB7XHJcbiAgICBpZiAob3B0aW9ucy5jYXRlZ29yeSkgcmV0dXJuIGBjYXRlZ29yeS0ke29wdGlvbnMuY2F0ZWdvcnkuaWR9YFxyXG5cclxuICAgIGlmIChvcHRpb25zLnRlcm0pIHJldHVybiBgdGVybS0ke29wdGlvbnMudGVybX1gXHJcblxyXG4gICAgaWYgKG9wdGlvbnMucHJvZmlsZSkgcmV0dXJuIGBwcm9maWxlLSR7b3B0aW9ucy5wcm9maWxlLmpvaW4oJywnKX1gXHJcblxyXG4gICAgcmV0dXJuICcnXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIGZldGNoQnJhbmRzT25seShvcHRpb25zOiBDYXRhbG9nU2VhcmNoUGFyYW1zKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xyXG4gICAgbGV0IGZpbHRlcnMgPSB7fVxyXG5cclxuICAgIGlmIChvcHRpb25zLmNhdGVnb3J5KSB7XHJcbiAgICAgIGZpbHRlcnMgPSBhd2FpdCB0aGlzLnByb2R1Y3RDYXRhbG9nLmNhdGVnb3J5U3RydWN0dXJlQWRhcHRlci5idWlsZFByb2R1Y3RGaWx0ZXJCeUNhdGVnb3J5KG9wdGlvbnMuY2F0ZWdvcnkpXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucHJvZHVjdENhdGFsb2cucHJvZHVjdENhdGFsb2dSZXBvc2l0b3J5XHJcbiAgICAgIC5maW5kQ2F0YWxvZyhcclxuICAgICAgICB7XHJcbiAgICAgICAgICBmaWVsZHM6IFsnaWQnXSxcclxuICAgICAgICAgIGZpbHRlcnM6IHtcclxuICAgICAgICAgICAgLi4uZmlsdGVycyxcclxuICAgICAgICAgICAgcHVibGlzaGVkOiB7IG9wZXJhdG9yOiBXaGVyZS5FUVVBTFMsIHZhbHVlOiB0cnVlIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgICBkaXN0aW5jdDogWydicmFuZCddLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG9wdGlvbnMubWFpbkdlbmRlcixcclxuICAgICAgKVxyXG4gICAgICAudGhlbigocmVzdWx0KSA9PiByZXN1bHQuZGlzdGluY3QuYnJhbmQpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,44 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { set, Where } from '@infrab4a/connect';
3
+ import * as i0 from "@angular/core";
4
+ export class CatalogFilterHelper {
5
+ buildFilterQuery(filters) {
6
+ const filterQuery = {};
7
+ if (filters.clubDiscount?.length) {
8
+ set(filterQuery, 'price.subscriberDiscountPercentage', {
9
+ operator: Where.IN,
10
+ value: filters.clubDiscount,
11
+ });
12
+ }
13
+ if (filters.brands?.length) {
14
+ filterQuery.brand = { operator: Where.IN, value: filters.brands };
15
+ }
16
+ if (filters.gender?.length) {
17
+ filterQuery.gender = { operator: Where.IN, value: filters.gender };
18
+ }
19
+ if (filters.prices?.min || filters.prices?.max) {
20
+ const priceField = filters.prices.subscriberPrice ? 'price.subscriberPrice' : 'price.price';
21
+ const priceFilters = [
22
+ ...(filters.prices.min ? [{ operator: Where.GTE, value: Math.floor(filters.prices.min) }] : []),
23
+ ...(filters.prices.max ? [{ operator: Where.LTE, value: Math.ceil(filters.prices.max) }] : []),
24
+ ];
25
+ set(filterQuery, priceField, priceFilters);
26
+ }
27
+ if (filters.rate) {
28
+ filterQuery.rate = { operator: Where.GTE, value: filters.rate };
29
+ }
30
+ if (filters.tags?.length) {
31
+ filterQuery.tagsProfile = { operator: Where.LIKE, value: filters.tags };
32
+ }
33
+ if (filters.customOptions?.length) {
34
+ filterQuery.filters = { operator: Where.LIKE, value: filters.customOptions };
35
+ }
36
+ return filterQuery;
37
+ }
38
+ }
39
+ CatalogFilterHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogFilterHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
40
+ CatalogFilterHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogFilterHelper });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogFilterHelper, decorators: [{
42
+ type: Injectable
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1maWx0ZXIuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL2hlbHBlcnMvY2F0YWxvZy1maWx0ZXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFtQyxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7O0FBSy9FLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsZ0JBQWdCLENBQUMsT0FBdUI7UUFDdEMsTUFBTSxXQUFXLEdBQUcsRUFBcUMsQ0FBQTtRQUV6RCxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFO1lBQ2hDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsb0NBQW9DLEVBQUU7Z0JBQ3JELFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRTtnQkFDbEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxZQUFZO2FBQzVCLENBQUMsQ0FBQTtTQUNIO1FBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRTtZQUMxQixXQUFXLENBQUMsS0FBSyxHQUFHLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQTtTQUNsRTtRQUVELElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUU7WUFDMUIsV0FBVyxDQUFDLE1BQU0sR0FBRyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUE7U0FDbkU7UUFFRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1lBQzlDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFBO1lBQzNGLE1BQU0sWUFBWSxHQUFHO2dCQUNuQixHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUMvRixHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQy9GLENBQUE7WUFFRCxHQUFHLENBQUMsV0FBVyxFQUFFLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQTtTQUMzQztRQUVELElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtZQUNoQixXQUFXLENBQUMsSUFBSSxHQUFHLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtTQUNoRTtRQUVELElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDeEIsV0FBVyxDQUFDLFdBQVcsR0FBRyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUE7U0FDeEU7UUFFRCxJQUFJLE9BQU8sQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFO1lBQ2pDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFBO1NBQzdFO1FBRUQsT0FBTyxXQUFXLENBQUE7SUFDcEIsQ0FBQzs7Z0hBMUNVLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgUHJvZHVjdCwgUmVwb3NpdG9yeUZpbmRGaWVsdGVycywgc2V0LCBXaGVyZSB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xyXG5cclxuaW1wb3J0IHsgQ2F0YWxvZ0ZpbHRlcnMgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0ZpbHRlckhlbHBlciB7XHJcbiAgYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzOiBDYXRhbG9nRmlsdGVycyk6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8UHJvZHVjdD4ge1xyXG4gICAgY29uc3QgZmlsdGVyUXVlcnkgPSB7fSBhcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPFByb2R1Y3Q+XHJcblxyXG4gICAgaWYgKGZpbHRlcnMuY2x1YkRpc2NvdW50Py5sZW5ndGgpIHtcclxuICAgICAgc2V0KGZpbHRlclF1ZXJ5LCAncHJpY2Uuc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZScsIHtcclxuICAgICAgICBvcGVyYXRvcjogV2hlcmUuSU4sXHJcbiAgICAgICAgdmFsdWU6IGZpbHRlcnMuY2x1YkRpc2NvdW50LFxyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWx0ZXJzLmJyYW5kcz8ubGVuZ3RoKSB7XHJcbiAgICAgIGZpbHRlclF1ZXJ5LmJyYW5kID0geyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBmaWx0ZXJzLmJyYW5kcyB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGZpbHRlcnMuZ2VuZGVyPy5sZW5ndGgpIHtcclxuICAgICAgZmlsdGVyUXVlcnkuZ2VuZGVyID0geyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBmaWx0ZXJzLmdlbmRlciB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGZpbHRlcnMucHJpY2VzPy5taW4gfHwgZmlsdGVycy5wcmljZXM/Lm1heCkge1xyXG4gICAgICBjb25zdCBwcmljZUZpZWxkID0gZmlsdGVycy5wcmljZXMuc3Vic2NyaWJlclByaWNlID8gJ3ByaWNlLnN1YnNjcmliZXJQcmljZScgOiAncHJpY2UucHJpY2UnXHJcbiAgICAgIGNvbnN0IHByaWNlRmlsdGVycyA9IFtcclxuICAgICAgICAuLi4oZmlsdGVycy5wcmljZXMubWluID8gW3sgb3BlcmF0b3I6IFdoZXJlLkdURSwgdmFsdWU6IE1hdGguZmxvb3IoZmlsdGVycy5wcmljZXMubWluKSB9XSA6IFtdKSxcclxuICAgICAgICAuLi4oZmlsdGVycy5wcmljZXMubWF4ID8gW3sgb3BlcmF0b3I6IFdoZXJlLkxURSwgdmFsdWU6IE1hdGguY2VpbChmaWx0ZXJzLnByaWNlcy5tYXgpIH1dIDogW10pLFxyXG4gICAgICBdXHJcblxyXG4gICAgICBzZXQoZmlsdGVyUXVlcnksIHByaWNlRmllbGQsIHByaWNlRmlsdGVycylcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZmlsdGVycy5yYXRlKSB7XHJcbiAgICAgIGZpbHRlclF1ZXJ5LnJhdGUgPSB7IG9wZXJhdG9yOiBXaGVyZS5HVEUsIHZhbHVlOiBmaWx0ZXJzLnJhdGUgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWx0ZXJzLnRhZ3M/Lmxlbmd0aCkge1xyXG4gICAgICBmaWx0ZXJRdWVyeS50YWdzUHJvZmlsZSA9IHsgb3BlcmF0b3I6IFdoZXJlLkxJS0UsIHZhbHVlOiBmaWx0ZXJzLnRhZ3MgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWx0ZXJzLmN1c3RvbU9wdGlvbnM/Lmxlbmd0aCkge1xyXG4gICAgICBmaWx0ZXJRdWVyeS5maWx0ZXJzID0geyBvcGVyYXRvcjogV2hlcmUuTElLRSwgdmFsdWU6IGZpbHRlcnMuY3VzdG9tT3B0aW9ucyB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZpbHRlclF1ZXJ5XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,52 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class CatalogSortHelper {
4
+ buildSortQuery(sort) {
5
+ if (!sort || sort === 'most-relevant')
6
+ return {};
7
+ switch (sort) {
8
+ case 'best-sellers':
9
+ return {
10
+ shoppingCount: 'desc',
11
+ rate: 'desc',
12
+ stock: 'desc',
13
+ name: 'asc',
14
+ };
15
+ case 'biggest-price':
16
+ return {
17
+ subscriberPrice: 'desc',
18
+ rate: 'desc',
19
+ shoppingCount: 'desc',
20
+ };
21
+ case 'lowest-price':
22
+ return {
23
+ subscriberPrice: 'asc',
24
+ rate: 'desc',
25
+ shoppingCount: 'desc',
26
+ };
27
+ case 'best-rating':
28
+ return {
29
+ rate: 'desc',
30
+ shoppingCount: 'desc',
31
+ stock: 'desc',
32
+ name: 'asc',
33
+ };
34
+ case 'news':
35
+ return { createdAt: 'desc' };
36
+ case 'biggest-discount':
37
+ return {
38
+ subscriberDiscountPercentage: 'desc',
39
+ rate: 'desc',
40
+ shoppingCount: 'desc',
41
+ };
42
+ default:
43
+ return {};
44
+ }
45
+ }
46
+ }
47
+ CatalogSortHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogSortHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
48
+ CatalogSortHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogSortHelper });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogSortHelper, decorators: [{
50
+ type: Injectable
51
+ }] });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1zb3J0LmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy9oZWxwZXJzL2NhdGFsb2ctc29ydC5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFJMUMsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixjQUFjLENBQUMsSUFBWTtRQUN6QixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksS0FBSyxlQUFlO1lBQUUsT0FBTyxFQUFFLENBQUE7UUFFaEQsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLGNBQWM7Z0JBQ2pCLE9BQU87b0JBQ0wsYUFBYSxFQUFFLE1BQU07b0JBQ3JCLElBQUksRUFBRSxNQUFNO29CQUNaLEtBQUssRUFBRSxNQUFNO29CQUNiLElBQUksRUFBRSxLQUFLO2lCQUNaLENBQUE7WUFFSCxLQUFLLGVBQWU7Z0JBQ2xCLE9BQU87b0JBQ0wsZUFBZSxFQUFFLE1BQU07b0JBQ3ZCLElBQUksRUFBRSxNQUFNO29CQUNaLGFBQWEsRUFBRSxNQUFNO2lCQUNmLENBQUE7WUFFVixLQUFLLGNBQWM7Z0JBQ2pCLE9BQU87b0JBQ0wsZUFBZSxFQUFFLEtBQUs7b0JBQ3RCLElBQUksRUFBRSxNQUFNO29CQUNaLGFBQWEsRUFBRSxNQUFNO2lCQUNmLENBQUE7WUFFVixLQUFLLGFBQWE7Z0JBQ2hCLE9BQU87b0JBQ0wsSUFBSSxFQUFFLE1BQU07b0JBQ1osYUFBYSxFQUFFLE1BQU07b0JBQ3JCLEtBQUssRUFBRSxNQUFNO29CQUNiLElBQUksRUFBRSxLQUFLO2lCQUNaLENBQUE7WUFFSCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQTtZQUU5QixLQUFLLGtCQUFrQjtnQkFDckIsT0FBTztvQkFDTCw0QkFBNEIsRUFBRSxNQUFNO29CQUNwQyxJQUFJLEVBQUUsTUFBTTtvQkFDWixhQUFhLEVBQUUsTUFBTTtpQkFDZixDQUFBO1lBRVY7Z0JBQ0UsT0FBTyxFQUFFLENBQUE7U0FDWjtJQUNILENBQUM7OzhHQWhEVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IFByb2R1Y3QsIFJlcG9zaXRvcnlPcmRlckJ5IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDYXRhbG9nU29ydEhlbHBlciB7XHJcbiAgYnVpbGRTb3J0UXVlcnkoc29ydDogc3RyaW5nKTogUmVwb3NpdG9yeU9yZGVyQnk8UHJvZHVjdD4ge1xyXG4gICAgaWYgKCFzb3J0IHx8IHNvcnQgPT09ICdtb3N0LXJlbGV2YW50JykgcmV0dXJuIHt9XHJcblxyXG4gICAgc3dpdGNoIChzb3J0KSB7XHJcbiAgICAgIGNhc2UgJ2Jlc3Qtc2VsbGVycyc6XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHNob3BwaW5nQ291bnQ6ICdkZXNjJyxcclxuICAgICAgICAgIHJhdGU6ICdkZXNjJyxcclxuICAgICAgICAgIHN0b2NrOiAnZGVzYycsXHJcbiAgICAgICAgICBuYW1lOiAnYXNjJyxcclxuICAgICAgICB9XHJcblxyXG4gICAgICBjYXNlICdiaWdnZXN0LXByaWNlJzpcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgc3Vic2NyaWJlclByaWNlOiAnZGVzYycsXHJcbiAgICAgICAgICByYXRlOiAnZGVzYycsXHJcbiAgICAgICAgICBzaG9wcGluZ0NvdW50OiAnZGVzYycsXHJcbiAgICAgICAgfSBhcyBhbnlcclxuXHJcbiAgICAgIGNhc2UgJ2xvd2VzdC1wcmljZSc6XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHN1YnNjcmliZXJQcmljZTogJ2FzYycsXHJcbiAgICAgICAgICByYXRlOiAnZGVzYycsXHJcbiAgICAgICAgICBzaG9wcGluZ0NvdW50OiAnZGVzYycsXHJcbiAgICAgICAgfSBhcyBhbnlcclxuXHJcbiAgICAgIGNhc2UgJ2Jlc3QtcmF0aW5nJzpcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgcmF0ZTogJ2Rlc2MnLFxyXG4gICAgICAgICAgc2hvcHBpbmdDb3VudDogJ2Rlc2MnLFxyXG4gICAgICAgICAgc3RvY2s6ICdkZXNjJyxcclxuICAgICAgICAgIG5hbWU6ICdhc2MnLFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIGNhc2UgJ25ld3MnOlxyXG4gICAgICAgIHJldHVybiB7IGNyZWF0ZWRBdDogJ2Rlc2MnIH1cclxuXHJcbiAgICAgIGNhc2UgJ2JpZ2dlc3QtZGlzY291bnQnOlxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBzdWJzY3JpYmVyRGlzY291bnRQZXJjZW50YWdlOiAnZGVzYycsXHJcbiAgICAgICAgICByYXRlOiAnZGVzYycsXHJcbiAgICAgICAgICBzaG9wcGluZ0NvdW50OiAnZGVzYycsXHJcbiAgICAgICAgfSBhcyBhbnlcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIHt9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './brand-manager.helper';
2
+ export * from './catalog-filter.helper';
3
+ export * from './catalog-sort.helper';
4
+ export * from './product-fields.helper';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFBO0FBQ3RDLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLHlCQUF5QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9icmFuZC1tYW5hZ2VyLmhlbHBlcidcclxuZXhwb3J0ICogZnJvbSAnLi9jYXRhbG9nLWZpbHRlci5oZWxwZXInXHJcbmV4cG9ydCAqIGZyb20gJy4vY2F0YWxvZy1zb3J0LmhlbHBlcidcclxuZXhwb3J0ICogZnJvbSAnLi9wcm9kdWN0LWZpZWxkcy5oZWxwZXInXHJcbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ProductFieldsHelper {
4
+ getStandardFields() {
5
+ return [
6
+ 'id',
7
+ 'name',
8
+ 'slug',
9
+ 'images',
10
+ 'imagesCard',
11
+ 'miniatures',
12
+ 'price',
13
+ 'stock',
14
+ 'published',
15
+ 'CEST',
16
+ 'EAN',
17
+ 'NCM',
18
+ 'brand',
19
+ 'costPrice',
20
+ 'hasVariants',
21
+ 'isKit',
22
+ 'sku',
23
+ 'rate',
24
+ 'tagsProfile',
25
+ 'tagsCollection',
26
+ 'type',
27
+ 'shoppingCount',
28
+ 'gender',
29
+ 'createdAt',
30
+ 'label',
31
+ 'outlet',
32
+ 'group',
33
+ 'variantSlug',
34
+ 'filters',
35
+ ];
36
+ }
37
+ }
38
+ ProductFieldsHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductFieldsHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
39
+ ProductFieldsHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductFieldsHelper });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductFieldsHelper, decorators: [{
41
+ type: Injectable
42
+ }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maWVsZHMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL2hlbHBlcnMvcHJvZHVjdC1maWVsZHMuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7O0FBSTFDLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsaUJBQWlCO1FBQ2YsT0FBTztZQUNMLElBQUk7WUFDSixNQUFNO1lBQ04sTUFBTTtZQUNOLFFBQVE7WUFDUixZQUFZO1lBQ1osWUFBWTtZQUNaLE9BQU87WUFDUCxPQUFPO1lBQ1AsV0FBVztZQUNYLE1BQU07WUFDTixLQUFLO1lBQ0wsS0FBSztZQUNMLE9BQU87WUFDUCxXQUFXO1lBQ1gsYUFBYTtZQUNiLE9BQU87WUFDUCxLQUFLO1lBQ0wsTUFBTTtZQUNOLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsTUFBTTtZQUNOLGVBQWU7WUFDZixRQUFRO1lBQ1IsV0FBVztZQUNYLE9BQU87WUFDUCxRQUFRO1lBQ1IsT0FBTztZQUNQLGFBQWE7WUFDYixTQUFTO1NBQ1YsQ0FBQTtJQUNILENBQUM7O2dIQWpDVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lcywgUHJvZHVjdCB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZpZWxkc0hlbHBlciB7XHJcbiAgZ2V0U3RhbmRhcmRGaWVsZHMoKTogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFByb2R1Y3Q+W10ge1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgJ2lkJyxcclxuICAgICAgJ25hbWUnLFxyXG4gICAgICAnc2x1ZycsXHJcbiAgICAgICdpbWFnZXMnLFxyXG4gICAgICAnaW1hZ2VzQ2FyZCcsXHJcbiAgICAgICdtaW5pYXR1cmVzJyxcclxuICAgICAgJ3ByaWNlJyxcclxuICAgICAgJ3N0b2NrJyxcclxuICAgICAgJ3B1Ymxpc2hlZCcsXHJcbiAgICAgICdDRVNUJyxcclxuICAgICAgJ0VBTicsXHJcbiAgICAgICdOQ00nLFxyXG4gICAgICAnYnJhbmQnLFxyXG4gICAgICAnY29zdFByaWNlJyxcclxuICAgICAgJ2hhc1ZhcmlhbnRzJyxcclxuICAgICAgJ2lzS2l0JyxcclxuICAgICAgJ3NrdScsXHJcbiAgICAgICdyYXRlJyxcclxuICAgICAgJ3RhZ3NQcm9maWxlJyxcclxuICAgICAgJ3RhZ3NDb2xsZWN0aW9uJyxcclxuICAgICAgJ3R5cGUnLFxyXG4gICAgICAnc2hvcHBpbmdDb3VudCcsXHJcbiAgICAgICdnZW5kZXInLFxyXG4gICAgICAnY3JlYXRlZEF0JyxcclxuICAgICAgJ2xhYmVsJyxcclxuICAgICAgJ291dGxldCcsXHJcbiAgICAgICdncm91cCcsXHJcbiAgICAgICd2YXJpYW50U2x1ZycsXHJcbiAgICAgICdmaWx0ZXJzJyxcclxuICAgIF1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,8 @@
1
+ export * from './adapters';
2
+ export * from './catalog.service';
3
+ export * from './category.service';
4
+ export * from './enums';
5
+ export * from './models';
6
+ export * from './types';
7
+ export * from './wishlist.service';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUE7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsVUFBVSxDQUFBO0FBQ3hCLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsb0JBQW9CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2NhdGFsb2cuc2VydmljZSdcclxuZXhwb3J0ICogZnJvbSAnLi9jYXRlZ29yeS5zZXJ2aWNlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zJ1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcclxuZXhwb3J0ICogZnJvbSAnLi93aXNobGlzdC5zZXJ2aWNlJ1xyXG4iXX0=
@@ -0,0 +1,10 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Type } from 'class-transformer';
3
+ import { Category } from '@infrab4a/connect';
4
+ export class CategoryWithTree extends Category {
5
+ }
6
+ __decorate([
7
+ Type(() => CategoryWithTree),
8
+ __metadata("design:type", Array)
9
+ ], CategoryWithTree.prototype, "children", void 0);
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktd2l0aC10cmVlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL21vZGVscy9jYXRlZ29yeS13aXRoLXRyZWUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFNUMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFFBQVE7Q0FHN0M7QUFGQztJQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzs7a0RBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInXHJcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlXaXRoVHJlZSBleHRlbmRzIENhdGVnb3J5IHtcclxuICBAVHlwZSgoKSA9PiBDYXRlZ29yeVdpdGhUcmVlKVxyXG4gIGNoaWxkcmVuPzogQ2F0ZWdvcnlXaXRoVHJlZVtdXHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './category-with-tree.model';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhdGVnb3J5LXdpdGgtdHJlZS5tb2RlbCdcclxuIl19
@@ -0,0 +1,33 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { CatalogOperationsFacade } from './catalog-operations.facade';
3
+ import { ProductManagementFacade } from './product-management.facade';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./catalog-operations.facade";
6
+ import * as i2 from "./product-management.facade";
7
+ export class CatalogHelpersService {
8
+ constructor(catalogOperations, productManagement) {
9
+ this.catalogOperations = catalogOperations;
10
+ this.productManagement = productManagement;
11
+ }
12
+ getFilterHelper() {
13
+ return this.catalogOperations.getFilterHelper();
14
+ }
15
+ getSortHelper() {
16
+ return this.catalogOperations.getSortHelper();
17
+ }
18
+ getFieldsHelper() {
19
+ return this.catalogOperations.getFieldsHelper();
20
+ }
21
+ getBrandManager() {
22
+ return this.productManagement.getBrandManager();
23
+ }
24
+ getProductServices() {
25
+ return this.productManagement.getProductServices();
26
+ }
27
+ }
28
+ CatalogHelpersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogHelpersService, deps: [{ token: i1.CatalogOperationsFacade }, { token: i2.ProductManagementFacade }], target: i0.ɵɵFactoryTarget.Injectable });
29
+ CatalogHelpersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogHelpersService });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogHelpersService, decorators: [{
31
+ type: Injectable
32
+ }], ctorParameters: function () { return [{ type: i1.CatalogOperationsFacade }, { type: i2.ProductManagementFacade }]; } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1oZWxwZXJzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc2VydmljZXMvY2F0YWxvZy1oZWxwZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUsxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTs7OztBQUdyRSxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFlBQ21CLGlCQUEwQyxFQUMxQyxpQkFBMEM7UUFEMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUF5QjtRQUMxQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXlCO0lBQzFELENBQUM7SUFFSixlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDakQsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMvQyxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ2pELENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDakQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO0lBQ3BELENBQUM7O2tIQXhCVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcblxyXG5pbXBvcnQgeyBQcm9kdWN0U2VydmljZXNGYWNhZGUgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xyXG5pbXBvcnQgeyBCcmFuZE1hbmFnZXJIZWxwZXIsIENhdGFsb2dGaWx0ZXJIZWxwZXIsIENhdGFsb2dTb3J0SGVscGVyLCBQcm9kdWN0RmllbGRzSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycydcclxuXHJcbmltcG9ydCB7IENhdGFsb2dPcGVyYXRpb25zRmFjYWRlIH0gZnJvbSAnLi9jYXRhbG9nLW9wZXJhdGlvbnMuZmFjYWRlJ1xyXG5pbXBvcnQgeyBQcm9kdWN0TWFuYWdlbWVudEZhY2FkZSB9IGZyb20gJy4vcHJvZHVjdC1tYW5hZ2VtZW50LmZhY2FkZSdcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENhdGFsb2dIZWxwZXJzU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhdGFsb2dPcGVyYXRpb25zOiBDYXRhbG9nT3BlcmF0aW9uc0ZhY2FkZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdE1hbmFnZW1lbnQ6IFByb2R1Y3RNYW5hZ2VtZW50RmFjYWRlLFxyXG4gICkge31cclxuXHJcbiAgZ2V0RmlsdGVySGVscGVyKCk6IENhdGFsb2dGaWx0ZXJIZWxwZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0YWxvZ09wZXJhdGlvbnMuZ2V0RmlsdGVySGVscGVyKClcclxuICB9XHJcblxyXG4gIGdldFNvcnRIZWxwZXIoKTogQ2F0YWxvZ1NvcnRIZWxwZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0YWxvZ09wZXJhdGlvbnMuZ2V0U29ydEhlbHBlcigpXHJcbiAgfVxyXG5cclxuICBnZXRGaWVsZHNIZWxwZXIoKTogUHJvZHVjdEZpZWxkc0hlbHBlciB7XHJcbiAgICByZXR1cm4gdGhpcy5jYXRhbG9nT3BlcmF0aW9ucy5nZXRGaWVsZHNIZWxwZXIoKVxyXG4gIH1cclxuXHJcbiAgZ2V0QnJhbmRNYW5hZ2VyKCk6IEJyYW5kTWFuYWdlckhlbHBlciB7XHJcbiAgICByZXR1cm4gdGhpcy5wcm9kdWN0TWFuYWdlbWVudC5nZXRCcmFuZE1hbmFnZXIoKVxyXG4gIH1cclxuXHJcbiAgZ2V0UHJvZHVjdFNlcnZpY2VzKCk6IFByb2R1Y3RTZXJ2aWNlc0ZhY2FkZSB7XHJcbiAgICByZXR1cm4gdGhpcy5wcm9kdWN0TWFuYWdlbWVudC5nZXRQcm9kdWN0U2VydmljZXMoKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { CatalogFilterHelper, CatalogSortHelper, ProductFieldsHelper } from '../helpers';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../helpers";
5
+ export class CatalogOperationsFacade {
6
+ constructor(filterHelper, sortHelper, fieldsHelper) {
7
+ this.filterHelper = filterHelper;
8
+ this.sortHelper = sortHelper;
9
+ this.fieldsHelper = fieldsHelper;
10
+ }
11
+ getFilterHelper() {
12
+ return this.filterHelper;
13
+ }
14
+ getSortHelper() {
15
+ return this.sortHelper;
16
+ }
17
+ getFieldsHelper() {
18
+ return this.fieldsHelper;
19
+ }
20
+ }
21
+ CatalogOperationsFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogOperationsFacade, deps: [{ token: i1.CatalogFilterHelper }, { token: i1.CatalogSortHelper }, { token: i1.ProductFieldsHelper }], target: i0.ɵɵFactoryTarget.Injectable });
22
+ CatalogOperationsFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogOperationsFacade });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogOperationsFacade, decorators: [{
24
+ type: Injectable
25
+ }], ctorParameters: function () { return [{ type: i1.CatalogFilterHelper }, { type: i1.CatalogSortHelper }, { type: i1.ProductFieldsHelper }]; } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1vcGVyYXRpb25zLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy9zZXJ2aWNlcy9jYXRhbG9nLW9wZXJhdGlvbnMuZmFjYWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFBOzs7QUFHeEYsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxZQUNtQixZQUFpQyxFQUNqQyxVQUE2QixFQUM3QixZQUFpQztRQUZqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFDN0IsaUJBQVksR0FBWixZQUFZLENBQXFCO0lBQ2pELENBQUM7SUFFSixlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFBO0lBQzFCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBO0lBQ3hCLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFBO0lBQzFCLENBQUM7O29IQWpCVSx1QkFBdUI7d0hBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nRmlsdGVySGVscGVyLCBDYXRhbG9nU29ydEhlbHBlciwgUHJvZHVjdEZpZWxkc0hlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMnXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDYXRhbG9nT3BlcmF0aW9uc0ZhY2FkZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbHRlckhlbHBlcjogQ2F0YWxvZ0ZpbHRlckhlbHBlcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgc29ydEhlbHBlcjogQ2F0YWxvZ1NvcnRIZWxwZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpZWxkc0hlbHBlcjogUHJvZHVjdEZpZWxkc0hlbHBlcixcclxuICApIHt9XHJcblxyXG4gIGdldEZpbHRlckhlbHBlcigpOiBDYXRhbG9nRmlsdGVySGVscGVyIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlckhlbHBlclxyXG4gIH1cclxuXHJcbiAgZ2V0U29ydEhlbHBlcigpOiBDYXRhbG9nU29ydEhlbHBlciB7XHJcbiAgICByZXR1cm4gdGhpcy5zb3J0SGVscGVyXHJcbiAgfVxyXG5cclxuICBnZXRGaWVsZHNIZWxwZXIoKTogUHJvZHVjdEZpZWxkc0hlbHBlciB7XHJcbiAgICByZXR1cm4gdGhpcy5maWVsZHNIZWxwZXJcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,25 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { ProductCatalogFacade } from '../facades';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../facades";
5
+ export class CatalogRepositoryService {
6
+ constructor(productCatalog, productServices) {
7
+ this.productCatalog = productCatalog;
8
+ this.productServices = productServices;
9
+ }
10
+ getProductCatalog() {
11
+ return this.productCatalog;
12
+ }
13
+ getProductServices() {
14
+ return this.productServices;
15
+ }
16
+ }
17
+ CatalogRepositoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogRepositoryService, deps: [{ token: i1.ProductCatalogFacade }, { token: 'ProductServicesFacade' }], target: i0.ɵɵFactoryTarget.Injectable });
18
+ CatalogRepositoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogRepositoryService });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CatalogRepositoryService, decorators: [{
20
+ type: Injectable
21
+ }], ctorParameters: function () { return [{ type: i1.ProductCatalogFacade }, { type: undefined, decorators: [{
22
+ type: Inject,
23
+ args: ['ProductServicesFacade']
24
+ }] }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1yZXBvc2l0b3J5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc2VydmljZXMvY2F0YWxvZy1yZXBvc2l0b3J5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFBOzs7QUFHakQsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQyxZQUNtQixjQUFvQyxFQUNILGVBQXNDO1FBRHZFLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQUNILG9CQUFlLEdBQWYsZUFBZSxDQUF1QjtJQUN2RixDQUFDO0lBRUosaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFBO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFBO0lBQzdCLENBQUM7O3FIQVpVLHdCQUF3QixzREFHekIsdUJBQXVCO3lIQUh0Qix3QkFBd0I7MkZBQXhCLHdCQUF3QjtrQkFEcEMsVUFBVTs7MEJBSU4sTUFBTTsyQkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuaW1wb3J0IHsgUHJvZHVjdFNlcnZpY2VzRmFjYWRlIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcclxuaW1wb3J0IHsgUHJvZHVjdENhdGFsb2dGYWNhZGUgfSBmcm9tICcuLi9mYWNhZGVzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ1JlcG9zaXRvcnlTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdENhdGFsb2c6IFByb2R1Y3RDYXRhbG9nRmFjYWRlLFxyXG4gICAgQEluamVjdCgnUHJvZHVjdFNlcnZpY2VzRmFjYWRlJykgcHJpdmF0ZSByZWFkb25seSBwcm9kdWN0U2VydmljZXM6IFByb2R1Y3RTZXJ2aWNlc0ZhY2FkZSxcclxuICApIHt9XHJcblxyXG4gIGdldFByb2R1Y3RDYXRhbG9nKCk6IFByb2R1Y3RDYXRhbG9nRmFjYWRlIHtcclxuICAgIHJldHVybiB0aGlzLnByb2R1Y3RDYXRhbG9nXHJcbiAgfVxyXG5cclxuICBnZXRQcm9kdWN0U2VydmljZXMoKTogUHJvZHVjdFNlcnZpY2VzRmFjYWRlIHtcclxuICAgIHJldHVybiB0aGlzLnByb2R1Y3RTZXJ2aWNlc1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export { CatalogHelpersService } from './catalog-helpers.service';
2
+ export { CatalogOperationsFacade } from './catalog-operations.facade';
3
+ export * from './catalog-repository.service';
4
+ export { ProductManagementFacade } from './product-management.facade';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDckUsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENhdGFsb2dIZWxwZXJzU2VydmljZSB9IGZyb20gJy4vY2F0YWxvZy1oZWxwZXJzLnNlcnZpY2UnXHJcbmV4cG9ydCB7IENhdGFsb2dPcGVyYXRpb25zRmFjYWRlIH0gZnJvbSAnLi9jYXRhbG9nLW9wZXJhdGlvbnMuZmFjYWRlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2NhdGFsb2ctcmVwb3NpdG9yeS5zZXJ2aWNlJ1xyXG5leHBvcnQgeyBQcm9kdWN0TWFuYWdlbWVudEZhY2FkZSB9IGZyb20gJy4vcHJvZHVjdC1tYW5hZ2VtZW50LmZhY2FkZSdcclxuIl19
@@ -0,0 +1,25 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { BrandManagerHelper } from '../helpers';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../helpers";
5
+ export class ProductManagementFacade {
6
+ constructor(brandManager, productServices) {
7
+ this.brandManager = brandManager;
8
+ this.productServices = productServices;
9
+ }
10
+ getBrandManager() {
11
+ return this.brandManager;
12
+ }
13
+ getProductServices() {
14
+ return this.productServices;
15
+ }
16
+ }
17
+ ProductManagementFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductManagementFacade, deps: [{ token: i1.BrandManagerHelper }, { token: 'ProductServicesFacade' }], target: i0.ɵɵFactoryTarget.Injectable });
18
+ ProductManagementFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductManagementFacade });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProductManagementFacade, decorators: [{
20
+ type: Injectable
21
+ }], ctorParameters: function () { return [{ type: i1.BrandManagerHelper }, { type: undefined, decorators: [{
22
+ type: Inject,
23
+ args: ['ProductServicesFacade']
24
+ }] }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1tYW5hZ2VtZW50LmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy9zZXJ2aWNlcy9wcm9kdWN0LW1hbmFnZW1lbnQuZmFjYWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBR2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQTs7O0FBRy9DLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsWUFDbUIsWUFBZ0MsRUFDQyxlQUFzQztRQUR2RSxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFDQyxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7SUFDdkYsQ0FBQztJQUVKLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUE7SUFDMUIsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUE7SUFDN0IsQ0FBQzs7b0hBWlUsdUJBQXVCLG9EQUd4Qix1QkFBdUI7d0hBSHRCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOzswQkFJTixNQUFNOzJCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcblxyXG5pbXBvcnQgeyBQcm9kdWN0U2VydmljZXNGYWNhZGUgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xyXG5pbXBvcnQgeyBCcmFuZE1hbmFnZXJIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdE1hbmFnZW1lbnRGYWNhZGUge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBicmFuZE1hbmFnZXI6IEJyYW5kTWFuYWdlckhlbHBlcixcclxuICAgIEBJbmplY3QoJ1Byb2R1Y3RTZXJ2aWNlc0ZhY2FkZScpIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdFNlcnZpY2VzOiBQcm9kdWN0U2VydmljZXNGYWNhZGUsXHJcbiAgKSB7fVxyXG5cclxuICBnZXRCcmFuZE1hbmFnZXIoKTogQnJhbmRNYW5hZ2VySGVscGVyIHtcclxuICAgIHJldHVybiB0aGlzLmJyYW5kTWFuYWdlclxyXG4gIH1cclxuXHJcbiAgZ2V0UHJvZHVjdFNlcnZpY2VzKCk6IFByb2R1Y3RTZXJ2aWNlc0ZhY2FkZSB7XHJcbiAgICByZXR1cm4gdGhpcy5wcm9kdWN0U2VydmljZXNcclxuICB9XHJcbn1cclxuIl19