@infrab4a/connect 4.0.2-beta.6 → 4.0.2-beta.8

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 (1018) hide show
  1. package/index.js +5154 -2
  2. package/package.json +29 -36
  3. package/index.d.ts +0 -1
  4. package/index.js.map +0 -1
  5. package/src/domain/catalog/helpers/index.d.ts +0 -1
  6. package/src/domain/catalog/helpers/index.js +0 -2
  7. package/src/domain/catalog/helpers/index.js.map +0 -1
  8. package/src/domain/catalog/helpers/round-product-price.helper.d.ts +0 -4
  9. package/src/domain/catalog/helpers/round-product-price.helper.js +0 -15
  10. package/src/domain/catalog/helpers/round-product-price.helper.js.map +0 -1
  11. package/src/domain/catalog/index.d.ts +0 -3
  12. package/src/domain/catalog/index.js +0 -4
  13. package/src/domain/catalog/index.js.map +0 -1
  14. package/src/domain/catalog/models/category-base.d.ts +0 -30
  15. package/src/domain/catalog/models/category-base.js +0 -18
  16. package/src/domain/catalog/models/category-base.js.map +0 -1
  17. package/src/domain/catalog/models/category-collection-children.d.ts +0 -13
  18. package/src/domain/catalog/models/category-collection-children.js +0 -13
  19. package/src/domain/catalog/models/category-collection-children.js.map +0 -1
  20. package/src/domain/catalog/models/category-filter.d.ts +0 -13
  21. package/src/domain/catalog/models/category-filter.js +0 -19
  22. package/src/domain/catalog/models/category-filter.js.map +0 -1
  23. package/src/domain/catalog/models/category-for-product.d.ts +0 -5
  24. package/src/domain/catalog/models/category-for-product.js +0 -7
  25. package/src/domain/catalog/models/category-for-product.js.map +0 -1
  26. package/src/domain/catalog/models/category.d.ts +0 -7
  27. package/src/domain/catalog/models/category.js +0 -14
  28. package/src/domain/catalog/models/category.js.map +0 -1
  29. package/src/domain/catalog/models/enums/index.d.ts +0 -2
  30. package/src/domain/catalog/models/enums/index.js +0 -3
  31. package/src/domain/catalog/models/enums/index.js.map +0 -1
  32. package/src/domain/catalog/models/enums/product-genders.enum.d.ts +0 -5
  33. package/src/domain/catalog/models/enums/product-genders.enum.js +0 -7
  34. package/src/domain/catalog/models/enums/product-genders.enum.js.map +0 -1
  35. package/src/domain/catalog/models/enums/shops.enum.d.ts +0 -6
  36. package/src/domain/catalog/models/enums/shops.enum.js +0 -8
  37. package/src/domain/catalog/models/enums/shops.enum.js.map +0 -1
  38. package/src/domain/catalog/models/filter-option.d.ts +0 -9
  39. package/src/domain/catalog/models/filter-option.js +0 -7
  40. package/src/domain/catalog/models/filter-option.js.map +0 -1
  41. package/src/domain/catalog/models/filter.d.ts +0 -12
  42. package/src/domain/catalog/models/filter.js +0 -7
  43. package/src/domain/catalog/models/filter.js.map +0 -1
  44. package/src/domain/catalog/models/index.d.ts +0 -11
  45. package/src/domain/catalog/models/index.js +0 -12
  46. package/src/domain/catalog/models/index.js.map +0 -1
  47. package/src/domain/catalog/models/kit-product.d.ts +0 -12
  48. package/src/domain/catalog/models/kit-product.js +0 -18
  49. package/src/domain/catalog/models/kit-product.js.map +0 -1
  50. package/src/domain/catalog/models/product-base.d.ts +0 -40
  51. package/src/domain/catalog/models/product-base.js +0 -25
  52. package/src/domain/catalog/models/product-base.js.map +0 -1
  53. package/src/domain/catalog/models/product-for-category.d.ts +0 -7
  54. package/src/domain/catalog/models/product-for-category.js +0 -14
  55. package/src/domain/catalog/models/product-for-category.js.map +0 -1
  56. package/src/domain/catalog/models/product-for-kit.d.ts +0 -7
  57. package/src/domain/catalog/models/product-for-kit.js +0 -14
  58. package/src/domain/catalog/models/product-for-kit.js.map +0 -1
  59. package/src/domain/catalog/models/product.d.ts +0 -9
  60. package/src/domain/catalog/models/product.js +0 -19
  61. package/src/domain/catalog/models/product.js.map +0 -1
  62. package/src/domain/catalog/models/types/category-condition.type.d.ts +0 -4
  63. package/src/domain/catalog/models/types/category-condition.type.js +0 -2
  64. package/src/domain/catalog/models/types/category-condition.type.js.map +0 -1
  65. package/src/domain/catalog/models/types/category-metadata.type.d.ts +0 -4
  66. package/src/domain/catalog/models/types/category-metadata.type.js +0 -2
  67. package/src/domain/catalog/models/types/category-metadata.type.js.map +0 -1
  68. package/src/domain/catalog/models/types/category-product.d.ts +0 -4
  69. package/src/domain/catalog/models/types/category-product.js +0 -2
  70. package/src/domain/catalog/models/types/category-product.js.map +0 -1
  71. package/src/domain/catalog/models/types/index.d.ts +0 -11
  72. package/src/domain/catalog/models/types/index.js +0 -12
  73. package/src/domain/catalog/models/types/index.js.map +0 -1
  74. package/src/domain/catalog/models/types/product-evaluation.type.d.ts +0 -6
  75. package/src/domain/catalog/models/types/product-evaluation.type.js +0 -2
  76. package/src/domain/catalog/models/types/product-evaluation.type.js.map +0 -1
  77. package/src/domain/catalog/models/types/product-gender.type.d.ts +0 -1
  78. package/src/domain/catalog/models/types/product-gender.type.js +0 -2
  79. package/src/domain/catalog/models/types/product-gender.type.js.map +0 -1
  80. package/src/domain/catalog/models/types/product-metadata.type.d.ts +0 -4
  81. package/src/domain/catalog/models/types/product-metadata.type.js +0 -2
  82. package/src/domain/catalog/models/types/product-metadata.type.js.map +0 -1
  83. package/src/domain/catalog/models/types/product-review.type.d.ts +0 -17
  84. package/src/domain/catalog/models/types/product-review.type.js +0 -2
  85. package/src/domain/catalog/models/types/product-review.type.js.map +0 -1
  86. package/src/domain/catalog/models/types/shop-description.type.d.ts +0 -8
  87. package/src/domain/catalog/models/types/shop-description.type.js +0 -2
  88. package/src/domain/catalog/models/types/shop-description.type.js.map +0 -1
  89. package/src/domain/catalog/models/types/shop-price.type.d.ts +0 -6
  90. package/src/domain/catalog/models/types/shop-price.type.js +0 -2
  91. package/src/domain/catalog/models/types/shop-price.type.js.map +0 -1
  92. package/src/domain/catalog/models/types/stock.type.d.ts +0 -3
  93. package/src/domain/catalog/models/types/stock.type.js +0 -2
  94. package/src/domain/catalog/models/types/stock.type.js.map +0 -1
  95. package/src/domain/catalog/models/types/variant-grade.type.d.ts +0 -4
  96. package/src/domain/catalog/models/types/variant-grade.type.js +0 -2
  97. package/src/domain/catalog/models/types/variant-grade.type.js.map +0 -1
  98. package/src/domain/catalog/models/variant.d.ts +0 -17
  99. package/src/domain/catalog/models/variant.js +0 -7
  100. package/src/domain/catalog/models/variant.js.map +0 -1
  101. package/src/domain/catalog/models/wishlist.d.ts +0 -6
  102. package/src/domain/catalog/models/wishlist.js +0 -7
  103. package/src/domain/catalog/models/wishlist.js.map +0 -1
  104. package/src/domain/catalog/repositories/category-collection-children.repository.d.ts +0 -4
  105. package/src/domain/catalog/repositories/category-collection-children.repository.js +0 -2
  106. package/src/domain/catalog/repositories/category-collection-children.repository.js.map +0 -1
  107. package/src/domain/catalog/repositories/category-filter.repository.d.ts +0 -6
  108. package/src/domain/catalog/repositories/category-filter.repository.js +0 -2
  109. package/src/domain/catalog/repositories/category-filter.repository.js.map +0 -1
  110. package/src/domain/catalog/repositories/category.repository.d.ts +0 -18
  111. package/src/domain/catalog/repositories/category.repository.js +0 -2
  112. package/src/domain/catalog/repositories/category.repository.js.map +0 -1
  113. package/src/domain/catalog/repositories/filter-option.repository.d.ts +0 -4
  114. package/src/domain/catalog/repositories/filter-option.repository.js +0 -2
  115. package/src/domain/catalog/repositories/filter-option.repository.js.map +0 -1
  116. package/src/domain/catalog/repositories/filter.repository.d.ts +0 -4
  117. package/src/domain/catalog/repositories/filter.repository.js +0 -2
  118. package/src/domain/catalog/repositories/filter.repository.js.map +0 -1
  119. package/src/domain/catalog/repositories/index.d.ts +0 -9
  120. package/src/domain/catalog/repositories/index.js +0 -10
  121. package/src/domain/catalog/repositories/index.js.map +0 -1
  122. package/src/domain/catalog/repositories/product.repository.d.ts +0 -15
  123. package/src/domain/catalog/repositories/product.repository.js +0 -2
  124. package/src/domain/catalog/repositories/product.repository.js.map +0 -1
  125. package/src/domain/catalog/repositories/subscription-product.repository.d.ts +0 -4
  126. package/src/domain/catalog/repositories/subscription-product.repository.js +0 -2
  127. package/src/domain/catalog/repositories/subscription-product.repository.js.map +0 -1
  128. package/src/domain/catalog/repositories/variant.repository.d.ts +0 -4
  129. package/src/domain/catalog/repositories/variant.repository.js +0 -2
  130. package/src/domain/catalog/repositories/variant.repository.js.map +0 -1
  131. package/src/domain/catalog/repositories/wishlist.repository.d.ts +0 -6
  132. package/src/domain/catalog/repositories/wishlist.repository.js +0 -2
  133. package/src/domain/catalog/repositories/wishlist.repository.js.map +0 -1
  134. package/src/domain/generic/index.d.ts +0 -2
  135. package/src/domain/generic/index.js +0 -3
  136. package/src/domain/generic/index.js.map +0 -1
  137. package/src/domain/generic/model/base.model.d.ts +0 -14
  138. package/src/domain/generic/model/base.model.js +0 -24
  139. package/src/domain/generic/model/base.model.js.map +0 -1
  140. package/src/domain/generic/model/identifier-fields.d.ts +0 -4
  141. package/src/domain/generic/model/identifier-fields.js +0 -2
  142. package/src/domain/generic/model/identifier-fields.js.map +0 -1
  143. package/src/domain/generic/model/index.d.ts +0 -3
  144. package/src/domain/generic/model/index.js +0 -4
  145. package/src/domain/generic/model/index.js.map +0 -1
  146. package/src/domain/generic/model/types/base-model-builder.type.d.ts +0 -17
  147. package/src/domain/generic/model/types/base-model-builder.type.js +0 -2
  148. package/src/domain/generic/model/types/base-model-builder.type.js.map +0 -1
  149. package/src/domain/generic/model/types/identifier-model.type.d.ts +0 -8
  150. package/src/domain/generic/model/types/identifier-model.type.js +0 -2
  151. package/src/domain/generic/model/types/identifier-model.type.js.map +0 -1
  152. package/src/domain/generic/model/types/index.d.ts +0 -5
  153. package/src/domain/generic/model/types/index.js +0 -6
  154. package/src/domain/generic/model/types/index.js.map +0 -1
  155. package/src/domain/generic/model/types/model-base-structure.type.d.ts +0 -12
  156. package/src/domain/generic/model/types/model-base-structure.type.js +0 -2
  157. package/src/domain/generic/model/types/model-base-structure.type.js.map +0 -1
  158. package/src/domain/generic/model/types/non-function-properties.type.d.ts +0 -12
  159. package/src/domain/generic/model/types/non-function-properties.type.js +0 -2
  160. package/src/domain/generic/model/types/non-function-properties.type.js.map +0 -1
  161. package/src/domain/generic/model/types/non-function-property-name.type.d.ts +0 -13
  162. package/src/domain/generic/model/types/non-function-property-name.type.js +0 -2
  163. package/src/domain/generic/model/types/non-function-property-name.type.js.map +0 -1
  164. package/src/domain/generic/repository/create.repository.d.ts +0 -8
  165. package/src/domain/generic/repository/create.repository.js +0 -2
  166. package/src/domain/generic/repository/create.repository.js.map +0 -1
  167. package/src/domain/generic/repository/crud.repository.d.ts +0 -19
  168. package/src/domain/generic/repository/crud.repository.js +0 -2
  169. package/src/domain/generic/repository/crud.repository.js.map +0 -1
  170. package/src/domain/generic/repository/delete.repository.d.ts +0 -7
  171. package/src/domain/generic/repository/delete.repository.js +0 -2
  172. package/src/domain/generic/repository/delete.repository.js.map +0 -1
  173. package/src/domain/generic/repository/enums/index.d.ts +0 -2
  174. package/src/domain/generic/repository/enums/index.js +0 -3
  175. package/src/domain/generic/repository/enums/index.js.map +0 -1
  176. package/src/domain/generic/repository/enums/update-option-actions.enum.d.ts +0 -7
  177. package/src/domain/generic/repository/enums/update-option-actions.enum.js +0 -9
  178. package/src/domain/generic/repository/enums/update-option-actions.enum.js.map +0 -1
  179. package/src/domain/generic/repository/enums/where.enum.d.ts +0 -14
  180. package/src/domain/generic/repository/enums/where.enum.js +0 -16
  181. package/src/domain/generic/repository/enums/where.enum.js.map +0 -1
  182. package/src/domain/generic/repository/find.repository.d.ts +0 -17
  183. package/src/domain/generic/repository/find.repository.js +0 -2
  184. package/src/domain/generic/repository/find.repository.js.map +0 -1
  185. package/src/domain/generic/repository/get.repository.d.ts +0 -5
  186. package/src/domain/generic/repository/get.repository.js +0 -2
  187. package/src/domain/generic/repository/get.repository.js.map +0 -1
  188. package/src/domain/generic/repository/index.d.ts +0 -9
  189. package/src/domain/generic/repository/index.js +0 -10
  190. package/src/domain/generic/repository/index.js.map +0 -1
  191. package/src/domain/generic/repository/read.repository.d.ts +0 -14
  192. package/src/domain/generic/repository/read.repository.js +0 -2
  193. package/src/domain/generic/repository/read.repository.js.map +0 -1
  194. package/src/domain/generic/repository/types/index.d.ts +0 -6
  195. package/src/domain/generic/repository/types/index.js +0 -7
  196. package/src/domain/generic/repository/types/index.js.map +0 -1
  197. package/src/domain/generic/repository/types/repository-find-filters.type.d.ts +0 -13
  198. package/src/domain/generic/repository/types/repository-find-filters.type.js +0 -2
  199. package/src/domain/generic/repository/types/repository-find-filters.type.js.map +0 -1
  200. package/src/domain/generic/repository/types/repository-find-result.type.d.ts +0 -14
  201. package/src/domain/generic/repository/types/repository-find-result.type.js +0 -2
  202. package/src/domain/generic/repository/types/repository-find-result.type.js.map +0 -1
  203. package/src/domain/generic/repository/types/repository-limit-options.type.d.ts +0 -4
  204. package/src/domain/generic/repository/types/repository-limit-options.type.js +0 -2
  205. package/src/domain/generic/repository/types/repository-limit-options.type.js.map +0 -1
  206. package/src/domain/generic/repository/types/repository-order-by-list.type.d.ts +0 -5
  207. package/src/domain/generic/repository/types/repository-order-by-list.type.js +0 -2
  208. package/src/domain/generic/repository/types/repository-order-by-list.type.js.map +0 -1
  209. package/src/domain/generic/repository/types/repository-update-params.type.d.ts +0 -11
  210. package/src/domain/generic/repository/types/repository-update-params.type.js +0 -2
  211. package/src/domain/generic/repository/types/repository-update-params.type.js.map +0 -1
  212. package/src/domain/generic/repository/types/where-options.type.d.ts +0 -2
  213. package/src/domain/generic/repository/types/where-options.type.js +0 -2
  214. package/src/domain/generic/repository/types/where-options.type.js.map +0 -1
  215. package/src/domain/generic/repository/update.repository.d.ts +0 -6
  216. package/src/domain/generic/repository/update.repository.js +0 -2
  217. package/src/domain/generic/repository/update.repository.js.map +0 -1
  218. package/src/domain/index.d.ts +0 -6
  219. package/src/domain/index.js +0 -7
  220. package/src/domain/index.js.map +0 -1
  221. package/src/domain/location/index.d.ts +0 -1
  222. package/src/domain/location/index.js +0 -2
  223. package/src/domain/location/index.js.map +0 -1
  224. package/src/domain/location/models/address.d.ts +0 -24
  225. package/src/domain/location/models/address.js +0 -7
  226. package/src/domain/location/models/address.js.map +0 -1
  227. package/src/domain/location/models/index.d.ts +0 -2
  228. package/src/domain/location/models/index.js +0 -3
  229. package/src/domain/location/models/index.js.map +0 -1
  230. package/src/domain/location/models/types/index.d.ts +0 -3
  231. package/src/domain/location/models/types/index.js +0 -4
  232. package/src/domain/location/models/types/index.js.map +0 -1
  233. package/src/domain/location/models/types/location-bound.type.d.ts +0 -6
  234. package/src/domain/location/models/types/location-bound.type.js +0 -2
  235. package/src/domain/location/models/types/location-bound.type.js.map +0 -1
  236. package/src/domain/location/models/types/location-geometry.type.d.ts +0 -7
  237. package/src/domain/location/models/types/location-geometry.type.js +0 -2
  238. package/src/domain/location/models/types/location-geometry.type.js.map +0 -1
  239. package/src/domain/location/models/types/location-lat-lng.type.d.ts +0 -4
  240. package/src/domain/location/models/types/location-lat-lng.type.js +0 -2
  241. package/src/domain/location/models/types/location-lat-lng.type.js.map +0 -1
  242. package/src/domain/shop-settings/enums/filter-type.enum.d.ts +0 -19
  243. package/src/domain/shop-settings/enums/filter-type.enum.js +0 -21
  244. package/src/domain/shop-settings/enums/filter-type.enum.js.map +0 -1
  245. package/src/domain/shop-settings/enums/index.d.ts +0 -2
  246. package/src/domain/shop-settings/enums/index.js +0 -3
  247. package/src/domain/shop-settings/enums/index.js.map +0 -1
  248. package/src/domain/shop-settings/enums/questions-filters.enum.d.ts +0 -19
  249. package/src/domain/shop-settings/enums/questions-filters.enum.js +0 -21
  250. package/src/domain/shop-settings/enums/questions-filters.enum.js.map +0 -1
  251. package/src/domain/shop-settings/helpers/beauty-questions.helper.d.ts +0 -9
  252. package/src/domain/shop-settings/helpers/beauty-questions.helper.js +0 -47
  253. package/src/domain/shop-settings/helpers/beauty-questions.helper.js.map +0 -1
  254. package/src/domain/shop-settings/helpers/index.d.ts +0 -1
  255. package/src/domain/shop-settings/helpers/index.js +0 -2
  256. package/src/domain/shop-settings/helpers/index.js.map +0 -1
  257. package/src/domain/shop-settings/index.d.ts +0 -4
  258. package/src/domain/shop-settings/index.js +0 -5
  259. package/src/domain/shop-settings/index.js.map +0 -1
  260. package/src/domain/shop-settings/models/home.d.ts +0 -18
  261. package/src/domain/shop-settings/models/home.js +0 -7
  262. package/src/domain/shop-settings/models/home.js.map +0 -1
  263. package/src/domain/shop-settings/models/index.d.ts +0 -4
  264. package/src/domain/shop-settings/models/index.js +0 -5
  265. package/src/domain/shop-settings/models/index.js.map +0 -1
  266. package/src/domain/shop-settings/models/shop-menu.d.ts +0 -7
  267. package/src/domain/shop-settings/models/shop-menu.js +0 -7
  268. package/src/domain/shop-settings/models/shop-menu.js.map +0 -1
  269. package/src/domain/shop-settings/models/shop-settings.d.ts +0 -9
  270. package/src/domain/shop-settings/models/shop-settings.js +0 -7
  271. package/src/domain/shop-settings/models/shop-settings.js.map +0 -1
  272. package/src/domain/shop-settings/models/types/banner.type.d.ts +0 -6
  273. package/src/domain/shop-settings/models/types/banner.type.js +0 -2
  274. package/src/domain/shop-settings/models/types/banner.type.js.map +0 -1
  275. package/src/domain/shop-settings/models/types/benefit.type.d.ts +0 -5
  276. package/src/domain/shop-settings/models/types/benefit.type.js +0 -2
  277. package/src/domain/shop-settings/models/types/benefit.type.js.map +0 -1
  278. package/src/domain/shop-settings/models/types/home-data.type.d.ts +0 -15
  279. package/src/domain/shop-settings/models/types/home-data.type.js +0 -2
  280. package/src/domain/shop-settings/models/types/home-data.type.js.map +0 -1
  281. package/src/domain/shop-settings/models/types/index.d.ts +0 -10
  282. package/src/domain/shop-settings/models/types/index.js +0 -11
  283. package/src/domain/shop-settings/models/types/index.js.map +0 -1
  284. package/src/domain/shop-settings/models/types/menu-nav.type.d.ts +0 -8
  285. package/src/domain/shop-settings/models/types/menu-nav.type.js +0 -2
  286. package/src/domain/shop-settings/models/types/menu-nav.type.js.map +0 -1
  287. package/src/domain/shop-settings/models/types/shop-banner.type.d.ts +0 -12
  288. package/src/domain/shop-settings/models/types/shop-banner.type.js +0 -2
  289. package/src/domain/shop-settings/models/types/shop-banner.type.js.map +0 -1
  290. package/src/domain/shop-settings/models/types/shop-brands.type.d.ts +0 -10
  291. package/src/domain/shop-settings/models/types/shop-brands.type.js +0 -2
  292. package/src/domain/shop-settings/models/types/shop-brands.type.js.map +0 -1
  293. package/src/domain/shop-settings/models/types/shop-carousel.type.d.ts +0 -5
  294. package/src/domain/shop-settings/models/types/shop-carousel.type.js +0 -2
  295. package/src/domain/shop-settings/models/types/shop-carousel.type.js.map +0 -1
  296. package/src/domain/shop-settings/models/types/shop-collection.type.d.ts +0 -9
  297. package/src/domain/shop-settings/models/types/shop-collection.type.js +0 -2
  298. package/src/domain/shop-settings/models/types/shop-collection.type.js.map +0 -1
  299. package/src/domain/shop-settings/models/types/shop-section.type.d.ts +0 -9
  300. package/src/domain/shop-settings/models/types/shop-section.type.js +0 -2
  301. package/src/domain/shop-settings/models/types/shop-section.type.js.map +0 -1
  302. package/src/domain/shop-settings/models/types/sub-menu.type.d.ts +0 -8
  303. package/src/domain/shop-settings/models/types/sub-menu.type.js +0 -2
  304. package/src/domain/shop-settings/models/types/sub-menu.type.js.map +0 -1
  305. package/src/domain/shop-settings/repositories/home.repository.d.ts +0 -4
  306. package/src/domain/shop-settings/repositories/home.repository.js +0 -2
  307. package/src/domain/shop-settings/repositories/home.repository.js.map +0 -1
  308. package/src/domain/shop-settings/repositories/index.d.ts +0 -3
  309. package/src/domain/shop-settings/repositories/index.js +0 -4
  310. package/src/domain/shop-settings/repositories/index.js.map +0 -1
  311. package/src/domain/shop-settings/repositories/shop-menu.repository.d.ts +0 -4
  312. package/src/domain/shop-settings/repositories/shop-menu.repository.js +0 -2
  313. package/src/domain/shop-settings/repositories/shop-menu.repository.js.map +0 -1
  314. package/src/domain/shop-settings/repositories/shop-settings.repository.d.ts +0 -4
  315. package/src/domain/shop-settings/repositories/shop-settings.repository.js +0 -2
  316. package/src/domain/shop-settings/repositories/shop-settings.repository.js.map +0 -1
  317. package/src/domain/shopping/index.d.ts +0 -2
  318. package/src/domain/shopping/index.js +0 -3
  319. package/src/domain/shopping/index.js.map +0 -1
  320. package/src/domain/shopping/models/buy-2-win.d.ts +0 -18
  321. package/src/domain/shopping/models/buy-2-win.js +0 -14
  322. package/src/domain/shopping/models/buy-2-win.js.map +0 -1
  323. package/src/domain/shopping/models/campaign-dashboard.d.ts +0 -15
  324. package/src/domain/shopping/models/campaign-dashboard.js +0 -7
  325. package/src/domain/shopping/models/campaign-dashboard.js.map +0 -1
  326. package/src/domain/shopping/models/campaign-hashtag.d.ts +0 -18
  327. package/src/domain/shopping/models/campaign-hashtag.js +0 -7
  328. package/src/domain/shopping/models/campaign-hashtag.js.map +0 -1
  329. package/src/domain/shopping/models/checkout.d.ts +0 -26
  330. package/src/domain/shopping/models/checkout.js +0 -37
  331. package/src/domain/shopping/models/checkout.js.map +0 -1
  332. package/src/domain/shopping/models/coupons/coupon.d.ts +0 -60
  333. package/src/domain/shopping/models/coupons/coupon.js +0 -38
  334. package/src/domain/shopping/models/coupons/coupon.js.map +0 -1
  335. package/src/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +0 -5
  336. package/src/domain/shopping/models/coupons/enums/coupon-club-mens.enum.js +0 -7
  337. package/src/domain/shopping/models/coupons/enums/coupon-club-mens.enum.js.map +0 -1
  338. package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +0 -4
  339. package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js +0 -6
  340. package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js.map +0 -1
  341. package/src/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +0 -4
  342. package/src/domain/shopping/models/coupons/enums/coupon-types.enum.js +0 -10
  343. package/src/domain/shopping/models/coupons/enums/coupon-types.enum.js.map +0 -1
  344. package/src/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +0 -8
  345. package/src/domain/shopping/models/coupons/enums/exclusivities.enum.js +0 -10
  346. package/src/domain/shopping/models/coupons/enums/exclusivities.enum.js.map +0 -1
  347. package/src/domain/shopping/models/coupons/enums/index.d.ts +0 -3
  348. package/src/domain/shopping/models/coupons/enums/index.js +0 -4
  349. package/src/domain/shopping/models/coupons/enums/index.js.map +0 -1
  350. package/src/domain/shopping/models/coupons/index.d.ts +0 -2
  351. package/src/domain/shopping/models/coupons/index.js +0 -3
  352. package/src/domain/shopping/models/coupons/index.js.map +0 -1
  353. package/src/domain/shopping/models/enums/checkout-types.enum.d.ts +0 -5
  354. package/src/domain/shopping/models/enums/checkout-types.enum.js +0 -7
  355. package/src/domain/shopping/models/enums/checkout-types.enum.js.map +0 -1
  356. package/src/domain/shopping/models/enums/index.d.ts +0 -2
  357. package/src/domain/shopping/models/enums/index.js +0 -3
  358. package/src/domain/shopping/models/enums/index.js.map +0 -1
  359. package/src/domain/shopping/models/enums/order-status.enum.d.ts +0 -10
  360. package/src/domain/shopping/models/enums/order-status.enum.js +0 -12
  361. package/src/domain/shopping/models/enums/order-status.enum.js.map +0 -1
  362. package/src/domain/shopping/models/index.d.ts +0 -12
  363. package/src/domain/shopping/models/index.js +0 -13
  364. package/src/domain/shopping/models/index.js.map +0 -1
  365. package/src/domain/shopping/models/line-item.d.ts +0 -8
  366. package/src/domain/shopping/models/line-item.js +0 -4
  367. package/src/domain/shopping/models/line-item.js.map +0 -1
  368. package/src/domain/shopping/models/order.d.ts +0 -10
  369. package/src/domain/shopping/models/order.js +0 -11
  370. package/src/domain/shopping/models/order.js.map +0 -1
  371. package/src/domain/shopping/models/payment.d.ts +0 -67
  372. package/src/domain/shopping/models/payment.js +0 -169
  373. package/src/domain/shopping/models/payment.js.map +0 -1
  374. package/src/domain/shopping/models/shipping-method.d.ts +0 -17
  375. package/src/domain/shopping/models/shipping-method.js +0 -7
  376. package/src/domain/shopping/models/shipping-method.js.map +0 -1
  377. package/src/domain/shopping/models/subscription/checkout.d.ts +0 -20
  378. package/src/domain/shopping/models/subscription/checkout.js +0 -28
  379. package/src/domain/shopping/models/subscription/checkout.js.map +0 -1
  380. package/src/domain/shopping/models/subscription/index.d.ts +0 -2
  381. package/src/domain/shopping/models/subscription/index.js +0 -3
  382. package/src/domain/shopping/models/subscription/index.js.map +0 -1
  383. package/src/domain/shopping/models/subscription/plan.d.ts +0 -10
  384. package/src/domain/shopping/models/subscription/plan.js +0 -7
  385. package/src/domain/shopping/models/subscription/plan.js.map +0 -1
  386. package/src/domain/shopping/models/types/index.d.ts +0 -7
  387. package/src/domain/shopping/models/types/index.js +0 -8
  388. package/src/domain/shopping/models/types/index.js.map +0 -1
  389. package/src/domain/shopping/models/types/payment-address.type.d.ts +0 -12
  390. package/src/domain/shopping/models/types/payment-address.type.js +0 -2
  391. package/src/domain/shopping/models/types/payment-address.type.js.map +0 -1
  392. package/src/domain/shopping/models/types/payment-billing.type.d.ts +0 -7
  393. package/src/domain/shopping/models/types/payment-billing.type.js +0 -2
  394. package/src/domain/shopping/models/types/payment-billing.type.js.map +0 -1
  395. package/src/domain/shopping/models/types/payment-card.type.d.ts +0 -14
  396. package/src/domain/shopping/models/types/payment-card.type.js +0 -2
  397. package/src/domain/shopping/models/types/payment-card.type.js.map +0 -1
  398. package/src/domain/shopping/models/types/payment-customer.type.d.ts +0 -18
  399. package/src/domain/shopping/models/types/payment-customer.type.js +0 -2
  400. package/src/domain/shopping/models/types/payment-customer.type.js.map +0 -1
  401. package/src/domain/shopping/models/types/payment-document.type.d.ts +0 -6
  402. package/src/domain/shopping/models/types/payment-document.type.js +0 -2
  403. package/src/domain/shopping/models/types/payment-document.type.js.map +0 -1
  404. package/src/domain/shopping/models/types/payment-item.type.d.ts +0 -11
  405. package/src/domain/shopping/models/types/payment-item.type.js +0 -2
  406. package/src/domain/shopping/models/types/payment-item.type.js.map +0 -1
  407. package/src/domain/shopping/models/types/payment-shipping.type.d.ts +0 -10
  408. package/src/domain/shopping/models/types/payment-shipping.type.js +0 -2
  409. package/src/domain/shopping/models/types/payment-shipping.type.js.map +0 -1
  410. package/src/domain/shopping/repositories/buy-2-win.repository.d.ts +0 -4
  411. package/src/domain/shopping/repositories/buy-2-win.repository.js +0 -2
  412. package/src/domain/shopping/repositories/buy-2-win.repository.js.map +0 -1
  413. package/src/domain/shopping/repositories/campaign-dashboard.repository.d.ts +0 -4
  414. package/src/domain/shopping/repositories/campaign-dashboard.repository.js +0 -2
  415. package/src/domain/shopping/repositories/campaign-dashboard.repository.js.map +0 -1
  416. package/src/domain/shopping/repositories/campaign-hashtag.repository.d.ts +0 -4
  417. package/src/domain/shopping/repositories/campaign-hashtag.repository.js +0 -2
  418. package/src/domain/shopping/repositories/campaign-hashtag.repository.js.map +0 -1
  419. package/src/domain/shopping/repositories/checkout.repository.d.ts +0 -4
  420. package/src/domain/shopping/repositories/checkout.repository.js +0 -2
  421. package/src/domain/shopping/repositories/checkout.repository.js.map +0 -1
  422. package/src/domain/shopping/repositories/coupon.repository.d.ts +0 -4
  423. package/src/domain/shopping/repositories/coupon.repository.js +0 -2
  424. package/src/domain/shopping/repositories/coupon.repository.js.map +0 -1
  425. package/src/domain/shopping/repositories/index.d.ts +0 -9
  426. package/src/domain/shopping/repositories/index.js +0 -10
  427. package/src/domain/shopping/repositories/index.js.map +0 -1
  428. package/src/domain/shopping/repositories/legacy-order.repository.d.ts +0 -3
  429. package/src/domain/shopping/repositories/legacy-order.repository.js +0 -2
  430. package/src/domain/shopping/repositories/legacy-order.repository.js.map +0 -1
  431. package/src/domain/shopping/repositories/order.repository.d.ts +0 -4
  432. package/src/domain/shopping/repositories/order.repository.js +0 -2
  433. package/src/domain/shopping/repositories/order.repository.js.map +0 -1
  434. package/src/domain/shopping/repositories/payment.repository.d.ts +0 -4
  435. package/src/domain/shopping/repositories/payment.repository.js +0 -2
  436. package/src/domain/shopping/repositories/payment.repository.js.map +0 -1
  437. package/src/domain/shopping/repositories/subscription/checkout.repository.d.ts +0 -4
  438. package/src/domain/shopping/repositories/subscription/checkout.repository.js +0 -2
  439. package/src/domain/shopping/repositories/subscription/checkout.repository.js.map +0 -1
  440. package/src/domain/shopping/repositories/subscription/index.d.ts +0 -2
  441. package/src/domain/shopping/repositories/subscription/index.js +0 -3
  442. package/src/domain/shopping/repositories/subscription/index.js.map +0 -1
  443. package/src/domain/shopping/repositories/subscription/plan.repository.d.ts +0 -4
  444. package/src/domain/shopping/repositories/subscription/plan.repository.js +0 -2
  445. package/src/domain/shopping/repositories/subscription/plan.repository.js.map +0 -1
  446. package/src/domain/users/errors/index.d.ts +0 -3
  447. package/src/domain/users/errors/index.js +0 -4
  448. package/src/domain/users/errors/index.js.map +0 -1
  449. package/src/domain/users/errors/unauthorized.error.d.ts +0 -4
  450. package/src/domain/users/errors/unauthorized.error.js +0 -7
  451. package/src/domain/users/errors/unauthorized.error.js.map +0 -1
  452. package/src/domain/users/errors/user-already-registered.error.d.ts +0 -4
  453. package/src/domain/users/errors/user-already-registered.error.js +0 -7
  454. package/src/domain/users/errors/user-already-registered.error.js.map +0 -1
  455. package/src/domain/users/errors/weak-password.error.d.ts +0 -4
  456. package/src/domain/users/errors/weak-password.error.js +0 -7
  457. package/src/domain/users/errors/weak-password.error.js.map +0 -1
  458. package/src/domain/users/index.d.ts +0 -5
  459. package/src/domain/users/index.js +0 -6
  460. package/src/domain/users/index.js.map +0 -1
  461. package/src/domain/users/models/beauty-profile.d.ts +0 -11
  462. package/src/domain/users/models/beauty-profile.js +0 -12
  463. package/src/domain/users/models/beauty-profile.js.map +0 -1
  464. package/src/domain/users/models/enums/accessory-importances.enum.d.ts +0 -5
  465. package/src/domain/users/models/enums/accessory-importances.enum.js +0 -7
  466. package/src/domain/users/models/enums/accessory-importances.enum.js.map +0 -1
  467. package/src/domain/users/models/enums/area.enum.d.ts +0 -11
  468. package/src/domain/users/models/enums/area.enum.js +0 -13
  469. package/src/domain/users/models/enums/area.enum.js.map +0 -1
  470. package/src/domain/users/models/enums/beard-problems.enum.d.ts +0 -9
  471. package/src/domain/users/models/enums/beard-problems.enum.js +0 -11
  472. package/src/domain/users/models/enums/beard-problems.enum.js.map +0 -1
  473. package/src/domain/users/models/enums/beard-sizes.enum.d.ts +0 -7
  474. package/src/domain/users/models/enums/beard-sizes.enum.js +0 -9
  475. package/src/domain/users/models/enums/beard-sizes.enum.js.map +0 -1
  476. package/src/domain/users/models/enums/beauty-product-importances.enum.d.ts +0 -6
  477. package/src/domain/users/models/enums/beauty-product-importances.enum.js +0 -8
  478. package/src/domain/users/models/enums/beauty-product-importances.enum.js.map +0 -1
  479. package/src/domain/users/models/enums/body-problems.enum.d.ts +0 -11
  480. package/src/domain/users/models/enums/body-problems.enum.js +0 -13
  481. package/src/domain/users/models/enums/body-problems.enum.js.map +0 -1
  482. package/src/domain/users/models/enums/body-shapes.enum.d.ts +0 -7
  483. package/src/domain/users/models/enums/body-shapes.enum.js +0 -9
  484. package/src/domain/users/models/enums/body-shapes.enum.js.map +0 -1
  485. package/src/domain/users/models/enums/body-tattoos.enum.d.ts +0 -5
  486. package/src/domain/users/models/enums/body-tattoos.enum.js +0 -7
  487. package/src/domain/users/models/enums/body-tattoos.enum.js.map +0 -1
  488. package/src/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +0 -7
  489. package/src/domain/users/models/enums/face-skin-oilinesses.enum.js +0 -9
  490. package/src/domain/users/models/enums/face-skin-oilinesses.enum.js.map +0 -1
  491. package/src/domain/users/models/enums/face-skin-problems.enum.d.ts +0 -10
  492. package/src/domain/users/models/enums/face-skin-problems.enum.js +0 -12
  493. package/src/domain/users/models/enums/face-skin-problems.enum.js.map +0 -1
  494. package/src/domain/users/models/enums/face-skin-tones.enum.d.ts +0 -8
  495. package/src/domain/users/models/enums/face-skin-tones.enum.js +0 -10
  496. package/src/domain/users/models/enums/face-skin-tones.enum.js.map +0 -1
  497. package/src/domain/users/models/enums/family-incomes.enum.d.ts +0 -8
  498. package/src/domain/users/models/enums/family-incomes.enum.js +0 -10
  499. package/src/domain/users/models/enums/family-incomes.enum.js.map +0 -1
  500. package/src/domain/users/models/enums/fragrance-importances.enum.d.ts +0 -5
  501. package/src/domain/users/models/enums/fragrance-importances.enum.js +0 -7
  502. package/src/domain/users/models/enums/fragrance-importances.enum.js.map +0 -1
  503. package/src/domain/users/models/enums/hair-colors.enum.d.ts +0 -10
  504. package/src/domain/users/models/enums/hair-colors.enum.js +0 -12
  505. package/src/domain/users/models/enums/hair-colors.enum.js.map +0 -1
  506. package/src/domain/users/models/enums/hair-problems.enum.d.ts +0 -10
  507. package/src/domain/users/models/enums/hair-problems.enum.js +0 -12
  508. package/src/domain/users/models/enums/hair-problems.enum.js.map +0 -1
  509. package/src/domain/users/models/enums/hair-strands.enum.d.ts +0 -8
  510. package/src/domain/users/models/enums/hair-strands.enum.js +0 -10
  511. package/src/domain/users/models/enums/hair-strands.enum.js.map +0 -1
  512. package/src/domain/users/models/enums/hair-types.enum.d.ts +0 -7
  513. package/src/domain/users/models/enums/hair-types.enum.js +0 -9
  514. package/src/domain/users/models/enums/hair-types.enum.js.map +0 -1
  515. package/src/domain/users/models/enums/index.d.ts +0 -20
  516. package/src/domain/users/models/enums/index.js +0 -21
  517. package/src/domain/users/models/enums/index.js.map +0 -1
  518. package/src/domain/users/models/enums/office-position.enum.d.ts +0 -6
  519. package/src/domain/users/models/enums/office-position.enum.js +0 -8
  520. package/src/domain/users/models/enums/office-position.enum.js.map +0 -1
  521. package/src/domain/users/models/enums/product-spents.enum.d.ts +0 -8
  522. package/src/domain/users/models/enums/product-spents.enum.js +0 -10
  523. package/src/domain/users/models/enums/product-spents.enum.js.map +0 -1
  524. package/src/domain/users/models/enums/user-type.enum.d.ts +0 -8
  525. package/src/domain/users/models/enums/user-type.enum.js +0 -10
  526. package/src/domain/users/models/enums/user-type.enum.js.map +0 -1
  527. package/src/domain/users/models/index.d.ts +0 -7
  528. package/src/domain/users/models/index.js +0 -8
  529. package/src/domain/users/models/index.js.map +0 -1
  530. package/src/domain/users/models/lead.d.ts +0 -8
  531. package/src/domain/users/models/lead.js +0 -7
  532. package/src/domain/users/models/lead.js.map +0 -1
  533. package/src/domain/users/models/subscription/edition.d.ts +0 -16
  534. package/src/domain/users/models/subscription/edition.js +0 -7
  535. package/src/domain/users/models/subscription/edition.js.map +0 -1
  536. package/src/domain/users/models/subscription/enums/billing-status.enum.d.ts +0 -3
  537. package/src/domain/users/models/subscription/enums/billing-status.enum.js +0 -5
  538. package/src/domain/users/models/subscription/enums/billing-status.enum.js.map +0 -1
  539. package/src/domain/users/models/subscription/enums/edition-status.enum.d.ts +0 -4
  540. package/src/domain/users/models/subscription/enums/edition-status.enum.js +0 -6
  541. package/src/domain/users/models/subscription/enums/edition-status.enum.js.map +0 -1
  542. package/src/domain/users/models/subscription/enums/index.d.ts +0 -4
  543. package/src/domain/users/models/subscription/enums/index.js +0 -5
  544. package/src/domain/users/models/subscription/enums/index.js.map +0 -1
  545. package/src/domain/users/models/subscription/enums/payment-type.enum.d.ts +0 -5
  546. package/src/domain/users/models/subscription/enums/payment-type.enum.js +0 -7
  547. package/src/domain/users/models/subscription/enums/payment-type.enum.js.map +0 -1
  548. package/src/domain/users/models/subscription/enums/status.enum.d.ts +0 -4
  549. package/src/domain/users/models/subscription/enums/status.enum.js +0 -6
  550. package/src/domain/users/models/subscription/enums/status.enum.js.map +0 -1
  551. package/src/domain/users/models/subscription/index.d.ts +0 -4
  552. package/src/domain/users/models/subscription/index.js +0 -5
  553. package/src/domain/users/models/subscription/index.js.map +0 -1
  554. package/src/domain/users/models/subscription/payment.d.ts +0 -13
  555. package/src/domain/users/models/subscription/payment.js +0 -14
  556. package/src/domain/users/models/subscription/payment.js.map +0 -1
  557. package/src/domain/users/models/subscription/subscription.d.ts +0 -28
  558. package/src/domain/users/models/subscription/subscription.js +0 -43
  559. package/src/domain/users/models/subscription/subscription.js.map +0 -1
  560. package/src/domain/users/models/user-address.d.ts +0 -6
  561. package/src/domain/users/models/user-address.js +0 -7
  562. package/src/domain/users/models/user-address.js.map +0 -1
  563. package/src/domain/users/models/user-payment-method.d.ts +0 -14
  564. package/src/domain/users/models/user-payment-method.js +0 -7
  565. package/src/domain/users/models/user-payment-method.js.map +0 -1
  566. package/src/domain/users/models/user.d.ts +0 -27
  567. package/src/domain/users/models/user.js +0 -26
  568. package/src/domain/users/models/user.js.map +0 -1
  569. package/src/domain/users/repositories/beauty-profile.repository.d.ts +0 -4
  570. package/src/domain/users/repositories/beauty-profile.repository.js +0 -2
  571. package/src/domain/users/repositories/beauty-profile.repository.js.map +0 -1
  572. package/src/domain/users/repositories/edition.repository.d.ts +0 -4
  573. package/src/domain/users/repositories/edition.repository.js +0 -2
  574. package/src/domain/users/repositories/edition.repository.js.map +0 -1
  575. package/src/domain/users/repositories/index.d.ts +0 -8
  576. package/src/domain/users/repositories/index.js +0 -9
  577. package/src/domain/users/repositories/index.js.map +0 -1
  578. package/src/domain/users/repositories/lead.repository.d.ts +0 -4
  579. package/src/domain/users/repositories/lead.repository.js +0 -2
  580. package/src/domain/users/repositories/lead.repository.js.map +0 -1
  581. package/src/domain/users/repositories/subscription-payment.repository.d.ts +0 -4
  582. package/src/domain/users/repositories/subscription-payment.repository.js +0 -2
  583. package/src/domain/users/repositories/subscription-payment.repository.js.map +0 -1
  584. package/src/domain/users/repositories/subscription.repository.d.ts +0 -4
  585. package/src/domain/users/repositories/subscription.repository.js +0 -2
  586. package/src/domain/users/repositories/subscription.repository.js.map +0 -1
  587. package/src/domain/users/repositories/user-address.repository.d.ts +0 -4
  588. package/src/domain/users/repositories/user-address.repository.js +0 -2
  589. package/src/domain/users/repositories/user-address.repository.js.map +0 -1
  590. package/src/domain/users/repositories/user-payment-method.repository.d.ts +0 -4
  591. package/src/domain/users/repositories/user-payment-method.repository.js +0 -2
  592. package/src/domain/users/repositories/user-payment-method.repository.js.map +0 -1
  593. package/src/domain/users/repositories/user.repository.d.ts +0 -6
  594. package/src/domain/users/repositories/user.repository.js +0 -2
  595. package/src/domain/users/repositories/user.repository.js.map +0 -1
  596. package/src/domain/users/services/authentication.service.d.ts +0 -12
  597. package/src/domain/users/services/authentication.service.js +0 -2
  598. package/src/domain/users/services/authentication.service.js.map +0 -1
  599. package/src/domain/users/services/index.d.ts +0 -3
  600. package/src/domain/users/services/index.js +0 -4
  601. package/src/domain/users/services/index.js.map +0 -1
  602. package/src/domain/users/services/register.service.d.ts +0 -7
  603. package/src/domain/users/services/register.service.js +0 -2
  604. package/src/domain/users/services/register.service.js.map +0 -1
  605. package/src/domain/users/services/types/basic-user-data.type.d.ts +0 -4
  606. package/src/domain/users/services/types/basic-user-data.type.js +0 -2
  607. package/src/domain/users/services/types/basic-user-data.type.js.map +0 -1
  608. package/src/domain/users/services/types/index.d.ts +0 -1
  609. package/src/domain/users/services/types/index.js +0 -2
  610. package/src/domain/users/services/types/index.js.map +0 -1
  611. package/src/domain/users/use-cases/authentication.d.ts +0 -21
  612. package/src/domain/users/use-cases/authentication.js +0 -35
  613. package/src/domain/users/use-cases/authentication.js.map +0 -1
  614. package/src/domain/users/use-cases/index.d.ts +0 -4
  615. package/src/domain/users/use-cases/index.js +0 -5
  616. package/src/domain/users/use-cases/index.js.map +0 -1
  617. package/src/domain/users/use-cases/recovery-password.d.ts +0 -6
  618. package/src/domain/users/use-cases/recovery-password.js +0 -9
  619. package/src/domain/users/use-cases/recovery-password.js.map +0 -1
  620. package/src/domain/users/use-cases/register.d.ts +0 -13
  621. package/src/domain/users/use-cases/register.js +0 -31
  622. package/src/domain/users/use-cases/register.js.map +0 -1
  623. package/src/domain/users/use-cases/signout.d.ts +0 -6
  624. package/src/domain/users/use-cases/signout.js +0 -9
  625. package/src/domain/users/use-cases/signout.js.map +0 -1
  626. package/src/errors/duplicated-results.error.d.ts +0 -4
  627. package/src/errors/duplicated-results.error.js +0 -7
  628. package/src/errors/duplicated-results.error.js.map +0 -1
  629. package/src/errors/index.d.ts +0 -4
  630. package/src/errors/index.js +0 -5
  631. package/src/errors/index.js.map +0 -1
  632. package/src/errors/invalid-argument.error.d.ts +0 -4
  633. package/src/errors/invalid-argument.error.js +0 -7
  634. package/src/errors/invalid-argument.error.js.map +0 -1
  635. package/src/errors/not-found.error.d.ts +0 -4
  636. package/src/errors/not-found.error.js +0 -7
  637. package/src/errors/not-found.error.js.map +0 -1
  638. package/src/errors/required-argument.error.d.ts +0 -6
  639. package/src/errors/required-argument.error.js +0 -9
  640. package/src/errors/required-argument.error.js.map +0 -1
  641. package/src/index.d.ts +0 -5
  642. package/src/index.js +0 -6
  643. package/src/index.js.map +0 -1
  644. package/src/infra/elasticsearch/adapters/axios.adapter.d.ts +0 -16
  645. package/src/infra/elasticsearch/adapters/axios.adapter.js +0 -67
  646. package/src/infra/elasticsearch/adapters/axios.adapter.js.map +0 -1
  647. package/src/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +0 -8
  648. package/src/infra/elasticsearch/adapters/elastic-search.adapter.js +0 -2
  649. package/src/infra/elasticsearch/adapters/elastic-search.adapter.js.map +0 -1
  650. package/src/infra/elasticsearch/adapters/index.d.ts +0 -2
  651. package/src/infra/elasticsearch/adapters/index.js +0 -3
  652. package/src/infra/elasticsearch/adapters/index.js.map +0 -1
  653. package/src/infra/elasticsearch/index.d.ts +0 -3
  654. package/src/infra/elasticsearch/index.js +0 -4
  655. package/src/infra/elasticsearch/index.js.map +0 -1
  656. package/src/infra/elasticsearch/indexes/index.d.ts +0 -1
  657. package/src/infra/elasticsearch/indexes/index.js +0 -2
  658. package/src/infra/elasticsearch/indexes/index.js.map +0 -1
  659. package/src/infra/elasticsearch/indexes/products-index.d.ts +0 -13
  660. package/src/infra/elasticsearch/indexes/products-index.js +0 -105
  661. package/src/infra/elasticsearch/indexes/products-index.js.map +0 -1
  662. package/src/infra/elasticsearch/types/elastic-search-result.d.ts +0 -9
  663. package/src/infra/elasticsearch/types/elastic-search-result.js +0 -2
  664. package/src/infra/elasticsearch/types/elastic-search-result.js.map +0 -1
  665. package/src/infra/elasticsearch/types/index.d.ts +0 -1
  666. package/src/infra/elasticsearch/types/index.js +0 -2
  667. package/src/infra/elasticsearch/types/index.js.map +0 -1
  668. package/src/infra/firebase/auth/authentication-firebase-auth.service.d.ts +0 -12
  669. package/src/infra/firebase/auth/authentication-firebase-auth.service.js +0 -41
  670. package/src/infra/firebase/auth/authentication-firebase-auth.service.js.map +0 -1
  671. package/src/infra/firebase/auth/index.d.ts +0 -2
  672. package/src/infra/firebase/auth/index.js +0 -3
  673. package/src/infra/firebase/auth/index.js.map +0 -1
  674. package/src/infra/firebase/auth/register-firebase-auth.service.d.ts +0 -8
  675. package/src/infra/firebase/auth/register-firebase-auth.service.js +0 -33
  676. package/src/infra/firebase/auth/register-firebase-auth.service.js.map +0 -1
  677. package/src/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +0 -5
  678. package/src/infra/firebase/auth/types/firebase-user-with-id.type.js +0 -2
  679. package/src/infra/firebase/auth/types/firebase-user-with-id.type.js.map +0 -1
  680. package/src/infra/firebase/auth/types/index.d.ts +0 -1
  681. package/src/infra/firebase/auth/types/index.js +0 -2
  682. package/src/infra/firebase/auth/types/index.js.map +0 -1
  683. package/src/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +0 -8
  684. package/src/infra/firebase/firestore/enums/firestore-field-type.enum.js +0 -10
  685. package/src/infra/firebase/firestore/enums/firestore-field-type.enum.js.map +0 -1
  686. package/src/infra/firebase/firestore/enums/index.d.ts +0 -1
  687. package/src/infra/firebase/firestore/enums/index.js +0 -2
  688. package/src/infra/firebase/firestore/enums/index.js.map +0 -1
  689. package/src/infra/firebase/firestore/index.d.ts +0 -3
  690. package/src/infra/firebase/firestore/index.js +0 -4
  691. package/src/infra/firebase/firestore/index.js.map +0 -1
  692. package/src/infra/firebase/firestore/mixins/index.d.ts +0 -9
  693. package/src/infra/firebase/firestore/mixins/index.js +0 -10
  694. package/src/infra/firebase/firestore/mixins/index.js.map +0 -1
  695. package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +0 -4
  696. package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +0 -33
  697. package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.js.map +0 -1
  698. package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +0 -5
  699. package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +0 -10
  700. package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js.map +0 -1
  701. package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +0 -4
  702. package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +0 -19
  703. package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js.map +0 -1
  704. package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +0 -4
  705. package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +0 -109
  706. package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.js.map +0 -1
  707. package/src/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +0 -13
  708. package/src/infra/firebase/firestore/mixins/with-firestore.mixin.js +0 -77
  709. package/src/infra/firebase/firestore/mixins/with-firestore.mixin.js.map +0 -1
  710. package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +0 -4
  711. package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +0 -24
  712. package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.js.map +0 -1
  713. package/src/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +0 -11
  714. package/src/infra/firebase/firestore/mixins/with-helpers.mixin.js +0 -17
  715. package/src/infra/firebase/firestore/mixins/with-helpers.mixin.js.map +0 -1
  716. package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +0 -11
  717. package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +0 -13
  718. package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.js.map +0 -1
  719. package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +0 -7
  720. package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +0 -52
  721. package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.js.map +0 -1
  722. package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +0 -20
  723. package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +0 -67
  724. package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js.map +0 -1
  725. package/src/infra/firebase/firestore/repositories/catalog/index.d.ts +0 -4
  726. package/src/infra/firebase/firestore/repositories/catalog/index.js +0 -5
  727. package/src/infra/firebase/firestore/repositories/catalog/index.js.map +0 -1
  728. package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +0 -12
  729. package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +0 -56
  730. package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js.map +0 -1
  731. package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +0 -12
  732. package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js +0 -16
  733. package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js.map +0 -1
  734. package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +0 -7
  735. package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js +0 -14
  736. package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js.map +0 -1
  737. package/src/infra/firebase/firestore/repositories/index.d.ts +0 -4
  738. package/src/infra/firebase/firestore/repositories/index.js +0 -5
  739. package/src/infra/firebase/firestore/repositories/index.js.map +0 -1
  740. package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +0 -16
  741. package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js +0 -66
  742. package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js.map +0 -1
  743. package/src/infra/firebase/firestore/repositories/shop-settings/index.d.ts +0 -3
  744. package/src/infra/firebase/firestore/repositories/shop-settings/index.js +0 -4
  745. package/src/infra/firebase/firestore/repositories/shop-settings/index.js.map +0 -1
  746. package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +0 -7
  747. package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js +0 -14
  748. package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js.map +0 -1
  749. package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.d.ts +0 -7
  750. package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.js +0 -14
  751. package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.js.map +0 -1
  752. package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +0 -7
  753. package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js +0 -14
  754. package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js.map +0 -1
  755. package/src/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +0 -8
  756. package/src/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.js +0 -14
  757. package/src/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.js.map +0 -1
  758. package/src/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +0 -8
  759. package/src/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.js +0 -14
  760. package/src/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.js.map +0 -1
  761. package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +0 -7
  762. package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js +0 -14
  763. package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js.map +0 -1
  764. package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +0 -7
  765. package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js +0 -14
  766. package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js.map +0 -1
  767. package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +0 -12
  768. package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js +0 -31
  769. package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js.map +0 -1
  770. package/src/infra/firebase/firestore/repositories/shopping/index.d.ts +0 -10
  771. package/src/infra/firebase/firestore/repositories/shopping/index.js +0 -11
  772. package/src/infra/firebase/firestore/repositories/shopping/index.js.map +0 -1
  773. package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +0 -6
  774. package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js +0 -11
  775. package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js.map +0 -1
  776. package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +0 -13
  777. package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +0 -41
  778. package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js.map +0 -1
  779. package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +0 -7
  780. package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js +0 -14
  781. package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js.map +0 -1
  782. package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +0 -7
  783. package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js +0 -14
  784. package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js.map +0 -1
  785. package/src/infra/firebase/firestore/repositories/users/index.d.ts +0 -8
  786. package/src/infra/firebase/firestore/repositories/users/index.js +0 -9
  787. package/src/infra/firebase/firestore/repositories/users/index.js.map +0 -1
  788. package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +0 -7
  789. package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.js +0 -14
  790. package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.js.map +0 -1
  791. package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +0 -12
  792. package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js +0 -16
  793. package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js.map +0 -1
  794. package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +0 -7
  795. package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js +0 -14
  796. package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js.map +0 -1
  797. package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +0 -12
  798. package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js +0 -16
  799. package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js.map +0 -1
  800. package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +0 -12
  801. package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js +0 -16
  802. package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js.map +0 -1
  803. package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +0 -12
  804. package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js +0 -16
  805. package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js.map +0 -1
  806. package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +0 -17
  807. package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.js +0 -50
  808. package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.js.map +0 -1
  809. package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +0 -12
  810. package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js +0 -16
  811. package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js.map +0 -1
  812. package/src/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +0 -14
  813. package/src/infra/firebase/firestore/types/firestore-interceptors.type.js +0 -2
  814. package/src/infra/firebase/firestore/types/firestore-interceptors.type.js.map +0 -1
  815. package/src/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +0 -6
  816. package/src/infra/firebase/firestore/types/firestore-sub.repository.type.js +0 -2
  817. package/src/infra/firebase/firestore/types/firestore-sub.repository.type.js.map +0 -1
  818. package/src/infra/firebase/firestore/types/firestore.helpers.type.d.ts +0 -8
  819. package/src/infra/firebase/firestore/types/firestore.helpers.type.js +0 -2
  820. package/src/infra/firebase/firestore/types/firestore.helpers.type.js.map +0 -1
  821. package/src/infra/firebase/firestore/types/firestore.repository.type.d.ts +0 -16
  822. package/src/infra/firebase/firestore/types/firestore.repository.type.js +0 -2
  823. package/src/infra/firebase/firestore/types/firestore.repository.type.js.map +0 -1
  824. package/src/infra/firebase/firestore/types/index.d.ts +0 -4
  825. package/src/infra/firebase/firestore/types/index.js +0 -5
  826. package/src/infra/firebase/firestore/types/index.js.map +0 -1
  827. package/src/infra/firebase/index.d.ts +0 -2
  828. package/src/infra/firebase/index.js +0 -3
  829. package/src/infra/firebase/index.js.map +0 -1
  830. package/src/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +0 -11
  831. package/src/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.js +0 -13
  832. package/src/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.js.map +0 -1
  833. package/src/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +0 -15
  834. package/src/infra/hasura-graphql/enums/hasura-graphql-where.enum.js +0 -17
  835. package/src/infra/hasura-graphql/enums/hasura-graphql-where.enum.js.map +0 -1
  836. package/src/infra/hasura-graphql/enums/index.d.ts +0 -2
  837. package/src/infra/hasura-graphql/enums/index.js +0 -3
  838. package/src/infra/hasura-graphql/enums/index.js.map +0 -1
  839. package/src/infra/hasura-graphql/index.d.ts +0 -4
  840. package/src/infra/hasura-graphql/index.js +0 -5
  841. package/src/infra/hasura-graphql/index.js.map +0 -1
  842. package/src/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +0 -19
  843. package/src/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +0 -32
  844. package/src/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js.map +0 -1
  845. package/src/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +0 -10
  846. package/src/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.js +0 -56
  847. package/src/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.js.map +0 -1
  848. package/src/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +0 -8
  849. package/src/infra/hasura-graphql/mixins/helpers/filter-option.helper.js +0 -22
  850. package/src/infra/hasura-graphql/mixins/helpers/filter-option.helper.js.map +0 -1
  851. package/src/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +0 -12
  852. package/src/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js +0 -104
  853. package/src/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js.map +0 -1
  854. package/src/infra/hasura-graphql/mixins/helpers/index.d.ts +0 -4
  855. package/src/infra/hasura-graphql/mixins/helpers/index.js +0 -5
  856. package/src/infra/hasura-graphql/mixins/helpers/index.js.map +0 -1
  857. package/src/infra/hasura-graphql/mixins/index.d.ts +0 -7
  858. package/src/infra/hasura-graphql/mixins/index.js +0 -8
  859. package/src/infra/hasura-graphql/mixins/index.js.map +0 -1
  860. package/src/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +0 -9
  861. package/src/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js +0 -41
  862. package/src/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js.map +0 -1
  863. package/src/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +0 -11
  864. package/src/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.js +0 -10
  865. package/src/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.js.map +0 -1
  866. package/src/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +0 -7
  867. package/src/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.js +0 -28
  868. package/src/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.js.map +0 -1
  869. package/src/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +0 -34
  870. package/src/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +0 -143
  871. package/src/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js.map +0 -1
  872. package/src/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +0 -25
  873. package/src/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.js +0 -35
  874. package/src/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.js.map +0 -1
  875. package/src/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +0 -23
  876. package/src/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +0 -105
  877. package/src/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js.map +0 -1
  878. package/src/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +0 -14
  879. package/src/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js +0 -57
  880. package/src/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js.map +0 -1
  881. package/src/infra/hasura-graphql/models/category-hasura-graphql.d.ts +0 -6
  882. package/src/infra/hasura-graphql/models/category-hasura-graphql.js +0 -4
  883. package/src/infra/hasura-graphql/models/category-hasura-graphql.js.map +0 -1
  884. package/src/infra/hasura-graphql/models/index.d.ts +0 -4
  885. package/src/infra/hasura-graphql/models/index.js +0 -5
  886. package/src/infra/hasura-graphql/models/index.js.map +0 -1
  887. package/src/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +0 -6
  888. package/src/infra/hasura-graphql/models/kit-product-hasura-graphql.js +0 -15
  889. package/src/infra/hasura-graphql/models/kit-product-hasura-graphql.js.map +0 -1
  890. package/src/infra/hasura-graphql/models/product-hasura-graphql.d.ts +0 -18
  891. package/src/infra/hasura-graphql/models/product-hasura-graphql.js +0 -11
  892. package/src/infra/hasura-graphql/models/product-hasura-graphql.js.map +0 -1
  893. package/src/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +0 -10
  894. package/src/infra/hasura-graphql/models/variant-hasura-graphql.js +0 -9
  895. package/src/infra/hasura-graphql/models/variant-hasura-graphql.js.map +0 -1
  896. package/src/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.d.ts +0 -10
  897. package/src/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.js +0 -39
  898. package/src/infra/hasura-graphql/repositories/catalog/category-collection-children-hasura-graphql.repository.js.map +0 -1
  899. package/src/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +0 -12
  900. package/src/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.js +0 -107
  901. package/src/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.js.map +0 -1
  902. package/src/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +0 -34
  903. package/src/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +0 -330
  904. package/src/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js.map +0 -1
  905. package/src/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +0 -18
  906. package/src/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.js +0 -106
  907. package/src/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.js.map +0 -1
  908. package/src/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +0 -10
  909. package/src/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.js +0 -22
  910. package/src/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.js.map +0 -1
  911. package/src/infra/hasura-graphql/repositories/catalog/index.d.ts +0 -8
  912. package/src/infra/hasura-graphql/repositories/catalog/index.js +0 -9
  913. package/src/infra/hasura-graphql/repositories/catalog/index.js.map +0 -1
  914. package/src/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +0 -30
  915. package/src/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +0 -461
  916. package/src/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js.map +0 -1
  917. package/src/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +0 -14
  918. package/src/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js +0 -107
  919. package/src/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js.map +0 -1
  920. package/src/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.d.ts +0 -27
  921. package/src/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.js +0 -228
  922. package/src/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.js.map +0 -1
  923. package/src/infra/hasura-graphql/repositories/index.d.ts +0 -1
  924. package/src/infra/hasura-graphql/repositories/index.js +0 -2
  925. package/src/infra/hasura-graphql/repositories/index.js.map +0 -1
  926. package/src/infra/hasura-graphql/types/fields.type.d.ts +0 -2
  927. package/src/infra/hasura-graphql/types/fields.type.js +0 -2
  928. package/src/infra/hasura-graphql/types/fields.type.js.map +0 -1
  929. package/src/infra/hasura-graphql/types/graphql.repository.type.d.ts +0 -24
  930. package/src/infra/hasura-graphql/types/graphql.repository.type.js +0 -2
  931. package/src/infra/hasura-graphql/types/graphql.repository.type.js.map +0 -1
  932. package/src/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +0 -8
  933. package/src/infra/hasura-graphql/types/hasura-graphql-auth-options.type.js +0 -2
  934. package/src/infra/hasura-graphql/types/hasura-graphql-auth-options.type.js.map +0 -1
  935. package/src/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +0 -44
  936. package/src/infra/hasura-graphql/types/hasura-graphql-fields.type.js +0 -2
  937. package/src/infra/hasura-graphql/types/hasura-graphql-fields.type.js.map +0 -1
  938. package/src/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +0 -7
  939. package/src/infra/hasura-graphql/types/hasura-graphql-headers.type.js +0 -2
  940. package/src/infra/hasura-graphql/types/hasura-graphql-headers.type.js.map +0 -1
  941. package/src/infra/hasura-graphql/types/index.d.ts +0 -8
  942. package/src/infra/hasura-graphql/types/index.js +0 -9
  943. package/src/infra/hasura-graphql/types/index.js.map +0 -1
  944. package/src/infra/hasura-graphql/types/nested-field.type.d.ts +0 -7
  945. package/src/infra/hasura-graphql/types/nested-field.type.js +0 -2
  946. package/src/infra/hasura-graphql/types/nested-field.type.js.map +0 -1
  947. package/src/infra/hasura-graphql/types/query-builder-options.type.d.ts +0 -7
  948. package/src/infra/hasura-graphql/types/query-builder-options.type.js +0 -2
  949. package/src/infra/hasura-graphql/types/query-builder-options.type.js.map +0 -1
  950. package/src/infra/hasura-graphql/types/variable-options.type.d.ts +0 -9
  951. package/src/infra/hasura-graphql/types/variable-options.type.js +0 -2
  952. package/src/infra/hasura-graphql/types/variable-options.type.js.map +0 -1
  953. package/src/infra/index.d.ts +0 -3
  954. package/src/infra/index.js +0 -4
  955. package/src/infra/index.js.map +0 -1
  956. package/src/utils/decorators/debug.class.decorator.d.ts +0 -2
  957. package/src/utils/decorators/debug.class.decorator.js +0 -7
  958. package/src/utils/decorators/debug.class.decorator.js.map +0 -1
  959. package/src/utils/decorators/index.d.ts +0 -2
  960. package/src/utils/decorators/index.js +0 -3
  961. package/src/utils/decorators/index.js.map +0 -1
  962. package/src/utils/decorators/trace.method.decorator.d.ts +0 -14
  963. package/src/utils/decorators/trace.method.decorator.js +0 -81
  964. package/src/utils/decorators/trace.method.decorator.js.map +0 -1
  965. package/src/utils/get.d.ts +0 -1
  966. package/src/utils/get.js +0 -3
  967. package/src/utils/get.js.map +0 -1
  968. package/src/utils/helpers/class-name.helper.d.ts +0 -3
  969. package/src/utils/helpers/class-name.helper.js +0 -15
  970. package/src/utils/helpers/class-name.helper.js.map +0 -1
  971. package/src/utils/helpers/debug-decorator.helper.d.ts +0 -9
  972. package/src/utils/helpers/debug-decorator.helper.js +0 -18
  973. package/src/utils/helpers/debug-decorator.helper.js.map +0 -1
  974. package/src/utils/helpers/debug.helper.d.ts +0 -60
  975. package/src/utils/helpers/debug.helper.js +0 -150
  976. package/src/utils/helpers/debug.helper.js.map +0 -1
  977. package/src/utils/helpers/index.d.ts +0 -4
  978. package/src/utils/helpers/index.js +0 -5
  979. package/src/utils/helpers/index.js.map +0 -1
  980. package/src/utils/helpers/reflect.helper.d.ts +0 -50
  981. package/src/utils/helpers/reflect.helper.js +0 -165
  982. package/src/utils/helpers/reflect.helper.js.map +0 -1
  983. package/src/utils/index.d.ts +0 -13
  984. package/src/utils/index.js +0 -13
  985. package/src/utils/index.js.map +0 -1
  986. package/src/utils/is-uuid.d.ts +0 -1
  987. package/src/utils/is-uuid.js +0 -3
  988. package/src/utils/is-uuid.js.map +0 -1
  989. package/src/utils/is.d.ts +0 -1
  990. package/src/utils/is.js +0 -4
  991. package/src/utils/is.js.map +0 -1
  992. package/src/utils/log.utils.d.ts +0 -7
  993. package/src/utils/log.utils.js +0 -9
  994. package/src/utils/log.utils.js.map +0 -1
  995. package/src/utils/mixins/base.mixin.d.ts +0 -3
  996. package/src/utils/mixins/base.mixin.js +0 -6
  997. package/src/utils/mixins/base.mixin.js.map +0 -1
  998. package/src/utils/mixins/index.d.ts +0 -3
  999. package/src/utils/mixins/index.js +0 -4
  1000. package/src/utils/mixins/index.js.map +0 -1
  1001. package/src/utils/mixins/merge-constructor-params.type.d.ts +0 -3
  1002. package/src/utils/mixins/merge-constructor-params.type.js +0 -2
  1003. package/src/utils/mixins/merge-constructor-params.type.js.map +0 -1
  1004. package/src/utils/mixins/mixin-ctor.type.d.ts +0 -1
  1005. package/src/utils/mixins/mixin-ctor.type.js +0 -2
  1006. package/src/utils/mixins/mixin-ctor.type.js.map +0 -1
  1007. package/src/utils/parse-datetime.d.ts +0 -1
  1008. package/src/utils/parse-datetime.js +0 -14
  1009. package/src/utils/parse-datetime.js.map +0 -1
  1010. package/src/utils/types/array-element.type.d.ts +0 -1
  1011. package/src/utils/types/array-element.type.js +0 -2
  1012. package/src/utils/types/array-element.type.js.map +0 -1
  1013. package/src/utils/types/index.d.ts +0 -2
  1014. package/src/utils/types/index.js +0 -3
  1015. package/src/utils/types/index.js.map +0 -1
  1016. package/src/utils/types/prop.type.d.ts +0 -1
  1017. package/src/utils/types/prop.type.js +0 -2
  1018. package/src/utils/types/prop.type.js.map +0 -1
@@ -1,30 +0,0 @@
1
- import { CreateRepositoryParams, FindRepositoryParams, GetRepositoryParams, ProductGender, ProductRepository, RepositoryFindResult, ReviewStatusParams, ReviewWithProductData, UpdateRepositoryParams } from '../../../../domain';
2
- import { HasuraConstructorParams } from '../../mixins';
3
- import { ProductHasuraGraphQL } from '../../models';
4
- declare const ProductHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../../types").GraphQLRepository<ProductHasuraGraphQL> & import("../../../../domain").CrudRepository<ProductHasuraGraphQL, import("../../../../domain").CrudParams<ProductHasuraGraphQL>> & import("../../../../domain").UpdateRepository<ProductHasuraGraphQL, import("../../../../domain").RepositoryUpdateParams<ProductHasuraGraphQL>> & {
5
- paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<ProductHasuraGraphQL>): Partial<ProductHasuraGraphQL>;
6
- }, [HasuraConstructorParams<ProductHasuraGraphQL> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
7
- export declare class ProductHasuraGraphQLRepository extends ProductHasuraGraphQLRepository_base implements ProductRepository {
8
- private get reviewsFields();
9
- constructor({ endpoint, authOptions, interceptors, }: Pick<HasuraConstructorParams<ProductHasuraGraphQL>, 'endpoint' | 'authOptions' | 'interceptors'>);
10
- create(params: CreateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
11
- get(identifiers: GetRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
12
- find(params?: FindRepositoryParams<ProductHasuraGraphQL>): Promise<RepositoryFindResult<ProductHasuraGraphQL>>;
13
- getBySlug(slug: string): Promise<ProductHasuraGraphQL>;
14
- update(params: UpdateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL>;
15
- fetchReviews(status: ReviewStatusParams): Promise<ReviewWithProductData[]>;
16
- findCatalog(params: FindRepositoryParams<ProductHasuraGraphQL>, mainGender?: Extract<ProductGender, 'female' | 'male'>): Promise<RepositoryFindResult<ProductHasuraGraphQL>>;
17
- private updateCategories;
18
- private updateKitProducts;
19
- private updateReviews;
20
- private updateMetadata;
21
- private getId;
22
- private findReviewsByProduct;
23
- private findReview;
24
- private getReviewByPersonId;
25
- private getReviewByAuthorAndEmail;
26
- private bindReviewToModel;
27
- private bindReviewToHasura;
28
- cleanShoppingCountFromIds(ids: string[]): Promise<void>;
29
- }
30
- export {};
@@ -1,461 +0,0 @@
1
- import { __rest } from "tslib";
2
- import { RoundProductPricesHelper, Where, } from '../../../../domain';
3
- import { NotFoundError } from '../../../../errors';
4
- import { Base, is, isNil, omit } from '../../../../utils';
5
- import { HasuraGraphQLColumnType, HasuraGraphQLWhere } from '../../enums';
6
- import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
7
- import { ProductHasuraGraphQL } from '../../models';
8
- export class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
9
- constructor({ endpoint, authOptions, interceptors, }) {
10
- super({
11
- tableName: 'product',
12
- model: ProductHasuraGraphQL,
13
- endpoint,
14
- authOptions,
15
- interceptors,
16
- fields: [],
17
- });
18
- this.bindReviewToModel = (plain) => (Object.assign(Object.assign({}, is(omit(plain, ['product_id', 'created_at', 'updated_at', 'person_id', 'order_id']))), { createdAt: typeof plain.created_at === 'string' ? new Date(plain.created_at) : plain.created_at, updatedAt: typeof plain.updated_at === 'string' ? new Date(plain.updated_at) : plain.updated_at, personId: plain.person_id, orderId: plain.order_id }));
19
- this.bindReviewToHasura = (review) => (Object.assign(Object.assign({}, is(omit(review, ['productId', 'createdAt', 'updatedAt', 'personId', 'orderId']))), { person_id: review.personId, order_id: review.orderId }));
20
- const commonFields = [
21
- { id: { columnName: 'id', to: (value) => +value, from: (value) => value.toString() } },
22
- { firestoreId: { columnName: 'firestore_id' } },
23
- { productId: { columnName: 'main_product_id' } },
24
- { CEST: { columnName: 'cest' } },
25
- { EAN: { columnName: 'ean' } },
26
- { NCM: { columnName: 'ncm' } },
27
- 'brand',
28
- { costPrice: { columnName: 'cost_price' } },
29
- {
30
- description: {
31
- columnName: 'description',
32
- from: (description, data) => ({
33
- description,
34
- differentials: data.differentials,
35
- whoMustUse: data.who_must_use,
36
- howToUse: data.how_to_use,
37
- brand: data.brand_description,
38
- ingredients: data.ingredients,
39
- }),
40
- bindFindFilter: (filters) => {
41
- return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, ((filters === null || filters === void 0 ? void 0 : filters.description) && { description: filters.description })), (filters.differentials && { differentials: filters.differentials })), (filters.whoMustUse && {
42
- who_must_use: filters.whoMustUse,
43
- })), (filters.howToUse && {
44
- how_to_use: filters.howToUse,
45
- })), (filters.brand && {
46
- brand_description: filters.brand,
47
- })), (filters.ingredients && {
48
- ingredients: filters.ingredients,
49
- }));
50
- },
51
- bindPersistData: (descriptionData) => (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, ((descriptionData === null || descriptionData === void 0 ? void 0 : descriptionData.description) && { description: descriptionData.description })), (descriptionData.differentials && { differentials: descriptionData.differentials })), (descriptionData.whoMustUse && {
52
- who_must_use: descriptionData.whoMustUse,
53
- })), (descriptionData.howToUse && { how_to_use: descriptionData.howToUse })), (descriptionData.brand && { brand_description: descriptionData.brand })), (descriptionData.ingredients && { ingredients: descriptionData.ingredients }))),
54
- },
55
- },
56
- { differentials: { columnName: 'differentials' } },
57
- { whoMustUse: { columnName: 'who_must_use' } },
58
- { howToUse: { columnName: 'how_to_use' } },
59
- { brandDescription: { columnName: 'brand_description' } },
60
- { ingredients: { columnName: 'ingredients' } },
61
- { hasVariants: { columnName: 'has_variants' } },
62
- {
63
- images: {
64
- columnName: 'images',
65
- to: (value) => { var _a; return ((value === null || value === void 0 ? void 0 : value.length) > 0 ? `{"${((_a = value === null || value === void 0 ? void 0 : value.join) === null || _a === void 0 ? void 0 : _a.call(value, `","`)) || ''}"}` : `{}`); },
66
- },
67
- },
68
- {
69
- miniatures: {
70
- columnName: 'miniatures',
71
- to: (value) => { var _a; return ((value === null || value === void 0 ? void 0 : value.length) > 0 ? `{"${((_a = value === null || value === void 0 ? void 0 : value.join) === null || _a === void 0 ? void 0 : _a.call(value, `","`)) || ''}"}` : `{}`); },
72
- },
73
- },
74
- 'name',
75
- {
76
- price: {
77
- columnName: 'price',
78
- from: (price, data) => ({
79
- price,
80
- fullPrice: data.full_price,
81
- subscriberDiscountPercentage: data.subscriber_discount_percentage,
82
- subscriberPrice: data.subscriber_price,
83
- }),
84
- bindFindFilter: (filters) => {
85
- return Object.assign(Object.assign(Object.assign(Object.assign({}, (((filters === null || filters === void 0 ? void 0 : filters.price) || (filters === null || filters === void 0 ? void 0 : filters.price) === 0) && { price: filters.price })), ((filters.fullPrice || filters.fullPrice === 0) && { full_price: filters.fullPrice })), ((filters.subscriberDiscountPercentage || filters.subscriberDiscountPercentage === 0) && {
86
- subscriber_discount_percentage: filters.subscriberDiscountPercentage,
87
- })), ((filters.subscriberPrice || filters.subscriberPrice === 0) && {
88
- subscriber_price: filters.subscriberPrice,
89
- }));
90
- },
91
- bindPersistData: (priceData) => (Object.assign(Object.assign(Object.assign(Object.assign({}, ((priceData === null || priceData === void 0 ? void 0 : priceData.price) >= 0 && { price: priceData.price })), (priceData.fullPrice >= 0 && { full_price: priceData.fullPrice })), (priceData.subscriberDiscountPercentage >= 0 && {
92
- subscriber_discount_percentage: priceData.subscriberDiscountPercentage,
93
- })), (priceData.subscriberPrice >= 0 && { subscriber_price: priceData.subscriberPrice }))),
94
- },
95
- },
96
- { fullPrice: { columnName: 'full_price' } },
97
- { subscriberDiscountPercentage: { columnName: 'subscriber_discount_percentage' } },
98
- { subscriberPrice: { columnName: 'subscriber_price' } },
99
- 'published',
100
- 'sku',
101
- {
102
- stock: {
103
- columnName: 'stock',
104
- from: (quantity) => ({ quantity }),
105
- to: (value) => (isNil(value === null || value === void 0 ? void 0 : value.quantity) ? value : value === null || value === void 0 ? void 0 : value.quantity),
106
- },
107
- },
108
- { hasStock: { columnName: 'has_stock' } },
109
- 'slug',
110
- 'type',
111
- 'video',
112
- 'weight',
113
- 'gender',
114
- { intGender: { columnName: 'int_gender' } },
115
- { tags: { columnName: 'tags', type: HasuraGraphQLColumnType.Jsonb } },
116
- { filters: { columnName: 'filters', type: HasuraGraphQLColumnType.Jsonb } },
117
- { isKit: { columnName: 'is_kit' } },
118
- { createdAt: { columnName: 'created_at' } },
119
- { updatedAt: { columnName: 'updated_at' } },
120
- { rate: { columnName: 'rating' } },
121
- { reviewsTotal: { columnName: 'reviews_total' } },
122
- { shoppingCount: { columnName: 'shopping_count' } },
123
- { categoryId: { columnName: 'category_id' } },
124
- {
125
- category: {
126
- columnName: 'category',
127
- foreignKeyColumn: { id: 'categoryId' },
128
- fields: ['id', 'name', 'reference', 'slug'],
129
- },
130
- },
131
- ];
132
- this.fields = [
133
- ...commonFields,
134
- {
135
- categories: {
136
- columnName: 'categories',
137
- fields: ['category_id'],
138
- bindPersistData: (value) => ({
139
- categories: { data: value.map((category) => ({ category_id: +category })) },
140
- }),
141
- to: (categories) => categories.map((categoryId) => +categoryId),
142
- from: (categories) => (categories === null || categories === void 0 ? void 0 : categories.map((category) => { var _a; return (_a = category === null || category === void 0 ? void 0 : category.category_id) === null || _a === void 0 ? void 0 : _a.toString(); })) || [],
143
- },
144
- },
145
- {
146
- kitProducts: {
147
- columnName: 'kit_products',
148
- foreignKeyColumn: { productId: 'id' },
149
- fields: [
150
- { productId: { columnName: 'product_id' } },
151
- { kitProductId: { columnName: 'kit_product_id' } },
152
- 'quantity',
153
- { product: { columnName: 'product', foreignKeyColumn: { id: 'product_id' }, fields: commonFields } },
154
- ],
155
- },
156
- },
157
- {
158
- reviews: {
159
- columnName: 'reviews',
160
- foreignKeyColumn: { product_id: 'id' },
161
- fields: this.reviewsFields,
162
- },
163
- },
164
- {
165
- metadata: {
166
- columnName: 'metadata',
167
- fields: ['title', 'description'],
168
- bindPersistData: (value) => ({
169
- metadata: { data: value },
170
- }),
171
- },
172
- },
173
- ];
174
- }
175
- get reviewsFields() {
176
- return [
177
- 'id',
178
- 'shop',
179
- 'rate',
180
- 'author',
181
- 'email',
182
- 'location',
183
- 'review',
184
- 'status',
185
- 'title',
186
- { personId: { columnName: 'person_id' } },
187
- 'points',
188
- { orderId: { columnName: 'order_id' } },
189
- { createdAt: { columnName: 'created_at' } },
190
- { updatedAt: { columnName: 'updated_at' } },
191
- ];
192
- }
193
- async create(params) {
194
- const { metadata } = params, data = __rest(params, ["metadata"]);
195
- const product = await super.create(omit(Object.assign(Object.assign({}, data), { metadata: metadata || { description: null, title: null } }), ['reviews']));
196
- try {
197
- product.reviews = data.reviews && (await this.updateReviews(+product.id, data));
198
- }
199
- catch (error) {
200
- await this.delete({ id: product.id });
201
- throw error;
202
- }
203
- return product;
204
- }
205
- async get(identifiers) {
206
- var _a;
207
- const product = Number.isNaN(+identifiers.id)
208
- ? (_a = (await this.find({ filters: { firestoreId: identifiers.id }, options: { enableCount: false } })).data) === null || _a === void 0 ? void 0 : _a[0]
209
- : await super.get(identifiers);
210
- if (product.productId)
211
- throw new NotFoundError('Product not found, it is a variant');
212
- product.reviews = product.reviews || (await this.findReviewsByProduct(+product.id));
213
- return product;
214
- }
215
- async find(params) {
216
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
217
- const _o = params || {}, { filters, fields } = _o, options = __rest(_o, ["filters", "fields"]);
218
- const bindFields = fields ||
219
- this.fields
220
- .map((field) => (typeof field === 'string' ? field : Object.keys(field).shift()))
221
- .filter((field) => field !== 'reviews');
222
- if ((_b = (_a = options.options) === null || _a === void 0 ? void 0 : _a.minimal) === null || _b === void 0 ? void 0 : _b.includes('price'))
223
- (_c = options.options) === null || _c === void 0 ? void 0 : _c.minimal.push('price.price', 'price.fullPrice', 'price.subscriberPrice');
224
- if ((_e = (_d = options.options) === null || _d === void 0 ? void 0 : _d.maximum) === null || _e === void 0 ? void 0 : _e.includes('price'))
225
- (_f = options.options) === null || _f === void 0 ? void 0 : _f.maximum.push('price.price', 'price.fullPrice', 'price.subscriberPrice');
226
- (_h = (_g = options.options) === null || _g === void 0 ? void 0 : _g.minimal) === null || _h === void 0 ? void 0 : _h.splice((_j = options.options) === null || _j === void 0 ? void 0 : _j.minimal.indexOf('price'), 1);
227
- (_l = (_k = options.options) === null || _k === void 0 ? void 0 : _k.maximum) === null || _l === void 0 ? void 0 : _l.splice((_m = options.options) === null || _m === void 0 ? void 0 : _m.maximum.indexOf('price'), 1);
228
- return super.find(Object.assign(Object.assign({}, options), { filters: Object.assign(Object.assign({}, filters), { productId: { operator: Where.ISNULL } }), fields: [
229
- ...bindFields,
230
- ...(bindFields.includes('price')
231
- ? [
232
- 'subscriberPrice',
233
- 'subscriberDiscountPercentage',
234
- 'fullPrice',
235
- ]
236
- : []),
237
- ] }));
238
- }
239
- async getBySlug(slug) {
240
- var _a;
241
- const result = await this.find({
242
- filters: {
243
- slug,
244
- },
245
- fields: this.fields.map((field) => typeof field === 'string' ? field : Object.keys(field).shift()),
246
- options: {
247
- enableCount: false,
248
- },
249
- });
250
- const product = (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.shift();
251
- RoundProductPricesHelper.roundProductPrices(product);
252
- return product;
253
- }
254
- async update(params) {
255
- const { categories, kitProducts, reviews, id: checkId, rate, metadata } = params, data = __rest(params, ["categories", "kitProducts", "reviews", "id", "rate", "metadata"]);
256
- const plainData = this.paramsToPlain({ id: checkId });
257
- const id = await this.getId(plainData.id);
258
- const product = await super.update(Object.assign({ id }, data));
259
- product.categories = categories && (await this.updateCategories(+id, { categories }));
260
- product.kitProducts = kitProducts && (await this.updateKitProducts(+id, { kitProducts }));
261
- product.reviews = reviews && (await this.updateReviews(+id, { reviews }));
262
- product.metadata = metadata && (await this.updateMetadata(+id, { metadata }));
263
- return product;
264
- }
265
- async fetchReviews(status) {
266
- const reviewsExpression = {
267
- status: status === 'pending'
268
- ? { [HasuraGraphQLWhere.ISNULL]: true }
269
- : { [HasuraGraphQLWhere.EQUALS]: status === 'approved' },
270
- };
271
- const { product: data } = await this.query('product', ['id', 'name', 'sku', { reviews: { columnName: 'reviews', fields: this.reviewsFields } }], {
272
- where: { value: { reviews: reviewsExpression }, type: 'product_bool_exp', required: true },
273
- });
274
- return data.reduce((reviews, product) => [
275
- ...reviews,
276
- ...product.reviews
277
- .filter((review) => (status === 'pending' && [undefined, null].includes(review.status)) ||
278
- (status === 'approved' && review.status === true) ||
279
- (status === 'rejected' && review.status === false))
280
- .map((review) => (Object.assign(Object.assign({}, this.bindReviewToModel(review)), { productId: product.id, productName: product.name, productSku: product.sku }))),
281
- ], []);
282
- }
283
- async findCatalog(params, mainGender) {
284
- return this.find(Object.assign(Object.assign({}, params), { filters: Object.assign(Object.assign({}, params.filters), { published: true }), orderBy: Object.assign(Object.assign({ hasStock: 'desc' }, (!mainGender ? {} : { intGender: mainGender === 'female' ? 'desc' : 'asc' })), omit(params.orderBy, ['hasStock', 'intGender'])) }));
285
- }
286
- async updateCategories(productId, { categories }) {
287
- if ('action' in categories && categories.action === 'remove') {
288
- await this.mutation('delete_category_product', ['affected_rows'], {
289
- where: {
290
- type: 'category_product_bool_exp',
291
- required: true,
292
- value: { product_id: { _eq: productId } },
293
- },
294
- });
295
- return [];
296
- }
297
- const plainData = this.paramsToPlain({ categories });
298
- if (!plainData.categories || plainData.categories.length <= 0)
299
- return [];
300
- await this.mutation('delete_category_product', ['affected_rows'], {
301
- where: {
302
- type: 'category_product_bool_exp',
303
- required: true,
304
- value: { product_id: { _eq: productId } },
305
- },
306
- });
307
- await this.mutation('insert_category_product', ['affected_rows'], {
308
- objects: {
309
- type: '[category_product_insert_input!]',
310
- required: true,
311
- value: plainData.categories.map((categoryId) => ({ category_id: categoryId, product_id: productId })),
312
- },
313
- });
314
- return plainData.categories;
315
- }
316
- async updateKitProducts(productId, { kitProducts }) {
317
- const plainData = this.paramsToPlain({ kitProducts });
318
- await this.mutation('delete_product_kit', ['affected_rows'], {
319
- where: {
320
- type: 'product_kit_bool_exp',
321
- required: true,
322
- value: { kit_product_id: { _eq: productId } },
323
- },
324
- });
325
- await this.mutation('insert_product_kit', ['affected_rows'], {
326
- objects: {
327
- type: '[product_kit_insert_input!]',
328
- required: true,
329
- value: plainData.kitProducts.map((kitProduct) => ({
330
- kit_product_id: productId,
331
- product_id: kitProduct.productId || kitProduct.product.id,
332
- quantity: kitProduct.quantity,
333
- })),
334
- },
335
- });
336
- return plainData.kitProducts;
337
- }
338
- async updateReviews(productId, { reviews }) {
339
- if (!reviews)
340
- return [];
341
- if ('action' in reviews && reviews.action === 'remove') {
342
- const reviewIds = await Promise.all(reviews.value.map(async (reviewData) => {
343
- const review = await this.findReview(reviewData, productId);
344
- return review === null || review === void 0 ? void 0 : review.id;
345
- }));
346
- await this.mutation('delete_product_review', ['affected_rows'], {
347
- where: { value: { id: { _in: reviewIds.filter(Boolean) } }, type: 'product_review_bool_exp', required: true },
348
- });
349
- return reviews.value.map((review, index) => !reviewIds[index] && review).filter(Boolean);
350
- }
351
- const plainData = this.paramsToPlain({ reviews });
352
- if (!plainData.reviews || plainData.reviews.length <= 0)
353
- return [];
354
- return Promise.all(plainData.reviews.map(async (reviewData) => {
355
- const review = await this.findReview(reviewData, productId);
356
- if (review.id)
357
- return this.bindReviewToModel((await this.mutation('update_product_review_by_pk', this.reviewsFields, {
358
- pk_columns: {
359
- value: { id: review.id },
360
- type: 'product_review_pk_columns_input',
361
- required: true,
362
- },
363
- _set: {
364
- value: omit(this.bindReviewToHasura(reviewData), ['id', 'product_id']),
365
- type: 'product_review_set_input',
366
- required: true,
367
- },
368
- })).update_product_review_by_pk);
369
- return this.bindReviewToModel((await this.mutation('insert_product_review_one', this.reviewsFields, {
370
- object: {
371
- value: omit(Object.assign(Object.assign({}, this.bindReviewToHasura(reviewData)), { product_id: productId }), ['id']),
372
- type: 'product_review_insert_input',
373
- required: true,
374
- },
375
- })).insert_product_review_one);
376
- }));
377
- }
378
- async updateMetadata(productId, { metadata }) {
379
- const plainData = this.paramsToPlain({ metadata });
380
- if (!plainData.metadata)
381
- return null;
382
- await this.mutation('update_product_metadata_by_pk', ['product_id'], {
383
- pk_columns: {
384
- value: { product_id: productId },
385
- type: 'product_metadata_pk_columns_input',
386
- required: true,
387
- },
388
- _set: {
389
- value: omit(metadata, ['product_id']),
390
- type: 'product_metadata_set_input',
391
- required: true,
392
- },
393
- });
394
- return plainData.metadata;
395
- }
396
- async getId(id) {
397
- var _a, _b;
398
- if (!Number.isNaN(+id))
399
- return id;
400
- const { data } = await this.find({ filters: { firestoreId: id }, options: { enableCount: false } });
401
- if ((_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.id)
402
- return (_b = data === null || data === void 0 ? void 0 : data[0]) === null || _b === void 0 ? void 0 : _b.id;
403
- throw new NotFoundError(`Product with id ${id} not found`);
404
- }
405
- async findReviewsByProduct(productId) {
406
- const { product_review: data } = await this.query('product_review', this.reviewsFields, {
407
- where: {
408
- value: {
409
- product_id: { _eq: productId },
410
- },
411
- type: 'product_review_bool_exp',
412
- required: true,
413
- },
414
- });
415
- return data && data.map((review) => this.bindReviewToModel(review));
416
- }
417
- async findReview(review, productId) {
418
- if (review.id)
419
- return review;
420
- let loadedReview;
421
- if (review.personId)
422
- loadedReview = await this.getReviewByPersonId(review.personId, productId, review.orderId);
423
- if (!loadedReview && review.author && review.email)
424
- loadedReview = await this.getReviewByAuthorAndEmail(review.author, review.email, productId, review.orderId);
425
- return loadedReview || review;
426
- }
427
- async getReviewByPersonId(personId, productId, orderId) {
428
- const { product_review: data } = await this.query('product_review', this.reviewsFields, {
429
- where: {
430
- value: Object.assign({ product_id: { _eq: productId }, person_id: { _eq: personId } }, (orderId && { order_id: { _eq: orderId } })),
431
- type: `product_review_bool_exp`,
432
- required: true,
433
- },
434
- });
435
- return data && data[0] && this.bindReviewToModel(data[0]);
436
- }
437
- async getReviewByAuthorAndEmail(author, email, productId, orderId) {
438
- const { product_review: data } = await this.query('product_review', this.reviewsFields, {
439
- where: {
440
- value: Object.assign({ product_id: { _eq: productId }, author: { _eq: author }, email: { _eq: email } }, (orderId && { order_id: { _eq: orderId } })),
441
- type: `product_review_bool_exp`,
442
- required: true,
443
- },
444
- });
445
- return data && data[0] && this.bindReviewToModel(data[0]);
446
- }
447
- async cleanShoppingCountFromIds(ids) {
448
- return await this.mutation('update_product', ['affected_rows'], {
449
- where: {
450
- value: { id: { _nin: ids } },
451
- type: 'product_bool_exp',
452
- required: true,
453
- },
454
- _set: {
455
- value: { shopping_count: 0 },
456
- type: 'product_set_input',
457
- },
458
- });
459
- }
460
- }
461
- //# sourceMappingURL=product-hasura-graphql.repository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"product-hasura-graphql.repository.js","sourceRoot":"","sources":["../../../../../../../projects/connect/src/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n CreateRepositoryParams,\r\n FindRepositoryParams,\r\n GetRepositoryParams,\r\n NonFunctionPropertyNames,\r\n ProductGender,\r\n ProductMetadata,\r\n ProductRepository,\r\n ProductReview,\r\n RepositoryFindResult,\r\n ReviewStatusParams,\r\n ReviewWithProductData,\r\n RoundProductPricesHelper,\r\n ShopPrice,\r\n Shops,\r\n UpdateRepositoryParams,\r\n Where,\r\n} from '../../../../domain'\r\nimport { NotFoundError } from '../../../../errors'\r\nimport { Base, is, isNil, omit } from '../../../../utils'\r\nimport { HasuraGraphQLColumnType, HasuraGraphQLWhere } from '../../enums'\r\nimport { HasuraConstructorParams, withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins'\r\nimport { ProductHasuraGraphQL } from '../../models'\r\nimport { HasuraGraphQLFields } from '../../types'\r\n\r\ntype ProductReviewFields = {\r\n id?: string\r\n shop: Shops\r\n rate: number\r\n author?: string\r\n email?: string\r\n location?: string\r\n review?: string\r\n status?: boolean\r\n title?: string\r\n person_id?: number\r\n points?: number\r\n order_id?: string\r\n created_at?: Date\r\n updated_at?: Date\r\n}\r\n\r\nexport class ProductHasuraGraphQLRepository\r\n extends withCrudHasuraGraphQL(withHasuraGraphQL<ProductHasuraGraphQL>(Base))\r\n implements ProductRepository\r\n{\r\n private get reviewsFields(): any {\r\n return [\r\n 'id',\r\n 'shop',\r\n 'rate',\r\n 'author',\r\n 'email',\r\n 'location',\r\n 'review',\r\n 'status',\r\n 'title',\r\n { personId: { columnName: 'person_id' } },\r\n 'points',\r\n { orderId: { columnName: 'order_id' } },\r\n { createdAt: { columnName: 'created_at' } },\r\n { updatedAt: { columnName: 'updated_at' } },\r\n ]\r\n }\r\n\r\n constructor({\r\n endpoint,\r\n authOptions,\r\n interceptors,\r\n }: Pick<HasuraConstructorParams<ProductHasuraGraphQL>, 'endpoint' | 'authOptions' | 'interceptors'>) {\r\n super({\r\n tableName: 'product',\r\n model: ProductHasuraGraphQL,\r\n endpoint,\r\n authOptions,\r\n interceptors,\r\n fields: [],\r\n })\r\n\r\n const commonFields: HasuraGraphQLFields<ProductHasuraGraphQL> = [\r\n { id: { columnName: 'id', to: (value: string) => +value, from: (value) => value.toString() } },\r\n { firestoreId: { columnName: 'firestore_id' } },\r\n { productId: { columnName: 'main_product_id' } },\r\n { CEST: { columnName: 'cest' } },\r\n { EAN: { columnName: 'ean' } },\r\n { NCM: { columnName: 'ncm' } },\r\n 'brand',\r\n { costPrice: { columnName: 'cost_price' } },\r\n {\r\n description: {\r\n columnName: 'description',\r\n from: (description, data) => ({\r\n description,\r\n differentials: data.differentials,\r\n whoMustUse: data.who_must_use,\r\n howToUse: data.how_to_use,\r\n brand: data.brand_description,\r\n ingredients: data.ingredients,\r\n }),\r\n bindFindFilter: (filters: any) => {\r\n return {\r\n ...(filters?.description && { description: filters.description }),\r\n ...(filters.differentials && { differentials: filters.differentials }),\r\n ...(filters.whoMustUse && {\r\n who_must_use: filters.whoMustUse,\r\n }),\r\n ...(filters.howToUse && {\r\n how_to_use: filters.howToUse,\r\n }),\r\n ...(filters.brand && {\r\n brand_description: filters.brand,\r\n }),\r\n ...(filters.ingredients && {\r\n ingredients: filters.ingredients,\r\n }),\r\n }\r\n },\r\n bindPersistData: (descriptionData: ProductHasuraGraphQL['description']) => ({\r\n ...(descriptionData?.description && { description: descriptionData.description }),\r\n ...(descriptionData.differentials && { differentials: descriptionData.differentials }),\r\n ...(descriptionData.whoMustUse && {\r\n who_must_use: descriptionData.whoMustUse,\r\n }),\r\n ...(descriptionData.howToUse && { how_to_use: descriptionData.howToUse }),\r\n ...(descriptionData.brand && { brand_description: descriptionData.brand }),\r\n ...(descriptionData.ingredients && { ingredients: descriptionData.ingredients }),\r\n }),\r\n },\r\n },\r\n { differentials: { columnName: 'differentials' } },\r\n { whoMustUse: { columnName: 'who_must_use' } },\r\n { howToUse: { columnName: 'how_to_use' } },\r\n { brandDescription: { columnName: 'brand_description' } },\r\n { ingredients: { columnName: 'ingredients' } },\r\n { hasVariants: { columnName: 'has_variants' } },\r\n {\r\n images: {\r\n columnName: 'images',\r\n to: (value: string[]) => (value?.length > 0 ? `{\"${value?.join?.(`\",\"`) || ''}\"}` : `{}`),\r\n },\r\n },\r\n {\r\n miniatures: {\r\n columnName: 'miniatures',\r\n to: (value: string[]) => (value?.length > 0 ? `{\"${value?.join?.(`\",\"`) || ''}\"}` : `{}`),\r\n },\r\n },\r\n 'name',\r\n {\r\n price: {\r\n columnName: 'price',\r\n from: (price, data): ShopPrice => ({\r\n price,\r\n fullPrice: data.full_price,\r\n subscriberDiscountPercentage: data.subscriber_discount_percentage,\r\n subscriberPrice: data.subscriber_price,\r\n }),\r\n bindFindFilter: (filters: any) => {\r\n return {\r\n ...((filters?.price || filters?.price === 0) && { price: filters.price }),\r\n ...((filters.fullPrice || filters.fullPrice === 0) && { full_price: filters.fullPrice }),\r\n ...((filters.subscriberDiscountPercentage || filters.subscriberDiscountPercentage === 0) && {\r\n subscriber_discount_percentage: filters.subscriberDiscountPercentage,\r\n }),\r\n ...((filters.subscriberPrice || filters.subscriberPrice === 0) && {\r\n subscriber_price: filters.subscriberPrice,\r\n }),\r\n }\r\n },\r\n bindPersistData: (priceData: ProductHasuraGraphQL['price']) => ({\r\n ...(priceData?.price >= 0 && { price: priceData.price }),\r\n ...(priceData.fullPrice >= 0 && { full_price: priceData.fullPrice }),\r\n ...(priceData.subscriberDiscountPercentage >= 0 && {\r\n subscriber_discount_percentage: priceData.subscriberDiscountPercentage,\r\n }),\r\n ...(priceData.subscriberPrice >= 0 && { subscriber_price: priceData.subscriberPrice }),\r\n }),\r\n },\r\n },\r\n { fullPrice: { columnName: 'full_price' } },\r\n { subscriberDiscountPercentage: { columnName: 'subscriber_discount_percentage' } },\r\n { subscriberPrice: { columnName: 'subscriber_price' } },\r\n 'published',\r\n 'sku',\r\n {\r\n stock: {\r\n columnName: 'stock',\r\n from: (quantity: number) => ({ quantity }),\r\n to: (value: ProductHasuraGraphQL['stock']) => (isNil(value?.quantity) ? value : value?.quantity),\r\n },\r\n },\r\n { hasStock: { columnName: 'has_stock' } },\r\n 'slug',\r\n 'type',\r\n 'video',\r\n 'weight',\r\n 'gender',\r\n { intGender: { columnName: 'int_gender' } },\r\n { tags: { columnName: 'tags', type: HasuraGraphQLColumnType.Jsonb } },\r\n { filters: { columnName: 'filters', type: HasuraGraphQLColumnType.Jsonb } },\r\n { isKit: { columnName: 'is_kit' } },\r\n { createdAt: { columnName: 'created_at' } },\r\n { updatedAt: { columnName: 'updated_at' } },\r\n { rate: { columnName: 'rating' } },\r\n { reviewsTotal: { columnName: 'reviews_total' } },\r\n { shoppingCount: { columnName: 'shopping_count' } },\r\n { categoryId: { columnName: 'category_id' } },\r\n {\r\n category: {\r\n columnName: 'category',\r\n foreignKeyColumn: { id: 'categoryId' },\r\n fields: ['id', 'name', 'reference', 'slug'],\r\n },\r\n },\r\n ]\r\n\r\n this.fields = [\r\n ...commonFields,\r\n {\r\n categories: {\r\n columnName: 'categories',\r\n fields: ['category_id'],\r\n bindPersistData: (value: ProductHasuraGraphQL['categories']) => ({\r\n categories: { data: value.map((category) => ({ category_id: +category })) },\r\n }),\r\n to: (categories: string[]) => categories.map((categoryId) => +categoryId),\r\n from: (categories: { category_id: number }[]) =>\r\n categories?.map((category) => category?.category_id?.toString()) || [],\r\n },\r\n },\r\n {\r\n kitProducts: {\r\n columnName: 'kit_products',\r\n foreignKeyColumn: { productId: 'id' },\r\n fields: [\r\n { productId: { columnName: 'product_id' } },\r\n { kitProductId: { columnName: 'kit_product_id' } },\r\n 'quantity',\r\n { product: { columnName: 'product', foreignKeyColumn: { id: 'product_id' }, fields: commonFields } },\r\n ],\r\n },\r\n },\r\n {\r\n reviews: {\r\n columnName: 'reviews',\r\n foreignKeyColumn: { product_id: 'id' },\r\n fields: this.reviewsFields,\r\n },\r\n },\r\n {\r\n metadata: {\r\n columnName: 'metadata',\r\n fields: ['title', 'description'],\r\n bindPersistData: (value: ProductHasuraGraphQL['metadata']) => ({\r\n metadata: { data: value },\r\n }),\r\n },\r\n },\r\n ]\r\n }\r\n\r\n override async create(params: CreateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL> {\r\n const { metadata, ...data } = params\r\n const product = await super.create(\r\n omit({ ...data, metadata: metadata || { description: null, title: null } }, ['reviews']),\r\n )\r\n\r\n try {\r\n product.reviews = data.reviews && (await this.updateReviews(+product.id, data))\r\n } catch (error) {\r\n await this.delete({ id: product.id })\r\n\r\n throw error\r\n }\r\n\r\n return product\r\n }\r\n\r\n override async get(identifiers: GetRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL> {\r\n const product = Number.isNaN(+identifiers.id)\r\n ? (await this.find({ filters: { firestoreId: identifiers.id }, options: { enableCount: false } })).data?.[0]\r\n : await super.get(identifiers)\r\n\r\n if (product.productId) throw new NotFoundError('Product not found, it is a variant')\r\n\r\n product.reviews = product.reviews || (await this.findReviewsByProduct(+product.id))\r\n\r\n return product\r\n }\r\n\r\n override async find(\r\n params?: FindRepositoryParams<ProductHasuraGraphQL>,\r\n ): Promise<RepositoryFindResult<ProductHasuraGraphQL>> {\r\n const { filters, fields, ...options } = params || {}\r\n const bindFields =\r\n fields ||\r\n (this.fields\r\n .map((field) => (typeof field === 'string' ? field : Object.keys(field).shift()))\r\n .filter((field) => field !== 'reviews') as NonFunctionPropertyNames<\r\n ProductHasuraGraphQL,\r\n keyof ProductHasuraGraphQL\r\n >[])\r\n\r\n if (options.options?.minimal?.includes('price'))\r\n options.options?.minimal.push('price.price', 'price.fullPrice', 'price.subscriberPrice')\r\n if (options.options?.maximum?.includes('price'))\r\n options.options?.maximum.push('price.price', 'price.fullPrice', 'price.subscriberPrice')\r\n\r\n options.options?.minimal?.splice(options.options?.minimal.indexOf('price'), 1)\r\n options.options?.maximum?.splice(options.options?.maximum.indexOf('price'), 1)\r\n\r\n return super.find({\r\n ...options,\r\n filters: { ...filters, productId: { operator: Where.ISNULL } },\r\n fields: [\r\n ...bindFields,\r\n ...(bindFields.includes('price')\r\n ? ([\r\n 'subscriberPrice',\r\n 'subscriberDiscountPercentage',\r\n 'fullPrice',\r\n ] as NonFunctionPropertyNames<ProductHasuraGraphQL>[])\r\n : []),\r\n ],\r\n })\r\n }\r\n\r\n async getBySlug(slug: string): Promise<ProductHasuraGraphQL> {\r\n const result = await this.find({\r\n filters: {\r\n slug,\r\n },\r\n fields: this.fields.map((field) =>\r\n typeof field === 'string' ? field : Object.keys(field).shift(),\r\n ) as NonFunctionPropertyNames<ProductHasuraGraphQL, keyof ProductHasuraGraphQL>[],\r\n options: {\r\n enableCount: false,\r\n },\r\n })\r\n\r\n const product = result?.data?.shift()\r\n\r\n RoundProductPricesHelper.roundProductPrices(product)\r\n\r\n return product\r\n }\r\n\r\n override async update(params: UpdateRepositoryParams<ProductHasuraGraphQL>): Promise<ProductHasuraGraphQL> {\r\n const { categories, kitProducts, reviews, id: checkId, rate, metadata, ...data } = params\r\n const plainData = this.paramsToPlain({ id: checkId })\r\n const id = await this.getId(plainData.id)\r\n const product = await super.update({ id, ...data })\r\n\r\n product.categories = categories && (await this.updateCategories(+id, { categories }))\r\n product.kitProducts = kitProducts && (await this.updateKitProducts(+id, { kitProducts }))\r\n product.reviews = reviews && (await this.updateReviews(+id, { reviews }))\r\n product.metadata = metadata && (await this.updateMetadata(+id, { metadata }))\r\n\r\n return product\r\n }\r\n\r\n async fetchReviews(status: ReviewStatusParams): Promise<ReviewWithProductData[]> {\r\n const reviewsExpression = {\r\n status:\r\n status === 'pending'\r\n ? { [HasuraGraphQLWhere.ISNULL]: true }\r\n : { [HasuraGraphQLWhere.EQUALS]: status === 'approved' },\r\n }\r\n const { product: data } = await this.query(\r\n 'product',\r\n ['id', 'name', 'sku', { reviews: { columnName: 'reviews', fields: this.reviewsFields } }],\r\n {\r\n where: { value: { reviews: reviewsExpression }, type: 'product_bool_exp', required: true },\r\n },\r\n )\r\n\r\n return data.reduce(\r\n (\r\n reviews: ReviewWithProductData[],\r\n product: Omit<ProductHasuraGraphQL, 'reviews'> & {\r\n reviews: Array<Record<'person_id' | 'order_id' | 'created_at' | 'updated_at' | 'status', any>>\r\n },\r\n ) => [\r\n ...reviews,\r\n ...product.reviews\r\n .filter(\r\n (review) =>\r\n (status === 'pending' && [undefined, null].includes(review.status)) ||\r\n (status === 'approved' && review.status === true) ||\r\n (status === 'rejected' && review.status === false),\r\n )\r\n .map((review) => ({\r\n ...this.bindReviewToModel(review),\r\n productId: product.id,\r\n productName: product.name,\r\n productSku: product.sku,\r\n })),\r\n ],\r\n [] as ReviewWithProductData[],\r\n )\r\n }\r\n\r\n async findCatalog(\r\n params: FindRepositoryParams<ProductHasuraGraphQL>,\r\n mainGender?: Extract<ProductGender, 'female' | 'male'>,\r\n ): Promise<RepositoryFindResult<ProductHasuraGraphQL>> {\r\n return this.find({\r\n ...params,\r\n filters: { ...params.filters, published: true },\r\n orderBy: {\r\n hasStock: 'desc',\r\n ...(!mainGender ? {} : { intGender: mainGender === 'female' ? 'desc' : 'asc' }),\r\n ...omit(params.orderBy, ['hasStock', 'intGender']),\r\n },\r\n })\r\n }\r\n\r\n private async updateCategories(\r\n productId: number,\r\n { categories }: Pick<UpdateRepositoryParams<ProductHasuraGraphQL>, 'categories'>,\r\n ): Promise<ProductHasuraGraphQL['categories']> {\r\n if ('action' in categories && categories.action === 'remove') {\r\n await this.mutation('delete_category_product', ['affected_rows'], {\r\n where: {\r\n type: 'category_product_bool_exp',\r\n required: true,\r\n value: { product_id: { _eq: productId } },\r\n },\r\n })\r\n\r\n return []\r\n }\r\n\r\n const plainData = this.paramsToPlain({ categories })\r\n\r\n if (!plainData.categories || plainData.categories.length <= 0) return []\r\n\r\n await this.mutation('delete_category_product', ['affected_rows'], {\r\n where: {\r\n type: 'category_product_bool_exp',\r\n required: true,\r\n value: { product_id: { _eq: productId } },\r\n },\r\n })\r\n\r\n await this.mutation('insert_category_product', ['affected_rows'], {\r\n objects: {\r\n type: '[category_product_insert_input!]',\r\n required: true,\r\n value: plainData.categories.map((categoryId) => ({ category_id: categoryId, product_id: productId })),\r\n },\r\n })\r\n\r\n return plainData.categories\r\n }\r\n\r\n private async updateKitProducts(\r\n productId: number,\r\n { kitProducts }: Pick<UpdateRepositoryParams<ProductHasuraGraphQL>, 'kitProducts'>,\r\n ): Promise<ProductHasuraGraphQL['kitProducts']> {\r\n const plainData = this.paramsToPlain({ kitProducts })\r\n\r\n await this.mutation('delete_product_kit', ['affected_rows'], {\r\n where: {\r\n type: 'product_kit_bool_exp',\r\n required: true,\r\n value: { kit_product_id: { _eq: productId } },\r\n },\r\n })\r\n\r\n await this.mutation('insert_product_kit', ['affected_rows'], {\r\n objects: {\r\n type: '[product_kit_insert_input!]',\r\n required: true,\r\n value: plainData.kitProducts.map((kitProduct) => ({\r\n kit_product_id: productId,\r\n product_id: kitProduct.productId || kitProduct.product.id,\r\n quantity: kitProduct.quantity,\r\n })),\r\n },\r\n })\r\n\r\n return plainData.kitProducts\r\n }\r\n\r\n private async updateReviews(\r\n productId: number,\r\n { reviews }: Pick<UpdateRepositoryParams<ProductHasuraGraphQL>, 'reviews'>,\r\n ): Promise<ProductReview[]> {\r\n if (!reviews) return []\r\n if ('action' in reviews && reviews.action === 'remove') {\r\n const reviewIds = await Promise.all(\r\n reviews.value.map(async (reviewData) => {\r\n const review = await this.findReview(reviewData, productId)\r\n\r\n return review?.id\r\n }),\r\n )\r\n\r\n await this.mutation('delete_product_review', ['affected_rows'], {\r\n where: { value: { id: { _in: reviewIds.filter(Boolean) } }, type: 'product_review_bool_exp', required: true },\r\n })\r\n\r\n return reviews.value.map((review, index) => !reviewIds[index] && review).filter(Boolean)\r\n }\r\n\r\n const plainData = this.paramsToPlain({ reviews })\r\n\r\n if (!plainData.reviews || plainData.reviews.length <= 0) return []\r\n\r\n return Promise.all(\r\n plainData.reviews.map(async (reviewData) => {\r\n const review = await this.findReview(reviewData, productId)\r\n\r\n if (review.id)\r\n return this.bindReviewToModel(\r\n (\r\n await this.mutation('update_product_review_by_pk', this.reviewsFields, {\r\n pk_columns: {\r\n value: { id: review.id },\r\n type: 'product_review_pk_columns_input',\r\n required: true,\r\n },\r\n _set: {\r\n value: omit(this.bindReviewToHasura(reviewData), ['id', 'product_id']),\r\n type: 'product_review_set_input',\r\n required: true,\r\n },\r\n })\r\n ).update_product_review_by_pk,\r\n )\r\n\r\n return this.bindReviewToModel(\r\n (\r\n await this.mutation('insert_product_review_one', this.reviewsFields, {\r\n object: {\r\n value: omit({ ...this.bindReviewToHasura(reviewData), product_id: productId }, ['id']),\r\n type: 'product_review_insert_input',\r\n required: true,\r\n },\r\n })\r\n ).insert_product_review_one,\r\n )\r\n }),\r\n )\r\n }\r\n\r\n private async updateMetadata(\r\n productId: number,\r\n { metadata }: Pick<UpdateRepositoryParams<ProductHasuraGraphQL>, 'metadata'>,\r\n ): Promise<ProductMetadata> {\r\n const plainData = this.paramsToPlain({ metadata })\r\n\r\n if (!plainData.metadata) return null\r\n\r\n await this.mutation('update_product_metadata_by_pk', ['product_id'], {\r\n pk_columns: {\r\n value: { product_id: productId },\r\n type: 'product_metadata_pk_columns_input',\r\n required: true,\r\n },\r\n _set: {\r\n value: omit(metadata, ['product_id']),\r\n type: 'product_metadata_set_input',\r\n required: true,\r\n },\r\n })\r\n\r\n return plainData.metadata\r\n }\r\n\r\n private async getId(id: string): Promise<string> {\r\n if (!Number.isNaN(+id)) return id\r\n\r\n const { data } = await this.find({ filters: { firestoreId: id }, options: { enableCount: false } })\r\n\r\n if (data?.[0]?.id) return data?.[0]?.id\r\n\r\n throw new NotFoundError(`Product with id ${id} not found`)\r\n }\r\n\r\n private async findReviewsByProduct(productId: number): Promise<ProductReview[]> {\r\n const { product_review: data } = await this.query('product_review', this.reviewsFields, {\r\n where: {\r\n value: {\r\n product_id: { _eq: productId },\r\n },\r\n type: 'product_review_bool_exp',\r\n required: true,\r\n },\r\n })\r\n\r\n return data && data.map((review: Record<string, any>) => this.bindReviewToModel(review))\r\n }\r\n\r\n private async findReview(review: ProductReview, productId: number): Promise<ProductReview> {\r\n if (review.id) return review\r\n\r\n let loadedReview: ProductReview\r\n\r\n if (review.personId) loadedReview = await this.getReviewByPersonId(review.personId, productId, review.orderId)\r\n if (!loadedReview && review.author && review.email)\r\n loadedReview = await this.getReviewByAuthorAndEmail(review.author, review.email, productId, review.orderId)\r\n\r\n return loadedReview || review\r\n }\r\n\r\n private async getReviewByPersonId(personId: number, productId: number, orderId?: string): Promise<ProductReview> {\r\n const { product_review: data } = await this.query('product_review', this.reviewsFields, {\r\n where: {\r\n value: {\r\n product_id: { _eq: productId },\r\n person_id: { _eq: personId },\r\n ...(orderId && { order_id: { _eq: orderId } }),\r\n },\r\n type: `product_review_bool_exp`,\r\n required: true,\r\n },\r\n })\r\n\r\n return data && data[0] && this.bindReviewToModel(data[0])\r\n }\r\n\r\n private async getReviewByAuthorAndEmail(\r\n author: string,\r\n email: string,\r\n productId: number,\r\n orderId?: string,\r\n ): Promise<ProductReview> {\r\n const { product_review: data } = await this.query('product_review', this.reviewsFields, {\r\n where: {\r\n value: {\r\n product_id: { _eq: productId },\r\n author: { _eq: author },\r\n email: { _eq: email },\r\n ...(orderId && { order_id: { _eq: orderId } }),\r\n },\r\n type: `product_review_bool_exp`,\r\n required: true,\r\n },\r\n })\r\n\r\n return data && data[0] && this.bindReviewToModel(data[0])\r\n }\r\n\r\n private bindReviewToModel = (\r\n plain: Record<'person_id' | 'order_id' | 'created_at' | 'updated_at', any>,\r\n ): ProductReview => ({\r\n ...is<ProductReview>(omit(plain, ['product_id', 'created_at', 'updated_at', 'person_id', 'order_id'])),\r\n createdAt: typeof plain.created_at === 'string' ? new Date(plain.created_at) : plain.created_at,\r\n updatedAt: typeof plain.updated_at === 'string' ? new Date(plain.updated_at) : plain.updated_at,\r\n personId: plain.person_id,\r\n orderId: plain.order_id,\r\n })\r\n\r\n private bindReviewToHasura = (review: ProductReview): ProductReviewFields => ({\r\n ...is<ProductReviewFields>(omit(review, ['productId', 'createdAt', 'updatedAt', 'personId', 'orderId'])),\r\n person_id: review.personId,\r\n order_id: review.orderId,\r\n })\r\n\r\n async cleanShoppingCountFromIds(ids: string[]): Promise<void> {\r\n return await this.mutation('update_product', ['affected_rows'], {\r\n where: {\r\n value: { id: { _nin: ids } },\r\n type: 'product_bool_exp',\r\n required: true,\r\n },\r\n _set: {\r\n value: { shopping_count: 0 },\r\n type: 'product_set_input',\r\n },\r\n })\r\n }\r\n}\r\n"]}
@@ -1,14 +0,0 @@
1
- import { FindRepositoryParams, GetRepositoryParams, RepositoryFindResult, UpdateRepositoryParams, VariantRepository } from '../../../../domain';
2
- import { HasuraConstructorParams } from '../../mixins';
3
- import { VariantHasuraGraphQL } from '../../models';
4
- declare const VariantHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../..").GraphQLRepository<VariantHasuraGraphQL> & import("../../../../domain").CrudRepository<VariantHasuraGraphQL, import("../../../../domain").CrudParams<VariantHasuraGraphQL>> & import("../../../../domain").UpdateRepository<VariantHasuraGraphQL, import("../../../../domain").RepositoryUpdateParams<VariantHasuraGraphQL>> & {
5
- paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<VariantHasuraGraphQL>): Partial<VariantHasuraGraphQL>;
6
- }, [HasuraConstructorParams<VariantHasuraGraphQL> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
7
- export declare class VariantHasuraGraphQLRepository extends VariantHasuraGraphQLRepository_base implements VariantRepository {
8
- constructor({ endpoint, authOptions, interceptors, }: Pick<HasuraConstructorParams<VariantHasuraGraphQL>, 'endpoint' | 'authOptions' | 'interceptors'>);
9
- get(identifiers: GetRepositoryParams<VariantHasuraGraphQL>): Promise<VariantHasuraGraphQL>;
10
- find(params?: FindRepositoryParams<VariantHasuraGraphQL>): Promise<RepositoryFindResult<VariantHasuraGraphQL>>;
11
- update(params: UpdateRepositoryParams<VariantHasuraGraphQL>): Promise<VariantHasuraGraphQL>;
12
- private getId;
13
- }
14
- export {};