@infrab4a/connect-angular 5.5.0-alpha.3 → 5.5.0-beta.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 (227) hide show
  1. package/angular-connect.module.d.ts +36 -33
  2. package/angular-elastic-search.module.d.ts +9 -9
  3. package/angular-firebase-auth.module.d.ts +11 -10
  4. package/angular-firestore.module.d.ts +17 -16
  5. package/angular-hasura-graphql.module.d.ts +14 -14
  6. package/angular-vertex-search.module.d.ts +9 -9
  7. package/consts/backend-url.const.d.ts +1 -1
  8. package/consts/category-structure.d.ts +1 -1
  9. package/consts/default-shop.const.d.ts +1 -1
  10. package/consts/es-config.const.d.ts +1 -1
  11. package/consts/firebase-const.d.ts +4 -4
  12. package/consts/hasura-options.const.d.ts +1 -1
  13. package/consts/index.d.ts +8 -8
  14. package/consts/persistence.const.d.ts +1 -1
  15. package/consts/storage-base-url.const.d.ts +1 -1
  16. package/consts/vertex-config.const.d.ts +1 -1
  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 +541 -0
  21. package/esm2020/angular-hasura-graphql.module.mjs +355 -0
  22. package/esm2020/angular-vertex-search.module.mjs +34 -0
  23. package/{esm2022 → esm2020}/consts/backend-url.const.mjs +2 -2
  24. package/{esm2022 → esm2020}/consts/category-structure.mjs +2 -2
  25. package/{esm2022 → esm2020}/consts/default-shop.const.mjs +2 -2
  26. package/{esm2022 → esm2020}/consts/es-config.const.mjs +2 -2
  27. package/{esm2022 → esm2020}/consts/firebase-const.mjs +5 -5
  28. package/{esm2022 → esm2020}/consts/hasura-options.const.mjs +2 -2
  29. package/{esm2022 → esm2020}/consts/index.mjs +9 -9
  30. package/{esm2022 → esm2020}/consts/persistence.const.mjs +2 -2
  31. package/{esm2022 → esm2020}/consts/storage-base-url.const.mjs +2 -2
  32. package/{esm2022 → esm2020}/consts/vertex-config.const.mjs +2 -2
  33. package/{esm2022 → esm2020}/helpers/index.mjs +2 -2
  34. package/{esm2022 → esm2020}/helpers/mobile-operation-system-checker.helper.mjs +7 -7
  35. package/{esm2022 → esm2020}/index.mjs +7 -7
  36. package/{esm2022 → esm2020}/infrab4a-connect-angular.mjs +4 -4
  37. package/esm2020/interfaces/catalog-strategies.interface.mjs +2 -0
  38. package/{esm2022 → esm2020}/interfaces/category-facades.interface.mjs +2 -2
  39. package/{esm2022 → esm2020}/interfaces/index.mjs +3 -3
  40. package/{esm2022 → esm2020}/persistence/cookie-data-persistence.mjs +22 -22
  41. package/{esm2022 → esm2020}/persistence/data-persistence.mjs +2 -2
  42. package/{esm2022 → esm2020}/persistence/index.mjs +3 -3
  43. package/{esm2022 → esm2020}/services/auth.service.mjs +37 -37
  44. package/{esm2022 → esm2020}/services/cart/cart-services.facade.mjs +21 -21
  45. package/{esm2022 → esm2020}/services/cart/index.mjs +2 -2
  46. package/{esm2022 → esm2020}/services/cart.service.mjs +73 -73
  47. package/{esm2022 → esm2020}/services/catalog/adapters/category-structure.adapter.mjs +2 -2
  48. package/{esm2022 → esm2020}/services/catalog/adapters/index.mjs +4 -4
  49. package/{esm2022 → esm2020}/services/catalog/adapters/new-category-structure.adapter.mjs +43 -43
  50. package/{esm2022 → esm2020}/services/catalog/adapters/old-category-structure.adapter.mjs +23 -23
  51. package/esm2020/services/catalog/catalog.service.mjs +111 -0
  52. package/{esm2022 → esm2020}/services/catalog/category.service.mjs +42 -42
  53. package/esm2020/services/catalog/context/catalog-search.context.mjs +40 -0
  54. package/{esm2022 → esm2020}/services/catalog/enums/index.mjs +2 -2
  55. package/{esm2022 → esm2020}/services/catalog/enums/product-sorts.enum.mjs +11 -11
  56. package/{esm2022 → esm2020}/services/catalog/facades/catalog-service.facade.mjs +32 -32
  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/{esm2022 → esm2020}/services/catalog/facades/category-service.facade.mjs +30 -30
  60. package/{esm2022 → esm2020}/services/catalog/facades/index.mjs +6 -6
  61. package/esm2020/services/catalog/facades/product-catalog.facade.mjs +21 -0
  62. package/esm2020/services/catalog/helpers/brand-manager.helper.mjs +57 -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/{esm2022 → esm2020}/services/catalog/helpers/index.mjs +5 -5
  66. package/{esm2022 → esm2020}/services/catalog/helpers/product-fields.helper.mjs +40 -40
  67. package/{esm2022 → esm2020}/services/catalog/index.mjs +8 -8
  68. package/{esm2022 → esm2020}/services/catalog/models/category-with-tree.model.mjs +10 -10
  69. package/{esm2022 → esm2020}/services/catalog/models/index.mjs +2 -2
  70. package/esm2020/services/catalog/services/catalog-helpers.service.mjs +33 -0
  71. package/{esm2022 → esm2020}/services/catalog/services/catalog-operations.facade.mjs +26 -26
  72. package/esm2020/services/catalog/services/catalog-repository.service.mjs +25 -0
  73. package/{esm2022 → esm2020}/services/catalog/services/index.mjs +5 -5
  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/{esm2022 → esm2020}/services/catalog/strategies/index.mjs +4 -4
  77. package/esm2020/services/catalog/strategies/profile-search.strategy.mjs +42 -0
  78. package/esm2020/services/catalog/strategies/term-search.strategy.mjs +123 -0
  79. package/esm2020/services/catalog/strategies/types/strategy-params.type.mjs +2 -0
  80. package/{esm2022 → esm2020}/services/catalog/types/fetch-products-options.type.mjs +2 -2
  81. package/esm2020/services/catalog/types/fetch-products-params.type.mjs +2 -0
  82. package/{esm2022 → esm2020}/services/catalog/types/fetch-products-response.type.mjs +2 -2
  83. package/{esm2022 → esm2020}/services/catalog/types/index.mjs +6 -6
  84. package/esm2020/services/catalog/types/method-params.type.mjs +2 -0
  85. package/{esm2022 → esm2020}/services/catalog/types/product-sort.type.mjs +2 -2
  86. package/esm2020/services/catalog/wishlist.service.mjs +254 -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/{esm2022 → esm2020}/services/checkout/index.mjs +3 -3
  90. package/{esm2022 → esm2020}/services/checkout-subscription.service.mjs +55 -55
  91. package/{esm2022 → esm2020}/services/checkout.service.mjs +106 -106
  92. package/{esm2022 → esm2020}/services/coupon/coupon-repositories.facade.mjs +24 -24
  93. package/{esm2022 → esm2020}/services/coupon/index.mjs +2 -2
  94. package/esm2020/services/coupon/types/coupon-params.type.mjs +2 -0
  95. package/esm2020/services/coupon.service.mjs +248 -0
  96. package/{esm2022 → esm2020}/services/helpers/index.mjs +2 -2
  97. package/{esm2022 → esm2020}/services/helpers/util.helper.mjs +18 -18
  98. package/{esm2022 → esm2020}/services/home-shop/home-shop-repositories.facade.mjs +24 -24
  99. package/{esm2022 → esm2020}/services/home-shop/index.mjs +2 -2
  100. package/{esm2022 → esm2020}/services/home-shop.service.mjs +119 -119
  101. package/{esm2022 → esm2020}/services/index.mjs +11 -11
  102. package/esm2020/services/order-product-review.service.mjs +110 -0
  103. package/{esm2022 → esm2020}/services/order.service.mjs +30 -30
  104. package/{esm2022 → esm2020}/services/shared/configuration.facade.mjs +29 -29
  105. package/{esm2022 → esm2020}/services/shared/index.mjs +2 -2
  106. package/{esm2022 → esm2020}/services/types/index.mjs +5 -5
  107. package/{esm2022 → esm2020}/services/types/pending-product-review.type.mjs +2 -2
  108. package/{esm2022 → esm2020}/services/types/product-review-create.type.mjs +2 -2
  109. package/{esm2022 → esm2020}/services/types/required-checkout-data.type.mjs +2 -2
  110. package/{esm2022 → esm2020}/services/types/required-checkout-subscription-data.type.mjs +2 -2
  111. package/{esm2022 → esm2020}/types/firebase-app-config.type.mjs +2 -2
  112. package/{esm2022 → esm2020}/types/index.mjs +2 -2
  113. package/fesm2015/infrab4a-connect-angular.mjs +3513 -0
  114. package/fesm2015/infrab4a-connect-angular.mjs.map +1 -0
  115. package/{fesm2022 → fesm2020}/infrab4a-connect-angular.mjs +3311 -3284
  116. package/fesm2020/infrab4a-connect-angular.mjs.map +1 -0
  117. package/helpers/index.d.ts +1 -1
  118. package/helpers/mobile-operation-system-checker.helper.d.ts +3 -3
  119. package/index.d.ts +6 -6
  120. package/interfaces/catalog-strategies.interface.d.ts +31 -31
  121. package/interfaces/category-facades.interface.d.ts +6 -6
  122. package/interfaces/index.d.ts +2 -2
  123. package/package.json +15 -9
  124. package/persistence/cookie-data-persistence.d.ts +10 -10
  125. package/persistence/data-persistence.d.ts +6 -6
  126. package/persistence/index.d.ts +2 -2
  127. package/services/auth.service.d.ts +18 -18
  128. package/services/cart/cart-services.facade.d.ts +12 -12
  129. package/services/cart/index.d.ts +1 -1
  130. package/services/cart.service.d.ts +26 -26
  131. package/services/catalog/adapters/category-structure.adapter.d.ts +4 -4
  132. package/services/catalog/adapters/index.d.ts +3 -3
  133. package/services/catalog/adapters/new-category-structure.adapter.d.ts +12 -12
  134. package/services/catalog/adapters/old-category-structure.adapter.d.ts +10 -10
  135. package/services/catalog/catalog.service.d.ts +24 -24
  136. package/services/catalog/category.service.d.ts +23 -23
  137. package/services/catalog/context/catalog-search.context.d.ts +14 -14
  138. package/services/catalog/enums/index.d.ts +1 -1
  139. package/services/catalog/enums/product-sorts.enum.d.ts +9 -9
  140. package/services/catalog/facades/catalog-service.facade.d.ts +15 -15
  141. package/services/catalog/facades/catalog-strategies.facade.d.ts +10 -10
  142. package/services/catalog/facades/category-repository.facade.d.ts +9 -9
  143. package/services/catalog/facades/category-service.facade.d.ts +15 -15
  144. package/services/catalog/facades/index.d.ts +5 -5
  145. package/services/catalog/facades/product-catalog.facade.d.ts +10 -10
  146. package/services/catalog/helpers/brand-manager.helper.d.ts +14 -14
  147. package/services/catalog/helpers/catalog-filter.helper.d.ts +8 -8
  148. package/services/catalog/helpers/catalog-sort.helper.d.ts +7 -7
  149. package/services/catalog/helpers/index.d.ts +4 -4
  150. package/services/catalog/helpers/product-fields.helper.d.ts +7 -7
  151. package/services/catalog/index.d.ts +7 -7
  152. package/services/catalog/models/category-with-tree.model.d.ts +4 -4
  153. package/services/catalog/models/index.d.ts +1 -1
  154. package/services/catalog/services/catalog-helpers.service.d.ts +17 -17
  155. package/services/catalog/services/catalog-operations.facade.d.ts +13 -13
  156. package/services/catalog/services/catalog-repository.service.d.ts +12 -12
  157. package/services/catalog/services/index.d.ts +4 -4
  158. package/services/catalog/services/product-management.facade.d.ts +12 -12
  159. package/services/catalog/strategies/category-search.strategy.d.ts +19 -19
  160. package/services/catalog/strategies/index.d.ts +3 -3
  161. package/services/catalog/strategies/profile-search.strategy.d.ts +14 -14
  162. package/services/catalog/strategies/term-search.strategy.d.ts +20 -20
  163. package/services/catalog/strategies/types/strategy-params.type.d.ts +58 -58
  164. package/services/catalog/types/fetch-products-options.type.d.ts +8 -8
  165. package/services/catalog/types/fetch-products-params.type.d.ts +25 -25
  166. package/services/catalog/types/fetch-products-response.type.d.ts +19 -19
  167. package/services/catalog/types/index.d.ts +5 -5
  168. package/services/catalog/types/method-params.type.d.ts +17 -17
  169. package/services/catalog/types/product-sort.type.d.ts +2 -2
  170. package/services/catalog/wishlist.service.d.ts +59 -59
  171. package/services/checkout/checkout-dependencies.facade.d.ts +10 -10
  172. package/services/checkout/checkout-repositories.facade.d.ts +9 -9
  173. package/services/checkout/index.d.ts +2 -2
  174. package/services/checkout-subscription.service.d.ts +19 -19
  175. package/services/checkout.service.d.ts +30 -30
  176. package/services/coupon/coupon-repositories.facade.d.ts +10 -10
  177. package/services/coupon/index.d.ts +1 -1
  178. package/services/coupon/types/coupon-params.type.d.ts +13 -13
  179. package/services/coupon.service.d.ts +36 -36
  180. package/services/helpers/index.d.ts +1 -1
  181. package/services/helpers/util.helper.d.ts +3 -3
  182. package/services/home-shop/home-shop-repositories.facade.d.ts +10 -10
  183. package/services/home-shop/index.d.ts +1 -1
  184. package/services/home-shop.service.d.ts +26 -26
  185. package/services/index.d.ts +10 -10
  186. package/services/order-product-review.service.d.ts +16 -16
  187. package/services/order.service.d.ts +13 -13
  188. package/services/shared/configuration.facade.d.ts +12 -12
  189. package/services/shared/index.d.ts +1 -1
  190. package/services/types/index.d.ts +4 -4
  191. package/services/types/pending-product-review.type.d.ts +12 -12
  192. package/services/types/product-review-create.type.d.ts +14 -14
  193. package/services/types/required-checkout-data.type.d.ts +2 -2
  194. package/services/types/required-checkout-subscription-data.type.d.ts +2 -2
  195. package/types/firebase-app-config.type.d.ts +1 -1
  196. package/types/index.d.ts +1 -1
  197. package/esm2022/angular-connect.module.mjs +0 -288
  198. package/esm2022/angular-elastic-search.module.mjs +0 -34
  199. package/esm2022/angular-firebase-auth.module.mjs +0 -140
  200. package/esm2022/angular-firestore.module.mjs +0 -538
  201. package/esm2022/angular-hasura-graphql.module.mjs +0 -333
  202. package/esm2022/angular-vertex-search.module.mjs +0 -34
  203. package/esm2022/interfaces/catalog-strategies.interface.mjs +0 -2
  204. package/esm2022/services/catalog/catalog.service.mjs +0 -111
  205. package/esm2022/services/catalog/context/catalog-search.context.mjs +0 -40
  206. package/esm2022/services/catalog/facades/catalog-strategies.facade.mjs +0 -17
  207. package/esm2022/services/catalog/facades/category-repository.facade.mjs +0 -20
  208. package/esm2022/services/catalog/facades/product-catalog.facade.mjs +0 -21
  209. package/esm2022/services/catalog/helpers/brand-manager.helper.mjs +0 -57
  210. package/esm2022/services/catalog/helpers/catalog-filter.helper.mjs +0 -44
  211. package/esm2022/services/catalog/helpers/catalog-sort.helper.mjs +0 -52
  212. package/esm2022/services/catalog/services/catalog-helpers.service.mjs +0 -33
  213. package/esm2022/services/catalog/services/catalog-repository.service.mjs +0 -25
  214. package/esm2022/services/catalog/services/product-management.facade.mjs +0 -25
  215. package/esm2022/services/catalog/strategies/category-search.strategy.mjs +0 -133
  216. package/esm2022/services/catalog/strategies/profile-search.strategy.mjs +0 -42
  217. package/esm2022/services/catalog/strategies/term-search.strategy.mjs +0 -123
  218. package/esm2022/services/catalog/strategies/types/strategy-params.type.mjs +0 -2
  219. package/esm2022/services/catalog/types/fetch-products-params.type.mjs +0 -2
  220. package/esm2022/services/catalog/types/method-params.type.mjs +0 -2
  221. package/esm2022/services/catalog/wishlist.service.mjs +0 -254
  222. package/esm2022/services/checkout/checkout-dependencies.facade.mjs +0 -20
  223. package/esm2022/services/checkout/checkout-repositories.facade.mjs +0 -20
  224. package/esm2022/services/coupon/types/coupon-params.type.mjs +0 -2
  225. package/esm2022/services/coupon.service.mjs +0 -248
  226. package/esm2022/services/order-product-review.service.mjs +0 -110
  227. package/fesm2022/infrab4a-connect-angular.mjs.map +0 -1
@@ -0,0 +1,133 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { isEmpty, Shops, Where } from '@infrab4a/connect';
3
+ import { CatalogHelpersService, CatalogRepositoryService } from '../services';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../services";
6
+ export class CategorySearchStrategy {
7
+ constructor(repositoryService, helpersService) {
8
+ this.repositoryService = repositoryService;
9
+ this.helpersService = helpersService;
10
+ }
11
+ async search(params, shop, optionsCache) {
12
+ const { category, filters, limits, sort, mainGender } = params;
13
+ if (!category) {
14
+ throw new Error('Category is required for CategorySearchStrategy');
15
+ }
16
+ const fields = this.helpersService.getFieldsHelper().getStandardFields();
17
+ if (sort === 'most-relevant') {
18
+ return this.searchWithMostRelevant({
19
+ category,
20
+ filters,
21
+ limits,
22
+ shop,
23
+ mainGender,
24
+ optionsCache,
25
+ fields,
26
+ });
27
+ }
28
+ return this.searchDefault({
29
+ category,
30
+ filters,
31
+ limits,
32
+ shop,
33
+ mainGender,
34
+ sort,
35
+ optionsCache,
36
+ fields,
37
+ });
38
+ }
39
+ async searchWithMostRelevant(params) {
40
+ const { category, filters, shop, optionsCache } = params;
41
+ const mostRelevant = category.isWishlist ? [] : category.getMostRelevantByShop(shop);
42
+ const productsIds = await this.getProductIds(category, filters, optionsCache);
43
+ return this.findAndSortByMostRelevant({
44
+ mostRelevants: mostRelevant,
45
+ productIds: productsIds,
46
+ filters: params.filters,
47
+ limits: params.limits,
48
+ shop: params.shop,
49
+ mainGender: params.mainGender,
50
+ optionsCache: params.optionsCache,
51
+ fields: params.fields,
52
+ });
53
+ }
54
+ async searchDefault(params) {
55
+ const { category, filters, limits, sort, optionsCache, fields } = params;
56
+ const productCatalog = this.repositoryService.getProductCatalog();
57
+ const filterHelper = this.helpersService.getFilterHelper();
58
+ const sortHelper = this.helpersService.getSortHelper();
59
+ const repoParams = {
60
+ fields,
61
+ filters: {
62
+ ...(await productCatalog.categoryStructureAdapter.buildProductFilterByCategory(category)),
63
+ ...filterHelper.buildFilterQuery(filters || {}),
64
+ },
65
+ ...(sort ? { orderBy: sortHelper.buildSortQuery(sort) } : {}),
66
+ limits,
67
+ options: {
68
+ minimal: ['price'],
69
+ maximum: ['price'],
70
+ distinct: ['brand'],
71
+ },
72
+ };
73
+ return productCatalog.productRepository.findCatalog(repoParams, null, optionsCache);
74
+ }
75
+ async getProductIds(category, filters, optionsCache) {
76
+ const productCatalog = this.repositoryService.getProductCatalog();
77
+ const filterHelper = this.helpersService.getFilterHelper();
78
+ return productCatalog.productRepository
79
+ .findCatalog({
80
+ fields: ['id'],
81
+ filters: {
82
+ ...(await productCatalog.categoryStructureAdapter.buildProductFilterByCategory(category)),
83
+ ...filterHelper.buildFilterQuery(filters || {}),
84
+ },
85
+ }, undefined, optionsCache)
86
+ .then((products) => products.data.map((product) => product.id));
87
+ }
88
+ async findAndSortByMostRelevant(params) {
89
+ const { mostRelevants, productIds, filters, shop, mainGender, optionsCache, fields, limits } = params;
90
+ const productCatalog = this.repositoryService.getProductCatalog();
91
+ const filterHelper = this.helpersService.getFilterHelper();
92
+ const sortHelper = this.helpersService.getSortHelper();
93
+ const mostRelevantProductsIds = [...new Set(mostRelevants.concat(productIds))];
94
+ const totalResult = await productCatalog.productRepository.findCatalog({
95
+ fields,
96
+ filters: {
97
+ id: { operator: Where.IN, value: mostRelevantProductsIds },
98
+ ...filterHelper.buildFilterQuery(filters || {}),
99
+ },
100
+ orderBy: sortHelper.buildSortQuery('best-sellers'),
101
+ options: {
102
+ minimal: ['price'],
103
+ maximum: ['price'],
104
+ ...(isEmpty(filters?.brands) ? { distinct: ['brand'] } : {}),
105
+ },
106
+ }, mainGender || (shop === Shops.MENSMARKET ? 'male' : 'female'), optionsCache);
107
+ return this.sortProductsByRelevance(totalResult, mostRelevants, limits);
108
+ }
109
+ sortProductsByRelevance(totalResult, mostRelevants, limits) {
110
+ const mostRelevantWithoutStock = totalResult.data.filter((product) => mostRelevants.includes(product.id) && product.stock.quantity <= 0);
111
+ const firstProducts = totalResult.data
112
+ .filter((product) => mostRelevants.includes(product.id) && product.stock.quantity > 0)
113
+ .sort((a, b) => mostRelevants.indexOf(a.id) - mostRelevants.indexOf(b.id));
114
+ const lastProducts = totalResult.data
115
+ .filter((product) => !mostRelevants.includes(product.id))
116
+ .concat(mostRelevantWithoutStock);
117
+ const categoryMostRelevants = firstProducts.concat(lastProducts);
118
+ const resultFinal = categoryMostRelevants.slice(limits.offset, limits.offset + limits.limit);
119
+ return {
120
+ data: resultFinal,
121
+ count: totalResult.count,
122
+ maximum: totalResult.maximum,
123
+ minimal: totalResult.minimal,
124
+ distinct: totalResult.distinct,
125
+ };
126
+ }
127
+ }
128
+ CategorySearchStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategorySearchStrategy, deps: [{ token: i1.CatalogRepositoryService }, { token: i1.CatalogHelpersService }], target: i0.ɵɵFactoryTarget.Injectable });
129
+ CategorySearchStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategorySearchStrategy });
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CategorySearchStrategy, decorators: [{
131
+ type: Injectable
132
+ }], ctorParameters: function () { return [{ type: i1.CatalogRepositoryService }, { type: i1.CatalogHelpersService }]; } });
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktc2VhcmNoLnN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3N0cmF0ZWdpZXMvY2F0ZWdvcnktc2VhcmNoLnN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBeUQsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR2hILE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7O0FBUzdFLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFDbUIsaUJBQTJDLEVBQzNDLGNBQXFDO1FBRHJDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQXVCO0lBQ3JELENBQUM7SUFFSixLQUFLLENBQUMsTUFBTSxDQUNWLE1BQTJCLEVBQzNCLElBQVcsRUFDWCxZQUFpRDtRQUVqRCxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQTtRQUU5RCxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFBO1NBQ25FO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO1FBRXhFLElBQUksSUFBSSxLQUFLLGVBQWUsRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztnQkFDakMsUUFBUTtnQkFDUixPQUFPO2dCQUNQLE1BQU07Z0JBQ04sSUFBSTtnQkFDSixVQUFVO2dCQUNWLFlB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RSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDdEYsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLElBQUk7YUFDbEMsTUFBTSxDQUFDLENBQUMsT0FBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzdELE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ25DLE1BQU0scUJBQXFCLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNoRSxNQUFNLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUU1RixPQUFPO1lBQ0wsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTztZQUM1QixPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU87WUFDNUIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRO1NBQy9CLENBQUE7SUFDSCxDQUFDOzttSEF6SlUsc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBpc0VtcHR5LCBQcm9kdWN0LCBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zLCBSZXBvc2l0b3J5RmluZFJlc3VsdCwgU2hvcHMsIFdoZXJlIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zLCBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xyXG5pbXBvcnQgeyBDYXRhbG9nSGVscGVyc1NlcnZpY2UsIENhdGFsb2dSZXBvc2l0b3J5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJ1xyXG5cclxuaW1wb3J0IHtcclxuICBGaW5kQW5kU29ydEJ5TW9zdFJlbGV2YW50UGFyYW1zLFxyXG4gIFNlYXJjaERlZmF1bHRQYXJhbXMsXHJcbiAgU2VhcmNoV2l0aE1vc3RSZWxldmFudFBhcmFtcyxcclxufSBmcm9tICcuL3R5cGVzL3N0cmF0ZWd5LXBhcmFtcy50eXBlJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlTZWFyY2hTdHJhdGVneSBpbXBsZW1lbnRzIENhdGFsb2dTZWFyY2hTdHJhdGVneSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlcG9zaXRvcnlTZXJ2aWNlOiBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhlbHBlcnNTZXJ2aWNlOiBDYXRhbG9nSGVscGVyc1NlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBhc3luYyBzZWFyY2goXHJcbiAgICBwYXJhbXM6IENhdGFsb2dTZWFyY2hQYXJhbXMsXHJcbiAgICBzaG9wOiBTaG9wcyxcclxuICAgIG9wdGlvbnNDYWNoZT86IHsgY2FjaGU/OiBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zIH0sXHJcbiAgKTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxQcm9kdWN0Pj4ge1xyXG4gICAgY29uc3QgeyBjYXRlZ29yeSwgZmlsdGVycywgbGltaXRzLCBzb3J0LCBtYWluR2VuZGVyIH0gPSBwYXJhbXNcclxuXHJcbiAgICBpZiAoIWNhdGVnb3J5KSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2F0ZWdvcnkgaXMgcmVxdWlyZWQgZm9yIENhdGVnb3J5U2VhcmNoU3RyYXRlZ3knKVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGZpZWxkcyA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmllbGRzSGVscGVyKCkuZ2V0U3RhbmRhcmRGaWVsZHMoKVxyXG5cclxuICAgIGlmIChzb3J0ID09PSAnbW9zdC1yZWxldmFudCcpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoV2l0aE1vc3RSZWxldmFudCh7XHJcbiAgICAgICAgY2F0ZWdvcnksXHJcbiAgICAgICAgZmlsdGVycyxcclxuICAgICAgICBsaW1pdHMsXHJcbiAgICAgICAgc2hvcCxcclxuICAgICAgICBtYWluR2VuZGVyLFxyXG4gICAgICAgIG9wdGlvbnNDYWNoZSxcclxuICAgICAgICBmaWVsZHMsXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoRGVmYXVsdCh7XHJcbiAgICAgIGNhdGVnb3J5LFxyXG4gICAgICBmaWx0ZXJzLFxyXG4gICAgICBsaW1pdHMsXHJcbiAgICAgIHNob3AsXHJcbiAgICAgIG1haW5HZW5kZXIsXHJcbiAgICAgIHNvcnQsXHJcbiAgICAgIG9wdGlvbnNDYWNoZSxcclxuICAgICAgZmllbGRzLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgc2VhcmNoV2l0aE1vc3RSZWxldmFudChwYXJhbXM6IFNlYXJjaFdpdGhNb3N0UmVsZXZhbnRQYXJhbXMpIHtcclxuICAgIGNvbnN0IHsgY2F0ZWdvcnksIGZpbHRlcnMsIHNob3AsIG9wdGlvbnNDYWNoZSB9ID0gcGFyYW1zXHJcbiAgICBjb25zdCBtb3N0UmVsZXZhbnQgPSBjYXRlZ29yeS5pc1dpc2hsaXN0ID8gW10gOiBjYXRlZ29yeS5nZXRNb3N0UmVsZXZhbnRCeVNob3Aoc2hvcClcclxuICAgIGNvbnN0IHByb2R1Y3RzSWRzID0gYXdhaXQgdGhpcy5nZXRQcm9kdWN0SWRzKGNhdGVnb3J5LCBmaWx0ZXJzLCBvcHRpb25zQ2FjaGUpXHJcblxyXG4gICAgcmV0dXJuIHRoaXMuZmluZEFuZFNvcnRCeU1vc3RSZWxldmFudCh7XHJcbiAgICAgIG1vc3RSZWxldmFudHM6IG1vc3RSZWxldmFudCxcclxuICAgICAgcHJvZHVjdElkczogcHJvZHVjdHNJZHMsXHJcbiAgICAgIGZpbHRlcnM6IHBhcmFtcy5maWx0ZXJzLFxyXG4gICAgICBsaW1pdHM6IHBhcmFtcy5saW1pdHMsXHJcbiAgICAgIHNob3A6IHBhcmFtcy5zaG9wLFxyXG4gICAgICBtYWluR2VuZGVyOiBwYXJhbXMubWFpbkdlbmRlcixcclxuICAgICAgb3B0aW9uc0NhY2hlOiBwYXJhbXMub3B0aW9uc0NhY2hlLFxyXG4gICAgICBmaWVsZHM6IHBhcmFtcy5maWVsZHMsXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBzZWFyY2hEZWZhdWx0KHBhcmFtczogU2VhcmNoRGVmYXVsdFBhcmFtcykge1xyXG4gICAgY29uc3QgeyBjYXRlZ29yeSwgZmlsdGVycywgbGltaXRzLCBzb3J0LCBvcHRpb25zQ2FjaGUsIGZpZWxkcyB9ID0gcGFyYW1zXHJcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxyXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxyXG4gICAgY29uc3Qgc29ydEhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0U29ydEhlbHBlcigpXHJcblxyXG4gICAgY29uc3QgcmVwb1BhcmFtcyA9IHtcclxuICAgICAgZmllbGRzLFxyXG4gICAgICBmaWx0ZXJzOiB7XHJcbiAgICAgICAgLi4uKGF3YWl0IHByb2R1Y3RDYXRhbG9nLmNhdGVnb3J5U3RydWN0dXJlQWRhcHRlci5idWlsZFByb2R1Y3RGaWx0ZXJCeUNhdGVnb3J5KGNhdGVnb3J5KSksXHJcbiAgICAgICAgLi4uZmlsdGVySGVscGVyLmJ1aWxkRmlsdGVyUXVlcnkoZmlsdGVycyB8fCB7fSksXHJcbiAgICAgIH0sXHJcbiAgICAgIC4uLihzb3J0ID8geyBvcmRlckJ5OiBzb3J0SGVscGVyLmJ1aWxkU29ydFF1ZXJ5KHNvcnQpIH0gOiB7fSksXHJcbiAgICAgIGxpbWl0cyxcclxuICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgIG1pbmltYWw6IFsncHJpY2UnXSxcclxuICAgICAgICBtYXhpbXVtOiBbJ3ByaWNlJ10sXHJcbiAgICAgICAgZGlzdGluY3Q6IFsnYnJhbmQnXSxcclxuICAgICAgfSxcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcHJvZHVjdENhdGFsb2cucHJvZHVjdFJlcG9zaXRvcnkuZmluZENhdGFsb2cocmVwb1BhcmFtcywgbnVsbCwgb3B0aW9uc0NhY2hlKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBnZXRQcm9kdWN0SWRzKGNhdGVnb3J5OiBhbnksIGZpbHRlcnM6IGFueSwgb3B0aW9uc0NhY2hlOiBhbnkpOiBQcm9taXNlPHN0cmluZ1tdPiB7XHJcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxyXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxyXG5cclxuICAgIHJldHVybiBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0UmVwb3NpdG9yeVxyXG4gICAgICAuZmluZENhdGFsb2coXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZmllbGRzOiBbJ2lkJ10sXHJcbiAgICAgICAgICBmaWx0ZXJzOiB7XHJcbiAgICAgICAgICAgIC4uLihhd2FpdCBwcm9kdWN0Q2F0YWxvZy5jYXRlZ29yeVN0cnVjdHVyZUFkYXB0ZXIuYnVpbGRQcm9kdWN0RmlsdGVyQnlDYXRlZ29yeShjYXRlZ29yeSkpLFxyXG4gICAgICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgb3B0aW9uc0NhY2hlLFxyXG4gICAgICApXHJcbiAgICAgIC50aGVuKChwcm9kdWN0cykgPT4gcHJvZHVjdHMuZGF0YS5tYXAoKHByb2R1Y3QpID0+IHByb2R1Y3QuaWQpKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBmaW5kQW5kU29ydEJ5TW9zdFJlbGV2YW50KFxyXG4gICAgcGFyYW1zOiBGaW5kQW5kU29ydEJ5TW9zdFJlbGV2YW50UGFyYW1zLFxyXG4gICk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcclxuICAgIGNvbnN0IHsgbW9zdFJlbGV2YW50cywgcHJvZHVjdElkcywgZmlsdGVycywgc2hvcCwgbWFpbkdlbmRlciwgb3B0aW9uc0NhY2hlLCBmaWVsZHMsIGxpbWl0cyB9ID0gcGFyYW1zXHJcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxyXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxyXG4gICAgY29uc3Qgc29ydEhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0U29ydEhlbHBlcigpXHJcblxyXG4gICAgY29uc3QgbW9zdFJlbGV2YW50UHJvZHVjdHNJZHMgPSBbLi4ubmV3IFNldChtb3N0UmVsZXZhbnRzLmNvbmNhdChwcm9kdWN0SWRzKSldXHJcbiAgICBjb25zdCB0b3RhbFJlc3VsdCA9IGF3YWl0IHByb2R1Y3RDYXRhbG9nLnByb2R1Y3RSZXBvc2l0b3J5LmZpbmRDYXRhbG9nKFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGRzLFxyXG4gICAgICAgIGZpbHRlcnM6IHtcclxuICAgICAgICAgIGlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IG1vc3RSZWxldmFudFByb2R1Y3RzSWRzIH0sXHJcbiAgICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG9yZGVyQnk6IHNvcnRIZWxwZXIuYnVpbGRTb3J0UXVlcnkoJ2Jlc3Qtc2VsbGVycycpLFxyXG4gICAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICAgIG1pbmltYWw6IFsncHJpY2UnXSxcclxuICAgICAgICAgIG1heGltdW06IFsncHJpY2UnXSxcclxuICAgICAgICAgIC4uLihpc0VtcHR5KGZpbHRlcnM/LmJyYW5kcykgPyB7IGRpc3RpbmN0OiBbJ2JyYW5kJ10gfSA6IHt9KSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBtYWluR2VuZGVyIHx8IChzaG9wID09PSBTaG9wcy5NRU5TTUFSS0VUID8gJ21hbGUnIDogJ2ZlbWFsZScpLFxyXG4gICAgICBvcHRpb25zQ2FjaGUsXHJcbiAgICApXHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc29ydFByb2R1Y3RzQnlSZWxldmFuY2UodG90YWxSZXN1bHQsIG1vc3RSZWxldmFudHMsIGxpbWl0cylcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc29ydFByb2R1Y3RzQnlSZWxldmFuY2UodG90YWxSZXN1bHQ6IGFueSwgbW9zdFJlbGV2YW50czogc3RyaW5nW10sIGxpbWl0czogYW55KSB7XHJcbiAgICBjb25zdCBtb3N0UmVsZXZhbnRXaXRob3V0U3RvY2sgPSB0b3RhbFJlc3VsdC5kYXRhLmZpbHRlcihcclxuICAgICAgKHByb2R1Y3Q6IGFueSkgPT4gbW9zdFJlbGV2YW50cy5pbmNsdWRlcyhwcm9kdWN0LmlkKSAmJiBwcm9kdWN0LnN0b2NrLnF1YW50aXR5IDw9IDAsXHJcbiAgICApXHJcbiAgICBjb25zdCBmaXJzdFByb2R1Y3RzID0gdG90YWxSZXN1bHQuZGF0YVxyXG4gICAgICAuZmlsdGVyKChwcm9kdWN0OiBhbnkpID0+IG1vc3RSZWxldmFudHMuaW5jbHVkZXMocHJvZHVjdC5pZCkgJiYgcHJvZHVjdC5zdG9jay5xdWFudGl0eSA+IDApXHJcbiAgICAgIC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4gbW9zdFJlbGV2YW50cy5pbmRleE9mKGEuaWQpIC0gbW9zdFJlbGV2YW50cy5pbmRleE9mKGIuaWQpKVxyXG4gICAgY29uc3QgbGFzdFByb2R1Y3RzID0gdG90YWxSZXN1bHQuZGF0YVxyXG4gICAgICAuZmlsdGVyKChwcm9kdWN0OiBhbnkpID0+ICFtb3N0UmVsZXZhbnRzLmluY2x1ZGVzKHByb2R1Y3QuaWQpKVxyXG4gICAgICAuY29uY2F0KG1vc3RSZWxldmFudFdpdGhvdXRTdG9jaylcclxuICAgIGNvbnN0IGNhdGVnb3J5TW9zdFJlbGV2YW50cyA9IGZpcnN0UHJvZHVjdHMuY29uY2F0KGxhc3RQcm9kdWN0cylcclxuICAgIGNvbnN0IHJlc3VsdEZpbmFsID0gY2F0ZWdvcnlNb3N0UmVsZXZhbnRzLnNsaWNlKGxpbWl0cy5vZmZzZXQsIGxpbWl0cy5vZmZzZXQgKyBsaW1pdHMubGltaXQpXHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZGF0YTogcmVzdWx0RmluYWwsXHJcbiAgICAgIGNvdW50OiB0b3RhbFJlc3VsdC5jb3VudCxcclxuICAgICAgbWF4aW11bTogdG90YWxSZXN1bHQubWF4aW11bSxcclxuICAgICAgbWluaW1hbDogdG90YWxSZXN1bHQubWluaW1hbCxcclxuICAgICAgZGlzdGluY3Q6IHRvdGFsUmVzdWx0LmRpc3RpbmN0LFxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- export * from './category-search.strategy';
2
- export * from './profile-search.strategy';
3
- export * from './term-search.strategy';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsMkJBQTJCLENBQUE7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktc2VhcmNoLnN0cmF0ZWd5J1xuZXhwb3J0ICogZnJvbSAnLi9wcm9maWxlLXNlYXJjaC5zdHJhdGVneSdcbmV4cG9ydCAqIGZyb20gJy4vdGVybS1zZWFyY2guc3RyYXRlZ3knXG4iXX0=
1
+ export * from './category-search.strategy';
2
+ export * from './profile-search.strategy';
3
+ export * from './term-search.strategy';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsMkJBQTJCLENBQUE7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktc2VhcmNoLnN0cmF0ZWd5J1xyXG5leHBvcnQgKiBmcm9tICcuL3Byb2ZpbGUtc2VhcmNoLnN0cmF0ZWd5J1xyXG5leHBvcnQgKiBmcm9tICcuL3Rlcm0tc2VhcmNoLnN0cmF0ZWd5J1xyXG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Shops, Where } from '@infrab4a/connect';
3
+ import { CatalogHelpersService, CatalogRepositoryService } from '../services';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../services";
6
+ export class ProfileSearchStrategy {
7
+ constructor(repositoryService, helpersService) {
8
+ this.repositoryService = repositoryService;
9
+ this.helpersService = helpersService;
10
+ }
11
+ async search(params, shop, optionsCache) {
12
+ const { profile, filters, limits, sort, mainGender } = params;
13
+ if (!profile) {
14
+ throw new Error('Profile is required for ProfileSearchStrategy');
15
+ }
16
+ const productCatalog = this.repositoryService.getProductCatalog();
17
+ const filterHelper = this.helpersService.getFilterHelper();
18
+ const sortHelper = this.helpersService.getSortHelper();
19
+ const fieldsHelper = this.helpersService.getFieldsHelper();
20
+ const repoParams = {
21
+ fields: fieldsHelper.getStandardFields(),
22
+ filters: {
23
+ tagsProfile: { operator: Where.LIKE, value: profile },
24
+ ...filterHelper.buildFilterQuery(filters || {}),
25
+ },
26
+ ...(sort ? { orderBy: sortHelper.buildSortQuery(sort) } : {}),
27
+ limits,
28
+ options: {
29
+ minimal: ['price'],
30
+ maximum: ['price'],
31
+ distinct: ['brand'],
32
+ },
33
+ };
34
+ return productCatalog.productRepository.findCatalog(repoParams, mainGender || (shop === Shops.MENSMARKET ? 'male' : 'female'), optionsCache);
35
+ }
36
+ }
37
+ ProfileSearchStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProfileSearchStrategy, deps: [{ token: i1.CatalogRepositoryService }, { token: i1.CatalogHelpersService }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ ProfileSearchStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProfileSearchStrategy });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ProfileSearchStrategy, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: i1.CatalogRepositoryService }, { type: i1.CatalogHelpersService }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zZWFyY2guc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy9wcm9maWxlLXNlYXJjaC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBeUQsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR3ZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7O0FBRzdFLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFDbUIsaUJBQTJDLEVBQzNDLGNBQXFDO1FBRHJDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQXVCO0lBQ3JELENBQUM7SUFFSixLQUFLLENBQUMsTUFBTSxDQUNWLE1BQTJCLEVBQzNCLElBQVcsRUFDWCxZQUFpRDtRQUVqRCxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQTtRQUU3RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFBO1NBQ2pFO1FBRUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDakUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUMxRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3RELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxFQUFFLENBQUE7UUFFMUQsTUFBTSxVQUFVLEdBQUc7WUFDakIsTUFBTSxFQUFFLFlBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QyxPQUFPLEVBQUU7Z0JBQ1AsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFDckQsR0FBRyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQzthQUNoRDtZQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdELE1BQU07WUFDTixPQUFPLEVBQUU7Z0JBQ1AsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNsQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xCLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUNwQjtTQUNGLENBQUE7UUFFRCxPQUFPLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQ2pELFVBQVUsRUFDVixVQUFVLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDN0QsWUFBWSxDQUNiLENBQUE7SUFDSCxDQUFDOztrSEExQ1UscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBQcm9kdWN0LCBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zLCBSZXBvc2l0b3J5RmluZFJlc3VsdCwgU2hvcHMsIFdoZXJlIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zLCBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xyXG5pbXBvcnQgeyBDYXRhbG9nSGVscGVyc1NlcnZpY2UsIENhdGFsb2dSZXBvc2l0b3J5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJ1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUHJvZmlsZVNlYXJjaFN0cmF0ZWd5IGltcGxlbWVudHMgQ2F0YWxvZ1NlYXJjaFN0cmF0ZWd5IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVwb3NpdG9yeVNlcnZpY2U6IENhdGFsb2dSZXBvc2l0b3J5U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGVscGVyc1NlcnZpY2U6IENhdGFsb2dIZWxwZXJzU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIGFzeW5jIHNlYXJjaChcclxuICAgIHBhcmFtczogQ2F0YWxvZ1NlYXJjaFBhcmFtcyxcclxuICAgIHNob3A6IFNob3BzLFxyXG4gICAgb3B0aW9uc0NhY2hlPzogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSxcclxuICApOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PFByb2R1Y3Q+PiB7XHJcbiAgICBjb25zdCB7IHByb2ZpbGUsIGZpbHRlcnMsIGxpbWl0cywgc29ydCwgbWFpbkdlbmRlciB9ID0gcGFyYW1zXHJcblxyXG4gICAgaWYgKCFwcm9maWxlKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignUHJvZmlsZSBpcyByZXF1aXJlZCBmb3IgUHJvZmlsZVNlYXJjaFN0cmF0ZWd5JylcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxyXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxyXG4gICAgY29uc3Qgc29ydEhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0U29ydEhlbHBlcigpXHJcbiAgICBjb25zdCBmaWVsZHNIZWxwZXIgPSB0aGlzLmhlbHBlcnNTZXJ2aWNlLmdldEZpZWxkc0hlbHBlcigpXHJcblxyXG4gICAgY29uc3QgcmVwb1BhcmFtcyA9IHtcclxuICAgICAgZmllbGRzOiBmaWVsZHNIZWxwZXIuZ2V0U3RhbmRhcmRGaWVsZHMoKSxcclxuICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgIHRhZ3NQcm9maWxlOiB7IG9wZXJhdG9yOiBXaGVyZS5MSUtFLCB2YWx1ZTogcHJvZmlsZSB9LFxyXG4gICAgICAgIC4uLmZpbHRlckhlbHBlci5idWlsZEZpbHRlclF1ZXJ5KGZpbHRlcnMgfHwge30pLFxyXG4gICAgICB9LFxyXG4gICAgICAuLi4oc29ydCA/IHsgb3JkZXJCeTogc29ydEhlbHBlci5idWlsZFNvcnRRdWVyeShzb3J0KSB9IDoge30pLFxyXG4gICAgICBsaW1pdHMsXHJcbiAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICBtaW5pbWFsOiBbJ3ByaWNlJ10sXHJcbiAgICAgICAgbWF4aW11bTogWydwcmljZSddLFxyXG4gICAgICAgIGRpc3RpbmN0OiBbJ2JyYW5kJ10sXHJcbiAgICAgIH0sXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHByb2R1Y3RDYXRhbG9nLnByb2R1Y3RSZXBvc2l0b3J5LmZpbmRDYXRhbG9nKFxyXG4gICAgICByZXBvUGFyYW1zLFxyXG4gICAgICBtYWluR2VuZGVyIHx8IChzaG9wID09PSBTaG9wcy5NRU5TTUFSS0VUID8gJ21hbGUnIDogJ2ZlbWFsZScpLFxyXG4gICAgICBvcHRpb25zQ2FjaGUsXHJcbiAgICApXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,123 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { isEmpty, Shops, Where, } from '@infrab4a/connect';
3
+ import { CatalogHelpersService, CatalogRepositoryService } from '../services';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../services";
6
+ export class TermSearchStrategy {
7
+ constructor(repositoryService, helpersService) {
8
+ this.repositoryService = repositoryService;
9
+ this.helpersService = helpersService;
10
+ this.productsByTerm = {};
11
+ }
12
+ async search(params, shop, _optionsCache) {
13
+ const { term, filters, limits, sort, mainGender } = params;
14
+ if (!term) {
15
+ throw new Error('Term is required for TermSearchStrategy');
16
+ }
17
+ const productIds = await this.findCatalogIdsBySearch(term, shop);
18
+ if (sort === 'most-relevant') {
19
+ return this.searchWithMostRelevant({
20
+ productIds,
21
+ filters,
22
+ limits,
23
+ shop,
24
+ mainGender,
25
+ });
26
+ }
27
+ return this.searchDefault({
28
+ productIds,
29
+ filters,
30
+ limits,
31
+ shop,
32
+ mainGender,
33
+ fields: this.helpersService.getFieldsHelper().getStandardFields(),
34
+ });
35
+ }
36
+ async searchWithMostRelevant(params) {
37
+ const { productIds, filters, shop, mainGender } = params;
38
+ const productCatalog = this.repositoryService.getProductCatalog();
39
+ const filterHelper = this.helpersService.getFilterHelper();
40
+ const totalResult = await productCatalog.productRepository.findCatalog({
41
+ fields: ['id', 'stock', 'gender'],
42
+ filters: {
43
+ id: { operator: Where.IN, value: productIds },
44
+ published: { operator: Where.EQUALS, value: true },
45
+ ...filterHelper.buildFilterQuery(filters || {}),
46
+ },
47
+ options: {
48
+ minimal: ['price'],
49
+ maximum: ['price'],
50
+ ...(isEmpty(filters?.brands) ? { distinct: ['brand'] } : {}),
51
+ },
52
+ });
53
+ return this.sortByTermRelevance({
54
+ productIds,
55
+ totalResult,
56
+ limits: params.limits,
57
+ filters,
58
+ fieldsHelper: this.helpersService.getFieldsHelper(),
59
+ });
60
+ }
61
+ async searchDefault(params) {
62
+ const { productIds, filters, limits, shop, mainGender, fields } = params;
63
+ const productCatalog = this.repositoryService.getProductCatalog();
64
+ const filterHelper = this.helpersService.getFilterHelper();
65
+ return productCatalog.productRepository.findCatalog({
66
+ fields,
67
+ filters: {
68
+ id: { operator: Where.IN, value: productIds },
69
+ published: { operator: Where.EQUALS, value: true },
70
+ ...filterHelper.buildFilterQuery(filters || {}),
71
+ },
72
+ limits,
73
+ options: {
74
+ minimal: ['price'],
75
+ maximum: ['price'],
76
+ distinct: ['brand'],
77
+ },
78
+ });
79
+ }
80
+ sortByTermRelevance(params) {
81
+ const { productIds, totalResult, limits, filters, fieldsHelper } = params;
82
+ // const defaultGender = filters?.gender?.at(0) || 'male'
83
+ const stockData = totalResult.data.filter((product) => product.stock.quantity > 0);
84
+ const stockOut = totalResult.data.filter((product) => product.stock.quantity <= 0);
85
+ const productIdsStock = productIds.filter((product) => stockData.some((result) => result.id === product));
86
+ const productIdsStockOut = productIds.filter((product) => stockOut.some((result) => result.id === product));
87
+ const limitedProductId = productIdsStock
88
+ .concat(productIdsStockOut)
89
+ .slice(limits.offset, limits.offset + limits.limit);
90
+ return this.getDetailedProducts(limitedProductId, totalResult, fieldsHelper);
91
+ }
92
+ async getDetailedProducts(orderedId, totalResult, fieldsHelper) {
93
+ const productCatalog = this.repositoryService.getProductCatalog();
94
+ const fields = fieldsHelper.getStandardFields();
95
+ const productResult = await productCatalog.productRepository.findCatalog({
96
+ filters: {
97
+ id: { operator: Where.IN, value: orderedId },
98
+ },
99
+ fields,
100
+ });
101
+ return {
102
+ data: orderedId.map((id) => productResult.data.find((product) => product.id === id)).filter(Boolean),
103
+ count: totalResult.count,
104
+ maximum: totalResult.maximum,
105
+ minimal: totalResult.minimal,
106
+ distinct: totalResult.distinct,
107
+ };
108
+ }
109
+ async findCatalogIdsBySearch(term, shop) {
110
+ if (this.productsByTerm[term])
111
+ return this.productsByTerm[term];
112
+ const productServices = this.repositoryService.getProductServices();
113
+ return (this.productsByTerm[term] = await productServices.productSearch
114
+ .search(term, 999, shop === Shops.GLAMSHOP ? 'female' : 'male')
115
+ .then((products) => [...new Set(products.map((product) => product.id))]));
116
+ }
117
+ }
118
+ TermSearchStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: TermSearchStrategy, deps: [{ token: i1.CatalogRepositoryService }, { token: i1.CatalogHelpersService }], target: i0.ɵɵFactoryTarget.Injectable });
119
+ TermSearchStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: TermSearchStrategy });
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: TermSearchStrategy, decorators: [{
121
+ type: Injectable
122
+ }], ctorParameters: function () { return [{ type: i1.CatalogRepositoryService }, { type: i1.CatalogHelpersService }]; } });
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybS1zZWFyY2guc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy90ZXJtLXNlYXJjaC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFDTCxPQUFPLEVBS1AsS0FBSyxFQUNMLEtBQUssR0FDTixNQUFNLG1CQUFtQixDQUFBO0FBRzFCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7O0FBUzdFLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFDbUIsaUJBQTJDLEVBQzNDLGNBQXFDO1FBRHJDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBSmhELG1CQUFjLEdBQTZCLEVBQUUsQ0FBQTtJQUtsRCxDQUFDO0lBRUosS0FBSyxDQUFDLE1BQU0sQ0FDVixNQUEyQixFQUMzQixJQUFXLEVBQ1gsYUFBa0Q7UUFFbEQsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUE7UUFFMUQsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQTtTQUMzRDtRQUVELE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUVoRSxJQUFJLElBQUksS0FBSyxlQUFlLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7Z0JBQ2pDLFVBQVU7Z0JBQ1YsT0FBTztnQkFDUCxNQUFNO2dCQUNOLElBQUk7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QUFhO2FBQ3BFLE1BQU0sQ0FBZ0IsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEtBQUssS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7YUFDN0UsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDN0UsQ0FBQzs7K0dBeklVLGtCQUFrQjttSEFBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHtcclxuICBpc0VtcHR5LFxyXG4gIFByb2R1Y3QsXHJcbiAgUHJvZHVjdFNlYXJjaCxcclxuICBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zLFxyXG4gIFJlcG9zaXRvcnlGaW5kUmVzdWx0LFxyXG4gIFNob3BzLFxyXG4gIFdoZXJlLFxyXG59IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xyXG5cclxuaW1wb3J0IHsgQ2F0YWxvZ1NlYXJjaFBhcmFtcywgQ2F0YWxvZ1NlYXJjaFN0cmF0ZWd5IH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcclxuaW1wb3J0IHsgQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLCBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcydcclxuXHJcbmltcG9ydCB7XHJcbiAgU29ydEJ5VGVybVJlbGV2YW5jZVBhcmFtcyxcclxuICBUZXJtU2VhcmNoRGVmYXVsdFBhcmFtcyxcclxuICBUZXJtU2VhcmNoTW9zdFJlbGV2YW50UGFyYW1zLFxyXG59IGZyb20gJy4vdHlwZXMvc3RyYXRlZ3ktcGFyYW1zLnR5cGUnXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUZXJtU2VhcmNoU3RyYXRlZ3kgaW1wbGVtZW50cyBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kge1xyXG4gIHByaXZhdGUgcHJvZHVjdHNCeVRlcm06IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHt9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXBvc2l0b3J5U2VydmljZTogQ2F0YWxvZ1JlcG9zaXRvcnlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBoZWxwZXJzU2VydmljZTogQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgYXN5bmMgc2VhcmNoKFxyXG4gICAgcGFyYW1zOiBDYXRhbG9nU2VhcmNoUGFyYW1zLFxyXG4gICAgc2hvcDogU2hvcHMsXHJcbiAgICBfb3B0aW9uc0NhY2hlPzogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSxcclxuICApOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PFByb2R1Y3Q+PiB7XHJcbiAgICBjb25zdCB7IHRlcm0sIGZpbHRlcnMsIGxpbWl0cywgc29ydCwgbWFpbkdlbmRlciB9ID0gcGFyYW1zXHJcblxyXG4gICAgaWYgKCF0ZXJtKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGVybSBpcyByZXF1aXJlZCBmb3IgVGVybVNlYXJjaFN0cmF0ZWd5JylcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBwcm9kdWN0SWRzID0gYXdhaXQgdGhpcy5maW5kQ2F0YWxvZ0lkc0J5U2VhcmNoKHRlcm0sIHNob3ApXHJcblxyXG4gICAgaWYgKHNvcnQgPT09ICdtb3N0LXJlbGV2YW50Jykge1xyXG4gICAgICByZXR1cm4gdGhpcy5zZWFyY2hXaXRoTW9zdFJlbGV2YW50KHtcclxuICAgICAgICBwcm9kdWN0SWRzLFxyXG4gICAgICAgIGZpbHRlcnMsXHJcbiAgICAgICAgbGltaXRzLFxyXG4gICAgICAgIHNob3AsXHJcbiAgICAgICAgbWFpbkdlbmRlcixcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hEZWZhdWx0KHtcclxuICAgICAgcHJvZHVjdElkcyxcclxuICAgICAgZmlsdGVycyxcclxuICAgICAgbGltaXRzLFxyXG4gICAgICBzaG9wLFxyXG4gICAgICBtYWluR2VuZGVyLFxyXG4gICAgICBmaWVsZHM6IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmllbGRzSGVscGVyKCkuZ2V0U3RhbmRhcmRGaWVsZHMoKSxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHNlYXJjaFdpdGhNb3N0UmVsZXZhbnQocGFyYW1zOiBUZXJtU2VhcmNoTW9zdFJlbGV2YW50UGFyYW1zKTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxQcm9kdWN0Pj4ge1xyXG4gICAgY29uc3QgeyBwcm9kdWN0SWRzLCBmaWx0ZXJzLCBzaG9wLCBtYWluR2VuZGVyIH0gPSBwYXJhbXNcclxuICAgIGNvbnN0IHByb2R1Y3RDYXRhbG9nID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZS5nZXRQcm9kdWN0Q2F0YWxvZygpXHJcbiAgICBjb25zdCBmaWx0ZXJIZWxwZXIgPSB0aGlzLmhlbHBlcnNTZXJ2aWNlLmdldEZpbHRlckhlbHBlcigpXHJcblxyXG4gICAgY29uc3QgdG90YWxSZXN1bHQgPSBhd2FpdCBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0UmVwb3NpdG9yeS5maW5kQ2F0YWxvZyhcclxuICAgICAge1xyXG4gICAgICAgIGZpZWxkczogWydpZCcsICdzdG9jaycsICdnZW5kZXInXSxcclxuICAgICAgICBmaWx0ZXJzOiB7XHJcbiAgICAgICAgICBpZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBwcm9kdWN0SWRzIH0sXHJcbiAgICAgICAgICBwdWJsaXNoZWQ6IHsgb3BlcmF0b3I6IFdoZXJlLkVRVUFMUywgdmFsdWU6IHRydWUgfSxcclxuICAgICAgICAgIC4uLmZpbHRlckhlbHBlci5idWlsZEZpbHRlclF1ZXJ5KGZpbHRlcnMgfHwge30pLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb3B0aW9uczoge1xyXG4gICAgICAgICAgbWluaW1hbDogWydwcmljZSddLFxyXG4gICAgICAgICAgbWF4aW11bTogWydwcmljZSddLFxyXG4gICAgICAgICAgLi4uKGlzRW1wdHkoZmlsdGVycz8uYnJhbmRzKSA/IHsgZGlzdGluY3Q6IFsnYnJhbmQnXSB9IDoge30pLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIG1haW5HZW5kZXIgfHwgKHNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQgPyAnbWFsZScgOiAnZmVtYWxlJyksXHJcbiAgICApXHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc29ydEJ5VGVybVJlbGV2YW5jZSh7XHJcbiAgICAgIHByb2R1Y3RJZHMsXHJcbiAgICAgIHRvdGFsUmVzdWx0LFxyXG4gICAgICBsaW1pdHM6IHBhcmFtcy5saW1pdHMsXHJcbiAgICAgIGZpbHRlcnMsXHJcbiAgICAgIGZpZWxkc0hlbHBlcjogdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWVsZHNIZWxwZXIoKSxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIHNlYXJjaERlZmF1bHQocGFyYW1zOiBUZXJtU2VhcmNoRGVmYXVsdFBhcmFtcyk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcclxuICAgIGNvbnN0IHsgcHJvZHVjdElkcywgZmlsdGVycywgbGltaXRzLCBzaG9wLCBtYWluR2VuZGVyLCBmaWVsZHMgfSA9IHBhcmFtc1xyXG4gICAgY29uc3QgcHJvZHVjdENhdGFsb2cgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldFByb2R1Y3RDYXRhbG9nKClcclxuICAgIGNvbnN0IGZpbHRlckhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmlsdGVySGVscGVyKClcclxuXHJcbiAgICByZXR1cm4gcHJvZHVjdENhdGFsb2cucHJvZHVjdFJlcG9zaXRvcnkuZmluZENhdGFsb2coXHJcbiAgICAgIHtcclxuICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgICAgaWQ6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogcHJvZHVjdElkcyB9LFxyXG4gICAgICAgICAgcHVibGlzaGVkOiB7IG9wZXJhdG9yOiBXaGVyZS5FUVVBTFMsIHZhbHVlOiB0cnVlIH0sXHJcbiAgICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGxpbWl0cyxcclxuICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICBtaW5pbWFsOiBbJ3ByaWNlJ10sXHJcbiAgICAgICAgICBtYXhpbXVtOiBbJ3ByaWNlJ10sXHJcbiAgICAgICAgICBkaXN0aW5jdDogWydicmFuZCddLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIG1haW5HZW5kZXIgfHwgKHNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQgPyAnbWFsZScgOiAnZmVtYWxlJyksXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNvcnRCeVRlcm1SZWxldmFuY2UocGFyYW1zOiBTb3J0QnlUZXJtUmVsZXZhbmNlUGFyYW1zKSB7XHJcbiAgICBjb25zdCB7IHByb2R1Y3RJZHMsIHRvdGFsUmVzdWx0LCBsaW1pdHMsIGZpbHRlcnMsIGZpZWxkc0hlbHBlciB9ID0gcGFyYW1zXHJcbiAgICAvLyBjb25zdCBkZWZhdWx0R2VuZGVyID0gZmlsdGVycz8uZ2VuZGVyPy5hdCgwKSB8fCAnbWFsZSdcclxuICAgIGNvbnN0IHN0b2NrRGF0YSA9IHRvdGFsUmVzdWx0LmRhdGEuZmlsdGVyKChwcm9kdWN0OiBhbnkpID0+IHByb2R1Y3Quc3RvY2sucXVhbnRpdHkgPiAwKVxyXG4gICAgY29uc3Qgc3RvY2tPdXQgPSB0b3RhbFJlc3VsdC5kYXRhLmZpbHRlcigocHJvZHVjdDogYW55KSA9PiBwcm9kdWN0LnN0b2NrLnF1YW50aXR5IDw9IDApXHJcbiAgICBjb25zdCBwcm9kdWN0SWRzU3RvY2sgPSBwcm9kdWN0SWRzLmZpbHRlcigocHJvZHVjdCkgPT4gc3RvY2tEYXRhLnNvbWUoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuaWQgPT09IHByb2R1Y3QpKVxyXG4gICAgY29uc3QgcHJvZHVjdElkc1N0b2NrT3V0ID0gcHJvZHVjdElkcy5maWx0ZXIoKHByb2R1Y3QpID0+IHN0b2NrT3V0LnNvbWUoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuaWQgPT09IHByb2R1Y3QpKVxyXG4gICAgY29uc3QgbGltaXRlZFByb2R1Y3RJZCA9IHByb2R1Y3RJZHNTdG9ja1xyXG4gICAgICAuY29uY2F0KHByb2R1Y3RJZHNTdG9ja091dClcclxuICAgICAgLnNsaWNlKGxpbWl0cy5vZmZzZXQsIGxpbWl0cy5vZmZzZXQgKyBsaW1pdHMubGltaXQpXHJcblxyXG4gICAgcmV0dXJuIHRoaXMuZ2V0RGV0YWlsZWRQcm9kdWN0cyhsaW1pdGVkUHJvZHVjdElkLCB0b3RhbFJlc3VsdCwgZmllbGRzSGVscGVyKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBnZXREZXRhaWxlZFByb2R1Y3RzKG9yZGVyZWRJZDogc3RyaW5nW10sIHRvdGFsUmVzdWx0OiBhbnksIGZpZWxkc0hlbHBlcjogYW55KSB7XHJcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxyXG4gICAgY29uc3QgZmllbGRzID0gZmllbGRzSGVscGVyLmdldFN0YW5kYXJkRmllbGRzKClcclxuICAgIGNvbnN0IHByb2R1Y3RSZXN1bHQgPSBhd2FpdCBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0UmVwb3NpdG9yeS5maW5kQ2F0YWxvZyh7XHJcbiAgICAgIGZpbHRlcnM6IHtcclxuICAgICAgICBpZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBvcmRlcmVkSWQgfSxcclxuICAgICAgfSxcclxuICAgICAgZmllbGRzLFxyXG4gICAgfSlcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBkYXRhOiBvcmRlcmVkSWQubWFwKChpZCkgPT4gcHJvZHVjdFJlc3VsdC5kYXRhLmZpbmQoKHByb2R1Y3QpID0+IHByb2R1Y3QuaWQgPT09IGlkKSkuZmlsdGVyKEJvb2xlYW4pLFxyXG4gICAgICBjb3VudDogdG90YWxSZXN1bHQuY291bnQsXHJcbiAgICAgIG1heGltdW06IHRvdGFsUmVzdWx0Lm1heGltdW0sXHJcbiAgICAgIG1pbmltYWw6IHRvdGFsUmVzdWx0Lm1pbmltYWwsXHJcbiAgICAgIGRpc3RpbmN0OiB0b3RhbFJlc3VsdC5kaXN0aW5jdCxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgZmluZENhdGFsb2dJZHNCeVNlYXJjaCh0ZXJtOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xyXG4gICAgaWYgKHRoaXMucHJvZHVjdHNCeVRlcm1bdGVybV0pIHJldHVybiB0aGlzLnByb2R1Y3RzQnlUZXJtW3Rlcm1dXHJcblxyXG4gICAgY29uc3QgcHJvZHVjdFNlcnZpY2VzID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZS5nZXRQcm9kdWN0U2VydmljZXMoKVxyXG5cclxuICAgIHJldHVybiAodGhpcy5wcm9kdWN0c0J5VGVybVt0ZXJtXSA9IGF3YWl0IHByb2R1Y3RTZXJ2aWNlcy5wcm9kdWN0U2VhcmNoXHJcbiAgICAgIC5zZWFyY2g8UHJvZHVjdFNlYXJjaD4odGVybSwgOTk5LCBzaG9wID09PSBTaG9wcy5HTEFNU0hPUCA/ICdmZW1hbGUnIDogJ21hbGUnKVxyXG4gICAgICAudGhlbigocHJvZHVjdHMpID0+IFsuLi5uZXcgU2V0KHByb2R1Y3RzLm1hcCgocHJvZHVjdCkgPT4gcHJvZHVjdC5pZCkpXSkpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyYXRlZ3ktcGFyYW1zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy90eXBlcy9zdHJhdGVneS1wYXJhbXMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVwb3NpdG9yeUNhY2hlT3B0aW9ucywgU2hvcHMgfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcclxuXHJcbmV4cG9ydCB0eXBlIFNlYXJjaFdpdGhNb3N0UmVsZXZhbnRQYXJhbXMgPSB7XHJcbiAgY2F0ZWdvcnk6IGFueVxyXG4gIGZpbHRlcnM6IGFueVxyXG4gIGxpbWl0czogYW55XHJcbiAgc2hvcDogU2hvcHNcclxuICBtYWluR2VuZGVyOiBhbnlcclxuICBvcHRpb25zQ2FjaGU6IHsgY2FjaGU/OiBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zIH0gfCB1bmRlZmluZWRcclxuICBmaWVsZHM6IGFueVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBTZWFyY2hEZWZhdWx0UGFyYW1zID0ge1xyXG4gIGNhdGVnb3J5OiBhbnlcclxuICBmaWx0ZXJzOiBhbnlcclxuICBsaW1pdHM6IGFueVxyXG4gIHNob3A6IFNob3BzXHJcbiAgbWFpbkdlbmRlcjogYW55XHJcbiAgc29ydDogYW55XHJcbiAgb3B0aW9uc0NhY2hlOiB7IGNhY2hlPzogUmVwb3NpdG9yeUNhY2hlT3B0aW9ucyB9IHwgdW5kZWZpbmVkXHJcbiAgZmllbGRzOiBhbnlcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRmluZEFuZFNvcnRCeU1vc3RSZWxldmFudFBhcmFtcyA9IHtcclxuICBtb3N0UmVsZXZhbnRzOiBzdHJpbmdbXVxyXG4gIHByb2R1Y3RJZHM6IHN0cmluZ1tdXHJcbiAgZmlsdGVyczogYW55XHJcbiAgbGltaXRzOiBhbnlcclxuICBzaG9wOiBTaG9wc1xyXG4gIG1haW5HZW5kZXI6IGFueVxyXG4gIG9wdGlvbnNDYWNoZTogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSB8IHVuZGVmaW5lZFxyXG4gIGZpZWxkczogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRlcm1TZWFyY2hNb3N0UmVsZXZhbnRQYXJhbXMgPSB7XHJcbiAgcHJvZHVjdElkczogc3RyaW5nW11cclxuICBmaWx0ZXJzOiBhbnlcclxuICBsaW1pdHM6IGFueVxyXG4gIG1haW5HZW5kZXI6IGFueVxyXG4gIHNob3A6IFNob3BzXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRlcm1TZWFyY2hEZWZhdWx0UGFyYW1zID0ge1xyXG4gIHByb2R1Y3RJZHM6IHN0cmluZ1tdXHJcbiAgZmlsdGVyczogYW55XHJcbiAgbGltaXRzOiBhbnlcclxuICBtYWluR2VuZGVyOiBhbnlcclxuICBzaG9wOiBTaG9wc1xyXG4gIGZpZWxkczogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFNvcnRCeVRlcm1SZWxldmFuY2VQYXJhbXMgPSB7XHJcbiAgcHJvZHVjdElkczogc3RyaW5nW11cclxuICB0b3RhbFJlc3VsdDogYW55XHJcbiAgbGltaXRzOiBhbnlcclxuICBmaWx0ZXJzOiBhbnlcclxuICBmaWVsZHNIZWxwZXI6IGFueVxyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtb3B0aW9ucy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3R5cGVzL2ZldGNoLXByb2R1Y3RzLW9wdGlvbnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdEdlbmRlciB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBQcm9kdWN0U29ydCB9IGZyb20gJy4vcHJvZHVjdC1zb3J0LnR5cGUnXG5cbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNPcHRpb25zID0ge1xuICBwYWdlPzogbnVtYmVyXG4gIHBlclBhZ2U/OiBudW1iZXJcbiAgc29ydD86IFByb2R1Y3RTb3J0XG4gIG1haW5HZW5kZXI/OiBQcm9kdWN0R2VuZGVyXG59XG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtb3B0aW9ucy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3R5cGVzL2ZldGNoLXByb2R1Y3RzLW9wdGlvbnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdEdlbmRlciB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xyXG5cclxuaW1wb3J0IHsgUHJvZHVjdFNvcnQgfSBmcm9tICcuL3Byb2R1Y3Qtc29ydC50eXBlJ1xyXG5cclxuZXhwb3J0IHR5cGUgRmV0Y2hQcm9kdWN0c09wdGlvbnMgPSB7XHJcbiAgcGFnZT86IG51bWJlclxyXG4gIHBlclBhZ2U/OiBudW1iZXJcclxuICBzb3J0PzogUHJvZHVjdFNvcnRcclxuICBtYWluR2VuZGVyPzogUHJvZHVjdEdlbmRlclxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtcGFyYW1zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvZmV0Y2gtcHJvZHVjdHMtcGFyYW1zLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nRmlsdGVycyB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnXHJcblxyXG5pbXBvcnQgeyBGZXRjaFByb2R1Y3RzT3B0aW9ucyB9IGZyb20gJy4vZmV0Y2gtcHJvZHVjdHMtb3B0aW9ucy50eXBlJ1xyXG5cclxuZXhwb3J0IHR5cGUgRmV0Y2hQcm9kdWN0c01haW5QYXJhbXM8VCBleHRlbmRzIENhdGVnb3J5PiA9IHtcclxuICBjYXRlZ29yeT86IFRcclxuICBwcm9maWxlPzogc3RyaW5nW11cclxuICB0ZXJtPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNQYXJhbXM8VCBleHRlbmRzIENhdGVnb3J5PiA9IEZldGNoUHJvZHVjdHNPcHRpb25zICZcclxuICAoXHJcbiAgICB8IHtcclxuICAgICAgICBjYXRlZ29yeTogRmV0Y2hQcm9kdWN0c01haW5QYXJhbXM8VD5bJ2NhdGVnb3J5J11cclxuICAgICAgICBmaWx0ZXJzPzogQ2F0YWxvZ0ZpbHRlcnMgJiB7IGN1c3RvbU9wdGlvbnM/OiBuZXZlciB9XHJcbiAgICAgIH1cclxuICAgIHwge1xyXG4gICAgICAgIHByb2ZpbGU6IEZldGNoUHJvZHVjdHNNYWluUGFyYW1zPFQ+Wydwcm9maWxlJ11cclxuICAgICAgICBmaWx0ZXJzPzogQ2F0YWxvZ0ZpbHRlcnMgJiB7IGN1c3RvbU9wdGlvbnM/OiBuZXZlcjsgdGFncz86IG5ldmVyIH1cclxuICAgICAgfVxyXG4gICAgfCB7XHJcbiAgICAgICAgdGVybTogRmV0Y2hQcm9kdWN0c01haW5QYXJhbXM8VD5bJ3Rlcm0nXVxyXG4gICAgICAgIGZpbHRlcnM/OiBDYXRhbG9nRmlsdGVycyAmIHsgY3VzdG9tT3B0aW9ucz86IG5ldmVyIH1cclxuICAgICAgfVxyXG4gIClcclxuIl19
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtcmVzcG9uc2UudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy90eXBlcy9mZXRjaC1wcm9kdWN0cy1yZXNwb25zZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNSZXNwb25zZSA9IHtcbiAgcHJvZHVjdHM6IHsgZGF0YTogUHJvZHVjdFtdOyB0b3RhbDogbnVtYmVyIH1cbiAgcGFnZXM6IG51bWJlclxuICBwcmljZXM6IHtcbiAgICBwcmljZTogeyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfVxuICAgIHN1YnNjcmliZXJQcmljZTogeyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfVxuICB9XG4gIGJyYW5kcz86IHN0cmluZ1tdXG59XG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtcmVzcG9uc2UudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy90eXBlcy9mZXRjaC1wcm9kdWN0cy1yZXNwb25zZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5leHBvcnQgdHlwZSBGZXRjaFByb2R1Y3RzUmVzcG9uc2UgPSB7XHJcbiAgcHJvZHVjdHM6IHsgZGF0YTogUHJvZHVjdFtdOyB0b3RhbDogbnVtYmVyIH1cclxuICBwYWdlczogbnVtYmVyXHJcbiAgcHJpY2VzOiB7XHJcbiAgICBwcmljZTogeyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfVxyXG4gICAgc3Vic2NyaWJlclByaWNlOiB7IG1pbjogbnVtYmVyOyBtYXg6IG51bWJlciB9XHJcbiAgfVxyXG4gIGJyYW5kcz86IHN0cmluZ1tdXHJcbn1cclxuIl19
@@ -1,6 +1,6 @@
1
- export * from './fetch-products-options.type';
2
- export * from './fetch-products-params.type';
3
- export * from './fetch-products-response.type';
4
- export * from './method-params.type';
5
- export * from './product-sort.type';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUE7QUFDOUMsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLHFCQUFxQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mZXRjaC1wcm9kdWN0cy1vcHRpb25zLnR5cGUnXG5leHBvcnQgKiBmcm9tICcuL2ZldGNoLXByb2R1Y3RzLXBhcmFtcy50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9mZXRjaC1wcm9kdWN0cy1yZXNwb25zZS50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9tZXRob2QtcGFyYW1zLnR5cGUnXG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3Qtc29ydC50eXBlJ1xuIl19
1
+ export * from './fetch-products-options.type';
2
+ export * from './fetch-products-params.type';
3
+ export * from './fetch-products-response.type';
4
+ export * from './method-params.type';
5
+ export * from './product-sort.type';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUE7QUFDOUMsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLHFCQUFxQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mZXRjaC1wcm9kdWN0cy1vcHRpb25zLnR5cGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vZmV0Y2gtcHJvZHVjdHMtcGFyYW1zLnR5cGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vZmV0Y2gtcHJvZHVjdHMtcmVzcG9uc2UudHlwZSdcclxuZXhwb3J0ICogZnJvbSAnLi9tZXRob2QtcGFyYW1zLnR5cGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC1zb3J0LnR5cGUnXHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0aG9kLXBhcmFtcy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3R5cGVzL21ldGhvZC1wYXJhbXMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2F0ZWdvcnksIFByb2R1Y3QsIFNob3BzIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXHJcblxyXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcclxuXHJcbmltcG9ydCB7IEZldGNoUHJvZHVjdHNQYXJhbXMgfSBmcm9tICcuL2ZldGNoLXByb2R1Y3RzLXBhcmFtcy50eXBlJ1xyXG5cclxuZXhwb3J0IHR5cGUgU3RvY2tOb3RpZmljYXRpb25QYXJhbXMgPSB7XHJcbiAgc2hvcDogU2hvcHNcclxuICBwcm9kdWN0SWQ6IHN0cmluZ1xyXG4gIG5hbWU6IHN0cmluZ1xyXG4gIGVtYWlsOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQnVpbGRSZXNwb25zZVBhcmFtczxUIGV4dGVuZHMgQ2F0ZWdvcnkgPSBDYXRlZ29yeT4gPSB7XHJcbiAgZGF0YTogUHJvZHVjdFtdXHJcbiAgdG90YWw6IG51bWJlclxyXG4gIG1heGltdW06IGFueVxyXG4gIG1pbmltYWw6IGFueVxyXG4gIHNlYXJjaFBhcmFtczogQ2F0YWxvZ1NlYXJjaFBhcmFtc1xyXG4gIG9wdGlvbnM6IEZldGNoUHJvZHVjdHNQYXJhbXM8VD5cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zb3J0LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvcHJvZHVjdC1zb3J0LnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RTb3J0cyB9IGZyb20gJy4uL2VudW1zJ1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0U29ydCA9IGAke1Byb2R1Y3RTb3J0c31gXG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zb3J0LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvcHJvZHVjdC1zb3J0LnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RTb3J0cyB9IGZyb20gJy4uL2VudW1zJ1xyXG5cclxuZXhwb3J0IHR5cGUgUHJvZHVjdFNvcnQgPSBgJHtQcm9kdWN0U29ydHN9YFxyXG4iXX0=