@infrab4a/connect 4.1.0-beta.8 → 4.1.0-beta.9

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 (703) hide show
  1. package/README.md +24 -24
  2. package/domain/catalog/helpers/index.d.ts +1 -1
  3. package/domain/catalog/helpers/round-product-price.helper.d.ts +4 -4
  4. package/domain/catalog/index.d.ts +3 -3
  5. package/domain/catalog/models/category-base.d.ts +30 -30
  6. package/domain/catalog/models/category-collection-children.d.ts +13 -13
  7. package/domain/catalog/models/category-filter.d.ts +13 -13
  8. package/domain/catalog/models/category-for-product.d.ts +5 -5
  9. package/domain/catalog/models/category.d.ts +7 -7
  10. package/domain/catalog/models/enums/index.d.ts +2 -2
  11. package/domain/catalog/models/enums/product-genders.enum.d.ts +5 -5
  12. package/domain/catalog/models/enums/shops.enum.d.ts +6 -6
  13. package/domain/catalog/models/filter-option.d.ts +9 -9
  14. package/domain/catalog/models/filter.d.ts +12 -12
  15. package/domain/catalog/models/index.d.ts +11 -11
  16. package/domain/catalog/models/kit-product.d.ts +12 -12
  17. package/domain/catalog/models/product-base.d.ts +40 -40
  18. package/domain/catalog/models/product-for-category.d.ts +7 -7
  19. package/domain/catalog/models/product-for-kit.d.ts +7 -7
  20. package/domain/catalog/models/product.d.ts +9 -9
  21. package/domain/catalog/models/types/category-condition.type.d.ts +4 -4
  22. package/domain/catalog/models/types/category-metadata.type.d.ts +4 -4
  23. package/domain/catalog/models/types/category-product.d.ts +4 -4
  24. package/domain/catalog/models/types/index.d.ts +11 -11
  25. package/domain/catalog/models/types/product-evaluation.type.d.ts +6 -6
  26. package/domain/catalog/models/types/product-gender.type.d.ts +1 -1
  27. package/domain/catalog/models/types/product-metadata.type.d.ts +4 -4
  28. package/domain/catalog/models/types/product-review.type.d.ts +17 -17
  29. package/domain/catalog/models/types/shop-description.type.d.ts +8 -8
  30. package/domain/catalog/models/types/shop-price.type.d.ts +6 -6
  31. package/domain/catalog/models/types/stock.type.d.ts +3 -3
  32. package/domain/catalog/models/types/variant-grade.type.d.ts +4 -4
  33. package/domain/catalog/models/variant.d.ts +17 -17
  34. package/domain/catalog/models/wishlist.d.ts +8 -8
  35. package/domain/catalog/repositories/category-collection-children.repository.d.ts +4 -4
  36. package/domain/catalog/repositories/category-filter.repository.d.ts +6 -6
  37. package/domain/catalog/repositories/category.repository.d.ts +18 -18
  38. package/domain/catalog/repositories/filter-option.repository.d.ts +4 -4
  39. package/domain/catalog/repositories/filter.repository.d.ts +4 -4
  40. package/domain/catalog/repositories/index.d.ts +9 -9
  41. package/domain/catalog/repositories/product.repository.d.ts +15 -15
  42. package/domain/catalog/repositories/subscription-product.repository.d.ts +4 -4
  43. package/domain/catalog/repositories/variant.repository.d.ts +4 -4
  44. package/domain/catalog/repositories/wishlist.repository.d.ts +6 -6
  45. package/domain/generic/index.d.ts +2 -2
  46. package/domain/generic/model/base.model.d.ts +14 -14
  47. package/domain/generic/model/identifier-fields.d.ts +4 -4
  48. package/domain/generic/model/index.d.ts +3 -3
  49. package/domain/generic/model/types/base-model-builder.type.d.ts +17 -17
  50. package/domain/generic/model/types/identifier-model.type.d.ts +8 -8
  51. package/domain/generic/model/types/index.d.ts +5 -5
  52. package/domain/generic/model/types/model-base-structure.type.d.ts +12 -12
  53. package/domain/generic/model/types/non-function-properties.type.d.ts +12 -12
  54. package/domain/generic/model/types/non-function-property-name.type.d.ts +13 -13
  55. package/domain/generic/repository/create.repository.d.ts +8 -8
  56. package/domain/generic/repository/crud.repository.d.ts +19 -19
  57. package/domain/generic/repository/delete.repository.d.ts +7 -7
  58. package/domain/generic/repository/enums/index.d.ts +2 -2
  59. package/domain/generic/repository/enums/update-option-actions.enum.d.ts +7 -7
  60. package/domain/generic/repository/enums/where.enum.d.ts +14 -14
  61. package/domain/generic/repository/find.repository.d.ts +17 -17
  62. package/domain/generic/repository/get.repository.d.ts +5 -5
  63. package/domain/generic/repository/index.d.ts +9 -9
  64. package/domain/generic/repository/read.repository.d.ts +14 -14
  65. package/domain/generic/repository/types/index.d.ts +6 -6
  66. package/domain/generic/repository/types/repository-find-filters.type.d.ts +13 -13
  67. package/domain/generic/repository/types/repository-find-result.type.d.ts +14 -14
  68. package/domain/generic/repository/types/repository-limit-options.type.d.ts +4 -4
  69. package/domain/generic/repository/types/repository-order-by-list.type.d.ts +5 -5
  70. package/domain/generic/repository/types/repository-update-params.type.d.ts +11 -11
  71. package/domain/generic/repository/types/where-options.type.d.ts +2 -2
  72. package/domain/generic/repository/update.repository.d.ts +6 -6
  73. package/domain/index.d.ts +6 -6
  74. package/domain/location/index.d.ts +1 -1
  75. package/domain/location/models/address.d.ts +24 -24
  76. package/domain/location/models/index.d.ts +2 -2
  77. package/domain/location/models/types/index.d.ts +3 -3
  78. package/domain/location/models/types/location-bound.type.d.ts +6 -6
  79. package/domain/location/models/types/location-geometry.type.d.ts +7 -7
  80. package/domain/location/models/types/location-lat-lng.type.d.ts +4 -4
  81. package/domain/shop-settings/enums/filter-type.enum.d.ts +19 -19
  82. package/domain/shop-settings/enums/index.d.ts +3 -3
  83. package/domain/shop-settings/enums/questions-filters.enum.d.ts +19 -19
  84. package/domain/shop-settings/enums/shop-page-name.enum.d.ts +19 -19
  85. package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +9 -9
  86. package/domain/shop-settings/helpers/index.d.ts +1 -1
  87. package/domain/shop-settings/index.d.ts +4 -4
  88. package/domain/shop-settings/models/campaign-banner.d.ts +11 -11
  89. package/domain/shop-settings/models/campaign.d.ts +10 -10
  90. package/domain/shop-settings/models/home.d.ts +18 -18
  91. package/domain/shop-settings/models/index.d.ts +6 -6
  92. package/domain/shop-settings/models/shop-menu.d.ts +7 -7
  93. package/domain/shop-settings/models/shop-settings.d.ts +13 -13
  94. package/domain/shop-settings/models/types/banner.type.d.ts +6 -6
  95. package/domain/shop-settings/models/types/benefit.type.d.ts +5 -5
  96. package/domain/shop-settings/models/types/campaign-page.d.ts +17 -17
  97. package/domain/shop-settings/models/types/home-data.type.d.ts +15 -15
  98. package/domain/shop-settings/models/types/index.d.ts +16 -14
  99. package/domain/shop-settings/models/types/landing-page.d.ts +8 -0
  100. package/domain/shop-settings/models/types/menu-nav.type.d.ts +8 -8
  101. package/domain/shop-settings/models/types/sections.type.d.ts +34 -31
  102. package/domain/shop-settings/models/types/shop-banner.type.d.ts +13 -13
  103. package/domain/shop-settings/models/types/shop-brands.type.d.ts +10 -10
  104. package/domain/shop-settings/models/types/shop-carousel.type.d.ts +4 -4
  105. package/domain/shop-settings/models/types/shop-collection.type.d.ts +9 -9
  106. package/domain/shop-settings/models/types/shop-gift.type.d.ts +8 -8
  107. package/domain/shop-settings/models/types/shop-home.d.ts +12 -12
  108. package/domain/shop-settings/models/types/shop-post.type.d.ts +7 -7
  109. package/domain/shop-settings/models/types/shop-section.type.d.ts +12 -12
  110. package/domain/shop-settings/models/types/sub-menu.type.d.ts +8 -8
  111. package/domain/shop-settings/repositories/campaign-banner.repository.d.ts +4 -4
  112. package/domain/shop-settings/repositories/campaign.repository.d.ts +4 -4
  113. package/domain/shop-settings/repositories/home.repository.d.ts +4 -4
  114. package/domain/shop-settings/repositories/index.d.ts +5 -5
  115. package/domain/shop-settings/repositories/shop-menu.repository.d.ts +4 -4
  116. package/domain/shop-settings/repositories/shop-settings.repository.d.ts +4 -4
  117. package/domain/shopping/index.d.ts +2 -2
  118. package/domain/shopping/models/buy-2-win.d.ts +18 -18
  119. package/domain/shopping/models/campaign-dashboard.d.ts +15 -15
  120. package/domain/shopping/models/campaign-hashtag.d.ts +18 -18
  121. package/domain/shopping/models/checkout.d.ts +26 -26
  122. package/domain/shopping/models/coupons/coupon.d.ts +60 -60
  123. package/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +5 -5
  124. package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +4 -4
  125. package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +4 -4
  126. package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +8 -8
  127. package/domain/shopping/models/coupons/enums/index.d.ts +3 -3
  128. package/domain/shopping/models/coupons/index.d.ts +2 -2
  129. package/domain/shopping/models/enums/checkout-types.enum.d.ts +5 -5
  130. package/domain/shopping/models/enums/index.d.ts +2 -2
  131. package/domain/shopping/models/enums/order-status.enum.d.ts +10 -10
  132. package/domain/shopping/models/index.d.ts +12 -12
  133. package/domain/shopping/models/line-item.d.ts +8 -8
  134. package/domain/shopping/models/order.d.ts +10 -10
  135. package/domain/shopping/models/payment.d.ts +67 -67
  136. package/domain/shopping/models/shipping-method.d.ts +17 -17
  137. package/domain/shopping/models/subscription/checkout.d.ts +20 -20
  138. package/domain/shopping/models/subscription/index.d.ts +2 -2
  139. package/domain/shopping/models/subscription/plan.d.ts +10 -10
  140. package/domain/shopping/models/types/index.d.ts +7 -7
  141. package/domain/shopping/models/types/payment-address.type.d.ts +12 -12
  142. package/domain/shopping/models/types/payment-billing.type.d.ts +7 -7
  143. package/domain/shopping/models/types/payment-card.type.d.ts +14 -14
  144. package/domain/shopping/models/types/payment-customer.type.d.ts +18 -18
  145. package/domain/shopping/models/types/payment-document.type.d.ts +6 -6
  146. package/domain/shopping/models/types/payment-item.type.d.ts +11 -11
  147. package/domain/shopping/models/types/payment-shipping.type.d.ts +10 -10
  148. package/domain/shopping/repositories/buy-2-win.repository.d.ts +4 -4
  149. package/domain/shopping/repositories/campaign-dashboard.repository.d.ts +4 -4
  150. package/domain/shopping/repositories/campaign-hashtag.repository.d.ts +4 -4
  151. package/domain/shopping/repositories/checkout.repository.d.ts +4 -4
  152. package/domain/shopping/repositories/coupon.repository.d.ts +4 -4
  153. package/domain/shopping/repositories/index.d.ts +9 -9
  154. package/domain/shopping/repositories/legacy-order.repository.d.ts +3 -3
  155. package/domain/shopping/repositories/order.repository.d.ts +4 -4
  156. package/domain/shopping/repositories/payment.repository.d.ts +4 -4
  157. package/domain/shopping/repositories/subscription/checkout.repository.d.ts +4 -4
  158. package/domain/shopping/repositories/subscription/index.d.ts +2 -2
  159. package/domain/shopping/repositories/subscription/plan.repository.d.ts +4 -4
  160. package/domain/users/errors/index.d.ts +3 -3
  161. package/domain/users/errors/unauthorized.error.d.ts +4 -4
  162. package/domain/users/errors/user-already-registered.error.d.ts +4 -4
  163. package/domain/users/errors/weak-password.error.d.ts +4 -4
  164. package/domain/users/index.d.ts +5 -5
  165. package/domain/users/models/beauty-profile.d.ts +11 -11
  166. package/domain/users/models/enums/accessory-importances.enum.d.ts +5 -5
  167. package/domain/users/models/enums/area.enum.d.ts +11 -11
  168. package/domain/users/models/enums/beard-problems.enum.d.ts +9 -9
  169. package/domain/users/models/enums/beard-sizes.enum.d.ts +7 -7
  170. package/domain/users/models/enums/beauty-product-importances.enum.d.ts +6 -6
  171. package/domain/users/models/enums/body-problems.enum.d.ts +11 -11
  172. package/domain/users/models/enums/body-shapes.enum.d.ts +7 -7
  173. package/domain/users/models/enums/body-tattoos.enum.d.ts +5 -5
  174. package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +7 -7
  175. package/domain/users/models/enums/face-skin-problems.enum.d.ts +10 -10
  176. package/domain/users/models/enums/face-skin-tones.enum.d.ts +8 -8
  177. package/domain/users/models/enums/family-incomes.enum.d.ts +8 -8
  178. package/domain/users/models/enums/fragrance-importances.enum.d.ts +5 -5
  179. package/domain/users/models/enums/hair-colors.enum.d.ts +10 -10
  180. package/domain/users/models/enums/hair-problems.enum.d.ts +10 -10
  181. package/domain/users/models/enums/hair-strands.enum.d.ts +8 -8
  182. package/domain/users/models/enums/hair-types.enum.d.ts +7 -7
  183. package/domain/users/models/enums/index.d.ts +20 -20
  184. package/domain/users/models/enums/office-position.enum.d.ts +6 -6
  185. package/domain/users/models/enums/product-spents.enum.d.ts +8 -8
  186. package/domain/users/models/enums/user-type.enum.d.ts +8 -8
  187. package/domain/users/models/index.d.ts +7 -7
  188. package/domain/users/models/lead.d.ts +8 -8
  189. package/domain/users/models/subscription/edition.d.ts +16 -16
  190. package/domain/users/models/subscription/enums/billing-status.enum.d.ts +3 -3
  191. package/domain/users/models/subscription/enums/edition-status.enum.d.ts +4 -4
  192. package/domain/users/models/subscription/enums/index.d.ts +4 -4
  193. package/domain/users/models/subscription/enums/payment-type.enum.d.ts +5 -5
  194. package/domain/users/models/subscription/enums/status.enum.d.ts +4 -4
  195. package/domain/users/models/subscription/index.d.ts +4 -4
  196. package/domain/users/models/subscription/payment.d.ts +13 -13
  197. package/domain/users/models/subscription/subscription.d.ts +28 -28
  198. package/domain/users/models/user-address.d.ts +6 -6
  199. package/domain/users/models/user-payment-method.d.ts +14 -14
  200. package/domain/users/models/user.d.ts +27 -27
  201. package/domain/users/repositories/beauty-profile.repository.d.ts +4 -4
  202. package/domain/users/repositories/edition.repository.d.ts +4 -4
  203. package/domain/users/repositories/index.d.ts +8 -8
  204. package/domain/users/repositories/lead.repository.d.ts +4 -4
  205. package/domain/users/repositories/subscription-payment.repository.d.ts +4 -4
  206. package/domain/users/repositories/subscription.repository.d.ts +4 -4
  207. package/domain/users/repositories/user-address.repository.d.ts +4 -4
  208. package/domain/users/repositories/user-payment-method.repository.d.ts +4 -4
  209. package/domain/users/repositories/user.repository.d.ts +6 -6
  210. package/domain/users/services/authentication.service.d.ts +12 -12
  211. package/domain/users/services/index.d.ts +3 -3
  212. package/domain/users/services/register.service.d.ts +7 -7
  213. package/domain/users/services/types/basic-user-data.type.d.ts +4 -4
  214. package/domain/users/services/types/index.d.ts +1 -1
  215. package/domain/users/use-cases/authentication.d.ts +21 -21
  216. package/domain/users/use-cases/index.d.ts +4 -4
  217. package/domain/users/use-cases/recovery-password.d.ts +6 -6
  218. package/domain/users/use-cases/register.d.ts +13 -13
  219. package/domain/users/use-cases/signout.d.ts +6 -6
  220. package/errors/duplicated-results.error.d.ts +4 -4
  221. package/errors/index.d.ts +4 -4
  222. package/errors/invalid-argument.error.d.ts +4 -4
  223. package/errors/not-found.error.d.ts +4 -4
  224. package/errors/required-argument.error.d.ts +6 -6
  225. package/esm2020/domain/catalog/helpers/index.mjs +2 -2
  226. package/esm2020/domain/catalog/helpers/round-product-price.helper.mjs +15 -15
  227. package/esm2020/domain/catalog/index.mjs +4 -4
  228. package/esm2020/domain/catalog/models/category-base.mjs +18 -18
  229. package/esm2020/domain/catalog/models/category-collection-children.mjs +13 -13
  230. package/esm2020/domain/catalog/models/category-filter.mjs +19 -19
  231. package/esm2020/domain/catalog/models/category-for-product.mjs +7 -7
  232. package/esm2020/domain/catalog/models/category.mjs +14 -14
  233. package/esm2020/domain/catalog/models/enums/index.mjs +3 -3
  234. package/esm2020/domain/catalog/models/enums/product-genders.enum.mjs +7 -7
  235. package/esm2020/domain/catalog/models/enums/shops.enum.mjs +8 -8
  236. package/esm2020/domain/catalog/models/filter-option.mjs +7 -7
  237. package/esm2020/domain/catalog/models/filter.mjs +7 -7
  238. package/esm2020/domain/catalog/models/index.mjs +12 -12
  239. package/esm2020/domain/catalog/models/kit-product.mjs +18 -18
  240. package/esm2020/domain/catalog/models/product-base.mjs +25 -25
  241. package/esm2020/domain/catalog/models/product-for-category.mjs +14 -14
  242. package/esm2020/domain/catalog/models/product-for-kit.mjs +14 -14
  243. package/esm2020/domain/catalog/models/product.mjs +19 -19
  244. package/esm2020/domain/catalog/models/types/category-condition.type.mjs +2 -2
  245. package/esm2020/domain/catalog/models/types/category-metadata.type.mjs +2 -2
  246. package/esm2020/domain/catalog/models/types/category-product.mjs +2 -2
  247. package/esm2020/domain/catalog/models/types/index.mjs +12 -12
  248. package/esm2020/domain/catalog/models/types/product-evaluation.type.mjs +2 -2
  249. package/esm2020/domain/catalog/models/types/product-gender.type.mjs +2 -2
  250. package/esm2020/domain/catalog/models/types/product-metadata.type.mjs +2 -2
  251. package/esm2020/domain/catalog/models/types/product-review.type.mjs +2 -2
  252. package/esm2020/domain/catalog/models/types/shop-description.type.mjs +2 -2
  253. package/esm2020/domain/catalog/models/types/shop-price.type.mjs +2 -2
  254. package/esm2020/domain/catalog/models/types/stock.type.mjs +2 -2
  255. package/esm2020/domain/catalog/models/types/variant-grade.type.mjs +2 -2
  256. package/esm2020/domain/catalog/models/variant.mjs +7 -7
  257. package/esm2020/domain/catalog/models/wishlist.mjs +7 -7
  258. package/esm2020/domain/catalog/repositories/category-collection-children.repository.mjs +2 -2
  259. package/esm2020/domain/catalog/repositories/category-filter.repository.mjs +2 -2
  260. package/esm2020/domain/catalog/repositories/category.repository.mjs +2 -2
  261. package/esm2020/domain/catalog/repositories/filter-option.repository.mjs +2 -2
  262. package/esm2020/domain/catalog/repositories/filter.repository.mjs +2 -2
  263. package/esm2020/domain/catalog/repositories/index.mjs +10 -10
  264. package/esm2020/domain/catalog/repositories/product.repository.mjs +2 -2
  265. package/esm2020/domain/catalog/repositories/subscription-product.repository.mjs +2 -2
  266. package/esm2020/domain/catalog/repositories/variant.repository.mjs +2 -2
  267. package/esm2020/domain/catalog/repositories/wishlist.repository.mjs +2 -2
  268. package/esm2020/domain/generic/index.mjs +3 -3
  269. package/esm2020/domain/generic/model/base.model.mjs +24 -24
  270. package/esm2020/domain/generic/model/identifier-fields.mjs +2 -2
  271. package/esm2020/domain/generic/model/index.mjs +4 -4
  272. package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +2 -2
  273. package/esm2020/domain/generic/model/types/identifier-model.type.mjs +2 -2
  274. package/esm2020/domain/generic/model/types/index.mjs +6 -6
  275. package/esm2020/domain/generic/model/types/model-base-structure.type.mjs +2 -2
  276. package/esm2020/domain/generic/model/types/non-function-properties.type.mjs +2 -2
  277. package/esm2020/domain/generic/model/types/non-function-property-name.type.mjs +2 -2
  278. package/esm2020/domain/generic/repository/create.repository.mjs +2 -2
  279. package/esm2020/domain/generic/repository/crud.repository.mjs +2 -2
  280. package/esm2020/domain/generic/repository/delete.repository.mjs +2 -2
  281. package/esm2020/domain/generic/repository/enums/index.mjs +3 -3
  282. package/esm2020/domain/generic/repository/enums/update-option-actions.enum.mjs +9 -9
  283. package/esm2020/domain/generic/repository/enums/where.enum.mjs +16 -16
  284. package/esm2020/domain/generic/repository/find.repository.mjs +2 -2
  285. package/esm2020/domain/generic/repository/get.repository.mjs +2 -2
  286. package/esm2020/domain/generic/repository/index.mjs +10 -10
  287. package/esm2020/domain/generic/repository/read.repository.mjs +2 -2
  288. package/esm2020/domain/generic/repository/types/index.mjs +7 -7
  289. package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +2 -2
  290. package/esm2020/domain/generic/repository/types/repository-find-result.type.mjs +2 -2
  291. package/esm2020/domain/generic/repository/types/repository-limit-options.type.mjs +2 -2
  292. package/esm2020/domain/generic/repository/types/repository-order-by-list.type.mjs +2 -2
  293. package/esm2020/domain/generic/repository/types/repository-update-params.type.mjs +2 -2
  294. package/esm2020/domain/generic/repository/types/where-options.type.mjs +2 -2
  295. package/esm2020/domain/generic/repository/update.repository.mjs +2 -2
  296. package/esm2020/domain/index.mjs +7 -7
  297. package/esm2020/domain/location/index.mjs +2 -2
  298. package/esm2020/domain/location/models/address.mjs +7 -7
  299. package/esm2020/domain/location/models/index.mjs +3 -3
  300. package/esm2020/domain/location/models/types/index.mjs +4 -4
  301. package/esm2020/domain/location/models/types/location-bound.type.mjs +2 -2
  302. package/esm2020/domain/location/models/types/location-geometry.type.mjs +2 -2
  303. package/esm2020/domain/location/models/types/location-lat-lng.type.mjs +2 -2
  304. package/esm2020/domain/shop-settings/enums/filter-type.enum.mjs +21 -21
  305. package/esm2020/domain/shop-settings/enums/index.mjs +4 -4
  306. package/esm2020/domain/shop-settings/enums/questions-filters.enum.mjs +21 -21
  307. package/esm2020/domain/shop-settings/enums/shop-page-name.enum.mjs +21 -21
  308. package/esm2020/domain/shop-settings/helpers/beauty-questions.helper.mjs +47 -47
  309. package/esm2020/domain/shop-settings/helpers/index.mjs +2 -2
  310. package/esm2020/domain/shop-settings/index.mjs +5 -5
  311. package/esm2020/domain/shop-settings/models/campaign-banner.mjs +7 -7
  312. package/esm2020/domain/shop-settings/models/campaign.mjs +7 -7
  313. package/esm2020/domain/shop-settings/models/home.mjs +7 -7
  314. package/esm2020/domain/shop-settings/models/index.mjs +7 -7
  315. package/esm2020/domain/shop-settings/models/shop-menu.mjs +7 -7
  316. package/esm2020/domain/shop-settings/models/shop-settings.mjs +7 -7
  317. package/esm2020/domain/shop-settings/models/types/banner.type.mjs +2 -2
  318. package/esm2020/domain/shop-settings/models/types/benefit.type.mjs +2 -2
  319. package/esm2020/domain/shop-settings/models/types/campaign-page.mjs +2 -2
  320. package/esm2020/domain/shop-settings/models/types/home-data.type.mjs +2 -2
  321. package/esm2020/domain/shop-settings/models/types/index.mjs +17 -15
  322. package/esm2020/domain/shop-settings/models/types/landing-page.mjs +2 -0
  323. package/esm2020/domain/shop-settings/models/types/menu-nav.type.mjs +2 -2
  324. package/esm2020/domain/shop-settings/models/types/sections.type.mjs +2 -2
  325. package/esm2020/domain/shop-settings/models/types/shop-banner.type.mjs +2 -2
  326. package/esm2020/domain/shop-settings/models/types/shop-brands.type.mjs +2 -2
  327. package/esm2020/domain/shop-settings/models/types/shop-carousel.type.mjs +2 -2
  328. package/esm2020/domain/shop-settings/models/types/shop-collection.type.mjs +2 -2
  329. package/esm2020/domain/shop-settings/models/types/shop-gift.type.mjs +2 -2
  330. package/esm2020/domain/shop-settings/models/types/shop-home.mjs +2 -2
  331. package/esm2020/domain/shop-settings/models/types/shop-post.type.mjs +2 -2
  332. package/esm2020/domain/shop-settings/models/types/shop-section.type.mjs +2 -2
  333. package/esm2020/domain/shop-settings/models/types/sub-menu.type.mjs +2 -2
  334. package/esm2020/domain/shop-settings/repositories/campaign-banner.repository.mjs +2 -2
  335. package/esm2020/domain/shop-settings/repositories/campaign.repository.mjs +2 -2
  336. package/esm2020/domain/shop-settings/repositories/home.repository.mjs +2 -2
  337. package/esm2020/domain/shop-settings/repositories/index.mjs +6 -6
  338. package/esm2020/domain/shop-settings/repositories/shop-menu.repository.mjs +2 -2
  339. package/esm2020/domain/shop-settings/repositories/shop-settings.repository.mjs +2 -2
  340. package/esm2020/domain/shopping/index.mjs +3 -3
  341. package/esm2020/domain/shopping/models/buy-2-win.mjs +14 -14
  342. package/esm2020/domain/shopping/models/campaign-dashboard.mjs +7 -7
  343. package/esm2020/domain/shopping/models/campaign-hashtag.mjs +7 -7
  344. package/esm2020/domain/shopping/models/checkout.mjs +37 -37
  345. package/esm2020/domain/shopping/models/coupons/coupon.mjs +38 -38
  346. package/esm2020/domain/shopping/models/coupons/enums/coupon-club-mens.enum.mjs +7 -7
  347. package/esm2020/domain/shopping/models/coupons/enums/coupon-subtypes.enum.mjs +6 -6
  348. package/esm2020/domain/shopping/models/coupons/enums/coupon-types.enum.mjs +10 -10
  349. package/esm2020/domain/shopping/models/coupons/enums/exclusivities.enum.mjs +10 -10
  350. package/esm2020/domain/shopping/models/coupons/enums/index.mjs +4 -4
  351. package/esm2020/domain/shopping/models/coupons/index.mjs +3 -3
  352. package/esm2020/domain/shopping/models/enums/checkout-types.enum.mjs +7 -7
  353. package/esm2020/domain/shopping/models/enums/index.mjs +3 -3
  354. package/esm2020/domain/shopping/models/enums/order-status.enum.mjs +12 -12
  355. package/esm2020/domain/shopping/models/index.mjs +13 -13
  356. package/esm2020/domain/shopping/models/line-item.mjs +4 -4
  357. package/esm2020/domain/shopping/models/order.mjs +11 -11
  358. package/esm2020/domain/shopping/models/payment.mjs +169 -169
  359. package/esm2020/domain/shopping/models/shipping-method.mjs +7 -7
  360. package/esm2020/domain/shopping/models/subscription/checkout.mjs +28 -28
  361. package/esm2020/domain/shopping/models/subscription/index.mjs +3 -3
  362. package/esm2020/domain/shopping/models/subscription/plan.mjs +7 -7
  363. package/esm2020/domain/shopping/models/types/index.mjs +8 -8
  364. package/esm2020/domain/shopping/models/types/payment-address.type.mjs +2 -2
  365. package/esm2020/domain/shopping/models/types/payment-billing.type.mjs +2 -2
  366. package/esm2020/domain/shopping/models/types/payment-card.type.mjs +2 -2
  367. package/esm2020/domain/shopping/models/types/payment-customer.type.mjs +2 -2
  368. package/esm2020/domain/shopping/models/types/payment-document.type.mjs +2 -2
  369. package/esm2020/domain/shopping/models/types/payment-item.type.mjs +2 -2
  370. package/esm2020/domain/shopping/models/types/payment-shipping.type.mjs +2 -2
  371. package/esm2020/domain/shopping/repositories/buy-2-win.repository.mjs +2 -2
  372. package/esm2020/domain/shopping/repositories/campaign-dashboard.repository.mjs +2 -2
  373. package/esm2020/domain/shopping/repositories/campaign-hashtag.repository.mjs +2 -2
  374. package/esm2020/domain/shopping/repositories/checkout.repository.mjs +2 -2
  375. package/esm2020/domain/shopping/repositories/coupon.repository.mjs +2 -2
  376. package/esm2020/domain/shopping/repositories/index.mjs +10 -10
  377. package/esm2020/domain/shopping/repositories/legacy-order.repository.mjs +2 -2
  378. package/esm2020/domain/shopping/repositories/order.repository.mjs +2 -2
  379. package/esm2020/domain/shopping/repositories/payment.repository.mjs +2 -2
  380. package/esm2020/domain/shopping/repositories/subscription/checkout.repository.mjs +2 -2
  381. package/esm2020/domain/shopping/repositories/subscription/index.mjs +3 -3
  382. package/esm2020/domain/shopping/repositories/subscription/plan.repository.mjs +2 -2
  383. package/esm2020/domain/users/errors/index.mjs +4 -4
  384. package/esm2020/domain/users/errors/unauthorized.error.mjs +7 -7
  385. package/esm2020/domain/users/errors/user-already-registered.error.mjs +7 -7
  386. package/esm2020/domain/users/errors/weak-password.error.mjs +7 -7
  387. package/esm2020/domain/users/index.mjs +6 -6
  388. package/esm2020/domain/users/models/beauty-profile.mjs +12 -12
  389. package/esm2020/domain/users/models/enums/accessory-importances.enum.mjs +7 -7
  390. package/esm2020/domain/users/models/enums/area.enum.mjs +13 -13
  391. package/esm2020/domain/users/models/enums/beard-problems.enum.mjs +11 -11
  392. package/esm2020/domain/users/models/enums/beard-sizes.enum.mjs +9 -9
  393. package/esm2020/domain/users/models/enums/beauty-product-importances.enum.mjs +8 -8
  394. package/esm2020/domain/users/models/enums/body-problems.enum.mjs +13 -13
  395. package/esm2020/domain/users/models/enums/body-shapes.enum.mjs +9 -9
  396. package/esm2020/domain/users/models/enums/body-tattoos.enum.mjs +7 -7
  397. package/esm2020/domain/users/models/enums/face-skin-oilinesses.enum.mjs +9 -9
  398. package/esm2020/domain/users/models/enums/face-skin-problems.enum.mjs +12 -12
  399. package/esm2020/domain/users/models/enums/face-skin-tones.enum.mjs +10 -10
  400. package/esm2020/domain/users/models/enums/family-incomes.enum.mjs +10 -10
  401. package/esm2020/domain/users/models/enums/fragrance-importances.enum.mjs +7 -7
  402. package/esm2020/domain/users/models/enums/hair-colors.enum.mjs +12 -12
  403. package/esm2020/domain/users/models/enums/hair-problems.enum.mjs +12 -12
  404. package/esm2020/domain/users/models/enums/hair-strands.enum.mjs +10 -10
  405. package/esm2020/domain/users/models/enums/hair-types.enum.mjs +9 -9
  406. package/esm2020/domain/users/models/enums/index.mjs +21 -21
  407. package/esm2020/domain/users/models/enums/office-position.enum.mjs +8 -8
  408. package/esm2020/domain/users/models/enums/product-spents.enum.mjs +10 -10
  409. package/esm2020/domain/users/models/enums/user-type.enum.mjs +10 -10
  410. package/esm2020/domain/users/models/index.mjs +8 -8
  411. package/esm2020/domain/users/models/lead.mjs +7 -7
  412. package/esm2020/domain/users/models/subscription/edition.mjs +7 -7
  413. package/esm2020/domain/users/models/subscription/enums/billing-status.enum.mjs +5 -5
  414. package/esm2020/domain/users/models/subscription/enums/edition-status.enum.mjs +6 -6
  415. package/esm2020/domain/users/models/subscription/enums/index.mjs +5 -5
  416. package/esm2020/domain/users/models/subscription/enums/payment-type.enum.mjs +7 -7
  417. package/esm2020/domain/users/models/subscription/enums/status.enum.mjs +6 -6
  418. package/esm2020/domain/users/models/subscription/index.mjs +5 -5
  419. package/esm2020/domain/users/models/subscription/payment.mjs +14 -14
  420. package/esm2020/domain/users/models/subscription/subscription.mjs +43 -43
  421. package/esm2020/domain/users/models/user-address.mjs +7 -7
  422. package/esm2020/domain/users/models/user-payment-method.mjs +7 -7
  423. package/esm2020/domain/users/models/user.mjs +26 -26
  424. package/esm2020/domain/users/repositories/beauty-profile.repository.mjs +2 -2
  425. package/esm2020/domain/users/repositories/edition.repository.mjs +2 -2
  426. package/esm2020/domain/users/repositories/index.mjs +9 -9
  427. package/esm2020/domain/users/repositories/lead.repository.mjs +2 -2
  428. package/esm2020/domain/users/repositories/subscription-payment.repository.mjs +2 -2
  429. package/esm2020/domain/users/repositories/subscription.repository.mjs +2 -2
  430. package/esm2020/domain/users/repositories/user-address.repository.mjs +2 -2
  431. package/esm2020/domain/users/repositories/user-payment-method.repository.mjs +2 -2
  432. package/esm2020/domain/users/repositories/user.repository.mjs +2 -2
  433. package/esm2020/domain/users/services/authentication.service.mjs +2 -2
  434. package/esm2020/domain/users/services/index.mjs +4 -4
  435. package/esm2020/domain/users/services/register.service.mjs +2 -2
  436. package/esm2020/domain/users/services/types/basic-user-data.type.mjs +2 -2
  437. package/esm2020/domain/users/services/types/index.mjs +2 -2
  438. package/esm2020/domain/users/use-cases/authentication.mjs +43 -43
  439. package/esm2020/domain/users/use-cases/index.mjs +5 -5
  440. package/esm2020/domain/users/use-cases/recovery-password.mjs +9 -9
  441. package/esm2020/domain/users/use-cases/register.mjs +38 -38
  442. package/esm2020/domain/users/use-cases/signout.mjs +9 -9
  443. package/esm2020/errors/duplicated-results.error.mjs +7 -7
  444. package/esm2020/errors/index.mjs +5 -5
  445. package/esm2020/errors/invalid-argument.error.mjs +7 -7
  446. package/esm2020/errors/not-found.error.mjs +7 -7
  447. package/esm2020/errors/required-argument.error.mjs +9 -9
  448. package/esm2020/index.mjs +6 -6
  449. package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +67 -67
  450. package/esm2020/infra/elasticsearch/adapters/elastic-search.adapter.mjs +2 -2
  451. package/esm2020/infra/elasticsearch/adapters/index.mjs +3 -3
  452. package/esm2020/infra/elasticsearch/index.mjs +4 -4
  453. package/esm2020/infra/elasticsearch/indexes/index.mjs +2 -2
  454. package/esm2020/infra/elasticsearch/indexes/products-index.mjs +104 -104
  455. package/esm2020/infra/elasticsearch/types/elastic-search-result.mjs +2 -2
  456. package/esm2020/infra/elasticsearch/types/index.mjs +2 -2
  457. package/esm2020/infra/firebase/auth/authentication-firebase-auth.service.mjs +41 -41
  458. package/esm2020/infra/firebase/auth/index.mjs +3 -3
  459. package/esm2020/infra/firebase/auth/register-firebase-auth.service.mjs +33 -33
  460. package/esm2020/infra/firebase/auth/types/firebase-user-with-id.type.mjs +2 -2
  461. package/esm2020/infra/firebase/firestore/enums/firestore-field-type.enum.mjs +10 -10
  462. package/esm2020/infra/firebase/firestore/enums/index.mjs +2 -2
  463. package/esm2020/infra/firebase/firestore/index.mjs +4 -4
  464. package/esm2020/infra/firebase/firestore/mixins/index.mjs +10 -10
  465. package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +31 -31
  466. package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +10 -10
  467. package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +18 -18
  468. package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +110 -110
  469. package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +80 -80
  470. package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +23 -23
  471. package/esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +17 -17
  472. package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +13 -13
  473. package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +51 -51
  474. package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +67 -67
  475. package/esm2020/infra/firebase/firestore/repositories/catalog/index.mjs +5 -5
  476. package/esm2020/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +54 -54
  477. package/esm2020/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs +16 -16
  478. package/esm2020/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs +14 -14
  479. package/esm2020/infra/firebase/firestore/repositories/index.mjs +5 -5
  480. package/esm2020/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +60 -60
  481. package/esm2020/infra/firebase/firestore/repositories/shop-settings/index.mjs +4 -4
  482. package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs +14 -14
  483. package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.mjs +14 -14
  484. package/esm2020/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs +14 -14
  485. package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.mjs +14 -14
  486. package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.mjs +14 -14
  487. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs +14 -14
  488. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs +14 -14
  489. package/esm2020/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs +31 -31
  490. package/esm2020/infra/firebase/firestore/repositories/shopping/index.mjs +11 -11
  491. package/esm2020/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs +11 -11
  492. package/esm2020/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +40 -40
  493. package/esm2020/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs +14 -14
  494. package/esm2020/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs +14 -14
  495. package/esm2020/infra/firebase/firestore/repositories/users/index.mjs +9 -9
  496. package/esm2020/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs +14 -14
  497. package/esm2020/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs +16 -16
  498. package/esm2020/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs +14 -14
  499. package/esm2020/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs +16 -16
  500. package/esm2020/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs +16 -16
  501. package/esm2020/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs +16 -16
  502. package/esm2020/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +50 -50
  503. package/esm2020/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs +16 -16
  504. package/esm2020/infra/firebase/firestore/types/firestore-interceptors.type.mjs +2 -2
  505. package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +2 -2
  506. package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +2 -2
  507. package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +2 -2
  508. package/esm2020/infra/firebase/firestore/types/index.mjs +5 -5
  509. package/esm2020/infra/firebase/index.mjs +3 -3
  510. package/esm2020/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.mjs +13 -13
  511. package/esm2020/infra/hasura-graphql/enums/hasura-graphql-where.enum.mjs +17 -17
  512. package/esm2020/infra/hasura-graphql/enums/index.mjs +3 -3
  513. package/esm2020/infra/hasura-graphql/index.mjs +5 -5
  514. package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +35 -35
  515. package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +71 -71
  516. package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +22 -22
  517. package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +125 -125
  518. package/esm2020/infra/hasura-graphql/mixins/helpers/index.mjs +5 -5
  519. package/esm2020/infra/hasura-graphql/mixins/index.mjs +8 -8
  520. package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +39 -39
  521. package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +10 -10
  522. package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +31 -31
  523. package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +152 -152
  524. package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +37 -37
  525. package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +108 -108
  526. package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +62 -62
  527. package/esm2020/infra/hasura-graphql/models/category-hasura-graphql.mjs +4 -4
  528. package/esm2020/infra/hasura-graphql/models/index.mjs +5 -5
  529. package/esm2020/infra/hasura-graphql/models/kit-product-hasura-graphql.mjs +15 -15
  530. package/esm2020/infra/hasura-graphql/models/product-hasura-graphql.mjs +11 -11
  531. package/esm2020/infra/hasura-graphql/models/variant-hasura-graphql.mjs +9 -9
  532. package/esm2020/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.mjs +39 -39
  533. package/esm2020/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.mjs +107 -107
  534. package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +338 -338
  535. package/esm2020/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.mjs +105 -105
  536. package/esm2020/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.mjs +22 -22
  537. package/esm2020/infra/hasura-graphql/repositories/catalog/index.mjs +9 -9
  538. package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +516 -516
  539. package/esm2020/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +114 -114
  540. package/esm2020/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.mjs +238 -238
  541. package/esm2020/infra/hasura-graphql/repositories/index.mjs +2 -2
  542. package/esm2020/infra/hasura-graphql/types/fields.type.mjs +2 -2
  543. package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +2 -2
  544. package/esm2020/infra/hasura-graphql/types/hasura-graphql-auth-options.type.mjs +2 -2
  545. package/esm2020/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +2 -2
  546. package/esm2020/infra/hasura-graphql/types/hasura-graphql-headers.type.mjs +2 -2
  547. package/esm2020/infra/hasura-graphql/types/index.mjs +9 -9
  548. package/esm2020/infra/hasura-graphql/types/nested-field.type.mjs +2 -2
  549. package/esm2020/infra/hasura-graphql/types/query-builder-options.type.mjs +2 -2
  550. package/esm2020/infra/hasura-graphql/types/variable-options.type.mjs +2 -2
  551. package/esm2020/infra/index.mjs +4 -4
  552. package/esm2020/infrab4a-connect.mjs +4 -4
  553. package/esm2020/utils/decorators/debug.class.decorator.mjs +7 -7
  554. package/esm2020/utils/decorators/index.mjs +3 -3
  555. package/esm2020/utils/decorators/trace.method.decorator.mjs +81 -81
  556. package/esm2020/utils/get.mjs +3 -3
  557. package/esm2020/utils/helpers/class-name.helper.mjs +15 -15
  558. package/esm2020/utils/helpers/debug-decorator.helper.mjs +18 -18
  559. package/esm2020/utils/helpers/debug.helper.mjs +150 -150
  560. package/esm2020/utils/helpers/index.mjs +5 -5
  561. package/esm2020/utils/helpers/reflect.helper.mjs +165 -165
  562. package/esm2020/utils/index.mjs +13 -13
  563. package/esm2020/utils/is-uuid.mjs +3 -3
  564. package/esm2020/utils/is.mjs +4 -4
  565. package/esm2020/utils/log.utils.mjs +9 -9
  566. package/esm2020/utils/mixins/base.mixin.mjs +6 -6
  567. package/esm2020/utils/mixins/index.mjs +4 -4
  568. package/esm2020/utils/mixins/merge-constructor-params.type.mjs +2 -2
  569. package/esm2020/utils/mixins/mixin-ctor.type.mjs +2 -2
  570. package/esm2020/utils/parse-datetime.mjs +14 -14
  571. package/esm2020/utils/types/array-element.type.mjs +2 -2
  572. package/esm2020/utils/types/index.mjs +3 -3
  573. package/esm2020/utils/types/prop.type.mjs +2 -2
  574. package/fesm2015/infrab4a-connect.mjs +4627 -4627
  575. package/fesm2015/infrab4a-connect.mjs.map +1 -1
  576. package/fesm2020/infrab4a-connect.mjs +4541 -4541
  577. package/fesm2020/infrab4a-connect.mjs.map +1 -1
  578. package/index.d.ts +5 -5
  579. package/infra/elasticsearch/adapters/axios.adapter.d.ts +16 -16
  580. package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +8 -8
  581. package/infra/elasticsearch/adapters/index.d.ts +2 -2
  582. package/infra/elasticsearch/index.d.ts +3 -3
  583. package/infra/elasticsearch/indexes/index.d.ts +1 -1
  584. package/infra/elasticsearch/indexes/products-index.d.ts +13 -13
  585. package/infra/elasticsearch/types/elastic-search-result.d.ts +9 -9
  586. package/infra/elasticsearch/types/index.d.ts +1 -1
  587. package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +12 -12
  588. package/infra/firebase/auth/index.d.ts +2 -2
  589. package/infra/firebase/auth/register-firebase-auth.service.d.ts +8 -8
  590. package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +5 -5
  591. package/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +8 -8
  592. package/infra/firebase/firestore/enums/index.d.ts +1 -1
  593. package/infra/firebase/firestore/index.d.ts +3 -3
  594. package/infra/firebase/firestore/mixins/index.d.ts +9 -9
  595. package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +4 -4
  596. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +5 -5
  597. package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +4 -4
  598. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +4 -4
  599. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +13 -13
  600. package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +4 -4
  601. package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +11 -11
  602. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +11 -11
  603. package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +7 -7
  604. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +20 -20
  605. package/infra/firebase/firestore/repositories/catalog/index.d.ts +4 -4
  606. package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +12 -12
  607. package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +12 -12
  608. package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +7 -7
  609. package/infra/firebase/firestore/repositories/index.d.ts +4 -4
  610. package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +16 -16
  611. package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +3 -3
  612. package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +7 -7
  613. package/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +7 -7
  614. package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +7 -7
  615. package/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +8 -8
  616. package/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +8 -8
  617. package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +7 -7
  618. package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +7 -7
  619. package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +12 -12
  620. package/infra/firebase/firestore/repositories/shopping/index.d.ts +10 -10
  621. package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +6 -6
  622. package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +13 -13
  623. package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +7 -7
  624. package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +7 -7
  625. package/infra/firebase/firestore/repositories/users/index.d.ts +8 -8
  626. package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +7 -7
  627. package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +12 -12
  628. package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +7 -7
  629. package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +12 -12
  630. package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +12 -12
  631. package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +12 -12
  632. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +17 -17
  633. package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +12 -12
  634. package/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +14 -14
  635. package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +6 -6
  636. package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +8 -8
  637. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +16 -16
  638. package/infra/firebase/firestore/types/index.d.ts +4 -4
  639. package/infra/firebase/index.d.ts +2 -2
  640. package/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +11 -11
  641. package/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +15 -15
  642. package/infra/hasura-graphql/enums/index.d.ts +2 -2
  643. package/infra/hasura-graphql/index.d.ts +4 -4
  644. package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +19 -19
  645. package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +10 -10
  646. package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +8 -8
  647. package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +12 -12
  648. package/infra/hasura-graphql/mixins/helpers/index.d.ts +4 -4
  649. package/infra/hasura-graphql/mixins/index.d.ts +7 -7
  650. package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +9 -9
  651. package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +11 -11
  652. package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +7 -7
  653. package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +34 -34
  654. package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +25 -25
  655. package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +23 -23
  656. package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +14 -14
  657. package/infra/hasura-graphql/models/category-hasura-graphql.d.ts +6 -6
  658. package/infra/hasura-graphql/models/index.d.ts +4 -4
  659. package/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +6 -6
  660. package/infra/hasura-graphql/models/product-hasura-graphql.d.ts +18 -18
  661. package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +10 -10
  662. package/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +10 -10
  663. package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +12 -12
  664. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +34 -34
  665. package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -18
  666. package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -10
  667. package/infra/hasura-graphql/repositories/catalog/index.d.ts +8 -8
  668. package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +30 -30
  669. package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +14 -14
  670. package/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.d.ts +27 -27
  671. package/infra/hasura-graphql/repositories/index.d.ts +1 -1
  672. package/infra/hasura-graphql/types/fields.type.d.ts +2 -2
  673. package/infra/hasura-graphql/types/graphql.repository.type.d.ts +24 -24
  674. package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +8 -8
  675. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +44 -44
  676. package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +7 -7
  677. package/infra/hasura-graphql/types/index.d.ts +8 -8
  678. package/infra/hasura-graphql/types/nested-field.type.d.ts +7 -7
  679. package/infra/hasura-graphql/types/query-builder-options.type.d.ts +7 -7
  680. package/infra/hasura-graphql/types/variable-options.type.d.ts +9 -9
  681. package/infra/index.d.ts +3 -3
  682. package/package.json +2 -2
  683. package/utils/decorators/debug.class.decorator.d.ts +2 -2
  684. package/utils/decorators/index.d.ts +2 -2
  685. package/utils/decorators/trace.method.decorator.d.ts +14 -14
  686. package/utils/get.d.ts +1 -1
  687. package/utils/helpers/class-name.helper.d.ts +3 -3
  688. package/utils/helpers/debug-decorator.helper.d.ts +9 -9
  689. package/utils/helpers/debug.helper.d.ts +60 -60
  690. package/utils/helpers/index.d.ts +4 -4
  691. package/utils/helpers/reflect.helper.d.ts +50 -50
  692. package/utils/index.d.ts +13 -13
  693. package/utils/is-uuid.d.ts +1 -1
  694. package/utils/is.d.ts +1 -1
  695. package/utils/log.utils.d.ts +7 -7
  696. package/utils/mixins/base.mixin.d.ts +3 -3
  697. package/utils/mixins/index.d.ts +3 -3
  698. package/utils/mixins/merge-constructor-params.type.d.ts +3 -3
  699. package/utils/mixins/mixin-ctor.type.d.ts +1 -1
  700. package/utils/parse-datetime.d.ts +1 -1
  701. package/utils/types/array-element.type.d.ts +1 -1
  702. package/utils/types/index.d.ts +2 -2
  703. package/utils/types/prop.type.d.ts +1 -1
@@ -1,67 +1,67 @@
1
- import { getDocs, limit, query, where } from 'firebase/firestore';
2
- import { Category } from '../../../../../domain';
3
- import { Base, chunk, is } from '../../../../../utils';
4
- import { DuplicatedResultsError, NotFoundError, RequiredArgumentError } from '../../../../../errors';
5
- import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
6
- export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
7
- constructor({ firestore, interceptors }) {
8
- super({
9
- firestore,
10
- collectionName: 'categories',
11
- model: Category,
12
- interceptors,
13
- });
14
- }
15
- async getCategoryBySlug(slug, shop) {
16
- const categoryDocs = await getDocs(query(this.collection(this.collectionName), where('slug', '==', slug), where('shop', '==', shop), where('published', '==', true)));
17
- if (categoryDocs.size > 1)
18
- throw new DuplicatedResultsError('Query returned duplicated values');
19
- if (categoryDocs.empty)
20
- throw new NotFoundError(`Document with slug ${slug} not found`);
21
- return categoryDocs.docs[0].data();
22
- }
23
- async getCategoriesForHome(categoryIds, limit = 4, gender) {
24
- const categorySnap = await getDocs(query(this.collection(this.collectionName), where('id', 'in', categoryIds.filter(Boolean)), where('published', '==', true)));
25
- if (categorySnap.empty)
26
- throw new NotFoundError('Categories not found');
27
- const categories = categorySnap.docs.map((doc) => doc.data());
28
- const homeSections = await Promise.all(categories.map(async (category) => ({
29
- category,
30
- products: await this.mountCategory(category, { limit, hasStock: true, gender }),
31
- })));
32
- return homeSections;
33
- }
34
- async mountCategory(category, options) {
35
- if (!category.products)
36
- throw new RequiredArgumentError(['Category products is empty']);
37
- const chunks = chunk(category.products, 10);
38
- const products = [];
39
- const wheres = [];
40
- for (const productIds of chunks) {
41
- if (options?.limit && products.length >= options?.limit)
42
- break;
43
- wheres.push(where('published', '==', true), where('id', 'in', productIds));
44
- if (options?.hasStock)
45
- wheres.push(where('stock.quantity', '>', 0));
46
- if (options?.gender)
47
- wheres.push(where('tags', 'array-contains', options?.gender));
48
- if (options?.limit)
49
- wheres.push(limit(options?.limit));
50
- const productSnap = await getDocs(query(this.collection('productsErpVitrine'), ...wheres));
51
- if (productSnap.empty)
52
- continue;
53
- products.push(...productSnap.docs);
54
- }
55
- return is(products);
56
- }
57
- getCategoryByShop(shop) {
58
- return;
59
- }
60
- getChildren(parentId) {
61
- return;
62
- }
63
- isChild(id, parentId) {
64
- return;
65
- }
66
- }
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVsRixPQUFPLEVBQUUsUUFBUSxFQUFzQyxNQUFNLHVCQUF1QixDQUFBO0FBQ3BGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXRELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwRyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLDJCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3JFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUE0RTtRQUMvRyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFlBQVk7WUFDNUIsS0FBSyxFQUFFLFFBQVE7WUFDZixZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBVztRQUMvQyxNQUFNLFlBQVksR0FBRyxNQUFNLE9BQU8sQ0FDaEMsS0FBSyxDQUNILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUNwQyxLQUFL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Q0FBQyxDQUFBO1lBQ2xGLElBQUksT0FBTyxFQUFFLEtBQUs7Z0JBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7WUFFdEQsTUFBTSxXQUFXLEdBQUcsTUFBTSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUE7WUFFMUYsSUFBSSxXQUFXLENBQUMsS0FBSztnQkFBRSxTQUFRO1lBRS9CLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDbkM7UUFFRCxPQUFPLEVBQUUsQ0FBWSxRQUFRLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsSUFBWTtRQUM1QixPQUFNO0lBQ1IsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixPQUFNO0lBQ1IsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVLEVBQUUsUUFBZ0I7UUFDbEMsT0FBTTtJQUNSLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldERvY3MsIGxpbWl0LCBxdWVyeSwgUXVlcnlDb25zdHJhaW50LCB3aGVyZSB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgQ2F0ZWdvcnksIENhdGVnb3J5UmVwb3NpdG9yeSwgUHJvZHVjdCwgU2hvcHMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlLCBjaHVuaywgaXMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcblxuaW1wb3J0IHsgRHVwbGljYXRlZFJlc3VsdHNFcnJvciwgTm90Rm91bmRFcnJvciwgUmVxdWlyZWRBcmd1bWVudEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcblxuZXhwb3J0IGNsYXNzIENhdGVnb3J5RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8Q2F0ZWdvcnk+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBDYXRlZ29yeVJlcG9zaXRvcnlcbntcbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPENhdGVnb3J5PiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4pIHtcbiAgICBzdXBlcih7XG4gICAgICBmaXJlc3RvcmUsXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ2NhdGVnb3JpZXMnLFxuICAgICAgbW9kZWw6IENhdGVnb3J5LFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yeUJ5U2x1ZyhzbHVnOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxDYXRlZ29yeT4ge1xuICAgIGNvbnN0IGNhdGVnb3J5RG9jcyA9IGF3YWl0IGdldERvY3MoXG4gICAgICBxdWVyeShcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpLFxuICAgICAgICB3aGVyZSgnc2x1ZycsICc9PScsIHNsdWcpLFxuICAgICAgICB3aGVyZSgnc2hvcCcsICc9PScsIHNob3ApLFxuICAgICAgICB3aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSksXG4gICAgICApLFxuICAgIClcblxuICAgIGlmIChjYXRlZ29yeURvY3Muc2l6ZSA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXG4gICAgaWYgKGNhdGVnb3J5RG9jcy5lbXB0eSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYERvY3VtZW50IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXG5cbiAgICByZXR1cm4gY2F0ZWdvcnlEb2NzLmRvY3NbMF0uZGF0YSgpXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yaWVzRm9ySG9tZShcbiAgICBjYXRlZ29yeUlkczogc3RyaW5nW10sXG4gICAgbGltaXQgPSA0LFxuICAgIGdlbmRlcj86IHN0cmluZyxcbiAgKTogUHJvbWlzZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcbiAgICBjb25zdCBjYXRlZ29yeVNuYXAgPSBhd2FpdCBnZXREb2NzKFxuICAgICAgcXVlcnkoXG4gICAgICAgIHRoaXMuY29sbGVjdGlvbih0aGlzLmNvbGxlY3Rpb25OYW1lKSxcbiAgICAgICAgd2hlcmUoJ2lkJywgJ2luJywgY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pKSxcbiAgICAgICAgd2hlcmUoJ3B1Ymxpc2hlZCcsICc9PScsIHRydWUpLFxuICAgICAgKSxcbiAgICApXG5cbiAgICBpZiAoY2F0ZWdvcnlTbmFwLmVtcHR5KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignQ2F0ZWdvcmllcyBub3QgZm91bmQnKVxuXG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IGNhdGVnb3J5U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuICAgIGNvbnN0IGhvbWVTZWN0aW9ucyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgY2F0ZWdvcmllcy5tYXAoYXN5bmMgKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICBjYXRlZ29yeSxcbiAgICAgICAgcHJvZHVjdHM6IGF3YWl0IHRoaXMubW91bnRDYXRlZ29yeShjYXRlZ29yeSwgeyBsaW1pdCwgaGFzU3RvY2s6IHRydWUsIGdlbmRlciB9KSxcbiAgICAgIH0pKSxcbiAgICApXG5cbiAgICByZXR1cm4gaG9tZVNlY3Rpb25zXG4gIH1cblxuICBhc3luYyBtb3VudENhdGVnb3J5KFxuICAgIGNhdGVnb3J5OiBDYXRlZ29yeSxcbiAgICBvcHRpb25zPzogeyBsaW1pdD86IG51bWJlcjsgaGFzU3RvY2s/OiBib29sZWFuOyBnZW5kZXI/OiBzdHJpbmcgfSxcbiAgKTogUHJvbWlzZTxQcm9kdWN0W10+IHtcbiAgICBpZiAoIWNhdGVnb3J5LnByb2R1Y3RzKSB0aHJvdyBuZXcgUmVxdWlyZWRBcmd1bWVudEVycm9yKFsnQ2F0ZWdvcnkgcHJvZHVjdHMgaXMgZW1wdHknXSlcblxuICAgIGNvbnN0IGNodW5rcyA9IGNodW5rKGNhdGVnb3J5LnByb2R1Y3RzLCAxMClcbiAgICBjb25zdCBwcm9kdWN0cyA9IFtdXG4gICAgY29uc3Qgd2hlcmVzOiBRdWVyeUNvbnN0cmFpbnRbXSA9IFtdXG5cbiAgICBmb3IgKGNvbnN0IHByb2R1Y3RJZHMgb2YgY2h1bmtzKSB7XG4gICAgICBpZiAob3B0aW9ucz8ubGltaXQgJiYgcHJvZHVjdHMubGVuZ3RoID49IG9wdGlvbnM/LmxpbWl0KSBicmVha1xuXG4gICAgICB3aGVyZXMucHVzaCh3aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSksIHdoZXJlKCdpZCcsICdpbicsIHByb2R1Y3RJZHMpKVxuXG4gICAgICBpZiAob3B0aW9ucz8uaGFzU3RvY2spIHdoZXJlcy5wdXNoKHdoZXJlKCdzdG9jay5xdWFudGl0eScsICc+JywgMCkpXG4gICAgICBpZiAob3B0aW9ucz8uZ2VuZGVyKSB3aGVyZXMucHVzaCh3aGVyZSgndGFncycsICdhcnJheS1jb250YWlucycsIG9wdGlvbnM/LmdlbmRlcikpXG4gICAgICBpZiAob3B0aW9ucz8ubGltaXQpIHdoZXJlcy5wdXNoKGxpbWl0KG9wdGlvbnM/LmxpbWl0KSlcblxuICAgICAgY29uc3QgcHJvZHVjdFNuYXAgPSBhd2FpdCBnZXREb2NzKHF1ZXJ5KHRoaXMuY29sbGVjdGlvbigncHJvZHVjdHNFcnBWaXRyaW5lJyksIC4uLndoZXJlcykpXG5cbiAgICAgIGlmIChwcm9kdWN0U25hcC5lbXB0eSkgY29udGludWVcblxuICAgICAgcHJvZHVjdHMucHVzaCguLi5wcm9kdWN0U25hcC5kb2NzKVxuICAgIH1cblxuICAgIHJldHVybiBpczxQcm9kdWN0W10+KHByb2R1Y3RzKVxuICB9XG5cbiAgZ2V0Q2F0ZWdvcnlCeVNob3Aoc2hvcDogc3RyaW5nKTogUHJvbWlzZTxDYXRlZ29yeVtdPiB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBnZXRDaGlsZHJlbihwYXJlbnRJZDogbnVtYmVyKTogUHJvbWlzZTxDYXRlZ29yeVtdPiB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpc0NoaWxkKGlkOiBudW1iZXIsIHBhcmVudElkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm5cbiAgfVxufVxuIl19
1
+ import { getDocs, limit, query, where } from 'firebase/firestore';
2
+ import { Category } from '../../../../../domain';
3
+ import { Base, chunk, is } from '../../../../../utils';
4
+ import { DuplicatedResultsError, NotFoundError, RequiredArgumentError } from '../../../../../errors';
5
+ import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
6
+ export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
7
+ constructor({ firestore, interceptors }) {
8
+ super({
9
+ firestore,
10
+ collectionName: 'categories',
11
+ model: Category,
12
+ interceptors,
13
+ });
14
+ }
15
+ async getCategoryBySlug(slug, shop) {
16
+ const categoryDocs = await getDocs(query(this.collection(this.collectionName), where('slug', '==', slug), where('shop', '==', shop), where('published', '==', true)));
17
+ if (categoryDocs.size > 1)
18
+ throw new DuplicatedResultsError('Query returned duplicated values');
19
+ if (categoryDocs.empty)
20
+ throw new NotFoundError(`Document with slug ${slug} not found`);
21
+ return categoryDocs.docs[0].data();
22
+ }
23
+ async getCategoriesForHome(categoryIds, limit = 4, gender) {
24
+ const categorySnap = await getDocs(query(this.collection(this.collectionName), where('id', 'in', categoryIds.filter(Boolean)), where('published', '==', true)));
25
+ if (categorySnap.empty)
26
+ throw new NotFoundError('Categories not found');
27
+ const categories = categorySnap.docs.map((doc) => doc.data());
28
+ const homeSections = await Promise.all(categories.map(async (category) => ({
29
+ category,
30
+ products: await this.mountCategory(category, { limit, hasStock: true, gender }),
31
+ })));
32
+ return homeSections;
33
+ }
34
+ async mountCategory(category, options) {
35
+ if (!category.products)
36
+ throw new RequiredArgumentError(['Category products is empty']);
37
+ const chunks = chunk(category.products, 10);
38
+ const products = [];
39
+ const wheres = [];
40
+ for (const productIds of chunks) {
41
+ if (options?.limit && products.length >= options?.limit)
42
+ break;
43
+ wheres.push(where('published', '==', true), where('id', 'in', productIds));
44
+ if (options?.hasStock)
45
+ wheres.push(where('stock.quantity', '>', 0));
46
+ if (options?.gender)
47
+ wheres.push(where('tags', 'array-contains', options?.gender));
48
+ if (options?.limit)
49
+ wheres.push(limit(options?.limit));
50
+ const productSnap = await getDocs(query(this.collection('productsErpVitrine'), ...wheres));
51
+ if (productSnap.empty)
52
+ continue;
53
+ products.push(...productSnap.docs);
54
+ }
55
+ return is(products);
56
+ }
57
+ getCategoryByShop(shop) {
58
+ return;
59
+ }
60
+ getChildren(parentId) {
61
+ return;
62
+ }
63
+ isChild(id, parentId) {
64
+ return;
65
+ }
66
+ }
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVsRixPQUFPLEVBQUUsUUFBUSxFQUFzQyxNQUFNLHVCQUF1QixDQUFBO0FBQ3BGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXRELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwRyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLDJCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3JFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUE0RTtRQUMvRyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFlBQVk7WUFDNUIsS0FBSyxFQUFFLFFBQVE7WUFDZixZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBVztRQUMvQyxNQUFNLFlBQVksR0FBRyxNQUFNLE9BQU8sQ0FDaEMsS0FBSyxDQUNILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUNwQyxLQUFL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Q0FBQyxDQUFBO1lBQ2xGLElBQUksT0FBTyxFQUFFLEtBQUs7Z0JBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7WUFFdEQsTUFBTSxXQUFXLEdBQUcsTUFBTSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUE7WUFFMUYsSUFBSSxXQUFXLENBQUMsS0FBSztnQkFBRSxTQUFRO1lBRS9CLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDbkM7UUFFRCxPQUFPLEVBQUUsQ0FBWSxRQUFRLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsSUFBWTtRQUM1QixPQUFNO0lBQ1IsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixPQUFNO0lBQ1IsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVLEVBQUUsUUFBZ0I7UUFDbEMsT0FBTTtJQUNSLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldERvY3MsIGxpbWl0LCBxdWVyeSwgUXVlcnlDb25zdHJhaW50LCB3aGVyZSB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcclxuXHJcbmltcG9ydCB7IENhdGVnb3J5LCBDYXRlZ29yeVJlcG9zaXRvcnksIFByb2R1Y3QsIFNob3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xyXG5pbXBvcnQgeyBCYXNlLCBjaHVuaywgaXMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcclxuXHJcbmltcG9ydCB7IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IsIE5vdEZvdW5kRXJyb3IsIFJlcXVpcmVkQXJndW1lbnRFcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Vycm9ycydcclxuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcclxuXHJcbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUZpcmVzdG9yZVJlcG9zaXRvcnlcclxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8Q2F0ZWdvcnk+KEJhc2UpKSlcclxuICBpbXBsZW1lbnRzIENhdGVnb3J5UmVwb3NpdG9yeVxyXG57XHJcbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPENhdGVnb3J5PiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4pIHtcclxuICAgIHN1cGVyKHtcclxuICAgICAgZmlyZXN0b3JlLFxyXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ2NhdGVnb3JpZXMnLFxyXG4gICAgICBtb2RlbDogQ2F0ZWdvcnksXHJcbiAgICAgIGludGVyY2VwdG9ycyxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRDYXRlZ29yeUJ5U2x1ZyhzbHVnOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxDYXRlZ29yeT4ge1xyXG4gICAgY29uc3QgY2F0ZWdvcnlEb2NzID0gYXdhaXQgZ2V0RG9jcyhcclxuICAgICAgcXVlcnkoXHJcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpLFxyXG4gICAgICAgIHdoZXJlKCdzbHVnJywgJz09Jywgc2x1ZyksXHJcbiAgICAgICAgd2hlcmUoJ3Nob3AnLCAnPT0nLCBzaG9wKSxcclxuICAgICAgICB3aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSksXHJcbiAgICAgICksXHJcbiAgICApXHJcblxyXG4gICAgaWYgKGNhdGVnb3J5RG9jcy5zaXplID4gMSkgdGhyb3cgbmV3IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IoJ1F1ZXJ5IHJldHVybmVkIGR1cGxpY2F0ZWQgdmFsdWVzJylcclxuICAgIGlmIChjYXRlZ29yeURvY3MuZW1wdHkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBEb2N1bWVudCB3aXRoIHNsdWcgJHtzbHVnfSBub3QgZm91bmRgKVxyXG5cclxuICAgIHJldHVybiBjYXRlZ29yeURvY3MuZG9jc1swXS5kYXRhKClcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldENhdGVnb3JpZXNGb3JIb21lKFxyXG4gICAgY2F0ZWdvcnlJZHM6IHN0cmluZ1tdLFxyXG4gICAgbGltaXQgPSA0LFxyXG4gICAgZ2VuZGVyPzogc3RyaW5nLFxyXG4gICk6IFByb21pc2U8eyBjYXRlZ29yeTogQ2F0ZWdvcnk7IHByb2R1Y3RzOiBQcm9kdWN0W10gfVtdPiB7XHJcbiAgICBjb25zdCBjYXRlZ29yeVNuYXAgPSBhd2FpdCBnZXREb2NzKFxyXG4gICAgICBxdWVyeShcclxuICAgICAgICB0aGlzLmNvbGxlY3Rpb24odGhpcy5jb2xsZWN0aW9uTmFtZSksXHJcbiAgICAgICAgd2hlcmUoJ2lkJywgJ2luJywgY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pKSxcclxuICAgICAgICB3aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSksXHJcbiAgICAgICksXHJcbiAgICApXHJcblxyXG4gICAgaWYgKGNhdGVnb3J5U25hcC5lbXB0eSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoJ0NhdGVnb3JpZXMgbm90IGZvdW5kJylcclxuXHJcbiAgICBjb25zdCBjYXRlZ29yaWVzID0gY2F0ZWdvcnlTbmFwLmRvY3MubWFwKChkb2MpID0+IGRvYy5kYXRhKCkpXHJcbiAgICBjb25zdCBob21lU2VjdGlvbnMgPSBhd2FpdCBQcm9taXNlLmFsbChcclxuICAgICAgY2F0ZWdvcmllcy5tYXAoYXN5bmMgKGNhdGVnb3J5KSA9PiAoe1xyXG4gICAgICAgIGNhdGVnb3J5LFxyXG4gICAgICAgIHByb2R1Y3RzOiBhd2FpdCB0aGlzLm1vdW50Q2F0ZWdvcnkoY2F0ZWdvcnksIHsgbGltaXQsIGhhc1N0b2NrOiB0cnVlLCBnZW5kZXIgfSksXHJcbiAgICAgIH0pKSxcclxuICAgIClcclxuXHJcbiAgICByZXR1cm4gaG9tZVNlY3Rpb25zXHJcbiAgfVxyXG5cclxuICBhc3luYyBtb3VudENhdGVnb3J5KFxyXG4gICAgY2F0ZWdvcnk6IENhdGVnb3J5LFxyXG4gICAgb3B0aW9ucz86IHsgbGltaXQ/OiBudW1iZXI7IGhhc1N0b2NrPzogYm9vbGVhbjsgZ2VuZGVyPzogc3RyaW5nIH0sXHJcbiAgKTogUHJvbWlzZTxQcm9kdWN0W10+IHtcclxuICAgIGlmICghY2F0ZWdvcnkucHJvZHVjdHMpIHRocm93IG5ldyBSZXF1aXJlZEFyZ3VtZW50RXJyb3IoWydDYXRlZ29yeSBwcm9kdWN0cyBpcyBlbXB0eSddKVxyXG5cclxuICAgIGNvbnN0IGNodW5rcyA9IGNodW5rKGNhdGVnb3J5LnByb2R1Y3RzLCAxMClcclxuICAgIGNvbnN0IHByb2R1Y3RzID0gW11cclxuICAgIGNvbnN0IHdoZXJlczogUXVlcnlDb25zdHJhaW50W10gPSBbXVxyXG5cclxuICAgIGZvciAoY29uc3QgcHJvZHVjdElkcyBvZiBjaHVua3MpIHtcclxuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0ICYmIHByb2R1Y3RzLmxlbmd0aCA+PSBvcHRpb25zPy5saW1pdCkgYnJlYWtcclxuXHJcbiAgICAgIHdoZXJlcy5wdXNoKHdoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKSwgd2hlcmUoJ2lkJywgJ2luJywgcHJvZHVjdElkcykpXHJcblxyXG4gICAgICBpZiAob3B0aW9ucz8uaGFzU3RvY2spIHdoZXJlcy5wdXNoKHdoZXJlKCdzdG9jay5xdWFudGl0eScsICc+JywgMCkpXHJcbiAgICAgIGlmIChvcHRpb25zPy5nZW5kZXIpIHdoZXJlcy5wdXNoKHdoZXJlKCd0YWdzJywgJ2FycmF5LWNvbnRhaW5zJywgb3B0aW9ucz8uZ2VuZGVyKSlcclxuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0KSB3aGVyZXMucHVzaChsaW1pdChvcHRpb25zPy5saW1pdCkpXHJcblxyXG4gICAgICBjb25zdCBwcm9kdWN0U25hcCA9IGF3YWl0IGdldERvY3MocXVlcnkodGhpcy5jb2xsZWN0aW9uKCdwcm9kdWN0c0VycFZpdHJpbmUnKSwgLi4ud2hlcmVzKSlcclxuXHJcbiAgICAgIGlmIChwcm9kdWN0U25hcC5lbXB0eSkgY29udGludWVcclxuXHJcbiAgICAgIHByb2R1Y3RzLnB1c2goLi4ucHJvZHVjdFNuYXAuZG9jcylcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gaXM8UHJvZHVjdFtdPihwcm9kdWN0cylcclxuICB9XHJcblxyXG4gIGdldENhdGVnb3J5QnlTaG9wKHNob3A6IHN0cmluZyk6IFByb21pc2U8Q2F0ZWdvcnlbXT4ge1xyXG4gICAgcmV0dXJuXHJcbiAgfVxyXG5cclxuICBnZXRDaGlsZHJlbihwYXJlbnRJZDogbnVtYmVyKTogUHJvbWlzZTxDYXRlZ29yeVtdPiB7XHJcbiAgICByZXR1cm5cclxuICB9XHJcblxyXG4gIGlzQ2hpbGQoaWQ6IG51bWJlciwgcGFyZW50SWQ6IG51bWJlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,5 +1,5 @@
1
- export * from './category-firestore.repository';
2
- export * from './product-firestore.repository';
3
- export * from './product-variant-firestore.repository';
4
- export * from './subscription-product-firestore.repository';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyw2Q0FBNkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnknXG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnknXG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC1maXJlc3RvcmUucmVwb3NpdG9yeSdcbmV4cG9ydCAqIGZyb20gJy4vc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnknXG4iXX0=
1
+ export * from './category-firestore.repository';
2
+ export * from './product-firestore.repository';
3
+ export * from './product-variant-firestore.repository';
4
+ export * from './subscription-product-firestore.repository';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyw2Q0FBNkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeSdcclxuZXhwb3J0ICogZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQtZmlyZXN0b3JlLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnknXHJcbiJdfQ==
@@ -1,54 +1,54 @@
1
- import { Product, Where, } from '../../../../../domain';
2
- import { Base } from '../../../../../utils';
3
- import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
- export class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
- constructor({ firestore, interceptors }) {
6
- super({
7
- firestore,
8
- collectionName: 'productsErpVitrine',
9
- model: Product,
10
- interceptors,
11
- });
12
- this.reviews = {};
13
- }
14
- async getBySlug(slug) {
15
- const result = await this.find({
16
- filters: {
17
- slug: { operator: Where.EQUALS, value: slug },
18
- },
19
- });
20
- return result?.data?.shift();
21
- }
22
- async fetchReviews(status) {
23
- const { data: products } = await this.find();
24
- products.forEach((product) => {
25
- if ([undefined, 0].includes(product.reviews?.length))
26
- return;
27
- const productInfo = {
28
- productId: product.id,
29
- productName: product.name,
30
- productSku: product.sku,
31
- };
32
- this.reviews.pending = [];
33
- this.reviews.approved = [];
34
- this.reviews.rejected = [];
35
- product.reviews.forEach((review) => {
36
- if ([null, undefined].includes(review.status))
37
- return this.reviews.pending.push({ ...review, ...productInfo });
38
- if (review.status === false)
39
- return this.reviews.rejected.push({ ...review, ...productInfo });
40
- if (!!review.status)
41
- return this.reviews.approved.push({ ...review, ...productInfo });
42
- return review;
43
- });
44
- });
45
- return this.reviews[status];
46
- }
47
- cleanShoppingCountFromIds() {
48
- return;
49
- }
50
- findCatalog(params) {
51
- return this.find(params);
52
- }
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxPQUFPLEVBS1AsS0FBSyxHQUNOLE1BQU0sdUJBQXVCLENBQUE7QUFDOUIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRTNDLE9BQU8sRUFBOEIsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4RyxNQUFNLE9BQU8sMEJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUM7SUFLcEUsWUFBWSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQTJFO1FBQzlHLEtBQUssQ0FBQztZQUNKLFNBQVM7WUFDVCxjQUFjLEVBQUUsb0JBQW9CO1lBQ3BDLEtBQUssRUFBRSxPQUFPO1lBQ2QsWUFBWTtTQUNiLENBQUMsQ0FBQTtRQVJJLFlBQU8sR0FBaUUsRUFBRSxDQUFBO0lBU2xGLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUyxDQUFDLElBQVk7UUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzdCLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2FBQzlDO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsT0FBTyxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQTBCO1FBQzNDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7UUFFNUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO2dCQUFFLE9BQU07WUFFNUQsTUFBTSxXQUFXLEdBQUc7Z0JBQ2xCLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRTtnQkFDckIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO2dCQUN6QixVQUFVLEVBQUUsT0FBTyxDQUFDLEdBQUc7YUFDeEIsQ0FBQTtZQUVELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQTtZQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO1lBRTFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7b0JBQUUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLENBQUE7Z0JBQzlHLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLO29CQUFFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQyxDQUFBO2dCQUM3RixJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTtvQkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUMsQ0FBQTtnQkFFckYsT0FBTyxNQUFNLENBQUE7WUFDZixDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdCLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsT0FBTTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBcUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEZpbmRSZXBvc2l0b3J5UGFyYW1zLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0UmVwb3NpdG9yeSxcbiAgUmVwb3NpdG9yeUZpbmRSZXN1bHQsXG4gIFJldmlld1N0YXR1c1BhcmFtcyxcbiAgUmV2aWV3V2l0aFByb2R1Y3REYXRhLFxuICBXaGVyZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPFByb2R1Y3Q+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBQcm9kdWN0UmVwb3NpdG9yeVxue1xuICBwcml2YXRlIHJldmlld3M6IFBhcnRpYWw8UmVjb3JkPFJldmlld1N0YXR1c1BhcmFtcywgUmV2aWV3V2l0aFByb2R1Y3REYXRhW10+PiA9IHt9XG5cbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPFByb2R1Y3Q+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPikge1xuICAgIHN1cGVyKHtcbiAgICAgIGZpcmVzdG9yZSxcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAncHJvZHVjdHNFcnBWaXRyaW5lJyxcbiAgICAgIG1vZGVsOiBQcm9kdWN0LFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRCeVNsdWcoc2x1Zzogc3RyaW5nKTogUHJvbWlzZTxQcm9kdWN0PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgc2x1ZzogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogc2x1ZyB9LFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHJlc3VsdD8uZGF0YT8uc2hpZnQoKVxuICB9XG5cbiAgYXN5bmMgZmV0Y2hSZXZpZXdzKHN0YXR1czogUmV2aWV3U3RhdHVzUGFyYW1zKTogUHJvbWlzZTxSZXZpZXdXaXRoUHJvZHVjdERhdGFbXT4ge1xuICAgIGNvbnN0IHsgZGF0YTogcHJvZHVjdHMgfSA9IGF3YWl0IHRoaXMuZmluZCgpXG5cbiAgICBwcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XG4gICAgICBpZiAoW3VuZGVmaW5lZCwgMF0uaW5jbHVkZXMocHJvZHVjdC5yZXZpZXdzPy5sZW5ndGgpKSByZXR1cm5cblxuICAgICAgY29uc3QgcHJvZHVjdEluZm8gPSB7XG4gICAgICAgIHByb2R1Y3RJZDogcHJvZHVjdC5pZCxcbiAgICAgICAgcHJvZHVjdE5hbWU6IHByb2R1Y3QubmFtZSxcbiAgICAgICAgcHJvZHVjdFNrdTogcHJvZHVjdC5za3UsXG4gICAgICB9XG5cbiAgICAgIHRoaXMucmV2aWV3cy5wZW5kaW5nID0gW11cbiAgICAgIHRoaXMucmV2aWV3cy5hcHByb3ZlZCA9IFtdXG4gICAgICB0aGlzLnJldmlld3MucmVqZWN0ZWQgPSBbXVxuXG4gICAgICBwcm9kdWN0LnJldmlld3MuZm9yRWFjaCgocmV2aWV3KSA9PiB7XG4gICAgICAgIGlmIChbbnVsbCwgdW5kZWZpbmVkXS5pbmNsdWRlcyhyZXZpZXcuc3RhdHVzKSkgcmV0dXJuIHRoaXMucmV2aWV3cy5wZW5kaW5nLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG4gICAgICAgIGlmIChyZXZpZXcuc3RhdHVzID09PSBmYWxzZSkgcmV0dXJuIHRoaXMucmV2aWV3cy5yZWplY3RlZC5wdXNoKHsgLi4ucmV2aWV3LCAuLi5wcm9kdWN0SW5mbyB9KVxuICAgICAgICBpZiAoISFyZXZpZXcuc3RhdHVzKSByZXR1cm4gdGhpcy5yZXZpZXdzLmFwcHJvdmVkLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG5cbiAgICAgICAgcmV0dXJuIHJldmlld1xuICAgICAgfSlcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXMucmV2aWV3c1tzdGF0dXNdXG4gIH1cblxuICBjbGVhblNob3BwaW5nQ291bnRGcm9tSWRzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVyblxuICB9XG5cbiAgZmluZENhdGFsb2cocGFyYW1zOiBGaW5kUmVwb3NpdG9yeVBhcmFtczxQcm9kdWN0Pik6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8UHJvZHVjdD4+IHtcbiAgICByZXR1cm4gdGhpcy5maW5kKHBhcmFtcylcbiAgfVxufVxuIl19
1
+ import { Product, Where, } from '../../../../../domain';
2
+ import { Base } from '../../../../../utils';
3
+ import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
+ export class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
+ constructor({ firestore, interceptors }) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'productsErpVitrine',
9
+ model: Product,
10
+ interceptors,
11
+ });
12
+ this.reviews = {};
13
+ }
14
+ async getBySlug(slug) {
15
+ const result = await this.find({
16
+ filters: {
17
+ slug: { operator: Where.EQUALS, value: slug },
18
+ },
19
+ });
20
+ return result?.data?.shift();
21
+ }
22
+ async fetchReviews(status) {
23
+ const { data: products } = await this.find();
24
+ products.forEach((product) => {
25
+ if ([undefined, 0].includes(product.reviews?.length))
26
+ return;
27
+ const productInfo = {
28
+ productId: product.id,
29
+ productName: product.name,
30
+ productSku: product.sku,
31
+ };
32
+ this.reviews.pending = [];
33
+ this.reviews.approved = [];
34
+ this.reviews.rejected = [];
35
+ product.reviews.forEach((review) => {
36
+ if ([null, undefined].includes(review.status))
37
+ return this.reviews.pending.push({ ...review, ...productInfo });
38
+ if (review.status === false)
39
+ return this.reviews.rejected.push({ ...review, ...productInfo });
40
+ if (!!review.status)
41
+ return this.reviews.approved.push({ ...review, ...productInfo });
42
+ return review;
43
+ });
44
+ });
45
+ return this.reviews[status];
46
+ }
47
+ cleanShoppingCountFromIds() {
48
+ return;
49
+ }
50
+ findCatalog(params) {
51
+ return this.find(params);
52
+ }
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxPQUFPLEVBS1AsS0FBSyxHQUNOLE1BQU0sdUJBQXVCLENBQUE7QUFDOUIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRTNDLE9BQU8sRUFBOEIsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4RyxNQUFNLE9BQU8sMEJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUM7SUFLcEUsWUFBWSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQTJFO1FBQzlHLEtBQUssQ0FBQztZQUNKLFNBQVM7WUFDVCxjQUFjLEVBQUUsb0JBQW9CO1lBQ3BDLEtBQUssRUFBRSxPQUFPO1lBQ2QsWUFBWTtTQUNiLENBQUMsQ0FBQTtRQVJJLFlBQU8sR0FBaUUsRUFBRSxDQUFBO0lBU2xGLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUyxDQUFDLElBQVk7UUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzdCLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2FBQzlDO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsT0FBTyxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQTBCO1FBQzNDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7UUFFNUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO2dCQUFFLE9BQU07WUFFNUQsTUFBTSxXQUFXLEdBQUc7Z0JBQ2xCLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRTtnQkFDckIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO2dCQUN6QixVQUFVLEVBQUUsT0FBTyxDQUFDLEdBQUc7YUFDeEIsQ0FBQTtZQUVELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQTtZQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO1lBRTFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7b0JBQUUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLENBQUE7Z0JBQzlHLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLO29CQUFFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQyxDQUFBO2dCQUM3RixJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTtvQkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUMsQ0FBQTtnQkFFckYsT0FBTyxNQUFNLENBQUE7WUFDZixDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdCLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsT0FBTTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBcUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgRmluZFJlcG9zaXRvcnlQYXJhbXMsXHJcbiAgUHJvZHVjdCxcclxuICBQcm9kdWN0UmVwb3NpdG9yeSxcclxuICBSZXBvc2l0b3J5RmluZFJlc3VsdCxcclxuICBSZXZpZXdTdGF0dXNQYXJhbXMsXHJcbiAgUmV2aWV3V2l0aFByb2R1Y3REYXRhLFxyXG4gIFdoZXJlLFxyXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5cclxuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcclxuXHJcbmV4cG9ydCBjbGFzcyBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeVxyXG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxQcm9kdWN0PihCYXNlKSkpXHJcbiAgaW1wbGVtZW50cyBQcm9kdWN0UmVwb3NpdG9yeVxyXG57XHJcbiAgcHJpdmF0ZSByZXZpZXdzOiBQYXJ0aWFsPFJlY29yZDxSZXZpZXdTdGF0dXNQYXJhbXMsIFJldmlld1dpdGhQcm9kdWN0RGF0YVtdPj4gPSB7fVxyXG5cclxuICBjb25zdHJ1Y3Rvcih7IGZpcmVzdG9yZSwgaW50ZXJjZXB0b3JzIH06IFBpY2s8RmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXM8UHJvZHVjdD4sICdmaXJlc3RvcmUnIHwgJ2ludGVyY2VwdG9ycyc+KSB7XHJcbiAgICBzdXBlcih7XHJcbiAgICAgIGZpcmVzdG9yZSxcclxuICAgICAgY29sbGVjdGlvbk5hbWU6ICdwcm9kdWN0c0VycFZpdHJpbmUnLFxyXG4gICAgICBtb2RlbDogUHJvZHVjdCxcclxuICAgICAgaW50ZXJjZXB0b3JzLFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldEJ5U2x1ZyhzbHVnOiBzdHJpbmcpOiBQcm9taXNlPFByb2R1Y3Q+IHtcclxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmluZCh7XHJcbiAgICAgIGZpbHRlcnM6IHtcclxuICAgICAgICBzbHVnOiB7IG9wZXJhdG9yOiBXaGVyZS5FUVVBTFMsIHZhbHVlOiBzbHVnIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9KVxyXG5cclxuICAgIHJldHVybiByZXN1bHQ/LmRhdGE/LnNoaWZ0KClcclxuICB9XHJcblxyXG4gIGFzeW5jIGZldGNoUmV2aWV3cyhzdGF0dXM6IFJldmlld1N0YXR1c1BhcmFtcyk6IFByb21pc2U8UmV2aWV3V2l0aFByb2R1Y3REYXRhW10+IHtcclxuICAgIGNvbnN0IHsgZGF0YTogcHJvZHVjdHMgfSA9IGF3YWl0IHRoaXMuZmluZCgpXHJcblxyXG4gICAgcHJvZHVjdHMuZm9yRWFjaCgocHJvZHVjdCkgPT4ge1xyXG4gICAgICBpZiAoW3VuZGVmaW5lZCwgMF0uaW5jbHVkZXMocHJvZHVjdC5yZXZpZXdzPy5sZW5ndGgpKSByZXR1cm5cclxuXHJcbiAgICAgIGNvbnN0IHByb2R1Y3RJbmZvID0ge1xyXG4gICAgICAgIHByb2R1Y3RJZDogcHJvZHVjdC5pZCxcclxuICAgICAgICBwcm9kdWN0TmFtZTogcHJvZHVjdC5uYW1lLFxyXG4gICAgICAgIHByb2R1Y3RTa3U6IHByb2R1Y3Quc2t1LFxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnJldmlld3MucGVuZGluZyA9IFtdXHJcbiAgICAgIHRoaXMucmV2aWV3cy5hcHByb3ZlZCA9IFtdXHJcbiAgICAgIHRoaXMucmV2aWV3cy5yZWplY3RlZCA9IFtdXHJcblxyXG4gICAgICBwcm9kdWN0LnJldmlld3MuZm9yRWFjaCgocmV2aWV3KSA9PiB7XHJcbiAgICAgICAgaWYgKFtudWxsLCB1bmRlZmluZWRdLmluY2x1ZGVzKHJldmlldy5zdGF0dXMpKSByZXR1cm4gdGhpcy5yZXZpZXdzLnBlbmRpbmcucHVzaCh7IC4uLnJldmlldywgLi4ucHJvZHVjdEluZm8gfSlcclxuICAgICAgICBpZiAocmV2aWV3LnN0YXR1cyA9PT0gZmFsc2UpIHJldHVybiB0aGlzLnJldmlld3MucmVqZWN0ZWQucHVzaCh7IC4uLnJldmlldywgLi4ucHJvZHVjdEluZm8gfSlcclxuICAgICAgICBpZiAoISFyZXZpZXcuc3RhdHVzKSByZXR1cm4gdGhpcy5yZXZpZXdzLmFwcHJvdmVkLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXHJcblxyXG4gICAgICAgIHJldHVybiByZXZpZXdcclxuICAgICAgfSlcclxuICAgIH0pXHJcblxyXG4gICAgcmV0dXJuIHRoaXMucmV2aWV3c1tzdGF0dXNdXHJcbiAgfVxyXG5cclxuICBjbGVhblNob3BwaW5nQ291bnRGcm9tSWRzKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuXHJcbiAgfVxyXG5cclxuICBmaW5kQ2F0YWxvZyhwYXJhbXM6IEZpbmRSZXBvc2l0b3J5UGFyYW1zPFByb2R1Y3Q+KTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxQcm9kdWN0Pj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZmluZChwYXJhbXMpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,16 +1,16 @@
1
- import { Product, Variant } from '../../../../../domain';
2
- import { Base } from '../../../../../utils';
3
- import { withCrudFirestore, withFirestore, withHelpers, withSubCollection, } from '../../mixins';
4
- export class ProductVariantFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Product) {
5
- constructor({ firestore, interceptors }, parentRepository) {
6
- super({
7
- firestore,
8
- collectionName: 'variants',
9
- parentIdField: 'productId',
10
- model: Variant,
11
- interceptors,
12
- });
13
- this.parentRepository = parentRepository;
14
- }
15
- }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC12YXJpYW50LWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9jYXRhbG9nL3Byb2R1Y3QtdmFyaWFudC1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBcUIsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDM0MsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLGNBQWMsQ0FBQTtBQUlyQixNQUFNLE9BQU8saUNBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUM7SUFHaEcsWUFDRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQTJFLEVBQ2xGLGdCQUE0QztRQUU5RCxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFVBQVU7WUFDMUIsYUFBYSxFQUFFLFdBQVc7WUFDMUIsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO1FBUmdCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7SUFTaEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgVmFyaWFudCwgVmFyaWFudFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQge1xuICBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcyxcbiAgd2l0aENydWRGaXJlc3RvcmUsXG4gIHdpdGhGaXJlc3RvcmUsXG4gIHdpdGhIZWxwZXJzLFxuICB3aXRoU3ViQ29sbGVjdGlvbixcbn0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5pbXBvcnQgeyBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4vcHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeSdcblxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhTdWJDb2xsZWN0aW9uKHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8VmFyaWFudD4oQmFzZSkpKSwgUHJvZHVjdClcbiAgaW1wbGVtZW50cyBWYXJpYW50UmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3RvcihcbiAgICB7IGZpcmVzdG9yZSwgaW50ZXJjZXB0b3JzIH06IFBpY2s8RmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXM8VmFyaWFudD4sICdmaXJlc3RvcmUnIHwgJ2ludGVyY2VwdG9ycyc+LFxuICAgIG92ZXJyaWRlIHJlYWRvbmx5IHBhcmVudFJlcG9zaXRvcnk6IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICBmaXJlc3RvcmUsXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ3ZhcmlhbnRzJyxcbiAgICAgIHBhcmVudElkRmllbGQ6ICdwcm9kdWN0SWQnLFxuICAgICAgbW9kZWw6IFZhcmlhbnQsXG4gICAgICBpbnRlcmNlcHRvcnMsXG4gICAgfSlcbiAgfVxufVxuIl19
1
+ import { Product, Variant } from '../../../../../domain';
2
+ import { Base } from '../../../../../utils';
3
+ import { withCrudFirestore, withFirestore, withHelpers, withSubCollection, } from '../../mixins';
4
+ export class ProductVariantFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Product) {
5
+ constructor({ firestore, interceptors }, parentRepository) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'variants',
9
+ parentIdField: 'productId',
10
+ model: Variant,
11
+ interceptors,
12
+ });
13
+ this.parentRepository = parentRepository;
14
+ }
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC12YXJpYW50LWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9jYXRhbG9nL3Byb2R1Y3QtdmFyaWFudC1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBcUIsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDM0MsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLGNBQWMsQ0FBQTtBQUlyQixNQUFNLE9BQU8saUNBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUM7SUFHaEcsWUFDRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQTJFLEVBQ2xGLGdCQUE0QztRQUU5RCxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFVBQVU7WUFDMUIsYUFBYSxFQUFFLFdBQVc7WUFDMUIsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO1FBUmdCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7SUFTaEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgVmFyaWFudCwgVmFyaWFudFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcclxuaW1wb3J0IHtcclxuICBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcyxcclxuICB3aXRoQ3J1ZEZpcmVzdG9yZSxcclxuICB3aXRoRmlyZXN0b3JlLFxyXG4gIHdpdGhIZWxwZXJzLFxyXG4gIHdpdGhTdWJDb2xsZWN0aW9uLFxyXG59IGZyb20gJy4uLy4uL21peGlucydcclxuXHJcbmltcG9ydCB7IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5J1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50RmlyZXN0b3JlUmVwb3NpdG9yeVxyXG4gIGV4dGVuZHMgd2l0aFN1YkNvbGxlY3Rpb24od2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxWYXJpYW50PihCYXNlKSkpLCBQcm9kdWN0KVxyXG4gIGltcGxlbWVudHMgVmFyaWFudFJlcG9zaXRvcnlcclxue1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPFZhcmlhbnQ+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPixcclxuICAgIG92ZXJyaWRlIHJlYWRvbmx5IHBhcmVudFJlcG9zaXRvcnk6IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxyXG4gICkge1xyXG4gICAgc3VwZXIoe1xyXG4gICAgICBmaXJlc3RvcmUsXHJcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAndmFyaWFudHMnLFxyXG4gICAgICBwYXJlbnRJZEZpZWxkOiAncHJvZHVjdElkJyxcclxuICAgICAgbW9kZWw6IFZhcmlhbnQsXHJcbiAgICAgIGludGVyY2VwdG9ycyxcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,14 +1,14 @@
1
- import { Product } from '../../../../../domain';
2
- import { Base } from '../../../../../utils';
3
- import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
- export class SubscriptionProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
- constructor({ firestore, interceptors }) {
6
- super({
7
- firestore,
8
- collectionName: 'subscriptionProducts',
9
- model: Product,
10
- interceptors,
11
- });
12
- }
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBaUMsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFM0MsT0FBTyxFQUE4QixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhHLE1BQU0sT0FBTyxzQ0FDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdwRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBMkU7UUFDOUcsS0FBSyxDQUFDO1lBQ0osU0FBUztZQUNULGNBQWMsRUFBRSxzQkFBc0I7WUFDdEMsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmltcG9ydCB7IEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zLCB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb25Qcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8UHJvZHVjdD4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIFN1YnNjcmlwdGlvblByb2R1Y3RSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHsgZmlyZXN0b3JlLCBpbnRlcmNlcHRvcnMgfTogUGljazxGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxQcm9kdWN0PiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4pIHtcbiAgICBzdXBlcih7XG4gICAgICBmaXJlc3RvcmUsXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ3N1YnNjcmlwdGlvblByb2R1Y3RzJyxcbiAgICAgIG1vZGVsOiBQcm9kdWN0LFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cbn1cbiJdfQ==
1
+ import { Product } from '../../../../../domain';
2
+ import { Base } from '../../../../../utils';
3
+ import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
+ export class SubscriptionProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
+ constructor({ firestore, interceptors }) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'subscriptionProducts',
9
+ model: Product,
10
+ interceptors,
11
+ });
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBaUMsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFM0MsT0FBTyxFQUE4QixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhHLE1BQU0sT0FBTyxzQ0FDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdwRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBMkU7UUFDOUcsS0FBSyxDQUFDO1lBQ0osU0FBUztZQUNULGNBQWMsRUFBRSxzQkFBc0I7WUFDdEMsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcclxuXHJcbmltcG9ydCB7IEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zLCB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXHJcblxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0aW9uUHJvZHVjdEZpcmVzdG9yZVJlcG9zaXRvcnlcclxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8UHJvZHVjdD4oQmFzZSkpKVxyXG4gIGltcGxlbWVudHMgU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnlcclxue1xyXG4gIGNvbnN0cnVjdG9yKHsgZmlyZXN0b3JlLCBpbnRlcmNlcHRvcnMgfTogUGljazxGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxQcm9kdWN0PiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4pIHtcclxuICAgIHN1cGVyKHtcclxuICAgICAgZmlyZXN0b3JlLFxyXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ3N1YnNjcmlwdGlvblByb2R1Y3RzJyxcclxuICAgICAgbW9kZWw6IFByb2R1Y3QsXHJcbiAgICAgIGludGVyY2VwdG9ycyxcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,5 +1,5 @@
1
- export * from './users';
2
- export * from './catalog';
3
- export * from './shopping';
4
- export * from './shop-settings';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsV0FBVyxDQUFBO0FBQ3pCLGNBQWMsWUFBWSxDQUFBO0FBQzFCLGNBQWMsaUJBQWlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3VzZXJzJ1xuZXhwb3J0ICogZnJvbSAnLi9jYXRhbG9nJ1xuZXhwb3J0ICogZnJvbSAnLi9zaG9wcGluZydcbmV4cG9ydCAqIGZyb20gJy4vc2hvcC1zZXR0aW5ncydcbiJdfQ==
1
+ export * from './users';
2
+ export * from './catalog';
3
+ export * from './shopping';
4
+ export * from './shop-settings';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFBO0FBQ3ZCLGNBQWMsV0FBVyxDQUFBO0FBQ3pCLGNBQWMsWUFBWSxDQUFBO0FBQzFCLGNBQWMsaUJBQWlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3VzZXJzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2NhdGFsb2cnXHJcbmV4cG9ydCAqIGZyb20gJy4vc2hvcHBpbmcnXHJcbmV4cG9ydCAqIGZyb20gJy4vc2hvcC1zZXR0aW5ncydcclxuIl19
@@ -1,60 +1,60 @@
1
- import { Timestamp } from 'firebase/firestore';
2
- import { Category, Home, Product } from '../../../../../domain';
3
- import { Base } from '../../../../../utils';
4
- import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
5
- export class HomeFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
6
- constructor({ firestore, interceptors }) {
7
- super({
8
- firestore,
9
- collectionName: 'dms',
10
- model: Home,
11
- interceptors,
12
- });
13
- this.homeCategoryGroupToPlain = (homeCategoryGroup) => ({
14
- category: homeCategoryGroup?.category?.toPlain
15
- ? homeCategoryGroup?.category?.toPlain()
16
- : homeCategoryGroup?.category,
17
- products: homeCategoryGroup?.products
18
- ?.map((product) => (product?.toPlain ? product?.toPlain() : product))
19
- .filter(Boolean) || [],
20
- });
21
- this.plainToHomeCategoryGroup = (homeCategoryGroup) => ({
22
- category: Category.toInstance(homeCategoryGroup?.category),
23
- products: homeCategoryGroup.products?.map((product) => Product.toInstance(product)),
24
- });
25
- }
26
- buildModelInstance() {
27
- const { fromFirestore, toFirestore } = super.buildModelInstance();
28
- return {
29
- toFirestore: (data) => {
30
- const modifiedData = this.homeToFirestore(data);
31
- return toFirestore(modifiedData);
32
- },
33
- fromFirestore: (snap) => {
34
- const instance = fromFirestore(snap);
35
- return this.homeFromFirestore(instance);
36
- },
37
- };
38
- }
39
- homeToFirestore(home) {
40
- if (home.data?.data) {
41
- home.data.data.discoverProducts = home.data.data.discoverProducts?.map(this.homeCategoryGroupToPlain) || [];
42
- home.data.data.featuredProducts = home.data.data.featuredProducts?.map(this.homeCategoryGroupToPlain) || [];
43
- home.data.data.verticalProducts = home.data.data.verticalProducts?.map(this.homeCategoryGroupToPlain) || [];
44
- }
45
- return home;
46
- }
47
- homeFromFirestore(home) {
48
- if (home.data?.data) {
49
- home.data.data.discoverProducts = home.data.data.discoverProducts.map(this.plainToHomeCategoryGroup);
50
- home.data.data.featuredProducts = home.data.data.featuredProducts.map(this.plainToHomeCategoryGroup);
51
- home.data.data.verticalProducts = home.data.data.verticalProducts.map(this.plainToHomeCategoryGroup);
52
- home.data.createdAt =
53
- home.data.createdAt instanceof Timestamp ? home.data.createdAt.toDate() : home.data.createdAt;
54
- home.data.expiresAt =
55
- home.data.expiresAt instanceof Timestamp ? home.data.expiresAt.toDate() : home.data.expiresAt;
56
- }
57
- return home;
58
- }
59
- }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvc2hvcC1zZXR0aW5ncy9ob21lLWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUMsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbkYsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQXFDLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ2xHLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUMzQyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLHVCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR2pFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUF3RTtRQUMzRyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLEtBQUs7WUFDckIsS0FBSyxFQUFFLElBQUk7WUFDWCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO1FBaUNJLDZCQUF3QixHQUFHLENBQUMsaUJBQW9DLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxPQUFPO2dCQUM1QyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtnQkFDeEMsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLFFBQVE7WUFDL0IsUUFBUSxFQUNOLGlCQUFpQixFQUFFLFFBQVE7Z0JBQ3pCLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVB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QUFZLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFBO1lBQy9GLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztnQkFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLFlBQVksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUE7U0FDaEc7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7Q0FNRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvY3VtZW50RGF0YSwgUXVlcnlEb2N1bWVudFNuYXBzaG90LCBUaW1lc3RhbXAgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5pbXBvcnQgeyBDYXRlZ29yeSwgSG9tZSwgSG9tZUNhdGVnb3J5R3JvdXAsIEhvbWVSZXBvc2l0b3J5LCBQcm9kdWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcblxuZXhwb3J0IGNsYXNzIEhvbWVGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxIb21lPihCYXNlKSkpXG4gIGltcGxlbWVudHMgSG9tZVJlcG9zaXRvcnlcbntcbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPEhvbWU+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPikge1xuICAgIHN1cGVyKHtcbiAgICAgIGZpcmVzdG9yZSxcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAnZG1zJyxcbiAgICAgIG1vZGVsOiBIb21lLFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cblxuICBvdmVycmlkZSBidWlsZE1vZGVsSW5zdGFuY2UoKToge1xuICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogSG9tZSkgPT4gRG9jdW1lbnREYXRhXG4gICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxIb21lPikgPT4gSG9tZVxuICB9IHtcbiAgICBjb25zdCB7IGZyb21GaXJlc3RvcmUsIHRvRmlyZXN0b3JlIH0gPSBzdXBlci5idWlsZE1vZGVsSW5zdGFuY2UoKVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogSG9tZSk6IERvY3VtZW50RGF0YSA9PiB7XG4gICAgICAgIGNvbnN0IG1vZGlmaWVkRGF0YSA9IHRoaXMuaG9tZVRvRmlyZXN0b3JlKGRhdGEpXG5cbiAgICAgICAgcmV0dXJuIHRvRmlyZXN0b3JlKG1vZGlmaWVkRGF0YSlcbiAgICAgIH0sXG4gICAgICBmcm9tRmlyZXN0b3JlOiAoc25hcDogUXVlcnlEb2N1bWVudFNuYXBzaG90PEhvbWU+KTogSG9tZSA9PiB7XG4gICAgICAgIGNvbnN0IGluc3RhbmNlID0gZnJvbUZpcmVzdG9yZShzbmFwKVxuXG4gICAgICAgIHJldHVybiB0aGlzLmhvbWVGcm9tRmlyZXN0b3JlKGluc3RhbmNlKVxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhvbWVUb0ZpcmVzdG9yZShob21lOiBIb21lKTogSG9tZSB7XG4gICAgaWYgKGhvbWUuZGF0YT8uZGF0YSkge1xuICAgICAgaG9tZS5kYXRhLmRhdGEuZGlzY292ZXJQcm9kdWN0cyA9IGhvbWUuZGF0YS5kYXRhLmRpc2NvdmVyUHJvZHVjdHM/Lm1hcCh0aGlzLmhvbWVDYXRlZ29yeUdyb3VwVG9QbGFpbikgfHwgW11cbiAgICAgIGhvbWUuZGF0YS5kYXRhLmZlYXR1cmVkUHJvZHVjdHMgPSBob21lLmRhdGEuZGF0YS5mZWF0dXJlZFByb2R1Y3RzPy5tYXAodGhpcy5ob21lQ2F0ZWdvcnlHcm91cFRvUGxhaW4pIHx8IFtdXG4gICAgICBob21lLmRhdGEuZGF0YS52ZXJ0aWNhbFByb2R1Y3RzID0gaG9tZS5kYXRhLmRhdGEudmVydGljYWxQcm9kdWN0cz8ubWFwKHRoaXMuaG9tZUNhdGVnb3J5R3JvdXBUb1BsYWluKSB8fCBbXVxuICAgIH1cblxuICAgIHJldHVybiBob21lXG4gIH1cblxuICBwcml2YXRlIGhvbWVDYXRlZ29yeUdyb3VwVG9QbGFpbiA9IChob21lQ2F0ZWdvcnlHcm91cDogSG9tZUNhdGVnb3J5R3JvdXApID0+ICh7XG4gICAgY2F0ZWdvcnk6IGhvbWVDYXRlZ29yeUdyb3VwPy5jYXRlZ29yeT8udG9QbGFpblxuICAgICAgPyBob21lQ2F0ZWdvcnlHcm91cD8uY2F0ZWdvcnk/LnRvUGxhaW4oKVxuICAgICAgOiBob21lQ2F0ZWdvcnlHcm91cD8uY2F0ZWdvcnksXG4gICAgcHJvZHVjdHM6XG4gICAgICBob21lQ2F0ZWdvcnlHcm91cD8ucHJvZHVjdHNcbiAgICAgICAgPy5tYXAoKHByb2R1Y3QpID0+IChwcm9kdWN0Py50b1BsYWluID8gcHJvZHVjdD8udG9QbGFpbigpIDogcHJvZHVjdCkpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbikgfHwgW10sXG4gIH0pXG5cbiAgcHJpdmF0ZSBob21lRnJvbUZpcmVzdG9yZShob21lOiBIb21lKTogSG9tZSB7XG4gICAgaWYgKGhvbWUuZGF0YT8uZGF0YSkge1xuICAgICAgaG9tZS5kYXRhLmRhdGEuZGlzY292ZXJQcm9kdWN0cyA9IGhvbWUuZGF0YS5kYXRhLmRpc2NvdmVyUHJvZHVjdHMubWFwKHRoaXMucGxhaW5Ub0hvbWVDYXRlZ29yeUdyb3VwKVxuICAgICAgaG9tZS5kYXRhLmRhdGEuZmVhdHVyZWRQcm9kdWN0cyA9IGhvbWUuZGF0YS5kYXRhLmZlYXR1cmVkUHJvZHVjdHMubWFwKHRoaXMucGxhaW5Ub0hvbWVDYXRlZ29yeUdyb3VwKVxuICAgICAgaG9tZS5kYXRhLmRhdGEudmVydGljYWxQcm9kdWN0cyA9IGhvbWUuZGF0YS5kYXRhLnZlcnRpY2FsUHJvZHVjdHMubWFwKHRoaXMucGxhaW5Ub0hvbWVDYXRlZ29yeUdyb3VwKVxuICAgICAgaG9tZS5kYXRhLmNyZWF0ZWRBdCA9XG4gICAgICAgIGhvbWUuZGF0YS5jcmVhdGVkQXQgaW5zdGFuY2VvZiBUaW1lc3RhbXAgPyBob21lLmRhdGEuY3JlYXRlZEF0LnRvRGF0ZSgpIDogaG9tZS5kYXRhLmNyZWF0ZWRBdFxuICAgICAgaG9tZS5kYXRhLmV4cGlyZXNBdCA9XG4gICAgICAgIGhvbWUuZGF0YS5leHBpcmVzQXQgaW5zdGFuY2VvZiBUaW1lc3RhbXAgPyBob21lLmRhdGEuZXhwaXJlc0F0LnRvRGF0ZSgpIDogaG9tZS5kYXRhLmV4cGlyZXNBdFxuICAgIH1cblxuICAgIHJldHVybiBob21lXG4gIH1cblxuICBwcml2YXRlIHBsYWluVG9Ib21lQ2F0ZWdvcnlHcm91cCA9IChob21lQ2F0ZWdvcnlHcm91cDogSG9tZUNhdGVnb3J5R3JvdXApID0+ICh7XG4gICAgY2F0ZWdvcnk6IENhdGVnb3J5LnRvSW5zdGFuY2UoaG9tZUNhdGVnb3J5R3JvdXA/LmNhdGVnb3J5KSxcbiAgICBwcm9kdWN0czogaG9tZUNhdGVnb3J5R3JvdXAucHJvZHVjdHM/Lm1hcCgocHJvZHVjdCkgPT4gUHJvZHVjdC50b0luc3RhbmNlKHByb2R1Y3QpKSxcbiAgfSlcbn1cbiJdfQ==
1
+ import { Timestamp } from 'firebase/firestore';
2
+ import { Category, Home, Product } from '../../../../../domain';
3
+ import { Base } from '../../../../../utils';
4
+ import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
5
+ export class HomeFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
6
+ constructor({ firestore, interceptors }) {
7
+ super({
8
+ firestore,
9
+ collectionName: 'dms',
10
+ model: Home,
11
+ interceptors,
12
+ });
13
+ this.homeCategoryGroupToPlain = (homeCategoryGroup) => ({
14
+ category: homeCategoryGroup?.category?.toPlain
15
+ ? homeCategoryGroup?.category?.toPlain()
16
+ : homeCategoryGroup?.category,
17
+ products: homeCategoryGroup?.products
18
+ ?.map((product) => (product?.toPlain ? product?.toPlain() : product))
19
+ .filter(Boolean) || [],
20
+ });
21
+ this.plainToHomeCategoryGroup = (homeCategoryGroup) => ({
22
+ category: Category.toInstance(homeCategoryGroup?.category),
23
+ products: homeCategoryGroup.products?.map((product) => Product.toInstance(product)),
24
+ });
25
+ }
26
+ buildModelInstance() {
27
+ const { fromFirestore, toFirestore } = super.buildModelInstance();
28
+ return {
29
+ toFirestore: (data) => {
30
+ const modifiedData = this.homeToFirestore(data);
31
+ return toFirestore(modifiedData);
32
+ },
33
+ fromFirestore: (snap) => {
34
+ const instance = fromFirestore(snap);
35
+ return this.homeFromFirestore(instance);
36
+ },
37
+ };
38
+ }
39
+ homeToFirestore(home) {
40
+ if (home.data?.data) {
41
+ home.data.data.discoverProducts = home.data.data.discoverProducts?.map(this.homeCategoryGroupToPlain) || [];
42
+ home.data.data.featuredProducts = home.data.data.featuredProducts?.map(this.homeCategoryGroupToPlain) || [];
43
+ home.data.data.verticalProducts = home.data.data.verticalProducts?.map(this.homeCategoryGroupToPlain) || [];
44
+ }
45
+ return home;
46
+ }
47
+ homeFromFirestore(home) {
48
+ if (home.data?.data) {
49
+ home.data.data.discoverProducts = home.data.data.discoverProducts.map(this.plainToHomeCategoryGroup);
50
+ home.data.data.featuredProducts = home.data.data.featuredProducts.map(this.plainToHomeCategoryGroup);
51
+ home.data.data.verticalProducts = home.data.data.verticalProducts.map(this.plainToHomeCategoryGroup);
52
+ home.data.createdAt =
53
+ home.data.createdAt instanceof Timestamp ? home.data.createdAt.toDate() : home.data.createdAt;
54
+ home.data.expiresAt =
55
+ home.data.expiresAt instanceof Timestamp ? home.data.expiresAt.toDate() : home.data.expiresAt;
56
+ }
57
+ return home;
58
+ }
59
+ }
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvc2hvcC1zZXR0aW5ncy9ob21lLWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUMsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbkYsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQXFDLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ2xHLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUMzQyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLHVCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR2pFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUF3RTtRQUMzRyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLEtBQUs7WUFDckIsS0FBSyxFQUFFLElBQUk7WUFDWCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO1FBaUNJLDZCQUF3QixHQUFHLENBQUMsaUJBQW9DLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxPQUFPO2dCQUM1QyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtnQkFDeEMsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLFFBQVE7WUFDL0IsUUFBUSxFQUNOLGlCQUFpQixFQUFFLFFBQVE7Z0JBQ3pCLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVB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QUFZLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFBO1lBQy9GLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztnQkFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLFlBQVksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUE7U0FDaEc7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7Q0FNRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvY3VtZW50RGF0YSwgUXVlcnlEb2N1bWVudFNuYXBzaG90LCBUaW1lc3RhbXAgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXHJcbmltcG9ydCB7IENhdGVnb3J5LCBIb21lLCBIb21lQ2F0ZWdvcnlHcm91cCwgSG9tZVJlcG9zaXRvcnksIFByb2R1Y3QgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcclxuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMsIHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcclxuXHJcbmV4cG9ydCBjbGFzcyBIb21lRmlyZXN0b3JlUmVwb3NpdG9yeVxyXG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxIb21lPihCYXNlKSkpXHJcbiAgaW1wbGVtZW50cyBIb21lUmVwb3NpdG9yeVxyXG57XHJcbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPEhvbWU+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPikge1xyXG4gICAgc3VwZXIoe1xyXG4gICAgICBmaXJlc3RvcmUsXHJcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAnZG1zJyxcclxuICAgICAgbW9kZWw6IEhvbWUsXHJcbiAgICAgIGludGVyY2VwdG9ycyxcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBidWlsZE1vZGVsSW5zdGFuY2UoKToge1xyXG4gICAgdG9GaXJlc3RvcmU6IChkYXRhOiBIb21lKSA9PiBEb2N1bWVudERhdGFcclxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8SG9tZT4pID0+IEhvbWVcclxuICB9IHtcclxuICAgIGNvbnN0IHsgZnJvbUZpcmVzdG9yZSwgdG9GaXJlc3RvcmUgfSA9IHN1cGVyLmJ1aWxkTW9kZWxJbnN0YW5jZSgpXHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBIb21lKTogRG9jdW1lbnREYXRhID0+IHtcclxuICAgICAgICBjb25zdCBtb2RpZmllZERhdGEgPSB0aGlzLmhvbWVUb0ZpcmVzdG9yZShkYXRhKVxyXG5cclxuICAgICAgICByZXR1cm4gdG9GaXJlc3RvcmUobW9kaWZpZWREYXRhKVxyXG4gICAgICB9LFxyXG4gICAgICBmcm9tRmlyZXN0b3JlOiAoc25hcDogUXVlcnlEb2N1bWVudFNuYXBzaG90PEhvbWU+KTogSG9tZSA9PiB7XHJcbiAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBmcm9tRmlyZXN0b3JlKHNuYXApXHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmhvbWVGcm9tRmlyZXN0b3JlKGluc3RhbmNlKVxyXG4gICAgICB9LFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBob21lVG9GaXJlc3RvcmUoaG9tZTogSG9tZSk6IEhvbWUge1xyXG4gICAgaWYgKGhvbWUuZGF0YT8uZGF0YSkge1xyXG4gICAgICBob21lLmRhdGEuZGF0YS5kaXNjb3ZlclByb2R1Y3RzID0gaG9tZS5kYXRhLmRhdGEuZGlzY292ZXJQcm9kdWN0cz8ubWFwKHRoaXMuaG9tZUNhdGVnb3J5R3JvdXBUb1BsYWluKSB8fCBbXVxyXG4gICAgICBob21lLmRhdGEuZGF0YS5mZWF0dXJlZFByb2R1Y3RzID0gaG9tZS5kYXRhLmRhdGEuZmVhdHVyZWRQcm9kdWN0cz8ubWFwKHRoaXMuaG9tZUNhdGVnb3J5R3JvdXBUb1BsYWluKSB8fCBbXVxyXG4gICAgICBob21lLmRhdGEuZGF0YS52ZXJ0aWNhbFByb2R1Y3RzID0gaG9tZS5kYXRhLmRhdGEudmVydGljYWxQcm9kdWN0cz8ubWFwKHRoaXMuaG9tZUNhdGVnb3J5R3JvdXBUb1BsYWluKSB8fCBbXVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBob21lXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhvbWVDYXRlZ29yeUdyb3VwVG9QbGFpbiA9IChob21lQ2F0ZWdvcnlHcm91cDogSG9tZUNhdGVnb3J5R3JvdXApID0+ICh7XHJcbiAgICBjYXRlZ29yeTogaG9tZUNhdGVnb3J5R3JvdXA/LmNhdGVnb3J5Py50b1BsYWluXHJcbiAgICAgID8gaG9tZUNhdGVnb3J5R3JvdXA/LmNhdGVnb3J5Py50b1BsYWluKClcclxuICAgICAgOiBob21lQ2F0ZWdvcnlHcm91cD8uY2F0ZWdvcnksXHJcbiAgICBwcm9kdWN0czpcclxuICAgICAgaG9tZUNhdGVnb3J5R3JvdXA/LnByb2R1Y3RzXHJcbiAgICAgICAgPy5tYXAoKHByb2R1Y3QpID0+IChwcm9kdWN0Py50b1BsYWluID8gcHJvZHVjdD8udG9QbGFpbigpIDogcHJvZHVjdCkpXHJcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKSB8fCBbXSxcclxuICB9KVxyXG5cclxuICBwcml2YXRlIGhvbWVGcm9tRmlyZXN0b3JlKGhvbWU6IEhvbWUpOiBIb21lIHtcclxuICAgIGlmIChob21lLmRhdGE/LmRhdGEpIHtcclxuICAgICAgaG9tZS5kYXRhLmRhdGEuZGlzY292ZXJQcm9kdWN0cyA9IGhvbWUuZGF0YS5kYXRhLmRpc2NvdmVyUHJvZHVjdHMubWFwKHRoaXMucGxhaW5Ub0hvbWVDYXRlZ29yeUdyb3VwKVxyXG4gICAgICBob21lLmRhdGEuZGF0YS5mZWF0dXJlZFByb2R1Y3RzID0gaG9tZS5kYXRhLmRhdGEuZmVhdHVyZWRQcm9kdWN0cy5tYXAodGhpcy5wbGFpblRvSG9tZUNhdGVnb3J5R3JvdXApXHJcbiAgICAgIGhvbWUuZGF0YS5kYXRhLnZlcnRpY2FsUHJvZHVjdHMgPSBob21lLmRhdGEuZGF0YS52ZXJ0aWNhbFByb2R1Y3RzLm1hcCh0aGlzLnBsYWluVG9Ib21lQ2F0ZWdvcnlHcm91cClcclxuICAgICAgaG9tZS5kYXRhLmNyZWF0ZWRBdCA9XHJcbiAgICAgICAgaG9tZS5kYXRhLmNyZWF0ZWRBdCBpbnN0YW5jZW9mIFRpbWVzdGFtcCA/IGhvbWUuZGF0YS5jcmVhdGVkQXQudG9EYXRlKCkgOiBob21lLmRhdGEuY3JlYXRlZEF0XHJcbiAgICAgIGhvbWUuZGF0YS5leHBpcmVzQXQgPVxyXG4gICAgICAgIGhvbWUuZGF0YS5leHBpcmVzQXQgaW5zdGFuY2VvZiBUaW1lc3RhbXAgPyBob21lLmRhdGEuZXhwaXJlc0F0LnRvRGF0ZSgpIDogaG9tZS5kYXRhLmV4cGlyZXNBdFxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBob21lXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBsYWluVG9Ib21lQ2F0ZWdvcnlHcm91cCA9IChob21lQ2F0ZWdvcnlHcm91cDogSG9tZUNhdGVnb3J5R3JvdXApID0+ICh7XHJcbiAgICBjYXRlZ29yeTogQ2F0ZWdvcnkudG9JbnN0YW5jZShob21lQ2F0ZWdvcnlHcm91cD8uY2F0ZWdvcnkpLFxyXG4gICAgcHJvZHVjdHM6IGhvbWVDYXRlZ29yeUdyb3VwLnByb2R1Y3RzPy5tYXAoKHByb2R1Y3QpID0+IFByb2R1Y3QudG9JbnN0YW5jZShwcm9kdWN0KSksXHJcbiAgfSlcclxufVxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- export * from './home-firestore.repository';
2
- export * from './shop-menu-firestore.repository';
3
- export * from './shop-settings-firestore.repository';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL3Nob3Atc2V0dGluZ3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsc0NBQXNDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hvbWUtZmlyZXN0b3JlLnJlcG9zaXRvcnknXG5leHBvcnQgKiBmcm9tICcuL3Nob3AtbWVudS1maXJlc3RvcmUucmVwb3NpdG9yeSdcbmV4cG9ydCAqIGZyb20gJy4vc2hvcC1zZXR0aW5ncy1maXJlc3RvcmUucmVwb3NpdG9yeSdcbiJdfQ==
1
+ export * from './home-firestore.repository';
2
+ export * from './shop-menu-firestore.repository';
3
+ export * from './shop-settings-firestore.repository';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL3Nob3Atc2V0dGluZ3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsc0NBQXNDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hvbWUtZmlyZXN0b3JlLnJlcG9zaXRvcnknXHJcbmV4cG9ydCAqIGZyb20gJy4vc2hvcC1tZW51LWZpcmVzdG9yZS5yZXBvc2l0b3J5J1xyXG5leHBvcnQgKiBmcm9tICcuL3Nob3Atc2V0dGluZ3MtZmlyZXN0b3JlLnJlcG9zaXRvcnknXHJcbiJdfQ==