@infrab4a/connect 0.17.0-beta.8 → 0.17.1-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 (720) hide show
  1. package/README.md +24 -24
  2. package/index.ts +1 -0
  3. package/karma.conf.js +32 -0
  4. package/ng-package.json +24 -0
  5. package/package.json +20 -28
  6. package/src/domain/catalog/index.ts +2 -0
  7. package/src/domain/catalog/models/category.ts +27 -0
  8. package/src/domain/catalog/models/enums/index.ts +1 -0
  9. package/src/domain/catalog/models/enums/shops.enum.ts +5 -0
  10. package/src/domain/catalog/models/index.ts +5 -0
  11. package/src/domain/catalog/models/product.ts +47 -0
  12. package/src/domain/catalog/models/types/category-condition.type.ts +4 -0
  13. package/src/domain/catalog/models/types/category-filter.type.ts +4 -0
  14. package/src/domain/catalog/models/types/index.ts +7 -0
  15. package/src/domain/catalog/models/types/product-review.type.ts +16 -0
  16. package/src/domain/catalog/models/types/shops-description.type.ts +9 -0
  17. package/src/domain/catalog/models/types/shops-price.type.ts +12 -0
  18. package/src/domain/catalog/models/types/stock.type.ts +3 -0
  19. package/src/domain/catalog/models/types/variant-grade.type.ts +4 -0
  20. package/src/domain/catalog/models/variant.ts +19 -0
  21. package/src/domain/catalog/repositories/category.repository.ts +10 -0
  22. package/src/domain/catalog/repositories/index.ts +4 -0
  23. package/{domain/catalog/repositories/product.repository.d.ts → src/domain/catalog/repositories/product.repository.ts} +6 -5
  24. package/{domain/catalog/repositories/subscription-product.repository.d.ts → src/domain/catalog/repositories/subscription-product.repository.ts} +4 -4
  25. package/{domain/catalog/repositories/variant.repository.d.ts → src/domain/catalog/repositories/variant.repository.ts} +4 -4
  26. package/src/domain/general/index.ts +2 -0
  27. package/src/domain/general/model/base-model-with-identifier-fields.ts +4 -0
  28. package/src/domain/general/model/base.model.ts +17 -0
  29. package/{domain/general/model/identifier-fields.d.ts → src/domain/general/model/identifier-fields.ts} +5 -4
  30. package/src/domain/general/model/index.ts +4 -0
  31. package/src/domain/general/model/types/base-model-builder.type.ts +6 -0
  32. package/src/domain/general/model/types/index.ts +3 -0
  33. package/src/domain/general/model/types/non-function-properties.type.ts +3 -0
  34. package/src/domain/general/model/types/non-function-property-name.type.ts +1 -0
  35. package/{domain/general/repository/create.repository.d.ts → src/domain/general/repository/create.repository.ts} +6 -5
  36. package/src/domain/general/repository/crud.repository.ts +12 -0
  37. package/{domain/general/repository/delete.repository.d.ts → src/domain/general/repository/delete.repository.ts} +6 -5
  38. package/src/domain/general/repository/enums/index.ts +2 -0
  39. package/src/domain/general/repository/enums/update-option-actions.enum.ts +7 -0
  40. package/src/domain/general/repository/enums/where.enum.ts +10 -0
  41. package/src/domain/general/repository/find.repository.ts +11 -0
  42. package/{domain/general/repository/get.repository.d.ts → src/domain/general/repository/get.repository.ts} +6 -5
  43. package/src/domain/general/repository/index.ts +9 -0
  44. package/src/domain/general/repository/read.repository.ts +8 -0
  45. package/src/domain/general/repository/types/index.ts +5 -0
  46. package/src/domain/general/repository/types/repository-find-filters.type.ts +21 -0
  47. package/src/domain/general/repository/types/repository-find-result.type.ts +4 -0
  48. package/src/domain/general/repository/types/repository-limit-options.type.ts +4 -0
  49. package/src/domain/general/repository/types/repository-order-by-list.type.ts +7 -0
  50. package/src/domain/general/repository/types/repository-update-params.type.ts +16 -0
  51. package/{domain/general/repository/update.repository.d.ts → src/domain/general/repository/update.repository.ts} +7 -5
  52. package/src/domain/index.ts +6 -0
  53. package/src/domain/location/index.ts +1 -0
  54. package/src/domain/location/models/address.ts +23 -0
  55. package/src/domain/location/models/index.ts +2 -0
  56. package/src/domain/location/models/types/index.ts +3 -0
  57. package/src/domain/location/models/types/location-bound.type.ts +6 -0
  58. package/src/domain/location/models/types/location-geometry.type.ts +8 -0
  59. package/src/domain/location/models/types/location-lat-lng.type.ts +4 -0
  60. package/src/domain/shop-settings/enums/filter-type.enum.ts +19 -0
  61. package/src/domain/shop-settings/enums/index.ts +2 -0
  62. package/src/domain/shop-settings/enums/questions-filters.enum.ts +19 -0
  63. package/src/domain/shop-settings/helpers/beauty-questions.helper.ts +51 -0
  64. package/src/domain/shop-settings/helpers/index.ts +1 -0
  65. package/src/domain/shop-settings/index.ts +4 -0
  66. package/src/domain/shop-settings/models/home.ts +21 -0
  67. package/src/domain/shop-settings/models/index.ts +4 -0
  68. package/src/domain/shop-settings/models/shop-menu.ts +11 -0
  69. package/src/domain/shop-settings/models/shop-settings.ts +10 -0
  70. package/src/domain/shop-settings/models/types/banner.type.ts +6 -0
  71. package/src/domain/shop-settings/models/types/benefit.type.ts +5 -0
  72. package/src/domain/shop-settings/models/types/home-data.type.ts +18 -0
  73. package/src/domain/shop-settings/models/types/index.ts +5 -0
  74. package/src/domain/shop-settings/models/types/menu-nav.type.ts +9 -0
  75. package/src/domain/shop-settings/models/types/sub-menu.type.ts +8 -0
  76. package/src/domain/shop-settings/repositories/home.repository.ts +4 -0
  77. package/src/domain/shop-settings/repositories/index.ts +3 -0
  78. package/{domain/shop-settings/repositories/shop-menu.repository.d.ts → src/domain/shop-settings/repositories/shop-menu.repository.ts} +4 -4
  79. package/src/domain/shop-settings/repositories/shop-settings.repository.ts +4 -0
  80. package/src/domain/shopping/index.ts +2 -0
  81. package/src/domain/shopping/models/buy-2-win.ts +26 -0
  82. package/src/domain/shopping/models/checkout.ts +43 -0
  83. package/src/domain/shopping/models/coupons/coupon.ts +42 -0
  84. package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.ts +4 -0
  85. package/src/domain/shopping/models/coupons/enums/coupon-types.enum.ts +6 -0
  86. package/src/domain/shopping/models/coupons/enums/exclusivities.enum.ts +5 -0
  87. package/src/domain/shopping/models/coupons/enums/index.ts +3 -0
  88. package/src/domain/shopping/models/coupons/financial-coupon.ts +32 -0
  89. package/src/domain/shopping/models/coupons/index.ts +3 -0
  90. package/src/domain/shopping/models/enums/checkout-types.enum.ts +4 -0
  91. package/src/domain/shopping/models/enums/index.ts +2 -0
  92. package/src/domain/shopping/models/enums/order-status.enum.ts +10 -0
  93. package/src/domain/shopping/models/index.ts +11 -0
  94. package/src/domain/shopping/models/line-item.ts +9 -0
  95. package/src/domain/shopping/models/order.ts +14 -0
  96. package/src/domain/shopping/models/payment.ts +117 -0
  97. package/src/domain/shopping/models/shipping-method.ts +22 -0
  98. package/src/domain/shopping/models/subscription/checkout.ts +38 -0
  99. package/src/domain/shopping/models/subscription/index.ts +2 -0
  100. package/src/domain/shopping/models/subscription/plan.ts +16 -0
  101. package/src/domain/shopping/models/types/index.ts +7 -0
  102. package/src/domain/shopping/models/types/payment-address.type.ts +12 -0
  103. package/src/domain/shopping/models/types/payment-billing.type.ts +8 -0
  104. package/src/domain/shopping/models/types/payment-card.type.ts +14 -0
  105. package/src/domain/shopping/models/types/payment-customer.type.ts +19 -0
  106. package/src/domain/shopping/models/types/payment-document.type.ts +6 -0
  107. package/src/domain/shopping/models/types/payment-item.type.ts +11 -0
  108. package/src/domain/shopping/models/types/payment-shipping.type.ts +11 -0
  109. package/{domain/shopping/repositories/buy-2-win.repository.d.ts → src/domain/shopping/repositories/buy-2-win.repository.ts} +4 -4
  110. package/{domain/shopping/repositories/checkout.repository.d.ts → src/domain/shopping/repositories/checkout.repository.ts} +4 -4
  111. package/{domain/shopping/repositories/coupon.repository.d.ts → src/domain/shopping/repositories/coupon.repository.ts} +4 -4
  112. package/src/domain/shopping/repositories/index.ts +7 -0
  113. package/{domain/shopping/repositories/legacy-order.repository.d.ts → src/domain/shopping/repositories/legacy-order.repository.ts} +3 -3
  114. package/{domain/shopping/repositories/order.repository.d.ts → src/domain/shopping/repositories/order.repository.ts} +4 -4
  115. package/{domain/shopping/repositories/payment.repository.d.ts → src/domain/shopping/repositories/payment.repository.ts} +4 -4
  116. package/{domain/shopping/repositories/subscription/checkout.repository.d.ts → src/domain/shopping/repositories/subscription/checkout.repository.ts} +4 -4
  117. package/src/domain/shopping/repositories/subscription/index.ts +2 -0
  118. package/{domain/shopping/repositories/subscription/plan.repository.d.ts → src/domain/shopping/repositories/subscription/plan.repository.ts} +4 -4
  119. package/src/domain/users/errors/index.ts +3 -0
  120. package/src/domain/users/errors/unauthorized.error.ts +5 -0
  121. package/src/domain/users/errors/user-already-registered.error.ts +5 -0
  122. package/src/domain/users/errors/weak-password.error.ts +5 -0
  123. package/src/domain/users/index.ts +5 -0
  124. package/src/domain/users/models/beauty-profile.ts +24 -0
  125. package/src/domain/users/models/enums/accessory-importances.enum.ts +5 -0
  126. package/src/domain/users/models/enums/area.enum.ts +11 -0
  127. package/src/domain/users/models/enums/beard-problems.enum.ts +9 -0
  128. package/src/domain/users/models/enums/beard-sizes.enum.ts +7 -0
  129. package/src/domain/users/models/enums/beauty-product-importances.enum.ts +6 -0
  130. package/src/domain/users/models/enums/body-problems.enum.ts +11 -0
  131. package/src/domain/users/models/enums/body-shapes.enum.ts +7 -0
  132. package/src/domain/users/models/enums/body-tattoos.enum.ts +5 -0
  133. package/src/domain/users/models/enums/face-skin-oilinesses.enum.ts +7 -0
  134. package/src/domain/users/models/enums/face-skin-problems.enum.ts +10 -0
  135. package/src/domain/users/models/enums/face-skin-tones.enum.ts +8 -0
  136. package/src/domain/users/models/enums/family-incomes.enum.ts +8 -0
  137. package/src/domain/users/models/enums/fragrance-importances.enum.ts +5 -0
  138. package/src/domain/users/models/enums/hair-colors.enum.ts +10 -0
  139. package/src/domain/users/models/enums/hair-problems.enum.ts +10 -0
  140. package/src/domain/users/models/enums/hair-strands.enum.ts +8 -0
  141. package/src/domain/users/models/enums/hair-types.enum.ts +7 -0
  142. package/src/domain/users/models/enums/index.ts +20 -0
  143. package/src/domain/users/models/enums/office-position.enum.ts +6 -0
  144. package/src/domain/users/models/enums/product-spents.enum.ts +8 -0
  145. package/src/domain/users/models/enums/user-type.enum.ts +8 -0
  146. package/src/domain/users/models/index.ts +7 -0
  147. package/src/domain/users/models/lead.ts +13 -0
  148. package/src/domain/users/models/subscription/edition.ts +22 -0
  149. package/src/domain/users/models/subscription/enums/billing-status.enum.ts +3 -0
  150. package/src/domain/users/models/subscription/enums/edition-status.enum.ts +4 -0
  151. package/src/domain/users/models/subscription/enums/index.ts +4 -0
  152. package/src/domain/users/models/subscription/enums/payment-type.enum.ts +5 -0
  153. package/src/domain/users/models/subscription/enums/status.enum.ts +4 -0
  154. package/src/domain/users/models/subscription/index.ts +4 -0
  155. package/src/domain/users/models/subscription/payment.ts +26 -0
  156. package/src/domain/users/models/subscription/subscription.ts +45 -0
  157. package/src/domain/users/models/user-address.ts +11 -0
  158. package/src/domain/users/models/user-payment-method.ts +18 -0
  159. package/src/domain/users/models/user.ts +50 -0
  160. package/{domain/users/repositories/beauty-profile.repository.d.ts → src/domain/users/repositories/beauty-profile.repository.ts} +4 -4
  161. package/{domain/users/repositories/edition.repository.d.ts → src/domain/users/repositories/edition.repository.ts} +4 -4
  162. package/src/domain/users/repositories/index.ts +8 -0
  163. package/src/domain/users/repositories/lead.repository.ts +4 -0
  164. package/{domain/users/repositories/subscription-payment.repository.d.ts → src/domain/users/repositories/subscription-payment.repository.ts} +4 -4
  165. package/{domain/users/repositories/subscription.repository.d.ts → src/domain/users/repositories/subscription.repository.ts} +4 -4
  166. package/{domain/users/repositories/user-address.repository.d.ts → src/domain/users/repositories/user-address.repository.ts} +4 -4
  167. package/{domain/users/repositories/user-payment-method.repository.d.ts → src/domain/users/repositories/user-payment-method.repository.ts} +4 -4
  168. package/src/domain/users/repositories/user.repository.ts +7 -0
  169. package/src/domain/users/services/authentication.service.ts +14 -0
  170. package/src/domain/users/services/index.ts +3 -0
  171. package/src/domain/users/services/register.service.ts +7 -0
  172. package/src/domain/users/services/types/basic-user-data.type.ts +7 -0
  173. package/src/domain/users/services/types/index.ts +1 -0
  174. package/src/domain/users/use-cases/authentication.ts +53 -0
  175. package/src/domain/users/use-cases/index.ts +4 -0
  176. package/src/domain/users/use-cases/recovery-password.ts +9 -0
  177. package/src/domain/users/use-cases/register.ts +45 -0
  178. package/src/domain/users/use-cases/signout.ts +9 -0
  179. package/src/errors/duplicated-results.error.ts +5 -0
  180. package/src/errors/index.ts +4 -0
  181. package/src/errors/invalid-argument.error.ts +5 -0
  182. package/src/errors/not-found.error.ts +5 -0
  183. package/src/errors/required-argument.error.ts +9 -0
  184. package/src/index.ts +6 -0
  185. package/src/infra/elasticsearch/adapters/axios.adapter.ts +27 -0
  186. package/{infra/elasticsearch/adapters/elastic-search.adapter.d.ts → src/infra/elasticsearch/adapters/elastic-search.adapter.ts} +5 -4
  187. package/src/infra/elasticsearch/adapters/index.ts +2 -0
  188. package/src/infra/elasticsearch/index.ts +3 -0
  189. package/src/infra/elasticsearch/indexes/index.ts +1 -0
  190. package/src/infra/elasticsearch/indexes/products-index.ts +61 -0
  191. package/src/infra/elasticsearch/types/elastic-search-result.ts +7 -0
  192. package/src/infra/elasticsearch/types/index.ts +1 -0
  193. package/src/infra/firebase/auth/authentication-firebase-auth.service.ts +52 -0
  194. package/src/infra/firebase/auth/index.ts +2 -0
  195. package/src/infra/firebase/auth/register-firebase-auth.service.ts +26 -0
  196. package/src/infra/firebase/auth/types/firebase-user-with-id.type.ts +1 -0
  197. package/src/infra/firebase/auth/types/index.ts +1 -0
  198. package/src/infra/firebase/firestore/index.ts +3 -0
  199. package/src/infra/firebase/firestore/mixins/index.ts +9 -0
  200. package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.ts +36 -0
  201. package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.ts +19 -0
  202. package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.ts +21 -0
  203. package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.ts +142 -0
  204. package/src/infra/firebase/firestore/mixins/with-firestore.mixin.ts +42 -0
  205. package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.ts +27 -0
  206. package/src/infra/firebase/firestore/mixins/with-helpers.mixin.ts +26 -0
  207. package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.ts +30 -0
  208. package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.ts +69 -0
  209. package/src/infra/firebase/firestore/models/index.ts +1 -0
  210. package/src/infra/firebase/firestore/models/user-search.ts +13 -0
  211. package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.ts +80 -0
  212. package/src/infra/firebase/firestore/repositories/catalog/index.ts +4 -0
  213. package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.ts +26 -0
  214. package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.ts +19 -0
  215. package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.ts +17 -0
  216. package/src/infra/firebase/firestore/repositories/index.ts +4 -0
  217. package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.ts +72 -0
  218. package/src/infra/firebase/firestore/repositories/shop-settings/index.ts +3 -0
  219. package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.ts +16 -0
  220. package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.ts +17 -0
  221. package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.ts +17 -0
  222. package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.ts +17 -0
  223. package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.ts +17 -0
  224. package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.ts +41 -0
  225. package/src/infra/firebase/firestore/repositories/shopping/index.ts +8 -0
  226. package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.ts +12 -0
  227. package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.ts +17 -0
  228. package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.ts +17 -0
  229. package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.ts +17 -0
  230. package/src/infra/firebase/firestore/repositories/users/index.ts +9 -0
  231. package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.ts +17 -0
  232. package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.ts +19 -0
  233. package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.ts +17 -0
  234. package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.ts +19 -0
  235. package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.ts +19 -0
  236. package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.ts +19 -0
  237. package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.ts +86 -0
  238. package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.ts +19 -0
  239. package/src/infra/firebase/firestore/repositories/users/user-search-firestore.repository.ts +17 -0
  240. package/src/infra/firebase/firestore/types/firestore-sub.repository.type.ts +11 -0
  241. package/src/infra/firebase/firestore/types/firestore.helpers.type.ts +13 -0
  242. package/src/infra/firebase/firestore/types/firestore.repository.type.ts +10 -0
  243. package/src/infra/firebase/firestore/types/index.ts +3 -0
  244. package/src/infra/firebase/index.ts +2 -0
  245. package/src/infra/index.ts +2 -0
  246. package/src/utils/index.ts +8 -0
  247. package/src/utils/mixins/base.mixin.ts +5 -0
  248. package/src/utils/mixins/index.ts +2 -0
  249. package/src/utils/mixins/mixin-ctor.type.ts +1 -0
  250. package/src/utils/types/index.ts +1 -0
  251. package/src/utils/types/prop.type.ts +1 -0
  252. package/tsconfig.json +14 -0
  253. package/tsconfig.lib.json +12 -0
  254. package/tsconfig.lib.prod.json +11 -0
  255. package/tsconfig.spec.json +17 -0
  256. package/tslint.json +3 -0
  257. package/bundles/infrab4a-connect.umd.js +0 -2750
  258. package/bundles/infrab4a-connect.umd.js.map +0 -1
  259. package/domain/catalog/index.d.ts +0 -2
  260. package/domain/catalog/models/category.d.ts +0 -22
  261. package/domain/catalog/models/enums/index.d.ts +0 -1
  262. package/domain/catalog/models/enums/shops.enum.d.ts +0 -6
  263. package/domain/catalog/models/index.d.ts +0 -5
  264. package/domain/catalog/models/product.d.ts +0 -35
  265. package/domain/catalog/models/types/category-condition.type.d.ts +0 -4
  266. package/domain/catalog/models/types/category-filter.type.d.ts +0 -4
  267. package/domain/catalog/models/types/index.d.ts +0 -7
  268. package/domain/catalog/models/types/product-review.type.d.ts +0 -15
  269. package/domain/catalog/models/types/shops-description.type.d.ts +0 -7
  270. package/domain/catalog/models/types/shops-price.type.d.ts +0 -10
  271. package/domain/catalog/models/types/stock.type.d.ts +0 -3
  272. package/domain/catalog/models/types/variant-grade.type.d.ts +0 -4
  273. package/domain/catalog/models/variant.d.ts +0 -14
  274. package/domain/catalog/repositories/category.repository.d.ts +0 -15
  275. package/domain/catalog/repositories/index.d.ts +0 -4
  276. package/domain/general/index.d.ts +0 -2
  277. package/domain/general/model/base-model-with-identifier-fields.d.ts +0 -3
  278. package/domain/general/model/base.model.d.ts +0 -6
  279. package/domain/general/model/index.d.ts +0 -4
  280. package/domain/general/model/types/base-model-builder.type.d.ts +0 -5
  281. package/domain/general/model/types/index.d.ts +0 -3
  282. package/domain/general/model/types/non-function-properties.type.d.ts +0 -2
  283. package/domain/general/model/types/non-function-property-name.type.d.ts +0 -3
  284. package/domain/general/repository/crud.repository.d.ts +0 -7
  285. package/domain/general/repository/enums/index.d.ts +0 -2
  286. package/domain/general/repository/enums/update-option-actions.enum.d.ts +0 -7
  287. package/domain/general/repository/enums/where.enum.d.ts +0 -10
  288. package/domain/general/repository/find.repository.d.ts +0 -5
  289. package/domain/general/repository/index.d.ts +0 -9
  290. package/domain/general/repository/read.repository.d.ts +0 -5
  291. package/domain/general/repository/types/index.d.ts +0 -5
  292. package/domain/general/repository/types/repository-find-filters.type.d.ts +0 -14
  293. package/domain/general/repository/types/repository-find-result.type.d.ts +0 -4
  294. package/domain/general/repository/types/repository-limit-options.type.d.ts +0 -4
  295. package/domain/general/repository/types/repository-order-by-list.type.d.ts +0 -5
  296. package/domain/general/repository/types/repository-update-params.type.d.ts +0 -11
  297. package/domain/index.d.ts +0 -6
  298. package/domain/location/index.d.ts +0 -1
  299. package/domain/location/models/address.d.ts +0 -21
  300. package/domain/location/models/index.d.ts +0 -2
  301. package/domain/location/models/types/index.d.ts +0 -3
  302. package/domain/location/models/types/location-bound.type.d.ts +0 -6
  303. package/domain/location/models/types/location-geometry.type.d.ts +0 -7
  304. package/domain/location/models/types/location-lat-lng.type.d.ts +0 -4
  305. package/domain/shop-settings/enums/filter-type.enum.d.ts +0 -19
  306. package/domain/shop-settings/enums/index.d.ts +0 -2
  307. package/domain/shop-settings/enums/questions-filters.enum.d.ts +0 -19
  308. package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +0 -9
  309. package/domain/shop-settings/helpers/index.d.ts +0 -1
  310. package/domain/shop-settings/index.d.ts +0 -4
  311. package/domain/shop-settings/models/home.d.ts +0 -17
  312. package/domain/shop-settings/models/index.d.ts +0 -3
  313. package/domain/shop-settings/models/shop-menu.d.ts +0 -7
  314. package/domain/shop-settings/models/types/banner.type.d.ts +0 -6
  315. package/domain/shop-settings/models/types/benefit.type.d.ts +0 -5
  316. package/domain/shop-settings/models/types/home-data.type.d.ts +0 -15
  317. package/domain/shop-settings/models/types/index.d.ts +0 -5
  318. package/domain/shop-settings/models/types/menu-nav.type.d.ts +0 -8
  319. package/domain/shop-settings/models/types/sub-menu.type.d.ts +0 -8
  320. package/domain/shop-settings/repositories/home.repository.d.ts +0 -4
  321. package/domain/shop-settings/repositories/index.d.ts +0 -2
  322. package/domain/shopping/index.d.ts +0 -2
  323. package/domain/shopping/models/buy-2-win.d.ts +0 -18
  324. package/domain/shopping/models/checkout.d.ts +0 -29
  325. package/domain/shopping/models/coupons/coupon.d.ts +0 -32
  326. package/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +0 -5
  327. package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +0 -4
  328. package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +0 -4
  329. package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +0 -7
  330. package/domain/shopping/models/coupons/enums/index.d.ts +0 -3
  331. package/domain/shopping/models/coupons/index.d.ts +0 -2
  332. package/domain/shopping/models/enums/checkout-types.enum.d.ts +0 -5
  333. package/domain/shopping/models/enums/index.d.ts +0 -2
  334. package/domain/shopping/models/enums/order-status.enum.d.ts +0 -10
  335. package/domain/shopping/models/index.d.ts +0 -11
  336. package/domain/shopping/models/line-item.d.ts +0 -8
  337. package/domain/shopping/models/order.d.ts +0 -9
  338. package/domain/shopping/models/payment.d.ts +0 -69
  339. package/domain/shopping/models/shipping-method.d.ts +0 -18
  340. package/domain/shopping/models/subscription/checkout.d.ts +0 -23
  341. package/domain/shopping/models/subscription/index.d.ts +0 -2
  342. package/domain/shopping/models/subscription/plan.d.ts +0 -12
  343. package/domain/shopping/models/types/index.d.ts +0 -7
  344. package/domain/shopping/models/types/payment-address.type.d.ts +0 -12
  345. package/domain/shopping/models/types/payment-billing.type.d.ts +0 -7
  346. package/domain/shopping/models/types/payment-card.type.d.ts +0 -14
  347. package/domain/shopping/models/types/payment-customer.type.d.ts +0 -18
  348. package/domain/shopping/models/types/payment-document.type.d.ts +0 -6
  349. package/domain/shopping/models/types/payment-item.type.d.ts +0 -11
  350. package/domain/shopping/models/types/payment-shipping.type.d.ts +0 -10
  351. package/domain/shopping/repositories/index.d.ts +0 -7
  352. package/domain/shopping/repositories/subscription/index.d.ts +0 -2
  353. package/domain/users/errors/index.d.ts +0 -3
  354. package/domain/users/errors/unauthorized.error.d.ts +0 -4
  355. package/domain/users/errors/user-already-registered.error.d.ts +0 -4
  356. package/domain/users/errors/weak-password.error.d.ts +0 -4
  357. package/domain/users/index.d.ts +0 -5
  358. package/domain/users/models/beauty-profile.d.ts +0 -12
  359. package/domain/users/models/enums/accessory-importances.enum.d.ts +0 -5
  360. package/domain/users/models/enums/area.enum.d.ts +0 -11
  361. package/domain/users/models/enums/beard-problems.enum.d.ts +0 -9
  362. package/domain/users/models/enums/beard-sizes.enum.d.ts +0 -7
  363. package/domain/users/models/enums/beauty-product-importances.enum.d.ts +0 -6
  364. package/domain/users/models/enums/body-problems.enum.d.ts +0 -11
  365. package/domain/users/models/enums/body-shapes.enum.d.ts +0 -7
  366. package/domain/users/models/enums/body-tattoos.enum.d.ts +0 -5
  367. package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +0 -7
  368. package/domain/users/models/enums/face-skin-problems.enum.d.ts +0 -10
  369. package/domain/users/models/enums/face-skin-tones.enum.d.ts +0 -8
  370. package/domain/users/models/enums/family-incomes.enum.d.ts +0 -8
  371. package/domain/users/models/enums/fragrance-importances.enum.d.ts +0 -5
  372. package/domain/users/models/enums/hair-colors.enum.d.ts +0 -10
  373. package/domain/users/models/enums/hair-problems.enum.d.ts +0 -10
  374. package/domain/users/models/enums/hair-strands.enum.d.ts +0 -8
  375. package/domain/users/models/enums/hair-types.enum.d.ts +0 -7
  376. package/domain/users/models/enums/index.d.ts +0 -20
  377. package/domain/users/models/enums/office-position.enum.d.ts +0 -6
  378. package/domain/users/models/enums/product-spents.enum.d.ts +0 -8
  379. package/domain/users/models/enums/user-type.enum.d.ts +0 -8
  380. package/domain/users/models/index.d.ts +0 -7
  381. package/domain/users/models/lead.d.ts +0 -9
  382. package/domain/users/models/subscription/edition.d.ts +0 -17
  383. package/domain/users/models/subscription/enums/billing-status.enum.d.ts +0 -3
  384. package/domain/users/models/subscription/enums/edition-status.enum.d.ts +0 -4
  385. package/domain/users/models/subscription/enums/index.d.ts +0 -4
  386. package/domain/users/models/subscription/enums/payment-type.enum.d.ts +0 -5
  387. package/domain/users/models/subscription/enums/status.enum.d.ts +0 -4
  388. package/domain/users/models/subscription/index.d.ts +0 -4
  389. package/domain/users/models/subscription/payment.d.ts +0 -14
  390. package/domain/users/models/subscription/subscription.d.ts +0 -30
  391. package/domain/users/models/user-address.d.ts +0 -7
  392. package/domain/users/models/user-payment-method.d.ts +0 -14
  393. package/domain/users/models/user.d.ts +0 -25
  394. package/domain/users/repositories/index.d.ts +0 -8
  395. package/domain/users/repositories/lead.repository.d.ts +0 -4
  396. package/domain/users/repositories/user.repository.d.ts +0 -6
  397. package/domain/users/services/authentication.service.d.ts +0 -12
  398. package/domain/users/services/index.d.ts +0 -3
  399. package/domain/users/services/register.service.d.ts +0 -7
  400. package/domain/users/services/types/basic-user-data.type.d.ts +0 -4
  401. package/domain/users/services/types/index.d.ts +0 -1
  402. package/domain/users/use-cases/authentication.d.ts +0 -21
  403. package/domain/users/use-cases/index.d.ts +0 -4
  404. package/domain/users/use-cases/recovery-password.d.ts +0 -6
  405. package/domain/users/use-cases/register.d.ts +0 -13
  406. package/domain/users/use-cases/signout.d.ts +0 -6
  407. package/errors/duplicated-results.error.d.ts +0 -4
  408. package/errors/index.d.ts +0 -4
  409. package/errors/invalid-argument.error.d.ts +0 -4
  410. package/errors/not-found.error.d.ts +0 -4
  411. package/errors/required-argument.error.d.ts +0 -5
  412. package/esm2015/domain/catalog/index.js +0 -3
  413. package/esm2015/domain/catalog/models/category.js +0 -7
  414. package/esm2015/domain/catalog/models/enums/index.js +0 -2
  415. package/esm2015/domain/catalog/models/enums/shops.enum.js +0 -8
  416. package/esm2015/domain/catalog/models/index.js +0 -6
  417. package/esm2015/domain/catalog/models/product.js +0 -11
  418. package/esm2015/domain/catalog/models/types/category-condition.type.js +0 -2
  419. package/esm2015/domain/catalog/models/types/category-filter.type.js +0 -2
  420. package/esm2015/domain/catalog/models/types/index.js +0 -8
  421. package/esm2015/domain/catalog/models/types/product-review.type.js +0 -2
  422. package/esm2015/domain/catalog/models/types/shops-description.type.js +0 -2
  423. package/esm2015/domain/catalog/models/types/shops-price.type.js +0 -2
  424. package/esm2015/domain/catalog/models/types/stock.type.js +0 -2
  425. package/esm2015/domain/catalog/models/types/variant-grade.type.js +0 -2
  426. package/esm2015/domain/catalog/models/variant.js +0 -7
  427. package/esm2015/domain/catalog/repositories/category.repository.js +0 -2
  428. package/esm2015/domain/catalog/repositories/index.js +0 -5
  429. package/esm2015/domain/catalog/repositories/product.repository.js +0 -2
  430. package/esm2015/domain/catalog/repositories/subscription-product.repository.js +0 -2
  431. package/esm2015/domain/catalog/repositories/variant.repository.js +0 -2
  432. package/esm2015/domain/general/index.js +0 -3
  433. package/esm2015/domain/general/model/base-model-with-identifier-fields.js +0 -2
  434. package/esm2015/domain/general/model/base.model.js +0 -13
  435. package/esm2015/domain/general/model/identifier-fields.js +0 -2
  436. package/esm2015/domain/general/model/index.js +0 -5
  437. package/esm2015/domain/general/model/types/base-model-builder.type.js +0 -2
  438. package/esm2015/domain/general/model/types/index.js +0 -4
  439. package/esm2015/domain/general/model/types/non-function-properties.type.js +0 -2
  440. package/esm2015/domain/general/model/types/non-function-property-name.type.js +0 -2
  441. package/esm2015/domain/general/repository/create.repository.js +0 -2
  442. package/esm2015/domain/general/repository/crud.repository.js +0 -2
  443. package/esm2015/domain/general/repository/delete.repository.js +0 -2
  444. package/esm2015/domain/general/repository/enums/index.js +0 -3
  445. package/esm2015/domain/general/repository/enums/update-option-actions.enum.js +0 -9
  446. package/esm2015/domain/general/repository/enums/where.enum.js +0 -12
  447. package/esm2015/domain/general/repository/find.repository.js +0 -2
  448. package/esm2015/domain/general/repository/get.repository.js +0 -2
  449. package/esm2015/domain/general/repository/index.js +0 -10
  450. package/esm2015/domain/general/repository/read.repository.js +0 -2
  451. package/esm2015/domain/general/repository/types/index.js +0 -6
  452. package/esm2015/domain/general/repository/types/repository-find-filters.type.js +0 -2
  453. package/esm2015/domain/general/repository/types/repository-find-result.type.js +0 -2
  454. package/esm2015/domain/general/repository/types/repository-limit-options.type.js +0 -2
  455. package/esm2015/domain/general/repository/types/repository-order-by-list.type.js +0 -2
  456. package/esm2015/domain/general/repository/types/repository-update-params.type.js +0 -2
  457. package/esm2015/domain/general/repository/update.repository.js +0 -2
  458. package/esm2015/domain/index.js +0 -7
  459. package/esm2015/domain/location/index.js +0 -2
  460. package/esm2015/domain/location/models/address.js +0 -4
  461. package/esm2015/domain/location/models/index.js +0 -3
  462. package/esm2015/domain/location/models/types/index.js +0 -4
  463. package/esm2015/domain/location/models/types/location-bound.type.js +0 -2
  464. package/esm2015/domain/location/models/types/location-geometry.type.js +0 -2
  465. package/esm2015/domain/location/models/types/location-lat-lng.type.js +0 -2
  466. package/esm2015/domain/shop-settings/enums/filter-type.enum.js +0 -21
  467. package/esm2015/domain/shop-settings/enums/index.js +0 -3
  468. package/esm2015/domain/shop-settings/enums/questions-filters.enum.js +0 -21
  469. package/esm2015/domain/shop-settings/helpers/beauty-questions.helper.js +0 -46
  470. package/esm2015/domain/shop-settings/helpers/index.js +0 -2
  471. package/esm2015/domain/shop-settings/index.js +0 -5
  472. package/esm2015/domain/shop-settings/models/home.js +0 -7
  473. package/esm2015/domain/shop-settings/models/index.js +0 -4
  474. package/esm2015/domain/shop-settings/models/shop-menu.js +0 -7
  475. package/esm2015/domain/shop-settings/models/types/banner.type.js +0 -2
  476. package/esm2015/domain/shop-settings/models/types/benefit.type.js +0 -2
  477. package/esm2015/domain/shop-settings/models/types/home-data.type.js +0 -2
  478. package/esm2015/domain/shop-settings/models/types/index.js +0 -6
  479. package/esm2015/domain/shop-settings/models/types/menu-nav.type.js +0 -2
  480. package/esm2015/domain/shop-settings/models/types/sub-menu.type.js +0 -2
  481. package/esm2015/domain/shop-settings/repositories/home.repository.js +0 -2
  482. package/esm2015/domain/shop-settings/repositories/index.js +0 -3
  483. package/esm2015/domain/shop-settings/repositories/shop-menu.repository.js +0 -2
  484. package/esm2015/domain/shopping/index.js +0 -3
  485. package/esm2015/domain/shopping/models/buy-2-win.js +0 -14
  486. package/esm2015/domain/shopping/models/checkout.js +0 -38
  487. package/esm2015/domain/shopping/models/coupons/coupon.js +0 -38
  488. package/esm2015/domain/shopping/models/coupons/enums/coupon-club-mens.enum.js +0 -7
  489. package/esm2015/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js +0 -6
  490. package/esm2015/domain/shopping/models/coupons/enums/coupon-types.enum.js +0 -10
  491. package/esm2015/domain/shopping/models/coupons/enums/exclusivities.enum.js +0 -9
  492. package/esm2015/domain/shopping/models/coupons/enums/index.js +0 -4
  493. package/esm2015/domain/shopping/models/coupons/index.js +0 -3
  494. package/esm2015/domain/shopping/models/enums/checkout-types.enum.js +0 -7
  495. package/esm2015/domain/shopping/models/enums/index.js +0 -3
  496. package/esm2015/domain/shopping/models/enums/order-status.enum.js +0 -12
  497. package/esm2015/domain/shopping/models/index.js +0 -12
  498. package/esm2015/domain/shopping/models/line-item.js +0 -4
  499. package/esm2015/domain/shopping/models/order.js +0 -11
  500. package/esm2015/domain/shopping/models/payment.js +0 -169
  501. package/esm2015/domain/shopping/models/shipping-method.js +0 -7
  502. package/esm2015/domain/shopping/models/subscription/checkout.js +0 -28
  503. package/esm2015/domain/shopping/models/subscription/index.js +0 -3
  504. package/esm2015/domain/shopping/models/subscription/plan.js +0 -7
  505. package/esm2015/domain/shopping/models/types/index.js +0 -8
  506. package/esm2015/domain/shopping/models/types/payment-address.type.js +0 -2
  507. package/esm2015/domain/shopping/models/types/payment-billing.type.js +0 -2
  508. package/esm2015/domain/shopping/models/types/payment-card.type.js +0 -2
  509. package/esm2015/domain/shopping/models/types/payment-customer.type.js +0 -2
  510. package/esm2015/domain/shopping/models/types/payment-document.type.js +0 -2
  511. package/esm2015/domain/shopping/models/types/payment-item.type.js +0 -2
  512. package/esm2015/domain/shopping/models/types/payment-shipping.type.js +0 -2
  513. package/esm2015/domain/shopping/repositories/buy-2-win.repository.js +0 -2
  514. package/esm2015/domain/shopping/repositories/checkout.repository.js +0 -2
  515. package/esm2015/domain/shopping/repositories/coupon.repository.js +0 -2
  516. package/esm2015/domain/shopping/repositories/index.js +0 -8
  517. package/esm2015/domain/shopping/repositories/legacy-order.repository.js +0 -2
  518. package/esm2015/domain/shopping/repositories/order.repository.js +0 -2
  519. package/esm2015/domain/shopping/repositories/payment.repository.js +0 -2
  520. package/esm2015/domain/shopping/repositories/subscription/checkout.repository.js +0 -2
  521. package/esm2015/domain/shopping/repositories/subscription/index.js +0 -3
  522. package/esm2015/domain/shopping/repositories/subscription/plan.repository.js +0 -2
  523. package/esm2015/domain/users/errors/index.js +0 -4
  524. package/esm2015/domain/users/errors/unauthorized.error.js +0 -7
  525. package/esm2015/domain/users/errors/user-already-registered.error.js +0 -7
  526. package/esm2015/domain/users/errors/weak-password.error.js +0 -7
  527. package/esm2015/domain/users/index.js +0 -6
  528. package/esm2015/domain/users/models/beauty-profile.js +0 -12
  529. package/esm2015/domain/users/models/enums/accessory-importances.enum.js +0 -7
  530. package/esm2015/domain/users/models/enums/area.enum.js +0 -13
  531. package/esm2015/domain/users/models/enums/beard-problems.enum.js +0 -11
  532. package/esm2015/domain/users/models/enums/beard-sizes.enum.js +0 -9
  533. package/esm2015/domain/users/models/enums/beauty-product-importances.enum.js +0 -8
  534. package/esm2015/domain/users/models/enums/body-problems.enum.js +0 -13
  535. package/esm2015/domain/users/models/enums/body-shapes.enum.js +0 -9
  536. package/esm2015/domain/users/models/enums/body-tattoos.enum.js +0 -7
  537. package/esm2015/domain/users/models/enums/face-skin-oilinesses.enum.js +0 -9
  538. package/esm2015/domain/users/models/enums/face-skin-problems.enum.js +0 -12
  539. package/esm2015/domain/users/models/enums/face-skin-tones.enum.js +0 -10
  540. package/esm2015/domain/users/models/enums/family-incomes.enum.js +0 -10
  541. package/esm2015/domain/users/models/enums/fragrance-importances.enum.js +0 -7
  542. package/esm2015/domain/users/models/enums/hair-colors.enum.js +0 -12
  543. package/esm2015/domain/users/models/enums/hair-problems.enum.js +0 -12
  544. package/esm2015/domain/users/models/enums/hair-strands.enum.js +0 -10
  545. package/esm2015/domain/users/models/enums/hair-types.enum.js +0 -9
  546. package/esm2015/domain/users/models/enums/index.js +0 -21
  547. package/esm2015/domain/users/models/enums/office-position.enum.js +0 -8
  548. package/esm2015/domain/users/models/enums/product-spents.enum.js +0 -10
  549. package/esm2015/domain/users/models/enums/user-type.enum.js +0 -10
  550. package/esm2015/domain/users/models/index.js +0 -8
  551. package/esm2015/domain/users/models/lead.js +0 -7
  552. package/esm2015/domain/users/models/subscription/edition.js +0 -7
  553. package/esm2015/domain/users/models/subscription/enums/billing-status.enum.js +0 -5
  554. package/esm2015/domain/users/models/subscription/enums/edition-status.enum.js +0 -6
  555. package/esm2015/domain/users/models/subscription/enums/index.js +0 -5
  556. package/esm2015/domain/users/models/subscription/enums/payment-type.enum.js +0 -7
  557. package/esm2015/domain/users/models/subscription/enums/status.enum.js +0 -6
  558. package/esm2015/domain/users/models/subscription/index.js +0 -5
  559. package/esm2015/domain/users/models/subscription/payment.js +0 -14
  560. package/esm2015/domain/users/models/subscription/subscription.js +0 -43
  561. package/esm2015/domain/users/models/user-address.js +0 -7
  562. package/esm2015/domain/users/models/user-payment-method.js +0 -7
  563. package/esm2015/domain/users/models/user.js +0 -26
  564. package/esm2015/domain/users/repositories/beauty-profile.repository.js +0 -2
  565. package/esm2015/domain/users/repositories/edition.repository.js +0 -2
  566. package/esm2015/domain/users/repositories/index.js +0 -9
  567. package/esm2015/domain/users/repositories/lead.repository.js +0 -2
  568. package/esm2015/domain/users/repositories/subscription-payment.repository.js +0 -2
  569. package/esm2015/domain/users/repositories/subscription.repository.js +0 -2
  570. package/esm2015/domain/users/repositories/user-address.repository.js +0 -2
  571. package/esm2015/domain/users/repositories/user-payment-method.repository.js +0 -2
  572. package/esm2015/domain/users/repositories/user.repository.js +0 -2
  573. package/esm2015/domain/users/services/authentication.service.js +0 -2
  574. package/esm2015/domain/users/services/index.js +0 -4
  575. package/esm2015/domain/users/services/register.service.js +0 -2
  576. package/esm2015/domain/users/services/types/basic-user-data.type.js +0 -2
  577. package/esm2015/domain/users/services/types/index.js +0 -2
  578. package/esm2015/domain/users/use-cases/authentication.js +0 -40
  579. package/esm2015/domain/users/use-cases/index.js +0 -5
  580. package/esm2015/domain/users/use-cases/recovery-password.js +0 -12
  581. package/esm2015/domain/users/use-cases/register.js +0 -34
  582. package/esm2015/domain/users/use-cases/signout.js +0 -12
  583. package/esm2015/errors/duplicated-results.error.js +0 -7
  584. package/esm2015/errors/index.js +0 -5
  585. package/esm2015/errors/invalid-argument.error.js +0 -7
  586. package/esm2015/errors/not-found.error.js +0 -7
  587. package/esm2015/errors/required-argument.error.js +0 -8
  588. package/esm2015/index.js +0 -6
  589. package/esm2015/infra/elasticsearch/adapters/axios.adapter.js +0 -22
  590. package/esm2015/infra/elasticsearch/adapters/elastic-search.adapter.js +0 -2
  591. package/esm2015/infra/elasticsearch/adapters/index.js +0 -3
  592. package/esm2015/infra/elasticsearch/index.js +0 -4
  593. package/esm2015/infra/elasticsearch/indexes/index.js +0 -2
  594. package/esm2015/infra/elasticsearch/indexes/products-index.js +0 -59
  595. package/esm2015/infra/elasticsearch/types/elastic-search-result.js +0 -2
  596. package/esm2015/infra/elasticsearch/types/index.js +0 -2
  597. package/esm2015/infra/firebase/auth/authentication-firebase-auth.service.js +0 -52
  598. package/esm2015/infra/firebase/auth/index.js +0 -3
  599. package/esm2015/infra/firebase/auth/register-firebase-auth.service.js +0 -26
  600. package/esm2015/infra/firebase/auth/types/firebase-user-with-id.type.js +0 -2
  601. package/esm2015/infra/firebase/firestore/index.js +0 -4
  602. package/esm2015/infra/firebase/firestore/mixins/index.js +0 -10
  603. package/esm2015/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +0 -31
  604. package/esm2015/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +0 -10
  605. package/esm2015/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +0 -18
  606. package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +0 -87
  607. package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +0 -26
  608. package/esm2015/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +0 -24
  609. package/esm2015/infra/firebase/firestore/mixins/with-helpers.mixin.js +0 -17
  610. package/esm2015/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +0 -11
  611. package/esm2015/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +0 -45
  612. package/esm2015/infra/firebase/firestore/models/user-search.js +0 -7
  613. package/esm2015/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +0 -70
  614. package/esm2015/infra/firebase/firestore/repositories/catalog/index.js +0 -5
  615. package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +0 -23
  616. package/esm2015/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js +0 -14
  617. package/esm2015/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js +0 -12
  618. package/esm2015/infra/firebase/firestore/repositories/index.js +0 -5
  619. package/esm2015/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js +0 -56
  620. package/esm2015/infra/firebase/firestore/repositories/shop-settings/index.js +0 -3
  621. package/esm2015/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js +0 -12
  622. package/esm2015/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js +0 -12
  623. package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js +0 -12
  624. package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js +0 -12
  625. package/esm2015/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js +0 -29
  626. package/esm2015/infra/firebase/firestore/repositories/shopping/index.js +0 -9
  627. package/esm2015/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js +0 -9
  628. package/esm2015/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +0 -12
  629. package/esm2015/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js +0 -12
  630. package/esm2015/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js +0 -12
  631. package/esm2015/infra/firebase/firestore/repositories/users/index.js +0 -10
  632. package/esm2015/infra/firebase/firestore/repositories/users/lead-firestore.repository.js +0 -12
  633. package/esm2015/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js +0 -14
  634. package/esm2015/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js +0 -12
  635. package/esm2015/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js +0 -14
  636. package/esm2015/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js +0 -14
  637. package/esm2015/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js +0 -14
  638. package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +0 -70
  639. package/esm2015/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js +0 -14
  640. package/esm2015/infra/firebase/firestore/repositories/users/user-search-firestore.repository.js +0 -12
  641. package/esm2015/infra/firebase/firestore/types/firestore-sub.repository.type.js +0 -2
  642. package/esm2015/infra/firebase/firestore/types/firestore.helpers.type.js +0 -2
  643. package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +0 -2
  644. package/esm2015/infra/firebase/firestore/types/index.js +0 -4
  645. package/esm2015/infra/firebase/index.js +0 -3
  646. package/esm2015/infra/index.js +0 -3
  647. package/esm2015/infrab4a-connect.js +0 -5
  648. package/esm2015/utils/index.js +0 -6
  649. package/esm2015/utils/mixins/base.mixin.js +0 -6
  650. package/esm2015/utils/mixins/index.js +0 -3
  651. package/esm2015/utils/mixins/mixin-ctor.type.js +0 -2
  652. package/esm2015/utils/types/index.js +0 -2
  653. package/esm2015/utils/types/prop.type.js +0 -2
  654. package/fesm2015/infrab4a-connect.js +0 -1777
  655. package/fesm2015/infrab4a-connect.js.map +0 -1
  656. package/index.d.ts +0 -5
  657. package/infra/elasticsearch/adapters/axios.adapter.d.ts +0 -11
  658. package/infra/elasticsearch/adapters/index.d.ts +0 -2
  659. package/infra/elasticsearch/index.d.ts +0 -3
  660. package/infra/elasticsearch/indexes/index.d.ts +0 -1
  661. package/infra/elasticsearch/indexes/products-index.d.ts +0 -11
  662. package/infra/elasticsearch/types/elastic-search-result.d.ts +0 -7
  663. package/infra/elasticsearch/types/index.d.ts +0 -1
  664. package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +0 -12
  665. package/infra/firebase/auth/index.d.ts +0 -2
  666. package/infra/firebase/auth/register-firebase-auth.service.d.ts +0 -8
  667. package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +0 -3
  668. package/infra/firebase/firestore/index.d.ts +0 -3
  669. package/infra/firebase/firestore/mixins/index.d.ts +0 -9
  670. package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +0 -17
  671. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +0 -29
  672. package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +0 -15
  673. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +0 -20
  674. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +0 -15
  675. package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +0 -15
  676. package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +0 -10
  677. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +0 -14
  678. package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +0 -16
  679. package/infra/firebase/firestore/models/user-search.d.ts +0 -9
  680. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +0 -58
  681. package/infra/firebase/firestore/repositories/catalog/index.d.ts +0 -4
  682. package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +0 -50
  683. package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +0 -60
  684. package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +0 -49
  685. package/infra/firebase/firestore/repositories/index.d.ts +0 -4
  686. package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +0 -57
  687. package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +0 -2
  688. package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +0 -49
  689. package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +0 -49
  690. package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +0 -49
  691. package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +0 -49
  692. package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +0 -53
  693. package/infra/firebase/firestore/repositories/shopping/index.d.ts +0 -8
  694. package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +0 -7
  695. package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +0 -49
  696. package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +0 -49
  697. package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +0 -49
  698. package/infra/firebase/firestore/repositories/users/index.d.ts +0 -9
  699. package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +0 -49
  700. package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +0 -60
  701. package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +0 -49
  702. package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +0 -60
  703. package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +0 -60
  704. package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +0 -60
  705. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +0 -60
  706. package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +0 -60
  707. package/infra/firebase/firestore/repositories/users/user-search-firestore.repository.d.ts +0 -50
  708. package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +0 -6
  709. package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +0 -8
  710. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +0 -8
  711. package/infra/firebase/firestore/types/index.d.ts +0 -3
  712. package/infra/firebase/index.d.ts +0 -2
  713. package/infra/index.d.ts +0 -2
  714. package/infrab4a-connect.d.ts +0 -5
  715. package/utils/index.d.ts +0 -6
  716. package/utils/mixins/base.mixin.d.ts +0 -3
  717. package/utils/mixins/index.d.ts +0 -2
  718. package/utils/mixins/mixin-ctor.type.d.ts +0 -1
  719. package/utils/types/index.d.ts +0 -1
  720. package/utils/types/prop.type.d.ts +0 -1
@@ -1,1777 +0,0 @@
1
- import 'reflect-metadata';
2
- import { plainToClass, classToPlain, Expose, Type } from 'class-transformer';
3
- import { __decorate, __metadata, __awaiter } from 'tslib';
4
- export { add, sub } from 'date-fns';
5
- import { isNil, isNumber, isString, isDate, set, isObject, isEmpty, chunk } from 'lodash';
6
- export { chunk, get, isDate, isEmpty, isNil, isNumber, isObject, isString, pick, set } from 'lodash';
7
- import axios from 'axios';
8
- import firebase from 'firebase';
9
- import firebase$1 from 'firebase/app';
10
-
11
- class BaseModel {
12
- constructor(args) {
13
- Object.assign(this, args);
14
- }
15
- static toInstance(data) {
16
- return plainToClass(this, data);
17
- }
18
- toPlain() {
19
- return classToPlain(this, { exposeUnsetFields: false });
20
- }
21
- }
22
-
23
- var Where;
24
- (function (Where) {
25
- Where["EQUALS"] = "==";
26
- Where["NOTEQUALS"] = "!=";
27
- Where["GT"] = ">";
28
- Where["GTE"] = ">=";
29
- Where["IN"] = "in";
30
- Where["LT"] = "<";
31
- Where["LTE"] = "<=";
32
- Where["LIKE"] = "like";
33
- })(Where || (Where = {}));
34
-
35
- var UpdateOptionActions;
36
- (function (UpdateOptionActions) {
37
- UpdateOptionActions["UPDATE"] = "update";
38
- UpdateOptionActions["MERGE"] = "merge";
39
- UpdateOptionActions["REMOVE"] = "remove";
40
- UpdateOptionActions["REMOVE_FIELD"] = "removeField";
41
- UpdateOptionActions["NULL"] = "null";
42
- })(UpdateOptionActions || (UpdateOptionActions = {}));
43
-
44
- var AccessoryImportances;
45
- (function (AccessoryImportances) {
46
- AccessoryImportances["NOT_INTERESTED"] = "N\u00E3o tenho interesse";
47
- AccessoryImportances["LIKE_RARELY_USE"] = "Gosto, mas uso poucos";
48
- AccessoryImportances["LIKE_ALWAYS_FOLLOW_FASHION"] = "Gosto muito de acess\u00F3rios e sempre procuro acompanhar a moda";
49
- })(AccessoryImportances || (AccessoryImportances = {}));
50
-
51
- var Area;
52
- (function (Area) {
53
- Area["GP"] = "Geral";
54
- Area["CRM"] = "CRM";
55
- Area["MediaProd"] = "Media Production";
56
- Area["Tech"] = "Tecnologia";
57
- Area["Transactional"] = "Transacional";
58
- Area["Operations"] = "Opera\u00E7\u00F5es";
59
- Area["Sales"] = "Comercial";
60
- Area["Finantial"] = "Financeiro";
61
- Area["HR"] = "RH";
62
- })(Area || (Area = {}));
63
-
64
- var BeardProblems;
65
- (function (BeardProblems) {
66
- BeardProblems["NO_PROBLEMS"] = "Sem problemas";
67
- BeardProblems["DRY"] = "Barba Seca";
68
- BeardProblems["OILY"] = "Barba Oleaosa";
69
- BeardProblems["DANCRUFF"] = "Barba com Caspa";
70
- BeardProblems["INGROWN_HAIRS"] = "P\u00EAlos Encravados";
71
- BeardProblems["DOESNT_GROW"] = "N\u00E3o Cresce";
72
- BeardProblems["SPARSE_BEARD"] = "Barba Rala";
73
- })(BeardProblems || (BeardProblems = {}));
74
-
75
- var BeardSizes;
76
- (function (BeardSizes) {
77
- BeardSizes["BIG"] = "Grande";
78
- BeardSizes["MEDIUM"] = "M\u00E9dia";
79
- BeardSizes["SHORT"] = "Curta";
80
- BeardSizes["MUSTACHE"] = "Bigode";
81
- BeardSizes["NOTHING"] = "Sem Barba";
82
- })(BeardSizes || (BeardSizes = {}));
83
-
84
- var BeautyProductImportances;
85
- (function (BeautyProductImportances) {
86
- BeautyProductImportances["KNOW_LITTLE_ABOUT"] = "Conhe\u00E7o bem pouco de produtos de beleza e rotinas de cuidados";
87
- BeautyProductImportances["ALREADY_BOUGHT_NOTHING_SPECIALIZED"] = "J\u00E1 comprei alguns produtos b\u00E1sicos para cuidar de mim, mas nada muito especializado";
88
- BeautyProductImportances["GOOD_CARE_MYSELF"] = "Me considero um homem que se cuida bem. Conhe\u00E7o sobre produtos especializados e me preocupo em ter uma rotina de cuidados";
89
- BeautyProductImportances["PERSONAL_CARE_EXPERT"] = "Sou um expert em cuidados pessoais";
90
- })(BeautyProductImportances || (BeautyProductImportances = {}));
91
-
92
- var BodyProblems;
93
- (function (BodyProblems) {
94
- BodyProblems["NO_WORRIES"] = "Sem preocupa\u00E7\u00F5es";
95
- BodyProblems["FLACCIDITY"] = "Flacidez";
96
- BodyProblems["LOCALIZED_FAT"] = "Gordura Localizada";
97
- BodyProblems["STRETCH_MARKS"] = "Estrias";
98
- BodyProblems["SENSITIVE_SKIN"] = "Pele Sens\u00EDvel";
99
- BodyProblems["DRY_SKIN"] = "Pele Seca";
100
- BodyProblems["OILY_ACNE"] = "Oleosa/Acne";
101
- BodyProblems["SKIN_FRECKLES"] = "Pele com Sardas";
102
- BodyProblems["PHOTOSENSITIVE_SKIN"] = "Pele Fotossens\u00EDvel";
103
- })(BodyProblems || (BodyProblems = {}));
104
-
105
- var BodyShapes;
106
- (function (BodyShapes) {
107
- BodyShapes["LEAN"] = "Magro";
108
- BodyShapes["REGULAR"] = "Regular";
109
- BodyShapes["OVERWEIGHT"] = "Acima do Peso";
110
- BodyShapes["ATHLETIC"] = "Atl\u00E9tico";
111
- BodyShapes["MUSCULAR"] = "Musculoso";
112
- })(BodyShapes || (BodyShapes = {}));
113
-
114
- var BodyTattoos;
115
- (function (BodyTattoos) {
116
- BodyTattoos["NONE"] = "Nenhuma";
117
- BodyTattoos["HAS_DOESNT_CARE"] = "Tenho mas n\u00E3o cuido";
118
- BodyTattoos["HAS_CARE_LOT"] = "Tenho e cuido bastante";
119
- })(BodyTattoos || (BodyTattoos = {}));
120
-
121
- var FaceSkinOilinesses;
122
- (function (FaceSkinOilinesses) {
123
- FaceSkinOilinesses["DRY"] = "Seca";
124
- FaceSkinOilinesses["OILY"] = "Oleaosa";
125
- FaceSkinOilinesses["MIXED"] = "Mista";
126
- FaceSkinOilinesses["NORMAL"] = "Normal";
127
- FaceSkinOilinesses["DONT_KNOW"] = "Eu n\u00E3o sei como dizer";
128
- })(FaceSkinOilinesses || (FaceSkinOilinesses = {}));
129
-
130
- var FaceSkinProblems;
131
- (function (FaceSkinProblems) {
132
- FaceSkinProblems["NO_PROBLEMS"] = "Sem problemas";
133
- FaceSkinProblems["DARK_CIRCLES"] = "Olheiras";
134
- FaceSkinProblems["WRINKLES"] = "Rugas";
135
- FaceSkinProblems["BLACKHEADS_PIMPLES"] = "Cravos e Espinhas";
136
- FaceSkinProblems["STAINS"] = "Manchas";
137
- FaceSkinProblems["FRECKLES"] = "Sardas";
138
- FaceSkinProblems["SENSITIVE"] = "Sens\u00EDvel";
139
- FaceSkinProblems["PHOTOSENSITIVE"] = "Fotossens\u00EDvel";
140
- })(FaceSkinProblems || (FaceSkinProblems = {}));
141
-
142
- var FaceSkinTones;
143
- (function (FaceSkinTones) {
144
- FaceSkinTones["VERY_CLEAR"] = "Muito Clara";
145
- FaceSkinTones["CLEAR"] = "Clara";
146
- FaceSkinTones["MEDIUM_LIGHT"] = "Clara M\u00E9dia";
147
- FaceSkinTones["MEDIUM_DARK"] = "Escura M\u00E9dia";
148
- FaceSkinTones["DARK"] = "Escura";
149
- FaceSkinTones["VERY_DARK"] = "Muito Escura";
150
- })(FaceSkinTones || (FaceSkinTones = {}));
151
-
152
- var FamilyIncomes;
153
- (function (FamilyIncomes) {
154
- FamilyIncomes["UNTIL_3000"] = "At\u00E9 R$3.000";
155
- FamilyIncomes["SINCE_3001_TO_7000"] = "De R$3.001 a R$7.000";
156
- FamilyIncomes["SINCE_7001_TO_10000"] = "De R$7.001 a R$10.000";
157
- FamilyIncomes["SINCE_10001_TO_15000"] = "De R$10.001 a R$15.000";
158
- FamilyIncomes["GRAN_THAN_15000"] = "Mais de R$15.000";
159
- FamilyIncomes["NOW_ANSWER"] = "Prefiro nao responder";
160
- })(FamilyIncomes || (FamilyIncomes = {}));
161
-
162
- var FragranceImportances;
163
- (function (FragranceImportances) {
164
- FragranceImportances["NOT_INTERESTED"] = "N\u00E3o tenho interesse";
165
- FragranceImportances["LIKE_ALWAYS_USE_SAME"] = "Gosto de perfumes, mas uso sempre os mesmos";
166
- FragranceImportances["LIKE_INNOVATE"] = "Gosto de inovar e conhecer novas fragr\u00E2ncias";
167
- })(FragranceImportances || (FragranceImportances = {}));
168
-
169
- var HairColors;
170
- (function (HairColors) {
171
- HairColors["BLACK"] = "Preto";
172
- HairColors["DARK_BROWN"] = "Castanho Escuro";
173
- HairColors["LIGHT_BROWN"] = "Castanho Claro";
174
- HairColors["DARK_BLONDE"] = "Loiro Escuro";
175
- HairColors["LIGHT_BLONDE"] = "Loiro Claro";
176
- HairColors["WHITE_GRAY"] = "Branco/Grisalho";
177
- HairColors["REDHEAD"] = "Ruivo";
178
- HairColors["OTHER"] = "RuiOutroo";
179
- })(HairColors || (HairColors = {}));
180
-
181
- var HairProblems;
182
- (function (HairProblems) {
183
- HairProblems["NO_PROBLEMS"] = "Sem problemas";
184
- HairProblems["DANCRUFF"] = "Caspa";
185
- HairProblems["LOSS"] = "Queda";
186
- HairProblems["OILY"] = "Oleosidade";
187
- HairProblems["DRYNESS"] = "Ressecamento";
188
- HairProblems["CHEMICAL"] = "Quimica";
189
- HairProblems["WHITE_HAIR"] = "Cabelos Brancos";
190
- HairProblems["REBEL_WIRES"] = "Fios Rebeldes";
191
- })(HairProblems || (HairProblems = {}));
192
-
193
- var HairStrands;
194
- (function (HairStrands) {
195
- HairStrands["NORMAL"] = "Fio Normal";
196
- HairStrands["DRY"] = "Fio Seco";
197
- HairStrands["OILY"] = "Fio Oleoso";
198
- HairStrands["MIXED"] = "Fio Misto";
199
- HairStrands["FINE"] = "Fio Fino";
200
- HairStrands["THICK"] = "Fio Grosso";
201
- })(HairStrands || (HairStrands = {}));
202
-
203
- var HairTypes;
204
- (function (HairTypes) {
205
- HairTypes["Smooth"] = "Liso";
206
- HairTypes["WAVY"] = "Ondulado";
207
- HairTypes["CURLY"] = "Cacheado";
208
- HairTypes["FRIZZY"] = "Crespo";
209
- HairTypes["BALD"] = "Sou careca";
210
- })(HairTypes || (HairTypes = {}));
211
-
212
- var OfficePosition;
213
- (function (OfficePosition) {
214
- OfficePosition["Intern"] = "Estagi\u00E1rio";
215
- OfficePosition["Analyst"] = "Analista";
216
- OfficePosition["Manager"] = "Gerente";
217
- OfficePosition["Director"] = "Diretor";
218
- })(OfficePosition || (OfficePosition = {}));
219
-
220
- var ProductSpents;
221
- (function (ProductSpents) {
222
- ProductSpents["UNTIL_50"] = "At\u00E9 R$50";
223
- ProductSpents["SINCE_51_TO_100"] = "De R$51 a R$100";
224
- ProductSpents["SINCE_101_TO_200"] = "De R$101 a R$200";
225
- ProductSpents["SINCE_201_TO_300"] = "De R$201 a R$300";
226
- ProductSpents["GRAN_THAN_300"] = "Mais de R$300";
227
- ProductSpents["NOW_ANSWER"] = "Prefiro nao responder";
228
- })(ProductSpents || (ProductSpents = {}));
229
-
230
- var UserType;
231
- (function (UserType) {
232
- UserType["B2C"] = "Cliente Transacional";
233
- UserType["GlamGirl"] = "Glamgirl";
234
- UserType["MensBoy"] = "Mensboy";
235
- UserType["B2B"] = "Company";
236
- UserType["Collaborator"] = "Funcion\u00E1rio";
237
- UserType["Influencer"] = "Influencer";
238
- })(UserType || (UserType = {}));
239
-
240
- var BillingStatus;
241
- (function (BillingStatus) {
242
- BillingStatus["PAYED"] = "PAGO";
243
- })(BillingStatus || (BillingStatus = {}));
244
-
245
- var EditionStatus;
246
- (function (EditionStatus) {
247
- EditionStatus["ALLOCATION_WAITING"] = "Aguardando aloca\u00E7\u00E3o";
248
- EditionStatus["SHIPPED"] = "Enviado";
249
- })(EditionStatus || (EditionStatus = {}));
250
-
251
- var PaymentType;
252
- (function (PaymentType) {
253
- PaymentType["AQUISITION"] = "Aquisi\u00E7\u00E3o";
254
- PaymentType["RENEWAL"] = "Renova\u00E7\u00E3o";
255
- PaymentType["FREIGHT"] = "mudan\u00E7a de endere\u00E7o, Frete";
256
- })(PaymentType || (PaymentType = {}));
257
-
258
- var Status;
259
- (function (Status) {
260
- Status["ACTIVE"] = "active";
261
- Status["CANCELLED"] = "Cancelado";
262
- })(Status || (Status = {}));
263
-
264
- class Edition extends BaseModel {
265
- identifierFields() {
266
- return ['id'];
267
- }
268
- }
269
-
270
- class Payment extends BaseModel {
271
- identifierFields() {
272
- return ['id'];
273
- }
274
- }
275
- __decorate([
276
- Expose({ name: 'refuse_reason' }),
277
- __metadata("design:type", String)
278
- ], Payment.prototype, "refuseReason", void 0);
279
- __decorate([
280
- Expose({ name: 'status_reason' }),
281
- __metadata("design:type", String)
282
- ], Payment.prototype, "statusReason", void 0);
283
- __decorate([
284
- Expose({ name: 'acquirer_response_code' }),
285
- __metadata("design:type", String)
286
- ], Payment.prototype, "acquirerResponseCode", void 0);
287
- __decorate([
288
- Expose({ name: 'acquirer_name' }),
289
- __metadata("design:type", String)
290
- ], Payment.prototype, "acquirerName", void 0);
291
- __decorate([
292
- Expose({ name: 'acquirer_id' }),
293
- __metadata("design:type", String)
294
- ], Payment.prototype, "acquirerId", void 0);
295
- __decorate([
296
- Expose({ name: 'authorization_code' }),
297
- __metadata("design:type", String)
298
- ], Payment.prototype, "authorizationCode", void 0);
299
- __decorate([
300
- Expose({ name: 'soft_descriptor' }),
301
- __metadata("design:type", String)
302
- ], Payment.prototype, "softDescriptor", void 0);
303
- __decorate([
304
- Expose({ name: 'date_created' }),
305
- __metadata("design:type", String)
306
- ], Payment.prototype, "dateCreated", void 0);
307
- __decorate([
308
- Expose({ name: 'date_updated' }),
309
- __metadata("design:type", String)
310
- ], Payment.prototype, "dateUpdated", void 0);
311
- __decorate([
312
- Expose({ name: 'authorized_amount' }),
313
- __metadata("design:type", Number)
314
- ], Payment.prototype, "authorizedAmount", void 0);
315
- __decorate([
316
- Expose({ name: 'paid_amount' }),
317
- __metadata("design:type", Number)
318
- ], Payment.prototype, "paidAmount", void 0);
319
- __decorate([
320
- Expose({ name: 'refunded_amount' }),
321
- __metadata("design:type", Number)
322
- ], Payment.prototype, "refundedAmount", void 0);
323
- __decorate([
324
- Expose({ name: 'card_holder_name' }),
325
- __metadata("design:type", String)
326
- ], Payment.prototype, "cardHolderName", void 0);
327
- __decorate([
328
- Expose({ name: 'card_last_digits' }),
329
- __metadata("design:type", String)
330
- ], Payment.prototype, "cardLastDigits", void 0);
331
- __decorate([
332
- Expose({ name: 'card_first_digits' }),
333
- __metadata("design:type", String)
334
- ], Payment.prototype, "cardFirstDigits", void 0);
335
- __decorate([
336
- Expose({ name: 'card_brand' }),
337
- __metadata("design:type", String)
338
- ], Payment.prototype, "cardBrand", void 0);
339
- __decorate([
340
- Expose({ name: 'card_pin_mode' }),
341
- __metadata("design:type", String)
342
- ], Payment.prototype, "cardPinMode", void 0);
343
- __decorate([
344
- Expose({ name: 'card_magstripe_fallback' }),
345
- __metadata("design:type", Boolean)
346
- ], Payment.prototype, "cardMagstripeFallback", void 0);
347
- __decorate([
348
- Expose({ name: 'cvm_pin' }),
349
- __metadata("design:type", Boolean)
350
- ], Payment.prototype, "cvmPin", void 0);
351
- __decorate([
352
- Expose({ name: 'postback_url' }),
353
- __metadata("design:type", String)
354
- ], Payment.prototype, "postbackUrl", void 0);
355
- __decorate([
356
- Expose({ name: 'payment_method' }),
357
- __metadata("design:type", String)
358
- ], Payment.prototype, "paymentMethod", void 0);
359
- __decorate([
360
- Expose({ name: 'capture_method' }),
361
- __metadata("design:type", String)
362
- ], Payment.prototype, "captureMethod", void 0);
363
- __decorate([
364
- Expose({ name: 'antifraud_score' }),
365
- __metadata("design:type", String)
366
- ], Payment.prototype, "antifraudScore", void 0);
367
- __decorate([
368
- Expose({ name: 'boleto_url' }),
369
- __metadata("design:type", String)
370
- ], Payment.prototype, "boletoUrl", void 0);
371
- __decorate([
372
- Expose({ name: 'boleto_barcode' }),
373
- __metadata("design:type", String)
374
- ], Payment.prototype, "boletoBarcode", void 0);
375
- __decorate([
376
- Expose({ name: 'boleto_expiration_date' }),
377
- __metadata("design:type", String)
378
- ], Payment.prototype, "boletoExpirationDate", void 0);
379
- __decorate([
380
- Expose({ name: 'subscription_id' }),
381
- __metadata("design:type", String)
382
- ], Payment.prototype, "subscriptionId", void 0);
383
- __decorate([
384
- Expose({ name: 'split_rules' }),
385
- __metadata("design:type", String)
386
- ], Payment.prototype, "splitRules", void 0);
387
- __decorate([
388
- Expose({ name: 'antifraud_metadata' }),
389
- __metadata("design:type", Object)
390
- ], Payment.prototype, "antifraudMetadata", void 0);
391
- __decorate([
392
- Expose({ name: 'reference_key' }),
393
- __metadata("design:type", String)
394
- ], Payment.prototype, "referenceKey", void 0);
395
- __decorate([
396
- Expose({ name: 'local_transaction_id' }),
397
- __metadata("design:type", String)
398
- ], Payment.prototype, "localTransactionId", void 0);
399
- __decorate([
400
- Expose({ name: 'local_time' }),
401
- __metadata("design:type", String)
402
- ], Payment.prototype, "localTime", void 0);
403
- __decorate([
404
- Expose({ name: 'fraud_covered' }),
405
- __metadata("design:type", Boolean)
406
- ], Payment.prototype, "fraudCovered", void 0);
407
- __decorate([
408
- Expose({ name: 'fraud_reimbursed' }),
409
- __metadata("design:type", String)
410
- ], Payment.prototype, "fraudReimbursed", void 0);
411
- __decorate([
412
- Expose({ name: 'order_id' }),
413
- __metadata("design:type", String)
414
- ], Payment.prototype, "orderId", void 0);
415
- __decorate([
416
- Expose({ name: 'risk_level' }),
417
- __metadata("design:type", String)
418
- ], Payment.prototype, "riskLevel", void 0);
419
- __decorate([
420
- Expose({ name: 'receipt_url' }),
421
- __metadata("design:type", String)
422
- ], Payment.prototype, "receiptUrl", void 0);
423
- __decorate([
424
- Expose({ name: 'private_label' }),
425
- __metadata("design:type", String)
426
- ], Payment.prototype, "privateLabel", void 0);
427
- __decorate([
428
- Expose({ name: 'pix_qr_code' }),
429
- __metadata("design:type", String)
430
- ], Payment.prototype, "pixQrCode", void 0);
431
- __decorate([
432
- Expose({ name: 'pix_expiration_date' }),
433
- __metadata("design:type", String)
434
- ], Payment.prototype, "pixExpirationDate", void 0);
435
-
436
- class SubscriptionPayment extends BaseModel {
437
- identifierFields() {
438
- return ['id'];
439
- }
440
- }
441
- __decorate([
442
- Type(() => Payment),
443
- __metadata("design:type", Payment)
444
- ], SubscriptionPayment.prototype, "payment", void 0);
445
-
446
- class Address extends BaseModel {
447
- }
448
-
449
- var CheckoutTypes;
450
- (function (CheckoutTypes) {
451
- CheckoutTypes[CheckoutTypes["ECOMMERCE"] = 1] = "ECOMMERCE";
452
- CheckoutTypes[CheckoutTypes["SUBSCRIPTION"] = 2] = "SUBSCRIPTION";
453
- CheckoutTypes[CheckoutTypes["ALL"] = 3] = "ALL";
454
- })(CheckoutTypes || (CheckoutTypes = {}));
455
-
456
- class Base {
457
- constructor(...args) {
458
- Object.assign(this, ...args);
459
- }
460
- }
461
-
462
- var CouponTypes;
463
- (function (CouponTypes) {
464
- CouponTypes[CouponTypes["ABSOLUTE"] = 1] = "ABSOLUTE";
465
- CouponTypes[CouponTypes["PERCENTAGE"] = 2] = "PERCENTAGE";
466
- // FINANCIAL = 1,
467
- // PRODUCT,
468
- // GIFTCARD,
469
- // VOUCHER,
470
- })(CouponTypes || (CouponTypes = {}));
471
-
472
- var CouponSubtypes;
473
- (function (CouponSubtypes) {
474
- CouponSubtypes[CouponSubtypes["ABSOLUTE"] = 1] = "ABSOLUTE";
475
- CouponSubtypes[CouponSubtypes["PERCENTAGE"] = 2] = "PERCENTAGE";
476
- })(CouponSubtypes || (CouponSubtypes = {}));
477
-
478
- var Exclusivities;
479
- (function (Exclusivities) {
480
- Exclusivities[Exclusivities["ALL_USERS"] = 1] = "ALL_USERS";
481
- Exclusivities[Exclusivities["SPECIFIC_USER"] = 2] = "SPECIFIC_USER";
482
- Exclusivities[Exclusivities["COLLABORATORS"] = 3] = "COLLABORATORS";
483
- Exclusivities[Exclusivities["ACTIVE_SUBSCRIBER"] = 4] = "ACTIVE_SUBSCRIBER";
484
- Exclusivities[Exclusivities["INACTIVE_SUBSCRIBER"] = 5] = "INACTIVE_SUBSCRIBER";
485
- })(Exclusivities || (Exclusivities = {}));
486
-
487
- const COUPON_EXPIRATION = 60 * 60 * 24 * 30;
488
- class Coupon extends BaseModel {
489
- get isInfluencer() {
490
- return !isNil(this.influencerEmail);
491
- }
492
- identifierFields() {
493
- return ['id'];
494
- }
495
- static createCoupon(userId) {
496
- return this.toInstance({
497
- nickname: `${Date.now()}`,
498
- type: CouponTypes.ABSOLUTE,
499
- checkoutType: CheckoutTypes.ECOMMERCE,
500
- discount: 30,
501
- user: userId,
502
- useLimit: 1,
503
- useLimitPerUser: true,
504
- createdAt: new Date(Date.now()),
505
- beginAt: new Date(Date.now()),
506
- expiresIn: new Date(Date.now() + COUPON_EXPIRATION),
507
- });
508
- }
509
- }
510
- __decorate([
511
- Expose({ name: 'checkout_type' }),
512
- __metadata("design:type", Number)
513
- ], Coupon.prototype, "checkoutType", void 0);
514
- __decorate([
515
- Expose({ name: 'exclusivity_type' }),
516
- __metadata("design:type", Number)
517
- ], Coupon.prototype, "exclusivityType", void 0);
518
-
519
- class SubscriptionPlan extends BaseModel {
520
- identifierFields() {
521
- return ['id'];
522
- }
523
- }
524
-
525
- class BeautyProfile extends BaseModel {
526
- toPlain() {
527
- const plain = super.toPlain();
528
- delete plain.id;
529
- return plain;
530
- }
531
- identifierFields() {
532
- return ['id'];
533
- }
534
- }
535
-
536
- class User extends BaseModel {
537
- static toInstance(data) {
538
- const instance = super.toInstance(data);
539
- if (!isNil(data.firstName))
540
- instance.displayName = `${data.firstName}${!isNil(data.lastName) ? ` ${data.lastName}` : ''}`;
541
- return instance;
542
- }
543
- identifierFields() {
544
- return ['id'];
545
- }
546
- toPlain() {
547
- const plain = super.toPlain();
548
- delete plain.beautyProfile;
549
- return plain;
550
- }
551
- }
552
- __decorate([
553
- Type(() => BeautyProfile),
554
- __metadata("design:type", BeautyProfile)
555
- ], User.prototype, "beautyProfile", void 0);
556
-
557
- class Subscription extends BaseModel {
558
- identifierFields() {
559
- return ['id'];
560
- }
561
- }
562
- __decorate([
563
- Type(() => User),
564
- __metadata("design:type", User)
565
- ], Subscription.prototype, "user", void 0);
566
- __decorate([
567
- Type(() => SubscriptionPlan),
568
- __metadata("design:type", SubscriptionPlan)
569
- ], Subscription.prototype, "subscriptionPlan", void 0);
570
- __decorate([
571
- Type(() => Address),
572
- __metadata("design:type", Address)
573
- ], Subscription.prototype, "shippingAddress", void 0);
574
- __decorate([
575
- Type(() => Address),
576
- __metadata("design:type", Address)
577
- ], Subscription.prototype, "billingAddress", void 0);
578
- __decorate([
579
- Type(() => Coupon),
580
- __metadata("design:type", Coupon)
581
- ], Subscription.prototype, "coupon", void 0);
582
- __decorate([
583
- Type(() => Edition),
584
- __metadata("design:type", Array)
585
- ], Subscription.prototype, "editions", void 0);
586
- __decorate([
587
- Type(() => SubscriptionPayment),
588
- __metadata("design:type", Array)
589
- ], Subscription.prototype, "payment", void 0);
590
-
591
- class UserAddress extends Address {
592
- identifierFields() {
593
- return ['id'];
594
- }
595
- }
596
-
597
- class UserPaymentMethod extends BaseModel {
598
- identifierFields() {
599
- return ['id'];
600
- }
601
- }
602
-
603
- class Lead extends BaseModel {
604
- identifierFields() {
605
- return ['id'];
606
- }
607
- }
608
-
609
- class UnauthorizedError extends Error {
610
- constructor(message) {
611
- super(message);
612
- this.message = message;
613
- }
614
- }
615
-
616
- var SignInMethods;
617
- (function (SignInMethods) {
618
- SignInMethods["EMAIL_PASSWORD"] = "email_password";
619
- SignInMethods["GOOGLE"] = "google";
620
- })(SignInMethods || (SignInMethods = {}));
621
- class Authentication {
622
- constructor(authService, userRepository) {
623
- this.authService = authService;
624
- this.userRepository = userRepository;
625
- }
626
- signIn({ email, password }, signInMethod) {
627
- return __awaiter(this, void 0, void 0, function* () {
628
- const method = this.getServiceByMethod(signInMethod);
629
- const userAuth = yield this.authService[method]({ email, password });
630
- const user = this.userRepository.get(userAuth);
631
- if (!isNil(user))
632
- return user;
633
- if (/^.+@b4a.com.br$/.test(userAuth.email))
634
- return this.createsUserByCredential(userAuth);
635
- throw new UnauthorizedError('Invalid credentials');
636
- });
637
- }
638
- getServiceByMethod(signInMethod) {
639
- return signInMethod === SignInMethods.EMAIL_PASSWORD ? 'signInWithEmailAndPassword' : 'signInWithGoogle';
640
- }
641
- createsUserByCredential(user) {
642
- var _a;
643
- return __awaiter(this, void 0, void 0, function* () {
644
- const [firstName, lastName] = (_a = user.displayName) === null || _a === void 0 ? void 0 : _a.split(/\s/);
645
- const person = User.toInstance(Object.assign(Object.assign({}, user), { cpf: '', birthday: new Date(), firstName,
646
- lastName, acceptsNewsletter: false, area: Area.Transactional, officePosition: OfficePosition.Intern, type: UserType.Collaborator }));
647
- return this.userRepository.create(person);
648
- });
649
- }
650
- }
651
-
652
- class UserAlreadyRegisteredError extends Error {
653
- constructor(message) {
654
- super(message);
655
- this.message = message;
656
- }
657
- }
658
-
659
- class WeakPasswordError extends Error {
660
- constructor(message = 'Weak password') {
661
- super(message);
662
- this.message = message;
663
- }
664
- }
665
-
666
- class Register {
667
- constructor(registerService, userRepository) {
668
- this.registerService = registerService;
669
- this.userRepository = userRepository;
670
- }
671
- register(params) {
672
- return __awaiter(this, void 0, void 0, function* () {
673
- const email = params.email.toLocaleLowerCase();
674
- const displayName = `${params.firstName} ${params.lastName}`;
675
- if (yield this.userRepository.checkIfExistsByField('cpf', params.cpf))
676
- throw new UserAlreadyRegisteredError(`Usuário com CPF ${params.cpf} já registrado.`);
677
- if (yield this.userRepository.checkIfExistsByField('email', params.email))
678
- throw new UserAlreadyRegisteredError(`Usuário com e-mail ${params.email} já registrado.`);
679
- const auth = yield this.registerService.register({
680
- birthday: params.birthday,
681
- email,
682
- firstName: params.firstName,
683
- lastName: params.lastName,
684
- cpf: params.cpf,
685
- displayName,
686
- phone: params.phone,
687
- password: params.password,
688
- });
689
- delete params.password;
690
- const user = yield this.userRepository.create(Object.assign(Object.assign({}, params), { id: auth.id, email,
691
- displayName, type: UserType.B2C, dateCreated: new Date(), dateModified: new Date() }));
692
- return user;
693
- });
694
- }
695
- }
696
-
697
- class SignOut {
698
- constructor(authService) {
699
- this.authService = authService;
700
- }
701
- signOut() {
702
- return __awaiter(this, void 0, void 0, function* () {
703
- yield this.authService.signOut();
704
- });
705
- }
706
- }
707
-
708
- class RecoveryPassword {
709
- constructor(authService) {
710
- this.authService = authService;
711
- }
712
- sendEmail(email) {
713
- return __awaiter(this, void 0, void 0, function* () {
714
- yield this.authService.sendPasswordResetEmail(email);
715
- });
716
- }
717
- }
718
-
719
- var Shops;
720
- (function (Shops) {
721
- Shops["MENSMARKET"] = "mensmarket";
722
- Shops["GLAMSHOP"] = "Glamshop";
723
- Shops["GLAMPOINTS"] = "Glampoints";
724
- Shops["ALL"] = "ALL";
725
- })(Shops || (Shops = {}));
726
-
727
- class Category extends BaseModel {
728
- identifierFields() {
729
- return ['id'];
730
- }
731
- }
732
-
733
- class Product extends BaseModel {
734
- identifierFields() {
735
- return ['id'];
736
- }
737
- getInfoByShop(shop) {
738
- var _a, _b, _c, _d, _e, _f;
739
- return Object.assign(Object.assign(Object.assign({}, (((_b = (_a = this.description) === null || _a === void 0 ? void 0 : _a[shop]) === null || _b === void 0 ? void 0 : _b.description) ? { description: (_d = (_c = this.description) === null || _c === void 0 ? void 0 : _c[shop]) === null || _d === void 0 ? void 0 : _d.description } : {})), (((_e = this.price) === null || _e === void 0 ? void 0 : _e[shop]) || {})), (((_f = this.stock) === null || _f === void 0 ? void 0 : _f[shop]) || {}));
740
- }
741
- }
742
-
743
- class Variant extends BaseModel {
744
- identifierFields() {
745
- return ['id'];
746
- }
747
- }
748
-
749
- var OrderStatus;
750
- (function (OrderStatus) {
751
- OrderStatus["AGUARDANDO_PAGAMENTO"] = "Aguardando pagamento";
752
- OrderStatus["EM_PREPARO"] = "Preparando pedido";
753
- OrderStatus["NF_EMITIDA"] = "Nota Fiscal Emitida";
754
- OrderStatus["AGUARDANDO_ENVIO"] = "Aguardando Transaportadora";
755
- OrderStatus["ENVIADO"] = "Pedido Enviado";
756
- OrderStatus["ENTREGUE"] = "Pedido entregue";
757
- OrderStatus["CANCELADO"] = "Cancelado";
758
- OrderStatus["CREDIT_CARD"] = "credit_card";
759
- })(OrderStatus || (OrderStatus = {}));
760
-
761
- class LineItem extends Product {
762
- }
763
-
764
- class ShippingMethod extends BaseModel {
765
- identifierFields() {
766
- return ['id'];
767
- }
768
- }
769
-
770
- class Checkout extends BaseModel {
771
- identifierFields() {
772
- return ['id'];
773
- }
774
- }
775
- __decorate([
776
- Type(() => LineItem),
777
- __metadata("design:type", Array)
778
- ], Checkout.prototype, "lineItems", void 0);
779
- __decorate([
780
- Type(() => User),
781
- __metadata("design:type", User)
782
- ], Checkout.prototype, "user", void 0);
783
- __decorate([
784
- Type(() => Address),
785
- __metadata("design:type", Address)
786
- ], Checkout.prototype, "shippingAddress", void 0);
787
- __decorate([
788
- Type(() => Address),
789
- __metadata("design:type", Address)
790
- ], Checkout.prototype, "billingAddress", void 0);
791
- __decorate([
792
- Type(() => ShippingMethod),
793
- __metadata("design:type", ShippingMethod)
794
- ], Checkout.prototype, "shipping", void 0);
795
- __decorate([
796
- Type(() => Coupon),
797
- __metadata("design:type", Coupon)
798
- ], Checkout.prototype, "coupon", void 0);
799
-
800
- class Order extends Checkout {
801
- }
802
- __decorate([
803
- Type(() => Payment),
804
- __metadata("design:type", Payment)
805
- ], Order.prototype, "payment", void 0);
806
-
807
- class CheckoutSubscription extends BaseModel {
808
- identifierFields() {
809
- return ['id'];
810
- }
811
- }
812
- __decorate([
813
- Type(() => Address),
814
- __metadata("design:type", Address)
815
- ], CheckoutSubscription.prototype, "shippingAddress", void 0);
816
- __decorate([
817
- Type(() => Address),
818
- __metadata("design:type", Address)
819
- ], CheckoutSubscription.prototype, "billingAddress", void 0);
820
- __decorate([
821
- Type(() => SubscriptionPlan),
822
- __metadata("design:type", SubscriptionPlan)
823
- ], CheckoutSubscription.prototype, "subscriptionPlan", void 0);
824
- __decorate([
825
- Type(() => Coupon),
826
- __metadata("design:type", Coupon)
827
- ], CheckoutSubscription.prototype, "coupon", void 0);
828
-
829
- class Buy2Win extends BaseModel {
830
- identifierFields() {
831
- return ['id'];
832
- }
833
- }
834
- __decorate([
835
- Type(() => Category),
836
- __metadata("design:type", Array)
837
- ], Buy2Win.prototype, "categories", void 0);
838
-
839
- var FilterType;
840
- (function (FilterType) {
841
- FilterType["ACCESSORY_IMPORTANCE"] = "accessoryImportance";
842
- FilterType["BEARD_PROBLEMS"] = "beardProblems";
843
- FilterType["BEARD_SIZE"] = "beardSize";
844
- FilterType["BEAUTY_PRODUCT_IMPORTANCE"] = "beautyProductImportance";
845
- FilterType["BODY_PROBLEMS"] = "bodyProblems";
846
- FilterType["BODY_SHAPE"] = "bodyShape";
847
- FilterType["BODY_TATTOOS"] = "bodyTattoos";
848
- FilterType["FACE_SKIN_OILINESS"] = "faceSkinOiliness";
849
- FilterType["FACE_SKIN_PROBLEMS"] = "faceSkinProblems";
850
- FilterType["FACE_SKIN_TONE"] = "faceSkinTone";
851
- FilterType["FAMILY_INCOME"] = "familyIncome";
852
- FilterType["FRAGRANCE_IMPORTANCE"] = "fragranceImportance";
853
- FilterType["HAIR_COLOR"] = "hairColor";
854
- FilterType["HAIR_PROBLEMS"] = "hairProblems";
855
- FilterType["HAIR_STRANDS"] = "hairStrands";
856
- FilterType["HAIR_TYPE"] = "hairType";
857
- FilterType["PRODUCT_SPENT"] = "productSpent";
858
- })(FilterType || (FilterType = {}));
859
-
860
- var QuestionsFilters;
861
- (function (QuestionsFilters) {
862
- QuestionsFilters["ACCESSORY_IMPORTANCE"] = "Voc\u00EA gosta de usar acess\u00F3rios masculinos?";
863
- QuestionsFilters["BEARD_PROBLEMS"] = "Quais problemas de barba voc\u00EA tem?";
864
- QuestionsFilters["BEARD_SIZE"] = "Quais caracteristicas se aplicam \u00E0 sua BARBA/BIGODE?";
865
- QuestionsFilters["BEAUTY_PRODUCT_IMPORTANCE"] = "O que descreve melhor a sua rela\u00E7\u00E3o com produtos de beleza e cuidados pessoais?";
866
- QuestionsFilters["BODY_PROBLEMS"] = "Qual ou quais preocupa\u00E7\u00F5es voc\u00EA tem com a pele do seu corpo?";
867
- QuestionsFilters["BODY_SHAPE"] = "Qual e seu tipo de CORPO?";
868
- QuestionsFilters["BODY_TATTOOS"] = "Voc\u00EA tem alguma tatuagem?";
869
- QuestionsFilters["FACE_SKIN_OILINESS"] = "Quais caracteristicas se aplicam \u00E0 pele do seu ROSTO?";
870
- QuestionsFilters["FACE_SKIN_PROBLEMS"] = "Quais problemas a pele do seu rosto tem?";
871
- QuestionsFilters["FACE_SKIN_TONE"] = "Qual seu tom de pele?";
872
- QuestionsFilters["FAMILY_INCOME"] = "Qual a sua renda familiar mensal (considerando a renda de todas as pessoas que moram com voc\u00EA)?";
873
- QuestionsFilters["FRAGRANCE_IMPORTANCE"] = "O quanto voc\u00EA gosta de experimentar perfumes?";
874
- QuestionsFilters["HAIR_COLOR"] = "Seu cabelo \u00E9 naturalmente de qual COR?";
875
- QuestionsFilters["HAIR_PROBLEMS"] = "Qual ou quais problemas/caracter\u00EDstica de cabelo te preocupam?";
876
- QuestionsFilters["HAIR_STRANDS"] = "Como s\u00E3o seus fios?";
877
- QuestionsFilters["HAIR_TYPE"] = "Como \u00E9 o seu cabelo?";
878
- QuestionsFilters["PRODUCT_SPENT"] = "Qual \u00E9 o seu nivel de gasto mensal em produtos de beleza e cuidados pessoais?";
879
- })(QuestionsFilters || (QuestionsFilters = {}));
880
-
881
- class BeautyQuestionsHelper {
882
- static getAnswers(filter) {
883
- switch (filter) {
884
- case FilterType.ACCESSORY_IMPORTANCE:
885
- return AccessoryImportances;
886
- case FilterType.BEARD_PROBLEMS:
887
- return BeardProblems;
888
- case FilterType.BEARD_SIZE:
889
- return BeardSizes;
890
- case FilterType.BEAUTY_PRODUCT_IMPORTANCE:
891
- return BeautyProductImportances;
892
- case FilterType.BODY_PROBLEMS:
893
- return BodyProblems;
894
- case FilterType.BODY_SHAPE:
895
- return BodyShapes;
896
- case FilterType.BODY_TATTOOS:
897
- return BodyTattoos;
898
- case FilterType.FACE_SKIN_OILINESS:
899
- return FaceSkinOilinesses;
900
- case FilterType.FACE_SKIN_PROBLEMS:
901
- return FaceSkinProblems;
902
- case FilterType.FACE_SKIN_TONE:
903
- return FaceSkinTones;
904
- case FilterType.FAMILY_INCOME:
905
- return FamilyIncomes;
906
- case FilterType.FRAGRANCE_IMPORTANCE:
907
- return FragranceImportances;
908
- case FilterType.HAIR_COLOR:
909
- return HairColors;
910
- case FilterType.HAIR_PROBLEMS:
911
- return HairProblems;
912
- case FilterType.HAIR_STRANDS:
913
- return HairStrands;
914
- case FilterType.HAIR_TYPE:
915
- return HairTypes;
916
- case FilterType.PRODUCT_SPENT:
917
- return ProductSpents;
918
- }
919
- }
920
- static getQuestions(filter) {
921
- return QuestionsFilters[filter];
922
- }
923
- }
924
-
925
- class Home extends BaseModel {
926
- identifierFields() {
927
- return ['id'];
928
- }
929
- }
930
-
931
- class ShopMenu extends BaseModel {
932
- identifierFields() {
933
- return ['id'];
934
- }
935
- }
936
-
937
- class InvalidArgumentError extends Error {
938
- constructor(message) {
939
- super(message);
940
- this.message = message;
941
- }
942
- }
943
-
944
- class RequiredArgumentError extends Error {
945
- constructor(args) {
946
- super(`Required arguments: ${args.join(', ')}`);
947
- this.args = args;
948
- this.arguments = args;
949
- }
950
- }
951
-
952
- class NotFoundError extends Error {
953
- constructor(message) {
954
- super(message);
955
- this.message = message;
956
- }
957
- }
958
-
959
- class DuplicatedResultsError extends Error {
960
- constructor(message) {
961
- super(message);
962
- this.message = message;
963
- }
964
- }
965
-
966
- class AxiosAdapter {
967
- constructor(config) {
968
- this.config = config;
969
- }
970
- query(index, query) {
971
- return __awaiter(this, void 0, void 0, function* () {
972
- const { data } = yield axios({
973
- url: `${this.config.url}/${index}`,
974
- method: 'POST',
975
- headers: { Authorization: `Basic ${this.config.credential}` },
976
- data: query,
977
- });
978
- return {
979
- total: data.hits.total.value,
980
- hits: data.hits.hits,
981
- };
982
- });
983
- }
984
- }
985
-
986
- class ProductsIndex {
987
- constructor(adapter) {
988
- this.adapter = adapter;
989
- }
990
- findById(ids, options) {
991
- return __awaiter(this, void 0, void 0, function* () {
992
- const publishedField = options.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
993
- const fields = [
994
- 'brand',
995
- 'id',
996
- 'images',
997
- 'miniatures',
998
- 'name',
999
- 'price',
1000
- 'sku',
1001
- 'stock',
1002
- 'slug',
1003
- 'reviews',
1004
- 'pricePaid',
1005
- 'isGift',
1006
- 'stock',
1007
- 'weight',
1008
- 'tags',
1009
- 'hasVariants',
1010
- ];
1011
- const { hits } = yield this.adapter.query('products/_search', Object.assign({ _source: fields, query: {
1012
- bool: {
1013
- filter: [
1014
- {
1015
- terms: {
1016
- _id: ids,
1017
- },
1018
- },
1019
- {
1020
- term: {
1021
- [publishedField]: true,
1022
- },
1023
- },
1024
- ...(options.hasStock
1025
- ? [
1026
- {
1027
- range: {
1028
- 'stock.quantity': {
1029
- gt: 0,
1030
- },
1031
- },
1032
- },
1033
- ]
1034
- : []),
1035
- ],
1036
- },
1037
- } }, (options.size ? { size: options.size } : {})));
1038
- return hits.map((hit) => Product.toInstance(hit._source));
1039
- });
1040
- }
1041
- }
1042
-
1043
- const withFirestore = (MixinBase) => {
1044
- return class extends MixinBase {
1045
- constructor(...args) {
1046
- super(args);
1047
- }
1048
- collection(path) {
1049
- return this.firestore.collection(path || this.collectionName).withConverter(this.buildModelInstance());
1050
- }
1051
- buildModelInstance() {
1052
- return {
1053
- toFirestore: (data) => ((data === null || data === void 0 ? void 0 : data.toPlain) ? data.toPlain() : data),
1054
- fromFirestore: (snap) => {
1055
- const data = snap.data();
1056
- Object.keys(data).forEach((key) => {
1057
- if (data[key] instanceof firebase.firestore.Timestamp) {
1058
- data[key] = data[key].toDate();
1059
- }
1060
- });
1061
- return this.model.toInstance(Object.assign(Object.assign({}, data), { id: snap.id }));
1062
- },
1063
- };
1064
- }
1065
- };
1066
- };
1067
-
1068
- const withHelpers = (MixinBase) => {
1069
- return class extends MixinBase {
1070
- toArray(snapShot) {
1071
- if (Array.isArray(snapShot)) {
1072
- return snapShot.map((doc) => doc.data());
1073
- }
1074
- else {
1075
- return snapShot.docs.map((doc) => doc.data());
1076
- }
1077
- }
1078
- isSubCollection(repository) {
1079
- return !isNil(Object.keys(this).find((key) => key === 'parentRepository'));
1080
- }
1081
- };
1082
- };
1083
-
1084
- const withGetFirestore = (MixinBase) => {
1085
- return class GetFirestore extends MixinBase {
1086
- get(identifiers) {
1087
- return __awaiter(this, void 0, void 0, function* () {
1088
- const doc = yield this.collection(this.buildCollectionPathForGet(identifiers))
1089
- .doc(Object.values(identifiers).shift().toString())
1090
- .get();
1091
- const data = doc.data();
1092
- if (isNil(data))
1093
- throw new NotFoundError(`Document ${JSON.stringify(identifiers)} not found`);
1094
- return data;
1095
- });
1096
- }
1097
- buildCollectionPathForGet(identifiers) {
1098
- return this.isSubCollection(this)
1099
- ? `${this.parentRepository.collectionName}/${identifiers[this.parentIdField]}/${this.collectionName}`
1100
- : this.collectionName;
1101
- }
1102
- };
1103
- };
1104
-
1105
- const withFindFirestore = (MixinBase) => {
1106
- const checkIfIsFilterOption = (filter) => !isNil(filter === null || filter === void 0 ? void 0 : filter.operator);
1107
- const getValueFromFilter = (filter) => {
1108
- return checkIfIsFilterOption(filter) ? filter.value : filter;
1109
- };
1110
- const getFinalValueFrom = (value) => isNumber(value) || isString(value) || isDate(value) || Array.isArray(value)
1111
- ? value
1112
- : Object.values(getFinalValueFrom);
1113
- return class FindFirestore extends MixinBase {
1114
- constructor() {
1115
- super(...arguments);
1116
- this.makeFirestoreWhere = (queryReference, filter) => Object.keys(filter).reduce((query, fieldName) => this.buildWhereSentence(query, fieldName, filter[fieldName]), queryReference);
1117
- this.buildWhereSentence = (queryReference, fieldName, options) => {
1118
- if (this.isSubCollection(this) && fieldName === this.parentIdField)
1119
- return queryReference;
1120
- const value = (options === null || options === void 0 ? void 0 : options.value) || options;
1121
- const object = {};
1122
- set(object, fieldName, value);
1123
- const plainInstance = new this.model(object).toPlain();
1124
- const firestoreFieldName = fieldName.toString().indexOf('.') > -1
1125
- ? fieldName.toString()
1126
- : Object.keys(plainInstance).find((key) => plainInstance[key]);
1127
- if ((options === null || options === void 0 ? void 0 : options.operator) === Where.LIKE) {
1128
- if (Array.isArray(options === null || options === void 0 ? void 0 : options.value))
1129
- return queryReference.where(firestoreFieldName, 'array-contains-any', options.value);
1130
- queryReference = queryReference.where(firestoreFieldName, '>=', options.value);
1131
- queryReference = queryReference.where(firestoreFieldName, '<=', `${options.value}~`);
1132
- return queryReference;
1133
- }
1134
- if ((options === null || options === void 0 ? void 0 : options.operator) === Where.IN && Array.isArray(options === null || options === void 0 ? void 0 : options.value))
1135
- return queryReference.where(firestoreFieldName, 'array-contains', options.value);
1136
- if (isObject(options) && isNil(options === null || options === void 0 ? void 0 : options.operator) && isNil(options === null || options === void 0 ? void 0 : options.value)) {
1137
- return Object.keys(options).reduce((queryReferenceWithWhere, key) => this.buildWhereSentence(queryReferenceWithWhere, `${fieldName}.${key}`, options[key]), queryReference);
1138
- }
1139
- return queryReference.where(firestoreFieldName, (options === null || options === void 0 ? void 0 : options.operator) || '==', (options === null || options === void 0 ? void 0 : options.value) || options);
1140
- };
1141
- }
1142
- find(filters, limits, orderBy) {
1143
- return __awaiter(this, void 0, void 0, function* () {
1144
- let query = this.collection(this.buildCollectionPathForFind(filters));
1145
- filters === null || filters === void 0 ? void 0 : filters.forEach((filterer) => (query = this.makeFirestoreWhere(query, filterer)));
1146
- orderBy === null || orderBy === void 0 ? void 0 : orderBy.forEach((orderer) => Object.keys(orderer).forEach((fieldName) => (query = query.orderBy(fieldName, orderer[fieldName]))));
1147
- query = yield this.defineLimits(query, filters, limits);
1148
- const docs = yield query.get();
1149
- const data = docs.docs.map((doc) => doc.data());
1150
- return {
1151
- data,
1152
- count: this.calculateCount(data, limits),
1153
- };
1154
- });
1155
- }
1156
- buildCollectionPathForFind(filters) {
1157
- var _a;
1158
- if (!this.isSubCollection(this))
1159
- return this.collectionName;
1160
- const parentIdField = this.parentIdField;
1161
- const parentId = getValueFromFilter((_a = filters.find((groupFilter) => Boolean(getValueFromFilter(groupFilter[parentIdField])))) === null || _a === void 0 ? void 0 : _a[parentIdField]);
1162
- return `${this.parentRepository.collectionName}/${parentId}/${this.collectionName}`;
1163
- }
1164
- defineLimits(query, filters, limits) {
1165
- return __awaiter(this, void 0, void 0, function* () {
1166
- if (limits === null || limits === void 0 ? void 0 : limits.offset) {
1167
- if (limits.offset instanceof this.model)
1168
- query = query.startAfter(yield this.collection(this.buildCollectionPathForFind(filters))
1169
- .doc(limits.offset[limits.offset.identifierFields().shift()])
1170
- .get());
1171
- else if (isNumber(limits.offset) || isString(limits.offset))
1172
- query = query.startAt(limits.offset);
1173
- }
1174
- if (limits === null || limits === void 0 ? void 0 : limits.limit)
1175
- query = query.limit(limits.limit);
1176
- return query;
1177
- });
1178
- }
1179
- calculateCount(data, limits) {
1180
- if (data.length <= 0)
1181
- return 0;
1182
- if (data.length < (limits === null || limits === void 0 ? void 0 : limits.limit))
1183
- return data.length;
1184
- return Infinity;
1185
- }
1186
- };
1187
- };
1188
-
1189
- const withCreateFirestore = (MixinBase) => {
1190
- return class CreateFirestore extends MixinBase {
1191
- create(data) {
1192
- return __awaiter(this, void 0, void 0, function* () {
1193
- const docRef = yield this.save(this.model.toInstance(data));
1194
- const doc = yield docRef.get();
1195
- return doc.data();
1196
- });
1197
- }
1198
- save(data) {
1199
- var _a;
1200
- return __awaiter(this, void 0, void 0, function* () {
1201
- const id = (_a = data[data.identifierFields().shift()]) === null || _a === void 0 ? void 0 : _a.toString();
1202
- const collectionPath = this.buildCollectionPathForAdd(data);
1203
- if (isEmpty(id))
1204
- return this.collection(collectionPath).add(data);
1205
- const docRef = this.collection(collectionPath).doc(id);
1206
- yield docRef.set(data);
1207
- return docRef;
1208
- });
1209
- }
1210
- buildCollectionPathForAdd(identifiers) {
1211
- return this.isSubCollection(this)
1212
- ? `${this.parentRepository.collectionName}/${identifiers[this.parentIdField]}/${this.collectionName}`
1213
- : this.collectionName;
1214
- }
1215
- };
1216
- };
1217
-
1218
- const withUpdateFirestore = (MixinBase) => {
1219
- const getValueFromParams = (params, field) => { var _a; return (isNil((_a = params[field]) === null || _a === void 0 ? void 0 : _a.value) ? params[field] : params[field].value) || null; };
1220
- const getValueByAction = (options) => {
1221
- const fieldValues = firebase.firestore.FieldValue;
1222
- if (isNil(options.action))
1223
- return options;
1224
- if (options.action === UpdateOptionActions.REMOVE_FIELD)
1225
- return fieldValues.delete();
1226
- if (Array.isArray(options.value)) {
1227
- if (options.action === UpdateOptionActions.MERGE)
1228
- return fieldValues.arrayUnion(...options.value);
1229
- if (options.action === UpdateOptionActions.REMOVE)
1230
- return fieldValues.arrayRemove(...options.value);
1231
- }
1232
- return options.value;
1233
- };
1234
- return class UpdateFirestore extends MixinBase {
1235
- update(data) {
1236
- return __awaiter(this, void 0, void 0, function* () {
1237
- const model = new this.model();
1238
- const keyField = model.identifierFields().shift();
1239
- const docRef = this.collection(this.buildCollectionPathForUpdate(data)).doc(getValueFromParams(data, keyField).toString());
1240
- yield docRef.set(this.paramsToPlain(data), { merge: true });
1241
- const doc = yield docRef.get();
1242
- return doc.data();
1243
- });
1244
- }
1245
- buildCollectionPathForUpdate(identifiers) {
1246
- return this.isSubCollection(this)
1247
- ? `${this.parentRepository.collectionName}/${getValueFromParams(identifiers, this.parentIdField)}/${this.collectionName}`
1248
- : this.collectionName;
1249
- }
1250
- paramsToPlain(params) {
1251
- const model = this.model;
1252
- if (params instanceof model)
1253
- return params;
1254
- return Object.keys(params).reduce((data, currentKey) => (Object.assign(Object.assign({}, data), { [currentKey]: getValueByAction(params[currentKey]) })), {});
1255
- }
1256
- };
1257
- };
1258
-
1259
- const withDeleteFirestore = (MixinBase) => {
1260
- return class DeleteFirestore extends MixinBase {
1261
- delete(identifiers) {
1262
- return __awaiter(this, void 0, void 0, function* () {
1263
- yield this.collection(this.buildCollectionPathForRemove(identifiers))
1264
- .doc(Object.values(identifiers).shift().toString())
1265
- .delete();
1266
- });
1267
- }
1268
- buildCollectionPathForRemove(identifiers) {
1269
- return this.isSubCollection(this)
1270
- ? `${this.parentRepository.collectionName}/${identifiers[this.parentIdField]}/${this.collectionName}`
1271
- : this.collectionName;
1272
- }
1273
- };
1274
- };
1275
-
1276
- const withSubCollection = (MixinBase, ParentModel) => {
1277
- return class SubCollectionMix extends MixinBase {
1278
- constructor(...args) {
1279
- super(args);
1280
- }
1281
- collection(path) {
1282
- return super.collection(path);
1283
- }
1284
- };
1285
- };
1286
-
1287
- const withCrudFirestore = (MixinBase) => {
1288
- return class CrudFirestore extends withUpdateFirestore(withGetFirestore(withFindFirestore(withDeleteFirestore(withCreateFirestore(MixinBase))))) {
1289
- };
1290
- };
1291
-
1292
- class SubscriptionFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1293
- constructor(firestore) {
1294
- super();
1295
- this.firestore = firestore;
1296
- this.collectionName = 'subscription';
1297
- this.model = Subscription;
1298
- }
1299
- }
1300
-
1301
- class UserSearch extends BaseModel {
1302
- identifierFields() {
1303
- return ['id'];
1304
- }
1305
- }
1306
-
1307
- class UserSearchFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1308
- constructor(firestore) {
1309
- super();
1310
- this.firestore = firestore;
1311
- this.collectionName = 'userSearch';
1312
- this.model = UserSearch;
1313
- }
1314
- }
1315
-
1316
- class UserFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1317
- constructor(firestore, userSearchFirestoreRepository = new UserSearchFirestoreRepository(firestore)) {
1318
- super();
1319
- this.firestore = firestore;
1320
- this.userSearchFirestoreRepository = userSearchFirestoreRepository;
1321
- this.collectionName = 'users';
1322
- this.model = User;
1323
- }
1324
- get(identifiers) {
1325
- const _super = Object.create(null, {
1326
- get: { get: () => super.get }
1327
- });
1328
- return __awaiter(this, void 0, void 0, function* () {
1329
- const user = yield _super.get.call(this, { id: identifiers.id });
1330
- user.beautyProfile = yield this.getBeautyProfile(user.id);
1331
- user.isSubscriber = yield this.checkIfIsSubscriber(user.id);
1332
- return user;
1333
- });
1334
- }
1335
- checkIfExistsByField(field, value) {
1336
- return __awaiter(this, void 0, void 0, function* () {
1337
- const result = yield this.userSearchFirestoreRepository.find([{ [field]: { operator: Where.EQUALS, value } }]);
1338
- return result.count > 0;
1339
- });
1340
- }
1341
- buildModelInstance() {
1342
- const { fromFirestore, toFirestore } = super.buildModelInstance();
1343
- return {
1344
- toFirestore: (data) => {
1345
- const plain = toFirestore(data);
1346
- delete plain.isSubscriber;
1347
- return plain;
1348
- },
1349
- fromFirestore,
1350
- };
1351
- }
1352
- getBeautyProfile(userId) {
1353
- return __awaiter(this, void 0, void 0, function* () {
1354
- const beautyProfile = yield this.collection()
1355
- .doc(userId)
1356
- .collection('CX')
1357
- .withConverter(this.buildBeautyProfileModelInstance())
1358
- .doc('beautyProfile')
1359
- .get();
1360
- return beautyProfile.data();
1361
- });
1362
- }
1363
- checkIfIsSubscriber(userId) {
1364
- return __awaiter(this, void 0, void 0, function* () {
1365
- const docs = yield this.firestore
1366
- .collection('subscription')
1367
- .where('user.id', '==', userId)
1368
- .where('status', '==', 'active')
1369
- .get();
1370
- return !!docs && !!docs.size;
1371
- });
1372
- }
1373
- buildBeautyProfileModelInstance() {
1374
- return {
1375
- toFirestore: (data) => data.toPlain(),
1376
- fromFirestore: (snap) => BeautyProfile.toInstance(snap.data()),
1377
- };
1378
- }
1379
- }
1380
-
1381
- class SubscriptionEditionFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1382
- constructor(firestore, parentRepository) {
1383
- super();
1384
- this.firestore = firestore;
1385
- this.parentRepository = parentRepository;
1386
- this.collectionName = 'editions';
1387
- this.parentIdField = 'subscriptionId';
1388
- this.model = Edition;
1389
- }
1390
- }
1391
-
1392
- class UserBeautyProfileFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1393
- constructor(firestore, parentRepository) {
1394
- super();
1395
- this.firestore = firestore;
1396
- this.parentRepository = parentRepository;
1397
- this.collectionName = 'CX';
1398
- this.parentIdField = 'userId';
1399
- this.model = BeautyProfile;
1400
- }
1401
- }
1402
-
1403
- class UserAddressFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1404
- constructor(firestore, parentRepository) {
1405
- super();
1406
- this.firestore = firestore;
1407
- this.parentRepository = parentRepository;
1408
- this.collectionName = 'address';
1409
- this.parentIdField = 'userId';
1410
- this.model = UserAddress;
1411
- }
1412
- }
1413
-
1414
- class UserPaymentMethodFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1415
- constructor(firestore, parentRepository) {
1416
- super();
1417
- this.firestore = firestore;
1418
- this.parentRepository = parentRepository;
1419
- this.collectionName = 'payment_method';
1420
- this.parentIdField = 'userId';
1421
- this.model = UserPaymentMethod;
1422
- }
1423
- }
1424
-
1425
- class SubscriptionPaymentFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1426
- constructor(firestore, parentRepository) {
1427
- super();
1428
- this.firestore = firestore;
1429
- this.parentRepository = parentRepository;
1430
- this.collectionName = 'payments';
1431
- this.parentIdField = 'subscriptionId';
1432
- this.model = SubscriptionPayment;
1433
- }
1434
- }
1435
-
1436
- class LeadFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1437
- constructor(firestore) {
1438
- super();
1439
- this.firestore = firestore;
1440
- this.collectionName = 'leads';
1441
- this.model = Lead;
1442
- }
1443
- }
1444
-
1445
- class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1446
- constructor(firestore) {
1447
- super();
1448
- this.firestore = firestore;
1449
- this.collectionName = 'categories';
1450
- this.model = Category;
1451
- }
1452
- getCategoryBySlug(slug, shop) {
1453
- return this.collection(this.collectionName)
1454
- .where('slug', '==', slug)
1455
- .where('shop', '==', shop)
1456
- .where('published', '==', true)
1457
- .get()
1458
- .then((snap) => {
1459
- if (snap.size > 1)
1460
- throw new DuplicatedResultsError('Query returned duplicated values');
1461
- if (snap.empty)
1462
- throw new NotFoundError(`Document with slug ${slug} not found`);
1463
- return snap.docs[0].data();
1464
- })
1465
- .catch((error) => error);
1466
- }
1467
- getCategoriesForHome(categoryIds, limit = 4) {
1468
- return __awaiter(this, void 0, void 0, function* () {
1469
- const categorySnap = yield this.collection(this.collectionName)
1470
- .where('id', 'in', categoryIds.filter(Boolean))
1471
- .where('published', '==', true)
1472
- .get();
1473
- if (categorySnap.empty)
1474
- throw new NotFoundError('Categories not found');
1475
- const categories = categorySnap.docs.map((doc) => doc.data());
1476
- const homeSections = yield Promise.all(categories.map((category) => __awaiter(this, void 0, void 0, function* () {
1477
- return ({
1478
- category,
1479
- products: yield this.mountCategory(category, { limit, hasStock: true }),
1480
- });
1481
- })));
1482
- return homeSections;
1483
- });
1484
- }
1485
- mountCategory(category, options) {
1486
- return __awaiter(this, void 0, void 0, function* () {
1487
- if (!category.products)
1488
- throw new RequiredArgumentError(['Category products is empty']);
1489
- const chunks = chunk(category.products, 10);
1490
- const products = [];
1491
- const publishedField = category.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
1492
- for (const productIds of chunks) {
1493
- if ((options === null || options === void 0 ? void 0 : options.limit) && products.length >= (options === null || options === void 0 ? void 0 : options.limit))
1494
- break;
1495
- let query = yield this.collection('products').where(publishedField, '==', true).where('id', 'in', productIds);
1496
- if (options === null || options === void 0 ? void 0 : options.hasStock)
1497
- query = query.where('stock.quantity', '>', 0);
1498
- if (options === null || options === void 0 ? void 0 : options.limit)
1499
- query = query.limit(options === null || options === void 0 ? void 0 : options.limit);
1500
- const productSnap = yield query.get();
1501
- if (productSnap.empty)
1502
- continue;
1503
- products.push(...productSnap.docs.map((doc) => doc.data()));
1504
- }
1505
- return products;
1506
- });
1507
- }
1508
- }
1509
-
1510
- class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1511
- constructor(firestore) {
1512
- super();
1513
- this.firestore = firestore;
1514
- this.collectionName = 'products';
1515
- this.model = Product;
1516
- }
1517
- getBySlug(slug, shop) {
1518
- var _a;
1519
- return __awaiter(this, void 0, void 0, function* () {
1520
- const result = yield this.find([
1521
- { slug: { operator: Where.EQUALS, value: slug } },
1522
- { shopAvailability: { operator: Where.IN, value: [shop] } },
1523
- ]);
1524
- return (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.shift();
1525
- });
1526
- }
1527
- }
1528
-
1529
- class ProductVariantFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Product) {
1530
- constructor(firestore, parentRepository) {
1531
- super();
1532
- this.firestore = firestore;
1533
- this.parentRepository = parentRepository;
1534
- this.collectionName = 'variants';
1535
- this.parentIdField = 'productId';
1536
- this.model = Variant;
1537
- }
1538
- }
1539
-
1540
- class SubscriptionProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1541
- constructor(firestore) {
1542
- super();
1543
- this.firestore = firestore;
1544
- this.collectionName = 'subscriptionProducts';
1545
- this.model = Product;
1546
- }
1547
- }
1548
-
1549
- class CheckoutFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1550
- constructor(firestore) {
1551
- super();
1552
- this.firestore = firestore;
1553
- this.collectionName = 'checkouts';
1554
- this.model = Checkout;
1555
- }
1556
- }
1557
-
1558
- class CouponFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1559
- constructor(firestore) {
1560
- super();
1561
- this.firestore = firestore;
1562
- this.collectionName = 'coupons';
1563
- this.model = Coupon;
1564
- }
1565
- buildModelInstance() {
1566
- const { fromFirestore, toFirestore } = super.buildModelInstance();
1567
- return {
1568
- toFirestore: (data) => {
1569
- const plain = toFirestore(data);
1570
- if (!!data.expiresIn)
1571
- plain.expiresIn = data.expiresIn.getTime();
1572
- return plain;
1573
- },
1574
- fromFirestore: (snap) => {
1575
- const instance = fromFirestore(snap);
1576
- if (!isNil(instance.expiresIn))
1577
- instance.expiresIn = new Date(snap.data().expiresIn);
1578
- return instance;
1579
- },
1580
- };
1581
- }
1582
- }
1583
-
1584
- class OrderFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1585
- constructor(firestore) {
1586
- super();
1587
- this.firestore = firestore;
1588
- this.collectionName = 'orders';
1589
- this.model = Order;
1590
- }
1591
- }
1592
-
1593
- class PaymentFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1594
- constructor(firestore) {
1595
- super();
1596
- this.firestore = firestore;
1597
- this.collectionName = 'payments';
1598
- this.model = Payment;
1599
- }
1600
- }
1601
-
1602
- class CheckoutSubscriptionFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1603
- constructor(firestore) {
1604
- super();
1605
- this.firestore = firestore;
1606
- this.collectionName = 'checkoutsSubscription';
1607
- this.model = CheckoutSubscription;
1608
- }
1609
- }
1610
-
1611
- class SubscriptionPlanFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1612
- constructor(firestore) {
1613
- super();
1614
- this.firestore = firestore;
1615
- this.collectionName = 'subscriptionPlans';
1616
- this.model = SubscriptionPlan;
1617
- }
1618
- }
1619
-
1620
- class Buy2WinFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1621
- constructor(firestore) {
1622
- super();
1623
- this.firestore = firestore;
1624
- this.collectionName = 'buy2win';
1625
- this.model = Buy2Win;
1626
- }
1627
- }
1628
-
1629
- class LegacyOrderFirestoreRepository extends OrderFirestoreRepository {
1630
- constructor(firestore) {
1631
- super(firestore);
1632
- this.firestore = firestore;
1633
- this.collectionName = 'legacyOrders';
1634
- }
1635
- }
1636
-
1637
- class HomeFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1638
- constructor(firestore) {
1639
- super();
1640
- this.firestore = firestore;
1641
- this.homeToFirestore = (home) => {
1642
- var _a;
1643
- if ((_a = home.data) === null || _a === void 0 ? void 0 : _a.data) {
1644
- home.data.data.discoverProducts = home.data.data.discoverProducts.map(this.homeCategoryGroupToPlain);
1645
- home.data.data.featuredProducts = home.data.data.featuredProducts.map(this.homeCategoryGroupToPlain);
1646
- home.data.data.verticalProducts = home.data.data.verticalProducts.map(this.homeCategoryGroupToPlain);
1647
- }
1648
- return home;
1649
- };
1650
- this.homeCategoryGroupToPlain = (homeCategoryGroup) => ({
1651
- category: homeCategoryGroup.category.toPlain(),
1652
- products: homeCategoryGroup.products.map((product) => product.toPlain()),
1653
- });
1654
- this.homeFromFirestore = (home) => {
1655
- var _a;
1656
- if ((_a = home.data) === null || _a === void 0 ? void 0 : _a.data) {
1657
- home.data.data.discoverProducts = home.data.data.discoverProducts.map(this.plainToHomeCategoryGroup);
1658
- home.data.data.featuredProducts = home.data.data.featuredProducts.map(this.plainToHomeCategoryGroup);
1659
- home.data.data.verticalProducts = home.data.data.verticalProducts.map(this.plainToHomeCategoryGroup);
1660
- home.data.createdAt =
1661
- home.data.createdAt instanceof firebase.firestore.Timestamp ? home.data.createdAt.toDate() : home.data.createdAt;
1662
- home.data.expiresAt =
1663
- home.data.expiresAt instanceof firebase.firestore.Timestamp ? home.data.expiresAt.toDate() : home.data.expiresAt;
1664
- }
1665
- return home;
1666
- };
1667
- this.plainToHomeCategoryGroup = (homeCategoryGroup) => ({
1668
- category: Category.toInstance(homeCategoryGroup.category),
1669
- products: homeCategoryGroup.products.map((product) => Product.toInstance(product)),
1670
- });
1671
- this.collectionName = 'dms';
1672
- this.model = Home;
1673
- }
1674
- buildModelInstance() {
1675
- const { fromFirestore, toFirestore } = super.buildModelInstance();
1676
- return {
1677
- toFirestore: (data) => {
1678
- const modifiedData = this.homeToFirestore(data);
1679
- return toFirestore(modifiedData);
1680
- },
1681
- fromFirestore: (snap) => {
1682
- const instance = fromFirestore(snap);
1683
- return this.homeFromFirestore(instance);
1684
- },
1685
- };
1686
- }
1687
- }
1688
-
1689
- class ShopMenuFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1690
- constructor(firestore) {
1691
- super();
1692
- this.firestore = firestore;
1693
- this.collectionName = 'shopMenus';
1694
- this.model = ShopMenu;
1695
- }
1696
- }
1697
-
1698
- class AuthenticationFirebaseAuthService {
1699
- constructor(firebaseAuth) {
1700
- this.firebaseAuth = firebaseAuth;
1701
- }
1702
- signInWithEmailAndPassword(data) {
1703
- return __awaiter(this, void 0, void 0, function* () {
1704
- const credentials = yield this.firebaseAuth.signInWithEmailAndPassword(data.email, data.password);
1705
- const user = credentials.user;
1706
- return {
1707
- id: user.uid,
1708
- displayName: user.displayName,
1709
- email: user.email,
1710
- phone: user.phoneNumber,
1711
- isAnonymous: false,
1712
- };
1713
- });
1714
- }
1715
- signInWithGoogle() {
1716
- return __awaiter(this, void 0, void 0, function* () {
1717
- const credentials = yield this.firebaseAuth.signInWithPopup(new firebase$1.auth.GoogleAuthProvider());
1718
- const user = credentials.user;
1719
- return {
1720
- id: user.uid,
1721
- displayName: user.displayName,
1722
- email: user.email,
1723
- phone: user.phoneNumber,
1724
- isAnonymous: false,
1725
- };
1726
- });
1727
- }
1728
- signOut() {
1729
- return __awaiter(this, void 0, void 0, function* () {
1730
- this.firebaseAuth.signOut();
1731
- });
1732
- }
1733
- signInAnonymously() {
1734
- return __awaiter(this, void 0, void 0, function* () {
1735
- const auth = yield this.firebaseAuth.signInAnonymously();
1736
- const user = auth.user;
1737
- user.id = auth.user.uid;
1738
- return user;
1739
- });
1740
- }
1741
- sendPasswordResetEmail(email) {
1742
- return __awaiter(this, void 0, void 0, function* () {
1743
- return this.firebaseAuth.sendPasswordResetEmail(email);
1744
- });
1745
- }
1746
- }
1747
-
1748
- class RegisterFirebaseAuthService {
1749
- constructor(firebaseAuth) {
1750
- this.firebaseAuth = firebaseAuth;
1751
- }
1752
- register(params) {
1753
- return __awaiter(this, void 0, void 0, function* () {
1754
- try {
1755
- const auth = yield this.firebaseAuth.createUserWithEmailAndPassword(params.email, params.password);
1756
- const user = auth.user;
1757
- user.sendEmailVerification();
1758
- user.id = auth.user.uid;
1759
- return user;
1760
- }
1761
- catch (error) {
1762
- if (error.code === 'auth/email-already-in-use')
1763
- throw new UserAlreadyRegisteredError('Email already registered');
1764
- if (error.code === 'auth/weak-password')
1765
- throw new WeakPasswordError();
1766
- throw error;
1767
- }
1768
- });
1769
- }
1770
- }
1771
-
1772
- /**
1773
- * Generated bundle index. Do not edit.
1774
- */
1775
-
1776
- export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, Category, CategoryFirestoreRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, FilterType, FragranceImportances, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, NotFoundError, OfficePosition, Order, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Product, ProductFirestoreRepository, ProductSpents, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, Register, RegisterFirebaseAuthService, RequiredArgumentError, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UnauthorizedError, UpdateOptionActions, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserSearchFirestoreRepository, UserType, Variant, WeakPasswordError, Where, withCreateFirestore, withCrudFirestore, withDeleteFirestore, withFindFirestore, withFirestore, withGetFirestore, withHelpers, withSubCollection, withUpdateFirestore };
1777
- //# sourceMappingURL=infrab4a-connect.js.map