@dereekb/dbx-firebase 5.0.0 → 5.2.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 (122) hide show
  1. package/_index.scss +4 -4
  2. package/esm2020/lib/auth/appcheck/appcheck.interceptor.mjs +80 -0
  3. package/esm2020/lib/auth/appcheck/appcheck.mjs +11 -0
  4. package/esm2020/lib/auth/appcheck/index.mjs +3 -0
  5. package/esm2020/lib/auth/auth.mjs +1 -1
  6. package/esm2020/lib/auth/error.mjs +1 -1
  7. package/esm2020/lib/auth/firebase.auth.module.mjs +1 -1
  8. package/esm2020/lib/auth/index.mjs +2 -1
  9. package/esm2020/lib/auth/login/firebase.login.module.mjs +49 -57
  10. package/esm2020/lib/auth/login/login.anonymous.component.mjs +3 -3
  11. package/esm2020/lib/auth/login/login.apple.component.mjs +3 -3
  12. package/esm2020/lib/auth/login/login.button.component.mjs +34 -36
  13. package/esm2020/lib/auth/login/login.component.mjs +3 -3
  14. package/esm2020/lib/auth/login/login.context.back.component.mjs +4 -4
  15. package/esm2020/lib/auth/login/login.context.directive.mjs +13 -9
  16. package/esm2020/lib/auth/login/login.context.mjs +2 -2
  17. package/esm2020/lib/auth/login/login.email.component.mjs +4 -4
  18. package/esm2020/lib/auth/login/login.email.content.component.mjs +4 -4
  19. package/esm2020/lib/auth/login/login.email.form.component.mjs +11 -7
  20. package/esm2020/lib/auth/login/login.email.recovery.form.component.mjs +9 -5
  21. package/esm2020/lib/auth/login/login.facebook.component.mjs +3 -3
  22. package/esm2020/lib/auth/login/login.github.component.mjs +3 -3
  23. package/esm2020/lib/auth/login/login.google.component.mjs +3 -3
  24. package/esm2020/lib/auth/login/login.list.component.mjs +11 -13
  25. package/esm2020/lib/auth/login/login.microsoft.component.mjs +3 -3
  26. package/esm2020/lib/auth/login/login.mjs +1 -1
  27. package/esm2020/lib/auth/login/login.password.mjs +1 -1
  28. package/esm2020/lib/auth/login/login.service.mjs +8 -8
  29. package/esm2020/lib/auth/login/login.terms.component.mjs +10 -6
  30. package/esm2020/lib/auth/login/login.terms.mjs +1 -1
  31. package/esm2020/lib/auth/login/login.terms.simple.component.mjs +12 -12
  32. package/esm2020/lib/auth/login/login.twitter.component.mjs +3 -3
  33. package/esm2020/lib/auth/login/register.component.mjs +8 -4
  34. package/esm2020/lib/auth/login/register.email.component.mjs +4 -4
  35. package/esm2020/lib/auth/service/firebase.auth.rxjs.mjs +3 -3
  36. package/esm2020/lib/auth/service/firebase.auth.service.mjs +12 -12
  37. package/esm2020/lib/firebase/appcheck.mjs +2 -0
  38. package/esm2020/lib/firebase/emulators.mjs +1 -1
  39. package/esm2020/lib/firebase/firebase.emulator.module.mjs +6 -4
  40. package/esm2020/lib/firebase/firebase.module.mjs +106 -13
  41. package/esm2020/lib/firebase/index.mjs +2 -1
  42. package/esm2020/lib/firebase/options.mjs +3 -2
  43. package/esm2020/lib/firestore/firebase.firestore.context.service.mjs +1 -1
  44. package/esm2020/lib/firestore/firebase.firestore.module.mjs +11 -8
  45. package/esm2020/lib/function/firebase.function.module.mjs +8 -6
  46. package/esm2020/lib/model/error.mjs +2 -2
  47. package/esm2020/lib/model/loader/collection.loader.instance.mjs +9 -10
  48. package/esm2020/lib/model/loader/collection.loader.mjs +1 -1
  49. package/esm2020/lib/model/model.module.mjs +4 -6
  50. package/esm2020/lib/model/store/index.mjs +2 -1
  51. package/esm2020/lib/model/store/model.store.module.mjs +10 -30
  52. package/esm2020/lib/model/store/store.collection.change.directive.mjs +6 -4
  53. package/esm2020/lib/model/store/store.collection.change.if.directive.mjs +1 -1
  54. package/esm2020/lib/model/store/store.collection.directive.mjs +5 -3
  55. package/esm2020/lib/model/store/store.collection.list.directive.mjs +2 -2
  56. package/esm2020/lib/model/store/store.collection.mjs +8 -8
  57. package/esm2020/lib/model/store/store.document.auth.directive.mjs +4 -4
  58. package/esm2020/lib/model/store/store.document.directive.mjs +5 -3
  59. package/esm2020/lib/model/store/store.document.mjs +12 -12
  60. package/esm2020/lib/model/store/store.document.router.directive.mjs +1 -1
  61. package/esm2020/lib/model/store/store.subcollection.directive.mjs +30 -0
  62. package/esm2020/lib/model/store/store.subcollection.document.mjs +23 -6
  63. package/esm2020/lib/model/store/store.subcollection.mjs +53 -11
  64. package/esm2020/lib/model/store/store.subcollection.rxjs.mjs +4 -23
  65. package/esm2020/lib/module.mjs +4 -6
  66. package/fesm2015/dereekb-dbx-firebase.mjs +509 -263
  67. package/fesm2015/dereekb-dbx-firebase.mjs.map +1 -1
  68. package/fesm2020/dereekb-dbx-firebase.mjs +501 -263
  69. package/fesm2020/dereekb-dbx-firebase.mjs.map +1 -1
  70. package/lib/auth/appcheck/appcheck.d.ts +8 -0
  71. package/lib/auth/appcheck/appcheck.interceptor.d.ts +19 -0
  72. package/lib/auth/appcheck/index.d.ts +2 -0
  73. package/lib/auth/auth.d.ts +1 -1
  74. package/lib/auth/error.d.ts +1 -1
  75. package/lib/auth/index.d.ts +1 -0
  76. package/lib/auth/login/_login.scss +5 -5
  77. package/lib/auth/login/login.anonymous.component.d.ts +1 -1
  78. package/lib/auth/login/login.apple.component.d.ts +1 -1
  79. package/lib/auth/login/login.button.component.d.ts +5 -5
  80. package/lib/auth/login/login.context.back.component.d.ts +1 -1
  81. package/lib/auth/login/login.context.d.ts +1 -1
  82. package/lib/auth/login/login.context.directive.d.ts +2 -2
  83. package/lib/auth/login/login.email.component.d.ts +1 -1
  84. package/lib/auth/login/login.email.content.component.d.ts +2 -2
  85. package/lib/auth/login/login.email.form.component.d.ts +6 -6
  86. package/lib/auth/login/login.email.recovery.form.component.d.ts +2 -2
  87. package/lib/auth/login/login.facebook.component.d.ts +1 -1
  88. package/lib/auth/login/login.github.component.d.ts +1 -1
  89. package/lib/auth/login/login.google.component.d.ts +1 -1
  90. package/lib/auth/login/login.list.component.d.ts +1 -1
  91. package/lib/auth/login/login.microsoft.component.d.ts +1 -1
  92. package/lib/auth/login/login.password.d.ts +1 -1
  93. package/lib/auth/login/login.service.d.ts +4 -4
  94. package/lib/auth/login/login.terms.component.d.ts +1 -1
  95. package/lib/auth/login/login.twitter.component.d.ts +1 -1
  96. package/lib/auth/login/register.email.component.d.ts +1 -1
  97. package/lib/auth/service/firebase.auth.rxjs.d.ts +1 -1
  98. package/lib/auth/service/firebase.auth.service.d.ts +3 -3
  99. package/lib/firebase/appcheck.d.ts +21 -0
  100. package/lib/firebase/firebase.module.d.ts +20 -10
  101. package/lib/firebase/index.d.ts +1 -0
  102. package/lib/firebase/options.d.ts +10 -3
  103. package/lib/firestore/firebase.firestore.module.d.ts +3 -3
  104. package/lib/function/firebase.function.module.d.ts +4 -4
  105. package/lib/model/loader/collection.loader.d.ts +4 -4
  106. package/lib/model/loader/collection.loader.instance.d.ts +8 -8
  107. package/lib/model/store/index.d.ts +1 -0
  108. package/lib/model/store/store.collection.change.directive.d.ts +2 -2
  109. package/lib/model/store/store.collection.d.ts +7 -7
  110. package/lib/model/store/store.collection.directive.d.ts +3 -3
  111. package/lib/model/store/store.document.auth.directive.d.ts +4 -4
  112. package/lib/model/store/store.document.directive.d.ts +2 -2
  113. package/lib/model/store/store.subcollection.d.ts +29 -9
  114. package/lib/model/store/store.subcollection.directive.d.ts +23 -0
  115. package/lib/model/store/store.subcollection.document.d.ts +9 -8
  116. package/lib/model/store/store.subcollection.rxjs.d.ts +12 -11
  117. package/lib/style/_config.scss +8 -6
  118. package/lib/style/_core.scss +1 -1
  119. package/lib/style/_mixin.scss +1 -1
  120. package/lib/style/_theming.scss +2 -12
  121. package/lib/style/_variables.scss +1 -1
  122. package/package.json +8 -7
@@ -16,9 +16,9 @@ export class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
16
16
  // MARK: Accessors
17
17
  this.currentFirestoreCollection$ = this.state$.pipe(map((x) => x.firestoreCollection), distinctUntilChanged(), shareReplay(1));
18
18
  this.firestoreCollection$ = this.currentFirestoreCollection$.pipe(filterMaybe());
19
- this.currentInputId$ = this.state$.pipe(map(x => x.id), distinctUntilChanged(), shareReplay(1));
19
+ this.currentInputId$ = this.state$.pipe(map((x) => x.id), distinctUntilChanged(), shareReplay(1));
20
20
  this.inputId$ = this.currentInputId$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
21
- this.currentInputRef$ = this.state$.pipe(map(x => x.ref), distinctUntilChanged(), shareReplay(1));
21
+ this.currentInputRef$ = this.state$.pipe(map((x) => x.ref), distinctUntilChanged(), shareReplay(1));
22
22
  this.inputRef$ = this.currentInputRef$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
23
23
  this.currentDocument$ = combineLatest([this.currentFirestoreCollection$, this.currentInputId$, this.currentInputRef$]).pipe(map(([collection, id, ref]) => {
24
24
  let document;
@@ -33,12 +33,12 @@ export class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
33
33
  return document;
34
34
  }), distinctUntilChanged(), shareReplay(1));
35
35
  this.document$ = this.currentDocument$.pipe(filterMaybe(), distinctUntilChanged(), shareReplay(1));
36
- this.documentLoadingState$ = this.currentDocument$.pipe(map(x => (x) ? successResult(x) : beginLoading()), shareReplay(1));
37
- this.id$ = this.document$.pipe(map(x => x.id), shareReplay());
38
- this.ref$ = this.document$.pipe(map(x => x.documentRef), shareReplay());
39
- this.snapshot$ = this.document$.pipe(switchMap(x => x.accessor.stream()), shareReplay(1));
36
+ this.documentLoadingState$ = this.currentDocument$.pipe(map((x) => (x ? successResult(x) : beginLoading())), shareReplay(1));
37
+ this.id$ = this.document$.pipe(map((x) => x.id), shareReplay());
38
+ this.ref$ = this.document$.pipe(map((x) => x.documentRef), shareReplay());
39
+ this.snapshot$ = this.document$.pipe(switchMap((x) => x.accessor.stream()), shareReplay(1));
40
40
  this.snapshotLoadingState$ = this.currentDocument$.pipe(switchMap(() => loadingStateFromObs(this.snapshot$)), shareReplay(1));
41
- this.currentData$ = this.document$.pipe(switchMap(x => x.accessor.stream().pipe(map(y => documentDataWithId(y)))), shareReplay(1));
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) => {
44
44
  let result;
@@ -59,17 +59,17 @@ export class AbstractDbxFirebaseDocumentStore extends LockSetComponentStore {
59
59
  }
60
60
  return result;
61
61
  }), shareReplay(1));
62
- this.exists$ = this.currentData$.pipe(map(x => isMaybeSo(x)), shareReplay(1));
63
- this.doesNotExist$ = this.exists$.pipe(map(x => !x), shareReplay(1));
62
+ this.exists$ = this.currentData$.pipe(map((x) => isMaybeSo(x)), shareReplay(1));
63
+ this.doesNotExist$ = this.exists$.pipe(map((x) => !x), shareReplay(1));
64
64
  // MARK: State Changes
65
65
  /**
66
66
  * Sets the id of the document to load.
67
67
  */
68
- this.setId = this.updater((state, id) => (id) ? ({ ...state, id, ref: undefined }) : ({ ...state, id }));
68
+ this.setId = this.updater((state, id) => (id ? { ...state, id, ref: undefined } : { ...state, id }));
69
69
  /**
70
70
  * Sets the ref of the document to load.
71
71
  */
72
- this.setRef = this.updater((state, ref) => (ref) ? ({ ...state, id: undefined, ref }) : ({ ...state, ref }));
72
+ this.setRef = this.updater((state, ref) => (ref ? { ...state, id: undefined, ref } : { ...state, ref }));
73
73
  this.setFirestoreCollection = this.updater((state, firestoreCollection) => ({ ...state, firestoreCollection }));
74
74
  }
75
75
  }
@@ -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,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
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9zdG9yZS9zdG9yZS5kb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ2xILE9BQU8sRUFBK0Usa0JBQWtCLEVBQXNCLE1BQU0sbUJBQW1CLENBQUM7QUFDeEosT0FBTyxFQUFFLFdBQVcsRUFBZ0IsWUFBWSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzVJLE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBcUNsRDs7R0FFRztBQUVILE1BQU0sT0FBTyxnQ0FBOEwsU0FBUSxxQkFBd0I7SUFEM087O1FBRUUsZ0JBQWdCO1FBRWhCLGtCQUFrQjtRQUNULGdDQUEyQixHQUFpRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsRUFDakMsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyx5QkFBb0IsR0FBMEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRW5ILG9CQUFlLEdBQWdDLElBQUksQ0FBQyxN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Q0FBQyxDQUFDO0tBQ3ZKOzs2SEFqSVksZ0NBQWdDO2lJQUFoQyxnQ0FBZ0M7MkZBQWhDLGdDQUFnQztrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAsIGNvbWJpbmVMYXRlc3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRG9jdW1lbnRTbmFwc2hvdCwgRG9jdW1lbnRSZWZlcmVuY2UsIEZpcmVzdG9yZUNvbGxlY3Rpb24sIEZpcmVzdG9yZURvY3VtZW50LCBkb2N1bWVudERhdGFXaXRoSWQsIERvY3VtZW50RGF0YVdpdGhJZCB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IGZpbHRlck1heWJlLCBMb2FkaW5nU3RhdGUsIGJlZ2luTG9hZGluZywgc3VjY2Vzc1Jlc3VsdCwgbG9hZGluZ1N0YXRlRnJvbU9icywgZXJyb3JSZXN1bHQsIE9ic2VydmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSwgTW9kZWxLZXksIGlzTWF5YmVTbyB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgTG9ja1NldENvbXBvbmVudCwgTG9ja1NldENvbXBvbmVudFN0b3JlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgbW9kZWxEb2VzTm90RXhpc3RFcnJvciB9IGZyb20gJy4uL2Vycm9yJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4+IGV4dGVuZHMgTG9ja1NldENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGZpcmVzdG9yZUNvbGxlY3Rpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+O1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRJbnB1dElkJDogT2JzZXJ2YWJsZTxNYXliZTxNb2RlbEtleT4+O1xuICByZWFkb25seSBpbnB1dElkJDogT2JzZXJ2YWJsZTxNb2RlbEtleT47XG4gIHJlYWRvbmx5IGN1cnJlbnRJbnB1dFJlZiQ6IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+PjtcbiAgcmVhZG9ubHkgaW5wdXRSZWYkOiBPYnNlcnZhYmxlPERvY3VtZW50UmVmZXJlbmNlPFQ+PjtcblxuICByZWFkb25seSBjdXJyZW50RG9jdW1lbnQkOiBPYnNlcnZhYmxlPE1heWJlPEQ+PjtcbiAgcmVhZG9ubHkgZG9jdW1lbnQkOiBPYnNlcnZhYmxlPEQ+O1xuICByZWFkb25seSBpZCQ6IE9ic2VydmFibGU8TW9kZWxLZXk+O1xuICByZWFkb25seSByZWYkOiBPYnNlcnZhYmxlPERvY3VtZW50UmVmZXJlbmNlPFQ+PjtcbiAgcmVhZG9ubHkgZG9jdW1lbnRMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxEPj47XG4gIHJlYWRvbmx5IHNuYXBzaG90JDogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PFQ+PjtcbiAgcmVhZG9ubHkgc25hcHNob3RMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxEb2N1bWVudFNuYXBzaG90PFQ+Pj47XG4gIHJlYWRvbmx5IGN1cnJlbnREYXRhJDogT2JzZXJ2YWJsZTxNYXliZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PjtcbiAgcmVhZG9ubHkgZGF0YSQ6IE9ic2VydmFibGU8RG9jdW1lbnREYXRhV2l0aElkPFQ+PjtcbiAgcmVhZG9ubHkgZGF0YUxvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4+O1xuICByZWFkb25seSBleGlzdHMkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHNldElkOiAob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPHN0cmluZz4+KSA9PiBTdWJzY3JpcHRpb247XG4gIHNldFJlZjogKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4+KSA9PiBTdWJzY3JpcHRpb247XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZpcmVzdG9yZSBjb2xsZWN0aW9uIHRvIHJldHJpZXZlIGRvY3VtZW50IGZyb20uXG4gICAqL1xuICByZWFkb25seSBzZXRGaXJlc3RvcmVDb2xsZWN0aW9uOiAoKCkgPT4gdm9pZCkgfCAoKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+Pj4pID0+IFN1YnNjcmlwdGlvbik7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlQ29udGV4dFN0YXRlPFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+PiB7XG4gIHJlYWRvbmx5IGZpcmVzdG9yZUNvbGxlY3Rpb24/OiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+PjtcbiAgcmVhZG9ubHkgaWQ/OiBNYXliZTxNb2RlbEtleT47XG4gIHJlYWRvbmx5IHJlZj86IE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+Pjtcbn1cblxuLyoqXG4gKiBVc2VkIGZvciBzdG9yaW5nIHRoZSBzdGF0ZSBvZiBhIFBlcnNvbiBhbmQgcmVsYXRlZCBlbWFpbCB0aHJlYWRzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWJzdHJhY3REYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8VCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIEMgZXh0ZW5kcyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgRD4gPSBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgRD4+IGV4dGVuZHMgTG9ja1NldENvbXBvbmVudFN0b3JlPEM+IGltcGxlbWVudHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPFQsIEQ+IHtcbiAgLy8gTUFSSzogRWZmZWN0c1xuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBjdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQ6IE9ic2VydmFibGU8TWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbjxULCBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguZmlyZXN0b3JlQ29sbGVjdGlvbiksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGZpcmVzdG9yZUNvbGxlY3Rpb24kOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb248VCwgRD4+ID0gdGhpcy5jdXJyZW50RmlyZXN0b3JlQ29sbGVjdGlvbiQucGlwZShmaWx0ZXJNYXliZSgpKTtcblxuICByZWFkb25seSBjdXJyZW50SW5wdXRJZCQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LmlkKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaW5wdXRJZCQ6IE9ic2VydmFibGU8TW9kZWxLZXk+ID0gdGhpcy5jdXJyZW50SW5wdXRJZCQucGlwZShmaWx0ZXJNYXliZSgpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgY3VycmVudElucHV0UmVmJDogT2JzZXJ2YWJsZTxNYXliZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHgucmVmKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaW5wdXRSZWYkOiBPYnNlcnZhYmxlPERvY3VtZW50UmVmZXJlbmNlPFQ+PiA9IHRoaXMuY3VycmVudElucHV0UmVmJC5waXBlKGZpbHRlck1heWJlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBjdXJyZW50RG9jdW1lbnQkOiBPYnNlcnZhYmxlPE1heWJlPEQ+PiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuY3VycmVudEZpcmVzdG9yZUNvbGxlY3Rpb24kLCB0aGlzLmN1cnJlbnRJbnB1dElkJCwgdGhpcy5jdXJyZW50SW5wdXRSZWYkXSkucGlwZShcbiAgICBtYXAoKFtjb2xsZWN0aW9uLCBpZCwgcmVmXSkgPT4ge1xuICAgICAgbGV0IGRvY3VtZW50OiBNYXliZTxEPjtcblxuICAgICAgaWYgKGNvbGxlY3Rpb24pIHtcbiAgICAgICAgaWYgKHJlZikge1xuICAgICAgICAgIGRvY3VtZW50ID0gY29sbGVjdGlvbi5kb2N1bWVudEFjY2Vzc29yKCkubG9hZERvY3VtZW50KHJlZik7XG4gICAgICAgIH0gZWxzZSBpZiAoaWQpIHtcbiAgICAgICAgICBkb2N1bWVudCA9IGNvbGxlY3Rpb24uZG9jdW1lbnRBY2Nlc3NvcigpLmxvYWREb2N1bWVudEZvclBhdGgoaWQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBkb2N1bWVudDtcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZG9jdW1lbnQkOiBPYnNlcnZhYmxlPEQ+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoZmlsdGVyTWF5YmUoKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IGRvY3VtZW50TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RD4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiAoeCA/IHN1Y2Nlc3NSZXN1bHQoeCkgOiBiZWdpbkxvYWRpbmc8RD4oKSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaWQkOiBPYnNlcnZhYmxlPE1vZGVsS2V5PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LmlkKSxcbiAgICBzaGFyZVJlcGxheSgpXG4gICk7XG5cbiAgcmVhZG9ubHkgcmVmJDogT2JzZXJ2YWJsZTxEb2N1bWVudFJlZmVyZW5jZTxUPj4gPSB0aGlzLmRvY3VtZW50JC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5kb2N1bWVudFJlZiksXG4gICAgc2hhcmVSZXBsYXkoKVxuICApO1xuXG4gIHJlYWRvbmx5IHNuYXBzaG90JDogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PFQ+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB4LmFjY2Vzc29yLnN0cmVhbSgpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHNuYXBzaG90TG9hZGluZ1N0YXRlJDogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8RG9jdW1lbnRTbmFwc2hvdDxUPj4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IGxvYWRpbmdTdGF0ZUZyb21PYnModGhpcy5zbmFwc2hvdCQpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnREYXRhJDogT2JzZXJ2YWJsZTxNYXliZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+PiA9IHRoaXMuZG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB4LmFjY2Vzc29yLnN0cmVhbSgpLnBpcGUobWFwKCh5KSA9PiBkb2N1bWVudERhdGFXaXRoSWQoeSkpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkYXRhJDogT2JzZXJ2YWJsZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+ID0gdGhpcy5jdXJyZW50RG9jdW1lbnQkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY3VycmVudERhdGEkLnBpcGUoZmlsdGVyTWF5YmUoKSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZGF0YUxvYWRpbmdTdGF0ZSQ6IE9ic2VydmFibGU8TG9hZGluZ1N0YXRlPERvY3VtZW50RGF0YVdpdGhJZDxUPj4+ID0gdGhpcy5zbmFwc2hvdExvYWRpbmdTdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHtcbiAgICAgIGxldCByZXN1bHQ6IExvYWRpbmdTdGF0ZTxEb2N1bWVudERhdGFXaXRoSWQ8VD4+O1xuXG4gICAgICBpZiAoeC52YWx1ZSkge1xuICAgICAgICBjb25zdCBkYXRhID0gZG9jdW1lbnREYXRhV2l0aElkKHgudmFsdWUpO1xuXG4gICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgcmVzdWx0ID0gc3VjY2Vzc1Jlc3VsdChkYXRhKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXN1bHQgPSBlcnJvclJlc3VsdChtb2RlbERvZXNOb3RFeGlzdEVycm9yKCkpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgLi4ueCxcbiAgICAgICAgICB2YWx1ZTogdW5kZWZpbmVkXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBleGlzdHMkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5jdXJyZW50RGF0YSQucGlwZShcbiAgICBtYXAoKHgpID0+IGlzTWF5YmVTbyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkb2VzTm90RXhpc3QkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5leGlzdHMkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiAheCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICAvLyBNQVJLOiBTdGF0ZSBDaGFuZ2VzXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpZCBvZiB0aGUgZG9jdW1lbnQgdG8gbG9hZC5cbiAgICovXG4gIHJlYWRvbmx5IHNldElkID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgaWQ6IE1heWJlPE1vZGVsS2V5PikgPT4gKGlkID8geyAuLi5zdGF0ZSwgaWQsIHJlZjogdW5kZWZpbmVkIH0gOiB7IC4uLnN0YXRlLCBpZCB9KSkgYXMgKG9ic2VydmFibGVPclZhbHVlOiBNYXliZTxzdHJpbmc+IHwgT2JzZXJ2YWJsZTxNYXliZTxzdHJpbmc+PikgPT4gU3Vic2NyaXB0aW9uO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSByZWYgb2YgdGhlIGRvY3VtZW50IHRvIGxvYWQuXG4gICAqL1xuICByZWFkb25seSBzZXRSZWYgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCByZWY6IE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+PikgPT4gKHJlZiA/IHsgLi4uc3RhdGUsIGlkOiB1bmRlZmluZWQsIHJlZiB9IDogeyAuLi5zdGF0ZSwgcmVmIH0pKSBhcyAob2JzZXJ2YWJsZU9yVmFsdWU6IE1heWJlPERvY3VtZW50UmVmZXJlbmNlPFQ+PiB8IE9ic2VydmFibGU8TWF5YmU8RG9jdW1lbnRSZWZlcmVuY2U8VD4+PikgPT4gU3Vic2NyaXB0aW9uO1xuXG4gIHJlYWRvbmx5IHNldEZpcmVzdG9yZUNvbGxlY3Rpb24gPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBmaXJlc3RvcmVDb2xsZWN0aW9uOiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+PikgPT4gKHsgLi4uc3RhdGUsIGZpcmVzdG9yZUNvbGxlY3Rpb24gfSkpO1xufVxuIl19
@@ -48,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
48
48
  type: Input,
49
49
  args: ['dbxFirebaseDocumentStoreRouteId']
50
50
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQucm91dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLmRvY3VtZW50LnJvdXRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBYyxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRyxPQUFPLEVBQWEsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFHL0UsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQUcsSUFBSSxDQUFDO0FBRWxFOztHQUVHO0FBSUgsTUFBTSxPQUFPLHdDQUFzRCxTQUFRLDZCQUE2QjtJQWF0RyxZQUNtQixpQ0FBdUUsRUFDL0UsZ0JBQWtDO1FBQzNDLEtBQUssRUFBRSxDQUFDO1FBRlMsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFzQztRQUMvRSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBYnJDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsNkNBQTZDLENBQUMsQ0FBQztRQUN4RixnQkFBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFOUMsa0JBQWEsR0FBZ0MsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3pILEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDcEIsT0FBUSxNQUFNLENBQUMsR0FBRyxDQUFtQixJQUFJLFNBQVMsQ0FBQztRQUNyRCxDQUFDLENBQUMsRUFDRixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQU1GLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFlO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSw2Q0FBNkMsQ0FBQyxDQUFBO0lBQ2pGLENBQUM7O3FJQXBDVSx3Q0FBd0M7eUhBQXhDLHdDQUF3QzsyRkFBeEMsd0NBQXdDO2tCQUhwRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7aUJBQzlDOzswQkFlSSxJQUFJOzJFQWdCSCxPQUFPO3NCQURWLEtBQUs7dUJBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2hhcmVSZXBsYXksIE9ic2VydmFibGUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT25EZXN0cm95LCBEaXJlY3RpdmUsIEhvc3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieFJvdXRlclNlcnZpY2UsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlIH0gZnJvbSAnLi9zdG9yZS5kb2N1bWVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTWF5YmUsIE1vZGVsS2V5IH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBjb25zdCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkgPSAnaWQnO1xuXG4vKipcbiAqIFVzZWQgZm9yIHN5bmNocm9uaXppbmcgdGhlIGRvY3VtZW50IHN0b3JlIGlkIHRvIHRoZSBwYXJhbSBvZiB0aGUgcm91dGUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkXSdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZERpcmVjdGl2ZTxUID0gdW5rbm93bj4gZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF9pZFBhcmFtS2V5ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KERCWF9GSVJFQkFTRV9ST1VURVJfU1lOQ19ERUZBVUxUX0lEX1BBUkFNX0tFWSk7XG4gIHJlYWRvbmx5IGlkUGFyYW1LZXkkID0gdGhpcy5faWRQYXJhbUtleS5hc09ic2VydmFibGUoKTtcblxuICByZWFkb25seSBpZEZyb21QYXJhbXMkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmlkUGFyYW1LZXkkLCB0aGlzLmRieFJvdXRlclNlcnZpY2UucGFyYW1zJF0pLnBpcGUoXG4gICAgbWFwKChba2V5LCBwYXJhbXNdKSA9PiB7XG4gICAgICByZXR1cm4gKHBhcmFtc1trZXldIGFzIE1heWJlPHN0cmluZz4pID8/IHVuZGVmaW5lZDtcbiAgICB9KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEhvc3QoKSByZWFkb25seSBkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmU6IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTxUPixcbiAgICByZWFkb25seSBkYnhSb3V0ZXJTZXJ2aWNlOiBEYnhSb3V0ZXJTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5kYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUuc3RvcmUuc2V0SWQodGhpcy5pZEZyb21QYXJhbXMkKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5faWRQYXJhbUtleS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLy8gTUFSSzogSW5wdXRcbiAgQElucHV0KCdkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkJylcbiAgZ2V0IGlkUGFyYW0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkUGFyYW1LZXkudmFsdWU7XG4gIH1cblxuICBzZXQgaWRQYXJhbShpZFBhcmFtOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZFBhcmFtS2V5Lm5leHQoaWRQYXJhbSB8fCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkpXG4gIH1cblxufVxuIl19
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuZG9jdW1lbnQucm91dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLmRvY3VtZW50LnJvdXRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBYyxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRyxPQUFPLEVBQWEsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFHL0UsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQUcsSUFBSSxDQUFDO0FBRWxFOztHQUVHO0FBSUgsTUFBTSxPQUFPLHdDQUFzRCxTQUFRLDZCQUE2QjtJQVl0RyxZQUE2QixpQ0FBdUUsRUFBVyxnQkFBa0M7UUFDL0ksS0FBSyxFQUFFLENBQUM7UUFEbUIsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFzQztRQUFXLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFYekksZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBUyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQ3hGLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUU5QyxrQkFBYSxHQUFnQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDekgsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUNwQixPQUFRLE1BQU0sQ0FBQyxHQUFHLENBQW1CLElBQUksU0FBUyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxFQUNGLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBSUYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsY0FBYztJQUNkLElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQWU7UUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLDZDQUE2QyxDQUFDLENBQUM7SUFDbEYsQ0FBQzs7cUlBakNVLHdDQUF3Qzt5SEFBeEMsd0NBQXdDOzJGQUF4Qyx3Q0FBd0M7a0JBSHBELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1DQUFtQztpQkFDOUM7OzBCQWFjLElBQUk7MkVBZWIsT0FBTztzQkFEVixLQUFLO3VCQUFDLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNoYXJlUmVwbGF5LCBPYnNlcnZhYmxlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9uRGVzdHJveSwgRGlyZWN0aXZlLCBIb3N0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhSb3V0ZXJTZXJ2aWNlLCBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZSB9IGZyb20gJy4vc3RvcmUuZG9jdW1lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1heWJlLCBNb2RlbEtleSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgY29uc3QgREJYX0ZJUkVCQVNFX1JPVVRFUl9TWU5DX0RFRkFVTFRfSURfUEFSQU1fS0VZID0gJ2lkJztcblxuLyoqXG4gKiBVc2VkIGZvciBzeW5jaHJvbml6aW5nIHRoZSBkb2N1bWVudCBzdG9yZSBpZCB0byB0aGUgcGFyYW0gb2YgdGhlIHJvdXRlLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlUm91dGVJZF0nXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZVJvdXRlSWREaXJlY3RpdmU8VCA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2lkUGFyYW1LZXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oREJYX0ZJUkVCQVNFX1JPVVRFUl9TWU5DX0RFRkFVTFRfSURfUEFSQU1fS0VZKTtcbiAgcmVhZG9ubHkgaWRQYXJhbUtleSQgPSB0aGlzLl9pZFBhcmFtS2V5LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHJlYWRvbmx5IGlkRnJvbVBhcmFtcyQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuaWRQYXJhbUtleSQsIHRoaXMuZGJ4Um91dGVyU2VydmljZS5wYXJhbXMkXSkucGlwZShcbiAgICBtYXAoKFtrZXksIHBhcmFtc10pID0+IHtcbiAgICAgIHJldHVybiAocGFyYW1zW2tleV0gYXMgTWF5YmU8c3RyaW5nPikgPz8gdW5kZWZpbmVkO1xuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihASG9zdCgpIHJlYWRvbmx5IGRieEZpcmViYXNlRG9jdW1lbnRTdG9yZURpcmVjdGl2ZTogRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlRGlyZWN0aXZlPFQ+LCByZWFkb25seSBkYnhSb3V0ZXJTZXJ2aWNlOiBEYnhSb3V0ZXJTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5kYnhGaXJlYmFzZURvY3VtZW50U3RvcmVEaXJlY3RpdmUuc3RvcmUuc2V0SWQodGhpcy5pZEZyb21QYXJhbXMkKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5faWRQYXJhbUtleS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLy8gTUFSSzogSW5wdXRcbiAgQElucHV0KCdkYnhGaXJlYmFzZURvY3VtZW50U3RvcmVSb3V0ZUlkJylcbiAgZ2V0IGlkUGFyYW0oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkUGFyYW1LZXkudmFsdWU7XG4gIH1cblxuICBzZXQgaWRQYXJhbShpZFBhcmFtOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZFBhcmFtS2V5Lm5leHQoaWRQYXJhbSB8fCBEQlhfRklSRUJBU0VfUk9VVEVSX1NZTkNfREVGQVVMVF9JRF9QQVJBTV9LRVkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { Directive, forwardRef, Input } from '@angular/core';
2
+ import { DbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionStoreDirective } from './store.collection.directive';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Abstract directive that contains a DbxFirebaseCollectionWithParentStore and provides an interface for communicating with other directives.
6
+ */
7
+ export class DbxFirebaseCollectionWithParentStoreDirective extends DbxFirebaseCollectionStoreDirective {
8
+ // MARK: Inputs
9
+ set sourceMode(sourceMode) {
10
+ this.store.setSourceMode(sourceMode);
11
+ }
12
+ }
13
+ DbxFirebaseCollectionWithParentStoreDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseCollectionWithParentStoreDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
14
+ DbxFirebaseCollectionWithParentStoreDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFirebaseCollectionWithParentStoreDirective, inputs: { sourceMode: "sourceMode" }, usesInheritance: true, ngImport: i0 });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseCollectionWithParentStoreDirective, decorators: [{
16
+ type: Directive
17
+ }], propDecorators: { sourceMode: [{
18
+ type: Input
19
+ }] } });
20
+ export function provideDbxFirebaseCollectionWithParentStoreDirective(sourceType, storeType) {
21
+ const providers = [
22
+ ...provideDbxFirebaseCollectionStoreDirective(sourceType, storeType),
23
+ {
24
+ provide: DbxFirebaseCollectionWithParentStoreDirective,
25
+ useExisting: forwardRef(() => sourceType)
26
+ }
27
+ ];
28
+ return providers;
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9tb2RlbC9zdG9yZS9zdG9yZS5zdWJjb2xsZWN0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBRzdFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUcvSDs7R0FFRztBQUVILE1BQU0sT0FBZ0IsNkNBQXlSLFNBQVEsbUNBQTRDO0lBQ2pXLGVBQWU7SUFDZixJQUNJLFVBQVUsQ0FBQyxVQUFnRTtRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2QyxDQUFDOzswSUFMbUIsNkNBQTZDOzhIQUE3Qyw2Q0FBNkM7MkZBQTdDLDZDQUE2QztrQkFEbEUsU0FBUzs4QkFJSixVQUFVO3NCQURiLEtBQUs7O0FBa0JSLE1BQU0sVUFBVSxvREFBb0QsQ0FBNE4sVUFBbUIsRUFBRSxTQUFtQjtJQUN0VSxNQUFNLFNBQVMsR0FBZTtRQUM1QixHQUFHLDBDQUEwQyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUM7UUFDcEU7WUFDRSxPQUFPLEVBQUUsNkNBQTZDO1lBQ3RELFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO1NBQzFDO0tBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGZvcndhcmRSZWYsIElucHV0LCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmlyZXN0b3JlRG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmUsIHByb3ZpZGVEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZSB9IGZyb20gJy4vc3RvcmUuY29sbGVjdGlvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlLCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNvdXJjZU1vZGUgfSBmcm9tICcuL3N0b3JlLnN1YmNvbGxlY3Rpb24nO1xuXG4vKipcbiAqIEFic3RyYWN0IGRpcmVjdGl2ZSB0aGF0IGNvbnRhaW5zIGEgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlIGFuZCBwcm92aWRlcyBhbiBpbnRlcmZhY2UgZm9yIGNvbW11bmljYXRpbmcgd2l0aCBvdGhlciBkaXJlY3RpdmVzLlxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmVEaXJlY3RpdmU8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgUyBleHRlbmRzIERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZTxULCBQVCwgRCwgUEQ+ID0gRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlPFQsIFBULCBELCBQRD4+IGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVEaXJlY3RpdmU8VCwgRCwgUz4ge1xuICAvLyBNQVJLOiBJbnB1dHNcbiAgQElucHV0KClcbiAgc2V0IHNvdXJjZU1vZGUoc291cmNlTW9kZTogTWF5YmU8RGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTb3VyY2VNb2RlPikge1xuICAgIHRoaXMuc3RvcmUuc2V0U291cmNlTW9kZShzb3VyY2VNb2RlKTtcbiAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vLyBUaGUgdXNlIG9mIGFueSBoZXJlIGRvZXMgbm90IGRlZ3JhZGUgdGhlIHR5cGUtc2FmZXR5OyB3ZSB3YW50IHRvIHNpbXBseSBtYXRjaCB0aGF0IHRoZSBTdG9yZSB0eXBlIFMgaXMgdXNlZCBpbiB0aGUgRGlyZWN0aXZlIHR5cGUgQyB0byBwcm92aWRlIGl0LlxuXG4vKipcbiAqIENvbmZpZ3VyZXMgcHJvdmlkZXJzIGZvciBhIERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZS5cbiAqXG4gKiBDYW4gb3B0aW9uYWxseSBhbHNvIHByb3ZpZGUgdGhlIGFjdHVhbCBzdG9yZSB0eXBlIHRvIGluY2x1ZGUgaW4gdGhlIHByb3ZpZGVycyBhcnJheSBzbyBpdCBpcyBpbnN0YW50aWF0ZWQgYnkgQW5ndWxhci5cbiAqXG4gKiBAcGFyYW0gc291cmNlVHlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZTxTIGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBhbnksIGFueSwgYW55Pj4oc291cmNlVHlwZTogVHlwZTxTPik6IFByb3ZpZGVyW107XG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZTxTIGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlPGFueSwgYW55LCBhbnksIGFueT4sIEMgZXh0ZW5kcyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmVEaXJlY3RpdmU8YW55LCBhbnksIGFueSwgYW55LCBTPiA9IERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZTxhbnksIGFueSwgYW55LCBhbnksIFM+Pihzb3VyY2VUeXBlOiBUeXBlPEM+LCBzdG9yZVR5cGU/OiBUeXBlPFM+KTogUHJvdmlkZXJbXTtcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlRGlyZWN0aXZlPFMgZXh0ZW5kcyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmU8YW55LCBhbnksIGFueSwgYW55PiwgQyBleHRlbmRzIERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZTxhbnksIGFueSwgYW55LCBhbnksIFM+ID0gRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlRGlyZWN0aXZlPGFueSwgYW55LCBhbnksIGFueSwgUz4+KHNvdXJjZVR5cGU6IFR5cGU8Qz4sIHN0b3JlVHlwZT86IFR5cGU8Uz4pOiBQcm92aWRlcltdIHtcbiAgY29uc3QgcHJvdmlkZXJzOiBQcm92aWRlcltdID0gW1xuICAgIC4uLnByb3ZpZGVEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZURpcmVjdGl2ZShzb3VyY2VUeXBlLCBzdG9yZVR5cGUpLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZURpcmVjdGl2ZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IHNvdXJjZVR5cGUpXG4gICAgfVxuICBdO1xuXG4gIHJldHVybiBwcm92aWRlcnM7XG59XG4iXX0=
@@ -1,8 +1,8 @@
1
1
  import { filterMaybe } from '@dereekb/rxjs';
2
2
  import { Injectable } from '@angular/core';
3
- import { shareReplay, distinctUntilChanged, map } from 'rxjs';
3
+ import { shareReplay, distinctUntilChanged, map, NEVER, switchMap, tap } from 'rxjs';
4
4
  import { AbstractDbxFirebaseDocumentStore } from './store.document';
5
- import { setParentEffect, setParentStoreEffect } from './store.subcollection.rxjs';
5
+ import { setParentStoreEffect } from './store.subcollection.rxjs';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * Abstract DbxFirebaseDocumentStore that has a parent document from which is derives it's FiresbaseCollection from.
@@ -11,12 +11,29 @@ export class AbstractDbxFirebaseDocumentWithParentStore extends AbstractDbxFireb
11
11
  constructor() {
12
12
  super(...arguments);
13
13
  // MARK: Effects
14
- this.setParent = setParentEffect(this);
15
14
  this.setParentStore = setParentStoreEffect(this);
15
+ this.setParent = this.effect((input) => {
16
+ return input.pipe(switchMap((parent) => {
17
+ this._setParentDocument(parent);
18
+ if (parent) {
19
+ return this.collectionFactory$.pipe(tap((collectionFactory) => {
20
+ const collection = collectionFactory(parent);
21
+ this.setFirestoreCollection(collection);
22
+ }));
23
+ }
24
+ else {
25
+ // clear the current collection
26
+ this.setFirestoreCollection(undefined);
27
+ // do nothing until a parent is returned.
28
+ return NEVER;
29
+ }
30
+ }));
31
+ });
32
+ this._setParent = this.setParent;
16
33
  // MARK: Accessors
17
- this.currentParent$ = this.state$.pipe(map(x => x.parent), distinctUntilChanged(), shareReplay(1));
34
+ this.currentParent$ = this.state$.pipe(map((x) => x.parent), distinctUntilChanged(), shareReplay(1));
18
35
  this.parent$ = this.currentParent$.pipe(filterMaybe());
19
- this.currentCollectionFactory$ = this.state$.pipe(map(x => x.collectionFactory), distinctUntilChanged(), shareReplay(1));
36
+ this.currentCollectionFactory$ = this.state$.pipe(map((x) => x.collectionFactory), distinctUntilChanged(), shareReplay(1));
20
37
  this.collectionFactory$ = this.currentCollectionFactory$.pipe(filterMaybe());
21
38
  // MARK: State Changes
22
39
  /**
@@ -34,4 +51,4 @@ AbstractDbxFirebaseDocumentWithParentStore.ɵprov = i0.ɵɵngDeclareInjectable({
34
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseDocumentWithParentStore, decorators: [{
35
52
  type: Injectable
36
53
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5kb2N1bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLnN1YmNvbGxlY3Rpb24uZG9jdW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBa0UsTUFBTSxrQkFBa0IsQ0FBQztBQUNwSSxPQUFPLEVBQThELGVBQWUsRUFBbUUsb0JBQW9CLEVBQXdGLE1BQU0sNEJBQTRCLENBQUM7O0FBUXRTOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBDQUNYLFNBQVEsZ0NBQXlDO0lBRm5EOztRQUlFLGdCQUFnQjtRQUNQLGNBQVMsR0FBbUUsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xHLG1CQUFjLEdBQTRFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlILGtCQUFrQjtRQUNULG1CQUFjLEdBQTBCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUMvRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQ2xCLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sWUFBTyxHQUFtQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDekQsV0FBVyxFQUFFLENBQ2QsQ0FBQztRQUVPLDhCQUF5QixHQUEwRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDMUgsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEVBQzdCLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sdUJBQWtCLEdBQW1FLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQy9ILFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFRixzQkFBc0I7UUFDdEI7O1dBRUc7UUFDTSx5QkFBb0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLGlCQUFxRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbEs7O1dBRUc7UUFDTSx1QkFBa0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FFbEc7O3VJQXZDWSwwQ0FBMEM7MklBQTFDLDBDQUEwQzsyRkFBMUMsMENBQTBDO2tCQUR0RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGaXJlc3RvcmVEb2N1bWVudCwgRmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlLCBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmUsIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZUNvbnRleHRTdGF0ZSB9IGZyb20gJy4vc3RvcmUuZG9jdW1lbnQnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbiwgc2V0UGFyZW50RWZmZWN0LCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb24sIHNldFBhcmVudFN0b3JlRWZmZWN0LCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudCwgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRDb250ZXh0U3RhdGUgfSBmcm9tICcuL3N0b3JlLnN1YmNvbGxlY3Rpb24ucnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VEb2N1bWVudFdpdGhQYXJlbnRTdG9yZTxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PlxuICBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEPiwgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQ8VCwgUFQsIEQsIFBEPiB7IH1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50V2l0aFBhcmVudFN0b3JlQ29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+XG4gIGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlQ29udGV4dFN0YXRlPFQsIEQ+LCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudENvbnRleHRTdGF0ZTxULCBQVCwgRCwgUEQ+IHsgfVxuXG4vKipcbiAqIEFic3RyYWN0IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZSB0aGF0IGhhcyBhIHBhcmVudCBkb2N1bWVudCBmcm9tIHdoaWNoIGlzIGRlcml2ZXMgaXQncyBGaXJlc2Jhc2VDb2xsZWN0aW9uIGZyb20uXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgQyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPiA9IERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPj5cbiAgZXh0ZW5kcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBELCBDPiBpbXBsZW1lbnRzIERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQsIFBEPiB7XG5cbiAgLy8gTUFSSzogRWZmZWN0c1xuICByZWFkb25seSBzZXRQYXJlbnQ6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50RWZmZWN0RnVuY3Rpb248UEQ+ID0gc2V0UGFyZW50RWZmZWN0KHRoaXMpO1xuICByZWFkb25seSBzZXRQYXJlbnRTdG9yZTogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRTdG9yZUVmZmVjdEZ1bmN0aW9uPFBULCBQRD4gPSBzZXRQYXJlbnRTdG9yZUVmZmVjdCh0aGlzKTtcblxuICAvLyBNQVJLOiBBY2Nlc3NvcnNcbiAgcmVhZG9ubHkgY3VycmVudFBhcmVudCQ6IE9ic2VydmFibGU8TWF5YmU8UEQ+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKHggPT4geC5wYXJlbnQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBwYXJlbnQkOiBPYnNlcnZhYmxlPFBEPiA9IHRoaXMuY3VycmVudFBhcmVudCQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpXG4gICk7XG5cbiAgcmVhZG9ubHkgY3VycmVudENvbGxlY3Rpb25GYWN0b3J5JDogT2JzZXJ2YWJsZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoeCA9PiB4LmNvbGxlY3Rpb25GYWN0b3J5KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+PiA9IHRoaXMuY3VycmVudENvbGxlY3Rpb25GYWN0b3J5JC5waXBlKFxuICAgIGZpbHRlck1heWJlKClcbiAgKTtcblxuICAvLyBNQVJLOiBTdGF0ZSBDaGFuZ2VzXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xsZWN0aW9uIGZhY3RvcnkgZnVuY3Rpb24gdG8gdXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2V0Q29sbGVjdGlvbkZhY3RvcnkgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBjb2xsZWN0aW9uRmFjdG9yeTogRmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5PFQsIFBULCBELCBQRD4pID0+ICh7IC4uLnN0YXRlLCBjb2xsZWN0aW9uRmFjdG9yeSB9KSk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBhcmVudCBvbiB0aGUgY3VycmVudCBzdGF0ZS5cbiAgICovXG4gIHJlYWRvbmx5IF9zZXRQYXJlbnREb2N1bWVudCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIHBhcmVudDogTWF5YmU8UEQ+KSA9PiAoeyAuLi5zdGF0ZSwgcGFyZW50IH0pKTtcblxufVxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5kb2N1bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLnN1YmNvbGxlY3Rpb24uZG9jdW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUcvRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQWtFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEksT0FBTyxFQUFtRSxvQkFBb0IsRUFBb0osTUFBTSw0QkFBNEIsQ0FBQzs7QUFNclI7O0dBRUc7QUFFSCxNQUFNLE9BQU8sMENBQTBTLFNBQVEsZ0NBQXlDO0lBRHhXOztRQUVFLGdCQUFnQjtRQUNQLG1CQUFjLEdBQTRFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JILGNBQVMsR0FBbUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQTRCLEVBQUUsRUFBRTtZQUNoSSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFaEMsSUFBSSxNQUFNLEVBQUU7b0JBQ1YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFO3dCQUN4QixNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDN0MsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUMxQyxDQUFDLENBQUMsQ0FDSCxDQUFDO2lCQUNIO3FCQUFNO29CQUNMLCtCQUErQjtvQkFDL0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUV2Qyx5Q0FBeUM7b0JBQ3pDLE9BQU8sS0FBSyxDQUFDO2lCQUNkO1lBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRU0sZUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFFckMsa0JBQWtCO1FBQ1QsbUJBQWMsR0FBMEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQy9ELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUNwQixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLFlBQU8sR0FBbUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUVsRSw4QkFBeUIsR0FBMEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzFILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEVBQy9CLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sdUJBQWtCLEdBQW1FLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUVqSixzQkFBc0I7UUFDdEI7O1dBRUc7UUFDTSx5QkFBb0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLGlCQUFxRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbEs7O1dBRUc7UUFDTSx1QkFBa0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDbEc7O3VJQXZEWSwwQ0FBMEM7MklBQTFDLDBDQUEwQzsyRkFBMUMsMENBQTBDO2tCQUR0RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBORVZFUiwgc3dpdGNoTWFwLCB0YXAsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeSwgRmlyZXN0b3JlQ29sbGVjdGlvbiB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZSwgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlLCBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmVDb250ZXh0U3RhdGUgfSBmcm9tICcuL3N0b3JlLmRvY3VtZW50JztcbmltcG9ydCB7IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbiwgc2V0UGFyZW50U3RvcmVFZmZlY3QsIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50LCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudENvbnRleHRTdGF0ZSwgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbiB9IGZyb20gJy4vc3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZURvY3VtZW50V2l0aFBhcmVudFN0b3JlQ29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+IGV4dGVuZHMgRGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlQ29udGV4dFN0YXRlPFQsIEQ+LCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudENvbnRleHRTdGF0ZTxULCBQVCwgRCwgUEQ+IHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VEb2N1bWVudFdpdGhQYXJlbnRTdG9yZTxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PiBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBEPiwgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQ8VCwgUFQsIEQsIFBELCBGaXJlc3RvcmVDb2xsZWN0aW9uPFQsIEQ+PiB7fVxuXG4vKipcbiAqIEFic3RyYWN0IERieEZpcmViYXNlRG9jdW1lbnRTdG9yZSB0aGF0IGhhcyBhIHBhcmVudCBkb2N1bWVudCBmcm9tIHdoaWNoIGlzIGRlcml2ZXMgaXQncyBGaXJlc2Jhc2VDb2xsZWN0aW9uIGZyb20uXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgQyBleHRlbmRzIERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPiA9IERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPj4gZXh0ZW5kcyBBYnN0cmFjdERieEZpcmViYXNlRG9jdW1lbnRTdG9yZTxULCBELCBDPiBpbXBsZW1lbnRzIERieEZpcmViYXNlRG9jdW1lbnRXaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQsIFBEPiB7XG4gIC8vIE1BUks6IEVmZmVjdHNcbiAgcmVhZG9ubHkgc2V0UGFyZW50U3RvcmU6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbjxQVCwgUEQ+ID0gc2V0UGFyZW50U3RvcmVFZmZlY3QodGhpcyk7XG4gIHJlYWRvbmx5IHNldFBhcmVudDogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD4gPSB0aGlzLmVmZmVjdCgoaW5wdXQ6IE9ic2VydmFibGU8TWF5YmU8UEQ+PikgPT4ge1xuICAgIHJldHVybiBpbnB1dC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChwYXJlbnQpID0+IHtcbiAgICAgICAgdGhpcy5fc2V0UGFyZW50RG9jdW1lbnQocGFyZW50KTtcblxuICAgICAgICBpZiAocGFyZW50KSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbkZhY3RvcnkkLnBpcGUoXG4gICAgICAgICAgICB0YXAoKGNvbGxlY3Rpb25GYWN0b3J5KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uRmFjdG9yeShwYXJlbnQpO1xuICAgICAgICAgICAgICB0aGlzLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24oY29sbGVjdGlvbik7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gY2xlYXIgdGhlIGN1cnJlbnQgY29sbGVjdGlvblxuICAgICAgICAgIHRoaXMuc2V0RmlyZXN0b3JlQ29sbGVjdGlvbih1bmRlZmluZWQpO1xuXG4gICAgICAgICAgLy8gZG8gbm90aGluZyB1bnRpbCBhIHBhcmVudCBpcyByZXR1cm5lZC5cbiAgICAgICAgICByZXR1cm4gTkVWRVI7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgX3NldFBhcmVudCA9IHRoaXMuc2V0UGFyZW50O1xuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBjdXJyZW50UGFyZW50JDogT2JzZXJ2YWJsZTxNYXliZTxQRD4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHgucGFyZW50KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgcGFyZW50JDogT2JzZXJ2YWJsZTxQRD4gPSB0aGlzLmN1cnJlbnRQYXJlbnQkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgcmVhZG9ubHkgY3VycmVudENvbGxlY3Rpb25GYWN0b3J5JDogT2JzZXJ2YWJsZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguY29sbGVjdGlvbkZhY3RvcnkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBjb2xsZWN0aW9uRmFjdG9yeSQ6IE9ic2VydmFibGU8RmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5PFQsIFBULCBELCBQRD4+ID0gdGhpcy5jdXJyZW50Q29sbGVjdGlvbkZhY3RvcnkkLnBpcGUoZmlsdGVyTWF5YmUoKSk7XG5cbiAgLy8gTUFSSzogU3RhdGUgQ2hhbmdlc1xuICAvKipcbiAgICogU2V0cyB0aGUgY29sbGVjdGlvbiBmYWN0b3J5IGZ1bmN0aW9uIHRvIHVzZS5cbiAgICovXG4gIHJlYWRvbmx5IHNldENvbGxlY3Rpb25GYWN0b3J5ID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgY29sbGVjdGlvbkZhY3Rvcnk6IEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+KSA9PiAoeyAuLi5zdGF0ZSwgY29sbGVjdGlvbkZhY3RvcnkgfSkpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwYXJlbnQgb24gdGhlIGN1cnJlbnQgc3RhdGUuXG4gICAqL1xuICByZWFkb25seSBfc2V0UGFyZW50RG9jdW1lbnQgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBwYXJlbnQ6IE1heWJlPFBEPikgPT4gKHsgLi4uc3RhdGUsIHBhcmVudCB9KSk7XG59XG4iXX0=
@@ -1,37 +1,79 @@
1
+ import { Inject, Injectable, Optional } from '@angular/core';
1
2
  import { filterMaybe } from '@dereekb/rxjs';
2
- import { Injectable } from '@angular/core';
3
- import { shareReplay, distinctUntilChanged, map } from 'rxjs';
3
+ import { shareReplay, distinctUntilChanged, map, NEVER, switchMap, tap } from 'rxjs';
4
4
  import { AbstractDbxFirebaseCollectionStore } from './store.collection';
5
- import { setParentEffect, setParentStoreEffect } from './store.subcollection.rxjs';
5
+ import { setParentStoreEffect } from './store.subcollection.rxjs';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * Abstract DbxFirebaseCollectionStore that has a parent document from which is derives it's FiresbaseCollection from.
9
9
  */
10
10
  export class AbstractDbxFirebaseCollectionWithParentStore extends AbstractDbxFirebaseCollectionStore {
11
- constructor() {
12
- super(...arguments);
11
+ constructor(state, defaultSourceMode) {
12
+ super(state);
13
13
  // MARK: Effects
14
- this.setParent = setParentEffect(this);
15
14
  this.setParentStore = setParentStoreEffect(this);
15
+ this.setSourceMode = this.effect((input) => {
16
+ return input.pipe(distinctUntilChanged(), switchMap((inputMode) => {
17
+ const mode = inputMode?.toLowerCase() ?? 'parent'; // default to parent mode
18
+ if (mode === 'group') {
19
+ return this.currentCollectionGroup$.pipe(tap((collectionGroup) => {
20
+ this.setFirestoreCollection(collectionGroup);
21
+ }));
22
+ }
23
+ else {
24
+ // parent document collection
25
+ return this.currentParent$.pipe(switchMap((parent) => {
26
+ if (parent) {
27
+ return this.collectionFactory$.pipe(tap((collectionFactory) => {
28
+ const collection = collectionFactory(parent);
29
+ this.setFirestoreCollection(collection);
30
+ }));
31
+ }
32
+ else {
33
+ this.setFirestoreCollection(undefined);
34
+ return NEVER;
35
+ }
36
+ }));
37
+ }
38
+ }));
39
+ });
16
40
  // MARK: Accessors
17
- this.currentParent$ = this.state$.pipe(map(x => x.parent), distinctUntilChanged(), shareReplay(1));
41
+ this.currentParent$ = this.state$.pipe(map((x) => x.parent), distinctUntilChanged(), shareReplay(1));
18
42
  this.parent$ = this.currentParent$.pipe(filterMaybe());
19
- this.currentCollectionFactory$ = this.state$.pipe(map(x => x.collectionFactory), distinctUntilChanged(), shareReplay(1));
43
+ this.currentCollectionFactory$ = this.state$.pipe(map((x) => x.collectionFactory), distinctUntilChanged(), shareReplay(1));
20
44
  this.collectionFactory$ = this.currentCollectionFactory$.pipe(filterMaybe());
45
+ this.currentCollectionGroup$ = this.state$.pipe(map((x) => x.collectionGroup), distinctUntilChanged(), shareReplay(1));
46
+ this.collectionGroup$ = this.currentCollectionGroup$.pipe(filterMaybe());
21
47
  // MARK: State Changes
22
48
  /**
23
49
  * Sets the collection factory function to use.
24
50
  */
25
51
  this.setCollectionFactory = this.updater((state, collectionFactory) => ({ ...state, collectionFactory }));
52
+ /**
53
+ * Sets the collection group to use.
54
+ */
55
+ this.setCollectionGroup = this.updater((state, collectionGroup) => ({ ...state, collectionGroup }));
26
56
  /**
27
57
  * Sets the parent on the current state.
28
58
  */
29
59
  this._setParentDocument = this.updater((state, parent) => ({ ...state, parent }));
60
+ this._setParent = this._setParentDocument;
61
+ this.setSourceMode(defaultSourceMode || 'parent');
30
62
  }
31
63
  }
32
- AbstractDbxFirebaseCollectionWithParentStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseCollectionWithParentStore, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
64
+ AbstractDbxFirebaseCollectionWithParentStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseCollectionWithParentStore, deps: [{ token: null, optional: true }, { token: null, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
33
65
  AbstractDbxFirebaseCollectionWithParentStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseCollectionWithParentStore });
34
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxFirebaseCollectionWithParentStore, decorators: [{
35
67
  type: Injectable
36
- }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLnN1YmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzFFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBc0UsTUFBTSxvQkFBb0IsQ0FBQztBQUM1SSxPQUFPLEVBQXFOLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVF0Uzs7R0FFRztBQUVILE1BQU0sT0FBTyw0Q0FDWCxTQUFRLGtDQUEyQztJQUZyRDs7UUFJRSxnQkFBZ0I7UUFDUCxjQUFTLEdBQW1FLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRyxtQkFBYyxHQUE0RSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5SCxrQkFBa0I7UUFDVCxtQkFBYyxHQUEwQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDL0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUNsQixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLFlBQU8sR0FBbUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3pELFdBQVcsRUFBRSxDQUNkLENBQUM7UUFFTyw4QkFBeUIsR0FBMEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzFILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUM3QixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHVCQUFrQixHQUFtRSxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUMvSCxXQUFXLEVBQUUsQ0FDZCxDQUFDO1FBRUYsc0JBQXNCO1FBQ3RCOztXQUVHO1FBQ00seUJBQW9CLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxpQkFBcUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWxLOztXQUVHO1FBQ00sdUJBQWtCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBRWxHOzt5SUF2Q1ksNENBQTRDOzZJQUE1Qyw0Q0FBNEM7MkZBQTVDLDRDQUE0QztrQkFEeEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbHRlck1heWJlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5LCBGaXJlc3RvcmVEb2N1bWVudCB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBYnN0cmFjdERieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlLCBEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZSwgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVDb250ZXh0U3RhdGUgfSBmcm9tICcuL3N0b3JlLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQsIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlLCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudEVmZmVjdEZ1bmN0aW9uLCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb24sIHNldFBhcmVudEVmZmVjdCwgc2V0UGFyZW50U3RvcmVFZmZlY3QgfSBmcm9tICcuL3N0b3JlLnN1YmNvbGxlY3Rpb24ucnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+XG4gIGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmU8VCwgRD4sIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50PFQsIFBULCBELCBQRD4geyB9XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlQ29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+XG4gIGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVDb250ZXh0U3RhdGU8VCwgRD4sIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBELCBQRD4geyB9XG5cbi8qKlxuICogQWJzdHJhY3QgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmUgdGhhdCBoYXMgYSBwYXJlbnQgZG9jdW1lbnQgZnJvbSB3aGljaCBpcyBkZXJpdmVzIGl0J3MgRmlyZXNiYXNlQ29sbGVjdGlvbiBmcm9tLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWJzdHJhY3REYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgQyBleHRlbmRzIERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBQVCwgRCwgUEQ+ID0gRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlQ29udGV4dFN0YXRlPFQsIFBULCBELCBQRD4+XG4gIGV4dGVuZHMgQWJzdHJhY3REYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZTxULCBELCBDPiBpbXBsZW1lbnRzIERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZTxULCBQVCwgRCwgUEQ+IHtcblxuICAvLyBNQVJLOiBFZmZlY3RzXG4gIHJlYWRvbmx5IHNldFBhcmVudDogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD4gPSBzZXRQYXJlbnRFZmZlY3QodGhpcyk7XG4gIHJlYWRvbmx5IHNldFBhcmVudFN0b3JlOiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb248UFQsIFBEPiA9IHNldFBhcmVudFN0b3JlRWZmZWN0KHRoaXMpO1xuXG4gIC8vIE1BUks6IEFjY2Vzc29yc1xuICByZWFkb25seSBjdXJyZW50UGFyZW50JDogT2JzZXJ2YWJsZTxNYXliZTxQRD4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoeCA9PiB4LnBhcmVudCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBhcmVudCQ6IE9ic2VydmFibGU8UEQ+ID0gdGhpcy5jdXJyZW50UGFyZW50JC5waXBlKFxuICAgIGZpbHRlck1heWJlKClcbiAgKTtcblxuICByZWFkb25seSBjdXJyZW50Q29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+Pj4gPSB0aGlzLnN0YXRlJC5waXBlKFxuICAgIG1hcCh4ID0+IHguY29sbGVjdGlvbkZhY3RvcnkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBjb2xsZWN0aW9uRmFjdG9yeSQ6IE9ic2VydmFibGU8RmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5PFQsIFBULCBELCBQRD4+ID0gdGhpcy5jdXJyZW50Q29sbGVjdGlvbkZhY3RvcnkkLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKVxuICApO1xuXG4gIC8vIE1BUks6IFN0YXRlIENoYW5nZXNcbiAgLyoqXG4gICAqIFNldHMgdGhlIGNvbGxlY3Rpb24gZmFjdG9yeSBmdW5jdGlvbiB0byB1c2UuXG4gICAqL1xuICByZWFkb25seSBzZXRDb2xsZWN0aW9uRmFjdG9yeSA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGNvbGxlY3Rpb25GYWN0b3J5OiBGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPikgPT4gKHsgLi4uc3RhdGUsIGNvbGxlY3Rpb25GYWN0b3J5IH0pKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFyZW50IG9uIHRoZSBjdXJyZW50IHN0YXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgX3NldFBhcmVudERvY3VtZW50ID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgcGFyZW50OiBNYXliZTxQRD4pID0+ICh7IC4uLnN0YXRlLCBwYXJlbnQgfSkpO1xuXG59XG4iXX0=
68
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
69
+ type: Inject,
70
+ args: [null]
71
+ }, {
72
+ type: Optional
73
+ }] }, { type: undefined, decorators: [{
74
+ type: Inject,
75
+ args: [null]
76
+ }, {
77
+ type: Optional
78
+ }] }]; } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3N0b3JlL3N0b3JlLnN1YmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBYyxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFnQixLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvRyxPQUFPLEVBQUUsa0NBQWtDLEVBQXNFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUksT0FBTyxFQUEyTSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQXFCM1E7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNENBQWdULFNBQVEsa0NBQTJDO0lBQzlXLFlBQXNDLEtBQVEsRUFBNEIsaUJBQWlFO1FBQ3pJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUlmLGdCQUFnQjtRQUNQLG1CQUFjLEdBQTRFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JILGtCQUFhLEdBQW1FLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUF1RSxFQUFFLEVBQUU7WUFDL0ssT0FBTyxLQUFLLENBQUMsSUFBSSxDQUNmLG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO2dCQUN0QixNQUFNLElBQUksR0FBRyxTQUFTLEVBQUUsV0FBVyxFQUFFLElBQUksUUFBUSxDQUFDLENBQUMseUJBQXlCO2dCQUU1RSxJQUFJLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQ3BCLE9BQU8sSUFBSSxDQUFDLHVC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QyxDQUFDO0lBQ3BELENBQUM7O3lJQUpVLDRDQUE0QyxrQkFDbkMsSUFBSSw2QkFBZ0MsSUFBSTs2SUFEakQsNENBQTRDOzJGQUE1Qyw0Q0FBNEM7a0JBRHhELFVBQVU7OzBCQUVJLE1BQU07MkJBQUMsSUFBSTs7MEJBQUcsUUFBUTs7MEJBQWMsTUFBTTsyQkFBQyxJQUFJOzswQkFBRyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpbHRlck1heWJlLCBPYnNlcnZhYmxlT3JWYWx1ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIFN1YnNjcmlwdGlvbiwgTkVWRVIsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGaXJlc3RvcmVDb2xsZWN0aW9uR3JvdXAsIEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeSwgRmlyZXN0b3JlRG9jdW1lbnQgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBBYnN0cmFjdERieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlLCBEYnhGaXJlYmFzZUNvbGxlY3Rpb25TdG9yZSwgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVDb250ZXh0U3RhdGUgfSBmcm9tICcuL3N0b3JlLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVNldFBhcmVudEVmZmVjdEZ1bmN0aW9uLCBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudCwgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRDb250ZXh0U3RhdGUsIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbiwgc2V0UGFyZW50U3RvcmVFZmZlY3QgfSBmcm9tICcuL3N0b3JlLnN1YmNvbGxlY3Rpb24ucnhqcyc7XG5cbi8qKlxuICogV2hldGhlciBvciBub3QgdG8gbG9hZCB2YWx1ZXMgZnJvbSBhIHBhcmVudCBvciBhIGdyb3VwLlxuICovXG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNvdXJjZU1vZGUgPSAncGFyZW50JyB8ICdncm91cCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlQ29udGV4dFN0YXRlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+IGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmVDb250ZXh0U3RhdGU8VCwgRD4sIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50Q29udGV4dFN0YXRlPFQsIFBULCBELCBQRD4ge1xuICByZWFkb25seSBtb2RlPzogTWF5YmU8RGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTb3VyY2VNb2RlPjtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbkdyb3VwPzogTWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbkdyb3VwPFQsIEQ+Pjtcbn1cblxuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRTb3VyY2VNb2RlRnVuY3Rpb24gPSAob2JzZXJ2YWJsZU9yVmFsdWU6IE9ic2VydmFibGVPclZhbHVlPE1heWJlPERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U291cmNlTW9kZT4+KSA9PiBTdWJzY3JpcHRpb247XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4+IGV4dGVuZHMgRGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmU8VCwgRD4sIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50PFQsIFBULCBELCBQRD4ge1xuICByZWFkb25seSBzZXRTb3VyY2VNb2RlOiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFNvdXJjZU1vZGVGdW5jdGlvbjtcbiAgcmVhZG9ubHkgc2V0Q29sbGVjdGlvbkdyb3VwOiAob2JzZXJ2YWJsZU9yVmFsdWU6IEZpcmVzdG9yZUNvbGxlY3Rpb25Hcm91cDxULCBEPiB8IE9ic2VydmFibGU8RmlyZXN0b3JlQ29sbGVjdGlvbkdyb3VwPFQsIEQ+PikgPT4gU3Vic2NyaXB0aW9uO1xuICByZWFkb25seSBjdXJyZW50Q29sbGVjdGlvbkdyb3VwJDogT2JzZXJ2YWJsZTxNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uR3JvdXA8VCwgRD4+PjtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbkdyb3VwJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVDb2xsZWN0aW9uR3JvdXA8VCwgRD4+O1xufVxuXG4vKipcbiAqIEFic3RyYWN0IERieEZpcmViYXNlQ29sbGVjdGlvblN0b3JlIHRoYXQgaGFzIGEgcGFyZW50IGRvY3VtZW50IGZyb20gd2hpY2ggaXMgZGVyaXZlcyBpdCdzIEZpcmVzYmFzZUNvbGxlY3Rpb24gZnJvbS5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFic3RyYWN0RGJ4RmlyZWJhc2VDb2xsZWN0aW9uV2l0aFBhcmVudFN0b3JlPFQsIFBULCBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8VD4gPSBGaXJlc3RvcmVEb2N1bWVudDxUPiwgUEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxQVD4gPSBGaXJlc3RvcmVEb2N1bWVudDxQVD4sIEMgZXh0ZW5kcyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmVDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPiA9IERieEZpcmViYXNlQ29sbGVjdGlvbldpdGhQYXJlbnRTdG9yZUNvbnRleHRTdGF0ZTxULCBQVCwgRCwgUEQ+PiBleHRlbmRzIEFic3RyYWN0RGJ4RmlyZWJhc2VDb2xsZWN0aW9uU3RvcmU8VCwgRCwgQz4gaW1wbGVtZW50cyBEYnhGaXJlYmFzZUNvbGxlY3Rpb25XaXRoUGFyZW50U3RvcmU8VCwgUFQsIEQsIFBEPiB7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QobnVsbCkgQE9wdGlvbmFsKCkgc3RhdGU6IEMsIEBJbmplY3QobnVsbCkgQE9wdGlvbmFsKCkgZGVmYXVsdFNvdXJjZU1vZGU/OiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNvdXJjZU1vZGUpIHtcbiAgICBzdXBlcihzdGF0ZSk7XG4gICAgdGhpcy5zZXRTb3VyY2VNb2RlKGRlZmF1bHRTb3VyY2VNb2RlIHx8ICdwYXJlbnQnKTtcbiAgfVxuXG4gIC8vIE1BUks6IEVmZmVjdHNcbiAgcmVhZG9ubHkgc2V0UGFyZW50U3RvcmU6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U3RvcmVFZmZlY3RGdW5jdGlvbjxQVCwgUEQ+ID0gc2V0UGFyZW50U3RvcmVFZmZlY3QodGhpcyk7XG4gIHJlYWRvbmx5IHNldFNvdXJjZU1vZGU6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50U291cmNlTW9kZUZ1bmN0aW9uID0gdGhpcy5lZmZlY3QoKGlucHV0OiBPYnNlcnZhYmxlPE1heWJlPERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U291cmNlTW9kZT4+KSA9PiB7XG4gICAgcmV0dXJuIGlucHV0LnBpcGUoXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc3dpdGNoTWFwKChpbnB1dE1vZGUpID0+IHtcbiAgICAgICAgY29uc3QgbW9kZSA9IGlucHV0TW9kZT8udG9Mb3dlckNhc2UoKSA/PyAncGFyZW50JzsgLy8gZGVmYXVsdCB0byBwYXJlbnQgbW9kZVxuXG4gICAgICAgIGlmIChtb2RlID09PSAnZ3JvdXAnKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudENvbGxlY3Rpb25Hcm91cCQucGlwZShcbiAgICAgICAgICAgIHRhcCgoY29sbGVjdGlvbkdyb3VwKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0RmlyZXN0b3JlQ29sbGVjdGlvbihjb2xsZWN0aW9uR3JvdXApO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHBhcmVudCBkb2N1bWVudCBjb2xsZWN0aW9uXG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFBhcmVudCQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgocGFyZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmIChwYXJlbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uRmFjdG9yeSQucGlwZShcbiAgICAgICAgICAgICAgICAgIHRhcCgoY29sbGVjdGlvbkZhY3RvcnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbiA9IGNvbGxlY3Rpb25GYWN0b3J5KHBhcmVudCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RmlyZXN0b3JlQ29sbGVjdGlvbihjb2xsZWN0aW9uKTtcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldEZpcmVzdG9yZUNvbGxlY3Rpb24odW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gTkVWRVI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9KTtcblxuICAvLyBNQVJLOiBBY2Nlc3NvcnNcbiAgcmVhZG9ubHkgY3VycmVudFBhcmVudCQ6IE9ic2VydmFibGU8TWF5YmU8UEQ+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LnBhcmVudCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBhcmVudCQ6IE9ic2VydmFibGU8UEQ+ID0gdGhpcy5jdXJyZW50UGFyZW50JC5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRDb2xsZWN0aW9uRmFjdG9yeSQ6IE9ic2VydmFibGU8TWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbldpdGhQYXJlbnRGYWN0b3J5PFQsIFBULCBELCBQRD4+PiA9IHRoaXMuc3RhdGUkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LmNvbGxlY3Rpb25GYWN0b3J5KSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+PiA9IHRoaXMuY3VycmVudENvbGxlY3Rpb25GYWN0b3J5JC5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIHJlYWRvbmx5IGN1cnJlbnRDb2xsZWN0aW9uR3JvdXAkOiBPYnNlcnZhYmxlPE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25Hcm91cDxULCBEPj4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHguY29sbGVjdGlvbkdyb3VwKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgY29sbGVjdGlvbkdyb3VwJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVDb2xsZWN0aW9uR3JvdXA8VCwgRD4+ID0gdGhpcy5jdXJyZW50Q29sbGVjdGlvbkdyb3VwJC5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIC8vIE1BUks6IFN0YXRlIENoYW5nZXNcbiAgLyoqXG4gICAqIFNldHMgdGhlIGNvbGxlY3Rpb24gZmFjdG9yeSBmdW5jdGlvbiB0byB1c2UuXG4gICAqL1xuICByZWFkb25seSBzZXRDb2xsZWN0aW9uRmFjdG9yeSA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGNvbGxlY3Rpb25GYWN0b3J5OiBGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPikgPT4gKHsgLi4uc3RhdGUsIGNvbGxlY3Rpb25GYWN0b3J5IH0pKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgY29sbGVjdGlvbiBncm91cCB0byB1c2UuXG4gICAqL1xuICByZWFkb25seSBzZXRDb2xsZWN0aW9uR3JvdXAgPSB0aGlzLnVwZGF0ZXIoKHN0YXRlLCBjb2xsZWN0aW9uR3JvdXA6IE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25Hcm91cDxULCBEPj4pID0+ICh7IC4uLnN0YXRlLCBjb2xsZWN0aW9uR3JvdXAgfSkpIGFzIChvYnNlcnZhYmxlT3JWYWx1ZTogTWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbkdyb3VwPFQsIEQ+PiB8IE9ic2VydmFibGU8TWF5YmU8RmlyZXN0b3JlQ29sbGVjdGlvbkdyb3VwPFQsIEQ+Pj4pID0+IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFyZW50IG9uIHRoZSBjdXJyZW50IHN0YXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgX3NldFBhcmVudERvY3VtZW50ID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgcGFyZW50OiBNYXliZTxQRD4pID0+ICh7IC4uLnN0YXRlLCBwYXJlbnQgfSkpO1xuICByZWFkb25seSBfc2V0UGFyZW50ID0gdGhpcy5fc2V0UGFyZW50RG9jdW1lbnQgYXMgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVNldFBhcmVudEVmZmVjdEZ1bmN0aW9uPFBEPjtcbn1cbiJdfQ==
@@ -1,11 +1,11 @@
1
- import { cleanup } from "@dereekb/rxjs";
2
- import { map, NEVER, switchMap, tap } from "rxjs";
1
+ import { cleanup } from '@dereekb/rxjs';
2
+ import { map } from 'rxjs';
3
3
  export function setParentStoreEffect(store) {
4
4
  return store.effect((input) => {
5
5
  return input.pipe(map((parentStore) => {
6
6
  let result;
7
7
  if (parentStore) {
8
- result = store.setParent(parentStore.currentDocument$);
8
+ result = store._setParent(parentStore.currentDocument$);
9
9
  }
10
10
  else {
11
11
  result = undefined;
@@ -20,23 +20,4 @@ export function setParentStoreEffect(store) {
20
20
  }));
21
21
  });
22
22
  }
23
- export function setParentEffect(store) {
24
- return store.effect((input) => {
25
- return input.pipe(switchMap((parent) => {
26
- store._setParentDocument(parent);
27
- if (parent) {
28
- return store.collectionFactory$.pipe(tap((collectionFactory) => {
29
- const collection = collectionFactory(parent);
30
- store.setFirestoreCollection(collection);
31
- }));
32
- }
33
- else {
34
- // clear the current collection
35
- store.setFirestoreCollection(undefined);
36
- // do nothing until a parent is returned.
37
- return NEVER;
38
- }
39
- }));
40
- });
41
- }
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
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc3RvcmUvc3RvcmUuc3ViY29sbGVjdGlvbi5yeGpzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRzNELE9BQU8sRUFBRSxHQUFHLEVBQW1ELE1BQU0sTUFBTSxDQUFDO0FBc0I1RSxNQUFNLFVBQVUsb0JBQW9CLENBQWtNLEtBQTJEO0lBQy9SLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQTBELEVBQUUsRUFBRTtRQUNqRixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2YsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEIsSUFBSSxNQUEyQixDQUFDO1lBRWhDLElBQUksV0FBVyxFQUFFO2dCQUNmLE1BQU0sR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBaUIsQ0FBQzthQUN6RTtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsU0FBUyxDQUFDO2FBQ3BCO1lBRUQsaUNBQWlDO1lBQ2pDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVwQyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNkLElBQUksR0FBRyxFQUFFO2dCQUNQLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNuQjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NrU2V0Q29tcG9uZW50U3RvcmUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBGaXJlc3RvcmVDb2xsZWN0aW9uR3JvdXAsIEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlLCBGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3RvcnksIEZpcmVzdG9yZURvY3VtZW50IH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgY2xlYW51cCwgT2JzZXJ2YWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BuZ3J4L2NvbXBvbmVudC1zdG9yZSc7XG5pbXBvcnQgeyBtYXAsIE5FVkVSLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZURvY3VtZW50U3RvcmUgfSBmcm9tICcuL3N0b3JlLmRvY3VtZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudENvbnRleHRTdGF0ZTxULCBQVCwgRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8VD4sIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PiB7XG4gIHJlYWRvbmx5IHBhcmVudD86IE1heWJlPFBEPjtcbiAgcmVhZG9ubHkgY29sbGVjdGlvbkZhY3Rvcnk/OiBNYXliZTxGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPj47XG59XG5cbmV4cG9ydCB0eXBlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD4gPSAocGFyZW50OiBPYnNlcnZhYmxlPE1heWJlPFBEPj4pID0+IFN1YnNjcmlwdGlvbjtcbmV4cG9ydCB0eXBlIERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVXaXRoUGFyZW50U2V0UGFyZW50RWZmZWN0RnVuY3Rpb248UEQ+ID0gKG9ic2VydmFibGVPclZhbHVlOiBPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxQRD4+KSA9PiBTdWJzY3JpcHRpb247XG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudFNldFBhcmVudFN0b3JlRWZmZWN0RnVuY3Rpb248UFQsIFBEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+ID0gRmlyZXN0b3JlRG9jdW1lbnQ8UFQ+PiA9IChvYnNlcnZhYmxlT3JWYWx1ZTogT2JzZXJ2YWJsZU9yVmFsdWU8RGJ4RmlyZWJhc2VEb2N1bWVudFN0b3JlPFBULCBQRD4+KSA9PiBTdWJzY3JpcHRpb247XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnQ8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgQSBleHRlbmRzIEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+ID0gRmlyZXN0b3JlQ29sbGVjdGlvbkxpa2U8VCwgRD4+IGV4dGVuZHMgTG9ja1NldENvbXBvbmVudFN0b3JlPG9iamVjdD4sIFBpY2s8Q29tcG9uZW50U3RvcmU8RGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRDb250ZXh0U3RhdGU8VCwgUFQsIEQsIFBEPj4sICdlZmZlY3QnPiB7XG4gIHJlYWRvbmx5IGN1cnJlbnRQYXJlbnQkOiBPYnNlcnZhYmxlPE1heWJlPFBEPj47XG4gIHJlYWRvbmx5IHBhcmVudCQ6IE9ic2VydmFibGU8UEQ+O1xuICByZWFkb25seSBjdXJyZW50Q29sbGVjdGlvbkZhY3RvcnkkOiBPYnNlcnZhYmxlPE1heWJlPEZpcmVzdG9yZUNvbGxlY3Rpb25XaXRoUGFyZW50RmFjdG9yeTxULCBQVCwgRCwgUEQ+Pj47XG4gIHJlYWRvbmx5IGNvbGxlY3Rpb25GYWN0b3J5JDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVDb2xsZWN0aW9uV2l0aFBhcmVudEZhY3Rvcnk8VCwgUFQsIEQsIFBEPj47XG4gIHJlYWRvbmx5IF9zZXRQYXJlbnQ6IERieEZpcmViYXNlQ29tcG9uZW50U3RvcmVTZXRQYXJlbnRFZmZlY3RGdW5jdGlvbjxQRD47XG4gIHJlYWRvbmx5IF9zZXRQYXJlbnREb2N1bWVudDogKCgpID0+IHZvaWQpIHwgKChvYnNlcnZhYmxlT3JWYWx1ZTogT2JzZXJ2YWJsZU9yVmFsdWU8TWF5YmU8UEQ+PikgPT4gU3Vic2NyaXB0aW9uKTtcbiAgcmVhZG9ubHkgc2V0RmlyZXN0b3JlQ29sbGVjdGlvbjogKCgpID0+IHZvaWQpIHwgKChvYnNlcnZhYmxlT3JWYWx1ZTogT2JzZXJ2YWJsZU9yVmFsdWU8TWF5YmU8QT4+KSA9PiBTdWJzY3JpcHRpb24pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0UGFyZW50U3RvcmVFZmZlY3Q8VCwgUFQsIEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxUPiA9IEZpcmVzdG9yZURvY3VtZW50PFQ+LCBQRCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PFBUPiA9IEZpcmVzdG9yZURvY3VtZW50PFBUPiwgQSBleHRlbmRzIEZpcmVzdG9yZUNvbGxlY3Rpb25MaWtlPFQsIEQ+ID0gRmlyZXN0b3JlQ29sbGVjdGlvbkxpa2U8VCwgRD4+KHN0b3JlOiBEYnhGaXJlYmFzZUNvbXBvbmVudFN0b3JlV2l0aFBhcmVudDxULCBQVCwgRCwgUEQsIEE+KTogRGJ4RmlyZWJhc2VDb21wb25lbnRTdG9yZVdpdGhQYXJlbnRTZXRQYXJlbnRTdG9yZUVmZmVjdEZ1bmN0aW9uPFBULCBQRD4ge1xuICByZXR1cm4gc3RvcmUuZWZmZWN0KChpbnB1dDogT2JzZXJ2YWJsZTxNYXliZTxEYnhGaXJlYmFzZURvY3VtZW50U3RvcmU8UFQsIFBEPj4+KSA9PiB7XG4gICAgcmV0dXJuIGlucHV0LnBpcGUoXG4gICAgICBtYXAoKHBhcmVudFN0b3JlKSA9PiB7XG4gICAgICAgIGxldCByZXN1bHQ6IE1heWJlPFN1YnNjcmlwdGlvbj47XG5cbiAgICAgICAgaWYgKHBhcmVudFN0b3JlKSB7XG4gICAgICAgICAgcmVzdWx0ID0gc3RvcmUuX3NldFBhcmVudChwYXJlbnRTdG9yZS5jdXJyZW50RG9jdW1lbnQkKSBhcyBTdWJzY3JpcHRpb247XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0ID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gc2V0IGFzIHRoZSBwYXJlbnQgbG9jayBzZXQgdG9vXG4gICAgICAgIHN0b3JlLnNldFBhcmVudExvY2tTZXQocGFyZW50U3RvcmUpO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9KSxcbiAgICAgIGNsZWFudXAoKHN1YikgPT4ge1xuICAgICAgICBpZiAoc3ViKSB7XG4gICAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfSk7XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import { NgModule } from "@angular/core";
2
- import { DbxFirebaseModelModule } from "./model/model.module";
1
+ import { NgModule } from '@angular/core';
2
+ import { DbxFirebaseModelModule } from './model/model.module';
3
3
  import * as i0 from "@angular/core";
4
4
  export class DbxFirebaseModule {
5
5
  }
@@ -9,9 +9,7 @@ DbxFirebaseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versi
9
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFirebaseModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
- exports: [
13
- DbxFirebaseModelModule
14
- ]
12
+ exports: [DbxFirebaseModelModule]
15
13
  }]
16
14
  }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBTzlELE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixZQUgxQixzQkFBc0I7K0dBR2IsaUJBQWlCLFlBSDFCLHNCQUFzQjsyRkFHYixpQkFBaUI7a0JBTDdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZU1vZGVsTW9kdWxlIH0gZnJvbSBcIi4vbW9kZWwvbW9kZWwubW9kdWxlXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtcbiAgICBEYnhGaXJlYmFzZU1vZGVsTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VNb2R1bGUgeyB9XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBSzlELE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixZQUZsQixzQkFBc0I7K0dBRXJCLGlCQUFpQixZQUZsQixzQkFBc0I7MkZBRXJCLGlCQUFpQjtrQkFIN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VNb2RlbE1vZHVsZSB9IGZyb20gJy4vbW9kZWwvbW9kZWwubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW0RieEZpcmViYXNlTW9kZWxNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlTW9kdWxlIHt9XG4iXX0=