@skyux/indicators 6.18.0 → 6.20.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 (60) hide show
  1. package/documentation.json +1715 -563
  2. package/esm2020/index.mjs +2 -1
  3. package/esm2020/lib/modules/icon/icon-stack.component.mjs +1 -1
  4. package/esm2020/lib/modules/icon/icon.component.mjs +1 -10
  5. package/esm2020/lib/modules/key-info/key-info-layout-type.mjs +2 -0
  6. package/esm2020/lib/modules/key-info/key-info.component.mjs +1 -1
  7. package/esm2020/lib/modules/status-indicator/status-indicator.component.mjs +6 -6
  8. package/esm2020/lib/modules/tokens/token.component.mjs +31 -29
  9. package/esm2020/lib/modules/tokens/tokens.component.mjs +100 -86
  10. package/esm2020/lib/modules/tokens/types/token.mjs +1 -1
  11. package/esm2020/lib/modules/wait/wait-adapter.service.mjs +131 -128
  12. package/esm2020/lib/modules/wait/wait-page.component.mjs +1 -1
  13. package/esm2020/lib/modules/wait/wait.component.mjs +83 -36
  14. package/esm2020/lib/modules/wait/wait.service.mjs +80 -73
  15. package/esm2020/testing/alert/alert-harness-filters.mjs +1 -1
  16. package/esm2020/testing/alert/alert-harness.mjs +53 -8
  17. package/esm2020/testing/key-info/key-info-harness-filters.mjs +2 -0
  18. package/esm2020/testing/key-info/key-info-harness.mjs +49 -0
  19. package/esm2020/testing/key-info/key-info-label-harness.mjs +18 -0
  20. package/esm2020/testing/key-info/key-info-value-harness.mjs +18 -0
  21. package/esm2020/testing/label/label-harness-filters.mjs +2 -0
  22. package/esm2020/testing/label/label-harness.mjs +94 -0
  23. package/esm2020/testing/public-api.mjs +7 -3
  24. package/esm2020/testing/tokens/token-harness.mjs +6 -3
  25. package/esm2020/testing/tokens/tokens-harness.mjs +4 -1
  26. package/esm2020/testing/wait-fixture.mjs +1 -1
  27. package/fesm2015/skyux-indicators-testing.mjs +329 -85
  28. package/fesm2015/skyux-indicators-testing.mjs.map +1 -1
  29. package/fesm2015/skyux-indicators.mjs +423 -364
  30. package/fesm2015/skyux-indicators.mjs.map +1 -1
  31. package/fesm2020/skyux-indicators-testing.mjs +297 -75
  32. package/fesm2020/skyux-indicators-testing.mjs.map +1 -1
  33. package/fesm2020/skyux-indicators.mjs +422 -364
  34. package/fesm2020/skyux-indicators.mjs.map +1 -1
  35. package/index.d.ts +1 -0
  36. package/lib/modules/icon/icon-stack.component.d.ts +1 -1
  37. package/lib/modules/icon/icon.component.d.ts +4 -4
  38. package/lib/modules/key-info/key-info-layout-type.d.ts +1 -0
  39. package/lib/modules/key-info/key-info.component.d.ts +2 -1
  40. package/lib/modules/status-indicator/status-indicator.component.d.ts +8 -8
  41. package/lib/modules/tokens/token.component.d.ts +10 -27
  42. package/lib/modules/tokens/tokens.component.d.ts +17 -34
  43. package/lib/modules/tokens/types/token.d.ts +2 -1
  44. package/lib/modules/wait/wait-adapter.service.d.ts +3 -13
  45. package/lib/modules/wait/wait-page.component.d.ts +2 -2
  46. package/lib/modules/wait/wait.component.d.ts +12 -16
  47. package/lib/modules/wait/wait.service.d.ts +1 -11
  48. package/package.json +5 -5
  49. package/testing/alert/alert-harness-filters.d.ts +0 -1
  50. package/testing/alert/alert-harness.d.ts +12 -2
  51. package/testing/key-info/key-info-harness-filters.d.ts +6 -0
  52. package/testing/key-info/key-info-harness.d.ts +31 -0
  53. package/testing/key-info/key-info-label-harness.d.ts +15 -0
  54. package/testing/key-info/key-info-value-harness.d.ts +15 -0
  55. package/testing/label/label-harness-filters.d.ts +6 -0
  56. package/testing/label/label-harness.d.ts +35 -0
  57. package/testing/public-api.d.ts +6 -2
  58. package/testing/tokens/token-harness.d.ts +3 -0
  59. package/testing/tokens/tokens-harness.d.ts +3 -0
  60. package/testing/wait-fixture.d.ts +1 -1
@@ -1,6 +1,9 @@
1
- import { Component, ElementRef, Input, Optional } from '@angular/core';
1
+ var _SkyWaitComponent_instances, _SkyWaitComponent_elRef, _SkyWaitComponent_adapterService, _SkyWaitComponent_resourceSvc, _SkyWaitComponent_ngUnsubscribe, _SkyWaitComponent_id, _SkyWaitComponent_customAriaLabel, _SkyWaitComponent__isFullPage, _SkyWaitComponent__isNonBlocking, _SkyWaitComponent__isWaiting, _SkyWaitComponent_publishAriaLabel;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { Component, ElementRef, Input, Optional, } from '@angular/core';
2
4
  import { SkyLibResourcesService } from '@skyux/i18n';
3
- import { BehaviorSubject } from 'rxjs';
5
+ import { BehaviorSubject, Subject } from 'rxjs';
6
+ import { take, takeUntil } from 'rxjs/operators';
4
7
  import { SkyWaitAdapterService } from './wait-adapter.service';
5
8
  import * as i0 from "@angular/core";
6
9
  import * as i1 from "./wait-adapter.service";
@@ -8,28 +11,52 @@ import * as i2 from "@skyux/i18n";
8
11
  import * as i3 from "@angular/common";
9
12
  let nextId = 0;
10
13
  export class SkyWaitComponent {
11
- constructor(elRef, adapterService, resourceService) {
12
- this.elRef = elRef;
13
- this.adapterService = adapterService;
14
- this.resourceService = resourceService;
14
+ constructor(elRef, adapterService, resourceSvc) {
15
+ _SkyWaitComponent_instances.add(this);
15
16
  this.ariaLabelStream = new BehaviorSubject('');
16
- this.id = `sky-wait-${++nextId}`;
17
+ _SkyWaitComponent_elRef.set(this, void 0);
18
+ _SkyWaitComponent_adapterService.set(this, void 0);
19
+ _SkyWaitComponent_resourceSvc.set(this, void 0);
20
+ _SkyWaitComponent_ngUnsubscribe.set(this, new Subject());
21
+ _SkyWaitComponent_id.set(this, void 0);
22
+ _SkyWaitComponent_customAriaLabel.set(this, void 0);
23
+ _SkyWaitComponent__isFullPage.set(this, void 0);
24
+ _SkyWaitComponent__isNonBlocking.set(this, void 0);
25
+ _SkyWaitComponent__isWaiting.set(this, void 0);
26
+ __classPrivateFieldSet(this, _SkyWaitComponent_elRef, elRef, "f");
27
+ __classPrivateFieldSet(this, _SkyWaitComponent_adapterService, adapterService, "f");
28
+ __classPrivateFieldSet(this, _SkyWaitComponent_resourceSvc, resourceSvc, "f");
29
+ __classPrivateFieldSet(this, _SkyWaitComponent_id, `sky-wait-${++nextId}`, "f");
30
+ }
31
+ /**
32
+ * Specifies an ARIA label for the wait icon while an element or page loads.
33
+ * This sets the icon's `aria-label` attribute
34
+ * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).
35
+ * The default value varies based on whether the wait is for an element or a page
36
+ * and whether it is a blocking wait. For example, the default for a page-blocking
37
+ * wait is "Page loading. Please wait."
38
+ */
39
+ set ariaLabel(value) {
40
+ __classPrivateFieldSet(this, _SkyWaitComponent_customAriaLabel, value, "f");
41
+ __classPrivateFieldGet(this, _SkyWaitComponent_instances, "m", _SkyWaitComponent_publishAriaLabel).call(this);
17
42
  }
18
43
  /**
19
44
  * When set to `true`, wait indication appears on the parent element of the `sky-wait` component.
20
45
  */
21
46
  set isWaiting(value) {
22
- if (value && !this._isFullPage) {
23
- this.adapterService.setWaitBounds(this.elRef);
24
- }
25
- else if (!value && !this._isFullPage) {
26
- this.adapterService.removeWaitBounds(this.elRef);
47
+ if (!this.isFullPage) {
48
+ if (value) {
49
+ __classPrivateFieldGet(this, _SkyWaitComponent_adapterService, "f").setWaitBounds(__classPrivateFieldGet(this, _SkyWaitComponent_elRef, "f"));
50
+ }
51
+ else {
52
+ __classPrivateFieldGet(this, _SkyWaitComponent_adapterService, "f").removeWaitBounds(__classPrivateFieldGet(this, _SkyWaitComponent_elRef, "f"));
53
+ }
27
54
  }
28
- this.adapterService.setBusyState(this.elRef, this.isFullPage, value, this.isNonBlocking, this.id);
29
- this._isWaiting = value;
55
+ __classPrivateFieldGet(this, _SkyWaitComponent_adapterService, "f").setBusyState(__classPrivateFieldGet(this, _SkyWaitComponent_elRef, "f"), !!this.isFullPage, !!value, !!this.isNonBlocking, __classPrivateFieldGet(this, _SkyWaitComponent_id, "f"));
56
+ __classPrivateFieldSet(this, _SkyWaitComponent__isWaiting, value, "f");
30
57
  }
31
58
  get isWaiting() {
32
- return this._isWaiting;
59
+ return __classPrivateFieldGet(this, _SkyWaitComponent__isWaiting, "f");
33
60
  }
34
61
  /**
35
62
  * When set to `true`, wait indication appears on the page level instead of the
@@ -41,35 +68,55 @@ export class SkyWaitComponent {
41
68
  set isFullPage(value) {
42
69
  /* istanbul ignore else: untestable */
43
70
  if (value) {
44
- this.adapterService.removeWaitBounds(this.elRef);
71
+ __classPrivateFieldGet(this, _SkyWaitComponent_adapterService, "f").removeWaitBounds(__classPrivateFieldGet(this, _SkyWaitComponent_elRef, "f"));
45
72
  }
46
- else if (!value && this._isWaiting) {
47
- this.adapterService.setWaitBounds(this.elRef);
73
+ else if (this.isWaiting) {
74
+ __classPrivateFieldGet(this, _SkyWaitComponent_adapterService, "f").setWaitBounds(__classPrivateFieldGet(this, _SkyWaitComponent_elRef, "f"));
48
75
  }
49
- this._isFullPage = value;
76
+ __classPrivateFieldSet(this, _SkyWaitComponent__isFullPage, value, "f");
77
+ __classPrivateFieldGet(this, _SkyWaitComponent_instances, "m", _SkyWaitComponent_publishAriaLabel).call(this);
50
78
  }
51
79
  get isFullPage() {
52
- return this._isFullPage;
80
+ return __classPrivateFieldGet(this, _SkyWaitComponent__isFullPage, "f");
81
+ }
82
+ /**
83
+ * When set to `true`, wait indication appears in the bottom left corner of the element
84
+ * instead of hiding the entire parent element.
85
+ * @default false
86
+ */
87
+ set isNonBlocking(value) {
88
+ __classPrivateFieldSet(this, _SkyWaitComponent__isNonBlocking, value, "f");
89
+ __classPrivateFieldGet(this, _SkyWaitComponent_instances, "m", _SkyWaitComponent_publishAriaLabel).call(this);
90
+ }
91
+ get isNonBlocking() {
92
+ return __classPrivateFieldGet(this, _SkyWaitComponent__isNonBlocking, "f");
53
93
  }
54
94
  ngOnInit() {
55
- this.publishAriaLabel();
95
+ __classPrivateFieldGet(this, _SkyWaitComponent_instances, "m", _SkyWaitComponent_publishAriaLabel).call(this);
56
96
  }
57
- publishAriaLabel() {
58
- if (this.ariaLabel) {
59
- this.ariaLabelStream.next(this.ariaLabel);
60
- return;
61
- }
62
- /* istanbul ignore else */
63
- if (this.resourceService) {
64
- const type = this.isFullPage ? '_page' : '';
65
- const blocking = this.isNonBlocking ? '' : '_blocking';
66
- const key = `skyux_wait${type}${blocking}_aria_alt_text`;
67
- this.resourceService.getString(key).subscribe((value) => {
68
- this.ariaLabelStream.next(value);
69
- });
70
- }
97
+ ngOnDestroy() {
98
+ __classPrivateFieldGet(this, _SkyWaitComponent_ngUnsubscribe, "f").next();
99
+ __classPrivateFieldGet(this, _SkyWaitComponent_ngUnsubscribe, "f").complete();
71
100
  }
72
101
  }
102
+ _SkyWaitComponent_elRef = new WeakMap(), _SkyWaitComponent_adapterService = new WeakMap(), _SkyWaitComponent_resourceSvc = new WeakMap(), _SkyWaitComponent_ngUnsubscribe = new WeakMap(), _SkyWaitComponent_id = new WeakMap(), _SkyWaitComponent_customAriaLabel = new WeakMap(), _SkyWaitComponent__isFullPage = new WeakMap(), _SkyWaitComponent__isNonBlocking = new WeakMap(), _SkyWaitComponent__isWaiting = new WeakMap(), _SkyWaitComponent_instances = new WeakSet(), _SkyWaitComponent_publishAriaLabel = function _SkyWaitComponent_publishAriaLabel() {
103
+ if (__classPrivateFieldGet(this, _SkyWaitComponent_customAriaLabel, "f")) {
104
+ this.ariaLabelStream.next(__classPrivateFieldGet(this, _SkyWaitComponent_customAriaLabel, "f"));
105
+ return;
106
+ }
107
+ /* istanbul ignore else */
108
+ if (__classPrivateFieldGet(this, _SkyWaitComponent_resourceSvc, "f")) {
109
+ const type = this.isFullPage ? '_page' : '';
110
+ const blocking = this.isNonBlocking ? '' : '_blocking';
111
+ const key = `skyux_wait${type}${blocking}_aria_alt_text`;
112
+ __classPrivateFieldGet(this, _SkyWaitComponent_resourceSvc, "f")
113
+ .getString(key)
114
+ .pipe(take(1), takeUntil(__classPrivateFieldGet(this, _SkyWaitComponent_ngUnsubscribe, "f")))
115
+ .subscribe((value) => {
116
+ this.ariaLabelStream.next(value);
117
+ });
118
+ }
119
+ };
73
120
  SkyWaitComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyWaitComponent, deps: [{ token: i0.ElementRef }, { token: i1.SkyWaitAdapterService }, { token: i2.SkyLibResourcesService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
74
121
  SkyWaitComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyWaitComponent, selector: "sky-wait", inputs: { ariaLabel: "ariaLabel", isWaiting: "isWaiting", isFullPage: "isFullPage", isNonBlocking: "isNonBlocking" }, providers: [SkyWaitAdapterService], ngImport: i0, template: "<div class=\"sky-wait-container\">\n <div\n *ngIf=\"isWaiting\"\n class=\"sky-wait-mask\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n</div>\n", styles: [".sky-wait-mask-loading-blocking{margin:auto;position:absolute;top:0;right:0;left:0;bottom:0;background-color:#ffffffb3;z-index:1000}.sky-wait-mask-loading-fixed{position:fixed}.sky-wait{width:50px;height:50px;margin-top:-25px;margin-left:-25px;position:absolute;top:50%;left:50%}.sky-wait-mask-loading-non-blocking{bottom:0}.sky-wait-mask-loading-non-blocking .sky-wait{top:auto;right:auto;bottom:0;left:0;margin-left:auto;margin-right:auto}.sky-wait-double-bounce1,.sky-wait-double-bounce2{width:100%;height:100%;border-radius:50%;background-color:#72bf44;opacity:.6;position:absolute;top:0;left:0;animation:sk-bounce 2s infinite ease-in-out}.sky-wait-double-bounce2{animation-delay:-1s}@keyframes sk-bounce{0%,to{transform:scale(0);-webkit-transform:scale(0)}50%{transform:scale(1);-webkit-transform:scale(1)}}.sky-wait-container.sky-wait-active{position:relative}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i3.AsyncPipe } });
75
122
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyWaitComponent, decorators: [{
@@ -86,4 +133,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
86
133
  }], isNonBlocking: [{
87
134
  type: Input
88
135
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy93YWl0L3dhaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFFL0QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBUWYsTUFBTSxPQUFPLGdCQUFnQjtJQTJFM0IsWUFDVSxLQUFpQixFQUNqQixjQUFxQyxFQUN6QixlQUF1QztRQUZuRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUN6QixvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFUdEQsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUVqRCxPQUFFLEdBQUcsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBUWpDLENBQUM7SUFuRUo7O09BRUc7SUFDSCxJQUNXLFNBQVMsQ0FBQyxLQUFjO1FBQ2pDLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM5QixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0M7YUFBTSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsRDtRQUVELElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUM5QixJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxVQUFVLEVBQ2YsS0FBSyxFQUNMLElBQUksQ0FBQyxhQUFhLEVBQ2xCLElBQUksQ0FBQyxFQUFFLENBQ1IsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUNXLFVBQVUsQ0FBQyxLQUFjO1FBQ2xDLHNDQUFzQztRQUN0QyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xEO2FBQU0sSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMvQztRQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFzQk0sUUFBUTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQyxPQUFPO1NBQ1I7UUFFRCwwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzVDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1lBQ3ZELE1BQU0sR0FBRyxHQUFHLGFBQWEsSUFBSSxHQUFHLFFBQVEsZ0JBQWdCLENBQUM7WUFDekQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUU7Z0JBQzlELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs2R0FwR1UsZ0JBQWdCO2lHQUFoQixnQkFBZ0IseUpBRmhCLENBQUMscUJBQXFCLENBQUMsMEJDYnBDLG9nQkFpQkE7MkZERmEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLFVBQVUsYUFHVCxDQUFDLHFCQUFxQixDQUFDOzswQkFnRi9CLFFBQVE7NENBcEVKLFNBQVM7c0JBRGYsS0FBSztnQkFPSyxTQUFTO3NCQURuQixLQUFLO2dCQStCSyxVQUFVO3NCQURwQixLQUFLO2dCQXNCQyxhQUFhO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TGliUmVzb3VyY2VzU2VydmljZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNreVdhaXRBZGFwdGVyU2VydmljZSB9IGZyb20gJy4vd2FpdC1hZGFwdGVyLnNlcnZpY2UnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXdhaXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vd2FpdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3dhaXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5V2FpdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gQVJJQSBsYWJlbCBmb3IgdGhlIHdhaXQgaWNvbiB3aGlsZSBhbiBlbGVtZW50IG9yIHBhZ2UgbG9hZHMuXG4gICAqIFRoaXMgc2V0cyB0aGUgaWNvbidzIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGVcbiAgICogW3RvIHN1cHBvcnQgYWNjZXNzaWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9sZWFybi9hY2Nlc3NpYmlsaXR5KS5cbiAgICogVGhlIGRlZmF1bHQgdmFsdWUgdmFyaWVzIGJhc2VkIG9uIHdoZXRoZXIgdGhlIHdhaXQgaXMgZm9yIGFuIGVsZW1lbnQgb3IgYSBwYWdlXG4gICAqIGFuZCB3aGV0aGVyIGl0IGlzIGEgYmxvY2tpbmcgd2FpdC4gRm9yIGV4YW1wbGUsIHRoZSBkZWZhdWx0IGZvciBhIHBhZ2UtYmxvY2tpbmdcbiAgICogd2FpdCBpcyBcIlBhZ2UgbG9hZGluZy4gUGxlYXNlIHdhaXQuXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gYHRydWVgLCB3YWl0IGluZGljYXRpb24gYXBwZWFycyBvbiB0aGUgcGFyZW50IGVsZW1lbnQgb2YgdGhlIGBza3ktd2FpdGAgY29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc1dhaXRpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodmFsdWUgJiYgIXRoaXMuX2lzRnVsbFBhZ2UpIHtcbiAgICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0V2FpdEJvdW5kcyh0aGlzLmVsUmVmKTtcbiAgICB9IGVsc2UgaWYgKCF2YWx1ZSAmJiAhdGhpcy5faXNGdWxsUGFnZSkge1xuICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5yZW1vdmVXYWl0Qm91bmRzKHRoaXMuZWxSZWYpO1xuICAgIH1cblxuICAgIHRoaXMuYWRhcHRlclNlcnZpY2Uuc2V0QnVzeVN0YXRlKFxuICAgICAgdGhpcy5lbFJlZixcbiAgICAgIHRoaXMuaXNGdWxsUGFnZSxcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy5pc05vbkJsb2NraW5nLFxuICAgICAgdGhpcy5pZFxuICAgICk7XG5cbiAgICB0aGlzLl9pc1dhaXRpbmcgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNXYWl0aW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc1dhaXRpbmc7XG4gIH1cblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gYHRydWVgLCB3YWl0IGluZGljYXRpb24gYXBwZWFycyBvbiB0aGUgcGFnZSBsZXZlbCBpbnN0ZWFkIG9mIHRoZVxuICAgKiBwYXJlbnQgZWxlbWVudCBsZXZlbC4gV2UgcmVjb21tZW5kIHRoYXQgeW91IHVzZSB0aGUgYGJlZ2luQmxvY2tpbmdQYWdlV2FpdGAgb3JcbiAgICogYGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdGAgZnVuY3Rpb25zIG9mIHRoZSBgU2t5V2FpdFNlcnZpY2VgIGluc3RlYWQgb2Ygc2V0dGluZyB0aGlzXG4gICAqIG9uIHRoZSBjb21wb25lbnQgbGV2ZWwuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzRnVsbFBhZ2UodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogdW50ZXN0YWJsZSAqL1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5yZW1vdmVXYWl0Qm91bmRzKHRoaXMuZWxSZWYpO1xuICAgIH0gZWxzZSBpZiAoIXZhbHVlICYmIHRoaXMuX2lzV2FpdGluZykge1xuICAgICAgdGhpcy5hZGFwdGVyU2VydmljZS5zZXRXYWl0Qm91bmRzKHRoaXMuZWxSZWYpO1xuICAgIH1cblxuICAgIHRoaXMuX2lzRnVsbFBhZ2UgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNGdWxsUGFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNGdWxsUGFnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIHNldCB0byBgdHJ1ZWAsIHdhaXQgaW5kaWNhdGlvbiBhcHBlYXJzIGluIHRoZSBib3R0b20gbGVmdCBjb3JuZXIgb2YgdGhlIGVsZW1lbnRcbiAgICogaW5zdGVhZCBvZiBoaWRpbmcgdGhlIGVudGlyZSBwYXJlbnQgZWxlbWVudC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpc05vbkJsb2NraW5nOiBib29sZWFuO1xuXG4gIHB1YmxpYyBhcmlhTGFiZWxTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgaWQgPSBgc2t5LXdhaXQtJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9pc0Z1bGxQYWdlOiBib29sZWFuO1xuICBwcml2YXRlIF9pc1dhaXRpbmc6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGFkYXB0ZXJTZXJ2aWNlOiBTa3lXYWl0QWRhcHRlclNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZXNvdXJjZVNlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnB1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIHByaXZhdGUgcHVibGlzaEFyaWFMYWJlbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hcmlhTGFiZWwpIHtcbiAgICAgIHRoaXMuYXJpYUxhYmVsU3RyZWFtLm5leHQodGhpcy5hcmlhTGFiZWwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMucmVzb3VyY2VTZXJ2aWNlKSB7XG4gICAgICBjb25zdCB0eXBlID0gdGhpcy5pc0Z1bGxQYWdlID8gJ19wYWdlJyA6ICcnO1xuICAgICAgY29uc3QgYmxvY2tpbmcgPSB0aGlzLmlzTm9uQmxvY2tpbmcgPyAnJyA6ICdfYmxvY2tpbmcnO1xuICAgICAgY29uc3Qga2V5ID0gYHNreXV4X3dhaXQke3R5cGV9JHtibG9ja2luZ31fYXJpYV9hbHRfdGV4dGA7XG4gICAgICB0aGlzLnJlc291cmNlU2VydmljZS5nZXRTdHJpbmcoa2V5KS5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgdGhpcy5hcmlhTGFiZWxTdHJlYW0ubmV4dCh2YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktd2FpdC1jb250YWluZXJcIj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiaXNXYWl0aW5nXCJcbiAgICBjbGFzcz1cInNreS13YWl0LW1hc2tcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsU3RyZWFtIHwgYXN5bmNcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdza3ktd2FpdC1tYXNrLWxvYWRpbmctZml4ZWQnOiBpc0Z1bGxQYWdlLFxuICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1ub24tYmxvY2tpbmcnOiBpc05vbkJsb2NraW5nLFxuICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1ibG9ja2luZyc6ICFpc05vbkJsb2NraW5nXG4gICAgfVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LXdhaXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJza3ktd2FpdC1kb3VibGUtYm91bmNlMVwiPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNreS13YWl0LWRvdWJsZS1ib3VuY2UyXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy93YWl0L3dhaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBR0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQUUvRCxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFRZixNQUFNLE9BQU8sZ0JBQWdCO0lBZ0czQixZQUNFLEtBQWlCLEVBQ2pCLGNBQXFDLEVBQ3pCLFdBQW1DOztRQWpCMUMsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUV6RCwwQ0FBbUI7UUFDbkIsbURBQXVDO1FBQ3ZDLGdEQUFxQztRQUNyQywwQ0FBaUIsSUFBSSxPQUFPLEVBQVEsRUFBQztRQUVyQyx1Q0FBWTtRQUNaLG9EQUFxQztRQUVyQyxnREFBa0M7UUFDbEMsbURBQXFDO1FBQ3JDLCtDQUFpQztRQU8vQix1QkFBQSxJQUFJLDJCQUFVLEtBQUssTUFBQSxDQUFDO1FBQ3BCLHVCQUFBLElBQUksb0NBQW1CLGNBQWMsTUFBQSxDQUFD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LEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDdkQsTUFBTSxHQUFHLEdBQUcsYUFBYSxJQUFJLEdBQUcsUUFBUSxnQkFBZ0IsQ0FBQztRQUN6RCx1QkFBQSxJQUFJLHFDQUFhO2FBQ2QsU0FBUyxDQUFDLEdBQUcsQ0FBQzthQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLHVCQUFBLElBQUksdUNBQWUsQ0FBQyxDQUFDO2FBQzdDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0tBQ047QUFDSCxDQUFDOzZHQXZJVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQix5SkFGaEIsQ0FBQyxxQkFBcUIsQ0FBQywwQkNyQnBDLG9nQkFpQkE7MkZETWEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLFVBQVUsYUFHVCxDQUFDLHFCQUFxQixDQUFDOzswQkFxRy9CLFFBQVE7NENBekZBLFNBQVM7c0JBRG5CLEtBQUs7Z0JBVUssU0FBUztzQkFEbkIsS0FBSztnQkFpQ0ssVUFBVTtzQkFEcEIsS0FBSztnQkF1QkssYUFBYTtzQkFEdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi93YWl0LWFkYXB0ZXIuc2VydmljZSc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktd2FpdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93YWl0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FpdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtTa3lXYWl0QWRhcHRlclNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lXYWl0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogU3BlY2lmaWVzIGFuIEFSSUEgbGFiZWwgZm9yIHRoZSB3YWl0IGljb24gd2hpbGUgYW4gZWxlbWVudCBvciBwYWdlIGxvYWRzLlxuICAgKiBUaGlzIHNldHMgdGhlIGljb24ncyBgYXJpYS1sYWJlbGAgYXR0cmlidXRlXG4gICAqIFt0byBzdXBwb3J0IGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vYWNjZXNzaWJpbGl0eSkuXG4gICAqIFRoZSBkZWZhdWx0IHZhbHVlIHZhcmllcyBiYXNlZCBvbiB3aGV0aGVyIHRoZSB3YWl0IGlzIGZvciBhbiBlbGVtZW50IG9yIGEgcGFnZVxuICAgKiBhbmQgd2hldGhlciBpdCBpcyBhIGJsb2NraW5nIHdhaXQuIEZvciBleGFtcGxlLCB0aGUgZGVmYXVsdCBmb3IgYSBwYWdlLWJsb2NraW5nXG4gICAqIHdhaXQgaXMgXCJQYWdlIGxvYWRpbmcuIFBsZWFzZSB3YWl0LlwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFyaWFMYWJlbCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jY3VzdG9tQXJpYUxhYmVsID0gdmFsdWU7XG4gICAgdGhpcy4jcHVibGlzaEFyaWFMYWJlbCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIGB0cnVlYCwgd2FpdCBpbmRpY2F0aW9uIGFwcGVhcnMgb24gdGhlIHBhcmVudCBlbGVtZW50IG9mIHRoZSBgc2t5LXdhaXRgIGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNXYWl0aW5nKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCF0aGlzLmlzRnVsbFBhZ2UpIHtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRXYWl0Qm91bmRzKHRoaXMuI2VsUmVmKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnJlbW92ZVdhaXRCb3VuZHModGhpcy4jZWxSZWYpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnNldEJ1c3lTdGF0ZShcbiAgICAgIHRoaXMuI2VsUmVmLFxuICAgICAgISF0aGlzLmlzRnVsbFBhZ2UsXG4gICAgICAhIXZhbHVlLFxuICAgICAgISF0aGlzLmlzTm9uQmxvY2tpbmcsXG4gICAgICB0aGlzLiNpZFxuICAgICk7XG5cbiAgICB0aGlzLiNfaXNXYWl0aW5nID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzV2FpdGluZygpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2lzV2FpdGluZztcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIHNldCB0byBgdHJ1ZWAsIHdhaXQgaW5kaWNhdGlvbiBhcHBlYXJzIG9uIHRoZSBwYWdlIGxldmVsIGluc3RlYWQgb2YgdGhlXG4gICAqIHBhcmVudCBlbGVtZW50IGxldmVsLiBXZSByZWNvbW1lbmQgdGhhdCB5b3UgdXNlIHRoZSBgYmVnaW5CbG9ja2luZ1BhZ2VXYWl0YCBvclxuICAgKiBgYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0YCBmdW5jdGlvbnMgb2YgdGhlIGBTa3lXYWl0U2VydmljZWAgaW5zdGVhZCBvZiBzZXR0aW5nIHRoaXNcbiAgICogb24gdGhlIGNvbXBvbmVudCBsZXZlbC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNGdWxsUGFnZSh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiB1bnRlc3RhYmxlICovXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5yZW1vdmVXYWl0Qm91bmRzKHRoaXMuI2VsUmVmKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNXYWl0aW5nKSB7XG4gICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRXYWl0Qm91bmRzKHRoaXMuI2VsUmVmKTtcbiAgICB9XG5cbiAgICB0aGlzLiNfaXNGdWxsUGFnZSA9IHZhbHVlO1xuICAgIHRoaXMuI3B1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNGdWxsUGFnZSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2lzRnVsbFBhZ2U7XG4gIH1cblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gYHRydWVgLCB3YWl0IGluZGljYXRpb24gYXBwZWFycyBpbiB0aGUgYm90dG9tIGxlZnQgY29ybmVyIG9mIHRoZSBlbGVtZW50XG4gICAqIGluc3RlYWQgb2YgaGlkaW5nIHRoZSBlbnRpcmUgcGFyZW50IGVsZW1lbnQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzTm9uQmxvY2tpbmcodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfaXNOb25CbG9ja2luZyA9IHZhbHVlO1xuICAgIHRoaXMuI3B1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNOb25CbG9ja2luZygpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2lzTm9uQmxvY2tpbmc7XG4gIH1cblxuICBwdWJsaWMgYXJpYUxhYmVsU3RyZWFtID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICAjZWxSZWY6IEVsZW1lbnRSZWY7XG4gICNhZGFwdGVyU2VydmljZTogU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlO1xuICAjcmVzb3VyY2VTdmM6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjaWQ6IHN0cmluZztcbiAgI2N1c3RvbUFyaWFMYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNfaXNGdWxsUGFnZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgI19pc05vbkJsb2NraW5nOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAjX2lzV2FpdGluZzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBlbFJlZjogRWxlbWVudFJlZixcbiAgICBhZGFwdGVyU2VydmljZTogU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHJlc291cmNlU3ZjOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuI2VsUmVmID0gZWxSZWY7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UgPSBhZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNyZXNvdXJjZVN2YyA9IHJlc291cmNlU3ZjO1xuXG4gICAgdGhpcy4jaWQgPSBgc2t5LXdhaXQtJHsrK25leHRJZH1gO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI3B1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAjcHVibGlzaEFyaWFMYWJlbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jY3VzdG9tQXJpYUxhYmVsKSB7XG4gICAgICB0aGlzLmFyaWFMYWJlbFN0cmVhbS5uZXh0KHRoaXMuI2N1c3RvbUFyaWFMYWJlbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy4jcmVzb3VyY2VTdmMpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSB0aGlzLmlzRnVsbFBhZ2UgPyAnX3BhZ2UnIDogJyc7XG4gICAgICBjb25zdCBibG9ja2luZyA9IHRoaXMuaXNOb25CbG9ja2luZyA/ICcnIDogJ19ibG9ja2luZyc7XG4gICAgICBjb25zdCBrZXkgPSBgc2t5dXhfd2FpdCR7dHlwZX0ke2Jsb2NraW5nfV9hcmlhX2FsdF90ZXh0YDtcbiAgICAgIHRoaXMuI3Jlc291cmNlU3ZjXG4gICAgICAgIC5nZXRTdHJpbmcoa2V5KVxuICAgICAgICAucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgdGhpcy5hcmlhTGFiZWxTdHJlYW0ubmV4dCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNreS13YWl0LWNvbnRhaW5lclwiPlxuICA8ZGl2XG4gICAgKm5nSWY9XCJpc1dhaXRpbmdcIlxuICAgIGNsYXNzPVwic2t5LXdhaXQtbWFza1wiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxTdHJlYW0gfCBhc3luY1wiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1maXhlZCc6IGlzRnVsbFBhZ2UsXG4gICAgICAnc2t5LXdhaXQtbWFzay1sb2FkaW5nLW5vbi1ibG9ja2luZyc6IGlzTm9uQmxvY2tpbmcsXG4gICAgICAnc2t5LXdhaXQtbWFzay1sb2FkaW5nLWJsb2NraW5nJzogIWlzTm9uQmxvY2tpbmdcbiAgICB9XCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJza3ktd2FpdFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInNreS13YWl0LWRvdWJsZS1ib3VuY2UxXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2t5LXdhaXQtZG91YmxlLWJvdW5jZTJcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,3 +1,5 @@
1
+ var _SkyWaitService_instances, _SkyWaitService_resolver, _SkyWaitService_appRef, _SkyWaitService_waitAdapter, _SkyWaitService_windowSvc, _SkyWaitService_setWaitComponentProperties, _SkyWaitService_beginPageWait, _SkyWaitService_endPageWait, _SkyWaitService_clearPageWait;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { ApplicationRef, ComponentFactoryResolver, Injectable, } from '@angular/core';
2
4
  import { SkyAppWindowRef } from '@skyux/core';
3
5
  import { defer as observableDefer } from 'rxjs';
@@ -7,58 +9,66 @@ import { SkyWaitPageComponent } from './wait-page.component';
7
9
  import * as i0 from "@angular/core";
8
10
  import * as i1 from "./wait-page-adapter.service";
9
11
  import * as i2 from "@skyux/core";
12
+ let waitComponent;
13
+ let pageWaitBlockingCount = 0;
14
+ let pageWaitNonBlockingCount = 0;
10
15
  // Need to add the following to classes which contain static methods.
11
16
  // See: https://github.com/ng-packagr/ng-packagr/issues/641
12
17
  // @dynamic
13
18
  export class SkyWaitService {
14
19
  constructor(resolver, appRef, waitAdapter, windowSvc) {
15
- this.resolver = resolver;
16
- this.appRef = appRef;
17
- this.waitAdapter = waitAdapter;
18
- this.windowSvc = windowSvc;
20
+ _SkyWaitService_instances.add(this);
21
+ _SkyWaitService_resolver.set(this, void 0);
22
+ _SkyWaitService_appRef.set(this, void 0);
23
+ _SkyWaitService_waitAdapter.set(this, void 0);
24
+ _SkyWaitService_windowSvc.set(this, void 0);
25
+ __classPrivateFieldSet(this, _SkyWaitService_resolver, resolver, "f");
26
+ __classPrivateFieldSet(this, _SkyWaitService_appRef, appRef, "f");
27
+ __classPrivateFieldSet(this, _SkyWaitService_waitAdapter, waitAdapter, "f");
28
+ __classPrivateFieldSet(this, _SkyWaitService_windowSvc, windowSvc, "f");
19
29
  }
20
30
  /**
21
31
  * Starts a blocking page wait on the page.
22
32
  */
23
33
  beginBlockingPageWait() {
24
- this.beginPageWait(true);
34
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_beginPageWait).call(this, true);
25
35
  }
26
36
  /**
27
37
  * Starts a non-blocking page wait on the page.
28
38
  */
29
39
  beginNonBlockingPageWait() {
30
- this.beginPageWait(false);
40
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_beginPageWait).call(this, false);
31
41
  }
32
42
  /**
33
43
  * Ends a blocking page wait on the page. Blocking page wait indication
34
44
  * is removed when all running blocking page waits are ended.
35
45
  */
36
46
  endBlockingPageWait() {
37
- this.endPageWait(true);
47
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_endPageWait).call(this, true);
38
48
  }
39
49
  /**
40
50
  * Ends a non-blocking page wait on the page. Non-blocking page wait indication
41
51
  * is removed when all running non-blocking page waits are ended.
42
52
  */
43
53
  endNonBlockingPageWait() {
44
- this.endPageWait(false);
54
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_endPageWait).call(this, false);
45
55
  }
46
56
  /**
47
57
  * Clears all blocking and non-blocking page waits on the page.
48
58
  */
49
59
  clearAllPageWaits() {
50
- this.clearPageWait(true);
51
- this.clearPageWait(false);
60
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_clearPageWait).call(this, true);
61
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_clearPageWait).call(this, false);
52
62
  }
53
63
  /**
54
64
  * @internal
55
65
  */
56
66
  dispose() {
57
- if (SkyWaitService.waitComponent) {
58
- SkyWaitService.waitComponent = undefined;
59
- SkyWaitService.pageWaitBlockingCount = 0;
60
- SkyWaitService.pageWaitNonBlockingCount = 0;
61
- this.waitAdapter.removePageWaitEl();
67
+ if (waitComponent) {
68
+ waitComponent = undefined;
69
+ pageWaitBlockingCount = 0;
70
+ pageWaitNonBlockingCount = 0;
71
+ __classPrivateFieldGet(this, _SkyWaitService_waitAdapter, "f").removePageWaitEl();
62
72
  }
63
73
  }
64
74
  /**
@@ -80,79 +90,76 @@ export class SkyWaitService {
80
90
  return observable.pipe(finalize(() => this.endNonBlockingPageWait()));
81
91
  });
82
92
  }
83
- setWaitComponentProperties(isBlocking) {
93
+ }
94
+ _SkyWaitService_resolver = new WeakMap(), _SkyWaitService_appRef = new WeakMap(), _SkyWaitService_waitAdapter = new WeakMap(), _SkyWaitService_windowSvc = new WeakMap(), _SkyWaitService_instances = new WeakSet(), _SkyWaitService_setWaitComponentProperties = function _SkyWaitService_setWaitComponentProperties(isBlocking) {
95
+ if (waitComponent) {
84
96
  if (isBlocking) {
85
- SkyWaitService.waitComponent.hasBlockingWait = true;
86
- SkyWaitService.pageWaitBlockingCount++;
97
+ waitComponent.hasBlockingWait = true;
98
+ pageWaitBlockingCount++;
87
99
  }
88
100
  else {
89
- SkyWaitService.waitComponent.hasNonBlockingWait = true;
90
- SkyWaitService.pageWaitNonBlockingCount++;
101
+ waitComponent.hasNonBlockingWait = true;
102
+ pageWaitNonBlockingCount++;
91
103
  }
92
104
  }
93
- beginPageWait(isBlocking) {
94
- if (!SkyWaitService.waitComponent) {
95
- /*
96
- Dynamic component creation needs to be done in a timeout to prevent ApplicationRef from
97
- crashing when wait service is called in Angular lifecycle functions.
98
- */
99
- this.windowSvc.nativeWindow.setTimeout(() => {
100
- // Ensuring here that we recheck this after the setTimeout is over so that we don't clash
101
- // with any other waits that are created.
102
- if (!SkyWaitService.waitComponent) {
103
- const factory = this.resolver.resolveComponentFactory(SkyWaitPageComponent);
104
- this.waitAdapter.addPageWaitEl();
105
- const cmpRef = this.appRef.bootstrap(factory);
106
- SkyWaitService.waitComponent = cmpRef.instance;
107
- }
108
- this.setWaitComponentProperties(isBlocking);
109
- });
110
- }
111
- else {
112
- this.setWaitComponentProperties(isBlocking);
113
- }
114
- }
115
- endPageWait(isBlocking) {
105
+ }, _SkyWaitService_beginPageWait = function _SkyWaitService_beginPageWait(isBlocking) {
106
+ if (!waitComponent) {
116
107
  /*
117
- Needs to yield so that wait creation can finish
118
- before it is dismissed in the event of a race.
108
+ Dynamic component creation needs to be done in a timeout to prevent ApplicationRef from
109
+ crashing when wait service is called in Angular lifecycle functions.
119
110
  */
120
- this.windowSvc.nativeWindow.setTimeout(() => {
121
- if (SkyWaitService.waitComponent) {
122
- if (isBlocking) {
123
- if (SkyWaitService.pageWaitBlockingCount > 0) {
124
- SkyWaitService.pageWaitBlockingCount--;
125
- }
126
- if (SkyWaitService.pageWaitBlockingCount < 1) {
127
- SkyWaitService.waitComponent.hasBlockingWait = false;
128
- }
129
- }
130
- else {
131
- if (SkyWaitService.pageWaitNonBlockingCount > 0) {
132
- SkyWaitService.pageWaitNonBlockingCount--;
133
- }
134
- if (SkyWaitService.pageWaitNonBlockingCount < 1) {
135
- SkyWaitService.waitComponent.hasNonBlockingWait = false;
136
- }
137
- }
111
+ __classPrivateFieldGet(this, _SkyWaitService_windowSvc, "f").nativeWindow.setTimeout(() => {
112
+ // Ensuring here that we recheck this after the setTimeout is over so that we don't clash
113
+ // with any other waits that are created.
114
+ if (!waitComponent) {
115
+ const factory = __classPrivateFieldGet(this, _SkyWaitService_resolver, "f").resolveComponentFactory(SkyWaitPageComponent);
116
+ __classPrivateFieldGet(this, _SkyWaitService_waitAdapter, "f").addPageWaitEl();
117
+ const cmpRef = __classPrivateFieldGet(this, _SkyWaitService_appRef, "f").bootstrap(factory);
118
+ waitComponent = cmpRef.instance;
138
119
  }
120
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_setWaitComponentProperties).call(this, isBlocking);
139
121
  });
140
122
  }
141
- clearPageWait(isBlocking) {
142
- if (SkyWaitService.waitComponent) {
123
+ else {
124
+ __classPrivateFieldGet(this, _SkyWaitService_instances, "m", _SkyWaitService_setWaitComponentProperties).call(this, isBlocking);
125
+ }
126
+ }, _SkyWaitService_endPageWait = function _SkyWaitService_endPageWait(isBlocking) {
127
+ /*
128
+ Needs to yield so that wait creation can finish
129
+ before it is dismissed in the event of a race.
130
+ */
131
+ __classPrivateFieldGet(this, _SkyWaitService_windowSvc, "f").nativeWindow.setTimeout(() => {
132
+ if (waitComponent) {
143
133
  if (isBlocking) {
144
- SkyWaitService.pageWaitBlockingCount = 0;
145
- SkyWaitService.waitComponent.hasBlockingWait = false;
134
+ if (pageWaitBlockingCount > 0) {
135
+ pageWaitBlockingCount--;
136
+ }
137
+ if (pageWaitBlockingCount < 1) {
138
+ waitComponent.hasBlockingWait = false;
139
+ }
146
140
  }
147
141
  else {
148
- SkyWaitService.pageWaitNonBlockingCount = 0;
149
- SkyWaitService.waitComponent.hasNonBlockingWait = false;
142
+ if (pageWaitNonBlockingCount > 0) {
143
+ pageWaitNonBlockingCount--;
144
+ }
145
+ if (pageWaitNonBlockingCount < 1) {
146
+ waitComponent.hasNonBlockingWait = false;
147
+ }
150
148
  }
151
149
  }
150
+ });
151
+ }, _SkyWaitService_clearPageWait = function _SkyWaitService_clearPageWait(isBlocking) {
152
+ if (waitComponent) {
153
+ if (isBlocking) {
154
+ pageWaitBlockingCount = 0;
155
+ waitComponent.hasBlockingWait = false;
156
+ }
157
+ else {
158
+ pageWaitNonBlockingCount = 0;
159
+ waitComponent.hasNonBlockingWait = false;
160
+ }
152
161
  }
153
- }
154
- SkyWaitService.pageWaitBlockingCount = 0;
155
- SkyWaitService.pageWaitNonBlockingCount = 0;
162
+ };
156
163
  SkyWaitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyWaitService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i1.SkyWaitPageAdapterService }, { token: i2.SkyAppWindowRef }], target: i0.ɵɵFactoryTarget.Injectable });
157
164
  SkyWaitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyWaitService, providedIn: 'root' });
158
165
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyWaitService, decorators: [{
@@ -161,4 +168,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
161
168
  providedIn: 'root',
162
169
  }]
163
170
  }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i1.SkyWaitPageAdapterService }, { type: i2.SkyAppWindowRef }]; } });
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsd0JBQXdCLEVBQ3hCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTlDLE9BQU8sRUFBYyxLQUFLLElBQUksZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQUU3RCxxRUFBcUU7QUFDckUsMkRBQTJEO0FBQzNELFdBQVc7QUFJWCxNQUFNLE9BQU8sY0FBYztJQUt6QixZQUNVLFFBQWtDLEVBQ2xDLE1BQXNCLEVBQ3RCLFdBQXNDLEVBQ3RDLFNBQTBCO1FBSDFCLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLGdCQUFXLEdBQVgsV0FBVyxDQUEyQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUNqQyxDQUFDO0lBRUo7O09BRUc7SUFDSSxxQkFBcUI7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSx3QkFBd0I7UUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksbUJBQW1CO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMs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IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgSW5qZWN0YWJsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lBcHBXaW5kb3dSZWYgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIGRlZmVyIGFzIG9ic2VydmFibGVEZWZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVdhaXRQYWdlQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL3dhaXQtcGFnZS1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5V2FpdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3dhaXQtcGFnZS5jb21wb25lbnQnO1xuXG4vLyBOZWVkIHRvIGFkZCB0aGUgZm9sbG93aW5nIHRvIGNsYXNzZXMgd2hpY2ggY29udGFpbiBzdGF0aWMgbWV0aG9kcy5cbi8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL25nLXBhY2thZ3IvbmctcGFja2Fnci9pc3N1ZXMvNjQxXG4vLyBAZHluYW1pY1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreVdhaXRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgd2FpdENvbXBvbmVudDogU2t5V2FpdFBhZ2VDb21wb25lbnQ7XG4gIHByaXZhdGUgc3RhdGljIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG4gIHByaXZhdGUgc3RhdGljIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICBwcml2YXRlIHdhaXRBZGFwdGVyOiBTa3lXYWl0UGFnZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgd2luZG93U3ZjOiBTa3lBcHBXaW5kb3dSZWZcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBibG9ja2luZyBwYWdlIHdhaXQgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk6IHZvaWQge1xuICAgIHRoaXMuYmVnaW5QYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJlZ2luUGFnZVdhaXQoZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVuZHMgYSBibG9ja2luZyBwYWdlIHdhaXQgb24gdGhlIHBhZ2UuIEJsb2NraW5nIHBhZ2Ugd2FpdCBpbmRpY2F0aW9uXG4gICAqIGlzIHJlbW92ZWQgd2hlbiBhbGwgcnVubmluZyBibG9ja2luZyBwYWdlIHdhaXRzIGFyZSBlbmRlZC5cbiAgICovXG4gIHB1YmxpYyBlbmRCbG9ja2luZ1BhZ2VXYWl0KCk6IHZvaWQge1xuICAgIHRoaXMuZW5kUGFnZVdhaXQodHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogRW5kcyBhIG5vbi1ibG9ja2luZyBwYWdlIHdhaXQgb24gdGhlIHBhZ2UuIE5vbi1ibG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgYXJlIGVuZGVkLlxuICAgKi9cbiAgcHVibGljIGVuZE5vbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lbmRQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBibG9ja2luZyBhbmQgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXJBbGxQYWdlV2FpdHMoKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhclBhZ2VXYWl0KHRydWUpO1xuICAgIHRoaXMuY2xlYXJQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoU2t5V2FpdFNlcnZpY2Uud2FpdENvbXBvbmVudCkge1xuICAgICAgU2t5V2FpdFNlcnZpY2Uud2FpdENvbXBvbmVudCA9IHVuZGVmaW5lZDtcbiAgICAgIFNreVdhaXRTZXJ2aWNlLnBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICBTa3lXYWl0U2VydmljZS5wYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPSAwO1xuICAgICAgdGhpcy53YWl0QWRhcHRlci5yZW1vdmVQYWdlV2FpdEVsKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGF1bmNoZXMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljXG4gICAqIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgbm9uQmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldFdhaXRDb21wb25lbnRQcm9wZXJ0aWVzKGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgU2t5V2FpdFNlcnZpY2Uud2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgU2t5V2FpdFNlcnZpY2UucGFnZVdhaXRCbG9ja2luZ0NvdW50Kys7XG4gICAgfSBlbHNlIHtcbiAgICAgIFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gdHJ1ZTtcbiAgICAgIFNreVdhaXRTZXJ2aWNlLnBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCsrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYmVnaW5QYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCFTa3lXYWl0U2VydmljZS53YWl0Q29tcG9uZW50KSB7XG4gICAgICAvKlxuICAgICAgICAgIER5bmFtaWMgY29tcG9uZW50IGNyZWF0aW9uIG5lZWRzIHRvIGJlIGRvbmUgaW4gYSB0aW1lb3V0IHRvIHByZXZlbnQgQXBwbGljYXRpb25SZWYgZnJvbVxuICAgICAgICAgIGNyYXNoaW5nIHdoZW4gd2FpdCBzZXJ2aWNlIGlzIGNhbGxlZCBpbiBBbmd1bGFyIGxpZmVjeWNsZSBmdW5jdGlvbnMuXG4gICAgICAqL1xuICAgICAgdGhpcy53aW5kb3dTdmMubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAvLyBFbnN1cmluZyBoZXJlIHRoYXQgd2UgcmVjaGVjayB0aGlzIGFmdGVyIHRoZSBzZXRUaW1lb3V0IGlzIG92ZXIgc28gdGhhdCB3ZSBkb24ndCBjbGFzaFxuICAgICAgICAvLyB3aXRoIGFueSBvdGhlciB3YWl0cyB0aGF0IGFyZSBjcmVhdGVkLlxuICAgICAgICBpZiAoIVNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQpIHtcbiAgICAgICAgICBjb25zdCBmYWN0b3J5ID1cbiAgICAgICAgICAgIHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoU2t5V2FpdFBhZ2VDb21wb25lbnQpO1xuICAgICAgICAgIHRoaXMud2FpdEFkYXB0ZXIuYWRkUGFnZVdhaXRFbCgpO1xuXG4gICAgICAgICAgY29uc3QgY21wUmVmID0gdGhpcy5hcHBSZWYuYm9vdHN0cmFwKGZhY3RvcnkpO1xuICAgICAgICAgIFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQgPSBjbXBSZWYuaW5zdGFuY2U7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFdhaXRDb21wb25lbnRQcm9wZXJ0aWVzKGlzQmxvY2tpbmcpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbmRQYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgLypcbiAgICAgICAgTmVlZHMgdG8geWllbGQgc28gdGhhdCB3YWl0IGNyZWF0aW9uIGNhbiBmaW5pc2hcbiAgICAgICAgYmVmb3JlIGl0IGlzIGRpc21pc3NlZCBpbiB0aGUgZXZlbnQgb2YgYSByYWNlLlxuICAgICovXG4gICAgdGhpcy53aW5kb3dTdmMubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgICBpZiAoU2t5V2FpdFNlcnZpY2UucGFnZVdhaXRCbG9ja2luZ0NvdW50ID4gMCkge1xuICAgICAgICAgICAgU2t5V2FpdFNlcnZpY2UucGFnZVdhaXRCbG9ja2luZ0NvdW50LS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFNreVdhaXRTZXJ2aWNlLnBhZ2VXYWl0QmxvY2tpbmdDb3VudCA8IDEpIHtcbiAgICAgICAgICAgIFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChTa3lXYWl0U2VydmljZS5wYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPiAwKSB7XG4gICAgICAgICAgICBTa3lXYWl0U2VydmljZS5wYWdlV2FpdE5vbkJsb2NraW5nQ291bnQtLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoU2t5V2FpdFNlcnZpY2UucGFnZVdhaXROb25CbG9ja2luZ0NvdW50IDwgMSkge1xuICAgICAgICAgICAgU2t5V2FpdFNlcnZpY2Uud2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJQYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQpIHtcbiAgICAgIGlmIChpc0Jsb2NraW5nKSB7XG4gICAgICAgIFNreVdhaXRTZXJ2aWNlLnBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICAgIFNreVdhaXRTZXJ2aWNlLndhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBTa3lXYWl0U2VydmljZS5wYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPSAwO1xuICAgICAgICBTa3lXYWl0U2VydmljZS53YWl0Q29tcG9uZW50Lmhhc05vbkJsb2NraW5nV2FpdCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsT0FBTyxFQUFjLEtBQUssSUFBSSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBRTdELElBQUksYUFBK0MsQ0FBQztBQUNwRCxJQUFJLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUM5QixJQUFJLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUVqQyxxRUFBcUU7QUFDckUsMkRBQTJEO0FBQzNELFdBQVc7QUFJWCxNQUFNLE9BQU8sY0FBYztJQU16QixZQUNFLFFBQWtDLEVBQ2xDLE1BQXNCLEVBQ3RCLFdBQXNDLEVBQ3RDLFNBQTBCOztRQVQ1QiwyQ0FBb0M7UUFDcEMseUNBQXdCO1FBQ3hCLDhDQUF3QztRQUN4Qyw0Q0FBNEI7UUFRMUIsdUJBQUEsSUFBSSw0QkFBYSxRQUFRLE1BQUEsQ0FBQztRQUMxQix1QkFBQSxJQUFJLDBCQUFXLE1BQU0sTUFBQSxDQUFDO1FBQ3RCLHVCQUFBLElBQUksK0JBQWdCLFdBQVcsTUFBQSxDQUFDO1FBQ2hDLHVCQUFBLElBQUksNkJBQWMsU0FBUyxNQUFBLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0kscUJBQXFCO1FBQzFCLHVCQUFBLElBQUksZ0VBQWUsTUFBbkIsSUFBSSxFQUFnQixJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSSx3QkFBd0I7UUFDN0IsdUJBQUEsSUFBSSxnRUFBZSxNQUFuQixJQUFJLEVBQWdCLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxtQkFBbUI7UUFDeEIsdUJBQUEsSUFBSSw4REFBYSxNQUFqQixJQUFJLEVBQWMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLHNCQUFzQjtRQUMzQix1QkFBQSxJQUFJLDhEQUFhLE1BQWpCLElBQUksRUFBYyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDdEIsdUJBQUEsSUFBSSxnRUFBZSxNQUFuQixJQUFJLEVBQWdCLElBQUksQ0FBQyxDQUFDO1FBQzFCLHVCQUFBLElBQUksZ0VBQWUsTUFBbkIsSUFBSSxFQUFnQixLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxPQUFPO1FBQ1osSUFBSSxhQUFhLEVBQUU7WUFDakIsYUFBYSxHQUFHLFNBQVMsQ0FBQztZQUMxQixxQkFBcUIsR0FBRyxDQUFDLENBQUM7WUFDMUIsd0JBQXdCLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLHVCQUFBLElBQUksbUNBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQ3RDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksWUFBWSxDQUFJLFVBQXlCO1FBQzlDLE9BQU8sZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxlQUFlLENBQUksVUFBeUI7UUFDakQsT0FBTyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQzFCLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c1RBRTJCLFVBQW1CO0lBQzdDLElBQUksYUFBYSxFQUFFO1FBQ2pCLElBQUksVUFBVSxFQUFFO1lBQ2QsYUFBYSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDckMscUJBQXFCLEVBQUUsQ0FBQztTQUN6QjthQUFNO1lBQ0wsYUFBYSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztZQUN4Qyx3QkFBd0IsRUFBRSxDQUFDO1NBQzVCO0tBQ0Y7QUFDSCxDQUFDLHlFQUVjLFVBQW1CO0lBQ2hDLElBQUksQ0FBQyxhQUFhLEVBQUU7UUFDbEI7OztVQUdFO1FBQ0YsdUJBQUEsSUFBSSxpQ0FBVyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQzNDLHlGQUF5RjtZQUN6Rix5Q0FBeUM7WUFDekMsSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDbEIsTUFBTSxPQUFPLEdBQ1gsdUJBQUEsSUFBSSxnQ0FBVSxDQUFDLHVCQUF1QixDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQy9ELHVCQUFBLElBQUksbUNBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFFbEMsTUFBTSxNQUFNLEdBQUcsdUJBQUEsSUFBSSw4QkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDL0MsYUFBYSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDakM7WUFFRCx1QkFBQSxJQUFJLDZFQUE0QixNQUFoQyxJQUFJLEVBQTZCLFVBQVUsQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLHVCQUFBLElBQUksNkVBQTRCLE1BQWhDLElBQUksRUFBNkIsVUFBVSxDQUFDLENBQUM7S0FDOUM7QUFDSCxDQUFDLHFFQUVZLFVBQW1CO0lBQzlCOzs7TUFHRTtJQUNGLHVCQUFBLElBQUksaUNBQVcsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUMzQyxJQUFJLGFBQWEsRUFBRTtZQUNqQixJQUFJLFVBQVUsRUFBRTtnQkFDZCxJQUFJLHFCQUFxQixHQUFHLENBQUMsRUFBRTtvQkFDN0IscUJBQXFCLEVBQUUsQ0FBQztpQkFDekI7Z0JBRUQsSUFBSSxxQkFBcUIsR0FBRyxDQUFDLEVBQUU7b0JBQzdCLGFBQWEsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2lCQUN2QzthQUNGO2lCQUFNO2dCQUNMLElBQUksd0JBQXdCLEdBQUcsQ0FBQyxFQUFFO29CQUNoQyx3QkFBd0IsRUFBRSxDQUFDO2lCQUM1QjtnQkFFRCxJQUFJLHdCQUF3QixHQUFHLENBQUMsRUFBRTtvQkFDaEMsYUFBYSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztpQkFDMUM7YUFDRjtTQUNGO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLHlFQUVjLFVBQW1CO0lBQ2hDLElBQUksYUFBYSxFQUFFO1FBQ2pCLElBQUksVUFBVSxFQUFFO1lBQ2QscUJBQXFCLEdBQUcsQ0FBQyxDQUFDO1lBQzFCLGFBQWEsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1NBQ3ZDO2FBQU07WUFDTCx3QkFBd0IsR0FBRyxDQUFDLENBQUM7WUFDN0IsYUFBYSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztTQUMxQztLQUNGO0FBQ0gsQ0FBQzsyR0FwS1UsY0FBYzsrR0FBZCxjQUFjLGNBRmIsTUFBTTsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEluamVjdGFibGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBkZWZlciBhcyBvYnNlcnZhYmxlRGVmZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lXYWl0UGFnZUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi93YWl0LXBhZ2UtYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreVdhaXRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi93YWl0LXBhZ2UuY29tcG9uZW50JztcblxubGV0IHdhaXRDb21wb25lbnQ6IFNreVdhaXRQYWdlQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xubGV0IHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG5sZXQgcGFnZVdhaXROb25CbG9ja2luZ0NvdW50ID0gMDtcblxuLy8gTmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyB0byBjbGFzc2VzIHdoaWNoIGNvbnRhaW4gc3RhdGljIG1ldGhvZHMuXG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzY0MVxuLy8gQGR5bmFtaWNcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lXYWl0U2VydmljZSB7XG4gICNyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyO1xuICAjYXBwUmVmOiBBcHBsaWNhdGlvblJlZjtcbiAgI3dhaXRBZGFwdGVyOiBTa3lXYWl0UGFnZUFkYXB0ZXJTZXJ2aWNlO1xuICAjd2luZG93U3ZjOiBTa3lBcHBXaW5kb3dSZWY7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxuICAgIHdhaXRBZGFwdGVyOiBTa3lXYWl0UGFnZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHdpbmRvd1N2YzogU2t5QXBwV2luZG93UmVmXG4gICkge1xuICAgIHRoaXMuI3Jlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgdGhpcy4jYXBwUmVmID0gYXBwUmVmO1xuICAgIHRoaXMuI3dhaXRBZGFwdGVyID0gd2FpdEFkYXB0ZXI7XG4gICAgdGhpcy4jd2luZG93U3ZjID0gd2luZG93U3ZjO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIGJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBiZWdpbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYmVnaW5QYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNiZWdpblBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLiBCbG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS4gTm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBpbmRpY2F0aW9uXG4gICAqIGlzIHJlbW92ZWQgd2hlbiBhbGwgcnVubmluZyBub24tYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBibG9ja2luZyBhbmQgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXJBbGxQYWdlV2FpdHMoKTogdm9pZCB7XG4gICAgdGhpcy4jY2xlYXJQYWdlV2FpdCh0cnVlKTtcbiAgICB0aGlzLiNjbGVhclBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICB3YWl0Q29tcG9uZW50ID0gdW5kZWZpbmVkO1xuICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICB0aGlzLiN3YWl0QWRhcHRlci5yZW1vdmVQYWdlV2FpdEVsKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGF1bmNoZXMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljXG4gICAqIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgbm9uQmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAjc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IHRydWU7XG4gICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCsrO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQrKztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYmVnaW5QYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAvKlxuICAgICAgICAgIER5bmFtaWMgY29tcG9uZW50IGNyZWF0aW9uIG5lZWRzIHRvIGJlIGRvbmUgaW4gYSB0aW1lb3V0IHRvIHByZXZlbnQgQXBwbGljYXRpb25SZWYgZnJvbVxuICAgICAgICAgIGNyYXNoaW5nIHdoZW4gd2FpdCBzZXJ2aWNlIGlzIGNhbGxlZCBpbiBBbmd1bGFyIGxpZmVjeWNsZSBmdW5jdGlvbnMuXG4gICAgICAqL1xuICAgICAgdGhpcy4jd2luZG93U3ZjLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgLy8gRW5zdXJpbmcgaGVyZSB0aGF0IHdlIHJlY2hlY2sgdGhpcyBhZnRlciB0aGUgc2V0VGltZW91dCBpcyBvdmVyIHNvIHRoYXQgd2UgZG9uJ3QgY2xhc2hcbiAgICAgICAgLy8gd2l0aCBhbnkgb3RoZXIgd2FpdHMgdGhhdCBhcmUgY3JlYXRlZC5cbiAgICAgICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAgICAgY29uc3QgZmFjdG9yeSA9XG4gICAgICAgICAgICB0aGlzLiNyZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShTa3lXYWl0UGFnZUNvbXBvbmVudCk7XG4gICAgICAgICAgdGhpcy4jd2FpdEFkYXB0ZXIuYWRkUGFnZVdhaXRFbCgpO1xuXG4gICAgICAgICAgY29uc3QgY21wUmVmID0gdGhpcy4jYXBwUmVmLmJvb3RzdHJhcChmYWN0b3J5KTtcbiAgICAgICAgICB3YWl0Q29tcG9uZW50ID0gY21wUmVmLmluc3RhbmNlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgfVxuICB9XG5cbiAgI2VuZFBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvKlxuICAgICAgICBOZWVkcyB0byB5aWVsZCBzbyB0aGF0IHdhaXQgY3JlYXRpb24gY2FuIGZpbmlzaFxuICAgICAgICBiZWZvcmUgaXQgaXMgZGlzbWlzc2VkIGluIHRoZSBldmVudCBvZiBhIHJhY2UuXG4gICAgKi9cbiAgICB0aGlzLiN3aW5kb3dTdmMubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHdhaXRDb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgICBpZiAocGFnZVdhaXRCbG9ja2luZ0NvdW50ID4gMCkge1xuICAgICAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50LS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA8IDEpIHtcbiAgICAgICAgICAgIHdhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPiAwKSB7XG4gICAgICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQtLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAocGFnZVdhaXROb25CbG9ja2luZ0NvdW50IDwgMSkge1xuICAgICAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gICNjbGVhclBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICAgIHdhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvdGVzdGluZy9zcmMvYWxlcnQvYWxlcnQtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBTa3lBbGVydEhhcm5lc3MgaW5zdGFuY2VzLlxuICogQGludGVybmFsXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIFNreUFsZXJ0SGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBTa3lIYXJuZXNzRmlsdGVycyB7fVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvdGVzdGluZy9zcmMvYWxlcnQvYWxlcnQtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBTa3lBbGVydEhhcm5lc3MgaW5zdGFuY2VzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZVxuZXhwb3J0IGludGVyZmFjZSBTa3lBbGVydEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
@@ -1,9 +1,8 @@
1
- var _SkyAlertHarness_getAlert, _SkyAlertHarness_getContent, _SkyAlertHarness_getCloseButton;
1
+ var _SkyAlertHarness_getAlert, _SkyAlertHarness_getContent, _SkyAlertHarness_getCloseButton, _SkyAlertHarness_getScreenReaderTextEl;
2
2
  import { __classPrivateFieldGet } from "tslib";
3
3
  import { SkyComponentHarness } from '@skyux/core/testing';
4
4
  /**
5
5
  * Harness for interacting with an alert component in tests.
6
- * @internal
7
6
  */
8
7
  export class SkyAlertHarness extends SkyComponentHarness {
9
8
  constructor() {
@@ -11,6 +10,7 @@ export class SkyAlertHarness extends SkyComponentHarness {
11
10
  _SkyAlertHarness_getAlert.set(this, this.locatorFor('.sky-alert'));
12
11
  _SkyAlertHarness_getContent.set(this, this.locatorFor('.sky-alert-content'));
13
12
  _SkyAlertHarness_getCloseButton.set(this, this.locatorFor('.sky-alert-close'));
13
+ _SkyAlertHarness_getScreenReaderTextEl.set(this, this.locatorForOptional('.sky-screen-reader-only'));
14
14
  }
15
15
  /**
16
16
  * Gets a `HarnessPredicate` that can be used to search for a
@@ -33,10 +33,7 @@ export class SkyAlertHarness extends SkyComponentHarness {
33
33
  if (await alert.hasClass('sky-alert-success')) {
34
34
  return 'success';
35
35
  }
36
- if (await alert.hasClass('sky-alert-warning')) {
37
- return 'warning';
38
- }
39
- return undefined;
36
+ return 'warning';
40
37
  }
41
38
  /**
42
39
  * Gets the current alert text.
@@ -67,7 +64,55 @@ export class SkyAlertHarness extends SkyComponentHarness {
67
64
  const closeBtn = await __classPrivateFieldGet(this, _SkyAlertHarness_getCloseButton, "f").call(this);
68
65
  return !(await closeBtn.getProperty('hidden'));
69
66
  }
67
+ /**
68
+ * Gets the `descriptionType` of the label component.
69
+ */
70
+ async getDescriptionType() {
71
+ const srEl = await __classPrivateFieldGet(this, _SkyAlertHarness_getScreenReaderTextEl, "f").call(this);
72
+ if (!srEl) {
73
+ return 'none';
74
+ }
75
+ const srText = await srEl.text();
76
+ switch (srText) {
77
+ case 'Attention:':
78
+ return 'attention';
79
+ case 'Caution:':
80
+ return 'caution';
81
+ case 'Completed:':
82
+ return 'completed';
83
+ case 'Danger:':
84
+ return 'danger';
85
+ case 'Error:':
86
+ return 'error';
87
+ case 'Important information:':
88
+ return 'important-info';
89
+ case 'Important warning:':
90
+ return 'important-warning';
91
+ case 'Success:':
92
+ return 'success';
93
+ case 'Warning:':
94
+ return 'warning';
95
+ default:
96
+ return 'custom';
97
+ }
98
+ }
99
+ /**
100
+ * Gets the custom text used for the screen reader description of the label component icon.
101
+ */
102
+ async getCustomDescription() {
103
+ const descriptionType = await this.getDescriptionType();
104
+ if (descriptionType === 'custom') {
105
+ const srEl = await __classPrivateFieldGet(this, _SkyAlertHarness_getScreenReaderTextEl, "f").call(this);
106
+ if (srEl) {
107
+ return await srEl.text();
108
+ }
109
+ }
110
+ return '';
111
+ }
70
112
  }
71
- _SkyAlertHarness_getAlert = new WeakMap(), _SkyAlertHarness_getContent = new WeakMap(), _SkyAlertHarness_getCloseButton = new WeakMap();
113
+ _SkyAlertHarness_getAlert = new WeakMap(), _SkyAlertHarness_getContent = new WeakMap(), _SkyAlertHarness_getCloseButton = new WeakMap(), _SkyAlertHarness_getScreenReaderTextEl = new WeakMap();
114
+ /**
115
+ * @internal
116
+ */
72
117
  SkyAlertHarness.hostSelector = 'sky-alert';
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3Rlc3Rpbmcvc3JjL2FsZXJ0L2FsZXJ0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUsxRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxtQkFBbUI7SUFBeEQ7O1FBR0Usb0NBQVksSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBQztRQUMxQyxzQ0FBYyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLEVBQUM7UUFDcEQsMENBQWtCLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsRUFBQztJQXVFeEQsQ0FBQztJQXJFQzs7O09BR0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUErQjtRQUUvQixPQUFPLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsWUFBWTtRQUN2QixNQUFNLEtBQUssR0FBRyxNQUFNLHVCQUFBLElBQUksaUNBQVUsTUFBZCxJQUFJLENBQVksQ0FBQztRQUVyQyxJQUFJLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1lBQzVDLE9BQU8sUUFBUSxDQUFDO1NBQ2pCO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtZQUMxQyxPQUFPLE1BQU0sQ0FBQztTQUNmO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsRUFBRTtZQUM3QyxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELElBQUksTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEVBQUU7WUFDN0MsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsT0FBTztRQUNsQixPQUFPLE1BQU0sQ0FBQyxNQUFNLHVCQUFBLElBQUksbUNBQVksTUFBaEIsSUFBSSxDQUFjLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsS0FBSztRQUNoQixJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztTQUNoRDtRQUVELENBQUMsTUFBTSx1QkFBQSxJQUFJLHVDQUFnQixNQUFwQixJQUFJLENBQWtCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsUUFBUTtRQUNuQixNQUFNLEtBQUssR0FBRyxNQUFNLHVCQUFBLElBQUksaUNBQVUsTUFBZCxJQUFJLENBQVksQ0FBQztRQUVyQyxPQUFPLE1BQU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixNQUFNLFFBQVEsR0FBRyxNQUFNLHVCQUFBLElBQUksdUNBQWdCLE1BQXBCLElBQUksQ0FBa0IsQ0FBQztRQUM5QyxPQUFPLENBQUMsQ0FBQyxNQUFNLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDOzs7QUExRWEsNEJBQVksR0FBRyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5SW5kaWNhdG9ySWNvblR5cGUgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycyc7XG5cbmltcG9ydCB7IFNreUFsZXJ0SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2FsZXJ0LWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhbiBhbGVydCBjb21wb25lbnQgaW4gdGVzdHMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUFsZXJ0SGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktYWxlcnQnO1xuXG4gICNnZXRBbGVydCA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydCcpO1xuICAjZ2V0Q29udGVudCA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydC1jb250ZW50Jyk7XG4gICNnZXRDbG9zZUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydC1jbG9zZScpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lBbGVydEhhcm5lc3NgIHRoYXQgbWVldHMgY2VydGFpbiBjcml0ZXJpYS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lBbGVydEhhcm5lc3NGaWx0ZXJzXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5QWxlcnRIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUFsZXJ0SGFybmVzcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBhbGVydCB0eXBlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEFsZXJ0VHlwZSgpOiBQcm9taXNlPFNreUluZGljYXRvckljb25UeXBlIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLiNnZXRBbGVydCgpO1xuXG4gICAgaWYgKGF3YWl0IGFsZXJ0Lmhhc0NsYXNzKCdza3ktYWxlcnQtZGFuZ2VyJykpIHtcbiAgICAgIHJldHVybiAnZGFuZ2VyJztcbiAgICB9XG5cbiAgICBpZiAoYXdhaXQgYWxlcnQuaGFzQ2xhc3MoJ3NreS1hbGVydC1pbmZvJykpIHtcbiAgICAgIHJldHVybiAnaW5mbyc7XG4gICAgfVxuXG4gICAgaWYgKGF3YWl0IGFsZXJ0Lmhhc0NsYXNzKCdza3ktYWxlcnQtc3VjY2VzcycpKSB7XG4gICAgICByZXR1cm4gJ3N1Y2Nlc3MnO1xuICAgIH1cblxuICAgIGlmIChhd2FpdCBhbGVydC5oYXNDbGFzcygnc2t5LWFsZXJ0LXdhcm5pbmcnKSkge1xuICAgICAgcmV0dXJuICd3YXJuaW5nJztcbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgYWxlcnQgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRDb250ZW50KCkpLnRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGFsZXJ0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghKGF3YWl0IHRoaXMuaXNDbG9zZWFibGUoKSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGFsZXJ0IGlzIG5vdCBjbG9zZWFibGUuJyk7XG4gICAgfVxuXG4gICAgKGF3YWl0IHRoaXMuI2dldENsb3NlQnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHVzZXIgaGFzIGNsb3NlZCB0aGUgYWxlcnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNDbG9zZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLiNnZXRBbGVydCgpO1xuXG4gICAgcmV0dXJuIGF3YWl0IGFsZXJ0LmdldFByb3BlcnR5KCdoaWRkZW4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgdXNlciBjYW4gY2xvc2UgdGhlIGFsZXJ0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzQ2xvc2VhYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNsb3NlQnRuID0gYXdhaXQgdGhpcy4jZ2V0Q2xvc2VCdXR0b24oKTtcbiAgICByZXR1cm4gIShhd2FpdCBjbG9zZUJ0bi5nZXRQcm9wZXJ0eSgnaGlkZGVuJykpO1xuICB9XG59XG4iXX0=
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3Rlc3Rpbmcvc3JjL2FsZXJ0L2FsZXJ0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQVExRDs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFnQixTQUFRLG1CQUFtQjtJQUF4RDs7UUFNRSxvQ0FBWSxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFDO1FBQzFDLHNDQUFjLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsRUFBQztRQUNwRCwwQ0FBa0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFDO1FBQ3RELGlEQUF5QixJQUFJLENBQUMsa0JBQWtCLENBQUMseUJBQXlCLENBQUMsRUFBQztJQXdIOUUsQ0FBQztJQXRIQzs7O09BR0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUErQjtRQUUvQixPQUFPLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsWUFBWTtRQUN2QixNQUFNLEtBQUssR0FBRyxNQUFNLHVCQUFBLElBQUksaUNBQVUsTUFBZCxJQUFJLENBQVksQ0FBQztRQUVyQyxJQUFJLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO1lBQzVDLE9BQU8sUUFBUSxDQUFDO1NBQ2pCO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtZQUMxQyxPQUFPLE1BQU0sQ0FBQztTQUNmO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsRUFBRTtZQUM3QyxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE9BQU8sTUFBTSxDQUFDLE1BQU0sdUJBQUEsSUFBSSxtQ0FBWSxNQUFoQixJQUFJLENBQWMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUU7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1NBQ2hEO1FBRUQsQ0FBQyxNQUFNLHVCQUFBLElBQUksdUNBQWdCLE1BQXBCLElBQUksQ0FBa0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxRQUFRO1FBQ25CLE1BQU0sS0FBSyxHQUFHLE1BQU0sdUJBQUEsSUFBSSxpQ0FBVSxNQUFkLElBQUksQ0FBWSxDQUFDO1FBRXJDLE9BQU8sTUFBTSxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLE1BQU0sUUFBUSxHQUFHLE1BQU0sdUJBQUEsSUFBSSx1Q0FBZ0IsTUFBcEIsSUFBSSxDQUFrQixDQUFDO1FBQzlDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxrQkFBa0I7UUFDN0IsTUFBTSxJQUFJLEdBQUcsTUFBTSx1QkFBQSxJQUFJLDhDQUF1QixNQUEzQixJQUFJLENBQXlCLENBQUM7UUFFakQsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sTUFBTSxDQUFDO1NBQ2Y7UUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVqQyxRQUFRLE1BQU0sRUFBRTtZQUNkLEtBQUssWUFBWTtnQkFDZixPQUFPLFdBQVcsQ0FBQztZQUNyQixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxTQUFTLENBQUM7WUFDbkIsS0FBSyxZQUFZO2dCQUNmLE9BQU8sV0FBVyxDQUFDO1lBQ3JCLEtBQUssU0FBUztnQkFDWixPQUFPLFFBQVEsQ0FBQztZQUNsQixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxPQUFPLENBQUM7WUFDakIsS0FBSyx3QkFBd0I7Z0JBQzNCLE9BQU8sZ0JBQWdCLENBQUM7WUFDMUIsS0FBSyxvQkFBb0I7Z0JBQ3ZCLE9BQU8sbUJBQW1CLENBQUM7WUFDN0IsS0FBSyxVQUFVO2dCQUNiLE9BQU8sU0FBUyxDQUFDO1lBQ25CLEtBQUssVUFBVTtnQkFDYixPQUFPLFNBQVMsQ0FBQztZQUNuQjtnQkFDRSxPQUFPLFFBQVEsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxvQkFBb0I7UUFDL0IsTUFBTSxlQUFlLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUV4RCxJQUFJLGVBQWUsS0FBSyxRQUFRLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEdBQUcsTUFBTSx1QkFBQSxJQUFJLDhDQUF1QixNQUEzQixJQUFJLENBQXlCLENBQUM7WUFFakQsSUFBSSxJQUFJLEVBQUU7Z0JBQ1IsT0FBTyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUMxQjtTQUNGO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOzs7QUEvSEQ7O0dBRUc7QUFDVyw0QkFBWSxHQUFHLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNreUluZGljYXRvckRlc2NyaXB0aW9uVHlwZSxcbiAgU2t5SW5kaWNhdG9ySWNvblR5cGUsXG59IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcblxuaW1wb3J0IHsgU2t5QWxlcnRIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vYWxlcnQtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGFuIGFsZXJ0IGNvbXBvbmVudCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreUFsZXJ0SGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktYWxlcnQnO1xuXG4gICNnZXRBbGVydCA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydCcpO1xuICAjZ2V0Q29udGVudCA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydC1jb250ZW50Jyk7XG4gICNnZXRDbG9zZUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1hbGVydC1jbG9zZScpO1xuICAjZ2V0U2NyZWVuUmVhZGVyVGV4dEVsID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5za3ktc2NyZWVuLXJlYWRlci1vbmx5Jyk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUFsZXJ0SGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreUFsZXJ0SGFybmVzc0ZpbHRlcnNcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxTa3lBbGVydEhhcm5lc3M+IHtcbiAgICByZXR1cm4gU2t5QWxlcnRIYXJuZXNzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IGFsZXJ0IHR5cGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0QWxlcnRUeXBlKCk6IFByb21pc2U8U2t5SW5kaWNhdG9ySWNvblR5cGUgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuI2dldEFsZXJ0KCk7XG5cbiAgICBpZiAoYXdhaXQgYWxlcnQuaGFzQ2xhc3MoJ3NreS1hbGVydC1kYW5nZXInKSkge1xuICAgICAgcmV0dXJuICdkYW5nZXInO1xuICAgIH1cblxuICAgIGlmIChhd2FpdCBhbGVydC5oYXNDbGFzcygnc2t5LWFsZXJ0LWluZm8nKSkge1xuICAgICAgcmV0dXJuICdpbmZvJztcbiAgICB9XG5cbiAgICBpZiAoYXdhaXQgYWxlcnQuaGFzQ2xhc3MoJ3NreS1hbGVydC1zdWNjZXNzJykpIHtcbiAgICAgIHJldHVybiAnc3VjY2Vzcyc7XG4gICAgfVxuXG4gICAgcmV0dXJuICd3YXJuaW5nJztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IGFsZXJ0IHRleHQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Q29udGVudCgpKS50ZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBhbGVydC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbG9zZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIShhd2FpdCB0aGlzLmlzQ2xvc2VhYmxlKCkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBhbGVydCBpcyBub3QgY2xvc2VhYmxlLicpO1xuICAgIH1cblxuICAgIChhd2FpdCB0aGlzLiNnZXRDbG9zZUJ1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSB1c2VyIGhhcyBjbG9zZWQgdGhlIGFsZXJ0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzQ2xvc2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGFsZXJ0ID0gYXdhaXQgdGhpcy4jZ2V0QWxlcnQoKTtcblxuICAgIHJldHVybiBhd2FpdCBhbGVydC5nZXRQcm9wZXJ0eSgnaGlkZGVuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHVzZXIgY2FuIGNsb3NlIHRoZSBhbGVydC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0Nsb3NlYWJsZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBjbG9zZUJ0biA9IGF3YWl0IHRoaXMuI2dldENsb3NlQnV0dG9uKCk7XG4gICAgcmV0dXJuICEoYXdhaXQgY2xvc2VCdG4uZ2V0UHJvcGVydHkoJ2hpZGRlbicpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBgZGVzY3JpcHRpb25UeXBlYCBvZiB0aGUgbGFiZWwgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldERlc2NyaXB0aW9uVHlwZSgpOiBQcm9taXNlPFNreUluZGljYXRvckRlc2NyaXB0aW9uVHlwZT4ge1xuICAgIGNvbnN0IHNyRWwgPSBhd2FpdCB0aGlzLiNnZXRTY3JlZW5SZWFkZXJUZXh0RWwoKTtcblxuICAgIGlmICghc3JFbCkge1xuICAgICAgcmV0dXJuICdub25lJztcbiAgICB9XG5cbiAgICBjb25zdCBzclRleHQgPSBhd2FpdCBzckVsLnRleHQoKTtcblxuICAgIHN3aXRjaCAoc3JUZXh0KSB7XG4gICAgICBjYXNlICdBdHRlbnRpb246JzpcbiAgICAgICAgcmV0dXJuICdhdHRlbnRpb24nO1xuICAgICAgY2FzZSAnQ2F1dGlvbjonOlxuICAgICAgICByZXR1cm4gJ2NhdXRpb24nO1xuICAgICAgY2FzZSAnQ29tcGxldGVkOic6XG4gICAgICAgIHJldHVybiAnY29tcGxldGVkJztcbiAgICAgIGNhc2UgJ0RhbmdlcjonOlxuICAgICAgICByZXR1cm4gJ2Rhbmdlcic7XG4gICAgICBjYXNlICdFcnJvcjonOlxuICAgICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICAgIGNhc2UgJ0ltcG9ydGFudCBpbmZvcm1hdGlvbjonOlxuICAgICAgICByZXR1cm4gJ2ltcG9ydGFudC1pbmZvJztcbiAgICAgIGNhc2UgJ0ltcG9ydGFudCB3YXJuaW5nOic6XG4gICAgICAgIHJldHVybiAnaW1wb3J0YW50LXdhcm5pbmcnO1xuICAgICAgY2FzZSAnU3VjY2VzczonOlxuICAgICAgICByZXR1cm4gJ3N1Y2Nlc3MnO1xuICAgICAgY2FzZSAnV2FybmluZzonOlxuICAgICAgICByZXR1cm4gJ3dhcm5pbmcnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdjdXN0b20nO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXN0b20gdGV4dCB1c2VkIGZvciB0aGUgc2NyZWVuIHJlYWRlciBkZXNjcmlwdGlvbiBvZiB0aGUgbGFiZWwgY29tcG9uZW50IGljb24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0Q3VzdG9tRGVzY3JpcHRpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBkZXNjcmlwdGlvblR5cGUgPSBhd2FpdCB0aGlzLmdldERlc2NyaXB0aW9uVHlwZSgpO1xuXG4gICAgaWYgKGRlc2NyaXB0aW9uVHlwZSA9PT0gJ2N1c3RvbScpIHtcbiAgICAgIGNvbnN0IHNyRWwgPSBhd2FpdCB0aGlzLiNnZXRTY3JlZW5SZWFkZXJUZXh0RWwoKTtcblxuICAgICAgaWYgKHNyRWwpIHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHNyRWwudGV4dCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LWluZm8taGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvdGVzdGluZy9zcmMva2V5LWluZm8va2V5LWluZm8taGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBTa3lLZXlJbmZvSGFybmVzcyBpbnN0YW5jZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIFNreUtleUluZm9IYXJuZXNzRmlsdGVycyBleHRlbmRzIFNreUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=