@infrab4a/connect 4.0.0-beta.11 → 4.0.0-beta.12

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 (76) hide show
  1. package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +7 -3
  2. package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +1 -1
  3. package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +6 -2
  4. package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +6 -4
  5. package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +9 -3
  6. package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +6 -3
  7. package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +5 -3
  8. package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +7 -4
  9. package/esm2020/infra/firebase/firestore/repositories/catalog/category-firestore.repository.mjs +8 -6
  10. package/esm2020/infra/firebase/firestore/repositories/catalog/product-firestore.repository.mjs +8 -6
  11. package/esm2020/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.mjs +10 -8
  12. package/esm2020/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.mjs +8 -6
  13. package/esm2020/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.mjs +8 -6
  14. package/esm2020/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.mjs +8 -6
  15. package/esm2020/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.mjs +8 -6
  16. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.mjs +8 -6
  17. package/esm2020/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.mjs +8 -6
  18. package/esm2020/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.mjs +8 -6
  19. package/esm2020/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.mjs +6 -4
  20. package/esm2020/infra/firebase/firestore/repositories/shopping/order-firestore.repository.mjs +11 -9
  21. package/esm2020/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.mjs +8 -6
  22. package/esm2020/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.mjs +8 -6
  23. package/esm2020/infra/firebase/firestore/repositories/users/lead-firestore.repository.mjs +8 -6
  24. package/esm2020/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.mjs +10 -9
  25. package/esm2020/infra/firebase/firestore/repositories/users/subscription-firestore.repository.mjs +8 -6
  26. package/esm2020/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.mjs +10 -9
  27. package/esm2020/infra/firebase/firestore/repositories/users/user-address-firestore.repository.mjs +10 -9
  28. package/esm2020/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.mjs +10 -9
  29. package/esm2020/infra/firebase/firestore/repositories/users/user-firestore.repository.mjs +8 -6
  30. package/esm2020/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.mjs +10 -9
  31. package/esm2020/infra/firebase/firestore/types/firestore-interceptors.type.mjs +2 -0
  32. package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +1 -1
  33. package/esm2020/infra/firebase/firestore/types/index.mjs +4 -3
  34. package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +1 -1
  35. package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +1 -1
  36. package/esm2020/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.mjs +1 -1
  37. package/esm2020/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.mjs +1 -1
  38. package/esm2020/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.mjs +2 -2
  39. package/fesm2015/infrab4a-connect.mjs +206 -138
  40. package/fesm2015/infrab4a-connect.mjs.map +1 -1
  41. package/fesm2020/infrab4a-connect.mjs +201 -138
  42. package/fesm2020/infrab4a-connect.mjs.map +1 -1
  43. package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +2 -1
  44. package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +13 -4
  45. package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +6 -2
  46. package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +3 -4
  47. package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +3 -4
  48. package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +3 -4
  49. package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +3 -4
  50. package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +4 -4
  51. package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +3 -4
  52. package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +3 -4
  53. package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +3 -4
  54. package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +3 -4
  55. package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +4 -4
  56. package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +3 -4
  57. package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +4 -4
  58. package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +3 -4
  59. package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +3 -4
  60. package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +3 -4
  61. package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +3 -6
  62. package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +3 -4
  63. package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +3 -6
  64. package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +3 -6
  65. package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +3 -6
  66. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +4 -4
  67. package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +3 -6
  68. package/infra/firebase/firestore/types/firestore-interceptors.type.d.ts +14 -0
  69. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +2 -0
  70. package/infra/firebase/firestore/types/index.d.ts +3 -2
  71. package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +2 -2
  72. package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +2 -2
  73. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +3 -3
  74. package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +3 -3
  75. package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +3 -3
  76. package/package.json +2 -2
@@ -3,9 +3,13 @@ import { isEmpty } from '../../../../utils';
3
3
  export const withCreateFirestore = (MixinBase) => {
4
4
  return class CreateFirestore extends MixinBase {
5
5
  async create(data) {
6
- const docRef = await this.save(this.model.toInstance(data));
6
+ const instance = this.model.toInstance(data);
7
+ const intercepted = await this.interceptors?.request?.({ instance });
8
+ const builded = intercepted?.instance || instance;
9
+ const docRef = await this.save(builded);
7
10
  const doc = await getDoc(docRef);
8
- return doc.data();
11
+ const docBuilded = (await this.interceptors?.response?.(doc.data(), intercepted)) || doc.data();
12
+ return docBuilded;
9
13
  }
10
14
  async save(data) {
11
15
  const id = data.identifier[data.identifiersFields?.shift()]?.toString();
@@ -24,4 +28,4 @@ export const withCreateFirestore = (MixinBase) => {
24
28
  }
25
29
  };
26
30
  };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWNyZWF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQXFCLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUduRixPQUFPLEVBQUUsT0FBTyxFQUFxQyxNQUFNLG1CQUFtQixDQUFBO0FBRzlFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBSWpDLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixPQUFPLE1BQU0sZUFBZ0IsU0FBUSxTQUFTO1FBQzVDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBbUM7WUFDOUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQVcsQ0FBQyxDQUFDLENBQUE7WUFDbEUsTUFBTSxHQUFHLEdBQUcsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7WUFFaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDbkIsQ0FBQztRQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBVztZQUNwQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFBO1lBQ3ZFLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUMzRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1lBRWxELElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFBRSxPQUFPLE1BQU0sQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFFaEQsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQTtZQUNsQyxNQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFFMUIsT0FBTyxNQUFNLENBQUE7UUFDZixDQUFDO1FBRUQseUJBQXlCLENBQUMsV0FBMkI7WUFDbkQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3JHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFBO1FBQ3pCLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkRG9jLCBkb2MsIERvY3VtZW50UmVmZXJlbmNlLCBnZXREb2MsIHNldERvYyB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgQ3JlYXRlUmVwb3NpdG9yeSwgQ3JlYXRlUmVwb3NpdG9yeVBhcmFtcywgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXNFbXB0eSwgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCB3aXRoQ3JlYXRlRmlyZXN0b3JlID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBDcmVhdGVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W10sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgQ3JlYXRlRmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgQ3JlYXRlUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGNyZWF0ZShkYXRhOiBDcmVhdGVSZXBvc2l0b3J5UGFyYW1zPFRCYXNlPik6IFByb21pc2U8VEJhc2U+IHtcbiAgICAgIGNvbnN0IGRvY1JlZiA9IGF3YWl0IHRoaXMuc2F2ZSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UoZGF0YSBhcyBhbnkpKVxuICAgICAgY29uc3QgZG9jID0gYXdhaXQgZ2V0RG9jKGRvY1JlZilcblxuICAgICAgcmV0dXJuIGRvYy5kYXRhKClcbiAgICB9XG5cbiAgICBhc3luYyBzYXZlKGRhdGE6IFRCYXNlKTogUHJvbWlzZTxEb2N1bWVudFJlZmVyZW5jZTxUQmFzZT4+IHtcbiAgICAgIGNvbnN0IGlkID0gZGF0YS5pZGVudGlmaWVyW2RhdGEuaWRlbnRpZmllcnNGaWVsZHM/LnNoaWZ0KCldPy50b1N0cmluZygpXG4gICAgICBjb25zdCBjb2xsZWN0aW9uUGF0aCA9IHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckFkZChkYXRhKVxuICAgICAgY29uc3QgY29sbGVjdGlvbiA9IHRoaXMuY29sbGVjdGlvbihjb2xsZWN0aW9uUGF0aClcblxuICAgICAgaWYgKGlzRW1wdHkoaWQpKSByZXR1cm4gYWRkRG9jKGNvbGxlY3Rpb24sIGRhdGEpXG5cbiAgICAgIGNvbnN0IGRvY1JlZiA9IGRvYyhjb2xsZWN0aW9uLCBpZClcbiAgICAgIGF3YWl0IHNldERvYyhkb2NSZWYsIGRhdGEpXG5cbiAgICAgIHJldHVybiBkb2NSZWZcbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yQWRkKGlkZW50aWZpZXJzOiBQYXJ0aWFsPFRCYXNlPik6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5pc1N1YkNvbGxlY3Rpb24odGhpcylcbiAgICAgICAgPyBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7aWRlbnRpZmllcnNbdGhpcy5wYXJlbnRJZEZpZWxkXX0vJHt0aGlzLmNvbGxlY3Rpb25OYW1lfWBcbiAgICAgICAgOiB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcmVhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWNyZWF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQXFCLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUduRixPQUFPLEVBQUUsT0FBTyxFQUFxQyxNQUFNLG1CQUFtQixDQUFBO0FBRzlFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBSWpDLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixPQUFPLE1BQU0sZUFBZ0IsU0FBUSxTQUFTO1FBQzVDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBbUM7WUFDOUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBVyxDQUFDLENBQUE7WUFDbkQsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQTtZQUNwRSxNQUFNLE9BQU8sR0FBRyxXQUFXLEVBQUUsUUFBUSxJQUFJLFFBQVEsQ0FBQTtZQUNqRCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDdkMsTUFBTSxHQUFHLEdBQUcsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDaEMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxDQUFBO1lBRS9GLE9BQU8sVUFBVSxDQUFBO1FBQ25CLENBQUM7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLElBQVc7WUFDcEIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQTtZQUN2RSxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDM0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQTtZQUVsRCxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQUUsT0FBTyxNQUFNLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBRWhELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFDbEMsTUFBTSxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBRTFCLE9BQU8sTUFBTSxDQUFBO1FBQ2YsQ0FBQztRQUVELHlCQUF5QixDQUFDLFdBQTJCO1lBQ25ELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFkZERvYywgZG9jLCBEb2N1bWVudFJlZmVyZW5jZSwgZ2V0RG9jLCBzZXREb2MgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7IENyZWF0ZVJlcG9zaXRvcnksIENyZWF0ZVJlcG9zaXRvcnlQYXJhbXMsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IGlzRW1wdHksIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aENyZWF0ZUZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgQ3JlYXRlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFtdLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIENyZWF0ZUZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIENyZWF0ZVJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICBhc3luYyBjcmVhdGUoZGF0YTogQ3JlYXRlUmVwb3NpdG9yeVBhcmFtczxUQmFzZT4pOiBQcm9taXNlPFRCYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhIGFzIGFueSlcbiAgICAgIGNvbnN0IGludGVyY2VwdGVkID0gYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/Lih7IGluc3RhbmNlIH0pXG4gICAgICBjb25zdCBidWlsZGVkID0gaW50ZXJjZXB0ZWQ/Lmluc3RhbmNlIHx8IGluc3RhbmNlXG4gICAgICBjb25zdCBkb2NSZWYgPSBhd2FpdCB0aGlzLnNhdmUoYnVpbGRlZClcbiAgICAgIGNvbnN0IGRvYyA9IGF3YWl0IGdldERvYyhkb2NSZWYpXG4gICAgICBjb25zdCBkb2NCdWlsZGVkID0gKGF3YWl0IHRoaXMuaW50ZXJjZXB0b3JzPy5yZXNwb25zZT8uKGRvYy5kYXRhKCksIGludGVyY2VwdGVkKSkgfHwgZG9jLmRhdGEoKVxuXG4gICAgICByZXR1cm4gZG9jQnVpbGRlZFxuICAgIH1cblxuICAgIGFzeW5jIHNhdmUoZGF0YTogVEJhc2UpOiBQcm9taXNlPERvY3VtZW50UmVmZXJlbmNlPFRCYXNlPj4ge1xuICAgICAgY29uc3QgaWQgPSBkYXRhLmlkZW50aWZpZXJbZGF0YS5pZGVudGlmaWVyc0ZpZWxkcz8uc2hpZnQoKV0/LnRvU3RyaW5nKClcbiAgICAgIGNvbnN0IGNvbGxlY3Rpb25QYXRoID0gdGhpcy5idWlsZENvbGxlY3Rpb25QYXRoRm9yQWRkKGRhdGEpXG4gICAgICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5jb2xsZWN0aW9uKGNvbGxlY3Rpb25QYXRoKVxuXG4gICAgICBpZiAoaXNFbXB0eShpZCkpIHJldHVybiBhZGREb2MoY29sbGVjdGlvbiwgZGF0YSlcblxuICAgICAgY29uc3QgZG9jUmVmID0gZG9jKGNvbGxlY3Rpb24sIGlkKVxuICAgICAgYXdhaXQgc2V0RG9jKGRvY1JlZiwgZGF0YSlcblxuICAgICAgcmV0dXJuIGRvY1JlZlxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JBZGQoaWRlbnRpZmllcnM6IFBhcnRpYWw8VEJhc2U+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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUVuRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGFBQ1gsU0FBUSxtQkFBbUIsQ0FDekIsZ0JBQWdCLENBQ2QsaUJBQWlCLENBQ2YsbUJBQW1CLENBQ2pCLG1CQUFtQixDQUFDLFNBQXFFLENBQUMsQ0FDM0YsQ0FDRixDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcnVkUmVwb3NpdG9yeSwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IHdpdGhDcmVhdGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhEZWxldGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtZGVsZXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kRmlyZXN0b3JlIH0gZnJvbSAnLi93aXRoLWZpbmQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aEdldEZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC1nZXQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aFVwZGF0ZUZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluJ1xuXG5leHBvcnQgY29uc3Qgd2l0aENydWRGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5ID0gQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgUmVwb3NpdG9yeSAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e31bXSwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBDcnVkRmlyZXN0b3JlXG4gICAgZXh0ZW5kcyB3aXRoVXBkYXRlRmlyZXN0b3JlKFxuICAgICAgd2l0aEdldEZpcmVzdG9yZShcbiAgICAgICAgd2l0aEZpbmRGaXJlc3RvcmUoXG4gICAgICAgICAgd2l0aERlbGV0ZUZpcmVzdG9yZShcbiAgICAgICAgICAgIHdpdGhDcmVhdGVGaXJlc3RvcmUoTWl4aW5CYXNlIGFzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+KSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApXG4gICAgaW1wbGVtZW50cyBDcnVkUmVwb3NpdG9yeTxUQmFzZT4ge30gYXMgYW55XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1jcnVkLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUUvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUVuRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGFBQ1gsU0FBUSxtQkFBbUIsQ0FDekIsZ0JBQWdCLENBQ2QsaUJBQWlCLENBQ2YsbUJBQW1CLENBQ2pCLG1CQUFtQixDQUFDLFNBQXFFLENBQUMsQ0FDM0YsQ0FDRixDQUNGLENBQ0Y7S0FDeUMsQ0FBQTtBQUM5QyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcnVkUmVwb3NpdG9yeSwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IHdpdGhDcmVhdGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtY3JlYXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhEZWxldGVGaXJlc3RvcmUgfSBmcm9tICcuL3dpdGgtZGVsZXRlLWZpcmVzdG9yZS5taXhpbidcbmltcG9ydCB7IHdpdGhGaW5kRmlyZXN0b3JlIH0gZnJvbSAnLi93aXRoLWZpbmQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3dpdGgtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aEdldEZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC1nZXQtZmlyZXN0b3JlLm1peGluJ1xuaW1wb3J0IHsgd2l0aFVwZGF0ZUZpcmVzdG9yZSB9IGZyb20gJy4vd2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluJ1xuXG5leHBvcnQgY29uc3Qgd2l0aENydWRGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBSZXBvc2l0b3J5ID0gQ3J1ZFJlcG9zaXRvcnk8VEJhc2U+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgUmVwb3NpdG9yeSAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W0ZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPFRCYXNlPiwgLi4uYW55W11dLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIENydWRGaXJlc3RvcmVcbiAgICBleHRlbmRzIHdpdGhVcGRhdGVGaXJlc3RvcmUoXG4gICAgICB3aXRoR2V0RmlyZXN0b3JlKFxuICAgICAgICB3aXRoRmluZEZpcmVzdG9yZShcbiAgICAgICAgICB3aXRoRGVsZXRlRmlyZXN0b3JlKFxuICAgICAgICAgICAgd2l0aENyZWF0ZUZpcmVzdG9yZShNaXhpbkJhc2UgYXMgTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4pLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIClcbiAgICBpbXBsZW1lbnRzIENydWRSZXBvc2l0b3J5PFRCYXNlPiB7fSBhcyBhbnlcbn1cbiJdfQ==
@@ -2,7 +2,11 @@ import { deleteDoc, doc } from 'firebase/firestore';
2
2
  export const withDeleteFirestore = (MixinBase) => {
3
3
  return class DeleteFirestore extends MixinBase {
4
4
  async delete(identifiers) {
5
- await deleteDoc(doc(this.collection(this.buildCollectionPathForRemove(identifiers)), Object.values(identifiers).shift().toString()));
5
+ const instance = this.model.toInstance(this.model.identifiersFields.reduce((acc, field) => ({ ...acc, [field]: identifiers[field] }), {}));
6
+ const intercepted = await this.interceptors?.request?.({ instance });
7
+ const builded = intercepted?.instance || instance;
8
+ await deleteDoc(doc(this.collection(this.buildCollectionPathForRemove(identifiers)), Object.values(builded.identifier).shift().toString()));
9
+ await this.interceptors?.response?.(instance, intercepted);
6
10
  }
7
11
  buildCollectionPathForRemove(identifiers) {
8
12
  return this.isSubCollection(this)
@@ -11,4 +15,4 @@ export const withDeleteFirestore = (MixinBase) => {
11
15
  }
12
16
  };
13
17
  };
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWRlbGV0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQU1uRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUlqQyxTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGVBQWdCLFNBQVEsU0FBUztRQUM1QyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQTBDO1lBQ3JELE1BQU0sU0FBUyxDQUNiLEdBQUcsQ0FDRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUMvRCxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUM5QyxDQUNGLENBQUE7UUFDSCxDQUFDO1FBRUQsNEJBQTRCLENBQUMsV0FBb0M7WUFDL0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDL0IsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3JHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFBO1FBQ3pCLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVsZXRlRG9jLCBkb2MgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7IERlbGV0ZVJlcG9zaXRvcnksIERlbGV0ZVJlcG9zaXRvcnlQYXJhbXMsIElkZW50aWZpZXJzTW9kZWwsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aERlbGV0ZUZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgRGVsZXRlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9W10sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgRGVsZXRlRmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgRGVsZXRlUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGRlbGV0ZShpZGVudGlmaWVyczogRGVsZXRlUmVwb3NpdG9yeVBhcmFtczxUQmFzZT4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIGF3YWl0IGRlbGV0ZURvYyhcbiAgICAgICAgZG9jKFxuICAgICAgICAgIHRoaXMuY29sbGVjdGlvbih0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JSZW1vdmUoaWRlbnRpZmllcnMpKSxcbiAgICAgICAgICBPYmplY3QudmFsdWVzKGlkZW50aWZpZXJzKS5zaGlmdCgpLnRvU3RyaW5nKCksXG4gICAgICAgICksXG4gICAgICApXG4gICAgfVxuXG4gICAgYnVpbGRDb2xsZWN0aW9uUGF0aEZvclJlbW92ZShpZGVudGlmaWVyczogSWRlbnRpZmllcnNNb2RlbDxUQmFzZT4pOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaXNTdWJDb2xsZWN0aW9uKHRoaXMpXG4gICAgICAgID8gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke2lkZW50aWZpZXJzW3RoaXMucGFyZW50SWRGaWVsZF19LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgICAgIDogdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1kZWxldGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWRlbGV0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQU1uRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUlqQyxTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLGVBQWdCLFNBQVEsU0FBUztRQUM1QyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQTBDO1lBQ3JELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FDakMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxXQUFXLENBQUMsS0FBc0MsQ0FBQyxFQUFFLENBQUMsRUFDMUYsRUFBRSxDQUNILENBQ0YsQ0FBQTtZQUNELE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7WUFDcEUsTUFBTSxPQUFPLEdBQUcsV0FBVyxFQUFFLFFBQVEsSUFBSSxRQUFRLENBQUE7WUFFakQsTUFBTSxTQUFTLENBQ2IsR0FBRyxDQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQy9ELE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUNyRCxDQUNGLENBQUE7WUFFRCxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFBO1FBQzVELENBQUM7UUFFRCw0QkFBNEIsQ0FBQyxXQUFvQztZQUMvRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDckcsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekIsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZWxldGVEb2MsIGRvYyB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgRGVsZXRlUmVwb3NpdG9yeSwgRGVsZXRlUmVwb3NpdG9yeVBhcmFtcywgSWRlbnRpZmllcnNNb2RlbCwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCB3aXRoRGVsZXRlRmlyZXN0b3JlID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBEZWxldGVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e31bXSwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBEZWxldGVGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBEZWxldGVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgZGVsZXRlKGlkZW50aWZpZXJzOiBEZWxldGVSZXBvc2l0b3J5UGFyYW1zPFRCYXNlPik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLm1vZGVsLnRvSW5zdGFuY2UoXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMucmVkdWNlKFxuICAgICAgICAgIChhY2MsIGZpZWxkKSA9PiAoeyAuLi5hY2MsIFtmaWVsZF06IGlkZW50aWZpZXJzW2ZpZWxkIGFzIGtleW9mIElkZW50aWZpZXJzTW9kZWw8VEJhc2U+XSB9KSxcbiAgICAgICAgICB7fSxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGludGVyY2VwdGVkID0gYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/Lih7IGluc3RhbmNlIH0pXG4gICAgICBjb25zdCBidWlsZGVkID0gaW50ZXJjZXB0ZWQ/Lmluc3RhbmNlIHx8IGluc3RhbmNlXG5cbiAgICAgIGF3YWl0IGRlbGV0ZURvYyhcbiAgICAgICAgZG9jKFxuICAgICAgICAgIHRoaXMuY29sbGVjdGlvbih0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JSZW1vdmUoaWRlbnRpZmllcnMpKSxcbiAgICAgICAgICBPYmplY3QudmFsdWVzKGJ1aWxkZWQuaWRlbnRpZmllcikuc2hpZnQoKS50b1N0cmluZygpLFxuICAgICAgICApLFxuICAgICAgKVxuXG4gICAgICBhd2FpdCB0aGlzLmludGVyY2VwdG9ycz8ucmVzcG9uc2U/LihpbnN0YW5jZSwgaW50ZXJjZXB0ZWQpXG4gICAgfVxuXG4gICAgYnVpbGRDb2xsZWN0aW9uUGF0aEZvclJlbW92ZShpZGVudGlmaWVyczogSWRlbnRpZmllcnNNb2RlbDxUQmFzZT4pOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaXNTdWJDb2xsZWN0aW9uKHRoaXMpXG4gICAgICAgID8gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke2lkZW50aWZpZXJzW3RoaXMucGFyZW50SWRGaWVsZF19LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgICAgIDogdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
@@ -63,8 +63,10 @@ export const withFindFirestore = (MixinBase) => {
63
63
  return Object.keys(fieldsToOrderBy).map((fieldName) => orderBy(fieldName, fieldsToOrderBy[fieldName]));
64
64
  };
65
65
  }
66
- async find({ filters, limits, orderBy, } = {}) {
67
- const collection = this.collection(this.buildCollectionPathForFind(filters));
66
+ async find(find = {}) {
67
+ const collection = this.collection(this.buildCollectionPathForFind(find.filters));
68
+ const intercepted = await this.interceptors?.request?.({ find });
69
+ const { filters, limits, orderBy } = intercepted.find || find;
68
70
  const queries = this.makeFirestoreWhere(filters || {});
69
71
  const ordination = this.makeFirestoreOrderBy(filters, orderBy);
70
72
  const offsets = await this.defineLimits(filters, limits);
@@ -72,7 +74,7 @@ export const withFindFirestore = (MixinBase) => {
72
74
  const docs = await getDocs(query(collection, ...queryArgumments));
73
75
  const data = docs.docs.map((doc) => doc.data());
74
76
  return {
75
- data,
77
+ data: (await this.interceptors?.response?.(data, intercepted)) || data,
76
78
  count: this.calculateCount(data, limits),
77
79
  };
78
80
  }
@@ -104,4 +106,4 @@ export const withFindFirestore = (MixinBase) => {
104
106
  }
105
107
  };
106
108
  };
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLEVBQ1AsS0FBSyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBRUwsVUFBVSxFQUNWLE9BQU8sRUFDUCxLQUFLLEdBRU4sTUFBTSxvQkFBb0IsQ0FBQTtBQUUzQixPQUFPLEVBV0wsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUNMLEVBQUUsRUFDRixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUdSLEdBQUcsR0FDSixNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUc3QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUkvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQVcsRUFBdUQsRUFBRSxDQUNqRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDMUIsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE1BQXVDLEVBQU8sRUFBRTtRQUMxRSxPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDOUQsQ0FBQyxDQUFBO0lBQ0QsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQ3ZDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsS0FBSyxD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Q0UsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO29CQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO2FBQ2xHO1lBQ0QsSUFBSSxNQUFNLEVBQUUsS0FBSztnQkFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxPQUFPLE9BQU8sQ0FBQTtRQUNoQixDQUFDO1FBRUQsY0FBYyxDQUFDLElBQWEsRUFBRSxNQUFxQztZQUNqRSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQztnQkFBRSxPQUFPLENBQUMsQ0FBQTtZQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxFQUFFLEtBQUs7Z0JBQUUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO1lBRW5ELE9BQU8sUUFBUSxDQUFBO1FBQ2pCLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29sbGVjdGlvblJlZmVyZW5jZSxcbiAgZG9jLFxuICBnZXREb2MsXG4gIGdldERvY3MsXG4gIGxpbWl0LFxuICBvcmRlckJ5LFxuICBxdWVyeSxcbiAgUXVlcnlDb25zdHJhaW50LFxuICBzdGFydEFmdGVyLFxuICBzdGFydEF0LFxuICB3aGVyZSxcbiAgV2hlcmVGaWx0ZXJPcCxcbn0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQge1xuICBGaW5kUmVwb3NpdG9yeSxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbGQsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnMsXG4gIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zLFxuICBSZXBvc2l0b3J5RmluZFJlc3VsdCxcbiAgUmVwb3NpdG9yeUxpbWl0T3B0aW9ucyxcbiAgUmVwb3NpdG9yeU9yZGVyQnksXG4gIFdoZXJlLFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQge1xuICBpcyxcbiAgaXNEYXRlLFxuICBpc05pbCxcbiAgaXNOdW1iZXIsXG4gIGlzT2JqZWN0LFxuICBpc1N0cmluZyxcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcyxcbiAgTWl4aW5DdG9yLFxuICBzZXQsXG59IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlRmllbGRUeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCB3aXRoRmluZEZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgRmluZFJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycyxcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczx7fVtdLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgY29uc3QgY2hlY2tJZklzRmlsdGVyT3B0aW9uID0gKGZpbHRlcjogYW55KTogZmlsdGVyIGlzIFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBhbnk+ID0+XG4gICAgIWlzTmlsKGZpbHRlcj8ub3BlcmF0b3IpXG4gIGNvbnN0IGdldFZhbHVlRnJvbUZpbHRlciA9IChmaWx0ZXI6IFJlcG9zaXRvcnlGaW5kRmllbGQ8VEJhc2UsIGFueT4pOiBhbnkgPT4ge1xuICAgIHJldHVybiBjaGVja0lmSXNGaWx0ZXJPcHRpb24oZmlsdGVyKSA/IGZpbHRlci52YWx1ZSA6IGZpbHRlclxuICB9XG4gIGNvbnN0IGdldEZpbmFsVmFsdWVGcm9tID0gKHZhbHVlOiBhbnkpID0+XG4gICAgaXNOdW1iZXIodmFsdWUpIHx8IGlzU3RyaW5nKHZhbHVlKSB8fCBpc0RhdGUodmFsdWUpIHx8IEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICA/IHZhbHVlXG4gICAgICA6IE9iamVjdC52YWx1ZXMoZ2V0RmluYWxWYWx1ZUZyb20pXG5cbiAgcmV0dXJuIGNsYXNzIEZpbmRGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBGaW5kUmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGZpbmQoe1xuICAgICAgZmlsdGVycyxcbiAgICAgIGxpbWl0cyxcbiAgICAgIG9yZGVyQnksXG4gICAgfToge1xuICAgICAgZmlsdGVycz86IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+XG4gICAgICBsaW1pdHM/OiBSZXBvc2l0b3J5TGltaXRPcHRpb25zPFRCYXNlPlxuICAgICAgb3JkZXJCeT86IFJlcG9zaXRvcnlPcmRlckJ5PFRCYXNlPlxuICAgIH0gPSB7fSk6IFByb21pc2U8UmVwb3NpdG9yeUZpbmRSZXN1bHQ8VEJhc2U+PiB7XG4gICAgICBjb25zdCBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiA9IHRoaXMuY29sbGVjdGlvbih0aGlzLmJ1aWxkQ29sbGVjdGlvblBhdGhGb3JGaW5kKGZpbHRlcnMpKVxuICAgICAgY29uc3QgcXVlcmllcyA9IHRoaXMubWFrZUZpcmVzdG9yZVdoZXJlKGZpbHRlcnMgfHwge30pXG4gICAgICBjb25zdCBvcmRpbmF0aW9uID0gdGhpcy5tYWtlRmlyZXN0b3JlT3JkZXJCeShmaWx0ZXJzLCBvcmRlckJ5KVxuICAgICAgY29uc3Qgb2Zmc2V0cyA9IGF3YWl0IHRoaXMuZGVmaW5lTGltaXRzKGZpbHRlcnMsIGxpbWl0cylcbiAgICAgIGNvbnN0IHF1ZXJ5QXJndW1tZW50czogUXVlcnlDb25zdHJhaW50W10gPSBbLi4ucXVlcmllcywgLi4ub3JkaW5hdGlvbiwgLi4ub2Zmc2V0c11cbiAgICAgIGNvbnN0IGRvY3MgPSBhd2FpdCBnZXREb2NzKHF1ZXJ5KGNvbGxlY3Rpb24sIC4uLnF1ZXJ5QXJndW1tZW50cykpXG4gICAgICBjb25zdCBkYXRhID0gZG9jcy5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhLFxuICAgICAgICBjb3VudDogdGhpcy5jYWxjdWxhdGVDb3VudChkYXRhLCBsaW1pdHMpLFxuICAgICAgfVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JGaW5kKGZpbHRlcnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIGlmICghdGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpKSByZXR1cm4gdGhpcy5jb2xsZWN0aW9uTmFtZVxuXG4gICAgICBjb25zdCBwYXJlbnRJZEZpZWxkID0gdGhpcy5wYXJlbnRJZEZpZWxkXG4gICAgICBjb25zdCBwYXJlbnRJZCA9IGdldFZhbHVlRnJvbUZpbHRlcihmaWx0ZXJzPy5bcGFyZW50SWRGaWVsZF0pXG5cbiAgICAgIHJldHVybiBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7cGFyZW50SWR9LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgfVxuXG4gICAgbWFrZUZpcmVzdG9yZVdoZXJlID0gKGZpbHRlcjogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4pOiBRdWVyeUNvbnN0cmFpbnRbXSA9PlxuICAgICAgT2JqZWN0LmtleXMoZmlsdGVyKS5yZWR1Y2UoXG4gICAgICAgIChxdWVyaWVzOiBRdWVyeUNvbnN0cmFpbnRbXSwgZmllbGROYW1lOiBzdHJpbmcpID0+IFtcbiAgICAgICAgICAuLi5xdWVyaWVzLFxuICAgICAgICAgIC4uLnRoaXMuYnVpbGRXaGVyZVNlbnRlbmNlKGZpZWxkTmFtZSwgaXMoZmlsdGVyW2ZpZWxkTmFtZSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSkpLFxuICAgICAgICBdLFxuICAgICAgICBbXSxcbiAgICAgIClcblxuICAgIGJ1aWxkV2hlcmVTZW50ZW5jZSA9IChcbiAgICAgIGZpZWxkTmFtZTogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPiB8IHN0cmluZyxcbiAgICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+PixcbiAgICApOiBRdWVyeUNvbnN0cmFpbnRbXSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpICYmIGZpZWxkTmFtZSA9PT0gdGhpcy5wYXJlbnRJZEZpZWxkKSBbXVxuXG4gICAgICBjb25zdCB2YWx1ZSA9IG9wdGlvbnM/LnZhbHVlIHx8IG9wdGlvbnNcbiAgICAgIGNvbnN0IG9iamVjdCA9IHt9XG5cbiAgICAgIHNldChvYmplY3QsIGZpZWxkTmFtZSwgdmFsdWUpXG5cbiAgICAgIGNvbnN0IHBsYWluSW5zdGFuY2UgPSBuZXcgdGhpcy5tb2RlbChvYmplY3QpLnRvUGxhaW4oKVxuICAgICAgY29uc3QgZmlyZXN0b3JlRmllbGROYW1lID1cbiAgICAgICAgZmllbGROYW1lLnRvU3RyaW5nKCkuaW5kZXhPZignLicpID4gLTFcbiAgICAgICAgICA/IGZpZWxkTmFtZS50b1N0cmluZygpXG4gICAgICAgICAgOiBPYmplY3Qua2V5cyhwbGFpbkluc3RhbmNlKS5maW5kKChrZXkpID0+IHBsYWluSW5zdGFuY2Vba2V5XSlcblxuICAgICAgaWYgKG9wdGlvbnM/Lm9wZXJhdG9yID09PSBXaGVyZS5MSUtFKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBBcnJheS5pc0FycmF5KG9wdGlvbnM/LnZhbHVlKSAmJlxuICAgICAgICAgICh0aGlzLmZpZWxkc1tmaXJlc3RvcmVGaWVsZE5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxUQmFzZT5dID09PVxuICAgICAgICAgICAgRmlyZXN0b3JlRmllbGRUeXBlLkFycmF5IHx8XG4gICAgICAgICAgICAhdGhpcy5maWVsZHNbZmlyZXN0b3JlRmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8VEJhc2U+XSlcbiAgICAgICAgKVxuICAgICAgICAgIHJldHVybiBbd2hlcmUoZmlyZXN0b3JlRmllbGROYW1lLCAnYXJyYXktY29udGFpbnMtYW55Jywgb3B0aW9ucy52YWx1ZSldXG5cbiAgICAgICAgcmV0dXJuIFt3aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICc+PScsIG9wdGlvbnMudmFsdWUpLCB3aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICc8PScsIGAke29wdGlvbnMudmFsdWV9fmApXVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBvcHRpb25zPy5vcGVyYXRvciA9PT0gV2hlcmUuSU4gJiZcbiAgICAgICAgQXJyYXkuaXNBcnJheShvcHRpb25zPy52YWx1ZSkgJiZcbiAgICAgICAgKHRoaXMuZmllbGRzW2ZpcmVzdG9yZUZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFRCYXNlPl0gPT09IEZpcmVzdG9yZUZpZWxkVHlwZS5BcnJheSB8fFxuICAgICAgICAgICF0aGlzLmZpZWxkc1tmaXJlc3RvcmVGaWVsZE5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxUQmFzZT5dKVxuICAgICAgKVxuICAgICAgICByZXR1cm4gW3doZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgJ2FycmF5LWNvbnRhaW5zJywgb3B0aW9ucy52YWx1ZSldXG4gICAgICBpZiAoaXNPYmplY3Qob3B0aW9ucykgJiYgaXNOaWwob3B0aW9ucz8ub3BlcmF0b3IpICYmIGlzTmlsKG9wdGlvbnM/LnZhbHVlKSkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMob3B0aW9ucykucmVkdWNlKFxuICAgICAgICAgIChxdWVyaWVzLCBrZXkpID0+IFtcbiAgICAgICAgICAgIC4uLnF1ZXJpZXMsXG4gICAgICAgICAgICAuLi50aGlzLmJ1aWxkV2hlcmVTZW50ZW5jZShgJHtmaWVsZE5hbWUudG9TdHJpbmcoKX0uJHtrZXl9YCwgaXM8UmVjb3JkPHN0cmluZywgYW55Pj4ob3B0aW9ucylba2V5XSksXG4gICAgICAgICAgXSxcbiAgICAgICAgICBbXSxcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gW3doZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgKG9wdGlvbnM/Lm9wZXJhdG9yIGFzIFdoZXJlRmlsdGVyT3ApIHx8ICc9PScsIG9wdGlvbnM/LnZhbHVlIHx8IG9wdGlvbnMpXVxuICAgIH1cblxuICAgIG1ha2VGaXJlc3RvcmVPcmRlckJ5ID0gKFxuICAgICAgZmlsdGVyczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4sXG4gICAgICBmaWVsZHNUb09yZGVyQnk/OiBSZXBvc2l0b3J5T3JkZXJCeTxUQmFzZT4sXG4gICAgKTogUXVlcnlDb25zdHJhaW50W10gPT4ge1xuICAgICAgY29uc3Qgb3JkZXJCeUtleXMgPSBPYmplY3Qua2V5cyhmaWVsZHNUb09yZGVyQnkgfHwge30pXG5cbiAgICAgIGlmICghb3JkZXJCeUtleXMubGVuZ3RoKSByZXR1cm4gW11cblxuICAgICAgY29uc3QgZmlsdGVyc0tleXNXaXRoVW5vcmRlcmVkID0gT2JqZWN0LmtleXMoZmlsdGVycyB8fCB7fSkuZmlsdGVyKFxuICAgICAgICAoZmlsdGVyS2V5KSA9PiAhb3JkZXJCeUtleXMuaW5jbHVkZXMoZmlsdGVyS2V5KSxcbiAgICAgIClcblxuICAgICAgaWYgKGZpbHRlcnNLZXlzV2l0aFVub3JkZXJlZC5sZW5ndGgpXG4gICAgICAgIGZpbHRlcnNLZXlzV2l0aFVub3JkZXJlZC5mb3JFYWNoKFxuICAgICAgICAgIChmaWx0ZXJLZXkpID0+XG4gICAgICAgICAgICAoZmllbGRzVG9PcmRlckJ5ID0ge1xuICAgICAgICAgICAgICAuLi4oIVtXaGVyZS5FUVVBTFNdLmluY2x1ZGVzKFxuICAgICAgICAgICAgICAgIGlzPFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+Pj4oXG4gICAgICAgICAgICAgICAgICBmaWx0ZXJzW2ZpbHRlcktleSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSxcbiAgICAgICAgICAgICAgICApLm9wZXJhdG9yLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgPyB7IFtmaWx0ZXJLZXldOiAnYXNjJyB9XG4gICAgICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgICAgIC4uLmZpZWxkc1RvT3JkZXJCeSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhmaWVsZHNUb09yZGVyQnkpLm1hcCgoZmllbGROYW1lKSA9PlxuICAgICAgICBvcmRlckJ5KGZpZWxkTmFtZSwgZmllbGRzVG9PcmRlckJ5W2ZpZWxkTmFtZSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSksXG4gICAgICApXG4gICAgfVxuXG4gICAgYXN5bmMgZGVmaW5lTGltaXRzKFxuICAgICAgZmlsdGVyczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4sXG4gICAgICBsaW1pdHM6IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+LFxuICAgICk6IFByb21pc2U8UXVlcnlDb25zdHJhaW50W10+IHtcbiAgICAgIGNvbnN0IHF1ZXJpZXMgPSBbXVxuXG4gICAgICBpZiAobGltaXRzPy5vZmZzZXQpIHtcbiAgICAgICAgaWYgKHRoaXMubW9kZWwuaXNNb2RlbChsaW1pdHMub2Zmc2V0KSlcbiAgICAgICAgICBxdWVyaWVzLnB1c2goXG4gICAgICAgICAgICBzdGFydEFmdGVyKFxuICAgICAgICAgICAgICBhd2FpdCBnZXREb2MoXG4gICAgICAgICAgICAgICAgZG9jKFxuICAgICAgICAgICAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckZpbmQoZmlsdGVycykpLFxuICAgICAgICAgICAgICAgICAgbGltaXRzLm9mZnNldC5pZGVudGlmaWVyW2xpbWl0cy5vZmZzZXQuaWRlbnRpZmllcnNGaWVsZHM/LnNoaWZ0KCldLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIClcbiAgICAgICAgZWxzZSBpZiAoaXNOdW1iZXIobGltaXRzLm9mZnNldCkgfHwgaXNTdHJpbmcobGltaXRzLm9mZnNldCkpIHF1ZXJpZXMucHVzaChzdGFydEF0KGxpbWl0cy5vZmZzZXQpKVxuICAgICAgfVxuICAgICAgaWYgKGxpbWl0cz8ubGltaXQpIHF1ZXJpZXMucHVzaChsaW1pdChsaW1pdHMubGltaXQpKVxuXG4gICAgICByZXR1cm4gcXVlcmllc1xuICAgIH1cblxuICAgIGNhbGN1bGF0ZUNvdW50KGRhdGE6IFRCYXNlW10sIGxpbWl0czogUmVwb3NpdG9yeUxpbWl0T3B0aW9uczxUQmFzZT4pOiBudW1iZXIge1xuICAgICAgaWYgKGRhdGEubGVuZ3RoIDw9IDApIHJldHVybiAwXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPCBsaW1pdHM/LmxpbWl0KSByZXR1cm4gZGF0YS5sZW5ndGhcblxuICAgICAgcmV0dXJuIEluZmluaXR5XG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1maW5kLWZpcmVzdG9yZS5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLEVBQ1AsS0FBSyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBRUwsVUFBVSxFQUNWLE9BQU8sRUFDUCxLQUFLLEdBRU4sTUFBTSxvQkFBb0IsQ0FBQTtBQUUzQixPQUFPLEVBV0wsS0FBSyxHQUNOLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUNMLEVBQUUsRUFDRixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsUUFBUSxFQUdSLEdBQUcsR0FDSixNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUc3QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUkvQixTQUFnRixFQUloRixFQUFFO0lBQ0YsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQVcsRUFBdUQsRUFBRSxDQUNqRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDMUIsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE1BQXVDLEVBQU8sRUFBRTtRQUMxRSxPQUFPLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDOUQsQ0FBQyxDQUFBO0lBQ0QsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQ3ZDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsS0FBSyxD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QztvQkFDbkMsT0FBTyxDQUFDLElBQUksQ0FDVixVQUFVLENBQ1IsTUFBTSxNQUFNLENBQ1YsR0FBRyxDQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ3pELE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FDbkUsQ0FDRixDQUNGLENBQ0YsQ0FBQTtxQkFDRSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7b0JBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7YUFDbEc7WUFDRCxJQUFJLE1BQU0sRUFBRSxLQUFLO2dCQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1lBRXBELE9BQU8sT0FBTyxDQUFBO1FBQ2hCLENBQUM7UUFFRCxjQUFjLENBQUMsSUFBYSxFQUFFLE1BQXFDO1lBQ2pFLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO2dCQUFFLE9BQU8sQ0FBQyxDQUFBO1lBQzlCLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLEVBQUUsS0FBSztnQkFBRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUE7WUFFbkQsT0FBTyxRQUFRLENBQUE7UUFDakIsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb2xsZWN0aW9uUmVmZXJlbmNlLFxuICBkb2MsXG4gIGdldERvYyxcbiAgZ2V0RG9jcyxcbiAgbGltaXQsXG4gIG9yZGVyQnksXG4gIHF1ZXJ5LFxuICBRdWVyeUNvbnN0cmFpbnQsXG4gIHN0YXJ0QWZ0ZXIsXG4gIHN0YXJ0QXQsXG4gIHdoZXJlLFxuICBXaGVyZUZpbHRlck9wLFxufSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7XG4gIEZpbmRSZXBvc2l0b3J5LFxuICBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXMsXG4gIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lcyxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsZCxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsdGVycyxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnMsXG4gIFJlcG9zaXRvcnlGaW5kUmVzdWx0LFxuICBSZXBvc2l0b3J5TGltaXRPcHRpb25zLFxuICBSZXBvc2l0b3J5T3JkZXJCeSxcbiAgV2hlcmUsXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7XG4gIGlzLFxuICBpc0RhdGUsXG4gIGlzTmlsLFxuICBpc051bWJlcixcbiAgaXNPYmplY3QsXG4gIGlzU3RyaW5nLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLFxuICBNaXhpbkN0b3IsXG4gIHNldCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVGaWVsZFR5cGUgfSBmcm9tICcuLi9lbnVtcydcbmltcG9ydCB7IEZpcmVzdG9yZUhlbHBlcnMsIEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcblxuZXhwb3J0IGNvbnN0IHdpdGhGaW5kRmlyZXN0b3JlID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBGaW5kUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9W10sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBjaGVja0lmSXNGaWx0ZXJPcHRpb24gPSAoZmlsdGVyOiBhbnkpOiBmaWx0ZXIgaXMgUmVwb3NpdG9yeUZpbmRGaWVsdGVyc09wdGlvbnM8VEJhc2UsIGFueT4gPT5cbiAgICAhaXNOaWwoZmlsdGVyPy5vcGVyYXRvcilcbiAgY29uc3QgZ2V0VmFsdWVGcm9tRmlsdGVyID0gKGZpbHRlcjogUmVwb3NpdG9yeUZpbmRGaWVsZDxUQmFzZSwgYW55Pik6IGFueSA9PiB7XG4gICAgcmV0dXJuIGNoZWNrSWZJc0ZpbHRlck9wdGlvbihmaWx0ZXIpID8gZmlsdGVyLnZhbHVlIDogZmlsdGVyXG4gIH1cbiAgY29uc3QgZ2V0RmluYWxWYWx1ZUZyb20gPSAodmFsdWU6IGFueSkgPT5cbiAgICBpc051bWJlcih2YWx1ZSkgfHwgaXNTdHJpbmcodmFsdWUpIHx8IGlzRGF0ZSh2YWx1ZSkgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWVcbiAgICAgIDogT2JqZWN0LnZhbHVlcyhnZXRGaW5hbFZhbHVlRnJvbSlcblxuICByZXR1cm4gY2xhc3MgRmluZEZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpbmRSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgZmluZChcbiAgICAgIGZpbmQ6IHtcbiAgICAgICAgZmlsdGVycz86IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+XG4gICAgICAgIGxpbWl0cz86IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+XG4gICAgICAgIG9yZGVyQnk/OiBSZXBvc2l0b3J5T3JkZXJCeTxUQmFzZT5cbiAgICAgIH0gPSB7fSxcbiAgICApOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PFRCYXNlPj4ge1xuICAgICAgY29uc3QgY29sbGVjdGlvbjogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4gPSB0aGlzLmNvbGxlY3Rpb24odGhpcy5idWlsZENvbGxlY3Rpb25QYXRoRm9yRmluZChmaW5kLmZpbHRlcnMpKVxuICAgICAgY29uc3QgaW50ZXJjZXB0ZWQgPSBhd2FpdCB0aGlzLmludGVyY2VwdG9ycz8ucmVxdWVzdD8uKHsgZmluZCB9KVxuICAgICAgY29uc3QgeyBmaWx0ZXJzLCBsaW1pdHMsIG9yZGVyQnkgfSA9IGludGVyY2VwdGVkLmZpbmQgfHwgZmluZFxuICAgICAgY29uc3QgcXVlcmllcyA9IHRoaXMubWFrZUZpcmVzdG9yZVdoZXJlKGZpbHRlcnMgfHwge30pXG4gICAgICBjb25zdCBvcmRpbmF0aW9uID0gdGhpcy5tYWtlRmlyZXN0b3JlT3JkZXJCeShmaWx0ZXJzLCBvcmRlckJ5KVxuICAgICAgY29uc3Qgb2Zmc2V0cyA9IGF3YWl0IHRoaXMuZGVmaW5lTGltaXRzKGZpbHRlcnMsIGxpbWl0cylcbiAgICAgIGNvbnN0IHF1ZXJ5QXJndW1tZW50czogUXVlcnlDb25zdHJhaW50W10gPSBbLi4ucXVlcmllcywgLi4ub3JkaW5hdGlvbiwgLi4ub2Zmc2V0c11cbiAgICAgIGNvbnN0IGRvY3MgPSBhd2FpdCBnZXREb2NzKHF1ZXJ5KGNvbGxlY3Rpb24sIC4uLnF1ZXJ5QXJndW1tZW50cykpXG4gICAgICBjb25zdCBkYXRhID0gZG9jcy5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBkYXRhOiAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlc3BvbnNlPy4oZGF0YSwgaW50ZXJjZXB0ZWQpKSB8fCBkYXRhLFxuICAgICAgICBjb3VudDogdGhpcy5jYWxjdWxhdGVDb3VudChkYXRhLCBsaW1pdHMpLFxuICAgICAgfVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JGaW5kKGZpbHRlcnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIGlmICghdGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpKSByZXR1cm4gdGhpcy5jb2xsZWN0aW9uTmFtZVxuXG4gICAgICBjb25zdCBwYXJlbnRJZEZpZWxkID0gdGhpcy5wYXJlbnRJZEZpZWxkXG4gICAgICBjb25zdCBwYXJlbnRJZCA9IGdldFZhbHVlRnJvbUZpbHRlcihmaWx0ZXJzPy5bcGFyZW50SWRGaWVsZF0pXG5cbiAgICAgIHJldHVybiBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7cGFyZW50SWR9LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgfVxuXG4gICAgbWFrZUZpcmVzdG9yZVdoZXJlID0gKGZpbHRlcjogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4pOiBRdWVyeUNvbnN0cmFpbnRbXSA9PlxuICAgICAgT2JqZWN0LmtleXMoZmlsdGVyKS5yZWR1Y2UoXG4gICAgICAgIChxdWVyaWVzOiBRdWVyeUNvbnN0cmFpbnRbXSwgZmllbGROYW1lOiBzdHJpbmcpID0+IFtcbiAgICAgICAgICAuLi5xdWVyaWVzLFxuICAgICAgICAgIC4uLnRoaXMuYnVpbGRXaGVyZVNlbnRlbmNlKGZpZWxkTmFtZSwgaXMoZmlsdGVyW2ZpZWxkTmFtZSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSkpLFxuICAgICAgICBdLFxuICAgICAgICBbXSxcbiAgICAgIClcblxuICAgIGJ1aWxkV2hlcmVTZW50ZW5jZSA9IChcbiAgICAgIGZpZWxkTmFtZTogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPiB8IHN0cmluZyxcbiAgICAgIG9wdGlvbnM6IFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+PixcbiAgICApOiBRdWVyeUNvbnN0cmFpbnRbXSA9PiB7XG4gICAgICBpZiAodGhpcy5pc1N1YkNvbGxlY3Rpb248VEJhc2U+KHRoaXMpICYmIGZpZWxkTmFtZSA9PT0gdGhpcy5wYXJlbnRJZEZpZWxkKSBbXVxuXG4gICAgICBjb25zdCB2YWx1ZSA9IG9wdGlvbnM/LnZhbHVlIHx8IG9wdGlvbnNcbiAgICAgIGNvbnN0IG9iamVjdCA9IHt9XG5cbiAgICAgIHNldChvYmplY3QsIGZpZWxkTmFtZSwgdmFsdWUpXG5cbiAgICAgIGNvbnN0IHBsYWluSW5zdGFuY2UgPSBuZXcgdGhpcy5tb2RlbChvYmplY3QpLnRvUGxhaW4oKVxuICAgICAgY29uc3QgZmlyZXN0b3JlRmllbGROYW1lID1cbiAgICAgICAgZmllbGROYW1lLnRvU3RyaW5nKCkuaW5kZXhPZignLicpID4gLTFcbiAgICAgICAgICA/IGZpZWxkTmFtZS50b1N0cmluZygpXG4gICAgICAgICAgOiBPYmplY3Qua2V5cyhwbGFpbkluc3RhbmNlKS5maW5kKChrZXkpID0+IHBsYWluSW5zdGFuY2Vba2V5XSlcblxuICAgICAgaWYgKG9wdGlvbnM/Lm9wZXJhdG9yID09PSBXaGVyZS5MSUtFKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBBcnJheS5pc0FycmF5KG9wdGlvbnM/LnZhbHVlKSAmJlxuICAgICAgICAgICh0aGlzLmZpZWxkc1tmaXJlc3RvcmVGaWVsZE5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxUQmFzZT5dID09PVxuICAgICAgICAgICAgRmlyZXN0b3JlRmllbGRUeXBlLkFycmF5IHx8XG4gICAgICAgICAgICAhdGhpcy5maWVsZHNbZmlyZXN0b3JlRmllbGROYW1lIGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8VEJhc2U+XSlcbiAgICAgICAgKVxuICAgICAgICAgIHJldHVybiBbd2hlcmUoZmlyZXN0b3JlRmllbGROYW1lLCAnYXJyYXktY29udGFpbnMtYW55Jywgb3B0aW9ucy52YWx1ZSldXG5cbiAgICAgICAgcmV0dXJuIFt3aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICc+PScsIG9wdGlvbnMudmFsdWUpLCB3aGVyZShmaXJlc3RvcmVGaWVsZE5hbWUsICc8PScsIGAke29wdGlvbnMudmFsdWV9fmApXVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBvcHRpb25zPy5vcGVyYXRvciA9PT0gV2hlcmUuSU4gJiZcbiAgICAgICAgQXJyYXkuaXNBcnJheShvcHRpb25zPy52YWx1ZSkgJiZcbiAgICAgICAgKHRoaXMuZmllbGRzW2ZpcmVzdG9yZUZpZWxkTmFtZSBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFRCYXNlPl0gPT09IEZpcmVzdG9yZUZpZWxkVHlwZS5BcnJheSB8fFxuICAgICAgICAgICF0aGlzLmZpZWxkc1tmaXJlc3RvcmVGaWVsZE5hbWUgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxUQmFzZT5dKVxuICAgICAgKVxuICAgICAgICByZXR1cm4gW3doZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgJ2FycmF5LWNvbnRhaW5zJywgb3B0aW9ucy52YWx1ZSldXG4gICAgICBpZiAoaXNPYmplY3Qob3B0aW9ucykgJiYgaXNOaWwob3B0aW9ucz8ub3BlcmF0b3IpICYmIGlzTmlsKG9wdGlvbnM/LnZhbHVlKSkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMob3B0aW9ucykucmVkdWNlKFxuICAgICAgICAgIChxdWVyaWVzLCBrZXkpID0+IFtcbiAgICAgICAgICAgIC4uLnF1ZXJpZXMsXG4gICAgICAgICAgICAuLi50aGlzLmJ1aWxkV2hlcmVTZW50ZW5jZShgJHtmaWVsZE5hbWUudG9TdHJpbmcoKX0uJHtrZXl9YCwgaXM8UmVjb3JkPHN0cmluZywgYW55Pj4ob3B0aW9ucylba2V5XSksXG4gICAgICAgICAgXSxcbiAgICAgICAgICBbXSxcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gW3doZXJlKGZpcmVzdG9yZUZpZWxkTmFtZSwgKG9wdGlvbnM/Lm9wZXJhdG9yIGFzIFdoZXJlRmlsdGVyT3ApIHx8ICc9PScsIG9wdGlvbnM/LnZhbHVlIHx8IG9wdGlvbnMpXVxuICAgIH1cblxuICAgIG1ha2VGaXJlc3RvcmVPcmRlckJ5ID0gKFxuICAgICAgZmlsdGVyczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4sXG4gICAgICBmaWVsZHNUb09yZGVyQnk/OiBSZXBvc2l0b3J5T3JkZXJCeTxUQmFzZT4sXG4gICAgKTogUXVlcnlDb25zdHJhaW50W10gPT4ge1xuICAgICAgY29uc3Qgb3JkZXJCeUtleXMgPSBPYmplY3Qua2V5cyhmaWVsZHNUb09yZGVyQnkgfHwge30pXG5cbiAgICAgIGlmICghb3JkZXJCeUtleXMubGVuZ3RoKSByZXR1cm4gW11cblxuICAgICAgY29uc3QgZmlsdGVyc0tleXNXaXRoVW5vcmRlcmVkID0gT2JqZWN0LmtleXMoZmlsdGVycyB8fCB7fSkuZmlsdGVyKFxuICAgICAgICAoZmlsdGVyS2V5KSA9PiAhb3JkZXJCeUtleXMuaW5jbHVkZXMoZmlsdGVyS2V5KSxcbiAgICAgIClcblxuICAgICAgaWYgKGZpbHRlcnNLZXlzV2l0aFVub3JkZXJlZC5sZW5ndGgpXG4gICAgICAgIGZpbHRlcnNLZXlzV2l0aFVub3JkZXJlZC5mb3JFYWNoKFxuICAgICAgICAgIChmaWx0ZXJLZXkpID0+XG4gICAgICAgICAgICAoZmllbGRzVG9PcmRlckJ5ID0ge1xuICAgICAgICAgICAgICAuLi4oIVtXaGVyZS5FUVVBTFNdLmluY2x1ZGVzKFxuICAgICAgICAgICAgICAgIGlzPFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+Pj4oXG4gICAgICAgICAgICAgICAgICBmaWx0ZXJzW2ZpbHRlcktleSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSxcbiAgICAgICAgICAgICAgICApLm9wZXJhdG9yLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgPyB7IFtmaWx0ZXJLZXldOiAnYXNjJyB9XG4gICAgICAgICAgICAgICAgOiB7fSksXG4gICAgICAgICAgICAgIC4uLmZpZWxkc1RvT3JkZXJCeSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhmaWVsZHNUb09yZGVyQnkpLm1hcCgoZmllbGROYW1lKSA9PlxuICAgICAgICBvcmRlckJ5KGZpZWxkTmFtZSwgZmllbGRzVG9PcmRlckJ5W2ZpZWxkTmFtZSBhcyBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+XSksXG4gICAgICApXG4gICAgfVxuXG4gICAgYXN5bmMgZGVmaW5lTGltaXRzKFxuICAgICAgZmlsdGVyczogUmVwb3NpdG9yeUZpbmRGaWVsdGVyczxUQmFzZT4sXG4gICAgICBsaW1pdHM6IFJlcG9zaXRvcnlMaW1pdE9wdGlvbnM8VEJhc2U+LFxuICAgICk6IFByb21pc2U8UXVlcnlDb25zdHJhaW50W10+IHtcbiAgICAgIGNvbnN0IHF1ZXJpZXMgPSBbXVxuXG4gICAgICBpZiAobGltaXRzPy5vZmZzZXQpIHtcbiAgICAgICAgaWYgKHRoaXMubW9kZWwuaXNNb2RlbChsaW1pdHMub2Zmc2V0KSlcbiAgICAgICAgICBxdWVyaWVzLnB1c2goXG4gICAgICAgICAgICBzdGFydEFmdGVyKFxuICAgICAgICAgICAgICBhd2FpdCBnZXREb2MoXG4gICAgICAgICAgICAgICAgZG9jKFxuICAgICAgICAgICAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckZpbmQoZmlsdGVycykpLFxuICAgICAgICAgICAgICAgICAgbGltaXRzLm9mZnNldC5pZGVudGlmaWVyW2xpbWl0cy5vZmZzZXQuaWRlbnRpZmllcnNGaWVsZHM/LnNoaWZ0KCldLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIClcbiAgICAgICAgZWxzZSBpZiAoaXNOdW1iZXIobGltaXRzLm9mZnNldCkgfHwgaXNTdHJpbmcobGltaXRzLm9mZnNldCkpIHF1ZXJpZXMucHVzaChzdGFydEF0KGxpbWl0cy5vZmZzZXQpKVxuICAgICAgfVxuICAgICAgaWYgKGxpbWl0cz8ubGltaXQpIHF1ZXJpZXMucHVzaChsaW1pdChsaW1pdHMubGltaXQpKVxuXG4gICAgICByZXR1cm4gcXVlcmllc1xuICAgIH1cblxuICAgIGNhbGN1bGF0ZUNvdW50KGRhdGE6IFRCYXNlW10sIGxpbWl0czogUmVwb3NpdG9yeUxpbWl0T3B0aW9uczxUQmFzZT4pOiBudW1iZXIge1xuICAgICAgaWYgKGRhdGEubGVuZ3RoIDw9IDApIHJldHVybiAwXG4gICAgICBpZiAoZGF0YS5sZW5ndGggPCBsaW1pdHM/LmxpbWl0KSByZXR1cm4gZGF0YS5sZW5ndGhcblxuICAgICAgcmV0dXJuIEluZmluaXR5XG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
@@ -25,9 +25,15 @@ export const withFirestore = (MixinBase) => {
25
25
  }), {});
26
26
  };
27
27
  return class extends MixinBase {
28
- constructor() {
29
- super(...arguments);
28
+ constructor(...params) {
29
+ const options = params[0];
30
+ super(...params);
30
31
  this.collectionName = '';
32
+ this.firestore = options.firestore;
33
+ this.collectionName = options.collectionName;
34
+ this.model = options.model;
35
+ this.fields = options.fields;
36
+ this.interceptors = options.interceptors;
31
37
  }
32
38
  collection(path) {
33
39
  return collection(this.firestore, path || this.collectionName).withConverter(this.buildModelInstance());
@@ -54,4 +60,4 @@ export const withFirestore = (MixinBase) => {
54
60
  }
55
61
  };
56
62
  };
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maXJlc3RvcmUubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbWl4aW5zL3dpdGgtZmlyZXN0b3JlLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVFLE1BQU0sb0JBQW9CLENBQUE7QUFZcEgsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQzNCLFNBQVksRUFDc0MsRUFBRTtJQUNwRCxNQUFNLGtCQUFrQixHQUFHLENBQUMsSUFBUyxFQUFXLEVBQUUsQ0FDaEQsSUFBSTtRQUNKLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDcEIsT0FBTyxJQUFJLEtBQUssUUFBUTtRQUN4QixJQUFJLEVBQUUsV0FBVyxDQUFDLElBQUksS0FBSyxXQUFXO1FBQ3RDLENBQUMsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLENBQUE7SUFDdEIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBZSxFQUF1QixFQUFFO1FBQ25FLElBQUksSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJLEtBQUssV0FBVztZQUFFLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1FBQ2hFLElBQUksSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxTQUFTLElBQUksSUFBSTtZQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUMvRixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUVuRyxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUMsQ0FBQTtJQUNELE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxJQUF5QixFQUEwRCxFQUFFO1FBQ2xILE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQzdCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoQixHQUFHLE1BQU07WUFDVCxDQUFDLEdBQUcsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDbEMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDbEMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUMxQixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUMzRyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUM7U0FDN0IsQ0FBQyxFQUNGLEVBQTRELENBQzdELENBQUE7SUFDSCxDQUFDLENBQUE7SUFFRCxPQUFPLEtBQU0sU0FBUSxTQUFTO1FBQXZCOztZQUVMLG1CQUFjLEdBQVcsRUFBRSxDQUFBO1FBa0M3QixDQUFDO1FBOUJDLFVBQVUsQ0FBQyxJQUFhO1lBQ3RCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQTtRQUN6RyxDQUFDO1FBRUQsa0JBQWtCO1lBSWhCLE9BQU87Z0JBQ0wsV0FBVyxFQUFFLENBQUMsSUFBVyxFQUFnQixFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDbkYsYUFBYSxFQUFFLENBQUMsSUFBa0MsRUFBUyxFQUFFO29CQUMzRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7b0JBQ3hCLElBQUksVUFBVSxHQUEyRCxJQUFJLENBQUE7b0JBRTdFLElBQUk7d0JBQ0YsTUFBTSxHQUFHLEdBQUcsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFBO3dCQUUzQixVQUFVLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBRXhDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLFVBQVUsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUE7cUJBQ3hEO29CQUFDLE9BQU8sS0FBSyxFQUFFO3dCQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTt3QkFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO3dCQUNoRCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO3dCQUVwQixNQUFNLEtBQUssQ0FBQTtxQkFDWjtnQkFDSCxDQUFDO2FBQ0YsQ0FBQTtRQUNILENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29sbGVjdGlvbiwgQ29sbGVjdGlvblJlZmVyZW5jZSwgRG9jdW1lbnREYXRhLCBGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHtcbiAgQmFzZU1vZGVsQnVpbGRlcixcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbCxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVGaWVsZFR5cGUgfSBmcm9tICcuLi9lbnVtcydcbmltcG9ydCB7IEZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICcuLi90eXBlcydcblxuZXhwb3J0IGNvbnN0IHdpdGhGaXJlc3RvcmUgPSA8VEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIFQgZXh0ZW5kcyBNaXhpbkN0b3IgPSBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IFQsXG4pOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4sIHVua25vd25bXT4gPT4ge1xuICBjb25zdCBpc09iamVjdHNBbmROb0RhdGUgPSAoZGF0YTogYW55KTogYm9vbGVhbiA9PlxuICAgIGRhdGEgJiZcbiAgICAhQXJyYXkuaXNBcnJheShkYXRhKSAmJlxuICAgIHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JyAmJlxuICAgIGRhdGE/LmNvbnN0cnVjdG9yLm5hbWUgIT09ICdUaW1lc3RhbXAnICYmXG4gICAgISgnc2Vjb25kcycgaW4gZGF0YSlcbiAgY29uc3QgYmluZERhdGUgPSAoZGF0YTogYW55LCBrZXlOYW1lOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0+IHtcbiAgICBpZiAoZGF0YT8uY29uc3RydWN0b3IubmFtZSA9PT0gJ1RpbWVzdGFtcCcpIHJldHVybiBkYXRhLnRvRGF0ZSgpXG4gICAgaWYgKGRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnICYmICdzZWNvbmRzJyBpbiBkYXRhKSByZXR1cm4gbmV3IERhdGUoZGF0YS5zZWNvbmRzICogMTAwMClcbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdudW1iZXInICYmIFsnY3JlYXRlZEF0JywgJ3VwZGF0ZWRBdCddLmluY2x1ZGVzKGtleU5hbWUpKSByZXR1cm4gbmV3IERhdGUoZGF0YSlcblxuICAgIHJldHVybiBkYXRhXG4gIH1cbiAgY29uc3QgYmluZEFsbERhdGVGcm9tT2JqZWN0ID0gKGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbDxUQmFzZT4gPT4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhkYXRhKS5yZWR1Y2UoXG4gICAgICAob2JqZWN0LCBrZXkpID0+ICh7XG4gICAgICAgIC4uLm9iamVjdCxcbiAgICAgICAgW2tleV06IGlzT2JqZWN0c0FuZE5vRGF0ZShkYXRhW2tleV0pXG4gICAgICAgICAgPyBiaW5kQWxsRGF0ZUZyb21PYmplY3QoZGF0YVtrZXldKVxuICAgICAgICAgIDogQXJyYXkuaXNBcnJheShkYXRhW2tleV0pXG4gICAgICAgICAgPyBkYXRhW2tleV0ubWFwKChlbGVtZW50OiBhbnkpID0+IChpc09iamVjdHNBbmROb0RhdGUoZWxlbWVudCkgPyBiaW5kQWxsRGF0ZUZyb21PYmplY3QoZWxlbWVudCkgOiBlbGVtZW50KSlcbiAgICAgICAgICA6IGJpbmREYXRlKGRhdGFba2V5XSwga2V5KSxcbiAgICAgIH0pLFxuICAgICAge30gYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllc1dpdGhOb1BhcnRpYWw8VEJhc2U+LFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBjbGFzcyBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICByZWFkb25seSBmaXJlc3RvcmU/OiBGaXJlc3RvcmVcbiAgICBjb2xsZWN0aW9uTmFtZTogc3RyaW5nID0gJydcbiAgICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxUQmFzZT5cbiAgICBmaWVsZHM6IFJlY29yZDxOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPFRCYXNlPiwgRmlyZXN0b3JlRmllbGRUeXBlPlxuXG4gICAgY29sbGVjdGlvbihwYXRoPzogc3RyaW5nKTogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4ge1xuICAgICAgcmV0dXJuIGNvbGxlY3Rpb24odGhpcy5maXJlc3RvcmUsIHBhdGggfHwgdGhpcy5jb2xsZWN0aW9uTmFtZSkud2l0aENvbnZlcnRlcih0aGlzLmJ1aWxkTW9kZWxJbnN0YW5jZSgpKVxuICAgIH1cblxuICAgIGJ1aWxkTW9kZWxJbnN0YW5jZSgpOiB7XG4gICAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IFRCYXNlKSA9PiBEb2N1bWVudERhdGFcbiAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VEJhc2U+KSA9PiBUQmFzZVxuICAgIH0ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9GaXJlc3RvcmU6IChkYXRhOiBUQmFzZSk6IERvY3VtZW50RGF0YSA9PiAoZGF0YT8udG9QbGFpbiA/IGRhdGEudG9QbGFpbigpIDogZGF0YSksXG4gICAgICAgIGZyb21GaXJlc3RvcmU6IChzbmFwOiBRdWVyeURvY3VtZW50U25hcHNob3Q8VEJhc2U+KTogVEJhc2UgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBzbmFwLmRhdGEoKVxuICAgICAgICAgIGxldCBiaW5kZWREYXRhOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbDxUQmFzZT4gPSBudWxsXG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgaWRzID0geyBpZDogc25hcC5pZCB9XG5cbiAgICAgICAgICAgIGJpbmRlZERhdGEgPSBiaW5kQWxsRGF0ZUZyb21PYmplY3QoZGF0YSlcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZSh7IC4uLmJpbmRlZERhdGEsIC4uLmlkcyB9KVxuICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmluZm8oJ2lkJywgc25hcC5pZClcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnZGF0YScsIEpTT04uc3RyaW5naWZ5KGJpbmRlZERhdGEpKVxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcblxuICAgICAgICAgICAgdGhyb3cgZXJyb3JcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maXJlc3RvcmUubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvbWl4aW5zL3dpdGgtZmlyZXN0b3JlLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVFLE1BQU0sb0JBQW9CLENBQUE7QUFvQnBILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUMzQixTQUFZLEVBQytGLEVBQUU7SUFDN0csTUFBTSxrQkFBa0IsR0FBRyxDQUFDLElBQVMsRUFBVyxFQUFFLENBQ2hELElBQUk7UUFDSixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ3BCLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFDeEIsSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJLEtBQUssV0FBVztRQUN0QyxDQUFDLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFBO0lBQ3RCLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBUyxFQUFFLE9BQWUsRUFBdUIsRUFBRTtRQUNuRSxJQUFJLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSSxLQUFLLFdBQVc7WUFBRSxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtRQUNoRSxJQUFJLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksU0FBUyxJQUFJLElBQUk7WUFBRSxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUE7UUFDL0YsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFbkcsT0FBTyxJQUFJLENBQUE7SUFD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QyxDQUFBO3dCQUNoRCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO3dCQUVwQixNQUFNLEtBQUssQ0FBQTtxQkFDWjtnQkFDSCxDQUFDO2FBQ0YsQ0FBQTtRQUNILENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29sbGVjdGlvbiwgQ29sbGVjdGlvblJlZmVyZW5jZSwgRG9jdW1lbnREYXRhLCBGaXJlc3RvcmUsIFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdCB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHtcbiAgQmFzZU1vZGVsQnVpbGRlcixcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzV2l0aE5vUGFydGlhbCxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVGaWVsZFR5cGUgfSBmcm9tICcuLi9lbnVtcydcbmltcG9ydCB7IEZpcmVzdG9yZUludGVyY2VwdG9ycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4gPSB7XG4gIGZpcmVzdG9yZTogRmlyZXN0b3JlXG4gIGNvbGxlY3Rpb25OYW1lOiBzdHJpbmdcbiAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8TW9kZWw+XG4gIGZpZWxkcz86IFBhcnRpYWw8UmVjb3JkPE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TW9kZWw+LCBGaXJlc3RvcmVGaWVsZFR5cGU+PlxuICBpbnRlcmNlcHRvcnM/OiBGaXJlc3RvcmVJbnRlcmNlcHRvcnM8TW9kZWw+XG59XG5cbmV4cG9ydCBjb25zdCB3aXRoRmlyZXN0b3JlID0gPFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLCBUIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yPihcbiAgTWl4aW5CYXNlOiBULFxuKTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPGFueVtdLCBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxUQmFzZT5bXT4+ID0+IHtcbiAgY29uc3QgaXNPYmplY3RzQW5kTm9EYXRlID0gKGRhdGE6IGFueSk6IGJvb2xlYW4gPT5cbiAgICBkYXRhICYmXG4gICAgIUFycmF5LmlzQXJyYXkoZGF0YSkgJiZcbiAgICB0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcgJiZcbiAgICBkYXRhPy5jb25zdHJ1Y3Rvci5uYW1lICE9PSAnVGltZXN0YW1wJyAmJlxuICAgICEoJ3NlY29uZHMnIGluIGRhdGEpXG4gIGNvbnN0IGJpbmREYXRlID0gKGRhdGE6IGFueSwga2V5TmFtZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgYW55PiA9PiB7XG4gICAgaWYgKGRhdGE/LmNvbnN0cnVjdG9yLm5hbWUgPT09ICdUaW1lc3RhbXAnKSByZXR1cm4gZGF0YS50b0RhdGUoKVxuICAgIGlmIChkYXRhICYmIHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JyAmJiAnc2Vjb25kcycgaW4gZGF0YSkgcmV0dXJuIG5ldyBEYXRlKGRhdGEuc2Vjb25kcyAqIDEwMDApXG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSAnbnVtYmVyJyAmJiBbJ2NyZWF0ZWRBdCcsICd1cGRhdGVkQXQnXS5pbmNsdWRlcyhrZXlOYW1lKSkgcmV0dXJuIG5ldyBEYXRlKGRhdGEpXG5cbiAgICByZXR1cm4gZGF0YVxuICB9XG4gIGNvbnN0IGJpbmRBbGxEYXRlRnJvbU9iamVjdCA9IChkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllc1dpdGhOb1BhcnRpYWw8VEJhc2U+ID0+IHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKFxuICAgICAgKG9iamVjdCwga2V5KSA9PiAoe1xuICAgICAgICAuLi5vYmplY3QsXG4gICAgICAgIFtrZXldOiBpc09iamVjdHNBbmROb0RhdGUoZGF0YVtrZXldKVxuICAgICAgICAgID8gYmluZEFsbERhdGVGcm9tT2JqZWN0KGRhdGFba2V5XSlcbiAgICAgICAgICA6IEFycmF5LmlzQXJyYXkoZGF0YVtrZXldKVxuICAgICAgICAgID8gZGF0YVtrZXldLm1hcCgoZWxlbWVudDogYW55KSA9PiAoaXNPYmplY3RzQW5kTm9EYXRlKGVsZW1lbnQpID8gYmluZEFsbERhdGVGcm9tT2JqZWN0KGVsZW1lbnQpIDogZWxlbWVudCkpXG4gICAgICAgICAgOiBiaW5kRGF0ZShkYXRhW2tleV0sIGtleSksXG4gICAgICB9KSxcbiAgICAgIHt9IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXNXaXRoTm9QYXJ0aWFsPFRCYXNlPixcbiAgICApXG4gIH1cblxuICByZXR1cm4gY2xhc3MgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgY29sbGVjdGlvbk5hbWU6IHN0cmluZyA9ICcnXG4gICAgbW9kZWw6IEJhc2VNb2RlbEJ1aWxkZXI8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxUQmFzZT4gPSBwYXJhbXNbMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLmZpcmVzdG9yZSA9IG9wdGlvbnMuZmlyZXN0b3JlXG4gICAgICB0aGlzLmNvbGxlY3Rpb25OYW1lID0gb3B0aW9ucy5jb2xsZWN0aW9uTmFtZVxuICAgICAgdGhpcy5tb2RlbCA9IG9wdGlvbnMubW9kZWxcbiAgICAgIHRoaXMuZmllbGRzID0gb3B0aW9ucy5maWVsZHNcbiAgICAgIHRoaXMuaW50ZXJjZXB0b3JzID0gb3B0aW9ucy5pbnRlcmNlcHRvcnNcbiAgICB9XG5cbiAgICBjb2xsZWN0aW9uKHBhdGg/OiBzdHJpbmcpOiBDb2xsZWN0aW9uUmVmZXJlbmNlPFRCYXNlPiB7XG4gICAgICByZXR1cm4gY29sbGVjdGlvbih0aGlzLmZpcmVzdG9yZSwgcGF0aCB8fCB0aGlzLmNvbGxlY3Rpb25OYW1lKS53aXRoQ29udmVydGVyKHRoaXMuYnVpbGRNb2RlbEluc3RhbmNlKCkpXG4gICAgfVxuXG4gICAgYnVpbGRNb2RlbEluc3RhbmNlKCk6IHtcbiAgICAgIHRvRmlyZXN0b3JlOiAoZGF0YTogVEJhc2UpID0+IERvY3VtZW50RGF0YVxuICAgICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUQmFzZT4pID0+IFRCYXNlXG4gICAgfSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b0ZpcmVzdG9yZTogKGRhdGE6IFRCYXNlKTogRG9jdW1lbnREYXRhID0+IChkYXRhPy50b1BsYWluID8gZGF0YS50b1BsYWluKCkgOiBkYXRhKSxcbiAgICAgICAgZnJvbUZpcmVzdG9yZTogKHNuYXA6IFF1ZXJ5RG9jdW1lbnRTbmFwc2hvdDxUQmFzZT4pOiBUQmFzZSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHNuYXAuZGF0YSgpXG4gICAgICAgICAgbGV0IGJpbmRlZERhdGE6IE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXNXaXRoTm9QYXJ0aWFsPFRCYXNlPiA9IG51bGxcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBpZHMgPSB7IGlkOiBzbmFwLmlkIH1cblxuICAgICAgICAgICAgYmluZGVkRGF0YSA9IGJpbmRBbGxEYXRlRnJvbU9iamVjdChkYXRhKVxuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHsgLi4uYmluZGVkRGF0YSwgLi4uaWRzIH0pXG4gICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnaWQnLCBzbmFwLmlkKVxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdkYXRhJywgSlNPTi5zdHJpbmdpZnkoYmluZGVkRGF0YSkpXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKVxuXG4gICAgICAgICAgICB0aHJvdyBlcnJvclxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -4,11 +4,14 @@ import { isNil } from '../../../../utils';
4
4
  export const withGetFirestore = (MixinBase) => {
5
5
  return class GetFirestore extends MixinBase {
6
6
  async get(identifiers) {
7
- const docRef = await getDoc(doc(await this.collection(this.buildCollectionPathForGet(identifiers)), Object.values(identifiers).shift().toString()));
7
+ const instance = this.model.toInstance(this.model.identifiersFields.reduce((acc, field) => ({ ...acc, [field]: identifiers[field] }), {}));
8
+ const intercepted = await this.interceptors?.request?.({ instance });
9
+ const builded = intercepted?.instance || instance;
10
+ const docRef = await getDoc(doc(await this.collection(this.buildCollectionPathForGet(identifiers)), Object.values(builded.identifier).shift().toString()));
8
11
  const data = docRef.data();
9
12
  if (isNil(data))
10
13
  throw new NotFoundError(`Document ${JSON.stringify(identifiers)} not found`);
11
- return data;
14
+ return this.interceptors?.response?.(data, intercepted) || data;
12
15
  }
13
16
  buildCollectionPathForGet(identifiers) {
14
17
  return this.isSubCollection(this)
@@ -17,4 +20,4 @@ export const withGetFirestore = (MixinBase) => {
17
20
  }
18
21
  };
19
22
  };
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWdldC1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUdoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbEQsT0FBTyxFQUFFLEtBQUssRUFBcUMsTUFBTSxtQkFBbUIsQ0FBQTtBQUc1RSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUk5QixTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLFlBQWEsU0FBUSxTQUFTO1FBQ3pDLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBeUM7WUFDakQsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQ3pCLEdBQUcsQ0FDRCxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ2xFLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQzlDLENBQ0YsQ0FBQTtZQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUUxQixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxZQUFZLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFBO1lBRTdGLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUVELHlCQUF5QixDQUFDLFdBQXlDO1lBQ2pFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNyRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQTtRQUN6QixDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRvYywgZ2V0RG9jIH0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQgeyBHZXRSZXBvc2l0b3J5LCBNb2RlbEJhc2VTdHJ1Y3R1cmUsIE5vbkZ1bmN0aW9uUHJvcGVydGllcyB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBpc05pbCwgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCB3aXRoR2V0RmlyZXN0b3JlID0gPFxuICBUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnM+ICYgVE1peGluQmFzZSxcbik6IE1peGluQ3RvcjxcbiAgRmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBHZXRSZXBvc2l0b3J5PFRCYXNlPiAmIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e31bXSwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PlxuPiA9PiB7XG4gIHJldHVybiBjbGFzcyBHZXRGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHZXRSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgZ2V0KGlkZW50aWZpZXJzOiBOb25GdW5jdGlvblByb3BlcnRpZXM8VEJhc2U+KTogUHJvbWlzZTxUQmFzZT4ge1xuICAgICAgY29uc3QgZG9jUmVmID0gYXdhaXQgZ2V0RG9jKFxuICAgICAgICBkb2MoXG4gICAgICAgICAgYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckdldChpZGVudGlmaWVycykpLFxuICAgICAgICAgIE9iamVjdC52YWx1ZXMoaWRlbnRpZmllcnMpLnNoaWZ0KCkudG9TdHJpbmcoKSxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGRhdGEgPSBkb2NSZWYuZGF0YSgpXG5cbiAgICAgIGlmIChpc05pbChkYXRhKSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYERvY3VtZW50ICR7SlNPTi5zdHJpbmdpZnkoaWRlbnRpZmllcnMpfSBub3QgZm91bmRgKVxuXG4gICAgICByZXR1cm4gZGF0YVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JHZXQoaWRlbnRpZmllcnM6IE5vbkZ1bmN0aW9uUHJvcGVydGllczxUQmFzZT4pOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaXNTdWJDb2xsZWN0aW9uKHRoaXMpXG4gICAgICAgID8gYCR7dGhpcy5wYXJlbnRSZXBvc2l0b3J5LmNvbGxlY3Rpb25OYW1lfS8ke2lkZW50aWZpZXJzW3RoaXMucGFyZW50SWRGaWVsZF19LyR7dGhpcy5jb2xsZWN0aW9uTmFtZX1gXG4gICAgICAgIDogdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLWdldC1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUdoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbEQsT0FBTyxFQUFFLEtBQUssRUFBcUMsTUFBTSxtQkFBbUIsQ0FBQTtBQUc1RSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUk5QixTQUFnRixFQUloRixFQUFFO0lBQ0YsT0FBTyxNQUFNLFlBQWEsU0FBUSxTQUFTO1FBQ3pDLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBeUM7WUFDakQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUNqQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLFdBQVcsQ0FBQyxLQUFzQyxDQUFDLEVBQUUsQ0FBQyxFQUMxRixFQUFFLENBQ0gsQ0FDRixDQUFBO1lBQ0QsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQTtZQUNwRSxNQUFNLE9BQU8sR0FBRyxXQUFXLEVBQUUsUUFBUSxJQUFJLFFBQVEsQ0FBQTtZQUNqRCxNQUFNLE1BQU0sR0FBRyxNQUFNLE1BQU0sQ0FDekIsR0FBRyxDQUNELE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxDQUFDLENBQUMsRUFDbEUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQ3JELENBQ0YsQ0FBQTtZQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUUxQixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxZQUFZLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFBO1lBRTdGLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLElBQUksSUFBSSxDQUFBO1FBQ2pFLENBQUM7UUFFRCx5QkFBeUIsQ0FBQyxXQUF5QztZQUNqRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDckcsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekIsQ0FBQztLQUNLLENBQUE7QUFDVixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkb2MsIGdldERvYyB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgR2V0UmVwb3NpdG9yeSwgSWRlbnRpZmllcnNNb2RlbCwgTW9kZWxCYXNlU3RydWN0dXJlLCBOb25GdW5jdGlvblByb3BlcnRpZXMgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBOb3RGb3VuZEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aEdldEZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgR2V0UmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9W10sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICByZXR1cm4gY2xhc3MgR2V0RmlyZXN0b3JlIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgR2V0UmVwb3NpdG9yeTxUQmFzZT4ge1xuICAgIGFzeW5jIGdldChpZGVudGlmaWVyczogTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzPFRCYXNlPik6IFByb21pc2U8VEJhc2U+IHtcbiAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5tb2RlbC50b0luc3RhbmNlKFxuICAgICAgICB0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzLnJlZHVjZShcbiAgICAgICAgICAoYWNjLCBmaWVsZCkgPT4gKHsgLi4uYWNjLCBbZmllbGRdOiBpZGVudGlmaWVyc1tmaWVsZCBhcyBrZXlvZiBJZGVudGlmaWVyc01vZGVsPFRCYXNlPl0gfSksXG4gICAgICAgICAge30sXG4gICAgICAgICksXG4gICAgICApXG4gICAgICBjb25zdCBpbnRlcmNlcHRlZCA9IGF3YWl0IHRoaXMuaW50ZXJjZXB0b3JzPy5yZXF1ZXN0Py4oeyBpbnN0YW5jZSB9KVxuICAgICAgY29uc3QgYnVpbGRlZCA9IGludGVyY2VwdGVkPy5pbnN0YW5jZSB8fCBpbnN0YW5jZVxuICAgICAgY29uc3QgZG9jUmVmID0gYXdhaXQgZ2V0RG9jKFxuICAgICAgICBkb2MoXG4gICAgICAgICAgYXdhaXQgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvckdldChpZGVudGlmaWVycykpLFxuICAgICAgICAgIE9iamVjdC52YWx1ZXMoYnVpbGRlZC5pZGVudGlmaWVyKS5zaGlmdCgpLnRvU3RyaW5nKCksXG4gICAgICAgICksXG4gICAgICApXG4gICAgICBjb25zdCBkYXRhID0gZG9jUmVmLmRhdGEoKVxuXG4gICAgICBpZiAoaXNOaWwoZGF0YSkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGBEb2N1bWVudCAke0pTT04uc3RyaW5naWZ5KGlkZW50aWZpZXJzKX0gbm90IGZvdW5kYClcblxuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJjZXB0b3JzPy5yZXNwb25zZT8uKGRhdGEsIGludGVyY2VwdGVkKSB8fCBkYXRhXG4gICAgfVxuXG4gICAgYnVpbGRDb2xsZWN0aW9uUGF0aEZvckdldChpZGVudGlmaWVyczogTm9uRnVuY3Rpb25Qcm9wZXJ0aWVzPFRCYXNlPik6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5pc1N1YkNvbGxlY3Rpb24odGhpcylcbiAgICAgICAgPyBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7aWRlbnRpZmllcnNbdGhpcy5wYXJlbnRJZEZpZWxkXX0vJHt0aGlzLmNvbGxlY3Rpb25OYW1lfWBcbiAgICAgICAgOiB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
@@ -1,11 +1,13 @@
1
1
  export const withSubCollection = (MixinBase, ParentModel) => {
2
2
  return class SubCollectionMix extends MixinBase {
3
- constructor(...args) {
4
- super(args);
3
+ constructor(...params) {
4
+ const options = params[0];
5
+ super(...params);
6
+ this.parentIdField = options.parentIdField;
5
7
  }
6
8
  collection(path) {
7
9
  return super.collection(path);
8
10
  }
9
11
  };
10
12
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUE2RCxFQUM3RCxXQUFrQyxFQU9sQyxFQUFFO0lBQ0YsT0FBTyxNQUFNLGdCQUNYLFNBQVEsU0FBUztRQU1qQixZQUFZLEdBQUcsSUFBZ0I7WUFDN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2IsQ0FBQztRQUVRLFVBQVUsQ0FBQyxJQUFhO1lBQy9CLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMvQixDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25SZWZlcmVuY2UgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7IElkZW50aWZpZXJzTW9kZWwsIE1vZGVsQmFzZVN0cnVjdHVyZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSwgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgY29uc3Qgd2l0aFN1YkNvbGxlY3Rpb24gPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUQmFzZVBhcmVudCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPj4gJiBUTWl4aW5CYXNlLFxuICBQYXJlbnRNb2RlbDogbmV3ICgpID0+IFRCYXNlUGFyZW50LFxuKTogTWl4aW5DdG9yPFxuICBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmXG4gICAgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICZcbiAgICBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5PFRCYXNlLCBJbnN0YW5jZVR5cGU8dHlwZW9mIFBhcmVudE1vZGVsPj4gJlxuICAgIEZpcmVzdG9yZUhlbHBlcnMsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8e31bXSwgQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFRNaXhpbkJhc2U+PltdXG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIFN1YkNvbGxlY3Rpb25NaXhcbiAgICBleHRlbmRzIE1peGluQmFzZVxuICAgIGltcGxlbWVudHMgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxUQmFzZSwgSW5zdGFuY2VUeXBlPHR5cGVvZiBQYXJlbnRNb2RlbD4+XG4gIHtcbiAgICByZWFkb25seSBwYXJlbnRSZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PEluc3RhbmNlVHlwZTx0eXBlb2YgUGFyZW50TW9kZWw+PlxuICAgIHBhcmVudElkRmllbGQ6IGtleW9mIElkZW50aWZpZXJzTW9kZWw8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBBcnJheTxhbnk+KSB7XG4gICAgICBzdXBlcihhcmdzKVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNvbGxlY3Rpb24ocGF0aD86IHN0cmluZyk6IENvbGxlY3Rpb25SZWZlcmVuY2U8VEJhc2U+IHtcbiAgICAgIHJldHVybiBzdXBlci5jb2xsZWN0aW9uKHBhdGgpXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9taXhpbnMvd2l0aC1zdWItY29sbGVjdGlvbi5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUsvQixTQUE2RCxFQUM3RCxXQUFrQyxFQVVsQyxFQUFFO0lBQ0YsT0FBTyxNQUFNLGdCQUNYLFNBQVEsU0FBUztRQU1qQixZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBbUQsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBRXpFLEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1lBRWhCLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQTtRQUM1QyxDQUFDO1FBRVEsVUFBVSxDQUFDLElBQWE7WUFDL0IsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQy9CLENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvblJlZmVyZW5jZSB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgSWRlbnRpZmllcnNNb2RlbCwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5LCBGaXJlc3RvcmVTdWJSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcyB9IGZyb20gJy4vd2l0aC1maXJlc3RvcmUubWl4aW4nXG5cbmV4cG9ydCB0eXBlIEZpcmVzdG9yZVN1YkNvbGxlY3Rpb25Db25zdHJ1Y3RvclBhcmFtczxUQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4gPSB7XG4gIHBhcmVudElkRmllbGQ6IGtleW9mIElkZW50aWZpZXJzTW9kZWw8VEJhc2U+XG59XG5cbmV4cG9ydCBjb25zdCB3aXRoU3ViQ29sbGVjdGlvbiA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRCYXNlUGFyZW50IGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+PiAmIFRNaXhpbkJhc2UsXG4gIFBhcmVudE1vZGVsOiBuZXcgKCkgPT4gVEJhc2VQYXJlbnQsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICZcbiAgICBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJlxuICAgIEZpcmVzdG9yZVN1YlJlcG9zaXRvcnk8VEJhc2UsIEluc3RhbmNlVHlwZTx0eXBlb2YgUGFyZW50TW9kZWw+PiAmXG4gICAgRmlyZXN0b3JlSGVscGVycyxcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczxcbiAgICBbRmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXM8VEJhc2U+ICYgRmlyZXN0b3JlU3ViQ29sbGVjdGlvbkNvbnN0cnVjdG9yUGFyYW1zPFRCYXNlPiwgLi4uYW55W11dLFxuICAgIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPlxuICA+XG4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIFN1YkNvbGxlY3Rpb25NaXhcbiAgICBleHRlbmRzIE1peGluQmFzZVxuICAgIGltcGxlbWVudHMgRmlyZXN0b3JlU3ViUmVwb3NpdG9yeTxUQmFzZSwgSW5zdGFuY2VUeXBlPHR5cGVvZiBQYXJlbnRNb2RlbD4+XG4gIHtcbiAgICByZWFkb25seSBwYXJlbnRSZXBvc2l0b3J5OiBGaXJlc3RvcmVSZXBvc2l0b3J5PEluc3RhbmNlVHlwZTx0eXBlb2YgUGFyZW50TW9kZWw+PlxuICAgIHBhcmVudElkRmllbGQ6IGtleW9mIElkZW50aWZpZXJzTW9kZWw8VEJhc2U+XG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBGaXJlc3RvcmVTdWJDb2xsZWN0aW9uQ29uc3RydWN0b3JQYXJhbXM8VEJhc2U+ID0gcGFyYW1zWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy5wYXJlbnRJZEZpZWxkID0gb3B0aW9ucy5wYXJlbnRJZEZpZWxkXG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY29sbGVjdGlvbihwYXRoPzogc3RyaW5nKTogQ29sbGVjdGlvblJlZmVyZW5jZTxUQmFzZT4ge1xuICAgICAgcmV0dXJuIHN1cGVyLmNvbGxlY3Rpb24ocGF0aClcbiAgICB9XG4gIH0gYXMgYW55XG59XG4iXX0=
@@ -25,9 +25,12 @@ export const withUpdateFirestore = (MixinBase) => {
25
25
  const model = new this.model();
26
26
  const keyField = model.identifiersFields.shift();
27
27
  const docRef = doc(this.collection(this.buildCollectionPathForUpdate(data)), getValueFromParams(data, keyField).toString());
28
- await setDoc(docRef, this.paramsToPlain(data), { merge: true });
29
- const docData = await getDoc(docRef);
30
- return docData.data();
28
+ const plainFromData = this.model.toInstance(this.paramsToPlain(data));
29
+ const intercepted = await this.interceptors?.request?.({ instance: plainFromData });
30
+ const builded = intercepted?.instance || plainFromData;
31
+ await setDoc(docRef, builded.toPlain(), { merge: true });
32
+ const docData = await getDoc(docRef).then((doc) => doc.data());
33
+ return this.interceptors?.response?.(docData, intercepted) || docData;
31
34
  }
32
35
  buildCollectionPathForUpdate(identifiers) {
33
36
  return this.isSubCollection(this)
@@ -45,4 +48,4 @@ export const withUpdateFirestore = (MixinBase) => {
45
48
  }
46
49
  };
47
50
  };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLXVwZGF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBYyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFMUcsT0FBTyxFQUlMLG1CQUFtQixHQUdwQixNQUFNLG9CQUFvQixDQUFBO0FBQzNCLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUErQyxNQUFNLG1CQUFtQixDQUFBO0FBTzFGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBSWpDLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixNQUFNLGtCQUFrQixHQUFHLENBQ3pCLE1BQXFDLEVBQ3JDLEtBQXNDLEVBQ1ksRUFBRSxDQUNwRCxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQWtFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztRQUMvRixDQUFDLENBQUMsRUFBRSxDQUFtRCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckUsQ0FBQyxDQUFDLEVBQUUsQ0FBa0UsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFBO0lBQ3ZHLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUE2QixFQUF3QixFQUFFO1FBQy9FLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7WUFBRSxPQUFPLE9BQU8sQ0FBQTtRQUMxQyxJQUFJLE9BQU8sRUFBRSxNQUFNLEtBQUssbUJBQW1CLENBQUMsWUFBWTtZQUFFLE9BQU8sV0FBVyxFQUFFLENBQUE7UUFDOUUsSUFBSSxPQUFPLEVBQUUsTUFBTSxLQUFLLG1CQUFtQixDQUFDLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQTtRQUM3RCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ2pDLElBQUksT0FBTyxFQUFFLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxLQUFLO2dCQUFFLE9BQU8sVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3RGLElBQUksT0FBTyxFQUFFLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxNQUFNO2dCQUFFLE9BQU8sV0FBVyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQ3pGO1FBRUQsT0FBTyxPQUFPLEVBQUUsS0FBSyxDQUFBO0lBQ3ZCLENBQUMsQ0FBQTtJQUVELE9BQU8sTUFBTSxlQUFnQixTQUFRLFNBQVM7UUFDNUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFtQztZQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtZQUM5QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDaEQsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUN4RCxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQzlDLENBQUE7WUFFRCxNQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1lBRS9ELE1BQU0sT0FBTyxHQUFHLE1BQU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1lBRXBDLE9BQU8sT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ3ZCLENBQUM7UUFFRCw0QkFBNEIsQ0FBQyxXQUEwQztZQUNyRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQzVGLElBQUksQ0FBQyxjQUNQLEVBQUU7Z0JBQ0osQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUE7UUFDekIsQ0FBQztRQUVELGFBQWEsQ0FBQyxNQUFxQztZQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFBO1lBRXhCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQUUsT0FBTyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7WUFFbEQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDL0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQixHQUFHLElBQUk7Z0JBQ1AsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUF1QixFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQ3ZGLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxVQUFtQixDQUFDLENBQUMsQ0FDOUM7YUFDRixDQUFDLEVBQ0YsRUFBRSxDQUNILENBQUE7UUFDSCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFycmF5UmVtb3ZlLCBhcnJheVVuaW9uLCBkZWxldGVGaWVsZCwgZG9jLCBGaWVsZFZhbHVlLCBnZXREb2MsIHNldERvYyB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvblByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlVcGRhdGVQYXJhbXMsXG4gIFVwZGF0ZU9wdGlvbkFjdGlvbnMsXG4gIFVwZGF0ZU9wdGlvbnMsXG4gIFVwZGF0ZVJlcG9zaXRvcnksXG59IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IGlzLCBpc05pbCwgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtcywgTWl4aW5DdG9yLCBQcm9wVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgRmlyZXN0b3JlSGVscGVycywgRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSBVcGRhdGVGaXJlc3RvcmVSZXBvc2l0b3J5VHlwZTxNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZT4gPSBVcGRhdGVSZXBvc2l0b3J5PE1CYXNlPiAmIHtcbiAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUGFydGlhbDxNQmFzZT5cbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVGaXJlc3RvcmUgPSA8XG4gIFRCYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgRmlyZXN0b3JlSGVscGVycz4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBGaXJlc3RvcmVSZXBvc2l0b3J5PFRCYXNlPiAmIFVwZGF0ZVJlcG9zaXRvcnk8VEJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+ICYgRmlyZXN0b3JlSGVscGVycyxcbiAgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczx7fVtdLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgY29uc3QgZ2V0VmFsdWVGcm9tUGFyYW1zID0gKFxuICAgIHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4sXG4gICAgZmllbGQ6IE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4sXG4gICk6IFByb3BUeXBlPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+PiA9PlxuICAgIChpc05pbChpczxVcGRhdGVPcHRpb25zPFByb3BUeXBlPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+Pj4+KHBhcmFtc1tmaWVsZF0pPy52YWx1ZSlcbiAgICAgID8gaXM8UHJvcFR5cGU8VEJhc2UsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4+PihwYXJhbXNbZmllbGRdKVxuICAgICAgOiBpczxVcGRhdGVPcHRpb25zPFByb3BUeXBlPFRCYXNlLCBOb25GdW5jdGlvblByb3BlcnR5TmFtZXM8VEJhc2U+Pj4+KHBhcmFtc1tmaWVsZF0pLnZhbHVlKSB8fCBudWxsXG4gIGNvbnN0IGdldFZhbHVlQnlBY3Rpb24gPSAob3B0aW9uczogVXBkYXRlT3B0aW9uczxUQmFzZT4pOiBGaWVsZFZhbHVlIHwgdW5rbm93biA9PiB7XG4gICAgaWYgKGlzTmlsKG9wdGlvbnM/LmFjdGlvbikpIHJldHVybiBvcHRpb25zXG4gICAgaWYgKG9wdGlvbnM/LmFjdGlvbiA9PT0gVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkVfRklFTEQpIHJldHVybiBkZWxldGVGaWVsZCgpXG4gICAgaWYgKG9wdGlvbnM/LmFjdGlvbiA9PT0gVXBkYXRlT3B0aW9uQWN0aW9ucy5OVUxMKSByZXR1cm4gbnVsbFxuICAgIGlmIChBcnJheS5pc0FycmF5KG9wdGlvbnM/LnZhbHVlKSkge1xuICAgICAgaWYgKG9wdGlvbnM/LmFjdGlvbiA9PT0gVXBkYXRlT3B0aW9uQWN0aW9ucy5NRVJHRSkgcmV0dXJuIGFycmF5VW5pb24oLi4ub3B0aW9ucy52YWx1ZSlcbiAgICAgIGlmIChvcHRpb25zPy5hY3Rpb24gPT09IFVwZGF0ZU9wdGlvbkFjdGlvbnMuUkVNT1ZFKSByZXR1cm4gYXJyYXlSZW1vdmUoLi4ub3B0aW9ucy52YWx1ZSlcbiAgICB9XG5cbiAgICByZXR1cm4gb3B0aW9ucz8udmFsdWVcbiAgfVxuXG4gIHJldHVybiBjbGFzcyBVcGRhdGVGaXJlc3RvcmUgZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBVcGRhdGVSZXBvc2l0b3J5PFRCYXNlPiB7XG4gICAgYXN5bmMgdXBkYXRlKGRhdGE6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogUHJvbWlzZTxUQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSBuZXcgdGhpcy5tb2RlbCgpXG4gICAgICBjb25zdCBrZXlGaWVsZCA9IG1vZGVsLmlkZW50aWZpZXJzRmllbGRzLnNoaWZ0KClcbiAgICAgIGNvbnN0IGRvY1JlZiA9IGRvYyhcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuYnVpbGRDb2xsZWN0aW9uUGF0aEZvclVwZGF0ZShkYXRhKSksXG4gICAgICAgIGdldFZhbHVlRnJvbVBhcmFtcyhkYXRhLCBrZXlGaWVsZCkudG9TdHJpbmcoKSxcbiAgICAgIClcblxuICAgICAgYXdhaXQgc2V0RG9jKGRvY1JlZiwgdGhpcy5wYXJhbXNUb1BsYWluKGRhdGEpLCB7IG1lcmdlOiB0cnVlIH0pXG5cbiAgICAgIGNvbnN0IGRvY0RhdGEgPSBhd2FpdCBnZXREb2MoZG9jUmVmKVxuXG4gICAgICByZXR1cm4gZG9jRGF0YS5kYXRhKClcbiAgICB9XG5cbiAgICBidWlsZENvbGxlY3Rpb25QYXRoRm9yVXBkYXRlKGlkZW50aWZpZXJzOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPFRCYXNlPik6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5pc1N1YkNvbGxlY3Rpb24odGhpcylcbiAgICAgICAgPyBgJHt0aGlzLnBhcmVudFJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7Z2V0VmFsdWVGcm9tUGFyYW1zKGlkZW50aWZpZXJzLCB0aGlzLnBhcmVudElkRmllbGQpfS8ke1xuICAgICAgICAgICAgdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgICAgICAgIH1gXG4gICAgICAgIDogdGhpcy5jb2xsZWN0aW9uTmFtZVxuICAgIH1cblxuICAgIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPFRCYXNlPik6IFBhcnRpYWw8VEJhc2U+IHtcbiAgICAgIGNvbnN0IG1vZGVsID0gdGhpcy5tb2RlbFxuXG4gICAgICBpZiAobW9kZWwuaXNNb2RlbChwYXJhbXMpKSByZXR1cm4gcGFyYW1zLnRvUGxhaW4oKVxuXG4gICAgICByZXR1cm4gT2JqZWN0LmtleXMocGFyYW1zKS5yZWR1Y2UoXG4gICAgICAgIChkYXRhLCBjdXJyZW50S2V5KSA9PiAoe1xuICAgICAgICAgIC4uLmRhdGEsXG4gICAgICAgICAgLi4uKCh2YWx1ZSk6IFJlY29yZDxzdHJpbmcsIGFueT4gPT4gKHZhbHVlID09PSB1bmRlZmluZWQgPyB7fSA6IHsgW2N1cnJlbnRLZXldOiB2YWx1ZSB9KSkoXG4gICAgICAgICAgICBnZXRWYWx1ZUJ5QWN0aW9uKHBhcmFtc1tjdXJyZW50S2V5IGFzIG5ldmVyXSksXG4gICAgICAgICAgKSxcbiAgICAgICAgfSksXG4gICAgICAgIHt9LFxuICAgICAgKVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtZmlyZXN0b3JlLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL21peGlucy93aXRoLXVwZGF0ZS1maXJlc3RvcmUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBYyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFMUcsT0FBTyxFQUlMLG1CQUFtQixHQUdwQixNQUFNLG9CQUFvQixDQUFBO0FBQzNCLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUErQyxNQUFNLG1CQUFtQixDQUFBO0FBTzFGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBSWpDLFNBQWdGLEVBSWhGLEVBQUU7SUFDRixNQUFNLGtCQUFrQixHQUFHLENBQ3pCLE1BQXFDLEVBQ3JDLEtBQXNDLEVBQ1ksRUFBRSxDQUNwRCxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQWtFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztRQUMvRixDQUFDLENBQUMsRUFBRSxDQUFtRCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckUsQ0FBQyxDQUFDLEVBQUUsQ0FBa0UsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFBO0lBQ3ZHLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUE2QixFQUF3QixFQUFFO1FBQy9FLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7WUFBRSxPQUFPLE9BQU8sQ0FBQTtRQUMxQyxJQUFJLE9BQU8sRUFBRSxNQUFNLEtBQUssbUJBQW1CLENBQUMsWUFBWTtZQUFFLE9BQU8sV0FBVyxFQUFFLENBQUE7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QUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDdkYsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFVBQW1CLENBQUMsQ0FBQyxDQUM5QzthQUNGLENBQUMsRUFDRixFQUFFLENBQ0gsQ0FBQTtRQUNILENBQUM7S0FDSyxDQUFBO0FBQ1YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXJyYXlSZW1vdmUsIGFycmF5VW5pb24sIGRlbGV0ZUZpZWxkLCBkb2MsIEZpZWxkVmFsdWUsIGdldERvYywgc2V0RG9jIH0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQge1xuICBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lcyxcbiAgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtcyxcbiAgVXBkYXRlT3B0aW9uQWN0aW9ucyxcbiAgVXBkYXRlT3B0aW9ucyxcbiAgVXBkYXRlUmVwb3NpdG9yeSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgaXMsIGlzTmlsLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IsIFByb3BUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBGaXJlc3RvcmVIZWxwZXJzLCBGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZpcmVzdG9yZVJlcG9zaXRvcnlUeXBlPE1CYXNlIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPiA9IFVwZGF0ZVJlcG9zaXRvcnk8TUJhc2U+ICYge1xuICBwYXJhbXNUb1BsYWluKHBhcmFtczogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT4pOiBQYXJ0aWFsPE1CYXNlPlxufVxuXG5leHBvcnQgY29uc3Qgd2l0aFVwZGF0ZUZpcmVzdG9yZSA9IDxcbiAgVEJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8RmlyZXN0b3JlUmVwb3NpdG9yeTxUQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzPiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEZpcmVzdG9yZVJlcG9zaXRvcnk8VEJhc2U+ICYgVXBkYXRlUmVwb3NpdG9yeTxUQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4gJiBGaXJlc3RvcmVIZWxwZXJzLFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPHt9W10sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBnZXRWYWx1ZUZyb21QYXJhbXMgPSAoXG4gICAgcGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPFRCYXNlPixcbiAgICBmaWVsZDogTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPixcbiAgKTogUHJvcFR5cGU8VEJhc2UsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4+ID0+XG4gICAgKGlzTmlsKGlzPFVwZGF0ZU9wdGlvbnM8UHJvcFR5cGU8VEJhc2UsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4+Pj4ocGFyYW1zW2ZpZWxkXSk/LnZhbHVlKVxuICAgICAgPyBpczxQcm9wVHlwZTxUQmFzZSwgTm9uRnVuY3Rpb25Qcm9wZXJ0eU5hbWVzPFRCYXNlPj4+KHBhcmFtc1tmaWVsZF0pXG4gICAgICA6IGlzPFVwZGF0ZU9wdGlvbnM8UHJvcFR5cGU8VEJhc2UsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUQmFzZT4+Pj4ocGFyYW1zW2ZpZWxkXSkudmFsdWUpIHx8IG51bGxcbiAgY29uc3QgZ2V0VmFsdWVCeUFjdGlvbiA9IChvcHRpb25zOiBVcGRhdGVPcHRpb25zPFRCYXNlPik6IEZpZWxkVmFsdWUgfCB1bmtub3duID0+IHtcbiAgICBpZiAoaXNOaWwob3B0aW9ucz8uYWN0aW9uKSkgcmV0dXJuIG9wdGlvbnNcbiAgICBpZiAob3B0aW9ucz8uYWN0aW9uID09PSBVcGRhdGVPcHRpb25BY3Rpb25zLlJFTU9WRV9GSUVMRCkgcmV0dXJuIGRlbGV0ZUZpZWxkKClcbiAgICBpZiAob3B0aW9ucz8uYWN0aW9uID09PSBVcGRhdGVPcHRpb25BY3Rpb25zLk5VTEwpIHJldHVybiBudWxsXG4gICAgaWYgKEFycmF5LmlzQXJyYXkob3B0aW9ucz8udmFsdWUpKSB7XG4gICAgICBpZiAob3B0aW9ucz8uYWN0aW9uID09PSBVcGRhdGVPcHRpb25BY3Rpb25zLk1FUkdFKSByZXR1cm4gYXJyYXlVbmlvbiguLi5vcHRpb25zLnZhbHVlKVxuICAgICAgaWYgKG9wdGlvbnM/LmFjdGlvbiA9PT0gVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkUpIHJldHVybiBhcnJheVJlbW92ZSguLi5vcHRpb25zLnZhbHVlKVxuICAgIH1cblxuICAgIHJldHVybiBvcHRpb25zPy52YWx1ZVxuICB9XG5cbiAgcmV0dXJuIGNsYXNzIFVwZGF0ZUZpcmVzdG9yZSBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIFVwZGF0ZVJlcG9zaXRvcnk8VEJhc2U+IHtcbiAgICBhc3luYyB1cGRhdGUoZGF0YTogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxUQmFzZT4pOiBQcm9taXNlPFRCYXNlPiB7XG4gICAgICBjb25zdCBtb2RlbCA9IG5ldyB0aGlzLm1vZGVsKClcbiAgICAgIGNvbnN0IGtleUZpZWxkID0gbW9kZWwuaWRlbnRpZmllcnNGaWVsZHMuc2hpZnQoKVxuICAgICAgY29uc3QgZG9jUmVmID0gZG9jKFxuICAgICAgICB0aGlzLmNvbGxlY3Rpb24odGhpcy5idWlsZENvbGxlY3Rpb25QYXRoRm9yVXBkYXRlKGRhdGEpKSxcbiAgICAgICAgZ2V0VmFsdWVGcm9tUGFyYW1zKGRhdGEsIGtleUZpZWxkKS50b1N0cmluZygpLFxuICAgICAgKVxuICAgICAgY29uc3QgcGxhaW5Gcm9tRGF0YSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZSh0aGlzLnBhcmFtc1RvUGxhaW4oZGF0YSkpXG4gICAgICBjb25zdCBpbnRlcmNlcHRlZCA9IGF3YWl0IHRoaXMuaW50ZXJjZXB0b3JzPy5yZXF1ZXN0Py4oeyBpbnN0YW5jZTogcGxhaW5Gcm9tRGF0YSB9KVxuICAgICAgY29uc3QgYnVpbGRlZCA9IGludGVyY2VwdGVkPy5pbnN0YW5jZSB8fCBwbGFpbkZyb21EYXRhXG5cbiAgICAgIGF3YWl0IHNldERvYyhkb2NSZWYsIGJ1aWxkZWQudG9QbGFpbigpLCB7IG1lcmdlOiB0cnVlIH0pXG5cbiAgICAgIGNvbnN0IGRvY0RhdGEgPSBhd2FpdCBnZXREb2MoZG9jUmVmKS50aGVuKChkb2MpID0+IGRvYy5kYXRhKCkpXG5cbiAgICAgIHJldHVybiB0aGlzLmludGVyY2VwdG9ycz8ucmVzcG9uc2U/Lihkb2NEYXRhLCBpbnRlcmNlcHRlZCkgfHwgZG9jRGF0YVxuICAgIH1cblxuICAgIGJ1aWxkQ29sbGVjdGlvblBhdGhGb3JVcGRhdGUoaWRlbnRpZmllcnM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmlzU3ViQ29sbGVjdGlvbih0aGlzKVxuICAgICAgICA/IGAke3RoaXMucGFyZW50UmVwb3NpdG9yeS5jb2xsZWN0aW9uTmFtZX0vJHtnZXRWYWx1ZUZyb21QYXJhbXMoaWRlbnRpZmllcnMsIHRoaXMucGFyZW50SWRGaWVsZCl9LyR7XG4gICAgICAgICAgICB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgICAgICAgfWBcbiAgICAgICAgOiB0aGlzLmNvbGxlY3Rpb25OYW1lXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8VEJhc2U+KTogUGFydGlhbDxUQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7XG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAuLi4oKHZhbHVlKTogUmVjb3JkPHN0cmluZywgYW55PiA9PiAodmFsdWUgPT09IHVuZGVmaW5lZCA/IHt9IDogeyBbY3VycmVudEtleV06IHZhbHVlIH0pKShcbiAgICAgICAgICAgIGdldFZhbHVlQnlBY3Rpb24ocGFyYW1zW2N1cnJlbnRLZXkgYXMgbmV2ZXJdKSxcbiAgICAgICAgICApLFxuICAgICAgICB9KSxcbiAgICAgICAge30sXG4gICAgICApXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
@@ -4,11 +4,13 @@ import { Base, chunk, is } from '../../../../../utils';
4
4
  import { DuplicatedResultsError, NotFoundError, RequiredArgumentError } from '../../../../../errors';
5
5
  import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
6
6
  export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
7
- constructor(firestore) {
8
- super();
9
- this.firestore = firestore;
10
- this.collectionName = 'categories';
11
- this.model = Category;
7
+ constructor({ firestore, interceptors }) {
8
+ super({
9
+ firestore,
10
+ collectionName: 'categories',
11
+ model: Category,
12
+ interceptors,
13
+ });
12
14
  }
13
15
  async getCategoryBySlug(slug, shop) {
14
16
  const categoryDocs = await getDocs(query(this.collection(this.collectionName), where('slug', '==', slug), where('shop', '==', shop), where('published', '==', true)));
@@ -51,4 +53,4 @@ export class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(w
51
53
  return is(products);
52
54
  }
53
55
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUU3RixPQUFPLEVBQUUsUUFBUSxFQUFzQyxNQUFNLHVCQUF1QixDQUFBO0FBQ3BGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXRELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU1RSxNQUFNLE9BQU8sMkJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFXLElBQUksQ0FBQyxDQUFDLENBQUM7SUFHckUsWUFBOEIsU0FBb0I7UUFDaEQsS0FBSyxFQUFFLENBQUE7UUFEcUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUVoRCxJQUFJLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FBQTtRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQTtJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQVksRUFBRSxJQUFXO1FBQy9DLE1BQU0sWUFBWSxHQUFHLE1BQU0sT0FBTyxDQUNoQyxLQUFLLENBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVB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QUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUE7WUFFMUYsSUFBSSxXQUFXLENBQUMsS0FBSztnQkFBRSxTQUFRO1lBRS9CLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDbkM7UUFFRCxPQUFPLEVBQUUsQ0FBWSxRQUFRLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaXJlc3RvcmUsIGdldERvY3MsIGxpbWl0LCBxdWVyeSwgUXVlcnlDb25zdHJhaW50LCB3aGVyZSB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgQ2F0ZWdvcnksIENhdGVnb3J5UmVwb3NpdG9yeSwgUHJvZHVjdCwgU2hvcHMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlLCBjaHVuaywgaXMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcblxuaW1wb3J0IHsgRHVwbGljYXRlZFJlc3VsdHNFcnJvciwgTm90Rm91bmRFcnJvciwgUmVxdWlyZWRBcmd1bWVudEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZXJyb3JzJ1xuaW1wb3J0IHsgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxDYXRlZ29yeT4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIENhdGVnb3J5UmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3RvcihvdmVycmlkZSByZWFkb25seSBmaXJlc3RvcmU6IEZpcmVzdG9yZSkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLmNvbGxlY3Rpb25OYW1lID0gJ2NhdGVnb3JpZXMnXG4gICAgdGhpcy5tb2RlbCA9IENhdGVnb3J5XG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yeUJ5U2x1ZyhzbHVnOiBzdHJpbmcsIHNob3A6IFNob3BzKTogUHJvbWlzZTxDYXRlZ29yeT4ge1xuICAgIGNvbnN0IGNhdGVnb3J5RG9jcyA9IGF3YWl0IGdldERvY3MoXG4gICAgICBxdWVyeShcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uKHRoaXMuY29sbGVjdGlvbk5hbWUpLFxuICAgICAgICB3aGVyZSgnc2x1ZycsICc9PScsIHNsdWcpLFxuICAgICAgICB3aGVyZSgnc2hvcCcsICc9PScsIHNob3ApLFxuICAgICAgICB3aGVyZSgncHVibGlzaGVkJywgJz09JywgdHJ1ZSksXG4gICAgICApLFxuICAgIClcblxuICAgIGlmIChjYXRlZ29yeURvY3Muc2l6ZSA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXG4gICAgaWYgKGNhdGVnb3J5RG9jcy5lbXB0eSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYERvY3VtZW50IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXG5cbiAgICByZXR1cm4gY2F0ZWdvcnlEb2NzLmRvY3NbMF0uZGF0YSgpXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yaWVzRm9ySG9tZShjYXRlZ29yeUlkczogc3RyaW5nW10sIGxpbWl0ID0gNCk6IFByb21pc2U8eyBjYXRlZ29yeTogQ2F0ZWdvcnk7IHByb2R1Y3RzOiBQcm9kdWN0W10gfVtdPiB7XG4gICAgY29uc3QgY2F0ZWdvcnlTbmFwID0gYXdhaXQgZ2V0RG9jcyhcbiAgICAgIHF1ZXJ5KFxuICAgICAgICB0aGlzLmNvbGxlY3Rpb24odGhpcy5jb2xsZWN0aW9uTmFtZSksXG4gICAgICAgIHdoZXJlKCdpZCcsICdpbicsIGNhdGVnb3J5SWRzLmZpbHRlcihCb29sZWFuKSksXG4gICAgICAgIHdoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKSxcbiAgICAgICksXG4gICAgKVxuXG4gICAgaWYgKGNhdGVnb3J5U25hcC5lbXB0eSkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoJ0NhdGVnb3JpZXMgbm90IGZvdW5kJylcblxuICAgIGNvbnN0IGNhdGVnb3JpZXMgPSBjYXRlZ29yeVNuYXAuZG9jcy5tYXAoKGRvYykgPT4gZG9jLmRhdGEoKSlcbiAgICBjb25zdCBob21lU2VjdGlvbnMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIGNhdGVnb3JpZXMubWFwKGFzeW5jIChjYXRlZ29yeSkgPT4gKHtcbiAgICAgICAgY2F0ZWdvcnksXG4gICAgICAgIHByb2R1Y3RzOiBhd2FpdCB0aGlzLm1vdW50Q2F0ZWdvcnkoY2F0ZWdvcnksIHsgbGltaXQsIGhhc1N0b2NrOiB0cnVlIH0pLFxuICAgICAgfSkpLFxuICAgIClcblxuICAgIHJldHVybiBob21lU2VjdGlvbnNcbiAgfVxuXG4gIGFzeW5jIG1vdW50Q2F0ZWdvcnkoY2F0ZWdvcnk6IENhdGVnb3J5LCBvcHRpb25zPzogeyBsaW1pdD86IG51bWJlcjsgaGFzU3RvY2s/OiBib29sZWFuIH0pOiBQcm9taXNlPFByb2R1Y3RbXT4ge1xuICAgIGlmICghY2F0ZWdvcnkucHJvZHVjdHMpIHRocm93IG5ldyBSZXF1aXJlZEFyZ3VtZW50RXJyb3IoWydDYXRlZ29yeSBwcm9kdWN0cyBpcyBlbXB0eSddKVxuXG4gICAgY29uc3QgY2h1bmtzID0gY2h1bmsoY2F0ZWdvcnkucHJvZHVjdHMsIDEwKVxuICAgIGNvbnN0IHByb2R1Y3RzID0gW11cbiAgICBjb25zdCB3aGVyZXM6IFF1ZXJ5Q29uc3RyYWludFtdID0gW11cblxuICAgIGZvciAoY29uc3QgcHJvZHVjdElkcyBvZiBjaHVua3MpIHtcbiAgICAgIGlmIChvcHRpb25zPy5saW1pdCAmJiBwcm9kdWN0cy5sZW5ndGggPj0gb3B0aW9ucz8ubGltaXQpIGJyZWFrXG5cbiAgICAgIHdoZXJlcy5wdXNoKHdoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKSwgd2hlcmUoJ2lkJywgJ2luJywgcHJvZHVjdElkcykpXG5cbiAgICAgIGlmIChvcHRpb25zPy5oYXNTdG9jaykgd2hlcmVzLnB1c2god2hlcmUoJ3N0b2NrLnF1YW50aXR5JywgJz4nLCAwKSlcbiAgICAgIGlmIChvcHRpb25zPy5saW1pdCkgd2hlcmVzLnB1c2gobGltaXQob3B0aW9ucz8ubGltaXQpKVxuXG4gICAgICBjb25zdCBwcm9kdWN0U25hcCA9IGF3YWl0IGdldERvY3MocXVlcnkodGhpcy5jb2xsZWN0aW9uKCdwcm9kdWN0c0VycFZpdHJpbmUnKSwgLi4ud2hlcmVzKSlcblxuICAgICAgaWYgKHByb2R1Y3RTbmFwLmVtcHR5KSBjb250aW51ZVxuXG4gICAgICBwcm9kdWN0cy5wdXNoKC4uLnByb2R1Y3RTbmFwLmRvY3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIGlzPFByb2R1Y3RbXT4ocHJvZHVjdHMpXG4gIH1cbn1cbiJdfQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvY2F0ZWdvcnktZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUVsRixPQUFPLEVBQUUsUUFBUSxFQUFzQyxNQUFNLHVCQUF1QixDQUFBO0FBQ3BGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXRELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwRyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLDJCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3JFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUE0RTtRQUMvRyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFlBQVk7WUFDNUIsS0FBSyxFQUFFLFFBQVE7WUFDZixZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFZLEVBQUUsSUFBVztRQUMvQyxNQUFNLFlBQVksR0FBRyxNQUFNLE9BQU8sQ0FDaEMsS0FBSyxDQUNILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUNwQyxLQUFL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LEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFBO1lBRTFGLElBQUksV0FBVyxDQUFDLEtBQUs7Z0JBQUUsU0FBUTtZQUUvQixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ25DO1FBRUQsT0FBTyxFQUFFLENBQVksUUFBUSxDQUFDLENBQUE7SUFDaEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0RG9jcywgbGltaXQsIHF1ZXJ5LCBRdWVyeUNvbnN0cmFpbnQsIHdoZXJlIH0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQgeyBDYXRlZ29yeSwgQ2F0ZWdvcnlSZXBvc2l0b3J5LCBQcm9kdWN0LCBTaG9wcyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEJhc2UsIGNodW5rLCBpcyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yLCBOb3RGb3VuZEVycm9yLCBSZXF1aXJlZEFyZ3VtZW50RXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxDYXRlZ29yeT4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIENhdGVnb3J5UmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3Rvcih7IGZpcmVzdG9yZSwgaW50ZXJjZXB0b3JzIH06IFBpY2s8RmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXM8Q2F0ZWdvcnk+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPikge1xuICAgIHN1cGVyKHtcbiAgICAgIGZpcmVzdG9yZSxcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAnY2F0ZWdvcmllcycsXG4gICAgICBtb2RlbDogQ2F0ZWdvcnksXG4gICAgICBpbnRlcmNlcHRvcnMsXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIGdldENhdGVnb3J5QnlTbHVnKHNsdWc6IHN0cmluZywgc2hvcDogU2hvcHMpOiBQcm9taXNlPENhdGVnb3J5PiB7XG4gICAgY29uc3QgY2F0ZWdvcnlEb2NzID0gYXdhaXQgZ2V0RG9jcyhcbiAgICAgIHF1ZXJ5KFxuICAgICAgICB0aGlzLmNvbGxlY3Rpb24odGhpcy5jb2xsZWN0aW9uTmFtZSksXG4gICAgICAgIHdoZXJlKCdzbHVnJywgJz09Jywgc2x1ZyksXG4gICAgICAgIHdoZXJlKCdzaG9wJywgJz09Jywgc2hvcCksXG4gICAgICAgIHdoZXJlKCdwdWJsaXNoZWQnLCAnPT0nLCB0cnVlKSxcbiAgICAgICksXG4gICAgKVxuXG4gICAgaWYgKGNhdGVnb3J5RG9jcy5zaXplID4gMSkgdGhyb3cgbmV3IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IoJ1F1ZXJ5IHJldHVybmVkIGR1cGxpY2F0ZWQgdmFsdWVzJylcbiAgICBpZiAoY2F0ZWdvcnlEb2NzLmVtcHR5KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcihgRG9jdW1lbnQgd2l0aCBzbHVnICR7c2x1Z30gbm90IGZvdW5kYClcblxuICAgIHJldHVybiBjYXRlZ29yeURvY3MuZG9jc1swXS5kYXRhKClcbiAgfVxuXG4gIGFzeW5jIGdldENhdGVnb3JpZXNGb3JIb21lKGNhdGVnb3J5SWRzOiBzdHJpbmdbXSwgbGltaXQgPSA0KTogUHJvbWlzZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcbiAgICBjb25zdCBjYXRlZ29yeVNuYXAgPSBhd2FpdCBnZXREb2NzKFxuICAgICAgcXVlcnkoXG4gICAgICAgIHRoaXMuY29sbGVjdGlvbih0aGlzLmNvbGxlY3Rpb25OYW1lKSxcbiAgICAgICAgd2hlcmUoJ2lkJywgJ2luJywgY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pKSxcbiAgICAgICAgd2hlcmUoJ3B1Ymxpc2hlZCcsICc9PScsIHRydWUpLFxuICAgICAgKSxcbiAgICApXG5cbiAgICBpZiAoY2F0ZWdvcnlTbmFwLmVtcHR5KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignQ2F0ZWdvcmllcyBub3QgZm91bmQnKVxuXG4gICAgY29uc3QgY2F0ZWdvcmllcyA9IGNhdGVnb3J5U25hcC5kb2NzLm1hcCgoZG9jKSA9PiBkb2MuZGF0YSgpKVxuICAgIGNvbnN0IGhvbWVTZWN0aW9ucyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgY2F0ZWdvcmllcy5tYXAoYXN5bmMgKGNhdGVnb3J5KSA9PiAoe1xuICAgICAgICBjYXRlZ29yeSxcbiAgICAgICAgcHJvZHVjdHM6IGF3YWl0IHRoaXMubW91bnRDYXRlZ29yeShjYXRlZ29yeSwgeyBsaW1pdCwgaGFzU3RvY2s6IHRydWUgfSksXG4gICAgICB9KSksXG4gICAgKVxuXG4gICAgcmV0dXJuIGhvbWVTZWN0aW9uc1xuICB9XG5cbiAgYXN5bmMgbW91bnRDYXRlZ29yeShjYXRlZ29yeTogQ2F0ZWdvcnksIG9wdGlvbnM/OiB7IGxpbWl0PzogbnVtYmVyOyBoYXNTdG9jaz86IGJvb2xlYW4gfSk6IFByb21pc2U8UHJvZHVjdFtdPiB7XG4gICAgaWYgKCFjYXRlZ29yeS5wcm9kdWN0cykgdGhyb3cgbmV3IFJlcXVpcmVkQXJndW1lbnRFcnJvcihbJ0NhdGVnb3J5IHByb2R1Y3RzIGlzIGVtcHR5J10pXG5cbiAgICBjb25zdCBjaHVua3MgPSBjaHVuayhjYXRlZ29yeS5wcm9kdWN0cywgMTApXG4gICAgY29uc3QgcHJvZHVjdHMgPSBbXVxuICAgIGNvbnN0IHdoZXJlczogUXVlcnlDb25zdHJhaW50W10gPSBbXVxuXG4gICAgZm9yIChjb25zdCBwcm9kdWN0SWRzIG9mIGNodW5rcykge1xuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0ICYmIHByb2R1Y3RzLmxlbmd0aCA+PSBvcHRpb25zPy5saW1pdCkgYnJlYWtcblxuICAgICAgd2hlcmVzLnB1c2god2hlcmUoJ3B1Ymxpc2hlZCcsICc9PScsIHRydWUpLCB3aGVyZSgnaWQnLCAnaW4nLCBwcm9kdWN0SWRzKSlcblxuICAgICAgaWYgKG9wdGlvbnM/Lmhhc1N0b2NrKSB3aGVyZXMucHVzaCh3aGVyZSgnc3RvY2sucXVhbnRpdHknLCAnPicsIDApKVxuICAgICAgaWYgKG9wdGlvbnM/LmxpbWl0KSB3aGVyZXMucHVzaChsaW1pdChvcHRpb25zPy5saW1pdCkpXG5cbiAgICAgIGNvbnN0IHByb2R1Y3RTbmFwID0gYXdhaXQgZ2V0RG9jcyhxdWVyeSh0aGlzLmNvbGxlY3Rpb24oJ3Byb2R1Y3RzRXJwVml0cmluZScpLCAuLi53aGVyZXMpKVxuXG4gICAgICBpZiAocHJvZHVjdFNuYXAuZW1wdHkpIGNvbnRpbnVlXG5cbiAgICAgIHByb2R1Y3RzLnB1c2goLi4ucHJvZHVjdFNuYXAuZG9jcylcbiAgICB9XG5cbiAgICByZXR1cm4gaXM8UHJvZHVjdFtdPihwcm9kdWN0cylcbiAgfVxufVxuIl19
@@ -2,12 +2,14 @@ import { Product, Where } from '../../../../../domain';
2
2
  import { Base } from '../../../../../utils';
3
3
  import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
4
  export class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
- constructor(firestore) {
6
- super();
7
- this.firestore = firestore;
5
+ constructor({ firestore, interceptors }) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'productsErpVitrine',
9
+ model: Product,
10
+ interceptors,
11
+ });
8
12
  this.reviews = {};
9
- this.collectionName = 'productsErpVitrine';
10
- this.model = Product;
11
13
  }
12
14
  async getBySlug(slug) {
13
15
  const result = await this.find({
@@ -43,4 +45,4 @@ export class ProductFirestoreRepository extends withCrudFirestore(withHelpers(wi
43
45
  return this.reviews[status];
44
46
  }
45
47
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQWdFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3BILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUUzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUU1RSxNQUFNLE9BQU8sMEJBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUM7SUFLcEUsWUFBOEIsU0FBb0I7UUFDaEQsS0FBSyxFQUFFLENBQUE7UUFEcUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUYxQyxZQUFPLEdBQWlFLEVBQUUsQ0FBQTtRQUloRixJQUFJLENBQUMsY0FBYyxHQUFHLG9CQUFvQixDQUFBO1FBQzFDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFBO0lBQ3RCLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUyxDQUFDLElBQVk7UUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzdCLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2FBQzlDO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsT0FBTyxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQTBCO1FBQzNDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7UUFFNUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO2dCQUFFLE9BQU07WUFFNUQsTUFBTSxXQUFXLEdBQUc7Z0JBQ2xCLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRTtnQkFDckIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO2dCQUN6QixVQUFVLEVBQUUsT0FBTyxDQUFDLEdBQUc7YUFDeEIsQ0FBQTtZQUVELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQTtZQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO1lBRTFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7b0JBQUUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLENBQUE7Z0JBQzlHLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLO29CQUFFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQyxDQUFBO2dCQUM3RixJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTtvQkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUMsQ0FBQTtnQkFFckYsT0FBTyxNQUFNLENBQUE7WUFDZixDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmVzdG9yZSB9IGZyb20gJ2ZpcmViYXNlL2ZpcmVzdG9yZSdcblxuaW1wb3J0IHsgUHJvZHVjdCwgUHJvZHVjdFJlcG9zaXRvcnksIFJldmlld1N0YXR1c1BhcmFtcywgUmV2aWV3V2l0aFByb2R1Y3REYXRhLCBXaGVyZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcblxuaW1wb3J0IHsgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPFByb2R1Y3Q+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBQcm9kdWN0UmVwb3NpdG9yeVxue1xuICBwcml2YXRlIHJldmlld3M6IFBhcnRpYWw8UmVjb3JkPFJldmlld1N0YXR1c1BhcmFtcywgUmV2aWV3V2l0aFByb2R1Y3REYXRhW10+PiA9IHt9XG5cbiAgY29uc3RydWN0b3Iob3ZlcnJpZGUgcmVhZG9ubHkgZmlyZXN0b3JlOiBGaXJlc3RvcmUpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5jb2xsZWN0aW9uTmFtZSA9ICdwcm9kdWN0c0VycFZpdHJpbmUnXG4gICAgdGhpcy5tb2RlbCA9IFByb2R1Y3RcbiAgfVxuXG4gIGFzeW5jIGdldEJ5U2x1ZyhzbHVnOiBzdHJpbmcpOiBQcm9taXNlPFByb2R1Y3Q+IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmZpbmQoe1xuICAgICAgZmlsdGVyczoge1xuICAgICAgICBzbHVnOiB7IG9wZXJhdG9yOiBXaGVyZS5FUVVBTFMsIHZhbHVlOiBzbHVnIH0sXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICByZXR1cm4gcmVzdWx0Py5kYXRhPy5zaGlmdCgpXG4gIH1cblxuICBhc3luYyBmZXRjaFJldmlld3Moc3RhdHVzOiBSZXZpZXdTdGF0dXNQYXJhbXMpOiBQcm9taXNlPFJldmlld1dpdGhQcm9kdWN0RGF0YVtdPiB7XG4gICAgY29uc3QgeyBkYXRhOiBwcm9kdWN0cyB9ID0gYXdhaXQgdGhpcy5maW5kKClcblxuICAgIHByb2R1Y3RzLmZvckVhY2goKHByb2R1Y3QpID0+IHtcbiAgICAgIGlmIChbdW5kZWZpbmVkLCAwXS5pbmNsdWRlcyhwcm9kdWN0LnJldmlld3M/Lmxlbmd0aCkpIHJldHVyblxuXG4gICAgICBjb25zdCBwcm9kdWN0SW5mbyA9IHtcbiAgICAgICAgcHJvZHVjdElkOiBwcm9kdWN0LmlkLFxuICAgICAgICBwcm9kdWN0TmFtZTogcHJvZHVjdC5uYW1lLFxuICAgICAgICBwcm9kdWN0U2t1OiBwcm9kdWN0LnNrdSxcbiAgICAgIH1cblxuICAgICAgdGhpcy5yZXZpZXdzLnBlbmRpbmcgPSBbXVxuICAgICAgdGhpcy5yZXZpZXdzLmFwcHJvdmVkID0gW11cbiAgICAgIHRoaXMucmV2aWV3cy5yZWplY3RlZCA9IFtdXG5cbiAgICAgIHByb2R1Y3QucmV2aWV3cy5mb3JFYWNoKChyZXZpZXcpID0+IHtcbiAgICAgICAgaWYgKFtudWxsLCB1bmRlZmluZWRdLmluY2x1ZGVzKHJldmlldy5zdGF0dXMpKSByZXR1cm4gdGhpcy5yZXZpZXdzLnBlbmRpbmcucHVzaCh7IC4uLnJldmlldywgLi4ucHJvZHVjdEluZm8gfSlcbiAgICAgICAgaWYgKHJldmlldy5zdGF0dXMgPT09IGZhbHNlKSByZXR1cm4gdGhpcy5yZXZpZXdzLnJlamVjdGVkLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG4gICAgICAgIGlmICghIXJldmlldy5zdGF0dXMpIHJldHVybiB0aGlzLnJldmlld3MuYXBwcm92ZWQucHVzaCh7IC4uLnJldmlldywgLi4ucHJvZHVjdEluZm8gfSlcblxuICAgICAgICByZXR1cm4gcmV2aWV3XG4gICAgICB9KVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpcy5yZXZpZXdzW3N0YXR1c11cbiAgfVxufVxuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2ZpcmViYXNlL2ZpcmVzdG9yZS9yZXBvc2l0b3JpZXMvY2F0YWxvZy9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWdFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3BILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUUzQyxPQUFPLEVBQThCLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEcsTUFBTSxPQUFPLDBCQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBS3BFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUEyRTtRQUM5RyxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLG9CQUFvQjtZQUNwQyxLQUFLLEVBQUUsT0FBTztZQUNkLFlBQVk7U0FDYixDQUFDLENBQUE7UUFSSSxZQUFPLEdBQWlFLEVBQUUsQ0FBQTtJQVNsRixDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFZO1FBQzFCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQztZQUM3QixPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTthQUM5QztTQUNGLENBQUMsQ0FBQTtRQUVGLE9BQU8sTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQTtJQUM5QixDQUFDO0lBRUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUEwQjtRQUMzQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1FBRTVDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUMzQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztnQkFBRSxPQUFNO1lBRTVELE1BQU0sV0FBVyxHQUFHO2dCQUNsQixTQUFTLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ3JCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtnQkFDekIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxHQUFHO2FBQ3hCLENBQUE7WUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUE7WUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO1lBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQTtZQUUxQixPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO29CQUFFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQyxDQUFBO2dCQUM5RyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssS0FBSztvQkFBRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUMsQ0FBQTtnQkFDN0YsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU07b0JBQUUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQU0sRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLENBQUE7Z0JBRXJGLE9BQU8sTUFBTSxDQUFBO1lBQ2YsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtRQUVGLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9kdWN0LCBQcm9kdWN0UmVwb3NpdG9yeSwgUmV2aWV3U3RhdHVzUGFyYW1zLCBSZXZpZXdXaXRoUHJvZHVjdERhdGEsIFdoZXJlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcywgd2l0aENydWRGaXJlc3RvcmUsIHdpdGhGaXJlc3RvcmUsIHdpdGhIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5leHBvcnQgY2xhc3MgUHJvZHVjdEZpcmVzdG9yZVJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEZpcmVzdG9yZSh3aXRoSGVscGVycyh3aXRoRmlyZXN0b3JlPFByb2R1Y3Q+KEJhc2UpKSlcbiAgaW1wbGVtZW50cyBQcm9kdWN0UmVwb3NpdG9yeVxue1xuICBwcml2YXRlIHJldmlld3M6IFBhcnRpYWw8UmVjb3JkPFJldmlld1N0YXR1c1BhcmFtcywgUmV2aWV3V2l0aFByb2R1Y3REYXRhW10+PiA9IHt9XG5cbiAgY29uc3RydWN0b3IoeyBmaXJlc3RvcmUsIGludGVyY2VwdG9ycyB9OiBQaWNrPEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zPFByb2R1Y3Q+LCAnZmlyZXN0b3JlJyB8ICdpbnRlcmNlcHRvcnMnPikge1xuICAgIHN1cGVyKHtcbiAgICAgIGZpcmVzdG9yZSxcbiAgICAgIGNvbGxlY3Rpb25OYW1lOiAncHJvZHVjdHNFcnBWaXRyaW5lJyxcbiAgICAgIG1vZGVsOiBQcm9kdWN0LFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBnZXRCeVNsdWcoc2x1Zzogc3RyaW5nKTogUHJvbWlzZTxQcm9kdWN0PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgc2x1ZzogeyBvcGVyYXRvcjogV2hlcmUuRVFVQUxTLCB2YWx1ZTogc2x1ZyB9LFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHJlc3VsdD8uZGF0YT8uc2hpZnQoKVxuICB9XG5cbiAgYXN5bmMgZmV0Y2hSZXZpZXdzKHN0YXR1czogUmV2aWV3U3RhdHVzUGFyYW1zKTogUHJvbWlzZTxSZXZpZXdXaXRoUHJvZHVjdERhdGFbXT4ge1xuICAgIGNvbnN0IHsgZGF0YTogcHJvZHVjdHMgfSA9IGF3YWl0IHRoaXMuZmluZCgpXG5cbiAgICBwcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XG4gICAgICBpZiAoW3VuZGVmaW5lZCwgMF0uaW5jbHVkZXMocHJvZHVjdC5yZXZpZXdzPy5sZW5ndGgpKSByZXR1cm5cblxuICAgICAgY29uc3QgcHJvZHVjdEluZm8gPSB7XG4gICAgICAgIHByb2R1Y3RJZDogcHJvZHVjdC5pZCxcbiAgICAgICAgcHJvZHVjdE5hbWU6IHByb2R1Y3QubmFtZSxcbiAgICAgICAgcHJvZHVjdFNrdTogcHJvZHVjdC5za3UsXG4gICAgICB9XG5cbiAgICAgIHRoaXMucmV2aWV3cy5wZW5kaW5nID0gW11cbiAgICAgIHRoaXMucmV2aWV3cy5hcHByb3ZlZCA9IFtdXG4gICAgICB0aGlzLnJldmlld3MucmVqZWN0ZWQgPSBbXVxuXG4gICAgICBwcm9kdWN0LnJldmlld3MuZm9yRWFjaCgocmV2aWV3KSA9PiB7XG4gICAgICAgIGlmIChbbnVsbCwgdW5kZWZpbmVkXS5pbmNsdWRlcyhyZXZpZXcuc3RhdHVzKSkgcmV0dXJuIHRoaXMucmV2aWV3cy5wZW5kaW5nLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG4gICAgICAgIGlmIChyZXZpZXcuc3RhdHVzID09PSBmYWxzZSkgcmV0dXJuIHRoaXMucmV2aWV3cy5yZWplY3RlZC5wdXNoKHsgLi4ucmV2aWV3LCAuLi5wcm9kdWN0SW5mbyB9KVxuICAgICAgICBpZiAoISFyZXZpZXcuc3RhdHVzKSByZXR1cm4gdGhpcy5yZXZpZXdzLmFwcHJvdmVkLnB1c2goeyAuLi5yZXZpZXcsIC4uLnByb2R1Y3RJbmZvIH0pXG5cbiAgICAgICAgcmV0dXJuIHJldmlld1xuICAgICAgfSlcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXMucmV2aWV3c1tzdGF0dXNdXG4gIH1cbn1cbiJdfQ==
@@ -1,14 +1,16 @@
1
1
  import { Product, Variant } from '../../../../../domain';
2
2
  import { Base } from '../../../../../utils';
3
- import { withCrudFirestore, withFirestore, withHelpers, withSubCollection } from '../../mixins';
3
+ import { withCrudFirestore, withFirestore, withHelpers, withSubCollection, } from '../../mixins';
4
4
  export class ProductVariantFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Product) {
5
- constructor(firestore, parentRepository) {
6
- super();
7
- this.firestore = firestore;
5
+ constructor({ firestore, interceptors }, parentRepository) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'variants',
9
+ parentIdField: 'productId',
10
+ model: Variant,
11
+ interceptors,
12
+ });
8
13
  this.parentRepository = parentRepository;
9
- this.collectionName = 'variants';
10
- this.parentIdField = 'productId';
11
- this.model = Variant;
12
14
  }
13
15
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC12YXJpYW50LWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9jYXRhbG9nL3Byb2R1Y3QtdmFyaWFudC1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBcUIsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFJL0YsTUFBTSxPQUFPLGlDQUNYLFNBQVEsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBR2hHLFlBQThCLFNBQW9CLEVBQW9CLGdCQUE0QztRQUNoSCxLQUFLLEVBQUUsQ0FBQTtRQURxQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQW9CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7UUFFaEgsSUFBSSxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUE7UUFDaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUE7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUE7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlyZXN0b3JlIH0gZnJvbSAnZmlyZWJhc2UvZmlyZXN0b3JlJ1xuXG5pbXBvcnQgeyBQcm9kdWN0LCBWYXJpYW50LCBWYXJpYW50UmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbidcbmltcG9ydCB7IEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscydcbmltcG9ydCB7IHdpdGhDcnVkRmlyZXN0b3JlLCB3aXRoRmlyZXN0b3JlLCB3aXRoSGVscGVycywgd2l0aFN1YkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmltcG9ydCB7IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5IH0gZnJvbSAnLi9wcm9kdWN0LWZpcmVzdG9yZS5yZXBvc2l0b3J5J1xuXG5leHBvcnQgY2xhc3MgUHJvZHVjdFZhcmlhbnRGaXJlc3RvcmVSZXBvc2l0b3J5XG4gIGV4dGVuZHMgd2l0aFN1YkNvbGxlY3Rpb24od2l0aENydWRGaXJlc3RvcmUod2l0aEhlbHBlcnMod2l0aEZpcmVzdG9yZTxWYXJpYW50PihCYXNlKSkpLCBQcm9kdWN0KVxuICBpbXBsZW1lbnRzIFZhcmlhbnRSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKG92ZXJyaWRlIHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZXN0b3JlLCBvdmVycmlkZSByZWFkb25seSBwYXJlbnRSZXBvc2l0b3J5OiBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLmNvbGxlY3Rpb25OYW1lID0gJ3ZhcmlhbnRzJ1xuICAgIHRoaXMucGFyZW50SWRGaWVsZCA9ICdwcm9kdWN0SWQnXG4gICAgdGhpcy5tb2RlbCA9IFZhcmlhbnRcbiAgfVxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC12YXJpYW50LWZpcmVzdG9yZS5yZXBvc2l0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZmlyZWJhc2UvZmlyZXN0b3JlL3JlcG9zaXRvcmllcy9jYXRhbG9nL3Byb2R1Y3QtdmFyaWFudC1maXJlc3RvcmUucmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBcUIsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDM0MsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsV0FBVyxFQUNYLGlCQUFpQixHQUNsQixNQUFNLGNBQWMsQ0FBQTtBQUlyQixNQUFNLE9BQU8saUNBQ1gsU0FBUSxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUM7SUFHaEcsWUFDRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQTJFLEVBQ2xGLGdCQUE0QztRQUU5RCxLQUFLLENBQUM7WUFDSixTQUFTO1lBQ1QsY0FBYyxFQUFFLFVBQVU7WUFDMUIsYUFBYSxFQUFFLFdBQVc7WUFDMUIsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO1FBUmdCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7SUFTaEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgVmFyaWFudCwgVmFyaWFudFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQge1xuICBGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtcyxcbiAgd2l0aENydWRGaXJlc3RvcmUsXG4gIHdpdGhGaXJlc3RvcmUsXG4gIHdpdGhIZWxwZXJzLFxuICB3aXRoU3ViQ29sbGVjdGlvbixcbn0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xuXG5pbXBvcnQgeyBQcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJy4vcHJvZHVjdC1maXJlc3RvcmUucmVwb3NpdG9yeSdcblxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhTdWJDb2xsZWN0aW9uKHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8VmFyaWFudD4oQmFzZSkpKSwgUHJvZHVjdClcbiAgaW1wbGVtZW50cyBWYXJpYW50UmVwb3NpdG9yeVxue1xuICBjb25zdHJ1Y3RvcihcbiAgICB7IGZpcmVzdG9yZSwgaW50ZXJjZXB0b3JzIH06IFBpY2s8RmlyZXN0b3JlQ29uc3RydWN0b3JQYXJhbXM8VmFyaWFudD4sICdmaXJlc3RvcmUnIHwgJ2ludGVyY2VwdG9ycyc+LFxuICAgIG92ZXJyaWRlIHJlYWRvbmx5IHBhcmVudFJlcG9zaXRvcnk6IFByb2R1Y3RGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICBmaXJlc3RvcmUsXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ3ZhcmlhbnRzJyxcbiAgICAgIHBhcmVudElkRmllbGQ6ICdwcm9kdWN0SWQnLFxuICAgICAgbW9kZWw6IFZhcmlhbnQsXG4gICAgICBpbnRlcmNlcHRvcnMsXG4gICAgfSlcbiAgfVxufVxuIl19
@@ -2,11 +2,13 @@ import { Product } from '../../../../../domain';
2
2
  import { Base } from '../../../../../utils';
3
3
  import { withCrudFirestore, withFirestore, withHelpers } from '../../mixins';
4
4
  export class SubscriptionProductFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
5
- constructor(firestore) {
6
- super();
7
- this.firestore = firestore;
8
- this.collectionName = 'subscriptionProducts';
9
- this.model = Product;
5
+ constructor({ firestore, interceptors }) {
6
+ super({
7
+ firestore,
8
+ collectionName: 'subscriptionProducts',
9
+ model: Product,
10
+ interceptors,
11
+ });
10
12
  }
11
13
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE9BQU8sRUFBaUMsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFNUUsTUFBTSxPQUFPLHNDQUNYLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3BFLFlBQThCLFNBQW9CO1FBQ2hELEtBQUssRUFBRSxDQUFBO1FBRHFCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFFaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQTtRQUM1QyxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQTtJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaXJlc3RvcmUgfSBmcm9tICdmaXJlYmFzZS9maXJlc3RvcmUnXG5cbmltcG9ydCB7IFByb2R1Y3QsIFN1YnNjcmlwdGlvblByb2R1Y3RSZXBvc2l0b3J5IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJ1xuXG5pbXBvcnQgeyB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb25Qcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8UHJvZHVjdD4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIFN1YnNjcmlwdGlvblByb2R1Y3RSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKG92ZXJyaWRlIHJlYWRvbmx5IGZpcmVzdG9yZTogRmlyZXN0b3JlKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuY29sbGVjdGlvbk5hbWUgPSAnc3Vic2NyaXB0aW9uUHJvZHVjdHMnXG4gICAgdGhpcy5tb2RlbCA9IFByb2R1Y3RcbiAgfVxufVxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9maXJlYmFzZS9maXJlc3RvcmUvcmVwb3NpdG9yaWVzL2NhdGFsb2cvc3Vic2NyaXB0aW9uLXByb2R1Y3QtZmlyZXN0b3JlLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBaUMsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFM0MsT0FBTyxFQUE4QixpQkFBaUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhHLE1BQU0sT0FBTyxzQ0FDWCxTQUFRLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdwRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBMkU7UUFDOUcsS0FBSyxDQUFDO1lBQ0osU0FBUztZQUNULGNBQWMsRUFBRSxzQkFBc0I7WUFDdEMsS0FBSyxFQUFFLE9BQU87WUFDZCxZQUFZO1NBQ2IsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdCwgU3Vic2NyaXB0aW9uUHJvZHVjdFJlcG9zaXRvcnkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnXG5cbmltcG9ydCB7IEZpcmVzdG9yZUNvbnN0cnVjdG9yUGFyYW1zLCB3aXRoQ3J1ZEZpcmVzdG9yZSwgd2l0aEZpcmVzdG9yZSwgd2l0aEhlbHBlcnMgfSBmcm9tICcuLi8uLi9taXhpbnMnXG5cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb25Qcm9kdWN0RmlyZXN0b3JlUmVwb3NpdG9yeVxuICBleHRlbmRzIHdpdGhDcnVkRmlyZXN0b3JlKHdpdGhIZWxwZXJzKHdpdGhGaXJlc3RvcmU8UHJvZHVjdD4oQmFzZSkpKVxuICBpbXBsZW1lbnRzIFN1YnNjcmlwdGlvblByb2R1Y3RSZXBvc2l0b3J5XG57XG4gIGNvbnN0cnVjdG9yKHsgZmlyZXN0b3JlLCBpbnRlcmNlcHRvcnMgfTogUGljazxGaXJlc3RvcmVDb25zdHJ1Y3RvclBhcmFtczxQcm9kdWN0PiwgJ2ZpcmVzdG9yZScgfCAnaW50ZXJjZXB0b3JzJz4pIHtcbiAgICBzdXBlcih7XG4gICAgICBmaXJlc3RvcmUsXG4gICAgICBjb2xsZWN0aW9uTmFtZTogJ3N1YnNjcmlwdGlvblByb2R1Y3RzJyxcbiAgICAgIG1vZGVsOiBQcm9kdWN0LFxuICAgICAgaW50ZXJjZXB0b3JzLFxuICAgIH0pXG4gIH1cbn1cbiJdfQ==