@dereekb/dbx-web 12.6.21 → 12.7.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 (102) hide show
  1. package/esm2022/lib/action/snackbar/action.snackbar.component.mjs +10 -14
  2. package/esm2022/lib/action/snackbar/action.snackbar.directive.mjs +8 -7
  3. package/esm2022/lib/action/transition/transition.safety.dialog.component.mjs +1 -1
  4. package/esm2022/lib/button/progress/abstract.progress.button.directive.mjs +5 -5
  5. package/esm2022/lib/error/error.action.directive.mjs +9 -9
  6. package/esm2022/lib/error/error.loading.directive.mjs +7 -6
  7. package/esm2022/lib/error/error.snackbar.action.directive.mjs +6 -7
  8. package/esm2022/lib/error/error.snackbar.component.mjs +9 -13
  9. package/esm2022/lib/extension/download/blob/download.blob.button.component.mjs +6 -10
  10. package/esm2022/lib/extension/download/text/download.text.component.mjs +1 -6
  11. package/esm2022/lib/extension/help/help.context.service.mjs +3 -5
  12. package/esm2022/lib/extension/model/model.tracker.view.storage.mjs +3 -5
  13. package/esm2022/lib/extension/zip/zip.blob.preview.component.mjs +4 -7
  14. package/esm2022/lib/extension/zip/zip.preview.component.mjs +4 -7
  15. package/esm2022/lib/interaction/dialog/dialog.action.directive.mjs +1 -1
  16. package/esm2022/lib/interaction/filter/filter.popover.component.mjs +9 -12
  17. package/esm2022/lib/interaction/filter/filter.wrapper.component.mjs +3 -2
  18. package/esm2022/lib/interaction/iframe/embed.component.mjs +7 -12
  19. package/esm2022/lib/interaction/iframe/iframe.component.mjs +7 -12
  20. package/esm2022/lib/interaction/popover/abstract.popover.ref.directive.mjs +8 -7
  21. package/esm2022/lib/interaction/popover/popover.action.directive.mjs +1 -1
  22. package/esm2022/lib/interaction/popover/popover.component.mjs +1 -3
  23. package/esm2022/lib/interaction/popover/popover.coordinator.component.mjs +5 -6
  24. package/esm2022/lib/interaction/popover/popover.coordinator.service.mjs +3 -5
  25. package/esm2022/lib/interaction/popup/popup.component.mjs +4 -9
  26. package/esm2022/lib/interaction/popup/popup.coordinator.component.mjs +5 -6
  27. package/esm2022/lib/interaction/popup/popup.coordinator.service.mjs +3 -5
  28. package/esm2022/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +1 -1
  29. package/esm2022/lib/interaction/upload/upload.action.directive.mjs +8 -15
  30. package/esm2022/lib/layout/column/two/two.column.back.directive.mjs +8 -8
  31. package/esm2022/lib/layout/column/two/two.column.component.mjs +4 -5
  32. package/esm2022/lib/layout/column/two/two.column.sref.showright.directive.mjs +5 -6
  33. package/esm2022/lib/layout/column/two/two.column.store.mjs +3 -7
  34. package/esm2022/lib/layout/flex/flex.group.directive.mjs +4 -5
  35. package/esm2022/lib/layout/list/list.view.directive.mjs +16 -21
  36. package/esm2022/lib/layout/list/modifier/list.view.value.modifier.directive.mjs +11 -15
  37. package/esm2022/lib/layout/list/modifier/list.view.value.modifier.ripple.directive.mjs +1 -1
  38. package/esm2022/lib/layout/list/modifier/list.view.value.modifier.selection.directive.mjs +1 -1
  39. package/esm2022/lib/layout/style/style.body.directive.mjs +9 -9
  40. package/esm2022/lib/layout/style/style.directive.mjs +9 -9
  41. package/esm2022/lib/layout/style/style.set.directive.mjs +10 -10
  42. package/esm2022/lib/loading/loading.action.directive.mjs +3 -7
  43. package/esm2022/mapbox/lib/mapbox.injection.store.mjs +1 -1
  44. package/esm2022/mapbox/lib/mapbox.layout.resize.sync.directive.mjs +8 -8
  45. package/esm2022/mapbox/lib/mapbox.menu.component.mjs +17 -19
  46. package/esm2022/mapbox/lib/mapbox.store.mjs +1 -1
  47. package/esm2022/table/lib/date/daterange.table.cell.input.component.mjs +8 -11
  48. package/esm2022/table/lib/table.column.size.directive.mjs +8 -9
  49. package/fesm2022/dereekb-dbx-web-mapbox.mjs +22 -24
  50. package/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
  51. package/fesm2022/dereekb-dbx-web-table.mjs +13 -19
  52. package/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
  53. package/fesm2022/dereekb-dbx-web.mjs +150 -229
  54. package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
  55. package/lib/action/snackbar/action.snackbar.component.d.ts +4 -5
  56. package/lib/action/snackbar/action.snackbar.directive.d.ts +3 -2
  57. package/lib/action/transition/transition.safety.dialog.component.d.ts +1 -2
  58. package/lib/button/progress/abstract.progress.button.directive.d.ts +3 -3
  59. package/lib/error/error.action.directive.d.ts +3 -4
  60. package/lib/error/error.loading.directive.d.ts +2 -2
  61. package/lib/error/error.snackbar.action.directive.d.ts +2 -2
  62. package/lib/error/error.snackbar.component.d.ts +2 -4
  63. package/lib/extension/download/blob/download.blob.button.component.d.ts +3 -4
  64. package/lib/extension/download/text/download.text.component.d.ts +2 -4
  65. package/lib/extension/help/help.context.service.d.ts +1 -3
  66. package/lib/extension/model/model.tracker.view.storage.d.ts +2 -3
  67. package/lib/extension/zip/zip.blob.preview.component.d.ts +2 -3
  68. package/lib/extension/zip/zip.preview.component.d.ts +1 -3
  69. package/lib/interaction/dialog/dialog.action.directive.d.ts +2 -2
  70. package/lib/interaction/filter/filter.popover.component.d.ts +3 -5
  71. package/lib/interaction/filter/filter.wrapper.component.d.ts +1 -1
  72. package/lib/interaction/iframe/embed.component.d.ts +2 -4
  73. package/lib/interaction/iframe/iframe.component.d.ts +2 -4
  74. package/lib/interaction/popover/abstract.popover.ref.directive.d.ts +4 -4
  75. package/lib/interaction/popover/popover.action.directive.d.ts +2 -2
  76. package/lib/interaction/popover/popover.coordinator.component.d.ts +2 -4
  77. package/lib/interaction/popover/popover.coordinator.service.d.ts +2 -4
  78. package/lib/interaction/popup/popup.component.d.ts +2 -3
  79. package/lib/interaction/popup/popup.coordinator.component.d.ts +2 -4
  80. package/lib/interaction/popup/popup.coordinator.service.d.ts +1 -3
  81. package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +1 -2
  82. package/lib/interaction/upload/upload.action.directive.d.ts +2 -6
  83. package/lib/layout/column/two/two.column.back.directive.d.ts +2 -4
  84. package/lib/layout/column/two/two.column.component.d.ts +1 -3
  85. package/lib/layout/column/two/two.column.sref.showright.directive.d.ts +1 -2
  86. package/lib/layout/column/two/two.column.store.d.ts +2 -3
  87. package/lib/layout/flex/flex.group.directive.d.ts +1 -2
  88. package/lib/layout/list/list.view.directive.d.ts +9 -10
  89. package/lib/layout/list/modifier/list.view.value.modifier.directive.d.ts +3 -6
  90. package/lib/layout/list/modifier/list.view.value.modifier.ripple.directive.d.ts +1 -2
  91. package/lib/layout/list/modifier/list.view.value.modifier.selection.directive.d.ts +1 -2
  92. package/lib/layout/style/style.body.directive.d.ts +2 -4
  93. package/lib/layout/style/style.directive.d.ts +2 -4
  94. package/lib/layout/style/style.set.directive.d.ts +2 -4
  95. package/lib/loading/loading.action.directive.d.ts +1 -3
  96. package/mapbox/lib/mapbox.injection.store.d.ts +1 -2
  97. package/mapbox/lib/mapbox.layout.resize.sync.directive.d.ts +2 -4
  98. package/mapbox/lib/mapbox.menu.component.d.ts +5 -6
  99. package/mapbox/lib/mapbox.store.d.ts +1 -2
  100. package/package.json +1 -1
  101. package/table/lib/date/daterange.table.cell.input.component.d.ts +2 -4
  102. package/table/lib/table.column.size.directive.d.ts +4 -5
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, ElementRef, computed, inject, input, viewChild } from '@angular/core';
2
2
  import { DomSanitizer } from '@angular/platform-browser';
3
- import { AbstractSubscriptionDirective, DbxActionButtonDirective } from '@dereekb/dbx-core';
3
+ import { clean, DbxActionButtonDirective } from '@dereekb/dbx-core';
4
4
  import { DbxButtonComponent } from '../../../button/button.component';
5
5
  import { DbxActionModule } from '../../../action/action.module';
6
6
  import { DbxButtonSpacerDirective } from '../../../button/button.spacer.directive';
@@ -13,9 +13,9 @@ import * as i0 from "@angular/core";
13
13
  /**
14
14
  * Button used for downloading an arbitrary blob based on the input configuration.
15
15
  */
16
- export class DbxDownloadBlobButtonComponent extends AbstractSubscriptionDirective {
16
+ export class DbxDownloadBlobButtonComponent {
17
17
  _sanitizer = inject(DomSanitizer);
18
- _browserObjectUrl = browserObjectUrlRef();
18
+ _browserObjectUrl = clean(browserObjectUrlRef());
19
19
  config = input(undefined);
20
20
  downloadButton = viewChild('downloadButton', { read: ElementRef });
21
21
  config$ = toObservable(this.config);
@@ -62,12 +62,8 @@ export class DbxDownloadBlobButtonComponent extends AbstractSubscriptionDirectiv
62
62
  };
63
63
  return style;
64
64
  });
65
- ngOnDestroy() {
66
- super.ngOnDestroy();
67
- this._browserObjectUrl.destroy();
68
- }
69
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxDownloadBlobButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
70
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxDownloadBlobButtonComponent, isStandalone: true, selector: "dbx-download-blob-button", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
65
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxDownloadBlobButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
66
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxDownloadBlobButtonComponent, isStandalone: true, selector: "dbx-download-blob-button", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: `
71
67
  <a #downloadButton [ngClass]="{ 'pointer-disabled': !downloadReadySignal() }" e [href]="fileUrlSignal()" [attr.download]="fileNameSignal()"><dbx-button [buttonDisplay]="buttonDisplaySignal()" [buttonStyle]="buttonStyleSignal()" [working]="!downloadReadySignal()" [disabled]="!downloadReadySignal()"></dbx-button></a>
72
68
  `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DbxActionModule }, { kind: "component", type: DbxButtonComponent, selector: "dbx-button", inputs: ["bar", "type", "buttonStyle", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor", "basic", "raised", "stroked", "flat", "iconOnly", "fab", "mode"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
73
69
  }
@@ -83,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
83
79
  changeDetection: ChangeDetectionStrategy.OnPush
84
80
  }]
85
81
  }] });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQuYmxvYi5idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9kb3dubG9hZC9ibG9iL2Rvd25sb2FkLmJsb2IuYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUgsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsd0JBQXdCLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDOUcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQWlDLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBK0IxQzs7R0FFRztBQVVILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSw2QkFBNkI7SUFDOUQsVUFBVSxHQUFHLE1BQU0s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V0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxXQUFXLENBQUM7UUFFL0MsTUFBTSxLQUFLLEdBQW1CLFdBQVcsSUFBSTtZQUMzQyxJQUFJLEVBQUUsUUFBUTtTQUNmLENBQUM7UUFFRixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsQ0FBQyxDQUFDO0lBRU0sV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25DLENBQUM7d0dBNUVVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLHdUQU9nRCxVQUFVLG9FQWR6Rjs7R0FFVCw0REFFUyxPQUFPLG1GQUFFLGVBQWUsK0JBQTRCLGtCQUFrQjs7NEZBR3JFLDhCQUE4QjtrQkFUMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxRQUFRLEVBQUU7O0dBRVQ7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsa0JBQWtCLEVBQUUsd0JBQXdCLENBQUM7b0JBQzNHLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlLCBEYnhBY3Rpb25CdXR0b25EaXJlY3RpdmUsIERieEJ1dHRvbkRpc3BsYXkgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEYnhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0eXBlIERieEJ1dHRvblN0eWxlIH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbic7XG5pbXBvcnQgeyBEYnhBY3Rpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24vYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLnNwYWNlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgYnJvd3Nlck9iamVjdFVybFJlZiB9IGZyb20gJ0BkZXJlZWtiL2Jyb3dzZXInO1xuaW1wb3J0IHsgYXNQcm9taXNlLCBHZXR0ZXIsIE1heWJlLCBQcm9taXNlT3JWYWx1ZSwgc2FmZUNvbXBhcmVFcXVhbGl0eSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29uZmlnIHtcbiAgLyoqXG4gICAqIEJ1dHRvbiBkaXNwbGF5IGN1c3RvbWl6YXRpb24uXG4gICAqL1xuICByZWFkb25seSBidXR0b25EaXNwbGF5PzogTWF5YmU8RGJ4QnV0dG9uRGlzcGxheT47XG4gIC8qKlxuICAgKiBDdXN0b20gYnV0dG9uIHN0eWxlIHRvIHVzZS5cbiAgICovXG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlPzogTWF5YmU8RGJ4QnV0dG9uU3R5bGU+O1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZmlsZSB0byBzYXZlIHdoZW4gZG93bmxvYWRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGVOYW1lPzogTWF5YmU8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEJsb2IgdG8gZG93bmxvYWQuXG4gICAqL1xuICByZWFkb25seSBibG9iPzogTWF5YmU8QmxvYj47XG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBibG9iIHRvIGRvd25sb2FkLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJsb2I/OiBNYXliZTxHZXR0ZXI8UHJvbWlzZU9yVmFsdWU8TWF5YmU8QmxvYj4+Pj47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBwcmVsb2FkIHRoZSBibG9iIGZyb20gdGhlIGJsb2JHZXR0ZXIgaW5zdGVhZCBvZiB3YWl0aW5nIGZvciB0aGUgYnV0dG9uIHRvIGJlIG1vdXNlZCBvdmVyLlxuICAgKlxuICAgKiBJZ25vcmVkIGlmIGJsb2JHZXR0ZXIgaXMgbm90IHByb3ZpZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJlbG9hZEJsb2I/OiBNYXliZTxib29sZWFuPjtcbn1cblxuLyoqXG4gKiBCdXR0b24gdXNlZCBmb3IgZG93bmxvYWRpbmcgYW4gYXJiaXRyYXJ5IGJsb2IgYmFzZWQgb24gdGhlIGlucHV0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1kb3dubG9hZC1ibG9iLWJ1dHRvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGEgI2Rvd25sb2FkQnV0dG9uIFtuZ0NsYXNzXT1cInsgJ3BvaW50ZXItZGlzYWJsZWQnOiAhZG93bmxvYWRSZWFkeVNpZ25hbCgpIH1cIiBlIFtocmVmXT1cImZpbGVVcmxTaWduYWwoKVwiIFthdHRyLmRvd25sb2FkXT1cImZpbGVOYW1lU2lnbmFsKClcIj48ZGJ4LWJ1dHRvbiBbYnV0dG9uRGlzcGxheV09XCJidXR0b25EaXNwbGF5U2lnbmFsKClcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGVTaWduYWwoKVwiIFt3b3JraW5nXT1cIiFkb3dubG9hZFJlYWR5U2lnbmFsKClcIiBbZGlzYWJsZWRdPVwiIWRvd25sb2FkUmVhZHlTaWduYWwoKVwiPjwvZGJ4LWJ1dHRvbj48L2E+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBEYnhBY3Rpb25Nb2R1bGUsIERieEFjdGlvbkJ1dHRvbkRpcmVjdGl2ZSwgRGJ4QnV0dG9uQ29tcG9uZW50LCBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZEJsb2JCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Nhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jyb3dzZXJPYmplY3RVcmwgPSBicm93c2VyT2JqZWN0VXJsUmVmKCk7XG5cbiAgcmVhZG9ubHkgY29uZmlnID0gaW5wdXQ8TWF5YmU8RGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29uZmlnPj4odW5kZWZpbmVkKTtcblxuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiA9IHZpZXdDaGlsZDxzdHJpbmcsIE1heWJlPEVsZW1lbnRSZWY+PignZG93bmxvYWRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG5cbiAgcmVhZG9ubHkgY29uZmlnJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbmZpZyk7XG5cbiAgcmVhZG9ubHkgYmxvYiQ6IE9ic2VydmFibGU8TWF5YmU8QmxvYj4+ID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IHNhZmVDb21wYXJlRXF1YWxpdHkoeCwgeSwgKGEsIGIpID0+IGE/LmJsb2IgPT09IGI/LmJsb2IgJiYgYT8ubG9hZEJsb2IgPT09IGI/LmxvYWRCbG9iKSksXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPE1heWJlPEJsb2I+PjtcblxuICAgICAgaWYgKHg/LmxvYWRCbG9iKSB7XG4gICAgICAgIG9icyA9IGZyb20oYXNQcm9taXNlKHgubG9hZEJsb2IoKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JzID0gb2YoeD8uYmxvYik7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvYnM7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBibG9iU2lnbmFsID0gdG9TaWduYWwodGhpcy5ibG9iJCk7XG5cbiAgcmVhZG9ubHkgZmlsZVVybFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBibG9iID0gdGhpcy5ibG9iU2lnbmFsKCk7XG5cbiAgICBsZXQgZmlsZVVybDogTWF5YmU8U2FmZVJlc291cmNlVXJsPiA9IHVuZGVmaW5lZDtcblxuICAgIGlmIChibG9iKSB7XG4gICAgICBjb25zdCBvYmplY3RVcmwgPSB0aGlzLl9icm93c2VyT2JqZWN0VXJsLmNyZWF0ZUJyb3dzZXJVcmwoYmxvYik7XG4gICAgICBmaWxlVXJsID0gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChvYmplY3RVcmwpO1xuICAgIH1cblxuICAgIHJldHVybiBmaWxlVXJsO1xuICB9KTtcblxuICByZWFkb25seSBmaWxlTmFtZVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCk/LmZpbGVOYW1lID8/ICdGaWxlJyk7XG5cbiAgcmVhZG9ubHkgZG93bmxvYWRSZWFkeVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBkb3dubG9hZEJ1dHRvbiA9IHRoaXMuZG93bmxvYWRCdXR0b24oKTtcbiAgICBjb25zdCBmaWxlTmFtZSA9IHRoaXMuZmlsZU5hbWVTaWduYWwoKTtcbiAgICBjb25zdCBmaWxlVXJsID0gdGhpcy5maWxlVXJsU2lnbmFsKCk7XG4gICAgcmV0dXJuIEJvb2xlYW4oZG93bmxvYWRCdXR0b24gJiYgZmlsZU5hbWUgJiYgZmlsZVVybCk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvbkRpc3BsYXlTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBidXR0b25EaXNwbGF5ID0gY29uZmlnPy5idXR0b25EaXNwbGF5O1xuXG4gICAgY29uc3QgZGlzcGxheTogRGJ4QnV0dG9uRGlzcGxheSA9IGJ1dHRvbkRpc3BsYXkgPz8ge1xuICAgICAgaWNvbjogJ2Rvd25sb2FkJyxcbiAgICAgIHRleHQ6ICdEb3dubG9hZCdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGRpc3BsYXk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGJ1dHRvblN0eWxlID0gdGhpcy5jb25maWcoKT8uYnV0dG9uU3R5bGU7XG5cbiAgICBjb25zdCBzdHlsZTogRGJ4QnV0dG9uU3R5bGUgPSBidXR0b25TdHlsZSA/PyB7XG4gICAgICB0eXBlOiAncmFpc2VkJ1xuICAgIH07XG5cbiAgICByZXR1cm4gc3R5bGU7XG4gIH0pO1xuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fYnJvd3Nlck9iamVjdFVybC5kZXN0cm95KCk7XG4gIH1cbn1cbiJdfQ==
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQuYmxvYi5idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9kb3dubG9hZC9ibG9iL2Rvd25sb2FkLmJsb2IuYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsS0FBSyxFQUFFLHdCQUF3QixFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFpQyxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQStCMUM7O0dBRUc7QUFVSCxNQUFNLE9BQU8sOEJBQThCO0lBQ3hCLFVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFD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LFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsV0FBVyxDQUFDO1FBRS9DLE1BQU0sS0FBSyxHQUFtQixXQUFXLElBQUk7WUFDM0MsSUFBSSxFQUFFLFFBQVE7U0FDZixDQUFDO1FBRUYsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDLENBQUMsQ0FBQzt3R0F0RVEsOEJBQThCOzRGQUE5Qiw4QkFBOEIsd1RBTWdELFVBQVUsNkNBYnpGOztHQUVULDREQUVTLE9BQU8sbUZBQUUsZUFBZSwrQkFBNEIsa0JBQWtCOzs0RkFHckUsOEJBQThCO2tCQVQxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxrQkFBa0IsRUFBRSx3QkFBd0IsQ0FBQztvQkFDM0csZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IGNsZWFuLCBEYnhBY3Rpb25CdXR0b25EaXJlY3RpdmUsIERieEJ1dHRvbkRpc3BsYXkgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEYnhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0eXBlIERieEJ1dHRvblN0eWxlIH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbic7XG5pbXBvcnQgeyBEYnhBY3Rpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24vYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLnNwYWNlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgYnJvd3Nlck9iamVjdFVybFJlZiB9IGZyb20gJ0BkZXJlZWtiL2Jyb3dzZXInO1xuaW1wb3J0IHsgYXNQcm9taXNlLCBHZXR0ZXIsIE1heWJlLCBQcm9taXNlT3JWYWx1ZSwgc2FmZUNvbXBhcmVFcXVhbGl0eSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29uZmlnIHtcbiAgLyoqXG4gICAqIEJ1dHRvbiBkaXNwbGF5IGN1c3RvbWl6YXRpb24uXG4gICAqL1xuICByZWFkb25seSBidXR0b25EaXNwbGF5PzogTWF5YmU8RGJ4QnV0dG9uRGlzcGxheT47XG4gIC8qKlxuICAgKiBDdXN0b20gYnV0dG9uIHN0eWxlIHRvIHVzZS5cbiAgICovXG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlPzogTWF5YmU8RGJ4QnV0dG9uU3R5bGU+O1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZmlsZSB0byBzYXZlIHdoZW4gZG93bmxvYWRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGZpbGVOYW1lPzogTWF5YmU8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEJsb2IgdG8gZG93bmxvYWQuXG4gICAqL1xuICByZWFkb25seSBibG9iPzogTWF5YmU8QmxvYj47XG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBibG9iIHRvIGRvd25sb2FkLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEJsb2I/OiBNYXliZTxHZXR0ZXI8UHJvbWlzZU9yVmFsdWU8TWF5YmU8QmxvYj4+Pj47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBwcmVsb2FkIHRoZSBibG9iIGZyb20gdGhlIGJsb2JHZXR0ZXIgaW5zdGVhZCBvZiB3YWl0aW5nIGZvciB0aGUgYnV0dG9uIHRvIGJlIG1vdXNlZCBvdmVyLlxuICAgKlxuICAgKiBJZ25vcmVkIGlmIGJsb2JHZXR0ZXIgaXMgbm90IHByb3ZpZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJlbG9hZEJsb2I/OiBNYXliZTxib29sZWFuPjtcbn1cblxuLyoqXG4gKiBCdXR0b24gdXNlZCBmb3IgZG93bmxvYWRpbmcgYW4gYXJiaXRyYXJ5IGJsb2IgYmFzZWQgb24gdGhlIGlucHV0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1kb3dubG9hZC1ibG9iLWJ1dHRvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGEgI2Rvd25sb2FkQnV0dG9uIFtuZ0NsYXNzXT1cInsgJ3BvaW50ZXItZGlzYWJsZWQnOiAhZG93bmxvYWRSZWFkeVNpZ25hbCgpIH1cIiBlIFtocmVmXT1cImZpbGVVcmxTaWduYWwoKVwiIFthdHRyLmRvd25sb2FkXT1cImZpbGVOYW1lU2lnbmFsKClcIj48ZGJ4LWJ1dHRvbiBbYnV0dG9uRGlzcGxheV09XCJidXR0b25EaXNwbGF5U2lnbmFsKClcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGVTaWduYWwoKVwiIFt3b3JraW5nXT1cIiFkb3dubG9hZFJlYWR5U2lnbmFsKClcIiBbZGlzYWJsZWRdPVwiIWRvd25sb2FkUmVhZHlTaWduYWwoKVwiPjwvZGJ4LWJ1dHRvbj48L2E+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBEYnhBY3Rpb25Nb2R1bGUsIERieEFjdGlvbkJ1dHRvbkRpcmVjdGl2ZSwgRGJ4QnV0dG9uQ29tcG9uZW50LCBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZEJsb2JCdXR0b25Db21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3Nlck9iamVjdFVybCA9IGNsZWFuKGJyb3dzZXJPYmplY3RVcmxSZWYoKSk7XG5cbiAgcmVhZG9ubHkgY29uZmlnID0gaW5wdXQ8TWF5YmU8RGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29uZmlnPj4odW5kZWZpbmVkKTtcblxuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiA9IHZpZXdDaGlsZDxzdHJpbmcsIE1heWJlPEVsZW1lbnRSZWY+PignZG93bmxvYWRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG5cbiAgcmVhZG9ubHkgY29uZmlnJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbmZpZyk7XG5cbiAgcmVhZG9ubHkgYmxvYiQ6IE9ic2VydmFibGU8TWF5YmU8QmxvYj4+ID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHgsIHkpID0+IHNhZmVDb21wYXJlRXF1YWxpdHkoeCwgeSwgKGEsIGIpID0+IGE/LmJsb2IgPT09IGI/LmJsb2IgJiYgYT8ubG9hZEJsb2IgPT09IGI/LmxvYWRCbG9iKSksXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPE1heWJlPEJsb2I+PjtcblxuICAgICAgaWYgKHg/LmxvYWRCbG9iKSB7XG4gICAgICAgIG9icyA9IGZyb20oYXNQcm9taXNlKHgubG9hZEJsb2IoKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JzID0gb2YoeD8uYmxvYik7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvYnM7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBibG9iU2lnbmFsID0gdG9TaWduYWwodGhpcy5ibG9iJCk7XG5cbiAgcmVhZG9ubHkgZmlsZVVybFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBibG9iID0gdGhpcy5ibG9iU2lnbmFsKCk7XG5cbiAgICBsZXQgZmlsZVVybDogTWF5YmU8U2FmZVJlc291cmNlVXJsPiA9IHVuZGVmaW5lZDtcblxuICAgIGlmIChibG9iKSB7XG4gICAgICBjb25zdCBvYmplY3RVcmwgPSB0aGlzLl9icm93c2VyT2JqZWN0VXJsLmNyZWF0ZUJyb3dzZXJVcmwoYmxvYik7XG4gICAgICBmaWxlVXJsID0gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChvYmplY3RVcmwpO1xuICAgIH1cblxuICAgIHJldHVybiBmaWxlVXJsO1xuICB9KTtcblxuICByZWFkb25seSBmaWxlTmFtZVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY29uZmlnKCk/LmZpbGVOYW1lID8/ICdGaWxlJyk7XG5cbiAgcmVhZG9ubHkgZG93bmxvYWRSZWFkeVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBkb3dubG9hZEJ1dHRvbiA9IHRoaXMuZG93bmxvYWRCdXR0b24oKTtcbiAgICBjb25zdCBmaWxlTmFtZSA9IHRoaXMuZmlsZU5hbWVTaWduYWwoKTtcbiAgICBjb25zdCBmaWxlVXJsID0gdGhpcy5maWxlVXJsU2lnbmFsKCk7XG4gICAgcmV0dXJuIEJvb2xlYW4oZG93bmxvYWRCdXR0b24gJiYgZmlsZU5hbWUgJiYgZmlsZVVybCk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvbkRpc3BsYXlTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5jb25maWcoKTtcbiAgICBjb25zdCBidXR0b25EaXNwbGF5ID0gY29uZmlnPy5idXR0b25EaXNwbGF5O1xuXG4gICAgY29uc3QgZGlzcGxheTogRGJ4QnV0dG9uRGlzcGxheSA9IGJ1dHRvbkRpc3BsYXkgPz8ge1xuICAgICAgaWNvbjogJ2Rvd25sb2FkJyxcbiAgICAgIHRleHQ6ICdEb3dubG9hZCdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGRpc3BsYXk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGJ1dHRvblN0eWxlU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGJ1dHRvblN0eWxlID0gdGhpcy5jb25maWcoKT8uYnV0dG9uU3R5bGU7XG5cbiAgICBjb25zdCBzdHlsZTogRGJ4QnV0dG9uU3R5bGUgPSBidXR0b25TdHlsZSA/PyB7XG4gICAgICB0eXBlOiAncmFpc2VkJ1xuICAgIH07XG5cbiAgICByZXR1cm4gc3R5bGU7XG4gIH0pO1xufVxuIl19
@@ -8,7 +8,6 @@ import { NgTemplateOutlet } from '@angular/common';
8
8
  import { DbxButtonComponent } from '../../../button/button.component';
9
9
  import { DbxActionModule } from '../../../action/action.module';
10
10
  import { DbxButtonSpacerDirective } from '../../../button/button.spacer.directive';
11
- import { browserObjectUrlRef } from '@dereekb/browser';
12
11
  import { DbxDownloadBlobButtonComponent } from '../blob/download.blob.button.component';
13
12
  import { AbstractDbxClipboardDirective } from '../../../util/clipboard.directive';
14
13
  import { DbxContentPitDirective } from '../../../layout/content/content.pit.directive';
@@ -18,7 +17,6 @@ import * as i1 from "@dereekb/dbx-core";
18
17
  * View for previewing and downloading arbitrary text content.
19
18
  */
20
19
  export class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective {
21
- _browserObjectUrl = browserObjectUrlRef();
22
20
  downloadButton = viewChild('downloadButton', { read: ElementRef });
23
21
  showDownloadButton = input(true);
24
22
  loadingText = input(undefined);
@@ -78,9 +76,6 @@ export class DbxDownloadTextViewComponent extends AbstractDbxClipboardDirective
78
76
  }
79
77
  }));
80
78
  };
81
- ngOnDestroy() {
82
- this._browserObjectUrl.destroy();
83
- }
84
79
  toggleExpandPreview() {
85
80
  this.expandPreview.update((value) => !value);
86
81
  }
@@ -91,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
91
86
  type: Component,
92
87
  args: [{ selector: 'dbx-download-text-view', standalone: true, imports: [NgTemplateOutlet, DbxLoadingComponent, DbxActionModule, DbxActionButtonDirective, DbxButtonComponent, DbxButtonSpacerDirective, DbxDownloadBlobButtonComponent, DbxContentPitDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear()\" [text]=\"loadingText()\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n @if (showTitle()) {\n <div class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileNameSignal() }}</div>\n }\n @if (showPreview()) {\n <dbx-content-pit [scrollable]=\"!expandPreview()\" class=\"dbx-download-text-preview dbx-json dbx-mb3\">\n @if (showExpandPreviewButton()) {\n <dbx-button class=\"dbx-content-pit-floating-button\" [raised]=\"true\" [icon]=\"expandPreview() ? 'unfold_less' : 'unfold_more'\" (buttonClick)=\"toggleExpandPreview()\"></dbx-button>\n }\n {{ contentDataSignal() }}\n </dbx-content-pit>\n }\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n @if (showDownloadButton()) {\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-download-blob-button [config]=\"downloadConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n </div>\n</ng-template>\n" }]
93
88
  }] });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0gsT0FBTyxFQUFxQyxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQTBCLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlMLE9BQU8sRUFBYyxLQUFLLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbkYsT0FBTyxFQUFFLG1CQUFt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QkFBNEIseStDQUdrRCxVQUFVLG9FQzlCckcsKzJDQTZCQSw0Q0RMWSxnQkFBZ0Isb0pBQUUsbUJBQW1CLGtLQUFFLGVBQWUsb2hCQUE0QixrQkFBa0IsdVBBQUUsd0JBQXdCLGdGQUFFLDhCQUE4Qix5RkFBRSxzQkFBc0I7OzRGQUdyTCw0QkFBNEI7a0JBUHhDLFNBQVM7K0JBRUUsd0JBQXdCLGNBQ3RCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSw4QkFBOEIsRUFBRSxzQkFBc0IsQ0FBQyxtQkFDaEwsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgY29tcHV0ZWQsIGlucHV0LCBtb2RlbCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXb3JrVXNpbmdPYnNlcnZhYmxlLCBMb2FkaW5nU3RhdGUsIGxvYWRpbmdTdGF0ZUNvbnRleHQsIHN1Y2Nlc3NSZXN1bHQsIHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlLCBNYXliZU9ic2VydmFibGVPclZhbHVlLCBtYXliZVZhbHVlRnJvbU9ic2VydmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmaXJzdCwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERvd25sb2FkVGV4dENvbnRlbnQgfSBmcm9tICcuL2Rvd25sb2FkLnRleHQnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IERieExvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9sb2FkaW5nL2xvYWRpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGJ4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vYWN0aW9uL2FjdGlvbi5tb2R1bGUnO1xuaW1wb3J0IHsgRGJ4QnV0dG9uU3BhY2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbi5zcGFjZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IGJyb3dzZXJPYmplY3RVcmxSZWYgfSBmcm9tICdAZGVyZWVrYi9icm93c2VyJztcbmltcG9ydCB7IERieERvd25sb2FkQmxvYkJ1dHRvbkNvbXBvbmVudCwgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29uZmlnIH0gZnJvbSAnLi4vYmxvYi9kb3dubG9hZC5ibG9iLmJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWJzdHJhY3REYnhDbGlwYm9hcmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi91dGlsL2NsaXBib2FyZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4Q29udGVudFBpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2xheW91dC9jb250ZW50L2NvbnRlbnQucGl0LmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogVmlldyBmb3IgcHJldmlld2luZyBhbmQgZG93bmxvYWRpbmcgYXJiaXRyYXJ5IHRleHQgY29udGVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9kb3dubG9hZC50ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgc2VsZWN0b3I6ICdkYngtZG93bmxvYWQtdGV4dC12aWV3JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXQsIERieExvYWRpbmdDb21wb25lbnQsIERieEFjdGlvbk1vZHVsZSwgRGJ4QWN0aW9uQnV0dG9uRGlyZWN0aXZlLCBEYnhCdXR0b25Db21wb25lbnQsIERieEJ1dHRvblNwYWNlckRpcmVjdGl2ZSwgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhDb250ZW50UGl0RGlyZWN0aXZlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4RG93bmxvYWRUZXh0Vmlld0NvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RGJ4Q2xpcGJvYXJkRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3Nlck9iamVjdFVybCA9IGJyb3dzZXJPYmplY3RVcmxSZWYoKTtcblxuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiA9IHZpZXdDaGlsZDxzdHJpbmcsIE1heWJlPEVsZW1lbnRSZWY+PignZG93bmxvYWRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHJlYWRvbmx5IHNob3dEb3dubG9hZEJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIHJlYWRvbmx5IGxvYWRpbmdUZXh0ID0gaW5wdXQ8TWF5YmU8c3RyaW5nPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgbGluZWFyID0gaW5wdXQ8TWF5YmU8Ym9vbGVhbj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHNob3dUaXRsZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSBzaG93UHJldmlldyA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSBzaG93RXhwYW5kUHJldmlld0J1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIHJlYWRvbmx5IGV4cGFuZFByZXZpZXcgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG5cbiAgcmVhZG9ubHkgY29udGVudCA9IGlucHV0PE1heWJlPERvd25sb2FkVGV4dENvbnRlbnQ+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb250ZW50U3RhdGUgPSBpbnB1dDxNYXliZU9ic2VydmFibGVPclZhbHVlPExvYWRpbmdTdGF0ZTxEb3dubG9hZFRleHRDb250ZW50Pj4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgY29udGVudFN0YXRlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbnRlbnRTdGF0ZSkucGlwZShtYXliZVZhbHVlRnJvbU9ic2VydmFibGVPclZhbHVlKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBjb250ZW50U3RhdGVTaWduYWwgPSB0b1NpZ25hbCh0aGlzLmNvbnRlbnRTdGF0ZSQpO1xuXG4gIHJlYWRvbmx5IGNvbnRlbnRMb2FkaW5nU3RhdGVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudCgpO1xuICAgIGNvbnN0IGNvbnRlbnRTdGF0ZSA9IHRoaXMuY29udGVudFN0YXRlU2lnbmFsKCk7XG5cbiAgICBsZXQgcmVzdWx0OiBNYXliZTxMb2FkaW5nU3RhdGU8RG93bmxvYWRUZXh0Q29udGVudD4+O1xuXG4gICAgaWYgKGNvbnRlbnRTdGF0ZSkge1xuICAgICAgcmVzdWx0ID0gY29udGVudFN0YXRlO1xuICAgIH0gZWxzZSBpZiAoY29udGVudCkge1xuICAgICAgcmVzdWx0ID0gc3VjY2Vzc1Jlc3VsdChjb250ZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9KTtcblxuICByZWFkb25seSBjb250ZW50TG9hZGluZ1N0YXRlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbnRlbnRMb2FkaW5nU3RhdGVTaWduYWwpO1xuICByZWFkb25seSBjb250ZW50JDogT2JzZXJ2YWJsZTxNYXliZTxEb3dubG9hZFRleHRDb250ZW50Pj4gPSB0aGlzLmNvbnRlbnRMb2FkaW5nU3RhdGUkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBpZiAoeCkge1xuICAgICAgICByZXR1cm4gb2YoeCkucGlwZSh2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgfVxuICAgIH0pXG4gICk7XG5cbiAgcmVhZG9ubHkgY29udGVudFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMuY29udGVudCQpO1xuICByZWFkb25seSBjb250ZW50RGF0YVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY29udGVudFNpZ25hbCgpPy5jb250ZW50KTtcbiAgcmVhZG9ubHkgZmlsZU5hbWVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbnRlbnRTaWduYWwoKT8ubmFtZSA/PyAnZG93bmxvYWQudHh0Jyk7XG5cbiAgcmVhZG9ubHkgZG93bmxvYWRDb25maWdTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudFNpZ25hbCgpO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5maWxlTmFtZVNpZ25hbCgpO1xuICAgIGxldCByZXN1bHQ6IE1heWJlPERieERvd25sb2FkQmxvYkJ1dHRvbkNvbmZpZz4gPSB1bmRlZmluZWQ7XG5cbiAgICBpZiAoY29udGVudCkge1xuICAgICAgcmVzdWx0ID0ge1xuICAgICAgICBibG9iOiBuZXcgQmxvYihbY29udGVudC5jb250ZW50XSwgeyB0eXBlOiBjb250ZW50Lm1pbWVUeXBlID8/ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nIH0pLFxuICAgICAgICBmaWxlTmFtZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9KTtcblxuICByZWFkb25seSBjb250ZXh0ID0gbG9hZGluZ1N0YXRlQ29udGV4dCh7IG9iczogdGhpcy5jb250ZW50TG9hZGluZ1N0YXRlJCB9KTtcblxuICByZWFkb25seSBoYW5kbGVDb3B5VG9DbGlwYm9hcmQ6IFdvcmtVc2luZ09ic2VydmFibGUgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudCQucGlwZShcbiAgICAgIGZpcnN0KCksXG4gICAgICBzd2l0Y2hNYXAoKGRvd25sb2FkVGV4dENvbnRlbnQ6IE1heWJlPERvd25sb2FkVGV4dENvbnRlbnQ+KSA9PiB7XG4gICAgICAgIGlmIChkb3dubG9hZFRleHRDb250ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2NvcHlUb0NsaXBib2FyZChkb3dubG9hZFRleHRDb250ZW50LmNvbnRlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfTtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9icm93c2VyT2JqZWN0VXJsLmRlc3Ryb3koKTtcbiAgfVxuXG4gIHRvZ2dsZUV4cGFuZFByZXZpZXcoKSB7XG4gICAgdGhpcy5leHBhbmRQcmV2aWV3LnVwZGF0ZSgodmFsdWUpID0+ICF2YWx1ZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3XCI+XG4gIDxkYngtbG9hZGluZyBbY29udGV4dF09XCJjb250ZXh0XCIgW2xpbmVhcl09XCJsaW5lYXIoKVwiIFt0ZXh0XT1cImxvYWRpbmdUZXh0KClcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFZpZXdcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kYngtbG9hZGluZz5cbjwvZGl2PlxuXG48IS0tIFRlbXBsYXRlIC0tPlxuPG5nLXRlbXBsYXRlICNjb250ZW50Vmlldz5cbiAgPGRpdiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXZpZXctY29udGVudFwiPlxuICAgIEBpZiAoc2hvd1RpdGxlKCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWNvbnRlbnQtdGl0bGUgZGJ4LW1iMiBtYXQtc3VidGl0bGUtMlwiPnt7IGZpbGVOYW1lU2lnbmFsKCkgfX08L2Rpdj5cbiAgICB9XG4gICAgQGlmIChzaG93UHJldmlldygpKSB7XG4gICAgICA8ZGJ4LWNvbnRlbnQtcGl0IFtzY3JvbGxhYmxlXT1cIiFleHBhbmRQcmV2aWV3KClcIiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXByZXZpZXcgZGJ4LWpzb24gZGJ4LW1iM1wiPlxuICAgICAgICBAaWYgKHNob3dFeHBhbmRQcmV2aWV3QnV0dG9uKCkpIHtcbiAgICAgICAgICA8ZGJ4LWJ1dHRvbiBjbGFzcz1cImRieC1jb250ZW50LXBpdC1mbG9hdGluZy1idXR0b25cIiBbcmFpc2VkXT1cInRydWVcIiBbaWNvbl09XCJleHBhbmRQcmV2aWV3KCkgPyAndW5mb2xkX2xlc3MnIDogJ3VuZm9sZF9tb3JlJ1wiIChidXR0b25DbGljayk9XCJ0b2dnbGVFeHBhbmRQcmV2aWV3KClcIj48L2RieC1idXR0b24+XG4gICAgICAgIH1cbiAgICAgICAge3sgY29udGVudERhdGFTaWduYWwoKSB9fVxuICAgICAgPC9kYngtY29udGVudC1waXQ+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWFjdGlvbnNcIj5cbiAgICAgIDxkYngtYnV0dG9uIGRieEFjdGlvbiBkYnhBY3Rpb25WYWx1ZSBbcmFpc2VkXT1cInRydWVcIiBbZGJ4QWN0aW9uSGFuZGxlcl09XCJoYW5kbGVDb3B5VG9DbGlwYm9hcmRcIiBpY29uPVwiY29udGVudF9jb3B5XCIgZGJ4QWN0aW9uQnV0dG9uIHRleHQ9XCJDb3B5IFRvIENsaXBib2FyZFwiPjwvZGJ4LWJ1dHRvbj5cbiAgICAgIEBpZiAoc2hvd0Rvd25sb2FkQnV0dG9uKCkpIHtcbiAgICAgICAgPGRieC1idXR0b24tc3BhY2VyPjwvZGJ4LWJ1dHRvbi1zcGFjZXI+XG4gICAgICAgIDxkYngtZG93bmxvYWQtYmxvYi1idXR0b24gW2NvbmZpZ109XCJkb3dubG9hZENvbmZpZ1NpZ25hbCgpXCI+PC9kYngtZG93bmxvYWQtYmxvYi1idXR0b24+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFxQyxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQTBCLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlMLE9BQU8sRUFBYyxLQUFLLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbkYsT0FBTyxFQUFFLDhCQUE4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QVB4QyxTQUFTOytCQUVFLHdCQUF3QixjQUN0QixJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsa0JBQWtCLEVBQUUsd0JBQXdCLEVBQUUsOEJBQThCLEVBQUUsc0JBQXNCLENBQUMsbUJBQ2hMLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBjb21wdXRlZCwgaW5wdXQsIG1vZGVsLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFdvcmtVc2luZ09ic2VydmFibGUsIExvYWRpbmdTdGF0ZSwgbG9hZGluZ1N0YXRlQ29udGV4dCwgc3VjY2Vzc1Jlc3VsdCwgdmFsdWVGcm9tRmluaXNoZWRMb2FkaW5nU3RhdGUsIE1heWJlT2JzZXJ2YWJsZU9yVmFsdWUsIG1heWJlVmFsdWVGcm9tT2JzZXJ2YWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpcnN0LCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRG93bmxvYWRUZXh0Q29udGVudCB9IGZyb20gJy4vZG93bmxvYWQudGV4dCc7XG5pbXBvcnQgeyBEYnhBY3Rpb25CdXR0b25EaXJlY3RpdmUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUsIHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRGJ4TG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24vYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLnNwYWNlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhEb3dubG9hZEJsb2JCdXR0b25Db25maWcgfSBmcm9tICcuLi9ibG9iL2Rvd25sb2FkLmJsb2IuYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBYnN0cmFjdERieENsaXBib2FyZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3V0aWwvY2xpcGJvYXJkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYnhDb250ZW50UGl0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vbGF5b3V0L2NvbnRlbnQvY29udGVudC5waXQuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBWaWV3IGZvciBwcmV2aWV3aW5nIGFuZCBkb3dubG9hZGluZyBhcmJpdHJhcnkgdGV4dCBjb250ZW50LlxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2Rvd25sb2FkLnRleHQuY29tcG9uZW50Lmh0bWwnLFxuICBzZWxlY3RvcjogJ2RieC1kb3dubG9hZC10ZXh0LXZpZXcnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgRGJ4TG9hZGluZ0NvbXBvbmVudCwgRGJ4QWN0aW9uTW9kdWxlLCBEYnhBY3Rpb25CdXR0b25EaXJlY3RpdmUsIERieEJ1dHRvbkNvbXBvbmVudCwgRGJ4QnV0dG9uU3BhY2VyRGlyZWN0aXZlLCBEYnhEb3dubG9hZEJsb2JCdXR0b25Db21wb25lbnQsIERieENvbnRlbnRQaXREaXJlY3RpdmVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhDbGlwYm9hcmREaXJlY3RpdmUge1xuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiA9IHZpZXdDaGlsZDxzdHJpbmcsIE1heWJlPEVsZW1lbnRSZWY+PignZG93bmxvYWRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHJlYWRvbmx5IHNob3dEb3dubG9hZEJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIHJlYWRvbmx5IGxvYWRpbmdUZXh0ID0gaW5wdXQ8TWF5YmU8c3RyaW5nPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgbGluZWFyID0gaW5wdXQ8TWF5YmU8Ym9vbGVhbj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHNob3dUaXRsZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSBzaG93UHJldmlldyA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSBzaG93RXhwYW5kUHJldmlld0J1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIHJlYWRvbmx5IGV4cGFuZFByZXZpZXcgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG5cbiAgcmVhZG9ubHkgY29udGVudCA9IGlucHV0PE1heWJlPERvd25sb2FkVGV4dENvbnRlbnQ+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb250ZW50U3RhdGUgPSBpbnB1dDxNYXliZU9ic2VydmFibGVPclZhbHVlPExvYWRpbmdTdGF0ZTxEb3dubG9hZFRleHRDb250ZW50Pj4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgY29udGVudFN0YXRlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbnRlbnRTdGF0ZSkucGlwZShtYXliZVZhbHVlRnJvbU9ic2VydmFibGVPclZhbHVlKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBjb250ZW50U3RhdGVTaWduYWwgPSB0b1NpZ25hbCh0aGlzLmNvbnRlbnRTdGF0ZSQpO1xuXG4gIHJlYWRvbmx5IGNvbnRlbnRMb2FkaW5nU3RhdGVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudCgpO1xuICAgIGNvbnN0IGNvbnRlbnRTdGF0ZSA9IHRoaXMuY29udGVudFN0YXRlU2lnbmFsKCk7XG5cbiAgICBsZXQgcmVzdWx0OiBNYXliZTxMb2FkaW5nU3RhdGU8RG93bmxvYWRUZXh0Q29udGVudD4+O1xuXG4gICAgaWYgKGNvbnRlbnRTdGF0ZSkge1xuICAgICAgcmVzdWx0ID0gY29udGVudFN0YXRlO1xuICAgIH0gZWxzZSBpZiAoY29udGVudCkge1xuICAgICAgcmVzdWx0ID0gc3VjY2Vzc1Jlc3VsdChjb250ZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9KTtcblxuICByZWFkb25seSBjb250ZW50TG9hZGluZ1N0YXRlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvbnRlbnRMb2FkaW5nU3RhdGVTaWduYWwpO1xuICByZWFkb25seSBjb250ZW50JDogT2JzZXJ2YWJsZTxNYXliZTxEb3dubG9hZFRleHRDb250ZW50Pj4gPSB0aGlzLmNvbnRlbnRMb2FkaW5nU3RhdGUkLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBpZiAoeCkge1xuICAgICAgICByZXR1cm4gb2YoeCkucGlwZSh2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgfVxuICAgIH0pXG4gICk7XG5cbiAgcmVhZG9ubHkgY29udGVudFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMuY29udGVudCQpO1xuICByZWFkb25seSBjb250ZW50RGF0YVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY29udGVudFNpZ25hbCgpPy5jb250ZW50KTtcbiAgcmVhZG9ubHkgZmlsZU5hbWVTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbnRlbnRTaWduYWwoKT8ubmFtZSA/PyAnZG93bmxvYWQudHh0Jyk7XG5cbiAgcmVhZG9ubHkgZG93bmxvYWRDb25maWdTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGVudFNpZ25hbCgpO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5maWxlTmFtZVNpZ25hbCgpO1xuICAgIGxldCByZXN1bHQ6IE1heWJlPERieERvd25sb2FkQmxvYkJ1dHRvbkNvbmZpZz4gPSB1bmRlZmluZWQ7XG5cbiAgICBpZiAoY29udGVudCkge1xuICAgICAgcmVzdWx0ID0ge1xuICAgICAgICBibG9iOiBuZXcgQmxvYihbY29udGVudC5jb250ZW50XSwgeyB0eXBlOiBjb250ZW50Lm1pbWVUeXBlID8/ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nIH0pLFxuICAgICAgICBmaWxlTmFtZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9KTtcblxuICByZWFkb25seSBjb250ZXh0ID0gbG9hZGluZ1N0YXRlQ29udGV4dCh7IG9iczogdGhpcy5jb250ZW50TG9hZGluZ1N0YXRlJCB9KTtcblxuICByZWFkb25seSBoYW5kbGVDb3B5VG9DbGlwYm9hcmQ6IFdvcmtVc2luZ09ic2VydmFibGUgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudCQucGlwZShcbiAgICAgIGZpcnN0KCksXG4gICAgICBzd2l0Y2hNYXAoKGRvd25sb2FkVGV4dENvbnRlbnQ6IE1heWJlPERvd25sb2FkVGV4dENvbnRlbnQ+KSA9PiB7XG4gICAgICAgIGlmIChkb3dubG9hZFRleHRDb250ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2NvcHlUb0NsaXBib2FyZChkb3dubG9hZFRleHRDb250ZW50LmNvbnRlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfTtcblxuICB0b2dnbGVFeHBhbmRQcmV2aWV3KCkge1xuICAgIHRoaXMuZXhwYW5kUHJldmlldy51cGRhdGUoKHZhbHVlKSA9PiAhdmFsdWUpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGJ4LWRvd25sb2FkLXRleHQtdmlld1wiPlxuICA8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiIFtsaW5lYXJdPVwibGluZWFyKClcIiBbdGV4dF09XCJsb2FkaW5nVGV4dCgpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRWaWV3XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGJ4LWxvYWRpbmc+XG48L2Rpdj5cblxuPCEtLSBUZW1wbGF0ZSAtLT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudFZpZXc+XG4gIDxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWNvbnRlbnRcIj5cbiAgICBAaWYgKHNob3dUaXRsZSgpKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZGJ4LWRvd25sb2FkLXRleHQtdmlldy1jb250ZW50LXRpdGxlIGRieC1tYjIgbWF0LXN1YnRpdGxlLTJcIj57eyBmaWxlTmFtZVNpZ25hbCgpIH19PC9kaXY+XG4gICAgfVxuICAgIEBpZiAoc2hvd1ByZXZpZXcoKSkge1xuICAgICAgPGRieC1jb250ZW50LXBpdCBbc2Nyb2xsYWJsZV09XCIhZXhwYW5kUHJldmlldygpXCIgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC1wcmV2aWV3IGRieC1qc29uIGRieC1tYjNcIj5cbiAgICAgICAgQGlmIChzaG93RXhwYW5kUHJldmlld0J1dHRvbigpKSB7XG4gICAgICAgICAgPGRieC1idXR0b24gY2xhc3M9XCJkYngtY29udGVudC1waXQtZmxvYXRpbmctYnV0dG9uXCIgW3JhaXNlZF09XCJ0cnVlXCIgW2ljb25dPVwiZXhwYW5kUHJldmlldygpID8gJ3VuZm9sZF9sZXNzJyA6ICd1bmZvbGRfbW9yZSdcIiAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlRXhwYW5kUHJldmlldygpXCI+PC9kYngtYnV0dG9uPlxuICAgICAgICB9XG4gICAgICAgIHt7IGNvbnRlbnREYXRhU2lnbmFsKCkgfX1cbiAgICAgIDwvZGJ4LWNvbnRlbnQtcGl0PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWRvd25sb2FkLXRleHQtdmlldy1hY3Rpb25zXCI+XG4gICAgICA8ZGJ4LWJ1dHRvbiBkYnhBY3Rpb24gZGJ4QWN0aW9uVmFsdWUgW3JhaXNlZF09XCJ0cnVlXCIgW2RieEFjdGlvbkhhbmRsZXJdPVwiaGFuZGxlQ29weVRvQ2xpcGJvYXJkXCIgaWNvbj1cImNvbnRlbnRfY29weVwiIGRieEFjdGlvbkJ1dHRvbiB0ZXh0PVwiQ29weSBUbyBDbGlwYm9hcmRcIj48L2RieC1idXR0b24+XG4gICAgICBAaWYgKHNob3dEb3dubG9hZEJ1dHRvbigpKSB7XG4gICAgICAgIDxkYngtYnV0dG9uLXNwYWNlcj48L2RieC1idXR0b24tc3BhY2VyPlxuICAgICAgICA8ZGJ4LWRvd25sb2FkLWJsb2ItYnV0dG9uIFtjb25maWddPVwiZG93bmxvYWRDb25maWdTaWduYWwoKVwiPjwvZGJ4LWRvd25sb2FkLWJsb2ItYnV0dG9uPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,12 +1,13 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { BehaviorSubject, combineLatest, defaultIfEmpty, map, shareReplay, switchMap } from 'rxjs';
3
3
  import { distinctUntilHasDifferentValues } from '@dereekb/rxjs';
4
+ import { completeOnDestroy } from '@dereekb/dbx-core';
4
5
  import * as i0 from "@angular/core";
5
6
  /**
6
7
  * Service that tracks all active help context strings in the current context.
7
8
  */
8
9
  export class DbxHelpContextService {
9
- _contextReferences = new BehaviorSubject(new Set());
10
+ _contextReferences = completeOnDestroy(new BehaviorSubject(new Set()));
10
11
  /**
11
12
  * Observable of all currently active help context strings.
12
13
  */
@@ -22,13 +23,10 @@ export class DbxHelpContextService {
22
23
  referenceSet.delete(reference);
23
24
  this._contextReferences.next(referenceSet);
24
25
  }
25
- ngOnDestroy() {
26
- this._contextReferences.complete();
27
- }
28
26
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxHelpContextService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
27
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxHelpContextService });
30
28
  }
31
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxHelpContextService, decorators: [{
32
30
  type: Injectable
33
31
  }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscC5jb250ZXh0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2hlbHAvaGVscC5jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFjLGFBQWEsRUFBRSxjQUFjLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0csT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVoRTs7R0FFRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUFDZixrQkFBa0IsR0FBRyxJQUFJLGVBQWUsQ0FBK0IsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBRW5HOztPQUVHO0lBQ00sc0JBQXNCLEdBQXVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQ2hHLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQzFCLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzlFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQ3BCLGNBQWMsQ0FBQyxFQUFFLENBQUMsRUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUN2QixDQUNGLEVBQ0QsK0JBQStCLEVBQUUsRUFDakMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFTywyQkFBMkIsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUNyRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDekIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFFRixRQUFRLENBQUMsU0FBa0M7UUFDekMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztRQUNuRCxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxTQUFrQztRQUMzQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO1FBQ25ELFlBQVksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNyQyxDQUFDO3dHQXJDVSxxQkFBcUI7NEdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBkZWZhdWx0SWZFbXB0eSwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhIZWxwQ29udGV4dEtleSwgRGJ4SGVscENvbnRleHRSZWZlcmVuY2UgfSBmcm9tICcuL2hlbHAnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCB0cmFja3MgYWxsIGFjdGl2ZSBoZWxwIGNvbnRleHQgc3RyaW5ncyBpbiB0aGUgY3VycmVudCBjb250ZXh0LlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJ4SGVscENvbnRleHRTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29udGV4dFJlZmVyZW5jZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNldDxEYnhIZWxwQ29udGV4dFJlZmVyZW5jZT4+KG5ldyBTZXQoKSk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgYWxsIGN1cnJlbnRseSBhY3RpdmUgaGVscCBjb250ZXh0IHN0cmluZ3MuXG4gICAqL1xuICByZWFkb25seSBhY3RpdmVIZWxwQ29udGV4dEtleXMkOiBPYnNlcnZhYmxlPFNldDxEYnhIZWxwQ29udGV4dEtleT4+ID0gdGhpcy5fY29udGV4dFJlZmVyZW5jZXMucGlwZShcbiAgICBzd2l0Y2hNYXAoKGFsbFJlZmVyZW5jZXMpID0+XG4gICAgICBjb21iaW5lTGF0ZXN0KEFycmF5LmZyb20oYWxsUmVmZXJlbmNlcykubWFwKChyZWYpID0+IHJlZi5oZWxwQ29udGV4dEtleXMkKSkucGlwZShcbiAgICAgICAgbWFwKCh4KSA9PiB4LmZsYXQoKSksXG4gICAgICAgIGRlZmF1bHRJZkVtcHR5KFtdKSxcbiAgICAgICAgbWFwKCh4KSA9PiBuZXcgU2V0KHgpKVxuICAgICAgKVxuICAgICksXG4gICAgZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcygpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYWN0aXZlSGVscENvbnRleHRLZXlzQXJyYXkkID0gdGhpcy5hY3RpdmVIZWxwQ29udGV4dEtleXMkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiBBcnJheS5mcm9tKHgpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlZ2lzdGVyKHJlZmVyZW5jZTogRGJ4SGVscENvbnRleHRSZWZlcmVuY2UpOiB2b2lkIHtcbiAgICBjb25zdCByZWZlcmVuY2VTZXQgPSB0aGlzLl9jb250ZXh0UmVmZXJlbmNlcy52YWx1ZTtcbiAgICByZWZlcmVuY2VTZXQuYWRkKHJlZmVyZW5jZSk7XG4gICAgdGhpcy5fY29udGV4dFJlZmVyZW5jZXMubmV4dChyZWZlcmVuY2VTZXQpO1xuICB9XG5cbiAgdW5yZWdpc3RlcihyZWZlcmVuY2U6IERieEhlbHBDb250ZXh0UmVmZXJlbmNlKTogdm9pZCB7XG4gICAgY29uc3QgcmVmZXJlbmNlU2V0ID0gdGhpcy5fY29udGV4dFJlZmVyZW5jZXMudmFsdWU7XG4gICAgcmVmZXJlbmNlU2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICAgIHRoaXMuX2NvbnRleHRSZWZlcmVuY2VzLm5leHQocmVmZXJlbmNlU2V0KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbnRleHRSZWZlcmVuY2VzLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscC5jb250ZXh0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2hlbHAvaGVscC5jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLGFBQWEsRUFBRSxjQUFjLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0csT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUV0RDs7R0FFRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUFDZixrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLGVBQWUsQ0FBK0IsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFdEg7O09BRUc7SUFDTSxzQkFBc0IsR0FBdUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FDaEcsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FDMUIsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDOUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsRUFDcEIsY0FBYyxDQUFDLEVBQUUsQ0FBQyxFQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3ZCLENBQ0YsRUFDRCwrQkFBK0IsRUFBRSxFQUNqQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVPLDJCQUEyQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQ3JFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN6QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVGLFFBQVEsQ0FBQyxTQUFrQztRQUN6QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO1FBQ25ELFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsVUFBVSxDQUFDLFNBQWtDO1FBQzNDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7UUFDbkQsWUFBWSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7d0dBakNVLHFCQUFxQjs0R0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBkZWZhdWx0SWZFbXB0eSwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhIZWxwQ29udGV4dEtleSwgRGJ4SGVscENvbnRleHRSZWZlcmVuY2UgfSBmcm9tICcuL2hlbHAnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgY29tcGxldGVPbkRlc3Ryb3kgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IHRyYWNrcyBhbGwgYWN0aXZlIGhlbHAgY29udGV4dCBzdHJpbmdzIGluIHRoZSBjdXJyZW50IGNvbnRleHQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYnhIZWxwQ29udGV4dFNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb250ZXh0UmVmZXJlbmNlcyA9IGNvbXBsZXRlT25EZXN0cm95KG5ldyBCZWhhdmlvclN1YmplY3Q8U2V0PERieEhlbHBDb250ZXh0UmVmZXJlbmNlPj4obmV3IFNldCgpKSk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgb2YgYWxsIGN1cnJlbnRseSBhY3RpdmUgaGVscCBjb250ZXh0IHN0cmluZ3MuXG4gICAqL1xuICByZWFkb25seSBhY3RpdmVIZWxwQ29udGV4dEtleXMkOiBPYnNlcnZhYmxlPFNldDxEYnhIZWxwQ29udGV4dEtleT4+ID0gdGhpcy5fY29udGV4dFJlZmVyZW5jZXMucGlwZShcbiAgICBzd2l0Y2hNYXAoKGFsbFJlZmVyZW5jZXMpID0+XG4gICAgICBjb21iaW5lTGF0ZXN0KEFycmF5LmZyb20oYWxsUmVmZXJlbmNlcykubWFwKChyZWYpID0+IHJlZi5oZWxwQ29udGV4dEtleXMkKSkucGlwZShcbiAgICAgICAgbWFwKCh4KSA9PiB4LmZsYXQoKSksXG4gICAgICAgIGRlZmF1bHRJZkVtcHR5KFtdKSxcbiAgICAgICAgbWFwKCh4KSA9PiBuZXcgU2V0KHgpKVxuICAgICAgKVxuICAgICksXG4gICAgZGlzdGluY3RVbnRpbEhhc0RpZmZlcmVudFZhbHVlcygpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYWN0aXZlSGVscENvbnRleHRLZXlzQXJyYXkkID0gdGhpcy5hY3RpdmVIZWxwQ29udGV4dEtleXMkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiBBcnJheS5mcm9tKHgpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlZ2lzdGVyKHJlZmVyZW5jZTogRGJ4SGVscENvbnRleHRSZWZlcmVuY2UpOiB2b2lkIHtcbiAgICBjb25zdCByZWZlcmVuY2VTZXQgPSB0aGlzLl9jb250ZXh0UmVmZXJlbmNlcy52YWx1ZTtcbiAgICByZWZlcmVuY2VTZXQuYWRkKHJlZmVyZW5jZSk7XG4gICAgdGhpcy5fY29udGV4dFJlZmVyZW5jZXMubmV4dChyZWZlcmVuY2VTZXQpO1xuICB9XG5cbiAgdW5yZWdpc3RlcihyZWZlcmVuY2U6IERieEhlbHBDb250ZXh0UmVmZXJlbmNlKTogdm9pZCB7XG4gICAgY29uc3QgcmVmZXJlbmNlU2V0ID0gdGhpcy5fY29udGV4dFJlZmVyZW5jZXMudmFsdWU7XG4gICAgcmVmZXJlbmNlU2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICAgIHRoaXMuX2NvbnRleHRSZWZlcmVuY2VzLm5leHQocmVmZXJlbmNlU2V0KTtcbiAgfVxufVxuIl19
@@ -1,5 +1,6 @@
1
1
  import { Injectable, InjectionToken, inject } from '@angular/core';
2
2
  import { unixDateTimeSecondsNumberForNow, encodeModelKeyTypePair, ModelRelationUtility } from '@dereekb/util';
3
+ import { completeOnDestroy } from '@dereekb/dbx-core';
3
4
  import { map, mergeMap, catchError, of, Subject, tap } from 'rxjs';
4
5
  import * as i0 from "@angular/core";
5
6
  /**
@@ -13,11 +14,8 @@ export class DbxModelViewTrackerStorage {
13
14
  static OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY = 'dbxModelViewTrackerEvents';
14
15
  static DEFAULT_MAX_EVENTS = 100;
15
16
  storageAccessor = inject(DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN);
16
- _newEvent = new Subject();
17
+ _newEvent = completeOnDestroy(new Subject());
17
18
  newEvent$ = this._newEvent.asObservable();
18
- ngOnDestroy() {
19
- this._newEvent.complete();
20
- }
21
19
  get storageKey() {
22
20
  return DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY;
23
21
  }
@@ -65,4 +63,4 @@ export class DbxModelViewTrackerStorage {
65
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxModelViewTrackerStorage, decorators: [{
66
64
  type: Injectable
67
65
  }] });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFFMUgsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcvRTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDZDQUE2QyxHQUFHLElBQUksY0FBYyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7QUFFdEg7O0dBRUc7QUFFSCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLE1BQU0sQ0FBVSxvQ0FBb0MsR0FBRywyQkFBMkIsQ0FBQztJQUNuRixNQUFNLENBQVUsa0JBQWtCLEdBQUcsR0FBRyxDQUFDO0lBRWhDLGVBQWUsR0FBRyxNQUFNLENBQStDLDZDQUE2QyxDQUFDLENBQUM7SUFFOUcsU0FBUyxHQUFHLElBQUksT0FBTyxFQUE0QixDQUFDO0lBRTVELFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRW5ELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFjLFVBQVU7UUFDdEIsT0FBTywwQkFBMEIsQ0FBQyxvQ0FBb0MsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQTBCLENBQUMsa0JB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MEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1bml4RGF0ZVRpbWVTZWNvbmRzTnVtYmVyRm9yTm93LCBlbmNvZGVNb2RlbEtleVR5cGVQYWlyLCBNb2RlbFJlbGF0aW9uVXRpbGl0eSwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgU3RvcmFnZUFjY2Vzc29yIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgY2F0Y2hFcnJvciwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0LCBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQgfSBmcm9tICcuL21vZGVsLnRyYWNrZXInO1xuXG4vKipcbiAqIFRva2VuIHRoYXQgY29ycmVzcG9uZHMgdG8gYSBTdG9yYWdlQWNjZXNzb3I8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0PiB0aGF0IGlzIHVzZWQgYnkgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCBEQlhfTU9ERUxfVklFV19UUkFDS0VSX1NUT1JBR0VfQUNDRVNTT1JfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ0RieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlQWNjZXNzb3InKTtcblxuLyoqXG4gKiBVc2VkIGZvciBtYW5hZ2luZyBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQgc3RvcmFnZS5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgc3RhdGljIHJlYWRvbmx5IE9CSkVDVF9WSUVXX1RSQUNLRVJfU1RPUkFHRV9MSVNUX0tFWSA9ICdkYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRzJztcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfTUFYX0VWRU5UUyA9IDEwMDtcblxuICByZWFkb25seSBzdG9yYWdlQWNjZXNzb3IgPSBpbmplY3Q8U3RvcmFnZUFjY2Vzc29yPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4+KERCWF9NT0RFTF9WSUVXX1RSQUNLRVJfU1RPUkFHRV9BQ0NFU1NPUl9UT0tFTik7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmV3RXZlbnQgPSBuZXcgU3ViamVjdDxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgbmV3RXZlbnQkID0gdGhpcy5fbmV3RXZlbnQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbmV3RXZlbnQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgc3RvcmFnZUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5PQkpFQ1RfVklFV19UUkFDS0VSX1NUT1JBR0VfTElTVF9LRVk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IG1heEV2ZW50c1RvS2VlcCgpOiBudW1iZXIge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5ERUZBVUxUX01BWF9FVkVOVFM7XG4gIH1cblxuICBhZGRUcmFja2VyRXZlbnQoZXZlbnQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSB0aGlzLmdldFN0b3JhZ2VLZXlGb3JGb2xkZXIoZXZlbnQuZm9sZGVyKTtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RXZlbnRTZXRGb3JTdG9yYWdlS2V5KHN0b3JhZ2VLZXkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoc2V0KSA9PiB7XG4gICAgICAgIGNvbnN0IG5leHRFdmVudDogRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50ID0ge1xuICAgICAgICAgIGQ6IGV2ZW50LmQgPz8gdW5peERhdGVUaW1lU2Vjb25kc051bWJlckZvck5vdygpLFxuICAgICAgICAgIGM6IGV2ZW50LmMsXG4gICAgICAgICAgbTogZXZlbnQubVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGUgPSBNb2RlbFJlbGF0aW9uVXRpbGl0eS5yZW1vdmVEdXBsaWNhdGVzKHNldC5lLCAoeCkgPT4gZW5jb2RlTW9kZWxLZXlUeXBlUGFpcih4Lm0pLCBbZW5jb2RlTW9kZWxLZXlUeXBlUGFpcihuZXh0RXZlbnQubSldKTtcbiAgICAgICAgZS5wdXNoKG5leHRFdmVudCk7XG4gICAgICAgIGUuc29ydCgoYSwgYikgPT4gKGIuZCA/PyAwKSAtIChhLmQgPz8gMCkpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2VBY2Nlc3NvclxuICAgICAgICAgIC5zZXQoc3RvcmFnZUtleSwge1xuICAgICAgICAgICAgbDogTWF0aC5tYXgoc2V0LmwgPz8gMCwgbmV4dEV2ZW50LmQgYXMgbnVtYmVyKSxcbiAgICAgICAgICAgIGU6IGUuc2xpY2UoMCwgdGhpcy5tYXhFdmVudHNUb0tlZXApXG4gICAgICAgICAgfSlcbiAgICAgICAgICAucGlwZSh0YXAoKCkgPT4gdGhpcy5fbmV3RXZlbnQubmV4dChuZXh0RXZlbnQpKSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRBbGxFdmVudHMoZm9sZGVyPzogTWF5YmU8c3RyaW5nPik6IE9ic2VydmFibGU8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRFdmVudFNldChmb2xkZXIpLnBpcGUobWFwKCh4KSA9PiB4LmUpKTtcbiAgfVxuXG4gIGdldEV2ZW50U2V0KGZvbGRlcj86IE1heWJlPHN0cmluZz4pOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4ge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSB0aGlzLmdldFN0b3JhZ2VLZXlGb3JGb2xkZXIoZm9sZGVyKTtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RXZlbnRTZXRGb3JTdG9yYWdlS2V5KHN0b3JhZ2VLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RXZlbnRTZXRGb3JTdG9yYWdlS2V5KHN0b3JhZ2VLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZUFjY2Vzc29yLmdldChzdG9yYWdlS2V5KS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoZSkgPT4ge1xuICAgICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKChyZXN1bHQpID0+IHJlc3VsdCA/PyB7IGU6IFtdLCBsOiAwIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldFN0b3JhZ2VLZXlGb3JGb2xkZXIoZm9sZGVyPzogTWF5YmU8c3RyaW5nPik6IHN0cmluZyB7XG4gICAgY29uc3Qgc3RvcmFnZUtleSA9IGAke3RoaXMuc3RvcmFnZUtleX1fJHtmb2xkZXIgPz8gJ2RlZmF1bHQnfWA7XG4gICAgcmV0dXJuIHN0b3JhZ2VLZXk7XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDMUgsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLG1CQUFtQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0U7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSw2Q0FBNkMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0FBRXRIOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxNQUFNLENBQVUsb0NBQW9DLEdBQUcsMkJBQTJCLENBQUM7SUFDbkYsTUFBTSxDQUFVLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztJQUVoQyxlQUFlLEdBQUcsTUFBTSxDQUErQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBRTlHLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLE9BQU8sRUFBNEIsQ0FBQyxDQUFDO0lBRS9FLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRW5ELElBQWMsVUFBVTtRQUN0QixPQUFPLDBCQUEwQixDQUFDLG9DQUFvQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBMEIsQ0FBQyxr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QiwwQkFBMEI7a0JBRHRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1bml4RGF0ZVRpbWVTZWNvbmRzTnVtYmVyRm9yTm93LCBlbmNvZGVNb2RlbEtleVR5cGVQYWlyLCBNb2RlbFJlbGF0aW9uVXRpbGl0eSwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgY29tcGxldGVPbkRlc3Ryb3ksIFN0b3JhZ2VBY2Nlc3NvciB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IG1hcCwgbWVyZ2VNYXAsIGNhdGNoRXJyb3IsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldCwgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50IH0gZnJvbSAnLi9tb2RlbC50cmFja2VyJztcblxuLyoqXG4gKiBUb2tlbiB0aGF0IGNvcnJlc3BvbmRzIHRvIGEgU3RvcmFnZUFjY2Vzc29yPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4gdGhhdCBpcyB1c2VkIGJ5IERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlLlxuICovXG5leHBvcnQgY29uc3QgREJYX01PREVMX1ZJRVdfVFJBQ0tFUl9TVE9SQUdFX0FDQ0VTU09SX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuKCdEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZUFjY2Vzc29yJyk7XG5cbi8qKlxuICogVXNlZCBmb3IgbWFuYWdpbmcgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50IHN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZSB7XG4gIHN0YXRpYyByZWFkb25seSBPQkpFQ1RfVklFV19UUkFDS0VSX1NUT1JBR0VfTElTVF9LRVkgPSAnZGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50cyc7XG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX01BWF9FVkVOVFMgPSAxMDA7XG5cbiAgcmVhZG9ubHkgc3RvcmFnZUFjY2Vzc29yID0gaW5qZWN0PFN0b3JhZ2VBY2Nlc3NvcjxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+PihEQlhfTU9ERUxfVklFV19UUkFDS0VSX1NUT1JBR0VfQUNDRVNTT1JfVE9LRU4pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25ld0V2ZW50ID0gY29tcGxldGVPbkRlc3Ryb3kobmV3IFN1YmplY3Q8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50PigpKTtcblxuICByZWFkb25seSBuZXdFdmVudCQgPSB0aGlzLl9uZXdFdmVudC5hc09ic2VydmFibGUoKTtcblxuICBwcm90ZWN0ZWQgZ2V0IHN0b3JhZ2VLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UuT0JKRUNUX1ZJRVdfVFJBQ0tFUl9TVE9SQUdFX0xJU1RfS0VZO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBtYXhFdmVudHNUb0tlZXAoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UuREVGQVVMVF9NQVhfRVZFTlRTO1xuICB9XG5cbiAgYWRkVHJhY2tlckV2ZW50KGV2ZW50OiBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gdGhpcy5nZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGV2ZW50LmZvbGRlcik7XG4gICAgcmV0dXJuIHRoaXMuX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5KS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHNldCkgPT4ge1xuICAgICAgICBjb25zdCBuZXh0RXZlbnQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCA9IHtcbiAgICAgICAgICBkOiBldmVudC5kID8/IHVuaXhEYXRlVGltZVNlY29uZHNOdW1iZXJGb3JOb3coKSxcbiAgICAgICAgICBjOiBldmVudC5jLFxuICAgICAgICAgIG06IGV2ZW50Lm1cbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBlID0gTW9kZWxSZWxhdGlvblV0aWxpdHkucmVtb3ZlRHVwbGljYXRlcyhzZXQuZSwgKHgpID0+IGVuY29kZU1vZGVsS2V5VHlwZVBhaXIoeC5tKSwgW2VuY29kZU1vZGVsS2V5VHlwZVBhaXIobmV4dEV2ZW50Lm0pXSk7XG4gICAgICAgIGUucHVzaChuZXh0RXZlbnQpO1xuICAgICAgICBlLnNvcnQoKGEsIGIpID0+IChiLmQgPz8gMCkgLSAoYS5kID8/IDApKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlQWNjZXNzb3JcbiAgICAgICAgICAuc2V0KHN0b3JhZ2VLZXksIHtcbiAgICAgICAgICAgIGw6IE1hdGgubWF4KHNldC5sID8/IDAsIG5leHRFdmVudC5kIGFzIG51bWJlciksXG4gICAgICAgICAgICBlOiBlLnNsaWNlKDAsIHRoaXMubWF4RXZlbnRzVG9LZWVwKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMuX25ld0V2ZW50Lm5leHQobmV4dEV2ZW50KSkpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QWxsRXZlbnRzKGZvbGRlcj86IE1heWJlPHN0cmluZz4pOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RXZlbnRTZXQoZm9sZGVyKS5waXBlKG1hcCgoeCkgPT4geC5lKSk7XG4gIH1cblxuICBnZXRFdmVudFNldChmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+IHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gdGhpcy5nZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGZvbGRlcik7XG4gICAgcmV0dXJuIHRoaXMuX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VBY2Nlc3Nvci5nZXQoc3RvcmFnZUtleSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgocmVzdWx0KSA9PiByZXN1bHQgPz8geyBlOiBbXSwgbDogMCB9KVxuICAgICk7XG4gIH1cblxuICBnZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGZvbGRlcj86IE1heWJlPHN0cmluZz4pOiBzdHJpbmcge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSBgJHt0aGlzLnN0b3JhZ2VLZXl9XyR7Zm9sZGVyID8/ICdkZWZhdWx0J31gO1xuICAgIHJldHVybiBzdG9yYWdlS2V5O1xuICB9XG59XG4iXX0=
@@ -1,11 +1,11 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input, signal } from '@angular/core';
2
- import { DbxInjectionComponent } from '@dereekb/dbx-core';
2
+ import { cleanLoadingContext, DbxInjectionComponent } from '@dereekb/dbx-core';
3
3
  import { JsonPipe, NgTemplateOutlet } from '@angular/common';
4
4
  import { ZipReader, BlobReader } from '@zip.js/zip.js';
5
5
  import { toObservable, toSignal } from '@angular/core/rxjs-interop';
6
6
  import { DbxLoadingComponent } from '../../loading';
7
7
  import { distinctUntilChanged, map, of, shareReplay, switchMap } from 'rxjs';
8
- import { loadingStateContext, loadingStateFromObs, valueFromFinishedLoadingState } from '@dereekb/rxjs';
8
+ import { loadingStateFromObs, valueFromFinishedLoadingState } from '@dereekb/rxjs';
9
9
  import { dbxZipBlobPreviewEntryTreeFromEntries } from './zip.blob';
10
10
  import { DbxZipPreviewEntryListComponent } from './zip.blob.preview.list.component';
11
11
  import { DbxBarHeaderComponent, DbxListEmptyContentComponent, DbxListTitleGroupDirective, DbxSpacerDirective, DbxValueListItemModifierDirective } from '../../layout';
@@ -128,10 +128,7 @@ export class DbxZipBlobPreviewComponent {
128
128
  selectedFileEntry$ = toObservable(this.selectedFileNodeSignal);
129
129
  selectedFileEntryBlob$ = this.selectedFileEntry$.pipe(switchMap((x) => (x && x.value.getBlob ? x.value.getBlob() : of(undefined))), shareReplay(1));
130
130
  selectedFileEntryBlobSignal = toSignal(this.selectedFileEntryBlob$);
131
- context = loadingStateContext({ obs: this.allEntriesLoadingState$ });
132
- ngOnDestroy() {
133
- this.context.destroy();
134
- }
131
+ context = cleanLoadingContext({ obs: this.allEntriesLoadingState$ });
135
132
  makeEntryAnchor = (itemValue) => {
136
133
  return {
137
134
  onClick: () => {
@@ -153,4 +150,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
153
150
  type: Component,
154
151
  args: [{ selector: 'dbx-zip-blob-preview', standalone: true, imports: [MatToolbarModule, DbxButtonSpacerDirective, DbxIconButtonComponent, DbxBarHeaderComponent, DbxListTitleGroupDirective, DbxInjectionComponent, DbxZipPreviewEntryListComponent, DbxEmbedComponent, DbxLoadingComponent, JsonPipe, NgTemplateOutlet, DbxValueListItemModifierDirective, DbxListItemAnchorModifierDirective, DbxListTitleGroupDirective, DbxListEmptyContentComponent, DbxDownloadBlobButtonComponent, DbxSpacerDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<dbx-loading [context]=\"context\">\n <div class=\"dbx-flex-bar dbx-zip-blob-preview-toolbar\">\n <dbx-icon-button [disabled]=\"!selectedNodeSignal()\" icon=\"arrow_upward\" text=\"Back\" (click)=\"backClicked()\"></dbx-icon-button>\n <dbx-button-spacer></dbx-button-spacer>\n <dbx-icon-button [disabled]=\"!selectedNodeSignal()\" icon=\"home\" text=\"Home\" (click)=\"homeClicked()\"></dbx-icon-button>\n <dbx-spacer></dbx-spacer>\n @if (downloadZipFileBlobButtonConfigSignal()) {\n <dbx-download-blob-button [config]=\"downloadZipFileBlobButtonConfigSignal()\"></dbx-download-blob-button>\n }\n </div>\n <dbx-bar-header class=\"dbx-zip-blob-preview-header\" [icon]=\"selectedNodeIconSignal()\" [text]=\"selectedNodePathSignal()\"></dbx-bar-header>\n <div class=\"dbx-zip-blob-preview-content\">\n @switch (mode()) {\n @case ('view_directory') {\n <dbx-zip-preview-file-entry-list [state$]=\"listEntriesState$\" [dbxListTitleGroup]=\"listTitleGroupDelegate\" [dbxListItemModifier] [dbxListItemAnchorModifier]=\"makeEntryAnchor\"></dbx-zip-preview-file-entry-list>\n }\n @case ('view_entry') {\n <dbx-embed class=\"dbx-zip-blob-preview-content-embed\" [blob]=\"selectedFileEntryBlobSignal()\"></dbx-embed>\n }\n }\n </div>\n</dbx-loading>\n" }]
155
152
  }] });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlwLmJsb2IucHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL3ppcC96aXAuYmxvYi5wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vemlwL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RixPQUFPLEVBQWdCLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxxQ0FBcUMsRUFBa0MsTUFBTSxZQUFZLENBQUM7QUFDbkcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLDRCQUE0QixFQUF5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dUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBTaWduYWwsIHNpZ25hbCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnQgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgWmlwUmVhZGVyLCBCbG9iUmVhZGVyLCBFbnRyeSwgRmlsZUVudHJ5IH0gZnJvbSAnQHppcC5qcy96aXAuanMnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IERieExvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9sb2FkaW5nJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIE9ic2VydmFibGUsIG9mLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2FkaW5nU3RhdGUsIGxvYWRpbmdTdGF0ZUNvbnRleHQsIGxvYWRpbmdTdGF0ZUZyb21PYnMsIHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBkYnhaaXBCbG9iUHJldmlld0VudHJ5VHJlZUZyb21FbnRyaWVzLCBEYnhaaXBCbG9iUHJldmlld0VudHJ5VHJlZU5vZGUgfSBmcm9tICcuL3ppcC5ibG9iJztcbmltcG9ydCB7IERieFppcFByZXZpZXdFbnRyeUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3ppcC5ibG9iLnByZXZpZXcubGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4QmFySGVhZGVyQ29tcG9uZW50LCBEYnhMaXN0RW1wdHlDb250ZW50Q29tcG9uZW50LCBEYnhMaXN0VGl0bGVHcm91cERhdGEsIERieExpc3RUaXRsZUdyb3VwRGlyZWN0aXZlLCBEYnhMaXN0VGl0bGVHcm91cFRpdGxlRGVsZWdhdGUsIERieFNwYWNlckRpcmVjdGl2ZSwgRGJ4VmFsdWVMaXN0SXRlbU1vZGlmaWVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vbGF5b3V0JztcbmltcG9ydCB7IEFuY2hvckZvclZhbHVlRnVuY3Rpb24sIERieExpc3RJdGVtQW5jaG9yTW9kaWZpZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9yb3V0ZXInO1xuaW1wb3J0IHsgRGJ4RW1iZWRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbic7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmUsIERieEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9idXR0b24nO1xuaW1wb3J0IHsgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhEb3dubG9hZEJsb2JCdXR0b25Db25maWcgfSBmcm9tICcuLi9kb3dubG9hZC9ibG9iL2Rvd25sb2FkLmJsb2IuYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIERieFppcEJsb2JQcmV2aWV3TW9kZSA9ICd2aWV3X2RpcmVjdG9yeScgfCAndmlld19lbnRyeSc7XG5cbmV4cG9ydCB0eXBlIERieFppcEJsb2JQcmV2aWV3R3JvdXBWYWx1ZSA9ICdkaXJlY3RvcnknIHwgJ2ZpbGUnO1xuZXhwb3J0IHR5cGUgRGJ4WmlwQmxvYlByZXZpZXdHcm91cERhdGEgPSBEYnhMaXN0VGl0bGVHcm91cERhdGE8RGJ4WmlwQmxvYlByZXZpZXdHcm91cFZhbHVlPiAmIHsgc29ydDogbnVtYmVyIH07XG5cbi8qKlxuICogVXNlZCB0byBkaXNwbGF5IGEgemlwIHByZXZpZXcgYmFzZWQgb24gdGhlIGlucHV0IGJsb2IuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC16aXAtYmxvYi1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWF0VG9vbGJhck1vZHVsZSwgRGJ4QnV0dG9uU3BhY2VyRGlyZWN0aXZlLCBEYnhJY29uQnV0dG9uQ29tcG9uZW50LCBEYnhCYXJIZWFkZXJDb21wb25lbnQsIERieExpc3RUaXRsZUdyb3VwRGlyZWN0aXZlLCBEYnhJbmplY3Rpb25Db21wb25lbnQsIERieFppcFByZXZpZXdFbnRyeUxpc3RDb21wb25lbnQsIERieEVtYmVkQ29tcG9uZW50LCBEYnhMb2FkaW5nQ29tcG9uZW50LCBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgRGJ4VmFsdWVMaXN0SXRlbU1vZGlmaWVyRGlyZWN0aXZlLCBEYnhMaXN0SXRlbUFuY2hvck1vZGlmaWVyRGlyZWN0aXZlLCBEYnhMaXN0VGl0bGVHcm91cERpcmVjdGl2ZSwgRGJ4TGlzdEVtcHR5Q29udGVudENvbXBvbmVudCwgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhTcGFjZXJEaXJlY3RpdmVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhaaXBCbG9iUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGJsb2IgPSBpbnB1dDxNYXliZTxCbG9iPj4oKTtcblxuICAvKipcbiAgICogVGhlIGRvd25sb2FkIGZpbGUgbmFtZSBmb3IgdGhlIHppcCBmaWxlLlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgdGhlbiB0aGUgZmlsZSBjYW5ub3QgYmUgZG93bmxvYWRlZCBkaXJlY3RseS5cbiAgICovXG4gIHJlYWRvbmx5IGRvd25sb2FkRmlsZU5hbWUgPSBpbnB1dDxNYXliZTxzdHJpbmc+PigpO1xuXG4gIHJlYWRvbmx5IGhhc0Jsb2IgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMuYmxvYigpKTtcblxuICByZWFkb25seSB6aXBSZWFkZXIgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYmxvYiA9IHRoaXMuYmxvYigpO1xuICAgIHJldHVybiBibG9iID8gbmV3IFppcFJlYWRlcihuZXcgQmxvYlJlYWRlcihibG9iKSkgOiB1bmRlZmluZWQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGRvd25sb2FkWmlwRmlsZUJsb2JCdXR0b25Db25maWdTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYmxvYiA9IHRoaXMuYmxvYigpO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5kb3dubG9hZEZpbGVOYW1lKCk7XG5cbiAgICBsZXQgcmVzdWx0OiBNYXliZTxEYnhEb3dubG9hZEJsb2JCdXR0b25Db25maWc+ID0gdW5kZWZpbmVkO1xuXG4gICAgaWYgKGJsb2IgJiYgZmlsZU5hbWUpIHtcbiAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgYmxvYixcbiAgICAgICAgZmlsZU5hbWU6IGZpbGVOYW1lID8/ICdkb3dubG9hZC56aXAnLFxuICAgICAgICBidXR0b25EaXNwbGF5OiB7XG4gICAgICAgICAgaWNvbjogJ2Rvd25sb2FkX2Zvcl9vZmZsaW5lJyxcbiAgICAgICAgICB0ZXh0OiAnRG93bmxvYWQgWmlwJ1xuICAgICAgICB9LFxuICAgICAgICBidXR0b25TdHlsZToge1xuICAgICAgICAgIHR5cGU6ICdzdHJva2VkJ1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHppcFJlYWRlciQgPSB0b09ic2VydmFibGUodGhpcy56aXBSZWFkZXIpO1xuXG4gIHJlYWRvbmx5IGFsbEVudHJpZXNMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxFbnRyeVtdPj4gPSBsb2FkaW5nU3RhdGVGcm9tT2JzKHRoaXMuemlwUmVhZGVyJC5waXBlKHN3aXRjaE1hcCgoeCkgPT4gKHggPyB4LmdldEVudHJpZXMoKSA6IG9mKFtdKSkpKSk7XG4gIHJlYWRvbmx5IGFsbEVudHJpZXMkID0gdGhpcy5hbGxFbnRyaWVzTG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgYWxsRW50cmllc1Jvb3QkID0gdGhpcy5hbGxFbnRyaWVzJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gZGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVGcm9tRW50cmllcyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBhbGxFbnRyaWVzUm9vdFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMuYWxsRW50cmllc1Jvb3QkKTtcblxuICByZWFkb25seSBzZWxlY3RlZE5vZGVTaWduYWwgPSBzaWduYWw8TWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPj4odW5kZWZpbmVkKTtcblxuICByZWFkb25seSBsaXN0VGl0bGVHcm91cERlbGVnYXRlOiBEYnhMaXN0VGl0bGVHcm91cFRpdGxlRGVsZWdhdGU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlLCBEYnhaaXBCbG9iUHJldmlld0dyb3VwVmFsdWUsIERieFppcEJsb2JQcmV2aWV3R3JvdXBEYXRhPiA9IHtcbiAgICBncm91cFZhbHVlRm9ySXRlbTogKGl0ZW0pID0+IHtcbiAgICAgIGNvbnN0IGdyb3VwOiBEYnhaaXBCbG9iUHJldmlld0dyb3VwVmFsdWUgPSBpdGVtLml0ZW1WYWx1ZS52YWx1ZS52YWx1ZS5kaXJlY3RvcnkgPyAnZGlyZWN0b3J5JyA6ICdmaWxlJztcbiAgICAgIHJldHVybiBncm91cDtcbiAgICB9LFxuICAgIGRhdGFGb3JHcm91cFZhbHVlOiAodmFsdWU6IERieFppcEJsb2JQcmV2aWV3R3JvdXBWYWx1ZSwgaXRlbXMpID0+IHtcbiAgICAgIGNvbnN0IGRhdGE6IERieFppcEJsb2JQcmV2aWV3R3JvdXBEYXRhID0ge1xuICAgICAgICB0aXRsZTogKHZhbHVlID09PSAnZGlyZWN0b3J5JyA/ICdEaXJlY3RvcmllcycgOiAnRmlsZXMnKSArIGAgKCR7aXRlbXMubGVuZ3RofSlgLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgc29ydDogdmFsdWUgPT09ICdkaXJlY3RvcnknID8gMCA6IDEsXG4gICAgICAgIGNzc0NsYXNzZXM6IFsnZGJ4LXppcC1ibG9iLXByZXZpZXctbGlzdC1ncm91cCddXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9LFxuICAgIHNvcnRHcm91cHNCeURhdGE6IChhLCBiKSA9PiB7XG4gICAgICByZXR1cm4gYS5zb3J0IC0gYi5zb3J0O1xuICAgIH1cbiAgfTtcblxuICByZWFkb25seSBtb2RlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsKCk7XG5cbiAgICBsZXQgbW9kZSA9ICd2aWV3X2RpcmVjdG9yeSc7XG5cbiAgICBpZiAoc2VsZWN0ZWROb2RlICYmICFzZWxlY3RlZE5vZGUudmFsdWUudmFsdWUuZGlyZWN0b3J5KSB7XG4gICAgICBtb2RlID0gJ3ZpZXdfZW50cnknO1xuICAgIH1cblxuICAgIHJldHVybiBtb2RlO1xuICB9KTtcblxuICByZWFkb25seSBsaXN0RW50cmllcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBhbGxFbnRyaWVzID0gdGhpcy5hbGxFbnRyaWVzUm9vdFNpZ25hbCgpO1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsKCk7XG5cbiAgICBsZXQgZW50cmllczogTWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlW10+O1xuXG4gICAgaWYgKHNlbGVjdGVkTm9kZSkge1xuICAgICAgaWYgKHNlbGVjdGVkTm9kZS52YWx1ZS52YWx1ZS5kaXJlY3RvcnkpIHtcbiAgICAgICAgZW50cmllcyA9IHNlbGVjdGVkTm9kZS5jaGlsZHJlbjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVudHJpZXMgPSBzZWxlY3RlZE5vZGUucGFyZW50Py5jaGlsZHJlbjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZW50cmllcyA9IGFsbEVudHJpZXM/LmNoaWxkcmVuO1xuICAgIH1cblxuICAgIHJldHVybiBlbnRyaWVzID8/IFtdO1xuICB9KTtcblxuICByZWFkb25seSBsaXN0RW50cmllcyQgPSB0b09ic2VydmFibGUodGhpcy5saXN0RW50cmllcyk7XG4gIHJlYWRvbmx5IGxpc3RFbnRyaWVzU3RhdGUkID0gbG9hZGluZ1N0YXRlRnJvbU9icyh0aGlzLmxpc3RFbnRyaWVzJCk7XG5cbiAgcmVhZG9ubHkgc2VsZWN0ZWROb2RlSWNvblNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbCgpO1xuXG4gICAgbGV0IGljb246IHN0cmluZztcblxuICAgIGlmIChzZWxlY3RlZE5vZGUpIHtcbiAgICAgIGlmIChzZWxlY3RlZE5vZGUudmFsdWUudmFsdWUuZGlyZWN0b3J5KSB7XG4gICAgICAgIGljb24gPSAnZm9sZGVyJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGljb24gPSAnbm90ZSc7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGljb24gPSAnaG9tZSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb247XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkTm9kZVBhdGhTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWROb2RlID0gdGhpcy5zZWxlY3RlZE5vZGVTaWduYWwoKTtcbiAgICByZXR1cm4gWydIb21lJywgLi4uKHNlbGVjdGVkTm9kZT8udmFsdWUuc2xhc2hQYXRoRGV0YWlscy5wYXJ0cyA/PyBbXSldLmpvaW4oJyA+ICcpO1xuICB9KTtcblxuICByZWFkb25seSBzZWxlY3RlZEZpbGVOb2RlU2lnbmFsOiBTaWduYWw8TWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPEZpbGVFbnRyeT4+PiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbCgpO1xuICAgIHJldHVybiBzZWxlY3RlZE5vZGU/LnZhbHVlLnZhbHVlLmRpcmVjdG9yeSA/IHVuZGVmaW5lZCA6IChzZWxlY3RlZE5vZGUgYXMgRGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPEZpbGVFbnRyeT4pO1xuICB9KTtcblxuICByZWFkb25seSBzZWxlY3RlZEZpbGVFbnRyeSQgPSB0b09ic2VydmFibGUodGhpcy5zZWxlY3RlZEZpbGVOb2RlU2lnbmFsKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRGaWxlRW50cnlCbG9iJDogT2JzZXJ2YWJsZTxNYXliZTxCbG9iPj4gPSB0aGlzLnNlbGVjdGVkRmlsZUVudHJ5JC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gKHggJiYgeC52YWx1ZS5nZXRCbG9iID8geC52YWx1ZS5nZXRCbG9iKCkgOiBvZih1bmRlZmluZWQpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRGaWxlRW50cnlCbG9iU2lnbmFsOiBTaWduYWw8TWF5YmU8QmxvYj4+ID0gdG9TaWduYWwodGhpcy5zZWxlY3RlZEZpbGVFbnRyeUJsb2IkKTtcblxuICByZWFkb25seSBjb250ZXh0ID0gbG9hZGluZ1N0YXRlQ29udGV4dCh7IG9iczogdGhpcy5hbGxFbnRyaWVzTG9hZGluZ1N0YXRlJCB9KTtcblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuZGVzdHJveSgpO1xuICB9XG5cbiAgcmVhZG9ubHkgbWFrZUVudHJ5QW5jaG9yOiBBbmNob3JGb3JWYWx1ZUZ1bmN0aW9uPERieFppcEJsb2JQcmV2aWV3RW50cnlUcmVlTm9kZT4gPSAoaXRlbVZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9uQ2xpY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVTaWduYWwuc2V0KGl0ZW1WYWx1ZSk7XG4gICAgICB9XG4gICAgfTtcbiAgfTtcblxuICByZWFkb25seSBob21lQ2xpY2tlZCA9ICgpID0+IHtcbiAgICB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbC5zZXQodW5kZWZpbmVkKTtcbiAgfTtcblxuICByZWFkb25seSBiYWNrQ2xpY2tlZCA9ICgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbCgpO1xuICAgIHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsLnNldChzZWxlY3RlZE5vZGU/LnBhcmVudCk7XG4gIH07XG59XG4iLCI8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiPlxuICA8ZGl2IGNsYXNzPVwiZGJ4LWZsZXgtYmFyIGRieC16aXAtYmxvYi1wcmV2aWV3LXRvb2xiYXJcIj5cbiAgICA8ZGJ4LWljb24tYnV0dG9uIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWROb2RlU2lnbmFsKClcIiBpY29uPVwiYXJyb3dfdXB3YXJkXCIgdGV4dD1cIkJhY2tcIiAoY2xpY2spPVwiYmFja0NsaWNrZWQoKVwiPjwvZGJ4LWljb24tYnV0dG9uPlxuICAgIDxkYngtYnV0dG9uLXNwYWNlcj48L2RieC1idXR0b24tc3BhY2VyPlxuICAgIDxkYngtaWNvbi1idXR0b24gW2Rpc2FibGVkXT1cIiFzZWxlY3RlZE5vZGVTaWduYWwoKVwiIGljb249XCJob21lXCIgdGV4dD1cIkhvbWVcIiAoY2xpY2spPVwiaG9tZUNsaWNrZWQoKVwiPjwvZGJ4LWljb24tYnV0dG9uPlxuICAgIDxkYngtc3BhY2VyPjwvZGJ4LXNwYWNlcj5cbiAgICBAaWYgKGRvd25sb2FkWmlwRmlsZUJsb2JCdXR0b25Db25maWdTaWduYWwoKSkge1xuICAgICAgPGRieC1kb3dubG9hZC1ibG9iLWJ1dHRvbiBbY29uZmlnXT1cImRvd25sb2FkWmlwRmlsZUJsb2JCdXR0b25Db25maWdTaWduYWwoKVwiPjwvZGJ4LWRvd25sb2FkLWJsb2ItYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+XG4gIDxkYngtYmFyLWhlYWRlciBjbGFzcz1cImRieC16aXAtYmxvYi1wcmV2aWV3LWhlYWRlclwiIFtpY29uXT1cInNlbGVjdGVkTm9kZUljb25TaWduYWwoKVwiIFt0ZXh0XT1cInNlbGVjdGVkTm9kZVBhdGhTaWduYWwoKVwiPjwvZGJ4LWJhci1oZWFkZXI+XG4gIDxkaXYgY2xhc3M9XCJkYngtemlwLWJsb2ItcHJldmlldy1jb250ZW50XCI+XG4gICAgQHN3aXRjaCAobW9kZSgpKSB7XG4gICAgICBAY2FzZSAoJ3ZpZXdfZGlyZWN0b3J5Jykge1xuICAgICAgICA8ZGJ4LXppcC1wcmV2aWV3LWZpbGUtZW50cnktbGlzdCBbc3RhdGUkXT1cImxpc3RFbnRyaWVzU3RhdGUkXCIgW2RieExpc3RUaXRsZUdyb3VwXT1cImxpc3RUaXRsZUdyb3VwRGVsZWdhdGVcIiBbZGJ4TGlzdEl0ZW1Nb2RpZmllcl0gW2RieExpc3RJdGVtQW5jaG9yTW9kaWZpZXJdPVwibWFrZUVudHJ5QW5jaG9yXCI+PC9kYngtemlwLXByZXZpZXctZmlsZS1lbnRyeS1saXN0PlxuICAgICAgfVxuICAgICAgQGNhc2UgKCd2aWV3X2VudHJ5Jykge1xuICAgICAgICA8ZGJ4LWVtYmVkIGNsYXNzPVwiZGJ4LXppcC1ibG9iLXByZXZpZXctY29udGVudC1lbWJlZFwiIFtibG9iXT1cInNlbGVjdGVkRmlsZUVudHJ5QmxvYlNpZ25hbCgpXCI+PC9kYngtZW1iZWQ+XG4gICAgICB9XG4gICAgfVxuICA8L2Rpdj5cbjwvZGJ4LWxvYWRpbmc+XG4iXX0=
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlwLmJsb2IucHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL3ppcC96aXAuYmxvYi5wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vemlwL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RixPQUFPLEVBQWdCLG1CQUFtQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQ0FBcUMsRUFBa0MsTUFBTSxZQUFZLENBQUM7QUFDbkcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLDRCQUE0QixFQUF5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dGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIFNpZ25hbCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbGVhbkxvYWRpbmdDb250ZXh0LCBEYnhJbmplY3Rpb25Db21wb25lbnQgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgWmlwUmVhZGVyLCBCbG9iUmVhZGVyLCBFbnRyeSwgRmlsZUVudHJ5IH0gZnJvbSAnQHppcC5qcy96aXAuanMnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IERieExvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9sb2FkaW5nJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIE9ic2VydmFibGUsIG9mLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2FkaW5nU3RhdGUsIGxvYWRpbmdTdGF0ZUZyb21PYnMsIHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBkYnhaaXBCbG9iUHJldmlld0VudHJ5VHJlZUZyb21FbnRyaWVzLCBEYnhaaXBCbG9iUHJldmlld0VudHJ5VHJlZU5vZGUgfSBmcm9tICcuL3ppcC5ibG9iJztcbmltcG9ydCB7IERieFppcFByZXZpZXdFbnRyeUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3ppcC5ibG9iLnByZXZpZXcubGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4QmFySGVhZGVyQ29tcG9uZW50LCBEYnhMaXN0RW1wdHlDb250ZW50Q29tcG9uZW50LCBEYnhMaXN0VGl0bGVHcm91cERhdGEsIERieExpc3RUaXRsZUdyb3VwRGlyZWN0aXZlLCBEYnhMaXN0VGl0bGVHcm91cFRpdGxlRGVsZWdhdGUsIERieFNwYWNlckRpcmVjdGl2ZSwgRGJ4VmFsdWVMaXN0SXRlbU1vZGlmaWVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vbGF5b3V0JztcbmltcG9ydCB7IEFuY2hvckZvclZhbHVlRnVuY3Rpb24sIERieExpc3RJdGVtQW5jaG9yTW9kaWZpZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9yb3V0ZXInO1xuaW1wb3J0IHsgRGJ4RW1iZWRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbic7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBEYnhCdXR0b25TcGFjZXJEaXJlY3RpdmUsIERieEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9idXR0b24nO1xuaW1wb3J0IHsgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhEb3dubG9hZEJsb2JCdXR0b25Db25maWcgfSBmcm9tICcuLi9kb3dubG9hZC9ibG9iL2Rvd25sb2FkLmJsb2IuYnV0dG9uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIERieFppcEJsb2JQcmV2aWV3TW9kZSA9ICd2aWV3X2RpcmVjdG9yeScgfCAndmlld19lbnRyeSc7XG5cbmV4cG9ydCB0eXBlIERieFppcEJsb2JQcmV2aWV3R3JvdXBWYWx1ZSA9ICdkaXJlY3RvcnknIHwgJ2ZpbGUnO1xuZXhwb3J0IHR5cGUgRGJ4WmlwQmxvYlByZXZpZXdHcm91cERhdGEgPSBEYnhMaXN0VGl0bGVHcm91cERhdGE8RGJ4WmlwQmxvYlByZXZpZXdHcm91cFZhbHVlPiAmIHsgc29ydDogbnVtYmVyIH07XG5cbi8qKlxuICogVXNlZCB0byBkaXNwbGF5IGEgemlwIHByZXZpZXcgYmFzZWQgb24gdGhlIGlucHV0IGJsb2IuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC16aXAtYmxvYi1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTWF0VG9vbGJhck1vZHVsZSwgRGJ4QnV0dG9uU3BhY2VyRGlyZWN0aXZlLCBEYnhJY29uQnV0dG9uQ29tcG9uZW50LCBEYnhCYXJIZWFkZXJDb21wb25lbnQsIERieExpc3RUaXRsZUdyb3VwRGlyZWN0aXZlLCBEYnhJbmplY3Rpb25Db21wb25lbnQsIERieFppcFByZXZpZXdFbnRyeUxpc3RDb21wb25lbnQsIERieEVtYmVkQ29tcG9uZW50LCBEYnhMb2FkaW5nQ29tcG9uZW50LCBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCwgRGJ4VmFsdWVMaXN0SXRlbU1vZGlmaWVyRGlyZWN0aXZlLCBEYnhMaXN0SXRlbUFuY2hvck1vZGlmaWVyRGlyZWN0aXZlLCBEYnhMaXN0VGl0bGVHcm91cERpcmVjdGl2ZSwgRGJ4TGlzdEVtcHR5Q29udGVudENvbXBvbmVudCwgRGJ4RG93bmxvYWRCbG9iQnV0dG9uQ29tcG9uZW50LCBEYnhTcGFjZXJEaXJlY3RpdmVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhaaXBCbG9iUHJldmlld0NvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGJsb2IgPSBpbnB1dDxNYXliZTxCbG9iPj4oKTtcblxuICAvKipcbiAgICogVGhlIGRvd25sb2FkIGZpbGUgbmFtZSBmb3IgdGhlIHppcCBmaWxlLlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgdGhlbiB0aGUgZmlsZSBjYW5ub3QgYmUgZG93bmxvYWRlZCBkaXJlY3RseS5cbiAgICovXG4gIHJlYWRvbmx5IGRvd25sb2FkRmlsZU5hbWUgPSBpbnB1dDxNYXliZTxzdHJpbmc+PigpO1xuXG4gIHJlYWRvbmx5IGhhc0Jsb2IgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMuYmxvYigpKTtcblxuICByZWFkb25seSB6aXBSZWFkZXIgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYmxvYiA9IHRoaXMuYmxvYigpO1xuICAgIHJldHVybiBibG9iID8gbmV3IFppcFJlYWRlcihuZXcgQmxvYlJlYWRlcihibG9iKSkgOiB1bmRlZmluZWQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGRvd25sb2FkWmlwRmlsZUJsb2JCdXR0b25Db25maWdTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYmxvYiA9IHRoaXMuYmxvYigpO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5kb3dubG9hZEZpbGVOYW1lKCk7XG5cbiAgICBsZXQgcmVzdWx0OiBNYXliZTxEYnhEb3dubG9hZEJsb2JCdXR0b25Db25maWc+ID0gdW5kZWZpbmVkO1xuXG4gICAgaWYgKGJsb2IgJiYgZmlsZU5hbWUpIHtcbiAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgYmxvYixcbiAgICAgICAgZmlsZU5hbWU6IGZpbGVOYW1lID8/ICdkb3dubG9hZC56aXAnLFxuICAgICAgICBidXR0b25EaXNwbGF5OiB7XG4gICAgICAgICAgaWNvbjogJ2Rvd25sb2FkX2Zvcl9vZmZsaW5lJyxcbiAgICAgICAgICB0ZXh0OiAnRG93bmxvYWQgWmlwJ1xuICAgICAgICB9LFxuICAgICAgICBidXR0b25TdHlsZToge1xuICAgICAgICAgIHR5cGU6ICdzdHJva2VkJ1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHppcFJlYWRlciQgPSB0b09ic2VydmFibGUodGhpcy56aXBSZWFkZXIpO1xuXG4gIHJlYWRvbmx5IGFsbEVudHJpZXNMb2FkaW5nU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRpbmdTdGF0ZTxFbnRyeVtdPj4gPSBsb2FkaW5nU3RhdGVGcm9tT2JzKHRoaXMuemlwUmVhZGVyJC5waXBlKHN3aXRjaE1hcCgoeCkgPT4gKHggPyB4LmdldEVudHJpZXMoKSA6IG9mKFtdKSkpKSk7XG4gIHJlYWRvbmx5IGFsbEVudHJpZXMkID0gdGhpcy5hbGxFbnRyaWVzTG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgYWxsRW50cmllc1Jvb3QkID0gdGhpcy5hbGxFbnRyaWVzJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gZGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVGcm9tRW50cmllcyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBhbGxFbnRyaWVzUm9vdFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMuYWxsRW50cmllc1Jvb3QkKTtcblxuICByZWFkb25seSBzZWxlY3RlZE5vZGVTaWduYWwgPSBzaWduYWw8TWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPj4odW5kZWZpbmVkKTtcblxuICByZWFkb25seSBsaXN0VGl0bGVHcm91cERlbGVnYXRlOiBEYnhMaXN0VGl0bGVHcm91cFRpdGxlRGVsZWdhdGU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlLCBEYnhaaXBCbG9iUHJldmlld0dyb3VwVmFsdWUsIERieFppcEJsb2JQcmV2aWV3R3JvdXBEYXRhPiA9IHtcbiAgICBncm91cFZhbHVlRm9ySXRlbTogKGl0ZW0pID0+IHtcbiAgICAgIGNvbnN0IGdyb3VwOiBEYnhaaXBCbG9iUHJldmlld0dyb3VwVmFsdWUgPSBpdGVtLml0ZW1WYWx1ZS52YWx1ZS52YWx1ZS5kaXJlY3RvcnkgPyAnZGlyZWN0b3J5JyA6ICdmaWxlJztcbiAgICAgIHJldHVybiBncm91cDtcbiAgICB9LFxuICAgIGRhdGFGb3JHcm91cFZhbHVlOiAodmFsdWU6IERieFppcEJsb2JQcmV2aWV3R3JvdXBWYWx1ZSwgaXRlbXMpID0+IHtcbiAgICAgIGNvbnN0IGRhdGE6IERieFppcEJsb2JQcmV2aWV3R3JvdXBEYXRhID0ge1xuICAgICAgICB0aXRsZTogKHZhbHVlID09PSAnZGlyZWN0b3J5JyA/ICdEaXJlY3RvcmllcycgOiAnRmlsZXMnKSArIGAgKCR7aXRlbXMubGVuZ3RofSlgLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgc29ydDogdmFsdWUgPT09ICdkaXJlY3RvcnknID8gMCA6IDEsXG4gICAgICAgIGNzc0NsYXNzZXM6IFsnZGJ4LXppcC1ibG9iLXByZXZpZXctbGlzdC1ncm91cCddXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9LFxuICAgIHNvcnRHcm91cHNCeURhdGE6IChhLCBiKSA9PiB7XG4gICAgICByZXR1cm4gYS5zb3J0IC0gYi5zb3J0O1xuICAgIH1cbiAgfTtcblxuICByZWFkb25seSBtb2RlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsKCk7XG5cbiAgICBsZXQgbW9kZSA9ICd2aWV3X2RpcmVjdG9yeSc7XG5cbiAgICBpZiAoc2VsZWN0ZWROb2RlICYmICFzZWxlY3RlZE5vZGUudmFsdWUudmFsdWUuZGlyZWN0b3J5KSB7XG4gICAgICBtb2RlID0gJ3ZpZXdfZW50cnknO1xuICAgIH1cblxuICAgIHJldHVybiBtb2RlO1xuICB9KTtcblxuICByZWFkb25seSBsaXN0RW50cmllcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBhbGxFbnRyaWVzID0gdGhpcy5hbGxFbnRyaWVzUm9vdFNpZ25hbCgpO1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsKCk7XG5cbiAgICBsZXQgZW50cmllczogTWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlW10+O1xuXG4gICAgaWYgKHNlbGVjdGVkTm9kZSkge1xuICAgICAgaWYgKHNlbGVjdGVkTm9kZS52YWx1ZS52YWx1ZS5kaXJlY3RvcnkpIHtcbiAgICAgICAgZW50cmllcyA9IHNlbGVjdGVkTm9kZS5jaGlsZHJlbjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVudHJpZXMgPSBzZWxlY3RlZE5vZGUucGFyZW50Py5jaGlsZHJlbjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZW50cmllcyA9IGFsbEVudHJpZXM/LmNoaWxkcmVuO1xuICAgIH1cblxuICAgIHJldHVybiBlbnRyaWVzID8/IFtdO1xuICB9KTtcblxuICByZWFkb25seSBsaXN0RW50cmllcyQgPSB0b09ic2VydmFibGUodGhpcy5saXN0RW50cmllcyk7XG4gIHJlYWRvbmx5IGxpc3RFbnRyaWVzU3RhdGUkID0gbG9hZGluZ1N0YXRlRnJvbU9icyh0aGlzLmxpc3RFbnRyaWVzJCk7XG5cbiAgcmVhZG9ubHkgc2VsZWN0ZWROb2RlSWNvblNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbCgpO1xuXG4gICAgbGV0IGljb246IHN0cmluZztcblxuICAgIGlmIChzZWxlY3RlZE5vZGUpIHtcbiAgICAgIGlmIChzZWxlY3RlZE5vZGUudmFsdWUudmFsdWUuZGlyZWN0b3J5KSB7XG4gICAgICAgIGljb24gPSAnZm9sZGVyJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGljb24gPSAnbm90ZSc7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGljb24gPSAnaG9tZSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb247XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkTm9kZVBhdGhTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWROb2RlID0gdGhpcy5zZWxlY3RlZE5vZGVTaWduYWwoKTtcbiAgICByZXR1cm4gWydIb21lJywgLi4uKHNlbGVjdGVkTm9kZT8udmFsdWUuc2xhc2hQYXRoRGV0YWlscy5wYXJ0cyA/PyBbXSldLmpvaW4oJyA+ICcpO1xuICB9KTtcblxuICByZWFkb25seSBzZWxlY3RlZEZpbGVOb2RlU2lnbmFsOiBTaWduYWw8TWF5YmU8RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPEZpbGVFbnRyeT4+PiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbCgpO1xuICAgIHJldHVybiBzZWxlY3RlZE5vZGU/LnZhbHVlLnZhbHVlLmRpcmVjdG9yeSA/IHVuZGVmaW5lZCA6IChzZWxlY3RlZE5vZGUgYXMgRGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPEZpbGVFbnRyeT4pO1xuICB9KTtcblxuICByZWFkb25seSBzZWxlY3RlZEZpbGVFbnRyeSQgPSB0b09ic2VydmFibGUodGhpcy5zZWxlY3RlZEZpbGVOb2RlU2lnbmFsKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRGaWxlRW50cnlCbG9iJDogT2JzZXJ2YWJsZTxNYXliZTxCbG9iPj4gPSB0aGlzLnNlbGVjdGVkRmlsZUVudHJ5JC5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gKHggJiYgeC52YWx1ZS5nZXRCbG9iID8geC52YWx1ZS5nZXRCbG9iKCkgOiBvZih1bmRlZmluZWQpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWRGaWxlRW50cnlCbG9iU2lnbmFsOiBTaWduYWw8TWF5YmU8QmxvYj4+ID0gdG9TaWduYWwodGhpcy5zZWxlY3RlZEZpbGVFbnRyeUJsb2IkKTtcblxuICByZWFkb25seSBjb250ZXh0ID0gY2xlYW5Mb2FkaW5nQ29udGV4dCh7IG9iczogdGhpcy5hbGxFbnRyaWVzTG9hZGluZ1N0YXRlJCB9KTtcblxuICByZWFkb25seSBtYWtlRW50cnlBbmNob3I6IEFuY2hvckZvclZhbHVlRnVuY3Rpb248RGJ4WmlwQmxvYlByZXZpZXdFbnRyeVRyZWVOb2RlPiA9IChpdGVtVmFsdWUpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgb25DbGljazogKCkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZVNpZ25hbC5zZXQoaXRlbVZhbHVlKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xuXG4gIHJlYWRvbmx5IGhvbWVDbGlja2VkID0gKCkgPT4ge1xuICAgIHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsLnNldCh1bmRlZmluZWQpO1xuICB9O1xuXG4gIHJlYWRvbmx5IGJhY2tDbGlja2VkID0gKCkgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMuc2VsZWN0ZWROb2RlU2lnbmFsKCk7XG4gICAgdGhpcy5zZWxlY3RlZE5vZGVTaWduYWwuc2V0KHNlbGVjdGVkTm9kZT8ucGFyZW50KTtcbiAgfTtcbn1cbiIsIjxkYngtbG9hZGluZyBbY29udGV4dF09XCJjb250ZXh0XCI+XG4gIDxkaXYgY2xhc3M9XCJkYngtZmxleC1iYXIgZGJ4LXppcC1ibG9iLXByZXZpZXctdG9vbGJhclwiPlxuICAgIDxkYngtaWNvbi1idXR0b24gW2Rpc2FibGVkXT1cIiFzZWxlY3RlZE5vZGVTaWduYWwoKVwiIGljb249XCJhcnJvd191cHdhcmRcIiB0ZXh0PVwiQmFja1wiIChjbGljayk9XCJiYWNrQ2xpY2tlZCgpXCI+PC9kYngtaWNvbi1idXR0b24+XG4gICAgPGRieC1idXR0b24tc3BhY2VyPjwvZGJ4LWJ1dHRvbi1zcGFjZXI+XG4gICAgPGRieC1pY29uLWJ1dHRvbiBbZGlzYWJsZWRdPVwiIXNlbGVjdGVkTm9kZVNpZ25hbCgpXCIgaWNvbj1cImhvbWVcIiB0ZXh0PVwiSG9tZVwiIChjbGljayk9XCJob21lQ2xpY2tlZCgpXCI+PC9kYngtaWNvbi1idXR0b24+XG4gICAgPGRieC1zcGFjZXI+PC9kYngtc3BhY2VyPlxuICAgIEBpZiAoZG93bmxvYWRaaXBGaWxlQmxvYkJ1dHRvbkNvbmZpZ1NpZ25hbCgpKSB7XG4gICAgICA8ZGJ4LWRvd25sb2FkLWJsb2ItYnV0dG9uIFtjb25maWddPVwiZG93bmxvYWRaaXBGaWxlQmxvYkJ1dHRvbkNvbmZpZ1NpZ25hbCgpXCI+PC9kYngtZG93bmxvYWQtYmxvYi1idXR0b24+XG4gICAgfVxuICA8L2Rpdj5cbiAgPGRieC1iYXItaGVhZGVyIGNsYXNzPVwiZGJ4LXppcC1ibG9iLXByZXZpZXctaGVhZGVyXCIgW2ljb25dPVwic2VsZWN0ZWROb2RlSWNvblNpZ25hbCgpXCIgW3RleHRdPVwic2VsZWN0ZWROb2RlUGF0aFNpZ25hbCgpXCI+PC9kYngtYmFyLWhlYWRlcj5cbiAgPGRpdiBjbGFzcz1cImRieC16aXAtYmxvYi1wcmV2aWV3LWNvbnRlbnRcIj5cbiAgICBAc3dpdGNoIChtb2RlKCkpIHtcbiAgICAgIEBjYXNlICgndmlld19kaXJlY3RvcnknKSB7XG4gICAgICAgIDxkYngtemlwLXByZXZpZXctZmlsZS1lbnRyeS1saXN0IFtzdGF0ZSRdPVwibGlzdEVudHJpZXNTdGF0ZSRcIiBbZGJ4TGlzdFRpdGxlR3JvdXBdPVwibGlzdFRpdGxlR3JvdXBEZWxlZ2F0ZVwiIFtkYnhMaXN0SXRlbU1vZGlmaWVyXSBbZGJ4TGlzdEl0ZW1BbmNob3JNb2RpZmllcl09XCJtYWtlRW50cnlBbmNob3JcIj48L2RieC16aXAtcHJldmlldy1maWxlLWVudHJ5LWxpc3Q+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ3ZpZXdfZW50cnknKSB7XG4gICAgICAgIDxkYngtZW1iZWQgY2xhc3M9XCJkYngtemlwLWJsb2ItcHJldmlldy1jb250ZW50LWVtYmVkXCIgW2Jsb2JdPVwic2VsZWN0ZWRGaWxlRW50cnlCbG9iU2lnbmFsKClcIj48L2RieC1lbWJlZD5cbiAgICAgIH1cbiAgICB9XG4gIDwvZGl2PlxuPC9kYngtbG9hZGluZz5cbiJdfQ==
@@ -1,10 +1,10 @@
1
1
  import { ChangeDetectionStrategy, Component, model } from '@angular/core';
2
- import { DbxInjectionComponent } from '@dereekb/dbx-core';
2
+ import { cleanLoadingContext, DbxInjectionComponent } from '@dereekb/dbx-core';
3
3
  import { NgTemplateOutlet } from '@angular/common';
4
4
  import { DbxLoadingComponent } from '../../loading';
5
5
  import { toObservable, toSignal } from '@angular/core/rxjs-interop';
6
6
  import { combineLatest, distinctUntilChanged, from, of, shareReplay, switchMap } from 'rxjs';
7
- import { beginLoading, errorResult, loadingStateContext, startWithBeginLoading, successResult, valueFromFinishedLoadingState } from '@dereekb/rxjs';
7
+ import { beginLoading, errorResult, startWithBeginLoading, successResult, valueFromFinishedLoadingState } from '@dereekb/rxjs';
8
8
  import { DbxZipBlobPreviewComponent } from './zip.blob.preview.component';
9
9
  import * as i0 from "@angular/core";
10
10
  /**
@@ -43,10 +43,7 @@ export class DbxZipPreviewComponent {
43
43
  }));
44
44
  zipFileBlob$ = this.zipFileBlobLoadingState$.pipe(valueFromFinishedLoadingState(), distinctUntilChanged(), shareReplay(1));
45
45
  zipFileBlobSignal = toSignal(this.zipFileBlob$);
46
- context = loadingStateContext({ obs: this.zipFileBlobLoadingState$ });
47
- ngOnDestroy() {
48
- this.context.destroy();
49
- }
46
+ context = cleanLoadingContext({ obs: this.zipFileBlobLoadingState$ });
50
47
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxZipPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
48
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: DbxZipPreviewComponent, isStandalone: true, selector: "dbx-zip-preview", inputs: { srcUrl: { classPropertyName: "srcUrl", publicName: "srcUrl", isSignal: true, isRequired: false, transformFunction: null }, blob: { classPropertyName: "blob", publicName: "blob", isSignal: true, isRequired: false, transformFunction: null }, downloadFileName: { classPropertyName: "downloadFileName", publicName: "downloadFileName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { srcUrl: "srcUrlChange", blob: "blobChange", downloadFileName: "downloadFileNameChange" }, ngImport: i0, template: `
52
49
  <dbx-loading [context]="context">
@@ -68,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
68
65
  changeDetection: ChangeDetectionStrategy.OnPush
69
66
  }]
70
67
  }] });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlwLnByZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi96aXAvemlwLnByZXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFnQixtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEssT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBRTFFOztHQUVHO0FBWUgsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQzs7T0FFRztJQUNNLE1BQU0sR0FBRyxLQUFLLEVBQStCLENBQUM7SUFFdkQ7O09BRUc7SUFDTSxJQUFJLEdBQUcsS0FBSyxFQUFlLENBQUM7SUFFckM7O09BRUc7SUFDTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQWlCLENBQUM7SUFFMUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFaEMsd0JBQXdCLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2hGLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUU7UUFDM0IsSUFBSSxHQUFtQyxDQUFDO1FBRXhDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxHQUFHLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUM7YUFBTSxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLEdBQUcsR0FBRyxJQUFJLENBQ1IsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzFDLENBQUM7aUJBQ0UsSUFBSSxFQUFFO2lCQUNOLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUM3QixLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBTyxDQUFDLENBQUMsQ0FBQyxDQUN0QyxDQUNGLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNOLEdBQUcsR0FBRyxFQUFFLENBQUMsWUFBWSxFQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBRU8sWUFBWSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNILGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFaEQsT0FBTyxHQUFHLG1CQUFtQixDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLENBQUM7SUFFL0UsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekIsQ0FBQzt3R0FqRFUsc0JBQXNCOzRGQUF0QixzQkFBc0IscWtCQVR2Qjs7OztHQUlULDREQUVnQyxtQkFBbUIsbUtBQUUsMEJBQTBCOzs0RkFHckUsc0JBQXNCO2tCQVhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDbkcsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgbW9kZWwsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhMb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbG9hZGluZyc7XG5pbXBvcnQgeyBNYXliZSwgV2Vic2l0ZVVybFdpdGhQcmVmaXggfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZnJvbSwgT2JzZXJ2YWJsZSwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGJlZ2luTG9hZGluZywgZXJyb3JSZXN1bHQsIExvYWRpbmdTdGF0ZSwgbG9hZGluZ1N0YXRlQ29udGV4dCwgc3RhcnRXaXRoQmVnaW5Mb2FkaW5nLCBzdWNjZXNzUmVzdWx0LCB2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGJ4WmlwQmxvYlByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50JztcblxuLyoqXG4gKiBVc2VkIHRvIGRpc3BsYXkgYSBjb3JyZXNwb25kaW5nIHdpZGdldCBiYXNlZCBvbiB0aGUgaW5wdXQgZGF0YS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LXppcC1wcmV2aWV3JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiPlxuICAgICAgPGRieC16aXAtYmxvYi1wcmV2aWV3IFtkb3dubG9hZEZpbGVOYW1lXT1cImRvd25sb2FkRmlsZU5hbWUoKVwiIFtibG9iXT1cInppcEZpbGVCbG9iU2lnbmFsKClcIj48L2RieC16aXAtYmxvYi1wcmV2aWV3PlxuICAgIDwvZGJ4LWxvYWRpbmc+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtEYnhJbmplY3Rpb25Db21wb25lbnQsIERieExvYWRpbmdDb21wb25lbnQsIERieFppcEJsb2JQcmV2aWV3Q29tcG9uZW50LCBOZ1RlbXBsYXRlT3V0bGV0XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4WmlwUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgVVJMIHRvIGRvd25sb2FkIHRoZSB6aXAgZmlsZSBmcm9tLCBpZiBhcHBsaWNhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjVXJsID0gbW9kZWw8TWF5YmU8V2Vic2l0ZVVybFdpdGhQcmVmaXg+PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgYmxvYiB0byB1c2UgZm9yIHRoZSB6aXAgZmlsZSwgaWYgYXBwbGljYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IGJsb2IgPSBtb2RlbDxNYXliZTxCbG9iPj4oKTtcblxuICAvKipcbiAgICogVGhlIGZpbGUgbmFtZSB0byB1c2UgZm9yIHRoZSB6aXAgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IGRvd25sb2FkRmlsZU5hbWUgPSBtb2RlbDxNYXliZTxzdHJpbmc+PigpO1xuXG4gIHJlYWRvbmx5IHNyY1VybCQgPSB0b09ic2VydmFibGUodGhpcy5zcmNVcmwpO1xuICByZWFkb25seSBibG9iJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmJsb2IpO1xuXG4gIHJlYWRvbmx5IHppcEZpbGVCbG9iTG9hZGluZ1N0YXRlJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc3JjVXJsJCwgdGhpcy5ibG9iJF0pLnBpcGUoXG4gICAgc3dpdGNoTWFwKChbc3JjVXJsLCBibG9iXSkgPT4ge1xuICAgICAgbGV0IG9iczogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8QmxvYj4+O1xuXG4gICAgICBpZiAoYmxvYikge1xuICAgICAgICBvYnMgPSBvZihzdWNjZXNzUmVzdWx0KGJsb2IpKTtcbiAgICAgIH0gZWxzZSBpZiAoc3JjVXJsKSB7XG4gICAgICAgIG9icyA9IGZyb20oXG4gICAgICAgICAgZmV0Y2goc3JjVXJsLCB7IG1ldGhvZDogJ0dFVCcgfSkudGhlbigoeCkgPT5cbiAgICAgICAgICAgIHhcbiAgICAgICAgICAgICAgLmJsb2IoKVxuICAgICAgICAgICAgICAudGhlbigoeSkgPT4gc3VjY2Vzc1Jlc3VsdCh5KSlcbiAgICAgICAgICAgICAgLmNhdGNoKChlKSA9PiBlcnJvclJlc3VsdDxCbG9iPihlKSlcbiAgICAgICAgICApXG4gICAgICAgICkucGlwZShzdGFydFdpdGhCZWdpbkxvYWRpbmcoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnMgPSBvZihiZWdpbkxvYWRpbmc8QmxvYj4oKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvYnM7XG4gICAgfSlcbiAgKTtcblxuICByZWFkb25seSB6aXBGaWxlQmxvYiQgPSB0aGlzLnppcEZpbGVCbG9iTG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgemlwRmlsZUJsb2JTaWduYWwgPSB0b1NpZ25hbCh0aGlzLnppcEZpbGVCbG9iJCk7XG5cbiAgcmVhZG9ubHkgY29udGV4dCA9IGxvYWRpbmdTdGF0ZUNvbnRleHQoeyBvYnM6IHRoaXMuemlwRmlsZUJsb2JMb2FkaW5nU3RhdGUkIH0pO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC5kZXN0cm95KCk7XG4gIH1cbn1cbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlwLnByZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi96aXAvemlwLnByZXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFnQixxQkFBcUIsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0ksT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBRTFFOztHQUVHO0FBWUgsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQzs7T0FFRztJQUNNLE1BQU0sR0FBRyxLQUFLLEVBQStCLENBQUM7SUFFdkQ7O09BRUc7SUFDTSxJQUFJLEdBQUcsS0FBSyxFQUFlLENBQUM7SUFFckM7O09BRUc7SUFDTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQWlCLENBQUM7SUFFMUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFaEMsd0JBQXdCLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2hGLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUU7UUFDM0IsSUFBSSxHQUFtQyxDQUFDO1FBRXhDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxHQUFHLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUM7YUFBTSxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLEdBQUcsR0FBRyxJQUFJLENBQ1IsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzFDLENBQUM7aUJBQ0UsSUFBSSxFQUFFO2lCQUNOLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUM3QixLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBTyxDQUFDLENBQUMsQ0FBQyxDQUN0QyxDQUNGLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNOLEdBQUcsR0FBRyxFQUFFLENBQUMsWUFBWSxFQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBRU8sWUFBWSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNILGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFaEQsT0FBTyxHQUFHLG1CQUFtQixDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLENBQUM7d0dBN0NwRSxzQkFBc0I7NEZBQXRCLHNCQUFzQixxa0JBVHZCOzs7O0dBSVQsNERBRWdDLG1CQUFtQixtS0FBRSwwQkFBMEI7OzRGQUdyRSxzQkFBc0I7a0JBWGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFOzs7O0dBSVQ7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixFQUFFLG1CQUFtQixFQUFFLDBCQUEwQixFQUFFLGdCQUFnQixDQUFDO29CQUNuRyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xlYW5Mb2FkaW5nQ29udGV4dCwgRGJ4SW5qZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhMb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbG9hZGluZyc7XG5pbXBvcnQgeyBNYXliZSwgV2Vic2l0ZVVybFdpdGhQcmVmaXggfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZnJvbSwgT2JzZXJ2YWJsZSwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGJlZ2luTG9hZGluZywgZXJyb3JSZXN1bHQsIExvYWRpbmdTdGF0ZSwgc3RhcnRXaXRoQmVnaW5Mb2FkaW5nLCBzdWNjZXNzUmVzdWx0LCB2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGJ4WmlwQmxvYlByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ppcC5ibG9iLnByZXZpZXcuY29tcG9uZW50JztcblxuLyoqXG4gKiBVc2VkIHRvIGRpc3BsYXkgYSBjb3JyZXNwb25kaW5nIHdpZGdldCBiYXNlZCBvbiB0aGUgaW5wdXQgZGF0YS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LXppcC1wcmV2aWV3JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiPlxuICAgICAgPGRieC16aXAtYmxvYi1wcmV2aWV3IFtkb3dubG9hZEZpbGVOYW1lXT1cImRvd25sb2FkRmlsZU5hbWUoKVwiIFtibG9iXT1cInppcEZpbGVCbG9iU2lnbmFsKClcIj48L2RieC16aXAtYmxvYi1wcmV2aWV3PlxuICAgIDwvZGJ4LWxvYWRpbmc+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtEYnhJbmplY3Rpb25Db21wb25lbnQsIERieExvYWRpbmdDb21wb25lbnQsIERieFppcEJsb2JQcmV2aWV3Q29tcG9uZW50LCBOZ1RlbXBsYXRlT3V0bGV0XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4WmlwUHJldmlld0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgVVJMIHRvIGRvd25sb2FkIHRoZSB6aXAgZmlsZSBmcm9tLCBpZiBhcHBsaWNhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjVXJsID0gbW9kZWw8TWF5YmU8V2Vic2l0ZVVybFdpdGhQcmVmaXg+PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgYmxvYiB0byB1c2UgZm9yIHRoZSB6aXAgZmlsZSwgaWYgYXBwbGljYWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IGJsb2IgPSBtb2RlbDxNYXliZTxCbG9iPj4oKTtcblxuICAvKipcbiAgICogVGhlIGZpbGUgbmFtZSB0byB1c2UgZm9yIHRoZSB6aXAgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IGRvd25sb2FkRmlsZU5hbWUgPSBtb2RlbDxNYXliZTxzdHJpbmc+PigpO1xuXG4gIHJlYWRvbmx5IHNyY1VybCQgPSB0b09ic2VydmFibGUodGhpcy5zcmNVcmwpO1xuICByZWFkb25seSBibG9iJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmJsb2IpO1xuXG4gIHJlYWRvbmx5IHppcEZpbGVCbG9iTG9hZGluZ1N0YXRlJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc3JjVXJsJCwgdGhpcy5ibG9iJF0pLnBpcGUoXG4gICAgc3dpdGNoTWFwKChbc3JjVXJsLCBibG9iXSkgPT4ge1xuICAgICAgbGV0IG9iczogT2JzZXJ2YWJsZTxMb2FkaW5nU3RhdGU8QmxvYj4+O1xuXG4gICAgICBpZiAoYmxvYikge1xuICAgICAgICBvYnMgPSBvZihzdWNjZXNzUmVzdWx0KGJsb2IpKTtcbiAgICAgIH0gZWxzZSBpZiAoc3JjVXJsKSB7XG4gICAgICAgIG9icyA9IGZyb20oXG4gICAgICAgICAgZmV0Y2goc3JjVXJsLCB7IG1ldGhvZDogJ0dFVCcgfSkudGhlbigoeCkgPT5cbiAgICAgICAgICAgIHhcbiAgICAgICAgICAgICAgLmJsb2IoKVxuICAgICAgICAgICAgICAudGhlbigoeSkgPT4gc3VjY2Vzc1Jlc3VsdCh5KSlcbiAgICAgICAgICAgICAgLmNhdGNoKChlKSA9PiBlcnJvclJlc3VsdDxCbG9iPihlKSlcbiAgICAgICAgICApXG4gICAgICAgICkucGlwZShzdGFydFdpdGhCZWdpbkxvYWRpbmcoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYnMgPSBvZihiZWdpbkxvYWRpbmc8QmxvYj4oKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvYnM7XG4gICAgfSlcbiAgKTtcblxuICByZWFkb25seSB6aXBGaWxlQmxvYiQgPSB0aGlzLnppcEZpbGVCbG9iTG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgemlwRmlsZUJsb2JTaWduYWwgPSB0b1NpZ25hbCh0aGlzLnppcEZpbGVCbG9iJCk7XG5cbiAgcmVhZG9ubHkgY29udGV4dCA9IGNsZWFuTG9hZGluZ0NvbnRleHQoeyBvYnM6IHRoaXMuemlwRmlsZUJsb2JMb2FkaW5nU3RhdGUkIH0pO1xufVxuIl19
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
35
35
  standalone: true
36
36
  }]
37
37
  }], ctorParameters: () => [] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmFjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvaW50ZXJhY3Rpb24vZGlhbG9nL2RpYWxvZy5hY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBcUIsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTzFFOztHQUVHO0FBTUgsTUFBTSxPQUFPLHdCQUFzQyxTQUFRLHFDQUF3QztJQUN4RixVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWhDLGVBQWUsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUE4QixDQUFDO0lBQy9ELHlCQUF5QixHQUFHLEtBQUssRUFBNkIsQ0FBQztJQUMvRCxzQkFBc0IsR0FBRyxLQUFLLEVBQTBCLENBQUM7SUFFbEU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDbkIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QjtZQUNoRCxhQUFhLEVBQUUsSUFBSSxDQUFDLHNCQUFzQjtTQUMzQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFUyxjQUFjO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7SUFDbEMsQ0FBQzt3R0F0QlUsd0JBQXdCOzRGQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlyc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBPbkRlc3Ryb3ksIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4QWN0aW9uVmFsdWVHZXR0ZXJEaXJlY3RpdmUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBJc0VxdWFsRnVuY3Rpb24sIElzTW9kaWZpZWRGdW5jdGlvbiB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuZXhwb3J0IHR5cGUgRGJ4QWN0aW9uRGlhbG9nRnVuY3Rpb248VCA9IHVua25vd24+ID0gKCkgPT4gTWF0RGlhbG9nUmVmPHVua25vd24sIE1heWJlPFQ+PjtcblxuLyoqXG4gKiBBY3Rpb24gZGlyZWN0aXZlIHRoYXQgaXMgdXNlZCB0byB0cmlnZ2VyL2Rpc3BsYXkgYSBkaWFsb2csIHRoZW4gd2F0Y2hlcyB0aGF0IGRpYWxvZyBmb3IgYSB2YWx1ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIGV4cG9ydEFzOiAnZGJ4QWN0aW9uRGlhbG9nJyxcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRGlhbG9nXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRGlhbG9nRGlyZWN0aXZlPFQgPSB1bmtub3duPiBleHRlbmRzIEFic3RyYWN0RGJ4QWN0aW9uVmFsdWVHZXR0ZXJEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRGlhbG9nID0gaW5wdXQucmVxdWlyZWQ8RGJ4QWN0aW9uRGlhbG9nRnVuY3Rpb248VD4+KCk7XG4gIHJlYWRvbmx5IGRieEFjdGlvbkRpYWxvZ0lzTW9kaWZpZWQgPSBpbnB1dDxNYXliZTxJc01vZGlmaWVkRnVuY3Rpb24+PigpO1xuICByZWFkb25seSBkYnhBY3Rpb25EaWFsb2dJc0VxdWFsID0gaW5wdXQ8TWF5YmU8SXNFcXVhbEZ1bmN0aW9uPj4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuY29uZmlndXJlSW5wdXRzKHtcbiAgICAgIGlzTW9kaWZpZWRTaWduYWw6IHRoaXMuZGJ4QWN0aW9uRGlhbG9nSXNNb2RpZmllZCxcbiAgICAgIGlzRXF1YWxTaWduYWw6IHRoaXMuZGJ4QWN0aW9uRGlhbG9nSXNFcXVhbFxuICAgIH0pO1xuICAgIHRoaXMuc2V0VmFsdWVHZXR0ZXJGdW5jdGlvbigoKSA9PiB0aGlzLl9nZXREYXRhRnJvbURpYWxvZygpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfZ2V0RGF0YUZyb21EaWFsb2coKTogT2JzZXJ2YWJsZTxNYXliZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLl9tYWtlRGlhbG9nUmVmKCkuYWZ0ZXJDbG9zZWQoKS5waXBlKGZpcnN0KCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9tYWtlRGlhbG9nUmVmKCk6IE1hdERpYWxvZ1JlZjx1bmtub3duLCBNYXliZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLmRieEFjdGlvbkRpYWxvZygpKCk7XG4gIH1cbn1cbiJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmFjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvaW50ZXJhY3Rpb24vZGlhbG9nL2RpYWxvZy5hY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFPMUU7O0dBRUc7QUFNSCxNQUFNLE9BQU8sd0JBQXNDLFNBQVEscUNBQXdDO0lBQ3hGLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFaEMsZUFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQThCLENBQUM7SUFDL0QseUJBQXlCLEdBQUcsS0FBSyxFQUE2QixDQUFDO0lBQy9ELHNCQUFzQixHQUFHLEtBQUssRUFBMEIsQ0FBQztJQUVsRTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUNuQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMseUJBQXlCO1lBQ2hELGFBQWEsRUFBRSxJQUFJLENBQUMsc0JBQXNCO1NBQzNDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFUyxrQkFBa0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVTLGNBQWM7UUFDdEIsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztJQUNsQyxDQUFDO3dHQXRCVSx3QkFBd0I7NEZBQXhCLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdERieEFjdGlvblZhbHVlR2V0dGVyRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgSXNFcXVhbEZ1bmN0aW9uLCBJc01vZGlmaWVkRnVuY3Rpb24gfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmV4cG9ydCB0eXBlIERieEFjdGlvbkRpYWxvZ0Z1bmN0aW9uPFQgPSB1bmtub3duPiA9ICgpID0+IE1hdERpYWxvZ1JlZjx1bmtub3duLCBNYXliZTxUPj47XG5cbi8qKlxuICogQWN0aW9uIGRpcmVjdGl2ZSB0aGF0IGlzIHVzZWQgdG8gdHJpZ2dlci9kaXNwbGF5IGEgZGlhbG9nLCB0aGVuIHdhdGNoZXMgdGhhdCBkaWFsb2cgZm9yIGEgdmFsdWUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBleHBvcnRBczogJ2RieEFjdGlvbkRpYWxvZycsXG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkRpYWxvZ10nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkRpYWxvZ0RpcmVjdGl2ZTxUID0gdW5rbm93bj4gZXh0ZW5kcyBBYnN0cmFjdERieEFjdGlvblZhbHVlR2V0dGVyRGlyZWN0aXZlPFQ+IHtcbiAgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICByZWFkb25seSBkYnhBY3Rpb25EaWFsb2cgPSBpbnB1dC5yZXF1aXJlZDxEYnhBY3Rpb25EaWFsb2dGdW5jdGlvbjxUPj4oKTtcbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRGlhbG9nSXNNb2RpZmllZCA9IGlucHV0PE1heWJlPElzTW9kaWZpZWRGdW5jdGlvbj4+KCk7XG4gIHJlYWRvbmx5IGRieEFjdGlvbkRpYWxvZ0lzRXF1YWwgPSBpbnB1dDxNYXliZTxJc0VxdWFsRnVuY3Rpb24+PigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5jb25maWd1cmVJbnB1dHMoe1xuICAgICAgaXNNb2RpZmllZFNpZ25hbDogdGhpcy5kYnhBY3Rpb25EaWFsb2dJc01vZGlmaWVkLFxuICAgICAgaXNFcXVhbFNpZ25hbDogdGhpcy5kYnhBY3Rpb25EaWFsb2dJc0VxdWFsXG4gICAgfSk7XG4gICAgdGhpcy5zZXRWYWx1ZUdldHRlckZ1bmN0aW9uKCgpID0+IHRoaXMuX2dldERhdGFGcm9tRGlhbG9nKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9nZXREYXRhRnJvbURpYWxvZygpOiBPYnNlcnZhYmxlPE1heWJlPFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuX21ha2VEaWFsb2dSZWYoKS5hZnRlckNsb3NlZCgpLnBpcGUoZmlyc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX21ha2VEaWFsb2dSZWYoKTogTWF0RGlhbG9nUmVmPHVua25vd24sIE1heWJlPFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZGJ4QWN0aW9uRGlhbG9nKCkoKTtcbiAgfVxufVxuIl19