@skyux/modals 6.13.0 → 6.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/documentation.json +340 -529
  2. package/esm2020/lib/modules/confirm/confirm-config-token.mjs +6 -0
  3. package/esm2020/lib/modules/confirm/confirm.component.mjs +103 -97
  4. package/esm2020/lib/modules/confirm/confirm.service.mjs +9 -5
  5. package/esm2020/lib/modules/modal/modal-adapter.service.mjs +20 -15
  6. package/esm2020/lib/modules/modal/modal-close-args.mjs +1 -1
  7. package/esm2020/lib/modules/modal/modal-component-adapter.service.mjs +17 -13
  8. package/esm2020/lib/modules/modal/modal-host-context-args.mjs +2 -0
  9. package/esm2020/lib/modules/modal/modal-host-context.mjs +9 -6
  10. package/esm2020/lib/modules/modal/modal-host.component.mjs +41 -14
  11. package/esm2020/lib/modules/modal/modal-host.service.mjs +21 -15
  12. package/esm2020/lib/modules/modal/modal-instance.mjs +31 -29
  13. package/esm2020/lib/modules/modal/modal-scroll-shadow.directive.mjs +71 -65
  14. package/esm2020/lib/modules/modal/modal.component.mjs +59 -74
  15. package/esm2020/lib/modules/modal/modal.service.mjs +50 -42
  16. package/esm2020/testing/modal-fixture.mjs +60 -84
  17. package/fesm2015/skyux-modals-testing.mjs +60 -83
  18. package/fesm2015/skyux-modals-testing.mjs.map +1 -1
  19. package/fesm2015/skyux-modals.mjs +412 -368
  20. package/fesm2015/skyux-modals.mjs.map +1 -1
  21. package/fesm2020/skyux-modals-testing.mjs +60 -83
  22. package/fesm2020/skyux-modals-testing.mjs.map +1 -1
  23. package/fesm2020/skyux-modals.mjs +409 -368
  24. package/fesm2020/skyux-modals.mjs.map +1 -1
  25. package/lib/modules/confirm/confirm-config-token.d.ts +6 -0
  26. package/lib/modules/confirm/confirm.component.d.ts +6 -12
  27. package/lib/modules/confirm/confirm.service.d.ts +1 -1
  28. package/lib/modules/modal/modal-adapter.service.d.ts +1 -5
  29. package/lib/modules/modal/modal-close-args.d.ts +1 -1
  30. package/lib/modules/modal/modal-component-adapter.service.d.ts +1 -2
  31. package/lib/modules/modal/modal-host-context-args.d.ts +7 -0
  32. package/lib/modules/modal/modal-host-context.d.ts +3 -2
  33. package/lib/modules/modal/modal-host.component.d.ts +1 -6
  34. package/lib/modules/modal/modal-host.service.d.ts +2 -2
  35. package/lib/modules/modal/modal-instance.d.ts +1 -5
  36. package/lib/modules/modal/modal-scroll-shadow.directive.d.ts +1 -13
  37. package/lib/modules/modal/modal.component.d.ts +12 -23
  38. package/lib/modules/modal/modal.service.d.ts +1 -3
  39. package/package.json +5 -6
  40. package/testing/modal-fixture.d.ts +6 -8
  41. package/esm2020/lib/modules/confirm/confirm-modal-context.mjs +0 -6
  42. package/esm2020/lib/modules/modal/modal-state-animation.mjs +0 -8
  43. package/lib/modules/confirm/confirm-modal-context.d.ts +0 -13
  44. package/lib/modules/modal/modal-state-animation.d.ts +0 -1
@@ -1,4 +1,4 @@
1
- var _SkyModalHostComponent_modalHostContext;
1
+ var _SkyModalHostComponent_instances, _SkyModalHostComponent_resolver, _SkyModalHostComponent_adapter, _SkyModalHostComponent_injector, _SkyModalHostComponent_router, _SkyModalHostComponent_changeDetector, _SkyModalHostComponent_modalHostContext, _SkyModalHostComponent_modalInstances, _SkyModalHostComponent_registerModalInstance, _SkyModalHostComponent_unregisterModalInstance, _SkyModalHostComponent_closeAllModalInstances;
2
2
  import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
3
  import { ChangeDetectorRef, Component, ComponentFactoryResolver, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
4
4
  import { NavigationStart, Router } from '@angular/router';
@@ -18,12 +18,19 @@ import * as i4 from "@angular/common";
18
18
  */
19
19
  export class SkyModalHostComponent {
20
20
  constructor(resolver, adapter, injector, router, changeDetector, modalHostContext) {
21
- this.resolver = resolver;
22
- this.adapter = adapter;
23
- this.injector = injector;
24
- this.router = router;
25
- this.changeDetector = changeDetector;
21
+ _SkyModalHostComponent_instances.add(this);
22
+ _SkyModalHostComponent_resolver.set(this, void 0);
23
+ _SkyModalHostComponent_adapter.set(this, void 0);
24
+ _SkyModalHostComponent_injector.set(this, void 0);
25
+ _SkyModalHostComponent_router.set(this, void 0);
26
+ _SkyModalHostComponent_changeDetector.set(this, void 0);
26
27
  _SkyModalHostComponent_modalHostContext.set(this, void 0);
28
+ _SkyModalHostComponent_modalInstances.set(this, []);
29
+ __classPrivateFieldSet(this, _SkyModalHostComponent_resolver, resolver, "f");
30
+ __classPrivateFieldSet(this, _SkyModalHostComponent_adapter, adapter, "f");
31
+ __classPrivateFieldSet(this, _SkyModalHostComponent_injector, injector, "f");
32
+ __classPrivateFieldSet(this, _SkyModalHostComponent_router, router, "f");
33
+ __classPrivateFieldSet(this, _SkyModalHostComponent_changeDetector, changeDetector, "f");
27
34
  __classPrivateFieldSet(this, _SkyModalHostComponent_modalHostContext, modalHostContext, "f");
28
35
  }
29
36
  get modalOpen() {
@@ -33,16 +40,25 @@ export class SkyModalHostComponent {
33
40
  return SkyModalHostService.backdropZIndex;
34
41
  }
35
42
  ngOnDestroy() {
36
- __classPrivateFieldGet(this, _SkyModalHostComponent_modalHostContext, "f").teardownCallback();
43
+ // Close all modal instances before disposing of the host container.
44
+ __classPrivateFieldGet(this, _SkyModalHostComponent_instances, "m", _SkyModalHostComponent_closeAllModalInstances).call(this);
45
+ __classPrivateFieldGet(this, _SkyModalHostComponent_modalHostContext, "f").args.teardownCallback();
37
46
  }
38
47
  open(modalInstance, component, config) {
48
+ /* Ignore coverage as we specify the target element and so the view child should never be undefined unless
49
+ * we were to call the `open` method in an early lifecycle hook. */
50
+ /* istanbul ignore next */
51
+ if (!this.target) {
52
+ return;
53
+ }
39
54
  const params = Object.assign({}, config);
40
- const factory = this.resolver.resolveComponentFactory(component);
55
+ const factory = __classPrivateFieldGet(this, _SkyModalHostComponent_resolver, "f").resolveComponentFactory(component);
41
56
  const hostService = new SkyModalHostService();
42
57
  hostService.fullPage = !!params.fullPage;
43
- const adapter = this.adapter;
58
+ const adapter = __classPrivateFieldGet(this, _SkyModalHostComponent_adapter, "f");
44
59
  const modalOpener = adapter.getModalOpener();
45
60
  let isOpen = true;
61
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
46
62
  params.providers.push({
47
63
  provide: SkyModalHostService,
48
64
  useValue: hostService,
@@ -55,15 +71,17 @@ export class SkyModalHostComponent {
55
71
  provide: SkyMediaQueryService,
56
72
  useExisting: SkyResizeObserverMediaQueryService,
57
73
  });
74
+ /* eslint-enable @typescript-eslint/no-non-null-assertion */
58
75
  adapter.setPageScroll(SkyModalHostService.openModalCount > 0);
59
76
  adapter.toggleFullPageModalClass(SkyModalHostService.fullPageModalCount > 0);
60
77
  const providers = params.providers || /* istanbul ignore next */ [];
61
78
  const injector = Injector.create({
62
79
  providers,
63
- parent: this.injector,
80
+ parent: __classPrivateFieldGet(this, _SkyModalHostComponent_injector, "f"),
64
81
  });
65
82
  const modalComponentRef = this.target.createComponent(factory, undefined, injector);
66
83
  modalInstance.componentInstance = modalComponentRef.instance;
84
+ __classPrivateFieldGet(this, _SkyModalHostComponent_instances, "m", _SkyModalHostComponent_registerModalInstance).call(this, modalInstance);
67
85
  function closeModal() {
68
86
  hostService.destroy();
69
87
  adapter.setPageScroll(SkyModalHostService.openModalCount > 0);
@@ -81,7 +99,7 @@ export class SkyModalHostComponent {
81
99
  hostService.close.subscribe(() => {
82
100
  modalInstance.close();
83
101
  });
84
- this.router.events.pipe(takeWhile(() => isOpen)).subscribe((event) => {
102
+ __classPrivateFieldGet(this, _SkyModalHostComponent_router, "f").events.pipe(takeWhile(() => isOpen)).subscribe((event) => {
85
103
  /* istanbul ignore else */
86
104
  if (event instanceof NavigationStart) {
87
105
  modalInstance.close();
@@ -89,13 +107,22 @@ export class SkyModalHostComponent {
89
107
  });
90
108
  modalInstance.closed.subscribe(() => {
91
109
  isOpen = false;
110
+ __classPrivateFieldGet(this, _SkyModalHostComponent_instances, "m", _SkyModalHostComponent_unregisterModalInstance).call(this, modalInstance);
92
111
  closeModal();
93
112
  });
94
113
  // Necessary if the host was created via a consumer's lifecycle hook such as ngOnInit
95
- this.changeDetector.detectChanges();
114
+ __classPrivateFieldGet(this, _SkyModalHostComponent_changeDetector, "f").detectChanges();
96
115
  }
97
116
  }
98
- _SkyModalHostComponent_modalHostContext = new WeakMap();
117
+ _SkyModalHostComponent_resolver = new WeakMap(), _SkyModalHostComponent_adapter = new WeakMap(), _SkyModalHostComponent_injector = new WeakMap(), _SkyModalHostComponent_router = new WeakMap(), _SkyModalHostComponent_changeDetector = new WeakMap(), _SkyModalHostComponent_modalHostContext = new WeakMap(), _SkyModalHostComponent_modalInstances = new WeakMap(), _SkyModalHostComponent_instances = new WeakSet(), _SkyModalHostComponent_registerModalInstance = function _SkyModalHostComponent_registerModalInstance(instance) {
118
+ __classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").push(instance);
119
+ }, _SkyModalHostComponent_unregisterModalInstance = function _SkyModalHostComponent_unregisterModalInstance(instance) {
120
+ __classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").slice(__classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f").indexOf(instance), 1);
121
+ }, _SkyModalHostComponent_closeAllModalInstances = function _SkyModalHostComponent_closeAllModalInstances() {
122
+ for (const instance of __classPrivateFieldGet(this, _SkyModalHostComponent_modalInstances, "f")) {
123
+ instance.close();
124
+ }
125
+ };
99
126
  SkyModalHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i1.SkyModalAdapterService }, { token: i0.Injector }, { token: i2.Router }, { token: i0.ChangeDetectorRef }, { token: i3.SkyModalHostContext }], target: i0.ɵɵFactoryTarget.Component });
100
127
  SkyModalHostComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyModalHostComponent, selector: "sky-modal-host", viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-modal-host-backdrop\"\n [hidden]=\"!modalOpen\"\n [ngStyle]=\"{\n zIndex: backdropZIndex\n }\"\n></div>\n<div #target></div>\n", styles: [".sky-modal-host-backdrop{background-color:#00000080;position:fixed;top:0;left:0;bottom:0;right:0}\n"], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], viewProviders: [SkyModalAdapterService] });
101
128
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostComponent, decorators: [{
@@ -108,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
108
135
  static: true,
109
136
  }]
110
137
  }] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsUUFBUSxFQUVSLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLGtDQUFrQyxHQUNuQyxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQUkzRDs7R0FFRztBQU9ILE1BQU0sT0FBTyxxQkFBcUI7SUF1QmhDLFlBQ1UsUUFBa0MsRUFDbEMsT0FBK0IsRUFDL0IsUUFBa0IsRUFDbEIsTUFBYyxFQUNkLGNBQWlDLEVBQ3pDLGdCQUFxQztRQUw3QixhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUF3QjtRQUMvQixh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UyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFO1lBQ2xELGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25FLDBCQUEwQjtZQUMxQixJQUFJLEtBQUssWUFBWSxlQUFlLEVBQUU7Z0JBQ3BDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUN2QjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsYUFBYSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDZixVQUFVLEVBQUUsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO1FBRUgscUZBQXFGO1FBQ3JGLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdEMsQ0FBQzs7O2tIQTFIVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixtSUFnQnhCLGdCQUFnQiwyQ0NqRDFCLDBKQVFBLGtORHVCaUIsQ0FBQyxzQkFBc0IsQ0FBQzsyRkFFNUIscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLGdCQUFnQixpQkFHWCxDQUFDLHNCQUFzQixDQUFDO2tRQXFCaEMsTUFBTTtzQkFKWixTQUFTO3VCQUFDLFFBQVEsRUFBRTt3QkFDbkIsSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsTUFBTSxFQUFFLElBQUk7cUJBQ04iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEluamVjdG9yLFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBTa3lNZWRpYVF1ZXJ5U2VydmljZSxcbiAgU2t5UmVzaXplT2JzZXJ2ZXJNZWRpYVF1ZXJ5U2VydmljZSxcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyB0YWtlV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreU1vZGFsQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lNb2RhbENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL21vZGFsLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgU2t5TW9kYWxIb3N0Q29udGV4dCB9IGZyb20gJy4vbW9kYWwtaG9zdC1jb250ZXh0JztcbmltcG9ydCB7IFNreU1vZGFsSG9zdFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWhvc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTa3lNb2RhbEluc3RhbmNlIH0gZnJvbSAnLi9tb2RhbC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuL21vZGFsLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1tb2RhbC1ob3N0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1ob3N0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHZpZXdQcm92aWRlcnM6IFtTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHVibGljIGdldCBtb2RhbE9wZW4oKSB7XG4gICAgcmV0dXJuIFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwO1xuICB9XG5cbiAgcHVibGljIGdldCBiYWNrZHJvcFpJbmRleCgpIHtcbiAgICByZXR1cm4gU2t5TW9kYWxIb3N0U2VydmljZS5iYWNrZHJvcFpJbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgYGFueWAgZm9yIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5IHdpdGggQW5ndWxhciA0LTcuXG4gICAqIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMzA2NTRcbiAgICogVE9ETzogUmVtb3ZlIHRoZSBgYW55YCBpbiBhIGJyZWFraW5nIGNoYW5nZS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBAVmlld0NoaWxkKCd0YXJnZXQnLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0gYXMgYW55KVxuICBwdWJsaWMgdGFyZ2V0OiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gICNtb2RhbEhvc3RDb250ZXh0OiBTa3lNb2RhbEhvc3RDb250ZXh0O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIGFkYXB0ZXI6IFNreU1vZGFsQWRhcHRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBtb2RhbEhvc3RDb250ZXh0OiBTa3lNb2RhbEhvc3RDb250ZXh0XG4gICkge1xuICAgIHRoaXMuI21vZGFsSG9zdENvbnRleHQgPSBtb2RhbEhvc3RDb250ZXh0O1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI21vZGFsSG9zdENvbnRleHQudGVhcmRvd25DYWxsYmFjaygpO1xuICB9XG5cbiAgcHVibGljIG9wZW4oXG4gICAgbW9kYWxJbnN0YW5jZTogU2t5TW9kYWxJbnN0YW5jZSxcbiAgICBjb21wb25lbnQ6IGFueSxcbiAgICBjb25maWc/OiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2VcbiAgKSB7XG4gICAgY29uc3QgcGFyYW1zOiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBjb25maWcpO1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG5cbiAgICBjb25zdCBob3N0U2VydmljZSA9IG5ldyBTa3lNb2RhbEhvc3RTZXJ2aWNlKCk7XG4gICAgaG9zdFNlcnZpY2UuZnVsbFBhZ2UgPSAhIXBhcmFtcy5mdWxsUGFnZTtcblxuICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLmFkYXB0ZXI7XG4gICAgY29uc3QgbW9kYWxPcGVuZXI6IEhUTUxFbGVtZW50ID0gYWRhcHRlci5nZXRNb2RhbE9wZW5lcigpO1xuXG4gICAgbGV0IGlzT3BlbiA9IHRydWU7XG5cbiAgICBwYXJhbXMucHJvdmlkZXJzLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TW9kYWxIb3N0U2VydmljZSxcbiAgICAgIHVzZVZhbHVlOiBob3N0U2VydmljZSxcbiAgICB9KTtcbiAgICBwYXJhbXMucHJvdmlkZXJzLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TW9kYWxDb25maWd1cmF0aW9uLFxuICAgICAgdXNlVmFsdWU6IHBhcmFtcyxcbiAgICB9KTtcbiAgICBwYXJhbXMucHJvdmlkZXJzLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgICB1c2VFeGlzdGluZzogU2t5UmVzaXplT2JzZXJ2ZXJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICB9KTtcblxuICAgIGFkYXB0ZXIuc2V0UGFnZVNjcm9sbChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMCk7XG4gICAgYWRhcHRlci50b2dnbGVGdWxsUGFnZU1vZGFsQ2xhc3MoXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLmZ1bGxQYWdlTW9kYWxDb3VudCA+IDBcbiAgICApO1xuXG4gICAgY29uc3QgcHJvdmlkZXJzID0gcGFyYW1zLnByb3ZpZGVycyB8fCAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBbXTtcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwcm92aWRlcnMsXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG5cbiAgICBjb25zdCBtb2RhbENvbXBvbmVudFJlZiA9IHRoaXMudGFyZ2V0LmNyZWF0ZUNvbXBvbmVudChcbiAgICAgIGZhY3RvcnksXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBpbmplY3RvclxuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNvbXBvbmVudEluc3RhbmNlID0gbW9kYWxDb21wb25lbnRSZWYuaW5zdGFuY2U7XG5cbiAgICBmdW5jdGlvbiBjbG9zZU1vZGFsKCkge1xuICAgICAgaG9zdFNlcnZpY2UuZGVzdHJveSgpO1xuICAgICAgYWRhcHRlci5zZXRQYWdlU2Nyb2xsKFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwKTtcbiAgICAgIGFkYXB0ZXIudG9nZ2xlRnVsbFBhZ2VNb2RhbENsYXNzKFxuICAgICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLmZ1bGxQYWdlTW9kYWxDb3VudCA+IDBcbiAgICAgICk7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICBpZiAobW9kYWxPcGVuZXIgJiYgbW9kYWxPcGVuZXIuZm9jdXMpIHtcbiAgICAgICAgbW9kYWxPcGVuZXIuZm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIG1vZGFsQ29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBob3N0U2VydmljZS5vcGVuSGVscC5zdWJzY3JpYmUoKGhlbHBLZXk/OiBzdHJpbmcpID0+IHtcbiAgICAgIG1vZGFsSW5zdGFuY2Uub3BlbkhlbHAoaGVscEtleSk7XG4gICAgfSk7XG5cbiAgICBob3N0U2VydmljZS5jbG9zZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVdoaWxlKCgpID0+IGlzT3BlbikpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlzT3BlbiA9IGZhbHNlO1xuICAgICAgY2xvc2VNb2RhbCgpO1xuICAgIH0pO1xuXG4gICAgLy8gTmVjZXNzYXJ5IGlmIHRoZSBob3N0IHdhcyBjcmVhdGVkIHZpYSBhIGNvbnN1bWVyJ3MgbGlmZWN5Y2xlIGhvb2sgc3VjaCBhcyBuZ09uSW5pdFxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2t5LW1vZGFsLWhvc3QtYmFja2Ryb3BcIlxuICBbaGlkZGVuXT1cIiFtb2RhbE9wZW5cIlxuICBbbmdTdHlsZV09XCJ7XG4gICAgekluZGV4OiBiYWNrZHJvcFpJbmRleFxuICB9XCJcbj48L2Rpdj5cbjxkaXYgI3RhcmdldD48L2Rpdj5cbiJdfQ==
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9tb2RhbHMvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx3QkFBd0IsRUFDeEIsUUFBUSxFQUVSLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLGtDQUFrQyxHQUNuQyxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQUkzRDs7R0FFRztBQU9ILE1BQU0sT0FBTyxxQkFBcUI7SUErQmhDLFlBQ0UsUUFBa0MsRUFDbEMsT0FBK0IsRUFDL0IsUUFBa0IsRUFDbEIsTUFBYyxFQUNkLGNBQWlDLEVBQ2pDLGdCQUFxQzs7UUFoQnZDLGtEQUFvQztRQUNwQyxpREFBaUM7UUFDakMsa0RBQW9CO1FBQ3BCLGdEQUFnQjtRQUNoQix3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QTBCLGFBQWEsQ0FBQyxDQUFDO1lBQzdDLFVBQVUsRUFBRSxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7UUFFSCxxRkFBcUY7UUFDckYsdUJBQUEsSUFBSSw2Q0FBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QyxDQUFDOzsrZkFFc0IsUUFBMEI7SUFDL0MsdUJBQUEsSUFBSSw2Q0FBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDdEMsQ0FBQywyR0FFd0IsUUFBMEI7SUFDakQsdUJBQUEsSUFBSSw2Q0FBZ0IsQ0FBQyxLQUFLLENBQUMsdUJBQUEsSUFBSSw2Q0FBZ0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDeEUsQ0FBQztJQUdDLEtBQUssTUFBTSxRQUFRLElBQUksdUJBQUEsSUFBSSw2Q0FBZ0IsRUFBRTtRQUMzQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7S0FDbEI7QUFDSCxDQUFDO2tIQW5LVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixtSUFnQnhCLGdCQUFnQiwyQ0NqRDFCLDBKQVFBLGtORHVCaUIsQ0FBQyxzQkFBc0IsQ0FBQzsyRkFFNUIscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLGdCQUFnQixpQkFHWCxDQUFDLHNCQUFzQixDQUFDO2tRQXFCaEMsTUFBTTtzQkFKWixTQUFTO3VCQUFDLFFBQVEsRUFBRTt3QkFDbkIsSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsTUFBTSxFQUFFLElBQUk7cUJBQ04iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEluamVjdG9yLFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBTa3lNZWRpYVF1ZXJ5U2VydmljZSxcbiAgU2t5UmVzaXplT2JzZXJ2ZXJNZWRpYVF1ZXJ5U2VydmljZSxcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyB0YWtlV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreU1vZGFsQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lNb2RhbENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL21vZGFsLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgU2t5TW9kYWxIb3N0Q29udGV4dCB9IGZyb20gJy4vbW9kYWwtaG9zdC1jb250ZXh0JztcbmltcG9ydCB7IFNreU1vZGFsSG9zdFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLWhvc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTa3lNb2RhbEluc3RhbmNlIH0gZnJvbSAnLi9tb2RhbC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuL21vZGFsLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1tb2RhbC1ob3N0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1ob3N0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHZpZXdQcm92aWRlcnM6IFtTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHVibGljIGdldCBtb2RhbE9wZW4oKSB7XG4gICAgcmV0dXJuIFNreU1vZGFsSG9zdFNlcnZpY2Uub3Blbk1vZGFsQ291bnQgPiAwO1xuICB9XG5cbiAgcHVibGljIGdldCBiYWNrZHJvcFpJbmRleCgpIHtcbiAgICByZXR1cm4gU2t5TW9kYWxIb3N0U2VydmljZS5iYWNrZHJvcFpJbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgYGFueWAgZm9yIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5IHdpdGggQW5ndWxhciA0LTcuXG4gICAqIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMzA2NTRcbiAgICogVE9ETzogUmVtb3ZlIHRoZSBgYW55YCBpbiBhIGJyZWFraW5nIGNoYW5nZS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBAVmlld0NoaWxkKCd0YXJnZXQnLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0gYXMgYW55KVxuICBwdWJsaWMgdGFyZ2V0OiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkO1xuXG4gICNyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyO1xuICAjYWRhcHRlcjogU2t5TW9kYWxBZGFwdGVyU2VydmljZTtcbiAgI2luamVjdG9yOiBJbmplY3RvcjtcbiAgI3JvdXRlcjogUm91dGVyO1xuICAjY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmO1xuXG4gICNtb2RhbEhvc3RDb250ZXh0OiBTa3lNb2RhbEhvc3RDb250ZXh0O1xuXG4gICNtb2RhbEluc3RhbmNlczogU2t5TW9kYWxJbnN0YW5jZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBhZGFwdGVyOiBTa3lNb2RhbEFkYXB0ZXJTZXJ2aWNlLFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICByb3V0ZXI6IFJvdXRlcixcbiAgICBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbW9kYWxIb3N0Q29udGV4dDogU2t5TW9kYWxIb3N0Q29udGV4dFxuICApIHtcbiAgICB0aGlzLiNyZXNvbHZlciA9IHJlc29sdmVyO1xuICAgIHRoaXMuI2FkYXB0ZXIgPSBhZGFwdGVyO1xuICAgIHRoaXMuI2luamVjdG9yID0gaW5qZWN0b3I7XG4gICAgdGhpcy4jcm91dGVyID0gcm91dGVyO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jbW9kYWxIb3N0Q29udGV4dCA9IG1vZGFsSG9zdENvbnRleHQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgLy8gQ2xvc2UgYWxsIG1vZGFsIGluc3RhbmNlcyBiZWZvcmUgZGlzcG9zaW5nIG9mIHRoZSBob3N0IGNvbnRhaW5lci5cbiAgICB0aGlzLiNjbG9zZUFsbE1vZGFsSW5zdGFuY2VzKCk7XG4gICAgdGhpcy4jbW9kYWxIb3N0Q29udGV4dC5hcmdzLnRlYXJkb3duQ2FsbGJhY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKFxuICAgIG1vZGFsSW5zdGFuY2U6IFNreU1vZGFsSW5zdGFuY2UsXG4gICAgY29tcG9uZW50OiBhbnksXG4gICAgY29uZmlnPzogU2t5TW9kYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlXG4gICk6IHZvaWQge1xuICAgIC8qIElnbm9yZSBjb3ZlcmFnZSBhcyB3ZSBzcGVjaWZ5IHRoZSB0YXJnZXQgZWxlbWVudCBhbmQgc28gdGhlIHZpZXcgY2hpbGQgc2hvdWxkIG5ldmVyIGJlIHVuZGVmaW5lZCB1bmxlc3NcbiAgICAgKiB3ZSB3ZXJlIHRvIGNhbGwgdGhlIGBvcGVuYCBtZXRob2QgaW4gYW4gZWFybHkgbGlmZWN5Y2xlIGhvb2suICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAoIXRoaXMudGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zOiBTa3lNb2RhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBjb25maWcpO1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLiNyZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnQpO1xuXG4gICAgY29uc3QgaG9zdFNlcnZpY2UgPSBuZXcgU2t5TW9kYWxIb3N0U2VydmljZSgpO1xuICAgIGhvc3RTZXJ2aWNlLmZ1bGxQYWdlID0gISFwYXJhbXMuZnVsbFBhZ2U7XG5cbiAgICBjb25zdCBhZGFwdGVyID0gdGhpcy4jYWRhcHRlcjtcbiAgICBjb25zdCBtb2RhbE9wZW5lcjogSFRNTEVsZW1lbnQgPSBhZGFwdGVyLmdldE1vZGFsT3BlbmVyKCk7XG5cbiAgICBsZXQgaXNPcGVuID0gdHJ1ZTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gKi9cbiAgICBwYXJhbXMucHJvdmlkZXJzIS5wdXNoKHtcbiAgICAgIHByb3ZpZGU6IFNreU1vZGFsSG9zdFNlcnZpY2UsXG4gICAgICB1c2VWYWx1ZTogaG9zdFNlcnZpY2UsXG4gICAgfSk7XG4gICAgcGFyYW1zLnByb3ZpZGVycyEucHVzaCh7XG4gICAgICBwcm92aWRlOiBTa3lNb2RhbENvbmZpZ3VyYXRpb24sXG4gICAgICB1c2VWYWx1ZTogcGFyYW1zLFxuICAgIH0pO1xuICAgIHBhcmFtcy5wcm92aWRlcnMhLnB1c2goe1xuICAgICAgcHJvdmlkZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgICB1c2VFeGlzdGluZzogU2t5UmVzaXplT2JzZXJ2ZXJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICB9KTtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gKi9cblxuICAgIGFkYXB0ZXIuc2V0UGFnZVNjcm9sbChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMCk7XG4gICAgYWRhcHRlci50b2dnbGVGdWxsUGFnZU1vZGFsQ2xhc3MoXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLmZ1bGxQYWdlTW9kYWxDb3VudCA+IDBcbiAgICApO1xuXG4gICAgY29uc3QgcHJvdmlkZXJzID0gcGFyYW1zLnByb3ZpZGVycyB8fCAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBbXTtcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwcm92aWRlcnMsXG4gICAgICBwYXJlbnQ6IHRoaXMuI2luamVjdG9yLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbW9kYWxDb21wb25lbnRSZWYgPSB0aGlzLnRhcmdldC5jcmVhdGVDb21wb25lbnQoXG4gICAgICBmYWN0b3J5LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgaW5qZWN0b3JcbiAgICApO1xuXG4gICAgbW9kYWxJbnN0YW5jZS5jb21wb25lbnRJbnN0YW5jZSA9IG1vZGFsQ29tcG9uZW50UmVmLmluc3RhbmNlO1xuXG4gICAgdGhpcy4jcmVnaXN0ZXJNb2RhbEluc3RhbmNlKG1vZGFsSW5zdGFuY2UpO1xuXG4gICAgZnVuY3Rpb24gY2xvc2VNb2RhbCgpIHtcbiAgICAgIGhvc3RTZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICAgIGFkYXB0ZXIuc2V0UGFnZVNjcm9sbChTa3lNb2RhbEhvc3RTZXJ2aWNlLm9wZW5Nb2RhbENvdW50ID4gMCk7XG4gICAgICBhZGFwdGVyLnRvZ2dsZUZ1bGxQYWdlTW9kYWxDbGFzcyhcbiAgICAgICAgU2t5TW9kYWxIb3N0U2VydmljZS5mdWxsUGFnZU1vZGFsQ291bnQgPiAwXG4gICAgICApO1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgaWYgKG1vZGFsT3BlbmVyICYmIG1vZGFsT3BlbmVyLmZvY3VzKSB7XG4gICAgICAgIG1vZGFsT3BlbmVyLmZvY3VzKCk7XG4gICAgICB9XG4gICAgICBtb2RhbENvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgaG9zdFNlcnZpY2Uub3BlbkhlbHAuc3Vic2NyaWJlKChoZWxwS2V5Pzogc3RyaW5nKSA9PiB7XG4gICAgICBtb2RhbEluc3RhbmNlLm9wZW5IZWxwKGhlbHBLZXkpO1xuICAgIH0pO1xuXG4gICAgaG9zdFNlcnZpY2UuY2xvc2Uuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIG1vZGFsSW5zdGFuY2UuY2xvc2UoKTtcbiAgICB9KTtcblxuICAgIHRoaXMuI3JvdXRlci5ldmVudHMucGlwZSh0YWtlV2hpbGUoKCkgPT4gaXNPcGVuKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICBtb2RhbEluc3RhbmNlLmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaXNPcGVuID0gZmFsc2U7XG4gICAgICB0aGlzLiN1bnJlZ2lzdGVyTW9kYWxJbnN0YW5jZShtb2RhbEluc3RhbmNlKTtcbiAgICAgIGNsb3NlTW9kYWwoKTtcbiAgICB9KTtcblxuICAgIC8vIE5lY2Vzc2FyeSBpZiB0aGUgaG9zdCB3YXMgY3JlYXRlZCB2aWEgYSBjb25zdW1lcidzIGxpZmVjeWNsZSBob29rIHN1Y2ggYXMgbmdPbkluaXRcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICAjcmVnaXN0ZXJNb2RhbEluc3RhbmNlKGluc3RhbmNlOiBTa3lNb2RhbEluc3RhbmNlKTogdm9pZCB7XG4gICAgdGhpcy4jbW9kYWxJbnN0YW5jZXMucHVzaChpbnN0YW5jZSk7XG4gIH1cblxuICAjdW5yZWdpc3Rlck1vZGFsSW5zdGFuY2UoaW5zdGFuY2U6IFNreU1vZGFsSW5zdGFuY2UpOiB2b2lkIHtcbiAgICB0aGlzLiNtb2RhbEluc3RhbmNlcy5zbGljZSh0aGlzLiNtb2RhbEluc3RhbmNlcy5pbmRleE9mKGluc3RhbmNlKSwgMSk7XG4gIH1cblxuICAjY2xvc2VBbGxNb2RhbEluc3RhbmNlcygpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGluc3RhbmNlIG9mIHRoaXMuI21vZGFsSW5zdGFuY2VzKSB7XG4gICAgICBpbnN0YW5jZS5jbG9zZSgpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1tb2RhbC1ob3N0LWJhY2tkcm9wXCJcbiAgW2hpZGRlbl09XCIhbW9kYWxPcGVuXCJcbiAgW25nU3R5bGVdPVwie1xuICAgIHpJbmRleDogYmFja2Ryb3BaSW5kZXhcbiAgfVwiXG4+PC9kaXY+XG48ZGl2ICN0YXJnZXQ+PC9kaXY+XG4iXX0=
@@ -1,5 +1,7 @@
1
1
  import { EventEmitter, Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ const BASE_Z_INDEX = 1040;
4
+ const modalHosts = [];
3
5
  /**
4
6
  * @internal
5
7
  * @dynamic
@@ -9,29 +11,24 @@ export class SkyModalHostService {
9
11
  this.close = new EventEmitter();
10
12
  this.fullPage = false;
11
13
  this.openHelp = new EventEmitter();
12
- SkyModalHostService.modalHosts.push(this);
14
+ this.zIndex = this.calculateZIndex();
15
+ modalHosts.push(this);
13
16
  }
14
17
  static get openModalCount() {
15
- return SkyModalHostService.modalHosts.length;
18
+ return modalHosts.length;
16
19
  }
17
20
  static get fullPageModalCount() {
18
- const fullPageModals = SkyModalHostService.modalHosts.filter((modal) => modal.fullPage);
21
+ const fullPageModals = modalHosts.filter((modal) => modal.fullPage);
19
22
  return fullPageModals.length;
20
23
  }
21
- static get BASE_Z_INDEX() {
22
- return 1040;
23
- }
24
24
  static get backdropZIndex() {
25
- return (SkyModalHostService.BASE_Z_INDEX +
26
- SkyModalHostService.modalHosts.length * 10);
25
+ return BASE_Z_INDEX + modalHosts.length * 10;
27
26
  }
28
27
  static get topModal() {
29
- return SkyModalHostService.modalHosts[SkyModalHostService.modalHosts.length - 1];
28
+ return modalHosts[modalHosts.length - 1];
30
29
  }
31
30
  getModalZIndex() {
32
- let zIndex = SkyModalHostService.BASE_Z_INDEX + 1;
33
- zIndex += (SkyModalHostService.modalHosts.indexOf(this) + 1) * 10;
34
- return zIndex;
31
+ return this.zIndex;
35
32
  }
36
33
  onClose() {
37
34
  this.close.emit();
@@ -40,10 +37,19 @@ export class SkyModalHostService {
40
37
  this.openHelp.emit(helpKey);
41
38
  }
42
39
  destroy() {
43
- SkyModalHostService.modalHosts.splice(SkyModalHostService.modalHosts.indexOf(this), 1);
40
+ modalHosts.splice(modalHosts.indexOf(this), 1);
41
+ }
42
+ calculateZIndex() {
43
+ const zIndexArray = modalHosts.map((hostService) => hostService.zIndex);
44
+ if (zIndexArray.length === 0) {
45
+ return BASE_Z_INDEX + 11;
46
+ }
47
+ else {
48
+ const currentMaxZIndex = Math.max(...zIndexArray);
49
+ return currentMaxZIndex + 10;
50
+ }
44
51
  }
45
52
  }
46
- SkyModalHostService.modalHosts = [];
47
53
  SkyModalHostService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
48
54
  SkyModalHostService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostService, providedIn: 'root' });
49
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyModalHostService, decorators: [{
@@ -52,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
52
58
  providedIn: 'root',
53
59
  }]
54
60
  }], ctorParameters: function () { return []; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwtaG9zdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6RDs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBbUM5QjtRQUpPLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFHeEMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBcENNLE1BQU0sS0FBSyxjQUFjO1FBQzlCLE9BQU8sbUJBQW1CLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBRU0sTUFBTSxLQUFLLGtCQUFrQjtRQUNsQyxNQUFNLGNBQWMsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUMxRCxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDMUIsQ0FBQztRQUNGLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRU8sTUFBTSxLQUFLLFlBQVk7UUFDN0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sTUFBTSxLQUFLLGNBQWM7UUFDOUIsT0FBTyxDQUNMLG1CQUFtQixDQUFDLFlBQVk7WUFDaEMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQzNDLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxLQUFLLFFBQVE7UUFDeEIsT0FBTyxtQkFBbUIsQ0FBQyxVQUFVLENBQ25DLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUMxQyxDQUFDO0lBQ0osQ0FBQztJQVlNLGNBQWM7UUFDbkIsSUFBSSxNQUFNLEdBQUcsbUJBQW1CLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztRQUNsRCxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNsRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxPQUFnQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU0sT0FBTztRQUNaLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQ25DLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQzVDLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7QUE3QmMsOEJBQVUsR0FBMEIsRUFBRyxDQUFBO2dIQTdCM0MsbUJBQW1CO29IQUFuQixtQkFBbUIsY0FGbEIsTUFBTTsyRkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBAZHluYW1pY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TW9kYWxIb3N0U2VydmljZSB7XG4gIHB1YmxpYyBzdGF0aWMgZ2V0IG9wZW5Nb2RhbENvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIFNreU1vZGFsSG9zdFNlcnZpY2UubW9kYWxIb3N0cy5sZW5ndGg7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldCBmdWxsUGFnZU1vZGFsQ291bnQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBmdWxsUGFnZU1vZGFscyA9IFNreU1vZGFsSG9zdFNlcnZpY2UubW9kYWxIb3N0cy5maWx0ZXIoXG4gICAgICAobW9kYWwpID0+IG1vZGFsLmZ1bGxQYWdlXG4gICAgKTtcbiAgICByZXR1cm4gZnVsbFBhZ2VNb2RhbHMubGVuZ3RoO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0IEJBU0VfWl9JTkRFWCgpOiBudW1iZXIge1xuICAgIHJldHVybiAxMDQwO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXQgYmFja2Ryb3BaSW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKFxuICAgICAgU2t5TW9kYWxIb3N0U2VydmljZS5CQVNFX1pfSU5ERVggK1xuICAgICAgU2t5TW9kYWxIb3N0U2VydmljZS5tb2RhbEhvc3RzLmxlbmd0aCAqIDEwXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IHRvcE1vZGFsKCk6IFNreU1vZGFsSG9zdFNlcnZpY2Uge1xuICAgIHJldHVybiBTa3lNb2RhbEhvc3RTZXJ2aWNlLm1vZGFsSG9zdHNbXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLm1vZGFsSG9zdHMubGVuZ3RoIC0gMVxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBtb2RhbEhvc3RzOiBTa3lNb2RhbEhvc3RTZXJ2aWNlW10gPSBbXTtcblxuICBwdWJsaWMgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIHB1YmxpYyBmdWxsUGFnZSA9IGZhbHNlO1xuICBwdWJsaWMgb3BlbkhlbHAgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLm1vZGFsSG9zdHMucHVzaCh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNb2RhbFpJbmRleCgpOiBudW1iZXIge1xuICAgIGxldCB6SW5kZXggPSBTa3lNb2RhbEhvc3RTZXJ2aWNlLkJBU0VfWl9JTkRFWCArIDE7XG4gICAgekluZGV4ICs9IChTa3lNb2RhbEhvc3RTZXJ2aWNlLm1vZGFsSG9zdHMuaW5kZXhPZih0aGlzKSArIDEpICogMTA7XG4gICAgcmV0dXJuIHpJbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uT3BlbkhlbHAoaGVscEtleT86IHN0cmluZykge1xuICAgIHRoaXMub3BlbkhlbHAuZW1pdChoZWxwS2V5KTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIFNreU1vZGFsSG9zdFNlcnZpY2UubW9kYWxIb3N0cy5zcGxpY2UoXG4gICAgICBTa3lNb2RhbEhvc3RTZXJ2aWNlLm1vZGFsSG9zdHMuaW5kZXhPZih0aGlzKSxcbiAgICAgIDFcbiAgICApO1xuICB9XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaG9zdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL21vZGFscy9zcmMvbGliL21vZHVsZXMvbW9kYWwvbW9kYWwtaG9zdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6RCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUM7QUFDMUIsTUFBTSxVQUFVLEdBQTBCLEVBQUUsQ0FBQztBQUU3Qzs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBdUI5QjtRQUxPLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJeEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDckMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBekJNLE1BQU0sS0FBSyxjQUFjO1FBQzlCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQztJQUMzQixDQUFDO0lBRU0sTUFBTSxLQUFLLGtCQUFrQjtRQUNsQyxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEUsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTSxNQUFNLEtBQUssY0FBYztRQUM5QixPQUFPLFlBQVksR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRU0sTUFBTSxLQUFLLFFBQVE7UUFDeEIsT0FBTyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBWU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBZ0I7UUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLE9BQU87UUFDWixVQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVPLGVBQWU7UUFDckIsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hFLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUIsT0FBTyxZQUFZLEdBQUcsRUFBRSxDQUFDO1NBQzFCO2FBQU07WUFDTCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQztZQUNsRCxPQUFPLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7O2dIQXBEVSxtQkFBbUI7b0hBQW5CLG1CQUFtQixjQUZsQixNQUFNOzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgQkFTRV9aX0lOREVYID0gMTA0MDtcbmNvbnN0IG1vZGFsSG9zdHM6IFNreU1vZGFsSG9zdFNlcnZpY2VbXSA9IFtdO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICogQGR5bmFtaWNcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreU1vZGFsSG9zdFNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIGdldCBvcGVuTW9kYWxDb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiBtb2RhbEhvc3RzLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IGZ1bGxQYWdlTW9kYWxDb3VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGZ1bGxQYWdlTW9kYWxzID0gbW9kYWxIb3N0cy5maWx0ZXIoKG1vZGFsKSA9PiBtb2RhbC5mdWxsUGFnZSk7XG4gICAgcmV0dXJuIGZ1bGxQYWdlTW9kYWxzLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IGJhY2tkcm9wWkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIEJBU0VfWl9JTkRFWCArIG1vZGFsSG9zdHMubGVuZ3RoICogMTA7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldCB0b3BNb2RhbCgpOiBTa3lNb2RhbEhvc3RTZXJ2aWNlIHtcbiAgICByZXR1cm4gbW9kYWxIb3N0c1ttb2RhbEhvc3RzLmxlbmd0aCAtIDFdO1xuICB9XG5cbiAgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBwdWJsaWMgZnVsbFBhZ2UgPSBmYWxzZTtcbiAgcHVibGljIG9wZW5IZWxwID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHB1YmxpYyB6SW5kZXg6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnpJbmRleCA9IHRoaXMuY2FsY3VsYXRlWkluZGV4KCk7XG4gICAgbW9kYWxIb3N0cy5wdXNoKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIGdldE1vZGFsWkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuekluZGV4O1xuICB9XG5cbiAgcHVibGljIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgb25PcGVuSGVscChoZWxwS2V5Pzogc3RyaW5nKSB7XG4gICAgdGhpcy5vcGVuSGVscC5lbWl0KGhlbHBLZXkpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgbW9kYWxIb3N0cy5zcGxpY2UobW9kYWxIb3N0cy5pbmRleE9mKHRoaXMpLCAxKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlWkluZGV4KCk6IG51bWJlciB7XG4gICAgY29uc3QgekluZGV4QXJyYXkgPSBtb2RhbEhvc3RzLm1hcCgoaG9zdFNlcnZpY2UpID0+IGhvc3RTZXJ2aWNlLnpJbmRleCk7XG4gICAgaWYgKHpJbmRleEFycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIEJBU0VfWl9JTkRFWCArIDExO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjdXJyZW50TWF4WkluZGV4ID0gTWF0aC5tYXgoLi4uekluZGV4QXJyYXkpO1xuICAgICAgcmV0dXJuIGN1cnJlbnRNYXhaSW5kZXggKyAxMDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,11 +1,14 @@
1
+ var _SkyModalInstance_instances, _SkyModalInstance__beforeClose, _SkyModalInstance__closed, _SkyModalInstance__helpOpened, _SkyModalInstance_closeModal, _SkyModalInstance_notifyClosed;
2
+ import { __classPrivateFieldGet } from "tslib";
1
3
  import { Subject } from 'rxjs';
2
4
  import { SkyModalBeforeCloseHandler } from './modal-before-close-handler';
3
5
  import { SkyModalCloseArgs } from './modal-close-args';
4
6
  export class SkyModalInstance {
5
7
  constructor() {
6
- this._beforeClose = new Subject();
7
- this._closed = new Subject();
8
- this._helpOpened = new Subject();
8
+ _SkyModalInstance_instances.add(this);
9
+ _SkyModalInstance__beforeClose.set(this, new Subject());
10
+ _SkyModalInstance__closed.set(this, new Subject());
11
+ _SkyModalInstance__helpOpened.set(this, new Subject());
9
12
  }
10
13
  /**
11
14
  * An event that the modal instance emits when it is about to close.
@@ -14,7 +17,7 @@ export class SkyModalInstance {
14
17
  * the modal does not close until the subscriber calls the `closeModal` method.
15
18
  */
16
19
  get beforeClose() {
17
- return this._beforeClose;
20
+ return __classPrivateFieldGet(this, _SkyModalInstance__beforeClose, "f");
18
21
  }
19
22
  /**
20
23
  * An event that the modal instance emits when it closes.
@@ -25,7 +28,7 @@ export class SkyModalInstance {
25
28
  * Common examples include `"cancel"`, `"close"`, and `"save"`.
26
29
  */
27
30
  get closed() {
28
- return this._closed;
31
+ return __classPrivateFieldGet(this, _SkyModalInstance__closed, "f");
29
32
  }
30
33
  /**
31
34
  * An event that the modal instance emits when users click
@@ -33,7 +36,7 @@ export class SkyModalInstance {
33
36
  * If a `helpKey` parameter was specified, the `helpOpened` event broadcasts the `helpKey`.
34
37
  */
35
38
  get helpOpened() {
36
- return this._helpOpened;
39
+ return __classPrivateFieldGet(this, _SkyModalInstance__helpOpened, "f");
37
40
  }
38
41
  /**
39
42
  * Closes the modal instance.
@@ -47,7 +50,7 @@ export class SkyModalInstance {
47
50
  if (reason === undefined) {
48
51
  reason = 'close';
49
52
  }
50
- this.closeModal(reason, result, ignoreBeforeClose);
53
+ __classPrivateFieldGet(this, _SkyModalInstance_instances, "m", _SkyModalInstance_closeModal).call(this, reason, result, ignoreBeforeClose);
51
54
  }
52
55
  /**
53
56
  * Closes the modal instance with `reason="cancel"`.
@@ -56,7 +59,7 @@ export class SkyModalInstance {
56
59
  * that this cancel function can be called from a button in the `sky-modal-footer`.
57
60
  */
58
61
  cancel(result) {
59
- this.closeModal('cancel', result);
62
+ __classPrivateFieldGet(this, _SkyModalInstance_instances, "m", _SkyModalInstance_closeModal).call(this, 'cancel', result);
60
63
  }
61
64
  /**
62
65
  * Closes the modal instance with `reason="save"`.
@@ -65,7 +68,7 @@ export class SkyModalInstance {
65
68
  * that this `save` function can be called from a button in `the sky-modal-footer`.
66
69
  */
67
70
  save(result) {
68
- this.closeModal('save', result);
71
+ __classPrivateFieldGet(this, _SkyModalInstance_instances, "m", _SkyModalInstance_closeModal).call(this, 'save', result);
69
72
  }
70
73
  /**
71
74
  * Triggers the `helpOpened` event that broadcasts a `helpKey` parameter to open
@@ -75,26 +78,25 @@ export class SkyModalInstance {
75
78
  * into a component's constructor to call the `openHelp` function in the modal template.
76
79
  */
77
80
  openHelp(helpKey) {
78
- this._helpOpened.next(helpKey);
81
+ __classPrivateFieldGet(this, _SkyModalInstance__helpOpened, "f").next(helpKey);
79
82
  }
80
- closeModal(type, result, ignoreBeforeClose = false) {
81
- const args = new SkyModalCloseArgs();
82
- args.reason = type;
83
- args.data = result;
84
- if (this._beforeClose.observers.length === 0 || ignoreBeforeClose) {
85
- this.notifyClosed(args);
86
- }
87
- else {
88
- this._beforeClose.next(new SkyModalBeforeCloseHandler(() => {
89
- this.notifyClosed(args);
90
- }, args));
91
- }
83
+ }
84
+ _SkyModalInstance__beforeClose = new WeakMap(), _SkyModalInstance__closed = new WeakMap(), _SkyModalInstance__helpOpened = new WeakMap(), _SkyModalInstance_instances = new WeakSet(), _SkyModalInstance_closeModal = function _SkyModalInstance_closeModal(type, result, ignoreBeforeClose = false) {
85
+ const args = new SkyModalCloseArgs();
86
+ args.reason = type;
87
+ args.data = result;
88
+ if (__classPrivateFieldGet(this, _SkyModalInstance__beforeClose, "f").observers.length === 0 || ignoreBeforeClose) {
89
+ __classPrivateFieldGet(this, _SkyModalInstance_instances, "m", _SkyModalInstance_notifyClosed).call(this, args);
92
90
  }
93
- notifyClosed(args) {
94
- this._closed.next(args);
95
- this._closed.complete();
96
- this._beforeClose.complete();
97
- this._helpOpened.complete();
91
+ else {
92
+ __classPrivateFieldGet(this, _SkyModalInstance__beforeClose, "f").next(new SkyModalBeforeCloseHandler(() => {
93
+ __classPrivateFieldGet(this, _SkyModalInstance_instances, "m", _SkyModalInstance_notifyClosed).call(this, args);
94
+ }, args));
98
95
  }
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXZELE1BQU0sT0FBTyxnQkFBZ0I7SUFBN0I7UUFxQ1UsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBOEIsQ0FBQztRQUV6RCxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQXFCLENBQUM7UUFFM0MsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO0lBZ0Y5QyxDQUFDO0lBeEhDOzs7OztPQUtHO0lBQ0gsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQWFEOzs7Ozs7O09BT0c7SUFDSSxLQUFLLENBQ1YsTUFBWSxFQUNaLE1BQWUsRUFDZixpQkFBMkI7UUFFM0IsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3hCLE1BQU0sR0FBRyxPQUFPLENBQUM7U0FDbEI7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsTUFBWTtRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxJQUFJLENBQUMsTUFBWTtRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLE9BQWdCO1FBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxVQUFVLENBQ2hCLElBQVksRUFDWixNQUFZLEVBQ1osaUJBQWlCLEdBQUcsS0FBSztRQUV6QixNQUFNLElBQUksR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFFckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7UUFFbkIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLGlCQUFpQixFQUFFO1lBQ2pFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekI7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNwQixJQUFJLDBCQUEwQixDQUFDLEdBQUcsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQ1QsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVPLFlBQVksQ0FBQyxJQUF1QjtRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNreU1vZGFsQmVmb3JlQ2xvc2VIYW5kbGVyIH0gZnJvbSAnLi9tb2RhbC1iZWZvcmUtY2xvc2UtaGFuZGxlcic7XG5pbXBvcnQgeyBTa3lNb2RhbENsb3NlQXJncyB9IGZyb20gJy4vbW9kYWwtY2xvc2UtYXJncyc7XG5cbmV4cG9ydCBjbGFzcyBTa3lNb2RhbEluc3RhbmNlIHtcbiAgLyoqXG4gICAqIEFuIGV2ZW50IHRoYXQgdGhlIG1vZGFsIGluc3RhbmNlIGVtaXRzIHdoZW4gaXQgaXMgYWJvdXQgdG8gY2xvc2UuXG4gICAqIEl0IGVtaXRzIGEgYFNreU1vZGFsQmVmb3JlQ2xvc2VIYW5kbGVyYCBvYmplY3Qgd2l0aCBhIGBjbG9zZU1vZGFsYCBtZXRob2RcbiAgICogdGhhdCBjbG9zZXMgdGhlIG1vZGFsLiBJZiBhIHN1YnNjcmlwdGlvbiBleGlzdHMgZm9yIHRoaXMgZXZlbnQsXG4gICAqIHRoZSBtb2RhbCBkb2VzIG5vdCBjbG9zZSB1bnRpbCB0aGUgc3Vic2NyaWJlciBjYWxscyB0aGUgYGNsb3NlTW9kYWxgIG1ldGhvZC5cbiAgICovXG4gIHB1YmxpYyBnZXQgYmVmb3JlQ2xvc2UoKTogT2JzZXJ2YWJsZTxTa3lNb2RhbEJlZm9yZUNsb3NlSGFuZGxlcj4ge1xuICAgIHJldHVybiB0aGlzLl9iZWZvcmVDbG9zZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBldmVudCB0aGF0IHRoZSBtb2RhbCBpbnN0YW5jZSBlbWl0cyB3aGVuIGl0IGNsb3Nlcy5cbiAgICogSXQgZW1pdHMgYSBgU2t5TW9kYWxDbG9zZUFyZ3NgIG9iamVjdCB3aXRoIGEgYGRhdGFgIHByb3BlcnR5IHRoYXQgaW5jbHVkZXNcbiAgICogZGF0YSBwYXNzZWQgZnJvbSB1c2VycyBvbiBjbG9zZSBvciBzYXZlIGFuZCBhIGByZWFzb25gIHByb3BlcnR5IHRoYXQgaW5kaWNhdGVzXG4gICAqIHdoZXRoZXIgdGhlIG1vZGFsIHdhcyBzYXZlZCBvciBjbG9zZWQgd2l0aG91dCBzYXZpbmcuXG4gICAqIFRoZSBgcmVhc29uYCBwcm9wZXJ0eSBhY2NlcHRzIGFueSBzdHJpbmcgdmFsdWUuXG4gICAqIENvbW1vbiBleGFtcGxlcyBpbmNsdWRlIGBcImNhbmNlbFwiYCwgYFwiY2xvc2VcImAsIGFuZCBgXCJzYXZlXCJgLlxuICAgKi9cbiAgcHVibGljIGdldCBjbG9zZWQoKTogT2JzZXJ2YWJsZTxTa3lNb2RhbENsb3NlQXJncz4ge1xuICAgIHJldHVybiB0aGlzLl9jbG9zZWQ7XG4gIH1cblxuICAvKipcbiAgICogQW4gZXZlbnQgdGhhdCB0aGUgbW9kYWwgaW5zdGFuY2UgZW1pdHMgd2hlbiB1c2VycyBjbGlja1xuICAgKiB0aGUgPGkgY2xhc3M9XCJmYSBmYS1xdWVzdGlvbi1jaXJjbGVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IGJ1dHRvbi5cbiAgICogSWYgYSBgaGVscEtleWAgcGFyYW1ldGVyIHdhcyBzcGVjaWZpZWQsIHRoZSBgaGVscE9wZW5lZGAgZXZlbnQgYnJvYWRjYXN0cyB0aGUgYGhlbHBLZXlgLlxuICAgKi9cbiAgcHVibGljIGdldCBoZWxwT3BlbmVkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX2hlbHBPcGVuZWQ7XG4gIH1cblxuICAvKipcbiAgICogQSBkaXJlY3QgcmVmZXJlbmNlIHRvIHRoZSBwcm92aWRlZCBjb21wb25lbnQncyBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBjb21wb25lbnRJbnN0YW5jZTogYW55O1xuXG4gIHByaXZhdGUgX2JlZm9yZUNsb3NlID0gbmV3IFN1YmplY3Q8U2t5TW9kYWxCZWZvcmVDbG9zZUhhbmRsZXI+KCk7XG5cbiAgcHJpdmF0ZSBfY2xvc2VkID0gbmV3IFN1YmplY3Q8U2t5TW9kYWxDbG9zZUFyZ3M+KCk7XG5cbiAgcHJpdmF0ZSBfaGVscE9wZW5lZCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBtb2RhbCBpbnN0YW5jZS5cbiAgICogQHBhcmFtIHJlc3VsdCBTcGVjaWZpZXMgYW4gb2JqZWN0IHRvIGVtaXQgdG8gc3Vic2NyaWJlcnMgb2YgdGhlIGBjbG9zZWRgIGV2ZW50IG9mIHRoZVxuICAgKiBtb2RhbCBpbnN0YW5jZS4gVGhlIGBTa3lNb2RhbEluc3RhbmNlYCBwcm92aWRlciBjYW4gYmUgaW5qZWN0ZWQgaW50byBhIGNvbXBvbmVudCdzIGNvbnN0cnVjdG9yXG4gICAqIHNvIHRoYXQgdGhpcyBgY2xvc2VgIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSBhIGJ1dHRvbiBpbiB0aGUgYHNreS1tb2RhbC1mb290ZXJgLlxuICAgKiBAcGFyYW0gcmVhc29uIFNwZWNpZmllcyB0aGUgcmVhc29uIGZvciB0aGUgbW9kYWwgY2xvc2luZywgd2l0aCB0aGUgZGVmYXVsdCByZWFzb24gb2YgYFwiY2xvc2VcImAuXG4gICAqIEBwYXJhbSBpZ25vcmVCZWZvcmVDbG9zZSBJbmRpY2F0ZXMgd2hldGhlciB0byBpZ25vcmUgdGhlIG1vZGFsIGluc3RhbmNlJ3MgYGJlZm9yZUNsb3NlYCBldmVudC5cbiAgICovXG4gIHB1YmxpYyBjbG9zZShcbiAgICByZXN1bHQ/OiBhbnksXG4gICAgcmVhc29uPzogc3RyaW5nLFxuICAgIGlnbm9yZUJlZm9yZUNsb3NlPzogYm9vbGVhblxuICApOiB2b2lkIHtcbiAgICBpZiAocmVhc29uID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlYXNvbiA9ICdjbG9zZSc7XG4gICAgfVxuXG4gICAgdGhpcy5jbG9zZU1vZGFsKHJlYXNvbiwgcmVzdWx0LCBpZ25vcmVCZWZvcmVDbG9zZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBtb2RhbCBpbnN0YW5jZSB3aXRoIGByZWFzb249XCJjYW5jZWxcImAuXG4gICAqIEBwYXJhbSByZXN1bHQgU3BlY2lmaWVzIGFuIG9iamVjdCB0byBlbWl0IHRvIHN1YnNjcmliZXJzIG9mIHRoZSBgY2xvc2VkYCBldmVudCBvZiB0aGUgbW9kYWxcbiAgICogaW5zdGFuY2UuIFRoZSBgU2t5TW9kYWxJbnN0YW5jZWAgcHJvdmlkZXIgY2FuIGJlIGluamVjdGVkIGludG8gYSBjb21wb25lbnQncyBjb25zdHJ1Y3RvciBzb1xuICAgKiB0aGF0IHRoaXMgY2FuY2VsIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSBhIGJ1dHRvbiBpbiB0aGUgYHNreS1tb2RhbC1mb290ZXJgLlxuICAgKi9cbiAgcHVibGljIGNhbmNlbChyZXN1bHQ/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlTW9kYWwoJ2NhbmNlbCcsIHJlc3VsdCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBtb2RhbCBpbnN0YW5jZSB3aXRoIGByZWFzb249XCJzYXZlXCJgLlxuICAgKiBAcGFyYW0gcmVzdWx0IFNwZWNpZmllcyBhbiBvYmplY3QgdG8gZW1pdCB0byBzdWJzY3JpYmVycyBvZiB0aGUgYGNsb3NlZGAgZXZlbnQgb2YgdGhlIG1vZGFsXG4gICAqIGluc3RhbmNlLiBUaGUgYFNreU1vZGFsSW5zdGFuY2VgIHByb3ZpZGVyIGNhbiBiZSBpbmplY3RlZCBpbnRvIGEgY29tcG9uZW50J3MgY29uc3RydWN0b3Igc29cbiAgICogdGhhdCB0aGlzIGBzYXZlYCBmdW5jdGlvbiBjYW4gYmUgY2FsbGVkIGZyb20gYSBidXR0b24gaW4gYHRoZSBza3ktbW9kYWwtZm9vdGVyYC5cbiAgICovXG4gIHB1YmxpYyBzYXZlKHJlc3VsdD86IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VNb2RhbCgnc2F2ZScsIHJlc3VsdCk7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgdGhlIGBoZWxwT3BlbmVkYCBldmVudCB0aGF0IGJyb2FkY2FzdHMgYSBgaGVscEtleWAgcGFyYW1ldGVyIHRvIG9wZW5cbiAgICogd2hlbiB1c2VycyBjbGljayB0aGUgPGkgY2xhc3M9XCJmYSBmYS1xdWVzdGlvbi1jaXJjbGVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IGJ1dHRvbi5cbiAgICogQHBhcmFtIGhlbHBLZXkgU3BlY2lmaWVzIGEgc3RyaW5nIHRvIGVtaXQgdG8gc3Vic2NyaWJlcnMgb2ZcbiAgICogdGhlIG1vZGFsIGluc3RhbmNlJ3MgYGhlbHBPcGVuZWRgIGV2ZW50LiBDb25zdW1lcnMgY2FuIGluamVjdCB0aGUgYFNreU1vZGFsSW5zdGFuY2VgIHByb3ZpZGVyXG4gICAqIGludG8gYSBjb21wb25lbnQncyBjb25zdHJ1Y3RvciB0byBjYWxsIHRoZSBgb3BlbkhlbHBgIGZ1bmN0aW9uIGluIHRoZSBtb2RhbCB0ZW1wbGF0ZS5cbiAgICovXG4gIHB1YmxpYyBvcGVuSGVscChoZWxwS2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5faGVscE9wZW5lZC5uZXh0KGhlbHBLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZU1vZGFsKFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICByZXN1bHQ/OiBhbnksXG4gICAgaWdub3JlQmVmb3JlQ2xvc2UgPSBmYWxzZVxuICApOiB2b2lkIHtcbiAgICBjb25zdCBhcmdzID0gbmV3IFNreU1vZGFsQ2xvc2VBcmdzKCk7XG5cbiAgICBhcmdzLnJlYXNvbiA9IHR5cGU7XG4gICAgYXJncy5kYXRhID0gcmVzdWx0O1xuXG4gICAgaWYgKHRoaXMuX2JlZm9yZUNsb3NlLm9ic2VydmVycy5sZW5ndGggPT09IDAgfHwgaWdub3JlQmVmb3JlQ2xvc2UpIHtcbiAgICAgIHRoaXMubm90aWZ5Q2xvc2VkKGFyZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9iZWZvcmVDbG9zZS5uZXh0KFxuICAgICAgICBuZXcgU2t5TW9kYWxCZWZvcmVDbG9zZUhhbmRsZXIoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubm90aWZ5Q2xvc2VkKGFyZ3MpO1xuICAgICAgICB9LCBhcmdzKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5vdGlmeUNsb3NlZChhcmdzOiBTa3lNb2RhbENsb3NlQXJncyk6IHZvaWQge1xuICAgIHRoaXMuX2Nsb3NlZC5uZXh0KGFyZ3MpO1xuICAgIHRoaXMuX2Nsb3NlZC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2JlZm9yZUNsb3NlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5faGVscE9wZW5lZC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
96
+ }, _SkyModalInstance_notifyClosed = function _SkyModalInstance_notifyClosed(args) {
97
+ __classPrivateFieldGet(this, _SkyModalInstance__closed, "f").next(args);
98
+ __classPrivateFieldGet(this, _SkyModalInstance__closed, "f").complete();
99
+ __classPrivateFieldGet(this, _SkyModalInstance__beforeClose, "f").complete();
100
+ __classPrivateFieldGet(this, _SkyModalInstance__helpOpened, "f").complete();
101
+ };
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbW9kYWxzL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC1pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkQsTUFBTSxPQUFPLGdCQUFnQjtJQUE3Qjs7UUFxQ0UseUNBQWdCLElBQUksT0FBTyxFQUE4QixFQUFDO1FBRTFELG9DQUFXLElBQUksT0FBTyxFQUFxQixFQUFDO1FBRTVDLHdDQUFlLElBQUksT0FBTyxFQUFVLEVBQUM7SUE0RXZDLENBQUM7SUFwSEM7Ozs7O09BS0c7SUFDSCxJQUFXLFdBQVc7UUFDcEIsT0FBTyx1QkFBQSxJQUFJLHNDQUFjLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxJQUFXLE1BQU07UUFDZixPQUFPLHVCQUFBLElBQUksaUNBQVMsQ0FBQztJQUN2QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQVcsVUFBVTtRQUNuQixPQUFPLHVCQUFBLElBQUkscUNBQWEsQ0FBQztJQUMzQixDQUFDO0lBYUQ7Ozs7Ozs7T0FPRztJQUNJLEtBQUssQ0FDVixNQUFZLEVBQ1osTUFBZSxFQUNmLGlCQUEyQjtRQUUzQixJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDeEIsTUFBTSxHQUFHLE9BQU8sQ0FBQztTQUNsQjtRQUVELHVCQUFBLElBQUksaUVBQVksTUFBaEIsSUFBSSxFQUFhLE1BQU0sRUFBRSxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsTUFBWTtRQUN4Qix1QkFBQSxJQUFJLGlFQUFZLE1BQWhCLElBQUksRUFBYSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksSUFBSSxDQUFDLE1BQVk7UUFDdEIsdUJBQUEsSUFBSSxpRUFBWSxNQUFoQixJQUFJLEVBQWEsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxRQUFRLENBQUMsT0FBZ0I7UUFDOUIsdUJBQUEsSUFBSSxxQ0FBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBeUJGOzRQQXZCYSxJQUFZLEVBQUUsTUFBWSxFQUFFLGlCQUFpQixHQUFHLEtBQUs7SUFDL0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO0lBRXJDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO0lBRW5CLElBQUksdUJBQUEsSUFBSSxzQ0FBYyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLGlCQUFpQixFQUFFO1FBQ2xFLHVCQUFBLElBQUksbUVBQWMsTUFBbEIsSUFBSSxFQUFlLElBQUksQ0FBQyxDQUFDO0tBQzFCO1NBQU07UUFDTCx1QkFBQSxJQUFJLHNDQUFjLENBQUMsSUFBSSxDQUNyQixJQUFJLDBCQUEwQixDQUFDLEdBQUcsRUFBRTtZQUNsQyx1QkFBQSxJQUFJLG1FQUFjLE1BQWxCLElBQUksRUFBZSxJQUFJLENBQUMsQ0FBQztRQUMzQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQ1QsQ0FBQztLQUNIO0FBQ0gsQ0FBQywyRUFFYSxJQUF1QjtJQUNuQyx1QkFBQSxJQUFJLGlDQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLHVCQUFBLElBQUksaUNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6Qix1QkFBQSxJQUFJLHNDQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsdUJBQUEsSUFBSSxxQ0FBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBQy9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNreU1vZGFsQmVmb3JlQ2xvc2VIYW5kbGVyIH0gZnJvbSAnLi9tb2RhbC1iZWZvcmUtY2xvc2UtaGFuZGxlcic7XG5pbXBvcnQgeyBTa3lNb2RhbENsb3NlQXJncyB9IGZyb20gJy4vbW9kYWwtY2xvc2UtYXJncyc7XG5cbmV4cG9ydCBjbGFzcyBTa3lNb2RhbEluc3RhbmNlIHtcbiAgLyoqXG4gICAqIEFuIGV2ZW50IHRoYXQgdGhlIG1vZGFsIGluc3RhbmNlIGVtaXRzIHdoZW4gaXQgaXMgYWJvdXQgdG8gY2xvc2UuXG4gICAqIEl0IGVtaXRzIGEgYFNreU1vZGFsQmVmb3JlQ2xvc2VIYW5kbGVyYCBvYmplY3Qgd2l0aCBhIGBjbG9zZU1vZGFsYCBtZXRob2RcbiAgICogdGhhdCBjbG9zZXMgdGhlIG1vZGFsLiBJZiBhIHN1YnNjcmlwdGlvbiBleGlzdHMgZm9yIHRoaXMgZXZlbnQsXG4gICAqIHRoZSBtb2RhbCBkb2VzIG5vdCBjbG9zZSB1bnRpbCB0aGUgc3Vic2NyaWJlciBjYWxscyB0aGUgYGNsb3NlTW9kYWxgIG1ldGhvZC5cbiAgICovXG4gIHB1YmxpYyBnZXQgYmVmb3JlQ2xvc2UoKTogT2JzZXJ2YWJsZTxTa3lNb2RhbEJlZm9yZUNsb3NlSGFuZGxlcj4ge1xuICAgIHJldHVybiB0aGlzLiNfYmVmb3JlQ2xvc2U7XG4gIH1cblxuICAvKipcbiAgICogQW4gZXZlbnQgdGhhdCB0aGUgbW9kYWwgaW5zdGFuY2UgZW1pdHMgd2hlbiBpdCBjbG9zZXMuXG4gICAqIEl0IGVtaXRzIGEgYFNreU1vZGFsQ2xvc2VBcmdzYCBvYmplY3Qgd2l0aCBhIGBkYXRhYCBwcm9wZXJ0eSB0aGF0IGluY2x1ZGVzXG4gICAqIGRhdGEgcGFzc2VkIGZyb20gdXNlcnMgb24gY2xvc2Ugb3Igc2F2ZSBhbmQgYSBgcmVhc29uYCBwcm9wZXJ0eSB0aGF0IGluZGljYXRlc1xuICAgKiB3aGV0aGVyIHRoZSBtb2RhbCB3YXMgc2F2ZWQgb3IgY2xvc2VkIHdpdGhvdXQgc2F2aW5nLlxuICAgKiBUaGUgYHJlYXNvbmAgcHJvcGVydHkgYWNjZXB0cyBhbnkgc3RyaW5nIHZhbHVlLlxuICAgKiBDb21tb24gZXhhbXBsZXMgaW5jbHVkZSBgXCJjYW5jZWxcImAsIGBcImNsb3NlXCJgLCBhbmQgYFwic2F2ZVwiYC5cbiAgICovXG4gIHB1YmxpYyBnZXQgY2xvc2VkKCk6IE9ic2VydmFibGU8U2t5TW9kYWxDbG9zZUFyZ3M+IHtcbiAgICByZXR1cm4gdGhpcy4jX2Nsb3NlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBldmVudCB0aGF0IHRoZSBtb2RhbCBpbnN0YW5jZSBlbWl0cyB3aGVuIHVzZXJzIGNsaWNrXG4gICAqIHRoZSA8aSBjbGFzcz1cImZhIGZhLXF1ZXN0aW9uLWNpcmNsZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT4gYnV0dG9uLlxuICAgKiBJZiBhIGBoZWxwS2V5YCBwYXJhbWV0ZXIgd2FzIHNwZWNpZmllZCwgdGhlIGBoZWxwT3BlbmVkYCBldmVudCBicm9hZGNhc3RzIHRoZSBgaGVscEtleWAuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhlbHBPcGVuZWQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy4jX2hlbHBPcGVuZWQ7XG4gIH1cblxuICAvKipcbiAgICogQSBkaXJlY3QgcmVmZXJlbmNlIHRvIHRoZSBwcm92aWRlZCBjb21wb25lbnQncyBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBjb21wb25lbnRJbnN0YW5jZTogYW55O1xuXG4gICNfYmVmb3JlQ2xvc2UgPSBuZXcgU3ViamVjdDxTa3lNb2RhbEJlZm9yZUNsb3NlSGFuZGxlcj4oKTtcblxuICAjX2Nsb3NlZCA9IG5ldyBTdWJqZWN0PFNreU1vZGFsQ2xvc2VBcmdzPigpO1xuXG4gICNfaGVscE9wZW5lZCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBtb2RhbCBpbnN0YW5jZS5cbiAgICogQHBhcmFtIHJlc3VsdCBTcGVjaWZpZXMgYW4gb2JqZWN0IHRvIGVtaXQgdG8gc3Vic2NyaWJlcnMgb2YgdGhlIGBjbG9zZWRgIGV2ZW50IG9mIHRoZVxuICAgKiBtb2RhbCBpbnN0YW5jZS4gVGhlIGBTa3lNb2RhbEluc3RhbmNlYCBwcm92aWRlciBjYW4gYmUgaW5qZWN0ZWQgaW50byBhIGNvbXBvbmVudCdzIGNvbnN0cnVjdG9yXG4gICAqIHNvIHRoYXQgdGhpcyBgY2xvc2VgIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSBhIGJ1dHRvbiBpbiB0aGUgYHNreS1tb2RhbC1mb290ZXJgLlxuICAgKiBAcGFyYW0gcmVhc29uIFNwZWNpZmllcyB0aGUgcmVhc29uIGZvciB0aGUgbW9kYWwgY2xvc2luZywgd2l0aCB0aGUgZGVmYXVsdCByZWFzb24gb2YgYFwiY2xvc2VcImAuXG4gICAqIEBwYXJhbSBpZ25vcmVCZWZvcmVDbG9zZSBJbmRpY2F0ZXMgd2hldGhlciB0byBpZ25vcmUgdGhlIG1vZGFsIGluc3RhbmNlJ3MgYGJlZm9yZUNsb3NlYCBldmVudC5cbiAgICovXG4gIHB1YmxpYyBjbG9zZShcbiAgICByZXN1bHQ/OiBhbnksXG4gICAgcmVhc29uPzogc3RyaW5nLFxuICAgIGlnbm9yZUJlZm9yZUNsb3NlPzogYm9vbGVhblxuICApOiB2b2lkIHtcbiAgICBpZiAocmVhc29uID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlYXNvbiA9ICdjbG9zZSc7XG4gICAgfVxuXG4gICAgdGhpcy4jY2xvc2VNb2RhbChyZWFzb24sIHJlc3VsdCwgaWdub3JlQmVmb3JlQ2xvc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbW9kYWwgaW5zdGFuY2Ugd2l0aCBgcmVhc29uPVwiY2FuY2VsXCJgLlxuICAgKiBAcGFyYW0gcmVzdWx0IFNwZWNpZmllcyBhbiBvYmplY3QgdG8gZW1pdCB0byBzdWJzY3JpYmVycyBvZiB0aGUgYGNsb3NlZGAgZXZlbnQgb2YgdGhlIG1vZGFsXG4gICAqIGluc3RhbmNlLiBUaGUgYFNreU1vZGFsSW5zdGFuY2VgIHByb3ZpZGVyIGNhbiBiZSBpbmplY3RlZCBpbnRvIGEgY29tcG9uZW50J3MgY29uc3RydWN0b3Igc29cbiAgICogdGhhdCB0aGlzIGNhbmNlbCBmdW5jdGlvbiBjYW4gYmUgY2FsbGVkIGZyb20gYSBidXR0b24gaW4gdGhlIGBza3ktbW9kYWwtZm9vdGVyYC5cbiAgICovXG4gIHB1YmxpYyBjYW5jZWwocmVzdWx0PzogYW55KTogdm9pZCB7XG4gICAgdGhpcy4jY2xvc2VNb2RhbCgnY2FuY2VsJywgcmVzdWx0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1vZGFsIGluc3RhbmNlIHdpdGggYHJlYXNvbj1cInNhdmVcImAuXG4gICAqIEBwYXJhbSByZXN1bHQgU3BlY2lmaWVzIGFuIG9iamVjdCB0byBlbWl0IHRvIHN1YnNjcmliZXJzIG9mIHRoZSBgY2xvc2VkYCBldmVudCBvZiB0aGUgbW9kYWxcbiAgICogaW5zdGFuY2UuIFRoZSBgU2t5TW9kYWxJbnN0YW5jZWAgcHJvdmlkZXIgY2FuIGJlIGluamVjdGVkIGludG8gYSBjb21wb25lbnQncyBjb25zdHJ1Y3RvciBzb1xuICAgKiB0aGF0IHRoaXMgYHNhdmVgIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSBhIGJ1dHRvbiBpbiBgdGhlIHNreS1tb2RhbC1mb290ZXJgLlxuICAgKi9cbiAgcHVibGljIHNhdmUocmVzdWx0PzogYW55KTogdm9pZCB7XG4gICAgdGhpcy4jY2xvc2VNb2RhbCgnc2F2ZScsIHJlc3VsdCk7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgdGhlIGBoZWxwT3BlbmVkYCBldmVudCB0aGF0IGJyb2FkY2FzdHMgYSBgaGVscEtleWAgcGFyYW1ldGVyIHRvIG9wZW5cbiAgICogd2hlbiB1c2VycyBjbGljayB0aGUgPGkgY2xhc3M9XCJmYSBmYS1xdWVzdGlvbi1jaXJjbGVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+IGJ1dHRvbi5cbiAgICogQHBhcmFtIGhlbHBLZXkgU3BlY2lmaWVzIGEgc3RyaW5nIHRvIGVtaXQgdG8gc3Vic2NyaWJlcnMgb2ZcbiAgICogdGhlIG1vZGFsIGluc3RhbmNlJ3MgYGhlbHBPcGVuZWRgIGV2ZW50LiBDb25zdW1lcnMgY2FuIGluamVjdCB0aGUgYFNreU1vZGFsSW5zdGFuY2VgIHByb3ZpZGVyXG4gICAqIGludG8gYSBjb21wb25lbnQncyBjb25zdHJ1Y3RvciB0byBjYWxsIHRoZSBgb3BlbkhlbHBgIGZ1bmN0aW9uIGluIHRoZSBtb2RhbCB0ZW1wbGF0ZS5cbiAgICovXG4gIHB1YmxpYyBvcGVuSGVscChoZWxwS2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy4jX2hlbHBPcGVuZWQubmV4dChoZWxwS2V5KTtcbiAgfVxuXG4gICNjbG9zZU1vZGFsKHR5cGU6IHN0cmluZywgcmVzdWx0PzogYW55LCBpZ25vcmVCZWZvcmVDbG9zZSA9IGZhbHNlKTogdm9pZCB7XG4gICAgY29uc3QgYXJncyA9IG5ldyBTa3lNb2RhbENsb3NlQXJncygpO1xuXG4gICAgYXJncy5yZWFzb24gPSB0eXBlO1xuICAgIGFyZ3MuZGF0YSA9IHJlc3VsdDtcblxuICAgIGlmICh0aGlzLiNfYmVmb3JlQ2xvc2Uub2JzZXJ2ZXJzLmxlbmd0aCA9PT0gMCB8fCBpZ25vcmVCZWZvcmVDbG9zZSkge1xuICAgICAgdGhpcy4jbm90aWZ5Q2xvc2VkKGFyZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNfYmVmb3JlQ2xvc2UubmV4dChcbiAgICAgICAgbmV3IFNreU1vZGFsQmVmb3JlQ2xvc2VIYW5kbGVyKCgpID0+IHtcbiAgICAgICAgICB0aGlzLiNub3RpZnlDbG9zZWQoYXJncyk7XG4gICAgICAgIH0sIGFyZ3MpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gICNub3RpZnlDbG9zZWQoYXJnczogU2t5TW9kYWxDbG9zZUFyZ3MpOiB2b2lkIHtcbiAgICB0aGlzLiNfY2xvc2VkLm5leHQoYXJncyk7XG4gICAgdGhpcy4jX2Nsb3NlZC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuI19iZWZvcmVDbG9zZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuI19oZWxwT3BlbmVkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==