@infrab4a/connect-angular 5.8.12-alpha.0 → 5.8.12

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 (301) hide show
  1. package/eslint.config.js +18 -0
  2. package/index.ts +1 -0
  3. package/karma.conf.js +32 -0
  4. package/ng-package.json +8 -0
  5. package/package.json +4 -24
  6. package/project.json +37 -0
  7. package/src/angular-connect.module.ts +270 -0
  8. package/src/angular-elastic-search.module.ts +23 -0
  9. package/src/angular-firebase-auth.module.ts +101 -0
  10. package/src/angular-firestore.module.ts +416 -0
  11. package/src/angular-hasura-graphql.module.ts +269 -0
  12. package/src/angular-vertex-search.module.ts +23 -0
  13. package/src/consts/backend-url.const.ts +1 -0
  14. package/src/consts/category-structure.ts +1 -0
  15. package/src/consts/default-shop.const.ts +1 -0
  16. package/src/consts/es-config.const.ts +1 -0
  17. package/src/consts/firebase-const.ts +5 -0
  18. package/src/consts/hasura-options.const.ts +1 -0
  19. package/src/consts/index.ts +8 -0
  20. package/src/consts/persistence.const.ts +1 -0
  21. package/src/consts/storage-base-url.const.ts +1 -0
  22. package/src/consts/vertex-config.const.ts +1 -0
  23. package/src/helpers/index.ts +1 -0
  24. package/src/helpers/mobile-operation-system-checker.helper.ts +10 -0
  25. package/src/index.ts +6 -0
  26. package/src/interfaces/catalog-strategies.interface.ts +36 -0
  27. package/src/interfaces/category-facades.interface.ts +7 -0
  28. package/src/interfaces/index.ts +2 -0
  29. package/src/persistence/cookie-data-persistence.ts +21 -0
  30. package/src/persistence/data-persistence.ts +7 -0
  31. package/src/persistence/index.ts +2 -0
  32. package/src/services/auth.service.ts +39 -0
  33. package/src/services/cart/cart-services.facade.ts +14 -0
  34. package/src/services/cart/index.ts +1 -0
  35. package/src/services/cart.service.ts +148 -0
  36. package/src/services/catalog/adapters/category-structure.adapter.ts +5 -0
  37. package/src/services/catalog/adapters/index.ts +3 -0
  38. package/src/services/catalog/adapters/new-category-structure.adapter.ts +42 -0
  39. package/src/services/catalog/adapters/old-category-structure.adapter.ts +17 -0
  40. package/src/services/catalog/catalog.service.ts +153 -0
  41. package/src/services/catalog/category.service.ts +56 -0
  42. package/src/services/catalog/context/catalog-search.context.ts +59 -0
  43. package/src/services/catalog/enums/index.ts +1 -0
  44. package/src/services/catalog/enums/product-sorts.enum.ts +9 -0
  45. package/src/services/catalog/facades/catalog-service.facade.ts +32 -0
  46. package/src/services/catalog/facades/catalog-strategies.facade.ts +12 -0
  47. package/src/services/catalog/facades/category-repository.facade.ts +10 -0
  48. package/src/services/catalog/facades/category-service.facade.ts +25 -0
  49. package/{services/catalog/facades/index.d.ts → src/services/catalog/facades/index.ts} +5 -5
  50. package/src/services/catalog/facades/product-catalog.facade.ts +13 -0
  51. package/src/services/catalog/helpers/brand-manager.helper.ts +69 -0
  52. package/src/services/catalog/helpers/catalog-filter.helper.ts +50 -0
  53. package/src/services/catalog/helpers/catalog-sort.helper.ts +54 -0
  54. package/src/services/catalog/helpers/index.ts +4 -0
  55. package/src/services/catalog/helpers/product-fields.helper.ts +39 -0
  56. package/src/services/catalog/index.ts +7 -0
  57. package/src/services/catalog/models/category-with-tree.model.ts +7 -0
  58. package/src/services/catalog/models/index.ts +1 -0
  59. package/src/services/catalog/services/catalog-helpers.service.ts +35 -0
  60. package/src/services/catalog/services/catalog-operations.facade.ts +24 -0
  61. package/src/services/catalog/services/catalog-repository.service.ts +20 -0
  62. package/{services/catalog/services/index.d.ts → src/services/catalog/services/index.ts} +4 -4
  63. package/src/services/catalog/services/product-management.facade.ts +20 -0
  64. package/src/services/catalog/strategies/category-search.strategy.ts +168 -0
  65. package/src/services/catalog/strategies/index.ts +3 -0
  66. package/src/services/catalog/strategies/profile-search.strategy.ts +51 -0
  67. package/src/services/catalog/strategies/term-search.strategy.ts +163 -0
  68. package/src/services/catalog/strategies/types/strategy-params.type.ts +59 -0
  69. package/src/services/catalog/types/fetch-products-options.type.ts +10 -0
  70. package/src/services/catalog/types/fetch-products-params.type.ts +27 -0
  71. package/src/services/catalog/types/fetch-products-response.type.ts +11 -0
  72. package/src/services/catalog/types/index.ts +5 -0
  73. package/src/services/catalog/types/method-params.type.ts +21 -0
  74. package/src/services/catalog/types/product-sort.type.ts +3 -0
  75. package/src/services/catalog/wishlist.service.ts +364 -0
  76. package/src/services/checkout/checkout-dependencies.facade.ts +13 -0
  77. package/src/services/checkout/checkout-repositories.facade.ts +10 -0
  78. package/{services/checkout/index.d.ts → src/services/checkout/index.ts} +2 -2
  79. package/src/services/checkout-subscription.service.ts +76 -0
  80. package/src/services/checkout.service.ts +236 -0
  81. package/src/services/coupon/coupon-repositories.facade.ts +11 -0
  82. package/{services/coupon/index.d.ts → src/services/coupon/index.ts} +1 -1
  83. package/src/services/coupon/types/coupon-params.type.ts +15 -0
  84. package/src/services/coupon.service.ts +347 -0
  85. package/src/services/errors/group-invalid-coupon.error.ts +9 -0
  86. package/src/services/errors/index.ts +2 -0
  87. package/src/services/errors/invalid-coupon.error.ts +7 -0
  88. package/src/services/helpers/index.ts +1 -0
  89. package/src/services/helpers/util.helper.ts +17 -0
  90. package/src/services/home-shop/home-shop-repositories.facade.ts +11 -0
  91. package/{services/home-shop/index.d.ts → src/services/home-shop/index.ts} +1 -1
  92. package/src/services/home-shop.service.ts +210 -0
  93. package/src/services/index.ts +12 -0
  94. package/src/services/order-product-review.service.ts +135 -0
  95. package/src/services/order-recurrence.service.ts +121 -0
  96. package/src/services/order.service.ts +23 -0
  97. package/src/services/shared/configuration.facade.ts +21 -0
  98. package/src/services/shared/index.ts +1 -0
  99. package/src/services/types/index.ts +4 -0
  100. package/src/services/types/pending-product-review.type.ts +12 -0
  101. package/src/services/types/product-review-create.type.ts +15 -0
  102. package/src/services/types/required-checkout-data.type.ts +3 -0
  103. package/src/services/types/required-checkout-subscription-data.type.ts +3 -0
  104. package/src/types/firebase-app-config.type.ts +1 -0
  105. package/src/types/index.ts +1 -0
  106. package/tsconfig.json +17 -0
  107. package/tsconfig.lib.json +13 -0
  108. package/tsconfig.lib.prod.json +13 -0
  109. package/tsconfig.spec.json +17 -0
  110. package/angular-connect.module.d.ts +0 -36
  111. package/angular-elastic-search.module.d.ts +0 -9
  112. package/angular-firebase-auth.module.d.ts +0 -11
  113. package/angular-firestore.module.d.ts +0 -17
  114. package/angular-hasura-graphql.module.d.ts +0 -14
  115. package/angular-vertex-search.module.d.ts +0 -9
  116. package/consts/backend-url.const.d.ts +0 -1
  117. package/consts/category-structure.d.ts +0 -1
  118. package/consts/default-shop.const.d.ts +0 -1
  119. package/consts/es-config.const.d.ts +0 -1
  120. package/consts/firebase-const.d.ts +0 -4
  121. package/consts/hasura-options.const.d.ts +0 -1
  122. package/consts/index.d.ts +0 -8
  123. package/consts/persistence.const.d.ts +0 -1
  124. package/consts/storage-base-url.const.d.ts +0 -1
  125. package/consts/vertex-config.const.d.ts +0 -1
  126. package/esm2020/angular-connect.module.mjs +0 -293
  127. package/esm2020/angular-elastic-search.module.mjs +0 -34
  128. package/esm2020/angular-firebase-auth.module.mjs +0 -141
  129. package/esm2020/angular-firestore.module.mjs +0 -611
  130. package/esm2020/angular-hasura-graphql.module.mjs +0 -421
  131. package/esm2020/angular-vertex-search.module.mjs +0 -34
  132. package/esm2020/consts/backend-url.const.mjs +0 -2
  133. package/esm2020/consts/category-structure.mjs +0 -2
  134. package/esm2020/consts/default-shop.const.mjs +0 -2
  135. package/esm2020/consts/es-config.const.mjs +0 -2
  136. package/esm2020/consts/firebase-const.mjs +0 -5
  137. package/esm2020/consts/hasura-options.const.mjs +0 -2
  138. package/esm2020/consts/index.mjs +0 -9
  139. package/esm2020/consts/persistence.const.mjs +0 -2
  140. package/esm2020/consts/storage-base-url.const.mjs +0 -2
  141. package/esm2020/consts/vertex-config.const.mjs +0 -2
  142. package/esm2020/helpers/index.mjs +0 -2
  143. package/esm2020/helpers/mobile-operation-system-checker.helper.mjs +0 -7
  144. package/esm2020/index.mjs +0 -7
  145. package/esm2020/infrab4a-connect-angular.mjs +0 -5
  146. package/esm2020/interfaces/catalog-strategies.interface.mjs +0 -2
  147. package/esm2020/interfaces/category-facades.interface.mjs +0 -2
  148. package/esm2020/interfaces/index.mjs +0 -3
  149. package/esm2020/persistence/cookie-data-persistence.mjs +0 -22
  150. package/esm2020/persistence/data-persistence.mjs +0 -2
  151. package/esm2020/persistence/index.mjs +0 -3
  152. package/esm2020/services/auth.service.mjs +0 -37
  153. package/esm2020/services/cart/cart-services.facade.mjs +0 -21
  154. package/esm2020/services/cart/index.mjs +0 -2
  155. package/esm2020/services/cart.service.mjs +0 -84
  156. package/esm2020/services/catalog/adapters/category-structure.adapter.mjs +0 -2
  157. package/esm2020/services/catalog/adapters/index.mjs +0 -4
  158. package/esm2020/services/catalog/adapters/new-category-structure.adapter.mjs +0 -43
  159. package/esm2020/services/catalog/adapters/old-category-structure.adapter.mjs +0 -23
  160. package/esm2020/services/catalog/catalog.service.mjs +0 -111
  161. package/esm2020/services/catalog/category.service.mjs +0 -42
  162. package/esm2020/services/catalog/context/catalog-search.context.mjs +0 -40
  163. package/esm2020/services/catalog/enums/index.mjs +0 -2
  164. package/esm2020/services/catalog/enums/product-sorts.enum.mjs +0 -11
  165. package/esm2020/services/catalog/facades/catalog-service.facade.mjs +0 -32
  166. package/esm2020/services/catalog/facades/catalog-strategies.facade.mjs +0 -17
  167. package/esm2020/services/catalog/facades/category-repository.facade.mjs +0 -20
  168. package/esm2020/services/catalog/facades/category-service.facade.mjs +0 -30
  169. package/esm2020/services/catalog/facades/index.mjs +0 -6
  170. package/esm2020/services/catalog/facades/product-catalog.facade.mjs +0 -21
  171. package/esm2020/services/catalog/helpers/brand-manager.helper.mjs +0 -62
  172. package/esm2020/services/catalog/helpers/catalog-filter.helper.mjs +0 -44
  173. package/esm2020/services/catalog/helpers/catalog-sort.helper.mjs +0 -52
  174. package/esm2020/services/catalog/helpers/index.mjs +0 -5
  175. package/esm2020/services/catalog/helpers/product-fields.helper.mjs +0 -43
  176. package/esm2020/services/catalog/index.mjs +0 -8
  177. package/esm2020/services/catalog/models/category-with-tree.model.mjs +0 -10
  178. package/esm2020/services/catalog/models/index.mjs +0 -2
  179. package/esm2020/services/catalog/services/catalog-helpers.service.mjs +0 -33
  180. package/esm2020/services/catalog/services/catalog-operations.facade.mjs +0 -26
  181. package/esm2020/services/catalog/services/catalog-repository.service.mjs +0 -25
  182. package/esm2020/services/catalog/services/index.mjs +0 -5
  183. package/esm2020/services/catalog/services/product-management.facade.mjs +0 -25
  184. package/esm2020/services/catalog/strategies/category-search.strategy.mjs +0 -133
  185. package/esm2020/services/catalog/strategies/index.mjs +0 -4
  186. package/esm2020/services/catalog/strategies/profile-search.strategy.mjs +0 -42
  187. package/esm2020/services/catalog/strategies/term-search.strategy.mjs +0 -126
  188. package/esm2020/services/catalog/strategies/types/strategy-params.type.mjs +0 -2
  189. package/esm2020/services/catalog/types/fetch-products-options.type.mjs +0 -2
  190. package/esm2020/services/catalog/types/fetch-products-params.type.mjs +0 -2
  191. package/esm2020/services/catalog/types/fetch-products-response.type.mjs +0 -2
  192. package/esm2020/services/catalog/types/index.mjs +0 -6
  193. package/esm2020/services/catalog/types/method-params.type.mjs +0 -2
  194. package/esm2020/services/catalog/types/product-sort.type.mjs +0 -2
  195. package/esm2020/services/catalog/wishlist.service.mjs +0 -258
  196. package/esm2020/services/checkout/checkout-dependencies.facade.mjs +0 -20
  197. package/esm2020/services/checkout/checkout-repositories.facade.mjs +0 -20
  198. package/esm2020/services/checkout/index.mjs +0 -3
  199. package/esm2020/services/checkout-subscription.service.mjs +0 -55
  200. package/esm2020/services/checkout.service.mjs +0 -131
  201. package/esm2020/services/coupon/coupon-repositories.facade.mjs +0 -24
  202. package/esm2020/services/coupon/index.mjs +0 -2
  203. package/esm2020/services/coupon/types/coupon-params.type.mjs +0 -2
  204. package/esm2020/services/coupon.service.mjs +0 -248
  205. package/esm2020/services/helpers/index.mjs +0 -2
  206. package/esm2020/services/helpers/util.helper.mjs +0 -18
  207. package/esm2020/services/home-shop/home-shop-repositories.facade.mjs +0 -24
  208. package/esm2020/services/home-shop/index.mjs +0 -2
  209. package/esm2020/services/home-shop.service.mjs +0 -130
  210. package/esm2020/services/index.mjs +0 -12
  211. package/esm2020/services/order-product-review.service.mjs +0 -126
  212. package/esm2020/services/order-recurrence.service.mjs +0 -76
  213. package/esm2020/services/order.service.mjs +0 -30
  214. package/esm2020/services/shared/configuration.facade.mjs +0 -29
  215. package/esm2020/services/shared/index.mjs +0 -2
  216. package/esm2020/services/types/index.mjs +0 -5
  217. package/esm2020/services/types/pending-product-review.type.mjs +0 -2
  218. package/esm2020/services/types/product-review-create.type.mjs +0 -2
  219. package/esm2020/services/types/required-checkout-data.type.mjs +0 -2
  220. package/esm2020/services/types/required-checkout-subscription-data.type.mjs +0 -2
  221. package/esm2020/types/firebase-app-config.type.mjs +0 -2
  222. package/esm2020/types/index.mjs +0 -2
  223. package/fesm2015/infrab4a-connect-angular.mjs +0 -3786
  224. package/fesm2015/infrab4a-connect-angular.mjs.map +0 -1
  225. package/fesm2020/infrab4a-connect-angular.mjs +0 -3688
  226. package/fesm2020/infrab4a-connect-angular.mjs.map +0 -1
  227. package/helpers/index.d.ts +0 -1
  228. package/helpers/mobile-operation-system-checker.helper.d.ts +0 -3
  229. package/index.d.ts +0 -6
  230. package/interfaces/catalog-strategies.interface.d.ts +0 -31
  231. package/interfaces/category-facades.interface.d.ts +0 -6
  232. package/interfaces/index.d.ts +0 -2
  233. package/persistence/cookie-data-persistence.d.ts +0 -10
  234. package/persistence/data-persistence.d.ts +0 -6
  235. package/persistence/index.d.ts +0 -2
  236. package/services/auth.service.d.ts +0 -18
  237. package/services/cart/cart-services.facade.d.ts +0 -12
  238. package/services/cart/index.d.ts +0 -1
  239. package/services/cart.service.d.ts +0 -27
  240. package/services/catalog/adapters/category-structure.adapter.d.ts +0 -4
  241. package/services/catalog/adapters/index.d.ts +0 -3
  242. package/services/catalog/adapters/new-category-structure.adapter.d.ts +0 -12
  243. package/services/catalog/adapters/old-category-structure.adapter.d.ts +0 -10
  244. package/services/catalog/catalog.service.d.ts +0 -24
  245. package/services/catalog/category.service.d.ts +0 -23
  246. package/services/catalog/context/catalog-search.context.d.ts +0 -14
  247. package/services/catalog/enums/index.d.ts +0 -1
  248. package/services/catalog/enums/product-sorts.enum.d.ts +0 -9
  249. package/services/catalog/facades/catalog-service.facade.d.ts +0 -15
  250. package/services/catalog/facades/catalog-strategies.facade.d.ts +0 -10
  251. package/services/catalog/facades/category-repository.facade.d.ts +0 -9
  252. package/services/catalog/facades/category-service.facade.d.ts +0 -15
  253. package/services/catalog/facades/product-catalog.facade.d.ts +0 -10
  254. package/services/catalog/helpers/brand-manager.helper.d.ts +0 -14
  255. package/services/catalog/helpers/catalog-filter.helper.d.ts +0 -8
  256. package/services/catalog/helpers/catalog-sort.helper.d.ts +0 -7
  257. package/services/catalog/helpers/index.d.ts +0 -4
  258. package/services/catalog/helpers/product-fields.helper.d.ts +0 -7
  259. package/services/catalog/index.d.ts +0 -7
  260. package/services/catalog/models/category-with-tree.model.d.ts +0 -4
  261. package/services/catalog/models/index.d.ts +0 -1
  262. package/services/catalog/services/catalog-helpers.service.d.ts +0 -17
  263. package/services/catalog/services/catalog-operations.facade.d.ts +0 -13
  264. package/services/catalog/services/catalog-repository.service.d.ts +0 -12
  265. package/services/catalog/services/product-management.facade.d.ts +0 -12
  266. package/services/catalog/strategies/category-search.strategy.d.ts +0 -19
  267. package/services/catalog/strategies/index.d.ts +0 -3
  268. package/services/catalog/strategies/profile-search.strategy.d.ts +0 -14
  269. package/services/catalog/strategies/term-search.strategy.d.ts +0 -20
  270. package/services/catalog/strategies/types/strategy-params.type.d.ts +0 -59
  271. package/services/catalog/types/fetch-products-options.type.d.ts +0 -8
  272. package/services/catalog/types/fetch-products-params.type.d.ts +0 -25
  273. package/services/catalog/types/fetch-products-response.type.d.ts +0 -19
  274. package/services/catalog/types/index.d.ts +0 -5
  275. package/services/catalog/types/method-params.type.d.ts +0 -17
  276. package/services/catalog/types/product-sort.type.d.ts +0 -2
  277. package/services/catalog/wishlist.service.d.ts +0 -60
  278. package/services/checkout/checkout-dependencies.facade.d.ts +0 -10
  279. package/services/checkout/checkout-repositories.facade.d.ts +0 -9
  280. package/services/checkout-subscription.service.d.ts +0 -19
  281. package/services/checkout.service.d.ts +0 -33
  282. package/services/coupon/coupon-repositories.facade.d.ts +0 -10
  283. package/services/coupon/types/coupon-params.type.d.ts +0 -13
  284. package/services/coupon.service.d.ts +0 -36
  285. package/services/helpers/index.d.ts +0 -1
  286. package/services/helpers/util.helper.d.ts +0 -3
  287. package/services/home-shop/home-shop-repositories.facade.d.ts +0 -10
  288. package/services/home-shop.service.d.ts +0 -34
  289. package/services/index.d.ts +0 -11
  290. package/services/order-product-review.service.d.ts +0 -18
  291. package/services/order-recurrence.service.d.ts +0 -25
  292. package/services/order.service.d.ts +0 -13
  293. package/services/shared/configuration.facade.d.ts +0 -12
  294. package/services/shared/index.d.ts +0 -1
  295. package/services/types/index.d.ts +0 -4
  296. package/services/types/pending-product-review.type.d.ts +0 -12
  297. package/services/types/product-review-create.type.d.ts +0 -14
  298. package/services/types/required-checkout-data.type.d.ts +0 -2
  299. package/services/types/required-checkout-subscription-data.type.d.ts +0 -2
  300. package/types/firebase-app-config.type.d.ts +0 -1
  301. package/types/index.d.ts +0 -1
@@ -1,133 +0,0 @@
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.productCatalogRepository.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.productCatalogRepository
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.productCatalogRepository.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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RSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDdEYsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLElBQUk7YUFDbEMsTUFBTSxDQUFDLENBQUMsT0FBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzdELE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ25DLE1BQU0scUJBQXFCLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNoRSxNQUFNLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUU1RixPQUFPO1lBQ0wsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTztZQUM1QixPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU87WUFDNUIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRO1NBQy9CLENBQUE7SUFDSCxDQUFDOzttSEF6SlUsc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgaXNFbXB0eSwgUHJvZHVjdCwgUmVwb3NpdG9yeUNhY2hlT3B0aW9ucywgUmVwb3NpdG9yeUZpbmRSZXN1bHQsIFNob3BzLCBXaGVyZSB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zLCBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xuaW1wb3J0IHsgQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLCBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcydcblxuaW1wb3J0IHtcbiAgRmluZEFuZFNvcnRCeU1vc3RSZWxldmFudFBhcmFtcyxcbiAgU2VhcmNoRGVmYXVsdFBhcmFtcyxcbiAgU2VhcmNoV2l0aE1vc3RSZWxldmFudFBhcmFtcyxcbn0gZnJvbSAnLi90eXBlcy9zdHJhdGVneS1wYXJhbXMudHlwZSdcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENhdGVnb3J5U2VhcmNoU3RyYXRlZ3kgaW1wbGVtZW50cyBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlcG9zaXRvcnlTZXJ2aWNlOiBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBoZWxwZXJzU2VydmljZTogQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLFxuICApIHt9XG5cbiAgYXN5bmMgc2VhcmNoKFxuICAgIHBhcmFtczogQ2F0YWxvZ1NlYXJjaFBhcmFtcyxcbiAgICBzaG9wOiBTaG9wcyxcbiAgICBvcHRpb25zQ2FjaGU/OiB7IGNhY2hlPzogUmVwb3NpdG9yeUNhY2hlT3B0aW9ucyB9LFxuICApOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PFByb2R1Y3Q+PiB7XG4gICAgY29uc3QgeyBjYXRlZ29yeSwgZmlsdGVycywgbGltaXRzLCBzb3J0LCBtYWluR2VuZGVyIH0gPSBwYXJhbXNcblxuICAgIGlmICghY2F0ZWdvcnkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2F0ZWdvcnkgaXMgcmVxdWlyZWQgZm9yIENhdGVnb3J5U2VhcmNoU3RyYXRlZ3knKVxuICAgIH1cblxuICAgIGNvbnN0IGZpZWxkcyA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmllbGRzSGVscGVyKCkuZ2V0U3RhbmRhcmRGaWVsZHMoKVxuXG4gICAgaWYgKHNvcnQgPT09ICdtb3N0LXJlbGV2YW50Jykge1xuICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoV2l0aE1vc3RSZWxldmFudCh7XG4gICAgICAgIGNhdGVnb3J5LFxuICAgICAgICBmaWx0ZXJzLFxuICAgICAgICBsaW1pdHMsXG4gICAgICAgIHNob3AsXG4gICAgICAgIG1haW5HZW5kZXIsXG4gICAgICAgIG9wdGlvbnNDYWNoZSxcbiAgICAgICAgZmllbGRzLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zZWFyY2hEZWZhdWx0KHtcbiAgICAgIGNhdGVnb3J5LFxuICAgICAgZmlsdGVycyxcbiAgICAgIGxpbWl0cyxcbiAgICAgIHNob3AsXG4gICAgICBtYWluR2VuZGVyLFxuICAgICAgc29ydCxcbiAgICAgIG9wdGlvbnNDYWNoZSxcbiAgICAgIGZpZWxkcyxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZWFyY2hXaXRoTW9zdFJlbGV2YW50KHBhcmFtczogU2VhcmNoV2l0aE1vc3RSZWxldmFudFBhcmFtcykge1xuICAgIGNvbnN0IHsgY2F0ZWdvcnksIGZpbHRlcnMsIHNob3AsIG9wdGlvbnNDYWNoZSB9ID0gcGFyYW1zXG4gICAgY29uc3QgbW9zdFJlbGV2YW50ID0gY2F0ZWdvcnkuaXNXaXNobGlzdCA/IFtdIDogY2F0ZWdvcnkuZ2V0TW9zdFJlbGV2YW50QnlTaG9wKHNob3ApXG4gICAgY29uc3QgcHJvZHVjdHNJZHMgPSBhd2FpdCB0aGlzLmdldFByb2R1Y3RJZHMoY2F0ZWdvcnksIGZpbHRlcnMsIG9wdGlvbnNDYWNoZSlcblxuICAgIHJldHVybiB0aGlzLmZpbmRBbmRTb3J0QnlNb3N0UmVsZXZhbnQoe1xuICAgICAgbW9zdFJlbGV2YW50czogbW9zdFJlbGV2YW50LFxuICAgICAgcHJvZHVjdElkczogcHJvZHVjdHNJZHMsXG4gICAgICBmaWx0ZXJzOiBwYXJhbXMuZmlsdGVycyxcbiAgICAgIGxpbWl0czogcGFyYW1zLmxpbWl0cyxcbiAgICAgIHNob3A6IHBhcmFtcy5zaG9wLFxuICAgICAgbWFpbkdlbmRlcjogcGFyYW1zLm1haW5HZW5kZXIsXG4gICAgICBvcHRpb25zQ2FjaGU6IHBhcmFtcy5vcHRpb25zQ2FjaGUsXG4gICAgICBmaWVsZHM6IHBhcmFtcy5maWVsZHMsXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2VhcmNoRGVmYXVsdChwYXJhbXM6IFNlYXJjaERlZmF1bHRQYXJhbXMpIHtcbiAgICBjb25zdCB7IGNhdGVnb3J5LCBmaWx0ZXJzLCBsaW1pdHMsIHNvcnQsIG9wdGlvbnNDYWNoZSwgZmllbGRzIH0gPSBwYXJhbXNcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxuICAgIGNvbnN0IGZpbHRlckhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmlsdGVySGVscGVyKClcbiAgICBjb25zdCBzb3J0SGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRTb3J0SGVscGVyKClcblxuICAgIGNvbnN0IHJlcG9QYXJhbXMgPSB7XG4gICAgICBmaWVsZHMsXG4gICAgICBmaWx0ZXJzOiB7XG4gICAgICAgIC4uLihhd2FpdCBwcm9kdWN0Q2F0YWxvZy5jYXRlZ29yeVN0cnVjdHVyZUFkYXB0ZXIuYnVpbGRQcm9kdWN0RmlsdGVyQnlDYXRlZ29yeShjYXRlZ29yeSkpLFxuICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcbiAgICAgIH0sXG4gICAgICAuLi4oc29ydCA/IHsgb3JkZXJCeTogc29ydEhlbHBlci5idWlsZFNvcnRRdWVyeShzb3J0KSB9IDoge30pLFxuICAgICAgbGltaXRzLFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBtaW5pbWFsOiBbJ3ByaWNlJ10sXG4gICAgICAgIG1heGltdW06IFsncHJpY2UnXSxcbiAgICAgICAgZGlzdGluY3Q6IFsnYnJhbmQnXSxcbiAgICAgIH0sXG4gICAgfVxuXG4gICAgcmV0dXJuIHByb2R1Y3RDYXRhbG9nLnByb2R1Y3RDYXRhbG9nUmVwb3NpdG9yeS5maW5kQ2F0YWxvZyhyZXBvUGFyYW1zLCBudWxsLCBvcHRpb25zQ2FjaGUpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldFByb2R1Y3RJZHMoY2F0ZWdvcnk6IGFueSwgZmlsdGVyczogYW55LCBvcHRpb25zQ2FjaGU6IGFueSk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxuICAgIGNvbnN0IGZpbHRlckhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmlsdGVySGVscGVyKClcblxuICAgIHJldHVybiBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnlcbiAgICAgIC5maW5kQ2F0YWxvZyhcbiAgICAgICAge1xuICAgICAgICAgIGZpZWxkczogWydpZCddLFxuICAgICAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgICAgIC4uLihhd2FpdCBwcm9kdWN0Q2F0YWxvZy5jYXRlZ29yeVN0cnVjdHVyZUFkYXB0ZXIuYnVpbGRQcm9kdWN0RmlsdGVyQnlDYXRlZ29yeShjYXRlZ29yeSkpLFxuICAgICAgICAgICAgLi4uZmlsdGVySGVscGVyLmJ1aWxkRmlsdGVyUXVlcnkoZmlsdGVycyB8fCB7fSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBvcHRpb25zQ2FjaGUsXG4gICAgICApXG4gICAgICAudGhlbigocHJvZHVjdHMpID0+IHByb2R1Y3RzLmRhdGEubWFwKChwcm9kdWN0KSA9PiBwcm9kdWN0LmlkKSlcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZmluZEFuZFNvcnRCeU1vc3RSZWxldmFudChcbiAgICBwYXJhbXM6IEZpbmRBbmRTb3J0QnlNb3N0UmVsZXZhbnRQYXJhbXMsXG4gICk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcbiAgICBjb25zdCB7IG1vc3RSZWxldmFudHMsIHByb2R1Y3RJZHMsIGZpbHRlcnMsIHNob3AsIG1haW5HZW5kZXIsIG9wdGlvbnNDYWNoZSwgZmllbGRzLCBsaW1pdHMgfSA9IHBhcmFtc1xuICAgIGNvbnN0IHByb2R1Y3RDYXRhbG9nID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZS5nZXRQcm9kdWN0Q2F0YWxvZygpXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxuICAgIGNvbnN0IHNvcnRIZWxwZXIgPSB0aGlzLmhlbHBlcnNTZXJ2aWNlLmdldFNvcnRIZWxwZXIoKVxuXG4gICAgY29uc3QgbW9zdFJlbGV2YW50UHJvZHVjdHNJZHMgPSBbLi4ubmV3IFNldChtb3N0UmVsZXZhbnRzLmNvbmNhdChwcm9kdWN0SWRzKSldXG4gICAgY29uc3QgdG90YWxSZXN1bHQgPSBhd2FpdCBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnkuZmluZENhdGFsb2coXG4gICAgICB7XG4gICAgICAgIGZpZWxkcyxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIGlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IG1vc3RSZWxldmFudFByb2R1Y3RzSWRzIH0sXG4gICAgICAgICAgLi4uZmlsdGVySGVscGVyLmJ1aWxkRmlsdGVyUXVlcnkoZmlsdGVycyB8fCB7fSksXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGVyQnk6IHNvcnRIZWxwZXIuYnVpbGRTb3J0UXVlcnkoJ2Jlc3Qtc2VsbGVycycpLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgbWluaW1hbDogWydwcmljZSddLFxuICAgICAgICAgIG1heGltdW06IFsncHJpY2UnXSxcbiAgICAgICAgICAuLi4oaXNFbXB0eShmaWx0ZXJzPy5icmFuZHMpID8geyBkaXN0aW5jdDogWydicmFuZCddIH0gOiB7fSksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbWFpbkdlbmRlciB8fCAoc2hvcCA9PT0gU2hvcHMuTUVOU01BUktFVCA/ICdtYWxlJyA6ICdmZW1hbGUnKSxcbiAgICAgIG9wdGlvbnNDYWNoZSxcbiAgICApXG5cbiAgICByZXR1cm4gdGhpcy5zb3J0UHJvZHVjdHNCeVJlbGV2YW5jZSh0b3RhbFJlc3VsdCwgbW9zdFJlbGV2YW50cywgbGltaXRzKVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0UHJvZHVjdHNCeVJlbGV2YW5jZSh0b3RhbFJlc3VsdDogYW55LCBtb3N0UmVsZXZhbnRzOiBzdHJpbmdbXSwgbGltaXRzOiBhbnkpIHtcbiAgICBjb25zdCBtb3N0UmVsZXZhbnRXaXRob3V0U3RvY2sgPSB0b3RhbFJlc3VsdC5kYXRhLmZpbHRlcihcbiAgICAgIChwcm9kdWN0OiBhbnkpID0+IG1vc3RSZWxldmFudHMuaW5jbHVkZXMocHJvZHVjdC5pZCkgJiYgcHJvZHVjdC5zdG9jay5xdWFudGl0eSA8PSAwLFxuICAgIClcbiAgICBjb25zdCBmaXJzdFByb2R1Y3RzID0gdG90YWxSZXN1bHQuZGF0YVxuICAgICAgLmZpbHRlcigocHJvZHVjdDogYW55KSA9PiBtb3N0UmVsZXZhbnRzLmluY2x1ZGVzKHByb2R1Y3QuaWQpICYmIHByb2R1Y3Quc3RvY2sucXVhbnRpdHkgPiAwKVxuICAgICAgLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiBtb3N0UmVsZXZhbnRzLmluZGV4T2YoYS5pZCkgLSBtb3N0UmVsZXZhbnRzLmluZGV4T2YoYi5pZCkpXG4gICAgY29uc3QgbGFzdFByb2R1Y3RzID0gdG90YWxSZXN1bHQuZGF0YVxuICAgICAgLmZpbHRlcigocHJvZHVjdDogYW55KSA9PiAhbW9zdFJlbGV2YW50cy5pbmNsdWRlcyhwcm9kdWN0LmlkKSlcbiAgICAgIC5jb25jYXQobW9zdFJlbGV2YW50V2l0aG91dFN0b2NrKVxuICAgIGNvbnN0IGNhdGVnb3J5TW9zdFJlbGV2YW50cyA9IGZpcnN0UHJvZHVjdHMuY29uY2F0KGxhc3RQcm9kdWN0cylcbiAgICBjb25zdCByZXN1bHRGaW5hbCA9IGNhdGVnb3J5TW9zdFJlbGV2YW50cy5zbGljZShsaW1pdHMub2Zmc2V0LCBsaW1pdHMub2Zmc2V0ICsgbGltaXRzLmxpbWl0KVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGE6IHJlc3VsdEZpbmFsLFxuICAgICAgY291bnQ6IHRvdGFsUmVzdWx0LmNvdW50LFxuICAgICAgbWF4aW11bTogdG90YWxSZXN1bHQubWF4aW11bSxcbiAgICAgIG1pbmltYWw6IHRvdGFsUmVzdWx0Lm1pbmltYWwsXG4gICAgICBkaXN0aW5jdDogdG90YWxSZXN1bHQuZGlzdGluY3QsXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,4 +0,0 @@
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,42 +0,0 @@
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.productCatalogRepository.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zZWFyY2guc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy9wcm9maWxlLXNlYXJjaC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBeUQsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR3ZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7O0FBRzdFLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFDbUIsaUJBQTJDLEVBQzNDLGNBQXFDO1FBRHJDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQXVCO0lBQ3JELENBQUM7SUFFSixLQUFLLENBQUMsTUFBTSxDQUNWLE1BQTJCLEVBQzNCLElBQVcsRUFDWCxZQUFpRDtRQUVqRCxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQTtRQUU3RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFBO1NBQ2pFO1FBRUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDakUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUMxRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3RELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxFQUFFLENBQUE7UUFFMUQsTUFBTSxVQUFVLEdBQUc7WUFDakIsTUFBTSxFQUFFLFlBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QyxPQUFPLEVBQUU7Z0JBQ1AsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFDckQsR0FBRyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQzthQUNoRDtZQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdELE1BQU07WUFDTixPQUFPLEVBQUU7Z0JBQ1AsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNsQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xCLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUNwQjtTQUNGLENBQUE7UUFFRCxPQUFPLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLENBQ3hELFVBQVUsRUFDVixVQUFVLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDN0QsWUFBWSxDQUNiLENBQUE7SUFDSCxDQUFDOztrSEExQ1UscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUHJvZHVjdCwgUmVwb3NpdG9yeUNhY2hlT3B0aW9ucywgUmVwb3NpdG9yeUZpbmRSZXN1bHQsIFNob3BzLCBXaGVyZSB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBDYXRhbG9nU2VhcmNoUGFyYW1zLCBDYXRhbG9nU2VhcmNoU3RyYXRlZ3kgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xuaW1wb3J0IHsgQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLCBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcydcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFByb2ZpbGVTZWFyY2hTdHJhdGVneSBpbXBsZW1lbnRzIENhdGFsb2dTZWFyY2hTdHJhdGVneSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVwb3NpdG9yeVNlcnZpY2U6IENhdGFsb2dSZXBvc2l0b3J5U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhlbHBlcnNTZXJ2aWNlOiBDYXRhbG9nSGVscGVyc1NlcnZpY2UsXG4gICkge31cblxuICBhc3luYyBzZWFyY2goXG4gICAgcGFyYW1zOiBDYXRhbG9nU2VhcmNoUGFyYW1zLFxuICAgIHNob3A6IFNob3BzLFxuICAgIG9wdGlvbnNDYWNoZT86IHsgY2FjaGU/OiBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zIH0sXG4gICk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcbiAgICBjb25zdCB7IHByb2ZpbGUsIGZpbHRlcnMsIGxpbWl0cywgc29ydCwgbWFpbkdlbmRlciB9ID0gcGFyYW1zXG5cbiAgICBpZiAoIXByb2ZpbGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUHJvZmlsZSBpcyByZXF1aXJlZCBmb3IgUHJvZmlsZVNlYXJjaFN0cmF0ZWd5JylcbiAgICB9XG5cbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxuICAgIGNvbnN0IGZpbHRlckhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmlsdGVySGVscGVyKClcbiAgICBjb25zdCBzb3J0SGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRTb3J0SGVscGVyKClcbiAgICBjb25zdCBmaWVsZHNIZWxwZXIgPSB0aGlzLmhlbHBlcnNTZXJ2aWNlLmdldEZpZWxkc0hlbHBlcigpXG5cbiAgICBjb25zdCByZXBvUGFyYW1zID0ge1xuICAgICAgZmllbGRzOiBmaWVsZHNIZWxwZXIuZ2V0U3RhbmRhcmRGaWVsZHMoKSxcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgdGFnc1Byb2ZpbGU6IHsgb3BlcmF0b3I6IFdoZXJlLkxJS0UsIHZhbHVlOiBwcm9maWxlIH0sXG4gICAgICAgIC4uLmZpbHRlckhlbHBlci5idWlsZEZpbHRlclF1ZXJ5KGZpbHRlcnMgfHwge30pLFxuICAgICAgfSxcbiAgICAgIC4uLihzb3J0ID8geyBvcmRlckJ5OiBzb3J0SGVscGVyLmJ1aWxkU29ydFF1ZXJ5KHNvcnQpIH0gOiB7fSksXG4gICAgICBsaW1pdHMsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIG1pbmltYWw6IFsncHJpY2UnXSxcbiAgICAgICAgbWF4aW11bTogWydwcmljZSddLFxuICAgICAgICBkaXN0aW5jdDogWydicmFuZCddLFxuICAgICAgfSxcbiAgICB9XG5cbiAgICByZXR1cm4gcHJvZHVjdENhdGFsb2cucHJvZHVjdENhdGFsb2dSZXBvc2l0b3J5LmZpbmRDYXRhbG9nKFxuICAgICAgcmVwb1BhcmFtcyxcbiAgICAgIG1haW5HZW5kZXIgfHwgKHNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQgPyAnbWFsZScgOiAnZmVtYWxlJyksXG4gICAgICBvcHRpb25zQ2FjaGUsXG4gICAgKVxuICB9XG59XG4iXX0=
@@ -1,126 +0,0 @@
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
- sort,
34
- fields: this.helpersService.getFieldsHelper().getStandardFields(),
35
- });
36
- }
37
- async searchWithMostRelevant(params) {
38
- const { productIds, filters, shop, mainGender } = params;
39
- const productCatalog = this.repositoryService.getProductCatalog();
40
- const filterHelper = this.helpersService.getFilterHelper();
41
- const totalResult = await productCatalog.productCatalogRepository.findCatalog({
42
- fields: ['id', 'stock', 'gender'],
43
- filters: {
44
- id: { operator: Where.IN, value: productIds },
45
- published: { operator: Where.EQUALS, value: true },
46
- ...filterHelper.buildFilterQuery(filters || {}),
47
- },
48
- options: {
49
- minimal: ['price'],
50
- maximum: ['price'],
51
- ...(isEmpty(filters?.brands) ? { distinct: ['brand'] } : {}),
52
- },
53
- });
54
- return this.sortByTermRelevance({
55
- productIds,
56
- totalResult,
57
- limits: params.limits,
58
- filters,
59
- fieldsHelper: this.helpersService.getFieldsHelper(),
60
- });
61
- }
62
- async searchDefault(params) {
63
- const { productIds, filters, limits, sort, shop, mainGender, fields } = params;
64
- const productCatalog = this.repositoryService.getProductCatalog();
65
- const filterHelper = this.helpersService.getFilterHelper();
66
- const sortHelper = this.helpersService.getSortHelper();
67
- return productCatalog.productCatalogRepository.findCatalog({
68
- fields,
69
- filters: {
70
- id: { operator: Where.IN, value: productIds },
71
- published: { operator: Where.EQUALS, value: true },
72
- ...filterHelper.buildFilterQuery(filters || {}),
73
- },
74
- limits,
75
- ...(sort ? { orderBy: sortHelper.buildSortQuery(sort) } : {}),
76
- options: {
77
- minimal: ['price'],
78
- maximum: ['price'],
79
- distinct: ['brand'],
80
- },
81
- });
82
- }
83
- sortByTermRelevance(params) {
84
- const { productIds, totalResult, limits, filters, fieldsHelper } = params;
85
- // const defaultGender = filters?.gender?.at(0) || 'male'
86
- const stockData = totalResult.data.filter((product) => product.stock.quantity > 0);
87
- const stockOut = totalResult.data.filter((product) => product.stock.quantity <= 0);
88
- const productIdsStock = productIds.filter((product) => stockData.some((result) => result.id === product));
89
- const productIdsStockOut = productIds.filter((product) => stockOut.some((result) => result.id === product));
90
- const limitedProductId = productIdsStock
91
- .concat(productIdsStockOut)
92
- .slice(limits.offset, limits.offset + limits.limit);
93
- return this.getDetailedProducts(limitedProductId, totalResult, fieldsHelper);
94
- }
95
- async getDetailedProducts(orderedId, totalResult, fieldsHelper) {
96
- const productCatalog = this.repositoryService.getProductCatalog();
97
- const fields = fieldsHelper.getStandardFields();
98
- const productResult = await productCatalog.productCatalogRepository.findCatalog({
99
- filters: {
100
- id: { operator: Where.IN, value: orderedId },
101
- },
102
- fields,
103
- });
104
- return {
105
- data: orderedId.map((id) => productResult.data.find((product) => product.id === id)).filter(Boolean),
106
- count: totalResult.count,
107
- maximum: totalResult.maximum,
108
- minimal: totalResult.minimal,
109
- distinct: totalResult.distinct,
110
- };
111
- }
112
- async findCatalogIdsBySearch(term, shop) {
113
- if (this.productsByTerm[term])
114
- return this.productsByTerm[term];
115
- const productServices = this.repositoryService.getProductServices();
116
- return (this.productsByTerm[term] = await productServices.productSearch
117
- .search(term, 999, shop === Shops.GLAMSHOP ? 'female' : 'male')
118
- .then((products) => [...new Set(products.map((product) => product.id))]));
119
- }
120
- }
121
- 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 });
122
- TermSearchStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: TermSearchStrategy });
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: TermSearchStrategy, decorators: [{
124
- type: Injectable
125
- }], ctorParameters: function () { return [{ type: i1.CatalogRepositoryService }, { type: i1.CatalogHelpersService }]; } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybS1zZWFyY2guc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy90ZXJtLXNlYXJjaC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFDTCxPQUFPLEVBS1AsS0FBSyxFQUNMLEtBQUssR0FDTixNQUFNLG1CQUFtQixDQUFBO0FBRzFCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTs7O0FBUzdFLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFDbUIsaUJBQTJDLEVBQzNDLGNBQXFDO1FBRHJDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0MsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBSmhELG1CQUFjLEdBQTZCLEVBQUUsQ0FBQTtJQUtsRCxDQUFDO0lBRUosS0FBSyxDQUFDLE1BQU0sQ0FDVixNQUEyQixFQUMzQixJQUFXLEVBQ1gsYUFBa0Q7UUFFbEQsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUE7UUFFMUQsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQTtTQUMzRDtRQUVELE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUVoRSxJQUFJLElBQUksS0FBSyxlQUFlLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7Z0JBQ2pDLFVBQVU7Z0JBQ1YsT0FBTztnQkFDUCxNQUFNO2dCQUNOLElBQUk7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Q0FBQyxJQUFJLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFL0QsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLENBQUE7UUFFbkUsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxlQUFlLENBQUMsYUFBYTthQUNwRSxNQUFNLENBQWdCLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxLQUFLLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO2FBQzdFLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzdFLENBQUM7OytHQTVJVSxrQkFBa0I7bUhBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBpc0VtcHR5LFxuICBQcm9kdWN0LFxuICBQcm9kdWN0U2VhcmNoLFxuICBSZXBvc2l0b3J5Q2FjaGVPcHRpb25zLFxuICBSZXBvc2l0b3J5RmluZFJlc3VsdCxcbiAgU2hvcHMsXG4gIFdoZXJlLFxufSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcblxuaW1wb3J0IHsgQ2F0YWxvZ1NlYXJjaFBhcmFtcywgQ2F0YWxvZ1NlYXJjaFN0cmF0ZWd5IH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcbmltcG9ydCB7IENhdGFsb2dIZWxwZXJzU2VydmljZSwgQ2F0YWxvZ1JlcG9zaXRvcnlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnXG5cbmltcG9ydCB7XG4gIFNvcnRCeVRlcm1SZWxldmFuY2VQYXJhbXMsXG4gIFRlcm1TZWFyY2hEZWZhdWx0UGFyYW1zLFxuICBUZXJtU2VhcmNoTW9zdFJlbGV2YW50UGFyYW1zLFxufSBmcm9tICcuL3R5cGVzL3N0cmF0ZWd5LXBhcmFtcy50eXBlJ1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGVybVNlYXJjaFN0cmF0ZWd5IGltcGxlbWVudHMgQ2F0YWxvZ1NlYXJjaFN0cmF0ZWd5IHtcbiAgcHJpdmF0ZSBwcm9kdWN0c0J5VGVybTogUmVjb3JkPHN0cmluZywgc3RyaW5nW10+ID0ge31cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlcG9zaXRvcnlTZXJ2aWNlOiBDYXRhbG9nUmVwb3NpdG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBoZWxwZXJzU2VydmljZTogQ2F0YWxvZ0hlbHBlcnNTZXJ2aWNlLFxuICApIHt9XG5cbiAgYXN5bmMgc2VhcmNoKFxuICAgIHBhcmFtczogQ2F0YWxvZ1NlYXJjaFBhcmFtcyxcbiAgICBzaG9wOiBTaG9wcyxcbiAgICBfb3B0aW9uc0NhY2hlPzogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSxcbiAgKTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxQcm9kdWN0Pj4ge1xuICAgIGNvbnN0IHsgdGVybSwgZmlsdGVycywgbGltaXRzLCBzb3J0LCBtYWluR2VuZGVyIH0gPSBwYXJhbXNcblxuICAgIGlmICghdGVybSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUZXJtIGlzIHJlcXVpcmVkIGZvciBUZXJtU2VhcmNoU3RyYXRlZ3knKVxuICAgIH1cblxuICAgIGNvbnN0IHByb2R1Y3RJZHMgPSBhd2FpdCB0aGlzLmZpbmRDYXRhbG9nSWRzQnlTZWFyY2godGVybSwgc2hvcClcblxuICAgIGlmIChzb3J0ID09PSAnbW9zdC1yZWxldmFudCcpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlYXJjaFdpdGhNb3N0UmVsZXZhbnQoe1xuICAgICAgICBwcm9kdWN0SWRzLFxuICAgICAgICBmaWx0ZXJzLFxuICAgICAgICBsaW1pdHMsXG4gICAgICAgIHNob3AsXG4gICAgICAgIG1haW5HZW5kZXIsXG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNlYXJjaERlZmF1bHQoe1xuICAgICAgcHJvZHVjdElkcyxcbiAgICAgIGZpbHRlcnMsXG4gICAgICBsaW1pdHMsXG4gICAgICBzaG9wLFxuICAgICAgbWFpbkdlbmRlcixcbiAgICAgIHNvcnQsXG4gICAgICBmaWVsZHM6IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmllbGRzSGVscGVyKCkuZ2V0U3RhbmRhcmRGaWVsZHMoKSxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZWFyY2hXaXRoTW9zdFJlbGV2YW50KHBhcmFtczogVGVybVNlYXJjaE1vc3RSZWxldmFudFBhcmFtcyk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcbiAgICBjb25zdCB7IHByb2R1Y3RJZHMsIGZpbHRlcnMsIHNob3AsIG1haW5HZW5kZXIgfSA9IHBhcmFtc1xuICAgIGNvbnN0IHByb2R1Y3RDYXRhbG9nID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZS5nZXRQcm9kdWN0Q2F0YWxvZygpXG4gICAgY29uc3QgZmlsdGVySGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRGaWx0ZXJIZWxwZXIoKVxuXG4gICAgY29uc3QgdG90YWxSZXN1bHQgPSBhd2FpdCBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnkuZmluZENhdGFsb2coXG4gICAgICB7XG4gICAgICAgIGZpZWxkczogWydpZCcsICdzdG9jaycsICdnZW5kZXInXSxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIGlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IHByb2R1Y3RJZHMgfSxcbiAgICAgICAgICBwdWJsaXNoZWQ6IHsgb3BlcmF0b3I6IFdoZXJlLkVRVUFMUywgdmFsdWU6IHRydWUgfSxcbiAgICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIG1pbmltYWw6IFsncHJpY2UnXSxcbiAgICAgICAgICBtYXhpbXVtOiBbJ3ByaWNlJ10sXG4gICAgICAgICAgLi4uKGlzRW1wdHkoZmlsdGVycz8uYnJhbmRzKSA/IHsgZGlzdGluY3Q6IFsnYnJhbmQnXSB9IDoge30pLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIC8vIG1haW5HZW5kZXIgfHwgKHNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQgPyAnbWFsZScgOiAnZmVtYWxlJyksXG4gICAgKVxuXG4gICAgcmV0dXJuIHRoaXMuc29ydEJ5VGVybVJlbGV2YW5jZSh7XG4gICAgICBwcm9kdWN0SWRzLFxuICAgICAgdG90YWxSZXN1bHQsXG4gICAgICBsaW1pdHM6IHBhcmFtcy5saW1pdHMsXG4gICAgICBmaWx0ZXJzLFxuICAgICAgZmllbGRzSGVscGVyOiB0aGlzLmhlbHBlcnNTZXJ2aWNlLmdldEZpZWxkc0hlbHBlcigpLFxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNlYXJjaERlZmF1bHQocGFyYW1zOiBUZXJtU2VhcmNoRGVmYXVsdFBhcmFtcyk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcbiAgICBjb25zdCB7IHByb2R1Y3RJZHMsIGZpbHRlcnMsIGxpbWl0cywgc29ydCwgc2hvcCwgbWFpbkdlbmRlciwgZmllbGRzIH0gPSBwYXJhbXNcbiAgICBjb25zdCBwcm9kdWN0Q2F0YWxvZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0UHJvZHVjdENhdGFsb2coKVxuICAgIGNvbnN0IGZpbHRlckhlbHBlciA9IHRoaXMuaGVscGVyc1NlcnZpY2UuZ2V0RmlsdGVySGVscGVyKClcbiAgICBjb25zdCBzb3J0SGVscGVyID0gdGhpcy5oZWxwZXJzU2VydmljZS5nZXRTb3J0SGVscGVyKClcblxuICAgIHJldHVybiBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnkuZmluZENhdGFsb2coXG4gICAgICB7XG4gICAgICAgIGZpZWxkcyxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIGlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IHByb2R1Y3RJZHMgfSxcbiAgICAgICAgICBwdWJsaXNoZWQ6IHsgb3BlcmF0b3I6IFdoZXJlLkVRVUFMUywgdmFsdWU6IHRydWUgfSxcbiAgICAgICAgICAuLi5maWx0ZXJIZWxwZXIuYnVpbGRGaWx0ZXJRdWVyeShmaWx0ZXJzIHx8IHt9KSxcbiAgICAgICAgfSxcbiAgICAgICAgbGltaXRzLFxuICAgICAgICAuLi4oc29ydCA/IHsgb3JkZXJCeTogc29ydEhlbHBlci5idWlsZFNvcnRRdWVyeShzb3J0KSB9IDoge30pLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgbWluaW1hbDogWydwcmljZSddLFxuICAgICAgICAgIG1heGltdW06IFsncHJpY2UnXSxcbiAgICAgICAgICBkaXN0aW5jdDogWydicmFuZCddLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIC8vIG1haW5HZW5kZXIgfHwgKHNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQgPyAnbWFsZScgOiAnZmVtYWxlJyksXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0QnlUZXJtUmVsZXZhbmNlKHBhcmFtczogU29ydEJ5VGVybVJlbGV2YW5jZVBhcmFtcykge1xuICAgIGNvbnN0IHsgcHJvZHVjdElkcywgdG90YWxSZXN1bHQsIGxpbWl0cywgZmlsdGVycywgZmllbGRzSGVscGVyIH0gPSBwYXJhbXNcbiAgICAvLyBjb25zdCBkZWZhdWx0R2VuZGVyID0gZmlsdGVycz8uZ2VuZGVyPy5hdCgwKSB8fCAnbWFsZSdcbiAgICBjb25zdCBzdG9ja0RhdGEgPSB0b3RhbFJlc3VsdC5kYXRhLmZpbHRlcigocHJvZHVjdDogYW55KSA9PiBwcm9kdWN0LnN0b2NrLnF1YW50aXR5ID4gMClcbiAgICBjb25zdCBzdG9ja091dCA9IHRvdGFsUmVzdWx0LmRhdGEuZmlsdGVyKChwcm9kdWN0OiBhbnkpID0+IHByb2R1Y3Quc3RvY2sucXVhbnRpdHkgPD0gMClcbiAgICBjb25zdCBwcm9kdWN0SWRzU3RvY2sgPSBwcm9kdWN0SWRzLmZpbHRlcigocHJvZHVjdCkgPT4gc3RvY2tEYXRhLnNvbWUoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuaWQgPT09IHByb2R1Y3QpKVxuICAgIGNvbnN0IHByb2R1Y3RJZHNTdG9ja091dCA9IHByb2R1Y3RJZHMuZmlsdGVyKChwcm9kdWN0KSA9PiBzdG9ja091dC5zb21lKChyZXN1bHQ6IGFueSkgPT4gcmVzdWx0LmlkID09PSBwcm9kdWN0KSlcbiAgICBjb25zdCBsaW1pdGVkUHJvZHVjdElkID0gcHJvZHVjdElkc1N0b2NrXG4gICAgICAuY29uY2F0KHByb2R1Y3RJZHNTdG9ja091dClcbiAgICAgIC5zbGljZShsaW1pdHMub2Zmc2V0LCBsaW1pdHMub2Zmc2V0ICsgbGltaXRzLmxpbWl0KVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0RGV0YWlsZWRQcm9kdWN0cyhsaW1pdGVkUHJvZHVjdElkLCB0b3RhbFJlc3VsdCwgZmllbGRzSGVscGVyKVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXREZXRhaWxlZFByb2R1Y3RzKG9yZGVyZWRJZDogc3RyaW5nW10sIHRvdGFsUmVzdWx0OiBhbnksIGZpZWxkc0hlbHBlcjogYW55KSB7XG4gICAgY29uc3QgcHJvZHVjdENhdGFsb2cgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldFByb2R1Y3RDYXRhbG9nKClcbiAgICBjb25zdCBmaWVsZHMgPSBmaWVsZHNIZWxwZXIuZ2V0U3RhbmRhcmRGaWVsZHMoKVxuICAgIGNvbnN0IHByb2R1Y3RSZXN1bHQgPSBhd2FpdCBwcm9kdWN0Q2F0YWxvZy5wcm9kdWN0Q2F0YWxvZ1JlcG9zaXRvcnkuZmluZENhdGFsb2coe1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBpZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBvcmRlcmVkSWQgfSxcbiAgICAgIH0sXG4gICAgICBmaWVsZHMsXG4gICAgfSlcblxuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiBvcmRlcmVkSWQubWFwKChpZCkgPT4gcHJvZHVjdFJlc3VsdC5kYXRhLmZpbmQoKHByb2R1Y3QpID0+IHByb2R1Y3QuaWQgPT09IGlkKSkuZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgY291bnQ6IHRvdGFsUmVzdWx0LmNvdW50LFxuICAgICAgbWF4aW11bTogdG90YWxSZXN1bHQubWF4aW11bSxcbiAgICAgIG1pbmltYWw6IHRvdGFsUmVzdWx0Lm1pbmltYWwsXG4gICAgICBkaXN0aW5jdDogdG90YWxSZXN1bHQuZGlzdGluY3QsXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBmaW5kQ2F0YWxvZ0lkc0J5U2VhcmNoKHRlcm06IHN0cmluZywgc2hvcDogU2hvcHMpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgaWYgKHRoaXMucHJvZHVjdHNCeVRlcm1bdGVybV0pIHJldHVybiB0aGlzLnByb2R1Y3RzQnlUZXJtW3Rlcm1dXG5cbiAgICBjb25zdCBwcm9kdWN0U2VydmljZXMgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldFByb2R1Y3RTZXJ2aWNlcygpXG5cbiAgICByZXR1cm4gKHRoaXMucHJvZHVjdHNCeVRlcm1bdGVybV0gPSBhd2FpdCBwcm9kdWN0U2VydmljZXMucHJvZHVjdFNlYXJjaFxuICAgICAgLnNlYXJjaDxQcm9kdWN0U2VhcmNoPih0ZXJtLCA5OTksIHNob3AgPT09IFNob3BzLkdMQU1TSE9QID8gJ2ZlbWFsZScgOiAnbWFsZScpXG4gICAgICAudGhlbigocHJvZHVjdHMpID0+IFsuLi5uZXcgU2V0KHByb2R1Y3RzLm1hcCgocHJvZHVjdCkgPT4gcHJvZHVjdC5pZCkpXSkpXG4gIH1cbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyYXRlZ3ktcGFyYW1zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvc3RyYXRlZ2llcy90eXBlcy9zdHJhdGVneS1wYXJhbXMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVwb3NpdG9yeUNhY2hlT3B0aW9ucywgU2hvcHMgfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcblxuZXhwb3J0IHR5cGUgU2VhcmNoV2l0aE1vc3RSZWxldmFudFBhcmFtcyA9IHtcbiAgY2F0ZWdvcnk6IGFueVxuICBmaWx0ZXJzOiBhbnlcbiAgbGltaXRzOiBhbnlcbiAgc2hvcDogU2hvcHNcbiAgbWFpbkdlbmRlcjogYW55XG4gIG9wdGlvbnNDYWNoZTogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSB8IHVuZGVmaW5lZFxuICBmaWVsZHM6IGFueVxufVxuXG5leHBvcnQgdHlwZSBTZWFyY2hEZWZhdWx0UGFyYW1zID0ge1xuICBjYXRlZ29yeTogYW55XG4gIGZpbHRlcnM6IGFueVxuICBsaW1pdHM6IGFueVxuICBzaG9wOiBTaG9wc1xuICBtYWluR2VuZGVyOiBhbnlcbiAgc29ydDogYW55XG4gIG9wdGlvbnNDYWNoZTogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSB8IHVuZGVmaW5lZFxuICBmaWVsZHM6IGFueVxufVxuXG5leHBvcnQgdHlwZSBGaW5kQW5kU29ydEJ5TW9zdFJlbGV2YW50UGFyYW1zID0ge1xuICBtb3N0UmVsZXZhbnRzOiBzdHJpbmdbXVxuICBwcm9kdWN0SWRzOiBzdHJpbmdbXVxuICBmaWx0ZXJzOiBhbnlcbiAgbGltaXRzOiBhbnlcbiAgc2hvcDogU2hvcHNcbiAgbWFpbkdlbmRlcjogYW55XG4gIG9wdGlvbnNDYWNoZTogeyBjYWNoZT86IFJlcG9zaXRvcnlDYWNoZU9wdGlvbnMgfSB8IHVuZGVmaW5lZFxuICBmaWVsZHM6IGFueVxufVxuXG5leHBvcnQgdHlwZSBUZXJtU2VhcmNoTW9zdFJlbGV2YW50UGFyYW1zID0ge1xuICBwcm9kdWN0SWRzOiBzdHJpbmdbXVxuICBmaWx0ZXJzOiBhbnlcbiAgbGltaXRzOiBhbnlcbiAgbWFpbkdlbmRlcjogYW55XG4gIHNob3A6IFNob3BzXG59XG5cbmV4cG9ydCB0eXBlIFRlcm1TZWFyY2hEZWZhdWx0UGFyYW1zID0ge1xuICBwcm9kdWN0SWRzOiBzdHJpbmdbXVxuICBmaWx0ZXJzOiBhbnlcbiAgbGltaXRzOiBhbnlcbiAgbWFpbkdlbmRlcjogYW55XG4gIHNob3A6IFNob3BzXG4gIGZpZWxkczogYW55XG4gIHNvcnQ/OiBhbnlcbn1cblxuZXhwb3J0IHR5cGUgU29ydEJ5VGVybVJlbGV2YW5jZVBhcmFtcyA9IHtcbiAgcHJvZHVjdElkczogc3RyaW5nW11cbiAgdG90YWxSZXN1bHQ6IGFueVxuICBsaW1pdHM6IGFueVxuICBmaWx0ZXJzOiBhbnlcbiAgZmllbGRzSGVscGVyOiBhbnlcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtb3B0aW9ucy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3R5cGVzL2ZldGNoLXByb2R1Y3RzLW9wdGlvbnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdEdlbmRlciB9IGZyb20gJ0BpbmZyYWI0YS9jb25uZWN0J1xuXG5pbXBvcnQgeyBQcm9kdWN0U29ydCB9IGZyb20gJy4vcHJvZHVjdC1zb3J0LnR5cGUnXG5cbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNPcHRpb25zID0ge1xuICBwYWdlPzogbnVtYmVyXG4gIHBlclBhZ2U/OiBudW1iZXJcbiAgc29ydD86IFByb2R1Y3RTb3J0XG4gIG1haW5HZW5kZXI/OiBQcm9kdWN0R2VuZGVyXG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtcGFyYW1zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvZmV0Y2gtcHJvZHVjdHMtcGFyYW1zLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbmltcG9ydCB7IENhdGFsb2dGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcydcblxuaW1wb3J0IHsgRmV0Y2hQcm9kdWN0c09wdGlvbnMgfSBmcm9tICcuL2ZldGNoLXByb2R1Y3RzLW9wdGlvbnMudHlwZSdcblxuZXhwb3J0IHR5cGUgRmV0Y2hQcm9kdWN0c01haW5QYXJhbXM8VCBleHRlbmRzIENhdGVnb3J5PiA9IHtcbiAgY2F0ZWdvcnk/OiBUXG4gIHByb2ZpbGU/OiBzdHJpbmdbXVxuICB0ZXJtPzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNQYXJhbXM8VCBleHRlbmRzIENhdGVnb3J5PiA9IEZldGNoUHJvZHVjdHNPcHRpb25zICZcbiAgKFxuICAgIHwge1xuICAgICAgICBjYXRlZ29yeTogRmV0Y2hQcm9kdWN0c01haW5QYXJhbXM8VD5bJ2NhdGVnb3J5J11cbiAgICAgICAgZmlsdGVycz86IENhdGFsb2dGaWx0ZXJzICYgeyBjdXN0b21PcHRpb25zPzogbmV2ZXIgfVxuICAgICAgfVxuICAgIHwge1xuICAgICAgICBwcm9maWxlOiBGZXRjaFByb2R1Y3RzTWFpblBhcmFtczxUPlsncHJvZmlsZSddXG4gICAgICAgIGZpbHRlcnM/OiBDYXRhbG9nRmlsdGVycyAmIHsgY3VzdG9tT3B0aW9ucz86IG5ldmVyOyB0YWdzPzogbmV2ZXIgfVxuICAgICAgfVxuICAgIHwge1xuICAgICAgICB0ZXJtOiBGZXRjaFByb2R1Y3RzTWFpblBhcmFtczxUPlsndGVybSddXG4gICAgICAgIGZpbHRlcnM/OiBDYXRhbG9nRmlsdGVycyAmIHsgY3VzdG9tT3B0aW9ucz86IG5ldmVyIH1cbiAgICAgIH1cbiAgKVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcHJvZHVjdHMtcmVzcG9uc2UudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvY2F0YWxvZy90eXBlcy9mZXRjaC1wcm9kdWN0cy1yZXNwb25zZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbmV4cG9ydCB0eXBlIEZldGNoUHJvZHVjdHNSZXNwb25zZSA9IHtcbiAgcHJvZHVjdHM6IHsgZGF0YTogUHJvZHVjdFtdOyB0b3RhbDogbnVtYmVyIH1cbiAgcGFnZXM6IG51bWJlclxuICBwcmljZXM6IHtcbiAgICBwcmljZTogeyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfVxuICAgIHN1YnNjcmliZXJQcmljZTogeyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfVxuICB9XG4gIGJyYW5kcz86IHN0cmluZ1tdXG59XG4iXX0=
@@ -1,6 +0,0 @@
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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0aG9kLXBhcmFtcy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy9jYXRhbG9nL3R5cGVzL21ldGhvZC1wYXJhbXMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2F0ZWdvcnksIFByb2R1Y3QsIFNob3BzIH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbmltcG9ydCB7IENhdGFsb2dTZWFyY2hQYXJhbXMgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJ1xuXG5pbXBvcnQgeyBGZXRjaFByb2R1Y3RzUGFyYW1zIH0gZnJvbSAnLi9mZXRjaC1wcm9kdWN0cy1wYXJhbXMudHlwZSdcblxuZXhwb3J0IHR5cGUgU3RvY2tOb3RpZmljYXRpb25QYXJhbXMgPSB7XG4gIHNob3A6IFNob3BzXG4gIHByb2R1Y3RJZDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBlbWFpbDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEJ1aWxkUmVzcG9uc2VQYXJhbXM8VCBleHRlbmRzIENhdGVnb3J5ID0gQ2F0ZWdvcnk+ID0ge1xuICBkYXRhOiBQcm9kdWN0W11cbiAgdG90YWw6IG51bWJlclxuICBtYXhpbXVtOiBhbnlcbiAgbWluaW1hbDogYW55XG4gIHNlYXJjaFBhcmFtczogQ2F0YWxvZ1NlYXJjaFBhcmFtc1xuICBvcHRpb25zOiBGZXRjaFByb2R1Y3RzUGFyYW1zPFQ+XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zb3J0LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2NhdGFsb2cvdHlwZXMvcHJvZHVjdC1zb3J0LnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3RTb3J0cyB9IGZyb20gJy4uL2VudW1zJ1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0U29ydCA9IGAke1Byb2R1Y3RTb3J0c31gXG4iXX0=