@skyux/indicators 9.0.0-alpha.6 → 9.0.0-alpha.7

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 (37) hide show
  1. package/documentation.json +1326 -1326
  2. package/esm2022/lib/modules/alert/alert.component.mjs +3 -3
  3. package/esm2022/lib/modules/alert/alert.module.mjs +4 -4
  4. package/esm2022/lib/modules/chevron/chevron.component.mjs +3 -3
  5. package/esm2022/lib/modules/chevron/chevron.module.mjs +4 -4
  6. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.component.mjs +3 -3
  7. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.module.mjs +4 -4
  8. package/esm2022/lib/modules/help-inline/help-inline-aria-expanded.pipe.mjs +3 -3
  9. package/esm2022/lib/modules/help-inline/help-inline.component.mjs +3 -3
  10. package/esm2022/lib/modules/help-inline/help-inline.module.mjs +4 -4
  11. package/esm2022/lib/modules/icon/icon-class-list.pipe.mjs +3 -3
  12. package/esm2022/lib/modules/icon/icon-resolver.service.mjs +3 -3
  13. package/esm2022/lib/modules/icon/icon-stack.component.mjs +3 -3
  14. package/esm2022/lib/modules/icon/icon.component.mjs +3 -3
  15. package/esm2022/lib/modules/icon/icon.module.mjs +4 -4
  16. package/esm2022/lib/modules/key-info/key-info-label.component.mjs +3 -3
  17. package/esm2022/lib/modules/key-info/key-info-value.component.mjs +3 -3
  18. package/esm2022/lib/modules/key-info/key-info.component.mjs +3 -3
  19. package/esm2022/lib/modules/key-info/key-info.module.mjs +4 -4
  20. package/esm2022/lib/modules/label/label.component.mjs +3 -3
  21. package/esm2022/lib/modules/label/label.module.mjs +4 -4
  22. package/esm2022/lib/modules/shared/sky-indicators-resources.module.mjs +4 -4
  23. package/esm2022/lib/modules/status-indicator/status-indicator.component.mjs +3 -3
  24. package/esm2022/lib/modules/status-indicator/status-indicator.module.mjs +4 -4
  25. package/esm2022/lib/modules/text-highlight/text-highlight.directive.mjs +3 -3
  26. package/esm2022/lib/modules/text-highlight/text-highlight.module.mjs +4 -4
  27. package/esm2022/lib/modules/tokens/token.component.mjs +3 -3
  28. package/esm2022/lib/modules/tokens/tokens.component.mjs +3 -3
  29. package/esm2022/lib/modules/tokens/tokens.module.mjs +4 -4
  30. package/esm2022/lib/modules/wait/wait-adapter.service.mjs +3 -3
  31. package/esm2022/lib/modules/wait/wait-page.component.mjs +3 -3
  32. package/esm2022/lib/modules/wait/wait.component.mjs +3 -3
  33. package/esm2022/lib/modules/wait/wait.module.mjs +5 -7
  34. package/esm2022/lib/modules/wait/wait.service.mjs +9 -8
  35. package/fesm2022/skyux-indicators.mjs +124 -124
  36. package/fesm2022/skyux-indicators.mjs.map +1 -1
  37. package/package.json +11 -11
@@ -88,10 +88,10 @@ export class SkyStatusIndicatorComponent {
88
88
  this.descriptionComputed = undefined;
89
89
  }
90
90
  }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
92
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyStatusIndicatorComponent, selector: "sky-status-indicator", inputs: { indicatorType: "indicatorType", descriptionType: "descriptionType", customDescription: "customDescription" }, ngImport: i0, template: "<div *ngIf=\"descriptionType\" class=\"sky-status-indicator\">\n <div\n aria-hidden=\"true\"\n class=\"sky-margin-inline-xs sky-status-indicator-icon\"\n [ngClass]=\"'sky-status-indicator-icon-' + indicatorTypeOrDefault\"\n >\n <span class=\"sky-status-indicator-icon-default\">\n <sky-icon [icon]=\"icon\"></sky-icon>\n </span>\n <span class=\"sky-status-indicator-icon-modern\">\n <sky-icon-stack size=\"xs\" [baseIcon]=\"baseIcon\" [topIcon]=\"topIcon\">\n </sky-icon-stack>\n </span>\n </div>\n <div class=\"sky-status-indicator-message-wrapper\">\n <span *ngIf=\"descriptionComputed\" class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n <span class=\"sky-status-indicator-message\" skyTrim\n ><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n </div>\n</div>\n", styles: [".sky-status-indicator{align-items:baseline;display:flex}.sky-status-indicator-icon{flex-shrink:1}.sky-status-indicator-icon-modern{display:none}.sky-status-indicator-icon-info{color:#00b4f1}.sky-status-indicator-icon-success{color:#72bf44}.sky-status-indicator-icon-warning{color:#fbb034}.sky-status-indicator-icon-danger{color:#ef4044}:host-context(.sky-theme-modern) .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}:host-context(.sky-theme-modern) .sky-status-indicator-icon-default{display:none}:host-context(.sky-theme-modern) .sky-status-indicator-icon-modern{display:inline}.sky-theme-modern .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}.sky-theme-modern .sky-status-indicator-icon-default{display:none}.sky-theme-modern .sky-status-indicator-icon-modern{display:inline}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SkyIconComponent, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i3.SkyIconStackComponent, selector: "sky-icon-stack", inputs: ["size", "baseIcon", "topIcon"] }, { kind: "directive", type: i4.λ4, selector: "[skyTrim]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
92
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SkyStatusIndicatorComponent, selector: "sky-status-indicator", inputs: { indicatorType: "indicatorType", descriptionType: "descriptionType", customDescription: "customDescription" }, ngImport: i0, template: "<div *ngIf=\"descriptionType\" class=\"sky-status-indicator\">\n <div\n aria-hidden=\"true\"\n class=\"sky-margin-inline-xs sky-status-indicator-icon\"\n [ngClass]=\"'sky-status-indicator-icon-' + indicatorTypeOrDefault\"\n >\n <span class=\"sky-status-indicator-icon-default\">\n <sky-icon [icon]=\"icon\"></sky-icon>\n </span>\n <span class=\"sky-status-indicator-icon-modern\">\n <sky-icon-stack size=\"xs\" [baseIcon]=\"baseIcon\" [topIcon]=\"topIcon\">\n </sky-icon-stack>\n </span>\n </div>\n <div class=\"sky-status-indicator-message-wrapper\">\n <span *ngIf=\"descriptionComputed\" class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n <span class=\"sky-status-indicator-message\" skyTrim\n ><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n </div>\n</div>\n", styles: [".sky-status-indicator{align-items:baseline;display:flex}.sky-status-indicator-icon{flex-shrink:1}.sky-status-indicator-icon-modern{display:none}.sky-status-indicator-icon-info{color:#00b4f1}.sky-status-indicator-icon-success{color:#72bf44}.sky-status-indicator-icon-warning{color:#fbb034}.sky-status-indicator-icon-danger{color:#ef4044}:host-context(.sky-theme-modern) .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}:host-context(.sky-theme-modern) .sky-status-indicator-icon-default{display:none}:host-context(.sky-theme-modern) .sky-status-indicator-icon-modern{display:inline}.sky-theme-modern .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}.sky-theme-modern .sky-status-indicator-icon-default{display:none}.sky-theme-modern .sky-status-indicator-icon-modern{display:inline}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SkyIconComponent, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i3.SkyIconStackComponent, selector: "sky-icon-stack", inputs: ["size", "baseIcon", "topIcon"] }, { kind: "directive", type: i4.λ4, selector: "[skyTrim]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
93
93
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorComponent, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorComponent, decorators: [{
95
95
  type: Component,
96
96
  args: [{ selector: 'sky-status-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"descriptionType\" class=\"sky-status-indicator\">\n <div\n aria-hidden=\"true\"\n class=\"sky-margin-inline-xs sky-status-indicator-icon\"\n [ngClass]=\"'sky-status-indicator-icon-' + indicatorTypeOrDefault\"\n >\n <span class=\"sky-status-indicator-icon-default\">\n <sky-icon [icon]=\"icon\"></sky-icon>\n </span>\n <span class=\"sky-status-indicator-icon-modern\">\n <sky-icon-stack size=\"xs\" [baseIcon]=\"baseIcon\" [topIcon]=\"topIcon\">\n </sky-icon-stack>\n </span>\n </div>\n <div class=\"sky-status-indicator-message-wrapper\">\n <span *ngIf=\"descriptionComputed\" class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n <span class=\"sky-status-indicator-message\" skyTrim\n ><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n </div>\n</div>\n", styles: [".sky-status-indicator{align-items:baseline;display:flex}.sky-status-indicator-icon{flex-shrink:1}.sky-status-indicator-icon-modern{display:none}.sky-status-indicator-icon-info{color:#00b4f1}.sky-status-indicator-icon-success{color:#72bf44}.sky-status-indicator-icon-warning{color:#fbb034}.sky-status-indicator-icon-danger{color:#ef4044}:host-context(.sky-theme-modern) .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}:host-context(.sky-theme-modern) .sky-status-indicator-icon-default{display:none}:host-context(.sky-theme-modern) .sky-status-indicator-icon-modern{display:inline}.sky-theme-modern .sky-status-indicator-icon:not(.sky-status-indicator-icon-danger){--sky-icon-stack-top-icon-color-override: #212327}.sky-theme-modern .sky-status-indicator-icon-default{display:none}.sky-theme-modern .sky-status-indicator-icon-modern{display:inline}\n"] }]
97
97
  }], propDecorators: { indicatorType: [{
@@ -6,17 +6,17 @@ import { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources
6
6
  import { SkyStatusIndicatorComponent } from './status-indicator.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class SkyStatusIndicatorModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorModule, declarations: [SkyStatusIndicatorComponent], imports: [CommonModule,
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorModule, declarations: [SkyStatusIndicatorComponent], imports: [CommonModule,
11
11
  SkyIconModule,
12
12
  SkyIndicatorsResourcesModule,
13
13
  SkyTrimModule], exports: [SkyStatusIndicatorComponent] }); }
14
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorModule, imports: [CommonModule,
14
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorModule, imports: [CommonModule,
15
15
  SkyIconModule,
16
16
  SkyIndicatorsResourcesModule,
17
17
  SkyTrimModule] }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyStatusIndicatorModule, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyStatusIndicatorModule, decorators: [{
20
20
  type: NgModule,
21
21
  args: [{
22
22
  declarations: [SkyStatusIndicatorComponent],
@@ -137,10 +137,10 @@ export class SkyTextHighlightDirective {
137
137
  this.#observer.observe(this.#el.nativeElement, config);
138
138
  }
139
139
  }
140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
141
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: SkyTextHighlightDirective, selector: "[skyHighlight]", inputs: { skyHighlight: "skyHighlight" }, usesOnChanges: true, ngImport: i0 }); }
140
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
141
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.1", type: SkyTextHighlightDirective, selector: "[skyHighlight]", inputs: { skyHighlight: "skyHighlight" }, usesOnChanges: true, ngImport: i0 }); }
142
142
  }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightDirective, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightDirective, decorators: [{
144
144
  type: Directive,
145
145
  args: [{
146
146
  selector: '[skyHighlight]',
@@ -3,11 +3,11 @@ import { SkyMutationObserverService } from '@skyux/core';
3
3
  import { SkyTextHighlightDirective } from './text-highlight.directive';
4
4
  import * as i0 from "@angular/core";
5
5
  export class SkyTextHighlightModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightModule, declarations: [SkyTextHighlightDirective], exports: [SkyTextHighlightDirective] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightModule, providers: [SkyMutationObserverService] }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightModule, declarations: [SkyTextHighlightDirective], exports: [SkyTextHighlightDirective] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightModule, providers: [SkyMutationObserverService] }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTextHighlightModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTextHighlightModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [SkyTextHighlightDirective],
@@ -76,10 +76,10 @@ export class SkyTokenComponent {
76
76
  setCloseActive(closeActive) {
77
77
  this.closeActive = closeActive;
78
78
  }
79
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
80
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyTokenComponent, selector: "sky-token", inputs: { disabled: "disabled", ariaLabel: "ariaLabel", dismissible: "dismissible", focusable: "focusable", role: "role" }, outputs: { dismiss: "dismiss", tokenFocus: "tokenFocus" }, viewQueries: [{ propertyName: "actionButtonRef", first: true, predicate: ["actionButton"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-token sky-btn sky-btn-default\"\n [attr.role]=\"role\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-disabled': disabled,\n 'sky-token-dismissible': dismissible,\n 'sky-token-active': tokenActive && !closeActive,\n 'sky-token-focused': isFocused\n }\"\n (document:mouseup)=\"setTokenActive(false)\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n (mousedown)=\"setTokenActive(true)\"\n>\n <span\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n class=\"sky-token-cell\"\n >\n <button\n class=\"sky-btn sky-btn-default sky-token-btn sky-token-btn-action\"\n type=\"button\"\n [attr.tabindex]=\"tabIndex\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled\n }\"\n #actionButton\n >\n <ng-content></ng-content>\n </button>\n </span>\n <span\n *ngIf=\"dismissible\"\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n class=\"sky-btn sky-token-btn sky-token-btn-close\"\n type=\"button\"\n [attr.aria-label]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [attr.tabindex]=\"tabIndex\"\n [attr.title]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-btn-close-active': closeActive\n }\"\n (click)=\"dismissToken($event)\"\n (document:mouseup)=\"setCloseActive(false)\"\n (mousedown)=\"setCloseActive(true)\"\n >\n <sky-icon\n class=\"sky-token-btn-close-icon-default\"\n icon=\"times\"\n ></sky-icon>\n <sky-icon\n class=\"sky-token-btn-close-icon-modern\"\n icon=\"close\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </span>\n</div>\n", styles: [".sky-token{background-color:#c1e8fb;border:1px solid #00b4f1;padding:0;display:inline-block}.sky-token:hover,.sky-token.sky-token-focused{background-color:#91d6f8;border-color:#008ebe;cursor:pointer}.sky-token.sky-token-focused{box-shadow:0 0 8px #00b4f199;border:1px solid var(--sky-highlight-color-info);outline:none}.sky-token.sky-btn-disabled .sky-btn-disabled{opacity:1}.sky-btn-disabled{cursor:default;-webkit-user-select:none;user-select:none}.sky-token-btn{background-color:transparent;border:0;padding:2px 8px}.sky-token-btn-action:focus-visible{outline:none}.sky-token-btn-close{margin-left:-2px;opacity:.9}.sky-token-btn-close:hover,.sky-token-btn-close:focus-visible{opacity:1}.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-token-btn-close-icon-modern{display:none}:host-context(.sky-theme-modern) .sky-token{align-items:center;display:inline-flex;font-size:14px}:host-context(.sky-theme-modern) .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible{padding-right:1px}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}:host-context(.sky-theme-modern) .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token.sky-token-focused,:host-context(.sky-theme-modern) .sky-token:hover{background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}:host-context(.sky-theme-modern) .sky-token-btn.sky-btn-disabled{color:#212327}:host-context(.sky-theme-modern) .sky-token-btn-action{font-size:14px}:host-context(.sky-theme-modern) .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}:host-context(.sky-theme-modern) .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}:host-context(.sky-theme-modern) .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible{outline:none}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-default{display:none}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-modern{display:inline-block;width:100%}.sky-theme-modern .sky-token{align-items:center;display:inline-flex;font-size:14px}.sky-theme-modern .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}.sky-theme-modern .sky-token.sky-token-dismissible{padding-right:1px}.sky-theme-modern .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-theme-modern .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}.sky-theme-modern .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token.sky-token-focused,.sky-theme-modern .sky-token:hover{background-color:#ebfbff}.sky-theme-modern .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}.sky-theme-modern .sky-token-btn.sky-btn-disabled{color:#212327}.sky-theme-modern .sky-token-btn-action{font-size:14px}.sky-theme-modern .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}.sky-theme-modern .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}.sky-theme-modern .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token-btn-close:focus-visible{outline:none}.sky-theme-modern .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token-btn-close-icon-default{display:none}.sky-theme-modern .sky-token-btn-close-icon-modern{display:inline-block;width:100%}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token{background-color:#c1e8fb}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token-btn-close{color:#212327}.sky-theme-modern.sky-theme-mode-dark .sky-token{background-color:#c1e8fb}.sky-theme-modern.sky-theme-mode-dark .sky-token,.sky-theme-modern.sky-theme-mode-dark .sky-token-btn-close{color:#212327}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SkyIconComponent, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
80
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SkyTokenComponent, selector: "sky-token", inputs: { disabled: "disabled", ariaLabel: "ariaLabel", dismissible: "dismissible", focusable: "focusable", role: "role" }, outputs: { dismiss: "dismiss", tokenFocus: "tokenFocus" }, viewQueries: [{ propertyName: "actionButtonRef", first: true, predicate: ["actionButton"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-token sky-btn sky-btn-default\"\n [attr.role]=\"role\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-disabled': disabled,\n 'sky-token-dismissible': dismissible,\n 'sky-token-active': tokenActive && !closeActive,\n 'sky-token-focused': isFocused\n }\"\n (document:mouseup)=\"setTokenActive(false)\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n (mousedown)=\"setTokenActive(true)\"\n>\n <span\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n class=\"sky-token-cell\"\n >\n <button\n class=\"sky-btn sky-btn-default sky-token-btn sky-token-btn-action\"\n type=\"button\"\n [attr.tabindex]=\"tabIndex\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled\n }\"\n #actionButton\n >\n <ng-content></ng-content>\n </button>\n </span>\n <span\n *ngIf=\"dismissible\"\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n class=\"sky-btn sky-token-btn sky-token-btn-close\"\n type=\"button\"\n [attr.aria-label]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [attr.tabindex]=\"tabIndex\"\n [attr.title]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-btn-close-active': closeActive\n }\"\n (click)=\"dismissToken($event)\"\n (document:mouseup)=\"setCloseActive(false)\"\n (mousedown)=\"setCloseActive(true)\"\n >\n <sky-icon\n class=\"sky-token-btn-close-icon-default\"\n icon=\"times\"\n ></sky-icon>\n <sky-icon\n class=\"sky-token-btn-close-icon-modern\"\n icon=\"close\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </span>\n</div>\n", styles: [".sky-token{background-color:#c1e8fb;border:1px solid #00b4f1;padding:0;display:inline-block}.sky-token:hover,.sky-token.sky-token-focused{background-color:#91d6f8;border-color:#008ebe;cursor:pointer}.sky-token.sky-token-focused{box-shadow:0 0 8px #00b4f199;border:1px solid var(--sky-highlight-color-info);outline:none}.sky-token.sky-btn-disabled .sky-btn-disabled{opacity:1}.sky-btn-disabled{cursor:default;-webkit-user-select:none;user-select:none}.sky-token-btn{background-color:transparent;border:0;padding:2px 8px}.sky-token-btn-action:focus-visible{outline:none}.sky-token-btn-close{margin-left:-2px;opacity:.9}.sky-token-btn-close:hover,.sky-token-btn-close:focus-visible{opacity:1}.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-token-btn-close-icon-modern{display:none}:host-context(.sky-theme-modern) .sky-token{align-items:center;display:inline-flex;font-size:14px}:host-context(.sky-theme-modern) .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible{padding-right:1px}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}:host-context(.sky-theme-modern) .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token.sky-token-focused,:host-context(.sky-theme-modern) .sky-token:hover{background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}:host-context(.sky-theme-modern) .sky-token-btn.sky-btn-disabled{color:#212327}:host-context(.sky-theme-modern) .sky-token-btn-action{font-size:14px}:host-context(.sky-theme-modern) .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}:host-context(.sky-theme-modern) .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}:host-context(.sky-theme-modern) .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible{outline:none}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-default{display:none}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-modern{display:inline-block;width:100%}.sky-theme-modern .sky-token{align-items:center;display:inline-flex;font-size:14px}.sky-theme-modern .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}.sky-theme-modern .sky-token.sky-token-dismissible{padding-right:1px}.sky-theme-modern .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-theme-modern .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}.sky-theme-modern .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token.sky-token-focused,.sky-theme-modern .sky-token:hover{background-color:#ebfbff}.sky-theme-modern .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}.sky-theme-modern .sky-token-btn.sky-btn-disabled{color:#212327}.sky-theme-modern .sky-token-btn-action{font-size:14px}.sky-theme-modern .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}.sky-theme-modern .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}.sky-theme-modern .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token-btn-close:focus-visible{outline:none}.sky-theme-modern .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token-btn-close-icon-default{display:none}.sky-theme-modern .sky-token-btn-close-icon-modern{display:inline-block;width:100%}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token{background-color:#c1e8fb}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token-btn-close{color:#212327}.sky-theme-modern.sky-theme-mode-dark .sky-token{background-color:#c1e8fb}.sky-theme-modern.sky-theme-mode-dark .sky-token,.sky-theme-modern.sky-theme-mode-dark .sky-token-btn-close{color:#212327}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SkyIconComponent, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
81
81
  }
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokenComponent, decorators: [{
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokenComponent, decorators: [{
83
83
  type: Component,
84
84
  args: [{ selector: 'sky-token', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"sky-token sky-btn sky-btn-default\"\n [attr.role]=\"role\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-disabled': disabled,\n 'sky-token-dismissible': dismissible,\n 'sky-token-active': tokenActive && !closeActive,\n 'sky-token-focused': isFocused\n }\"\n (document:mouseup)=\"setTokenActive(false)\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n (mousedown)=\"setTokenActive(true)\"\n>\n <span\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n class=\"sky-token-cell\"\n >\n <button\n class=\"sky-btn sky-btn-default sky-token-btn sky-token-btn-action\"\n type=\"button\"\n [attr.tabindex]=\"tabIndex\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled\n }\"\n #actionButton\n >\n <ng-content></ng-content>\n </button>\n </span>\n <span\n *ngIf=\"dismissible\"\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n class=\"sky-btn sky-token-btn sky-token-btn-close\"\n type=\"button\"\n [attr.aria-label]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [attr.tabindex]=\"tabIndex\"\n [attr.title]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-btn-close-active': closeActive\n }\"\n (click)=\"dismissToken($event)\"\n (document:mouseup)=\"setCloseActive(false)\"\n (mousedown)=\"setCloseActive(true)\"\n >\n <sky-icon\n class=\"sky-token-btn-close-icon-default\"\n icon=\"times\"\n ></sky-icon>\n <sky-icon\n class=\"sky-token-btn-close-icon-modern\"\n icon=\"close\"\n iconType=\"skyux\"\n >\n </sky-icon>\n </button>\n </span>\n</div>\n", styles: [".sky-token{background-color:#c1e8fb;border:1px solid #00b4f1;padding:0;display:inline-block}.sky-token:hover,.sky-token.sky-token-focused{background-color:#91d6f8;border-color:#008ebe;cursor:pointer}.sky-token.sky-token-focused{box-shadow:0 0 8px #00b4f199;border:1px solid var(--sky-highlight-color-info);outline:none}.sky-token.sky-btn-disabled .sky-btn-disabled{opacity:1}.sky-btn-disabled{cursor:default;-webkit-user-select:none;user-select:none}.sky-token-btn{background-color:transparent;border:0;padding:2px 8px}.sky-token-btn-action:focus-visible{outline:none}.sky-token-btn-close{margin-left:-2px;opacity:.9}.sky-token-btn-close:hover,.sky-token-btn-close:focus-visible{opacity:1}.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-token-btn-close-icon-modern{display:none}:host-context(.sky-theme-modern) .sky-token{align-items:center;display:inline-flex;font-size:14px}:host-context(.sky-theme-modern) .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible{padding-right:1px}:host-context(.sky-theme-modern) .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}:host-context(.sky-theme-modern) .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token.sky-token-focused,:host-context(.sky-theme-modern) .sky-token:hover{background-color:#ebfbff}:host-context(.sky-theme-modern) .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}:host-context(.sky-theme-modern) .sky-token-btn.sky-btn-disabled{color:#212327}:host-context(.sky-theme-modern) .sky-token-btn-action{font-size:14px}:host-context(.sky-theme-modern) .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}:host-context(.sky-theme-modern) .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}:host-context(.sky-theme-modern) .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible{outline:none}:host-context(.sky-theme-modern) .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-default{display:none}:host-context(.sky-theme-modern) .sky-token-btn-close-icon-modern{display:inline-block;width:100%}.sky-theme-modern .sky-token{align-items:center;display:inline-flex;font-size:14px}.sky-theme-modern .sky-token:not(.sky-btn-disabled){border:none;box-shadow:inset 0 0 0 1px #81d4f7;background-color:#ebfbff}.sky-theme-modern .sky-token.sky-token-dismissible{padding-right:1px}.sky-theme-modern .sky-token.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-theme-modern .sky-token:hover:not(:active){border:none;box-shadow:inset 0 0 0 1px #1870b8}.sky-theme-modern .sky-token.sky-token-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token.sky-token-focused:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token.sky-token-focused,.sky-theme-modern .sky-token:hover{background-color:#ebfbff}.sky-theme-modern .sky-token-btn{padding:1px 5px;border:0;box-shadow:none;background-color:transparent}.sky-theme-modern .sky-token-btn.sky-btn-disabled{color:#212327}.sky-theme-modern .sky-token-btn-action{font-size:14px}.sky-theme-modern .sky-token-btn-close{align-items:center;border-radius:5px;display:flex;height:20px;margin-left:5px;width:20px;padding:0}.sky-theme-modern .sky-token-btn-close:hover{border:none;box-shadow:inset 0 0 0 1px transparent}.sky-theme-modern .sky-token-btn-close.sky-token-btn-close-active{border:none;box-shadow:inset 0 0 0 2px #1870b8}.sky-theme-modern .sky-token-btn-close:focus-visible{outline:none}.sky-theme-modern .sky-token-btn-close:focus-visible:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 3px #0000004d}.sky-theme-modern .sky-token-btn-close-icon-default{display:none}.sky-theme-modern .sky-token-btn-close-icon-modern{display:inline-block;width:100%}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token{background-color:#c1e8fb}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token,:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-token-btn-close{color:#212327}.sky-theme-modern.sky-theme-mode-dark .sky-token{background-color:#c1e8fb}.sky-theme-modern.sky-theme-mode-dark .sky-token,.sky-theme-modern.sky-theme-mode-dark .sky-token-btn-close{color:#212327}\n"] }]
85
85
  }], propDecorators: { disabled: [{
@@ -255,8 +255,8 @@ export class SkyTokensComponent {
255
255
  token,
256
256
  });
257
257
  }
258
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
259
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange", tokensRendered: "tokensRendered" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (@dismiss.done)=\"animationDone()\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\" [attr.role]=\"tokens.length ? 'row' : null\">\n <div [attr.role]=\"tokens.length ? 'gridcell' : null\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content>div{display:contents}.sky-tokens .sky-tokens-content>div:before{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.SkyTokenComponent, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable", "role"], outputs: ["dismiss", "tokenFocus"] }], animations: [
258
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
259
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange", tokensRendered: "tokensRendered" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (@dismiss.done)=\"animationDone()\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\" [attr.role]=\"tokens.length ? 'row' : null\">\n <div [attr.role]=\"tokens.length ? 'gridcell' : null\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content>div{display:contents}.sky-tokens .sky-tokens-content>div:before{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.SkyTokenComponent, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable", "role"], outputs: ["dismiss", "tokenFocus"] }], animations: [
260
260
  trigger('blockAnimationOnLoad', [transition(':enter', [])]),
261
261
  trigger('dismiss', [
262
262
  transition(':enter', [
@@ -278,7 +278,7 @@ export class SkyTokensComponent {
278
278
  ]),
279
279
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
280
280
  }
281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensComponent, decorators: [{
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensComponent, decorators: [{
282
282
  type: Component,
283
283
  args: [{ selector: 'sky-tokens', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
284
284
  trigger('blockAnimationOnLoad', [transition(':enter', [])]),
@@ -6,11 +6,11 @@ import { SkyTokenComponent } from './token.component';
6
6
  import { SkyTokensComponent } from './tokens.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class SkyTokensModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensModule, declarations: [SkyTokenComponent, SkyTokensComponent], imports: [CommonModule, SkyIconModule, SkyIndicatorsResourcesModule], exports: [SkyTokenComponent, SkyTokensComponent] }); }
11
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensModule, imports: [CommonModule, SkyIconModule, SkyIndicatorsResourcesModule] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensModule, declarations: [SkyTokenComponent, SkyTokensComponent], imports: [CommonModule, SkyIconModule, SkyIndicatorsResourcesModule], exports: [SkyTokenComponent, SkyTokensComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensModule, imports: [CommonModule, SkyIconModule, SkyIndicatorsResourcesModule] }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyTokensModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyTokensModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [SkyTokenComponent, SkyTokensComponent],
@@ -215,10 +215,10 @@ export class SkyWaitAdapterService {
215
215
  delete busyElements[key];
216
216
  }
217
217
  }
218
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
219
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitAdapterService }); }
218
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
219
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitAdapterService }); }
220
220
  }
221
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitAdapterService, decorators: [{
221
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitAdapterService, decorators: [{
222
222
  type: Injectable
223
223
  }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
224
224
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0LWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsVUFBVSxHQUlYLE1BQU0sZUFBZSxDQUFDOztBQUV2QixNQUFNLFlBQVksR0FPZCxFQUFFLENBQUM7QUFFUCxxRUFBcUU7QUFDckUsMkRBQTJEO0FBQzNEOzs7R0FHRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7YUFDbEIscUJBQWdCLEdBQUcsS0FBSyxBQUFSLENBQVM7SUFFdkMsa0JBQWtCLENBQTRCO0lBQzlDLFNBQVMsQ0FBWTtJQUVyQixZQUFZLGVBQWlDO1FBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxhQUFhLENBQUMsTUFBa0I7UUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQ3JCLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUNsQyxVQUFVLEVBQ1YsVUFBVSxDQUNYLENBQUM7SUFDSixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBa0I7UUFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVNLFlBQVksQ0FDakIsTUFBa0IsRUFDbEIsVUFBbUIsRUFDbkIsU0FBa0IsRUFDbEIsYUFBc0IsRUFDdEIsZUFBd0I7UUFFeEIsTUFBTSxNQUFNLEdBQUcsVUFBVTtZQUN2QixDQUFDLENBQUMsUUFB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VSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxuICBSZW5kZXJlckZhY3RvcnkyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgYnVzeUVsZW1lbnRzOiB7XG4gIFtrZXk6IHN0cmluZ106IHtcbiAgICBidXN5RWw6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuICAgIGxpc3RlbmVyOiAoKSA9PiB2b2lkO1xuICAgIHJlc3RvcmVGb2N1c0VsZW1lbnQ/OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICByZXN0b3JlRm9jdXNDaGVja0VsZW1lbnQ/OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgfTtcbn0gPSB7fTtcblxuLy8gTmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyB0byBjbGFzc2VzIHdoaWNoIGNvbnRhaW4gc3RhdGljIG1ldGhvZHMuXG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzY0MVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEBkeW5hbWljXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lXYWl0QWRhcHRlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwdWJsaWMgc3RhdGljIGlzUGFnZVdhaXRBY3RpdmUgPSBmYWxzZTtcblxuICAjZm9jdXNhYmxlRWxlbWVudHM6IEhUTUxFbGVtZW50W10gfCB1bmRlZmluZWQ7XG4gICNyZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGNvbnN0cnVjdG9yKHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Mikge1xuICAgIHRoaXMuI3JlbmRlcmVyID0gcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKHVuZGVmaW5lZCwgbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jY2xlYXJMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRXYWl0Qm91bmRzKHdhaXRFbDogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIHRoaXMuI3JlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgd2FpdEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudCxcbiAgICAgICdwb3NpdGlvbicsXG4gICAgICAncmVsYXRpdmUnXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVXYWl0Qm91bmRzKHdhaXRFbDogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZVN0eWxlKHdhaXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQsICdwb3NpdGlvbicpO1xuICB9XG5cbiAgcHVibGljIHNldEJ1c3lTdGF0ZShcbiAgICB3YWl0RWw6IEVsZW1lbnRSZWYsXG4gICAgaXNGdWxsUGFnZTogYm9vbGVhbixcbiAgICBpc1dhaXRpbmc6IGJvb2xlYW4sXG4gICAgaXNOb25CbG9ja2luZzogYm9vbGVhbixcbiAgICB3YWl0Q29tcG9uZW50SWQ/OiBzdHJpbmdcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgYnVzeUVsID0gaXNGdWxsUGFnZVxuICAgICAgPyBkb2N1bWVudC5ib2R5XG4gICAgICA6IHdhaXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICBpZiAoIWlzTm9uQmxvY2tpbmcpIHtcbiAgICAgIGlmIChpc1dhaXRpbmcpIHtcbiAgICAgICAgbGV0IHJlc3RvcmVGb2N1c0VsZW1lbnQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgICAgICBsZXQgcmVzdG9yZUZvY3VzQ2hlY2tFbGVtZW50OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy4jcmVuZGVyZXIuc2V0QXR0cmlidXRlKGJ1c3lFbCwgJ2FyaWEtYnVzeScsICd0cnVlJyk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGZvY3VzIGZyb20gcGFnZSB3aGVuIGZ1bGwgcGFnZSBibG9ja2luZyB3YWl0XG4gICAgICAgIGlmIChpc0Z1bGxQYWdlIHx8IGJ1c3lFbC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xuICAgICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSBkb2N1bWVudC5ib2R5KSB7XG4gICAgICAgICAgICByZXN0b3JlRm9jdXNFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy4jY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICAgICAgcmVzdG9yZUZvY3VzQ2hlY2tFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0Z1bGxQYWdlKSB7XG4gICAgICAgICAgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmlzUGFnZVdhaXRBY3RpdmUgPSB0cnVlO1xuICAgICAgICAgIGNvbnN0IGVuZExpc3RlbmVyRnVuYyA9IHRoaXMuI3JlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHksXG4gICAgICAgICAgICAna2V5ZG93bicsXG4gICAgICAgICAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgICBpZiAoZXZlbnQua2V5KSB7XG4gICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkgPT09ICd0YWInKSB7XG4gICAgICAgICAgICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5ibHVyKCk7XG4gICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuI2NsZWFyRG9jdW1lbnRGb2N1cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAod2FpdENvbXBvbmVudElkKSB7XG4gICAgICAgICAgICBidXN5RWxlbWVudHNbd2FpdENvbXBvbmVudElkXSA9IHtcbiAgICAgICAgICAgICAgbGlzdGVuZXI6IGVuZExpc3RlbmVyRnVuYyxcbiAgICAgICAgICAgICAgYnVzeUVsOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIHJlc3RvcmVGb2N1c0VsZW1lbnQsXG4gICAgICAgICAgICAgIHJlc3RvcmVGb2N1c0NoZWNrRWxlbWVudCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGVuZExpc3RlbmVyRnVuYyA9IHRoaXMuI3JlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIGJ1c3lFbCxcbiAgICAgICAgICAgICdmb2N1c2luJyxcbiAgICAgICAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgICBpZiAoIWlzTm9uQmxvY2tpbmcpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgICAgICAgaWYgKFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLiNjbGVhckRvY3VtZW50Rm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgLy8gUHJvcGFnYXRlIHRhYiBuYXZpZ2F0aW9uIGlmIGF0dGVtcHRlZCBpbnRvIHdhaXRlZCBlbGVtZW50XG4gICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LmJsdXIoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4jZm9jdXNOZXh0RWxlbWVudCh0YXJnZXQsIHRoaXMuI2lzU2hpZnQoZXZlbnQpKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICApO1xuXG4gICAgICAgICAgaWYgKHdhaXRDb21wb25lbnRJZCkge1xuICAgICAgICAgICAgYnVzeUVsZW1lbnRzW3dhaXRDb21wb25lbnRJZF0gPSB7XG4gICAgICAgICAgICAgIGxpc3RlbmVyOiBlbmRMaXN0ZW5lckZ1bmMsXG4gICAgICAgICAgICAgIGJ1c3lFbCxcbiAgICAgICAgICAgICAgcmVzdG9yZUZvY3VzRWxlbWVudCxcbiAgICAgICAgICAgICAgcmVzdG9yZUZvY3VzQ2hlY2tFbGVtZW50LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShidXN5RWwsICdhcmlhLWJ1c3knKTtcblxuICAgICAgICBpZiAoaXNGdWxsUGFnZSkge1xuICAgICAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAod2FpdENvbXBvbmVudElkICYmIHdhaXRDb21wb25lbnRJZCBpbiBidXN5RWxlbWVudHMpIHtcbiAgICAgICAgICBjb25zdCBidXN5RWxlbWVudCA9IGJ1c3lFbGVtZW50c1t3YWl0Q29tcG9uZW50SWRdO1xuXG4gICAgICAgICAgYnVzeUVsZW1lbnQubGlzdGVuZXIoKTtcblxuICAgICAgICAgIC8vIElmIHRoZXJlIGlzIGEgcmVzdG9yZSBmb2N1cyBlbGVtZW50IGFuZCB0aGUgZm9jdXMgaGFzIG5vdCBtb3ZlZCwgcmVzdG9yZSBmb2N1cy5cbiAgICAgICAgICBpZiAoYnVzeUVsZW1lbnQucmVzdG9yZUZvY3VzQ2hlY2tFbGVtZW50ID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICBidXN5RWxlbWVudC5yZXN0b3JlRm9jdXNFbGVtZW50Py5mb2N1cygpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGRlbGV0ZSBidXN5RWxlbWVudHNbd2FpdENvbXBvbmVudElkXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmb2N1c05leHRFbGVtZW50KHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzaGlmdEtleTogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGZvY3VzYWJsZSA9IHRoaXMuI2dldEZvY3VzYWJsZUVsZW1lbnRzKCk7XG5cbiAgICAvLyBJZiBzaGlmdCB0YWIsIGdvIGluIHRoZSBvdGhlciBkaXJlY3Rpb25cbiAgICBjb25zdCBtb2RpZmllciA9IHNoaWZ0S2V5ID8gLTEgOiAxO1xuXG4gICAgLy8gRmluZCB0aGUgbmV4dCBuYXZpZ2FibGUgZWxlbWVudCB0aGF0IGlzbid0IHdhaXRpbmdcbiAgICBjb25zdCBzdGFydGluZ0luZGV4ID0gZm9jdXNhYmxlLmluZGV4T2YodGFyZ2V0RWxlbWVudCk7XG4gICAgbGV0IGN1ckluZGV4ID0gc3RhcnRpbmdJbmRleCArIG1vZGlmaWVyO1xuICAgIHdoaWxlIChcbiAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgIHRoaXMuI2lzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c2FibGVbY3VySW5kZXhdKVxuICAgICkge1xuICAgICAgY3VySW5kZXggKz0gbW9kaWZpZXI7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XSAmJlxuICAgICAgIXRoaXMuI2lzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c2FibGVbY3VySW5kZXhdKVxuICAgICkge1xuICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUcnkgd3JhcHBpbmcgdGhlIG5hdmlnYXRpb25cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgIGN1ckluZGV4ID0gbW9kaWZpZXIgPiAwID8gMCA6IGZvY3VzYWJsZS5sZW5ndGggLSAxO1xuICAgICAgd2hpbGUgKFxuICAgICAgICBjdXJJbmRleCAhPT0gc3RhcnRpbmdJbmRleCAmJlxuICAgICAgICBmb2N1c2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgIHRoaXMuI2lzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c2FibGVbY3VySW5kZXhdKVxuICAgICAgKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgICBjdXJJbmRleCArPSBtb2RpZmllcjtcbiAgICAgIH1cblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIC8qIHNhbml0eSBjaGVjayAqL1xuICAgICAgaWYgKFxuICAgICAgICBmb2N1c2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgICF0aGlzLiNpc0VsZW1lbnRCdXN5T3JIaWRkZW4oZm9jdXNhYmxlW2N1ckluZGV4XSlcbiAgICAgICkge1xuICAgICAgICBmb2N1c2FibGVbY3VySW5kZXhdLmZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBObyB2YWxpZCB0YXJnZXQsIHdpcGUgZm9jdXNcbiAgICAgICAgdGhpcy4jY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNhYmxlRWxlbWVudHMgbGlzdFxuICAgIHRoaXMuI2ZvY3VzYWJsZUVsZW1lbnRzID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgI2lzU2hpZnQoZXZlbnQ6IEV2ZW50KTogYm9vbGVhbiB7XG4gICAgLy8gRGV0ZXJtaW5lIGlmIHNoaWZ0K3RhYiB3YXMgdXNlZCBiYXNlZCBvbiBlbGVtZW50IG9yZGVyXG4gICAgY29uc3QgZWxlbWVudHMgPSB0aGlzLiNnZXRGb2N1c2FibGVFbGVtZW50cygpLmZpbHRlcihcbiAgICAgIChlbGVtKSA9PiAhdGhpcy4jaXNFbGVtZW50SGlkZGVuKGVsZW0pXG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpb3VzSW5kID0gZWxlbWVudHMuaW5kZXhPZigoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0KTtcbiAgICBjb25zdCBjdXJyZW50SW5kID0gZWxlbWVudHMuaW5kZXhPZihldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMSB8fFxuICAgICAgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpIHx8XG4gICAgICBwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQgfHxcbiAgICAgICEoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0XG4gICAgKTtcbiAgfVxuXG4gICNpc0VsZW1lbnRIaWRkZW4oZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIHJldHVybiBzdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgfHwgc3R5bGUudmlzaWJpbGl0eSA9PT0gJ2hpZGRlbic7XG4gIH1cblxuICAjaXNFbGVtZW50QnVzeU9ySGlkZGVuKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuI2lzRWxlbWVudEhpZGRlbihlbGVtZW50KSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoYnVzeUVsZW1lbnRzKSkge1xuICAgICAgY29uc3QgcGFyZW50RWxlbWVudCA9IGJ1c3lFbGVtZW50c1trZXldLmJ1c3lFbDtcbiAgICAgIGlmIChwYXJlbnRFbGVtZW50ICYmIHBhcmVudEVsZW1lbnQuY29udGFpbnMoZWxlbWVudCkpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gICNjbGVhckRvY3VtZW50Rm9jdXMoKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChhY3RpdmVFbGVtZW50KSB7XG4gICAgICBhY3RpdmVFbGVtZW50LmJsdXIoKTtcbiAgICB9XG5cbiAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gIH1cblxuICAjZ2V0Rm9jdXNhYmxlRWxlbWVudHMoKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgLy8gS2VlcCB0aGlzIGNhY2hlZCBzbyB3ZSBjYW4gcmVkdWNlIHF1ZXJpZXNcbiAgICBpZiAodGhpcy4jZm9jdXNhYmxlRWxlbWVudHMpIHtcbiAgICAgIHJldHVybiB0aGlzLiNmb2N1c2FibGVFbGVtZW50cztcbiAgICB9XG5cbiAgICAvLyBTZWxlY3QgYWxsIHBvc3NpYmxlIGZvY3VzYWJsZSBlbGVtZW50c1xuICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID1cbiAgICAgICdhW2hyZWZdLCAnICtcbiAgICAgICdhcmVhW2hyZWZdLCAnICtcbiAgICAgIFwiaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdGFiaW5kZXg9Jy0xJ10pLCBcIiArXG4gICAgICBcImJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD0nLTEnXSksIFwiICtcbiAgICAgIFwic2VsZWN0Om5vdChbZGlzYWJsZWRdKTpub3QoW3RhYmluZGV4PSctMSddKSwgXCIgK1xuICAgICAgXCJ0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD0nLTEnXSksIFwiICtcbiAgICAgICdpZnJhbWUsIG9iamVjdCwgZW1iZWQsICcgK1xuICAgICAgXCIqW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PSctMSddKSwgXCIgK1xuICAgICAgJypbY29udGVudGVkaXRhYmxlPXRydWVdJztcblxuICAgIHRoaXMuI2ZvY3VzYWJsZUVsZW1lbnRzID0gQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKFxuICAgICAgZG9jdW1lbnQuYm9keS5xdWVyeVNlbGVjdG9yQWxsKGZvY3VzYWJsZUVsZW1lbnRzKSxcbiAgICAgIChlbGVtZW50OiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIGVsZW1lbnQub2Zmc2V0V2lkdGggPiAwIHx8XG4gICAgICAgICAgZWxlbWVudC5vZmZzZXRIZWlnaHQgPiAwIHx8XG4gICAgICAgICAgZWxlbWVudCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudFxuICAgICAgICApO1xuICAgICAgfVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuI2ZvY3VzYWJsZUVsZW1lbnRzO1xuICB9XG5cbiAgI2NsZWFyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoYnVzeUVsZW1lbnRzKSkge1xuICAgICAgYnVzeUVsZW1lbnRzW2tleV0ubGlzdGVuZXIoKTtcbiAgICAgIGRlbGV0ZSBidXN5RWxlbWVudHNba2V5XTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -5,10 +5,10 @@ import * as i1 from "./wait.component";
5
5
  * @internal
6
6
  */
7
7
  export class SkyWaitPageComponent {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyWaitPageComponent, selector: "sky-wait-page", inputs: { hasBlockingWait: "hasBlockingWait", hasNonBlockingWait: "hasNonBlockingWait" }, ngImport: i0, template: "<div class=\"sky-wait-page\">\n <sky-wait\n data-sky-id=\"page-wait-non-blocking\"\n [isFullPage]=\"true\"\n [isNonBlocking]=\"true\"\n [isWaiting]=\"hasNonBlockingWait\"\n >\n </sky-wait>\n <sky-wait\n data-sky-id=\"page-wait-blocking\"\n [isFullPage]=\"true\"\n [isWaiting]=\"hasBlockingWait\"\n >\n </sky-wait>\n</div>\n", styles: [".sky-wait-page ::ng-deep .sky-wait-mask-loading-fixed{z-index:2000}\n"], dependencies: [{ kind: "component", type: i1.SkyWaitComponent, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking", "screenReaderCompletedText"] }] }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SkyWaitPageComponent, selector: "sky-wait-page", inputs: { hasBlockingWait: "hasBlockingWait", hasNonBlockingWait: "hasNonBlockingWait" }, ngImport: i0, template: "<div class=\"sky-wait-page\">\n <sky-wait\n data-sky-id=\"page-wait-non-blocking\"\n [isFullPage]=\"true\"\n [isNonBlocking]=\"true\"\n [isWaiting]=\"hasNonBlockingWait\"\n >\n </sky-wait>\n <sky-wait\n data-sky-id=\"page-wait-blocking\"\n [isFullPage]=\"true\"\n [isWaiting]=\"hasBlockingWait\"\n >\n </sky-wait>\n</div>\n", styles: [".sky-wait-page ::ng-deep .sky-wait-mask-loading-fixed{z-index:2000}\n"], dependencies: [{ kind: "component", type: i1.SkyWaitComponent, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking", "screenReaderCompletedText"] }] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitPageComponent, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitPageComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{ selector: 'sky-wait-page', template: "<div class=\"sky-wait-page\">\n <sky-wait\n data-sky-id=\"page-wait-non-blocking\"\n [isFullPage]=\"true\"\n [isNonBlocking]=\"true\"\n [isWaiting]=\"hasNonBlockingWait\"\n >\n </sky-wait>\n <sky-wait\n data-sky-id=\"page-wait-blocking\"\n [isFullPage]=\"true\"\n [isWaiting]=\"hasBlockingWait\"\n >\n </sky-wait>\n</div>\n", styles: [".sky-wait-page ::ng-deep .sky-wait-mask-loading-fixed{z-index:2000}\n"] }]
14
14
  }], propDecorators: { hasBlockingWait: [{
@@ -151,10 +151,10 @@ export class SkyWaitComponent {
151
151
  });
152
152
  }
153
153
  }
154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyWaitComponent, selector: "sky-wait", inputs: { ariaLabel: "ariaLabel", isWaiting: "isWaiting", isFullPage: "isFullPage", isNonBlocking: "isNonBlocking", screenReaderCompletedText: "screenReaderCompletedText" }, providers: [SkyWaitAdapterService], ngImport: i0, template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n <div\n *ngIf=\"isWaiting\"\n class=\"sky-wait-mask\"\n role=\"progressbar\"\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;inset: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{inset:auto auto 0 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"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SkyWaitComponent, selector: "sky-wait", inputs: { ariaLabel: "ariaLabel", isWaiting: "isWaiting", isFullPage: "isFullPage", isNonBlocking: "isNonBlocking", screenReaderCompletedText: "screenReaderCompletedText" }, providers: [SkyWaitAdapterService], ngImport: i0, template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n <div\n *ngIf=\"isWaiting\"\n class=\"sky-wait-mask\"\n role=\"progressbar\"\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;inset: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{inset:auto auto 0 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"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
156
156
  }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitComponent, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitComponent, decorators: [{
158
158
  type: Component,
159
159
  args: [{ selector: 'sky-wait', providers: [SkyWaitAdapterService], template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n <div\n *ngIf=\"isWaiting\"\n class=\"sky-wait-mask\"\n role=\"progressbar\"\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;inset: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{inset:auto auto 0 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"] }]
160
160
  }], propDecorators: { ariaLabel: [{
@@ -3,20 +3,18 @@ import { NgModule } from '@angular/core';
3
3
  import { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';
4
4
  import { SkyWaitPageComponent } from './wait-page.component';
5
5
  import { SkyWaitComponent } from './wait.component';
6
- import { SkyWaitService } from './wait.service';
7
6
  import * as i0 from "@angular/core";
8
7
  export class SkyWaitModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitModule, declarations: [SkyWaitComponent, SkyWaitPageComponent], imports: [CommonModule, SkyIndicatorsResourcesModule], exports: [SkyWaitComponent] }); }
11
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitModule, providers: [SkyWaitService], imports: [CommonModule, SkyIndicatorsResourcesModule] }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitModule, declarations: [SkyWaitComponent, SkyWaitPageComponent], imports: [CommonModule, SkyIndicatorsResourcesModule], exports: [SkyWaitComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitModule, imports: [CommonModule, SkyIndicatorsResourcesModule] }); }
12
11
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitModule, decorators: [{
14
13
  type: NgModule,
15
14
  args: [{
16
15
  declarations: [SkyWaitComponent, SkyWaitPageComponent],
17
16
  imports: [CommonModule, SkyIndicatorsResourcesModule],
18
17
  exports: [SkyWaitComponent],
19
- providers: [SkyWaitService],
20
18
  }]
21
19
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUV6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBUWhELE1BQU0sT0FBTyxhQUFhOzhHQUFiLGFBQWE7K0dBQWIsYUFBYSxpQkFMVCxnQkFBZ0IsRUFBRSxvQkFBb0IsYUFDM0MsWUFBWSxFQUFFLDRCQUE0QixhQUMxQyxnQkFBZ0I7K0dBR2YsYUFBYSxhQUZiLENBQUMsY0FBYyxDQUFDLFlBRmpCLFlBQVksRUFBRSw0QkFBNEI7OzJGQUl6QyxhQUFhO2tCQU56QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixFQUFFLG9CQUFvQixDQUFDO29CQUN0RCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsNEJBQTRCLENBQUM7b0JBQ3JELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUluZGljYXRvcnNSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWluZGljYXRvcnMtcmVzb3VyY2VzLm1vZHVsZSc7XG5cbmltcG9ydCB7IFNreVdhaXRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi93YWl0LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFNreVdhaXRDb21wb25lbnQgfSBmcm9tICcuL3dhaXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNreVdhaXRTZXJ2aWNlIH0gZnJvbSAnLi93YWl0LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lXYWl0Q29tcG9uZW50LCBTa3lXYWl0UGFnZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNreUluZGljYXRvcnNSZXNvdXJjZXNNb2R1bGVdLFxuICBleHBvcnRzOiBbU2t5V2FpdENvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW1NreVdhaXRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5V2FpdE1vZHVsZSB7fVxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUV6RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLGlCQUpULGdCQUFnQixFQUFFLG9CQUFvQixhQUMzQyxZQUFZLEVBQUUsNEJBQTRCLGFBQzFDLGdCQUFnQjsrR0FFZixhQUFhLFlBSGQsWUFBWSxFQUFFLDRCQUE0Qjs7MkZBR3pDLGFBQWE7a0JBTHpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSw0QkFBNEIsQ0FBQztvQkFDckQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUluZGljYXRvcnNSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWluZGljYXRvcnMtcmVzb3VyY2VzLm1vZHVsZSc7XG5cbmltcG9ydCB7IFNreVdhaXRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi93YWl0LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFNreVdhaXRDb21wb25lbnQgfSBmcm9tICcuL3dhaXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5V2FpdENvbXBvbmVudCwgU2t5V2FpdFBhZ2VDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTa3lJbmRpY2F0b3JzUmVzb3VyY2VzTW9kdWxlXSxcbiAgZXhwb3J0czogW1NreVdhaXRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lXYWl0TW9kdWxlIHt9XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { EnvironmentInjector, Injectable, inject, } from '@angular/core';
1
+ import { Injectable, inject } from '@angular/core';
2
2
  import { SkyAppWindowRef, SkyDynamicComponentLocation, SkyDynamicComponentService, } from '@skyux/core';
3
3
  import { defer as observableDefer } from 'rxjs';
4
4
  import { finalize } from 'rxjs/operators';
@@ -11,7 +11,6 @@ let pageWaitNonBlockingCount = 0;
11
11
  export class SkyWaitService {
12
12
  #windowSvc = inject(SkyAppWindowRef);
13
13
  #dynamicComponentService = inject(SkyDynamicComponentService);
14
- #environmentInjector = inject(EnvironmentInjector);
15
14
  /**
16
15
  * Starts a blocking page wait on the page.
17
16
  */
@@ -98,7 +97,6 @@ export class SkyWaitService {
98
97
  // with any other waits that are created.
99
98
  if (!waitComponent) {
100
99
  waitComponentRef = this.#dynamicComponentService.createComponent(SkyWaitPageComponent, {
101
- environmentInjector: this.#environmentInjector,
102
100
  location: SkyDynamicComponentLocation.BodyBottom,
103
101
  });
104
102
  waitComponent = waitComponentRef.instance;
@@ -148,10 +146,13 @@ export class SkyWaitService {
148
146
  }
149
147
  }
150
148
  }
151
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
152
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitService }); }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
150
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitService, providedIn: 'any' }); }
153
151
  }
154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyWaitService, decorators: [{
155
- type: Injectable
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SkyWaitService, decorators: [{
153
+ type: Injectable,
154
+ args: [{
155
+ providedIn: 'any',
156
+ }]
156
157
  }] });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxFQUNmLDJCQUEyQixFQUMzQiwwQkFBMEIsR0FDM0IsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFjLEtBQUssSUFBSSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUU3RCxJQUFJLGFBQStDLENBQUM7QUFDcEQsSUFBSSxnQkFBZ0UsQ0FBQztBQUNyRSxJQUFJLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUM5QixJQUFJLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUdqQyxNQUFNLE9BQU8sY0FBYztJQUN6QixVQUFVLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzlELG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRW5EOztPQUVHO0lBQ0kscUJBQXFCO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksd0JBQXdCO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLG1CQUFtQjtRQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxzQkFBc0I7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU87UUFDWixJQUFJLGFBQWEsRUFBRTtZQUNqQixhQUFhLEdBQUcsU0FBUyxDQUFDO1lBQzFCLHFCQUFxQixHQUFHLENBQUMsQ0FBQztZQUMxQix3QkFBd0IsR0FBRyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ2pFO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksWUFBWSxDQUFJLFVBQXlCO1FBQzlDLE9BQU8sZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxlQUFlLENBQUksVUFBeUI7UUFDakQsT0FBTyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQzFCLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDJCQUEyQixDQUFDLFVBQW1CO1FBQzdDLElBQUksYUFBYSxFQUFFO1lBQ2pCLElBQUksVUFBVSxFQUFFO2dCQUNkLGFBQWEsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2dCQUNyQyxxQkFBcUIsRUFBRSxDQUFDO2FBQ3pCO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7Z0JBQ3hDLHdCQUF3QixFQUFFLENBQUM7YUFDNUI7U0FDRjtJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNsQjs7O2NBR0U7WUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUMzQyx5RkFBeUY7Z0JBQ3pGLHlDQUF5QztnQkFDekMsSUFBSSxDQUFDLGFBQWEsRUFBRTtvQkFDbEIsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FDOUQsb0JBQW9CLEVBQ3BCO3dCQUNFLG1CQUFtQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7d0JBQzlDLFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxVQUFVO3FCQUNqRCxDQUNGLENBQUM7b0JBQ0YsYUFBYSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztpQkFDM0M7Z0JBRUQsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM5QztJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsVUFBbUI7UUFDOUI7OztVQUdFO1FBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUMzQyxJQUFJLGFBQWEsRUFBRTtnQkFDakIsSUFBSSxVQUFVLEVBQUU7b0JBQ2QsSUFBSSxxQkFBcUIsR0FBRyxDQUFDLEVBQUU7d0JBQzdCLHFCQUFxQixFQUFFLENBQUM7cUJBQ3pCO29CQUVELElBQUkscUJBQXFCLEdBQUcsQ0FBQyxFQUFFO3dCQUM3QixhQUFhLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztxQkFDdkM7aUJBQ0Y7cUJBQU07b0JBQ0wsSUFBSSx3QkFBd0IsR0FBRyxDQUFDLEVBQUU7d0JBQ2hDLHdCQUF3QixFQUFFLENBQUM7cUJBQzVCO29CQUVELElBQUksd0JBQXdCLEdBQUcsQ0FBQyxFQUFFO3dCQUNoQyxhQUFhLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO3FCQUMxQztpQkFDRjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLFVBQW1CO1FBQ2hDLElBQUksYUFBYSxFQUFFO1lBQ2pCLElBQUksVUFBVSxFQUFFO2dCQUNkLHFCQUFxQixHQUFHLENBQUMsQ0FBQztnQkFDMUIsYUFBYSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0wsd0JBQXdCLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QixhQUFhLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO2FBQzFDO1NBQ0Y7SUFDSCxDQUFDOzhHQXpKVSxjQUFjO2tIQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnRSZWYsXG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIEluamVjdGFibGUsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lBcHBXaW5kb3dSZWYsXG4gIFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbixcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVmZXIgYXMgb2JzZXJ2YWJsZURlZmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5V2FpdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3dhaXQtcGFnZS5jb21wb25lbnQnO1xuXG5sZXQgd2FpdENvbXBvbmVudDogU2t5V2FpdFBhZ2VDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5sZXQgd2FpdENvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFNreVdhaXRQYWdlQ29tcG9uZW50PiB8IHVuZGVmaW5lZDtcbmxldCBwYWdlV2FpdEJsb2NraW5nQ291bnQgPSAwO1xubGV0IHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lXYWl0U2VydmljZSB7XG4gICN3aW5kb3dTdmMgPSBpbmplY3QoU2t5QXBwV2luZG93UmVmKTtcbiAgI2R5bmFtaWNDb21wb25lbnRTZXJ2aWNlID0gaW5qZWN0KFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlKTtcbiAgI2Vudmlyb25tZW50SW5qZWN0b3IgPSBpbmplY3QoRW52aXJvbm1lbnRJbmplY3Rvcik7XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIGJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBiZWdpbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYmVnaW5QYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNiZWdpblBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLiBCbG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS4gTm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBpbmRpY2F0aW9uXG4gICAqIGlzIHJlbW92ZWQgd2hlbiBhbGwgcnVubmluZyBub24tYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBibG9ja2luZyBhbmQgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXJBbGxQYWdlV2FpdHMoKTogdm9pZCB7XG4gICAgdGhpcy4jY2xlYXJQYWdlV2FpdCh0cnVlKTtcbiAgICB0aGlzLiNjbGVhclBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICB3YWl0Q29tcG9uZW50ID0gdW5kZWZpbmVkO1xuICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZS5yZW1vdmVDb21wb25lbnQod2FpdENvbXBvbmVudFJlZik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGF1bmNoZXMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljXG4gICAqIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgbm9uQmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAjc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IHRydWU7XG4gICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCsrO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQrKztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYmVnaW5QYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAvKlxuICAgICAgICAgIER5bmFtaWMgY29tcG9uZW50IGNyZWF0aW9uIG5lZWRzIHRvIGJlIGRvbmUgaW4gYSB0aW1lb3V0IHRvIHByZXZlbnQgQXBwbGljYXRpb25SZWYgZnJvbVxuICAgICAgICAgIGNyYXNoaW5nIHdoZW4gd2FpdCBzZXJ2aWNlIGlzIGNhbGxlZCBpbiBBbmd1bGFyIGxpZmVjeWNsZSBmdW5jdGlvbnMuXG4gICAgICAqL1xuICAgICAgdGhpcy4jd2luZG93U3ZjLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgLy8gRW5zdXJpbmcgaGVyZSB0aGF0IHdlIHJlY2hlY2sgdGhpcyBhZnRlciB0aGUgc2V0VGltZW91dCBpcyBvdmVyIHNvIHRoYXQgd2UgZG9uJ3QgY2xhc2hcbiAgICAgICAgLy8gd2l0aCBhbnkgb3RoZXIgd2FpdHMgdGhhdCBhcmUgY3JlYXRlZC5cbiAgICAgICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAgICAgd2FpdENvbXBvbmVudFJlZiA9IHRoaXMuI2R5bmFtaWNDb21wb25lbnRTZXJ2aWNlLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgICAgIFNreVdhaXRQYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbnZpcm9ubWVudEluamVjdG9yOiB0aGlzLiNlbnZpcm9ubWVudEluamVjdG9yLFxuICAgICAgICAgICAgICBsb2NhdGlvbjogU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJvZHlCb3R0b20sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgICB3YWl0Q29tcG9uZW50ID0gd2FpdENvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuI3NldFdhaXRDb21wb25lbnRQcm9wZXJ0aWVzKGlzQmxvY2tpbmcpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI3NldFdhaXRDb21wb25lbnRQcm9wZXJ0aWVzKGlzQmxvY2tpbmcpO1xuICAgIH1cbiAgfVxuXG4gICNlbmRQYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgLypcbiAgICAgICAgTmVlZHMgdG8geWllbGQgc28gdGhhdCB3YWl0IGNyZWF0aW9uIGNhbiBmaW5pc2hcbiAgICAgICAgYmVmb3JlIGl0IGlzIGRpc21pc3NlZCBpbiB0aGUgZXZlbnQgb2YgYSByYWNlLlxuICAgICovXG4gICAgdGhpcy4jd2luZG93U3ZjLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICAgIGlmIChpc0Jsb2NraW5nKSB7XG4gICAgICAgICAgaWYgKHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA+IDApIHtcbiAgICAgICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudC0tO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwYWdlV2FpdEJsb2NraW5nQ291bnQgPCAxKSB7XG4gICAgICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAocGFnZVdhaXROb25CbG9ja2luZ0NvdW50ID4gMCkge1xuICAgICAgICAgICAgcGFnZVdhaXROb25CbG9ja2luZ0NvdW50LS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA8IDEpIHtcbiAgICAgICAgICAgIHdhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAjY2xlYXJQYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHdhaXRDb21wb25lbnQpIHtcbiAgICAgIGlmIChpc0Jsb2NraW5nKSB7XG4gICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICAgIHdhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPSAwO1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc05vbkJsb2NraW5nV2FpdCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsZUFBZSxFQUNmLDJCQUEyQixFQUMzQiwwQkFBMEIsR0FDM0IsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFjLEtBQUssSUFBSSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUU3RCxJQUFJLGFBQStDLENBQUM7QUFDcEQsSUFBSSxnQkFBZ0UsQ0FBQztBQUNyRSxJQUFJLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUM5QixJQUFJLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUtqQyxNQUFNLE9BQU8sY0FBYztJQUN6QixVQUFVLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRTlEOztPQUVHO0lBQ0kscUJBQXFCO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksd0JBQXdCO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLG1CQUFtQjtRQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxz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QUFDLEVBQUU7d0JBQ2hDLHdCQUF3QixFQUFFLENBQUM7cUJBQzVCO29CQUVELElBQUksd0JBQXdCLEdBQUcsQ0FBQyxFQUFFO3dCQUNoQyxhQUFhLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO3FCQUMxQztpQkFDRjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLFVBQW1CO1FBQ2hDLElBQUksYUFBYSxFQUFFO1lBQ2pCLElBQUksVUFBVSxFQUFFO2dCQUNkLHFCQUFxQixHQUFHLENBQUMsQ0FBQztnQkFDMUIsYUFBYSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0wsd0JBQXdCLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QixhQUFhLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO2FBQzFDO1NBQ0Y7SUFDSCxDQUFDOzhHQXZKVSxjQUFjO2tIQUFkLGNBQWMsY0FGYixLQUFLOzsyRkFFTixjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiwgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lBcHBXaW5kb3dSZWYsXG4gIFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbixcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVmZXIgYXMgb2JzZXJ2YWJsZURlZmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5V2FpdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3dhaXQtcGFnZS5jb21wb25lbnQnO1xuXG5sZXQgd2FpdENvbXBvbmVudDogU2t5V2FpdFBhZ2VDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5sZXQgd2FpdENvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFNreVdhaXRQYWdlQ29tcG9uZW50PiB8IHVuZGVmaW5lZDtcbmxldCBwYWdlV2FpdEJsb2NraW5nQ291bnQgPSAwO1xubGV0IHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ2FueScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVdhaXRTZXJ2aWNlIHtcbiAgI3dpbmRvd1N2YyA9IGluamVjdChTa3lBcHBXaW5kb3dSZWYpO1xuICAjZHluYW1pY0NvbXBvbmVudFNlcnZpY2UgPSBpbmplY3QoU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBibG9ja2luZyBwYWdlIHdhaXQgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk6IHZvaWQge1xuICAgIHRoaXMuI2JlZ2luUGFnZVdhaXQodHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBiZWdpbk5vbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYmVnaW5QYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogRW5kcyBhIGJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS4gQmxvY2tpbmcgcGFnZSB3YWl0IGluZGljYXRpb25cbiAgICogaXMgcmVtb3ZlZCB3aGVuIGFsbCBydW5uaW5nIGJsb2NraW5nIHBhZ2Ugd2FpdHMgYXJlIGVuZGVkLlxuICAgKi9cbiAgcHVibGljIGVuZEJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jZW5kUGFnZVdhaXQodHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogRW5kcyBhIG5vbi1ibG9ja2luZyBwYWdlIHdhaXQgb24gdGhlIHBhZ2UuIE5vbi1ibG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgYXJlIGVuZGVkLlxuICAgKi9cbiAgcHVibGljIGVuZE5vbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jZW5kUGFnZVdhaXQoZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFycyBhbGwgYmxvY2tpbmcgYW5kIG5vbi1ibG9ja2luZyBwYWdlIHdhaXRzIG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGNsZWFyQWxsUGFnZVdhaXRzKCk6IHZvaWQge1xuICAgIHRoaXMuI2NsZWFyUGFnZVdhaXQodHJ1ZSk7XG4gICAgdGhpcy4jY2xlYXJQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgd2FpdENvbXBvbmVudCA9IHVuZGVmaW5lZDtcbiAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPSAwO1xuICAgICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFNlcnZpY2UucmVtb3ZlQ29tcG9uZW50KHdhaXRDb21wb25lbnRSZWYpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMYXVuY2hlcyBhIHBhZ2Ugd2FpdCBhbmQgYXV0b21hdGljYWxseSBzdG9wcyB3aGVuIHRoZSBzcGVjaWZpYyBhc3luY2hyb25vdXMgZXZlbnQgY29tcGxldGVzLlxuICAgKi9cbiAgcHVibGljIGJsb2NraW5nV3JhcDxUPihvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFQ+KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9ic2VydmFibGVEZWZlcigoKSA9PiB7XG4gICAgICB0aGlzLmJlZ2luQmxvY2tpbmdQYWdlV2FpdCgpO1xuICAgICAgcmV0dXJuIG9ic2VydmFibGUucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLmVuZEJsb2NraW5nUGFnZVdhaXQoKSkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBhbmQgYXV0b21hdGljYWxseSBzdG9wcyB3aGVuIHRoZSBzcGVjaWZpY1xuICAgKiBhc3luY2hyb25vdXMgZXZlbnQgY29tcGxldGVzLlxuICAgKi9cbiAgcHVibGljIG5vbkJsb2NraW5nV3JhcDxUPihvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFQ+KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9ic2VydmFibGVEZWZlcigoKSA9PiB7XG4gICAgICB0aGlzLmJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpO1xuICAgICAgcmV0dXJuIG9ic2VydmFibGUucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLmVuZE5vbkJsb2NraW5nUGFnZVdhaXQoKSkpO1xuICAgIH0pO1xuICB9XG5cbiAgI3NldFdhaXRDb21wb25lbnRQcm9wZXJ0aWVzKGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgICBwYWdlV2FpdEJsb2NraW5nQ291bnQrKztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gdHJ1ZTtcbiAgICAgICAgcGFnZVdhaXROb25CbG9ja2luZ0NvdW50Kys7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2JlZ2luUGFnZVdhaXQoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICghd2FpdENvbXBvbmVudCkge1xuICAgICAgLypcbiAgICAgICAgICBEeW5hbWljIGNvbXBvbmVudCBjcmVhdGlvbiBuZWVkcyB0byBiZSBkb25lIGluIGEgdGltZW91dCB0byBwcmV2ZW50IEFwcGxpY2F0aW9uUmVmIGZyb21cbiAgICAgICAgICBjcmFzaGluZyB3aGVuIHdhaXQgc2VydmljZSBpcyBjYWxsZWQgaW4gQW5ndWxhciBsaWZlY3ljbGUgZnVuY3Rpb25zLlxuICAgICAgKi9cbiAgICAgIHRoaXMuI3dpbmRvd1N2Yy5uYXRpdmVXaW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIC8vIEVuc3VyaW5nIGhlcmUgdGhhdCB3ZSByZWNoZWNrIHRoaXMgYWZ0ZXIgdGhlIHNldFRpbWVvdXQgaXMgb3ZlciBzbyB0aGF0IHdlIGRvbid0IGNsYXNoXG4gICAgICAgIC8vIHdpdGggYW55IG90aGVyIHdhaXRzIHRoYXQgYXJlIGNyZWF0ZWQuXG4gICAgICAgIGlmICghd2FpdENvbXBvbmVudCkge1xuICAgICAgICAgIHdhaXRDb21wb25lbnRSZWYgPSB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZS5jcmVhdGVDb21wb25lbnQoXG4gICAgICAgICAgICBTa3lXYWl0UGFnZUNvbXBvbmVudCxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbG9jYXRpb246IFNreUR5bmFtaWNDb21wb25lbnRMb2NhdGlvbi5Cb2R5Qm90dG9tLFxuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG4gICAgICAgICAgd2FpdENvbXBvbmVudCA9IHdhaXRDb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLiNzZXRXYWl0Q29tcG9uZW50UHJvcGVydGllcyhpc0Jsb2NraW5nKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNzZXRXYWl0Q29tcG9uZW50UHJvcGVydGllcyhpc0Jsb2NraW5nKTtcbiAgICB9XG4gIH1cblxuICAjZW5kUGFnZVdhaXQoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIC8qXG4gICAgICAgIE5lZWRzIHRvIHlpZWxkIHNvIHRoYXQgd2FpdCBjcmVhdGlvbiBjYW4gZmluaXNoXG4gICAgICAgIGJlZm9yZSBpdCBpcyBkaXNtaXNzZWQgaW4gdGhlIGV2ZW50IG9mIGEgcmFjZS5cbiAgICAqL1xuICAgIHRoaXMuI3dpbmRvd1N2Yy5uYXRpdmVXaW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICAgIGlmIChwYWdlV2FpdEJsb2NraW5nQ291bnQgPiAwKSB7XG4gICAgICAgICAgICBwYWdlV2FpdEJsb2NraW5nQ291bnQtLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAocGFnZVdhaXRCbG9ja2luZ0NvdW50IDwgMSkge1xuICAgICAgICAgICAgd2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA+IDApIHtcbiAgICAgICAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudC0tO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPCAxKSB7XG4gICAgICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc05vbkJsb2NraW5nV2FpdCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgI2NsZWFyUGFnZVdhaXQoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICBwYWdlV2FpdEJsb2NraW5nQ291bnQgPSAwO1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFnZVdhaXROb25CbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==