@infrab4a/connect 4.1.7-beta.0 → 4.2.0-beta.1

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 (1060) hide show
  1. package/README.md +24 -0
  2. package/domain/catalog/helpers/index.d.ts +1 -0
  3. package/domain/catalog/helpers/round-product-price.helper.d.ts +4 -0
  4. package/domain/catalog/index.d.ts +3 -0
  5. package/domain/catalog/models/category-base.d.ts +30 -0
  6. package/domain/catalog/models/category-collection-children.d.ts +13 -0
  7. package/domain/catalog/models/category-filter.d.ts +13 -0
  8. package/domain/catalog/models/category-for-product.d.ts +5 -0
  9. package/domain/catalog/models/category.d.ts +7 -0
  10. package/domain/catalog/models/enums/index.d.ts +2 -0
  11. package/domain/catalog/models/enums/product-genders.enum.d.ts +5 -0
  12. package/domain/catalog/models/enums/shops.enum.d.ts +6 -0
  13. package/domain/catalog/models/filter-option.d.ts +9 -0
  14. package/domain/catalog/models/filter.d.ts +12 -0
  15. package/domain/catalog/models/index.d.ts +11 -0
  16. package/domain/catalog/models/kit-product.d.ts +12 -0
  17. package/domain/catalog/models/product-base.d.ts +40 -0
  18. package/domain/catalog/models/product-for-category.d.ts +7 -0
  19. package/domain/catalog/models/product-for-kit.d.ts +7 -0
  20. package/domain/catalog/models/product.d.ts +9 -0
  21. package/domain/catalog/models/types/category-condition.type.d.ts +4 -0
  22. package/domain/catalog/models/types/category-metadata.type.d.ts +4 -0
  23. package/domain/catalog/models/types/category-product.d.ts +4 -0
  24. package/domain/catalog/models/types/index.d.ts +11 -0
  25. package/domain/catalog/models/types/product-evaluation.type.d.ts +6 -0
  26. package/domain/catalog/models/types/product-gender.type.d.ts +1 -0
  27. package/domain/catalog/models/types/product-metadata.type.d.ts +4 -0
  28. package/domain/catalog/models/types/product-review.type.d.ts +17 -0
  29. package/domain/catalog/models/types/shop-description.type.d.ts +8 -0
  30. package/domain/catalog/models/types/shop-price.type.d.ts +6 -0
  31. package/domain/catalog/models/types/stock.type.d.ts +3 -0
  32. package/domain/catalog/models/types/variant-grade.type.d.ts +4 -0
  33. package/domain/catalog/models/variant.d.ts +17 -0
  34. package/domain/catalog/models/wishlist.d.ts +8 -0
  35. package/domain/catalog/repositories/category-collection-children.repository.d.ts +4 -0
  36. package/domain/catalog/repositories/category-filter.repository.d.ts +6 -0
  37. package/domain/catalog/repositories/category.repository.d.ts +18 -0
  38. package/domain/catalog/repositories/filter-option.repository.d.ts +4 -0
  39. package/domain/catalog/repositories/filter.repository.d.ts +4 -0
  40. package/domain/catalog/repositories/index.d.ts +9 -0
  41. package/domain/catalog/repositories/product.repository.d.ts +15 -0
  42. package/domain/catalog/repositories/subscription-product.repository.d.ts +4 -0
  43. package/domain/catalog/repositories/variant.repository.d.ts +4 -0
  44. package/domain/catalog/repositories/wishlist.repository.d.ts +6 -0
  45. package/domain/generic/index.d.ts +2 -0
  46. package/domain/generic/model/base.model.d.ts +14 -0
  47. package/domain/generic/model/identifier-fields.d.ts +4 -0
  48. package/domain/generic/model/index.d.ts +3 -0
  49. package/domain/generic/model/types/base-model-builder.type.d.ts +17 -0
  50. package/domain/generic/model/types/identifier-model.type.d.ts +8 -0
  51. package/domain/generic/model/types/index.d.ts +5 -0
  52. package/domain/generic/model/types/model-base-structure.type.d.ts +12 -0
  53. package/domain/generic/model/types/non-function-properties.type.d.ts +12 -0
  54. package/domain/generic/model/types/non-function-property-name.type.d.ts +13 -0
  55. package/domain/generic/repository/create.repository.d.ts +8 -0
  56. package/domain/generic/repository/crud.repository.d.ts +19 -0
  57. package/domain/generic/repository/delete.repository.d.ts +7 -0
  58. package/domain/generic/repository/enums/index.d.ts +2 -0
  59. package/domain/generic/repository/enums/update-option-actions.enum.d.ts +7 -0
  60. package/domain/generic/repository/enums/where.enum.d.ts +14 -0
  61. package/domain/generic/repository/find.repository.d.ts +17 -0
  62. package/domain/generic/repository/get.repository.d.ts +5 -0
  63. package/domain/generic/repository/index.d.ts +9 -0
  64. package/domain/generic/repository/read.repository.d.ts +14 -0
  65. package/domain/generic/repository/types/index.d.ts +6 -0
  66. package/domain/generic/repository/types/repository-find-filters.type.d.ts +13 -0
  67. package/domain/generic/repository/types/repository-find-result.type.d.ts +14 -0
  68. package/domain/generic/repository/types/repository-limit-options.type.d.ts +4 -0
  69. package/domain/generic/repository/types/repository-order-by-list.type.d.ts +5 -0
  70. package/domain/generic/repository/types/repository-update-params.type.d.ts +11 -0
  71. package/domain/generic/repository/types/where-options.type.d.ts +2 -0
  72. package/domain/generic/repository/update.repository.d.ts +6 -0
  73. package/domain/index.d.ts +6 -0
  74. package/domain/location/index.d.ts +1 -0
  75. package/domain/location/models/address.d.ts +24 -0
  76. package/domain/location/models/index.d.ts +2 -0
  77. package/domain/location/models/types/index.d.ts +3 -0
  78. package/domain/location/models/types/location-bound.type.d.ts +6 -0
  79. package/domain/location/models/types/location-geometry.type.d.ts +7 -0
  80. package/domain/location/models/types/location-lat-lng.type.d.ts +4 -0
  81. package/domain/shop-settings/enums/filter-type.enum.d.ts +19 -0
  82. package/domain/shop-settings/enums/index.d.ts +3 -0
  83. package/domain/shop-settings/enums/questions-filters.enum.d.ts +19 -0
  84. package/domain/shop-settings/enums/shop-page-name.enum.d.ts +19 -0
  85. package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +9 -0
  86. package/domain/shop-settings/helpers/index.d.ts +1 -0
  87. package/domain/shop-settings/index.d.ts +4 -0
  88. package/domain/shop-settings/models/campaign-banner.d.ts +11 -0
  89. package/domain/shop-settings/models/campaign.d.ts +10 -0
  90. package/domain/shop-settings/models/home.d.ts +18 -0
  91. package/domain/shop-settings/models/index.d.ts +6 -0
  92. package/domain/shop-settings/models/shop-menu.d.ts +7 -0
  93. package/domain/shop-settings/models/shop-settings.d.ts +13 -0
  94. package/domain/shop-settings/models/types/banner.type.d.ts +6 -0
  95. package/domain/shop-settings/models/types/benefit.type.d.ts +5 -0
  96. package/domain/shop-settings/models/types/campaign-page.d.ts +17 -0
  97. package/domain/shop-settings/models/types/home-data.type.d.ts +15 -0
  98. package/domain/shop-settings/models/types/index.d.ts +14 -0
  99. package/domain/shop-settings/models/types/menu-nav.type.d.ts +8 -0
  100. package/domain/shop-settings/models/types/sections.type.d.ts +31 -0
  101. package/domain/shop-settings/models/types/shop-banner.type.d.ts +13 -0
  102. package/domain/shop-settings/models/types/shop-brands.type.d.ts +10 -0
  103. package/domain/shop-settings/models/types/shop-carousel.type.d.ts +4 -0
  104. package/domain/shop-settings/models/types/shop-collection.type.d.ts +9 -0
  105. package/domain/shop-settings/models/types/shop-gift.type.d.ts +8 -0
  106. package/domain/shop-settings/models/types/shop-home.d.ts +12 -0
  107. package/domain/shop-settings/models/types/shop-post.type.d.ts +7 -0
  108. package/domain/shop-settings/models/types/shop-section.type.d.ts +12 -0
  109. package/domain/shop-settings/models/types/sub-menu.type.d.ts +8 -0
  110. package/domain/shop-settings/repositories/campaign-banner.repository.d.ts +4 -0
  111. package/domain/shop-settings/repositories/campaign.repository.d.ts +4 -0
  112. package/domain/shop-settings/repositories/home.repository.d.ts +4 -0
  113. package/domain/shop-settings/repositories/index.d.ts +5 -0
  114. package/domain/shop-settings/repositories/shop-menu.repository.d.ts +4 -0
  115. package/domain/shop-settings/repositories/shop-settings.repository.d.ts +4 -0
  116. package/domain/shopping/index.d.ts +2 -0
  117. package/domain/shopping/models/buy-2-win.d.ts +18 -0
  118. package/domain/shopping/models/campaign-dashboard.d.ts +15 -0
  119. package/domain/shopping/models/campaign-hashtag.d.ts +18 -0
  120. package/domain/shopping/models/checkout.d.ts +26 -0
  121. package/domain/shopping/models/coupons/coupon.d.ts +60 -0
  122. package/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +5 -0
  123. package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +4 -0
  124. package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +4 -0
  125. package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +8 -0
  126. package/domain/shopping/models/coupons/enums/index.d.ts +3 -0
  127. package/domain/shopping/models/coupons/index.d.ts +2 -0
  128. package/domain/shopping/models/enums/checkout-types.enum.d.ts +5 -0
  129. package/domain/shopping/models/enums/index.d.ts +2 -0
  130. package/domain/shopping/models/enums/order-status.enum.d.ts +10 -0
  131. package/domain/shopping/models/index.d.ts +12 -0
  132. package/domain/shopping/models/line-item.d.ts +8 -0
  133. package/domain/shopping/models/order.d.ts +10 -0
  134. package/domain/shopping/models/payment.d.ts +67 -0
  135. package/domain/shopping/models/shipping-method.d.ts +17 -0
  136. package/domain/shopping/models/subscription/checkout.d.ts +20 -0
  137. package/domain/shopping/models/subscription/index.d.ts +2 -0
  138. package/domain/shopping/models/subscription/plan.d.ts +10 -0
  139. package/domain/shopping/models/types/index.d.ts +7 -0
  140. package/domain/shopping/models/types/payment-address.type.d.ts +12 -0
  141. package/domain/shopping/models/types/payment-billing.type.d.ts +7 -0
  142. package/domain/shopping/models/types/payment-card.type.d.ts +14 -0
  143. package/domain/shopping/models/types/payment-customer.type.d.ts +18 -0
  144. package/domain/shopping/models/types/payment-document.type.d.ts +6 -0
  145. package/domain/shopping/models/types/payment-item.type.d.ts +11 -0
  146. package/domain/shopping/models/types/payment-shipping.type.d.ts +10 -0
  147. package/domain/shopping/repositories/buy-2-win.repository.d.ts +4 -0
  148. package/domain/shopping/repositories/campaign-dashboard.repository.d.ts +4 -0
  149. package/domain/shopping/repositories/campaign-hashtag.repository.d.ts +4 -0
  150. package/domain/shopping/repositories/checkout.repository.d.ts +4 -0
  151. package/domain/shopping/repositories/coupon.repository.d.ts +4 -0
  152. package/domain/shopping/repositories/index.d.ts +9 -0
  153. package/domain/shopping/repositories/legacy-order.repository.d.ts +3 -0
  154. package/domain/shopping/repositories/order.repository.d.ts +4 -0
  155. package/domain/shopping/repositories/payment.repository.d.ts +4 -0
  156. package/domain/shopping/repositories/subscription/checkout.repository.d.ts +4 -0
  157. package/domain/shopping/repositories/subscription/index.d.ts +2 -0
  158. package/domain/shopping/repositories/subscription/plan.repository.d.ts +4 -0
  159. package/domain/users/errors/index.d.ts +3 -0
  160. package/domain/users/errors/unauthorized.error.d.ts +4 -0
  161. package/domain/users/errors/user-already-registered.error.d.ts +4 -0
  162. package/domain/users/errors/weak-password.error.d.ts +4 -0
  163. package/domain/users/index.d.ts +5 -0
  164. package/domain/users/models/beauty-profile.d.ts +11 -0
  165. package/domain/users/models/enums/accessory-importances.enum.d.ts +5 -0
  166. package/domain/users/models/enums/area.enum.d.ts +11 -0
  167. package/domain/users/models/enums/beard-problems.enum.d.ts +9 -0
  168. package/domain/users/models/enums/beard-sizes.enum.d.ts +7 -0
  169. package/domain/users/models/enums/beauty-product-importances.enum.d.ts +6 -0
  170. package/domain/users/models/enums/body-problems.enum.d.ts +11 -0
  171. package/domain/users/models/enums/body-shapes.enum.d.ts +7 -0
  172. package/domain/users/models/enums/body-tattoos.enum.d.ts +5 -0
  173. package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +7 -0
  174. package/domain/users/models/enums/face-skin-problems.enum.d.ts +10 -0
  175. package/domain/users/models/enums/face-skin-tones.enum.d.ts +8 -0
  176. package/domain/users/models/enums/family-incomes.enum.d.ts +8 -0
  177. package/domain/users/models/enums/fragrance-importances.enum.d.ts +5 -0
  178. package/domain/users/models/enums/hair-colors.enum.d.ts +10 -0
  179. package/domain/users/models/enums/hair-problems.enum.d.ts +10 -0
  180. package/domain/users/models/enums/hair-strands.enum.d.ts +8 -0
  181. package/domain/users/models/enums/hair-types.enum.d.ts +7 -0
  182. package/domain/users/models/enums/index.d.ts +20 -0
  183. package/domain/users/models/enums/office-position.enum.d.ts +6 -0
  184. package/domain/users/models/enums/product-spents.enum.d.ts +8 -0
  185. package/domain/users/models/enums/user-type.enum.d.ts +8 -0
  186. package/domain/users/models/index.d.ts +7 -0
  187. package/domain/users/models/lead.d.ts +8 -0
  188. package/domain/users/models/subscription/edition.d.ts +16 -0
  189. package/domain/users/models/subscription/enums/billing-status.enum.d.ts +3 -0
  190. package/domain/users/models/subscription/enums/edition-status.enum.d.ts +4 -0
  191. package/domain/users/models/subscription/enums/index.d.ts +4 -0
  192. package/domain/users/models/subscription/enums/payment-type.enum.d.ts +5 -0
  193. package/domain/users/models/subscription/enums/status.enum.d.ts +4 -0
  194. package/domain/users/models/subscription/index.d.ts +4 -0
  195. package/domain/users/models/subscription/payment.d.ts +13 -0
  196. package/domain/users/models/subscription/subscription.d.ts +28 -0
  197. package/domain/users/models/user-address.d.ts +6 -0
  198. package/domain/users/models/user-payment-method.d.ts +14 -0
  199. package/domain/users/models/user.d.ts +27 -0
  200. package/domain/users/repositories/beauty-profile.repository.d.ts +4 -0
  201. package/domain/users/repositories/edition.repository.d.ts +4 -0
  202. package/domain/users/repositories/index.d.ts +8 -0
  203. package/domain/users/repositories/lead.repository.d.ts +4 -0
  204. package/domain/users/repositories/subscription-payment.repository.d.ts +4 -0
  205. package/domain/users/repositories/subscription.repository.d.ts +4 -0
  206. package/domain/users/repositories/user-address.repository.d.ts +4 -0
  207. package/domain/users/repositories/user-payment-method.repository.d.ts +4 -0
  208. package/domain/users/repositories/user.repository.d.ts +6 -0
  209. package/domain/users/services/authentication.service.d.ts +12 -0
  210. package/domain/users/services/index.d.ts +3 -0
  211. package/domain/users/services/register.service.d.ts +7 -0
  212. package/domain/users/services/types/basic-user-data.type.d.ts +4 -0
  213. package/domain/users/services/types/index.d.ts +1 -0
  214. package/domain/users/use-cases/authentication.d.ts +21 -0
  215. package/domain/users/use-cases/index.d.ts +4 -0
  216. package/domain/users/use-cases/recovery-password.d.ts +6 -0
  217. package/domain/users/use-cases/register.d.ts +13 -0
  218. package/domain/users/use-cases/signout.d.ts +6 -0
  219. package/errors/duplicated-results.error.d.ts +4 -0
  220. package/errors/index.d.ts +4 -0
  221. package/errors/invalid-argument.error.d.ts +4 -0
  222. package/errors/not-found.error.d.ts +4 -0
  223. package/errors/required-argument.error.d.ts +6 -0
  224. package/esm2020/domain/catalog/helpers/index.mjs +2 -0
  225. package/esm2020/domain/catalog/helpers/round-product-price.helper.mjs +15 -0
  226. package/esm2020/domain/catalog/index.mjs +4 -0
  227. package/esm2020/domain/catalog/models/category-base.mjs +18 -0
  228. package/esm2020/domain/catalog/models/category-collection-children.mjs +13 -0
  229. package/esm2020/domain/catalog/models/category-filter.mjs +19 -0
  230. package/esm2020/domain/catalog/models/category-for-product.mjs +7 -0
  231. package/esm2020/domain/catalog/models/category.mjs +14 -0
  232. package/esm2020/domain/catalog/models/enums/index.mjs +3 -0
  233. package/esm2020/domain/catalog/models/enums/product-genders.enum.mjs +7 -0
  234. package/esm2020/domain/catalog/models/enums/shops.enum.mjs +8 -0
  235. package/esm2020/domain/catalog/models/filter-option.mjs +7 -0
  236. package/esm2020/domain/catalog/models/filter.mjs +7 -0
  237. package/esm2020/domain/catalog/models/index.mjs +12 -0
  238. package/esm2020/domain/catalog/models/kit-product.mjs +18 -0
  239. package/esm2020/domain/catalog/models/product-base.mjs +25 -0
  240. package/esm2020/domain/catalog/models/product-for-category.mjs +14 -0
  241. package/esm2020/domain/catalog/models/product-for-kit.mjs +14 -0
  242. package/esm2020/domain/catalog/models/product.mjs +19 -0
  243. package/esm2020/domain/catalog/models/types/category-condition.type.mjs +2 -0
  244. package/esm2020/domain/catalog/models/types/category-metadata.type.mjs +2 -0
  245. package/esm2020/domain/catalog/models/types/category-product.mjs +2 -0
  246. package/esm2020/domain/catalog/models/types/index.mjs +12 -0
  247. package/esm2020/domain/catalog/models/types/product-evaluation.type.mjs +2 -0
  248. package/esm2020/domain/catalog/models/types/product-gender.type.mjs +2 -0
  249. package/esm2020/domain/catalog/models/types/product-metadata.type.mjs +2 -0
  250. package/esm2020/domain/catalog/models/types/product-review.type.mjs +2 -0
  251. package/esm2020/domain/catalog/models/types/shop-description.type.mjs +2 -0
  252. package/esm2020/domain/catalog/models/types/shop-price.type.mjs +2 -0
  253. package/esm2020/domain/catalog/models/types/stock.type.mjs +2 -0
  254. package/esm2020/domain/catalog/models/types/variant-grade.type.mjs +2 -0
  255. package/esm2020/domain/catalog/models/variant.mjs +7 -0
  256. package/esm2020/domain/catalog/models/wishlist.mjs +7 -0
  257. package/esm2020/domain/catalog/repositories/category-collection-children.repository.mjs +2 -0
  258. package/esm2020/domain/catalog/repositories/category-filter.repository.mjs +2 -0
  259. package/esm2020/domain/catalog/repositories/category.repository.mjs +2 -0
  260. package/esm2020/domain/catalog/repositories/filter-option.repository.mjs +2 -0
  261. package/esm2020/domain/catalog/repositories/filter.repository.mjs +2 -0
  262. package/esm2020/domain/catalog/repositories/index.mjs +10 -0
  263. package/esm2020/domain/catalog/repositories/product.repository.mjs +2 -0
  264. package/esm2020/domain/catalog/repositories/subscription-product.repository.mjs +2 -0
  265. package/esm2020/domain/catalog/repositories/variant.repository.mjs +2 -0
  266. package/esm2020/domain/catalog/repositories/wishlist.repository.mjs +2 -0
  267. package/esm2020/domain/generic/index.mjs +3 -0
  268. package/esm2020/domain/generic/model/base.model.mjs +24 -0
  269. package/esm2020/domain/generic/model/identifier-fields.mjs +2 -0
  270. package/esm2020/domain/generic/model/index.mjs +4 -0
  271. package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +2 -0
  272. package/esm2020/domain/generic/model/types/identifier-model.type.mjs +2 -0
  273. package/esm2020/domain/generic/model/types/index.mjs +6 -0
  274. package/esm2020/domain/generic/model/types/model-base-structure.type.mjs +2 -0
  275. package/esm2020/domain/generic/model/types/non-function-properties.type.mjs +2 -0
  276. package/esm2020/domain/generic/model/types/non-function-property-name.type.mjs +2 -0
  277. package/esm2020/domain/generic/repository/create.repository.mjs +2 -0
  278. package/esm2020/domain/generic/repository/crud.repository.mjs +2 -0
  279. package/esm2020/domain/generic/repository/delete.repository.mjs +2 -0
  280. package/esm2020/domain/generic/repository/enums/index.mjs +3 -0
  281. package/esm2020/domain/generic/repository/enums/update-option-actions.enum.mjs +9 -0
  282. package/esm2020/domain/generic/repository/enums/where.enum.mjs +16 -0
  283. package/esm2020/domain/generic/repository/find.repository.mjs +2 -0
  284. package/esm2020/domain/generic/repository/get.repository.mjs +2 -0
  285. package/esm2020/domain/generic/repository/index.mjs +10 -0
  286. package/esm2020/domain/generic/repository/read.repository.mjs +2 -0
  287. package/esm2020/domain/generic/repository/types/index.mjs +7 -0
  288. package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +2 -0
  289. package/esm2020/domain/generic/repository/types/repository-find-result.type.mjs +2 -0
  290. package/esm2020/domain/generic/repository/types/repository-limit-options.type.mjs +2 -0
  291. package/esm2020/domain/generic/repository/types/repository-order-by-list.type.mjs +2 -0
  292. package/esm2020/domain/generic/repository/types/repository-update-params.type.mjs +2 -0
  293. package/esm2020/domain/generic/repository/types/where-options.type.mjs +2 -0
  294. package/esm2020/domain/generic/repository/update.repository.mjs +2 -0
  295. package/esm2020/domain/index.mjs +7 -0
  296. package/esm2020/domain/location/index.mjs +2 -0
  297. package/esm2020/domain/location/models/address.mjs +7 -0
  298. package/esm2020/domain/location/models/index.mjs +3 -0
  299. package/esm2020/domain/location/models/types/index.mjs +4 -0
  300. package/esm2020/domain/location/models/types/location-bound.type.mjs +2 -0
  301. package/esm2020/domain/location/models/types/location-geometry.type.mjs +2 -0
  302. package/esm2020/domain/location/models/types/location-lat-lng.type.mjs +2 -0
  303. package/esm2020/domain/shop-settings/enums/filter-type.enum.mjs +21 -0
  304. package/esm2020/domain/shop-settings/enums/index.mjs +4 -0
  305. package/esm2020/domain/shop-settings/enums/questions-filters.enum.mjs +21 -0
  306. package/esm2020/domain/shop-settings/enums/shop-page-name.enum.mjs +21 -0
  307. package/esm2020/domain/shop-settings/helpers/beauty-questions.helper.mjs +47 -0
  308. package/esm2020/domain/shop-settings/helpers/index.mjs +2 -0
  309. package/esm2020/domain/shop-settings/index.mjs +5 -0
  310. package/esm2020/domain/shop-settings/models/campaign-banner.mjs +7 -0
  311. package/esm2020/domain/shop-settings/models/campaign.mjs +7 -0
  312. package/esm2020/domain/shop-settings/models/home.mjs +7 -0
  313. package/esm2020/domain/shop-settings/models/index.mjs +7 -0
  314. package/esm2020/domain/shop-settings/models/shop-menu.mjs +7 -0
  315. package/esm2020/domain/shop-settings/models/shop-settings.mjs +7 -0
  316. package/esm2020/domain/shop-settings/models/types/banner.type.mjs +2 -0
  317. package/esm2020/domain/shop-settings/models/types/benefit.type.mjs +2 -0
  318. package/esm2020/domain/shop-settings/models/types/campaign-page.mjs +2 -0
  319. package/esm2020/domain/shop-settings/models/types/home-data.type.mjs +2 -0
  320. package/esm2020/domain/shop-settings/models/types/index.mjs +15 -0
  321. package/esm2020/domain/shop-settings/models/types/menu-nav.type.mjs +2 -0
  322. package/esm2020/domain/shop-settings/models/types/sections.type.mjs +2 -0
  323. package/esm2020/domain/shop-settings/models/types/shop-banner.type.mjs +2 -0
  324. package/esm2020/domain/shop-settings/models/types/shop-brands.type.mjs +2 -0
  325. package/esm2020/domain/shop-settings/models/types/shop-carousel.type.mjs +2 -0
  326. package/esm2020/domain/shop-settings/models/types/shop-collection.type.mjs +2 -0
  327. package/esm2020/domain/shop-settings/models/types/shop-gift.type.mjs +2 -0
  328. package/esm2020/domain/shop-settings/models/types/shop-home.mjs +2 -0
  329. package/esm2020/domain/shop-settings/models/types/shop-post.type.mjs +2 -0
  330. package/esm2020/domain/shop-settings/models/types/shop-section.type.mjs +2 -0
  331. package/esm2020/domain/shop-settings/models/types/sub-menu.type.mjs +2 -0
  332. package/esm2020/domain/shop-settings/repositories/campaign-banner.repository.mjs +2 -0
  333. package/esm2020/domain/shop-settings/repositories/campaign.repository.mjs +2 -0
  334. package/esm2020/domain/shop-settings/repositories/home.repository.mjs +2 -0
  335. package/esm2020/domain/shop-settings/repositories/index.mjs +6 -0
  336. package/esm2020/domain/shop-settings/repositories/shop-menu.repository.mjs +2 -0
  337. package/esm2020/domain/shop-settings/repositories/shop-settings.repository.mjs +2 -0
  338. package/esm2020/domain/shopping/index.mjs +3 -0
  339. package/esm2020/domain/shopping/models/buy-2-win.mjs +14 -0
  340. package/esm2020/domain/shopping/models/campaign-dashboard.mjs +7 -0
  341. package/esm2020/domain/shopping/models/campaign-hashtag.mjs +7 -0
  342. package/esm2020/domain/shopping/models/checkout.mjs +37 -0
  343. package/esm2020/domain/shopping/models/coupons/coupon.mjs +38 -0
  344. package/esm2020/domain/shopping/models/coupons/enums/coupon-club-mens.enum.mjs +7 -0
  345. package/esm2020/domain/shopping/models/coupons/enums/coupon-subtypes.enum.mjs +6 -0
  346. package/esm2020/domain/shopping/models/coupons/enums/coupon-types.enum.mjs +10 -0
  347. package/esm2020/domain/shopping/models/coupons/enums/exclusivities.enum.mjs +10 -0
  348. package/esm2020/domain/shopping/models/coupons/enums/index.mjs +4 -0
  349. package/esm2020/domain/shopping/models/coupons/index.mjs +3 -0
  350. package/esm2020/domain/shopping/models/enums/checkout-types.enum.mjs +7 -0
  351. package/esm2020/domain/shopping/models/enums/index.mjs +3 -0
  352. package/esm2020/domain/shopping/models/enums/order-status.enum.mjs +12 -0
  353. package/esm2020/domain/shopping/models/index.mjs +13 -0
  354. package/esm2020/domain/shopping/models/line-item.mjs +4 -0
  355. package/esm2020/domain/shopping/models/order.mjs +11 -0
  356. package/esm2020/domain/shopping/models/payment.mjs +169 -0
  357. package/esm2020/domain/shopping/models/shipping-method.mjs +7 -0
  358. package/esm2020/domain/shopping/models/subscription/checkout.mjs +28 -0
  359. package/esm2020/domain/shopping/models/subscription/index.mjs +3 -0
  360. package/esm2020/domain/shopping/models/subscription/plan.mjs +7 -0
  361. package/esm2020/domain/shopping/models/types/index.mjs +8 -0
  362. package/esm2020/domain/shopping/models/types/payment-address.type.mjs +2 -0
  363. package/esm2020/domain/shopping/models/types/payment-billing.type.mjs +2 -0
  364. package/esm2020/domain/shopping/models/types/payment-card.type.mjs +2 -0
  365. package/esm2020/domain/shopping/models/types/payment-customer.type.mjs +2 -0
  366. package/esm2020/domain/shopping/models/types/payment-document.type.mjs +2 -0
  367. package/esm2020/domain/shopping/models/types/payment-item.type.mjs +2 -0
  368. package/esm2020/domain/shopping/models/types/payment-shipping.type.mjs +2 -0
  369. package/esm2020/domain/shopping/repositories/buy-2-win.repository.mjs +2 -0
  370. package/esm2020/domain/shopping/repositories/campaign-dashboard.repository.mjs +2 -0
  371. package/esm2020/domain/shopping/repositories/campaign-hashtag.repository.mjs +2 -0
  372. package/esm2020/domain/shopping/repositories/checkout.repository.mjs +2 -0
  373. package/esm2020/domain/shopping/repositories/coupon.repository.mjs +2 -0
  374. package/esm2020/domain/shopping/repositories/index.mjs +10 -0
  375. package/esm2020/domain/shopping/repositories/legacy-order.repository.mjs +2 -0
  376. package/esm2020/domain/shopping/repositories/order.repository.mjs +2 -0
  377. package/esm2020/domain/shopping/repositories/payment.repository.mjs +2 -0
  378. package/esm2020/domain/shopping/repositories/subscription/checkout.repository.mjs +2 -0
  379. package/esm2020/domain/shopping/repositories/subscription/index.mjs +3 -0
  380. package/esm2020/domain/shopping/repositories/subscription/plan.repository.mjs +2 -0
  381. package/esm2020/domain/users/errors/index.mjs +4 -0
  382. package/esm2020/domain/users/errors/unauthorized.error.mjs +7 -0
  383. package/esm2020/domain/users/errors/user-already-registered.error.mjs +7 -0
  384. package/esm2020/domain/users/errors/weak-password.error.mjs +7 -0
  385. package/esm2020/domain/users/index.mjs +6 -0
  386. package/esm2020/domain/users/models/beauty-profile.mjs +12 -0
  387. package/esm2020/domain/users/models/enums/accessory-importances.enum.mjs +7 -0
  388. package/esm2020/domain/users/models/enums/area.enum.mjs +13 -0
  389. package/esm2020/domain/users/models/enums/beard-problems.enum.mjs +11 -0
  390. package/esm2020/domain/users/models/enums/beard-sizes.enum.mjs +9 -0
  391. package/esm2020/domain/users/models/enums/beauty-product-importances.enum.mjs +8 -0
  392. package/esm2020/domain/users/models/enums/body-problems.enum.mjs +13 -0
  393. package/esm2020/domain/users/models/enums/body-shapes.enum.mjs +9 -0
  394. package/esm2020/domain/users/models/enums/body-tattoos.enum.mjs +7 -0
  395. package/esm2020/domain/users/models/enums/face-skin-oilinesses.enum.mjs +9 -0
  396. package/esm2020/domain/users/models/enums/face-skin-problems.enum.mjs +12 -0
  397. package/esm2020/domain/users/models/enums/face-skin-tones.enum.mjs +10 -0
  398. package/esm2020/domain/users/models/enums/family-incomes.enum.mjs +10 -0
  399. package/esm2020/domain/users/models/enums/fragrance-importances.enum.mjs +7 -0
  400. package/esm2020/domain/users/models/enums/hair-colors.enum.mjs +12 -0
  401. package/esm2020/domain/users/models/enums/hair-problems.enum.mjs +12 -0
  402. package/esm2020/domain/users/models/enums/hair-strands.enum.mjs +10 -0
  403. package/esm2020/domain/users/models/enums/hair-types.enum.mjs +9 -0
  404. package/esm2020/domain/users/models/enums/index.mjs +21 -0
  405. package/esm2020/domain/users/models/enums/office-position.enum.mjs +8 -0
  406. package/esm2020/domain/users/models/enums/product-spents.enum.mjs +10 -0
  407. package/esm2020/domain/users/models/enums/user-type.enum.mjs +10 -0
  408. package/esm2020/domain/users/models/index.mjs +8 -0
  409. package/esm2020/domain/users/models/lead.mjs +7 -0
  410. package/esm2020/domain/users/models/subscription/edition.mjs +7 -0
  411. package/esm2020/domain/users/models/subscription/enums/billing-status.enum.mjs +5 -0
  412. package/esm2020/domain/users/models/subscription/enums/edition-status.enum.mjs +6 -0
  413. package/esm2020/domain/users/models/subscription/enums/index.mjs +5 -0
  414. package/esm2020/domain/users/models/subscription/enums/payment-type.enum.mjs +7 -0
  415. package/esm2020/domain/users/models/subscription/enums/status.enum.mjs +6 -0
  416. package/esm2020/domain/users/models/subscription/index.mjs +5 -0
  417. package/esm2020/domain/users/models/subscription/payment.mjs +14 -0
  418. package/esm2020/domain/users/models/subscription/subscription.mjs +43 -0
  419. package/esm2020/domain/users/models/user-address.mjs +7 -0
  420. package/esm2020/domain/users/models/user-payment-method.mjs +7 -0
  421. package/esm2020/domain/users/models/user.mjs +26 -0
  422. package/esm2020/domain/users/repositories/beauty-profile.repository.mjs +2 -0
  423. package/esm2020/domain/users/repositories/edition.repository.mjs +2 -0
  424. package/esm2020/domain/users/repositories/index.mjs +9 -0
  425. package/esm2020/domain/users/repositories/lead.repository.mjs +2 -0
  426. package/esm2020/domain/users/repositories/subscription-payment.repository.mjs +2 -0
  427. package/esm2020/domain/users/repositories/subscription.repository.mjs +2 -0
  428. package/esm2020/domain/users/repositories/user-address.repository.mjs +2 -0
  429. package/esm2020/domain/users/repositories/user-payment-method.repository.mjs +2 -0
  430. package/esm2020/domain/users/repositories/user.repository.mjs +2 -0
  431. package/esm2020/domain/users/services/authentication.service.mjs +2 -0
  432. package/esm2020/domain/users/services/index.mjs +4 -0
  433. package/esm2020/domain/users/services/register.service.mjs +2 -0
  434. package/esm2020/domain/users/services/types/basic-user-data.type.mjs +2 -0
  435. package/esm2020/domain/users/services/types/index.mjs +2 -0
  436. package/esm2020/domain/users/use-cases/authentication.mjs +43 -0
  437. package/esm2020/domain/users/use-cases/index.mjs +5 -0
  438. package/esm2020/domain/users/use-cases/recovery-password.mjs +9 -0
  439. package/esm2020/domain/users/use-cases/register.mjs +38 -0
  440. package/esm2020/domain/users/use-cases/signout.mjs +9 -0
  441. package/esm2020/errors/duplicated-results.error.mjs +7 -0
  442. package/esm2020/errors/index.mjs +5 -0
  443. package/esm2020/errors/invalid-argument.error.mjs +7 -0
  444. package/esm2020/errors/not-found.error.mjs +7 -0
  445. package/esm2020/errors/required-argument.error.mjs +9 -0
  446. package/esm2020/index.mjs +6 -0
  447. package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +67 -0
  448. package/esm2020/infra/elasticsearch/adapters/elastic-search.adapter.mjs +2 -0
  449. package/esm2020/infra/elasticsearch/adapters/index.mjs +3 -0
  450. package/esm2020/infra/elasticsearch/index.mjs +4 -0
  451. package/esm2020/infra/elasticsearch/indexes/index.mjs +2 -0
  452. package/esm2020/infra/elasticsearch/indexes/products-index.mjs +104 -0
  453. package/esm2020/infra/elasticsearch/types/elastic-search-result.mjs +2 -0
  454. package/esm2020/infra/elasticsearch/types/index.mjs +2 -0
  455. package/esm2020/infra/firebase/auth/authentication-firebase-auth.service.mjs +41 -0
  456. package/esm2020/infra/firebase/auth/index.mjs +3 -0
  457. package/esm2020/infra/firebase/auth/register-firebase-auth.service.mjs +33 -0
  458. package/esm2020/infra/firebase/auth/types/firebase-user-with-id.type.mjs +2 -0
  459. package/esm2020/infra/firebase/firestore/enums/firestore-field-type.enum.mjs +10 -0
  460. package/esm2020/infra/firebase/firestore/enums/index.mjs +2 -0
  461. package/esm2020/infra/firebase/firestore/index.mjs +4 -0
  462. package/esm2020/infra/firebase/firestore/mixins/index.mjs +10 -0
  463. package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +31 -0
  464. package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +10 -0
  465. package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +18 -0
  466. package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +110 -0
  467. package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +80 -0
  468. package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +23 -0
  469. package/esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +17 -0
  470. package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +13 -0
  471. package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +51 -0
  472. package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +67 -0
  473. package/esm2020/infra/firebase/firestore/repositories/catalog/index.mjs +5 -0
  474. package/esm2020/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +54 -0
  475. package/esm2020/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs +16 -0
  476. package/esm2020/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs +14 -0
  477. package/esm2020/infra/firebase/firestore/repositories/index.mjs +5 -0
  478. package/esm2020/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +60 -0
  479. package/esm2020/infra/firebase/firestore/repositories/shop-settings/index.mjs +4 -0
  480. package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs +14 -0
  481. package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.mjs +14 -0
  482. package/esm2020/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs +14 -0
  483. package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.mjs +14 -0
  484. package/esm2020/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.mjs +14 -0
  485. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs +14 -0
  486. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs +14 -0
  487. package/esm2020/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs +31 -0
  488. package/esm2020/infra/firebase/firestore/repositories/shopping/index.mjs +11 -0
  489. package/esm2020/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs +11 -0
  490. package/esm2020/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +40 -0
  491. package/esm2020/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs +14 -0
  492. package/esm2020/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs +14 -0
  493. package/esm2020/infra/firebase/firestore/repositories/users/index.mjs +9 -0
  494. package/esm2020/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs +14 -0
  495. package/esm2020/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs +16 -0
  496. package/esm2020/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs +14 -0
  497. package/esm2020/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs +16 -0
  498. package/esm2020/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs +16 -0
  499. package/esm2020/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs +16 -0
  500. package/esm2020/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +50 -0
  501. package/esm2020/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs +16 -0
  502. package/esm2020/infra/firebase/firestore/types/firestore-interceptors.type.mjs +2 -0
  503. package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +2 -0
  504. package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +2 -0
  505. package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +2 -0
  506. package/esm2020/infra/firebase/firestore/types/index.mjs +5 -0
  507. package/esm2020/infra/firebase/index.mjs +3 -0
  508. package/esm2020/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.mjs +13 -0
  509. package/esm2020/infra/hasura-graphql/enums/hasura-graphql-where.enum.mjs +17 -0
  510. package/esm2020/infra/hasura-graphql/enums/index.mjs +3 -0
  511. package/esm2020/infra/hasura-graphql/index.mjs +5 -0
  512. package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +35 -0
  513. package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +71 -0
  514. package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +22 -0
  515. package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +125 -0
  516. package/esm2020/infra/hasura-graphql/mixins/helpers/index.mjs +5 -0
  517. package/esm2020/infra/hasura-graphql/mixins/index.mjs +8 -0
  518. package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +39 -0
  519. package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +10 -0
  520. package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +31 -0
  521. package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +152 -0
  522. package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +37 -0
  523. package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +108 -0
  524. package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +62 -0
  525. package/esm2020/infra/hasura-graphql/models/category-hasura-graphql.mjs +4 -0
  526. package/esm2020/infra/hasura-graphql/models/index.mjs +5 -0
  527. package/esm2020/infra/hasura-graphql/models/kit-product-hasura-graphql.mjs +15 -0
  528. package/esm2020/infra/hasura-graphql/models/product-hasura-graphql.mjs +11 -0
  529. package/esm2020/infra/hasura-graphql/models/variant-hasura-graphql.mjs +9 -0
  530. package/esm2020/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.mjs +39 -0
  531. package/esm2020/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.mjs +107 -0
  532. package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +338 -0
  533. package/esm2020/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.mjs +105 -0
  534. package/esm2020/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.mjs +22 -0
  535. package/esm2020/infra/hasura-graphql/repositories/catalog/index.mjs +9 -0
  536. package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +516 -0
  537. package/esm2020/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +114 -0
  538. package/esm2020/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.mjs +238 -0
  539. package/esm2020/infra/hasura-graphql/repositories/index.mjs +2 -0
  540. package/esm2020/infra/hasura-graphql/types/fields.type.mjs +2 -0
  541. package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +2 -0
  542. package/esm2020/infra/hasura-graphql/types/hasura-graphql-auth-options.type.mjs +2 -0
  543. package/esm2020/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +2 -0
  544. package/esm2020/infra/hasura-graphql/types/hasura-graphql-headers.type.mjs +2 -0
  545. package/esm2020/infra/hasura-graphql/types/index.mjs +9 -0
  546. package/esm2020/infra/hasura-graphql/types/nested-field.type.mjs +2 -0
  547. package/esm2020/infra/hasura-graphql/types/query-builder-options.type.mjs +2 -0
  548. package/esm2020/infra/hasura-graphql/types/variable-options.type.mjs +2 -0
  549. package/esm2020/infra/index.mjs +4 -0
  550. package/esm2020/infrab4a-connect.mjs +5 -0
  551. package/esm2020/utils/decorators/debug.class.decorator.mjs +7 -0
  552. package/esm2020/utils/decorators/index.mjs +3 -0
  553. package/esm2020/utils/decorators/trace.method.decorator.mjs +81 -0
  554. package/esm2020/utils/get.mjs +3 -0
  555. package/esm2020/utils/helpers/class-name.helper.mjs +15 -0
  556. package/esm2020/utils/helpers/debug-decorator.helper.mjs +18 -0
  557. package/esm2020/utils/helpers/debug.helper.mjs +150 -0
  558. package/esm2020/utils/helpers/index.mjs +5 -0
  559. package/esm2020/utils/helpers/reflect.helper.mjs +165 -0
  560. package/esm2020/utils/index.mjs +13 -0
  561. package/esm2020/utils/is-uuid.mjs +3 -0
  562. package/esm2020/utils/is.mjs +4 -0
  563. package/esm2020/utils/log.utils.mjs +9 -0
  564. package/esm2020/utils/mixins/base.mixin.mjs +6 -0
  565. package/esm2020/utils/mixins/index.mjs +4 -0
  566. package/esm2020/utils/mixins/merge-constructor-params.type.mjs +2 -0
  567. package/esm2020/utils/mixins/mixin-ctor.type.mjs +2 -0
  568. package/esm2020/utils/parse-datetime.mjs +14 -0
  569. package/esm2020/utils/types/array-element.type.mjs +2 -0
  570. package/esm2020/utils/types/index.mjs +3 -0
  571. package/esm2020/utils/types/prop.type.mjs +2 -0
  572. package/fesm2015/infrab4a-connect.mjs +4976 -0
  573. package/fesm2015/infrab4a-connect.mjs.map +1 -0
  574. package/fesm2020/infrab4a-connect.mjs +4890 -0
  575. package/fesm2020/infrab4a-connect.mjs.map +1 -0
  576. package/index.d.ts +5 -1
  577. package/infra/elasticsearch/adapters/axios.adapter.d.ts +16 -0
  578. package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +8 -0
  579. package/infra/elasticsearch/adapters/index.d.ts +2 -0
  580. package/infra/elasticsearch/index.d.ts +3 -0
  581. package/infra/elasticsearch/indexes/index.d.ts +1 -0
  582. package/infra/elasticsearch/indexes/products-index.d.ts +13 -0
  583. package/infra/elasticsearch/types/elastic-search-result.d.ts +9 -0
  584. package/infra/elasticsearch/types/index.d.ts +1 -0
  585. package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +12 -0
  586. package/infra/firebase/auth/index.d.ts +2 -0
  587. package/infra/firebase/auth/register-firebase-auth.service.d.ts +8 -0
  588. package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +5 -0
  589. package/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +8 -0
  590. package/infra/firebase/firestore/enums/index.d.ts +1 -0
  591. package/infra/firebase/firestore/index.d.ts +3 -0
  592. package/infra/firebase/firestore/mixins/index.d.ts +9 -0
  593. package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +4 -0
  594. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +5 -0
  595. package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +4 -0
  596. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +4 -0
  597. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +13 -0
  598. package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +4 -0
  599. package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +11 -0
  600. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +11 -0
  601. package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +7 -0
  602. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +20 -0
  603. package/infra/firebase/firestore/repositories/catalog/index.d.ts +4 -0
  604. package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +12 -0
  605. package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +12 -0
  606. package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +7 -0
  607. package/infra/firebase/firestore/repositories/index.d.ts +4 -0
  608. package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +16 -0
  609. package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +3 -0
  610. package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +7 -0
  611. package/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +7 -0
  612. package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +7 -0
  613. package/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +8 -0
  614. package/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +8 -0
  615. package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +7 -0
  616. package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +7 -0
  617. package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +12 -0
  618. package/infra/firebase/firestore/repositories/shopping/index.d.ts +10 -0
  619. package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +6 -0
  620. package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +13 -0
  621. package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +7 -0
  622. package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +7 -0
  623. package/infra/firebase/firestore/repositories/users/index.d.ts +8 -0
  624. package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +7 -0
  625. package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +12 -0
  626. package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +7 -0
  627. package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +12 -0
  628. package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +12 -0
  629. package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +12 -0
  630. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +17 -0
  631. package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +12 -0
  632. package/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +14 -0
  633. package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +6 -0
  634. package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +8 -0
  635. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +16 -0
  636. package/infra/firebase/firestore/types/index.d.ts +4 -0
  637. package/infra/firebase/index.d.ts +2 -0
  638. package/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +11 -0
  639. package/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +15 -0
  640. package/infra/hasura-graphql/enums/index.d.ts +2 -0
  641. package/infra/hasura-graphql/index.d.ts +4 -0
  642. package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +19 -0
  643. package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +10 -0
  644. package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +8 -0
  645. package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +12 -0
  646. package/infra/hasura-graphql/mixins/helpers/index.d.ts +4 -0
  647. package/infra/hasura-graphql/mixins/index.d.ts +7 -0
  648. package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +9 -0
  649. package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +11 -0
  650. package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +7 -0
  651. package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +34 -0
  652. package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +25 -0
  653. package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +23 -0
  654. package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +14 -0
  655. package/infra/hasura-graphql/models/category-hasura-graphql.d.ts +6 -0
  656. package/infra/hasura-graphql/models/index.d.ts +4 -0
  657. package/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +6 -0
  658. package/infra/hasura-graphql/models/product-hasura-graphql.d.ts +18 -0
  659. package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +10 -0
  660. package/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +10 -0
  661. package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +12 -0
  662. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +34 -0
  663. package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -0
  664. package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -0
  665. package/infra/hasura-graphql/repositories/catalog/index.d.ts +8 -0
  666. package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +30 -0
  667. package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +14 -0
  668. package/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.d.ts +27 -0
  669. package/infra/hasura-graphql/repositories/index.d.ts +1 -0
  670. package/infra/hasura-graphql/types/fields.type.d.ts +2 -0
  671. package/infra/hasura-graphql/types/graphql.repository.type.d.ts +24 -0
  672. package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +8 -0
  673. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +44 -0
  674. package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +7 -0
  675. package/infra/hasura-graphql/types/index.d.ts +8 -0
  676. package/infra/hasura-graphql/types/nested-field.type.d.ts +7 -0
  677. package/infra/hasura-graphql/types/query-builder-options.type.d.ts +7 -0
  678. package/infra/hasura-graphql/types/variable-options.type.d.ts +9 -0
  679. package/infra/index.d.ts +3 -0
  680. package/package.json +18 -13
  681. package/utils/decorators/debug.class.decorator.d.ts +2 -0
  682. package/utils/decorators/index.d.ts +2 -0
  683. package/utils/decorators/trace.method.decorator.d.ts +14 -0
  684. package/utils/get.d.ts +1 -0
  685. package/utils/helpers/class-name.helper.d.ts +3 -0
  686. package/utils/helpers/debug-decorator.helper.d.ts +9 -0
  687. package/utils/helpers/debug.helper.d.ts +60 -0
  688. package/utils/helpers/index.d.ts +4 -0
  689. package/utils/helpers/reflect.helper.d.ts +50 -0
  690. package/utils/index.d.ts +13 -0
  691. package/utils/is-uuid.d.ts +1 -0
  692. package/utils/is.d.ts +1 -0
  693. package/utils/log.utils.d.ts +7 -0
  694. package/utils/mixins/base.mixin.d.ts +3 -0
  695. package/utils/mixins/index.d.ts +3 -0
  696. package/utils/mixins/merge-constructor-params.type.d.ts +3 -0
  697. package/utils/mixins/mixin-ctor.type.d.ts +1 -0
  698. package/utils/parse-datetime.d.ts +1 -0
  699. package/utils/types/array-element.type.d.ts +1 -0
  700. package/utils/types/index.d.ts +2 -0
  701. package/utils/types/prop.type.d.ts +1 -0
  702. package/index.cjs.d.ts +0 -1
  703. package/index.cjs.default.js +0 -1
  704. package/index.cjs.js +0 -5800
  705. package/index.cjs.mjs +0 -2
  706. package/index.esm.js +0 -5545
  707. package/src/domain/catalog/helpers/index.d.ts +0 -1
  708. package/src/domain/catalog/helpers/round-product-price.helper.d.ts +0 -4
  709. package/src/domain/catalog/index.d.ts +0 -3
  710. package/src/domain/catalog/models/category-base.d.ts +0 -30
  711. package/src/domain/catalog/models/category-collection-children.d.ts +0 -13
  712. package/src/domain/catalog/models/category-filter.d.ts +0 -13
  713. package/src/domain/catalog/models/category-for-product.d.ts +0 -5
  714. package/src/domain/catalog/models/category.d.ts +0 -7
  715. package/src/domain/catalog/models/enums/index.d.ts +0 -2
  716. package/src/domain/catalog/models/enums/product-genders.enum.d.ts +0 -5
  717. package/src/domain/catalog/models/enums/shops.enum.d.ts +0 -6
  718. package/src/domain/catalog/models/filter-option.d.ts +0 -9
  719. package/src/domain/catalog/models/filter.d.ts +0 -12
  720. package/src/domain/catalog/models/index.d.ts +0 -12
  721. package/src/domain/catalog/models/kit-product.d.ts +0 -12
  722. package/src/domain/catalog/models/product-base.d.ts +0 -40
  723. package/src/domain/catalog/models/product-for-category.d.ts +0 -7
  724. package/src/domain/catalog/models/product-for-kit.d.ts +0 -7
  725. package/src/domain/catalog/models/product-reviews.d.ts +0 -20
  726. package/src/domain/catalog/models/product.d.ts +0 -9
  727. package/src/domain/catalog/models/types/category-condition.type.d.ts +0 -4
  728. package/src/domain/catalog/models/types/category-metadata.type.d.ts +0 -4
  729. package/src/domain/catalog/models/types/category-product.d.ts +0 -4
  730. package/src/domain/catalog/models/types/index.d.ts +0 -11
  731. package/src/domain/catalog/models/types/product-evaluation.type.d.ts +0 -6
  732. package/src/domain/catalog/models/types/product-gender.type.d.ts +0 -1
  733. package/src/domain/catalog/models/types/product-metadata.type.d.ts +0 -4
  734. package/src/domain/catalog/models/types/product-review.type.d.ts +0 -17
  735. package/src/domain/catalog/models/types/shop-description.type.d.ts +0 -9
  736. package/src/domain/catalog/models/types/shop-price.type.d.ts +0 -6
  737. package/src/domain/catalog/models/types/stock.type.d.ts +0 -3
  738. package/src/domain/catalog/models/types/variant-grade.type.d.ts +0 -4
  739. package/src/domain/catalog/models/variant.d.ts +0 -17
  740. package/src/domain/catalog/models/wishlist.d.ts +0 -8
  741. package/src/domain/catalog/repositories/category-collection-children.repository.d.ts +0 -4
  742. package/src/domain/catalog/repositories/category-filter.repository.d.ts +0 -6
  743. package/src/domain/catalog/repositories/category.repository.d.ts +0 -18
  744. package/src/domain/catalog/repositories/filter-option.repository.d.ts +0 -4
  745. package/src/domain/catalog/repositories/filter.repository.d.ts +0 -4
  746. package/src/domain/catalog/repositories/index.d.ts +0 -10
  747. package/src/domain/catalog/repositories/product-reviews.repository.d.ts +0 -6
  748. package/src/domain/catalog/repositories/product.repository.d.ts +0 -15
  749. package/src/domain/catalog/repositories/subscription-product.repository.d.ts +0 -4
  750. package/src/domain/catalog/repositories/variant.repository.d.ts +0 -4
  751. package/src/domain/catalog/repositories/wishlist.repository.d.ts +0 -6
  752. package/src/domain/generic/index.d.ts +0 -2
  753. package/src/domain/generic/model/base.model.d.ts +0 -14
  754. package/src/domain/generic/model/identifier-fields.d.ts +0 -4
  755. package/src/domain/generic/model/index.d.ts +0 -3
  756. package/src/domain/generic/model/types/base-model-builder.type.d.ts +0 -17
  757. package/src/domain/generic/model/types/identifier-model.type.d.ts +0 -8
  758. package/src/domain/generic/model/types/index.d.ts +0 -5
  759. package/src/domain/generic/model/types/model-base-structure.type.d.ts +0 -12
  760. package/src/domain/generic/model/types/non-function-properties.type.d.ts +0 -12
  761. package/src/domain/generic/model/types/non-function-property-name.type.d.ts +0 -13
  762. package/src/domain/generic/repository/create.repository.d.ts +0 -8
  763. package/src/domain/generic/repository/crud.repository.d.ts +0 -19
  764. package/src/domain/generic/repository/delete.repository.d.ts +0 -7
  765. package/src/domain/generic/repository/enums/index.d.ts +0 -2
  766. package/src/domain/generic/repository/enums/update-option-actions.enum.d.ts +0 -7
  767. package/src/domain/generic/repository/enums/where.enum.d.ts +0 -14
  768. package/src/domain/generic/repository/find.repository.d.ts +0 -17
  769. package/src/domain/generic/repository/get.repository.d.ts +0 -5
  770. package/src/domain/generic/repository/index.d.ts +0 -9
  771. package/src/domain/generic/repository/read.repository.d.ts +0 -14
  772. package/src/domain/generic/repository/types/index.d.ts +0 -6
  773. package/src/domain/generic/repository/types/repository-find-filters.type.d.ts +0 -13
  774. package/src/domain/generic/repository/types/repository-find-result.type.d.ts +0 -14
  775. package/src/domain/generic/repository/types/repository-limit-options.type.d.ts +0 -4
  776. package/src/domain/generic/repository/types/repository-order-by-list.type.d.ts +0 -5
  777. package/src/domain/generic/repository/types/repository-update-params.type.d.ts +0 -11
  778. package/src/domain/generic/repository/types/where-options.type.d.ts +0 -2
  779. package/src/domain/generic/repository/update.repository.d.ts +0 -6
  780. package/src/domain/index.d.ts +0 -6
  781. package/src/domain/location/index.d.ts +0 -1
  782. package/src/domain/location/models/address.d.ts +0 -24
  783. package/src/domain/location/models/index.d.ts +0 -2
  784. package/src/domain/location/models/types/index.d.ts +0 -3
  785. package/src/domain/location/models/types/location-bound.type.d.ts +0 -6
  786. package/src/domain/location/models/types/location-geometry.type.d.ts +0 -7
  787. package/src/domain/location/models/types/location-lat-lng.type.d.ts +0 -4
  788. package/src/domain/shop-settings/enums/filter-type.enum.d.ts +0 -19
  789. package/src/domain/shop-settings/enums/index.d.ts +0 -3
  790. package/src/domain/shop-settings/enums/questions-filters.enum.d.ts +0 -19
  791. package/src/domain/shop-settings/enums/shop-page-name.enum.d.ts +0 -19
  792. package/src/domain/shop-settings/helpers/beauty-questions.helper.d.ts +0 -9
  793. package/src/domain/shop-settings/helpers/index.d.ts +0 -1
  794. package/src/domain/shop-settings/index.d.ts +0 -4
  795. package/src/domain/shop-settings/models/campaign-banner.d.ts +0 -11
  796. package/src/domain/shop-settings/models/campaign.d.ts +0 -10
  797. package/src/domain/shop-settings/models/home.d.ts +0 -18
  798. package/src/domain/shop-settings/models/index.d.ts +0 -6
  799. package/src/domain/shop-settings/models/shop-menu.d.ts +0 -7
  800. package/src/domain/shop-settings/models/shop-settings.d.ts +0 -13
  801. package/src/domain/shop-settings/models/types/banner.type.d.ts +0 -6
  802. package/src/domain/shop-settings/models/types/benefit.type.d.ts +0 -5
  803. package/src/domain/shop-settings/models/types/brands-carousel.type.d.ts +0 -3
  804. package/src/domain/shop-settings/models/types/campaign-page.d.ts +0 -17
  805. package/src/domain/shop-settings/models/types/home-data.type.d.ts +0 -15
  806. package/src/domain/shop-settings/models/types/index.d.ts +0 -17
  807. package/src/domain/shop-settings/models/types/landing-page.d.ts +0 -8
  808. package/src/domain/shop-settings/models/types/menu-nav.type.d.ts +0 -8
  809. package/src/domain/shop-settings/models/types/promotion-page.d.ts +0 -10
  810. package/src/domain/shop-settings/models/types/sections.type.d.ts +0 -37
  811. package/src/domain/shop-settings/models/types/shop-banner.type.d.ts +0 -13
  812. package/src/domain/shop-settings/models/types/shop-brands.type.d.ts +0 -10
  813. package/src/domain/shop-settings/models/types/shop-carousel.type.d.ts +0 -4
  814. package/src/domain/shop-settings/models/types/shop-collection.type.d.ts +0 -9
  815. package/src/domain/shop-settings/models/types/shop-gift.type.d.ts +0 -8
  816. package/src/domain/shop-settings/models/types/shop-home.d.ts +0 -12
  817. package/src/domain/shop-settings/models/types/shop-post.type.d.ts +0 -7
  818. package/src/domain/shop-settings/models/types/shop-section.type.d.ts +0 -12
  819. package/src/domain/shop-settings/models/types/sub-menu.type.d.ts +0 -8
  820. package/src/domain/shop-settings/repositories/campaign-banner.repository.d.ts +0 -4
  821. package/src/domain/shop-settings/repositories/campaign.repository.d.ts +0 -4
  822. package/src/domain/shop-settings/repositories/home.repository.d.ts +0 -4
  823. package/src/domain/shop-settings/repositories/index.d.ts +0 -5
  824. package/src/domain/shop-settings/repositories/shop-menu.repository.d.ts +0 -4
  825. package/src/domain/shop-settings/repositories/shop-settings.repository.d.ts +0 -4
  826. package/src/domain/shopping/index.d.ts +0 -2
  827. package/src/domain/shopping/models/buy-2-win.d.ts +0 -18
  828. package/src/domain/shopping/models/campaign-dashboard.d.ts +0 -15
  829. package/src/domain/shopping/models/campaign-hashtag.d.ts +0 -18
  830. package/src/domain/shopping/models/checkout.d.ts +0 -26
  831. package/src/domain/shopping/models/coupons/coupon.d.ts +0 -60
  832. package/src/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +0 -5
  833. package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +0 -4
  834. package/src/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +0 -4
  835. package/src/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +0 -8
  836. package/src/domain/shopping/models/coupons/enums/index.d.ts +0 -3
  837. package/src/domain/shopping/models/coupons/index.d.ts +0 -2
  838. package/src/domain/shopping/models/enums/checkout-types.enum.d.ts +0 -5
  839. package/src/domain/shopping/models/enums/index.d.ts +0 -2
  840. package/src/domain/shopping/models/enums/order-status.enum.d.ts +0 -10
  841. package/src/domain/shopping/models/index.d.ts +0 -12
  842. package/src/domain/shopping/models/line-item.d.ts +0 -8
  843. package/src/domain/shopping/models/order.d.ts +0 -10
  844. package/src/domain/shopping/models/payment.d.ts +0 -67
  845. package/src/domain/shopping/models/shipping-method.d.ts +0 -17
  846. package/src/domain/shopping/models/subscription/checkout.d.ts +0 -20
  847. package/src/domain/shopping/models/subscription/index.d.ts +0 -2
  848. package/src/domain/shopping/models/subscription/plan.d.ts +0 -10
  849. package/src/domain/shopping/models/types/index.d.ts +0 -7
  850. package/src/domain/shopping/models/types/payment-address.type.d.ts +0 -12
  851. package/src/domain/shopping/models/types/payment-billing.type.d.ts +0 -7
  852. package/src/domain/shopping/models/types/payment-card.type.d.ts +0 -14
  853. package/src/domain/shopping/models/types/payment-customer.type.d.ts +0 -18
  854. package/src/domain/shopping/models/types/payment-document.type.d.ts +0 -6
  855. package/src/domain/shopping/models/types/payment-item.type.d.ts +0 -11
  856. package/src/domain/shopping/models/types/payment-shipping.type.d.ts +0 -10
  857. package/src/domain/shopping/repositories/buy-2-win.repository.d.ts +0 -4
  858. package/src/domain/shopping/repositories/campaign-dashboard.repository.d.ts +0 -4
  859. package/src/domain/shopping/repositories/campaign-hashtag.repository.d.ts +0 -4
  860. package/src/domain/shopping/repositories/checkout.repository.d.ts +0 -4
  861. package/src/domain/shopping/repositories/coupon.repository.d.ts +0 -4
  862. package/src/domain/shopping/repositories/index.d.ts +0 -9
  863. package/src/domain/shopping/repositories/legacy-order.repository.d.ts +0 -3
  864. package/src/domain/shopping/repositories/order.repository.d.ts +0 -4
  865. package/src/domain/shopping/repositories/payment.repository.d.ts +0 -4
  866. package/src/domain/shopping/repositories/subscription/checkout.repository.d.ts +0 -4
  867. package/src/domain/shopping/repositories/subscription/index.d.ts +0 -2
  868. package/src/domain/shopping/repositories/subscription/plan.repository.d.ts +0 -4
  869. package/src/domain/users/errors/index.d.ts +0 -3
  870. package/src/domain/users/errors/unauthorized.error.d.ts +0 -4
  871. package/src/domain/users/errors/user-already-registered.error.d.ts +0 -4
  872. package/src/domain/users/errors/weak-password.error.d.ts +0 -4
  873. package/src/domain/users/index.d.ts +0 -5
  874. package/src/domain/users/models/beauty-profile.d.ts +0 -11
  875. package/src/domain/users/models/enums/accessory-importances.enum.d.ts +0 -5
  876. package/src/domain/users/models/enums/area.enum.d.ts +0 -11
  877. package/src/domain/users/models/enums/beard-problems.enum.d.ts +0 -9
  878. package/src/domain/users/models/enums/beard-sizes.enum.d.ts +0 -7
  879. package/src/domain/users/models/enums/beauty-product-importances.enum.d.ts +0 -6
  880. package/src/domain/users/models/enums/body-problems.enum.d.ts +0 -11
  881. package/src/domain/users/models/enums/body-shapes.enum.d.ts +0 -7
  882. package/src/domain/users/models/enums/body-tattoos.enum.d.ts +0 -5
  883. package/src/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +0 -7
  884. package/src/domain/users/models/enums/face-skin-problems.enum.d.ts +0 -10
  885. package/src/domain/users/models/enums/face-skin-tones.enum.d.ts +0 -8
  886. package/src/domain/users/models/enums/family-incomes.enum.d.ts +0 -8
  887. package/src/domain/users/models/enums/fragrance-importances.enum.d.ts +0 -5
  888. package/src/domain/users/models/enums/hair-colors.enum.d.ts +0 -10
  889. package/src/domain/users/models/enums/hair-problems.enum.d.ts +0 -10
  890. package/src/domain/users/models/enums/hair-strands.enum.d.ts +0 -8
  891. package/src/domain/users/models/enums/hair-types.enum.d.ts +0 -7
  892. package/src/domain/users/models/enums/index.d.ts +0 -20
  893. package/src/domain/users/models/enums/office-position.enum.d.ts +0 -6
  894. package/src/domain/users/models/enums/product-spents.enum.d.ts +0 -8
  895. package/src/domain/users/models/enums/user-type.enum.d.ts +0 -8
  896. package/src/domain/users/models/index.d.ts +0 -7
  897. package/src/domain/users/models/lead.d.ts +0 -8
  898. package/src/domain/users/models/subscription/edition.d.ts +0 -16
  899. package/src/domain/users/models/subscription/enums/billing-status.enum.d.ts +0 -3
  900. package/src/domain/users/models/subscription/enums/edition-status.enum.d.ts +0 -4
  901. package/src/domain/users/models/subscription/enums/index.d.ts +0 -4
  902. package/src/domain/users/models/subscription/enums/payment-type.enum.d.ts +0 -5
  903. package/src/domain/users/models/subscription/enums/status.enum.d.ts +0 -4
  904. package/src/domain/users/models/subscription/index.d.ts +0 -4
  905. package/src/domain/users/models/subscription/payment.d.ts +0 -13
  906. package/src/domain/users/models/subscription/subscription.d.ts +0 -28
  907. package/src/domain/users/models/user-address.d.ts +0 -6
  908. package/src/domain/users/models/user-payment-method.d.ts +0 -14
  909. package/src/domain/users/models/user.d.ts +0 -27
  910. package/src/domain/users/repositories/beauty-profile.repository.d.ts +0 -4
  911. package/src/domain/users/repositories/edition.repository.d.ts +0 -4
  912. package/src/domain/users/repositories/index.d.ts +0 -8
  913. package/src/domain/users/repositories/lead.repository.d.ts +0 -4
  914. package/src/domain/users/repositories/subscription-payment.repository.d.ts +0 -4
  915. package/src/domain/users/repositories/subscription.repository.d.ts +0 -4
  916. package/src/domain/users/repositories/user-address.repository.d.ts +0 -4
  917. package/src/domain/users/repositories/user-payment-method.repository.d.ts +0 -4
  918. package/src/domain/users/repositories/user.repository.d.ts +0 -6
  919. package/src/domain/users/services/authentication.service.d.ts +0 -12
  920. package/src/domain/users/services/index.d.ts +0 -3
  921. package/src/domain/users/services/register.service.d.ts +0 -7
  922. package/src/domain/users/services/types/basic-user-data.type.d.ts +0 -4
  923. package/src/domain/users/services/types/index.d.ts +0 -1
  924. package/src/domain/users/use-cases/authentication.d.ts +0 -21
  925. package/src/domain/users/use-cases/index.d.ts +0 -4
  926. package/src/domain/users/use-cases/recovery-password.d.ts +0 -6
  927. package/src/domain/users/use-cases/register.d.ts +0 -13
  928. package/src/domain/users/use-cases/signout.d.ts +0 -6
  929. package/src/errors/duplicated-results.error.d.ts +0 -4
  930. package/src/errors/index.d.ts +0 -4
  931. package/src/errors/invalid-argument.error.d.ts +0 -4
  932. package/src/errors/not-found.error.d.ts +0 -4
  933. package/src/errors/required-argument.error.d.ts +0 -6
  934. package/src/index.d.ts +0 -5
  935. package/src/infra/elasticsearch/adapters/axios.adapter.d.ts +0 -16
  936. package/src/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +0 -8
  937. package/src/infra/elasticsearch/adapters/index.d.ts +0 -2
  938. package/src/infra/elasticsearch/index.d.ts +0 -3
  939. package/src/infra/elasticsearch/indexes/index.d.ts +0 -1
  940. package/src/infra/elasticsearch/indexes/products-index.d.ts +0 -13
  941. package/src/infra/elasticsearch/types/elastic-search-result.d.ts +0 -9
  942. package/src/infra/elasticsearch/types/index.d.ts +0 -1
  943. package/src/infra/firebase/auth/authentication-firebase-auth.service.d.ts +0 -12
  944. package/src/infra/firebase/auth/index.d.ts +0 -2
  945. package/src/infra/firebase/auth/register-firebase-auth.service.d.ts +0 -8
  946. package/src/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +0 -5
  947. package/src/infra/firebase/auth/types/index.d.ts +0 -1
  948. package/src/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +0 -8
  949. package/src/infra/firebase/firestore/enums/index.d.ts +0 -1
  950. package/src/infra/firebase/firestore/index.d.ts +0 -3
  951. package/src/infra/firebase/firestore/mixins/index.d.ts +0 -9
  952. package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +0 -4
  953. package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +0 -5
  954. package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +0 -4
  955. package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +0 -4
  956. package/src/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +0 -13
  957. package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +0 -4
  958. package/src/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +0 -11
  959. package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +0 -11
  960. package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +0 -7
  961. package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +0 -20
  962. package/src/infra/firebase/firestore/repositories/catalog/index.d.ts +0 -4
  963. package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +0 -12
  964. package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +0 -12
  965. package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +0 -7
  966. package/src/infra/firebase/firestore/repositories/index.d.ts +0 -4
  967. package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +0 -16
  968. package/src/infra/firebase/firestore/repositories/shop-settings/index.d.ts +0 -3
  969. package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +0 -7
  970. package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +0 -7
  971. package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +0 -7
  972. package/src/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +0 -8
  973. package/src/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +0 -8
  974. package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +0 -7
  975. package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +0 -7
  976. package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +0 -12
  977. package/src/infra/firebase/firestore/repositories/shopping/index.d.ts +0 -10
  978. package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +0 -6
  979. package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +0 -13
  980. package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +0 -7
  981. package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +0 -7
  982. package/src/infra/firebase/firestore/repositories/users/index.d.ts +0 -8
  983. package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +0 -7
  984. package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +0 -12
  985. package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +0 -7
  986. package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +0 -12
  987. package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +0 -12
  988. package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +0 -12
  989. package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +0 -17
  990. package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +0 -12
  991. package/src/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +0 -14
  992. package/src/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +0 -6
  993. package/src/infra/firebase/firestore/types/firestore.helpers.type.d.ts +0 -8
  994. package/src/infra/firebase/firestore/types/firestore.repository.type.d.ts +0 -16
  995. package/src/infra/firebase/firestore/types/index.d.ts +0 -4
  996. package/src/infra/firebase/index.d.ts +0 -2
  997. package/src/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +0 -11
  998. package/src/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +0 -15
  999. package/src/infra/hasura-graphql/enums/index.d.ts +0 -2
  1000. package/src/infra/hasura-graphql/index.d.ts +0 -4
  1001. package/src/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +0 -19
  1002. package/src/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +0 -10
  1003. package/src/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +0 -8
  1004. package/src/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +0 -12
  1005. package/src/infra/hasura-graphql/mixins/helpers/index.d.ts +0 -4
  1006. package/src/infra/hasura-graphql/mixins/index.d.ts +0 -7
  1007. package/src/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +0 -9
  1008. package/src/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +0 -11
  1009. package/src/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +0 -7
  1010. package/src/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +0 -34
  1011. package/src/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +0 -25
  1012. package/src/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +0 -23
  1013. package/src/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +0 -14
  1014. package/src/infra/hasura-graphql/models/category-hasura-graphql.d.ts +0 -6
  1015. package/src/infra/hasura-graphql/models/index.d.ts +0 -4
  1016. package/src/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +0 -6
  1017. package/src/infra/hasura-graphql/models/product-hasura-graphql.d.ts +0 -18
  1018. package/src/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +0 -10
  1019. package/src/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +0 -10
  1020. package/src/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +0 -12
  1021. package/src/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +0 -34
  1022. package/src/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +0 -18
  1023. package/src/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +0 -10
  1024. package/src/infra/hasura-graphql/repositories/catalog/index.d.ts +0 -9
  1025. package/src/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +0 -30
  1026. package/src/infra/hasura-graphql/repositories/catalog/product-review-hasura-graphql.repository.d.ts +0 -12
  1027. package/src/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +0 -14
  1028. package/src/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.d.ts +0 -27
  1029. package/src/infra/hasura-graphql/repositories/index.d.ts +0 -1
  1030. package/src/infra/hasura-graphql/types/fields.type.d.ts +0 -2
  1031. package/src/infra/hasura-graphql/types/graphql.repository.type.d.ts +0 -24
  1032. package/src/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +0 -8
  1033. package/src/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +0 -44
  1034. package/src/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +0 -7
  1035. package/src/infra/hasura-graphql/types/index.d.ts +0 -8
  1036. package/src/infra/hasura-graphql/types/nested-field.type.d.ts +0 -7
  1037. package/src/infra/hasura-graphql/types/query-builder-options.type.d.ts +0 -7
  1038. package/src/infra/hasura-graphql/types/variable-options.type.d.ts +0 -9
  1039. package/src/infra/index.d.ts +0 -3
  1040. package/src/utils/decorators/debug.class.decorator.d.ts +0 -2
  1041. package/src/utils/decorators/index.d.ts +0 -2
  1042. package/src/utils/decorators/trace.method.decorator.d.ts +0 -14
  1043. package/src/utils/get.d.ts +0 -1
  1044. package/src/utils/helpers/class-name.helper.d.ts +0 -3
  1045. package/src/utils/helpers/debug-decorator.helper.d.ts +0 -9
  1046. package/src/utils/helpers/debug.helper.d.ts +0 -60
  1047. package/src/utils/helpers/index.d.ts +0 -4
  1048. package/src/utils/helpers/reflect.helper.d.ts +0 -50
  1049. package/src/utils/index.d.ts +0 -13
  1050. package/src/utils/is-uuid.d.ts +0 -1
  1051. package/src/utils/is.d.ts +0 -1
  1052. package/src/utils/log.utils.d.ts +0 -7
  1053. package/src/utils/mixins/base.mixin.d.ts +0 -3
  1054. package/src/utils/mixins/index.d.ts +0 -3
  1055. package/src/utils/mixins/merge-constructor-params.type.d.ts +0 -3
  1056. package/src/utils/mixins/mixin-ctor.type.d.ts +0 -1
  1057. package/src/utils/parse-datetime.d.ts +0 -1
  1058. package/src/utils/types/array-element.type.d.ts +0 -1
  1059. package/src/utils/types/index.d.ts +0 -2
  1060. package/src/utils/types/prop.type.d.ts +0 -1
@@ -0,0 +1,114 @@
1
+ import { Where, } from '../../../../domain';
2
+ import { NotFoundError } from '../../../../errors';
3
+ import { Base, isNil } from '../../../../utils';
4
+ import { HasuraGraphQLColumnType } from '../../enums';
5
+ import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
6
+ import { VariantHasuraGraphQL } from '../../models';
7
+ export class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
8
+ constructor({ endpoint, authOptions, interceptors, }) {
9
+ super({
10
+ tableName: 'product',
11
+ model: VariantHasuraGraphQL,
12
+ endpoint,
13
+ authOptions,
14
+ interceptors,
15
+ fields: [
16
+ { id: { columnName: 'id', to: (value) => +value, from: (value) => value.toString() } },
17
+ { firestoreId: { columnName: 'firestore_id' } },
18
+ {
19
+ productId: {
20
+ columnName: 'main_product_id',
21
+ to: (value) => +value,
22
+ from: (value) => value?.toString(),
23
+ },
24
+ },
25
+ { EAN: { columnName: 'ean' } },
26
+ { costPrice: { columnName: 'cost_price' } },
27
+ {
28
+ price: {
29
+ columnName: 'price',
30
+ from: (price, data) => ({
31
+ price,
32
+ fullPrice: data.full_price,
33
+ subscriberDiscountPercentage: data.subscriber_discount_percentage,
34
+ subscriberPrice: data.subscriber_price,
35
+ }),
36
+ bindFindFilter: (sentence) => {
37
+ const filters = Object.values(sentence).shift();
38
+ return {
39
+ ...((filters?.price || filters?.price === 0) && { price: filters.price }),
40
+ ...((filters.fullPrice || filters.fullPrice === 0) && { full_price: filters.fullPrice }),
41
+ ...((filters.subscriberDiscountPercentage || filters.subscriberDiscountPercentage === 0) && {
42
+ subscriber_discount_percentage: filters.subscriberDiscountPercentage,
43
+ }),
44
+ ...((filters.subscriberPrice || filters.subscriberPrice === 0) && {
45
+ subscriber_price: filters.subscriberPrice,
46
+ }),
47
+ };
48
+ },
49
+ bindPersistData: (priceData) => ({
50
+ ...((priceData?.price || 0) >= 0 && { price: priceData.price }),
51
+ ...((priceData?.fullPrice || 0) >= 0 && { full_price: priceData.fullPrice }),
52
+ ...((priceData?.subscriberDiscountPercentage || 0) >= 0 && {
53
+ subscriber_discount_percentage: priceData.subscriberDiscountPercentage,
54
+ }),
55
+ ...((priceData?.subscriberPrice || 0) >= 0 && { subscriber_price: priceData.subscriberPrice }),
56
+ }),
57
+ },
58
+ },
59
+ { fullPrice: { columnName: 'full_price' } },
60
+ { subscriberDiscountPercentage: { columnName: 'subscriber_discount_percentage' } },
61
+ { subscriberPrice: { columnName: 'subscriber_price' } },
62
+ 'sku',
63
+ {
64
+ stock: {
65
+ columnName: 'stock',
66
+ from: (quantity) => ({ quantity }),
67
+ to: (value) => (isNil(value?.quantity) ? value : value?.quantity),
68
+ },
69
+ },
70
+ { hasStock: { columnName: 'has_stock' } },
71
+ 'weight',
72
+ { name: { to: () => '', from: () => undefined } },
73
+ { hasVariants: { columnName: 'has_variants', to: () => false, from: () => undefined } },
74
+ { createdAt: { columnName: 'created_at' } },
75
+ { updatedAt: { columnName: 'updated_at' } },
76
+ {
77
+ grade: {
78
+ columnName: 'grade',
79
+ type: HasuraGraphQLColumnType.Jsonb,
80
+ },
81
+ },
82
+ ],
83
+ });
84
+ }
85
+ async get(identifiers) {
86
+ const variant = Number.isNaN(+identifiers.id)
87
+ ? (await this.find({ filters: { firestoreId: identifiers.id } })).data?.[0]
88
+ : await super.get(identifiers);
89
+ if (!variant.productId)
90
+ throw new NotFoundError(`Variant not found, it is a product`);
91
+ return variant;
92
+ }
93
+ async find(params) {
94
+ const { filters, ...options } = params || {};
95
+ return super.find({ ...options, filters: { productId: { operator: Where.ISNOTNULL }, ...filters } });
96
+ }
97
+ async update(params) {
98
+ const { productId, id: checkId, ...data } = params;
99
+ const dataWithProductId = this.paramsToPlain({ id: checkId, productId });
100
+ const id = await this.getId(dataWithProductId.id);
101
+ const product = await super.update({ id, ...data });
102
+ product.productId = dataWithProductId.productId;
103
+ return product;
104
+ }
105
+ async getId(id) {
106
+ if (!Number.isNaN(+id))
107
+ return id;
108
+ const { data } = await this.find({ filters: { firestoreId: id }, options: { enableCount: false } });
109
+ if (data?.[0]?.id)
110
+ return data?.[0]?.id;
111
+ throw new NotFoundError(`Product with id ${id} not found`);
112
+ }
113
+ }
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFudC1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvcmVwb3NpdG9yaWVzL2NhdGFsb2cvdmFyaWFudC1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFPTCxLQUFLLEdBQ04sTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbEQsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDckQsT0FBTyxFQUEyQixxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFbkQsTUFBTSxPQUFPLDhCQUNYLFNBQVEscUJBQXFCLENBQUMsaUJBQWlCLENBQXVCLElBQUksQ0FBQyxDQUFDO0lBRzVFLFlBQVksRUFDVixRQUFRLEVBQ1IsV0FBVyxFQUNYLFlBQVksR0FDcUY7UUFDakcsS0FBSyxDQUFDO1lBQ0osU0FBUyxFQUFFLFNBQVM7WUFDcEIsS0FBSyxFQUFFLG9CQUFvQjtZQUMzQixRQUFRO1lBQ1IsV0FBVztZQUNYLFlBQVk7WUFDWixNQUFNLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRTtnQkFDdEcs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QUUsRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLENBQUE7UUFFbkQsT0FBTyxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxTQUFVLENBQUE7UUFFaEQsT0FBTyxPQUFPLENBQUE7SUFDaEIsQ0FBQztJQUVPLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBVTtRQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFBO1FBRWpDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVuRyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFBRSxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQTtRQUV2QyxNQUFNLElBQUksYUFBYSxDQUFDLG1CQUFtQixFQUFFLFlBQVksQ0FBQyxDQUFBO0lBQzVELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEZpbmRSZXBvc2l0b3J5UGFyYW1zLFxuICBHZXRSZXBvc2l0b3J5UGFyYW1zLFxuICBSZXBvc2l0b3J5RmluZFJlc3VsdCxcbiAgU2hvcFByaWNlLFxuICBVcGRhdGVSZXBvc2l0b3J5UGFyYW1zLFxuICBWYXJpYW50UmVwb3NpdG9yeSxcbiAgV2hlcmUsXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBCYXNlLCBpc05pbCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgSGFzdXJhR3JhcGhRTENvbHVtblR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcydcbmltcG9ydCB7IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zLCB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwsIHdpdGhIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuaW1wb3J0IHsgVmFyaWFudEhhc3VyYUdyYXBoUUwgfSBmcm9tICcuLi8uLi9tb2RlbHMnXG5cbmV4cG9ydCBjbGFzcyBWYXJpYW50SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwod2l0aEhhc3VyYUdyYXBoUUw8VmFyaWFudEhhc3VyYUdyYXBoUUw+KEJhc2UpKVxuICBpbXBsZW1lbnRzIFZhcmlhbnRSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBlbmRwb2ludCxcbiAgICBhdXRoT3B0aW9ucyxcbiAgICBpbnRlcmNlcHRvcnMsXG4gIH06IFBpY2s8SGFzdXJhQ29uc3RydWN0b3JQYXJhbXM8VmFyaWFudEhhc3VyYUdyYXBoUUw+LCAnZW5kcG9pbnQnIHwgJ2F1dGhPcHRpb25zJyB8ICdpbnRlcmNlcHRvcnMnPikge1xuICAgIHN1cGVyKHtcbiAgICAgIHRhYmxlTmFtZTogJ3Byb2R1Y3QnLFxuICAgICAgbW9kZWw6IFZhcmlhbnRIYXN1cmFHcmFwaFFMLFxuICAgICAgZW5kcG9pbnQsXG4gICAgICBhdXRoT3B0aW9ucyxcbiAgICAgIGludGVyY2VwdG9ycyxcbiAgICAgIGZpZWxkczogW1xuICAgICAgICB7IGlkOiB7IGNvbHVtbk5hbWU6ICdpZCcsIHRvOiAodmFsdWU6IHN0cmluZykgPT4gK3ZhbHVlLCBmcm9tOiAodmFsdWU6IG51bWJlcikgPT4gdmFsdWUudG9TdHJpbmcoKSB9IH0sXG4gICAgICAgIHsgZmlyZXN0b3JlSWQ6IHsgY29sdW1uTmFtZTogJ2ZpcmVzdG9yZV9pZCcgfSB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvZHVjdElkOiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAnbWFpbl9wcm9kdWN0X2lkJyxcbiAgICAgICAgICAgIHRvOiAodmFsdWU6IHN0cmluZykgPT4gK3ZhbHVlLFxuICAgICAgICAgICAgZnJvbTogKHZhbHVlOiBudW1iZXIpID0+IHZhbHVlPy50b1N0cmluZygpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgRUFOOiB7IGNvbHVtbk5hbWU6ICdlYW4nIH0gfSxcbiAgICAgICAgeyBjb3N0UHJpY2U6IHsgY29sdW1uTmFtZTogJ2Nvc3RfcHJpY2UnIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIHByaWNlOiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAncHJpY2UnLFxuICAgICAgICAgICAgZnJvbTogKFxuICAgICAgICAgICAgICBwcmljZTogbnVtYmVyLFxuICAgICAgICAgICAgICBkYXRhOiBSZWNvcmQ8J3ByaWNlJyB8ICdmdWxsX3ByaWNlJyB8ICdzdWJzY3JpYmVyX2Rpc2NvdW50X3BlcmNlbnRhZ2UnIHwgJ3N1YnNjcmliZXJfcHJpY2UnLCBhbnk+LFxuICAgICAgICAgICAgKTogU2hvcFByaWNlID0+ICh7XG4gICAgICAgICAgICAgIHByaWNlLFxuICAgICAgICAgICAgICBmdWxsUHJpY2U6IGRhdGEuZnVsbF9wcmljZSxcbiAgICAgICAgICAgICAgc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZTogZGF0YS5zdWJzY3JpYmVyX2Rpc2NvdW50X3BlcmNlbnRhZ2UsXG4gICAgICAgICAgICAgIHN1YnNjcmliZXJQcmljZTogZGF0YS5zdWJzY3JpYmVyX3ByaWNlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBiaW5kRmluZEZpbHRlcjogKHNlbnRlbmNlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbHRlcnMgPSBPYmplY3QudmFsdWVzKHNlbnRlbmNlKS5zaGlmdCgpXG5cbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi4oKGZpbHRlcnM/LnByaWNlIHx8IGZpbHRlcnM/LnByaWNlID09PSAwKSAmJiB7IHByaWNlOiBmaWx0ZXJzLnByaWNlIH0pLFxuICAgICAgICAgICAgICAgIC4uLigoZmlsdGVycy5mdWxsUHJpY2UgfHwgZmlsdGVycy5mdWxsUHJpY2UgPT09IDApICYmIHsgZnVsbF9wcmljZTogZmlsdGVycy5mdWxsUHJpY2UgfSksXG4gICAgICAgICAgICAgICAgLi4uKChmaWx0ZXJzLnN1YnNjcmliZXJEaXNjb3VudFBlcmNlbnRhZ2UgfHwgZmlsdGVycy5zdWJzY3JpYmVyRGlzY291bnRQZXJjZW50YWdlID09PSAwKSAmJiB7XG4gICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyX2Rpc2NvdW50X3BlcmNlbnRhZ2U6IGZpbHRlcnMuc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAuLi4oKGZpbHRlcnMuc3Vic2NyaWJlclByaWNlIHx8IGZpbHRlcnMuc3Vic2NyaWJlclByaWNlID09PSAwKSAmJiB7XG4gICAgICAgICAgICAgICAgICBzdWJzY3JpYmVyX3ByaWNlOiBmaWx0ZXJzLnN1YnNjcmliZXJQcmljZSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHByaWNlRGF0YTogVmFyaWFudEhhc3VyYUdyYXBoUUxbJ3ByaWNlJ10pID0+ICh7XG4gICAgICAgICAgICAgIC4uLigocHJpY2VEYXRhPy5wcmljZSB8fCAwKSA+PSAwICYmIHsgcHJpY2U6IHByaWNlRGF0YS5wcmljZSB9KSxcbiAgICAgICAgICAgICAgLi4uKChwcmljZURhdGE/LmZ1bGxQcmljZSB8fCAwKSA+PSAwICYmIHsgZnVsbF9wcmljZTogcHJpY2VEYXRhLmZ1bGxQcmljZSB9KSxcbiAgICAgICAgICAgICAgLi4uKChwcmljZURhdGE/LnN1YnNjcmliZXJEaXNjb3VudFBlcmNlbnRhZ2UgfHwgMCkgPj0gMCAmJiB7XG4gICAgICAgICAgICAgICAgc3Vic2NyaWJlcl9kaXNjb3VudF9wZXJjZW50YWdlOiBwcmljZURhdGEuc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIC4uLigocHJpY2VEYXRhPy5zdWJzY3JpYmVyUHJpY2UgfHwgMCkgPj0gMCAmJiB7IHN1YnNjcmliZXJfcHJpY2U6IHByaWNlRGF0YS5zdWJzY3JpYmVyUHJpY2UgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7IGZ1bGxQcmljZTogeyBjb2x1bW5OYW1lOiAnZnVsbF9wcmljZScgfSB9LFxuICAgICAgICB7IHN1YnNjcmliZXJEaXNjb3VudFBlcmNlbnRhZ2U6IHsgY29sdW1uTmFtZTogJ3N1YnNjcmliZXJfZGlzY291bnRfcGVyY2VudGFnZScgfSB9LFxuICAgICAgICB7IHN1YnNjcmliZXJQcmljZTogeyBjb2x1bW5OYW1lOiAnc3Vic2NyaWJlcl9wcmljZScgfSB9LFxuICAgICAgICAnc2t1JyxcbiAgICAgICAge1xuICAgICAgICAgIHN0b2NrOiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAnc3RvY2snLFxuICAgICAgICAgICAgZnJvbTogKHF1YW50aXR5OiBudW1iZXIpID0+ICh7IHF1YW50aXR5IH0pLFxuICAgICAgICAgICAgdG86ICh2YWx1ZTogVmFyaWFudEhhc3VyYUdyYXBoUUxbJ3N0b2NrJ10pID0+IChpc05pbCh2YWx1ZT8ucXVhbnRpdHkpID8gdmFsdWUgOiB2YWx1ZT8ucXVhbnRpdHkpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgaGFzU3RvY2s6IHsgY29sdW1uTmFtZTogJ2hhc19zdG9jaycgfSB9LFxuICAgICAgICAnd2VpZ2h0JyxcbiAgICAgICAgeyBuYW1lOiB7IHRvOiAoKSA9PiAnJywgZnJvbTogKCk6IHVuZGVmaW5lZCA9PiB1bmRlZmluZWQgfSB9LFxuICAgICAgICB7IGhhc1ZhcmlhbnRzOiB7IGNvbHVtbk5hbWU6ICdoYXNfdmFyaWFudHMnLCB0bzogKCkgPT4gZmFsc2UsIGZyb206ICgpOiB1bmRlZmluZWQgPT4gdW5kZWZpbmVkIH0gfSxcbiAgICAgICAgeyBjcmVhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ2NyZWF0ZWRfYXQnIH0gfSxcbiAgICAgICAgeyB1cGRhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ3VwZGF0ZWRfYXQnIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIGdyYWRlOiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAnZ3JhZGUnLFxuICAgICAgICAgICAgdHlwZTogSGFzdXJhR3JhcGhRTENvbHVtblR5cGUuSnNvbmIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSlcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxWYXJpYW50SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPFZhcmlhbnRIYXN1cmFHcmFwaFFMPiB7XG4gICAgY29uc3QgdmFyaWFudCA9IE51bWJlci5pc05hTigraWRlbnRpZmllcnMuaWQhKVxuICAgICAgPyAoYXdhaXQgdGhpcy5maW5kKHsgZmlsdGVyczogeyBmaXJlc3RvcmVJZDogaWRlbnRpZmllcnMuaWQgfSB9KSkuZGF0YT8uWzBdXG4gICAgICA6IGF3YWl0IHN1cGVyLmdldChpZGVudGlmaWVycylcblxuICAgIGlmICghdmFyaWFudC5wcm9kdWN0SWQpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBWYXJpYW50IG5vdCBmb3VuZCwgaXQgaXMgYSBwcm9kdWN0YClcblxuICAgIHJldHVybiB2YXJpYW50XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBmaW5kKFxuICAgIHBhcmFtcz86IEZpbmRSZXBvc2l0b3J5UGFyYW1zPFZhcmlhbnRIYXN1cmFHcmFwaFFMPixcbiAgKTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxWYXJpYW50SGFzdXJhR3JhcGhRTD4+IHtcbiAgICBjb25zdCB7IGZpbHRlcnMsIC4uLm9wdGlvbnMgfSA9IHBhcmFtcyB8fCB7fVxuXG4gICAgcmV0dXJuIHN1cGVyLmZpbmQoeyAuLi5vcHRpb25zLCBmaWx0ZXJzOiB7IHByb2R1Y3RJZDogeyBvcGVyYXRvcjogV2hlcmUuSVNOT1ROVUxMIH0sIC4uLmZpbHRlcnMgfSB9KVxuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgdXBkYXRlKHBhcmFtczogVXBkYXRlUmVwb3NpdG9yeVBhcmFtczxWYXJpYW50SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPFZhcmlhbnRIYXN1cmFHcmFwaFFMPiB7XG4gICAgY29uc3QgeyBwcm9kdWN0SWQsIGlkOiBjaGVja0lkLCAuLi5kYXRhIH0gPSBwYXJhbXNcbiAgICBjb25zdCBkYXRhV2l0aFByb2R1Y3RJZCA9IHRoaXMucGFyYW1zVG9QbGFpbih7IGlkOiBjaGVja0lkLCBwcm9kdWN0SWQgfSlcbiAgICBjb25zdCBpZCA9IGF3YWl0IHRoaXMuZ2V0SWQoZGF0YVdpdGhQcm9kdWN0SWQuaWQhKVxuICAgIGNvbnN0IHByb2R1Y3QgPSBhd2FpdCBzdXBlci51cGRhdGUoeyBpZCwgLi4uZGF0YSB9KVxuXG4gICAgcHJvZHVjdC5wcm9kdWN0SWQgPSBkYXRhV2l0aFByb2R1Y3RJZC5wcm9kdWN0SWQhXG5cbiAgICByZXR1cm4gcHJvZHVjdFxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRJZChpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBpZiAoIU51bWJlci5pc05hTigraWQpKSByZXR1cm4gaWRcblxuICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgdGhpcy5maW5kKHsgZmlsdGVyczogeyBmaXJlc3RvcmVJZDogaWQgfSwgb3B0aW9uczogeyBlbmFibGVDb3VudDogZmFsc2UgfSB9KVxuXG4gICAgaWYgKGRhdGE/LlswXT8uaWQpIHJldHVybiBkYXRhPy5bMF0/LmlkXG5cbiAgICB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihgUHJvZHVjdCB3aXRoIGlkICR7aWR9IG5vdCBmb3VuZGApXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,238 @@
1
+ import { Where, Wishlist, } from '../../../../domain';
2
+ import { DuplicatedResultsError, NotFoundError } from '../../../../errors';
3
+ import { Base, omit } from '../../../../utils';
4
+ import { HasuraGraphQLColumnType } from '../../enums';
5
+ import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
6
+ export class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
7
+ constructor({ endpoint, authOptions, interceptors, }, categoryFilterRepository) {
8
+ super({
9
+ tableName: 'category',
10
+ model: Wishlist,
11
+ endpoint,
12
+ authOptions,
13
+ interceptors,
14
+ fields: [
15
+ { id: { columnName: 'id', to: (value) => +value, from: (value) => value.toString() } },
16
+ { firestoreId: { columnName: 'firestore_id' } },
17
+ 'name',
18
+ 'description',
19
+ 'image',
20
+ 'published',
21
+ 'shop',
22
+ { shops: { columnName: 'shops', type: HasuraGraphQLColumnType.Jsonb } },
23
+ 'slug',
24
+ { brandCategory: { columnName: 'brand_category' } },
25
+ { brandCategoryBanner: { columnName: 'brand_banner' } },
26
+ { brandCategoryBannerMobile: { columnName: 'brand_banner_mobile' } },
27
+ { brandLogo: { columnName: 'brand_logo' } },
28
+ { brandCondition: { columnName: 'brand_condition' } },
29
+ {
30
+ conditions: {
31
+ columnName: 'tag_condition',
32
+ type: HasuraGraphQLColumnType.Jsonb,
33
+ from: (tags, row) => ({ brand: row.brand_condition, tags: Array.isArray(tags) ? tags : [] }),
34
+ bindPersistData: (value) => {
35
+ return {
36
+ brand_condition: value.brand,
37
+ tag_condition: value?.tags || [],
38
+ };
39
+ },
40
+ bindFindFilter: (sentence) => {
41
+ return {
42
+ ...(sentence.brand ? { brand_condition: sentence.brand } : {}),
43
+ ...(sentence.tags ? { tag_condition: sentence.tags } : {}),
44
+ };
45
+ },
46
+ },
47
+ },
48
+ {
49
+ filters: {
50
+ columnName: 'filters',
51
+ foreignKeyColumn: { filter_id: 'id' },
52
+ fields: [{ filter: ['id', 'description', 'slug', 'enabled'] }],
53
+ bindPersistData: (value) => ({
54
+ filters: { data: value.map((filter) => ({ filter_id: filter.id })) },
55
+ }),
56
+ from: (filters) => filters?.map((filter) => filter?.filter) || [],
57
+ },
58
+ },
59
+ { createdAt: { columnName: 'created_at' } },
60
+ { updatedAt: { columnName: 'updated_at' } },
61
+ {
62
+ products: {
63
+ columnName: 'products',
64
+ fields: ['product_id'],
65
+ from: (value) => value.map((product) => product.product_id.toString()),
66
+ to: (productIds) => productIds.map((productId) => ({
67
+ product_id: +productId,
68
+ })),
69
+ },
70
+ },
71
+ {
72
+ metadata: {
73
+ columnName: 'metadata',
74
+ fields: ['title', 'description'],
75
+ bindPersistData: (value) => ({
76
+ metadata: { data: value },
77
+ }),
78
+ },
79
+ },
80
+ { isCollection: { columnName: 'is_collection' } },
81
+ { isWishlist: { columnName: 'is_wishlist' } },
82
+ 'reference',
83
+ { parentId: { columnName: 'parent_id' } },
84
+ {
85
+ parent: {
86
+ columnName: 'parent',
87
+ foreignKeyColumn: { id: 'parentId' },
88
+ fields: ['id', 'name', 'reference', 'slug'],
89
+ },
90
+ },
91
+ { personId: { columnName: 'person_id' } },
92
+ { personName: { columnName: 'person_name' } },
93
+ { personPhoto: { columnName: 'person_photo' } },
94
+ ],
95
+ });
96
+ this.categoryFilterRepository = categoryFilterRepository;
97
+ }
98
+ async create(params) {
99
+ const { metadata, ...data } = params;
100
+ return super.create({
101
+ ...data,
102
+ isWishlist: true,
103
+ isCollection: true,
104
+ brandCategory: false,
105
+ metadata: metadata || { description: data.description, title: data.name },
106
+ });
107
+ }
108
+ async get(identifiers) {
109
+ const data = await super.get(identifiers);
110
+ if (!data.isWishlist)
111
+ throw new NotFoundError(`Category with id ${identifiers.id} is not a wishlist`);
112
+ return data;
113
+ }
114
+ async update(params) {
115
+ const { products, id: checkId, metadata, filters, ...data } = params;
116
+ const plainData = this.paramsToPlain({ id: checkId });
117
+ const id = plainData.id;
118
+ const category = await super.update({ id, ...data, isWishlist: true, isCollection: true, brandCategory: false });
119
+ category.products = products && (await this.updateProducts(+id, { products }));
120
+ category.metadata = metadata && (await this.updateMetadata(+id, { metadata }));
121
+ return category;
122
+ }
123
+ async getWishlistBySlug(slug) {
124
+ if (!slug)
125
+ return;
126
+ const { data } = await this.find({
127
+ filters: {
128
+ slug,
129
+ isWishlist: { operator: Where.EQUALS, value: true },
130
+ },
131
+ options: {
132
+ enableCount: false,
133
+ },
134
+ });
135
+ if (!data.length)
136
+ throw new NotFoundError(`Wishlist with slug ${slug} not found`);
137
+ if (data.length > 1)
138
+ throw new DuplicatedResultsError('Query returned duplicated values');
139
+ return data.shift();
140
+ }
141
+ async getWishlistByPerson(personId) {
142
+ if (!personId)
143
+ return;
144
+ const { data } = await this.find({
145
+ filters: {
146
+ personId: { operator: Where.EQUALS, value: personId },
147
+ isWishlist: { operator: Where.EQUALS, value: true },
148
+ },
149
+ options: {
150
+ enableCount: false,
151
+ },
152
+ });
153
+ if (!data.length)
154
+ throw new NotFoundError(`Wishlists from person ${personId} not found`);
155
+ return data;
156
+ }
157
+ async updateProducts(categoryId, { products }) {
158
+ if ('action' in products && products.action === 'remove') {
159
+ await this.mutation('delete_category_product', ['affected_rows'], {
160
+ where: {
161
+ type: 'category_product_bool_exp',
162
+ required: true,
163
+ value: { category_id: { _eq: categoryId } },
164
+ },
165
+ });
166
+ await this.categoryFilterRepository.deleteByCategory(categoryId);
167
+ return [];
168
+ }
169
+ const plainData = this.paramsToPlain({ products });
170
+ if (!plainData.products || plainData.products.length <= 0)
171
+ return [];
172
+ await this.mutation('delete_category_product', ['affected_rows'], {
173
+ where: {
174
+ type: 'category_product_bool_exp',
175
+ required: true,
176
+ value: { category_id: { _eq: categoryId } },
177
+ },
178
+ });
179
+ await this.categoryFilterRepository.deleteByCategory(categoryId);
180
+ await this.mutation('insert_category_product', ['affected_rows'], {
181
+ objects: {
182
+ type: '[category_product_insert_input!]',
183
+ required: true,
184
+ value: plainData.products.map((productId) => ({ category_id: categoryId, product_id: productId })),
185
+ },
186
+ });
187
+ return plainData.products;
188
+ }
189
+ async updateMetadata(categoryId, { metadata }) {
190
+ const plainData = this.paramsToPlain({ metadata });
191
+ if (!plainData.metadata)
192
+ return;
193
+ await this.mutation('update_category_metadata_by_pk', ['category_id'], {
194
+ pk_columns: {
195
+ value: { category_id: categoryId },
196
+ type: 'category_metadata_pk_columns_input',
197
+ required: true,
198
+ },
199
+ _set: {
200
+ value: omit(metadata, ['category_id']),
201
+ type: 'category_metadata_set_input',
202
+ required: true,
203
+ },
204
+ });
205
+ return plainData.metadata;
206
+ }
207
+ getCategoryBySlug(slug, _shop) {
208
+ return this.getWishlistBySlug(slug);
209
+ }
210
+ async getCategoryByShop(shop) {
211
+ if (!shop)
212
+ return;
213
+ const { data } = await this.find({
214
+ filters: {
215
+ shops: { operator: Where.IN, value: [shop] },
216
+ published: { operator: Where.EQUALS, value: true },
217
+ isWishlist: { operator: Where.EQUALS, value: true },
218
+ },
219
+ options: {
220
+ enableCount: false,
221
+ },
222
+ });
223
+ return data;
224
+ }
225
+ getCategoriesForHome(categoryIds, limit, gender) {
226
+ return;
227
+ }
228
+ mountCategory(category, options) {
229
+ return;
230
+ }
231
+ getChildren(parentId) {
232
+ return;
233
+ }
234
+ isChild(id, parentId) {
235
+ return;
236
+ }
237
+ }
238
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lzaGxpc3QtaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL3JlcG9zaXRvcmllcy9jYXRhbG9nL3dpc2hsaXN0LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQVNMLEtBQUssRUFDTCxRQUFRLEdBRVQsTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDMUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDckQsT0FBTyxFQUEyQixxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUloRyxNQUFNLE9BQU8sK0JBQ1gsU0FBUSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBVyxJQUFJLENBQUMsQ0FBQztJQUdoRSxZQUNFLEVBQ0UsUUFBUSxFQUNSLFdBQVcsRUFDWCxZQUFZLEdBQ3lFLEVBQ3RFLHdCQUErRDtRQUVoRixLQUFLLENBQUM7WUFDSixTQUFTLEVBQUUsVUFBVTtZQUNyQixLQUFLLEVBQUUsUUFBUTtZQUNmLFFBQVE7WUFDUixXQUFXO1lBQ1gsWUFBWTtZQUNaLE1BQU0sRUFBRTtnQkFDTixFQUFFLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFO2dCQUM5RixFQUFFLFdBQVcs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LEVBQUUsS0FBYyxFQUFFLE1BQWU7UUFDekUsT0FBTTtJQUNSLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBa0IsRUFBRSxPQUFnRDtRQUNoRixPQUFNO0lBQ1IsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixPQUFNO0lBQ1IsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVLEVBQUUsUUFBZ0I7UUFDbEMsT0FBTTtJQUNSLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENhdGVnb3J5LFxuICBDYXRlZ29yeU1ldGFkYXRhLFxuICBDcmVhdGVSZXBvc2l0b3J5UGFyYW1zLFxuICBHZXRSZXBvc2l0b3J5UGFyYW1zLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0TWV0YWRhdGEsXG4gIFNob3BzLFxuICBVcGRhdGVSZXBvc2l0b3J5UGFyYW1zLFxuICBXaGVyZSxcbiAgV2lzaGxpc3QsXG4gIFdpc2hsaXN0UmVwb3NpdG9yeSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRHVwbGljYXRlZFJlc3VsdHNFcnJvciwgTm90Rm91bmRFcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IEJhc2UsIG9taXQgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMnXG5pbXBvcnQgeyBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENydWRIYXN1cmFHcmFwaFFMLCB3aXRoSGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21peGlucydcbmltcG9ydCB7IENhdGVnb3J5SGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21vZGVscydcbmltcG9ydCB7IENhdGVnb3J5RmlsdGVySGFzdXJhR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuL2NhdGVnb3J5LWZpbHRlci1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5J1xuXG5leHBvcnQgY2xhc3MgV2lzaGxpc3RIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkSGFzdXJhR3JhcGhRTCh3aXRoSGFzdXJhR3JhcGhRTDxXaXNobGlzdD4oQmFzZSkpXG4gIGltcGxlbWVudHMgV2lzaGxpc3RSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKFxuICAgIHtcbiAgICAgIGVuZHBvaW50LFxuICAgICAgYXV0aE9wdGlvbnMsXG4gICAgICBpbnRlcmNlcHRvcnMsXG4gICAgfTogUGljazxIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxXaXNobGlzdD4sICdlbmRwb2ludCcgfCAnYXV0aE9wdGlvbnMnIHwgJ2ludGVyY2VwdG9ycyc+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5OiBDYXRlZ29yeUZpbHRlckhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5LFxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICB0YWJsZU5hbWU6ICdjYXRlZ29yeScsXG4gICAgICBtb2RlbDogV2lzaGxpc3QsXG4gICAgICBlbmRwb2ludCxcbiAgICAgIGF1dGhPcHRpb25zLFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgICAgZmllbGRzOiBbXG4gICAgICAgIHsgaWQ6IHsgY29sdW1uTmFtZTogJ2lkJywgdG86ICh2YWx1ZTogc3RyaW5nKSA9PiArdmFsdWUsIGZyb206ICh2YWx1ZSkgPT4gdmFsdWUudG9TdHJpbmcoKSB9IH0sXG4gICAgICAgIHsgZmlyZXN0b3JlSWQ6IHsgY29sdW1uTmFtZTogJ2ZpcmVzdG9yZV9pZCcgfSB9LFxuICAgICAgICAnbmFtZScsXG4gICAgICAgICdkZXNjcmlwdGlvbicsXG4gICAgICAgICdpbWFnZScsXG4gICAgICAgICdwdWJsaXNoZWQnLFxuICAgICAgICAnc2hvcCcsXG4gICAgICAgIHsgc2hvcHM6IHsgY29sdW1uTmFtZTogJ3Nob3BzJywgdHlwZTogSGFzdXJhR3JhcGhRTENvbHVtblR5cGUuSnNvbmIgfSB9LFxuICAgICAgICAnc2x1ZycsXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeTogeyBjb2x1bW5OYW1lOiAnYnJhbmRfY2F0ZWdvcnknIH0gfSxcbiAgICAgICAgeyBicmFuZENhdGVnb3J5QmFubmVyOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9iYW5uZXInIH0gfSxcbiAgICAgICAgeyBicmFuZENhdGVnb3J5QmFubmVyTW9iaWxlOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9iYW5uZXJfbW9iaWxlJyB9IH0sXG4gICAgICAgIHsgYnJhbmRMb2dvOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9sb2dvJyB9IH0sXG4gICAgICAgIHsgYnJhbmRDb25kaXRpb246IHsgY29sdW1uTmFtZTogJ2JyYW5kX2NvbmRpdGlvbicgfSB9LFxuICAgICAgICB7XG4gICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgY29sdW1uTmFtZTogJ3RhZ19jb25kaXRpb24nLFxuICAgICAgICAgICAgdHlwZTogSGFzdXJhR3JhcGhRTENvbHVtblR5cGUuSnNvbmIsXG4gICAgICAgICAgICBmcm9tOiAodGFnczogdW5rbm93biwgcm93KSA9PiAoeyBicmFuZDogcm93LmJyYW5kX2NvbmRpdGlvbiwgdGFnczogQXJyYXkuaXNBcnJheSh0YWdzKSA/IHRhZ3MgOiBbXSB9KSxcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHZhbHVlOiBDYXRlZ29yeUhhc3VyYUdyYXBoUUxbJ2NvbmRpdGlvbnMnXSkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGJyYW5kX2NvbmRpdGlvbjogdmFsdWUuYnJhbmQsXG4gICAgICAgICAgICAgICAgdGFnX2NvbmRpdGlvbjogdmFsdWU/LnRhZ3MgfHwgW10sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBiaW5kRmluZEZpbHRlcjogKHNlbnRlbmNlOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi4oc2VudGVuY2UuYnJhbmQgPyB7IGJyYW5kX2NvbmRpdGlvbjogc2VudGVuY2UuYnJhbmQgfSA6IHt9KSxcbiAgICAgICAgICAgICAgICAuLi4oc2VudGVuY2UudGFncyA/IHsgdGFnX2NvbmRpdGlvbjogc2VudGVuY2UudGFncyB9IDoge30pLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAnZmlsdGVycycsXG4gICAgICAgICAgICBmb3JlaWduS2V5Q29sdW1uOiB7IGZpbHRlcl9pZDogJ2lkJyB9LFxuICAgICAgICAgICAgZmllbGRzOiBbeyBmaWx0ZXI6IFsnaWQnLCAnZGVzY3JpcHRpb24nLCAnc2x1ZycsICdlbmFibGVkJ10gfV0sXG4gICAgICAgICAgICBiaW5kUGVyc2lzdERhdGE6ICh2YWx1ZTogQ2F0ZWdvcnlIYXN1cmFHcmFwaFFMWydmaWx0ZXJzJ10pID0+ICh7XG4gICAgICAgICAgICAgIGZpbHRlcnM6IHsgZGF0YTogdmFsdWUubWFwKChmaWx0ZXIpID0+ICh7IGZpbHRlcl9pZDogZmlsdGVyLmlkIH0pKSB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBmcm9tOiAoZmlsdGVyczogeyBmaWx0ZXI6IHsgaWQ6IG51bWJlcjsgZGVzY3JpcHRpb246IHN0cmluZzsgc2x1Zzogc3RyaW5nOyBlbmFibGVkOiBib29sZWFuIH0gfVtdKSA9PlxuICAgICAgICAgICAgICBmaWx0ZXJzPy5tYXAoKGZpbHRlcikgPT4gZmlsdGVyPy5maWx0ZXIpIHx8IFtdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgY3JlYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICdjcmVhdGVkX2F0JyB9IH0sXG4gICAgICAgIHsgdXBkYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICd1cGRhdGVkX2F0JyB9IH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm9kdWN0czoge1xuICAgICAgICAgICAgY29sdW1uTmFtZTogJ3Byb2R1Y3RzJyxcbiAgICAgICAgICAgIGZpZWxkczogWydwcm9kdWN0X2lkJ10sXG4gICAgICAgICAgICBmcm9tOiAodmFsdWU6IHsgcHJvZHVjdF9pZDogbnVtYmVyIH1bXSkgPT4gdmFsdWUubWFwKChwcm9kdWN0KSA9PiBwcm9kdWN0LnByb2R1Y3RfaWQudG9TdHJpbmcoKSksXG4gICAgICAgICAgICB0bzogKHByb2R1Y3RJZHM6IHN0cmluZ1tdKSA9PlxuICAgICAgICAgICAgICBwcm9kdWN0SWRzLm1hcCgocHJvZHVjdElkKSA9PiAoe1xuICAgICAgICAgICAgICAgIHByb2R1Y3RfaWQ6ICtwcm9kdWN0SWQsXG4gICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAgIGNvbHVtbk5hbWU6ICdtZXRhZGF0YScsXG4gICAgICAgICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nXSxcbiAgICAgICAgICAgIGJpbmRQZXJzaXN0RGF0YTogKHZhbHVlOiBQcm9kdWN0TWV0YWRhdGEpID0+ICh7XG4gICAgICAgICAgICAgIG1ldGFkYXRhOiB7IGRhdGE6IHZhbHVlIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICB7IGlzQ29sbGVjdGlvbjogeyBjb2x1bW5OYW1lOiAnaXNfY29sbGVjdGlvbicgfSB9LFxuICAgICAgICB7IGlzV2lzaGxpc3Q6IHsgY29sdW1uTmFtZTogJ2lzX3dpc2hsaXN0JyB9IH0sXG4gICAgICAgICdyZWZlcmVuY2UnLFxuICAgICAgICB7IHBhcmVudElkOiB7IGNvbHVtbk5hbWU6ICdwYXJlbnRfaWQnIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhcmVudDoge1xuICAgICAgICAgICAgY29sdW1uTmFtZTogJ3BhcmVudCcsXG4gICAgICAgICAgICBmb3JlaWduS2V5Q29sdW1uOiB7IGlkOiAncGFyZW50SWQnIH0sXG4gICAgICAgICAgICBmaWVsZHM6IFsnaWQnLCAnbmFtZScsICdyZWZlcmVuY2UnLCAnc2x1ZyddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgcGVyc29uSWQ6IHsgY29sdW1uTmFtZTogJ3BlcnNvbl9pZCcgfSB9LFxuICAgICAgICB7IHBlcnNvbk5hbWU6IHsgY29sdW1uTmFtZTogJ3BlcnNvbl9uYW1lJyB9IH0sXG4gICAgICAgIHsgcGVyc29uUGhvdG86IHsgY29sdW1uTmFtZTogJ3BlcnNvbl9waG90bycgfSB9LFxuICAgICAgXSxcbiAgICB9KVxuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgY3JlYXRlKHBhcmFtczogQ3JlYXRlUmVwb3NpdG9yeVBhcmFtczxXaXNobGlzdD4pOiBQcm9taXNlPFdpc2hsaXN0PiB7XG4gICAgY29uc3QgeyBtZXRhZGF0YSwgLi4uZGF0YSB9ID0gcGFyYW1zXG5cbiAgICByZXR1cm4gc3VwZXIuY3JlYXRlKHtcbiAgICAgIC4uLmRhdGEsXG4gICAgICBpc1dpc2hsaXN0OiB0cnVlLFxuICAgICAgaXNDb2xsZWN0aW9uOiB0cnVlLFxuICAgICAgYnJhbmRDYXRlZ29yeTogZmFsc2UsXG4gICAgICBtZXRhZGF0YTogbWV0YWRhdGEgfHwgeyBkZXNjcmlwdGlvbjogZGF0YS5kZXNjcmlwdGlvbiwgdGl0bGU6IGRhdGEubmFtZSB9LFxuICAgIH0pXG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBnZXQoaWRlbnRpZmllcnM6IEdldFJlcG9zaXRvcnlQYXJhbXM8V2lzaGxpc3Q+KTogUHJvbWlzZTxXaXNobGlzdD4ge1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBzdXBlci5nZXQoaWRlbnRpZmllcnMpXG5cbiAgICBpZiAoIWRhdGEuaXNXaXNobGlzdCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYENhdGVnb3J5IHdpdGggaWQgJHtpZGVudGlmaWVycy5pZH0gaXMgbm90IGEgd2lzaGxpc3RgKVxuXG4gICAgcmV0dXJuIGRhdGFcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIHVwZGF0ZShwYXJhbXM6IFVwZGF0ZVJlcG9zaXRvcnlQYXJhbXM8V2lzaGxpc3Q+KTogUHJvbWlzZTxXaXNobGlzdD4ge1xuICAgIGNvbnN0IHsgcHJvZHVjdHMsIGlkOiBjaGVja0lkLCBtZXRhZGF0YSwgZmlsdGVycywgLi4uZGF0YSB9ID0gcGFyYW1zXG4gICAgY29uc3QgcGxhaW5EYXRhID0gdGhpcy5wYXJhbXNUb1BsYWluKHsgaWQ6IGNoZWNrSWQgfSlcbiAgICBjb25zdCBpZCA9IHBsYWluRGF0YS5pZFxuICAgIGNvbnN0IGNhdGVnb3J5ID0gYXdhaXQgc3VwZXIudXBkYXRlKHsgaWQsIC4uLmRhdGEsIGlzV2lzaGxpc3Q6IHRydWUsIGlzQ29sbGVjdGlvbjogdHJ1ZSwgYnJhbmRDYXRlZ29yeTogZmFsc2UgfSlcblxuICAgIGNhdGVnb3J5LnByb2R1Y3RzID0gcHJvZHVjdHMgJiYgKGF3YWl0IHRoaXMudXBkYXRlUHJvZHVjdHMoK2lkLCB7IHByb2R1Y3RzIH0pKVxuICAgIGNhdGVnb3J5Lm1ldGFkYXRhID0gbWV0YWRhdGEgJiYgKGF3YWl0IHRoaXMudXBkYXRlTWV0YWRhdGEoK2lkLCB7IG1ldGFkYXRhIH0pKVxuXG4gICAgcmV0dXJuIGNhdGVnb3J5XG4gIH1cblxuICBhc3luYyBnZXRXaXNobGlzdEJ5U2x1ZyhzbHVnOiBzdHJpbmcpOiBQcm9taXNlPFdpc2hsaXN0PiB7XG4gICAgaWYgKCFzbHVnKSByZXR1cm5cblxuICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgdGhpcy5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgc2x1ZyxcbiAgICAgICAgaXNXaXNobGlzdDogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogdHJ1ZSB9LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZW5hYmxlQ291bnQ6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgaWYgKCFkYXRhLmxlbmd0aCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYFdpc2hsaXN0IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXG4gICAgaWYgKGRhdGEubGVuZ3RoID4gMSkgdGhyb3cgbmV3IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IoJ1F1ZXJ5IHJldHVybmVkIGR1cGxpY2F0ZWQgdmFsdWVzJylcblxuICAgIHJldHVybiBkYXRhLnNoaWZ0KClcbiAgfVxuXG4gIGFzeW5jIGdldFdpc2hsaXN0QnlQZXJzb24ocGVyc29uSWQ6IHN0cmluZyk6IFByb21pc2U8V2lzaGxpc3RbXT4ge1xuICAgIGlmICghcGVyc29uSWQpIHJldHVyblxuXG4gICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmZpbmQoe1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBwZXJzb25JZDogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogcGVyc29uSWQgfSxcbiAgICAgICAgaXNXaXNobGlzdDogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogdHJ1ZSB9LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZW5hYmxlQ291bnQ6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgaWYgKCFkYXRhLmxlbmd0aCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYFdpc2hsaXN0cyBmcm9tIHBlcnNvbiAke3BlcnNvbklkfSBub3QgZm91bmRgKVxuXG4gICAgcmV0dXJuIGRhdGFcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlUHJvZHVjdHMoXG4gICAgY2F0ZWdvcnlJZDogbnVtYmVyLFxuICAgIHsgcHJvZHVjdHMgfTogUGljazxVcGRhdGVSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4sICdwcm9kdWN0cyc+LFxuICApOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTFsncHJvZHVjdHMnXT4ge1xuICAgIGlmICgnYWN0aW9uJyBpbiBwcm9kdWN0cyAmJiBwcm9kdWN0cy5hY3Rpb24gPT09ICdyZW1vdmUnKSB7XG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKCdkZWxldGVfY2F0ZWdvcnlfcHJvZHVjdCcsIFsnYWZmZWN0ZWRfcm93cyddLCB7XG4gICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgdHlwZTogJ2NhdGVnb3J5X3Byb2R1Y3RfYm9vbF9leHAnLFxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgIHZhbHVlOiB7IGNhdGVnb3J5X2lkOiB7IF9lcTogY2F0ZWdvcnlJZCB9IH0sXG4gICAgICAgIH0sXG4gICAgICB9KVxuXG4gICAgICBhd2FpdCB0aGlzLmNhdGVnb3J5RmlsdGVyUmVwb3NpdG9yeS5kZWxldGVCeUNhdGVnb3J5KGNhdGVnb3J5SWQpXG5cbiAgICAgIHJldHVybiBbXVxuICAgIH1cblxuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IHByb2R1Y3RzIH0pXG5cbiAgICBpZiAoIXBsYWluRGF0YS5wcm9kdWN0cyB8fCBwbGFpbkRhdGEucHJvZHVjdHMubGVuZ3RoIDw9IDApIHJldHVybiBbXVxuXG4gICAgYXdhaXQgdGhpcy5tdXRhdGlvbignZGVsZXRlX2NhdGVnb3J5X3Byb2R1Y3QnLCBbJ2FmZmVjdGVkX3Jvd3MnXSwge1xuICAgICAgd2hlcmU6IHtcbiAgICAgICAgdHlwZTogJ2NhdGVnb3J5X3Byb2R1Y3RfYm9vbF9leHAnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IHsgX2VxOiBjYXRlZ29yeUlkIH0gfSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIGF3YWl0IHRoaXMuY2F0ZWdvcnlGaWx0ZXJSZXBvc2l0b3J5LmRlbGV0ZUJ5Q2F0ZWdvcnkoY2F0ZWdvcnlJZClcblxuICAgIGF3YWl0IHRoaXMubXV0YXRpb24oJ2luc2VydF9jYXRlZ29yeV9wcm9kdWN0JywgWydhZmZlY3RlZF9yb3dzJ10sIHtcbiAgICAgIG9iamVjdHM6IHtcbiAgICAgICAgdHlwZTogJ1tjYXRlZ29yeV9wcm9kdWN0X2luc2VydF9pbnB1dCFdJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIHZhbHVlOiBwbGFpbkRhdGEucHJvZHVjdHMubWFwKChwcm9kdWN0SWQpID0+ICh7IGNhdGVnb3J5X2lkOiBjYXRlZ29yeUlkLCBwcm9kdWN0X2lkOiBwcm9kdWN0SWQgfSkpLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHBsYWluRGF0YS5wcm9kdWN0c1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVNZXRhZGF0YShcbiAgICBjYXRlZ29yeUlkOiBudW1iZXIsXG4gICAgeyBtZXRhZGF0YSB9OiBQaWNrPFVwZGF0ZVJlcG9zaXRvcnlQYXJhbXM8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPiwgJ21ldGFkYXRhJz4sXG4gICk6IFByb21pc2U8Q2F0ZWdvcnlNZXRhZGF0YT4ge1xuICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbih7IG1ldGFkYXRhIH0pXG5cbiAgICBpZiAoIXBsYWluRGF0YS5tZXRhZGF0YSkgcmV0dXJuXG5cbiAgICBhd2FpdCB0aGlzLm11dGF0aW9uKCd1cGRhdGVfY2F0ZWdvcnlfbWV0YWRhdGFfYnlfcGsnLCBbJ2NhdGVnb3J5X2lkJ10sIHtcbiAgICAgIHBrX2NvbHVtbnM6IHtcbiAgICAgICAgdmFsdWU6IHsgY2F0ZWdvcnlfaWQ6IGNhdGVnb3J5SWQgfSxcbiAgICAgICAgdHlwZTogJ2NhdGVnb3J5X21ldGFkYXRhX3BrX2NvbHVtbnNfaW5wdXQnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBfc2V0OiB7XG4gICAgICAgIHZhbHVlOiBvbWl0KG1ldGFkYXRhLCBbJ2NhdGVnb3J5X2lkJ10pLFxuICAgICAgICB0eXBlOiAnY2F0ZWdvcnlfbWV0YWRhdGFfc2V0X2lucHV0JyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICByZXR1cm4gcGxhaW5EYXRhLm1ldGFkYXRhXG4gIH1cblxuICBnZXRDYXRlZ29yeUJ5U2x1ZyhzbHVnOiBzdHJpbmcsIF9zaG9wOiBTaG9wcyk6IFByb21pc2U8V2lzaGxpc3Q+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRXaXNobGlzdEJ5U2x1ZyhzbHVnKVxuICB9XG5cbiAgYXN5bmMgZ2V0Q2F0ZWdvcnlCeVNob3Aoc2hvcDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICBpZiAoIXNob3ApIHJldHVyblxuXG4gICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmZpbmQoe1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBzaG9wczogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBbc2hvcF0gfSxcbiAgICAgICAgcHVibGlzaGVkOiB7IG9wZXJhdG9yOiBXaGVyZS5FUVVBTFMsIHZhbHVlOiB0cnVlIH0sXG4gICAgICAgIGlzV2lzaGxpc3Q6IHsgb3BlcmF0b3I6IFdoZXJlLkVRVUFMUywgdmFsdWU6IHRydWUgfSxcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGVuYWJsZUNvdW50OiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIHJldHVybiBkYXRhXG4gIH1cblxuICBnZXRDYXRlZ29yaWVzRm9ySG9tZShjYXRlZ29yeUlkczogc3RyaW5nW10sIGxpbWl0PzogbnVtYmVyLCBnZW5kZXI/OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVyblxuICB9XG5cbiAgbW91bnRDYXRlZ29yeShjYXRlZ29yeTogQ2F0ZWdvcnksIG9wdGlvbnM/OiB7IGxpbWl0PzogbnVtYmVyOyBoYXNTdG9jaz86IGJvb2xlYW4gfSk6IFByb21pc2U8UHJvZHVjdFtdPiB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBnZXRDaGlsZHJlbihwYXJlbnRJZDogbnVtYmVyKTogUHJvbWlzZTxDYXRlZ29yeVtdPiB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpc0NoaWxkKGlkOiBudW1iZXIsIHBhcmVudElkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm5cbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './catalog';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxXQUFXLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhdGFsb2cnXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9maWVsZHMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmVzdGVkRmllbGQgfSBmcm9tICcuL25lc3RlZC1maWVsZC50eXBlJ1xuXG5leHBvcnQgdHlwZSBGaWVsZHMgPSBBcnJheTxzdHJpbmcgfCBvYmplY3QgfCBOZXN0ZWRGaWVsZCB8ICdhZ2dyZWdhdGUnIHwgJ25vZGVzJz5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC5yZXBvc2l0b3J5LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9ncmFwaHFsLnJlcG9zaXRvcnkudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU9wZXJhdGlvbiB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyL2J1aWxkL0lRdWVyeUJ1aWxkZXJPcHRpb25zJ1xuaW1wb3J0IHsgQmFzZU1vZGVsQnVpbGRlciwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRGVidWdIZWxwZXIgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyB9IGZyb20gJy4vaGFzdXJhLWdyYXBocWwtYXV0aC1vcHRpb25zLnR5cGUnXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi9oYXN1cmEtZ3JhcGhxbC1maWVsZHMudHlwZSdcbmltcG9ydCB7IFZhcmlhYmxlT3B0aW9ucyB9IGZyb20gJy4vdmFyaWFibGUtb3B0aW9ucy50eXBlJ1xuXG5leHBvcnQgdHlwZSBHcmFwaFFMUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsPj4gPSB7XG4gIG9wZXJhdGlvbjogc3RyaW5nIHwgSU9wZXJhdGlvblxuICBmaWVsZHM/OiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnNcbn1cblxuZXhwb3J0IHR5cGUgR3JhcGhRTFJlcG9zaXRvcnk8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TW9kZWw+PiA9IHtcbiAgdGFibGVOYW1lOiBzdHJpbmdcbiAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TW9kZWw+XG4gIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNb2RlbD5cbiAgZW5kcG9pbnQ6IHN0cmluZ1xuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXG4gIGxvZ2dlcjogRGVidWdIZWxwZXJcbiAgbXV0YXRpb246IDxSZXR1cm5GaWVsZHMgPSBhbnk+KFxuICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgSU9wZXJhdGlvbixcbiAgICBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+LFxuICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9ucyxcbiAgKSA9PiBQcm9taXNlPFJldHVybkZpZWxkcz5cbiAgcXVlcnk6IDxSZXR1cm5GaWVsZHMgPSBhbnk+KFxuICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgSU9wZXJhdGlvbiB8IEdyYXBoUUxQYXJhbXM8TW9kZWw+W10sXG4gICAgZmllbGRzPzogc3RyaW5nW10gfCBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxSZXR1cm5GaWVsZHM+XG4gIGdldEF0dHJpYnV0ZUdyYXBoUUxUeXBlT2Y6IDxGaWVsZFZhbHVlPih2YWx1ZTogRmllbGRWYWx1ZSkgPT4gc3RyaW5nXG4gIGNvbnZlcnREYXRhRnJvbUhhc3VyYShkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+LCBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+KTogTW9kZWxcbiAgY29udmVydERhdGFUb0hhc3VyYShpbnN0YW5jZTogTW9kZWwsIHVwZGF0ZT86IGJvb2xlYW4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtYXV0aC1vcHRpb25zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9oYXN1cmEtZ3JhcGhxbC1hdXRoLW9wdGlvbnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zID0ge1xuICBhZG1pblNlY3JldD86IHN0cmluZ1xuICBhdXRoUm9sZT86IHtcbiAgICByb2xlOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICB9XG4gIGF1dGhUb2tlbj86IHN0cmluZ1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtZmllbGRzLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9oYXN1cmEtZ3JhcGhxbC1maWVsZHMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOZXN0ZWRSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucyxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsZCxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgUHJvcFR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5cbmV4cG9ydCB0eXBlIENvbHVtbk9wdGlvbnM8RmllbGRUeXBlLCBNb2RlbCwgVmFsdWVGcm9tID0gYW55PiA9IHtcbiAgdHlwZT86IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlXG4gIGNvbHVtbk5hbWU/OiBzdHJpbmdcbiAgZmlsdGVycz86IHtcbiAgICBmaWx0ZXJUeXBlOiBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZSB8IHN0cmluZ1xuICAgIGZpbHRlcnM6IE5lc3RlZFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPEZpZWxkVHlwZT5cbiAgfVxuICBmaWVsZHM/OiBIYXN1cmFHcmFwaFFMRmllbGRzPEZpZWxkVHlwZT5cbiAgZm9yZWlnbktleUNvbHVtbj86XG4gICAgfCBQYXJ0aWFsPFxuICAgICAgICBSZWNvcmQ8XG4gICAgICAgICAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxGaWVsZFR5cGUgZXh0ZW5kcyBhbnlbXSA/IEZpZWxkVHlwZVtudW1iZXJdIDogRmllbGRUeXBlPixcbiAgICAgICAgICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPiB8IChzdHJpbmcgJiB7fSlcbiAgICAgICAgPlxuICAgICAgPlxuICAgIHwge31cbiAgZnJvbT86ICh2YWx1ZTogVmFsdWVGcm9tIHwgVmFsdWVGcm9tW10sIGRhdGE/OiBhbnkpID0+IEZpZWxkVHlwZVxuICB0bz86ICh2YWx1ZTogRmllbGRUeXBlLCBpbnN0YW5jZT86IE1vZGVsKSA9PiBWYWx1ZUZyb21cbiAgYmluZEZpbmRGaWx0ZXI/OiAoXG4gICAgc2VudGVuY2U6IFJlcG9zaXRvcnlGaW5kRmllbGQ8TW9kZWwsIGtleW9mIE1vZGVsPixcbiAgKSA9PiBSZWNvcmQ8c3RyaW5nLCBSZXBvc2l0b3J5RmluZEZpZWxkPGFueSwgYW55PiB8IFZhbHVlRnJvbT4gfCBSZXBvc2l0b3J5RmluZEZpZWxkPGFueSwgYW55PiB8IFZhbHVlRnJvbVxuICBiaW5kUGVyc2lzdERhdGE/OiAodmFsdWU6IEZpZWxkVHlwZSwgaW5zdGFuY2U/OiBNb2RlbCkgPT4gUmVjb3JkPHN0cmluZywgVmFsdWVGcm9tPlxufVxuZXhwb3J0IHR5cGUgQWdncmVnYXRlT3B0aW9uTmFtZXMgPVxuICB8ICdhdmcnXG4gIHwgJ2NvdW50J1xuICB8ICdtYXgnXG4gIHwgJ21pbidcbiAgfCAnc3RkZGV2J1xuICB8ICdzdGRkZXZfcG9wJ1xuICB8ICdzdGRkZXZfc2FtcCdcbiAgfCAnc3VtJ1xuICB8ICd2YXJfcG9wJ1xuICB8ICd2YXJfc2FtcCdcbiAgfCAndmFyaWFuY2UnXG5leHBvcnQgdHlwZSBBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIFR5cGUsIFByb3BlcnRpZXMgZXh0ZW5kcyBrZXlvZiBNb2RlbCA9IGtleW9mIE1vZGVsPiA9XG4gIHwge1xuICAgICAgW0sgaW4gUHJvcGVydGllc106IFByb3BUeXBlPE1vZGVsLCBLPiBleHRlbmRzIFR5cGUgPyBLIDogbmV2ZXJcbiAgICB9W1Byb3BlcnRpZXNdXG4gIHwgc3RyaW5nXG5leHBvcnQgdHlwZSBBZ2dyZWdhdGVPcHRpb25zPE1vZGVsPiA9IHtcbiAgYXZnPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICBtYXg/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlciB8IERhdGU+PlxuICBtaW4/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlciB8IERhdGU+PlxuICBzdGRkZXY/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHN0ZGRldl9wb3A/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHN0ZGRldl9zYW1wPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICBzdW0/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHZhcl9wb3A/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHZhcl9zYW1wPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICB2YXJpYW5jZT86IEFycmF5PEFnZ3JlZ2F0ZU9wdGlvbkZpZWxkczxNb2RlbCwgbnVtYmVyPj5cbn1cblxudHlwZSBNb2RlbEJhc2VIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPiA9IE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlXG4gID9cbiAgICAgIHwgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5cbiAgICAgIHwge1xuICAgICAgICAgIFtrZXkgaW4gTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5dPzogUHJvcFR5cGU8TW9kZWwsIGtleT4gZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmVcbiAgICAgICAgICAgID8gSGFzdXJhR3JhcGhRTEZpZWxkczxQcm9wVHlwZTxNb2RlbCwga2V5Pj5cbiAgICAgICAgICAgIDogUHJvcFR5cGU8TW9kZWwsIGtleT4gZXh0ZW5kcyBhbnlbXVxuICAgICAgICAgICAgPyBQcm9wVHlwZTxNb2RlbCwga2V5PltdIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlW11cbiAgICAgICAgICAgICAgPyBIYXN1cmFHcmFwaFFMRmllbGRzPFByb3BUeXBlPE1vZGVsLCBrZXk+W10+XG4gICAgICAgICAgICAgIDogbmV2ZXJcbiAgICAgICAgICAgIDogbmV2ZXJcbiAgICAgICAgfVxuICAgICAgfCB7XG4gICAgICAgICAgW2tleSBpbiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0/OiBrZXkgZXh0ZW5kcyAnYWdncmVnYXRlJ1xuICAgICAgICAgICAgPyBuZXZlclxuICAgICAgICAgICAgOiBQcm9wVHlwZTxNb2RlbCwga2V5PiBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZVxuICAgICAgICAgICAgPyBDb2x1bW5PcHRpb25zPFByb3BUeXBlPE1vZGVsLCBrZXk+LCBNb2RlbD5cbiAgICAgICAgICAgIDogQ29sdW1uT3B0aW9uczxQcm9wVHlwZTxNb2RlbCwga2V5PiwgTW9kZWw+XG4gICAgICAgIH1cbiAgICAgIHwgUmVjb3JkPHN0cmluZywgQ29sdW1uT3B0aW9uczxQcm9wVHlwZTxNb2RlbCwgYW55PiwgTW9kZWw+PlxuICA6IHN0cmluZ1xuXG5leHBvcnQgdHlwZSBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPiA9IChcbiAgfCBNb2RlbEJhc2VIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICB8IHsgYWdncmVnYXRlOiBBcnJheTxBZ2dyZWdhdGVPcHRpb25zPE1vZGVsPiB8ICdjb3VudCc+IH1cbiAgfCB7IHJldHVybmluZzogTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5bXSB9XG4gIHwgJ2FmZmVjdGVkX3Jvd3MnXG4pW11cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtaGVhZGVycy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvdHlwZXMvaGFzdXJhLWdyYXBocWwtaGVhZGVycy50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIYXN1cmFHcmFwaFFMSGVhZGVycyA9IHtcbiAgQXV0aG9yaXphdGlvbj86IHN0cmluZ1xuICAnQ29udGVudC1UeXBlJzogc3RyaW5nXG4gICdYLUhhc3VyYS1BZG1pbi1TZWNyZXQnPzogc3RyaW5nXG4gICdYLUhhc3VyYS1Sb2xlJz86IHN0cmluZ1xuICAnWC1IYXN1cmEtVXNlci1JZCc/OiBzdHJpbmdcbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ export * from './fields.type';
2
+ export * from './graphql.repository.type';
3
+ export * from './nested-field.type';
4
+ export * from './query-builder-options.type';
5
+ export * from './variable-options.type';
6
+ export * from './hasura-graphql-auth-options.type';
7
+ export * from './hasura-graphql-fields.type';
8
+ export * from './hasura-graphql-headers.type';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMscUJBQXFCLENBQUE7QUFDbkMsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHlCQUF5QixDQUFBO0FBQ3ZDLGNBQWMsb0NBQW9DLENBQUE7QUFDbEQsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLCtCQUErQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9maWVsZHMudHlwZSdcbmV4cG9ydCAqIGZyb20gJy4vZ3JhcGhxbC5yZXBvc2l0b3J5LnR5cGUnXG5leHBvcnQgKiBmcm9tICcuL25lc3RlZC1maWVsZC50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9xdWVyeS1idWlsZGVyLW9wdGlvbnMudHlwZSdcbmV4cG9ydCAqIGZyb20gJy4vdmFyaWFibGUtb3B0aW9ucy50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9oYXN1cmEtZ3JhcGhxbC1hdXRoLW9wdGlvbnMudHlwZSdcbmV4cG9ydCAqIGZyb20gJy4vaGFzdXJhLWdyYXBocWwtZmllbGRzLnR5cGUnXG5leHBvcnQgKiBmcm9tICcuL2hhc3VyYS1ncmFwaHFsLWhlYWRlcnMudHlwZSdcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWZpZWxkLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9uZXN0ZWQtZmllbGQudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRzIH0gZnJvbSAnLi9maWVsZHMudHlwZSdcbmltcG9ydCB7IFF1ZXJ5QnVpbGRlck9wdGlvbnMgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItb3B0aW9ucy50eXBlJ1xuXG5leHBvcnQgdHlwZSBOZXN0ZWRGaWVsZCA9IHtcbiAgb3BlcmF0aW9uOiBzdHJpbmdcbiAgdmFyaWFibGVzOiBRdWVyeUJ1aWxkZXJPcHRpb25zW11cbiAgZmllbGRzOiBGaWVsZHNcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci1vcHRpb25zLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9xdWVyeS1idWlsZGVyLW9wdGlvbnMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGRzIH0gZnJvbSAnLi9maWVsZHMudHlwZSdcbmltcG9ydCB7IFZhcmlhYmxlT3B0aW9ucyB9IGZyb20gJy4vdmFyaWFibGUtb3B0aW9ucy50eXBlJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXJ5QnVpbGRlck9wdGlvbnMge1xuICBvcGVyYXRpb246IHN0cmluZ1xuICBmaWVsZHM/OiBGaWVsZHNcbiAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zXG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGUtb3B0aW9ucy50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvdHlwZXMvdmFyaWFibGUtb3B0aW9ucy50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBWYXJpYWJsZU9wdGlvbnMgPVxuICB8IHtcbiAgICAgIHR5cGU/OiBzdHJpbmdcbiAgICAgIG5hbWU/OiBzdHJpbmdcbiAgICAgIHZhbHVlOiBhbnlcbiAgICAgIGxpc3Q/OiBib29sZWFuXG4gICAgICByZXF1aXJlZD86IGJvb2xlYW5cbiAgICB9XG4gIHwge1xuICAgICAgW2s6IHN0cmluZ106IGFueVxuICAgIH1cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './elasticsearch';
2
+ export * from './firebase';
3
+ export * from './hasura-graphql';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMsWUFBWSxDQUFBO0FBQzFCLGNBQWMsa0JBQWtCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VsYXN0aWNzZWFyY2gnXG5leHBvcnQgKiBmcm9tICcuL2ZpcmViYXNlJ1xuZXhwb3J0ICogZnJvbSAnLi9oYXN1cmEtZ3JhcGhxbCdcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mcmFiNGEtY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhYjRhLWNvbm5lY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { DebugDecoratorHelper } from '../helpers';
2
+ export function Debug(opts) {
3
+ return function (target) {
4
+ DebugDecoratorHelper.set(target.prototype, opts);
5
+ };
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuY2xhc3MuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvdXRpbHMvZGVjb3JhdG9ycy9kZWJ1Zy5jbGFzcy5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFnQixNQUFNLFlBQVksQ0FBQTtBQUUvRCxNQUFNLFVBQVUsS0FBSyxDQUFDLElBQW1CO0lBQ3ZDLE9BQU8sVUFBcUIsTUFBVztRQUNyQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNsRCxDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVidWdEZWNvcmF0b3JIZWxwZXIsIERlYnVnT3B0aW9ucyB9IGZyb20gJy4uL2hlbHBlcnMnXG5cbmV4cG9ydCBmdW5jdGlvbiBEZWJ1ZyhvcHRzPzogRGVidWdPcHRpb25zKTogQ2xhc3NEZWNvcmF0b3Ige1xuICByZXR1cm4gZnVuY3Rpb24gPFRGdW5jdGlvbj4odGFyZ2V0OiBhbnkpOiBURnVuY3Rpb24gfCB2b2lkIHtcbiAgICBEZWJ1Z0RlY29yYXRvckhlbHBlci5zZXQodGFyZ2V0LnByb3RvdHlwZSwgb3B0cylcbiAgfVxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './debug.class.decorator';
2
+ export * from './trace.method.decorator';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy91dGlscy9kZWNvcmF0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYywwQkFBMEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVidWcuY2xhc3MuZGVjb3JhdG9yJ1xuZXhwb3J0ICogZnJvbSAnLi90cmFjZS5tZXRob2QuZGVjb3JhdG9yJ1xuIl19
@@ -0,0 +1,81 @@
1
+ import { get } from 'lodash';
2
+ import { DebugHelper } from '../helpers';
3
+ const ASYNC_IDENTIFIER = 'async';
4
+ export function Log(options = {}) {
5
+ return Trace({ level: 'log', ...options });
6
+ }
7
+ export function Trace(options = {}) {
8
+ return function (target, propertyKey, propertyDescriptor) {
9
+ const method = propertyDescriptor.value;
10
+ const isPromise = method.toString().includes(ASYNC_IDENTIFIER);
11
+ const args = {
12
+ options,
13
+ method,
14
+ target,
15
+ propertyKey,
16
+ propertyDescriptor,
17
+ };
18
+ propertyDescriptor.value = isPromise ? promiseTracer(args) : functionTracer(args);
19
+ return propertyDescriptor;
20
+ };
21
+ }
22
+ const traceCall = function ({ target, propertyKey, propertyDescriptor, args }) {
23
+ if (!target.debug)
24
+ target.debug = DebugHelper.for(target, propertyKey);
25
+ return target.debug.push(propertyKey).trace('called', { target, propertyKey, propertyDescriptor, args });
26
+ };
27
+ const promiseTracer = function ({ options, method, propertyKey, propertyDescriptor }) {
28
+ return function (...args) {
29
+ return new Promise((resolve, reject) => {
30
+ const debug = traceCall({ target: this, propertyDescriptor, propertyKey, args });
31
+ if (get(options, 'level', '') === 'log') {
32
+ debug.with('params').log(args);
33
+ }
34
+ return method
35
+ .apply(this, args)
36
+ .then((result) => {
37
+ if (options.callbackFn) {
38
+ options.callbackFn({ target: this, result, args, namespace: [propertyKey] });
39
+ }
40
+ if (get(options, 'level', '') === 'log') {
41
+ debug.with('returns').log(result === undefined ? 'void' : result);
42
+ }
43
+ return resolve(result);
44
+ })
45
+ .catch((error) => {
46
+ debug.error(error, ...args);
47
+ debug.with('stack').error(error.stack).pop();
48
+ return reject(error);
49
+ })
50
+ .finally(() => {
51
+ return debug.trace('finally', { args }).pop();
52
+ });
53
+ });
54
+ };
55
+ };
56
+ const functionTracer = function ({ options, target, method, propertyKey, propertyDescriptor, }) {
57
+ return function (...args) {
58
+ const debug = traceCall({ target: this || target, propertyDescriptor, propertyKey, args });
59
+ if (get(options, 'level', '') === 'log') {
60
+ debug.with('params').log(args);
61
+ }
62
+ let result;
63
+ try {
64
+ result = method.apply(this, args);
65
+ if (options.callbackFn)
66
+ options.callbackFn({ target: this, result, args, namespace: [propertyKey] });
67
+ if (get(options, 'level', '') === 'log') {
68
+ debug.with('returns').log(result === undefined ? 'void' : result);
69
+ }
70
+ return result;
71
+ }
72
+ catch (error) {
73
+ debug.error(error, ...args).pop();
74
+ throw error;
75
+ }
76
+ finally {
77
+ debug.trace('finally', { args }).pop();
78
+ }
79
+ };
80
+ };
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2UubWV0aG9kLmRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL3V0aWxzL2RlY29yYXRvcnMvdHJhY2UubWV0aG9kLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBRTVCLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUErQnBELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFBO0FBRWhDLE1BQU0sVUFBVSxHQUFHLENBQVksVUFBbUMsRUFBRTtJQUNsRSxPQUFPLEtBQUssQ0FBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0FBQ3ZELENBQUM7QUFFRCxNQUFNLFVBQVUsS0FBSyxDQUFZLFVBQW1DLEVBQUU7SUFDcEUsT0FBTyxVQUFVLE1BQVcsRUFBRSxXQUFtQixFQUFFLGtCQUFzQztRQUN2RixNQUFNLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUE7UUFDdkMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBQzlELE1BQU0sSUFBSSxHQUFHO1lBQ1gsT0FBTztZQUNQLE1BQU07WUFDTixNQUFNO1lBQ04sV0FBVztZQUNYLGtCQUFrQjtTQUNuQixDQUFBO1FBRUQsa0JBQWtCLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFakYsT0FBTyxrQkFBa0IsQ0FBQTtJQUMzQixDQUFDLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxTQUFTLEdBQUcsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUs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LENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDL0I7UUFFRCxJQUFJLE1BQVcsQ0FBQTtRQUVmLElBQUk7WUFDRixNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFFakMsSUFBSSxPQUFPLENBQUMsVUFBVTtnQkFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQTtZQUVwRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssRUFBRTtnQkFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUNsRTtZQUVELE9BQU8sTUFBTSxDQUFBO1NBQ2Q7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7WUFFakMsTUFBTSxLQUFLLENBQUE7U0FDWjtnQkFBUztZQUNSLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtTQUN2QztJQUNILENBQUMsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCdcblxuaW1wb3J0IHsgRGVidWdnYWJsZSwgRGVidWdIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBDYWxsYmFja0ZuQXJnczxULCBSZXN1bHQ+ID0ge1xuICB0YXJnZXQ6IFRcbiAgcmVzdWx0OiBSZXN1bHRcbiAgYXJnczogQXJyYXk8YW55PlxuICBuYW1lc3BhY2U/OiBBcnJheTxzdHJpbmc+XG59XG5cbnR5cGUgQ2FsbGJhY2tGbjxULCBSZXN1bHQ+ID0gKG9wdHM6IENhbGxiYWNrRm5BcmdzPFQsIFJlc3VsdD4pID0+IHZvaWRcblxudHlwZSBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PiA9IHtcbiAgY2FsbGJhY2tGbj86IENhbGxiYWNrRm48VCwgUmVzdWx0PlxuICBsZXZlbD86ICd0cmFjZScgfCAnbG9nJ1xufVxuXG50eXBlIFRyYWNlcjxULCBSZXN1bHQ+ID0ge1xuICBvcHRpb25zOiBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PlxuICBtZXRob2Q6IGFueVxuICB0YXJnZXQ6IFQgJiBEZWJ1Z2dhYmxlXG4gIHByb3BlcnR5RGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yXG4gIHByb3BlcnR5S2V5OiBzdHJpbmdcbn1cblxudHlwZSBDYWxsVHJhY2VyQXJncyA9IHtcbiAgdGFyZ2V0OiBhbnlcbiAgcHJvcGVydHlLZXk6IHN0cmluZ1xuICBwcm9wZXJ0eURlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvclxuICBhcmdzOiBBcnJheTxhbnk+XG59XG5cbmNvbnN0IEFTWU5DX0lERU5USUZJRVIgPSAnYXN5bmMnXG5cbmV4cG9ydCBmdW5jdGlvbiBMb2c8VCwgUmVzdWx0PihvcHRpb25zOiBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PiA9IHt9KSB7XG4gIHJldHVybiBUcmFjZTxULCBSZXN1bHQ+KHsgbGV2ZWw6ICdsb2cnLCAuLi5vcHRpb25zIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBUcmFjZTxULCBSZXN1bHQ+KG9wdGlvbnM6IFRyYWNlT3B0aW9uczxULCBSZXN1bHQ+ID0ge30pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZywgcHJvcGVydHlEZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcbiAgICBjb25zdCBtZXRob2QgPSBwcm9wZXJ0eURlc2NyaXB0b3IudmFsdWVcbiAgICBjb25zdCBpc1Byb21pc2UgPSBtZXRob2QudG9TdHJpbmcoKS5pbmNsdWRlcyhBU1lOQ19JREVOVElGSUVSKVxuICAgIGNvbnN0IGFyZ3MgPSB7XG4gICAgICBvcHRpb25zLFxuICAgICAgbWV0aG9kLFxuICAgICAgdGFyZ2V0LFxuICAgICAgcHJvcGVydHlLZXksXG4gICAgICBwcm9wZXJ0eURlc2NyaXB0b3IsXG4gICAgfVxuXG4gICAgcHJvcGVydHlEZXNjcmlwdG9yLnZhbHVlID0gaXNQcm9taXNlID8gcHJvbWlzZVRyYWNlcihhcmdzKSA6IGZ1bmN0aW9uVHJhY2VyKGFyZ3MpXG5cbiAgICByZXR1cm4gcHJvcGVydHlEZXNjcmlwdG9yXG4gIH1cbn1cblxuY29uc3QgdHJhY2VDYWxsID0gZnVuY3Rpb24gKHsgdGFyZ2V0LCBwcm9wZXJ0eUtleSwgcHJvcGVydHlEZXNjcmlwdG9yLCBhcmdzIH06IENhbGxUcmFjZXJBcmdzKTogRGVidWdIZWxwZXIge1xuICBpZiAoIXRhcmdldC5kZWJ1ZykgdGFyZ2V0LmRlYnVnID0gRGVidWdIZWxwZXIuZm9yKHRhcmdldCwgcHJvcGVydHlLZXkpXG5cbiAgcmV0dXJuIHRhcmdldC5kZWJ1Zy5wdXNoKHByb3BlcnR5S2V5KS50cmFjZSgnY2FsbGVkJywgeyB0YXJnZXQsIHByb3BlcnR5S2V5LCBwcm9wZXJ0eURlc2NyaXB0b3IsIGFyZ3MgfSlcbn1cblxuY29uc3QgcHJvbWlzZVRyYWNlciA9IGZ1bmN0aW9uIDxULCBSZXN1bHQ+KHsgb3B0aW9ucywgbWV0aG9kLCBwcm9wZXJ0eUtleSwgcHJvcGVydHlEZXNjcmlwdG9yIH06IFRyYWNlcjxULCBSZXN1bHQ+KSB7XG4gIHJldHVybiBmdW5jdGlvbiAodGhpczogYW55LCAuLi5hcmdzOiBBcnJheTxhbnk+KTogYW55IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgZGVidWcgPSB0cmFjZUNhbGwoeyB0YXJnZXQ6IHRoaXMsIHByb3BlcnR5RGVzY3JpcHRvciwgcHJvcGVydHlLZXksIGFyZ3MgfSlcblxuICAgICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICAgIGRlYnVnLndpdGgoJ3BhcmFtcycpLmxvZyhhcmdzKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbWV0aG9kXG4gICAgICAgIC5hcHBseSh0aGlzLCBhcmdzKVxuICAgICAgICAudGhlbigocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5jYWxsYmFja0ZuKSB7XG4gICAgICAgICAgICBvcHRpb25zLmNhbGxiYWNrRm4oeyB0YXJnZXQ6IHRoaXMsIHJlc3VsdCwgYXJncywgbmFtZXNwYWNlOiBbcHJvcGVydHlLZXldIH0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICAgICAgICBkZWJ1Zy53aXRoKCdyZXR1cm5zJykubG9nKHJlc3VsdCA9PT0gdW5kZWZpbmVkID8gJ3ZvaWQnIDogcmVzdWx0KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXNvbHZlKHJlc3VsdClcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgICBkZWJ1Zy5lcnJvcihlcnJvciwgLi4uYXJncylcbiAgICAgICAgICBkZWJ1Zy53aXRoKCdzdGFjaycpLmVycm9yKGVycm9yLnN0YWNrKS5wb3AoKVxuXG4gICAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcilcbiAgICAgICAgfSlcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBkZWJ1Zy50cmFjZSgnZmluYWxseScsIHsgYXJncyB9KS5wb3AoKVxuICAgICAgICB9KVxuICAgIH0pXG4gIH1cbn1cblxuY29uc3QgZnVuY3Rpb25UcmFjZXIgPSBmdW5jdGlvbiA8VCwgUmVzdWx0Pih7XG4gIG9wdGlvbnMsXG4gIHRhcmdldCxcbiAgbWV0aG9kLFxuICBwcm9wZXJ0eUtleSxcbiAgcHJvcGVydHlEZXNjcmlwdG9yLFxufTogVHJhY2VyPFQsIFJlc3VsdD4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh0aGlzOiBhbnksIC4uLmFyZ3M6IEFycmF5PGFueT4pOiBhbnkge1xuICAgIGNvbnN0IGRlYnVnID0gdHJhY2VDYWxsKHsgdGFyZ2V0OiB0aGlzIHx8IHRhcmdldCwgcHJvcGVydHlEZXNjcmlwdG9yLCBwcm9wZXJ0eUtleSwgYXJncyB9KVxuXG4gICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICBkZWJ1Zy53aXRoKCdwYXJhbXMnKS5sb2coYXJncylcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBhbnlcblxuICAgIHRyeSB7XG4gICAgICByZXN1bHQgPSBtZXRob2QuYXBwbHkodGhpcywgYXJncylcblxuICAgICAgaWYgKG9wdGlvbnMuY2FsbGJhY2tGbikgb3B0aW9ucy5jYWxsYmFja0ZuKHsgdGFyZ2V0OiB0aGlzLCByZXN1bHQsIGFyZ3MsIG5hbWVzcGFjZTogW3Byb3BlcnR5S2V5XSB9KVxuXG4gICAgICBpZiAoZ2V0KG9wdGlvbnMsICdsZXZlbCcsICcnKSA9PT0gJ2xvZycpIHtcbiAgICAgICAgZGVidWcud2l0aCgncmV0dXJucycpLmxvZyhyZXN1bHQgPT09IHVuZGVmaW5lZCA/ICd2b2lkJyA6IHJlc3VsdClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBkZWJ1Zy5lcnJvcihlcnJvciwgLi4uYXJncykucG9wKClcblxuICAgICAgdGhyb3cgZXJyb3JcbiAgICB9IGZpbmFsbHkge1xuICAgICAgZGVidWcudHJhY2UoJ2ZpbmFsbHknLCB7IGFyZ3MgfSkucG9wKClcbiAgICB9XG4gIH1cbn1cbiJdfQ==