@skyux/indicators 5.0.0-beta.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/LICENSE +21 -0
  2. package/bundles/skyux-indicators-testing.umd.js +15 -11
  3. package/bundles/skyux-indicators-testing.umd.js.map +1 -1
  4. package/bundles/skyux-indicators.umd.js +1113 -858
  5. package/bundles/skyux-indicators.umd.js.map +1 -1
  6. package/documentation.json +6097 -0
  7. package/esm2015/modules/alert/alert.component.js +27 -24
  8. package/esm2015/modules/alert/alert.module.js +31 -18
  9. package/esm2015/modules/chevron/chevron.component.js +24 -24
  10. package/esm2015/modules/chevron/chevron.module.js +29 -18
  11. package/esm2015/modules/help-inline/help-inline.component.js +20 -15
  12. package/esm2015/modules/help-inline/help-inline.module.js +31 -18
  13. package/esm2015/modules/icon/icon-class-list.pipe.js +13 -14
  14. package/esm2015/modules/icon/icon-resolver.service.js +11 -15
  15. package/esm2015/modules/icon/icon-stack-item.js +2 -1
  16. package/esm2015/modules/icon/icon-stack.component.js +22 -21
  17. package/esm2015/modules/icon/icon.component.js +27 -28
  18. package/esm2015/modules/icon/icon.module.js +30 -20
  19. package/esm2015/modules/icon/types/icon-type.js +2 -1
  20. package/esm2015/modules/icon/types/icon-variant-type.js +2 -1
  21. package/esm2015/modules/key-info/key-info-label.component.js +13 -11
  22. package/esm2015/modules/key-info/key-info-value.component.js +13 -11
  23. package/esm2015/modules/key-info/key-info.component.js +17 -15
  24. package/esm2015/modules/key-info/key-info.module.js +30 -21
  25. package/esm2015/modules/label/label-type.js +2 -1
  26. package/esm2015/modules/label/label.component.js +19 -15
  27. package/esm2015/modules/label/label.module.js +24 -17
  28. package/esm2015/modules/shared/indicator-description-type.js +2 -1
  29. package/esm2015/modules/shared/indicator-icon-type.js +2 -1
  30. package/esm2015/modules/shared/indicator-icon-utility.js +1 -1
  31. package/esm2015/modules/shared/indicator-icon.js +2 -1
  32. package/esm2015/modules/shared/sky-indicators-resources.module.js +41 -0
  33. package/esm2015/modules/status-indicator/status-indicator.component.js +26 -28
  34. package/esm2015/modules/status-indicator/status-indicator.module.js +29 -18
  35. package/esm2015/modules/text-highlight/text-highlight.directive.js +25 -25
  36. package/esm2015/modules/text-highlight/text-highlight.module.js +23 -18
  37. package/esm2015/modules/tokens/token.component.js +32 -40
  38. package/esm2015/modules/tokens/tokens.component.js +86 -74
  39. package/esm2015/modules/tokens/tokens.module.js +33 -20
  40. package/esm2015/modules/tokens/types/token-selected-event-args.js +2 -1
  41. package/esm2015/modules/tokens/types/token.js +2 -1
  42. package/esm2015/modules/tokens/types/tokens-message-type.js +1 -1
  43. package/esm2015/modules/tokens/types/tokens-message.js +2 -1
  44. package/esm2015/modules/wait/wait-adapter.service.js +29 -27
  45. package/esm2015/modules/wait/wait-page-adapter.service.js +15 -12
  46. package/esm2015/modules/wait/wait-page.component.js +19 -18
  47. package/esm2015/modules/wait/wait.component.js +35 -36
  48. package/esm2015/modules/wait/wait.module.js +32 -23
  49. package/esm2015/modules/wait/wait.service.js +37 -46
  50. package/esm2015/public-api.js +36 -0
  51. package/esm2015/skyux-indicators.js +2 -23
  52. package/esm2015/testing/alert-fixture.js +1 -1
  53. package/esm2015/testing/label-fixture.js +1 -1
  54. package/esm2015/testing/public-api.js +4 -0
  55. package/esm2015/testing/skyux-indicators-testing.js +2 -2
  56. package/esm2015/testing/wait-fixture.js +1 -1
  57. package/fesm2015/skyux-indicators-testing.js.map +1 -1
  58. package/fesm2015/skyux-indicators.js +752 -616
  59. package/fesm2015/skyux-indicators.js.map +1 -1
  60. package/modules/alert/alert.component.d.ts +3 -0
  61. package/modules/alert/alert.module.d.ts +10 -0
  62. package/modules/chevron/chevron.component.d.ts +4 -1
  63. package/modules/chevron/chevron.module.d.ts +9 -0
  64. package/modules/help-inline/help-inline.component.d.ts +3 -0
  65. package/modules/help-inline/help-inline.module.d.ts +10 -0
  66. package/modules/icon/icon-class-list.pipe.d.ts +3 -0
  67. package/modules/icon/icon-resolver.service.d.ts +3 -0
  68. package/modules/icon/icon-stack.component.d.ts +3 -0
  69. package/modules/icon/icon.component.d.ts +3 -0
  70. package/modules/icon/icon.module.d.ts +9 -0
  71. package/modules/key-info/key-info-label.component.d.ts +3 -0
  72. package/modules/key-info/key-info-value.component.d.ts +3 -0
  73. package/modules/key-info/key-info.component.d.ts +3 -0
  74. package/modules/key-info/key-info.module.d.ts +8 -0
  75. package/modules/label/label.component.d.ts +3 -0
  76. package/modules/label/label.module.d.ts +7 -0
  77. package/modules/shared/sky-indicators-resources.module.d.ts +14 -0
  78. package/modules/status-indicator/status-indicator.component.d.ts +3 -0
  79. package/modules/status-indicator/status-indicator.module.d.ts +9 -0
  80. package/modules/text-highlight/text-highlight.directive.d.ts +3 -0
  81. package/modules/text-highlight/text-highlight.module.d.ts +5 -0
  82. package/modules/tokens/token.component.d.ts +4 -1
  83. package/modules/tokens/tokens.component.d.ts +3 -0
  84. package/modules/tokens/tokens.module.d.ts +10 -0
  85. package/modules/wait/wait-adapter.service.d.ts +3 -0
  86. package/modules/wait/wait-page-adapter.service.d.ts +3 -0
  87. package/modules/wait/wait-page.component.d.ts +3 -0
  88. package/modules/wait/wait.component.d.ts +3 -0
  89. package/modules/wait/wait.module.d.ts +9 -0
  90. package/modules/wait/wait.service.d.ts +3 -0
  91. package/package.json +12 -27
  92. package/public-api.d.ts +33 -0
  93. package/skyux-indicators.d.ts +2 -22
  94. package/testing/package.json +2 -5
  95. package/testing/{public_api.d.ts → public-api.d.ts} +0 -0
  96. package/testing/skyux-indicators-testing.d.ts +2 -1
  97. package/CHANGELOG.md +0 -203
  98. package/bundles/skyux-indicators-testing.umd.min.js +0 -2
  99. package/bundles/skyux-indicators-testing.umd.min.js.map +0 -1
  100. package/bundles/skyux-indicators.umd.min.js +0 -16
  101. package/bundles/skyux-indicators.umd.min.js.map +0 -1
  102. package/esm2015/modules/shared/indicators-resources.module.js +0 -17
  103. package/esm2015/plugin-resources/indicators-resources-provider.js +0 -16
  104. package/esm2015/public_api.js +0 -13
  105. package/esm2015/testing/public_api.js +0 -4
  106. package/esm5/modules/alert/alert.component.js +0 -62
  107. package/esm5/modules/alert/alert.module.js +0 -32
  108. package/esm5/modules/chevron/chevron.component.js +0 -35
  109. package/esm5/modules/chevron/chevron.module.js +0 -30
  110. package/esm5/modules/help-inline/help-inline.component.js +0 -26
  111. package/esm5/modules/help-inline/help-inline.module.js +0 -32
  112. package/esm5/modules/icon/icon-class-list.pipe.js +0 -39
  113. package/esm5/modules/icon/icon-resolver.service.js +0 -57
  114. package/esm5/modules/icon/icon-stack-item.js +0 -1
  115. package/esm5/modules/icon/icon-stack.component.js +0 -25
  116. package/esm5/modules/icon/icon.component.js +0 -38
  117. package/esm5/modules/icon/icon.module.js +0 -31
  118. package/esm5/modules/icon/types/icon-type.js +0 -1
  119. package/esm5/modules/icon/types/icon-variant-type.js +0 -1
  120. package/esm5/modules/key-info/key-info-label.component.js +0 -19
  121. package/esm5/modules/key-info/key-info-value.component.js +0 -19
  122. package/esm5/modules/key-info/key-info.component.js +0 -25
  123. package/esm5/modules/key-info/key-info.module.js +0 -30
  124. package/esm5/modules/label/label-type.js +0 -1
  125. package/esm5/modules/label/label.component.js +0 -41
  126. package/esm5/modules/label/label.module.js +0 -26
  127. package/esm5/modules/shared/indicator-description-type.js +0 -1
  128. package/esm5/modules/shared/indicator-icon-type.js +0 -1
  129. package/esm5/modules/shared/indicator-icon-utility.js +0 -45
  130. package/esm5/modules/shared/indicator-icon.js +0 -1
  131. package/esm5/modules/shared/indicators-resources.module.js +0 -20
  132. package/esm5/modules/status-indicator/status-indicator.component.js +0 -111
  133. package/esm5/modules/status-indicator/status-indicator.module.js +0 -30
  134. package/esm5/modules/text-highlight/text-highlight.directive.js +0 -134
  135. package/esm5/modules/text-highlight/text-highlight.module.js +0 -24
  136. package/esm5/modules/tokens/token.component.js +0 -134
  137. package/esm5/modules/tokens/tokens.component.js +0 -325
  138. package/esm5/modules/tokens/tokens.module.js +0 -33
  139. package/esm5/modules/tokens/types/token-selected-event-args.js +0 -1
  140. package/esm5/modules/tokens/types/token.js +0 -1
  141. package/esm5/modules/tokens/types/tokens-message-type.js +0 -24
  142. package/esm5/modules/tokens/types/tokens-message.js +0 -1
  143. package/esm5/modules/wait/wait-adapter.service.js +0 -219
  144. package/esm5/modules/wait/wait-page-adapter.service.js +0 -25
  145. package/esm5/modules/wait/wait-page.component.js +0 -25
  146. package/esm5/modules/wait/wait.component.js +0 -107
  147. package/esm5/modules/wait/wait.module.js +0 -34
  148. package/esm5/modules/wait/wait.service.js +0 -176
  149. package/esm5/plugin-resources/indicators-resources-provider.js +0 -17
  150. package/esm5/public_api.js +0 -13
  151. package/esm5/skyux-indicators.js +0 -26
  152. package/esm5/testing/alert-fixture.js +0 -85
  153. package/esm5/testing/label-fixture.js +0 -50
  154. package/esm5/testing/public_api.js +0 -4
  155. package/esm5/testing/skyux-indicators-testing.js +0 -5
  156. package/esm5/testing/wait-fixture.js +0 -42
  157. package/fesm5/skyux-indicators-testing.js +0 -178
  158. package/fesm5/skyux-indicators-testing.js.map +0 -1
  159. package/fesm5/skyux-indicators.js +0 -1892
  160. package/fesm5/skyux-indicators.js.map +0 -1
  161. package/modules/shared/indicators-resources.module.d.ts +0 -2
  162. package/plugin-resources/indicators-resources-provider.d.ts +0 -5
  163. package/public_api.d.ts +0 -19
  164. package/skyux-indicators.metadata.json +0 -1
  165. package/src/assets/img/guidelines/alert/alert-anatomy.png +0 -0
  166. package/src/assets/img/guidelines/alert/alert-layout-1.png +0 -0
  167. package/src/assets/img/guidelines/alert/alert-layout-2.png +0 -0
  168. package/src/assets/img/guidelines/alert/alert-layout-3.png +0 -0
  169. package/src/assets/img/guidelines/alert/alert-option-1.png +0 -0
  170. package/src/assets/img/guidelines/alert/alert-type-1.png +0 -0
  171. package/src/assets/img/guidelines/alert/alert-type-2.png +0 -0
  172. package/src/assets/img/guidelines/alert/alert-type-3.png +0 -0
  173. package/src/assets/img/guidelines/alert/alert-type-4.png +0 -0
  174. package/src/assets/img/guidelines/alert/alert-usage-1.png +0 -0
  175. package/src/assets/img/guidelines/alert/alert-usage-2.png +0 -0
  176. package/src/assets/img/guidelines/alert/alert-usage-3.png +0 -0
  177. package/src/assets/img/guidelines/alert/alert-usage-4.png +0 -0
  178. package/src/assets/img/guidelines/alert/alert-usage-5.png +0 -0
  179. package/src/assets/img/guidelines/alert/alert-usage-6.png +0 -0
  180. package/src/assets/img/guidelines/key-info/horizontal-layout.png +0 -0
  181. package/src/assets/img/guidelines/key-info/key-info-anatomy.png +0 -0
  182. package/src/assets/img/guidelines/key-info/key-info-usage-1.png +0 -0
  183. package/src/assets/img/guidelines/key-info/key-info-usage-2.png +0 -0
  184. package/src/assets/img/guidelines/key-info/key-info-usage-3.png +0 -0
  185. package/src/assets/img/guidelines/key-info/key-info-usage-4.png +0 -0
  186. package/src/assets/img/guidelines/key-info/key-info-usage-5.png +0 -0
  187. package/src/assets/img/guidelines/key-info/key-info-usage-6.png +0 -0
  188. package/src/assets/img/guidelines/key-info/vertical-layout.png +0 -0
  189. package/src/assets/img/guidelines/status-indicator/status-indicator-anatomy.png +0 -0
  190. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-1.png +0 -0
  191. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-2-5.png +0 -0
  192. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-2.5.png +0 -0
  193. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-2.png +0 -0
  194. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-3.png +0 -0
  195. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-4.png +0 -0
  196. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-5.png +0 -0
  197. package/src/assets/img/guidelines/status-indicator/status-indicator-usage-6.png +0 -0
  198. package/src/assets/locales/resources_en_US.json +0 -54
  199. package/testing/skyux-indicators-testing.metadata.json +0 -1
@@ -1,11 +1,13 @@
1
- import { __decorate } from "tslib";
2
1
  import { animate, style, transition, trigger } from '@angular/animations';
3
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnDestroy, Output, QueryList, ViewChildren } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChildren } from '@angular/core';
4
3
  import { Subject } from 'rxjs';
5
4
  import { takeUntil } from 'rxjs/operators';
6
5
  import { SkyTokensMessageType } from './types/tokens-message-type';
7
6
  import { SkyTokenComponent } from './token.component';
8
- let SkyTokensComponent = class SkyTokensComponent {
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "./token.component";
9
+ import * as i2 from "@angular/common";
10
+ export class SkyTokensComponent {
9
11
  constructor(changeDetector) {
10
12
  this.changeDetector = changeDetector;
11
13
  /**
@@ -218,76 +220,86 @@ let SkyTokensComponent = class SkyTokensComponent {
218
220
  token
219
221
  });
220
222
  }
221
- };
222
- SkyTokensComponent.ctorParameters = () => [
223
- { type: ChangeDetectorRef }
224
- ];
225
- __decorate([
226
- Input()
227
- ], SkyTokensComponent.prototype, "disabled", null);
228
- __decorate([
229
- Input()
230
- ], SkyTokensComponent.prototype, "dismissible", null);
231
- __decorate([
232
- Input()
233
- ], SkyTokensComponent.prototype, "displayWith", null);
234
- __decorate([
235
- Input()
236
- ], SkyTokensComponent.prototype, "trackWith", void 0);
237
- __decorate([
238
- Input()
239
- ], SkyTokensComponent.prototype, "focusable", null);
240
- __decorate([
241
- Input()
242
- ], SkyTokensComponent.prototype, "tokens", null);
243
- __decorate([
244
- Input()
245
- ], SkyTokensComponent.prototype, "messageStream", null);
246
- __decorate([
247
- Output()
248
- ], SkyTokensComponent.prototype, "focusIndexOverRange", void 0);
249
- __decorate([
250
- Output()
251
- ], SkyTokensComponent.prototype, "focusIndexUnderRange", void 0);
252
- __decorate([
253
- Output()
254
- ], SkyTokensComponent.prototype, "tokenSelected", void 0);
255
- __decorate([
256
- Output()
257
- ], SkyTokensComponent.prototype, "tokensChange", void 0);
258
- __decorate([
259
- ViewChildren(SkyTokenComponent)
260
- ], SkyTokensComponent.prototype, "tokenComponents", void 0);
261
- SkyTokensComponent = __decorate([
262
- Component({
263
- selector: 'sky-tokens',
264
- template: "<div *ngIf=\"tokens\"\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"(tokens && tokens.length) ? 'list' : null\"\n>\n <sky-token *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n role=\"listitem\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\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\n class=\"sky-tokens-content\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n",
265
- changeDetection: ChangeDetectionStrategy.OnPush,
266
- animations: [
267
- trigger('blockAnimationOnLoad', [
268
- transition(':enter', [])
223
+ }
224
+ SkyTokensComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
225
+ SkyTokensComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.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" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div *ngIf=\"tokens\"\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"(tokens && tokens.length) ? 'list' : null\"\n>\n <sky-token *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n role=\"listitem\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\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\n class=\"sky-tokens-content\"\n >\n <ng-content></ng-content>\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:before{content:\"\\200b\"}\n"], components: [{ type: i1.SkyTokenComponent, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable"], outputs: ["dismiss", "tokenFocus"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [
226
+ trigger('blockAnimationOnLoad', [
227
+ transition(':enter', [])
228
+ ]),
229
+ trigger('dismiss', [
230
+ transition(':enter', [
231
+ style({
232
+ opacity: 0,
233
+ width: 0
234
+ }),
235
+ animate('150ms ease-in', style({
236
+ opacity: 1,
237
+ width: '*'
238
+ }))
269
239
  ]),
270
- trigger('dismiss', [
271
- transition(':enter', [
272
- style({
273
- opacity: 0,
274
- width: 0
275
- }),
276
- animate('150ms ease-in', style({
277
- opacity: 1,
278
- width: '*'
279
- }))
280
- ]),
281
- transition(':leave', [
282
- animate('150ms ease-in', style({
283
- opacity: 0,
284
- width: 0
285
- }))
286
- ])
240
+ transition(':leave', [
241
+ animate('150ms ease-in', style({
242
+ opacity: 0,
243
+ width: 0
244
+ }))
287
245
  ])
288
- ],
289
- 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:before{content:\"\u200B\"}"]
290
- })
291
- ], SkyTokensComponent);
292
- export { SkyTokensComponent };
293
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9pbmRpY2F0b3JzLyIsInNvdXJjZXMiOlsibW9kdWxlcy90b2tlbnMvdG9rZW5zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxFQUNULFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsT0FBTyxFQUVSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBVXhCLE9BQU8sRUFDTCxvQkFBb0IsRUFDckIsTUFBTSw2QkFBNkIsQ0FBQztBQU1yQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUEyQzNCLElBQWEsa0JBQWtCLEdBQS9CLE1BQWEsa0JBQWtCO0lBK0o3QixZQUNVLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQW5FM0M7OztXQUdHO1FBRUksd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV0RDs7O1dBR0c7UUFFSSx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXZEOztXQUVHO1FBRUksa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUVyRTs7O1dBR0c7UUFFSSxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUErQjdDLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQWFwQyxzRkFBc0Y7UUFDdEYsc0ZBQXNGO1FBQ3RGLGlCQUFpQjtRQUNqQixJQUFJLENB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QWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1FBQy9DLFVBQVUsRUFBRTtZQUNWLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRTtnQkFDOUIsVUFBVSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7YUFDekIsQ0FBQztZQUNGLE9BQU8sQ0FBQyxTQUFTLEVBQUU7Z0JBQ2pCLFVBQVUsQ0FDUixRQUFRLEVBQ1I7b0JBQ0UsS0FBSyxDQUFDO3dCQUNKLE9BQU8sRUFBRSxDQUFDO3dCQUNWLEtBQUssRUFBRSxDQUFDO3FCQUNULENBQUM7b0JBQ0YsT0FBTyxDQUNMLGVBQWUsRUFDZixLQUFLLENBQUM7d0JBQ0osT0FBTyxFQUFFLENBQUM7d0JBQ1YsS0FBSyxFQUFFLEdBQUc7cUJBQ1gsQ0FBQyxDQUNIO2lCQUNGLENBQ0Y7Z0JBQ0QsVUFBVSxDQUNSLFFBQVEsRUFDUjtvQkFDRSxPQUFPLENBQ0wsZUFBZSxFQUNmLEtBQUssQ0FBQzt3QkFDSixPQUFPLEVBQUUsQ0FBQzt3QkFDVixLQUFLLEVBQUUsQ0FBQztxQkFDVCxDQUFDLENBQ0g7aUJBQ0YsQ0FDRjthQUNGLENBQUM7U0FDSDs7S0FDRixDQUFDO0dBQ1csa0JBQWtCLENBb1M5QjtTQXBTWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlclxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcblxuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdCxcbiAgU3Vic2NyaXB0aW9uXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICB0YWtlVW50aWxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlblxufSBmcm9tICcuL3R5cGVzL3Rva2VuJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5zTWVzc2FnZVxufSBmcm9tICcuL3R5cGVzL3Rva2Vucy1tZXNzYWdlJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5zTWVzc2FnZVR5cGVcbn0gZnJvbSAnLi90eXBlcy90b2tlbnMtbWVzc2FnZS10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5TZWxlY3RlZEV2ZW50QXJnc1xufSBmcm9tICcuL3R5cGVzL3Rva2VuLXNlbGVjdGVkLWV2ZW50LWFyZ3MnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlbkNvbXBvbmVudFxufSBmcm9tICcuL3Rva2VuLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS10b2tlbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9rZW5zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9rZW5zLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignYmxvY2tBbmltYXRpb25PbkxvYWQnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdkaXNtaXNzJywgW1xuICAgICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLFxuICAgICAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgJzE1MG1zIGVhc2UtaW4nLFxuICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICAgICAgICB3aWR0aDogJyonXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgXVxuICAgICAgKSxcbiAgICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICcxNTBtcyBlYXNlLWluJyxcbiAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICBdXG4gICAgICApXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lUb2tlbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSB0b2tlbnMgbGlzdCB0byBwcmV2ZW50IHVzZXJzIGZyb20gc2VsZWN0aW5nIHRva2VucyxcbiAgICogZGlzbWlzc2luZyB0b2tlbnMsIG9yIG5hdmlnYXRpbmcgdGhyb3VnaCB0aGUgbGlzdCB3aXRoIHRoZSBhcnJvdyBrZXlzLiBXaGVuIHRoZSB0b2tlbnMgbGlzdFxuICAgKiBpcyBkaXNhYmxlZCwgdXNlcnMgY2FuIHN0aWxsIHBsYWNlIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIHJlbW92ZSB0b2tlbnMgZnJvbSB0aGUgbGlzdCBieSBzZWxlY3RpbmcgdGhlaXIgY2xvc2UgYnV0dG9uc1xuICAgKiBvciBwcmVzc2luZyB0aGUgYEJhY2tzcGFjZWAga2V5LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzbWlzc2libGUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzbWlzc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLl9kaXNtaXNzaWJsZSAhPT0gZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG9rZW4gcHJvcGVydHkgdG8gZGlzcGxheSBmb3IgZWFjaCBpdGVtIGluIHRoZSB0b2tlbnMgbGlzdC5cbiAgICogQGRlZmF1bHQgJ25hbWUnXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc3BsYXlXaXRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9kaXNwbGF5V2l0aCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5V2l0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9kaXNwbGF5V2l0aCB8fCAnbmFtZSc7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0b2tlbiBwcm9wZXJ0eSB0aGF0IHJlcHJlc2VudHMgdGhlIHRva2VuJ3MgdW5pcXVlIGlkZW50aWZpZXIuIFdoZW4gdGhpcyBwcm9wZXJ0eVxuICAgKiBpcyBzZXQsIGFuaW1hdGlvbnMgYXJlIGVuYWJsZWQgd2hlbiBkaXNtaXNzaW5nIHRva2Vucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmFja1dpdGg6IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIFRoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBhYmlsaXR5IG9mIHVzZXJzIHRvIHNlbGVjdCB0b2tlbnMsIGRpc21pc3MgdG9rZW5zLFxuICAgKiBvciBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZm9jdXNhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZm9jdXNhYmxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZvY3VzYWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMuX2ZvY3VzYWJsZSAhPT0gZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhbiBhcnJheSBvZiB0b2tlbnMgdG8gaW5jbHVkZSBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdG9rZW5zKHZhbHVlOiBTa3lUb2tlbltdKSB7XG4gICAgdGhpcy5fdG9rZW5zID0gdmFsdWU7XG4gICAgdGhpcy50b2tlbnNDaGFuZ2UuZW1pdCh0aGlzLl90b2tlbnMpO1xuICB9XG5cbiAgcHVibGljIGdldCB0b2tlbnMoKTogU2t5VG9rZW5bXSB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VucyB8fCBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gb2JzZXJ2YWJsZSBvZiBgU2t5VG9rZW5zTWVzc2FnZWAgdGhhdCBjYW4gcGxhY2UgZm9jdXMgb24gYVxuICAgKiBwYXJ0aWN1bGFyIHRva2VuIG9yIHJlbW92ZSB0aGUgYWN0aXZlIHRva2VuIGZyb20gdGhlIGxpc3QuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1lc3NhZ2VTdHJlYW0odmFsdWU6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4pIHtcbiAgICB0aGlzLl9tZXNzYWdlU3RyZWFtID0gdmFsdWU7XG4gICAgdGhpcy5pbml0TWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBtZXNzYWdlU3RyZWFtKCk6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4ge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlU3RyZWFtO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgbmF2aWdhdGUgdGhyb3VnaCB0aGUgdG9rZW5zIGxpc3Qgd2l0aCB0aGUgYFRhYmAga2V5XG4gICAqIGFuZCBhdHRlbXB0IHRvIG1vdmUgcGFzdCB0aGUgZmluYWwgdG9rZW4gaW4gdGhlIGxpc3QuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGZvY3VzSW5kZXhPdmVyUmFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnNuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBiZWZvcmUgdGhlIGZpcnN0IHRva2VuIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmb2N1c0luZGV4VW5kZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBzZWxlY3QgYSB0b2tlbiBpbiB0aGUgbGlzdC4gVGhpcyBldmVudCBlbWl0cyB0aGUgc2VsZWN0ZWQgdG9rZW4uXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHRva2VuU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3M+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdGhlIHRva2VucyBpbiB0aGUgbGlzdCBjaGFuZ2UuXG4gICAqIFRoaXMgZXZlbnQgZW1pdHMgYW4gYXJyYXkgb2YgdGhlIHRva2VucyBpbiB0aGUgdXBkYXRlZCBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB0b2tlbnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuW10+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBhY3RpdmVJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVJbmRleCB8fCAwO1xuICB9XG4gIHB1YmxpYyBzZXQgYWN0aXZlSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh2YWx1ZSA+PSB0aGlzLnRva2Vucy5sZW5ndGgpIHtcbiAgICAgIHZhbHVlID0gdGhpcy50b2tlbnMubGVuZ3RoIC0gMTtcbiAgICAgIHRoaXMuZm9jdXNJbmRleE92ZXJSYW5nZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgdmFsdWUgPSAwO1xuICAgICAgdGhpcy5mb2N1c0luZGV4VW5kZXJSYW5nZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fYWN0aXZlSW5kZXggPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHRyYWNrVG9rZW5GbjogKGluZGV4OiBudW1iZXIsIGl0ZW06IFNreVRva2VuKSA9PiBhbnk7XG5cbiAgQFZpZXdDaGlsZHJlbihTa3lUb2tlbkNvbXBvbmVudClcbiAgcHJpdmF0ZSB0b2tlbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxTa3lUb2tlbkNvbXBvbmVudD47XG5cbiAgcHJpdmF0ZSBtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHJpdmF0ZSBfYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG4gIHByaXZhdGUgX2Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBwcml2YXRlIF9mb2N1c2FibGU6IGJvb2xlYW47XG4gIHByaXZhdGUgX3Rva2VuczogU2t5VG9rZW5bXTtcbiAgcHJpdmF0ZSBfZGlzcGxheVdpdGg6IHN0cmluZztcbiAgcHJpdmF0ZSBfbWVzc2FnZVN0cmVhbTogU3ViamVjdDxTa3lUb2tlbnNNZXNzYWdlPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICAvLyBBbmd1bGFyIGNhbGxzIHRoZSB0cmFja0J5IGZ1bmN0aW9uIHdpdGhvdXQgYXBwbHlpbmcgdGhlIGNvbXBvbmVudCBpbnN0YW5jZSdzIHNjb3BlLlxuICAgIC8vIFVzZSBhIGZhdC1hcnJvdyBmdW5jdGlvbiBzbyB0aGUgY3VycmVudCBjb21wb25lbnQgaW5zdGFuY2UncyB0cmFja1dpdGggcHJvcGVydHkgY2FuXG4gICAgLy8gYmUgcmVmZXJlbmNlZC5cbiAgICB0aGlzLnRyYWNrVG9rZW5GbiA9IChfaW5kZXgsIGl0ZW0pID0+IHtcbiAgICAgIGlmICh0aGlzLnRyYWNrV2l0aCkge1xuICAgICAgICByZXR1cm4gaXRlbS52YWx1ZVt0aGlzLnRyYWNrV2l0aF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblRva2VuQ2xpY2sodG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm5vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6c3dpdGNoLWRlZmF1bHQgKi9cbiAgICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICAgIGNhc2UgJ0xlZnQnOlxuICAgICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICAgIHRoaXMubWVzc2FnZVN0cmVhbS5uZXh0KHsgdHlwZTogU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNQcmV2aW91c1Rva2VuIH0pO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnUmlnaHQnOlxuICAgICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTdHJlYW0ubmV4dCh7IHR5cGU6IFNreVRva2Vuc01lc3NhZ2VUeXBlLkZvY3VzTmV4dFRva2VuIH0pO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNlbGVjdFRva2VuKHRva2VuOiBTa3lUb2tlbik6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5ub3RpZnlUb2tlblNlbGVjdGVkKHRva2VuKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlVG9rZW4odG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgdGhpcy50b2tlbnMgPSB0aGlzLnRva2Vucy5maWx0ZXIodCA9PiB0ICE9PSB0b2tlbik7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzUHJldmlvdXNUb2tlbigpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4LS07XG4gICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzTmV4dFRva2VuKCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlSW5kZXgrKztcbiAgICB0aGlzLmZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9jdXNMYXN0VG9rZW4oKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmxlbmd0aCAtIDE7XG4gICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzQWN0aXZlVG9rZW4oKTogdm9pZCB7XG4gICAgY29uc3QgdG9rZW5Db21wb25lbnQgPSB0aGlzLnRva2VuQ29tcG9uZW50c1xuICAgICAgLmZpbmQoKF9jb21wOiBTa3lUb2tlbkNvbXBvbmVudCwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgIHJldHVybiAodGhpcy5hY3RpdmVJbmRleCA9PT0gaSk7XG4gICAgICB9KTtcblxuICAgIGlmICh0b2tlbkNvbXBvbmVudCkge1xuICAgICAgdG9rZW5Db21wb25lbnQuZm9jdXNFbGVtZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVBY3RpdmVUb2tlbigpOiB2b2lkIHtcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW5zW3RoaXMuYWN0aXZlSW5kZXhdO1xuICAgIGlmICh0b2tlbikge1xuICAgICAgdGhpcy5yZW1vdmVUb2tlbih0b2tlbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0TWVzc2FnZVN0cmVhbSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tZXNzYWdlU3RyZWFtU3ViKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tZXNzYWdlU3RyZWFtKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTdHJlYW1TdWIgPSB0aGlzLm1lc3NhZ2VTdHJlYW1cbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUb2tlbnNNZXNzYWdlKSA9PiB7XG4gICAgICAgICAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnN3aXRjaC1kZWZhdWx0ICovXG4gICAgICAgICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNMYXN0VG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzTGFzdFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c0FjdGl2ZVRva2VuOlxuICAgICAgICAgICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c1ByZXZpb3VzVG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzUHJldmlvdXNUb2tlbigpO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNOZXh0VG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzTmV4dFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5SZW1vdmVBY3RpdmVUb2tlbjpcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWN0aXZlVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBub3RpZnlUb2tlblNlbGVjdGVkKHRva2VuOiBTa3lUb2tlbik6IHZvaWQge1xuICAgIHRoaXMudG9rZW5TZWxlY3RlZC5lbWl0KHtcbiAgICAgIHRva2VuXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
246
+ ])
247
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensComponent, decorators: [{
249
+ type: Component,
250
+ args: [{
251
+ selector: 'sky-tokens',
252
+ templateUrl: './tokens.component.html',
253
+ styleUrls: ['./tokens.component.scss'],
254
+ changeDetection: ChangeDetectionStrategy.OnPush,
255
+ animations: [
256
+ trigger('blockAnimationOnLoad', [
257
+ transition(':enter', [])
258
+ ]),
259
+ trigger('dismiss', [
260
+ transition(':enter', [
261
+ style({
262
+ opacity: 0,
263
+ width: 0
264
+ }),
265
+ animate('150ms ease-in', style({
266
+ opacity: 1,
267
+ width: '*'
268
+ }))
269
+ ]),
270
+ transition(':leave', [
271
+ animate('150ms ease-in', style({
272
+ opacity: 0,
273
+ width: 0
274
+ }))
275
+ ])
276
+ ])
277
+ ]
278
+ }]
279
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
280
+ type: Input
281
+ }], dismissible: [{
282
+ type: Input
283
+ }], displayWith: [{
284
+ type: Input
285
+ }], trackWith: [{
286
+ type: Input
287
+ }], focusable: [{
288
+ type: Input
289
+ }], tokens: [{
290
+ type: Input
291
+ }], messageStream: [{
292
+ type: Input
293
+ }], focusIndexOverRange: [{
294
+ type: Output
295
+ }], focusIndexUnderRange: [{
296
+ type: Output
297
+ }], tokenSelected: [{
298
+ type: Output
299
+ }], tokensChange: [{
300
+ type: Output
301
+ }], tokenComponents: [{
302
+ type: ViewChildren,
303
+ args: [SkyTokenComponent]
304
+ }] } });
305
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luZGljYXRvcnMvc3JjL21vZHVsZXMvdG9rZW5zL3Rva2Vucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmRpY2F0b3JzL3NyYy9tb2R1bGVzL3Rva2Vucy90b2tlbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsT0FBTyxFQUVSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBVXhCLE9BQU8sRUFDTCxvQkFBb0IsRUFDckIsTUFBTSw2QkFBNkIsQ0FBQztBQU1yQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUEyQzNCLE1BQU0sT0FBTyxrQkFBa0I7SUErSjdCLFlBQ1UsY0FBaUM7UUFBakMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBbkUzQzs7O1dBR0c7UUFFSSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXREOzs7V0FHRztRQUVJLHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdkQ7O1dBRUc7UUFFSSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUE2QixDQUFDO1FBRXJFOzs7V0FHRztRQUVJLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQStCN0Msa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FB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SztnQkFlQyxtQkFBbUI7c0JBRHpCLE1BQU07Z0JBUUEsb0JBQW9CO3NCQUQxQixNQUFNO2dCQU9BLGFBQWE7c0JBRG5CLE1BQU07Z0JBUUEsWUFBWTtzQkFEbEIsTUFBTTtnQkE2QkMsZUFBZTtzQkFEdEIsWUFBWTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlclxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcblxuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdCxcbiAgU3Vic2NyaXB0aW9uXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICB0YWtlVW50aWxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlblxufSBmcm9tICcuL3R5cGVzL3Rva2VuJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5zTWVzc2FnZVxufSBmcm9tICcuL3R5cGVzL3Rva2Vucy1tZXNzYWdlJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5zTWVzc2FnZVR5cGVcbn0gZnJvbSAnLi90eXBlcy90b2tlbnMtbWVzc2FnZS10eXBlJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5TZWxlY3RlZEV2ZW50QXJnc1xufSBmcm9tICcuL3R5cGVzL3Rva2VuLXNlbGVjdGVkLWV2ZW50LWFyZ3MnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlbkNvbXBvbmVudFxufSBmcm9tICcuL3Rva2VuLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS10b2tlbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9rZW5zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9rZW5zLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignYmxvY2tBbmltYXRpb25PbkxvYWQnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdkaXNtaXNzJywgW1xuICAgICAgdHJhbnNpdGlvbihcbiAgICAgICAgJzplbnRlcicsXG4gICAgICAgIFtcbiAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLFxuICAgICAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgJzE1MG1zIGVhc2UtaW4nLFxuICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICAgICAgICB3aWR0aDogJyonXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgXVxuICAgICAgKSxcbiAgICAgIHRyYW5zaXRpb24oXG4gICAgICAgICc6bGVhdmUnLFxuICAgICAgICBbXG4gICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICcxNTBtcyBlYXNlLWluJyxcbiAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICBdXG4gICAgICApXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lUb2tlbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSB0b2tlbnMgbGlzdCB0byBwcmV2ZW50IHVzZXJzIGZyb20gc2VsZWN0aW5nIHRva2VucyxcbiAgICogZGlzbWlzc2luZyB0b2tlbnMsIG9yIG5hdmlnYXRpbmcgdGhyb3VnaCB0aGUgbGlzdCB3aXRoIHRoZSBhcnJvdyBrZXlzLiBXaGVuIHRoZSB0b2tlbnMgbGlzdFxuICAgKiBpcyBkaXNhYmxlZCwgdXNlcnMgY2FuIHN0aWxsIHBsYWNlIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIHJlbW92ZSB0b2tlbnMgZnJvbSB0aGUgbGlzdCBieSBzZWxlY3RpbmcgdGhlaXIgY2xvc2UgYnV0dG9uc1xuICAgKiBvciBwcmVzc2luZyB0aGUgYEJhY2tzcGFjZWAga2V5LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzbWlzc2libGUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzbWlzc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLl9kaXNtaXNzaWJsZSAhPT0gZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG9rZW4gcHJvcGVydHkgdG8gZGlzcGxheSBmb3IgZWFjaCBpdGVtIGluIHRoZSB0b2tlbnMgbGlzdC5cbiAgICogQGRlZmF1bHQgJ25hbWUnXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc3BsYXlXaXRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9kaXNwbGF5V2l0aCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5V2l0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9kaXNwbGF5V2l0aCB8fCAnbmFtZSc7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0b2tlbiBwcm9wZXJ0eSB0aGF0IHJlcHJlc2VudHMgdGhlIHRva2VuJ3MgdW5pcXVlIGlkZW50aWZpZXIuIFdoZW4gdGhpcyBwcm9wZXJ0eVxuICAgKiBpcyBzZXQsIGFuaW1hdGlvbnMgYXJlIGVuYWJsZWQgd2hlbiBkaXNtaXNzaW5nIHRva2Vucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmFja1dpdGg6IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIFRoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBhYmlsaXR5IG9mIHVzZXJzIHRvIHNlbGVjdCB0b2tlbnMsIGRpc21pc3MgdG9rZW5zLFxuICAgKiBvciBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZm9jdXNhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZm9jdXNhYmxlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZvY3VzYWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKHRoaXMuX2ZvY3VzYWJsZSAhPT0gZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhbiBhcnJheSBvZiB0b2tlbnMgdG8gaW5jbHVkZSBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdG9rZW5zKHZhbHVlOiBTa3lUb2tlbltdKSB7XG4gICAgdGhpcy5fdG9rZW5zID0gdmFsdWU7XG4gICAgdGhpcy50b2tlbnNDaGFuZ2UuZW1pdCh0aGlzLl90b2tlbnMpO1xuICB9XG5cbiAgcHVibGljIGdldCB0b2tlbnMoKTogU2t5VG9rZW5bXSB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VucyB8fCBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gb2JzZXJ2YWJsZSBvZiBgU2t5VG9rZW5zTWVzc2FnZWAgdGhhdCBjYW4gcGxhY2UgZm9jdXMgb24gYVxuICAgKiBwYXJ0aWN1bGFyIHRva2VuIG9yIHJlbW92ZSB0aGUgYWN0aXZlIHRva2VuIGZyb20gdGhlIGxpc3QuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1lc3NhZ2VTdHJlYW0odmFsdWU6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4pIHtcbiAgICB0aGlzLl9tZXNzYWdlU3RyZWFtID0gdmFsdWU7XG4gICAgdGhpcy5pbml0TWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBtZXNzYWdlU3RyZWFtKCk6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4ge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlU3RyZWFtO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgbmF2aWdhdGUgdGhyb3VnaCB0aGUgdG9rZW5zIGxpc3Qgd2l0aCB0aGUgYFRhYmAga2V5XG4gICAqIGFuZCBhdHRlbXB0IHRvIG1vdmUgcGFzdCB0aGUgZmluYWwgdG9rZW4gaW4gdGhlIGxpc3QuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGZvY3VzSW5kZXhPdmVyUmFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnNuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBiZWZvcmUgdGhlIGZpcnN0IHRva2VuIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmb2N1c0luZGV4VW5kZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBzZWxlY3QgYSB0b2tlbiBpbiB0aGUgbGlzdC4gVGhpcyBldmVudCBlbWl0cyB0aGUgc2VsZWN0ZWQgdG9rZW4uXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHRva2VuU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3M+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdGhlIHRva2VucyBpbiB0aGUgbGlzdCBjaGFuZ2UuXG4gICAqIFRoaXMgZXZlbnQgZW1pdHMgYW4gYXJyYXkgb2YgdGhlIHRva2VucyBpbiB0aGUgdXBkYXRlZCBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB0b2tlbnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuW10+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBhY3RpdmVJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVJbmRleCB8fCAwO1xuICB9XG4gIHB1YmxpYyBzZXQgYWN0aXZlSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh2YWx1ZSA+PSB0aGlzLnRva2Vucy5sZW5ndGgpIHtcbiAgICAgIHZhbHVlID0gdGhpcy50b2tlbnMubGVuZ3RoIC0gMTtcbiAgICAgIHRoaXMuZm9jdXNJbmRleE92ZXJSYW5nZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlIDwgMCkge1xuICAgICAgdmFsdWUgPSAwO1xuICAgICAgdGhpcy5mb2N1c0luZGV4VW5kZXJSYW5nZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fYWN0aXZlSW5kZXggPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHRyYWNrVG9rZW5GbjogKGluZGV4OiBudW1iZXIsIGl0ZW06IFNreVRva2VuKSA9PiBhbnk7XG5cbiAgQFZpZXdDaGlsZHJlbihTa3lUb2tlbkNvbXBvbmVudClcbiAgcHJpdmF0ZSB0b2tlbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxTa3lUb2tlbkNvbXBvbmVudD47XG5cbiAgcHJpdmF0ZSBtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHJpdmF0ZSBfYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG4gIHByaXZhdGUgX2Rpc21pc3NpYmxlOiBib29sZWFuO1xuICBwcml2YXRlIF9mb2N1c2FibGU6IGJvb2xlYW47XG4gIHByaXZhdGUgX3Rva2VuczogU2t5VG9rZW5bXTtcbiAgcHJpdmF0ZSBfZGlzcGxheVdpdGg6IHN0cmluZztcbiAgcHJpdmF0ZSBfbWVzc2FnZVN0cmVhbTogU3ViamVjdDxTa3lUb2tlbnNNZXNzYWdlPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICAvLyBBbmd1bGFyIGNhbGxzIHRoZSB0cmFja0J5IGZ1bmN0aW9uIHdpdGhvdXQgYXBwbHlpbmcgdGhlIGNvbXBvbmVudCBpbnN0YW5jZSdzIHNjb3BlLlxuICAgIC8vIFVzZSBhIGZhdC1hcnJvdyBmdW5jdGlvbiBzbyB0aGUgY3VycmVudCBjb21wb25lbnQgaW5zdGFuY2UncyB0cmFja1dpdGggcHJvcGVydHkgY2FuXG4gICAgLy8gYmUgcmVmZXJlbmNlZC5cbiAgICB0aGlzLnRyYWNrVG9rZW5GbiA9IChfaW5kZXgsIGl0ZW0pID0+IHtcbiAgICAgIGlmICh0aGlzLnRyYWNrV2l0aCkge1xuICAgICAgICByZXR1cm4gaXRlbS52YWx1ZVt0aGlzLnRyYWNrV2l0aF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblRva2VuQ2xpY2sodG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm5vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6c3dpdGNoLWRlZmF1bHQgKi9cbiAgICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICAgIGNhc2UgJ0xlZnQnOlxuICAgICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICAgIHRoaXMubWVzc2FnZVN0cmVhbS5uZXh0KHsgdHlwZTogU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNQcmV2aW91c1Rva2VuIH0pO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnUmlnaHQnOlxuICAgICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTdHJlYW0ubmV4dCh7IHR5cGU6IFNreVRva2Vuc01lc3NhZ2VUeXBlLkZvY3VzTmV4dFRva2VuIH0pO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNlbGVjdFRva2VuKHRva2VuOiBTa3lUb2tlbik6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5ub3RpZnlUb2tlblNlbGVjdGVkKHRva2VuKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlVG9rZW4odG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgdGhpcy50b2tlbnMgPSB0aGlzLnRva2Vucy5maWx0ZXIodCA9PiB0ICE9PSB0b2tlbik7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzUHJldmlvdXNUb2tlbigpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4LS07XG4gICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzTmV4dFRva2VuKCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlSW5kZXgrKztcbiAgICB0aGlzLmZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9jdXNMYXN0VG9rZW4oKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmxlbmd0aCAtIDE7XG4gICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzQWN0aXZlVG9rZW4oKTogdm9pZCB7XG4gICAgY29uc3QgdG9rZW5Db21wb25lbnQgPSB0aGlzLnRva2VuQ29tcG9uZW50c1xuICAgICAgLmZpbmQoKF9jb21wOiBTa3lUb2tlbkNvbXBvbmVudCwgaTogbnVtYmVyKSA9PiB7XG4gICAgICAgIHJldHVybiAodGhpcy5hY3RpdmVJbmRleCA9PT0gaSk7XG4gICAgICB9KTtcblxuICAgIGlmICh0b2tlbkNvbXBvbmVudCkge1xuICAgICAgdG9rZW5Db21wb25lbnQuZm9jdXNFbGVtZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVBY3RpdmVUb2tlbigpOiB2b2lkIHtcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW5zW3RoaXMuYWN0aXZlSW5kZXhdO1xuICAgIGlmICh0b2tlbikge1xuICAgICAgdGhpcy5yZW1vdmVUb2tlbih0b2tlbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0TWVzc2FnZVN0cmVhbSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tZXNzYWdlU3RyZWFtU3ViKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tZXNzYWdlU3RyZWFtKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTdHJlYW1TdWIgPSB0aGlzLm1lc3NhZ2VTdHJlYW1cbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUb2tlbnNNZXNzYWdlKSA9PiB7XG4gICAgICAgICAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnN3aXRjaC1kZWZhdWx0ICovXG4gICAgICAgICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNMYXN0VG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzTGFzdFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c0FjdGl2ZVRva2VuOlxuICAgICAgICAgICAgdGhpcy5mb2N1c0FjdGl2ZVRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c1ByZXZpb3VzVG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzUHJldmlvdXNUb2tlbigpO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNOZXh0VG9rZW46XG4gICAgICAgICAgICB0aGlzLmZvY3VzTmV4dFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5SZW1vdmVBY3RpdmVUb2tlbjpcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWN0aXZlVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBub3RpZnlUb2tlblNlbGVjdGVkKHRva2VuOiBTa3lUb2tlbik6IHZvaWQge1xuICAgIHRoaXMudG9rZW5TZWxlY3RlZC5lbWl0KHtcbiAgICAgIHRva2VuXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJ0b2tlbnNcIlxuICBjbGFzcz1cInNreS10b2tlbnNcIlxuICBbQGJsb2NrQW5pbWF0aW9uT25Mb2FkXVxuICBbYXR0ci5yb2xlXT1cIih0b2tlbnMgJiYgdG9rZW5zLmxlbmd0aCkgPyAnbGlzdCcgOiBudWxsXCJcbj5cbiAgPHNreS10b2tlbiAqbmdGb3I9XCJsZXQgdG9rZW4gb2YgdG9rZW5zOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja1Rva2VuRm5cIlxuICAgIHJvbGU9XCJsaXN0aXRlbVwiXG4gICAgW0AuZGlzYWJsZWRdPVwiIXRyYWNrV2l0aFwiXG4gICAgW0BkaXNtaXNzXVxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2Rpc21pc3NpYmxlXT1cImRpc21pc3NpYmxlXCJcbiAgICBbZm9jdXNhYmxlXT1cImZvY3VzYWJsZVwiXG4gICAgKGRpc21pc3MpPVwicmVtb3ZlVG9rZW4odG9rZW4pXCJcbiAgICAoY2xpY2spPVwib25Ub2tlbkNsaWNrKHRva2VuKVwiXG4gICAgKGtleWRvd24pPVwib25Ub2tlbktleURvd24oJGV2ZW50KVwiXG4gICAgKGtleXVwLmVudGVyKT1cInNlbGVjdFRva2VuKHRva2VuKTskZXZlbnQucHJldmVudERlZmF1bHQoKTtcIlxuICAgICh0b2tlbkZvY3VzKT1cImFjdGl2ZUluZGV4ID0gaVwiXG4gID5cbiAgICB7eyB0b2tlbi52YWx1ZVtkaXNwbGF5V2l0aF0gfX1cbiAgPC9za3ktdG9rZW4+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS10b2tlbnMtY29udGVudFwiXG4gID5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,30 +1,43 @@
1
- import { __decorate } from "tslib";
2
1
  import { NgModule } from '@angular/core';
3
2
  import { CommonModule } from '@angular/common';
4
3
  import { SkyI18nModule } from '@skyux/i18n';
5
4
  import { SkyTokenComponent } from './token.component';
6
5
  import { SkyTokensComponent } from './tokens.component';
7
6
  import { SkyIconModule } from '../icon/icon.module';
8
- import { SkyIndicatorsResourcesModule } from '../shared/indicators-resources.module';
9
- let SkyTokensModule = class SkyTokensModule {
10
- };
11
- SkyTokensModule = __decorate([
12
- NgModule({
13
- declarations: [
14
- SkyTokenComponent,
15
- SkyTokensComponent
16
- ],
17
- imports: [
7
+ import { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';
8
+ import * as i0 from "@angular/core";
9
+ export class SkyTokensModule {
10
+ }
11
+ SkyTokensModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ SkyTokensModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensModule, declarations: [SkyTokenComponent,
13
+ SkyTokensComponent], imports: [CommonModule,
14
+ SkyI18nModule,
15
+ SkyIconModule,
16
+ SkyIndicatorsResourcesModule], exports: [SkyTokenComponent,
17
+ SkyTokensComponent] });
18
+ SkyTokensModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensModule, imports: [[
18
19
  CommonModule,
19
20
  SkyI18nModule,
20
21
  SkyIconModule,
21
22
  SkyIndicatorsResourcesModule
22
- ],
23
- exports: [
24
- SkyTokenComponent,
25
- SkyTokensComponent
26
- ]
27
- })
28
- ], SkyTokensModule);
29
- export { SkyTokensModule };
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9pbmRpY2F0b3JzLyIsInNvdXJjZXMiOlsibW9kdWxlcy90b2tlbnMvdG9rZW5zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsWUFBWSxFQUNiLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNMLGtCQUFrQixFQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsNEJBQTRCLEVBQzdCLE1BQU0sdUNBQXVDLENBQUM7QUFrQi9DLElBQWEsZUFBZSxHQUE1QixNQUFhLGVBQWU7Q0FBSSxDQUFBO0FBQW5CLGVBQWU7SUFoQjNCLFFBQVEsQ0FBQztRQUNSLFlBQVksRUFBRTtZQUNaLGlCQUFpQjtZQUNqQixrQkFBa0I7U0FDbkI7UUFDRCxPQUFPLEVBQUU7WUFDUCxZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYiw0QkFBNEI7U0FDN0I7UUFDRCxPQUFPLEVBQUU7WUFDUCxpQkFBaUI7WUFDakIsa0JBQWtCO1NBQ25CO0tBQ0YsQ0FBQztHQUNXLGVBQWUsQ0FBSTtTQUFuQixlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIENvbW1vbk1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBTa3lJMThuTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5Db21wb25lbnRcbn0gZnJvbSAnLi90b2tlbi5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlbnNDb21wb25lbnRcbn0gZnJvbSAnLi90b2tlbnMuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgU2t5SWNvbk1vZHVsZVxufSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5SW5kaWNhdG9yc1Jlc291cmNlc01vZHVsZVxufSBmcm9tICcuLi9zaGFyZWQvaW5kaWNhdG9ycy1yZXNvdXJjZXMubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5VG9rZW5Db21wb25lbnQsXG4gICAgU2t5VG9rZW5zQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5STE4bk1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreUluZGljYXRvcnNSZXNvdXJjZXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreVRva2VuQ29tcG9uZW50LFxuICAgIFNreVRva2Vuc0NvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreVRva2Vuc01vZHVsZSB7IH1cbiJdfQ==
23
+ ]] });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyTokensModule, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ declarations: [
28
+ SkyTokenComponent,
29
+ SkyTokensComponent
30
+ ],
31
+ imports: [
32
+ CommonModule,
33
+ SkyI18nModule,
34
+ SkyIconModule,
35
+ SkyIndicatorsResourcesModule
36
+ ],
37
+ exports: [
38
+ SkyTokenComponent,
39
+ SkyTokensComponent
40
+ ]
41
+ }]
42
+ }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luZGljYXRvcnMvc3JjL21vZHVsZXMvdG9rZW5zL3Rva2Vucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsWUFBWSxFQUNiLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLGFBQWEsRUFDZCxNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNMLGtCQUFrQixFQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQ0wsNEJBQTRCLEVBQzdCLE1BQU0sMkNBQTJDLENBQUM7O0FBa0JuRCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQWR4QixpQkFBaUI7UUFDakIsa0JBQWtCLGFBR2xCLFlBQVk7UUFDWixhQUFhO1FBQ2IsYUFBYTtRQUNiLDRCQUE0QixhQUc1QixpQkFBaUI7UUFDakIsa0JBQWtCOzZHQUdULGVBQWUsWUFYakI7WUFDUCxZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYiw0QkFBNEI7U0FDN0I7MkZBTVUsZUFBZTtrQkFoQjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGlCQUFpQjt3QkFDakIsa0JBQWtCO3FCQUNuQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIENvbW1vbk1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBTa3lJMThuTW9kdWxlXG59IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHtcbiAgU2t5VG9rZW5Db21wb25lbnRcbn0gZnJvbSAnLi90b2tlbi5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICBTa3lUb2tlbnNDb21wb25lbnRcbn0gZnJvbSAnLi90b2tlbnMuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgU2t5SWNvbk1vZHVsZVxufSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcblxuaW1wb3J0IHtcbiAgU2t5SW5kaWNhdG9yc1Jlc291cmNlc01vZHVsZVxufSBmcm9tICcuLi9zaGFyZWQvc2t5LWluZGljYXRvcnMtcmVzb3VyY2VzLm1vZHVsZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreVRva2VuQ29tcG9uZW50LFxuICAgIFNreVRva2Vuc0NvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNreUkxOG5Nb2R1bGUsXG4gICAgU2t5SWNvbk1vZHVsZSxcbiAgICBTa3lJbmRpY2F0b3JzUmVzb3VyY2VzTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTa3lUb2tlbkNvbXBvbmVudCxcbiAgICBTa3lUb2tlbnNDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTa3lUb2tlbnNNb2R1bGUgeyB9XG4iXX0=
@@ -1 +1,2 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tc2VsZWN0ZWQtZXZlbnQtYXJncy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9pbmRpY2F0b3JzLyIsInNvdXJjZXMiOlsibW9kdWxlcy90b2tlbnMvdHlwZXMvdG9rZW4tc2VsZWN0ZWQtZXZlbnQtYXJncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2t5VG9rZW5cbn0gZnJvbSAnLi90b2tlbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2t5VG9rZW5TZWxlY3RlZEV2ZW50QXJncyB7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHRva2VuLlxuICAgKi9cbiAgdG9rZW4/OiBTa3lUb2tlbjtcbn1cbiJdfQ==
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tc2VsZWN0ZWQtZXZlbnQtYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luZGljYXRvcnMvc3JjL21vZHVsZXMvdG9rZW5zL3R5cGVzL3Rva2VuLXNlbGVjdGVkLWV2ZW50LWFyZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNreVRva2VuXG59IGZyb20gJy4vdG9rZW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3Mge1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0b2tlbi5cbiAgICovXG4gIHRva2VuPzogU2t5VG9rZW47XG59XG4iXX0=
@@ -1 +1,2 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvaW5kaWNhdG9ycy8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvdG9rZW5zL3R5cGVzL3Rva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNreVRva2VuIHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0b2tlbidzIGNvbnRlbnRzLlxuICAgKi9cbiAgdmFsdWU6IGFueTtcbn1cbiJdfQ==
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmRpY2F0b3JzL3NyYy9tb2R1bGVzL3Rva2Vucy90eXBlcy90b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTa3lUb2tlbiB7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG9rZW4ncyBjb250ZW50cy5cbiAgICovXG4gIHZhbHVlOiBhbnk7XG59XG4iXX0=
@@ -21,4 +21,4 @@ export var SkyTokensMessageType;
21
21
  */
22
22
  SkyTokensMessageType[SkyTokensMessageType["RemoveActiveToken"] = 4] = "RemoveActiveToken";
23
23
  })(SkyTokensMessageType || (SkyTokensMessageType = {}));
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLW1lc3NhZ2UtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bza3l1eC9pbmRpY2F0b3JzLyIsInNvdXJjZXMiOlsibW9kdWxlcy90b2tlbnMvdHlwZXMvdG9rZW5zLW1lc3NhZ2UtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxvQkEyQlg7QUEzQkQsV0FBWSxvQkFBb0I7SUFFOUI7O09BRUc7SUFDSCxtRkFBa0IsQ0FBQTtJQUVsQjs7T0FFRztJQUNILHVGQUFvQixDQUFBO0lBRXBCOztPQUVHO0lBQ0gsMkZBQXNCLENBQUE7SUFFdEI7O09BRUc7SUFDSCxtRkFBa0IsQ0FBQTtJQUVsQjs7T0FFRztJQUNILHlGQUFxQixDQUFBO0FBRXZCLENBQUMsRUEzQlcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQTJCL0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTa3lUb2tlbnNNZXNzYWdlVHlwZSB7XG5cbiAgLyoqXG4gICAqIFBsYWNlcyBmb2N1cyBvbiB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEZvY3VzTGFzdFRva2VuID0gMCxcblxuICAvKipcbiAgICogUGxhY2VzIGZvY3VzIG9uIHRoZSB0b2tlbiB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZC5cbiAgICovXG4gIEZvY3VzQWN0aXZlVG9rZW4gPSAxLFxuXG4gIC8qKlxuICAgKiBQbGFjZXMgZm9jdXMgb24gdGhlIHRva2VuIGJlZm9yZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHRva2VuLlxuICAgKi9cbiAgRm9jdXNQcmV2aW91c1Rva2VuID0gMixcblxuICAvKipcbiAgICogUGxhY2VzIGZvY3VzIG9uIHRoZSB0b2tlbiBhZnRlciB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHRva2VuLlxuICAgKi9cbiAgRm9jdXNOZXh0VG9rZW4gPSAzLFxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIHRoZSB0b2tlbiB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZCBmcm9tIHRoZSBsaXN0IG9mIHRva2Vucy5cbiAgICovXG4gIFJlbW92ZUFjdGl2ZVRva2VuID0gNFxuXG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLW1lc3NhZ2UtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2luZGljYXRvcnMvc3JjL21vZHVsZXMvdG9rZW5zL3R5cGVzL3Rva2Vucy1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksb0JBMkJYO0FBM0JELFdBQVksb0JBQW9CO0lBRTlCOztPQUVHO0lBQ0gsbUZBQWtCLENBQUE7SUFFbEI7O09BRUc7SUFDSCx1RkFBb0IsQ0FBQTtJQUVwQjs7T0FFRztJQUNILDJGQUFzQixDQUFBO0lBRXRCOztPQUVHO0lBQ0gsbUZBQWtCLENBQUE7SUFFbEI7O09BRUc7SUFDSCx5RkFBcUIsQ0FBQTtBQUV2QixDQUFDLEVBM0JXLG9CQUFvQixLQUFwQixvQkFBb0IsUUEyQi9CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gU2t5VG9rZW5zTWVzc2FnZVR5cGUge1xuXG4gIC8qKlxuICAgKiBQbGFjZXMgZm9jdXMgb24gdGhlIGxhc3QgdG9rZW4gaW4gdGhlIGxpc3QuXG4gICAqL1xuICBGb2N1c0xhc3RUb2tlbiA9IDAsXG5cbiAgLyoqXG4gICAqIFBsYWNlcyBmb2N1cyBvbiB0aGUgdG9rZW4gdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQuXG4gICAqL1xuICBGb2N1c0FjdGl2ZVRva2VuID0gMSxcblxuICAvKipcbiAgICogUGxhY2VzIGZvY3VzIG9uIHRoZSB0b2tlbiBiZWZvcmUgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0b2tlbi5cbiAgICovXG4gIEZvY3VzUHJldmlvdXNUb2tlbiA9IDIsXG5cbiAgLyoqXG4gICAqIFBsYWNlcyBmb2N1cyBvbiB0aGUgdG9rZW4gYWZ0ZXIgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0b2tlbi5cbiAgICovXG4gIEZvY3VzTmV4dFRva2VuID0gMyxcblxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgdG9rZW4gdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgZnJvbSB0aGUgbGlzdCBvZiB0b2tlbnMuXG4gICAqL1xuICBSZW1vdmVBY3RpdmVUb2tlbiA9IDRcblxufVxuIl19
@@ -1 +1,2 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLW1lc3NhZ2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvaW5kaWNhdG9ycy8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvdG9rZW5zL3R5cGVzL3Rva2Vucy1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTa3lUb2tlbnNNZXNzYWdlVHlwZVxufSBmcm9tICcuL3Rva2Vucy1tZXNzYWdlLXR5cGUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNreVRva2Vuc01lc3NhZ2Uge1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgbWVzc2FnZS5cbiAgICovXG4gIHR5cGU/OiBTa3lUb2tlbnNNZXNzYWdlVHlwZTtcbn1cbiJdfQ==
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLW1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmRpY2F0b3JzL3NyYy9tb2R1bGVzL3Rva2Vucy90eXBlcy90b2tlbnMtbWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2t5VG9rZW5zTWVzc2FnZVR5cGVcbn0gZnJvbSAnLi90b2tlbnMtbWVzc2FnZS10eXBlJztcblxuZXhwb3J0IGludGVyZmFjZSBTa3lUb2tlbnNNZXNzYWdlIHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIG1lc3NhZ2UuXG4gICAqL1xuICB0eXBlPzogU2t5VG9rZW5zTWVzc2FnZVR5cGU7XG59XG4iXX0=
@@ -1,13 +1,12 @@
1
- var SkyWaitAdapterService_1;
2
- import { __decorate } from "tslib";
3
- import { ElementRef, Injectable, OnDestroy, Renderer2, RendererFactory2 } from '@angular/core';
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
4
3
  // Need to add the following to classes which contain static methods.
5
4
  // See: https://github.com/ng-packagr/ng-packagr/issues/641
6
5
  /**
7
6
  * @internal
8
7
  * @dynamic
9
8
  */
10
- let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterService {
9
+ export class SkyWaitAdapterService {
11
10
  constructor(rendererFactory) {
12
11
  this.rendererFactory = rendererFactory;
13
12
  this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
@@ -31,10 +30,11 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
31
30
  this.clearDocumentFocus();
32
31
  }
33
32
  if (isFullPage) {
34
- SkyWaitAdapterService_1.isPageWaitActive = true;
33
+ SkyWaitAdapterService.isPageWaitActive = true;
35
34
  const endListenerFunc = this.renderer.listen(document.body, 'keydown', (event) => {
36
35
  /*istanbul ignore else */
37
36
  if (event.key) {
37
+ /* istanbul ignore else */
38
38
  if (event.key.toLowerCase() === 'tab') {
39
39
  event.target.blur();
40
40
  event.preventDefault();
@@ -44,18 +44,19 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
44
44
  }
45
45
  }
46
46
  });
47
- SkyWaitAdapterService_1.busyElements[waitComponentId] = {
47
+ SkyWaitAdapterService.busyElements[waitComponentId] = {
48
48
  listener: endListenerFunc,
49
49
  busyEl: undefined
50
50
  };
51
51
  }
52
52
  else {
53
53
  const endListenerFunc = this.renderer.listen(busyEl, 'focusin', (event) => {
54
+ /* istanbul ignore else */
54
55
  if (!isNonBlocking) {
55
56
  event.preventDefault();
56
57
  event.stopPropagation();
57
58
  event.stopImmediatePropagation();
58
- if (SkyWaitAdapterService_1.isPageWaitActive) {
59
+ if (SkyWaitAdapterService.isPageWaitActive) {
59
60
  this.clearDocumentFocus();
60
61
  }
61
62
  else {
@@ -66,7 +67,7 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
66
67
  }
67
68
  }
68
69
  });
69
- SkyWaitAdapterService_1.busyElements[waitComponentId] = {
70
+ SkyWaitAdapterService.busyElements[waitComponentId] = {
70
71
  listener: endListenerFunc,
71
72
  busyEl: busyEl
72
73
  };
@@ -75,11 +76,11 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
75
76
  else {
76
77
  this.renderer.removeAttribute(busyEl, 'aria-busy');
77
78
  if (isFullPage) {
78
- SkyWaitAdapterService_1.isPageWaitActive = false;
79
+ SkyWaitAdapterService.isPageWaitActive = false;
79
80
  }
80
- if (waitComponentId in SkyWaitAdapterService_1.busyElements) {
81
- SkyWaitAdapterService_1.busyElements[waitComponentId].listener();
82
- delete SkyWaitAdapterService_1.busyElements[waitComponentId];
81
+ if (waitComponentId in SkyWaitAdapterService.busyElements) {
82
+ SkyWaitAdapterService.busyElements[waitComponentId].listener();
83
+ delete SkyWaitAdapterService.busyElements[waitComponentId];
83
84
  }
84
85
  }
85
86
  }
@@ -99,6 +100,8 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
99
100
  }
100
101
  else {
101
102
  // Try wrapping the navigation
103
+ /* istanbul ignore next */
104
+ /* sanity check */
102
105
  curIndex = modifier > 0 ? 0 : focussable.length - 1;
103
106
  while (curIndex !== startingIndex &&
104
107
  focussable[curIndex] &&
@@ -138,8 +141,8 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
138
141
  if (this.isElementHidden(element)) {
139
142
  return true;
140
143
  }
141
- for (const key of Object.keys(SkyWaitAdapterService_1.busyElements)) {
142
- const parentElement = SkyWaitAdapterService_1.busyElements[key].busyEl;
144
+ for (const key of Object.keys(SkyWaitAdapterService.busyElements)) {
145
+ const parentElement = SkyWaitAdapterService.busyElements[key].busyEl;
143
146
  if (parentElement && parentElement.contains(element)) {
144
147
  return true;
145
148
  }
@@ -147,6 +150,7 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
147
150
  return false;
148
151
  }
149
152
  clearDocumentFocus() {
153
+ /* istanbul ignore else */
150
154
  if (document.activeElement && document.activeElement.blur) {
151
155
  document.activeElement.blur();
152
156
  }
@@ -173,20 +177,18 @@ let SkyWaitAdapterService = SkyWaitAdapterService_1 = class SkyWaitAdapterServic
173
177
  return this.focussableElements;
174
178
  }
175
179
  clearListeners() {
176
- SkyWaitAdapterService_1.isPageWaitActive = false;
177
- for (const key of Object.keys(SkyWaitAdapterService_1.busyElements)) {
178
- SkyWaitAdapterService_1.busyElements[key].listener();
179
- delete SkyWaitAdapterService_1.busyElements[key];
180
+ SkyWaitAdapterService.isPageWaitActive = false;
181
+ for (const key of Object.keys(SkyWaitAdapterService.busyElements)) {
182
+ SkyWaitAdapterService.busyElements[key].listener();
183
+ delete SkyWaitAdapterService.busyElements[key];
180
184
  }
181
185
  }
182
- };
186
+ }
183
187
  SkyWaitAdapterService.isPageWaitActive = false;
184
188
  SkyWaitAdapterService.busyElements = {};
185
- SkyWaitAdapterService.ctorParameters = () => [
186
- { type: RendererFactory2 }
187
- ];
188
- SkyWaitAdapterService = SkyWaitAdapterService_1 = __decorate([
189
- Injectable()
190
- ], SkyWaitAdapterService);
191
- export { SkyWaitAdapterService };
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvaW5kaWNhdG9ycy8iLCJzb3VyY2VzIjpbIm1vZHVsZXMvd2FpdC93YWl0LWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLHFFQUFxRTtBQUNyRSwyREFBMkQ7QUFDM0Q7OztHQUdHO0FBRUgsSUFBYSxxQkFBcUIsNkJBQWxDLE1BQWEscUJBQXFCO0lBUWhDLFlBQ1UsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBRXpDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQWtCO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBa0I7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLFlBQVksQ0FDakIsTUFBa0IsRUFDbEIsVUFBbUIsRUFDbkIsU0FBa0IsRUFDbEIsYUFBYSxHQUFHLEtBQUssRUFDckIsZUFBd0I7UUFFeEIsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFN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QU8sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLE9BQU8sS0FBSyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBQ3ZHLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVPLGNBQWM7UUFDcEIsdUJBQXFCLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQy9DLEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyx1QkFBcUIsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUNqRSx1QkFBcUIsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkQsT0FBTyx1QkFBcUIsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQXpOZ0Isc0NBQWdCLEdBQUcsS0FBSyxDQUFDO0FBQ3pCLGtDQUFZLEdBQTBELEVBQUUsQ0FBQzs7WUFPN0QsZ0JBQWdCOztBQVRoQyxxQkFBcUI7SUFEakMsVUFBVSxFQUFFO0dBQ0EscUJBQXFCLENBME5qQztTQTFOWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbGVtZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBPbkRlc3Ryb3ksXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5MlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gTmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyB0byBjbGFzc2VzIHdoaWNoIGNvbnRhaW4gc3RhdGljIG1ldGhvZHMuXG4vLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzY0MVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIEBkeW5hbWljXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lXYWl0QWRhcHRlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHN0YXRpYyBpc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gIHByaXZhdGUgc3RhdGljIGJ1c3lFbGVtZW50czoge1trZXk6IHN0cmluZ106IHtidXN5RWw6IEhUTUxFbGVtZW50LCBsaXN0ZW5lcjogYW55fX0gPSB7fTtcblxuICBwcml2YXRlIGZvY3Vzc2FibGVFbGVtZW50czogSFRNTEVsZW1lbnRbXTtcblxuICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTJcbiAgKSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKHVuZGVmaW5lZCwgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyTGlzdGVuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0V2FpdEJvdW5kcyh3YWl0RWw6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHdhaXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQsICdwb3NpdGlvbicsICdyZWxhdGl2ZScpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZVdhaXRCb3VuZHMod2FpdEVsOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZSh3YWl0RWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50LCAncG9zaXRpb24nKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRCdXN5U3RhdGUoXG4gICAgd2FpdEVsOiBFbGVtZW50UmVmLFxuICAgIGlzRnVsbFBhZ2U6IGJvb2xlYW4sXG4gICAgaXNXYWl0aW5nOiBib29sZWFuLFxuICAgIGlzTm9uQmxvY2tpbmcgPSBmYWxzZSxcbiAgICB3YWl0Q29tcG9uZW50SWQ/OiBzdHJpbmdcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgYnVzeUVsID0gaXNGdWxsUGFnZSA/IGRvY3VtZW50LmJvZHkgOiB3YWl0RWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gICAgaWYgKCFpc05vbkJsb2NraW5nKSB7XG4gICAgICBpZiAoaXNXYWl0aW5nKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGJ1c3lFbCwgJ2FyaWEtYnVzeScsICd0cnVlJyk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGZvY3VzIGZyb20gcGFnZSB3aGVuIGZ1bGwgcGFnZSBibG9ja2luZyB3YWl0XG4gICAgICAgIGlmIChpc0Z1bGxQYWdlIHx8IGJ1c3lFbC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xuICAgICAgICAgIHRoaXMuY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNGdWxsUGFnZSkge1xuICAgICAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICBjb25zdCBlbmRMaXN0ZW5lckZ1bmMgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHksXG4gICAgICAgICAgICAna2V5ZG93bicsXG4gICAgICAgICAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgICBpZiAoZXZlbnQua2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGV2ZW50LmtleS50b0xvd2VyQ2FzZSgpID09PSAndGFiJykge1xuICAgICAgICAgICAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBhbnkpLmJsdXIoKTtcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhckRvY3VtZW50Rm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICBTa3lXYWl0QWRhcHRlclNlcnZpY2UuYnVzeUVsZW1lbnRzW3dhaXRDb21wb25lbnRJZF0gPSB7XG4gICAgICAgICAgICBsaXN0ZW5lcjogZW5kTGlzdGVuZXJGdW5jLFxuICAgICAgICAgICAgYnVzeUVsOiB1bmRlZmluZWRcbiAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGVuZExpc3RlbmVyRnVuYyA9IHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgYnVzeUVsLFxuICAgICAgICAgICAgJ2ZvY3VzaW4nLFxuICAgICAgICAgICAgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmICghaXNOb25CbG9ja2luZykge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmlzUGFnZVdhaXRBY3RpdmUpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIC8vIFByb3BhZ2F0ZSB0YWIgbmF2aWdhdGlvbiBpZiBhdHRlbXB0ZWQgaW50byB3YWl0ZWQgZWxlbWVudFxuICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0OiBhbnkgPSBldmVudC50YXJnZXQ7XG4gICAgICAgICAgICAgICAgICB0YXJnZXQuYmx1cigpO1xuICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KHRhcmdldCwgdGhpcy5pc1NoaWZ0KGV2ZW50KSwgYnVzeUVsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICBTa3lXYWl0QWRhcHRlclNlcnZpY2UuYnVzeUVsZW1lbnRzW3dhaXRDb21wb25lbnRJZF0gPSB7XG4gICAgICAgICAgICBsaXN0ZW5lcjogZW5kTGlzdGVuZXJGdW5jLFxuICAgICAgICAgICAgYnVzeUVsOiBidXN5RWxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShidXN5RWwsICdhcmlhLWJ1c3knKTtcblxuICAgICAgICBpZiAoaXNGdWxsUGFnZSkge1xuICAgICAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHdhaXRDb21wb25lbnRJZCBpbiBTa3lXYWl0QWRhcHRlclNlcnZpY2UuYnVzeUVsZW1lbnRzKSB7XG4gICAgICAgICAgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50c1t3YWl0Q29tcG9uZW50SWRdLmxpc3RlbmVyKCk7XG4gICAgICAgICAgZGVsZXRlIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNbd2FpdENvbXBvbmVudElkXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9jdXNOZXh0RWxlbWVudCh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCwgc2hpZnRLZXk6IGJvb2xlYW4sIGJ1c3lFbDogRWxlbWVudCk6IHZvaWQge1xuICAgIGNvbnN0IGZvY3Vzc2FibGUgPSB0aGlzLmdldEZvY3Vzc2FibGVFbGVtZW50cygpO1xuXG4gICAgLy8gSWYgc2hpZnQgdGFiLCBnbyBpbiB0aGUgb3RoZXIgZGlyZWN0aW9uXG4gICAgY29uc3QgbW9kaWZpZXIgPSBzaGlmdEtleSA/IC0xIDogMTtcblxuICAgIC8vIEZpbmQgdGhlIG5leHQgbmF2aWdhYmxlIGVsZW1lbnQgdGhhdCBpc24ndCB3YWl0aW5nXG4gICAgY29uc3Qgc3RhcnRpbmdJbmRleCA9IGZvY3Vzc2FibGUuaW5kZXhPZih0YXJnZXRFbGVtZW50KTtcbiAgICBsZXQgY3VySW5kZXggPSBzdGFydGluZ0luZGV4ICsgbW9kaWZpZXI7XG4gICAgd2hpbGUgKGZvY3Vzc2FibGVbY3VySW5kZXhdICYmIHRoaXMuaXNFbGVtZW50QnVzeU9ySGlkZGVuKGZvY3Vzc2FibGVbY3VySW5kZXhdKSkge1xuICAgICAgY3VySW5kZXggKz0gbW9kaWZpZXI7XG4gICAgfVxuXG4gICAgaWYgKGZvY3Vzc2FibGVbY3VySW5kZXhdICYmICF0aGlzLmlzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c3NhYmxlW2N1ckluZGV4XSkpIHtcbiAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdLmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRyeSB3cmFwcGluZyB0aGUgbmF2aWdhdGlvblxuICAgICAgY3VySW5kZXggPSBtb2RpZmllciA+IDAgPyAwIDogZm9jdXNzYWJsZS5sZW5ndGggLSAxO1xuICAgICAgd2hpbGUgKFxuICAgICAgICBjdXJJbmRleCAhPT0gc3RhcnRpbmdJbmRleCAmJlxuICAgICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XSAmJlxuICAgICAgICB0aGlzLmlzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c3NhYmxlW2N1ckluZGV4XSlcbiAgICAgICkge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgICAgY3VySW5kZXggKz0gbW9kaWZpZXI7XG4gICAgICB9XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgIGlmIChmb2N1c3NhYmxlW2N1ckluZGV4XSAmJiAhdGhpcy5pc0VsZW1lbnRCdXN5T3JIaWRkZW4oZm9jdXNzYWJsZVtjdXJJbmRleF0pKSB7XG4gICAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdLmZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBObyB2YWxpZCB0YXJnZXQsIHdpcGUgZm9jdXNcbiAgICAgICAgdGhpcy5jbGVhckRvY3VtZW50Rm9jdXMoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjbGVhciBmb2N1c3NhYmxlRWxlbWVudHMgbGlzdFxuICAgIHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1NoaWZ0KGV2ZW50OiBFdmVudCk6IGJvb2xlYW4ge1xuICAgIC8vIERldGVybWluZSBpZiBzaGlmdCt0YWIgd2FzIHVzZWQgYmFzZWQgb24gZWxlbWVudCBvcmRlclxuICAgIGNvbnN0IGVsZW1lbnRzID0gdGhpcy5nZXRGb2N1c3NhYmxlRWxlbWVudHMoKS5maWx0ZXIoZWxlbSA9PiAhdGhpcy5pc0VsZW1lbnRIaWRkZW4oZWxlbSkpO1xuXG4gICAgY29uc3QgcHJldmlvdXNJbmQgPSBlbGVtZW50cy5pbmRleE9mKChldmVudCBhcyBhbnkpLnJlbGF0ZWRUYXJnZXQpO1xuICAgIGNvbnN0IGN1cnJlbnRJbmQgPSBlbGVtZW50cy5pbmRleE9mKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG5cbiAgICByZXR1cm4gcHJldmlvdXNJbmQgPT09IGN1cnJlbnRJbmQgKyAxXG4gICAgICB8fCAocHJldmlvdXNJbmQgPT09IDAgJiYgY3VycmVudEluZCA9PT0gZWxlbWVudHMubGVuZ3RoIC0gMSlcbiAgICAgIHx8IChwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQpXG4gICAgICB8fCAhKGV2ZW50IGFzIGFueSkucmVsYXRlZFRhcmdldDtcbiAgfVxuXG4gIHByaXZhdGUgaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN0eWxlLmRpc3BsYXkgPT09ICdub25lJyB8fCBzdHlsZS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJztcbiAgfVxuXG4gIHByaXZhdGUgaXNFbGVtZW50QnVzeU9ySGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmlzRWxlbWVudEhpZGRlbihlbGVtZW50KSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50cykpIHtcbiAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSBTa3lXYWl0QWRhcHRlclNlcnZpY2UuYnVzeUVsZW1lbnRzW2tleV0uYnVzeUVsO1xuICAgICAgaWYgKHBhcmVudEVsZW1lbnQgJiYgcGFyZW50RWxlbWVudC5jb250YWlucyhlbGVtZW50KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckRvY3VtZW50Rm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgJiYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgYW55KS5ibHVyKSB7XG4gICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICB9XG4gICAgZG9jdW1lbnQuYm9keS5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb2N1c3NhYmxlRWxlbWVudHMoKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgLy8gS2VlcCB0aGlzIGNhY2hlZCBzbyB3ZSBjYW4gcmVkdWNlIHF1ZXJ5c1xuICAgIGlmICh0aGlzLmZvY3Vzc2FibGVFbGVtZW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzO1xuICAgIH1cblxuICAgIC8vIFNlbGVjdCBhbGwgcG9zc2libGUgZm9jdXNzYWJsZSBlbGVtZW50c1xuICAgIGNvbnN0IGZvY3Vzc2FibGVFbGVtZW50cyA9XG4gICAgICAnYVtocmVmXSwgJyArXG4gICAgICAnYXJlYVtocmVmXSwgJyArXG4gICAgICAnaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdGFiaW5kZXg9XFwnLTFcXCddKSwgJyArXG4gICAgICAnYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoW3RhYmluZGV4PVxcJy0xXFwnXSksICcgK1xuICAgICAgJ3NlbGVjdDpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD1cXCctMVxcJ10pLCAnICtcbiAgICAgICd0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD1cXCctMVxcJ10pLCAnICtcbiAgICAgICdpZnJhbWUsIG9iamVjdCwgZW1iZWQsICcgK1xuICAgICAgJypbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9XFwnLTFcXCddKSwgJyArXG4gICAgICAnKltjb250ZW50ZWRpdGFibGU9dHJ1ZV0nO1xuXG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoXG4gICAgICBkb2N1bWVudC5ib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoZm9jdXNzYWJsZUVsZW1lbnRzKSxcbiAgICAgICAgKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBlbGVtZW50Lm9mZnNldFdpZHRoID4gMCB8fCBlbGVtZW50Lm9mZnNldEhlaWdodCA+IDAgfHwgZWxlbWVudCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5mb2N1c3NhYmxlRWxlbWVudHM7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50cykpIHtcbiAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNba2V5XS5saXN0ZW5lcigpO1xuICAgICAgZGVsZXRlIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNba2V5XTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
189
+ SkyWaitAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyWaitAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
190
+ SkyWaitAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyWaitAdapterService });
191
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: SkyWaitAdapterService, decorators: [{
192
+ type: Injectable
193
+ }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmRpY2F0b3JzL3NyYy9tb2R1bGVzL3dhaXQvd2FpdC1hZGFwdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFVBQVUsRUFJWCxNQUFNLGVBQWUsQ0FBQzs7QUFFdkIscUVBQXFFO0FBQ3JFLDJEQUEyRDtBQUMzRDs7O0dBR0c7QUFFSCxNQUFNLE9BQU8scUJBQXFCO0lBUWhDLFlBQ1UsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBRXpDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQWtCO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBa0I7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLFlBQVksQ0FDakIsTUFBa0IsRUFDbEIsVUFBbUIsRUFDbkIsU0FBa0IsRUFDbEIsYUFBYSxHQUFHLEtBQUssRUFDckIsZUFBd0I7UUFFeEIsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztRQUUvRSxJQUFJLENBQUMs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QUMsV0FBVyxHQUFHLENBQUMsSUFBSSxPQUFPLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxPQUFPLEtBQUssUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUN2RyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pDLENBQUM7SUFFTyxjQUFjO1FBQ3BCLHFCQUFxQixDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUMvQyxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDakUscUJBQXFCLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25ELE9BQU8scUJBQXFCLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQzs7QUE3TmMsc0NBQWdCLEdBQUcsS0FBSyxDQUFDO0FBQ3pCLGtDQUFZLEdBQTBELEVBQUUsQ0FBQztrSEFGN0UscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxuICBSZW5kZXJlckZhY3RvcnkyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBOZWVkIHRvIGFkZCB0aGUgZm9sbG93aW5nIHRvIGNsYXNzZXMgd2hpY2ggY29udGFpbiBzdGF0aWMgbWV0aG9kcy5cbi8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL25nLXBhY2thZ3IvbmctcGFja2Fnci9pc3N1ZXMvNjQxXG4vKipcbiAqIEBpbnRlcm5hbFxuICogQGR5bmFtaWNcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreVdhaXRBZGFwdGVyU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgc3RhdGljIGlzUGFnZVdhaXRBY3RpdmUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBzdGF0aWMgYnVzeUVsZW1lbnRzOiB7W2tleTogc3RyaW5nXToge2J1c3lFbDogSFRNTEVsZW1lbnQsIGxpc3RlbmVyOiBhbnl9fSA9IHt9O1xuXG4gIHByaXZhdGUgZm9jdXNzYWJsZUVsZW1lbnRzOiBIVE1MRWxlbWVudFtdO1xuXG4gIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLnJlbmRlcmVyID0gdGhpcy5yZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRXYWl0Qm91bmRzKHdhaXRFbDogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUod2FpdEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudCwgJ3Bvc2l0aW9uJywgJ3JlbGF0aXZlJyk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlV2FpdEJvdW5kcyh3YWl0RWw6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHdhaXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQsICdwb3NpdGlvbicpO1xuICB9XG5cbiAgcHVibGljIHNldEJ1c3lTdGF0ZShcbiAgICB3YWl0RWw6IEVsZW1lbnRSZWYsXG4gICAgaXNGdWxsUGFnZTogYm9vbGVhbixcbiAgICBpc1dhaXRpbmc6IGJvb2xlYW4sXG4gICAgaXNOb25CbG9ja2luZyA9IGZhbHNlLFxuICAgIHdhaXRDb21wb25lbnRJZD86IHN0cmluZ1xuICApOiB2b2lkIHtcbiAgICBjb25zdCBidXN5RWwgPSBpc0Z1bGxQYWdlID8gZG9jdW1lbnQuYm9keSA6IHdhaXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICBpZiAoIWlzTm9uQmxvY2tpbmcpIHtcbiAgICAgIGlmIChpc1dhaXRpbmcpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoYnVzeUVsLCAnYXJpYS1idXN5JywgJ3RydWUnKTtcblxuICAgICAgICAvLyBSZW1vdmUgZm9jdXMgZnJvbSBwYWdlIHdoZW4gZnVsbCBwYWdlIGJsb2NraW5nIHdhaXRcbiAgICAgICAgaWYgKGlzRnVsbFBhZ2UgfHwgYnVzeUVsLmNvbnRhaW5zKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgdGhpcy5jbGVhckRvY3VtZW50Rm9jdXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0Z1bGxQYWdlKSB7XG4gICAgICAgICAgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmlzUGFnZVdhaXRBY3RpdmUgPSB0cnVlO1xuICAgICAgICAgIGNvbnN0IGVuZExpc3RlbmVyRnVuYyA9IHRoaXMucmVuZGVyZXIubGlzdGVuKFxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICAgICAgICdrZXlkb3duJyxcbiAgICAgICAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICAgIGlmIChldmVudC5rZXkpIHtcbiAgICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgICAgIGlmIChldmVudC5rZXkudG9Mb3dlckNhc2UoKSA9PT0gJ3RhYicpIHtcbiAgICAgICAgICAgICAgICAgIChldmVudC50YXJnZXQgYXMgYW55KS5ibHVyKCk7XG4gICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50c1t3YWl0Q29tcG9uZW50SWRdID0ge1xuICAgICAgICAgICAgbGlzdGVuZXI6IGVuZExpc3RlbmVyRnVuYyxcbiAgICAgICAgICAgIGJ1c3lFbDogdW5kZWZpbmVkXG4gICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBlbmRMaXN0ZW5lckZ1bmMgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIGJ1c3lFbCxcbiAgICAgICAgICAgICdmb2N1c2luJyxcbiAgICAgICAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgICBpZiAoIWlzTm9uQmxvY2tpbmcpIHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgICAgICAgaWYgKFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNsZWFyRG9jdW1lbnRGb2N1cygpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAvLyBQcm9wYWdhdGUgdGFiIG5hdmlnYXRpb24gaWYgYXR0ZW1wdGVkIGludG8gd2FpdGVkIGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldDogYW55ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICAgICAgICAgICAgdGFyZ2V0LmJsdXIoKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNOZXh0RWxlbWVudCh0YXJnZXQsIHRoaXMuaXNTaGlmdChldmVudCksIGJ1c3lFbCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50c1t3YWl0Q29tcG9uZW50SWRdID0ge1xuICAgICAgICAgICAgbGlzdGVuZXI6IGVuZExpc3RlbmVyRnVuYyxcbiAgICAgICAgICAgIGJ1c3lFbDogYnVzeUVsXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoYnVzeUVsLCAnYXJpYS1idXN5Jyk7XG5cbiAgICAgICAgaWYgKGlzRnVsbFBhZ2UpIHtcbiAgICAgICAgICBTa3lXYWl0QWRhcHRlclNlcnZpY2UuaXNQYWdlV2FpdEFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh3YWl0Q29tcG9uZW50SWQgaW4gU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50cykge1xuICAgICAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNbd2FpdENvbXBvbmVudElkXS5saXN0ZW5lcigpO1xuICAgICAgICAgIGRlbGV0ZSBTa3lXYWl0QWRhcHRlclNlcnZpY2UuYnVzeUVsZW1lbnRzW3dhaXRDb21wb25lbnRJZF07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvY3VzTmV4dEVsZW1lbnQodGFyZ2V0RWxlbWVudDogSFRNTEVsZW1lbnQsIHNoaWZ0S2V5OiBib29sZWFuLCBidXN5RWw6IEVsZW1lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBmb2N1c3NhYmxlID0gdGhpcy5nZXRGb2N1c3NhYmxlRWxlbWVudHMoKTtcblxuICAgIC8vIElmIHNoaWZ0IHRhYiwgZ28gaW4gdGhlIG90aGVyIGRpcmVjdGlvblxuICAgIGNvbnN0IG1vZGlmaWVyID0gc2hpZnRLZXkgPyAtMSA6IDE7XG5cbiAgICAvLyBGaW5kIHRoZSBuZXh0IG5hdmlnYWJsZSBlbGVtZW50IHRoYXQgaXNuJ3Qgd2FpdGluZ1xuICAgIGNvbnN0IHN0YXJ0aW5nSW5kZXggPSBmb2N1c3NhYmxlLmluZGV4T2YodGFyZ2V0RWxlbWVudCk7XG4gICAgbGV0IGN1ckluZGV4ID0gc3RhcnRpbmdJbmRleCArIG1vZGlmaWVyO1xuICAgIHdoaWxlIChmb2N1c3NhYmxlW2N1ckluZGV4XSAmJiB0aGlzLmlzRWxlbWVudEJ1c3lPckhpZGRlbihmb2N1c3NhYmxlW2N1ckluZGV4XSkpIHtcbiAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgIH1cblxuICAgIGlmIChmb2N1c3NhYmxlW2N1ckluZGV4XSAmJiAhdGhpcy5pc0VsZW1lbnRCdXN5T3JIaWRkZW4oZm9jdXNzYWJsZVtjdXJJbmRleF0pKSB7XG4gICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUcnkgd3JhcHBpbmcgdGhlIG5hdmlnYXRpb25cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgIGN1ckluZGV4ID0gbW9kaWZpZXIgPiAwID8gMCA6IGZvY3Vzc2FibGUubGVuZ3RoIC0gMTtcbiAgICAgIHdoaWxlIChcbiAgICAgICAgY3VySW5kZXggIT09IHN0YXJ0aW5nSW5kZXggJiZcbiAgICAgICAgZm9jdXNzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgICAgdGhpcy5pc0VsZW1lbnRCdXN5T3JIaWRkZW4oZm9jdXNzYWJsZVtjdXJJbmRleF0pXG4gICAgICApIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgICAgfVxuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICBpZiAoZm9jdXNzYWJsZVtjdXJJbmRleF0gJiYgIXRoaXMuaXNFbGVtZW50QnVzeU9ySGlkZGVuKGZvY3Vzc2FibGVbY3VySW5kZXhdKSkge1xuICAgICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gdmFsaWQgdGFyZ2V0LCB3aXBlIGZvY3VzXG4gICAgICAgIHRoaXMuY2xlYXJEb2N1bWVudEZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNzYWJsZUVsZW1lbnRzIGxpc3RcbiAgICB0aGlzLmZvY3Vzc2FibGVFbGVtZW50cyA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByaXZhdGUgaXNTaGlmdChldmVudDogRXZlbnQpOiBib29sZWFuIHtcbiAgICAvLyBEZXRlcm1pbmUgaWYgc2hpZnQrdGFiIHdhcyB1c2VkIGJhc2VkIG9uIGVsZW1lbnQgb3JkZXJcbiAgICBjb25zdCBlbGVtZW50cyA9IHRoaXMuZ2V0Rm9jdXNzYWJsZUVsZW1lbnRzKCkuZmlsdGVyKGVsZW0gPT4gIXRoaXMuaXNFbGVtZW50SGlkZGVuKGVsZW0pKTtcblxuICAgIGNvbnN0IHByZXZpb3VzSW5kID0gZWxlbWVudHMuaW5kZXhPZigoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0KTtcbiAgICBjb25zdCBjdXJyZW50SW5kID0gZWxlbWVudHMuaW5kZXhPZihldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMVxuICAgICAgfHwgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpXG4gICAgICB8fCAocHJldmlvdXNJbmQgPiBjdXJyZW50SW5kKVxuICAgICAgfHwgIShldmVudCBhcyBhbnkpLnJlbGF0ZWRUYXJnZXQ7XG4gIH1cblxuICBwcml2YXRlIGlzRWxlbWVudEhpZGRlbihlbGVtZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIHJldHVybiBzdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgfHwgc3R5bGUudmlzaWJpbGl0eSA9PT0gJ2hpZGRlbic7XG4gIH1cblxuICBwcml2YXRlIGlzRWxlbWVudEJ1c3lPckhpZGRlbihlbGVtZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5pc0VsZW1lbnRIaWRkZW4oZWxlbWVudCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHMpKSB7XG4gICAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50c1trZXldLmJ1c3lFbDtcbiAgICAgIGlmIChwYXJlbnRFbGVtZW50ICYmIHBhcmVudEVsZW1lbnQuY29udGFpbnMoZWxlbWVudCkpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJEb2N1bWVudEZvY3VzKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgJiYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgYW55KS5ibHVyKSB7XG4gICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICB9XG4gICAgZG9jdW1lbnQuYm9keS5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb2N1c3NhYmxlRWxlbWVudHMoKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgLy8gS2VlcCB0aGlzIGNhY2hlZCBzbyB3ZSBjYW4gcmVkdWNlIHF1ZXJ5c1xuICAgIGlmICh0aGlzLmZvY3Vzc2FibGVFbGVtZW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzO1xuICAgIH1cblxuICAgIC8vIFNlbGVjdCBhbGwgcG9zc2libGUgZm9jdXNzYWJsZSBlbGVtZW50c1xuICAgIGNvbnN0IGZvY3Vzc2FibGVFbGVtZW50cyA9XG4gICAgICAnYVtocmVmXSwgJyArXG4gICAgICAnYXJlYVtocmVmXSwgJyArXG4gICAgICAnaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdGFiaW5kZXg9XFwnLTFcXCddKSwgJyArXG4gICAgICAnYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoW3RhYmluZGV4PVxcJy0xXFwnXSksICcgK1xuICAgICAgJ3NlbGVjdDpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD1cXCctMVxcJ10pLCAnICtcbiAgICAgICd0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSk6bm90KFt0YWJpbmRleD1cXCctMVxcJ10pLCAnICtcbiAgICAgICdpZnJhbWUsIG9iamVjdCwgZW1iZWQsICcgK1xuICAgICAgJypbdGFiaW5kZXhdOm5vdChbdGFiaW5kZXg9XFwnLTFcXCddKSwgJyArXG4gICAgICAnKltjb250ZW50ZWRpdGFibGU9dHJ1ZV0nO1xuXG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoXG4gICAgICBkb2N1bWVudC5ib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoZm9jdXNzYWJsZUVsZW1lbnRzKSxcbiAgICAgICAgKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBlbGVtZW50Lm9mZnNldFdpZHRoID4gMCB8fCBlbGVtZW50Lm9mZnNldEhlaWdodCA+IDAgfHwgZWxlbWVudCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5mb2N1c3NhYmxlRWxlbWVudHM7XG4gIH1cblxuICBwcml2YXRlIGNsZWFyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5pc1BhZ2VXYWl0QWN0aXZlID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlLmJ1c3lFbGVtZW50cykpIHtcbiAgICAgIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNba2V5XS5saXN0ZW5lcigpO1xuICAgICAgZGVsZXRlIFNreVdhaXRBZGFwdGVyU2VydmljZS5idXN5RWxlbWVudHNba2V5XTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==