@scion/workbench 18.0.0-beta.5 → 18.0.0-beta.6

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 (34) hide show
  1. package/esm2022/lib/executor/single-task-executor.mjs +3 -3
  2. package/esm2022/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.mjs +5 -4
  3. package/esm2022/lib/microfrontend-platform/microfrontend-host-message-box/microfrontend-host-message-box.component.mjs +5 -4
  4. package/esm2022/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.mjs +9 -8
  5. package/esm2022/lib/microfrontend-platform/microfrontend-popup/microfrontend-popup.component.mjs +7 -8
  6. package/esm2022/lib/part/view-context-menu/text.component.mjs +16 -12
  7. package/esm2022/lib/part/view-context-menu/view-menu.service.mjs +19 -19
  8. package/esm2022/lib/popup/popup.config.mjs +4 -13
  9. package/esm2022/lib/popup/popup.service.mjs +4 -9
  10. package/esm2022/lib/portal/wb-component-portal.mjs +4 -2
  11. package/esm2022/lib/routing//311/265workbench-router.service.mjs +11 -7
  12. package/esm2022/lib/view/view.component.mjs +22 -11
  13. package/esm2022/lib/view//311/265workbench-view.model.mjs +3 -5
  14. package/esm2022/lib/workbench-config.mjs +2 -2
  15. package/esm2022/lib/workbench.component.mjs +22 -2
  16. package/esm2022/lib/workbench.model.mjs +1 -1
  17. package/fesm2022/scion-workbench.mjs +114 -89
  18. package/fesm2022/scion-workbench.mjs.map +1 -1
  19. package/lib/executor/single-task-executor.d.ts +2 -2
  20. package/lib/microfrontend-platform/microfrontend-host-dialog/microfrontend-host-dialog.component.d.ts +2 -1
  21. package/lib/microfrontend-platform/microfrontend-host-message-box/microfrontend-host-message-box.component.d.ts +2 -1
  22. package/lib/microfrontend-platform/microfrontend-host-popup/microfrontend-host-popup.component.d.ts +2 -1
  23. package/lib/part/view-context-menu/text.component.d.ts +3 -4
  24. package/lib/part/view-context-menu/view-menu.service.d.ts +5 -5
  25. package/lib/popup/popup.config.d.ts +9 -10
  26. package/lib/popup/popup.service.d.ts +1 -1
  27. package/lib/portal/wb-component-portal.d.ts +18 -0
  28. package/lib/routing//311/265workbench-router.service.d.ts +4 -1
  29. package/lib/view/view.component.d.ts +13 -3
  30. package/lib/view//311/265workbench-view.model.d.ts +0 -2
  31. package/lib/workbench-config.d.ts +15 -3
  32. package/lib/workbench.component.d.ts +5 -0
  33. package/lib/workbench.model.d.ts +7 -3
  34. package/package.json +2 -2
@@ -13,9 +13,9 @@ import { catchError, observeOn } from 'rxjs/operators';
13
13
  import { InjectionToken } from '@angular/core';
14
14
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
15
15
  /**
16
- * Serializes navigation requests to the Angular Router to prevent cancelling of parallel navigations or race conditions when modifying the currently active workbench layout.
16
+ * Serializes navigation requests to the Angular Router to prevent the cancellation of previously initiated asynchronous navigations.
17
17
  */
18
- export const SINGLE_NAVIGATION_EXECUTOR = new InjectionToken('SINGLE_NAVIGATION_EXECUTOR', {
18
+ export const ANGULAR_ROUTER_MUTEX = new InjectionToken('ANGULAR_ROUTER_MUTEX', {
19
19
  providedIn: 'root',
20
20
  factory: () => new SingleTaskExecutor(),
21
21
  });
@@ -69,4 +69,4 @@ class Task {
69
69
  return lastValueFrom(this._done$);
70
70
  }
71
71
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXRhc2stZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9leGVjdXRvci9zaW5nbGUtdGFzay1leGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRTlEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQXFCLDRCQUE0QixFQUFFO0lBQzdHLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLGtCQUFrQixFQUFFO0NBQ3hDLENBQUMsQ0FBQztBQUVIOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCO1FBRlEsV0FBTSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFHbkMsSUFBSSxDQUFDLE1BQU07YUFDUixJQUFJO1FBQ0gscUhBQXFIO1FBQ3JILG1IQUFtSDtRQUNuSCxtSEFBbUg7UUFDbkgsK0ZBQStGO1FBQy9GLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFDeEIsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsRUFDMUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQ3JDLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUksSUFBc0I7UUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUksSUFBSSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsT0FBTyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxJQUFJO0lBSVIsWUFBb0IsS0FBdUI7UUFBdkIsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFGbkMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7SUFHdkMsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNELE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUs7UUFDVixPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge2FzYXBTY2hlZHVsZXIsIEFzeW5jU3ViamVjdCwgbGFzdFZhbHVlRnJvbSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3NlcmlhbGl6ZUV4ZWN1dGlvbn0gZnJvbSAnLi4vY29tbW9uL29wZXJhdG9ycyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG9ic2VydmVPbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG4vKipcbiAqIFNlcmlhbGl6ZXMgbmF2aWdhdGlvbiByZXF1ZXN0cyB0byB0aGUgQW5ndWxhciBSb3V0ZXIgdG8gcHJldmVudCBjYW5jZWxsaW5nIG9mIHBhcmFsbGVsIG5hdmlnYXRpb25zIG9yIHJhY2UgY29uZGl0aW9ucyB3aGVuIG1vZGlmeWluZyB0aGUgY3VycmVudGx5IGFjdGl2ZSB3b3JrYmVuY2ggbGF5b3V0LlxuICovXG5leHBvcnQgY29uc3QgU0lOR0xFX05BVklHQVRJT05fRVhFQ1VUT1IgPSBuZXcgSW5qZWN0aW9uVG9rZW48U2luZ2xlVGFza0V4ZWN1dG9yPignU0lOR0xFX05BVklHQVRJT05fRVhFQ1VUT1InLCB7XG4gIHByb3ZpZGVkSW46ICdyb290JyxcbiAgZmFjdG9yeTogKCkgPT4gbmV3IFNpbmdsZVRhc2tFeGVjdXRvcigpLFxufSk7XG5cbi8qKlxuICogQWxsb3dzIHRoZSBzZXJpYWwgZXhlY3V0aW9uIG9mIHRhc2tzLlxuICpcbiAqIEF0IGFueSBvbmUgdGltZSwgdGhlcmUgaXMgb25seSBvbmUgdGFzayBleGVjdXRpbmcuIFdoZW4gc3VibWl0dGluZyBhIHRhc2sgYW5kIGlmIHRoZXJlIGlzIGEgdGFzayBhbHJlYWR5IGV4ZWN1dGluZyxcbiAqIHRoZSBzdWJtaXR0ZWQgdGFzayB3aWxsIGJlIHF1ZXVlZCBmb3IgbGF0ZXIgZXhlY3V0aW9uLlxuICpcbiAqIFRoaXMgZXhlY3V0b3IgbXVzdCBiZSBjb25zdHJ1Y3RlZCB3aXRoaW4gYW4gaW5qZWN0aW9uIGNvbnRleHQuIERlc3Ryb3lpbmcgdGhlIGluamVjdGlvbiBjb250ZXh0IHdpbGwgYWxzbyBkZXN0cm95IHRoZSBleGVjdXRvci5cbiAqL1xuZXhwb3J0IGNsYXNzIFNpbmdsZVRhc2tFeGVjdXRvciB7XG5cbiAgcHJpdmF0ZSBfdGFzayQgPSBuZXcgU3ViamVjdDxUYXNrPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3Rhc2skXG4gICAgICAucGlwZShcbiAgICAgICAgLy8gU2NoZWR1bGUgdGhlIHRhc2sgYXN5bmNocm9ub3VzbHkgc28gdGhhdCBpdCBpcyBub3QgZXhlY3V0ZWQgaWYgdGhlIGV4ZWN1dG9yIGlzIGRlc3Ryb3llZCBpbiB0aGUgc2FtZSBcImNhbGwgc3RhY2tcIixcbiAgICAgICAgLy8gaGFwcGVuaW5nLCBmb3IgZXhhbXBsZSwgd2hlbiBkZXN0cm95aW5nIHRoZSBUZXN0YmVkIGluIHVuaXQgdGVzdHMuIEFuZ3VsYXIgZGVzdHJveXMgY29udGV4dHMgZnJvbSB0aGUgYm90dG9tIHVwLFxuICAgICAgICAvLyBpLmUuLCBjaGlsZCBjb250ZXh0cyBhcmUgZGVzdHJveWVkIGJlZm9yZSBwYXJlbnQgY29udGV4dHMuIElmIGEgdGFzayBpcyBzY2hlZHVsZWQgaW4gYSBkZXN0cm95IGxpZmVjeWNsZSBob29rIG9mXG4gICAgICAgIC8vIGEgY2hpbGQgY29udGV4dCwgdGhlIHRhc2sgd291bGQgc3RpbGwgYmUgZXhlY3V0ZWQgYmVjYXVzZSB0aGUgZXhlY3V0b3IgaXMgbm90IGRlc3Ryb3llZCB5ZXQuXG4gICAgICAgIG9ic2VydmVPbihhc2FwU2NoZWR1bGVyKSxcbiAgICAgICAgc2VyaWFsaXplRXhlY3V0aW9uKHRhc2sgPT4gdGFzay5leGVjdXRlKCkpLFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvciwgY2F1Z2h0KSA9PiBjYXVnaHQpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJtaXRzIGEgdGFzayBmb3Igc2VyaWFsIGV4ZWN1dGlvbi5cbiAgICpcbiAgICogUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0aGUgcmVzdWx0IG9mIHRoZSBwYXNzZWQgdGFzay5cbiAgICovXG4gIHB1YmxpYyBzdWJtaXQ8VD4odGFzazogKCkgPT4gUHJvbWlzZTxUPik6IFByb21pc2U8VD4ge1xuICAgIGNvbnN0IMm1dGFzayA9IG5ldyBUYXNrPFQ+KHRhc2spO1xuICAgIHRoaXMuX3Rhc2skLm5leHQoybV0YXNrKTtcbiAgICByZXR1cm4gybV0YXNrLmF3YWl0KCk7XG4gIH1cbn1cblxuY2xhc3MgVGFzazxUID0gYW55PiB7XG5cbiAgcHJpdmF0ZSBfZG9uZSQgPSBuZXcgQXN5bmNTdWJqZWN0PFQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfd29yazogKCkgPT4gUHJvbWlzZTxUPikge1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGV4ZWN1dGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuX3dvcmsoKTtcbiAgICAgIHRoaXMuX2RvbmUkLm5leHQocmVzdWx0KTtcbiAgICAgIHRoaXMuX2RvbmUkLmNvbXBsZXRlKCk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5fZG9uZSQuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhd2FpdCgpOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLl9kb25lJCk7XG4gIH1cbn1cbiJdfQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXRhc2stZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9leGVjdXRvci9zaW5nbGUtdGFzay1leGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRTlEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQXFCLHNCQUFzQixFQUFFO0lBQ2pHLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLGtCQUFrQixFQUFFO0NBQ3hDLENBQUMsQ0FBQztBQUVIOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCO1FBRlEsV0FBTSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFHbkMsSUFBSSxDQUFDLE1BQU07YUFDUixJQUFJO1FBQ0gscUhBQXFIO1FBQ3JILG1IQUFtSDtRQUNuSCxtSEFBbUg7UUFDbkgsK0ZBQStGO1FBQy9GLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFDeEIsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsRUFDMUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQ3JDLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUksSUFBc0I7UUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUksSUFBSSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsT0FBTyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxJQUFJO0lBSVIsWUFBb0IsS0FBdUI7UUFBdkIsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFGbkMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7SUFHdkMsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNELE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUs7UUFDVixPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge2FzYXBTY2hlZHVsZXIsIEFzeW5jU3ViamVjdCwgbGFzdFZhbHVlRnJvbSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3NlcmlhbGl6ZUV4ZWN1dGlvbn0gZnJvbSAnLi4vY29tbW9uL29wZXJhdG9ycyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIG9ic2VydmVPbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG4vKipcbiAqIFNlcmlhbGl6ZXMgbmF2aWdhdGlvbiByZXF1ZXN0cyB0byB0aGUgQW5ndWxhciBSb3V0ZXIgdG8gcHJldmVudCB0aGUgY2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgaW5pdGlhdGVkIGFzeW5jaHJvbm91cyBuYXZpZ2F0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IEFOR1VMQVJfUk9VVEVSX01VVEVYID0gbmV3IEluamVjdGlvblRva2VuPFNpbmdsZVRhc2tFeGVjdXRvcj4oJ0FOR1VMQVJfUk9VVEVSX01VVEVYJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3Rvcnk6ICgpID0+IG5ldyBTaW5nbGVUYXNrRXhlY3V0b3IoKSxcbn0pO1xuXG4vKipcbiAqIEFsbG93cyB0aGUgc2VyaWFsIGV4ZWN1dGlvbiBvZiB0YXNrcy5cbiAqXG4gKiBBdCBhbnkgb25lIHRpbWUsIHRoZXJlIGlzIG9ubHkgb25lIHRhc2sgZXhlY3V0aW5nLiBXaGVuIHN1Ym1pdHRpbmcgYSB0YXNrIGFuZCBpZiB0aGVyZSBpcyBhIHRhc2sgYWxyZWFkeSBleGVjdXRpbmcsXG4gKiB0aGUgc3VibWl0dGVkIHRhc2sgd2lsbCBiZSBxdWV1ZWQgZm9yIGxhdGVyIGV4ZWN1dGlvbi5cbiAqXG4gKiBUaGlzIGV4ZWN1dG9yIG11c3QgYmUgY29uc3RydWN0ZWQgd2l0aGluIGFuIGluamVjdGlvbiBjb250ZXh0LiBEZXN0cm95aW5nIHRoZSBpbmplY3Rpb24gY29udGV4dCB3aWxsIGFsc28gZGVzdHJveSB0aGUgZXhlY3V0b3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW5nbGVUYXNrRXhlY3V0b3Ige1xuXG4gIHByaXZhdGUgX3Rhc2skID0gbmV3IFN1YmplY3Q8VGFzaz4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl90YXNrJFxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIFNjaGVkdWxlIHRoZSB0YXNrIGFzeW5jaHJvbm91c2x5IHNvIHRoYXQgaXQgaXMgbm90IGV4ZWN1dGVkIGlmIHRoZSBleGVjdXRvciBpcyBkZXN0cm95ZWQgaW4gdGhlIHNhbWUgXCJjYWxsIHN0YWNrXCIsXG4gICAgICAgIC8vIGhhcHBlbmluZywgZm9yIGV4YW1wbGUsIHdoZW4gZGVzdHJveWluZyB0aGUgVGVzdGJlZCBpbiB1bml0IHRlc3RzLiBBbmd1bGFyIGRlc3Ryb3lzIGNvbnRleHRzIGZyb20gdGhlIGJvdHRvbSB1cCxcbiAgICAgICAgLy8gaS5lLiwgY2hpbGQgY29udGV4dHMgYXJlIGRlc3Ryb3llZCBiZWZvcmUgcGFyZW50IGNvbnRleHRzLiBJZiBhIHRhc2sgaXMgc2NoZWR1bGVkIGluIGEgZGVzdHJveSBsaWZlY3ljbGUgaG9vayBvZlxuICAgICAgICAvLyBhIGNoaWxkIGNvbnRleHQsIHRoZSB0YXNrIHdvdWxkIHN0aWxsIGJlIGV4ZWN1dGVkIGJlY2F1c2UgdGhlIGV4ZWN1dG9yIGlzIG5vdCBkZXN0cm95ZWQgeWV0LlxuICAgICAgICBvYnNlcnZlT24oYXNhcFNjaGVkdWxlciksXG4gICAgICAgIHNlcmlhbGl6ZUV4ZWN1dGlvbih0YXNrID0+IHRhc2suZXhlY3V0ZSgpKSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IsIGNhdWdodCkgPT4gY2F1Z2h0KSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogU3VibWl0cyBhIHRhc2sgZm9yIHNlcmlhbCBleGVjdXRpb24uXG4gICAqXG4gICAqIFJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIHJlc3VsdCBvZiB0aGUgcGFzc2VkIHRhc2suXG4gICAqL1xuICBwdWJsaWMgc3VibWl0PFQ+KHRhc2s6ICgpID0+IFByb21pc2U8VD4pOiBQcm9taXNlPFQ+IHtcbiAgICBjb25zdCDJtXRhc2sgPSBuZXcgVGFzazxUPih0YXNrKTtcbiAgICB0aGlzLl90YXNrJC5uZXh0KMm1dGFzayk7XG4gICAgcmV0dXJuIMm1dGFzay5hd2FpdCgpO1xuICB9XG59XG5cbmNsYXNzIFRhc2s8VCA9IGFueT4ge1xuXG4gIHByaXZhdGUgX2RvbmUkID0gbmV3IEFzeW5jU3ViamVjdDxUPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3dvcms6ICgpID0+IFByb21pc2U8VD4pIHtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLl93b3JrKCk7XG4gICAgICB0aGlzLl9kb25lJC5uZXh0KHJlc3VsdCk7XG4gICAgICB0aGlzLl9kb25lJC5jb21wbGV0ZSgpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuX2RvbmUkLmVycm9yKGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXdhaXQoKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5fZG9uZSQpO1xuICB9XG59XG4iXX0=
@@ -18,7 +18,7 @@ import { DIALOG_ID_PREFIX } from '../../workbench.constants';
18
18
  import { Subject } from 'rxjs';
19
19
  import { throwError } from '../../common/throw-error.util';
20
20
  import { Microfrontends } from '../common/microfrontend.util';
21
- import { SINGLE_NAVIGATION_EXECUTOR } from '../../executor/single-task-executor';
21
+ import { ANGULAR_ROUTER_MUTEX } from '../../executor/single-task-executor';
22
22
  import { Observables } from '@scion/toolkit/util';
23
23
  import { filter, takeUntil } from 'rxjs/operators';
24
24
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
@@ -38,7 +38,8 @@ export class MicrofrontendHostDialogComponent {
38
38
  this._dialog = _dialog;
39
39
  this._injector = _injector;
40
40
  this._router = _router;
41
- this._singleNavigationExecutor = inject(SINGLE_NAVIGATION_EXECUTOR);
41
+ /** Mutex to serialize Angular Router navigation requests, preventing the cancellation of previously initiated asynchronous navigations. */
42
+ this._angularRouterMutex = inject(ANGULAR_ROUTER_MUTEX);
42
43
  this.outletName = DIALOG_ID_PREFIX.concat(this._dialog.id);
43
44
  }
44
45
  ngOnInit() {
@@ -57,7 +58,7 @@ export class MicrofrontendHostDialogComponent {
57
58
  path = Microfrontends.substituteNamedParameters(path, extras?.params);
58
59
  const outletCommands = (path !== null ? runInInjectionContext(this._injector, () => Routing.pathToCommands(path)) : null);
59
60
  const commands = [{ outlets: { [this.outletName]: outletCommands } }];
60
- return this._singleNavigationExecutor.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
61
+ return this._angularRouterMutex.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
61
62
  }
62
63
  createOutletInjector() {
63
64
  this.outletInjector = Injector.create({
@@ -129,4 +130,4 @@ function provideWorkbenchClientDialogHandle(capability, params) {
129
130
  },
130
131
  };
131
132
  }
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1kaWFsb2cvbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1kaWFsb2cvbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixxQkFBcUIsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLGVBQWUsSUFBSSxxQkFBcUIsRUFBNEIsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFbkQsT0FBTyxFQUFTLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQWEsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDL0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFFOUQ7Ozs7Ozs7R0FPRztBQVdILE1BQU0sT0FBTyxnQ0FBZ0M7SUFhM0MsWUFBb0IsT0FBeUIsRUFDekIsU0FBbUIsRUFDbkIsT0FBZTtRQUZmLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBQ3pCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUozQiw4QkFBeUIsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUtyRSxJQUFJLENBQUMsVUFBVSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ25GLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDYixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsbUdBQW1HLENBQUMsQ0FBQyxDQUFDO1lBQ2pJLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLFFBQVEsQ0FBQyxJQUFtQixFQUFFLE1BQW9DO1FBQ3hFLElBQUksR0FBRyxjQUFjLENBQUMseUJBQXlCLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV0RSxNQUFNLGNBQWMsR0FBb0IsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUksTUFBTSxRQUFRLEdBQWEsQ0FBQyxFQUFDLE9BQU8sRUFBRSxFQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLGNBQWMsRUFBQyxFQUFDLENBQUMsQ0FBQztRQUM1RSxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUMsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUMsQ0FBQztJQUNuSixDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNwQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDdEIsU0FBUyxFQUFFLENBQUMsa0NBQWtDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO2dCQUMxRSxnRUFBZ0U7Z0JBQ2hFLEVBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLHVEQUF1RCxDQUFDLEVBQUM7YUFDbEg7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO1FBQ25FLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDO1FBRXpFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUM7UUFDcEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQztRQUN0RSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDO0lBQ3BFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxpQ0FBaUM7SUFDL0QsQ0FBQzs4R0FsRVUsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsZ0pDN0M3QywyS0FLQSxxSERvQ0ksWUFBWSwySkFDWixnQkFBZ0I7OzJGQUdQLGdDQUFnQztrQkFWNUMsU0FBUzsrQkFDRSw4QkFBOEIsY0FHNUIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjtpSUFLTSxVQUFVO3NCQURoQixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztnQkFJaEIsTUFBTTtzQkFEWixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQzs7QUFnRXpCOztHQUVHO0FBQ0gsU0FBUyxrQ0FBa0MsQ0FBQyxVQUFxQyxFQUFFLE1BQTRCO0lBQzdHLE9BQU87UUFDTCxPQUFPLEVBQUUscUJBQXFCO1FBQzlCLFVBQVUsRUFBRSxHQUEwQixFQUFFO1lBQ3RDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3hDLE1BQU0sZUFBZSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7WUFFL0MsT0FBTyxJQUFJO2dCQUFBO29CQUNPLGVBQVUsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLFdBQU0sR0FBRyxNQUFNLENBQUM7Z0JBb0JsQyxDQUFDO2dCQWxCUSxRQUFRLENBQUMsS0FBa0M7b0JBQ2hELGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBRTlCLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO3lCQUN0QixJQUFJLENBQ0gsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFDakUsa0JBQWtCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDcEQ7eUJBQ0EsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztnQkFFTSxLQUFLLENBQUMsTUFBa0I7b0JBQzdCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3ZCLENBQUM7Z0JBRU0sV0FBVztvQkFDaEIsd0RBQXdEO2dCQUMxRCxDQUFDO2FBQ0YsQ0FBQztRQUNKLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyNCBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIERlc3Ryb3lSZWYsIGluamVjdCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgcnVuSW5JbmplY3Rpb25Db250ZXh0LCBTdGF0aWNQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dvcmtiZW5jaERpYWxvZyBhcyBXb3JrYmVuY2hDbGllbnREaWFsb2csIFdvcmtiZW5jaERpYWxvZ0NhcGFiaWxpdHl9IGZyb20gJ0BzY2lvbi93b3JrYmVuY2gtY2xpZW50JztcbmltcG9ydCB7Um91dGluZ30gZnJvbSAnLi4vLi4vcm91dGluZy9yb3V0aW5nLnV0aWwnO1xuaW1wb3J0IHtDb21tYW5kc30gZnJvbSAnLi4vLi4vcm91dGluZy9yb3V0aW5nLm1vZGVsJztcbmltcG9ydCB7Um91dGVyLCBSb3V0ZXJPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge8m1V29ya2JlbmNoRGlhbG9nfSBmcm9tICcuLi8uLi9kaWFsb2cvybV3b3JrYmVuY2gtZGlhbG9nJztcbmltcG9ydCB7V29ya2JlbmNoRGlhbG9nfSBmcm9tICcuLi8uLi9kaWFsb2cvd29ya2JlbmNoLWRpYWxvZyc7XG5pbXBvcnQge05nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0RJQUxPR19JRF9QUkVGSVh9IGZyb20gJy4uLy4uL3dvcmtiZW5jaC5jb25zdGFudHMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGhyb3dFcnJvcn0gZnJvbSAnLi4vLi4vY29tbW9uL3Rocm93LWVycm9yLnV0aWwnO1xuaW1wb3J0IHtNaWNyb2Zyb250ZW5kc30gZnJvbSAnLi4vY29tbW9uL21pY3JvZnJvbnRlbmQudXRpbCc7XG5pbXBvcnQge1NJTkdMRV9OQVZJR0FUSU9OX0VYRUNVVE9SfSBmcm9tICcuLi8uLi9leGVjdXRvci9zaW5nbGUtdGFzay1leGVjdXRvcic7XG5pbXBvcnQge09ic2VydmFibGVzfSBmcm9tICdAc2Npb24vdG9vbGtpdC91dGlsJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogTmF2aWdhdGVzIHRvIHRoZSBtaWNyb2Zyb250ZW5kIG9mIGEgZ2l2ZW4ge0BsaW5rIFdvcmtiZW5jaERpYWxvZ0NhcGFiaWxpdHl9IHZpYSB7QGxpbmsgUm91dGVyfS5cbiAqXG4gKiBVbmxpa2Uge0BsaW5rIE1pY3JvZnJvbnRlbmREaWFsb2dDb21wb25lbnR9LCB0aGlzIGNvbXBvbmVudCB1c2VzIGEgYDxyb3V0ZXItb3V0bGV0PmAgaW5zdGVhZCBvZiBhIGA8c2NpLXJvdXRlci1vdXRsZXQ+YFxuICogdG8gYWxsb3cgZGlyZWN0IGludGVncmF0aW9uIG9mIHRoZSBjb250ZW50IHByb3ZpZGVkIGJ5IHRoZSB3b3JrYmVuY2ggaG9zdCBhcHBsaWNhdGlvbiB2aWEgdGhlIEFuZ3VsYXIgcm91dGVyLlxuICpcbiAqIFRoaXMgY29tcG9uZW50IGlzIGRlc2lnbmVkIHRvIGJlIGRpc3BsYXllZCBpbiBhIHdvcmtiZW5jaCBkaWFsb2cuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLW1pY3JvZnJvbnRlbmQtaG9zdC1kaWFsb2cnLFxuICBzdHlsZVVybHM6IFsnLi9taWNyb2Zyb250ZW5kLWhvc3QtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9taWNyb2Zyb250ZW5kLWhvc3QtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlck91dGxldCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb2Zyb250ZW5kSG9zdERpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0IHtcblxuICBASW5wdXQoe3JlcXVpcmVkOiB0cnVlfSlcbiAgcHVibGljIGNhcGFiaWxpdHkhOiBXb3JrYmVuY2hEaWFsb2dDYXBhYmlsaXR5O1xuXG4gIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICBwdWJsaWMgcGFyYW1zITogTWFwPHN0cmluZywgdW5rbm93bj47XG5cbiAgcHJvdGVjdGVkIG91dGxldE5hbWU6IHN0cmluZztcbiAgcHJvdGVjdGVkIG91dGxldEluamVjdG9yITogSW5qZWN0b3I7XG5cbiAgcHJpdmF0ZSBfc2luZ2xlTmF2aWdhdGlvbkV4ZWN1dG9yID0gaW5qZWN0KFNJTkdMRV9OQVZJR0FUSU9OX0VYRUNVVE9SKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kaWFsb2c6IMm1V29ya2JlbmNoRGlhbG9nLFxuICAgICAgICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyKSB7XG4gICAgdGhpcy5vdXRsZXROYW1lID0gRElBTE9HX0lEX1BSRUZJWC5jb25jYXQodGhpcy5fZGlhbG9nLmlkKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldERpYWxvZ1Byb3BlcnRpZXMoKTtcbiAgICB0aGlzLmNyZWF0ZU91dGxldEluamVjdG9yKCk7XG4gICAgdGhpcy5uYXZpZ2F0ZSh0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCB7cGFyYW1zOiB0aGlzLnBhcmFtc30pLnRoZW4oc3VjY2VzcyA9PiB7XG4gICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlKEVycm9yKCdbRGlhbG9nTmF2aWdhdGVFcnJvcl0gTmF2aWdhdGlvbiBjYW5jZWxlZCwgbW9zdCBsaWtlbHkgYnkgYSByb3V0ZSBndWFyZCBvciBhIHBhcmFsbGVsIG5hdmlnYXRpb24uJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIG5hdmlnYXRpb24gaW4gdGhlIG5hbWVkIG91dGxldCwgc3Vic3RpdHV0aW5nIHBhdGggcGFyYW1zIGlmIGFueS4gVG8gY2xlYXIgbmF2aWdhdGlvbiwgcGFzcyBgbnVsbGAgYXMgdGhlIHBhdGguXG4gICAqL1xuICBwcml2YXRlIG5hdmlnYXRlKHBhdGg6IHN0cmluZyB8IG51bGwsIGV4dHJhcz86IHtwYXJhbXM/OiBNYXA8c3RyaW5nLCBhbnk+fSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHBhdGggPSBNaWNyb2Zyb250ZW5kcy5zdWJzdGl0dXRlTmFtZWRQYXJhbWV0ZXJzKHBhdGgsIGV4dHJhcz8ucGFyYW1zKTtcblxuICAgIGNvbnN0IG91dGxldENvbW1hbmRzOiBDb21tYW5kcyB8IG51bGwgPSAocGF0aCAhPT0gbnVsbCA/IHJ1bkluSW5qZWN0aW9uQ29udGV4dCh0aGlzLl9pbmplY3RvciwgKCkgPT4gUm91dGluZy5wYXRoVG9Db21tYW5kcyhwYXRoISkpIDogbnVsbCk7XG4gICAgY29uc3QgY29tbWFuZHM6IENvbW1hbmRzID0gW3tvdXRsZXRzOiB7W3RoaXMub3V0bGV0TmFtZV06IG91dGxldENvbW1hbmRzfX1dO1xuICAgIHJldHVybiB0aGlzLl9zaW5nbGVOYXZpZ2F0aW9uRXhlY3V0b3Iuc3VibWl0KCgpID0+IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywge3NraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZSwgcXVlcnlQYXJhbXNIYW5kbGluZzogJ3ByZXNlcnZlJ30pKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlT3V0bGV0SW5qZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5vdXRsZXRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZVdvcmtiZW5jaENsaWVudERpYWxvZ0hhbmRsZSh0aGlzLmNhcGFiaWxpdHksIHRoaXMucGFyYW1zKSxcbiAgICAgICAgLy8gUHJldmVudCBpbmplY3RpbmcgdGhlIGRpYWxvZyBoYW5kbGUgaW4gaG9zdCBkaWFsb2cgY29tcG9uZW50LlxuICAgICAgICB7cHJvdmlkZTogV29ya2JlbmNoRGlhbG9nLCB1c2VGYWN0b3J5OiAoKSA9PiB0aHJvd0Vycm9yKGBbTnVsbEluamVjdG9yRXJyb3JdIE5vIHByb3ZpZGVyIGZvciAnV29ya2JlbmNoRGlhbG9nJ2ApfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldERpYWxvZ1Byb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fZGlhbG9nLnNpemUud2lkdGggPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy53aWR0aDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5oZWlnaHQgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5oZWlnaHQ7XG4gICAgdGhpcy5fZGlhbG9nLnNpemUubWluV2lkdGggPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5taW5XaWR0aDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5tYXhXaWR0aCA9IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1heFdpZHRoO1xuICAgIHRoaXMuX2RpYWxvZy5zaXplLm1pbkhlaWdodCA9IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1pbkhlaWdodDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5tYXhIZWlnaHQgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5tYXhIZWlnaHQ7XG5cbiAgICB0aGlzLl9kaWFsb2cudGl0bGUgPSBNaWNyb2Zyb250ZW5kcy5zdWJzdGl0dXRlTmFtZWRQYXJhbWV0ZXJzKHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnRpdGxlLCB0aGlzLnBhcmFtcyk7XG4gICAgdGhpcy5fZGlhbG9nLmNsb3NhYmxlID0gdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuY2xvc2FibGUgPz8gdHJ1ZTtcbiAgICB0aGlzLl9kaWFsb2cucmVzaXphYmxlID0gdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMucmVzaXphYmxlID8/IHRydWU7XG4gICAgdGhpcy5fZGlhbG9nLnBhZGRpbmcgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYWRkaW5nID8/IHRydWU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZShudWxsKS50aGVuKCk7IC8vIFJlbW92ZSB0aGUgb3V0bGV0IGZyb20gdGhlIFVSTFxuICB9XG59XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIHtXb3JrYmVuY2hEaWFsb2d9IGhhbmRsZSB0byB0aGUgcm91dGVkIGNvbXBvbmVudC5cbiAqL1xuZnVuY3Rpb24gcHJvdmlkZVdvcmtiZW5jaENsaWVudERpYWxvZ0hhbmRsZShjYXBhYmlsaXR5OiBXb3JrYmVuY2hEaWFsb2dDYXBhYmlsaXR5LCBwYXJhbXM6IE1hcDxzdHJpbmcsIHVua25vd24+KTogU3RhdGljUHJvdmlkZXIge1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IFdvcmtiZW5jaENsaWVudERpYWxvZyxcbiAgICB1c2VGYWN0b3J5OiAoKTogV29ya2JlbmNoQ2xpZW50RGlhbG9nID0+IHtcbiAgICAgIGNvbnN0IGRpYWxvZyA9IGluamVjdCjJtVdvcmtiZW5jaERpYWxvZyk7XG4gICAgICBjb25zdCBwcm9wZXJ0eUNoYW5nZSQgPSBuZXcgU3ViamVjdDwndGl0bGUnPigpO1xuXG4gICAgICByZXR1cm4gbmV3IGNsYXNzPFIgPSB1bmtub3duPiBpbXBsZW1lbnRzIFdvcmtiZW5jaENsaWVudERpYWxvZzxSPiB7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSBjYXBhYmlsaXR5ID0gY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBhcmFtcztcblxuICAgICAgICBwdWJsaWMgc2V0VGl0bGUodGl0bGU6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICAgIHByb3BlcnR5Q2hhbmdlJC5uZXh0KCd0aXRsZScpO1xuXG4gICAgICAgICAgT2JzZXJ2YWJsZXMuY29lcmNlKHRpdGxlKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRha2VVbnRpbChwcm9wZXJ0eUNoYW5nZSQucGlwZShmaWx0ZXIocHJvcCA9PiBwcm9wID09PSAndGl0bGUnKSkpLFxuICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoZGlhbG9nLmluamVjdG9yLmdldChEZXN0cm95UmVmKSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHRpdGxlID0+IGRpYWxvZy50aXRsZSA9IHRpdGxlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHB1YmxpYyBjbG9zZShyZXN1bHQ/OiBSIHwgRXJyb3IpOiB2b2lkIHtcbiAgICAgICAgICBkaWFsb2cuY2xvc2UocmVzdWx0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHB1YmxpYyBzaWduYWxSZWFkeSgpOiB2b2lkIHtcbiAgICAgICAgICAvLyBub3RoaW5nIHRvIGRvIHNpbmNlIG5vdCBhbiBpZnJhbWUtYmFzZWQgbWljcm9mcm9udGVuZFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0sXG4gIH07XG59XG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicm91dGVyX291dGxldDsgaW5qZWN0b3I6IG91dGxldEluamVjdG9yXCIvPlxuXG48bmctdGVtcGxhdGUgI3JvdXRlcl9vdXRsZXQ+XG4gIDxyb3V0ZXItb3V0bGV0IFtuYW1lXT1cIm91dGxldE5hbWVcIi8+XG48L25nLXRlbXBsYXRlPlxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1kaWFsb2cvbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1kaWFsb2cvbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixxQkFBcUIsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLGVBQWUsSUFBSSxxQkFBcUIsRUFBNEIsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFbkQsT0FBTyxFQUFTLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQWEsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxVQUFVLEVBQUMs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QixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ3BEO3lCQUNBLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQzlDLENBQUM7Z0JBRU0sS0FBSyxDQUFDLE1BQWtCO29CQUM3QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN2QixDQUFDO2dCQUVNLFdBQVc7b0JBQ2hCLHdEQUF3RDtnQkFDMUQsQ0FBQzthQUNGLENBQUM7UUFDSixDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjQgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBEZXN0cm95UmVmLCBpbmplY3QsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIHJ1bkluSW5qZWN0aW9uQ29udGV4dCwgU3RhdGljUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXb3JrYmVuY2hEaWFsb2cgYXMgV29ya2JlbmNoQ2xpZW50RGlhbG9nLCBXb3JrYmVuY2hEaWFsb2dDYXBhYmlsaXR5fSBmcm9tICdAc2Npb24vd29ya2JlbmNoLWNsaWVudCc7XG5pbXBvcnQge1JvdXRpbmd9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy51dGlsJztcbmltcG9ydCB7Q29tbWFuZHN9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy5tb2RlbCc7XG5pbXBvcnQge1JvdXRlciwgUm91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHvJtVdvcmtiZW5jaERpYWxvZ30gZnJvbSAnLi4vLi4vZGlhbG9nL8m1d29ya2JlbmNoLWRpYWxvZyc7XG5pbXBvcnQge1dvcmtiZW5jaERpYWxvZ30gZnJvbSAnLi4vLi4vZGlhbG9nL3dvcmtiZW5jaC1kaWFsb2cnO1xuaW1wb3J0IHtOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtESUFMT0dfSURfUFJFRklYfSBmcm9tICcuLi8uLi93b3JrYmVuY2guY29uc3RhbnRzJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rocm93RXJyb3J9IGZyb20gJy4uLy4uL2NvbW1vbi90aHJvdy1lcnJvci51dGlsJztcbmltcG9ydCB7TWljcm9mcm9udGVuZHN9IGZyb20gJy4uL2NvbW1vbi9taWNyb2Zyb250ZW5kLnV0aWwnO1xuaW1wb3J0IHtBTkdVTEFSX1JPVVRFUl9NVVRFWH0gZnJvbSAnLi4vLi4vZXhlY3V0b3Ivc2luZ2xlLXRhc2stZXhlY3V0b3InO1xuaW1wb3J0IHtPYnNlcnZhYmxlc30gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXRpbCc7XG5pbXBvcnQge2ZpbHRlciwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG4vKipcbiAqIE5hdmlnYXRlcyB0byB0aGUgbWljcm9mcm9udGVuZCBvZiBhIGdpdmVuIHtAbGluayBXb3JrYmVuY2hEaWFsb2dDYXBhYmlsaXR5fSB2aWEge0BsaW5rIFJvdXRlcn0uXG4gKlxuICogVW5saWtlIHtAbGluayBNaWNyb2Zyb250ZW5kRGlhbG9nQ29tcG9uZW50fSwgdGhpcyBjb21wb25lbnQgdXNlcyBhIGA8cm91dGVyLW91dGxldD5gIGluc3RlYWQgb2YgYSBgPHNjaS1yb3V0ZXItb3V0bGV0PmBcbiAqIHRvIGFsbG93IGRpcmVjdCBpbnRlZ3JhdGlvbiBvZiB0aGUgY29udGVudCBwcm92aWRlZCBieSB0aGUgd29ya2JlbmNoIGhvc3QgYXBwbGljYXRpb24gdmlhIHRoZSBBbmd1bGFyIHJvdXRlci5cbiAqXG4gKiBUaGlzIGNvbXBvbmVudCBpcyBkZXNpZ25lZCB0byBiZSBkaXNwbGF5ZWQgaW4gYSB3b3JrYmVuY2ggZGlhbG9nLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3Yi1taWNyb2Zyb250ZW5kLWhvc3QtZGlhbG9nJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vbWljcm9mcm9udGVuZC1ob3N0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBSb3V0ZXJPdXRsZXQsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWljcm9mcm9udGVuZEhvc3REaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG5cbiAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gIHB1YmxpYyBjYXBhYmlsaXR5ITogV29ya2JlbmNoRGlhbG9nQ2FwYWJpbGl0eTtcblxuICBASW5wdXQoe3JlcXVpcmVkOiB0cnVlfSlcbiAgcHVibGljIHBhcmFtcyE6IE1hcDxzdHJpbmcsIHVua25vd24+O1xuXG4gIHByb3RlY3RlZCBvdXRsZXROYW1lOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBvdXRsZXRJbmplY3RvciE6IEluamVjdG9yO1xuXG4gIC8qKiBNdXRleCB0byBzZXJpYWxpemUgQW5ndWxhciBSb3V0ZXIgbmF2aWdhdGlvbiByZXF1ZXN0cywgcHJldmVudGluZyB0aGUgY2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgaW5pdGlhdGVkIGFzeW5jaHJvbm91cyBuYXZpZ2F0aW9ucy4gKi9cbiAgcHJpdmF0ZSBfYW5ndWxhclJvdXRlck11dGV4ID0gaW5qZWN0KEFOR1VMQVJfUk9VVEVSX01VVEVYKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kaWFsb2c6IMm1V29ya2JlbmNoRGlhbG9nLFxuICAgICAgICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyKSB7XG4gICAgdGhpcy5vdXRsZXROYW1lID0gRElBTE9HX0lEX1BSRUZJWC5jb25jYXQodGhpcy5fZGlhbG9nLmlkKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldERpYWxvZ1Byb3BlcnRpZXMoKTtcbiAgICB0aGlzLmNyZWF0ZU91dGxldEluamVjdG9yKCk7XG4gICAgdGhpcy5uYXZpZ2F0ZSh0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCB7cGFyYW1zOiB0aGlzLnBhcmFtc30pLnRoZW4oc3VjY2VzcyA9PiB7XG4gICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlKEVycm9yKCdbRGlhbG9nTmF2aWdhdGVFcnJvcl0gTmF2aWdhdGlvbiBjYW5jZWxlZCwgbW9zdCBsaWtlbHkgYnkgYSByb3V0ZSBndWFyZCBvciBhIHBhcmFsbGVsIG5hdmlnYXRpb24uJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIG5hdmlnYXRpb24gaW4gdGhlIG5hbWVkIG91dGxldCwgc3Vic3RpdHV0aW5nIHBhdGggcGFyYW1zIGlmIGFueS4gVG8gY2xlYXIgbmF2aWdhdGlvbiwgcGFzcyBgbnVsbGAgYXMgdGhlIHBhdGguXG4gICAqL1xuICBwcml2YXRlIG5hdmlnYXRlKHBhdGg6IHN0cmluZyB8IG51bGwsIGV4dHJhcz86IHtwYXJhbXM/OiBNYXA8c3RyaW5nLCBhbnk+fSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHBhdGggPSBNaWNyb2Zyb250ZW5kcy5zdWJzdGl0dXRlTmFtZWRQYXJhbWV0ZXJzKHBhdGgsIGV4dHJhcz8ucGFyYW1zKTtcblxuICAgIGNvbnN0IG91dGxldENvbW1hbmRzOiBDb21tYW5kcyB8IG51bGwgPSAocGF0aCAhPT0gbnVsbCA/IHJ1bkluSW5qZWN0aW9uQ29udGV4dCh0aGlzLl9pbmplY3RvciwgKCkgPT4gUm91dGluZy5wYXRoVG9Db21tYW5kcyhwYXRoISkpIDogbnVsbCk7XG4gICAgY29uc3QgY29tbWFuZHM6IENvbW1hbmRzID0gW3tvdXRsZXRzOiB7W3RoaXMub3V0bGV0TmFtZV06IG91dGxldENvbW1hbmRzfX1dO1xuICAgIHJldHVybiB0aGlzLl9hbmd1bGFyUm91dGVyTXV0ZXguc3VibWl0KCgpID0+IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywge3NraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZSwgcXVlcnlQYXJhbXNIYW5kbGluZzogJ3ByZXNlcnZlJ30pKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlT3V0bGV0SW5qZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5vdXRsZXRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZVdvcmtiZW5jaENsaWVudERpYWxvZ0hhbmRsZSh0aGlzLmNhcGFiaWxpdHksIHRoaXMucGFyYW1zKSxcbiAgICAgICAgLy8gUHJldmVudCBpbmplY3RpbmcgdGhlIGRpYWxvZyBoYW5kbGUgaW4gaG9zdCBkaWFsb2cgY29tcG9uZW50LlxuICAgICAgICB7cHJvdmlkZTogV29ya2JlbmNoRGlhbG9nLCB1c2VGYWN0b3J5OiAoKSA9PiB0aHJvd0Vycm9yKGBbTnVsbEluamVjdG9yRXJyb3JdIE5vIHByb3ZpZGVyIGZvciAnV29ya2JlbmNoRGlhbG9nJ2ApfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldERpYWxvZ1Byb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fZGlhbG9nLnNpemUud2lkdGggPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy53aWR0aDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5oZWlnaHQgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5oZWlnaHQ7XG4gICAgdGhpcy5fZGlhbG9nLnNpemUubWluV2lkdGggPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5taW5XaWR0aDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5tYXhXaWR0aCA9IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1heFdpZHRoO1xuICAgIHRoaXMuX2RpYWxvZy5zaXplLm1pbkhlaWdodCA9IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1pbkhlaWdodDtcbiAgICB0aGlzLl9kaWFsb2cuc2l6ZS5tYXhIZWlnaHQgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5tYXhIZWlnaHQ7XG5cbiAgICB0aGlzLl9kaWFsb2cudGl0bGUgPSBNaWNyb2Zyb250ZW5kcy5zdWJzdGl0dXRlTmFtZWRQYXJhbWV0ZXJzKHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnRpdGxlLCB0aGlzLnBhcmFtcyk7XG4gICAgdGhpcy5fZGlhbG9nLmNsb3NhYmxlID0gdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuY2xvc2FibGUgPz8gdHJ1ZTtcbiAgICB0aGlzLl9kaWFsb2cucmVzaXphYmxlID0gdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMucmVzaXphYmxlID8/IHRydWU7XG4gICAgdGhpcy5fZGlhbG9nLnBhZGRpbmcgPSB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYWRkaW5nID8/IHRydWU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZShudWxsKS50aGVuKCk7IC8vIFJlbW92ZSB0aGUgb3V0bGV0IGZyb20gdGhlIFVSTFxuICB9XG59XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIHtXb3JrYmVuY2hEaWFsb2d9IGhhbmRsZSB0byB0aGUgcm91dGVkIGNvbXBvbmVudC5cbiAqL1xuZnVuY3Rpb24gcHJvdmlkZVdvcmtiZW5jaENsaWVudERpYWxvZ0hhbmRsZShjYXBhYmlsaXR5OiBXb3JrYmVuY2hEaWFsb2dDYXBhYmlsaXR5LCBwYXJhbXM6IE1hcDxzdHJpbmcsIHVua25vd24+KTogU3RhdGljUHJvdmlkZXIge1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IFdvcmtiZW5jaENsaWVudERpYWxvZyxcbiAgICB1c2VGYWN0b3J5OiAoKTogV29ya2JlbmNoQ2xpZW50RGlhbG9nID0+IHtcbiAgICAgIGNvbnN0IGRpYWxvZyA9IGluamVjdCjJtVdvcmtiZW5jaERpYWxvZyk7XG4gICAgICBjb25zdCBwcm9wZXJ0eUNoYW5nZSQgPSBuZXcgU3ViamVjdDwndGl0bGUnPigpO1xuXG4gICAgICByZXR1cm4gbmV3IGNsYXNzPFIgPSB1bmtub3duPiBpbXBsZW1lbnRzIFdvcmtiZW5jaENsaWVudERpYWxvZzxSPiB7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSBjYXBhYmlsaXR5ID0gY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBhcmFtcztcblxuICAgICAgICBwdWJsaWMgc2V0VGl0bGUodGl0bGU6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICAgIHByb3BlcnR5Q2hhbmdlJC5uZXh0KCd0aXRsZScpO1xuXG4gICAgICAgICAgT2JzZXJ2YWJsZXMuY29lcmNlKHRpdGxlKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRha2VVbnRpbChwcm9wZXJ0eUNoYW5nZSQucGlwZShmaWx0ZXIocHJvcCA9PiBwcm9wID09PSAndGl0bGUnKSkpLFxuICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoZGlhbG9nLmluamVjdG9yLmdldChEZXN0cm95UmVmKSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHRpdGxlID0+IGRpYWxvZy50aXRsZSA9IHRpdGxlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHB1YmxpYyBjbG9zZShyZXN1bHQ/OiBSIHwgRXJyb3IpOiB2b2lkIHtcbiAgICAgICAgICBkaWFsb2cuY2xvc2UocmVzdWx0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHB1YmxpYyBzaWduYWxSZWFkeSgpOiB2b2lkIHtcbiAgICAgICAgICAvLyBub3RoaW5nIHRvIGRvIHNpbmNlIG5vdCBhbiBpZnJhbWUtYmFzZWQgbWljcm9mcm9udGVuZFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH0sXG4gIH07XG59XG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicm91dGVyX291dGxldDsgaW5qZWN0b3I6IG91dGxldEluamVjdG9yXCIvPlxuXG48bmctdGVtcGxhdGUgI3JvdXRlcl9vdXRsZXQ+XG4gIDxyb3V0ZXItb3V0bGV0IFtuYW1lXT1cIm91dGxldE5hbWVcIi8+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -15,7 +15,7 @@ import { NgTemplateOutlet } from '@angular/common';
15
15
  import { MESSAGE_BOX_ID_PREFIX } from '../../workbench.constants';
16
16
  import { UUID } from '@scion/toolkit/uuid';
17
17
  import { Microfrontends } from '../common/microfrontend.util';
18
- import { SINGLE_NAVIGATION_EXECUTOR } from '../../executor/single-task-executor';
18
+ import { ANGULAR_ROUTER_MUTEX } from '../../executor/single-task-executor';
19
19
  import { setStyle } from '../../common/dom.util';
20
20
  import * as i0 from "@angular/core";
21
21
  import * as i1 from "../../dialog/\u0275workbench-dialog";
@@ -34,7 +34,8 @@ export class MicrofrontendHostMessageBoxComponent {
34
34
  this._dialog = _dialog;
35
35
  this._injector = _injector;
36
36
  this._router = _router;
37
- this._singleNavigationExecutor = inject(SINGLE_NAVIGATION_EXECUTOR);
37
+ /** Mutex to serialize Angular Router navigation requests, preventing the cancellation of previously initiated asynchronous navigations. */
38
+ this._angularRouterMutex = inject(ANGULAR_ROUTER_MUTEX);
38
39
  this.outletName = MESSAGE_BOX_ID_PREFIX.concat(UUID.randomUUID());
39
40
  }
40
41
  ngOnInit() {
@@ -53,7 +54,7 @@ export class MicrofrontendHostMessageBoxComponent {
53
54
  path = Microfrontends.substituteNamedParameters(path, extras?.params);
54
55
  const outletCommands = (path !== null ? runInInjectionContext(this._injector, () => Routing.pathToCommands(path)) : null);
55
56
  const commands = [{ outlets: { [this.outletName]: outletCommands } }];
56
- return this._singleNavigationExecutor.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
57
+ return this._angularRouterMutex.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
57
58
  }
58
59
  createOutletInjector() {
59
60
  this.outletInjector = Injector.create({
@@ -109,4 +110,4 @@ export function provideWorkbenchClientMessageBoxHandle(capability, params) {
109
110
  },
110
111
  };
111
112
  }
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL21pY3JvZnJvbnRlbmQtcGxhdGZvcm0vbWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94L21pY3JvZnJvbnRlbmQtaG9zdC1tZXNzYWdlLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1tZXNzYWdlLWJveC9taWNyb2Zyb250ZW5kLWhvc3QtbWVzc2FnZS1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFjLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixxQkFBcUIsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLG1CQUFtQixFQUFnQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRCxPQUFPLEVBQVMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDaEUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRXpDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUMvRSxPQUFPLEVBQUMsUUFB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QUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsSUFBSSxJQUFJO1lBQ2hFLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLElBQUk7U0FDakUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGlDQUFpQztJQUMvRCxDQUFDOzhHQTdEVSxvQ0FBb0M7a0dBQXBDLG9DQUFvQyxxSkN6Q2pELDJLQUtBLHFIRGdDSSxZQUFZLDJKQUNaLGdCQUFnQjs7MkZBR1Asb0NBQW9DO2tCQVZoRCxTQUFTOytCQUNFLG1DQUFtQyxjQUdqQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7cUJBQ2pCOzBKQUtNLFVBQVU7c0JBRGhCLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDO2dCQUloQixNQUFNO3NCQURaLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDOztBQTJEekI7O0dBRUc7QUFDSCxNQUFNLFVBQVUsc0NBQXNDLENBQUMsVUFBeUMsRUFBRSxNQUE0QjtJQUM1SCxPQUFPO1FBQ0wsT0FBTyxFQUFFLG1CQUFtQjtRQUM1QixVQUFVLEVBQUUsR0FBd0IsRUFBRTtZQUVwQyxPQUFPLElBQUk7Z0JBQUE7b0JBQ08sZUFBVSxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsV0FBTSxHQUFHLE1BQU0sQ0FBQztnQkFLbEMsQ0FBQztnQkFIUSxXQUFXO29CQUNoQix3REFBd0Q7Z0JBQzFELENBQUM7YUFDRixDQUFDO1FBQ0osQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBydW5JbkluamVjdGlvbkNvbnRleHQsIFN0YXRpY1Byb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V29ya2JlbmNoTWVzc2FnZUJveCwgV29ya2JlbmNoTWVzc2FnZUJveENhcGFiaWxpdHl9IGZyb20gJ0BzY2lvbi93b3JrYmVuY2gtY2xpZW50JztcbmltcG9ydCB7Um91dGluZ30gZnJvbSAnLi4vLi4vcm91dGluZy9yb3V0aW5nLnV0aWwnO1xuaW1wb3J0IHtDb21tYW5kc30gZnJvbSAnLi4vLi4vcm91dGluZy9yb3V0aW5nLm1vZGVsJztcbmltcG9ydCB7Um91dGVyLCBSb3V0ZXJPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge05nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01FU1NBR0VfQk9YX0lEX1BSRUZJWH0gZnJvbSAnLi4vLi4vd29ya2JlbmNoLmNvbnN0YW50cyc7XG5pbXBvcnQge1VVSUR9IGZyb20gJ0BzY2lvbi90b29sa2l0L3V1aWQnO1xuaW1wb3J0IHvJtVdvcmtiZW5jaERpYWxvZ30gZnJvbSAnLi4vLi4vZGlhbG9nL8m1d29ya2JlbmNoLWRpYWxvZyc7XG5pbXBvcnQge01pY3JvZnJvbnRlbmRzfSBmcm9tICcuLi9jb21tb24vbWljcm9mcm9udGVuZC51dGlsJztcbmltcG9ydCB7U0lOR0xFX05BVklHQVRJT05fRVhFQ1VUT1J9IGZyb20gJy4uLy4uL2V4ZWN1dG9yL3NpbmdsZS10YXNrLWV4ZWN1dG9yJztcbmltcG9ydCB7c2V0U3R5bGV9IGZyb20gJy4uLy4uL2NvbW1vbi9kb20udXRpbCc7XG5cbi8qKlxuICogTmF2aWdhdGVzIHRvIHRoZSBtaWNyb2Zyb250ZW5kIG9mIGEgZ2l2ZW4ge0BsaW5rIFdvcmtiZW5jaE1lc3NhZ2VCb3hDYXBhYmlsaXR5fSB2aWEge0BsaW5rIFJvdXRlcn0uXG4gKlxuICogVW5saWtlIHtAbGluayBNaWNyb2Zyb250ZW5kTWVzc2FnZUJveENvbXBvbmVudH0sIHRoaXMgY29tcG9uZW50IHVzZXMgYSBgPHJvdXRlci1vdXRsZXQ+YCBpbnN0ZWFkIG9mIGEgYDxzY2ktcm91dGVyLW91dGxldD5gXG4gKiB0byBhbGxvdyBkaXJlY3QgaW50ZWdyYXRpb24gb2YgdGhlIGNvbnRlbnQgcHJvdmlkZWQgYnkgdGhlIHdvcmtiZW5jaCBob3N0IGFwcGxpY2F0aW9uIHZpYSB0aGUgQW5ndWxhciByb3V0ZXIuXG4gKlxuICogVGhpcyBjb21wb25lbnQgaXMgZGVzaWduZWQgdG8gYmUgZGlzcGxheWVkIGluIGEgd29ya2JlbmNoIG1lc3NhZ2UgYm94LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3Yi1taWNyb2Zyb250ZW5kLWhvc3QtbWVzc2FnZS1ib3gnLFxuICBzdHlsZVVybHM6IFsnLi9taWNyb2Zyb250ZW5kLWhvc3QtbWVzc2FnZS1ib3guY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL21pY3JvZnJvbnRlbmQtaG9zdC1tZXNzYWdlLWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBSb3V0ZXJPdXRsZXQsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWljcm9mcm9udGVuZEhvc3RNZXNzYWdlQm94Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuXG4gIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICBwdWJsaWMgY2FwYWJpbGl0eSE6IFdvcmtiZW5jaE1lc3NhZ2VCb3hDYXBhYmlsaXR5O1xuXG4gIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICBwdWJsaWMgcGFyYW1zITogTWFwPHN0cmluZywgdW5rbm93bj47XG5cbiAgcHJvdGVjdGVkIG91dGxldE5hbWU6IHN0cmluZztcbiAgcHJvdGVjdGVkIG91dGxldEluamVjdG9yITogSW5qZWN0b3I7XG5cbiAgcHJpdmF0ZSBfc2luZ2xlTmF2aWdhdGlvbkV4ZWN1dG9yID0gaW5qZWN0KFNJTkdMRV9OQVZJR0FUSU9OX0VYRUNVVE9SKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ob3N0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfZGlhbG9nOiDJtVdvcmtiZW5jaERpYWxvZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcikge1xuICAgIHRoaXMub3V0bGV0TmFtZSA9IE1FU1NBR0VfQk9YX0lEX1BSRUZJWC5jb25jYXQoVVVJRC5yYW5kb21VVUlEKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0U2l6ZVByb3BlcnRpZXMoKTtcbiAgICB0aGlzLmNyZWF0ZU91dGxldEluamVjdG9yKCk7XG4gICAgdGhpcy5uYXZpZ2F0ZSh0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCB7cGFyYW1zOiB0aGlzLnBhcmFtc30pLnRoZW4oc3VjY2VzcyA9PiB7XG4gICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlKEVycm9yKCdbTWVzc2FnZUJveE5hdmlnYXRlRXJyb3JdIE5hdmlnYXRpb24gY2FuY2VsZWQsIG1vc3QgbGlrZWx5IGJ5IGEgcm91dGUgZ3VhcmQgb3IgYSBwYXJhbGxlbCBuYXZpZ2F0aW9uLicpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBuYXZpZ2F0aW9uIGluIHRoZSBuYW1lZCBvdXRsZXQsIHN1YnN0aXR1dGluZyBwYXRoIHBhcmFtcyBpZiBhbnkuIFRvIGNsZWFyIG5hdmlnYXRpb24sIHBhc3MgYG51bGxgIGFzIHRoZSBwYXRoLlxuICAgKi9cbiAgcHJpdmF0ZSBuYXZpZ2F0ZShwYXRoOiBzdHJpbmcgfCBudWxsLCBleHRyYXM/OiB7cGFyYW1zPzogTWFwPHN0cmluZywgYW55Pn0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBwYXRoID0gTWljcm9mcm9udGVuZHMuc3Vic3RpdHV0ZU5hbWVkUGFyYW1ldGVycyhwYXRoLCBleHRyYXM/LnBhcmFtcyk7XG5cbiAgICBjb25zdCBvdXRsZXRDb21tYW5kczogQ29tbWFuZHMgfCBudWxsID0gKHBhdGggIT09IG51bGwgPyBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IFJvdXRpbmcucGF0aFRvQ29tbWFuZHMocGF0aCEpKSA6IG51bGwpO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBDb21tYW5kcyA9IFt7b3V0bGV0czoge1t0aGlzLm91dGxldE5hbWVdOiBvdXRsZXRDb21tYW5kc319XTtcbiAgICByZXR1cm4gdGhpcy5fc2luZ2xlTmF2aWdhdGlvbkV4ZWN1dG9yLnN1Ym1pdCgoKSA9PiB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIHtza2lwTG9jYXRpb25DaGFuZ2U6IHRydWUsIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZSd9KSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU91dGxldEluamVjdG9yKCk6IHZvaWQge1xuICAgIHRoaXMub3V0bGV0SW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLl9pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW3Byb3ZpZGVXb3JrYmVuY2hDbGllbnRNZXNzYWdlQm94SGFuZGxlKHRoaXMuY2FwYWJpbGl0eSwgdGhpcy5wYXJhbXMpXSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2l6ZVByb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgc2V0U3R5bGUodGhpcy5faG9zdCwge1xuICAgICAgJ3dpZHRoJzogdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuc2l6ZT8ud2lkdGggPz8gbnVsbCxcbiAgICAgICdtaW4td2lkdGgnOiB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5taW5XaWR0aCA/PyBudWxsLFxuICAgICAgJ21heC13aWR0aCc6IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1heFdpZHRoID8/IG51bGwsXG4gICAgICAnaGVpZ2h0JzogdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuc2l6ZT8uaGVpZ2h0ID8/IG51bGwsXG4gICAgICAnbWluLWhlaWdodCc6IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1pbkhlaWdodCA/PyBudWxsLFxuICAgICAgJ21heC1oZWlnaHQnOiB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5tYXhIZWlnaHQgPz8gbnVsbCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKG51bGwpLnRoZW4oKTsgLy8gUmVtb3ZlIHRoZSBvdXRsZXQgZnJvbSB0aGUgVVJMXG4gIH1cbn1cblxuLyoqXG4gKiBQcm92aWRlcyB0aGUge1dvcmtiZW5jaE1lc3NhZ2VCb3h9IGhhbmRsZSB0byB0aGUgcm91dGVkIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVXb3JrYmVuY2hDbGllbnRNZXNzYWdlQm94SGFuZGxlKGNhcGFiaWxpdHk6IFdvcmtiZW5jaE1lc3NhZ2VCb3hDYXBhYmlsaXR5LCBwYXJhbXM6IE1hcDxzdHJpbmcsIHVua25vd24+KTogU3RhdGljUHJvdmlkZXIge1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IFdvcmtiZW5jaE1lc3NhZ2VCb3gsXG4gICAgdXNlRmFjdG9yeTogKCk6IFdvcmtiZW5jaE1lc3NhZ2VCb3ggPT4ge1xuXG4gICAgICByZXR1cm4gbmV3IGNsYXNzIGltcGxlbWVudHMgV29ya2JlbmNoTWVzc2FnZUJveCB7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSBjYXBhYmlsaXR5ID0gY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBhcmFtcztcblxuICAgICAgICBwdWJsaWMgc2lnbmFsUmVhZHkoKTogdm9pZCB7XG4gICAgICAgICAgLy8gbm90aGluZyB0byBkbyBzaW5jZSBub3QgYW4gaWZyYW1lLWJhc2VkIG1pY3JvZnJvbnRlbmRcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9LFxuICB9O1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInJvdXRlcl9vdXRsZXQ7IGluamVjdG9yOiBvdXRsZXRJbmplY3RvclwiLz5cblxuPG5nLXRlbXBsYXRlICNyb3V0ZXJfb3V0bGV0PlxuICA8cm91dGVyLW91dGxldCBbbmFtZV09XCJvdXRsZXROYW1lXCIvPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL21pY3JvZnJvbnRlbmQtcGxhdGZvcm0vbWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94L21pY3JvZnJvbnRlbmQtaG9zdC1tZXNzYWdlLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1tZXNzYWdlLWJveC9taWNyb2Zyb250ZW5kLWhvc3QtbWVzc2FnZS1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFjLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixxQkFBcUIsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLG1CQUFtQixFQUFnQyxNQUFNLHlCQUF5QixDQUFDO0FBQzNGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRCxPQUFPLEVBQVMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDaEUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRXpDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUMsUUFB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LElBQUk7WUFDekQsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxTQUFTLElBQUksSUFBSTtZQUNoRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFNBQVMsSUFBSSxJQUFJO1NBQ2pFLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxpQ0FBaUM7SUFDL0QsQ0FBQzs4R0E5RFUsb0NBQW9DO2tHQUFwQyxvQ0FBb0MscUpDekNqRCwyS0FLQSxxSERnQ0ksWUFBWSwySkFDWixnQkFBZ0I7OzJGQUdQLG9DQUFvQztrQkFWaEQsU0FBUzsrQkFDRSxtQ0FBbUMsY0FHakMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjswSkFLTSxVQUFVO3NCQURoQixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztnQkFJaEIsTUFBTTtzQkFEWixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQzs7QUE0RHpCOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHNDQUFzQyxDQUFDLFVBQXlDLEVBQUUsTUFBNEI7SUFDNUgsT0FBTztRQUNMLE9BQU8sRUFBRSxtQkFBbUI7UUFDNUIsVUFBVSxFQUFFLEdBQXdCLEVBQUU7WUFFcEMsT0FBTyxJQUFJO2dCQUFBO29CQUNPLGVBQVUsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLFdBQU0sR0FBRyxNQUFNLENBQUM7Z0JBS2xDLENBQUM7Z0JBSFEsV0FBVztvQkFDaEIsd0RBQXdEO2dCQUMxRCxDQUFDO2FBQ0YsQ0FBQztRQUNKLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyNCBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgcnVuSW5JbmplY3Rpb25Db250ZXh0LCBTdGF0aWNQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dvcmtiZW5jaE1lc3NhZ2VCb3gsIFdvcmtiZW5jaE1lc3NhZ2VCb3hDYXBhYmlsaXR5fSBmcm9tICdAc2Npb24vd29ya2JlbmNoLWNsaWVudCc7XG5pbXBvcnQge1JvdXRpbmd9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy51dGlsJztcbmltcG9ydCB7Q29tbWFuZHN9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy5tb2RlbCc7XG5pbXBvcnQge1JvdXRlciwgUm91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtNRVNTQUdFX0JPWF9JRF9QUkVGSVh9IGZyb20gJy4uLy4uL3dvcmtiZW5jaC5jb25zdGFudHMnO1xuaW1wb3J0IHtVVUlEfSBmcm9tICdAc2Npb24vdG9vbGtpdC91dWlkJztcbmltcG9ydCB7ybVXb3JrYmVuY2hEaWFsb2d9IGZyb20gJy4uLy4uL2RpYWxvZy/JtXdvcmtiZW5jaC1kaWFsb2cnO1xuaW1wb3J0IHtNaWNyb2Zyb250ZW5kc30gZnJvbSAnLi4vY29tbW9uL21pY3JvZnJvbnRlbmQudXRpbCc7XG5pbXBvcnQge0FOR1VMQVJfUk9VVEVSX01VVEVYfSBmcm9tICcuLi8uLi9leGVjdXRvci9zaW5nbGUtdGFzay1leGVjdXRvcic7XG5pbXBvcnQge3NldFN0eWxlfSBmcm9tICcuLi8uLi9jb21tb24vZG9tLnV0aWwnO1xuXG4vKipcbiAqIE5hdmlnYXRlcyB0byB0aGUgbWljcm9mcm9udGVuZCBvZiBhIGdpdmVuIHtAbGluayBXb3JrYmVuY2hNZXNzYWdlQm94Q2FwYWJpbGl0eX0gdmlhIHtAbGluayBSb3V0ZXJ9LlxuICpcbiAqIFVubGlrZSB7QGxpbmsgTWljcm9mcm9udGVuZE1lc3NhZ2VCb3hDb21wb25lbnR9LCB0aGlzIGNvbXBvbmVudCB1c2VzIGEgYDxyb3V0ZXItb3V0bGV0PmAgaW5zdGVhZCBvZiBhIGA8c2NpLXJvdXRlci1vdXRsZXQ+YFxuICogdG8gYWxsb3cgZGlyZWN0IGludGVncmF0aW9uIG9mIHRoZSBjb250ZW50IHByb3ZpZGVkIGJ5IHRoZSB3b3JrYmVuY2ggaG9zdCBhcHBsaWNhdGlvbiB2aWEgdGhlIEFuZ3VsYXIgcm91dGVyLlxuICpcbiAqIFRoaXMgY29tcG9uZW50IGlzIGRlc2lnbmVkIHRvIGJlIGRpc3BsYXllZCBpbiBhIHdvcmtiZW5jaCBtZXNzYWdlIGJveC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2ItbWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94JyxcbiAgc3R5bGVVcmxzOiBbJy4vbWljcm9mcm9udGVuZC1ob3N0LW1lc3NhZ2UtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9taWNyb2Zyb250ZW5kLWhvc3QtbWVzc2FnZS1ib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyT3V0bGV0LFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1pY3JvZnJvbnRlbmRIb3N0TWVzc2FnZUJveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0IHtcblxuICBASW5wdXQoe3JlcXVpcmVkOiB0cnVlfSlcbiAgcHVibGljIGNhcGFiaWxpdHkhOiBXb3JrYmVuY2hNZXNzYWdlQm94Q2FwYWJpbGl0eTtcblxuICBASW5wdXQoe3JlcXVpcmVkOiB0cnVlfSlcbiAgcHVibGljIHBhcmFtcyE6IE1hcDxzdHJpbmcsIHVua25vd24+O1xuXG4gIHByb3RlY3RlZCBvdXRsZXROYW1lOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBvdXRsZXRJbmplY3RvciE6IEluamVjdG9yO1xuXG4gIC8qKiBNdXRleCB0byBzZXJpYWxpemUgQW5ndWxhciBSb3V0ZXIgbmF2aWdhdGlvbiByZXF1ZXN0cywgcHJldmVudGluZyB0aGUgY2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgaW5pdGlhdGVkIGFzeW5jaHJvbm91cyBuYXZpZ2F0aW9ucy4gKi9cbiAgcHJpdmF0ZSBfYW5ndWxhclJvdXRlck11dGV4ID0gaW5qZWN0KEFOR1VMQVJfUk9VVEVSX01VVEVYKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ob3N0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfZGlhbG9nOiDJtVdvcmtiZW5jaERpYWxvZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcikge1xuICAgIHRoaXMub3V0bGV0TmFtZSA9IE1FU1NBR0VfQk9YX0lEX1BSRUZJWC5jb25jYXQoVVVJRC5yYW5kb21VVUlEKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0U2l6ZVByb3BlcnRpZXMoKTtcbiAgICB0aGlzLmNyZWF0ZU91dGxldEluamVjdG9yKCk7XG4gICAgdGhpcy5uYXZpZ2F0ZSh0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCB7cGFyYW1zOiB0aGlzLnBhcmFtc30pLnRoZW4oc3VjY2VzcyA9PiB7XG4gICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlKEVycm9yKCdbTWVzc2FnZUJveE5hdmlnYXRlRXJyb3JdIE5hdmlnYXRpb24gY2FuY2VsZWQsIG1vc3QgbGlrZWx5IGJ5IGEgcm91dGUgZ3VhcmQgb3IgYSBwYXJhbGxlbCBuYXZpZ2F0aW9uLicpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBuYXZpZ2F0aW9uIGluIHRoZSBuYW1lZCBvdXRsZXQsIHN1YnN0aXR1dGluZyBwYXRoIHBhcmFtcyBpZiBhbnkuIFRvIGNsZWFyIG5hdmlnYXRpb24sIHBhc3MgYG51bGxgIGFzIHRoZSBwYXRoLlxuICAgKi9cbiAgcHJpdmF0ZSBuYXZpZ2F0ZShwYXRoOiBzdHJpbmcgfCBudWxsLCBleHRyYXM/OiB7cGFyYW1zPzogTWFwPHN0cmluZywgYW55Pn0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBwYXRoID0gTWljcm9mcm9udGVuZHMuc3Vic3RpdHV0ZU5hbWVkUGFyYW1ldGVycyhwYXRoLCBleHRyYXM/LnBhcmFtcyk7XG5cbiAgICBjb25zdCBvdXRsZXRDb21tYW5kczogQ29tbWFuZHMgfCBudWxsID0gKHBhdGggIT09IG51bGwgPyBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IFJvdXRpbmcucGF0aFRvQ29tbWFuZHMocGF0aCEpKSA6IG51bGwpO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBDb21tYW5kcyA9IFt7b3V0bGV0czoge1t0aGlzLm91dGxldE5hbWVdOiBvdXRsZXRDb21tYW5kc319XTtcbiAgICByZXR1cm4gdGhpcy5fYW5ndWxhclJvdXRlck11dGV4LnN1Ym1pdCgoKSA9PiB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIHtza2lwTG9jYXRpb25DaGFuZ2U6IHRydWUsIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZSd9KSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU91dGxldEluamVjdG9yKCk6IHZvaWQge1xuICAgIHRoaXMub3V0bGV0SW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLl9pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW3Byb3ZpZGVXb3JrYmVuY2hDbGllbnRNZXNzYWdlQm94SGFuZGxlKHRoaXMuY2FwYWJpbGl0eSwgdGhpcy5wYXJhbXMpXSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2l6ZVByb3BlcnRpZXMoKTogdm9pZCB7XG4gICAgc2V0U3R5bGUodGhpcy5faG9zdCwge1xuICAgICAgJ3dpZHRoJzogdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuc2l6ZT8ud2lkdGggPz8gbnVsbCxcbiAgICAgICdtaW4td2lkdGgnOiB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5taW5XaWR0aCA/PyBudWxsLFxuICAgICAgJ21heC13aWR0aCc6IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1heFdpZHRoID8/IG51bGwsXG4gICAgICAnaGVpZ2h0JzogdGhpcy5jYXBhYmlsaXR5LnByb3BlcnRpZXMuc2l6ZT8uaGVpZ2h0ID8/IG51bGwsXG4gICAgICAnbWluLWhlaWdodCc6IHRoaXMuY2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNpemU/Lm1pbkhlaWdodCA/PyBudWxsLFxuICAgICAgJ21heC1oZWlnaHQnOiB0aGlzLmNhcGFiaWxpdHkucHJvcGVydGllcy5zaXplPy5tYXhIZWlnaHQgPz8gbnVsbCxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKG51bGwpLnRoZW4oKTsgLy8gUmVtb3ZlIHRoZSBvdXRsZXQgZnJvbSB0aGUgVVJMXG4gIH1cbn1cblxuLyoqXG4gKiBQcm92aWRlcyB0aGUge1dvcmtiZW5jaE1lc3NhZ2VCb3h9IGhhbmRsZSB0byB0aGUgcm91dGVkIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVXb3JrYmVuY2hDbGllbnRNZXNzYWdlQm94SGFuZGxlKGNhcGFiaWxpdHk6IFdvcmtiZW5jaE1lc3NhZ2VCb3hDYXBhYmlsaXR5LCBwYXJhbXM6IE1hcDxzdHJpbmcsIHVua25vd24+KTogU3RhdGljUHJvdmlkZXIge1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IFdvcmtiZW5jaE1lc3NhZ2VCb3gsXG4gICAgdXNlRmFjdG9yeTogKCk6IFdvcmtiZW5jaE1lc3NhZ2VCb3ggPT4ge1xuXG4gICAgICByZXR1cm4gbmV3IGNsYXNzIGltcGxlbWVudHMgV29ya2JlbmNoTWVzc2FnZUJveCB7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSBjYXBhYmlsaXR5ID0gY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBhcmFtcztcblxuICAgICAgICBwdWJsaWMgc2lnbmFsUmVhZHkoKTogdm9pZCB7XG4gICAgICAgICAgLy8gbm90aGluZyB0byBkbyBzaW5jZSBub3QgYW4gaWZyYW1lLWJhc2VkIG1pY3JvZnJvbnRlbmRcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9LFxuICB9O1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInJvdXRlcl9vdXRsZXQ7IGluamVjdG9yOiBvdXRsZXRJbmplY3RvclwiLz5cblxuPG5nLXRlbXBsYXRlICNyb3V0ZXJfb3V0bGV0PlxuICA8cm91dGVyLW91dGxldCBbbmFtZV09XCJvdXRsZXROYW1lXCIvPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -16,7 +16,7 @@ import { NgTemplateOutlet } from '@angular/common';
16
16
  import { Defined } from '@scion/toolkit/util';
17
17
  import { POPUP_ID_PREFIX } from '../../workbench.constants';
18
18
  import { Microfrontends } from '../common/microfrontend.util';
19
- import { SINGLE_NAVIGATION_EXECUTOR } from '../../executor/single-task-executor';
19
+ import { ANGULAR_ROUTER_MUTEX } from '../../executor/single-task-executor';
20
20
  import { Objects } from '../../common/objects.util';
21
21
  import * as i0 from "@angular/core";
22
22
  import * as i1 from "../../popup/popup.config";
@@ -31,7 +31,8 @@ export class MicrofrontendHostPopupComponent {
31
31
  constructor(popup, _injector, _router) {
32
32
  this._injector = _injector;
33
33
  this._router = _router;
34
- this._singleNavigationExecutor = inject(SINGLE_NAVIGATION_EXECUTOR);
34
+ /** Mutex to serialize Angular Router navigation requests, preventing the cancellation of previously initiated asynchronous navigations. */
35
+ this._angularRouterMutex = inject(ANGULAR_ROUTER_MUTEX);
35
36
  const popupContext = popup.input;
36
37
  const capability = popupContext.capability;
37
38
  const path = Defined.orElseThrow(capability.properties.path, () => Error(`[PopupProviderError] Missing required path for popup capability [application="${capability.metadata.appSymbolicName}", capability=${Objects.toMatrixNotation(capability.qualifier)}]`));
@@ -44,7 +45,7 @@ export class MicrofrontendHostPopupComponent {
44
45
  // Perform navigation in the named router outlet.
45
46
  this.navigate(path, { outletName: this.outletName, params }).then(success => {
46
47
  if (!success) {
47
- popup.closeWithError(Error('[PopupNavigateError] Navigation canceled, most likely by a route guard or a parallel navigation.'));
48
+ popup.close(Error('[PopupNavigateError] Navigation canceled, most likely by a route guard or a parallel navigation.'));
48
49
  }
49
50
  });
50
51
  }
@@ -55,7 +56,7 @@ export class MicrofrontendHostPopupComponent {
55
56
  path = Microfrontends.substituteNamedParameters(path, extras.params);
56
57
  const outletCommands = (path !== null ? runInInjectionContext(this._injector, () => Routing.pathToCommands(path)) : null);
57
58
  const commands = [{ outlets: { [extras.outletName]: outletCommands } }];
58
- return this._singleNavigationExecutor.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
59
+ return this._angularRouterMutex.submit(() => this._router.navigate(commands, { skipLocationChange: true, queryParamsHandling: 'preserve' }));
59
60
  }
60
61
  ngOnDestroy() {
61
62
  this.navigate(null, { outletName: this.outletName }).then(); // Remove the outlet from the URL
@@ -84,12 +85,12 @@ function provideWorkbenchPopupHandle(popupContext) {
84
85
  this.params = popupContext.params;
85
86
  this.referrer = popupContext.referrer;
86
87
  }
88
+ setResult(result) {
89
+ popup.setResult(result);
90
+ }
87
91
  close(result) {
88
92
  popup.close(result);
89
93
  }
90
- closeWithError(error) {
91
- popup.closeWithError(error);
92
- }
93
94
  signalReady() {
94
95
  // nothing to do since not an iframe-based microfrontend
95
96
  }
@@ -97,4 +98,4 @@ function provideWorkbenchPopupHandle(popupContext) {
97
98
  },
98
99
  };
99
100
  }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL21pY3JvZnJvbnRlbmQtcGxhdGZvcm0vbWljcm9mcm9udGVuZC1ob3N0LXBvcHVwL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC9taWNyb2Zyb250ZW5kLWhvc3QtcG9wdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQWEscUJBQXFCLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBQyxjQUFjLEVBQWdCLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRW5ELE9BQU8sRUFBUyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsS0FBSyxFQUFTLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDL0UsT0FBTyxFQUFDLE9BQU8s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QUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjs7QUE4Q0g7O0dBRUc7QUFDSCxTQUFTLDJCQUEyQixDQUFDLFlBQTJCO0lBQzlELE9BQU87UUFDTCxPQUFPLEVBQUUsY0FBYztRQUN2QixVQUFVLEVBQUUsR0FBbUIsRUFBRTtZQUMvQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFNUIsT0FBTyxJQUFJO2dCQUFBO29CQUNPLGVBQVUsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDO29CQUNyQyxXQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQztvQkFDN0IsYUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7Z0JBYW5ELENBQUM7Z0JBWFEsS0FBSyxDQUFVLE1BQXNCO29CQUMxQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN0QixDQUFDO2dCQUVNLGNBQWMsQ0FBQyxLQUFxQjtvQkFDekMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUIsQ0FBQztnQkFFTSxXQUFXO29CQUNoQix3REFBd0Q7Z0JBQzFELENBQUM7YUFDRixDQUFDO1FBQ0osQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgaW5qZWN0LCBJbmplY3RvciwgT25EZXN0cm95LCBydW5JbkluamVjdGlvbkNvbnRleHQsIFN0YXRpY1Byb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V29ya2JlbmNoUG9wdXAsIMm1UG9wdXBDb250ZXh0fSBmcm9tICdAc2Npb24vd29ya2JlbmNoLWNsaWVudCc7XG5pbXBvcnQge1JvdXRpbmd9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy51dGlsJztcbmltcG9ydCB7Q29tbWFuZHN9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy5tb2RlbCc7XG5pbXBvcnQge1JvdXRlciwgUm91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQb3B1cCwgybVQb3B1cH0gZnJvbSAnLi4vLi4vcG9wdXAvcG9wdXAuY29uZmlnJztcbmltcG9ydCB7TmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RGVmaW5lZH0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXRpbCc7XG5pbXBvcnQge1BPUFVQX0lEX1BSRUZJWH0gZnJvbSAnLi4vLi4vd29ya2JlbmNoLmNvbnN0YW50cyc7XG5pbXBvcnQge01pY3JvZnJvbnRlbmRzfSBmcm9tICcuLi9jb21tb24vbWljcm9mcm9udGVuZC51dGlsJztcbmltcG9ydCB7U0lOR0xFX05BVklHQVRJT05fRVhFQ1VUT1J9IGZyb20gJy4uLy4uL2V4ZWN1dG9yL3NpbmdsZS10YXNrLWV4ZWN1dG9yJztcbmltcG9ydCB7T2JqZWN0c30gZnJvbSAnLi4vLi4vY29tbW9uL29iamVjdHMudXRpbCc7XG5cbi8qKlxuICogRGlzcGxheXMgdGhlIG1pY3JvZnJvbnRlbmQgb2YgYSBwb3B1cCBjYXBhYmlsaXR5IHByb3ZpZGVkIGJ5IHRoZSBob3N0IGluc2lkZSBhIHdvcmtiZW5jaCBwb3B1cC5cbiAqXG4gKiBVbmxpa2Uge0BsaW5rIE1pY3JvZnJvbnRlbmRQb3B1cENvbXBvbmVudH0sIHRoaXMgY29tcG9uZW50IHVzZXMgYSBgPHJvdXRlci1vdXRsZXQ+YCBpbnN0ZWFkIG9mIGEgYDxzY2ktcm91dGVyLW91dGxldD5gXG4gKiBiZWNhdXNlIGludGVncmF0aW5nIHRoZSBtaWNyb2Zyb250ZW5kIGRpcmVjdGx5IHZpYSBBbmd1bGFyIHJvdXRlciBhbmQgbm90IHZpYSBpZnJhbWUuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLW1pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cCcsXG4gIHN0eWxlVXJsczogWycuL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vbWljcm9mcm9udGVuZC1ob3N0LXBvcHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlck91dGxldCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb2Zyb250ZW5kSG9zdFBvcHVwQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwdWJsaWMgcmVhZG9ubHkgb3V0bGV0TmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgb3V0bGV0SW5qZWN0b3I6IEluamVjdG9yO1xuXG4gIHByaXZhdGUgX3NpbmdsZU5hdmlnYXRpb25FeGVjdXRvciA9IGluamVjdChTSU5HTEVfTkFWSUdBVElPTl9FWEVDVVRPUik7XG5cbiAgY29uc3RydWN0b3IocG9wdXA6IMm1UG9wdXA8ybVQb3B1cENvbnRleHQ+LFxuICAgICAgICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyKSB7XG4gICAgY29uc3QgcG9wdXBDb250ZXh0ID0gcG9wdXAuaW5wdXQhO1xuICAgIGNvbnN0IGNhcGFiaWxpdHkgPSBwb3B1cENvbnRleHQuY2FwYWJpbGl0eTtcbiAgICBjb25zdCBwYXRoID0gRGVmaW5lZC5vckVsc2VUaHJvdyhjYXBhYmlsaXR5LnByb3BlcnRpZXMucGF0aCwgKCkgPT4gRXJyb3IoYFtQb3B1cFByb3ZpZGVyRXJyb3JdIE1pc3NpbmcgcmVxdWlyZWQgcGF0aCBmb3IgcG9wdXAgY2FwYWJpbGl0eSBbYXBwbGljYXRpb249XCIke2NhcGFiaWxpdHkubWV0YWRhdGEhLmFwcFN5bWJvbGljTmFtZX1cIiwgY2FwYWJpbGl0eT0ke09iamVjdHMudG9NYXRyaXhOb3RhdGlvbihjYXBhYmlsaXR5LnF1YWxpZmllcil9XWApKTtcbiAgICBjb25zdCBwYXJhbXMgPSBwb3B1cENvbnRleHQucGFyYW1zO1xuICAgIHRoaXMub3V0bGV0TmFtZSA9IFBPUFVQX0lEX1BSRUZJWC5jb25jYXQocG9wdXAuaWQpO1xuICAgIHRoaXMub3V0bGV0SW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLl9pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW3Byb3ZpZGVXb3JrYmVuY2hQb3B1cEhhbmRsZShwb3B1cENvbnRleHQpXSxcbiAgICB9KTtcblxuICAgIC8vIFBlcmZvcm0gbmF2aWdhdGlvbiBpbiB0aGUgbmFtZWQgcm91dGVyIG91dGxldC5cbiAgICB0aGlzLm5hdmlnYXRlKHBhdGgsIHtvdXRsZXROYW1lOiB0aGlzLm91dGxldE5hbWUsIHBhcmFtc30pLnRoZW4oc3VjY2VzcyA9PiB7XG4gICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgcG9wdXAuY2xvc2VXaXRoRXJyb3IoRXJyb3IoJ1tQb3B1cE5hdmlnYXRlRXJyb3JdIE5hdmlnYXRpb24gY2FuY2VsZWQsIG1vc3QgbGlrZWx5IGJ5IGEgcm91dGUgZ3VhcmQgb3IgYSBwYXJhbGxlbCBuYXZpZ2F0aW9uLicpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBuYXZpZ2F0aW9uIGluIHRoZSBzcGVjaWZpZWQgb3V0bGV0LCBzdWJzdGl0dXRpbmcgcGF0aCBwYXJhbXMgaWYgYW55LiBUbyBjbGVhciBuYXZpZ2F0aW9uLCBwYXNzIGBudWxsYCBhcyB0aGUgcGF0aC5cbiAgICovXG4gIHByaXZhdGUgbmF2aWdhdGUocGF0aDogc3RyaW5nIHwgbnVsbCwgZXh0cmFzOiB7b3V0bGV0TmFtZTogc3RyaW5nOyBwYXJhbXM/OiBNYXA8c3RyaW5nLCBhbnk+fSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHBhdGggPSBNaWNyb2Zyb250ZW5kcy5zdWJzdGl0dXRlTmFtZWRQYXJhbWV0ZXJzKHBhdGgsIGV4dHJhcy5wYXJhbXMpO1xuXG4gICAgY29uc3Qgb3V0bGV0Q29tbWFuZHM6IENvbW1hbmRzIHwgbnVsbCA9IChwYXRoICE9PSBudWxsID8gcnVuSW5JbmplY3Rpb25Db250ZXh0KHRoaXMuX2luamVjdG9yLCAoKSA9PiBSb3V0aW5nLnBhdGhUb0NvbW1hbmRzKHBhdGghKSkgOiBudWxsKTtcbiAgICBjb25zdCBjb21tYW5kczogQ29tbWFuZHMgPSBbe291dGxldHM6IHtbZXh0cmFzLm91dGxldE5hbWVdOiBvdXRsZXRDb21tYW5kc319XTtcbiAgICByZXR1cm4gdGhpcy5fc2luZ2xlTmF2aWdhdGlvbkV4ZWN1dG9yLnN1Ym1pdCgoKSA9PiB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIHtza2lwTG9jYXRpb25DaGFuZ2U6IHRydWUsIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZSd9KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZShudWxsLCB7b3V0bGV0TmFtZTogdGhpcy5vdXRsZXROYW1lfSkudGhlbigpOyAvLyBSZW1vdmUgdGhlIG91dGxldCBmcm9tIHRoZSBVUkxcbiAgfVxufVxuXG4vKipcbiAqIFByb3ZpZGVzIHRoZSB7V29ya2JlbmNoUG9wdXB9IGhhbmRsZSB0byB0aGUgcm91dGVkIGNvbXBvbmVudC5cbiAqL1xuZnVuY3Rpb24gcHJvdmlkZVdvcmtiZW5jaFBvcHVwSGFuZGxlKHBvcHVwQ29udGV4dDogybVQb3B1cENvbnRleHQpOiBTdGF0aWNQcm92aWRlciB7XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTogV29ya2JlbmNoUG9wdXAsXG4gICAgdXNlRmFjdG9yeTogKCk6IFdvcmtiZW5jaFBvcHVwID0+IHtcbiAgICAgIGNvbnN0IHBvcHVwID0gaW5qZWN0KFBvcHVwKTtcblxuICAgICAgcmV0dXJuIG5ldyBjbGFzcyBpbXBsZW1lbnRzIFdvcmtiZW5jaFBvcHVwIHtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGNhcGFiaWxpdHkgPSBwb3B1cENvbnRleHQuY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBvcHVwQ29udGV4dC5wYXJhbXM7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSByZWZlcnJlciA9IHBvcHVwQ29udGV4dC5yZWZlcnJlcjtcblxuICAgICAgICBwdWJsaWMgY2xvc2U8UiA9IGFueT4ocmVzdWx0PzogUiB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgICAgICAgIHBvcHVwLmNsb3NlKHJlc3VsdCk7XG4gICAgICAgIH1cblxuICAgICAgICBwdWJsaWMgY2xvc2VXaXRoRXJyb3IoZXJyb3I6IEVycm9yIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgICAgICAgcG9wdXAuY2xvc2VXaXRoRXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgcHVibGljIHNpZ25hbFJlYWR5KCk6IHZvaWQge1xuICAgICAgICAgIC8vIG5vdGhpbmcgdG8gZG8gc2luY2Ugbm90IGFuIGlmcmFtZS1iYXNlZCBtaWNyb2Zyb250ZW5kXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSxcbiAgfTtcbn1cbiIsIjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyb3V0ZXJfb3V0bGV0OyBpbmplY3Rvcjogb3V0bGV0SW5qZWN0b3JcIi8+XG5cbjxuZy10ZW1wbGF0ZSAjcm91dGVyX291dGxldD5cbiAgPHJvdXRlci1vdXRsZXQgW25hbWVdPVwib3V0bGV0TmFtZVwiLz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1ob3N0LXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL3dvcmtiZW5jaC9zcmMvbGliL21pY3JvZnJvbnRlbmQtcGxhdGZvcm0vbWljcm9mcm9udGVuZC1ob3N0LXBvcHVwL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC9taWNyb2Zyb250ZW5kLWhvc3QtcG9wdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQWEscUJBQXFCLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBQyxjQUFjLEVBQWdCLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRW5ELE9BQU8sRUFBUyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsS0FBSyxFQUFTLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8s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LElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjtxQkFDakI7O0FBK0NIOztHQUVHO0FBQ0gsU0FBUywyQkFBMkIsQ0FBQyxZQUEyQjtJQUM5RCxPQUFPO1FBQ0wsT0FBTyxFQUFFLGNBQWM7UUFDdkIsVUFBVSxFQUFFLEdBQW1CLEVBQUU7WUFDL0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTVCLE9BQU8sSUFBSTtnQkFBQTtvQkFDTyxlQUFVLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztvQkFDckMsV0FBTSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUM7b0JBQzdCLGFBQVEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO2dCQWFuRCxDQUFDO2dCQVhRLFNBQVMsQ0FBQyxNQUFVO29CQUN6QixLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMxQixDQUFDO2dCQUVNLEtBQUssQ0FBQyxNQUFrQjtvQkFDN0IsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdEIsQ0FBQztnQkFFTSxXQUFXO29CQUNoQix3REFBd0Q7Z0JBQzFELENBQUM7YUFDRixDQUFDO1FBQ0osQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDI0IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgaW5qZWN0LCBJbmplY3RvciwgT25EZXN0cm95LCBydW5JbkluamVjdGlvbkNvbnRleHQsIFN0YXRpY1Byb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V29ya2JlbmNoUG9wdXAsIMm1UG9wdXBDb250ZXh0fSBmcm9tICdAc2Npb24vd29ya2JlbmNoLWNsaWVudCc7XG5pbXBvcnQge1JvdXRpbmd9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy51dGlsJztcbmltcG9ydCB7Q29tbWFuZHN9IGZyb20gJy4uLy4uL3JvdXRpbmcvcm91dGluZy5tb2RlbCc7XG5pbXBvcnQge1JvdXRlciwgUm91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtQb3B1cCwgybVQb3B1cH0gZnJvbSAnLi4vLi4vcG9wdXAvcG9wdXAuY29uZmlnJztcbmltcG9ydCB7TmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RGVmaW5lZH0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvdXRpbCc7XG5pbXBvcnQge1BPUFVQX0lEX1BSRUZJWH0gZnJvbSAnLi4vLi4vd29ya2JlbmNoLmNvbnN0YW50cyc7XG5pbXBvcnQge01pY3JvZnJvbnRlbmRzfSBmcm9tICcuLi9jb21tb24vbWljcm9mcm9udGVuZC51dGlsJztcbmltcG9ydCB7QU5HVUxBUl9ST1VURVJfTVVURVh9IGZyb20gJy4uLy4uL2V4ZWN1dG9yL3NpbmdsZS10YXNrLWV4ZWN1dG9yJztcbmltcG9ydCB7T2JqZWN0c30gZnJvbSAnLi4vLi4vY29tbW9uL29iamVjdHMudXRpbCc7XG5cbi8qKlxuICogRGlzcGxheXMgdGhlIG1pY3JvZnJvbnRlbmQgb2YgYSBwb3B1cCBjYXBhYmlsaXR5IHByb3ZpZGVkIGJ5IHRoZSBob3N0IGluc2lkZSBhIHdvcmtiZW5jaCBwb3B1cC5cbiAqXG4gKiBVbmxpa2Uge0BsaW5rIE1pY3JvZnJvbnRlbmRQb3B1cENvbXBvbmVudH0sIHRoaXMgY29tcG9uZW50IHVzZXMgYSBgPHJvdXRlci1vdXRsZXQ+YCBpbnN0ZWFkIG9mIGEgYDxzY2ktcm91dGVyLW91dGxldD5gXG4gKiBiZWNhdXNlIGludGVncmF0aW5nIHRoZSBtaWNyb2Zyb250ZW5kIGRpcmVjdGx5IHZpYSBBbmd1bGFyIHJvdXRlciBhbmQgbm90IHZpYSBpZnJhbWUuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLW1pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cCcsXG4gIHN0eWxlVXJsczogWycuL21pY3JvZnJvbnRlbmQtaG9zdC1wb3B1cC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vbWljcm9mcm9udGVuZC1ob3N0LXBvcHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlck91dGxldCxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb2Zyb250ZW5kSG9zdFBvcHVwQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwdWJsaWMgcmVhZG9ubHkgb3V0bGV0TmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgb3V0bGV0SW5qZWN0b3I6IEluamVjdG9yO1xuXG4gIC8qKiBNdXRleCB0byBzZXJpYWxpemUgQW5ndWxhciBSb3V0ZXIgbmF2aWdhdGlvbiByZXF1ZXN0cywgcHJldmVudGluZyB0aGUgY2FuY2VsbGF0aW9uIG9mIHByZXZpb3VzbHkgaW5pdGlhdGVkIGFzeW5jaHJvbm91cyBuYXZpZ2F0aW9ucy4gKi9cbiAgcHJpdmF0ZSBfYW5ndWxhclJvdXRlck11dGV4ID0gaW5qZWN0KEFOR1VMQVJfUk9VVEVSX01VVEVYKTtcblxuICBjb25zdHJ1Y3Rvcihwb3B1cDogybVQb3B1cDzJtVBvcHVwQ29udGV4dD4sXG4gICAgICAgICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIpIHtcbiAgICBjb25zdCBwb3B1cENvbnRleHQgPSBwb3B1cC5pbnB1dCE7XG4gICAgY29uc3QgY2FwYWJpbGl0eSA9IHBvcHVwQ29udGV4dC5jYXBhYmlsaXR5O1xuICAgIGNvbnN0IHBhdGggPSBEZWZpbmVkLm9yRWxzZVRocm93KGNhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCAoKSA9PiBFcnJvcihgW1BvcHVwUHJvdmlkZXJFcnJvcl0gTWlzc2luZyByZXF1aXJlZCBwYXRoIGZvciBwb3B1cCBjYXBhYmlsaXR5IFthcHBsaWNhdGlvbj1cIiR7Y2FwYWJpbGl0eS5tZXRhZGF0YSEuYXBwU3ltYm9saWNOYW1lfVwiLCBjYXBhYmlsaXR5PSR7T2JqZWN0cy50b01hdHJpeE5vdGF0aW9uKGNhcGFiaWxpdHkucXVhbGlmaWVyKX1dYCkpO1xuICAgIGNvbnN0IHBhcmFtcyA9IHBvcHVwQ29udGV4dC5wYXJhbXM7XG4gICAgdGhpcy5vdXRsZXROYW1lID0gUE9QVVBfSURfUFJFRklYLmNvbmNhdChwb3B1cC5pZCk7XG4gICAgdGhpcy5vdXRsZXRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZVdvcmtiZW5jaFBvcHVwSGFuZGxlKHBvcHVwQ29udGV4dCldLFxuICAgIH0pO1xuXG4gICAgLy8gUGVyZm9ybSBuYXZpZ2F0aW9uIGluIHRoZSBuYW1lZCByb3V0ZXIgb3V0bGV0LlxuICAgIHRoaXMubmF2aWdhdGUocGF0aCwge291dGxldE5hbWU6IHRoaXMub3V0bGV0TmFtZSwgcGFyYW1zfSkudGhlbihzdWNjZXNzID0+IHtcbiAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICBwb3B1cC5jbG9zZShFcnJvcignW1BvcHVwTmF2aWdhdGVFcnJvcl0gTmF2aWdhdGlvbiBjYW5jZWxlZCwgbW9zdCBsaWtlbHkgYnkgYSByb3V0ZSBndWFyZCBvciBhIHBhcmFsbGVsIG5hdmlnYXRpb24uJykpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIG5hdmlnYXRpb24gaW4gdGhlIHNwZWNpZmllZCBvdXRsZXQsIHN1YnN0aXR1dGluZyBwYXRoIHBhcmFtcyBpZiBhbnkuIFRvIGNsZWFyIG5hdmlnYXRpb24sIHBhc3MgYG51bGxgIGFzIHRoZSBwYXRoLlxuICAgKi9cbiAgcHJpdmF0ZSBuYXZpZ2F0ZShwYXRoOiBzdHJpbmcgfCBudWxsLCBleHRyYXM6IHtvdXRsZXROYW1lOiBzdHJpbmc7IHBhcmFtcz86IE1hcDxzdHJpbmcsIGFueT59KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcGF0aCA9IE1pY3JvZnJvbnRlbmRzLnN1YnN0aXR1dGVOYW1lZFBhcmFtZXRlcnMocGF0aCwgZXh0cmFzLnBhcmFtcyk7XG5cbiAgICBjb25zdCBvdXRsZXRDb21tYW5kczogQ29tbWFuZHMgfCBudWxsID0gKHBhdGggIT09IG51bGwgPyBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IFJvdXRpbmcucGF0aFRvQ29tbWFuZHMocGF0aCEpKSA6IG51bGwpO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBDb21tYW5kcyA9IFt7b3V0bGV0czoge1tleHRyYXMub3V0bGV0TmFtZV06IG91dGxldENvbW1hbmRzfX1dO1xuICAgIHJldHVybiB0aGlzLl9hbmd1bGFyUm91dGVyTXV0ZXguc3VibWl0KCgpID0+IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShjb21tYW5kcywge3NraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZSwgcXVlcnlQYXJhbXNIYW5kbGluZzogJ3ByZXNlcnZlJ30pKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKG51bGwsIHtvdXRsZXROYW1lOiB0aGlzLm91dGxldE5hbWV9KS50aGVuKCk7IC8vIFJlbW92ZSB0aGUgb3V0bGV0IGZyb20gdGhlIFVSTFxuICB9XG59XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIHtXb3JrYmVuY2hQb3B1cH0gaGFuZGxlIHRvIHRoZSByb3V0ZWQgY29tcG9uZW50LlxuICovXG5mdW5jdGlvbiBwcm92aWRlV29ya2JlbmNoUG9wdXBIYW5kbGUocG9wdXBDb250ZXh0OiDJtVBvcHVwQ29udGV4dCk6IFN0YXRpY1Byb3ZpZGVyIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBXb3JrYmVuY2hQb3B1cCxcbiAgICB1c2VGYWN0b3J5OiAoKTogV29ya2JlbmNoUG9wdXAgPT4ge1xuICAgICAgY29uc3QgcG9wdXAgPSBpbmplY3QoUG9wdXApO1xuXG4gICAgICByZXR1cm4gbmV3IGNsYXNzPFIgPSB1bmtub3duPiBpbXBsZW1lbnRzIFdvcmtiZW5jaFBvcHVwIHtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGNhcGFiaWxpdHkgPSBwb3B1cENvbnRleHQuY2FwYWJpbGl0eTtcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBhcmFtcyA9IHBvcHVwQ29udGV4dC5wYXJhbXM7XG4gICAgICAgIHB1YmxpYyByZWFkb25seSByZWZlcnJlciA9IHBvcHVwQ29udGV4dC5yZWZlcnJlcjtcblxuICAgICAgICBwdWJsaWMgc2V0UmVzdWx0KHJlc3VsdD86IFIpOiB2b2lkIHtcbiAgICAgICAgICBwb3B1cC5zZXRSZXN1bHQocmVzdWx0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHB1YmxpYyBjbG9zZShyZXN1bHQ/OiBSIHwgRXJyb3IpOiB2b2lkIHtcbiAgICAgICAgICBwb3B1cC5jbG9zZShyZXN1bHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcHVibGljIHNpZ25hbFJlYWR5KCk6IHZvaWQge1xuICAgICAgICAgIC8vIG5vdGhpbmcgdG8gZG8gc2luY2Ugbm90IGFuIGlmcmFtZS1iYXNlZCBtaWNyb2Zyb250ZW5kXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSxcbiAgfTtcbn1cbiIsIjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyb3V0ZXJfb3V0bGV0OyBpbmplY3Rvcjogb3V0bGV0SW5qZWN0b3JcIi8+XG5cbjxuZy10ZW1wbGF0ZSAjcm91dGVyX291dGxldD5cbiAgPHJvdXRlci1vdXRsZXQgW25hbWVdPVwib3V0bGV0TmFtZVwiLz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -51,13 +51,12 @@ export class MicrofrontendPopupComponent {
51
51
  this._messageClient.observe$(ɵWorkbenchCommands.popupCloseTopic(this.popup.id))
52
52
  .pipe(takeUntilDestroyed(this._destroyRef))
53
53
  .subscribe(closeRequest => {
54
- if (closeRequest.headers.get(ɵWorkbenchPopupMessageHeaders.CLOSE_WITH_ERROR) === true) {
55
- this.popup.closeWithError(closeRequest.body);
56
- }
57
- else {
58
- this.popup.close(closeRequest.body);
59
- }
54
+ this.popup.close(closeRequest.headers.get(ɵWorkbenchPopupMessageHeaders.CLOSE_WITH_ERROR) ? new Error(closeRequest.body) : closeRequest.body);
60
55
  });
56
+ // Listen to popup result requests.
57
+ this._messageClient.observe$(ɵWorkbenchCommands.popupResultTopic(this.popup.id))
58
+ .pipe(takeUntilDestroyed(this._destroyRef))
59
+ .subscribe(result => this.popup.setResult(result.body));
61
60
  // Make the popup context available to embedded content.
62
61
  this.routerOutletElement.nativeElement.setContextValue(ɵPOPUP_CONTEXT, this._popupContext);
63
62
  // Propagate workbench and color theme to the microfrontend.
@@ -77,7 +76,7 @@ export class MicrofrontendPopupComponent {
77
76
  const { detail: focusWithin } = event;
78
77
  // Close the popup on focus loss.
79
78
  if (this._popupContext.closeOnFocusLost && !focusWithin) {
80
- this.popup.close();
79
+ this.popup.close(this.popup.result);
81
80
  }
82
81
  if (focusWithin) {
83
82
  this._host.nativeElement.dispatchEvent(new CustomEvent('sci-microfrontend-focusin', { bubbles: true }));
@@ -113,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
113
112
  type: ViewChild,
114
113
  args: ['router_outlet', { static: true }]
115
114
  }] } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtcG9wdXAvbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtcG9wdXAvbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsc0JBQXNCLEVBQTBCLFdBQVcsRUFBRSxNQUFNLEVBQStCLHFCQUFxQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1SyxPQUFPLEVBQWlDLDJCQUEyQixFQUF1QyxNQUFNLCtCQUErQixDQUFDO0FBQ2hKLE9BQU8sRUFBUyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUEyQixjQUFjLEVBQWlCLGtCQUFrQixFQUFFLDZCQUE2QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFbkosT0FBTyxFQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRzlELE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBRTVEOzs7O0dBSUc7QUFTSCxNQUFNLE9BQU8sMkJBQTJCO0lBb0J0QyxZQUFtQixLQUE0QixFQUMzQixLQUE4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QyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwRSxDQUFDOzhHQWxHVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnU0NuQ3hDLDBlQVNBLDZMRHVCWSxPQUFPLG9GQUFFLGlCQUFpQjs7MkZBR3pCLDJCQUEyQjtrQkFSdkMsU0FBUzsrQkFDRSx3QkFBd0IsY0FHdEIsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDLFdBQzVCLENBQUMsc0JBQXNCLENBQUM7bVNBWTFCLGVBQWU7c0JBRHJCLFdBQVc7dUJBQUMsc0JBQXNCO2dCQVM1QixtQkFBbUI7c0JBRHpCLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMiBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIERlc3Ryb3lSZWYsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBpbmplY3QsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9uSW5pdCwgcnVuSW5JbmplY3Rpb25Db250ZXh0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYW5pZmVzdFNlcnZpY2UsIE1lc3NhZ2VDbGllbnQsIE1pY3JvZnJvbnRlbmRQbGF0Zm9ybUNvbmZpZywgT3V0bGV0Um91dGVyLCBTY2lSb3V0ZXJPdXRsZXRFbGVtZW50fSBmcm9tICdAc2Npb24vbWljcm9mcm9udGVuZC1wbGF0Zm9ybSc7XG5pbXBvcnQge0xvZ2dlciwgTG9nZ2VyTmFtZXN9IGZyb20gJy4uLy4uL2xvZ2dpbmcnO1xuaW1wb3J0IHtXb3JrYmVuY2hQb3B1cENhcGFiaWxpdHksIMm1UE9QVVBfQ09OVEVYVCwgybVQb3B1cENvbnRleHQsIMm1V29ya2JlbmNoQ29tbWFuZHMsIMm1V29ya2JlbmNoUG9wdXBNZXNzYWdlSGVhZGVyc30gZnJvbSAnQHNjaW9uL3dvcmtiZW5jaC1jbGllbnQnO1xuaW1wb3J0IHvJtVBvcHVwfSBmcm9tICcuLi8uLi9wb3B1cC9wb3B1cC5jb25maWcnO1xuaW1wb3J0IHtOZ0NsYXNzLCBOZ0NvbXBvbmVudE91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1dvcmtiZW5jaExheW91dFNlcnZpY2V9IGZyb20gJy4uLy4uL2xheW91dC93b3JrYmVuY2gtbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7TWljcm9mcm9udGVuZFNwbGFzaENvbXBvbmVudH0gZnJvbSAnLi4vbWljcm9mcm9udGVuZC1zcGxhc2gvbWljcm9mcm9udGVuZC1zcGxhc2guY29tcG9uZW50JztcbmltcG9ydCB7TWljcm9mcm9udGVuZHN9IGZyb20gJy4uL2NvbW1vbi9taWNyb2Zyb250ZW5kLnV0aWwnO1xuXG4vKipcbiAqIERpc3BsYXlzIHRoZSBtaWNyb2Zyb250ZW5kIG9mIGEgZ2l2ZW4ge0BsaW5rIFdvcmtiZW5jaFBvcHVwQ2FwYWJpbGl0eX0uXG4gKlxuICogVGhpcyBjb21wb25lbnQgaXMgZGVzaWduZWQgdG8gYmUgZGlzcGxheWVkIGluIGEgd29ya2JlbmNoIHBvcHVwLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3Yi1taWNyb2Zyb250ZW5kLXBvcHVwJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ0NvbXBvbmVudE91dGxldF0sXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSwgLy8gcmVxdWlyZWQgYmVjYXVzZSA8c2NpLXJvdXRlci1vdXRsZXQ+IGlzIGEgY3VzdG9tIGVsZW1lbnRcbn0pXG5leHBvcnQgY2xhc3MgTWljcm9mcm9udGVuZFBvcHVwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX3BvcHVwQ29udGV4dDogybVQb3B1cENvbnRleHQ7XG5cbiAgcHVibGljIHBvcHVwQ2FwYWJpbGl0eTogV29ya2JlbmNoUG9wdXBDYXBhYmlsaXR5O1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciBhIHdvcmtiZW5jaCBkcmFnIG9wZXJhdGlvbiBpcyBpbiBwcm9ncmVzcywgc3VjaCBhcyB3aGVuIGRyYWdnaW5nIGEgdmlldyBvciBtb3ZpbmcgYSBzYXNoLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy53b3JrYmVuY2gtZHJhZycpXG4gIHB1YmxpYyBpc1dvcmtiZW5jaERyYWcgPSBmYWxzZTtcblxuICAvKipcbiAgICogU3BsYXNoIHRvIGRpc3BsYXkgdW50aWwgdGhlIG1pY3JvZnJvbnRlbmQgc2lnbmFscyByZWFkaW5lc3MuXG4gICAqL1xuICBwcm90ZWN0ZWQgc3BsYXNoOiBDb21wb25lbnRUeXBlPHVua25vd24+O1xuXG4gIEBWaWV3Q2hpbGQoJ3JvdXRlcl9vdXRsZXQnLCB7c3RhdGljOiB0cnVlfSlcbiAgcHVibGljIHJvdXRlck91dGxldEVsZW1lbnQhOiBFbGVtZW50UmVmPFNjaVJvdXRlck91dGxldEVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwb3B1cDogybVQb3B1cDzJtVBvcHVwQ29udGV4dD4sXG4gICAgICAgICAgICAgIHByaXZhdGUgX2hvc3Q6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICAgICAgICBwcml2YXRlIF9vdXRsZXRSb3V0ZXI6IE91dGxldFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbWFuaWZlc3RTZXJ2aWNlOiBNYW5pZmVzdFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX21lc3NhZ2VDbGllbnQ6IE1lc3NhZ2VDbGllbnQsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2Rlc3Ryb3lSZWY6IERlc3Ryb3lSZWYsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3dvcmtiZW5jaExheW91dFNlcnZpY2U6IFdvcmtiZW5jaExheW91dFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbG9nZ2VyOiBMb2dnZXIpIHtcbiAgICB0aGlzLl9wb3B1cENvbnRleHQgPSB0aGlzLnBvcHVwLmlucHV0ITtcbiAgICB0aGlzLnBvcHVwQ2FwYWJpbGl0eSA9IHRoaXMuX3BvcHVwQ29udGV4dC5jYXBhYmlsaXR5O1xuICAgIHRoaXMuaW5zdGFsbFdvcmtiZW5jaERyYWdEZXRlY3RvcigpO1xuICAgIHRoaXMuX2xvZ2dlci5kZWJ1ZygoKSA9PiAnQ29uc3RydWN0aW5nIE1pY3JvZnJvbnRlbmRQb3B1cENvbXBvbmVudC4nLCBMb2dnZXJOYW1lcy5NSUNST0ZST05URU5EKTtcbiAgICB0aGlzLnNwbGFzaCA9IGluamVjdChNaWNyb2Zyb250ZW5kUGxhdGZvcm1Db25maWcpLnNwbGFzaCA/PyBNaWNyb2Zyb250ZW5kU3BsYXNoQ29tcG9uZW50O1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIExpc3RlbiB0byBwb3B1cCBjbG9zZSByZXF1ZXN0cy5cbiAgICB0aGlzLl9tZXNzYWdlQ2xpZW50Lm9ic2VydmUkPGFueT4oybVXb3JrYmVuY2hDb21tYW5kcy5wb3B1cENsb3NlVG9waWModGhpcy5wb3B1cC5pZCkpXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpXG4gICAgICAuc3Vic2NyaWJlKGNsb3NlUmVxdWVzdCA9PiB7XG4gICAgICAgIGlmIChjbG9zZVJlcXVlc3QuaGVhZGVycy5nZXQoybVXb3JrYmVuY2hQb3B1cE1lc3NhZ2VIZWFkZXJzLkNMT1NFX1dJVEhfRVJST1IpID09PSB0cnVlKSB7XG4gICAgICAgICAgdGhpcy5wb3B1cC5jbG9zZVdpdGhFcnJvcihjbG9zZVJlcXVlc3QuYm9keSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgdGhpcy5wb3B1cC5jbG9zZShjbG9zZVJlcXVlc3QuYm9keSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgLy8gTWFrZSB0aGUgcG9wdXAgY29udGV4dCBhdmFpbGFibGUgdG8gZW1iZWRkZWQgY29udGVudC5cbiAgICB0aGlzLnJvdXRlck91dGxldEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZXRDb250ZXh0VmFsdWUoybVQT1BVUF9DT05URVhULCB0aGlzLl9wb3B1cENvbnRleHQpO1xuXG4gICAgLy8gUHJvcGFnYXRlIHdvcmtiZW5jaCBhbmQgY29sb3IgdGhlbWUgdG8gdGhlIG1pY3JvZnJvbnRlbmQuXG4gICAgdGhpcy5wcm9wYWdhdGVXb3JrYmVuY2hUaGVtZSgpO1xuXG4gICAgLy8gTmF2aWdhdGUgdG8gdGhlIG1pY3JvZnJvbnRlbmQuXG4gICAgY29uc3QgYXBwbGljYXRpb24gPSB0aGlzLl9tYW5pZmVzdFNlcnZpY2UuZ2V0QXBwbGljYXRpb24odGhpcy5wb3B1cENhcGFiaWxpdHkubWV0YWRhdGEhLmFwcFN5bWJvbGljTmFtZSk7XG4gICAgdGhpcy5fbG9nZ2VyLmRlYnVnKCgpID0+IGBMb2FkaW5nIG1pY3JvZnJvbnRlbmQgaW50byB3b3JrYmVuY2ggcG9wdXAgW2FwcD0ke3RoaXMucG9wdXBDYXBhYmlsaXR5Lm1ldGFkYXRhIS5hcHBTeW1ib2xpY05hbWV9LCBiYXNlVXJsPSR7YXBwbGljYXRpb24uYmFzZVVybH0sIHBhdGg9JHsodGhpcy5wb3B1cENhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoKX1dLmAsIExvZ2dlck5hbWVzLk1JQ1JPRlJPTlRFTkQsIHRoaXMuX3BvcHVwQ29udGV4dC5wYXJhbXMsIHRoaXMucG9wdXBDYXBhYmlsaXR5KTtcbiAgICB0aGlzLl9vdXRsZXRSb3V0ZXIubmF2aWdhdGUodGhpcy5wb3B1cENhcGFiaWxpdHkucHJvcGVydGllcy5wYXRoLCB7XG4gICAgICBvdXRsZXQ6IHRoaXMucG9wdXAuaWQsXG4gICAgICByZWxhdGl2ZVRvOiBhcHBsaWNhdGlvbi5iYXNlVXJsLFxuICAgICAgcGFyYW1zOiB0aGlzLl9wb3B1cENvbnRleHQucGFyYW1zLFxuICAgICAgcHVzaFN0YXRlVG9TZXNzaW9uSGlzdG9yeVN0YWNrOiBmYWxzZSxcbiAgICAgIHNob3dTcGxhc2g6IHRoaXMucG9wdXBDYXBhYmlsaXR5LnByb3BlcnRpZXMuc2hvd1NwbGFzaCxcbiAgICB9KS50aGVuKCk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1c1dpdGhpbihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB7ZGV0YWlsOiBmb2N1c1dpdGhpbn0gPSBldmVudCBhcyBDdXN0b21FdmVudDxib29sZWFuPjtcblxuICAgIC8vIENsb3NlIHRoZSBwb3B1cCBvbiBmb2N1cyBsb3NzLlxuICAgIGlmICh0aGlzLl9wb3B1cENvbnRleHQuY2xvc2VPbkZvY3VzTG9zdCAmJiAhZm9jdXNXaXRoaW4pIHtcbiAgICAgIHRoaXMucG9wdXAuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBpZiAoZm9jdXNXaXRoaW4pIHtcbiAgICAgIHRoaXMuX2hvc3QubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnc2NpLW1pY3JvZnJvbnRlbmQtZm9jdXNpbicsIHtidWJibGVzOiB0cnVlfSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB7QGxpbmsgaXNXb3JrYmVuY2hEcmFnfSBwcm9wZXJ0eSB3aGVuIGEgd29ya2JlbmNoIGRyYWcgb3BlcmF0aW9uIGlzIGRldGVjdGVkLFxuICAgKiBzdWNoIGFzIHdoZW4gZHJhZ2dpbmcgYSB2aWV3IG9yIG1vdmluZyBhIHNhc2guXG4gICAqL1xuICBwcml2YXRlIGluc3RhbGxXb3JrYmVuY2hEcmFnRGV0ZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5fd29ya2JlbmNoTGF5b3V0U2VydmljZS5kcmFnZ2luZyRcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIHRoaXMuaXNXb3JrYmVuY2hEcmFnID0gKGV2ZW50ID09PSAnc3RhcnQnKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9wYWdhdGVXb3JrYmVuY2hUaGVtZSgpOiB2b2lkIHtcbiAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IE1pY3JvZnJvbnRlbmRzLnByb3BhZ2F0ZVRoZW1lKHRoaXMucm91dGVyT3V0bGV0RWxlbWVudC5uYXRpdmVFbGVtZW50KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fb3V0bGV0Um91dGVyLm5hdmlnYXRlKG51bGwsIHtvdXRsZXQ6IHRoaXMucG9wdXAuaWR9KS50aGVuKCk7XG4gIH1cbn1cbiIsIjxzY2ktcm91dGVyLW91dGxldCAjcm91dGVyX291dGxldFxuICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cInBvcHVwLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWNhcGFiaWxpdHlpZF09XCJwb3B1cENhcGFiaWxpdHkubWV0YWRhdGEhLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWFwcF09XCJwb3B1cENhcGFiaWxpdHkubWV0YWRhdGEhLmFwcFN5bWJvbGljTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwicG9wdXAuY3NzQ2xhc3Nlc1wiIGNsYXNzPVwiZTJlLXBvcHVwXCJcbiAgICAgICAgICAgICAgICAgICBrZXlzdHJva2VzPVwia2V5ZG93bi5lc2NhcGVcIlxuICAgICAgICAgICAgICAgICAgIChmb2N1c3dpdGhpbik9XCJvbkZvY3VzV2l0aGluKCRldmVudClcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJzcGxhc2hcIi8+XG48L3NjaS1yb3V0ZXItb3V0bGV0PlxuIl19
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtcG9wdXAvbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtL21pY3JvZnJvbnRlbmQtcG9wdXAvbWljcm9mcm9udGVuZC1wb3B1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsc0JBQXNCLEVBQTBCLFdBQVcsRUFBRSxNQUFNLEVBQStCLHFCQUFxQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1SyxPQUFPLEVBQWlDLDJCQUEyQixFQUF1QyxNQUFNLCtCQUErQixDQUFDO0FBQ2hKLE9BQU8sRUFBUyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUEyQixjQUFjLEVBQWlCLGtCQUFrQixFQUFFLDZCQUE2QixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFbkosT0FBTyxFQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRzlELE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBRTVEOzs7O0dBSUc7QUFTSCxNQUFNLE9BQU8sMkJBQTJCO0lBb0J0QyxZQUFtQixLQUE0QixFQUMzQixLQUE4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QUFLLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BFLENBQUM7OEdBbEdVLDJCQUEyQjtrR0FBM0IsMkJBQTJCLGdTQ25DeEMsMGVBU0EsNkxEdUJZLE9BQU8sb0ZBQUUsaUJBQWlCOzsyRkFHekIsMkJBQTJCO2tCQVJ2QyxTQUFTOytCQUNFLHdCQUF3QixjQUd0QixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsV0FDNUIsQ0FBQyxzQkFBc0IsQ0FBQzttU0FZMUIsZUFBZTtzQkFEckIsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBUzVCLG1CQUFtQjtzQkFEekIsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgRGVzdHJveVJlZiwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIGluamVjdCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0LCBydW5JbkluamVjdGlvbkNvbnRleHQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hbmlmZXN0U2VydmljZSwgTWVzc2FnZUNsaWVudCwgTWljcm9mcm9udGVuZFBsYXRmb3JtQ29uZmlnLCBPdXRsZXRSb3V0ZXIsIFNjaVJvdXRlck91dGxldEVsZW1lbnR9IGZyb20gJ0BzY2lvbi9taWNyb2Zyb250ZW5kLXBsYXRmb3JtJztcbmltcG9ydCB7TG9nZ2VyLCBMb2dnZXJOYW1lc30gZnJvbSAnLi4vLi4vbG9nZ2luZyc7XG5pbXBvcnQge1dvcmtiZW5jaFBvcHVwQ2FwYWJpbGl0eSwgybVQT1BVUF9DT05URVhULCDJtVBvcHVwQ29udGV4dCwgybVXb3JrYmVuY2hDb21tYW5kcywgybVXb3JrYmVuY2hQb3B1cE1lc3NhZ2VIZWFkZXJzfSBmcm9tICdAc2Npb24vd29ya2JlbmNoLWNsaWVudCc7XG5pbXBvcnQge8m1UG9wdXB9IGZyb20gJy4uLy4uL3BvcHVwL3BvcHVwLmNvbmZpZyc7XG5pbXBvcnQge05nQ2xhc3MsIE5nQ29tcG9uZW50T3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7V29ya2JlbmNoTGF5b3V0U2VydmljZX0gZnJvbSAnLi4vLi4vbGF5b3V0L3dvcmtiZW5jaC1sYXlvdXQuc2VydmljZSc7XG5pbXBvcnQge0NvbXBvbmVudFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtNaWNyb2Zyb250ZW5kU3BsYXNoQ29tcG9uZW50fSBmcm9tICcuLi9taWNyb2Zyb250ZW5kLXNwbGFzaC9taWNyb2Zyb250ZW5kLXNwbGFzaC5jb21wb25lbnQnO1xuaW1wb3J0IHtNaWNyb2Zyb250ZW5kc30gZnJvbSAnLi4vY29tbW9uL21pY3JvZnJvbnRlbmQudXRpbCc7XG5cbi8qKlxuICogRGlzcGxheXMgdGhlIG1pY3JvZnJvbnRlbmQgb2YgYSBnaXZlbiB7QGxpbmsgV29ya2JlbmNoUG9wdXBDYXBhYmlsaXR5fS5cbiAqXG4gKiBUaGlzIGNvbXBvbmVudCBpcyBkZXNpZ25lZCB0byBiZSBkaXNwbGF5ZWQgaW4gYSB3b3JrYmVuY2ggcG9wdXAuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLW1pY3JvZnJvbnRlbmQtcG9wdXAnLFxuICBzdHlsZVVybHM6IFsnLi9taWNyb2Zyb250ZW5kLXBvcHVwLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9taWNyb2Zyb250ZW5kLXBvcHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3MsIE5nQ29tcG9uZW50T3V0bGV0XSxcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLCAvLyByZXF1aXJlZCBiZWNhdXNlIDxzY2ktcm91dGVyLW91dGxldD4gaXMgYSBjdXN0b20gZWxlbWVudFxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb2Zyb250ZW5kUG9wdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfcG9wdXBDb250ZXh0OiDJtVBvcHVwQ29udGV4dDtcblxuICBwdWJsaWMgcG9wdXBDYXBhYmlsaXR5OiBXb3JrYmVuY2hQb3B1cENhcGFiaWxpdHk7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIGEgd29ya2JlbmNoIGRyYWcgb3BlcmF0aW9uIGlzIGluIHByb2dyZXNzLCBzdWNoIGFzIHdoZW4gZHJhZ2dpbmcgYSB2aWV3IG9yIG1vdmluZyBhIHNhc2guXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLndvcmtiZW5jaC1kcmFnJylcbiAgcHVibGljIGlzV29ya2JlbmNoRHJhZyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTcGxhc2ggdG8gZGlzcGxheSB1bnRpbCB0aGUgbWljcm9mcm9udGVuZCBzaWduYWxzIHJlYWRpbmVzcy5cbiAgICovXG4gIHByb3RlY3RlZCBzcGxhc2g6IENvbXBvbmVudFR5cGU8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgncm91dGVyX291dGxldCcsIHtzdGF0aWM6IHRydWV9KVxuICBwdWJsaWMgcm91dGVyT3V0bGV0RWxlbWVudCE6IEVsZW1lbnRSZWY8U2NpUm91dGVyT3V0bGV0RWxlbWVudD47XG5cbiAgY29uc3RydWN0b3IocHVibGljIHBvcHVwOiDJtVBvcHVwPMm1UG9wdXBDb250ZXh0PixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfaG9zdDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgICAgICAgIHByaXZhdGUgX291dGxldFJvdXRlcjogT3V0bGV0Um91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIF9tYW5pZmVzdFNlcnZpY2U6IE1hbmlmZXN0U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbWVzc2FnZUNsaWVudDogTWVzc2FnZUNsaWVudCxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfZGVzdHJveVJlZjogRGVzdHJveVJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfd29ya2JlbmNoTGF5b3V0U2VydmljZTogV29ya2JlbmNoTGF5b3V0U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICAgICAgICBwcml2YXRlIF9sb2dnZXI6IExvZ2dlcikge1xuICAgIHRoaXMuX3BvcHVwQ29udGV4dCA9IHRoaXMucG9wdXAuaW5wdXQhO1xuICAgIHRoaXMucG9wdXBDYXBhYmlsaXR5ID0gdGhpcy5fcG9wdXBDb250ZXh0LmNhcGFiaWxpdHk7XG4gICAgdGhpcy5pbnN0YWxsV29ya2JlbmNoRHJhZ0RldGVjdG9yKCk7XG4gICAgdGhpcy5fbG9nZ2VyLmRlYnVnKCgpID0+ICdDb25zdHJ1Y3RpbmcgTWljcm9mcm9udGVuZFBvcHVwQ29tcG9uZW50LicsIExvZ2dlck5hbWVzLk1JQ1JPRlJPTlRFTkQpO1xuICAgIHRoaXMuc3BsYXNoID0gaW5qZWN0KE1pY3JvZnJvbnRlbmRQbGF0Zm9ybUNvbmZpZykuc3BsYXNoID8/IE1pY3JvZnJvbnRlbmRTcGxhc2hDb21wb25lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gTGlzdGVuIHRvIHBvcHVwIGNsb3NlIHJlcXVlc3RzLlxuICAgIHRoaXMuX21lc3NhZ2VDbGllbnQub2JzZXJ2ZSQ8dW5rbm93bj4oybVXb3JrYmVuY2hDb21tYW5kcy5wb3B1cENsb3NlVG9waWModGhpcy5wb3B1cC5pZCkpXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpXG4gICAgICAuc3Vic2NyaWJlKGNsb3NlUmVxdWVzdCA9PiB7XG4gICAgICAgIHRoaXMucG9wdXAuY2xvc2UoY2xvc2VSZXF1ZXN0LmhlYWRlcnMuZ2V0KMm1V29ya2JlbmNoUG9wdXBNZXNzYWdlSGVhZGVycy5DTE9TRV9XSVRIX0VSUk9SKSA/IG5ldyBFcnJvcihjbG9zZVJlcXVlc3QuYm9keSBhcyBzdHJpbmcpIDogY2xvc2VSZXF1ZXN0LmJvZHkpO1xuICAgICAgfSk7XG5cbiAgICAvLyBMaXN0ZW4gdG8gcG9wdXAgcmVzdWx0IHJlcXVlc3RzLlxuICAgIHRoaXMuX21lc3NhZ2VDbGllbnQub2JzZXJ2ZSQ8dW5rbm93bj4oybVXb3JrYmVuY2hDb21tYW5kcy5wb3B1cFJlc3VsdFRvcGljKHRoaXMucG9wdXAuaWQpKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4gdGhpcy5wb3B1cC5zZXRSZXN1bHQocmVzdWx0LmJvZHkpKTtcblxuICAgIC8vIE1ha2UgdGhlIHBvcHVwIGNvbnRleHQgYXZhaWxhYmxlIHRvIGVtYmVkZGVkIGNvbnRlbnQuXG4gICAgdGhpcy5yb3V0ZXJPdXRsZXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2V0Q29udGV4dFZhbHVlKMm1UE9QVVBfQ09OVEVYVCwgdGhpcy5fcG9wdXBDb250ZXh0KTtcblxuICAgIC8vIFByb3BhZ2F0ZSB3b3JrYmVuY2ggYW5kIGNvbG9yIHRoZW1lIHRvIHRoZSBtaWNyb2Zyb250ZW5kLlxuICAgIHRoaXMucHJvcGFnYXRlV29ya2JlbmNoVGhlbWUoKTtcblxuICAgIC8vIE5hdmlnYXRlIHRvIHRoZSBtaWNyb2Zyb250ZW5kLlxuICAgIGNvbnN0IGFwcGxpY2F0aW9uID0gdGhpcy5fbWFuaWZlc3RTZXJ2aWNlLmdldEFwcGxpY2F0aW9uKHRoaXMucG9wdXBDYXBhYmlsaXR5Lm1ldGFkYXRhIS5hcHBTeW1ib2xpY05hbWUpO1xuICAgIHRoaXMuX2xvZ2dlci5kZWJ1ZygoKSA9PiBgTG9hZGluZyBtaWNyb2Zyb250ZW5kIGludG8gd29ya2JlbmNoIHBvcHVwIFthcHA9JHt0aGlzLnBvcHVwQ2FwYWJpbGl0eS5tZXRhZGF0YSEuYXBwU3ltYm9saWNOYW1lfSwgYmFzZVVybD0ke2FwcGxpY2F0aW9uLmJhc2VVcmx9LCBwYXRoPSR7KHRoaXMucG9wdXBDYXBhYmlsaXR5LnByb3BlcnRpZXMucGF0aCl9XS5gLCBMb2dnZXJOYW1lcy5NSUNST0ZST05URU5ELCB0aGlzLl9wb3B1cENvbnRleHQucGFyYW1zLCB0aGlzLnBvcHVwQ2FwYWJpbGl0eSk7XG4gICAgdGhpcy5fb3V0bGV0Um91dGVyLm5hdmlnYXRlKHRoaXMucG9wdXBDYXBhYmlsaXR5LnByb3BlcnRpZXMucGF0aCwge1xuICAgICAgb3V0bGV0OiB0aGlzLnBvcHVwLmlkLFxuICAgICAgcmVsYXRpdmVUbzogYXBwbGljYXRpb24uYmFzZVVybCxcbiAgICAgIHBhcmFtczogdGhpcy5fcG9wdXBDb250ZXh0LnBhcmFtcyxcbiAgICAgIHB1c2hTdGF0ZVRvU2Vzc2lvbkhpc3RvcnlTdGFjazogZmFsc2UsXG4gICAgICBzaG93U3BsYXNoOiB0aGlzLnBvcHVwQ2FwYWJpbGl0eS5wcm9wZXJ0aWVzLnNob3dTcGxhc2gsXG4gICAgfSkudGhlbigpO1xuICB9XG5cbiAgcHVibGljIG9uRm9jdXNXaXRoaW4oZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3Qge2RldGFpbDogZm9jdXNXaXRoaW59ID0gZXZlbnQgYXMgQ3VzdG9tRXZlbnQ8Ym9vbGVhbj47XG5cbiAgICAvLyBDbG9zZSB0aGUgcG9wdXAgb24gZm9jdXMgbG9zcy5cbiAgICBpZiAodGhpcy5fcG9wdXBDb250ZXh0LmNsb3NlT25Gb2N1c0xvc3QgJiYgIWZvY3VzV2l0aGluKSB7XG4gICAgICB0aGlzLnBvcHVwLmNsb3NlKHRoaXMucG9wdXAucmVzdWx0KTtcbiAgICB9XG5cbiAgICBpZiAoZm9jdXNXaXRoaW4pIHtcbiAgICAgIHRoaXMuX2hvc3QubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnc2NpLW1pY3JvZnJvbnRlbmQtZm9jdXNpbicsIHtidWJibGVzOiB0cnVlfSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB7QGxpbmsgaXNXb3JrYmVuY2hEcmFnfSBwcm9wZXJ0eSB3aGVuIGEgd29ya2JlbmNoIGRyYWcgb3BlcmF0aW9uIGlzIGRldGVjdGVkLFxuICAgKiBzdWNoIGFzIHdoZW4gZHJhZ2dpbmcgYSB2aWV3IG9yIG1vdmluZyBhIHNhc2guXG4gICAqL1xuICBwcml2YXRlIGluc3RhbGxXb3JrYmVuY2hEcmFnRGV0ZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5fd29ya2JlbmNoTGF5b3V0U2VydmljZS5kcmFnZ2luZyRcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIHRoaXMuaXNXb3JrYmVuY2hEcmFnID0gKGV2ZW50ID09PSAnc3RhcnQnKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9wYWdhdGVXb3JrYmVuY2hUaGVtZSgpOiB2b2lkIHtcbiAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5faW5qZWN0b3IsICgpID0+IE1pY3JvZnJvbnRlbmRzLnByb3BhZ2F0ZVRoZW1lKHRoaXMucm91dGVyT3V0bGV0RWxlbWVudC5uYXRpdmVFbGVtZW50KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fb3V0bGV0Um91dGVyLm5hdmlnYXRlKG51bGwsIHtvdXRsZXQ6IHRoaXMucG9wdXAuaWR9KS50aGVuKCk7XG4gIH1cbn1cbiIsIjxzY2ktcm91dGVyLW91dGxldCAjcm91dGVyX291dGxldFxuICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cInBvcHVwLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWNhcGFiaWxpdHlpZF09XCJwb3B1cENhcGFiaWxpdHkubWV0YWRhdGEhLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWFwcF09XCJwb3B1cENhcGFiaWxpdHkubWV0YWRhdGEhLmFwcFN5bWJvbGljTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwicG9wdXAuY3NzQ2xhc3Nlc1wiIGNsYXNzPVwiZTJlLXBvcHVwXCJcbiAgICAgICAgICAgICAgICAgICBrZXlzdHJva2VzPVwia2V5ZG93bi5lc2NhcGVcIlxuICAgICAgICAgICAgICAgICAgIChmb2N1c3dpdGhpbik9XCJvbkZvY3VzV2l0aGluKCRldmVudClcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJzcGxhc2hcIi8+XG48L3NjaS1yb3V0ZXItb3V0bGV0PlxuIl19
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright (c) 2018-2022 Swiss Federal Railways
2
+ * Copyright (c) 2018-2024 Swiss Federal Railways
3
3
  *
4
4
  * This program and the accompanying materials are made
5
5
  * available under the terms of the Eclipse Public License 2.0
@@ -7,28 +7,32 @@
7
7
  *
8
8
  * SPDX-License-Identifier: EPL-2.0
9
9
  */
10
- import { Component, Inject, InjectionToken } from '@angular/core';
10
+ import { Component, inject, InjectionToken, isSignal, signal } from '@angular/core';
11
11
  import * as i0 from "@angular/core";
12
12
  export const TEXT = new InjectionToken('TEXT');
13
13
  /**
14
14
  * Component which renders text injected via {@link TEXT} injection token.
15
15
  */
16
16
  export class TextComponent {
17
- constructor(text) {
18
- this.text = text;
17
+ constructor() {
18
+ this.text = coerceText(inject(TEXT));
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: TextComponent, deps: [{ token: TEXT }], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: TextComponent, isStandalone: true, selector: "wb-text", ngImport: i0, template: '{{text}}', isInline: true }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: TextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: TextComponent, isStandalone: true, selector: "wb-text", ngImport: i0, template: '{{text()}}', isInline: true }); }
22
22
  }
23
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: TextComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{
26
26
  selector: 'wb-text',
27
- template: '{{text}}',
27
+ template: '{{text()}}',
28
28
  standalone: true,
29
29
  }]
30
- }], ctorParameters: () => [{ type: undefined, decorators: [{
31
- type: Inject,
32
- args: [TEXT]
33
- }] }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctY29udGV4dC1tZW51L3RleHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUVoRSxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxjQUFjLENBQVMsTUFBTSxDQUFDLENBQUM7QUFFdkQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sYUFBYTtJQUV4QixZQUFpQyxJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtJQUM3QyxDQUFDOzhHQUhVLGFBQWEsa0JBRUosSUFBSTtrR0FGYixhQUFhLG1FQUhkLFVBQVU7OzJGQUdULGFBQWE7a0JBTHpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxVQUFVO29CQUNwQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OzBCQUdjLE1BQU07MkJBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMiBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEluamVjdCwgSW5qZWN0aW9uVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdURVhUJyk7XG5cbi8qKlxuICogQ29tcG9uZW50IHdoaWNoIHJlbmRlcnMgdGV4dCBpbmplY3RlZCB2aWEge0BsaW5rIFRFWFR9IGluamVjdGlvbiB0b2tlbi5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2ItdGV4dCcsXG4gIHRlbXBsYXRlOiAne3t0ZXh0fX0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Q29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFRFWFQpIHB1YmxpYyB0ZXh0OiBzdHJpbmcpIHtcbiAgfVxufVxuIl19
30
+ }] });
31
+ function coerceText(textOrFn) {
32
+ if (typeof textOrFn === 'function') {
33
+ const text = textOrFn();
34
+ return isSignal(text) ? text : signal(text);
35
+ }
36
+ return signal(textOrFn);
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi93b3JrYmVuY2gvc3JjL2xpYi9wYXJ0L3ZpZXctY29udGV4dC1tZW51L3RleHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQVMsTUFBTSxlQUFlLENBQUM7O0FBRTFGLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBMkMsTUFBTSxDQUFDLENBQUM7QUFFekY7O0dBRUc7QUFNSCxNQUFNLE9BQU8sYUFBYTtJQUwxQjtRQU9ZLFNBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7S0FDM0M7OEdBSFksYUFBYTtrR0FBYixhQUFhLG1FQUhkLFlBQVk7OzJGQUdYLGFBQWE7a0JBTHpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7O0FBTUQsU0FBUyxVQUFVLENBQUMsUUFBa0Q7SUFDcEUsSUFBSSxPQUFPLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBRyxRQUFRLEVBQUUsQ0FBQztRQUN4QixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjQgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBpbmplY3QsIEluamVjdGlvblRva2VuLCBpc1NpZ25hbCwgc2lnbmFsLCBTaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmcgfCAoKCkgPT4gc3RyaW5nIHwgU2lnbmFsPHN0cmluZz4pPignVEVYVCcpO1xuXG4vKipcbiAqIENvbXBvbmVudCB3aGljaCByZW5kZXJzIHRleHQgaW5qZWN0ZWQgdmlhIHtAbGluayBURVhUfSBpbmplY3Rpb24gdG9rZW4uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3diLXRleHQnLFxuICB0ZW1wbGF0ZTogJ3t7dGV4dCgpfX0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Q29tcG9uZW50IHtcblxuICBwcm90ZWN0ZWQgdGV4dCA9IGNvZXJjZVRleHQoaW5qZWN0KFRFWFQpKTtcbn1cblxuZnVuY3Rpb24gY29lcmNlVGV4dCh0ZXh0T3JGbjogc3RyaW5nIHwgKCgpID0+IHN0cmluZyB8IFNpZ25hbDxzdHJpbmc+KSk6IFNpZ25hbDxzdHJpbmc+IHtcbiAgaWYgKHR5cGVvZiB0ZXh0T3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGNvbnN0IHRleHQgPSB0ZXh0T3JGbigpO1xuICAgIHJldHVybiBpc1NpZ25hbCh0ZXh0KSA/IHRleHQgOiBzaWduYWwodGV4dCk7XG4gIH1cbiAgcmV0dXJuIHNpZ25hbCh0ZXh0T3JGbik7XG59XG4iXX0=