@infrab4a/connect 1.0.0-beta.8 → 1.0.0

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 (364) hide show
  1. package/bundles/infrab4a-connect.umd.js +2173 -267
  2. package/bundles/infrab4a-connect.umd.js.map +1 -1
  3. package/domain/catalog/models/category.d.ts +5 -4
  4. package/domain/catalog/models/index.d.ts +3 -2
  5. package/domain/catalog/models/kit-product.d.ts +12 -0
  6. package/domain/catalog/models/product.d.ts +9 -4
  7. package/domain/catalog/models/types/product-review.type.d.ts +10 -8
  8. package/domain/catalog/models/variant.d.ts +7 -3
  9. package/domain/catalog/repositories/category.repository.d.ts +1 -1
  10. package/domain/catalog/repositories/product.repository.d.ts +10 -3
  11. package/domain/catalog/repositories/subscription-product.repository.d.ts +1 -1
  12. package/domain/catalog/repositories/variant.repository.d.ts +1 -1
  13. package/domain/generic/model/base.model.d.ts +10 -0
  14. package/domain/{general → generic}/model/index.d.ts +0 -1
  15. package/domain/generic/model/types/base-model-builder.type.d.ts +15 -0
  16. package/domain/generic/model/types/identifier-model.type.d.ts +7 -0
  17. package/domain/{general → generic}/model/types/index.d.ts +2 -0
  18. package/domain/generic/model/types/model-base-structure.type.d.ts +6 -0
  19. package/domain/generic/model/types/non-function-properties.type.d.ts +12 -0
  20. package/domain/generic/model/types/non-function-property-name.type.d.ts +4 -0
  21. package/domain/generic/repository/create.repository.d.ts +8 -0
  22. package/domain/generic/repository/crud.repository.d.ts +19 -0
  23. package/domain/generic/repository/delete.repository.d.ts +7 -0
  24. package/domain/{general → generic}/repository/enums/where.enum.d.ts +5 -2
  25. package/domain/generic/repository/find.repository.d.ts +11 -0
  26. package/domain/generic/repository/get.repository.d.ts +5 -0
  27. package/domain/generic/repository/read.repository.d.ts +14 -0
  28. package/domain/{general → generic}/repository/types/index.d.ts +1 -0
  29. package/domain/generic/repository/types/repository-find-filters.type.d.ts +13 -0
  30. package/domain/{general → generic}/repository/types/repository-update-params.type.d.ts +4 -4
  31. package/domain/generic/repository/types/where-options.type.d.ts +2 -0
  32. package/domain/generic/repository/update.repository.d.ts +6 -0
  33. package/domain/index.d.ts +1 -1
  34. package/domain/location/models/address.d.ts +3 -2
  35. package/domain/shop-settings/models/home.d.ts +3 -3
  36. package/domain/shop-settings/models/shop-menu.d.ts +3 -3
  37. package/domain/shop-settings/repositories/home.repository.d.ts +1 -1
  38. package/domain/shop-settings/repositories/shop-menu.repository.d.ts +1 -1
  39. package/domain/shopping/models/buy-2-win.d.ts +3 -5
  40. package/domain/shopping/models/checkout.d.ts +7 -9
  41. package/domain/shopping/models/coupons/coupon.d.ts +13 -15
  42. package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +4 -0
  43. package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +6 -0
  44. package/domain/shopping/models/coupons/enums/index.d.ts +2 -1
  45. package/domain/shopping/models/coupons/financial-coupon.d.ts +9 -0
  46. package/domain/shopping/models/coupons/index.d.ts +1 -2
  47. package/domain/shopping/models/payment.d.ts +3 -5
  48. package/domain/shopping/models/shipping-method.d.ts +3 -5
  49. package/domain/shopping/models/subscription/checkout.d.ts +3 -5
  50. package/domain/shopping/models/subscription/plan.d.ts +3 -5
  51. package/domain/shopping/repositories/buy-2-win.repository.d.ts +1 -1
  52. package/domain/shopping/repositories/checkout.repository.d.ts +1 -1
  53. package/domain/shopping/repositories/coupon.repository.d.ts +1 -1
  54. package/domain/shopping/repositories/order.repository.d.ts +1 -1
  55. package/domain/shopping/repositories/payment.repository.d.ts +1 -1
  56. package/domain/shopping/repositories/subscription/checkout.repository.d.ts +1 -1
  57. package/domain/shopping/repositories/subscription/plan.repository.d.ts +1 -1
  58. package/domain/users/errors/unauthorized.error.d.ts +2 -1
  59. package/domain/users/errors/user-already-registered.error.d.ts +2 -1
  60. package/domain/users/errors/weak-password.error.d.ts +2 -1
  61. package/domain/users/models/beauty-profile.d.ts +4 -5
  62. package/domain/users/models/lead.d.ts +3 -5
  63. package/domain/users/models/subscription/edition.d.ts +4 -5
  64. package/domain/users/models/subscription/payment.d.ts +4 -5
  65. package/domain/users/models/subscription/subscription.d.ts +3 -5
  66. package/domain/users/models/user-address.d.ts +3 -3
  67. package/domain/users/models/user-payment-method.d.ts +4 -4
  68. package/domain/users/models/user.d.ts +13 -10
  69. package/domain/users/repositories/beauty-profile.repository.d.ts +1 -1
  70. package/domain/users/repositories/edition.repository.d.ts +1 -1
  71. package/domain/users/repositories/lead.repository.d.ts +1 -1
  72. package/domain/users/repositories/subscription-payment.repository.d.ts +1 -1
  73. package/domain/users/repositories/subscription.repository.d.ts +1 -1
  74. package/domain/users/repositories/user-address.repository.d.ts +1 -1
  75. package/domain/users/repositories/user-payment-method.repository.d.ts +1 -1
  76. package/domain/users/repositories/user.repository.d.ts +2 -2
  77. package/errors/duplicated-results.error.d.ts +2 -1
  78. package/errors/invalid-argument.error.d.ts +2 -1
  79. package/errors/not-found.error.d.ts +2 -1
  80. package/errors/required-argument.error.d.ts +2 -1
  81. package/esm2015/domain/catalog/models/category.js +5 -2
  82. package/esm2015/domain/catalog/models/index.js +4 -3
  83. package/esm2015/domain/catalog/models/kit-product.js +18 -0
  84. package/esm2015/domain/catalog/models/product.js +12 -2
  85. package/esm2015/domain/catalog/models/types/product-review.type.js +1 -1
  86. package/esm2015/domain/catalog/models/variant.js +5 -2
  87. package/esm2015/domain/catalog/repositories/category.repository.js +1 -1
  88. package/esm2015/domain/catalog/repositories/product.repository.js +1 -1
  89. package/esm2015/domain/catalog/repositories/subscription-product.repository.js +1 -1
  90. package/esm2015/domain/catalog/repositories/variant.repository.js +1 -1
  91. package/esm2015/domain/{general → generic}/index.js +1 -1
  92. package/esm2015/domain/generic/model/base.model.js +23 -0
  93. package/esm2015/domain/{general → generic}/model/identifier-fields.js +1 -1
  94. package/esm2015/domain/generic/model/index.js +4 -0
  95. package/esm2015/domain/generic/model/types/base-model-builder.type.js +2 -0
  96. package/esm2015/domain/generic/model/types/identifier-model.type.js +2 -0
  97. package/esm2015/domain/generic/model/types/index.js +6 -0
  98. package/esm2015/domain/generic/model/types/model-base-structure.type.js +2 -0
  99. package/esm2015/domain/generic/model/types/non-function-properties.type.js +2 -0
  100. package/esm2015/domain/generic/model/types/non-function-property-name.type.js +2 -0
  101. package/esm2015/domain/generic/repository/create.repository.js +2 -0
  102. package/esm2015/domain/generic/repository/crud.repository.js +2 -0
  103. package/esm2015/domain/generic/repository/delete.repository.js +2 -0
  104. package/esm2015/domain/{general → generic}/repository/enums/index.js +1 -1
  105. package/esm2015/domain/{general → generic}/repository/enums/update-option-actions.enum.js +1 -1
  106. package/esm2015/domain/generic/repository/enums/where.enum.js +15 -0
  107. package/esm2015/domain/generic/repository/find.repository.js +2 -0
  108. package/esm2015/domain/generic/repository/get.repository.js +2 -0
  109. package/esm2015/domain/{general → generic}/repository/index.js +1 -1
  110. package/esm2015/domain/generic/repository/read.repository.js +2 -0
  111. package/esm2015/domain/generic/repository/types/index.js +7 -0
  112. package/esm2015/domain/generic/repository/types/repository-find-filters.type.js +2 -0
  113. package/esm2015/domain/{general → generic}/repository/types/repository-find-result.type.js +1 -1
  114. package/esm2015/domain/{general → generic}/repository/types/repository-limit-options.type.js +1 -1
  115. package/esm2015/domain/{general → generic}/repository/types/repository-order-by-list.type.js +1 -1
  116. package/esm2015/domain/generic/repository/types/repository-update-params.type.js +2 -0
  117. package/esm2015/domain/generic/repository/types/where-options.type.js +2 -0
  118. package/esm2015/domain/generic/repository/update.repository.js +2 -0
  119. package/esm2015/domain/index.js +2 -2
  120. package/esm2015/domain/location/models/address.js +5 -2
  121. package/esm2015/domain/shop-settings/models/home.js +3 -3
  122. package/esm2015/domain/shop-settings/models/shop-menu.js +3 -3
  123. package/esm2015/domain/shop-settings/repositories/home.repository.js +1 -1
  124. package/esm2015/domain/shop-settings/repositories/shop-menu.repository.js +1 -1
  125. package/esm2015/domain/shopping/models/buy-2-win.js +3 -3
  126. package/esm2015/domain/shopping/models/checkout.js +6 -15
  127. package/esm2015/domain/shopping/models/coupons/coupon.js +4 -12
  128. package/esm2015/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js +6 -0
  129. package/esm2015/domain/shopping/models/coupons/enums/coupon-types.enum.js +8 -0
  130. package/esm2015/domain/shopping/models/coupons/enums/index.js +3 -2
  131. package/esm2015/domain/shopping/models/coupons/financial-coupon.js +28 -0
  132. package/esm2015/domain/shopping/models/coupons/index.js +2 -3
  133. package/esm2015/domain/shopping/models/payment.js +3 -3
  134. package/esm2015/domain/shopping/models/shipping-method.js +3 -3
  135. package/esm2015/domain/shopping/models/subscription/checkout.js +3 -3
  136. package/esm2015/domain/shopping/models/subscription/plan.js +3 -3
  137. package/esm2015/domain/shopping/repositories/buy-2-win.repository.js +1 -1
  138. package/esm2015/domain/shopping/repositories/checkout.repository.js +1 -1
  139. package/esm2015/domain/shopping/repositories/coupon.repository.js +1 -1
  140. package/esm2015/domain/shopping/repositories/order.repository.js +1 -1
  141. package/esm2015/domain/shopping/repositories/payment.repository.js +1 -1
  142. package/esm2015/domain/shopping/repositories/subscription/checkout.repository.js +1 -1
  143. package/esm2015/domain/shopping/repositories/subscription/plan.repository.js +1 -1
  144. package/esm2015/domain/users/errors/unauthorized.error.js +3 -2
  145. package/esm2015/domain/users/errors/user-already-registered.error.js +3 -2
  146. package/esm2015/domain/users/errors/weak-password.error.js +3 -2
  147. package/esm2015/domain/users/models/beauty-profile.js +4 -4
  148. package/esm2015/domain/users/models/lead.js +3 -3
  149. package/esm2015/domain/users/models/subscription/edition.js +4 -4
  150. package/esm2015/domain/users/models/subscription/payment.js +4 -4
  151. package/esm2015/domain/users/models/subscription/subscription.js +3 -3
  152. package/esm2015/domain/users/models/user-address.js +3 -3
  153. package/esm2015/domain/users/models/user-payment-method.js +4 -4
  154. package/esm2015/domain/users/models/user.js +5 -5
  155. package/esm2015/domain/users/repositories/beauty-profile.repository.js +1 -1
  156. package/esm2015/domain/users/repositories/edition.repository.js +1 -1
  157. package/esm2015/domain/users/repositories/lead.repository.js +1 -1
  158. package/esm2015/domain/users/repositories/subscription-payment.repository.js +1 -1
  159. package/esm2015/domain/users/repositories/subscription.repository.js +1 -1
  160. package/esm2015/domain/users/repositories/user-address.repository.js +1 -1
  161. package/esm2015/domain/users/repositories/user-payment-method.repository.js +1 -1
  162. package/esm2015/domain/users/repositories/user.repository.js +1 -1
  163. package/esm2015/errors/duplicated-results.error.js +3 -2
  164. package/esm2015/errors/invalid-argument.error.js +3 -2
  165. package/esm2015/errors/not-found.error.js +3 -2
  166. package/esm2015/errors/required-argument.error.js +3 -2
  167. package/esm2015/infra/elasticsearch/adapters/axios.adapter.js +36 -1
  168. package/esm2015/infra/elasticsearch/adapters/elastic-search.adapter.js +1 -1
  169. package/esm2015/infra/elasticsearch/indexes/products-index.js +35 -1
  170. package/esm2015/infra/firebase/auth/authentication-firebase-auth.service.js +2 -2
  171. package/esm2015/infra/firebase/auth/register-firebase-auth.service.js +1 -1
  172. package/esm2015/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +2 -2
  173. package/esm2015/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +1 -1
  174. package/esm2015/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +1 -1
  175. package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +9 -10
  176. package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +2 -6
  177. package/esm2015/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +1 -1
  178. package/esm2015/infra/firebase/firestore/mixins/with-helpers.mixin.js +1 -1
  179. package/esm2015/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +1 -1
  180. package/esm2015/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +4 -4
  181. package/esm2015/infra/firebase/firestore/models/user-search.js +3 -3
  182. package/esm2015/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +4 -2
  183. package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +37 -8
  184. package/esm2015/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js +11 -21
  185. package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +2 -2
  186. package/esm2015/infra/firebase/firestore/types/firestore-sub.repository.type.js +1 -1
  187. package/esm2015/infra/firebase/firestore/types/firestore.helpers.type.js +1 -1
  188. package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +1 -1
  189. package/esm2015/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.js +13 -0
  190. package/esm2015/infra/hasura-graphql/enums/hasura-graphql-where.enum.js +15 -0
  191. package/esm2015/infra/hasura-graphql/enums/index.js +3 -0
  192. package/esm2015/infra/hasura-graphql/index.js +5 -0
  193. package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +31 -0
  194. package/esm2015/infra/hasura-graphql/mixins/helpers/filter-option.helper.js +18 -0
  195. package/esm2015/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js +72 -0
  196. package/esm2015/infra/hasura-graphql/mixins/helpers/index.js +4 -0
  197. package/esm2015/infra/hasura-graphql/mixins/index.js +8 -0
  198. package/esm2015/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js +45 -0
  199. package/esm2015/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.js +10 -0
  200. package/esm2015/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.js +29 -0
  201. package/esm2015/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +93 -0
  202. package/esm2015/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.js +35 -0
  203. package/esm2015/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +94 -0
  204. package/esm2015/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js +56 -0
  205. package/esm2015/infra/hasura-graphql/models/category-hasura-graphql.js +4 -0
  206. package/esm2015/infra/hasura-graphql/models/index.js +5 -0
  207. package/esm2015/infra/hasura-graphql/models/kit-product-hasura-graphql.js +15 -0
  208. package/esm2015/infra/hasura-graphql/models/product-hasura-graphql.js +11 -0
  209. package/esm2015/infra/hasura-graphql/models/variant-hasura-graphql.js +9 -0
  210. package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +136 -0
  211. package/esm2015/infra/hasura-graphql/repositories/catalog/index.js +4 -0
  212. package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +375 -0
  213. package/esm2015/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js +107 -0
  214. package/esm2015/infra/hasura-graphql/repositories/index.js +2 -0
  215. package/esm2015/infra/hasura-graphql/types/fields.type.js +2 -0
  216. package/esm2015/infra/hasura-graphql/types/graphql.repository.type.js +2 -0
  217. package/esm2015/infra/hasura-graphql/types/hasura-graphql-auth-options.type.js +2 -0
  218. package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +2 -0
  219. package/esm2015/infra/hasura-graphql/types/hasura-graphql-headers.type.js +2 -0
  220. package/esm2015/infra/hasura-graphql/types/index.js +9 -0
  221. package/esm2015/infra/hasura-graphql/types/nested-field.type.js +2 -0
  222. package/esm2015/infra/hasura-graphql/types/query-builder-options.type.js +2 -0
  223. package/esm2015/infra/hasura-graphql/types/variable-options.type.js +2 -0
  224. package/esm2015/infra/index.js +2 -1
  225. package/esm2015/utils/index.js +6 -4
  226. package/esm2015/utils/is-uuid.js +3 -0
  227. package/esm2015/utils/mixins/index.js +2 -1
  228. package/esm2015/utils/mixins/merge-constructor-params.type.js +2 -0
  229. package/esm2015/utils/mixins/mixin-ctor.type.js +1 -1
  230. package/esm2015/utils/parse-datetime.js +14 -0
  231. package/esm2015/utils/types/array-element.type.js +2 -0
  232. package/esm2015/utils/types/index.js +2 -1
  233. package/fesm2015/infrab4a-connect.js +1375 -142
  234. package/fesm2015/infrab4a-connect.js.map +1 -1
  235. package/infra/elasticsearch/adapters/axios.adapter.d.ts +3 -0
  236. package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +3 -0
  237. package/infra/elasticsearch/indexes/products-index.d.ts +5 -1
  238. package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +1 -1
  239. package/infra/firebase/auth/register-firebase-auth.service.d.ts +1 -1
  240. package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +3 -16
  241. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +3 -28
  242. package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +3 -14
  243. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +3 -19
  244. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +3 -14
  245. package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +3 -14
  246. package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +5 -4
  247. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +7 -14
  248. package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +6 -15
  249. package/infra/firebase/firestore/models/user-search.d.ts +3 -3
  250. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +1 -42
  251. package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +5 -44
  252. package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +4 -51
  253. package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +1 -42
  254. package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +1 -42
  255. package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +1 -42
  256. package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +1 -42
  257. package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +1 -42
  258. package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +1 -42
  259. package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +1 -42
  260. package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +1 -42
  261. package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +1 -42
  262. package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +1 -42
  263. package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +1 -42
  264. package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +4 -51
  265. package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +1 -42
  266. package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +4 -51
  267. package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +4 -51
  268. package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +4 -51
  269. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +1 -42
  270. package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +4 -51
  271. package/infra/firebase/firestore/repositories/users/user-search-firestore.repository.d.ts +1 -42
  272. package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +3 -3
  273. package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +3 -3
  274. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +7 -3
  275. package/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +11 -0
  276. package/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +13 -0
  277. package/infra/hasura-graphql/enums/index.d.ts +2 -0
  278. package/infra/hasura-graphql/index.d.ts +4 -0
  279. package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +13 -0
  280. package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +6 -0
  281. package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +8 -0
  282. package/infra/hasura-graphql/mixins/helpers/index.d.ts +3 -0
  283. package/infra/hasura-graphql/mixins/index.d.ts +7 -0
  284. package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +8 -0
  285. package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +11 -0
  286. package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +7 -0
  287. package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +31 -0
  288. package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +24 -0
  289. package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +11 -0
  290. package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +14 -0
  291. package/infra/hasura-graphql/models/category-hasura-graphql.d.ts +6 -0
  292. package/infra/hasura-graphql/models/index.d.ts +4 -0
  293. package/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +6 -0
  294. package/infra/hasura-graphql/models/product-hasura-graphql.d.ts +9 -0
  295. package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +9 -0
  296. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +22 -0
  297. package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -0
  298. package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +26 -0
  299. package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +13 -0
  300. package/infra/hasura-graphql/repositories/index.d.ts +1 -0
  301. package/infra/hasura-graphql/types/fields.type.d.ts +2 -0
  302. package/infra/hasura-graphql/types/graphql.repository.type.d.ts +21 -0
  303. package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +8 -0
  304. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +36 -0
  305. package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +7 -0
  306. package/infra/hasura-graphql/types/index.d.ts +8 -0
  307. package/infra/hasura-graphql/types/nested-field.type.d.ts +7 -0
  308. package/infra/hasura-graphql/types/query-builder-options.type.d.ts +7 -0
  309. package/infra/hasura-graphql/types/variable-options.type.d.ts +9 -0
  310. package/infra/index.d.ts +1 -0
  311. package/package.json +5 -3
  312. package/utils/index.d.ts +5 -4
  313. package/utils/is-uuid.d.ts +1 -0
  314. package/utils/mixins/index.d.ts +1 -0
  315. package/utils/mixins/merge-constructor-params.type.d.ts +3 -0
  316. package/utils/mixins/mixin-ctor.type.d.ts +1 -1
  317. package/utils/parse-datetime.d.ts +1 -0
  318. package/utils/types/array-element.type.d.ts +1 -0
  319. package/utils/types/index.d.ts +1 -0
  320. package/domain/general/model/base-model-with-identifier-fields.d.ts +0 -3
  321. package/domain/general/model/base.model.d.ts +0 -6
  322. package/domain/general/model/types/base-model-builder.type.d.ts +0 -5
  323. package/domain/general/model/types/non-function-properties.type.d.ts +0 -2
  324. package/domain/general/model/types/non-function-property-name.type.d.ts +0 -3
  325. package/domain/general/repository/create.repository.d.ts +0 -5
  326. package/domain/general/repository/crud.repository.d.ts +0 -7
  327. package/domain/general/repository/delete.repository.d.ts +0 -5
  328. package/domain/general/repository/find.repository.d.ts +0 -5
  329. package/domain/general/repository/get.repository.d.ts +0 -5
  330. package/domain/general/repository/read.repository.d.ts +0 -5
  331. package/domain/general/repository/types/repository-find-filters.type.d.ts +0 -14
  332. package/domain/general/repository/update.repository.d.ts +0 -5
  333. package/domain/shopping/models/coupons/club-coupon.d.ts +0 -7
  334. package/domain/shopping/models/coupons/enums/discount-type.enum.d.ts +0 -5
  335. package/domain/shopping/models/coupons/store-coupon.d.ts +0 -8
  336. package/esm2015/domain/general/model/base-model-with-identifier-fields.js +0 -2
  337. package/esm2015/domain/general/model/base.model.js +0 -13
  338. package/esm2015/domain/general/model/index.js +0 -5
  339. package/esm2015/domain/general/model/types/base-model-builder.type.js +0 -2
  340. package/esm2015/domain/general/model/types/index.js +0 -4
  341. package/esm2015/domain/general/model/types/non-function-properties.type.js +0 -2
  342. package/esm2015/domain/general/model/types/non-function-property-name.type.js +0 -2
  343. package/esm2015/domain/general/repository/create.repository.js +0 -2
  344. package/esm2015/domain/general/repository/crud.repository.js +0 -2
  345. package/esm2015/domain/general/repository/delete.repository.js +0 -2
  346. package/esm2015/domain/general/repository/enums/where.enum.js +0 -12
  347. package/esm2015/domain/general/repository/find.repository.js +0 -2
  348. package/esm2015/domain/general/repository/get.repository.js +0 -2
  349. package/esm2015/domain/general/repository/read.repository.js +0 -2
  350. package/esm2015/domain/general/repository/types/index.js +0 -6
  351. package/esm2015/domain/general/repository/types/repository-find-filters.type.js +0 -2
  352. package/esm2015/domain/general/repository/types/repository-update-params.type.js +0 -2
  353. package/esm2015/domain/general/repository/update.repository.js +0 -2
  354. package/esm2015/domain/shopping/models/coupons/club-coupon.js +0 -18
  355. package/esm2015/domain/shopping/models/coupons/enums/discount-type.enum.js +0 -7
  356. package/esm2015/domain/shopping/models/coupons/store-coupon.js +0 -23
  357. /package/domain/{general → generic}/index.d.ts +0 -0
  358. /package/domain/{general → generic}/model/identifier-fields.d.ts +0 -0
  359. /package/domain/{general → generic}/repository/enums/index.d.ts +0 -0
  360. /package/domain/{general → generic}/repository/enums/update-option-actions.enum.d.ts +0 -0
  361. /package/domain/{general → generic}/repository/index.d.ts +0 -0
  362. /package/domain/{general → generic}/repository/types/repository-find-result.type.d.ts +0 -0
  363. /package/domain/{general → generic}/repository/types/repository-limit-options.type.d.ts +0 -0
  364. /package/domain/{general → generic}/repository/types/repository-order-by-list.type.d.ts +0 -0
@@ -12,7 +12,7 @@ export const withCreateFirestore = (MixinBase) => {
12
12
  save(data) {
13
13
  var _a;
14
14
  return __awaiter(this, void 0, void 0, function* () {
15
- const id = (_a = data[data.identifierFields().shift()]) === null || _a === void 0 ? void 0 : _a.toString();
15
+ const id = (_a = data[data.identifiersFields.shift()]) === null || _a === void 0 ? void 0 : _a.toString();
16
16
  const collectionPath = this.buildCollectionPathForAdd(data);
17
17
  if (isEmpty(id))
18
18
  return this.collection(collectionPath).add(data);
@@ -28,4 +28,4 @@ export const withCreateFirestore = (MixinBase) => {
28
28
  }
29
29
  };
30
30
  };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWNyZWF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUlBLE9BQU8sRUFBRSxPQUFPLEVBQWEsTUFBTSxtQkFBbUIsQ0FBQTtBQUV0RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxTQUFnRixFQUNoRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGVBQWdCLFNBQVEsU0FBUztRQUN0QyxNQUFNLENBQUMsSUFBb0I7O2dCQUMvQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtnQkFDM0QsTUFBTSxHQUFHLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUE7Z0JBRTlCLE9BQU8sR0FBRyxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ25CLENBQUM7U0FBQTtRQUVLLElBQUksQ0FBQyxJQUFXOzs7Z0JBQ3BCLE1BQU0sRUFBRSxHQUFHLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLDBDQUFFLFFBQVEsRUFBRSxDQUFBO2dCQUM1RCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRTNELElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFBRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUVqRSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQTtnQkFDdEQsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUV0QixPQUFPLE1BQU0sQ0FBQTs7U0FDZDtRQUVELHlCQUF5QixDQUFDLFdBQTJCO1lBQ25ELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvY3VtZW50UmVmZXJlbmNlIH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgQ3JlYXRlUmVwb3NpdG9yeSwgQmFzZU1vZGVsV2l0aElkZW50aWZpZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBpc0VtcHR5LCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhDcmVhdGVGaXJlc3RvcmUgPSA8VEJhc2UgZXh0ZW5kcyBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcjxUQmFzZT4sIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgQ3JlYXRlRmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgQ3JlYXRlUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGNyZWF0ZShkYXRhOiBQYXJ0aWFsPFRCYXNlPik6IFByb21pc2U8VEJhc2U+IHtcbiAgICAgIGNvbnN0IGRvY1JlZiA9IGF3YWl0IHRoaXMuc2F2ZSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSkpXG4gICAgICBjb25zdCBkb2MgPSBhd2FpdCBkb2NSZWYuZ2V0KClcblxuICAgICAgcmV0dXJuIGRvYy5kYXRhKClcbiAgICB9XG5cbiAgICBhc3luYyBzYXZlKGRhdGE6IFRCYXNlKTogUHJvbWlzZTxEb2N1bWVudFJlZmVyZW5jZTxUQmFzZT4+IHtcbiAgICAgIGNvbnN0IGlkID0gZGF0YVtkYXRhLmlkZW50aWZpZXJGaWVsZHMoKS5zaGlmdCgpXT8udG9TdHJpbmcoKVxuICAgICAgY29uc3QgY29sbGVjdGlvblBhdGggPSB0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JBZGQoZGF0YSlcblxuICAgICAgaWYgKGlzRW1wdHkoaWQpKSByZXR1cm4gdGhpcy5jb2xsZWN0aW9uKGNvbGxlY3Rpb25QYXRoKS5hZGQoZGF0YSlcblxuICAgICAgY29uc3QgZG9jUmVmID0gdGhpcy5jb2xsZWN0aW9uKGNvbGxlY3Rpb25QYXRoKS5kb2MoaWQpXG4gICAgICBhd2FpdCBkb2NSZWYuc2V0KGRhdGEpXG5cbiAgICAgIHJldHVybiBkb2NSZWZcbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yQWRkKGlkZW50aWZpZXJzOiBQYXJ0aWFsPFRCYXNlPik6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5pc1N1YkNvbGxlY3Rpb24odGhpcylcbiAgICAgICAgPyBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7aWRlbnRpZmllcnNbdGhpcy5wYXJlbnRJZEZpZWxkXX0vJHt0aGlzLmNvbGxlY3Rpb25OYW1lfWBcbiAgICAgICAgOiB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgfVxuICB9XG59XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWNyZWF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUlBLE9BQU8sRUFBRSxPQUFPLEVBQXFDLE1BQU0sbUJBQW1CLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FJakMsU0FBZ0YsRUFJaEYsRUFBRTtJQUNGLE9BQU8sTUFBTSxlQUFnQixTQUFRLFNBQVM7UUFDdEMsTUFBTSxDQUFDLElBQW1DOztnQkFDOUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQVcsQ0FBQyxDQUFDLENBQUE7Z0JBQ2xFLE1BQU0sR0FBRyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFBO2dCQUU5QixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUNuQixDQUFDO1NBQUE7UUFFSyxJQUFJLENBQUMsSUFBVzs7O2dCQUNwQixNQUFNLEVBQUUsR0FBRyxNQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUMsMENBQUUsUUFBUSxFQUFFLENBQUE7Z0JBQzNELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQkFFM0QsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDO29CQUFFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRWpFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBO2dCQUN0RCxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRXRCLE9BQU8sTUFBTSxDQUFBOztTQUNkO1FBRUQseUJBQXlCLENBQUMsV0FBMkI7WUFDbkQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3JHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFBO1FBQ3pCLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9jdW1lbnRSZWZlcmVuY2UgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQgeyBDcmVhdGVSZXBvc2l0b3J5LCBDcmVhdGVSZXBvc2l0b3J5UGFyYW1zLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBpc0VtcHR5LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhDcmVhdGVGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPiAmIENyZWF0ZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycyxcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczx7fSwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBDcmVhdGVGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBDcmVhdGVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgY3JlYXRlKGRhdGE6IENyZWF0ZVJlcG9zaXRvcnlQYXJhbXM8VEJhc2U+KTogUHJvbWlzZTxUQmFzZT4ge1xuICAgICAgY29uc3QgZG9jUmVmID0gYXdhaXQgdGhpcy5zYXZlKHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhIGFzIGFueSkpXG4gICAgICBjb25zdCBkb2MgPSBhd2FpdCBkb2NSZWYuZ2V0KClcblxuICAgICAgcmV0dXJuIGRvYy5kYXRhKClcbiAgICB9XG5cbiAgICBhc3luYyBzYXZlKGRhdGE6IFRCYXNlKTogUHJvbWlzZTxEb2N1bWVudFJlZmVyZW5jZTxUQmFzZT4+IHtcbiAgICAgIGNvbnN0IGlkID0gZGF0YVtkYXRhLmlkZW50aWZpZXJzRmllbGRzLnNoaWZ0KCldPy50b1N0cmluZygpXG4gICAgICBjb25zdCBjb2xsZWN0aW9uUGF0aCA9IHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckFkZChkYXRhKVxuXG4gICAgICBpZiAoaXNFbXB0eShpZCkpIHJldHVybiB0aGlzLmNvbGxlY3Rpb24oY29sbGVjdGlvblBhdGgpLmFkZChkYXRhKVxuXG4gICAgICBjb25zdCBkb2NSZWYgPSB0aGlzLmNvbGxlY3Rpb24oY29sbGVjdGlvblBhdGgpLmRvYyhpZClcbiAgICAgIGF3YWl0IGRvY1JlZi5zZXQoZGF0YSlcblxuICAgICAgcmV0dXJuIGRvY1JlZlxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JBZGQoaWRlbnRpZmllcnM6IFBhcnRpYWw8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtpZGVudGlmaWVyc1t0aGlzLnBhcmVudElkRmllbGRdfS8ke3RoaXMuY29sbGVjdGlvbk5hbWV9YFxuICAgICAgICA6IHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -7,4 +7,4 @@ export const withCrudFirestore = (MixinBase) => {
7
7
  return class CrudFirestore extends withUpdateFirestore(withGetFirestore(withFindFirestore(withDeleteFirestore(withCreateFirestore(MixinBase))))) {
8
8
  };
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUVuRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFnRixFQUNoRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGFBQ1gsU0FBUSxtQkFBbUIsQ0FDekIsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3pGO0tBQ2tDLENBQUE7QUFDdkMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZU1vZGVsV2l0aElkZW50aWZpZXIsIENydWRSZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmltcG9ydCB7IHdpdGhDcmVhdGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhEZWxldGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtZGVsZXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kRmlyZXN0b3JlIH0gZnJvbSAnLi93aXRoLWZpbmQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aEdldEZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC1nZXQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aFVwZGF0ZUZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluJ1xuXG5leHBvcnQgY29uc3Qgd2l0aENydWRGaXJlc3RvcmUgPSA8VEJhc2UgZXh0ZW5kcyBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcjxUQmFzZT4sIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgQ3J1ZEZpcmVzdG9yZVxuICAgIGV4dGVuZHMgd2l0aFVwZGF0ZUZpcmVzdG9yZShcbiAgICAgIHdpdGhHZXRGaXJlc3RvcmUod2l0aEZpbmRGaXJlc3RvcmUod2l0aERlbGV0ZUZpcmVzdG9yZSh3aXRoQ3JlYXRlRmlyZXN0b3JlKE1peGluQmFzZSkpKSksXG4gICAgKVxuICAgIGltcGxlbWVudHMgQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+IHt9XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUVuRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGFBQ1gsU0FBUSxtQkFBbUIsQ0FDekIsZ0JBQWdCLENBQ2QsaUJBQWlCLENBQ2YsbUJBQW1CLENBQ2pCLG1CQUFtQixDQUFDLFNBQXFFLENBQUMsQ0FDM0YsQ0FDRixDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIENydWRSZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmltcG9ydCB7IHdpdGhDcmVhdGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhEZWxldGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtZGVsZXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kRmlyZXN0b3JlIH0gZnJvbSAnLi93aXRoLWZpbmQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aEdldEZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC1nZXQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aFVwZGF0ZUZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluJ1xuXG5leHBvcnQgY29uc3Qgd2l0aENydWRGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5ID0gQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgUmVwb3NpdG9yeSAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e30sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgQ3J1ZEZpcmVzdG9yZVxuICAgIGV4dGVuZHMgd2l0aFVwZGF0ZUZpcmVzdG9yZShcbiAgICAgIHdpdGhHZXRGaXJlc3RvcmUoXG4gICAgICAgIHdpdGhGaW5kRmlyZXN0b3JlKFxuICAgICAgICAgIHdpdGhEZWxldGVGaXJlc3RvcmUoXG4gICAgICAgICAgICB3aXRoQ3JlYXRlRmlyZXN0b3JlKE1peGluQmFzZSBhcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKVxuICAgIGltcGxlbWVudHMgQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+IHt9IGFzIGFueVxufVxuIl19
@@ -15,4 +15,4 @@ export const withDeleteFirestore = (MixinBase) => {
15
15
  }
16
16
  };
17
17
  };
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWRlbGV0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUlBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLFNBQWdGLEVBQ2hGLEVBQUU7SUFDRixPQUFPLE1BQU0sZUFBZ0IsU0FBUSxTQUFTO1FBQ3RDLE1BQU0sQ0FBQyxXQUF5Qzs7Z0JBQ3BELE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsV0FBVyxDQUFDLENBQUM7cUJBQ2xFLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO3FCQUNsRCxNQUFNLEVBQUUsQ0FBQTtZQUNiLENBQUM7U0FBQTtRQUVELDRCQUE0QixDQUFDLFdBQXlDO1lBQ3BFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyLCBOb25GdW5jdGlvblByb3BlcnRpZXMsIERlbGV0ZVJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhEZWxldGVGaXJlc3RvcmUgPSA8VEJhc2UgZXh0ZW5kcyBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcjxUQmFzZT4sIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgRGVsZXRlRmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgRGVsZXRlUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGRlbGV0ZShpZGVudGlmaWVyczogTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzPFRCYXNlPik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvclJlbW92ZShpZGVudGlmaWVycykpXG4gICAgICAgIC5kb2MoT2JqZWN0LnZhbHVlcyhpZGVudGlmaWVycykuc2hpZnQoKS50b1N0cmluZygpKVxuICAgICAgICAuZGVsZXRlKClcbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yUmVtb3ZlKGlkZW50aWZpZXJzOiBOb25GdW5jdGlvblByb3BlcnRpZXM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtpZGVudGlmaWVyc1t0aGlzLnBhcmVudElkRmllbGRdfS8ke3RoaXMuY29sbGVjdGlvbk5hbWV9YFxuICAgICAgICA6IHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICB9XG4gIH1cbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWRlbGV0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUlBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBSWpDLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixPQUFPLE1BQU0sZUFBZ0IsU0FBUSxTQUFTO1FBQ3RDLE1BQU0sQ0FBQyxXQUEwQzs7Z0JBQ3JELE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsV0FBVyxDQUFDLENBQUM7cUJBQ2xFLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO3FCQUNsRCxNQUFNLEVBQUUsQ0FBQTtZQUNiLENBQUM7U0FBQTtRQUVELDRCQUE0QixDQUFDLFdBQW9DO1lBQy9ELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkZW50aWZpZXJzTW9kZWwsIE1vZGVsQmFzZVN0cnVjdHVyZSwgRGVsZXRlUmVwb3NpdG9yeSwgRGVsZXRlUmVwb3NpdG9yeVBhcmFtcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aERlbGV0ZUZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgRGVsZXRlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9LCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIERlbGV0ZUZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIERlbGV0ZVJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICBhc3luYyBkZWxldGUoaWRlbnRpZmllcnM6IERlbGV0ZVJlcG9zaXRvcnlQYXJhbXM8VEJhc2U+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICBhd2FpdCB0aGlzLmNvbGxlY3Rpb24odGhpcy5idWlsZENvbGxlY3Rpb25QYXRoRm9yUmVtb3ZlKGlkZW50aWZpZXJzKSlcbiAgICAgICAgLmRvYyhPYmplY3QudmFsdWVzKGlkZW50aWZpZXJzKS5zaGlmdCgpLnRvU3RyaW5nKCkpXG4gICAgICAgIC5kZWxldGUoKVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JSZW1vdmUoaWRlbnRpZmllcnM6IElkZW50aWZpZXJzTW9kZWw8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtpZGVudGlmaWVyc1t0aGlzLnBhcmVudElkRmllbGRdfS8ke3RoaXMuY29sbGVjdGlvbk5hbWV9YFxuICAgICAgICA6IHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -33,16 +33,16 @@ export const withFindFirestore = (MixinBase) => {
33
33
  if ((options === null || options === void 0 ? void 0 : options.operator) === Where.IN && Array.isArray(options === null || options === void 0 ? void 0 : options.value))
34
34
  return queryReference.where(firestoreFieldName, 'array-contains', options.value);
35
35
  if (isObject(options) && isNil(options === null || options === void 0 ? void 0 : options.operator) && isNil(options === null || options === void 0 ? void 0 : options.value)) {
36
- return Object.keys(options).reduce((queryReferenceWithWhere, key) => this.buildWhereSentence(queryReferenceWithWhere, `${fieldName}.${key}`, options[key]), queryReference);
36
+ return Object.keys(options).reduce((queryReferenceWithWhere, key) => this.buildWhereSentence(queryReferenceWithWhere, `${fieldName.toString()}.${key}`, options[key]), queryReference);
37
37
  }
38
38
  return queryReference.where(firestoreFieldName, (options === null || options === void 0 ? void 0 : options.operator) || '==', (options === null || options === void 0 ? void 0 : options.value) || options);
39
39
  };
40
40
  }
41
- find(filters, limits, orderBy) {
41
+ find({ filters, limits, orderBy, } = {}) {
42
42
  return __awaiter(this, void 0, void 0, function* () {
43
- let query = this.collection(this.buildCollectionPathForFind(filters));
44
- filters === null || filters === void 0 ? void 0 : filters.forEach((filterer) => (query = this.makeFirestoreWhere(query, filterer)));
45
- orderBy === null || orderBy === void 0 ? void 0 : orderBy.forEach((orderer) => Object.keys(orderer).forEach((fieldName) => (query = query.orderBy(fieldName, orderer[fieldName]))));
43
+ let query = this.collection(this.buildCollectionPathForFind(filters || {}));
44
+ query = this.makeFirestoreWhere(query, filters || {});
45
+ Object.keys(orderBy || {}).forEach((fieldName) => (query = query.orderBy(fieldName, orderBy[fieldName])));
46
46
  query = yield this.defineLimits(query, filters, limits);
47
47
  const docs = yield query.get();
48
48
  const data = docs.docs.map((doc) => doc.data());
@@ -53,19 +53,18 @@ export const withFindFirestore = (MixinBase) => {
53
53
  });
54
54
  }
55
55
  buildCollectionPathForFind(filters) {
56
- var _a;
57
56
  if (!this.isSubCollection(this))
58
57
  return this.collectionName;
59
58
  const parentIdField = this.parentIdField;
60
- const parentId = getValueFromFilter((_a = filters.find((groupFilter) => Boolean(getValueFromFilter(groupFilter[parentIdField])))) === null || _a === void 0 ? void 0 : _a[parentIdField]);
59
+ const parentId = getValueFromFilter(filters === null || filters === void 0 ? void 0 : filters[parentIdField]);
61
60
  return `${this.parentRepository.collectionName}/${parentId}/${this.collectionName}`;
62
61
  }
63
62
  defineLimits(query, filters, limits) {
64
63
  return __awaiter(this, void 0, void 0, function* () {
65
64
  if (limits === null || limits === void 0 ? void 0 : limits.offset) {
66
- if (limits.offset instanceof this.model)
65
+ if (this.model.isModel(limits.offset))
67
66
  query = query.startAfter(yield this.collection(this.buildCollectionPathForFind(filters))
68
- .doc(limits.offset[limits.offset.identifierFields().shift()])
67
+ .doc(limits.offset[limits.offset.identifiersFields.shift()])
69
68
  .get());
70
69
  else if (isNumber(limits.offset) || isString(limits.offset))
71
70
  query = query.startAt(limits.offset);
@@ -84,4 +83,4 @@ export const withFindFirestore = (MixinBase) => {
84
83
  }
85
84
  };
86
85
  };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQVVMLEtBQUssR0FDTixNQUFNLG9CQUFvQixDQUFBO0FBRTNCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFhLEdBQUcsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRS9GLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLFNBQWdGLEVBQ2hGLEVBQUU7SUFDRixNQUFNLHFCQUFxQixHQUFHLENBQUMsTUFBVyxFQUF1RCxFQUFFLENBQ2pHLENBQUMsS0FBSyxDQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxRQUFRLENBQUMsQ0FBQTtJQUMxQixNQUFNLGtCQUFrQixHQUFHLENBQUMsTUFBdUMsRUFBTyxFQUFFO1FBQzFFLE9BQU8scUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtJQUM5RCxDQUFDLENBQUE7SUFDRCxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FDdkMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDekUsQ0FBQyxDQUFDLEtBQUs7UUFDUCxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBRXRDLE9BQU8sTUFBTSxh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NUQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssRUFBWSxDQUFDLENBQUM7NkJBQ3RFLEdBQUcsRUFBRSxDQUNULENBQUE7eUJBQ0UsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO3dCQUFFLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtpQkFDbEc7Z0JBQ0QsSUFBSSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsS0FBSztvQkFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBRXBELE9BQU8sS0FBSyxDQUFBO1lBQ2QsQ0FBQztTQUFBO1FBRUQsY0FBYyxDQUFDLElBQWEsRUFBRSxNQUFxQztZQUNqRSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQztnQkFBRSxPQUFPLENBQUMsQ0FBQTtZQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEtBQUssQ0FBQTtnQkFBRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUE7WUFFbkQsT0FBTyxRQUFRLENBQUE7UUFDakIsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uUmVmZXJlbmNlLCBRdWVyeSB9IGZyb20gJ0BmaXJlYmFzZS9maXJlc3RvcmUtdHlwZXMnXG5cbmltcG9ydCB7XG4gIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyLFxuICBGaW5kUmVwb3NpdG9yeSxcbiAgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzLFxuICBSZXBvc2l0b3J5RmluZEZpZWxkLFxuICBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzLFxuICBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucyxcbiAgUmVwb3NpdG9yeUZpbmRSZXN1bHQsXG4gIFJlcG9zaXRvcnlMaW1pdE9wdGlvbnMsXG4gIFJlcG9zaXRvcnlPcmRlckJ5TGlzdCxcbiAgV2hlcmUsXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IGlzRGF0ZSwgaXNOaWwsIGlzTnVtYmVyLCBpc09iamVjdCwgaXNTdHJpbmcsIE1peGluQ3Rvciwgc2V0IH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmV4cG9ydCBjb25zdCB3aXRoRmluZEZpcmVzdG9yZSA9IDxUQmFzZSBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyPFRCYXNlPiwgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3Rvcj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKSA9PiB7XG4gIGNvbnN0IGNoZWNrSWZJc0ZpbHRlck9wdGlvbiA9IChmaWx0ZXI6IGFueSk6IGZpbHRlciBpcyBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9uczxUQmFzZSwgYW55PiA9PlxuICAgICFpc05pbChmaWx0ZXI/Lm9wZXJhdG9yKVxuICBjb25zdCBnZXRWYWx1ZUZyb21GaWx0ZXIgPSAoZmlsdGVyOiBSZXBvc2l0b3J5RmluZEZpZWxkPFRCYXNlLCBhbnk+KTogYW55ID0+IHtcbiAgICByZXR1cm4gY2hlY2tJZklzRmlsdGVyT3B0aW9uKGZpbHRlcikgPyBmaWx0ZXIudmFsdWUgOiBmaWx0ZXJcbiAgfVxuICBjb25zdCBnZXRGaW5hbFZhbHVlRnJvbSA9ICh2YWx1ZTogYW55KSA9PlxuICAgIGlzTnVtYmVyKHZhbHVlKSB8fCBpc1N0cmluZyh2YWx1ZSkgfHwgaXNEYXRlKHZhbHVlKSB8fCBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgPyB2YWx1ZVxuICAgICAgOiBPYmplY3QudmFsdWVzKGdldEZpbmFsVmFsdWVGcm9tKVxuXG4gIHJldHVybiBjbGFzcyBGaW5kRmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgRmluZFJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICBhc3luYyBmaW5kKFxuICAgICAgZmlsdGVycz86IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+W10sXG4gICAgICBsaW1pdHM/OiBSZXBvc2l0b3J5TGltaXRPcHRpb25zPFRCYXNlPixcbiAgICAgIG9yZGVyQnk/OiBSZXBvc2l0b3J5T3JkZXJCeUxpc3Q8VEJhc2U+LFxuICAgICk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8VEJhc2U+PiB7XG4gICAgICBsZXQgcXVlcnk6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHwgUXVlcnk8VEJhc2U+ID0gdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckZpbmQoZmlsdGVycykpXG5cbiAgICAgIGZpbHRlcnM/LmZvckVhY2goKGZpbHRlcmVyKSA9PiAocXVlcnkgPSB0aGlzLm1ha2VGaXJlc3RvcmVXaGVyZShxdWVyeSwgZmlsdGVyZXIpKSlcblxuICAgICAgb3JkZXJCeT8uZm9yRWFjaCgob3JkZXJlcikgPT5cbiAgICAgICAgT2JqZWN0LmtleXMob3JkZXJlcikuZm9yRWFjaCgoZmllbGROYW1lKSA9PiAocXVlcnkgPSBxdWVyeS5vcmRlckJ5KGZpZWxkTmFtZSwgb3JkZXJlcltmaWVsZE5hbWVdKSkpLFxuICAgICAgKVxuXG4gICAgICBxdWVyeSA9IGF3YWl0IHRoaXMuZGVmaW5lTGltaXRzKHF1ZXJ5LCBmaWx0ZXJzLCBsaW1pdHMpXG5cbiAgICAgIGNvbnN0IGRvY3MgPSBhd2FpdCBxdWVyeS5nZXQoKVxuICAgICAgY29uc3QgZGF0YSA9IGRvY3MuZG9jcy5tYXAoKGRvYykgPT4gZG9jLmRhdGEoKSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF0YSxcbiAgICAgICAgY291bnQ6IHRoaXMuY2FsY3VsYXRlQ291bnQoZGF0YSwgbGltaXRzKSxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yRmluZChmaWx0ZXJzOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPFRCYXNlPltdKTogc3RyaW5nIHtcbiAgICAgIGlmICghdGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpKSByZXR1cm4gdGhpcy5jb2xsZWN0aW9uTmFtZVxuXG4gICAgICBjb25zdCBwYXJlbnRJZEZpZWxkID0gdGhpcy5wYXJlbnRJZEZpZWxkXG4gICAgICBjb25zdCBwYXJlbnRJZCA9IGdldFZhbHVlRnJvbUZpbHRlcihcbiAgICAgICAgZmlsdGVycy5maW5kKChncm91cEZpbHRlcikgPT4gQm9vbGVhbihnZXRWYWx1ZUZyb21GaWx0ZXIoZ3JvdXBGaWx0ZXJbcGFyZW50SWRGaWVsZF0pKSk/LltwYXJlbnRJZEZpZWxkXSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtwYXJlbnRJZH0vJHt0aGlzLmNvbGxlY3Rpb25OYW1lfWBcbiAgICB9XG5cbiAgICBtYWtlRmlyZXN0b3JlV2hlcmUgPSAoXG4gICAgICBxdWVyeVJlZmVyZW5jZTogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4gfCBRdWVyeTxUQmFzZT4sXG4gICAgICBmaWx0ZXI6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+LFxuICAgICk6IFF1ZXJ5PFRCYXNlPiA9PlxuICAgICAgT2JqZWN0LmtleXMoZmlsdGVyKS5yZWR1Y2UoXG4gICAgICAgIChxdWVyeTogUXVlcnk8VEJhc2U+LCBmaWVsZE5hbWU6IHN0cmluZykgPT4gdGhpcy5idWlsZFdoZXJlU2VudGVuY2UocXVlcnksIGZpZWxkTmFtZSwgZmlsdGVyW2ZpZWxkTmFtZV0pLFxuICAgICAgICBxdWVyeVJlZmVyZW5jZSxcbiAgICAgIClcblxuICAgIGJ1aWxkV2hlcmVTZW50ZW5jZSA9IChcbiAgICAgIHF1ZXJ5UmVmZXJlbmNlOiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiB8IFF1ZXJ5PFRCYXNlPixcbiAgICAgIGZpZWxkTmFtZTogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPiB8IHN0cmluZyxcbiAgICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+PixcbiAgICApOiBRdWVyeTxUQmFzZT4gPT4ge1xuICAgICAgaWYgKHRoaXMuaXNTdWJDb2xsZWN0aW9uPFRCYXNlPih0aGlzKSAmJiBmaWVsZE5hbWUgPT09IHRoaXMucGFyZW50SWRGaWVsZCkgcmV0dXJuIHF1ZXJ5UmVmZXJlbmNlXG5cbiAgICAgIGNvbnN0IHZhbHVlID0gb3B0aW9ucz8udmFsdWUgfHwgb3B0aW9uc1xuICAgICAgY29uc3Qgb2JqZWN0ID0ge31cblxuICAgICAgc2V0KG9iamVjdCwgZmllbGROYW1lLCB2YWx1ZSlcblxuICAgICAgY29uc3QgcGxhaW5JbnN0YW5jZSA9IG5ldyB0aGlzLm1vZGVsKG9iamVjdCkudG9QbGFpbigpXG4gICAgICBjb25zdCBmaXJlc3RvcmVGaWVsZE5hbWUgPVxuICAgICAgICBmaWVsZE5hbWUudG9TdHJpbmcoKS5pbmRleE9mKCcuJykgPiAtMVxuICAgICAgICAgID8gZmllbGROYW1lLnRvU3RyaW5nKClcbiAgICAgICAgICA6IE9iamVjdC5rZXlzKHBsYWluSW5zdGFuY2UpLmZpbmQoKGtleSkgPT4gcGxhaW5JbnN0YW5jZVtrZXldKVxuXG4gICAgICBpZiAob3B0aW9ucz8ub3BlcmF0b3IgPT09IFdoZXJlLkxJS0UpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob3B0aW9ucz8udmFsdWUpKVxuICAgICAgICAgIHJldHVybiBxdWVyeVJlZmVyZW5jZS53aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICdhcnJheS1jb250YWlucy1hbnknLCBvcHRpb25zLnZhbHVlKVxuXG4gICAgICAgIHF1ZXJ5UmVmZXJlbmNlID0gcXVlcnlSZWZlcmVuY2Uud2hlcmUoZmlyZXN0b3JlRmllbGROYW1lLCAnPj0nLCBvcHRpb25zLnZhbHVlKVxuICAgICAgICBxdWVyeVJlZmVyZW5jZSA9IHF1ZXJ5UmVmZXJlbmNlLndoZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgJzw9JywgYCR7b3B0aW9ucy52YWx1ZX1+YClcblxuICAgICAgICByZXR1cm4gcXVlcnlSZWZlcmVuY2VcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zPy5vcGVyYXRvciA9PT0gV2hlcmUuSU4gJiYgQXJyYXkuaXNBcnJheShvcHRpb25zPy52YWx1ZSkpXG4gICAgICAgIHJldHVybiBxdWVyeVJlZmVyZW5jZS53aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICdhcnJheS1jb250YWlucycsIG9wdGlvbnMudmFsdWUpXG4gICAgICBpZiAoaXNPYmplY3Qob3B0aW9ucykgJiYgaXNOaWwob3B0aW9ucz8ub3BlcmF0b3IpICYmIGlzTmlsKG9wdGlvbnM/LnZhbHVlKSkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMob3B0aW9ucykucmVkdWNlKFxuICAgICAgICAgIChxdWVyeVJlZmVyZW5jZVdpdGhXaGVyZSwga2V5KSA9PlxuICAgICAgICAgICAgdGhpcy5idWlsZFdoZXJlU2VudGVuY2UocXVlcnlSZWZlcmVuY2VXaXRoV2hlcmUsIGAke2ZpZWxkTmFtZX0uJHtrZXl9YCwgb3B0aW9uc1trZXldKSxcbiAgICAgICAgICBxdWVyeVJlZmVyZW5jZSxcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcXVlcnlSZWZlcmVuY2Uud2hlcmUoZmlyZXN0b3JlRmllbGROYW1lLCBvcHRpb25zPy5vcGVyYXRvciB8fCAnPT0nLCBvcHRpb25zPy52YWx1ZSB8fCBvcHRpb25zKVxuICAgIH1cblxuICAgIGFzeW5jIGRlZmluZUxpbWl0cyhcbiAgICAgIHF1ZXJ5OiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiB8IFF1ZXJ5PFRCYXNlPixcbiAgICAgIGZpbHRlcnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+W10sXG4gICAgICBsaW1pdHM6IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+LFxuICAgICk6IFByb21pc2U8UXVlcnk8VEJhc2U+PiB7XG4gICAgICBpZiAobGltaXRzPy5vZmZzZXQpIHtcbiAgICAgICAgaWYgKGxpbWl0cy5vZmZzZXQgaW5zdGFuY2VvZiB0aGlzLm1vZGVsKVxuICAgICAgICAgIHF1ZXJ5ID0gcXVlcnkuc3RhcnRBZnRlcihcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuY29sbGVjdGlvbih0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JGaW5kKGZpbHRlcnMpKVxuICAgICAgICAgICAgICAuZG9jKGxpbWl0cy5vZmZzZXRbbGltaXRzLm9mZnNldC5pZGVudGlmaWVyRmllbGRzKCkuc2hpZnQoKSBhcyBzdHJpbmddKVxuICAgICAgICAgICAgICAuZ2V0KCksXG4gICAgICAgICAgKVxuICAgICAgICBlbHNlIGlmIChpc051bWJlcihsaW1pdHMub2Zmc2V0KSB8fCBpc1N0cmluZyhsaW1pdHMub2Zmc2V0KSkgcXVlcnkgPSBxdWVyeS5zdGFydEF0KGxpbWl0cy5vZmZzZXQpXG4gICAgICB9XG4gICAgICBpZiAobGltaXRzPy5saW1pdCkgcXVlcnkgPSBxdWVyeS5saW1pdChsaW1pdHMubGltaXQpXG5cbiAgICAgIHJldHVybiBxdWVyeVxuICAgIH1cblxuICAgIGNhbGN1bGF0ZUNvdW50KGRhdGE6IFRCYXNlW10sIGxpbWl0czogUmVwb3NpdG9yeUxpbWl0T3B0aW9uczxUQmFzZT4pOiBudW1iZXIge1xuICAgICAgaWYgKGRhdGEubGVuZ3RoIDw9IDApIHJldHVybiAwXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPCBsaW1pdHM/LmxpbWl0KSByZXR1cm4gZGF0YS5sZW5ndGhcblxuICAgICAgcmV0dXJuIEluZmluaXR5XG4gICAgfVxuICB9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQVVMLEtBQUssR0FDTixNQUFNLG9CQUFvQixDQUFBO0FBQzNCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFxQyxHQUFHLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUd2SCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUkvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQVcsRUFBdUQsRUFBRSxDQUNqRyxDQUFDLEtBQUssQ0FBQyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxDQUFDLENBQUE7SUFDMUIsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE1BQXVDLEVBQU8sRUFBRTtRQUMxRSxPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDOUQsQ0FBQyxDQUFBO0lBQ0QsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQ3ZDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3pFLENBQUMsQ0FBQyxLQUFLO1FBQ1AsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUV0QyxPQUFPLE1BQU0s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LENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQzt3QkFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7aUJBQ2xHO2dCQUNELElBQUksTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEtBQUs7b0JBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO2dCQUVwRCxPQUFPLEtBQUssQ0FBQTtZQUNkLENBQUM7U0FBQTtRQUVELGNBQWMsQ0FBQyxJQUFhLEVBQUUsTUFBcUM7WUFDakUsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUM7Z0JBQUUsT0FBTyxDQUFDLENBQUE7WUFDOUIsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFHLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxLQUFLLENBQUE7Z0JBQUUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO1lBRW5ELE9BQU8sUUFBUSxDQUFBO1FBQ2pCLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvblJlZmVyZW5jZSwgUXVlcnksIFdoZXJlRmlsdGVyT3AgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQge1xuICBGaW5kUmVwb3NpdG9yeSxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbGQsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zLFxuICBSZXBvc2l0b3J5RmluZFJlc3VsdCxcbiAgUmVwb3NpdG9yeUxpbWl0T3B0aW9ucyxcbiAgUmVwb3NpdG9yeU9yZGVyQnksXG4gIFdoZXJlLFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpc0RhdGUsIGlzTmlsLCBpc051bWJlciwgaXNPYmplY3QsIGlzU3RyaW5nLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IsIHNldCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEZpbmRGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPiAmIEZpbmRSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e30sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBjaGVja0lmSXNGaWx0ZXJPcHRpb24gPSAoZmlsdGVyOiBhbnkpOiBmaWx0ZXIgaXMgUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8VEJhc2UsIGFueT4gPT5cbiAgICAhaXNOaWwoZmlsdGVyPy5vcGVyYXRvcilcbiAgY29uc3QgZ2V0VmFsdWVGcm9tRmlsdGVyID0gKGZpbHRlcjogUmVwb3NpdG9yeUZpbmRGaWVsZDxUQmFzZSwgYW55Pik6IGFueSA9PiB7XG4gICAgcmV0dXJuIGNoZWNrSWZJc0ZpbHRlck9wdGlvbihmaWx0ZXIpID8gZmlsdGVyLnZhbHVlIDogZmlsdGVyXG4gIH1cbiAgY29uc3QgZ2V0RmluYWxWYWx1ZUZyb20gPSAodmFsdWU6IGFueSkgPT5cbiAgICBpc051bWJlcih2YWx1ZSkgfHwgaXNTdHJpbmcodmFsdWUpIHx8IGlzRGF0ZSh2YWx1ZSkgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWVcbiAgICAgIDogT2JqZWN0LnZhbHVlcyhnZXRGaW5hbFZhbHVlRnJvbSlcblxuICByZXR1cm4gY2xhc3MgRmluZEZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpbmRSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgZmluZCh7XG4gICAgICBmaWx0ZXJzLFxuICAgICAgbGltaXRzLFxuICAgICAgb3JkZXJCeSxcbiAgICB9OiB7XG4gICAgICBmaWx0ZXJzPzogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT5cbiAgICAgIGxpbWl0cz86IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+XG4gICAgICBvcmRlckJ5PzogUmVwb3NpdG9yeU9yZGVyQnk8VEJhc2U+XG4gICAgfSA9IHt9KTogUHJvbWlzZTxSZXBvc2l0b3J5RmluZFJlc3VsdDxUQmFzZT4+IHtcbiAgICAgIGxldCBxdWVyeTogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4gfCBRdWVyeTxUQmFzZT4gPSB0aGlzLmNvbGxlY3Rpb24oXG4gICAgICAgIHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckZpbmQoZmlsdGVycyB8fCB7fSksXG4gICAgICApXG5cbiAgICAgIHF1ZXJ5ID0gdGhpcy5tYWtlRmlyZXN0b3JlV2hlcmUocXVlcnksIGZpbHRlcnMgfHwge30pXG5cbiAgICAgIE9iamVjdC5rZXlzKG9yZGVyQnkgfHwge30pLmZvckVhY2goKGZpZWxkTmFtZSkgPT4gKHF1ZXJ5ID0gcXVlcnkub3JkZXJCeShmaWVsZE5hbWUsIG9yZGVyQnlbZmllbGROYW1lXSkpKVxuXG4gICAgICBxdWVyeSA9IGF3YWl0IHRoaXMuZGVmaW5lTGltaXRzKHF1ZXJ5LCBmaWx0ZXJzLCBsaW1pdHMpXG5cbiAgICAgIGNvbnN0IGRvY3MgPSBhd2FpdCBxdWVyeS5nZXQoKVxuICAgICAgY29uc3QgZGF0YSA9IGRvY3MuZG9jcy5tYXAoKGRvYykgPT4gZG9jLmRhdGEoKSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF0YSxcbiAgICAgICAgY291bnQ6IHRoaXMuY2FsY3VsYXRlQ291bnQoZGF0YSwgbGltaXRzKSxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yRmluZChmaWx0ZXJzOiBSZXBvc2l0b3J5RmluZEZpZWx0ZXJzPFRCYXNlPik6IHN0cmluZyB7XG4gICAgICBpZiAoIXRoaXMuaXNTdWJDb2xsZWN0aW9uPFRCYXNlPih0aGlzKSkgcmV0dXJuIHRoaXMuY29sbGVjdGlvbk5hbWVcblxuICAgICAgY29uc3QgcGFyZW50SWRGaWVsZCA9IHRoaXMucGFyZW50SWRGaWVsZFxuICAgICAgY29uc3QgcGFyZW50SWQgPSBnZXRWYWx1ZUZyb21GaWx0ZXIoZmlsdGVycz8uW3BhcmVudElkRmllbGRdKVxuXG4gICAgICByZXR1cm4gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke3BhcmVudElkfS8ke3RoaXMuY29sbGVjdGlvbk5hbWV9YFxuICAgIH1cblxuICAgIG1ha2VGaXJlc3RvcmVXaGVyZSA9IChcbiAgICAgIHF1ZXJ5UmVmZXJlbmNlOiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiB8IFF1ZXJ5PFRCYXNlPixcbiAgICAgIGZpbHRlcjogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4sXG4gICAgKTogUXVlcnk8VEJhc2U+ID0+XG4gICAgICBPYmplY3Qua2V5cyhmaWx0ZXIpLnJlZHVjZShcbiAgICAgICAgKHF1ZXJ5OiBRdWVyeTxUQmFzZT4sIGZpZWxkTmFtZTogc3RyaW5nKSA9PiB0aGlzLmJ1aWxkV2hlcmVTZW50ZW5jZShxdWVyeSwgZmllbGROYW1lLCBmaWx0ZXJbZmllbGROYW1lXSksXG4gICAgICAgIHF1ZXJ5UmVmZXJlbmNlLFxuICAgICAgKVxuXG4gICAgYnVpbGRXaGVyZVNlbnRlbmNlID0gKFxuICAgICAgcXVlcnlSZWZlcmVuY2U6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHwgUXVlcnk8VEJhc2U+LFxuICAgICAgZmllbGROYW1lOiBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+IHwgc3RyaW5nLFxuICAgICAgb3B0aW9uczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8VEJhc2UsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4+LFxuICAgICk6IFF1ZXJ5PFRCYXNlPiA9PiB7XG4gICAgICBpZiAodGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpICYmIGZpZWxkTmFtZSA9PT0gdGhpcy5wYXJlbnRJZEZpZWxkKSByZXR1cm4gcXVlcnlSZWZlcmVuY2VcblxuICAgICAgY29uc3QgdmFsdWUgPSBvcHRpb25zPy52YWx1ZSB8fCBvcHRpb25zXG4gICAgICBjb25zdCBvYmplY3QgPSB7fVxuXG4gICAgICBzZXQob2JqZWN0LCBmaWVsZE5hbWUsIHZhbHVlKVxuXG4gICAgICBjb25zdCBwbGFpbkluc3RhbmNlID0gbmV3IHRoaXMubW9kZWwob2JqZWN0KS50b1BsYWluKClcbiAgICAgIGNvbnN0IGZpcmVzdG9yZUZpZWxkTmFtZSA9XG4gICAgICAgIGZpZWxkTmFtZS50b1N0cmluZygpLmluZGV4T2YoJy4nKSA+IC0xXG4gICAgICAgICAgPyBmaWVsZE5hbWUudG9TdHJpbmcoKVxuICAgICAgICAgIDogT2JqZWN0LmtleXMocGxhaW5JbnN0YW5jZSkuZmluZCgoa2V5KSA9PiBwbGFpbkluc3RhbmNlW2tleV0pXG5cbiAgICAgIGlmIChvcHRpb25zPy5vcGVyYXRvciA9PT0gV2hlcmUuTElLRSkge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zPy52YWx1ZSkpXG4gICAgICAgICAgcmV0dXJuIHF1ZXJ5UmVmZXJlbmNlLndoZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgJ2FycmF5LWNvbnRhaW5zLWFueScsIG9wdGlvbnMudmFsdWUpXG5cbiAgICAgICAgcXVlcnlSZWZlcmVuY2UgPSBxdWVyeVJlZmVyZW5jZS53aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICc+PScsIG9wdGlvbnMudmFsdWUpXG4gICAgICAgIHF1ZXJ5UmVmZXJlbmNlID0gcXVlcnlSZWZlcmVuY2Uud2hlcmUoZmlyZXN0b3JlRmllbGROYW1lLCAnPD0nLCBgJHtvcHRpb25zLnZhbHVlfX5gKVxuXG4gICAgICAgIHJldHVybiBxdWVyeVJlZmVyZW5jZVxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbnM/Lm9wZXJhdG9yID09PSBXaGVyZS5JTiAmJiBBcnJheS5pc0FycmF5KG9wdGlvbnM/LnZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHF1ZXJ5UmVmZXJlbmNlLndoZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgJ2FycmF5LWNvbnRhaW5zJywgb3B0aW9ucy52YWx1ZSlcbiAgICAgIGlmIChpc09iamVjdChvcHRpb25zKSAmJiBpc05pbChvcHRpb25zPy5vcGVyYXRvcikgJiYgaXNOaWwob3B0aW9ucz8udmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhvcHRpb25zKS5yZWR1Y2UoXG4gICAgICAgICAgKHF1ZXJ5UmVmZXJlbmNlV2l0aFdoZXJlLCBrZXkpID0+XG4gICAgICAgICAgICB0aGlzLmJ1aWxkV2hlcmVTZW50ZW5jZShxdWVyeVJlZmVyZW5jZVdpdGhXaGVyZSwgYCR7ZmllbGROYW1lLnRvU3RyaW5nKCl9LiR7a2V5fWAsIG9wdGlvbnNba2V5XSksXG4gICAgICAgICAgcXVlcnlSZWZlcmVuY2UsXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHF1ZXJ5UmVmZXJlbmNlLndoZXJlKFxuICAgICAgICBmaXJlc3RvcmVGaWVsZE5hbWUsXG4gICAgICAgIChvcHRpb25zPy5vcGVyYXRvciBhcyBXaGVyZUZpbHRlck9wKSB8fCAnPT0nLFxuICAgICAgICBvcHRpb25zPy52YWx1ZSB8fCBvcHRpb25zLFxuICAgICAgKVxuICAgIH1cblxuICAgIGFzeW5jIGRlZmluZUxpbWl0cyhcbiAgICAgIHF1ZXJ5OiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiB8IFF1ZXJ5PFRCYXNlPixcbiAgICAgIGZpbHRlcnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+LFxuICAgICAgbGltaXRzOiBSZXBvc2l0b3J5TGltaXRPcHRpb25zPFRCYXNlPixcbiAgICApOiBQcm9taXNlPFF1ZXJ5PFRCYXNlPj4ge1xuICAgICAgaWYgKGxpbWl0cz8ub2Zmc2V0KSB7XG4gICAgICAgIGlmICh0aGlzLm1vZGVsLmlzTW9kZWwobGltaXRzLm9mZnNldCkpXG4gICAgICAgICAgcXVlcnkgPSBxdWVyeS5zdGFydEFmdGVyKFxuICAgICAgICAgICAgYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckZpbmQoZmlsdGVycykpXG4gICAgICAgICAgICAgIC5kb2MobGltaXRzLm9mZnNldFtsaW1pdHMub2Zmc2V0LmlkZW50aWZpZXJzRmllbGRzLnNoaWZ0KCkgYXMgc3RyaW5nXSlcbiAgICAgICAgICAgICAgLmdldCgpLFxuICAgICAgICAgIClcbiAgICAgICAgZWxzZSBpZiAoaXNOdW1iZXIobGltaXRzLm9mZnNldCkgfHwgaXNTdHJpbmcobGltaXRzLm9mZnNldCkpIHF1ZXJ5ID0gcXVlcnkuc3RhcnRBdChsaW1pdHMub2Zmc2V0KVxuICAgICAgfVxuICAgICAgaWYgKGxpbWl0cz8ubGltaXQpIHF1ZXJ5ID0gcXVlcnkubGltaXQobGltaXRzLmxpbWl0KVxuXG4gICAgICByZXR1cm4gcXVlcnlcbiAgICB9XG5cbiAgICBjYWxjdWxhdGVDb3VudChkYXRhOiBUQmFzZVtdLCBsaW1pdHM6IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+KTogbnVtYmVyIHtcbiAgICAgIGlmIChkYXRhLmxlbmd0aCA8PSAwKSByZXR1cm4gMFxuICAgICAgaWYgKGRhdGEubGVuZ3RoIDwgbGltaXRzPy5saW1pdCkgcmV0dXJuIGRhdGEubGVuZ3RoXG5cbiAgICAgIHJldHVybiBJbmZpbml0eVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
@@ -1,9 +1,5 @@
1
- import firebase from 'firebase';
2
1
  export const withFirestore = (MixinBase) => {
3
2
  return class extends MixinBase {
4
- constructor(...args) {
5
- super(args);
6
- }
7
3
  collection(path) {
8
4
  return this.firestore.collection(path || this.collectionName).withConverter(this.buildModelInstance());
9
5
  }
@@ -13,7 +9,7 @@ export const withFirestore = (MixinBase) => {
13
9
  fromFirestore: (snap) => {
14
10
  const data = snap.data();
15
11
  Object.keys(data).forEach((key) => {
16
- if (data[key] instanceof firebase.firestore.Timestamp) {
12
+ if (data[key] && typeof data[key] === 'object' && '_seconds' in data[key]) {
17
13
  data[key] = data[key].toDate();
18
14
  }
19
15
  });
@@ -23,4 +19,4 @@ export const withFirestore = (MixinBase) => {
23
19
  }
24
20
  };
25
21
  };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maXJlc3RvcmUubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbWl4aW5zL3dpdGgtZmlyZXN0b3JlLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sUUFBUSxNQUFNLFVBQVUsQ0FBQTtBQU0vQixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBK0MsU0FBb0IsRUFBRSxFQUFFO0lBQ2xHLE9BQU8sS0FBTSxTQUFRLFNBQVM7UUFLNUIsWUFBWSxHQUFHLElBQWdCO1lBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNiLENBQUM7UUFFRCxVQUFVLENBQUMsSUFBYTtZQUN0QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUE7UUFDeEcsQ0FBQztRQUVELGtCQUFrQjtZQUloQixPQUFPO2dCQUNMLFdBQVcsRUFBRSxDQUFDLElBQVcsRUFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDbkYsYUFBYSxFQUFFLENBQUMsSUFBa0MsRUFBUyxFQUFFO29CQUMzRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7b0JBRXhCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7d0JBQ2hDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLFFBQVEsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFOzRCQUNyRCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFBO3lCQUMvQjtvQkFDSCxDQUFDLENBQUMsQ0FBQTtvQkFFRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxpQ0FBTSxJQUFJLEtBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLElBQUcsQ0FBQTtnQkFDeEQsQ0FBQzthQUNGLENBQUE7UUFDSCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25SZWZlcmVuY2UsIERvY3VtZW50RGF0YSwgRmlyZWJhc2VGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ0BmaXJlYmFzZS9maXJlc3RvcmUtdHlwZXMnXG5pbXBvcnQgZmlyZWJhc2UgZnJvbSAnZmlyZWJhc2UnXG5cbmltcG9ydCB7IEJhc2VNb2RlbEJ1aWxkZXIsIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmV4cG9ydCBjb25zdCB3aXRoRmlyZXN0b3JlID0gPFRCYXNlIGV4dGVuZHMgQmFzZU1vZGVsV2l0aElkZW50aWZpZXI8VEJhc2U+PihNaXhpbkJhc2U6IE1peGluQ3RvcikgPT4ge1xuICByZXR1cm4gY2xhc3MgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgcmVhZG9ubHkgZmlyZXN0b3JlPzogRmlyZWJhc2VGaXJlc3RvcmVcbiAgICBjb2xsZWN0aW9uTmFtZTogc3RyaW5nXG4gICAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBBcnJheTxhbnk+KSB7XG4gICAgICBzdXBlcihhcmdzKVxuICAgIH1cblxuICAgIGNvbGxlY3Rpb24ocGF0aD86IHN0cmluZyk6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHtcbiAgICAgIHJldHVybiB0aGlzLmZpcmVzdG9yZS5jb2xsZWN0aW9uKHBhdGggfHwgdGhpcy5jb2xsZWN0aW9uTmFtZSkud2l0aENvbnZlcnRlcih0aGlzLmJ1aWxkTW9kZWxJbnN0YW5jZSgpKVxuICAgIH1cblxuICAgIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IFRCYXNlKSA9PiBEb2N1bWVudERhdGFcbiAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VEJhc2U+KSA9PiBUQmFzZVxuICAgIH0ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBUQmFzZSk6IERvY3VtZW50RGF0YSA9PiAoZGF0YT8udG9QbGFpbiA/IGRhdGEudG9QbGFpbigpIDogZGF0YSksXG4gICAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VEJhc2U+KTogVEJhc2UgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBzbmFwLmRhdGEoKVxuXG4gICAgICAgICAgT2JqZWN0LmtleXMoZGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICBpZiAoZGF0YVtrZXldIGluc3RhbmNlb2YgZmlyZWJhc2UuZmlyZXN0b3JlLlRpbWVzdGFtcCkge1xuICAgICAgICAgICAgICBkYXRhW2tleV0gPSBkYXRhW2tleV0udG9EYXRlKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZSh7IC4uLmRhdGEsIGlkOiBzbmFwLmlkIH0pXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maXJlc3RvcmUubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbWl4aW5zL3dpdGgtZmlyZXN0b3JlLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUMzQixTQUFZLEVBQ2tDLEVBQUU7SUFDaEQsT0FBTyxLQUFNLFNBQVEsU0FBUztRQUs1QixVQUFVLENBQUMsSUFBYTtZQUN0QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUE7UUFDeEcsQ0FBQztRQUVELGtCQUFrQjtZQUloQixPQUFPO2dCQUNMLFdBQVcsRUFBRSxDQUFDLElBQVcsRUFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDbkYsYUFBYSxFQUFFLENBQUMsSUFBa0MsRUFBUyxFQUFFO29CQUMzRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7b0JBRXhCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7d0JBQ2hDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxVQUFVLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFOzRCQUN6RSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFBO3lCQUMvQjtvQkFDSCxDQUFDLENBQUMsQ0FBQTtvQkFFRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxpQ0FBTSxJQUFJLEtBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLElBQUcsQ0FBQTtnQkFDeEQsQ0FBQzthQUNGLENBQUE7UUFDSCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25SZWZlcmVuY2UsIERvY3VtZW50RGF0YSwgRmlyZWJhc2VGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ0BmaXJlYmFzZS9maXJlc3RvcmUtdHlwZXMnXG5cbmltcG9ydCB7IEJhc2VNb2RlbEJ1aWxkZXIsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEZpcmVzdG9yZSA9IDxUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSwgVCBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcj4oXG4gIE1peGluQmFzZTogVCxcbik6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiwgbmV2ZXI+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIHJlYWRvbmx5IGZpcmVzdG9yZT86IEZpcmViYXNlRmlyZXN0b3JlXG4gICAgY29sbGVjdGlvbk5hbWU6IHN0cmluZ1xuICAgIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPFRCYXNlPlxuXG4gICAgY29sbGVjdGlvbihwYXRoPzogc3RyaW5nKTogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4ge1xuICAgICAgcmV0dXJuIHRoaXMuZmlyZXN0b3JlLmNvbGxlY3Rpb24ocGF0aCB8fCB0aGlzLmNvbGxlY3Rpb25OYW1lKS53aXRoQ29udmVydGVyKHRoaXMuYnVpbGRNb2RlbEluc3RhbmNlKCkpXG4gICAgfVxuXG4gICAgYnVpbGRNb2RlbEluc3RhbmNlKCk6IHtcbiAgICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogVEJhc2UpID0+IERvY3VtZW50RGF0YVxuICAgICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUQmFzZT4pID0+IFRCYXNlXG4gICAgfSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IFRCYXNlKTogRG9jdW1lbnREYXRhID0+IChkYXRhPy50b1BsYWluID8gZGF0YS50b1BsYWluKCkgOiBkYXRhKSxcbiAgICAgICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUQmFzZT4pOiBUQmFzZSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHNuYXAuZGF0YSgpXG5cbiAgICAgICAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhW2tleV0gJiYgdHlwZW9mIGRhdGFba2V5XSA9PT0gJ29iamVjdCcgJiYgJ19zZWNvbmRzJyBpbiBkYXRhW2tleV0pIHtcbiAgICAgICAgICAgICAgZGF0YVtrZXldID0gZGF0YVtrZXldLnRvRGF0ZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcblxuICAgICAgICAgIHJldHVybiB0aGlzLm1vZGVsLnRvSW5zdGFuY2UoeyAuLi5kYXRhLCBpZDogc25hcC5pZCB9KVxuICAgICAgICB9LFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -21,4 +21,4 @@ export const withGetFirestore = (MixinBase) => {
21
21
  }
22
22
  };
23
23
  };
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWdldC1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxLQUFLLEVBQWEsTUFBTSxtQkFBbUIsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFbEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsU0FBZ0YsRUFDaEYsRUFBRTtJQUNGLE9BQU8sTUFBTSxZQUFhLFNBQVEsU0FBUztRQUNuQyxHQUFHLENBQUMsV0FBeUM7O2dCQUNqRCxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQyxDQUFDO3FCQUMzRSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztxQkFDbEQsR0FBRyxFQUFFLENBQUE7Z0JBQ1IsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFBO2dCQUV2QixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7b0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxZQUFZLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFBO2dCQUU3RixPQUFPLElBQUksQ0FBQTtZQUNiLENBQUM7U0FBQTtRQUVELHlCQUF5QixDQUFDLFdBQXlDO1lBQ2pFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyLCBHZXRSZXBvc2l0b3J5LCBOb25GdW5jdGlvblByb3BlcnRpZXMgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBpc05pbCwgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBOb3RGb3VuZEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vZXJyb3JzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEdldEZpcmVzdG9yZSA9IDxUQmFzZSBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyPFRCYXNlPiwgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3Rvcj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKSA9PiB7XG4gIHJldHVybiBjbGFzcyBHZXRGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHZXRSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgZ2V0KGlkZW50aWZpZXJzOiBOb25GdW5jdGlvblByb3BlcnRpZXM8VEJhc2U+KTogUHJvbWlzZTxUQmFzZT4ge1xuICAgICAgY29uc3QgZG9jID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckdldChpZGVudGlmaWVycykpXG4gICAgICAgIC5kb2MoT2JqZWN0LnZhbHVlcyhpZGVudGlmaWVycykuc2hpZnQoKS50b1N0cmluZygpKVxuICAgICAgICAuZ2V0KClcbiAgICAgIGNvbnN0IGRhdGEgPSBkb2MuZGF0YSgpXG5cbiAgICAgIGlmIChpc05pbChkYXRhKSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYERvY3VtZW50ICR7SlNPTi5zdHJpbmdpZnkoaWRlbnRpZmllcnMpfSBub3QgZm91bmRgKVxuXG4gICAgICByZXR1cm4gZGF0YVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JHZXQoaWRlbnRpZmllcnM6IE5vbkZ1bmN0aW9uUHJvcGVydGllczxUQmFzZT4pOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaXNTdWJDb2xsZWN0aW9uKHRoaXMpXG4gICAgICAgID8gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke2lkZW50aWZpZXJzW3RoaXMucGFyZW50SWRGaWVsZF19LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgICAgIDogdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgIH1cbiAgfVxufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWdldC1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxLQUFLLEVBQXFDLE1BQU0sbUJBQW1CLENBQUE7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWxELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBSTlCLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixPQUFPLE1BQU0sWUFBYSxTQUFRLFNBQVM7UUFDbkMsR0FBRyxDQUFDLFdBQXlDOztnQkFDakQsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztxQkFDM0UsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7cUJBQ2xELEdBQUcsRUFBRSxDQUFBO2dCQUNSLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFFdkIsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDO29CQUFFLE1BQU0sSUFBSSxhQUFhLENBQUMsWUFBWSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtnQkFFN0YsT0FBTyxJQUFJLENBQUE7WUFDYixDQUFDO1NBQUE7UUFFRCx5QkFBeUIsQ0FBQyxXQUF5QztZQUNqRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDckcsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekIsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIEdldFJlcG9zaXRvcnksIE5vbkZ1bmN0aW9uUHJvcGVydGllcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IGlzTmlsLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnXG5cbmV4cG9ydCBjb25zdCB3aXRoR2V0RmlyZXN0b3JlID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBHZXRSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e30sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgR2V0RmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgR2V0UmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGdldChpZGVudGlmaWVyczogTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzPFRCYXNlPik6IFByb21pc2U8VEJhc2U+IHtcbiAgICAgIGNvbnN0IGRvYyA9IGF3YWl0IHRoaXMuY29sbGVjdGlvbih0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JHZXQoaWRlbnRpZmllcnMpKVxuICAgICAgICAuZG9jKE9iamVjdC52YWx1ZXMoaWRlbnRpZmllcnMpLnNoaWZ0KCkudG9TdHJpbmcoKSlcbiAgICAgICAgLmdldCgpXG4gICAgICBjb25zdCBkYXRhID0gZG9jLmRhdGEoKVxuXG4gICAgICBpZiAoaXNOaWwoZGF0YSkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBEb2N1bWVudCAke0pTT04uc3RyaW5naWZ5KGlkZW50aWZpZXJzKX0gbm90IGZvdW5kYClcblxuICAgICAgcmV0dXJuIGRhdGFcbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yR2V0KGlkZW50aWZpZXJzOiBOb25GdW5jdGlvblByb3BlcnRpZXM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtpZGVudGlmaWVyc1t0aGlzLnBhcmVudElkRmllbGRdfS8ke3RoaXMuY29sbGVjdGlvbk5hbWV9YFxuICAgICAgICA6IHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -14,4 +14,4 @@ export const withHelpers = (MixinBase) => {
14
14
  }
15
15
  };
16
16
  };
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oZWxwZXJzLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWhlbHBlcnMubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUFFLEtBQUssRUFBYSxNQUFNLG1CQUFtQixDQUFBO0FBRXBELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUN6QixTQUFpQyxFQUNqQyxFQUFFO0lBQ0YsT0FBTyxLQUFNLFNBQVEsU0FBUztRQUM1QixPQUFPLENBQXVDLFFBQXVEO1lBQ25HLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBNkIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7YUFDbkU7aUJBQU07Z0JBQ0wsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQTZCLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO2FBQ3hFO1FBQ0gsQ0FBQztRQUVELGVBQWUsQ0FDYixVQUFrQztZQUVsQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssa0JBQWtCLENBQUMsQ0FBQyxDQUFBO1FBQzVFLENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlTbmFwc2hvdCwgUXVlcnlEb2N1bWVudFNuYXBzaG90IH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgQmFzZU1vZGVsV2l0aElkZW50aWZpZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5cbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnksIEZpcmVzdG9yZVN1YlJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IGlzTmlsLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhIZWxwZXJzID0gPE1vZGVsIGV4dGVuZHMgQmFzZU1vZGVsV2l0aElkZW50aWZpZXI8TW9kZWw+LCBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3IgJiBUTWl4aW5CYXNlLFxuKSA9PiB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpcmVzdG9yZUhlbHBlcnMge1xuICAgIHRvQXJyYXk8VCBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyPFQ+PihzbmFwU2hvdDogUXVlcnlTbmFwc2hvdDxUPiB8IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUPltdKTogVFtdIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNuYXBTaG90KSkge1xuICAgICAgICByZXR1cm4gc25hcFNob3QubWFwKChkb2M6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUPikgPT4gZG9jLmRhdGEoKSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBzbmFwU2hvdC5kb2NzLm1hcCgoZG9jOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VD4pID0+IGRvYy5kYXRhKCkpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaXNTdWJDb2xsZWN0aW9uPFQgZXh0ZW5kcyBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcjxUPj4oXG4gICAgICByZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PFQ+LFxuICAgICk6IHJlcG9zaXRvcnkgaXMgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxUPiB7XG4gICAgICByZXR1cm4gIWlzTmlsKE9iamVjdC5rZXlzKHRoaXMpLmZpbmQoKGtleSkgPT4ga2V5ID09PSAncGFyZW50UmVwb3NpdG9yeScpKVxuICAgIH1cbiAgfVxufVxuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oZWxwZXJzLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWhlbHBlcnMubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLEtBQUssRUFBYSxNQUFNLG1CQUFtQixDQUFBO0FBRXBELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUEyQyxTQUFpQyxFQUFFLEVBQUU7SUFDekcsT0FBTyxLQUFNLFNBQVEsU0FBUztRQUM1QixPQUFPLENBQStCLFFBQXVEO1lBQzNGLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBNkIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7YUFDbkU7aUJBQU07Z0JBQ0wsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQTZCLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO2FBQ3hFO1FBQ0gsQ0FBQztRQUVELGVBQWUsQ0FDYixVQUFrQztZQUVsQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssa0JBQWtCLENBQUMsQ0FBQyxDQUFBO1FBQzVFLENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlTbmFwc2hvdCwgUXVlcnlEb2N1bWVudFNuYXBzaG90IH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSwgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgaXNOaWwsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEhlbHBlcnMgPSA8VE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvciA9IE1peGluQ3Rvcj4oTWl4aW5CYXNlOiBNaXhpbkN0b3IgJiBUTWl4aW5CYXNlKSA9PiB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpcmVzdG9yZUhlbHBlcnMge1xuICAgIHRvQXJyYXk8VCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4oc25hcFNob3Q6IFF1ZXJ5U25hcHNob3Q8VD4gfCBRdWVyeURvY3VtZW50U25hcHNob3Q8VD5bXSk6IFRbXSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShzbmFwU2hvdCkpIHtcbiAgICAgICAgcmV0dXJuIHNuYXBTaG90Lm1hcCgoZG9jOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VD4pID0+IGRvYy5kYXRhKCkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gc25hcFNob3QuZG9jcy5tYXAoKGRvYzogUXVlcnlEb2N1bWVudFNuYXBzaG90PFQ+KSA9PiBkb2MuZGF0YSgpKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlzU3ViQ29sbGVjdGlvbjxUIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPihcbiAgICAgIHJlcG9zaXRvcnk6IEZpcmVzdG9yZVJlcG9zaXRvcnk8VD4sXG4gICAgKTogcmVwb3NpdG9yeSBpcyBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5PFQ+IHtcbiAgICAgIHJldHVybiAhaXNOaWwoT2JqZWN0LmtleXModGhpcykuZmluZCgoa2V5KSA9PiBrZXkgPT09ICdwYXJlbnRSZXBvc2l0b3J5JykpXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -8,4 +8,4 @@ export const withSubCollection = (MixinBase, ParentModel) => {
8
8
  }
9
9
  };
10
10
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUE2RCxFQUM3RCxXQUFrQyxFQUNsQyxFQUFFO0lBQ0YsT0FBTyxNQUFNLGdCQUNYLFNBQVEsU0FBUztRQU1qQixZQUFZLEdBQUcsSUFBZ0I7WUFDN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2IsQ0FBQztRQUVELFVBQVUsQ0FBQyxJQUFhO1lBQ3RCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMvQixDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25SZWZlcmVuY2UsIERvY3VtZW50RGF0YSwgRmlyZWJhc2VGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ0BmaXJlYmFzZS9maXJlc3RvcmUtdHlwZXMnXG5cbmltcG9ydCB7IEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVSZXBvc2l0b3J5LCBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhTdWJDb2xsZWN0aW9uID0gPFxuICBUQmFzZSBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyPFRCYXNlPixcbiAgVEJhc2VQYXJlbnQgZXh0ZW5kcyBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcjxUQmFzZVBhcmVudD4sXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3IsXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4gJiBUTWl4aW5CYXNlLFxuICBQYXJlbnRNb2RlbDogbmV3ICgpID0+IFRCYXNlUGFyZW50LFxuKSA9PiB7XG4gIHJldHVybiBjbGFzcyBTdWJDb2xsZWN0aW9uTWl4XG4gICAgZXh0ZW5kcyBNaXhpbkJhc2VcbiAgICBpbXBsZW1lbnRzIEZpcmVzdG9yZVN1YlJlcG9zaXRvcnk8VEJhc2UsIEluc3RhbmNlVHlwZTx0eXBlb2YgUGFyZW50TW9kZWw+PlxuICB7XG4gICAgcmVhZG9ubHkgcGFyZW50UmVwb3NpdG9yeTogRmlyZXN0b3JlUmVwb3NpdG9yeTxJbnN0YW5jZVR5cGU8dHlwZW9mIFBhcmVudE1vZGVsPj5cbiAgICBwYXJlbnRJZEZpZWxkOiBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBBcnJheTxhbnk+KSB7XG4gICAgICBzdXBlcihhcmdzKVxuICAgIH1cblxuICAgIGNvbGxlY3Rpb24ocGF0aD86IHN0cmluZyk6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHtcbiAgICAgIHJldHVybiBzdXBlci5jb2xsZWN0aW9uKHBhdGgpXG4gICAgfVxuICB9XG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUE2RCxFQUM3RCxXQUFrQyxFQU9sQyxFQUFFO0lBQ0YsT0FBTyxNQUFNLGdCQUNYLFNBQVEsU0FBUztRQU1qQixZQUFZLEdBQUcsSUFBZ0I7WUFDN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2IsQ0FBQztRQUVELFVBQVUsQ0FBQyxJQUFhO1lBQ3RCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMvQixDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25SZWZlcmVuY2UgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQgeyBJZGVudGlmaWVyc01vZGVsLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5LCBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscydcblxuZXhwb3J0IGNvbnN0IHdpdGhTdWJDb2xsZWN0aW9uID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVEJhc2VQYXJlbnQgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+ICYgVE1peGluQmFzZSxcbiAgUGFyZW50TW9kZWw6IG5ldyAoKSA9PiBUQmFzZVBhcmVudCxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJlxuICAgIEluc3RhbmNlVHlwZTxUTWl4aW5CYXNlPiAmXG4gICAgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxUQmFzZSwgSW5zdGFuY2VUeXBlPHR5cGVvZiBQYXJlbnRNb2RlbD4+ICZcbiAgICBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9LCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIFN1YkNvbGxlY3Rpb25NaXhcbiAgICBleHRlbmRzIE1peGluQmFzZVxuICAgIGltcGxlbWVudHMgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxUQmFzZSwgSW5zdGFuY2VUeXBlPHR5cGVvZiBQYXJlbnRNb2RlbD4+XG4gIHtcbiAgICByZWFkb25seSBwYXJlbnRSZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PEluc3RhbmNlVHlwZTx0eXBlb2YgUGFyZW50TW9kZWw+PlxuICAgIHBhcmVudElkRmllbGQ6IGtleW9mIElkZW50aWZpZXJzTW9kZWw8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBBcnJheTxhbnk+KSB7XG4gICAgICBzdXBlcihhcmdzKVxuICAgIH1cblxuICAgIGNvbGxlY3Rpb24ocGF0aD86IHN0cmluZyk6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHtcbiAgICAgIHJldHVybiBzdXBlci5jb2xsZWN0aW9uKHBhdGgpXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
@@ -22,7 +22,7 @@ export const withUpdateFirestore = (MixinBase) => {
22
22
  update(data) {
23
23
  return __awaiter(this, void 0, void 0, function* () {
24
24
  const model = new this.model();
25
- const keyField = model.identifierFields().shift();
25
+ const keyField = model.identifiersFields.shift();
26
26
  const docRef = this.collection(this.buildCollectionPathForUpdate(data)).doc(getValueFromParams(data, keyField).toString());
27
27
  yield docRef.set(this.paramsToPlain(data), { merge: true });
28
28
  const doc = yield docRef.get();
@@ -36,10 +36,10 @@ export const withUpdateFirestore = (MixinBase) => {
36
36
  }
37
37
  paramsToPlain(params) {
38
38
  const model = this.model;
39
- if (params instanceof model)
40
- return params;
39
+ if (model.isModel(params))
40
+ return params.toPlain();
41
41
  return Object.keys(params).reduce((data, currentKey) => (Object.assign(Object.assign({}, data), { [currentKey]: getValueByAction(params[currentKey]) })), {});
42
42
  }
43
43
  };
44
44
  };
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLXVwZGF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sUUFBUSxNQUFNLFVBQVUsQ0FBQTtBQUUvQixPQUFPLEVBSUwsbUJBQW1CLEdBR3BCLE1BQU0sb0JBQW9CLENBQUE7QUFFM0IsT0FBTyxFQUFFLEtBQUssRUFBdUIsTUFBTSxtQkFBbUIsQ0FBQTtBQUU5RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxTQUFnRixFQUNoRixFQUFFO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRyxDQUN6QixNQUFxQyxFQUNyQyxLQUFzQyxFQUNZLEVBQUUsV0FDcEQsT0FBQSxDQUFDLEtBQUssQ0FBQyxNQUFBLE1BQU0sQ0FBQyxLQUFlLENBQUMsMENBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQWUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQSxFQUFBLENBQUE7SUFDM0csTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE9BQTZCLEVBQTJDLEVBQUU7UUFDbEcsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUE7UUFFakQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFBO1FBQ3pDLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxZQUFZO1lBQUUsT0FBTyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDcEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNoQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsS0FBSztnQkFBRSxPQUFPLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDakcsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLE1BQU07Z0JBQUUsT0FBTyxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BHO1FBRUQsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFBO0lBQ3RCLENBQUMsQ0FBQTtJQUVELE9BQU8sTUFBTSxlQUFnQixTQUFRLFNBQVM7UUFDdEMsTUFBTSxDQUFDLElBQW1DOztnQkFDOUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBQzlCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFBO2dCQUNqRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FDekUsa0JBQWtCLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUM5QyxDQUFBO2dCQUVELE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7Z0JBRTNELE1BQU0sR0FBRyxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFBO2dCQUU5QixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUNuQixDQUFDO1NBQUE7UUFFRCw0QkFBNEIsQ0FBQyxXQUEwQztZQUNyRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQzVGLElBQUksQ0FBQyxjQUNQLEVBQUU7Z0JBQ0osQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekIsQ0FBQztRQUVELGFBQWEsQ0FBQyxNQUFxQztZQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFBO1lBRXhCLElBQUksTUFBTSxZQUFZLEtBQUs7Z0JBQUUsT0FBTyxNQUFNLENBQUE7WUFFMUMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDL0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxpQ0FBTSxJQUFJLEtBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBRyxFQUN2RixFQUFFLENBQ0gsQ0FBQTtRQUNILENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlJ1xuXG5pbXBvcnQge1xuICBCYXNlTW9kZWxXaXRoSWRlbnRpZmllcixcbiAgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzLFxuICBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zLFxuICBVcGRhdGVPcHRpb25BY3Rpb25zLFxuICBVcGRhdGVPcHRpb25zLFxuICBVcGRhdGVSZXBvc2l0b3J5LFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBpc05pbCwgTWl4aW5DdG9yLCBQcm9wVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aFVwZGF0ZUZpcmVzdG9yZSA9IDxUQmFzZSBleHRlbmRzIEJhc2VNb2RlbFdpdGhJZGVudGlmaWVyPFRCYXNlPiwgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3Rvcj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKSA9PiB7XG4gIGNvbnN0IGdldFZhbHVlRnJvbVBhcmFtcyA9IChcbiAgICBwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+LFxuICAgIGZpZWxkOiBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+LFxuICApOiBQcm9wVHlwZTxUQmFzZSwgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPj4gPT5cbiAgICAoaXNOaWwocGFyYW1zW2ZpZWxkIGFzIHN0cmluZ10/LnZhbHVlKSA/IHBhcmFtc1tmaWVsZCBhcyBzdHJpbmddIDogcGFyYW1zW2ZpZWxkIGFzIHN0cmluZ10udmFsdWUpIHx8IG51bGxcbiAgY29uc3QgZ2V0VmFsdWVCeUFjdGlvbiA9IChvcHRpb25zOiBVcGRhdGVPcHRpb25zPFRCYXNlPik6IGZpcmViYXNlLmZpcmVzdG9yZS5GaWVsZFZhbHVlIHwgdW5rbm93biA9PiB7XG4gICAgY29uc3QgZmllbGRWYWx1ZXMgPSBmaXJlYmFzZS5maXJlc3RvcmUuRmllbGRWYWx1ZVxuXG4gICAgaWYgKGlzTmlsKG9wdGlvbnMuYWN0aW9uKSkgcmV0dXJuIG9wdGlvbnNcbiAgICBpZiAob3B0aW9ucy5hY3Rpb24gPT09IFVwZGF0ZU9wdGlvbkFjdGlvbnMuUkVNT1ZFX0ZJRUxEKSByZXR1cm4gZmllbGRWYWx1ZXMuZGVsZXRlKClcbiAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zLnZhbHVlKSkge1xuICAgICAgaWYgKG9wdGlvbnMuYWN0aW9uID09PSBVcGRhdGVPcHRpb25BY3Rpb25zLk1FUkdFKSByZXR1cm4gZmllbGRWYWx1ZXMuYXJyYXlVbmlvbiguLi5vcHRpb25zLnZhbHVlKVxuICAgICAgaWYgKG9wdGlvbnMuYWN0aW9uID09PSBVcGRhdGVPcHRpb25BY3Rpb25zLlJFTU9WRSkgcmV0dXJuIGZpZWxkVmFsdWVzLmFycmF5UmVtb3ZlKC4uLm9wdGlvbnMudmFsdWUpXG4gICAgfVxuXG4gICAgcmV0dXJuIG9wdGlvbnMudmFsdWVcbiAgfVxuXG4gIHJldHVybiBjbGFzcyBVcGRhdGVGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBVcGRhdGVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgdXBkYXRlKGRhdGE6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogUHJvbWlzZTxUQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSBuZXcgdGhpcy5tb2RlbCgpXG4gICAgICBjb25zdCBrZXlGaWVsZCA9IG1vZGVsLmlkZW50aWZpZXJGaWVsZHMoKS5zaGlmdCgpXG4gICAgICBjb25zdCBkb2NSZWYgPSB0aGlzLmNvbGxlY3Rpb24odGhpcy5idWlsZENvbGxlY3Rpb25QYXRoRm9yVXBkYXRlKGRhdGEpKS5kb2MoXG4gICAgICAgIGdldFZhbHVlRnJvbVBhcmFtcyhkYXRhLCBrZXlGaWVsZCkudG9TdHJpbmcoKSxcbiAgICAgIClcblxuICAgICAgYXdhaXQgZG9jUmVmLnNldCh0aGlzLnBhcmFtc1RvUGxhaW4oZGF0YSksIHsgbWVyZ2U6IHRydWUgfSlcblxuICAgICAgY29uc3QgZG9jID0gYXdhaXQgZG9jUmVmLmdldCgpXG5cbiAgICAgIHJldHVybiBkb2MuZGF0YSgpXG4gICAgfVxuXG4gICAgYnVpbGRDb2xsZWN0aW9uUGF0aEZvclVwZGF0ZShpZGVudGlmaWVyczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4pOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaXNTdWJDb2xsZWN0aW9uKHRoaXMpXG4gICAgICAgID8gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke2dldFZhbHVlRnJvbVBhcmFtcyhpZGVudGlmaWVycywgdGhpcy5wYXJlbnRJZEZpZWxkKX0vJHtcbiAgICAgICAgICAgIHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICAgICAgICB9YFxuICAgICAgICA6IHRoaXMuY29sbGVjdGlvbk5hbWVcbiAgICB9XG5cbiAgICBwYXJhbXNUb1BsYWluKHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4pOiBQYXJ0aWFsPFRCYXNlPiB7XG4gICAgICBjb25zdCBtb2RlbCA9IHRoaXMubW9kZWxcblxuICAgICAgaWYgKHBhcmFtcyBpbnN0YW5jZW9mIG1vZGVsKSByZXR1cm4gcGFyYW1zXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7IC4uLmRhdGEsIFtjdXJyZW50S2V5XTogZ2V0VmFsdWVCeUFjdGlvbihwYXJhbXNbY3VycmVudEtleV0pIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG4gIH1cbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLXVwZGF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sUUFBUSxNQUFNLFVBQVUsQ0FBQTtBQUUvQixPQUFPLEVBSUwsbUJBQW1CLEdBR3BCLE1BQU0sb0JBQW9CLENBQUE7QUFFM0IsT0FBTyxFQUFFLEtBQUssRUFBK0MsTUFBTSxtQkFBbUIsQ0FBQTtBQU10RixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUlqQyxTQUFnRixFQUloRixFQUFFO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRyxDQUN6QixNQUFxQyxFQUNyQyxLQUFzQyxFQUNZLEVBQUUsV0FDcEQsT0FBQSxDQUFDLEtBQUssQ0FBQyxNQUFBLE1BQU0sQ0FBQyxLQUFlLENBQUMsMENBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQWUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQSxFQUFBLENBQUE7SUFDM0csTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE9BQTZCLEVBQTJDLEVBQUU7UUFDbEcsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUE7UUFFakQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFBO1FBQ3pDLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxZQUFZO1lBQUUsT0FBTyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDcEYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNoQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsS0FBSztnQkFBRSxPQUFPLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDakcsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLE1BQU07Z0JBQUUsT0FBTyxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3BHO1FBRUQsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFBO0lBQ3RCLENBQUMsQ0FBQTtJQUVELE9BQU8sTUFBTSxlQUFnQixTQUFRLFNBQVM7UUFDdEMsTUFBTSxDQUFDLElBQW1DOztnQkFDOUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBQzlCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtnQkFDaEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQ3pFLGtCQUFrQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FDOUMsQ0FBQTtnQkFFRCxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUUzRCxNQUFNLEdBQUcsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtnQkFFOUIsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUE7WUFDbkIsQ0FBQztTQUFBO1FBRUQsNEJBQTRCLENBQUMsV0FBMEM7WUFDckUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUM1RixJQUFJLENBQUMsY0FDUCxFQUFFO2dCQUNKLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFBO1FBQ3pCLENBQUM7UUFFRCxhQUFhLENBQUMsTUFBcUM7WUFDakQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQTtZQUV4QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUFFLE9BQU8sTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO1lBRWxELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQy9CLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsaUNBQU0sSUFBSSxLQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUcsRUFDdkYsRUFBRSxDQUNILENBQUE7UUFDSCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmaXJlYmFzZSBmcm9tICdmaXJlYmFzZSdcblxuaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlVcGRhdGVQYXJhbXMsXG4gIFVwZGF0ZU9wdGlvbkFjdGlvbnMsXG4gIFVwZGF0ZU9wdGlvbnMsXG4gIFVwZGF0ZVJlcG9zaXRvcnksXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IGlzTmlsLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IsIFByb3BUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZpcmVzdG9yZVJlcG9zaXRvcnlUeXBlPE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPiA9IFVwZGF0ZVJlcG9zaXRvcnk8TUJhc2U+ICYge1xuICBwYXJhbXNUb1BsYWluKHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT4pOiBQYXJ0aWFsPE1CYXNlPlxufVxuXG5leHBvcnQgY29uc3Qgd2l0aFVwZGF0ZUZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgVXBkYXRlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9LCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgY29uc3QgZ2V0VmFsdWVGcm9tUGFyYW1zID0gKFxuICAgIHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4sXG4gICAgZmllbGQ6IE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4sXG4gICk6IFByb3BUeXBlPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+PiA9PlxuICAgIChpc05pbChwYXJhbXNbZmllbGQgYXMgc3RyaW5nXT8udmFsdWUpID8gcGFyYW1zW2ZpZWxkIGFzIHN0cmluZ10gOiBwYXJhbXNbZmllbGQgYXMgc3RyaW5nXS52YWx1ZSkgfHwgbnVsbFxuICBjb25zdCBnZXRWYWx1ZUJ5QWN0aW9uID0gKG9wdGlvbnM6IFVwZGF0ZU9wdGlvbnM8VEJhc2U+KTogZmlyZWJhc2UuZmlyZXN0b3JlLkZpZWxkVmFsdWUgfCB1bmtub3duID0+IHtcbiAgICBjb25zdCBmaWVsZFZhbHVlcyA9IGZpcmViYXNlLmZpcmVzdG9yZS5GaWVsZFZhbHVlXG5cbiAgICBpZiAoaXNOaWwob3B0aW9ucy5hY3Rpb24pKSByZXR1cm4gb3B0aW9uc1xuICAgIGlmIChvcHRpb25zLmFjdGlvbiA9PT0gVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkVfRklFTEQpIHJldHVybiBmaWVsZFZhbHVlcy5kZWxldGUoKVxuICAgIGlmIChBcnJheS5pc0FycmF5KG9wdGlvbnMudmFsdWUpKSB7XG4gICAgICBpZiAob3B0aW9ucy5hY3Rpb24gPT09IFVwZGF0ZU9wdGlvbkFjdGlvbnMuTUVSR0UpIHJldHVybiBmaWVsZFZhbHVlcy5hcnJheVVuaW9uKC4uLm9wdGlvbnMudmFsdWUpXG4gICAgICBpZiAob3B0aW9ucy5hY3Rpb24gPT09IFVwZGF0ZU9wdGlvbkFjdGlvbnMuUkVNT1ZFKSByZXR1cm4gZmllbGRWYWx1ZXMuYXJyYXlSZW1vdmUoLi4ub3B0aW9ucy52YWx1ZSlcbiAgICB9XG5cbiAgICByZXR1cm4gb3B0aW9ucy52YWx1ZVxuICB9XG5cbiAgcmV0dXJuIGNsYXNzIFVwZGF0ZUZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIFVwZGF0ZVJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICBhc3luYyB1cGRhdGUoZGF0YTogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4pOiBQcm9taXNlPFRCYXNlPiB7XG4gICAgICBjb25zdCBtb2RlbCA9IG5ldyB0aGlzLm1vZGVsKClcbiAgICAgIGNvbnN0IGtleUZpZWxkID0gbW9kZWwuaWRlbnRpZmllcnNGaWVsZHMuc2hpZnQoKVxuICAgICAgY29uc3QgZG9jUmVmID0gdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvclVwZGF0ZShkYXRhKSkuZG9jKFxuICAgICAgICBnZXRWYWx1ZUZyb21QYXJhbXMoZGF0YSwga2V5RmllbGQpLnRvU3RyaW5nKCksXG4gICAgICApXG5cbiAgICAgIGF3YWl0IGRvY1JlZi5zZXQodGhpcy5wYXJhbXNUb1BsYWluKGRhdGEpLCB7IG1lcmdlOiB0cnVlIH0pXG5cbiAgICAgIGNvbnN0IGRvYyA9IGF3YWl0IGRvY1JlZi5nZXQoKVxuXG4gICAgICByZXR1cm4gZG9jLmRhdGEoKVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JVcGRhdGUoaWRlbnRpZmllcnM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtnZXRWYWx1ZUZyb21QYXJhbXMoaWRlbnRpZmllcnMsIHRoaXMucGFyZW50SWRGaWVsZCl9LyR7XG4gICAgICAgICAgICB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgICAgICAgfWBcbiAgICAgICAgOiB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogUGFydGlhbDxUQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7IC4uLmRhdGEsIFtjdXJyZW50S2V5XTogZ2V0VmFsdWVCeUFjdGlvbihwYXJhbXNbY3VycmVudEtleV0pIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
- import { BaseModel } from '../../../../domain/general';
1
+ import { BaseModel } from '../../../../domain/generic';
2
2
  export class UserSearch extends BaseModel {
3
- identifierFields() {
3
+ static get identifiersFields() {
4
4
  return ['id'];
5
5
  }
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZWFyY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbW9kZWxzL3VzZXItc2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQThDLE1BQU0sNEJBQTRCLENBQUE7QUFFbEcsTUFBTSxPQUFPLFVBQVcsU0FBUSxTQUFxQjtJQU9uRCxnQkFBZ0I7UUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDZixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlTW9kZWwsIElkZW50aWZpZXJGaWVsZHMsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbi9nZW5lcmFsJ1xuXG5leHBvcnQgY2xhc3MgVXNlclNlYXJjaCBleHRlbmRzIEJhc2VNb2RlbDxVc2VyU2VhcmNoPiBpbXBsZW1lbnRzIElkZW50aWZpZXJGaWVsZHM8VXNlclNlYXJjaD4ge1xuICBpZDogc3RyaW5nXG4gIGNwZj86IHN0cmluZ1xuICBlbWFpbD86IHN0cmluZ1xuICBjcmVhdGVkQXQ6IERhdGVcbiAgY29waWVkQXQ6IERhdGVcblxuICBpZGVudGlmaWVyRmllbGRzKCk6IE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxVc2VyU2VhcmNoPltdIHtcbiAgICByZXR1cm4gWydpZCddXG4gIH1cbn1cbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZWFyY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbW9kZWxzL3VzZXItc2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sNEJBQTRCLENBQUE7QUFFekUsTUFBTSxPQUFPLFVBQVcsU0FBUSxTQUFxQjtJQU9uRCxNQUFNLEtBQUssaUJBQWlCO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbCwgR2VuZXJpY0lkZW50aWZpZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4vZ2VuZXJpYydcblxuZXhwb3J0IGNsYXNzIFVzZXJTZWFyY2ggZXh0ZW5kcyBCYXNlTW9kZWw8VXNlclNlYXJjaD4ge1xuICBpZDogc3RyaW5nXG4gIGNwZj86IHN0cmluZ1xuICBlbWFpbD86IHN0cmluZ1xuICBjcmVhdGVkQXQ6IERhdGVcbiAgY29waWVkQXQ6IERhdGVcblxuICBzdGF0aWMgZ2V0IGlkZW50aWZpZXJzRmllbGRzKCk6IEdlbmVyaWNJZGVudGlmaWVyW10ge1xuICAgIHJldHVybiBbJ2lkJ11cbiAgfVxufVxuIl19
@@ -53,7 +53,9 @@ export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(w
53
53
  for (const productIds of chunks) {
54
54
  if ((options === null || options === void 0 ? void 0 : options.limit) && products.length >= (options === null || options === void 0 ? void 0 : options.limit))
55
55
  break;
56
- let query = yield this.collection('products').where(publishedField, '==', true).where('id', 'in', productIds);
56
+ let query = yield this.collection('productsErpVitrine')
57
+ .where(publishedField, '==', true)
58
+ .where('id', 'in', productIds);
57
59
  if (options === null || options === void 0 ? void 0 : options.hasStock)
58
60
  query = query.where('stock.quantity', '>', 0);
59
61
  if (options === null || options === void 0 ? void 0 : options.limit)
@@ -67,4 +69,4 @@ export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(w
67
69
  });
68
70
  }
69
71
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBK0IsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFcEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRXBHLE1BQU0sT0FBTywyQkFDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdyRSxZQUFxQixTQUE0QjtRQUMvQyxLQUFLLEVBQUUsQ0FBQTtRQURZLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBRS9DLElBQUksQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFBO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBVztRQUN6QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQzthQUN4QyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7YUFDekIsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO2FBQ3pCLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFB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RUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7Z0JBQ3BFLElBQUksT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUs7b0JBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssQ0FBQyxDQUFBO2dCQUV2RCxNQUFNLFdBQVcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQTtnQkFFckMsSUFBSSxXQUFXLENBQUMsS0FBSztvQkFBRSxTQUFRO2dCQUUvQixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUE7YUFDNUQ7WUFFRCxPQUFPLFFBQVEsQ0FBQTtRQUNqQixDQUFDO0tBQUE7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmViYXNlRmlyZXN0b3JlIH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgQmFzZSwgY2h1bmsgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IENhdGVnb3J5LCBDYXRlZ29yeVJlcG9zaXRvcnksIFByb2R1Y3QsIFNob3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5pbXBvcnQgeyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yLCBOb3RGb3VuZEVycm9yLCBSZXF1aXJlZEFyZ3VtZW50RXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9lcnJvcnMnXG5cbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPENhdGVnb3J5PihCYXNlKSkpXG4gIGltcGxlbWVudHMgQ2F0ZWdvcnlSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZWJhc2VGaXJlc3RvcmUpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5jb2xsZWN0aW9uTmFtZSA9ICdjYXRlZ29yaWVzJ1xuICAgIHRoaXMubW9kZWwgPSBDYXRlZ29yeVxuICB9XG5cbiAgZ2V0Q2F0ZWdvcnlCeVNsdWcoc2x1Zzogc3RyaW5nLCBzaG9wOiBTaG9wcyk6IFByb21pc2U8Q2F0ZWdvcnk+IHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpXG4gICAgICAud2hlcmUoJ3NsdWcnLCAnPT0nLCBzbHVnKVxuICAgICAgLndoZXJlKCdzaG9wJywgJz09Jywgc2hvcClcbiAgICAgIC53aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSlcbiAgICAgIC5nZXQoKVxuICAgICAgLnRoZW4oKHNuYXApID0+IHtcbiAgICAgICAgaWYgKHNuYXAuc2l6ZSA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXG5cbiAgICAgICAgaWYgKHNuYXAuZW1wdHkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBEb2N1bWVudCB3aXRoIHNsdWcgJHtzbHVnfSBub3QgZm91bmRgKVxuXG4gICAgICAgIHJldHVybiBzbmFwLmRvY3NbMF0uZGF0YSgpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4gZXJyb3IpXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yaWVzRm9ySG9tZShjYXRlZ29yeUlkczogc3RyaW5nW10sIGxpbWl0ID0gNCk6IFByb21pc2U8eyBjYXRlZ29yeTogQ2F0ZWdvcnk7IHByb2R1Y3RzOiBQcm9kdWN0W10gfVtdPiB7XG4gICAgY29uc3QgY2F0ZWdvcnlTbmFwID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpXG4gICAgICAud2hlcmUoJ2lkJywgJ2luJywgY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pKVxuICAgICAgLndoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKVxuICAgICAgLmdldCgpXG5cbiAgICBpZiAoY2F0ZWdvcnlTbmFwLmVtcHR5KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignQ2F0ZWdvcmllcyBub3QgZm91bmQnKVxuXG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IGNhdGVnb3J5U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuICAgIGNvbnN0IGhvbWVTZWN0aW9ucyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgY2F0ZWdvcmllcy5tYXAoYXN5bmMgKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICBjYXRlZ29yeSxcbiAgICAgICAgcHJvZHVjdHM6IGF3YWl0IHRoaXMubW91bnRDYXRlZ29yeShjYXRlZ29yeSwgeyBsaW1pdCwgaGFzU3RvY2s6IHRydWUgfSksXG4gICAgICB9KSksXG4gICAgKVxuXG4gICAgcmV0dXJuIGhvbWVTZWN0aW9uc1xuICB9XG5cbiAgYXN5bmMgbW91bnRDYXRlZ29yeShjYXRlZ29yeTogQ2F0ZWdvcnksIG9wdGlvbnM/OiB7IGxpbWl0PzogbnVtYmVyOyBoYXNTdG9jaz86IGJvb2xlYW4gfSk6IFByb21pc2U8UHJvZHVjdFtdPiB7XG4gICAgaWYgKCFjYXRlZ29yeS5wcm9kdWN0cykgdGhyb3cgbmV3IFJlcXVpcmVkQXJndW1lbnRFcnJvcihbJ0NhdGVnb3J5IHByb2R1Y3RzIGlzIGVtcHR5J10pXG5cbiAgICBjb25zdCBjaHVua3MgPSBjaHVuayhjYXRlZ29yeS5wcm9kdWN0cywgMTApXG4gICAgY29uc3QgcHJvZHVjdHMgPSBbXVxuICAgIGNvbnN0IHB1Ymxpc2hlZEZpZWxkID0gY2F0ZWdvcnkuc2hvcCA9PT0gU2hvcHMuR0xBTVNIT1AgPyAncHVibGlzaGVkR2xhbScgOiAncHVibGlzaGVkJ1xuXG4gICAgZm9yIChjb25zdCBwcm9kdWN0SWRzIG9mIGNodW5rcykge1xuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0ICYmIHByb2R1Y3RzLmxlbmd0aCA+PSBvcHRpb25zPy5saW1pdCkgYnJlYWtcblxuICAgICAgbGV0IHF1ZXJ5ID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKCdwcm9kdWN0cycpLndoZXJlKHB1Ymxpc2hlZEZpZWxkLCAnPT0nLCB0cnVlKS53aGVyZSgnaWQnLCAnaW4nLCBwcm9kdWN0SWRzKVxuXG4gICAgICBpZiAob3B0aW9ucz8uaGFzU3RvY2spIHF1ZXJ5ID0gcXVlcnkud2hlcmUoJ3N0b2NrLnF1YW50aXR5JywgJz4nLCAwKVxuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0KSBxdWVyeSA9IHF1ZXJ5LmxpbWl0KG9wdGlvbnM/LmxpbWl0KVxuXG4gICAgICBjb25zdCBwcm9kdWN0U25hcCA9IGF3YWl0IHF1ZXJ5LmdldCgpXG5cbiAgICAgIGlmIChwcm9kdWN0U25hcC5lbXB0eSkgY29udGludWVcblxuICAgICAgcHJvZHVjdHMucHVzaCguLi5wcm9kdWN0U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKSlcbiAgICB9XG5cbiAgICByZXR1cm4gcHJvZHVjdHNcbiAgfVxufVxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBK0IsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFcEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRXBHLE1BQU0sT0FBTywyQkFDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdyRSxZQUFxQixTQUE0QjtRQUMvQyxLQUFLLEVBQUUsQ0FBQTtRQURZLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBRS9DLElBQUksQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFBO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBVztRQUN6QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQzthQUN4QyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7YUFDekIsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO2FBQ3pCLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFB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QkFBZ0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7Z0JBQ3BFLElBQUksT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUs7b0JBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssQ0FBQyxDQUFBO2dCQUV2RCxNQUFNLFdBQVcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQTtnQkFFckMsSUFBSSxXQUFXLENBQUMsS0FBSztvQkFBRSxTQUFRO2dCQUUvQixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUE7YUFDNUQ7WUFFRCxPQUFPLFFBQVEsQ0FBQTtRQUNqQixDQUFDO0tBQUE7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmViYXNlRmlyZXN0b3JlIH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgQmFzZSwgY2h1bmsgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IENhdGVnb3J5LCBDYXRlZ29yeVJlcG9zaXRvcnksIFByb2R1Y3QsIFNob3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5pbXBvcnQgeyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yLCBOb3RGb3VuZEVycm9yLCBSZXF1aXJlZEFyZ3VtZW50RXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9lcnJvcnMnXG5cbmV4cG9ydCBjbGFzcyBDYXRlZ29yeUZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPENhdGVnb3J5PihCYXNlKSkpXG4gIGltcGxlbWVudHMgQ2F0ZWdvcnlSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZWJhc2VGaXJlc3RvcmUpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5jb2xsZWN0aW9uTmFtZSA9ICdjYXRlZ29yaWVzJ1xuICAgIHRoaXMubW9kZWwgPSBDYXRlZ29yeVxuICB9XG5cbiAgZ2V0Q2F0ZWdvcnlCeVNsdWcoc2x1Zzogc3RyaW5nLCBzaG9wOiBTaG9wcyk6IFByb21pc2U8Q2F0ZWdvcnk+IHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpXG4gICAgICAud2hlcmUoJ3NsdWcnLCAnPT0nLCBzbHVnKVxuICAgICAgLndoZXJlKCdzaG9wJywgJz09Jywgc2hvcClcbiAgICAgIC53aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSlcbiAgICAgIC5nZXQoKVxuICAgICAgLnRoZW4oKHNuYXApID0+IHtcbiAgICAgICAgaWYgKHNuYXAuc2l6ZSA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXG5cbiAgICAgICAgaWYgKHNuYXAuZW1wdHkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBEb2N1bWVudCB3aXRoIHNsdWcgJHtzbHVnfSBub3QgZm91bmRgKVxuXG4gICAgICAgIHJldHVybiBzbmFwLmRvY3NbMF0uZGF0YSgpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4gZXJyb3IpXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yaWVzRm9ySG9tZShjYXRlZ29yeUlkczogc3RyaW5nW10sIGxpbWl0ID0gNCk6IFByb21pc2U8eyBjYXRlZ29yeTogQ2F0ZWdvcnk7IHByb2R1Y3RzOiBQcm9kdWN0W10gfVtdPiB7XG4gICAgY29uc3QgY2F0ZWdvcnlTbmFwID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpXG4gICAgICAud2hlcmUoJ2lkJywgJ2luJywgY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pKVxuICAgICAgLndoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKVxuICAgICAgLmdldCgpXG5cbiAgICBpZiAoY2F0ZWdvcnlTbmFwLmVtcHR5KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignQ2F0ZWdvcmllcyBub3QgZm91bmQnKVxuXG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IGNhdGVnb3J5U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuICAgIGNvbnN0IGhvbWVTZWN0aW9ucyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgY2F0ZWdvcmllcy5tYXAoYXN5bmMgKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICBjYXRlZ29yeSxcbiAgICAgICAgcHJvZHVjdHM6IGF3YWl0IHRoaXMubW91bnRDYXRlZ29yeShjYXRlZ29yeSwgeyBsaW1pdCwgaGFzU3RvY2s6IHRydWUgfSksXG4gICAgICB9KSksXG4gICAgKVxuXG4gICAgcmV0dXJuIGhvbWVTZWN0aW9uc1xuICB9XG5cbiAgYXN5bmMgbW91bnRDYXRlZ29yeShjYXRlZ29yeTogQ2F0ZWdvcnksIG9wdGlvbnM/OiB7IGxpbWl0PzogbnVtYmVyOyBoYXNTdG9jaz86IGJvb2xlYW4gfSk6IFByb21pc2U8UHJvZHVjdFtdPiB7XG4gICAgaWYgKCFjYXRlZ29yeS5wcm9kdWN0cykgdGhyb3cgbmV3IFJlcXVpcmVkQXJndW1lbnRFcnJvcihbJ0NhdGVnb3J5IHByb2R1Y3RzIGlzIGVtcHR5J10pXG5cbiAgICBjb25zdCBjaHVua3MgPSBjaHVuayhjYXRlZ29yeS5wcm9kdWN0cywgMTApXG4gICAgY29uc3QgcHJvZHVjdHMgPSBbXVxuICAgIGNvbnN0IHB1Ymxpc2hlZEZpZWxkID0gY2F0ZWdvcnkuc2hvcCA9PT0gU2hvcHMuR0xBTVNIT1AgPyAncHVibGlzaGVkR2xhbScgOiAncHVibGlzaGVkJ1xuXG4gICAgZm9yIChjb25zdCBwcm9kdWN0SWRzIG9mIGNodW5rcykge1xuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0ICYmIHByb2R1Y3RzLmxlbmd0aCA+PSBvcHRpb25zPy5saW1pdCkgYnJlYWtcblxuICAgICAgbGV0IHF1ZXJ5ID0gYXdhaXQgdGhpcy5jb2xsZWN0aW9uKCdwcm9kdWN0c0VycFZpdHJpbmUnKVxuICAgICAgICAud2hlcmUocHVibGlzaGVkRmllbGQsICc9PScsIHRydWUpXG4gICAgICAgIC53aGVyZSgnaWQnLCAnaW4nLCBwcm9kdWN0SWRzKVxuXG4gICAgICBpZiAob3B0aW9ucz8uaGFzU3RvY2spIHF1ZXJ5ID0gcXVlcnkud2hlcmUoJ3N0b2NrLnF1YW50aXR5JywgJz4nLCAwKVxuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0KSBxdWVyeSA9IHF1ZXJ5LmxpbWl0KG9wdGlvbnM/LmxpbWl0KVxuXG4gICAgICBjb25zdCBwcm9kdWN0U25hcCA9IGF3YWl0IHF1ZXJ5LmdldCgpXG5cbiAgICAgIGlmIChwcm9kdWN0U25hcC5lbXB0eSkgY29udGludWVcblxuICAgICAgcHJvZHVjdHMucHVzaCguLi5wcm9kdWN0U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKSlcbiAgICB9XG5cbiAgICByZXR1cm4gcHJvZHVjdHNcbiAgfVxufVxuIl19
@@ -1,23 +1,52 @@
1
1
  import { __awaiter } from "tslib";
2
- import { Base } from '../../../../../utils';
3
2
  import { Product, Where } from '../../../../../domain';
3
+ import { Base } from '../../../../../utils';
4
4
  import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
5
5
  export class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
6
6
  constructor(firestore) {
7
7
  super();
8
8
  this.firestore = firestore;
9
- this.collectionName = 'products';
9
+ this.reviews = {};
10
+ this.collectionName = 'productsErpVitrine';
10
11
  this.model = Product;
11
12
  }
12
- getBySlug(slug, shop) {
13
+ getBySlug(slug) {
13
14
  var _a;
14
15
  return __awaiter(this, void 0, void 0, function* () {
15
- const result = yield this.find([
16
- { slug: { operator: Where.EQUALS, value: slug } },
17
- { shopAvailability: { operator: Where.IN, value: [shop] } },
18
- ]);
16
+ const result = yield this.find({
17
+ filters: {
18
+ slug: { operator: Where.EQUALS, value: slug },
19
+ },
20
+ });
19
21
  return (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.shift();
20
22
  });
21
23
  }
24
+ fetchReviews(status) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ const { data: products } = yield this.find();
27
+ products.forEach((product) => {
28
+ var _a;
29
+ if ([undefined, 0].includes((_a = product.reviews) === null || _a === void 0 ? void 0 : _a.length))
30
+ return;
31
+ const productInfo = {
32
+ productId: product.id,
33
+ productName: product.name,
34
+ productSku: product.sku,
35
+ };
36
+ this.reviews.pending = [];
37
+ this.reviews.approved = [];
38
+ this.reviews.rejected = [];
39
+ product.reviews.forEach((review) => {
40
+ if ([null, undefined].includes(review.status))
41
+ return this.reviews.pending.push(Object.assign(Object.assign({}, review), productInfo));
42
+ if (review.status === false)
43
+ return this.reviews.rejected.push(Object.assign(Object.assign({}, review), productInfo));
44
+ if (!!review.status)
45
+ return this.reviews.approved.push(Object.assign(Object.assign({}, review), productInfo));
46
+ });
47
+ });
48
+ return this.reviews[status];
49
+ });
50
+ }
22
51
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBNEIsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFNUUsTUFBTSxPQUFPLDBCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3BFLFlBQXFCLFNBQTRCO1FBQy9DLEtBQUssRUFBRSxDQUFBO1FBRFksY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFFL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUE7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUE7SUFDdEIsQ0FBQztJQUVLLFNBQVMsQ0FBQyxJQUFZLEVBQUUsSUFBVzs7O1lBQ3ZDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDN0IsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ2pELEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO2FBQzVELENBQUMsQ0FBQTtZQUVGLE9BQU8sTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsSUFBSSwwQ0FBRSxLQUFLLEVBQUUsQ0FBQTs7S0FDN0I7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmViYXNlRmlyZXN0b3JlIH0gZnJvbSAnQGZpcmViYXNlL2ZpcmVzdG9yZS10eXBlcydcblxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgUHJvZHVjdCwgUHJvZHVjdFJlcG9zaXRvcnksIFNob3BzLCBXaGVyZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcblxuaW1wb3J0IHsgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPFByb2R1Y3Q+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBQcm9kdWN0UmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBmaXJlc3RvcmU6IEZpcmViYXNlRmlyZXN0b3JlKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuY29sbGVjdGlvbk5hbWUgPSAncHJvZHVjdHMnXG4gICAgdGhpcy5tb2RlbCA9IFByb2R1Y3RcbiAgfVxuXG4gIGFzeW5jIGdldEJ5U2x1ZyhzbHVnOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxQcm9kdWN0PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5maW5kKFtcbiAgICAgIHsgc2x1ZzogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogc2x1ZyB9IH0sXG4gICAgICB7IHNob3BBdmFpbGFiaWxpdHk6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogW3Nob3BdIH0gfSxcbiAgICBdKVxuXG4gICAgcmV0dXJuIHJlc3VsdD8uZGF0YT8uc2hpZnQoKVxuICB9XG59XG4iXX0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsT0FBTyxFQUFnRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwSCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFNUUsTUFBTSxPQUFPLDBCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBS3BFLFlBQXFCLFNBQTRCO1FBQy9DLEtBQUssRUFBRSxDQUFBO1FBRFksY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFGekMsWUFBTyxHQUFpRSxFQUFFLENBQUE7UUFJaEYsSUFBSSxDQUFDLGNBQWMsR0FBRyxvQkFBb0IsQ0FBQTtRQUMxQyxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQTtJQUN0QixDQUFDO0lBRUssU0FBUyxDQUFDLElBQVk7OztZQUMxQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQzdCLE9BQU8sRUFBRTtvQkFDUCxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2lCQUM5QzthQUNGLENBQUMsQ0FBQTtZQUVGLE9BQU8sTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsSUFBSSwwQ0FBRSxLQUFLLEVBQUUsQ0FBQTs7S0FDN0I7SUFFSyxZQUFZLENBQUMsTUFBMEI7O1lBQzNDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7WUFFNUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFOztnQkFDM0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBQSxPQUFPLENBQUMsT0FBTywwQ0FBRSxNQUFNLENBQUM7b0JBQUUsT0FBTTtnQkFFNUQsTUFBTSxXQUFXLEdBQUc7b0JBQ2xCLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRTtvQkFDckIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO29CQUN6QixVQUFVLEVBQUUsT0FBTyxDQUFDLEdBQUc7aUJBQ3hCLENBQUE7Z0JBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFBO2dCQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7Z0JBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQTtnQkFFMUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtvQkFDakMsSUFBSSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQzt3QkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksaUNBQU0sTUFBTSxHQUFLLFdBQVcsRUFBRyxDQUFBO29CQUM5RyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssS0FBSzt3QkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksaUNBQU0sTUFBTSxHQUFLLFdBQVcsRUFBRyxDQUFBO29CQUM3RixJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTt3QkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksaUNBQU0sTUFBTSxHQUFLLFdBQVcsRUFBRyxDQUFBO2dCQUN2RixDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUMsQ0FBQyxDQUFBO1lBRUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzdCLENBQUM7S0FBQTtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlyZWJhc2VGaXJlc3RvcmUgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQgeyBQcm9kdWN0LCBQcm9kdWN0UmVwb3NpdG9yeSwgUmV2aWV3U3RhdHVzUGFyYW1zLCBSZXZpZXdXaXRoUHJvZHVjdERhdGEsIFdoZXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8UHJvZHVjdD4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIFByb2R1Y3RSZXBvc2l0b3J5XG57XG4gIHByaXZhdGUgcmV2aWV3czogUGFydGlhbDxSZWNvcmQ8UmV2aWV3U3RhdHVzUGFyYW1zLCBSZXZpZXdXaXRoUHJvZHVjdERhdGFbXT4+ID0ge31cblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBmaXJlc3RvcmU6IEZpcmViYXNlRmlyZXN0b3JlKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuY29sbGVjdGlvbk5hbWUgPSAncHJvZHVjdHNFcnBWaXRyaW5lJ1xuICAgIHRoaXMubW9kZWwgPSBQcm9kdWN0XG4gIH1cblxuICBhc3luYyBnZXRCeVNsdWcoc2x1Zzogc3RyaW5nKTogUHJvbWlzZTxQcm9kdWN0PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgc2x1ZzogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogc2x1ZyB9LFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHJlc3VsdD8uZGF0YT8uc2hpZnQoKVxuICB9XG5cbiAgYXN5bmMgZmV0Y2hSZXZpZXdzKHN0YXR1czogUmV2aWV3U3RhdHVzUGFyYW1zKTogUHJvbWlzZTxSZXZpZXdXaXRoUHJvZHVjdERhdGFbXT4ge1xuICAgIGNvbnN0IHsgZGF0YTogcHJvZHVjdHMgfSA9IGF3YWl0IHRoaXMuZmluZCgpXG5cbiAgICBwcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XG4gICAgICBpZiAoW3VuZGVmaW5lZCwgMF0uaW5jbHVkZXMocHJvZHVjdC5yZXZpZXdzPy5sZW5ndGgpKSByZXR1cm5cblxuICAgICAgY29uc3QgcHJvZHVjdEluZm8gPSB7XG4gICAgICAgIHByb2R1Y3RJZDogcHJvZHVjdC5pZCxcbiAgICAgICAgcHJvZHVjdE5hbWU6IHByb2R1Y3QubmFtZSxcbiAgICAgICAgcHJvZHVjdFNrdTogcHJvZHVjdC5za3UsXG4gICAgICB9XG5cbiAgICAgIHRoaXMucmV2aWV3cy5wZW5kaW5nID0gW11cbiAgICAgIHRoaXMucmV2aWV3cy5hcHByb3ZlZCA9IFtdXG4gICAgICB0aGlzLnJldmlld3MucmVqZWN0ZWQgPSBbXVxuXG4gICAgICBwcm9kdWN0LnJldmlld3MuZm9yRWFjaCgocmV2aWV3KSA9PiB7XG4gICAgICAgIGlmIChbbnVsbCwgdW5kZWZpbmVkXS5pbmNsdWRlcyhyZXZpZXcuc3RhdHVzKSkgcmV0dXJuIHRoaXMucmV2aWV3cy5wZW5kaW5nLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG4gICAgICAgIGlmIChyZXZpZXcuc3RhdHVzID09PSBmYWxzZSkgcmV0dXJuIHRoaXMucmV2aWV3cy5yZWplY3RlZC5wdXNoKHsgLi4ucmV2aWV3LCAuLi5wcm9kdWN0SW5mbyB9KVxuICAgICAgICBpZiAoISFyZXZpZXcuc3RhdHVzKSByZXR1cm4gdGhpcy5yZXZpZXdzLmFwcHJvdmVkLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpcy5yZXZpZXdzW3N0YXR1c11cbiAgfVxufVxuIl19
@@ -1,6 +1,5 @@
1
- import firebase from 'firebase';
2
- import { Base } from '../../../../../utils';
3
- import { CheckoutTypes, ClubCoupon, Coupon, StoreCoupon } from '../../../../../domain';
1
+ import { Base, isNil } from '../../../../../utils';
2
+ import { Coupon } from '../../../../../domain';
4
3
  import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
5
4
  export class CouponFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
6
5
  constructor(firestore) {
@@ -10,30 +9,21 @@ export class CouponFirestoreRepository extends withCrudFirestore(withHelpers(wit
10
9
  this.model = Coupon;
11
10
  }
12
11
  buildModelInstance() {
12
+ const { fromFirestore, toFirestore } = super.buildModelInstance();
13
13
  return {
14
14
  toFirestore: (data) => {
15
- var _a;
16
- const plain = (data === null || data === void 0 ? void 0 : data.toPlain) ? data.toPlain() : data;
17
- if (!!plain.categories)
18
- plain.categories = (_a = plain === null || plain === void 0 ? void 0 : plain.categories) === null || _a === void 0 ? void 0 : _a.map((category) => category.id);
15
+ const plain = toFirestore(data);
16
+ if (!!data.expiresIn)
17
+ plain.expiresIn = data.expiresIn.getTime();
19
18
  return plain;
20
19
  },
21
20
  fromFirestore: (snap) => {
22
- var _a;
23
- const data = snap.data();
24
- Object.keys(data).forEach((key) => {
25
- if (data[key] instanceof firebase.firestore.Timestamp) {
26
- data[key] = data[key].toDate();
27
- }
28
- });
29
- data.categories = (_a = data === null || data === void 0 ? void 0 : data.categories) === null || _a === void 0 ? void 0 : _a.map((category) => ({ id: category }));
30
- if (data.checkout_type === CheckoutTypes.SUBSCRIPTION)
31
- return ClubCoupon.toInstance(Object.assign({ id: snap.id }, data));
32
- if (data.checkout_type === CheckoutTypes.ECOMMERCE)
33
- return StoreCoupon.toInstance(Object.assign({ id: snap.id }, data));
34
- return this.model.toInstance(Object.assign({ id: snap.id }, data));
21
+ const instance = fromFirestore(snap);
22
+ if (!isNil(instance.expiresIn))
23
+ instance.expiresIn = new Date(snap.data().expiresIn);
24
+ return instance;
35
25
  },
36
26
  };
37
27
  }
38
28
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cG9uLWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9zaG9wcGluZy9jb3Vwb24tZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxRQUFRLE1BQU0sVUFBVSxDQUFBO0FBRS9CLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQW9CLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRXhHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTVFLE1BQU0sT0FBTyx5QkFDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUduRSxZQUFxQixTQUE0QjtRQUMvQyxLQUFLLEVBQUUsQ0FBQTtRQURZLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBRS9DLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFBO1FBQy9CLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0I7UUFJaEIsT0FBTztZQUNMLFdBQVcsRUFBRSxDQUFDLElBQVksRUFBZ0IsRUFBRTs7Z0JBQzFDLE1BQU0sS0FBSyxHQUFHLENBQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE9BQU8sRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7Z0JBRW5ELElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVO29CQUFFLEtBQUssQ0FBQyxVQUFVLEdBQUcsTUFBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsVUFBVSwwQ0FBRSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQTtnQkFFNUYsT0FBTyxLQUFLLENBQUE7WUFDZCxDQUFDO1lBQ0QsYUFBYSxFQUFFLENBQUMsSUFBMkIsRUFBVSxFQUFFOztnQkFDckQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO2dCQUV4QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUNoQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRTt3QkFDckQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtxQkFDL0I7Z0JBQ0gsQ0FBQyxDQUFDLENBQUE7Z0JBRUYsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxVQUFVLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUE7Z0JBRXpFLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxhQUFhLENBQUMsWUFBWTtvQkFBRSxPQUFPLFVBQVUsQ0FBQyxVQUFVLGlCQUFHLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxJQUFLLElBQUksRUFBRyxDQUFBO2dCQUM3RyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssYUFBYSxDQUFDLFNBQVM7b0JBQUUsT0FBTyxXQUFXLENBQUMsVUFBVSxpQkFBRyxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSyxJQUFJLEVBQUcsQ0FBQTtnQkFFM0csT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsaUJBQUcsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLElBQUssSUFBSSxFQUFHLENBQUE7WUFDeEQsQ0FBQztTQUNGLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb2N1bWVudERhdGEsIEZpcmViYXNlRmlyZXN0b3JlLCBRdWVyeURvY3VtZW50U25hcHNob3QgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuaW1wb3J0IGZpcmViYXNlIGZyb20gJ2ZpcmViYXNlJ1xuXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBDaGVja291dFR5cGVzLCBDbHViQ291cG9uLCBDb3Vwb24sIENvdXBvblJlcG9zaXRvcnksIFN0b3JlQ291cG9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBDb3Vwb25GaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxDb3Vwb24+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBDb3Vwb25SZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZWJhc2VGaXJlc3RvcmUpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5jb2xsZWN0aW9uTmFtZSA9ICdjb3Vwb25zJ1xuICAgIHRoaXMubW9kZWwgPSBDb3Vwb25cbiAgfVxuXG4gIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgdG9GaXJlc3RvcmU6IChkYXRhOiBDb3Vwb24pID0+IERvY3VtZW50RGF0YVxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8Q291cG9uPikgPT4gQ291cG9uXG4gIH0ge1xuICAgIHJldHVybiB7XG4gICAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IENvdXBvbik6IERvY3VtZW50RGF0YSA9PiB7XG4gICAgICAgIGNvbnN0IHBsYWluID0gZGF0YT8udG9QbGFpbiA/IGRhdGEudG9QbGFpbigpIDogZGF0YVxuXG4gICAgICAgIGlmICghIXBsYWluLmNhdGVnb3JpZXMpIHBsYWluLmNhdGVnb3JpZXMgPSBwbGFpbj8uY2F0ZWdvcmllcz8ubWFwKChjYXRlZ29yeSkgPT4gY2F0ZWdvcnkuaWQpXG5cbiAgICAgICAgcmV0dXJuIHBsYWluXG4gICAgICB9LFxuICAgICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCk6IENvdXBvbiA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBzbmFwLmRhdGEoKVxuXG4gICAgICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhW2tleV0gaW5zdGFuY2VvZiBmaXJlYmFzZS5maXJlc3RvcmUuVGltZXN0YW1wKSB7XG4gICAgICAgICAgICBkYXRhW2tleV0gPSBkYXRhW2tleV0udG9EYXRlKClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgZGF0YS5jYXRlZ29yaWVzID0gZGF0YT8uY2F0ZWdvcmllcz8ubWFwKChjYXRlZ29yeSkgPT4gKHsgaWQ6IGNhdGVnb3J5IH0pKVxuXG4gICAgICAgIGlmIChkYXRhLmNoZWNrb3V0X3R5cGUgPT09IENoZWNrb3V0VHlwZXMuU1VCU0NSSVBUSU9OKSByZXR1cm4gQ2x1YkNvdXBvbi50b0luc3RhbmNlKHsgaWQ6IHNuYXAuaWQsIC4uLmRhdGEgfSlcbiAgICAgICAgaWYgKGRhdGEuY2hlY2tvdXRfdHlwZSA9PT0gQ2hlY2tvdXRUeXBlcy5FQ09NTUVSQ0UpIHJldHVybiBTdG9yZUNvdXBvbi50b0luc3RhbmNlKHsgaWQ6IHNuYXAuaWQsIC4uLmRhdGEgfSlcblxuICAgICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHsgaWQ6IHNuYXAuaWQsIC4uLmRhdGEgfSlcbiAgICAgIH0sXG4gICAgfVxuICB9XG59XG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cG9uLWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9zaG9wcGluZy9jb3Vwb24tZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFvQixNQUFNLHVCQUF1QixDQUFBO0FBRWhFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTVFLE1BQU0sT0FBTyx5QkFDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUduRSxZQUFxQixTQUE0QjtRQUMvQyxLQUFLLEVBQUUsQ0FBQTtRQURZLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBRS9DLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFBO1FBQy9CLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0I7UUFJaEIsTUFBTSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUVqRSxPQUFPO1lBQ0wsV0FBVyxFQUFFLENBQUMsSUFBWSxFQUFnQixFQUFFO2dCQUMxQyxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRS9CLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTO29CQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtnQkFFaEUsT0FBTyxLQUFLLENBQUE7WUFDZCxDQUFDO1lBQ0QsYUFBYSxFQUFFLENBQUMsSUFBbUMsRUFBVSxFQUFFO2dCQUM3RCxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRXBDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztvQkFBRSxRQUFRLENBQUMsU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFFcEYsT0FBTyxRQUFRLENBQUE7WUFDakIsQ0FBQztTQUNGLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb2N1bWVudERhdGEsIEZpcmViYXNlRmlyZXN0b3JlLCBRdWVyeURvY3VtZW50U25hcHNob3QgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQgeyBCYXNlLCBpc05pbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgQ291cG9uLCBDb3Vwb25SZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBDb3Vwb25GaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxDb3Vwb24+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBDb3Vwb25SZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZWJhc2VGaXJlc3RvcmUpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5jb2xsZWN0aW9uTmFtZSA9ICdjb3Vwb25zJ1xuICAgIHRoaXMubW9kZWwgPSBDb3Vwb25cbiAgfVxuXG4gIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgdG9GaXJlc3RvcmU6IChkYXRhOiBDb3Vwb24pID0+IERvY3VtZW50RGF0YVxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8Q291cG9uPikgPT4gQ291cG9uXG4gIH0ge1xuICAgIGNvbnN0IHsgZnJvbUZpcmVzdG9yZSwgdG9GaXJlc3RvcmUgfSA9IHN1cGVyLmJ1aWxkTW9kZWxJbnN0YW5jZSgpXG5cbiAgICByZXR1cm4ge1xuICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBDb3Vwb24pOiBEb2N1bWVudERhdGEgPT4ge1xuICAgICAgICBjb25zdCBwbGFpbiA9IHRvRmlyZXN0b3JlKGRhdGEpXG5cbiAgICAgICAgaWYgKCEhZGF0YS5leHBpcmVzSW4pIHBsYWluLmV4cGlyZXNJbiA9IGRhdGEuZXhwaXJlc0luLmdldFRpbWUoKVxuXG4gICAgICAgIHJldHVybiBwbGFpblxuICAgICAgfSxcbiAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8Q291cG9uPik6IENvdXBvbiA9PiB7XG4gICAgICAgIGNvbnN0IGluc3RhbmNlID0gZnJvbUZpcmVzdG9yZShzbmFwKVxuXG4gICAgICAgIGlmICghaXNOaWwoaW5zdGFuY2UuZXhwaXJlc0luKSkgaW5zdGFuY2UuZXhwaXJlc0luID0gbmV3IERhdGUoc25hcC5kYXRhKCkuZXhwaXJlc0luKVxuXG4gICAgICAgIHJldHVybiBpbnN0YW5jZVxuICAgICAgfSxcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -24,7 +24,7 @@ export class UserFirestoreRepository extends withCrudFirestore(withHelpers(withF
24
24
  }
25
25
  checkIfExistsByField(field, value) {
26
26
  return __awaiter(this, void 0, void 0, function* () {
27
- const result = yield this.userSearchFirestoreRepository.find([{ [field]: { operator: Where.EQUALS, value } }]);
27
+ const result = yield this.userSearchFirestoreRepository.find({ [field]: { operator: Where.EQUALS, value } });
28
28
  return result.count > 0;
29
29
  });
30
30
  }
@@ -67,4 +67,4 @@ export class UserFirestoreRepository extends withCrudFirestore(withHelpers(withF
67
67
  };
68
68
  }
69
69
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvdXNlcnMvdXNlci1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFrQixLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUVsRixNQUFNLE9BQU8sdUJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7SUFHakUsWUFDVyxTQUE0QixFQUNwQixnQ0FBZ0MsSUFBSSw2QkFBNkIsQ0FBQyxTQUFTLENBQUM7UUFFN0YsS0FBSyxFQUFFLENBQUE7UUFIRSxjQUFTLEdBQVQsU0FBUyxDQUFtQjtRQUNwQixrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStDO1FBRzdGLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFBO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO0lBQ25CLENBQUM7SUFFSyxHQUFHLENBQUMsV0FBMEI7Ozs7O1lBQ2xDLE1BQU0sSUFBSSxHQUFHLE1BQU0sT0FBTSxHQUFHLFlBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFFcEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDekQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7WUFFM0QsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO0tBQUE7SUFFSyxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsS0FBYTs7WUFDckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFFOUcsT0FBTyxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQTtRQUN6QixDQUFDO0tBQUE7SUFFRCxrQkFBa0I7UUFJaEIsTUFBTSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUVqRSxPQUFPO1lBQ0wsV0FBVyxFQUFFLENBQUMsSUFBVSxFQUFnQixFQUFFO2dCQUN4QyxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBRS9CLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQTtnQkFFekIsT0FBTyxLQUFLLENBQUE7WUFDZCxDQUFDO1lBQ0QsYUFBYTtTQUNkLENBQUE7SUFDSCxDQUFDO0lBRWEsZ0JBQWdCLENBQUMsTUFBYzs7WUFDM0MsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFO2lCQUMxQyxHQUFHLENBQUMsTUFBTSxDQUFDO2lCQUNYLFVBQVUsQ0FBQyxJQUFJLENBQUM7aUJBQ2hCLGFBQWEsQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztpQkFDckQsR0FBRyxDQUFDLGVBQWUsQ0FBQztpQkFDcEIsR0FBRyxFQUFFLENBQUE7WUFFUixPQUFPLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUM3QixDQUFDO0tBQUE7SUFFYSxtQkFBbUIsQ0FBQyxNQUFjOztZQUM5QyxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTO2lCQUM5QixVQUFVLENBQUMsY0FBYyxDQUFDO2lCQUMxQixLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUM7aUJBQzlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQztpQkFDL0IsR0FBRyxFQUFFLENBQUE7WUFFUixPQUFPLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDOUIsQ0FBQztLQUFBO0lBRU8sK0JBQStCO1FBSXJDLE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxJQUFtQixFQUFnQixFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsRSxhQUFhLEVBQUUsQ0FBQyxJQUEwQyxFQUFpQixFQUFFLENBQzNFLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3hDLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb2N1bWVudERhdGEsIEZpcmViYXNlRmlyZXN0b3JlLCBRdWVyeURvY3VtZW50U25hcHNob3QgfSBmcm9tICdAZmlyZWJhc2UvZmlyZXN0b3JlLXR5cGVzJ1xuXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBCZWF1dHlQcm9maWxlLCBVc2VyLCBVc2VyUmVwb3NpdG9yeSwgV2hlcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmltcG9ydCB7IFVzZXJTZWFyY2hGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi91c2VyLXNlYXJjaC1maXJlc3RvcmUucmVwb3NpdG9yeSdcblxuZXhwb3J0IGNsYXNzIFVzZXJGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxVc2VyPihCYXNlKSkpXG4gIGltcGxlbWVudHMgVXNlclJlcG9zaXRvcnlcbntcbiAgY29uc3RydWN0b3IoXG4gICAgcmVhZG9ubHkgZmlyZXN0b3JlOiBGaXJlYmFzZUZpcmVzdG9yZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJTZWFyY2hGaXJlc3RvcmVSZXBvc2l0b3J5ID0gbmV3IFVzZXJTZWFyY2hGaXJlc3RvcmVSZXBvc2l0b3J5KGZpcmVzdG9yZSksXG4gICkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLmNvbGxlY3Rpb25OYW1lID0gJ3VzZXJzJ1xuICAgIHRoaXMubW9kZWwgPSBVc2VyXG4gIH1cblxuICBhc3luYyBnZXQoaWRlbnRpZmllcnM6IFBhcnRpYWw8VXNlcj4pOiBQcm9taXNlPFVzZXI+IHtcbiAgICBjb25zdCB1c2VyID0gYXdhaXQgc3VwZXIuZ2V0KHsgaWQ6IGlkZW50aWZpZXJzLmlkIH0pXG5cbiAgICB1c2VyLmJlYXV0eVByb2ZpbGUgPSBhd2FpdCB0aGlzLmdldEJlYXV0eVByb2ZpbGUodXNlci5pZClcbiAgICB1c2VyLmlzU3Vic2NyaWJlciA9IGF3YWl0IHRoaXMuY2hlY2tJZklzU3Vic2NyaWJlcih1c2VyLmlkKVxuXG4gICAgcmV0dXJuIHVzZXJcbiAgfVxuXG4gIGFzeW5jIGNoZWNrSWZFeGlzdHNCeUZpZWxkKGZpZWxkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnVzZXJTZWFyY2hGaXJlc3RvcmVSZXBvc2l0b3J5LmZpbmQoW3sgW2ZpZWxkXTogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZSB9IH1dKVxuXG4gICAgcmV0dXJuIHJlc3VsdC5jb3VudCA+IDBcbiAgfVxuXG4gIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgdG9GaXJlc3RvcmU6IChkYXRhOiBVc2VyKSA9PiBEb2N1bWVudERhdGFcbiAgICBmcm9tRmlyZXN0b3JlOiAoc25hcDogUXVlcnlEb2N1bWVudFNuYXBzaG90PFVzZXI+KSA9PiBVc2VyXG4gIH0ge1xuICAgIGNvbnN0IHsgZnJvbUZpcmVzdG9yZSwgdG9GaXJlc3RvcmUgfSA9IHN1cGVyLmJ1aWxkTW9kZWxJbnN0YW5jZSgpXG5cbiAgICByZXR1cm4ge1xuICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBVc2VyKTogRG9jdW1lbnREYXRhID0+IHtcbiAgICAgICAgY29uc3QgcGxhaW4gPSB0b0ZpcmVzdG9yZShkYXRhKVxuXG4gICAgICAgIGRlbGV0ZSBwbGFpbi5pc1N1YnNjcmliZXJcblxuICAgICAgICByZXR1cm4gcGxhaW5cbiAgICAgIH0sXG4gICAgICBmcm9tRmlyZXN0b3JlLFxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0QmVhdXR5UHJvZmlsZSh1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8QmVhdXR5UHJvZmlsZT4ge1xuICAgIGNvbnN0IGJlYXV0eVByb2ZpbGUgPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oKVxuICAgICAgLmRvYyh1c2VySWQpXG4gICAgICAuY29sbGVjdGlvbignQ1gnKVxuICAgICAgLndpdGhDb252ZXJ0ZXIodGhpcy5idWlsZEJlYXV0eVByb2ZpbGVNb2RlbEluc3RhbmNlKCkpXG4gICAgICAuZG9jKCdiZWF1dHlQcm9maWxlJylcbiAgICAgIC5nZXQoKVxuXG4gICAgcmV0dXJuIGJlYXV0eVByb2ZpbGUuZGF0YSgpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoZWNrSWZJc1N1YnNjcmliZXIodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkb2NzID0gYXdhaXQgdGhpcy5maXJlc3RvcmVcbiAgICAgIC5jb2xsZWN0aW9uKCdzdWJzY3JpcHRpb24nKVxuICAgICAgLndoZXJlKCd1c2VyLmlkJywgJz09JywgdXNlcklkKVxuICAgICAgLndoZXJlKCdzdGF0dXMnLCAnPT0nLCAnYWN0aXZlJylcbiAgICAgIC5nZXQoKVxuXG4gICAgcmV0dXJuICEhZG9jcyAmJiAhIWRvY3Muc2l6ZVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEJlYXV0eVByb2ZpbGVNb2RlbEluc3RhbmNlKCk6IHtcbiAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IEJlYXV0eVByb2ZpbGUpID0+IERvY3VtZW50RGF0YVxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8QmVhdXR5UHJvZmlsZT4pID0+IEJlYXV0eVByb2ZpbGVcbiAgfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogQmVhdXR5UHJvZmlsZSk6IERvY3VtZW50RGF0YSA9PiBkYXRhLnRvUGxhaW4oKSxcbiAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8QmVhdXR5UHJvZmlsZT4pOiBCZWF1dHlQcm9maWxlID0+XG4gICAgICAgIEJlYXV0eVByb2ZpbGUudG9JbnN0YW5jZShzbmFwLmRhdGEoKSksXG4gICAgfVxuICB9XG59XG4iXX0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvdXNlcnMvdXNlci1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFrQixLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUVsRixNQUFNLE9BQU8sdUJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7SUFHakUsWUFDVyxTQUE0QixFQUNwQixnQ0FBZ0MsSUFBSSw2QkFBNkIsQ0FBQyxTQUFTLENBQUM7UUFFN0YsS0FBSyxFQUFFLENBQUE7UUFIRSxjQUFTLEdBQVQsU0FBUyxDQUFtQjtRQUNwQixrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStDO1FBRzdGLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFBO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO0lBQ25CLENBQUM7SUFFSyxHQUFHLENBQUMsV0FBMEI7Ozs7O1lBQ2xDLE1BQU0sSUFBSSxHQUFHLE1BQU0sT0FBTSxHQUFHLFlBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFFcEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDekQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7WUFFM0QsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO0tBQUE7SUFFSyxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsS0FBYTs7WUFDckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtZQUU1RyxPQUFPLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ3pCLENBQUM7S0FBQTtJQUVELGtCQUFrQjtRQUloQixNQUFNLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBRWpFLE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxJQUFVLEVBQWdCLEVBQUU7Z0JBQ3hDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQkFFL0IsT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFBO2dCQUV6QixPQUFPLEtBQUssQ0FBQTtZQUNkLENBQUM7WUFDRCxhQUFhO1NBQ2QsQ0FBQTtJQUNILENBQUM7SUFFYSxnQkFBZ0IsQ0FBQyxNQUFjOztZQUMzQyxNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUU7aUJBQzFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7aUJBQ1gsVUFBVSxDQUFDLElBQUksQ0FBQztpQkFDaEIsYUFBYSxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDO2lCQUNyRCxHQUFHLENBQUMsZUFBZSxDQUFDO2lCQUNwQixHQUFHLEVBQUUsQ0FBQTtZQUVSLE9BQU8sYUFBYSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzdCLENBQUM7S0FBQTtJQUVhLG1CQUFtQixDQUFDLE1BQWM7O1lBQzlDLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVM7aUJBQzlCLFVBQVUsQ0FBQyxjQUFjLENBQUM7aUJBQzFCLEtBQUssQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQztpQkFDOUIsS0FBSyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDO2lCQUMvQixHQUFHLEVBQUUsQ0FBQTtZQUVSLE9BQU8sQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUM5QixDQUFDO0tBQUE7SUFFTywrQkFBK0I7UUFJckMsT0FBTztZQUNMLFdBQVcsRUFBRSxDQUFDLElBQW1CLEVBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2xFLGFBQWEsRUFBRSxDQUFDLElBQTBDLEVBQWlCLEVBQUUsQ0FDM0UsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDeEMsQ0FBQTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvY3VtZW50RGF0YSwgRmlyZWJhc2VGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ0BmaXJlYmFzZS9maXJlc3RvcmUtdHlwZXMnXG5cbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEJlYXV0eVByb2ZpbGUsIFVzZXIsIFVzZXJSZXBvc2l0b3J5LCBXaGVyZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycyB9IGZyb20gJy4uLy4uL21peGlucydcblxuaW1wb3J0IHsgVXNlclNlYXJjaEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuL3VzZXItc2VhcmNoLWZpcmVzdG9yZS5yZXBvc2l0b3J5J1xuXG5leHBvcnQgY2xhc3MgVXNlckZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPFVzZXI+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBVc2VyUmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3RvcihcbiAgICByZWFkb25seSBmaXJlc3RvcmU6IEZpcmViYXNlRmlyZXN0b3JlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlclNlYXJjaEZpcmVzdG9yZVJlcG9zaXRvcnkgPSBuZXcgVXNlclNlYXJjaEZpcmVzdG9yZVJlcG9zaXRvcnkoZmlyZXN0b3JlKSxcbiAgKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuY29sbGVjdGlvbk5hbWUgPSAndXNlcnMnXG4gICAgdGhpcy5tb2RlbCA9IFVzZXJcbiAgfVxuXG4gIGFzeW5jIGdldChpZGVudGlmaWVyczogUGFydGlhbDxVc2VyPik6IFByb21pc2U8VXNlcj4ge1xuICAgIGNvbnN0IHVzZXIgPSBhd2FpdCBzdXBlci5nZXQoeyBpZDogaWRlbnRpZmllcnMuaWQgfSlcblxuICAgIHVzZXIuYmVhdXR5UHJvZmlsZSA9IGF3YWl0IHRoaXMuZ2V0QmVhdXR5UHJvZmlsZSh1c2VyLmlkKVxuICAgIHVzZXIuaXNTdWJzY3JpYmVyID0gYXdhaXQgdGhpcy5jaGVja0lmSXNTdWJzY3JpYmVyKHVzZXIuaWQpXG5cbiAgICByZXR1cm4gdXNlclxuICB9XG5cbiAgYXN5bmMgY2hlY2tJZkV4aXN0c0J5RmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMudXNlclNlYXJjaEZpcmVzdG9yZVJlcG9zaXRvcnkuZmluZCh7IFtmaWVsZF06IHsgb3BlcmF0b3I6IFdoZXJlLkVRVUFMUywgdmFsdWUgfSB9KVxuXG4gICAgcmV0dXJuIHJlc3VsdC5jb3VudCA+IDBcbiAgfVxuXG4gIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgdG9GaXJlc3RvcmU6IChkYXRhOiBVc2VyKSA9PiBEb2N1bWVudERhdGFcbiAgICBmcm9tRmlyZXN0b3JlOiAoc25hcDogUXVlcnlEb2N1bWVudFNuYXBzaG90PFVzZXI+KSA9PiBVc2VyXG4gIH0ge1xuICAgIGNvbnN0IHsgZnJvbUZpcmVzdG9yZSwgdG9GaXJlc3RvcmUgfSA9IHN1cGVyLmJ1aWxkTW9kZWxJbnN0YW5jZSgpXG5cbiAgICByZXR1cm4ge1xuICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBVc2VyKTogRG9jdW1lbnREYXRhID0+IHtcbiAgICAgICAgY29uc3QgcGxhaW4gPSB0b0ZpcmVzdG9yZShkYXRhKVxuXG4gICAgICAgIGRlbGV0ZSBwbGFpbi5pc1N1YnNjcmliZXJcblxuICAgICAgICByZXR1cm4gcGxhaW5cbiAgICAgIH0sXG4gICAgICBmcm9tRmlyZXN0b3JlLFxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0QmVhdXR5UHJvZmlsZSh1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8QmVhdXR5UHJvZmlsZT4ge1xuICAgIGNvbnN0IGJlYXV0eVByb2ZpbGUgPSBhd2FpdCB0aGlzLmNvbGxlY3Rpb24oKVxuICAgICAgLmRvYyh1c2VySWQpXG4gICAgICAuY29sbGVjdGlvbignQ1gnKVxuICAgICAgLndpdGhDb252ZXJ0ZXIodGhpcy5idWlsZEJlYXV0eVByb2ZpbGVNb2RlbEluc3RhbmNlKCkpXG4gICAgICAuZG9jKCdiZWF1dHlQcm9maWxlJylcbiAgICAgIC5nZXQoKVxuXG4gICAgcmV0dXJuIGJlYXV0eVByb2ZpbGUuZGF0YSgpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoZWNrSWZJc1N1YnNjcmliZXIodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkb2NzID0gYXdhaXQgdGhpcy5maXJlc3RvcmVcbiAgICAgIC5jb2xsZWN0aW9uKCdzdWJzY3JpcHRpb24nKVxuICAgICAgLndoZXJlKCd1c2VyLmlkJywgJz09JywgdXNlcklkKVxuICAgICAgLndoZXJlKCdzdGF0dXMnLCAnPT0nLCAnYWN0aXZlJylcbiAgICAgIC5nZXQoKVxuXG4gICAgcmV0dXJuICEhZG9jcyAmJiAhIWRvY3Muc2l6ZVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEJlYXV0eVByb2ZpbGVNb2RlbEluc3RhbmNlKCk6IHtcbiAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IEJlYXV0eVByb2ZpbGUpID0+IERvY3VtZW50RGF0YVxuICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8QmVhdXR5UHJvZmlsZT4pID0+IEJlYXV0eVByb2ZpbGVcbiAgfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogQmVhdXR5UHJvZmlsZSk6IERvY3VtZW50RGF0YSA9PiBkYXRhLnRvUGxhaW4oKSxcbiAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8QmVhdXR5UHJvZmlsZT4pOiBCZWF1dHlQcm9maWxlID0+XG4gICAgICAgIEJlYXV0eVByb2ZpbGUudG9JbnN0YW5jZShzbmFwLmRhdGEoKSksXG4gICAgfVxuICB9XG59XG4iXX0=