@dereekb/dbx-firebase 4.1.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/LICENSE +21 -0
  2. package/esm2020/lib/auth/auth.mjs +1 -1
  3. package/esm2020/lib/auth/error.mjs +1 -1
  4. package/esm2020/lib/auth/login/firebase.login.module.mjs +1 -1
  5. package/esm2020/lib/auth/login/login.anonymous.component.mjs +1 -1
  6. package/esm2020/lib/auth/login/login.apple.component.mjs +1 -1
  7. package/esm2020/lib/auth/login/login.button.component.mjs +3 -3
  8. package/esm2020/lib/auth/login/login.context.back.component.mjs +5 -5
  9. package/esm2020/lib/auth/login/login.email.component.mjs +1 -1
  10. package/esm2020/lib/auth/login/login.email.content.component.mjs +8 -8
  11. package/esm2020/lib/auth/login/login.email.form.component.mjs +4 -4
  12. package/esm2020/lib/auth/login/login.email.recovery.form.component.mjs +4 -4
  13. package/esm2020/lib/auth/login/login.facebook.component.mjs +1 -1
  14. package/esm2020/lib/auth/login/login.github.component.mjs +1 -1
  15. package/esm2020/lib/auth/login/login.google.component.mjs +1 -1
  16. package/esm2020/lib/auth/login/login.microsoft.component.mjs +1 -1
  17. package/esm2020/lib/auth/login/login.password.mjs +1 -1
  18. package/esm2020/lib/auth/login/login.service.mjs +1 -1
  19. package/esm2020/lib/auth/login/login.twitter.component.mjs +1 -1
  20. package/esm2020/lib/auth/login/register.email.component.mjs +1 -1
  21. package/esm2020/lib/firebase/firebase.module.mjs +33 -21
  22. package/esm2020/lib/firebase/options.mjs +1 -1
  23. package/esm2020/lib/function/firebase.function.module.mjs +1 -1
  24. package/esm2020/lib/model/loader/collection.loader.instance.mjs +1 -1
  25. package/esm2020/lib/model/loader/collection.loader.mjs +1 -1
  26. package/esm2020/lib/model/store/store.collection.change.directive.mjs +1 -1
  27. package/esm2020/lib/model/store/store.collection.change.if.directive.mjs +1 -1
  28. package/esm2020/lib/model/store/store.collection.directive.mjs +1 -1
  29. package/esm2020/lib/model/store/store.collection.mjs +1 -1
  30. package/esm2020/lib/model/store/store.document.directive.mjs +1 -1
  31. package/esm2020/lib/model/store/store.document.mjs +2 -2
  32. package/esm2020/lib/model/store/store.document.router.directive.mjs +2 -4
  33. package/esm2020/lib/model/store/store.subcollection.rxjs.mjs +1 -1
  34. package/fesm2015/dereekb-dbx-firebase.mjs +51 -39
  35. package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
  36. package/fesm2020/dereekb-dbx-firebase.mjs +51 -39
  37. package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
  38. package/lib/auth/auth.d.ts +1 -2
  39. package/lib/auth/error.d.ts +1 -1
  40. package/lib/auth/login/firebase.login.module.d.ts +1 -1
  41. package/lib/auth/login/login.anonymous.component.d.ts +1 -1
  42. package/lib/auth/login/login.apple.component.d.ts +1 -1
  43. package/lib/auth/login/login.button.component.d.ts +6 -7
  44. package/lib/auth/login/login.context.back.component.d.ts +2 -2
  45. package/lib/auth/login/login.email.component.d.ts +1 -1
  46. package/lib/auth/login/login.email.content.component.d.ts +3 -3
  47. package/lib/auth/login/login.email.form.component.d.ts +1 -2
  48. package/lib/auth/login/login.facebook.component.d.ts +1 -1
  49. package/lib/auth/login/login.github.component.d.ts +1 -1
  50. package/lib/auth/login/login.google.component.d.ts +1 -1
  51. package/lib/auth/login/login.list.component.d.ts +1 -1
  52. package/lib/auth/login/login.microsoft.component.d.ts +1 -1
  53. package/lib/auth/login/login.password.d.ts +1 -2
  54. package/lib/auth/login/login.service.d.ts +6 -6
  55. package/lib/auth/login/login.twitter.component.d.ts +1 -1
  56. package/lib/auth/login/register.email.component.d.ts +1 -1
  57. package/lib/firebase/firebase.module.d.ts +1 -1
  58. package/lib/firebase/options.d.ts +4 -0
  59. package/lib/function/firebase.function.module.d.ts +4 -4
  60. package/lib/model/loader/collection.loader.d.ts +1 -1
  61. package/lib/model/loader/collection.loader.instance.d.ts +4 -4
  62. package/lib/model/store/store.collection.change.directive.d.ts +3 -2
  63. package/lib/model/store/store.collection.change.if.directive.d.ts +2 -2
  64. package/lib/model/store/store.collection.d.ts +3 -3
  65. package/lib/model/store/store.collection.directive.d.ts +1 -1
  66. package/lib/model/store/store.document.d.ts +4 -4
  67. package/lib/model/store/store.document.directive.d.ts +1 -1
  68. package/lib/model/store/store.document.router.directive.d.ts +8 -9
  69. package/lib/model/store/store.subcollection.rxjs.d.ts +1 -1
  70. package/package.json +6 -6
@@ -43,4 +43,4 @@ export function provideDbxFirebaseDocumentStoreDirective(sourceType, storeType)
43
43
  }
44
44
  return providers;
45
45
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc3RvcmUvc3RvcmUuZG9jdW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7O0FBSzdFOztHQUVHO0FBRUgsTUFBTSxPQUFnQixpQ0FBaUM7SUFFckQsWUFBcUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7UUFFcEIsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBRTdCLGNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQywwQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBRXpELFFBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUNyQixTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFdkIsY0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2pDLDBCQUFxQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUM7UUFFekQsVUFBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztJQWRyQixDQUFDO0lBZ0JsQyxlQUFlO0lBQ2YsSUFDSSxFQUFFLENBQUMsRUFBWTtRQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFDSSxHQUFHLENBQUMsR0FBeUI7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7OEhBM0JtQixpQ0FBaUM7a0hBQWpDLGlDQUFpQzsyRkFBakMsaUNBQWlDO2tCQUR0RCxTQUFTOzZGQXFCSixFQUFFO3NCQURMLEtBQUs7Z0JBTUYsR0FBRztzQkFETixLQUFLOztBQWdCUixNQUFNLFVBQVUsd0NBQXdDLENBQTBKLFVBQW1CLEVBQUUsU0FBbUI7SUFDeFAsTUFBTSxTQUFTLEdBQWUsQ0FBQztZQUM3QixPQUFPLEVBQUUsaUNBQWlDO1lBQzFDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO1NBQzFDLENBQUMsQ0FBQztJQUVILElBQUksU0FBUyxFQUFFO1FBQ2IsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUMzQjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGZvcndhcmRSZWYsIElucHV0LCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jdW1lbnRSZWZlcmVuY2UsIEZpcmVzdG9yZURvY3VtZW50IH0gZnJvbSBcIkBkZXJlZWtiL2ZpcmViYXNlXCI7XG5pbXBvcnQgeyBNb2RlbEtleSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlIH0gZnJvbSBcIi4vc3RvcmUuZG9jdW1lbnRcIjtcblxuLyoqXG4gKiBBYnN0cmFjdCBkaXJlY3RpdmUgdGhhdCBjb250YWlucyBhIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZSBhbmQgcHJvdmlkZXMgYW4gaW50ZXJmYWNlIGZvciBjb21tdW5pY2F0aW5nIHdpdGggb3RoZXIgZGlyZWN0aXZlcy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBTIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPFQsIEQ+ID0gRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPFQsIEQ+PiB7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgc3RvcmU6IFMpIHsgfVxuXG4gIHJlYWRvbmx5IGV4aXN0cyQgPSB0aGlzLnN0b3JlLmV4aXN0cyQ7XG5cbiAgcmVhZG9ubHkgZG9jdW1lbnQkID0gdGhpcy5zdG9yZS5kb2N1bWVudCQ7XG4gIHJlYWRvbmx5IGRvY3VtZW50TG9hZGluZ1N0YXRlJCA9IHRoaXMuc3RvcmUuZG9jdW1lbnRMb2FkaW5nU3RhdGUkO1xuXG4gIHJlYWRvbmx5IGlkJCA9IHRoaXMuc3RvcmUuaWQkO1xuICByZWFkb25seSByZWYkID0gdGhpcy5zdG9yZS5yZWYkO1xuXG4gIHJlYWRvbmx5IHNuYXBzaG90JCA9IHRoaXMuc3RvcmUuc25hcHNob3QkO1xuICByZWFkb25seSBzbmFwc2hvdExvYWRpbmdTdGF0ZSQgPSB0aGlzLnN0b3JlLnNuYXBzaG90TG9hZGluZ1N0YXRlJDtcblxuICByZWFkb25seSBkYXRhJCA9IHRoaXMuc3RvcmUuZGF0YSQ7XG4gIHJlYWRvbmx5IGxvYWRpbmdTdGF0ZSQgPSB0aGlzLnN0b3JlLmRhdGFMb2FkaW5nU3RhdGUkO1xuXG4gIC8vIE1BUks6IElucHV0c1xuICBASW5wdXQoKVxuICBzZXQgaWQoaWQ6IE1vZGVsS2V5KSB7XG4gICAgdGhpcy5zdG9yZS5zZXRJZChpZCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgcmVmKHJlZjogRG9jdW1lbnRSZWZlcmVuY2U8VD4pIHtcbiAgICB0aGlzLnN0b3JlLnNldFJlZihyZWYpO1xuICB9XG5cbn1cblxuLyoqXG4gKiBDb25maWd1cmVzIHByb3ZpZGVycyBmb3IgYSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUuIFxuICogXG4gKiBDYW4gb3B0aW9uYWxseSBhbHNvIHByb3ZpZGUgdGhlIGFjdHVhbCBzdG9yZSB0eXBlIHRvIGluY2x1ZGUgaW4gdGhlIHByb3ZpZGVycyBhcnJheSBzbyBpdCBpcyBpbnN0YW50aWF0ZWQgYnkgQW5ndWxhci5cbiAqIFxuICogQHBhcmFtIHNvdXJjZVR5cGUgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFMgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU8YW55LCBhbnksIGFueT4+KHNvdXJjZVR5cGU6IFR5cGU8Uz4pOiBQcm92aWRlcltdO1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU8UyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxhbnksIGFueT4sIEMgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU8YW55LCBhbnksIFM+ID0gRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBTPj4oc291cmNlVHlwZTogVHlwZTxDPiwgc3RvcmVUeXBlOiBUeXBlPFM+KTogUHJvdmlkZXJbXTtcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFMgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8YW55LCBhbnk+LCBDIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBTPiA9IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxhbnksIGFueSwgUz4+KHNvdXJjZVR5cGU6IFR5cGU8Qz4sIHN0b3JlVHlwZT86IFR5cGU8Uz4pOiBQcm92aWRlcltdIHtcbiAgY29uc3QgcHJvdmlkZXJzOiBQcm92aWRlcltdID0gW3tcbiAgICBwcm92aWRlOiBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gc291cmNlVHlwZSlcbiAgfV07XG5cbiAgaWYgKHN0b3JlVHlwZSkge1xuICAgIHByb3ZpZGVycy5wdXNoKHN0b3JlVHlwZSk7XG4gIH1cblxuICByZXR1cm4gcHJvdmlkZXJzO1xufVxuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc3RvcmUvc3RvcmUuZG9jdW1lbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7O0FBSzdFOztHQUVHO0FBRUgsTUFBTSxPQUFnQixpQ0FBaUM7SUFFckQsWUFBcUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7UUFFcEIsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBRTdCLGNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQywwQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBRXpELFFBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUNyQixTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFdkIsY0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2pDLDBCQUFxQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUM7UUFFekQsVUFBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztJQWRyQixDQUFDO0lBZ0JsQyxlQUFlO0lBQ2YsSUFDSSxFQUFFLENBQUMsRUFBWTtRQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFDSSxHQUFHLENBQUMsR0FBeUI7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7OEhBM0JtQixpQ0FBaUM7a0hBQWpDLGlDQUFpQzsyRkFBakMsaUNBQWlDO2tCQUR0RCxTQUFTOzZGQXFCSixFQUFFO3NCQURMLEtBQUs7Z0JBTUYsR0FBRztzQkFETixLQUFLOztBQW1CUixNQUFNLFVBQVUsd0NBQXdDLENBQTBKLFVBQW1CLEVBQUUsU0FBbUI7SUFDeFAsTUFBTSxTQUFTLEdBQWUsQ0FBQztZQUM3QixPQUFPLEVBQUUsaUNBQWlDO1lBQzFDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO1NBQzFDLENBQUMsQ0FBQztJQUVILElBQUksU0FBUyxFQUFFO1FBQ2IsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUMzQjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGZvcndhcmRSZWYsIElucHV0LCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jdW1lbnRSZWZlcmVuY2UsIEZpcmVzdG9yZURvY3VtZW50IH0gZnJvbSBcIkBkZXJlZWtiL2ZpcmViYXNlXCI7XG5pbXBvcnQgeyBNb2RlbEtleSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlIH0gZnJvbSBcIi4vc3RvcmUuZG9jdW1lbnRcIjtcblxuLyoqXG4gKiBBYnN0cmFjdCBkaXJlY3RpdmUgdGhhdCBjb250YWlucyBhIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZSBhbmQgcHJvdmlkZXMgYW4gaW50ZXJmYWNlIGZvciBjb21tdW5pY2F0aW5nIHdpdGggb3RoZXIgZGlyZWN0aXZlcy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFQgPSB1bmtub3duLCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEPiA9IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEPj4ge1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHN0b3JlOiBTKSB7IH1cblxuICByZWFkb25seSBleGlzdHMkID0gdGhpcy5zdG9yZS5leGlzdHMkO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50JCA9IHRoaXMuc3RvcmUuZG9jdW1lbnQkO1xuICByZWFkb25seSBkb2N1bWVudExvYWRpbmdTdGF0ZSQgPSB0aGlzLnN0b3JlLmRvY3VtZW50TG9hZGluZ1N0YXRlJDtcblxuICByZWFkb25seSBpZCQgPSB0aGlzLnN0b3JlLmlkJDtcbiAgcmVhZG9ubHkgcmVmJCA9IHRoaXMuc3RvcmUucmVmJDtcblxuICByZWFkb25seSBzbmFwc2hvdCQgPSB0aGlzLnN0b3JlLnNuYXBzaG90JDtcbiAgcmVhZG9ubHkgc25hcHNob3RMb2FkaW5nU3RhdGUkID0gdGhpcy5zdG9yZS5zbmFwc2hvdExvYWRpbmdTdGF0ZSQ7XG5cbiAgcmVhZG9ubHkgZGF0YSQgPSB0aGlzLnN0b3JlLmRhdGEkO1xuICByZWFkb25seSBsb2FkaW5nU3RhdGUkID0gdGhpcy5zdG9yZS5kYXRhTG9hZGluZ1N0YXRlJDtcblxuICAvLyBNQVJLOiBJbnB1dHNcbiAgQElucHV0KClcbiAgc2V0IGlkKGlkOiBNb2RlbEtleSkge1xuICAgIHRoaXMuc3RvcmUuc2V0SWQoaWQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHJlZihyZWY6IERvY3VtZW50UmVmZXJlbmNlPFQ+KSB7XG4gICAgdGhpcy5zdG9yZS5zZXRSZWYocmVmKTtcbiAgfVxuXG59XG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8vIFRoZSB1c2Ugb2YgYW55IGhlcmUgZG9lcyBub3QgZGVncmFkZSB0aGUgdHlwZS1zYWZldHk7IHdlIHdhbnQgdG8gc2ltcGx5IG1hdGNoIHRoYXQgdGhlIFN0b3JlIHR5cGUgUyBpcyB1c2VkIGluIHRoZSBEaXJlY3RpdmUgdHlwZSBDIHRvIHByb3ZpZGUgaXQuXG5cbi8qKlxuICogQ29uZmlndXJlcyBwcm92aWRlcnMgZm9yIGEgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlLiBcbiAqIFxuICogQ2FuIG9wdGlvbmFsbHkgYWxzbyBwcm92aWRlIHRoZSBhY3R1YWwgc3RvcmUgdHlwZSB0byBpbmNsdWRlIGluIHRoZSBwcm92aWRlcnMgYXJyYXkgc28gaXQgaXMgaW5zdGFudGlhdGVkIGJ5IEFuZ3VsYXIuXG4gKiBcbiAqIEBwYXJhbSBzb3VyY2VUeXBlIFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxTIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBhbnk+Pihzb3VyY2VUeXBlOiBUeXBlPFM+KTogUHJvdmlkZXJbXTtcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFMgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8YW55LCBhbnk+LCBDIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBTPiA9IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxhbnksIGFueSwgUz4+KHNvdXJjZVR5cGU6IFR5cGU8Qz4sIHN0b3JlVHlwZTogVHlwZTxTPik6IFByb3ZpZGVyW107XG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxTIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPGFueSwgYW55PiwgQyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxhbnksIGFueSwgUz4gPSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU8YW55LCBhbnksIFM+Pihzb3VyY2VUeXBlOiBUeXBlPEM+LCBzdG9yZVR5cGU/OiBUeXBlPFM+KTogUHJvdmlkZXJbXSB7XG4gIGNvbnN0IHByb3ZpZGVyczogUHJvdmlkZXJbXSA9IFt7XG4gICAgcHJvdmlkZTogRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IHNvdXJjZVR5cGUpXG4gIH1dO1xuXG4gIGlmIChzdG9yZVR5cGUpIHtcbiAgICBwcm92aWRlcnMucHVzaChzdG9yZVR5cGUpO1xuICB9XG5cbiAgcmV0dXJuIHByb3ZpZGVycztcbn1cbiJdfQ==
@@ -37,7 +37,7 @@ export class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
37
37
  this.id$ = this.document$.pipe(map(x => x.id), shareReplay());
38
38
  this.ref$ = this.document$.pipe(map(x => x.documentRef), shareReplay());
39
39
  this.snapshot$ = this.document$.pipe(switchMap(x => x.accessor.stream()), shareReplay(1));
40
- this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(_ => loadingStateFromObs(this.snapshot$)), shareReplay(1));
40
+ this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(() => loadingStateFromObs(this.snapshot$)), shareReplay(1));
41
41
  this.currentData$ = this.document$.pipe(switchMap(x => x.accessor.stream().pipe(map(y => documentDataWithId(y)))), shareReplay(1));
42
42
  this.data$ = this.currentDocument$.pipe(switchMap(() => this.currentData$.pipe(filterMaybe())), shareReplay(1));
43
43
  this.dataLoadingState$ = this.snapshotLoadingState$.pipe(map((x) => {
@@ -78,4 +78,4 @@ AbstractDbxFirebaseDocumentStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersio
78
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseDocumentStore, decorators: [{
79
79
  type: Injectable
80
80
  }] });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9zdG9yZS9zdG9yZS5kb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ2xILE9BQU8sRUFBK0Usa0JBQWtCLEVBQXNCLE1BQU0sbUJBQW1CLENBQUM7QUFDeEosT0FBTyxFQUFFLFdBQVcsRUFBZ0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzVJLE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBcUNsRDs7R0FFRztBQUVILE1BQU0sT0FBTyxnQ0FBOEwsU0FBUSxxQkFBd0I7SUFEM087O1FBR0UsZ0JBQWdCO1FBR2hCLGtCQUFrQjtRQUNULGdDQUEyQixHQUFpRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsRUFDakMsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyx5QkFBb0IsR0FBMEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FDMUcsV0FBVyxFQUFFLENBQ2QsQ0FBQztRQUVPLG9CQUFlLEdBQWdDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN0RSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQ2Qsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyxhQUFRLEdBQXlCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUNqRSxXQUFXLEVBQUUsRUFDYixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHFCQUFnQixHQUE0QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNmLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sY0FBUyxHQUFxQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUMvRSxXQUFXLEVBQUUsRUFDYixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHFCQUFnQixHQUF5QixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbkosR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7WUFDNUIsSUFBSSxRQUFrQixDQUFDO1lBRXZCLElBQUksVUFBVSxFQUFFO2dCQUNkLElBQUksR0FBRyxFQUFFO29CQUNQLFFBQVEsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzVEO3FCQUFNLElBQUksRUFBRSxFQUFFO29CQUNiLFFBQVEsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDbEU7YUFDRjtZQUVELE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxFQUNGLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sY0FBUyxHQUFrQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUM1RCxXQUFXLEVBQUUsRUFDYixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLDBCQUFxQixHQUFnQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUN0RixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDLEVBQ2pELFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sUUFBRyxHQUF5QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDdEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUNkLFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFTyxTQUFJLEdBQXFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNuRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQ3ZCLFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFTyxjQUFTLEdBQW9DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUN2RSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQ25DLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sMEJBQXFCLEdBQWtELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQ3hHLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUNuRCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGlCQUFZLEdBQTZDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNuRixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDekUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyxVQUFLLEdBQXNDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzVFLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDcEMsV0FBVyxFQUFFLENBQ2QsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sc0JBQWlCLEdBQW9ELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQzNHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1IsSUFBSSxNQUEyQyxDQUFDO1lBRWhELElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDWCxNQUFNLElBQUksR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRXpDLElBQUksSUFBSSxFQUFFO29CQUNSLE1BQU0sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzlCO3FCQUFNO29CQUNMLE1BQU0sR0FBRyxXQUFXLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2lCQUNoRDthQUNGO2lCQUFNO2dCQUNMLE1BQU0sR0FBRztvQkFDUCxHQUFHLENBQUM7b0JBQ0osS0FBSyxFQUFFLFNBQVM7aUJBQ2pCLENBQUM7YUFDSDtZQUVELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sWUFBTyxHQUF3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDNUQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sa0JBQWEsR0FBd0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQzdELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ1osV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFRixzQkFBc0I7UUFDdEI7O1dBRUc7UUFDTSxVQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFdkg7O1dBRUc7UUFDTSxXQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUF5QixFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTlILDJCQUFzQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsbUJBQXFELEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUV2Sjs7NkhBcEpZLGdDQUFnQztpSUFBaEMsZ0NBQWdDOzJGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3dpdGNoTWFwLCBjb21iaW5lTGF0ZXN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERvY3VtZW50U25hcHNob3QsIERvY3VtZW50UmVmZXJlbmNlLCBGaXJlc3RvcmVDb2xsZWN0aW9uLCBGaXJlc3RvcmVEb2N1bWVudCwgZG9jdW1lbnREYXRhV2l0aElkLCBEb2N1bWVudERhdGFXaXRoSWQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSwgTG9hZGluZ1N0YXRlLCBiZWdpbkxvYWRpbmcsIHN1Y2Nlc3NSZXN1bHQsIGxvYWRpbmdTdGF0ZUZyb21PYnMsIGVycm9yUmVzdWx0LCBPYnNlcnZhYmxlT3JWYWx1ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgTWF5YmUsIE1vZGVsS2V5LCBpc01heWJlU28gfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IExvY2tTZXRDb21wb25lbnQsIExvY2tTZXRDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IG1vZGVsRG9lc05vdEV4aXN0RXJyb3IgfSBmcm9tICcuLi9lcnJvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+PiBleHRlbmRzIExvY2tTZXRDb21wb25lbnQge1xuICByZWFkb25seSBmaXJlc3RvcmVDb2xsZWN0aW9uJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+PjtcblxuICByZWFkb25seSBjdXJyZW50SW5wdXRJZCQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PjtcbiAgcmVhZG9ubHkgaW5wdXRJZCQ6IE9ic2VydmFibGU8TW9kZWxLZXk+O1xuICByZWFkb25seSBjdXJyZW50SW5wdXRSZWYkOiBPYnNlcnZhYmxlPE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+Pj47XG4gIHJlYWRvbmx5IGlucHV0UmVmJDogT2JzZXJ2YWJsZTxEb2N1bWVudFJlZmVyZW5jZTxUPj47XG5cbiAgcmVhZG9ubHkgY3VycmVudERvY3VtZW50JDogT2JzZXJ2YWJsZTxNYXliZTxEPj47XG4gIHJlYWRvbmx5IGRvY3VtZW50JDogT2JzZXJ2YWJsZTxEPjtcbiAgcmVhZG9ubHkgaWQkOiBPYnNlcnZhYmxlPE1vZGVsS2V5PjtcbiAgcmVhZG9ubHkgcmVmJDogT2JzZXJ2YWJsZTxEb2N1bWVudFJlZmVyZW5jZTxUPj47XG4gIHJlYWRvbmx5IGRvY3VtZW50TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RD4+O1xuICByZWFkb25seSBzbmFwc2hvdCQ6IE9ic2VydmFibGU8RG9jdW1lbnRTbmFwc2hvdDxUPj47XG4gIHJlYWRvbmx5IHNuYXBzaG90TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RG9jdW1lbnRTbmFwc2hvdDxUPj4+O1xuICByZWFkb25seSBjdXJyZW50RGF0YSQ6IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnREYXRhV2l0aElkPFQ+Pj47XG4gIHJlYWRvbmx5IGRhdGEkOiBPYnNlcnZhYmxlPERvY3VtZW50RGF0YVdpdGhJZDxUPj47XG4gIHJlYWRvbmx5IGRhdGFMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PjtcbiAgcmVhZG9ubHkgZXhpc3RzJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBzZXRJZDogKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxzdHJpbmc+KSA9PiBTdWJzY3JpcHRpb247XG4gIHNldFJlZjogKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4pID0+IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZmlyZXN0b3JlIGNvbGxlY3Rpb24gdG8gcmV0cmlldmUgZG9jdW1lbnQgZnJvbS5cbiAgICovXG4gIHJlYWRvbmx5IHNldEZpcmVzdG9yZUNvbGxlY3Rpb246ICgoKSA9PiB2b2lkKSB8ICgob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+PikgPT4gU3Vic2NyaXB0aW9uKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4+IHtcbiAgcmVhZG9ubHkgZmlyZXN0b3JlQ29sbGVjdGlvbj86IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+O1xuICByZWFkb25seSBpZD86IE1heWJlPE1vZGVsS2V5PjtcbiAgcmVhZG9ubHkgcmVmPzogTWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+O1xufVxuXG4vKipcbiAqIFVzZWQgZm9yIHN0b3JpbmcgdGhlIHN0YXRlIG9mIGEgUGVyc29uIGFuZCByZWxhdGVkIGVtYWlsIHRocmVhZHMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgQyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBEPiA9IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBEPj4gZXh0ZW5kcyBMb2NrU2V0Q29tcG9uZW50U3RvcmU8Qz4gaW1wbGVtZW50cyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8VCwgRD4ge1xuXG4gIC8vIE1BUks6IEVmZmVjdHNcblxuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBjdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQ6IE9ic2VydmFibGU8TWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbjxULCBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguZmlyZXN0b3JlQ29sbGVjdGlvbiksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGZpcmVzdG9yZUNvbGxlY3Rpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+ID0gdGhpcy5jdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3VycmVudElucHV0SWQkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj4gPSB0aGlzLnN0YXRlJC5waXBlKFxuICAgIG1hcCh4ID0+IHguaWQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBpbnB1dElkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT4gPSB0aGlzLmN1cnJlbnRJbnB1dElkJC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRJbnB1dFJlZiQ6IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKHggPT4geC5yZWYpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBpbnB1dFJlZiQ6IE9ic2VydmFibGU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+ID0gdGhpcy5jdXJyZW50SW5wdXRSZWYkLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3VycmVudERvY3VtZW50JDogT2JzZXJ2YWJsZTxNYXliZTxEPj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmN1cnJlbnRGaXJlc3RvcmVDb2xsZWN0aW9uJCwgdGhpcy5jdXJyZW50SW5wdXRJZCQsIHRoaXMuY3VycmVudElucHV0UmVmJF0pLnBpcGUoXG4gICAgbWFwKChbY29sbGVjdGlvbiwgaWQsIHJlZl0pID0+IHtcbiAgICAgIGxldCBkb2N1bWVudDogTWF5YmU8RD47XG5cbiAgICAgIGlmIChjb2xsZWN0aW9uKSB7XG4gICAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgICBkb2N1bWVudCA9IGNvbGxlY3Rpb24uZG9jdW1lbnRBY2Nlc3NvcigpLmxvYWREb2N1bWVudChyZWYpO1xuICAgICAgICB9IGVsc2UgaWYgKGlkKSB7XG4gICAgICAgICAgZG9jdW1lbnQgPSBjb2xsZWN0aW9uLmRvY3VtZW50QWNjZXNzb3IoKS5sb2FkRG9jdW1lbnRGb3JQYXRoKGlkKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZG9jdW1lbnQ7XG4gICAgfSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50JDogT2JzZXJ2YWJsZTxEPiA9IHRoaXMuY3VycmVudERvY3VtZW50JC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RD4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKHggPT4gKHgpID8gc3VjY2Vzc1Jlc3VsdCh4KSA6IGJlZ2luTG9hZGluZygpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGlkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT4gPSB0aGlzLmRvY3VtZW50JC5waXBlKFxuICAgIG1hcCh4ID0+IHguaWQpLFxuICAgIHNoYXJlUmVwbGF5KClcbiAgKTtcblxuICByZWFkb25seSByZWYkOiBPYnNlcnZhYmxlPERvY3VtZW50UmVmZXJlbmNlPFQ+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKHggPT4geC5kb2N1bWVudFJlZiksXG4gICAgc2hhcmVSZXBsYXkoKVxuICApO1xuXG4gIHJlYWRvbmx5IHNuYXBzaG90JDogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PFQ+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKHggPT4geC5hY2Nlc3Nvci5zdHJlYW0oKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzbmFwc2hvdExvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPERvY3VtZW50U25hcHNob3Q8VD4+PiA9IHRoaXMuY3VycmVudERvY3VtZW50JC5waXBlKFxuICAgIHN3aXRjaE1hcChfID0+IGxvYWRpbmdTdGF0ZUZyb21PYnModGhpcy5zbmFwc2hvdCQpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnREYXRhJDogT2JzZXJ2YWJsZTxNYXliZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKHggPT4geC5hY2Nlc3Nvci5zdHJlYW0oKS5waXBlKG1hcCh5ID0+IGRvY3VtZW50RGF0YVdpdGhJZCh5KSkpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRhdGEkOiBPYnNlcnZhYmxlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4gPSB0aGlzLmN1cnJlbnREb2N1bWVudCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jdXJyZW50RGF0YSQucGlwZShcbiAgICAgIGZpbHRlck1heWJlKClcbiAgICApKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRhdGFMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PiA9IHRoaXMuc25hcHNob3RMb2FkaW5nU3RhdGUkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB7XG4gICAgICBsZXQgcmVzdWx0OiBMb2FkaW5nU3RhdGU8RG9jdW1lbnREYXRhV2l0aElkPFQ+PjtcblxuICAgICAgaWYgKHgudmFsdWUpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGRvY3VtZW50RGF0YVdpdGhJZCh4LnZhbHVlKTtcblxuICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgIHJlc3VsdCA9IHN1Y2Nlc3NSZXN1bHQoZGF0YSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0ID0gZXJyb3JSZXN1bHQobW9kZWxEb2VzTm90RXhpc3RFcnJvcigpKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgIC4uLngsXG4gICAgICAgICAgdmFsdWU6IHVuZGVmaW5lZFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZXhpc3RzJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuY3VycmVudERhdGEkLnBpcGUoXG4gICAgbWFwKHggPT4gaXNNYXliZVNvKHgpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRvZXNOb3RFeGlzdCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmV4aXN0cyQucGlwZShcbiAgICBtYXAoeCA9PiAheCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICAvLyBNQVJLOiBTdGF0ZSBDaGFuZ2VzXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpZCBvZiB0aGUgZG9jdW1lbnQgdG8gbG9hZC5cbiAgICovXG4gIHJlYWRvbmx5IHNldElkID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgaWQ6IE1vZGVsS2V5KSA9PiAoaWQpID8gKHsgLi4uc3RhdGUsIGlkLCByZWY6IHVuZGVmaW5lZCB9KSA6ICh7IC4uLnN0YXRlLCBpZCB9KSk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHJlZiBvZiB0aGUgZG9jdW1lbnQgdG8gbG9hZC5cbiAgICovXG4gIHJlYWRvbmx5IHNldFJlZiA9IHRoaXMudXBkYXRlcigoc3RhdGUsIHJlZjogRG9jdW1lbnRSZWZlcmVuY2U8VD4pID0+IChyZWYpID8gKHsgLi4uc3RhdGUsIGlkOiB1bmRlZmluZWQsIHJlZiB9KSA6ICh7IC4uLnN0YXRlLCByZWYgfSkpO1xuXG4gIHJlYWRvbmx5IHNldEZpcmVzdG9yZUNvbGxlY3Rpb24gPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBmaXJlc3RvcmVDb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+PikgPT4gKHsgLi4uc3RhdGUsIGZpcmVzdG9yZUNvbGxlY3Rpb24gfSkpO1xuXG59XG4iXX0=
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9zdG9yZS9zdG9yZS5kb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ2xILE9BQU8sRUFBK0Usa0JBQWtCLEVBQXNCLE1BQU0sbUJBQW1CLENBQUM7QUFDeEosT0FBTyxFQUFFLFdBQVcsRUFBZ0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzVJLE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBcUNsRDs7R0FFRztBQUVILE1BQU0sT0FBTyxnQ0FBOEwsU0FBUSxxQkFBd0I7SUFEM087O1FBR0UsZ0JBQWdCO1FBR2hCLGtCQUFrQjtRQUNULGdDQUEyQixHQUFpRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsRUFDakMsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyx5QkFBb0IsR0FBMEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FDMUcsV0FBVyxFQUFFLENBQ2QsQ0FBQztRQUVPLG9CQUFlLEdBQWdDLElBQUksQ0FBQyxN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S0FFdko7OzZIQXBKWSxnQ0FBZ0M7aUlBQWhDLGdDQUFnQzsyRkFBaEMsZ0NBQWdDO2tCQUQ1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN3aXRjaE1hcCwgY29tYmluZUxhdGVzdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEb2N1bWVudFNuYXBzaG90LCBEb2N1bWVudFJlZmVyZW5jZSwgRmlyZXN0b3JlQ29sbGVjdGlvbiwgRmlyZXN0b3JlRG9jdW1lbnQsIGRvY3VtZW50RGF0YVdpdGhJZCwgRG9jdW1lbnREYXRhV2l0aElkIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgZmlsdGVyTWF5YmUsIExvYWRpbmdTdGF0ZSwgYmVnaW5Mb2FkaW5nLCBzdWNjZXNzUmVzdWx0LCBsb2FkaW5nU3RhdGVGcm9tT2JzLCBlcnJvclJlc3VsdCwgT2JzZXJ2YWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlLCBNb2RlbEtleSwgaXNNYXliZVNvIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBMb2NrU2V0Q29tcG9uZW50LCBMb2NrU2V0Q29tcG9uZW50U3RvcmUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBtb2RlbERvZXNOb3RFeGlzdEVycm9yIH0gZnJvbSAnLi4vZXJyb3InO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPj4gZXh0ZW5kcyBMb2NrU2V0Q29tcG9uZW50IHtcbiAgcmVhZG9ubHkgZmlyZXN0b3JlQ29sbGVjdGlvbiQ6IE9ic2VydmFibGU8RmlyZXN0b3JlQ29sbGVjdGlvbjxULCBEPj47XG5cbiAgcmVhZG9ubHkgY3VycmVudElucHV0SWQkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj47XG4gIHJlYWRvbmx5IGlucHV0SWQkOiBPYnNlcnZhYmxlPE1vZGVsS2V5PjtcbiAgcmVhZG9ubHkgY3VycmVudElucHV0UmVmJDogT2JzZXJ2YWJsZTxNYXliZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4+O1xuICByZWFkb25seSBpbnB1dFJlZiQ6IE9ic2VydmFibGU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+O1xuXG4gIHJlYWRvbmx5IGN1cnJlbnREb2N1bWVudCQ6IE9ic2VydmFibGU8TWF5YmU8RD4+O1xuICByZWFkb25seSBkb2N1bWVudCQ6IE9ic2VydmFibGU8RD47XG4gIHJlYWRvbmx5IGlkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT47XG4gIHJlYWRvbmx5IHJlZiQ6IE9ic2VydmFibGU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+O1xuICByZWFkb25seSBkb2N1bWVudExvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPEQ+PjtcbiAgcmVhZG9ubHkgc25hcHNob3QkOiBPYnNlcnZhYmxlPERvY3VtZW50U25hcHNob3Q8VD4+O1xuICByZWFkb25seSBzbmFwc2hvdExvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPERvY3VtZW50U25hcHNob3Q8VD4+PjtcbiAgcmVhZG9ubHkgY3VycmVudERhdGEkOiBPYnNlcnZhYmxlPE1heWJlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4+O1xuICByZWFkb25seSBkYXRhJDogT2JzZXJ2YWJsZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+O1xuICByZWFkb25seSBkYXRhTG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RG9jdW1lbnREYXRhV2l0aElkPFQ+Pj47XG4gIHJlYWRvbmx5IGV4aXN0cyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgc2V0SWQ6IChvYnNlcnZhYmxlT3JWYWx1ZTogT2JzZXJ2YWJsZU9yVmFsdWU8TWF5YmU8c3RyaW5nPj4pID0+IFN1YnNjcmlwdGlvbjtcbiAgc2V0UmVmOiAob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+Pj4pID0+IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZmlyZXN0b3JlIGNvbGxlY3Rpb24gdG8gcmV0cmlldmUgZG9jdW1lbnQgZnJvbS5cbiAgICovXG4gIHJlYWRvbmx5IHNldEZpcmVzdG9yZUNvbGxlY3Rpb246ICgoKSA9PiB2b2lkKSB8ICgob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+PikgPT4gU3Vic2NyaXB0aW9uKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4+IHtcbiAgcmVhZG9ubHkgZmlyZXN0b3JlQ29sbGVjdGlvbj86IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+O1xuICByZWFkb25seSBpZD86IE1heWJlPE1vZGVsS2V5PjtcbiAgcmVhZG9ubHkgcmVmPzogTWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+O1xufVxuXG4vKipcbiAqIFVzZWQgZm9yIHN0b3JpbmcgdGhlIHN0YXRlIG9mIGEgUGVyc29uIGFuZCByZWxhdGVkIGVtYWlsIHRocmVhZHMuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgQyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBEPiA9IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBEPj4gZXh0ZW5kcyBMb2NrU2V0Q29tcG9uZW50U3RvcmU8Qz4gaW1wbGVtZW50cyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8VCwgRD4ge1xuXG4gIC8vIE1BUks6IEVmZmVjdHNcblxuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBjdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQ6IE9ic2VydmFibGU8TWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbjxULCBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguZmlyZXN0b3JlQ29sbGVjdGlvbiksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGZpcmVzdG9yZUNvbGxlY3Rpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+ID0gdGhpcy5jdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3VycmVudElucHV0SWQkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj4gPSB0aGlzLnN0YXRlJC5waXBlKFxuICAgIG1hcCh4ID0+IHguaWQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBpbnB1dElkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT4gPSB0aGlzLmN1cnJlbnRJbnB1dElkJC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRJbnB1dFJlZiQ6IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKHggPT4geC5yZWYpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBpbnB1dFJlZiQ6IE9ic2VydmFibGU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+ID0gdGhpcy5jdXJyZW50SW5wdXRSZWYkLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3VycmVudERvY3VtZW50JDogT2JzZXJ2YWJsZTxNYXliZTxEPj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmN1cnJlbnRGaXJlc3RvcmVDb2xsZWN0aW9uJCwgdGhpcy5jdXJyZW50SW5wdXRJZCQsIHRoaXMuY3VycmVudElucHV0UmVmJF0pLnBpcGUoXG4gICAgbWFwKChbY29sbGVjdGlvbiwgaWQsIHJlZl0pID0+IHtcbiAgICAgIGxldCBkb2N1bWVudDogTWF5YmU8RD47XG5cbiAgICAgIGlmIChjb2xsZWN0aW9uKSB7XG4gICAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgICBkb2N1bWVudCA9IGNvbGxlY3Rpb24uZG9jdW1lbnRBY2Nlc3NvcigpLmxvYWREb2N1bWVudChyZWYpO1xuICAgICAgICB9IGVsc2UgaWYgKGlkKSB7XG4gICAgICAgICAgZG9jdW1lbnQgPSBjb2xsZWN0aW9uLmRvY3VtZW50QWNjZXNzb3IoKS5sb2FkRG9jdW1lbnRGb3JQYXRoKGlkKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZG9jdW1lbnQ7XG4gICAgfSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50JDogT2JzZXJ2YWJsZTxEPiA9IHRoaXMuY3VycmVudERvY3VtZW50JC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RD4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKHggPT4gKHgpID8gc3VjY2Vzc1Jlc3VsdCh4KSA6IGJlZ2luTG9hZGluZzxEPigpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGlkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT4gPSB0aGlzLmRvY3VtZW50JC5waXBlKFxuICAgIG1hcCh4ID0+IHguaWQpLFxuICAgIHNoYXJlUmVwbGF5KClcbiAgKTtcblxuICByZWFkb25seSByZWYkOiBPYnNlcnZhYmxlPERvY3VtZW50UmVmZXJlbmNlPFQ+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKHggPT4geC5kb2N1bWVudFJlZiksXG4gICAgc2hhcmVSZXBsYXkoKVxuICApO1xuXG4gIHJlYWRvbmx5IHNuYXBzaG90JDogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PFQ+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKHggPT4geC5hY2Nlc3Nvci5zdHJlYW0oKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzbmFwc2hvdExvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPERvY3VtZW50U25hcHNob3Q8VD4+PiA9IHRoaXMuY3VycmVudERvY3VtZW50JC5waXBlKFxuICAgIHN3aXRjaE1hcCgoKSA9PiBsb2FkaW5nU3RhdGVGcm9tT2JzKHRoaXMuc25hcHNob3QkKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBjdXJyZW50RGF0YSQ6IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnREYXRhV2l0aElkPFQ+Pj4gPSB0aGlzLmRvY3VtZW50JC5waXBlKFxuICAgIHN3aXRjaE1hcCh4ID0+IHguYWNjZXNzb3Iuc3RyZWFtKCkucGlwZShtYXAoeSA9PiBkb2N1bWVudERhdGFXaXRoSWQoeSkpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkYXRhJDogT2JzZXJ2YWJsZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY3VycmVudERhdGEkLnBpcGUoXG4gICAgICBmaWx0ZXJNYXliZSgpXG4gICAgKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkYXRhTG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RG9jdW1lbnREYXRhV2l0aElkPFQ+Pj4gPSB0aGlzLnNuYXBzaG90TG9hZGluZ1N0YXRlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4ge1xuICAgICAgbGV0IHJlc3VsdDogTG9hZGluZ1N0YXRlPERvY3VtZW50RGF0YVdpdGhJZDxUPj47XG5cbiAgICAgIGlmICh4LnZhbHVlKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBkb2N1bWVudERhdGFXaXRoSWQoeC52YWx1ZSk7XG5cbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICByZXN1bHQgPSBzdWNjZXNzUmVzdWx0KGRhdGEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdCA9IGVycm9yUmVzdWx0KG1vZGVsRG9lc05vdEV4aXN0RXJyb3IoKSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAuLi54LFxuICAgICAgICAgIHZhbHVlOiB1bmRlZmluZWRcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGV4aXN0cyQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmN1cnJlbnREYXRhJC5waXBlKFxuICAgIG1hcCh4ID0+IGlzTWF5YmVTbyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkb2VzTm90RXhpc3QkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5leGlzdHMkLnBpcGUoXG4gICAgbWFwKHggPT4gIXgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLy8gTUFSSzogU3RhdGUgQ2hhbmdlc1xuICAvKipcbiAgICogU2V0cyB0aGUgaWQgb2YgdGhlIGRvY3VtZW50IHRvIGxvYWQuXG4gICAqL1xuICByZWFkb25seSBzZXRJZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGlkOiBNYXliZTxNb2RlbEtleT4pID0+IChpZCkgPyAoeyAuLi5zdGF0ZSwgaWQsIHJlZjogdW5kZWZpbmVkIH0pIDogKHsgLi4uc3RhdGUsIGlkIH0pKSBhcyAoKG9ic2VydmFibGVPclZhbHVlOiBNYXliZTxzdHJpbmc+IHwgT2JzZXJ2YWJsZTxNYXliZTxzdHJpbmc+PikgPT4gU3Vic2NyaXB0aW9uKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgcmVmIG9mIHRoZSBkb2N1bWVudCB0byBsb2FkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2V0UmVmID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgcmVmOiBNYXliZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4pID0+IChyZWYpID8gKHsgLi4uc3RhdGUsIGlkOiB1bmRlZmluZWQsIHJlZiB9KSA6ICh7IC4uLnN0YXRlLCByZWYgfSkpIGFzICgob2JzZXJ2YWJsZU9yVmFsdWU6IE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+PiB8IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+PikgPT4gU3Vic2NyaXB0aW9uKTtcblxuICByZWFkb25seSBzZXRGaXJlc3RvcmVDb2xsZWN0aW9uID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgZmlyZXN0b3JlQ29sbGVjdGlvbjogTWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbjxULCBEPj4pID0+ICh7IC4uLnN0YXRlLCBmaXJlc3RvcmVDb2xsZWN0aW9uIH0pKTtcblxufVxuIl19
@@ -1,6 +1,4 @@
1
- import { shareReplay } from 'rxjs/operators';
2
- import { distinctUntilChanged } from 'rxjs';
3
- import { BehaviorSubject, combineLatest, map } from 'rxjs';
1
+ import { shareReplay, distinctUntilChanged, BehaviorSubject, combineLatest, map } from 'rxjs';
4
2
  import { Directive, Host, Input } from '@angular/core';
5
3
  import { DbxRouterService, AbstractSubscriptionDirective } from '@dereekb/dbx-core';
6
4
  import { DbxFirebaseDocumentStoreDirective } from './store.document.directive';
@@ -50,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
50
48
  type: Input,
51
49
  args: ['dbxFirebaseDocumentStoreRouteId']
52
50
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQucm91dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLmRvY3VtZW50LnJvdXRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBYyxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBRy9FLE1BQU0sQ0FBQyxNQUFNLDZDQUE2QyxHQUFHLElBQUksQ0FBQztBQUVsRTs7R0FFRztBQUlILE1BQU0sT0FBTyx3Q0FBeUMsU0FBUSw2QkFBNkI7SUFhekYsWUFDbUIsaUNBQXlFLEVBQ2pGLGdCQUFrQztRQUMzQyxLQUFLLEVBQUUsQ0FBQztRQUZTLHNDQUFpQyxHQUFqQyxpQ0FBaUMsQ0FBd0M7UUFDakYscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWJyQyxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFTLDZDQUE2QyxDQUFDLENBQUM7UUFDeEYsZ0JBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTlDLGtCQUFhLEdBQXlCLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNsSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUNsQyxDQUFDLENBQUMsRUFDRixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQU1GLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFlO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSw2Q0FBNkMsQ0FBQyxDQUFBO0lBQ2pGLENBQUM7O3FJQXBDVSx3Q0FBd0M7eUhBQXhDLHdDQUF3QzsyRkFBeEMsd0NBQXdDO2tCQUhwRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7aUJBQzlDOzswQkFlSSxJQUFJOzJFQWdCSCxPQUFPO3NCQURWLEtBQUs7dUJBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdGFwTG9nIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieFJvdXRlclNlcnZpY2UsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi9zdG9yZS5kb2N1bWVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTW9kZWxLZXkgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGNvbnN0IERCWF9GSVJFQkFTRV9ST1VURVJfU1lOQ19ERUZBVUxUX0lEX1BBUkFNX0tFWSA9ICdpZCc7XG5cbi8qKlxuICogVXNlZCBmb3Igc3luY2hyb25pemluZyB0aGUgZG9jdW1lbnQgc3RvcmUgaWQgdG8gdGhlIHBhcmFtIG9mIHRoZSByb3V0ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZpcmViYXNlRG9jdW1lbnRTdG9yZVJvdXRlSWRdJ1xufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfaWRQYXJhbUtleSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkpO1xuICByZWFkb25seSBpZFBhcmFtS2V5JCA9IHRoaXMuX2lkUGFyYW1LZXkuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcmVhZG9ubHkgaWRGcm9tUGFyYW1zJDogT2JzZXJ2YWJsZTxNb2RlbEtleT4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmlkUGFyYW1LZXkkLCB0aGlzLmRieFJvdXRlclNlcnZpY2UucGFyYW1zJF0pLnBpcGUoXG4gICAgbWFwKChba2V5LCBwYXJhbXNdKSA9PiB7XG4gICAgICByZXR1cm4gcGFyYW1zW2tleV0gPz8gdW5kZWZpbmVkO1xuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASG9zdCgpIHJlYWRvbmx5IGRieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTogRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPGFueT4sXG4gICAgcmVhZG9ubHkgZGJ4Um91dGVyU2VydmljZTogRGJ4Um91dGVyU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YiA9IHRoaXMuZGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlLnN0b3JlLnNldElkKHRoaXMuaWRGcm9tUGFyYW1zJCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuX2lkUGFyYW1LZXkuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8vIE1BUks6IElucHV0XG4gIEBJbnB1dCgnZGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZCcpXG4gIGdldCBpZFBhcmFtKCkge1xuICAgIHJldHVybiB0aGlzLl9pZFBhcmFtS2V5LnZhbHVlO1xuICB9XG5cbiAgc2V0IGlkUGFyYW0oaWRQYXJhbTogc3RyaW5nKSB7XG4gICAgdGhpcy5faWRQYXJhbUtleS5uZXh0KGlkUGFyYW0gfHwgREJYX0ZJUkVCQVNFX1JPVVRFUl9TWU5DX0RFRkFVTFRfSURfUEFSQU1fS0VZKVxuICB9XG5cbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQucm91dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLmRvY3VtZW50LnJvdXRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBYyxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRyxPQUFPLEVBQWEsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFHL0UsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQUcsSUFBSSxDQUFDO0FBRWxFOztHQUVHO0FBSUgsTUFBTSxPQUFPLHdDQUFzRCxTQUFRLDZCQUE2QjtJQWF0RyxZQUNtQixpQ0FBdUUsRUFDL0UsZ0JBQWtDO1FBQzNDLEtBQUssRUFBRSxDQUFDO1FBRlMsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFzQztRQUMvRSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBYnJDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsNkNBQTZDLENBQUMsQ0FBQztRQUN4RixnQkFBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFOUMsa0JBQWEsR0FBZ0MsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3pILEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDcEIsT0FBUSxNQUFNLENBQUMsR0FBRyxDQUFtQixJQUFJLFNBQVMsQ0FBQztRQUNyRCxDQUFDLENBQUMsRUFDRixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQU1GLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFlO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSw2Q0FBNkMsQ0FBQyxDQUFBO0lBQ2pGLENBQUM7O3FJQXBDVSx3Q0FBd0M7eUhBQXhDLHdDQUF3QzsyRkFBeEMsd0NBQXdDO2tCQUhwRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7aUJBQzlDOzswQkFlSSxJQUFJOzJFQWdCSCxPQUFPO3NCQURWLEtBQUs7dUJBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2hhcmVSZXBsYXksIE9ic2VydmFibGUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT25EZXN0cm95LCBEaXJlY3RpdmUsIEhvc3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieFJvdXRlclNlcnZpY2UsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi9zdG9yZS5kb2N1bWVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTWF5YmUsIE1vZGVsS2V5IH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkgPSAnaWQnO1xuXG4vKipcbiAqIFVzZWQgZm9yIHN5bmNocm9uaXppbmcgdGhlIGRvY3VtZW50IHN0b3JlIGlkIHRvIHRoZSBwYXJhbSBvZiB0aGUgcm91dGUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkXSdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZERpcmVjdGl2ZTxUID0gdW5rbm93bj4gZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF9pZFBhcmFtS2V5ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KERCWF9GSVJFQkFTRV9ST1VURVJfU1lOQ19ERUZBVUxUX0lEX1BBUkFNX0tFWSk7XG4gIHJlYWRvbmx5IGlkUGFyYW1LZXkkID0gdGhpcy5faWRQYXJhbUtleS5hc09ic2VydmFibGUoKTtcblxuICByZWFkb25seSBpZEZyb21QYXJhbXMkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmlkUGFyYW1LZXkkLCB0aGlzLmRieFJvdXRlclNlcnZpY2UucGFyYW1zJF0pLnBpcGUoXG4gICAgbWFwKChba2V5LCBwYXJhbXNdKSA9PiB7XG4gICAgICByZXR1cm4gKHBhcmFtc1trZXldIGFzIE1heWJlPHN0cmluZz4pID8/IHVuZGVmaW5lZDtcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEhvc3QoKSByZWFkb25seSBkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU6IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxUPixcbiAgICByZWFkb25seSBkYnhSb3V0ZXJTZXJ2aWNlOiBEYnhSb3V0ZXJTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5kYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUuc3RvcmUuc2V0SWQodGhpcy5pZEZyb21QYXJhbXMkKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5faWRQYXJhbUtleS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLy8gTUFSSzogSW5wdXRcbiAgQElucHV0KCdkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkJylcbiAgZ2V0IGlkUGFyYW0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkUGFyYW1LZXkudmFsdWU7XG4gIH1cblxuICBzZXQgaWRQYXJhbShpZFBhcmFtOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZFBhcmFtS2V5Lm5leHQoaWRQYXJhbSB8fCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkpXG4gIH1cblxufVxuIl19
@@ -39,4 +39,4 @@ export function setParentEffect(store) {
39
39
  }));
40
40
  });
41
41
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc3RvcmUvc3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzNELE9BQU8sRUFBRSxHQUFHLEVBQTRCLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBb0I1RSxNQUFNLFVBQVUsb0JBQW9CLENBQ2pDLEtBQXdEO0lBQ3pELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQTBELEVBQUUsRUFBRTtRQUNqRixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEIsSUFBSSxNQUEyQixDQUFDO1lBRWhDLElBQUksV0FBVyxFQUFFO2dCQUNmLE1BQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBaUIsQ0FBQzthQUN4RTtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsU0FBUyxDQUFDO2FBQ3BCO1lBRUQsaUNBQWlDO1lBQ2pDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVwQyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNkLElBQUksR0FBRyxFQUFFO2dCQUNQLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNuQjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUM1QixLQUF3RDtJQUN6RCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUE0QixFQUFFLEVBQUU7UUFDbkQsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUNmLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ25CLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUVqQyxJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQ2xDLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLEVBQUU7b0JBQ3hCLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUM3QyxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQyxDQUNILENBQUM7YUFDSDtpQkFBTTtnQkFDTCwrQkFBK0I7Z0JBQy9CLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFFeEMseUNBQXlDO2dCQUN6QyxPQUFPLEtBQUssQ0FBQzthQUNkO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2tTZXRDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IEZpcmVzdG9yZUNvbGxlY3Rpb24sIEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeSwgRmlyZXN0b3JlRG9jdW1lbnQgfSBmcm9tIFwiQGRlcmVla2IvZmlyZWJhc2VcIjtcbmltcG9ydCB7IGNsZWFudXAsIE9ic2VydmFibGVPclZhbHVlIH0gZnJvbSBcIkBkZXJlZWtiL3J4anNcIjtcbmltcG9ydCB7IE1heWJlIH0gZnJvbSBcIkBkZXJlZWtiL3V0aWxcIjtcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSBcIkBuZ3J4L2NvbXBvbmVudC1zdG9yZVwiO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIE5FVkVSLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmUgfSBmcm9tIFwiLi9zdG9yZS5kb2N1bWVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+IHtcbiAgcmVhZG9ubHkgcGFyZW50PzogTWF5YmU8UEQ+O1xuICByZWFkb25seSBjb2xsZWN0aW9uRmFjdG9yeT86IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+Pjtcbn1cblxuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD4gPSAob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPFBEPj4pID0+IFN1YnNjcmlwdGlvbjtcbmV4cG9ydCB0eXBlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbjxQVCwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+ID0gKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8UFQsIFBEPj4pID0+IFN1YnNjcmlwdGlvbjtcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudDxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PiBleHRlbmRzIExvY2tTZXRDb21wb25lbnRTdG9yZTxhbnk+LCBQaWNrPENvbXBvbmVudFN0b3JlPERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBELCBQRD4+LCAnZWZmZWN0Jz4ge1xuICByZWFkb25seSBjdXJyZW50UGFyZW50JDogT2JzZXJ2YWJsZTxNYXliZTxQRD4+O1xuICByZWFkb25seSBwYXJlbnQkOiBPYnNlcnZhYmxlPFBEPjtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+PjtcbiAgcmVhZG9ubHkgc2V0UGFyZW50OiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudEVmZmVjdEZ1bmN0aW9uPFBEPjtcbiAgcmVhZG9ubHkgX3NldFBhcmVudERvY3VtZW50OiAoKCkgPT4gdm9pZCkgfCAoKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxQRD4+KSA9PiBTdWJzY3JpcHRpb24pO1xuICByZWFkb25seSBzZXRGaXJlc3RvcmVDb2xsZWN0aW9uOiAoKCkgPT4gdm9pZCkgfCAoKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+Pj4pID0+IFN1YnNjcmlwdGlvbik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQYXJlbnRTdG9yZUVmZmVjdDxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PlxuICAoc3RvcmU6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50PFQsIFBULCBELCBQRD4pOiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb248UFQsIFBEPiB7XG4gIHJldHVybiBzdG9yZS5lZmZlY3QoKGlucHV0OiBPYnNlcnZhYmxlPE1heWJlPERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxQVCwgUEQ+Pj4pID0+IHtcbiAgICByZXR1cm4gaW5wdXQucGlwZShcbiAgICAgIG1hcCgocGFyZW50U3RvcmUpID0+IHtcbiAgICAgICAgbGV0IHJlc3VsdDogTWF5YmU8U3Vic2NyaXB0aW9uPjtcblxuICAgICAgICBpZiAocGFyZW50U3RvcmUpIHtcbiAgICAgICAgICByZXN1bHQgPSBzdG9yZS5zZXRQYXJlbnQocGFyZW50U3RvcmUuY3VycmVudERvY3VtZW50JCkgYXMgU3Vic2NyaXB0aW9uO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNldCBhcyB0aGUgcGFyZW50IGxvY2sgc2V0IHRvb1xuICAgICAgICBzdG9yZS5zZXRQYXJlbnRMb2NrU2V0KHBhcmVudFN0b3JlKTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfSksXG4gICAgICBjbGVhbnVwKChzdWIpID0+IHtcbiAgICAgICAgaWYgKHN1Yikge1xuICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0UGFyZW50RWZmZWN0PFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+XG4gIChzdG9yZTogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQ8VCwgUFQsIEQsIFBEPik6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50RWZmZWN0RnVuY3Rpb248UEQ+IHtcbiAgcmV0dXJuIHN0b3JlLmVmZmVjdCgoaW5wdXQ6IE9ic2VydmFibGU8TWF5YmU8UEQ+PikgPT4ge1xuICAgIHJldHVybiBpbnB1dC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChwYXJlbnQpID0+IHtcbiAgICAgICAgc3RvcmUuX3NldFBhcmVudERvY3VtZW50KHBhcmVudCk7XG5cbiAgICAgICAgaWYgKHBhcmVudCkge1xuICAgICAgICAgIHJldHVybiBzdG9yZS5jb2xsZWN0aW9uRmFjdG9yeSQucGlwZShcbiAgICAgICAgICAgIHRhcCgoY29sbGVjdGlvbkZhY3RvcnkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbiA9IGNvbGxlY3Rpb25GYWN0b3J5KHBhcmVudCk7XG4gICAgICAgICAgICAgIHN0b3JlLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24oY29sbGVjdGlvbik7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gY2xlYXIgdGhlIGN1cnJlbnQgY29sbGVjdGlvblxuICAgICAgICAgIHN0b3JlLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24odW5kZWZpbmVkKTtcblxuICAgICAgICAgIC8vIGRvIG5vdGhpbmcgdW50aWwgYSBwYXJlbnQgaXMgcmV0dXJuZWQuXG4gICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0pO1xufVxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc3RvcmUvc3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzNELE9BQU8sRUFBRSxHQUFHLEVBQTRCLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBb0I1RSxNQUFNLFVBQVUsb0JBQW9CLENBQ2pDLEtBQXdEO0lBQ3pELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQTBELEVBQUUsRUFBRTtRQUNqRixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEIsSUFBSSxNQUEyQixDQUFDO1lBRWhDLElBQUksV0FBVyxFQUFFO2dCQUNmLE1BQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBaUIsQ0FBQzthQUN4RTtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsU0FBUyxDQUFDO2FBQ3BCO1lBRUQsaUNBQWlDO1lBQ2pDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVwQyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNkLElBQUksR0FBRyxFQUFFO2dCQUNQLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNuQjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUM1QixLQUF3RDtJQUN6RCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUE0QixFQUFFLEVBQUU7UUFDbkQsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUNmLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ25CLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUVqQyxJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQ2xDLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLEVBQUU7b0JBQ3hCLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUM3QyxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQyxDQUNILENBQUM7YUFDSDtpQkFBTTtnQkFDTCwrQkFBK0I7Z0JBQy9CLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFFeEMseUNBQXlDO2dCQUN6QyxPQUFPLEtBQUssQ0FBQzthQUNkO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2tTZXRDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IEZpcmVzdG9yZUNvbGxlY3Rpb24sIEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeSwgRmlyZXN0b3JlRG9jdW1lbnQgfSBmcm9tIFwiQGRlcmVla2IvZmlyZWJhc2VcIjtcbmltcG9ydCB7IGNsZWFudXAsIE9ic2VydmFibGVPclZhbHVlIH0gZnJvbSBcIkBkZXJlZWtiL3J4anNcIjtcbmltcG9ydCB7IE1heWJlIH0gZnJvbSBcIkBkZXJlZWtiL3V0aWxcIjtcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSBcIkBuZ3J4L2NvbXBvbmVudC1zdG9yZVwiO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIE5FVkVSLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmUgfSBmcm9tIFwiLi9zdG9yZS5kb2N1bWVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+IHtcbiAgcmVhZG9ubHkgcGFyZW50PzogTWF5YmU8UEQ+O1xuICByZWFkb25seSBjb2xsZWN0aW9uRmFjdG9yeT86IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+Pjtcbn1cblxuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD4gPSAob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPFBEPj4pID0+IFN1YnNjcmlwdGlvbjtcbmV4cG9ydCB0eXBlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbjxQVCwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+ID0gKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8UFQsIFBEPj4pID0+IFN1YnNjcmlwdGlvbjtcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudDxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PiBleHRlbmRzIExvY2tTZXRDb21wb25lbnRTdG9yZTxvYmplY3Q+LCBQaWNrPENvbXBvbmVudFN0b3JlPERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBELCBQRD4+LCAnZWZmZWN0Jz4ge1xuICByZWFkb25seSBjdXJyZW50UGFyZW50JDogT2JzZXJ2YWJsZTxNYXliZTxQRD4+O1xuICByZWFkb25seSBwYXJlbnQkOiBPYnNlcnZhYmxlPFBEPjtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+PjtcbiAgcmVhZG9ubHkgc2V0UGFyZW50OiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudEVmZmVjdEZ1bmN0aW9uPFBEPjtcbiAgcmVhZG9ubHkgX3NldFBhcmVudERvY3VtZW50OiAoKCkgPT4gdm9pZCkgfCAoKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxQRD4+KSA9PiBTdWJzY3JpcHRpb24pO1xuICByZWFkb25seSBzZXRGaXJlc3RvcmVDb2xsZWN0aW9uOiAoKCkgPT4gdm9pZCkgfCAoKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+Pj4pID0+IFN1YnNjcmlwdGlvbik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQYXJlbnRTdG9yZUVmZmVjdDxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PlxuICAoc3RvcmU6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50PFQsIFBULCBELCBQRD4pOiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb248UFQsIFBEPiB7XG4gIHJldHVybiBzdG9yZS5lZmZlY3QoKGlucHV0OiBPYnNlcnZhYmxlPE1heWJlPERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxQVCwgUEQ+Pj4pID0+IHtcbiAgICByZXR1cm4gaW5wdXQucGlwZShcbiAgICAgIG1hcCgocGFyZW50U3RvcmUpID0+IHtcbiAgICAgICAgbGV0IHJlc3VsdDogTWF5YmU8U3Vic2NyaXB0aW9uPjtcblxuICAgICAgICBpZiAocGFyZW50U3RvcmUpIHtcbiAgICAgICAgICByZXN1bHQgPSBzdG9yZS5zZXRQYXJlbnQocGFyZW50U3RvcmUuY3VycmVudERvY3VtZW50JCkgYXMgU3Vic2NyaXB0aW9uO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc3VsdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNldCBhcyB0aGUgcGFyZW50IGxvY2sgc2V0IHRvb1xuICAgICAgICBzdG9yZS5zZXRQYXJlbnRMb2NrU2V0KHBhcmVudFN0b3JlKTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfSksXG4gICAgICBjbGVhbnVwKChzdWIpID0+IHtcbiAgICAgICAgaWYgKHN1Yikge1xuICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0UGFyZW50RWZmZWN0PFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+XG4gIChzdG9yZTogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQ8VCwgUFQsIEQsIFBEPik6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50RWZmZWN0RnVuY3Rpb248UEQ+IHtcbiAgcmV0dXJuIHN0b3JlLmVmZmVjdCgoaW5wdXQ6IE9ic2VydmFibGU8TWF5YmU8UEQ+PikgPT4ge1xuICAgIHJldHVybiBpbnB1dC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChwYXJlbnQpID0+IHtcbiAgICAgICAgc3RvcmUuX3NldFBhcmVudERvY3VtZW50KHBhcmVudCk7XG5cbiAgICAgICAgaWYgKHBhcmVudCkge1xuICAgICAgICAgIHJldHVybiBzdG9yZS5jb2xsZWN0aW9uRmFjdG9yeSQucGlwZShcbiAgICAgICAgICAgIHRhcCgoY29sbGVjdGlvbkZhY3RvcnkpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbiA9IGNvbGxlY3Rpb25GYWN0b3J5KHBhcmVudCk7XG4gICAgICAgICAgICAgIHN0b3JlLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24oY29sbGVjdGlvbik7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gY2xlYXIgdGhlIGN1cnJlbnQgY29sbGVjdGlvblxuICAgICAgICAgIHN0b3JlLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24odW5kZWZpbmVkKTtcblxuICAgICAgICAgIC8vIGRvIG5vdGhpbmcgdW50aWwgYSBwYXJlbnQgaXMgcmV0dXJuZWQuXG4gICAgICAgICAgcmV0dXJuIE5FVkVSO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0pO1xufVxuIl19
@@ -17,10 +17,10 @@ import { authState, GoogleAuthProvider, FacebookAuthProvider, TwitterAuthProvide
17
17
  import { sendPasswordResetEmail } from 'firebase/auth';
18
18
  import { addToSet, removeFromSet, filterMaybeValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, forEachKeyValue, readableError, isMaybeSo } from '@dereekb/util';
19
19
  import * as i1$1 from '@dereekb/dbx-form';
20
- import { AbstractAsyncFormlyFormDirective, usernamePasswordLoginFields, ProvideFormlyContext, AbstractSyncFormlyFormDirective, emailField, DbxFormIoModule, DbxFormModule, DbxFormlyModule, DbxFormActionModule, DbxFormFormlyTextFieldModule } from '@dereekb/dbx-form';
20
+ import { AbstractAsyncFormlyFormDirective, usernamePasswordLoginFields, provideFormlyContext, AbstractSyncFormlyFormDirective, emailField, DbxFormIoModule, DbxFormModule, DbxFormlyModule, DbxFormActionModule, DbxFormFormlyTextFieldModule } from '@dereekb/dbx-form';
21
21
  import { initializeApp } from 'firebase/app';
22
22
  import * as i5 from '@angular/fire/app';
23
- import { provideFirebaseApp } from '@angular/fire/app';
23
+ import { FirebaseApp, provideFirebaseApp } from '@angular/fire/app';
24
24
  import * as i3$2 from '@angular/fire/storage';
25
25
  import { provideStorage, getStorage, connectStorageEmulator } from '@angular/fire/storage';
26
26
  import * as i4$1 from '@angular/fire/functions';
@@ -28,7 +28,6 @@ import { provideFunctions, getFunctions, connectFunctionsEmulator, Functions } f
28
28
  import * as i1$2 from '@angular/fire/firestore';
29
29
  import { provideFirestore, getFirestore, connectFirestoreEmulator, enableIndexedDbPersistence, Firestore } from '@angular/fire/firestore';
30
30
  import { firebaseFirestoreContextFactory, iterationQueryDocChangeWatcher, firebaseQueryItemAccumulator, documentDataWithId } from '@dereekb/firebase';
31
- import { shareReplay as shareReplay$1 } from 'rxjs/operators';
32
31
 
33
32
  /**
34
33
  * Derives a user state from the input firebase auth service.
@@ -349,11 +348,11 @@ class DbxFirebaseLoginContext extends DbxInjectionContext {
349
348
  */
350
349
  class DbxFirebaseLoginButtonComponent {
351
350
  constructor() {
352
- this.handleAction = (value) => {
351
+ this.handleAction = () => {
353
352
  const loginPromise = this.config.handleLogin();
354
353
  return from(loginPromise);
355
354
  };
356
- this.onActionSuccess = (value) => {
355
+ this.onActionSuccess = () => {
357
356
  // todo: show checkmark on success?
358
357
  };
359
358
  }
@@ -700,13 +699,13 @@ class DbxFirebaseEmailFormComponent extends AbstractAsyncFormlyFormDirective {
700
699
  }
701
700
  }
702
701
  DbxFirebaseEmailFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseEmailFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
703
- DbxFirebaseEmailFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: { config: "config" }, providers: [ProvideFormlyContext()], usesInheritance: true, ngImport: i0, template: `<dbx-formly></dbx-formly>`, isInline: true, components: [{ type: i1$1.DbxFormlyFormComponent, selector: "dbx-formly", exportAs: ["formly"] }] });
702
+ DbxFirebaseEmailFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: { config: "config" }, providers: [provideFormlyContext()], usesInheritance: true, ngImport: i0, template: `<dbx-formly></dbx-formly>`, isInline: true, components: [{ type: i1$1.DbxFormlyFormComponent, selector: "dbx-formly", exportAs: ["formly"] }] });
704
703
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseEmailFormComponent, decorators: [{
705
704
  type: Component,
706
705
  args: [{
707
706
  template: `<dbx-formly></dbx-formly>`,
708
707
  selector: 'dbx-firebase-email-form',
709
- providers: [ProvideFormlyContext()]
708
+ providers: [provideFormlyContext()]
710
709
  }]
711
710
  }], propDecorators: { config: [{
712
711
  type: Input
@@ -719,13 +718,13 @@ class DbxFirebaseEmailRecoveryFormComponent extends AbstractSyncFormlyFormDirect
719
718
  }
720
719
  }
721
720
  DbxFirebaseEmailRecoveryFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseEmailRecoveryFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
722
- DbxFirebaseEmailRecoveryFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form", providers: [ProvideFormlyContext()], usesInheritance: true, ngImport: i0, template: `<dbx-formly></dbx-formly>`, isInline: true, components: [{ type: i1$1.DbxFormlyFormComponent, selector: "dbx-formly", exportAs: ["formly"] }] });
721
+ DbxFirebaseEmailRecoveryFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form", providers: [provideFormlyContext()], usesInheritance: true, ngImport: i0, template: `<dbx-formly></dbx-formly>`, isInline: true, components: [{ type: i1$1.DbxFormlyFormComponent, selector: "dbx-formly", exportAs: ["formly"] }] });
723
722
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseEmailRecoveryFormComponent, decorators: [{
724
723
  type: Component,
725
724
  args: [{
726
725
  template: `<dbx-formly></dbx-formly>`,
727
726
  selector: 'dbx-firebase-email-recovery-form',
728
- providers: [ProvideFormlyContext()]
727
+ providers: [provideFormlyContext()]
729
728
  }]
730
729
  }] });
731
730
 
@@ -764,15 +763,12 @@ class DbxFirebaseLoginEmailContentComponent {
764
763
  this.handleRecoveryAction = (value) => {
765
764
  this.recoveryFormValue = value;
766
765
  this.emailFormValue = { username: value.email, password: '' };
767
- let result = this.dbxFirebaseAuthService.sendPasswordResetEmail(value.email);
766
+ const result = this.dbxFirebaseAuthService.sendPasswordResetEmail(value.email);
768
767
  return from(result).pipe(tap(() => {
769
768
  this.onRecoveringSuccess();
770
769
  }));
771
770
  };
772
771
  }
773
- ngOnDestroy() {
774
- this._emailMode.complete();
775
- }
776
772
  static openEmailLoginContext(dbxFirebaseLoginContext, config) {
777
773
  return dbxFirebaseLoginContext.showContext({
778
774
  config: {
@@ -782,6 +778,9 @@ class DbxFirebaseLoginEmailContentComponent {
782
778
  use: (instance) => firstValueFrom(instance.doneOrCancelled)
783
779
  });
784
780
  }
781
+ ngOnDestroy() {
782
+ this._emailMode.complete();
783
+ }
785
784
  get loginMode() {
786
785
  return this.config.loginMode;
787
786
  }
@@ -800,6 +799,7 @@ class DbxFirebaseLoginEmailContentComponent {
800
799
  }
801
800
  // MARK: Recovering
802
801
  onRecoveringSuccess() {
802
+ // optionally override in parent
803
803
  }
804
804
  // MARK: Cancel
805
805
  onCancel() {
@@ -810,7 +810,7 @@ class DbxFirebaseLoginEmailContentComponent {
810
810
  }
811
811
  }
812
812
  DbxFirebaseLoginEmailContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseLoginEmailContentComponent, deps: [{ token: DbxFirebaseAuthService }, { token: DBX_INJECTION_COMPONENT_DATA }], target: i0.ɵɵFactoryTarget.Component });
813
- DbxFirebaseLoginEmailContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseLoginEmailContentComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\">\n </dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <ng-container dbxAction [dbxActionHandler]=\"handleRecoveryAction\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\">\n </dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n", components: [{ type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: ["config"] }, { type: i3.DbxAnchorLinkComponent, selector: "dbx-link", inputs: ["anchor", "ref", "href"] }, { type: i3.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "raised", "stroked", "flat", "color", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.DbxReadableErrorComponent, selector: "dbx-error", inputs: ["error"] }, { type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form" }], directives: [{ type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3$1.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { type: i3$1.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { type: i1$1.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { type: i1$1.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { type: i3.DbxButtonSpacerDirective, selector: "dbx-button-spacer,dbxButtonSpacer" }, { type: i3.DbxActionErrorDirective, selector: "[dbxActionError]" }], pipes: { "async": i6.AsyncPipe } });
813
+ DbxFirebaseLoginEmailContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseLoginEmailContentComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\">\n </dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <ng-container dbxAction [dbxActionHandler]=\"handleRecoveryAction\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\">\n </dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n", components: [{ type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: ["config"] }, { type: i3.DbxAnchorLinkComponent, selector: "dbx-link", inputs: ["anchor", "ref", "href"] }, { type: i3.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "raised", "stroked", "flat", "color", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.DbxReadableErrorComponent, selector: "dbx-error", inputs: ["error"] }, { type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form" }], directives: [{ type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3$1.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { type: i3$1.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { type: i1$1.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { type: i1$1.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { type: i3.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { type: i3.DbxActionErrorDirective, selector: "[dbxActionError]" }], pipes: { "async": i6.AsyncPipe } });
814
814
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseLoginEmailContentComponent, decorators: [{
815
815
  type: Component,
816
816
  args: [{ template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\">\n </dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <ng-container dbxAction [dbxActionHandler]=\"handleRecoveryAction\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\">\n </dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton>\n </dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n" }]
@@ -989,14 +989,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
989
989
 
990
990
  class DbxFirebaseLoginContextBackButtonComponent {
991
991
  constructor() {
992
- this.onCancel = new EventEmitter();
992
+ this.cancelLogin = new EventEmitter();
993
993
  this.anchor = {
994
- onClick: () => this.onCancel.emit()
994
+ onClick: () => this.cancelLogin.emit()
995
995
  };
996
996
  }
997
997
  }
998
998
  DbxFirebaseLoginContextBackButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseLoginContextBackButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
999
- DbxFirebaseLoginContextBackButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseLoginContextBackButtonComponent, selector: "dbx-firebase-login-context-back-button", outputs: { onCancel: "onCancel" }, ngImport: i0, template: `
999
+ DbxFirebaseLoginContextBackButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseLoginContextBackButtonComponent, selector: "dbx-firebase-login-context-back-button", outputs: { cancelLogin: "cancelLogin" }, ngImport: i0, template: `
1000
1000
  <dbx-link [anchor]="anchor">Choose other login method.</dbx-link>
1001
1001
  `, isInline: true, components: [{ type: i3.DbxAnchorLinkComponent, selector: "dbx-link", inputs: ["anchor", "ref", "href"] }] });
1002
1002
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseLoginContextBackButtonComponent, decorators: [{
@@ -1007,7 +1007,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1007
1007
  <dbx-link [anchor]="anchor">Choose other login method.</dbx-link>
1008
1008
  `
1009
1009
  }]
1010
- }], propDecorators: { onCancel: [{
1010
+ }], propDecorators: { cancelLogin: [{
1011
1011
  type: Output
1012
1012
  }] } });
1013
1013
 
@@ -1296,7 +1296,8 @@ DbxFirebaseDefaultFirestoreProviderModule.ɵfac = i0.ɵɵngDeclareFactory({ minV
1296
1296
  DbxFirebaseDefaultFirestoreProviderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirestoreProviderModule, imports: [i1$2.FirestoreModule] });
1297
1297
  DbxFirebaseDefaultFirestoreProviderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirestoreProviderModule, imports: [[
1298
1298
  provideFirestore(((injector) => {
1299
- const firestore = getFirestore();
1299
+ const firebaseApp = injector.get(FirebaseApp);
1300
+ const firestore = getFirestore(firebaseApp);
1300
1301
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1301
1302
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.firestore)) {
1302
1303
  connectFirestoreEmulator(firestore, emulators.firestore.host, emulators.firestore.port, {});
@@ -1310,7 +1311,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1310
1311
  args: [{
1311
1312
  imports: [
1312
1313
  provideFirestore(((injector) => {
1313
- const firestore = getFirestore();
1314
+ const firebaseApp = injector.get(FirebaseApp);
1315
+ const firestore = getFirestore(firebaseApp);
1314
1316
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1315
1317
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.firestore)) {
1316
1318
  connectFirestoreEmulator(firestore, emulators.firestore.host, emulators.firestore.port, {});
@@ -1330,7 +1332,8 @@ DbxFirebaseDefaultAuthProviderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersio
1330
1332
  DbxFirebaseDefaultAuthProviderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultAuthProviderModule, imports: [i1.AuthModule] });
1331
1333
  DbxFirebaseDefaultAuthProviderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultAuthProviderModule, imports: [[
1332
1334
  provideAuth(((injector) => {
1333
- const auth = getAuth();
1335
+ const firebaseApp = injector.get(FirebaseApp);
1336
+ const auth = getAuth(firebaseApp);
1334
1337
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1335
1338
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.auth)) {
1336
1339
  connectAuthEmulator(auth, `http://${emulators.auth.host}:${emulators.auth.port}`);
@@ -1343,7 +1346,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1343
1346
  args: [{
1344
1347
  imports: [
1345
1348
  provideAuth(((injector) => {
1346
- const auth = getAuth();
1349
+ const firebaseApp = injector.get(FirebaseApp);
1350
+ const auth = getAuth(firebaseApp);
1347
1351
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1348
1352
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.auth)) {
1349
1353
  connectAuthEmulator(auth, `http://${emulators.auth.host}:${emulators.auth.port}`);
@@ -1362,7 +1366,8 @@ DbxFirebaseDefaultStorageProviderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVer
1362
1366
  DbxFirebaseDefaultStorageProviderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultStorageProviderModule, imports: [i3$2.StorageModule] });
1363
1367
  DbxFirebaseDefaultStorageProviderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultStorageProviderModule, imports: [[
1364
1368
  provideStorage(((injector) => {
1365
- const storage = getStorage();
1369
+ const firebaseApp = injector.get(FirebaseApp);
1370
+ const storage = getStorage(firebaseApp);
1366
1371
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1367
1372
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.storage)) {
1368
1373
  connectStorageEmulator(storage, emulators.storage.host, emulators.storage.port, {});
@@ -1375,7 +1380,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1375
1380
  args: [{
1376
1381
  imports: [
1377
1382
  provideStorage(((injector) => {
1378
- const storage = getStorage();
1383
+ const firebaseApp = injector.get(FirebaseApp);
1384
+ const storage = getStorage(firebaseApp);
1379
1385
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1380
1386
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.storage)) {
1381
1387
  connectStorageEmulator(storage, emulators.storage.host, emulators.storage.port, {});
@@ -1394,7 +1400,10 @@ DbxFirebaseDefaultFunctionsProviderModule.ɵfac = i0.ɵɵngDeclareFactory({ minV
1394
1400
  DbxFirebaseDefaultFunctionsProviderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFunctionsProviderModule, imports: [i4$1.FunctionsModule] });
1395
1401
  DbxFirebaseDefaultFunctionsProviderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFunctionsProviderModule, imports: [[
1396
1402
  provideFunctions(((injector) => {
1397
- const functions = getFunctions();
1403
+ const firebaseApp = injector.get(FirebaseApp);
1404
+ const firebaseOptions = injector.get(DBX_FIREBASE_OPTIONS_TOKEN);
1405
+ const { functionsRegionOrCustomDomain } = firebaseOptions;
1406
+ const functions = getFunctions(firebaseApp, functionsRegionOrCustomDomain);
1398
1407
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1399
1408
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.functions)) {
1400
1409
  connectFunctionsEmulator(functions, emulators.functions.host, emulators.functions.port);
@@ -1407,7 +1416,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
1407
1416
  args: [{
1408
1417
  imports: [
1409
1418
  provideFunctions(((injector) => {
1410
- const functions = getFunctions();
1419
+ const firebaseApp = injector.get(FirebaseApp);
1420
+ const firebaseOptions = injector.get(DBX_FIREBASE_OPTIONS_TOKEN);
1421
+ const { functionsRegionOrCustomDomain } = firebaseOptions;
1422
+ const functions = getFunctions(firebaseApp, functionsRegionOrCustomDomain);
1411
1423
  const emulators = injector.get(DbxFirebaseParsedEmulatorsConfig, undefined);
1412
1424
  if ((emulators === null || emulators === void 0 ? void 0 : emulators.useEmulators) && (emulators === null || emulators === void 0 ? void 0 : emulators.functions)) {
1413
1425
  connectFunctionsEmulator(functions, emulators.functions.host, emulators.functions.port);
@@ -1433,29 +1445,29 @@ class DbxFirebaseDefaultFirebaseProvidersModule {
1433
1445
  }
1434
1446
  }
1435
1447
  DbxFirebaseDefaultFirebaseProvidersModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirebaseProvidersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1436
- DbxFirebaseDefaultFirebaseProvidersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirebaseProvidersModule, imports: [DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDefaultFunctionsProviderModule, i5.FirebaseAppModule] });
1448
+ DbxFirebaseDefaultFirebaseProvidersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirebaseProvidersModule, imports: [i5.FirebaseAppModule, DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDefaultFunctionsProviderModule] });
1437
1449
  DbxFirebaseDefaultFirebaseProvidersModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirebaseProvidersModule, imports: [[
1438
- DbxFirebaseDefaultFirestoreProviderModule,
1439
- DbxFirebaseDefaultAuthProviderModule,
1440
- DbxFirebaseDefaultStorageProviderModule,
1441
- DbxFirebaseDefaultFunctionsProviderModule,
1442
1450
  provideFirebaseApp(((injector) => {
1443
1451
  const firebaseOptions = injector.get(DBX_FIREBASE_OPTIONS_TOKEN);
1444
1452
  return initializeApp(firebaseOptions);
1445
- }))
1453
+ })),
1454
+ DbxFirebaseDefaultFirestoreProviderModule,
1455
+ DbxFirebaseDefaultAuthProviderModule,
1456
+ DbxFirebaseDefaultStorageProviderModule,
1457
+ DbxFirebaseDefaultFunctionsProviderModule
1446
1458
  ]] });
1447
1459
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseDefaultFirebaseProvidersModule, decorators: [{
1448
1460
  type: NgModule,
1449
1461
  args: [{
1450
1462
  imports: [
1451
- DbxFirebaseDefaultFirestoreProviderModule,
1452
- DbxFirebaseDefaultAuthProviderModule,
1453
- DbxFirebaseDefaultStorageProviderModule,
1454
- DbxFirebaseDefaultFunctionsProviderModule,
1455
1463
  provideFirebaseApp(((injector) => {
1456
1464
  const firebaseOptions = injector.get(DBX_FIREBASE_OPTIONS_TOKEN);
1457
1465
  return initializeApp(firebaseOptions);
1458
- }))
1466
+ })),
1467
+ DbxFirebaseDefaultFirestoreProviderModule,
1468
+ DbxFirebaseDefaultAuthProviderModule,
1469
+ DbxFirebaseDefaultStorageProviderModule,
1470
+ DbxFirebaseDefaultFunctionsProviderModule
1459
1471
  ]
1460
1472
  }]
1461
1473
  }] });
@@ -1948,7 +1960,7 @@ class DbxFirebaseDocumentStoreRouteIdDirective extends AbstractSubscriptionDirec
1948
1960
  this.idFromParams$ = combineLatest([this.idParamKey$, this.dbxRouterService.params$]).pipe(map(([key, params]) => {
1949
1961
  var _a;
1950
1962
  return (_a = params[key]) !== null && _a !== void 0 ? _a : undefined;
1951
- }), distinctUntilChanged(), shareReplay$1(1));
1963
+ }), distinctUntilChanged(), shareReplay(1));
1952
1964
  }
1953
1965
  ngOnInit() {
1954
1966
  this.sub = this.dbxFirebaseDocumentStoreDirective.store.setId(this.idFromParams$);
@@ -2095,7 +2107,7 @@ class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
2095
2107
  this.id$ = this.document$.pipe(map(x => x.id), shareReplay());
2096
2108
  this.ref$ = this.document$.pipe(map(x => x.documentRef), shareReplay());
2097
2109
  this.snapshot$ = this.document$.pipe(switchMap(x => x.accessor.stream()), shareReplay(1));
2098
- this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(_ => loadingStateFromObs(this.snapshot$)), shareReplay(1));
2110
+ this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(() => loadingStateFromObs(this.snapshot$)), shareReplay(1));
2099
2111
  this.currentData$ = this.document$.pipe(switchMap(x => x.accessor.stream().pipe(map(y => documentDataWithId(y)))), shareReplay(1));
2100
2112
  this.data$ = this.currentDocument$.pipe(switchMap(() => this.currentData$.pipe(filterMaybe())), shareReplay(1));
2101
2113
  this.dataLoadingState$ = this.snapshotLoadingState$.pipe(map((x) => {