@skyux/indicators 11.30.1 → 12.0.0-alpha.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 (71) hide show
  1. package/documentation.json +878 -866
  2. package/fesm2022/skyux-indicators.mjs +120 -115
  3. package/fesm2022/skyux-indicators.mjs.map +1 -1
  4. package/package.json +13 -17
  5. package/esm2022/index.mjs +0 -38
  6. package/esm2022/lib/modules/alert/alert.component.mjs +0 -133
  7. package/esm2022/lib/modules/alert/alert.module.mjs +0 -32
  8. package/esm2022/lib/modules/chevron/chevron.component.mjs +0 -78
  9. package/esm2022/lib/modules/chevron/chevron.module.mjs +0 -32
  10. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.component.mjs +0 -31
  11. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.module.mjs +0 -19
  12. package/esm2022/lib/modules/illustration/illustration-resolver.service.mjs +0 -13
  13. package/esm2022/lib/modules/illustration/illustration-size.mjs +0 -2
  14. package/esm2022/lib/modules/illustration/illustration.component.mjs +0 -45
  15. package/esm2022/lib/modules/illustration/illustration.module.mjs +0 -16
  16. package/esm2022/lib/modules/key-info/key-info-label.component.mjs +0 -21
  17. package/esm2022/lib/modules/key-info/key-info-layout-type.mjs +0 -2
  18. package/esm2022/lib/modules/key-info/key-info-value.component.mjs +0 -18
  19. package/esm2022/lib/modules/key-info/key-info.component.mjs +0 -30
  20. package/esm2022/lib/modules/key-info/key-info.module.mjs +0 -34
  21. package/esm2022/lib/modules/label/label-type.mjs +0 -2
  22. package/esm2022/lib/modules/label/label.component.mjs +0 -117
  23. package/esm2022/lib/modules/label/label.module.mjs +0 -20
  24. package/esm2022/lib/modules/shared/indicator-description-type.mjs +0 -2
  25. package/esm2022/lib/modules/shared/indicator-icon-type.mjs +0 -2
  26. package/esm2022/lib/modules/shared/indicator-icon-utility.mjs +0 -40
  27. package/esm2022/lib/modules/shared/indicator-icon.mjs +0 -2
  28. package/esm2022/lib/modules/shared/sky-indicators-resources.module.mjs +0 -76
  29. package/esm2022/lib/modules/status-indicator/status-indicator.component.mjs +0 -110
  30. package/esm2022/lib/modules/status-indicator/status-indicator.module.mjs +0 -39
  31. package/esm2022/lib/modules/text-highlight/text-highlight.directive.mjs +0 -152
  32. package/esm2022/lib/modules/text-highlight/text-highlight.module.mjs +0 -18
  33. package/esm2022/lib/modules/tokens/token.component.mjs +0 -120
  34. package/esm2022/lib/modules/tokens/tokens.component.mjs +0 -331
  35. package/esm2022/lib/modules/tokens/tokens.module.mjs +0 -35
  36. package/esm2022/lib/modules/tokens/types/token-selected-event-args.mjs +0 -2
  37. package/esm2022/lib/modules/tokens/types/token.mjs +0 -2
  38. package/esm2022/lib/modules/tokens/types/tokens-message-type.mjs +0 -24
  39. package/esm2022/lib/modules/tokens/types/tokens-message.mjs +0 -2
  40. package/esm2022/lib/modules/wait/wait-adapter.service.mjs +0 -226
  41. package/esm2022/lib/modules/wait/wait-page.component.mjs +0 -19
  42. package/esm2022/lib/modules/wait/wait.component.mjs +0 -173
  43. package/esm2022/lib/modules/wait/wait.module.mjs +0 -16
  44. package/esm2022/lib/modules/wait/wait.service.mjs +0 -159
  45. package/esm2022/skyux-indicators.mjs +0 -5
  46. package/esm2022/testing/legacy/alert-fixture.mjs +0 -70
  47. package/esm2022/testing/legacy/label-fixture.mjs +0 -42
  48. package/esm2022/testing/legacy/wait-fixture.mjs +0 -28
  49. package/esm2022/testing/modules/alert/alert-harness-filters.mjs +0 -2
  50. package/esm2022/testing/modules/alert/alert-harness.mjs +0 -112
  51. package/esm2022/testing/modules/chevron/chevron-harness.mjs +0 -38
  52. package/esm2022/testing/modules/help-inline/help-inline-harness-filters.mjs +0 -2
  53. package/esm2022/testing/modules/help-inline/help-inline-harness.mjs +0 -25
  54. package/esm2022/testing/modules/illustration/illustration-harness-filters.mjs +0 -2
  55. package/esm2022/testing/modules/illustration/illustration-harness.mjs +0 -54
  56. package/esm2022/testing/modules/key-info/key-info-harness-filters.mjs +0 -2
  57. package/esm2022/testing/modules/key-info/key-info-harness.mjs +0 -43
  58. package/esm2022/testing/modules/key-info/key-info-label-harness.mjs +0 -18
  59. package/esm2022/testing/modules/key-info/key-info-value-harness.mjs +0 -18
  60. package/esm2022/testing/modules/label/label-harness-filters.mjs +0 -2
  61. package/esm2022/testing/modules/label/label-harness.mjs +0 -88
  62. package/esm2022/testing/modules/status-indicator/status-indicator-harness-filters.mjs +0 -2
  63. package/esm2022/testing/modules/status-indicator/status-indicator-harness.mjs +0 -119
  64. package/esm2022/testing/modules/tokens/token-harness-filters.mjs +0 -2
  65. package/esm2022/testing/modules/tokens/token-harness.mjs +0 -63
  66. package/esm2022/testing/modules/tokens/tokens-harness-filters.mjs +0 -2
  67. package/esm2022/testing/modules/tokens/tokens-harness.mjs +0 -45
  68. package/esm2022/testing/modules/wait/wait-harness-filters.mjs +0 -2
  69. package/esm2022/testing/modules/wait/wait-harness.mjs +0 -60
  70. package/esm2022/testing/public-api.mjs +0 -15
  71. package/esm2022/testing/skyux-indicators-testing.mjs +0 -5
@@ -1,110 +0,0 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, inject, } from '@angular/core';
2
- import { SkyLibResourcesService } from '@skyux/i18n';
3
- import { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@skyux/help-inline";
7
- import * as i3 from "@skyux/icon";
8
- import * as i4 from "@skyux/core";
9
- const INDICATOR_TYPE_DEFAULT = 'warning';
10
- /**
11
- * Displays status text with an icon matching the specified indicator type.
12
- * To display a help button beside the label, include a help button element, such as
13
- * `sky-help-inline`, in the `sky-status-indicator` element and a `sky-control-help`
14
- * CSS class on that help button element.
15
- */
16
- export class SkyStatusIndicatorComponent {
17
- constructor() {
18
- this.indicatorTypeOrDefault = INDICATOR_TYPE_DEFAULT;
19
- this.#changeDetector = inject(ChangeDetectorRef);
20
- this.#resourcesSvc = inject(SkyLibResourcesService);
21
- }
22
- /**
23
- * The style for the status indicator, which determines the icon.
24
- * @default "warning"
25
- */
26
- set indicatorType(value) {
27
- this.indicatorTypeOrDefault =
28
- value === undefined ? INDICATOR_TYPE_DEFAULT : value;
29
- this.#updateIcon();
30
- }
31
- /**
32
- * The predefined text to be read by screen readers for users who
33
- * cannot see the indicator icon.
34
- * @required
35
- */
36
- set descriptionType(value) {
37
- this.#_descriptionType = value;
38
- this.#updateDescriptionComputed();
39
- }
40
- get descriptionType() {
41
- return this.#_descriptionType;
42
- }
43
- /**
44
- * The text to be read by screen readers for users who cannot see
45
- * the indicator icon when `descriptionType` is `custom`.
46
- */
47
- set customDescription(value) {
48
- this.#_customDescription = value;
49
- this.#updateDescriptionComputed();
50
- }
51
- get customDescription() {
52
- return this.#_customDescription;
53
- }
54
- #changeDetector;
55
- #resourcesSvc;
56
- #_descriptionType;
57
- #_customDescription;
58
- ngOnInit() {
59
- this.#updateIcon();
60
- }
61
- #updateIcon() {
62
- const indicatorIcon = SkyIndicatorIconUtility.getIconsForType(this.indicatorTypeOrDefault);
63
- this.icon = indicatorIcon.defaultThemeIcon;
64
- this.baseIcon = indicatorIcon.modernThemeBaseIcon;
65
- this.topIcon = indicatorIcon.modernThemeTopIcon;
66
- }
67
- #updateDescriptionComputed() {
68
- if (this.descriptionType) {
69
- switch (this.descriptionType) {
70
- case 'none':
71
- this.descriptionComputed = '';
72
- break;
73
- case 'custom':
74
- this.descriptionComputed = this.customDescription;
75
- break;
76
- default:
77
- this.#resourcesSvc
78
- .getString('skyux_status_indicator_sr_' +
79
- this.descriptionType.replace(/-/g, '_'))
80
- .subscribe((value) => {
81
- this.descriptionComputed = value;
82
- this.#changeDetector.markForCheck();
83
- });
84
- break;
85
- }
86
- }
87
- else {
88
- this.descriptionComputed = undefined;
89
- }
90
- }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
92
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SkyStatusIndicatorComponent, selector: "sky-status-indicator", inputs: { indicatorType: "indicatorType", descriptionType: "descriptionType", customDescription: "customDescription", helpPopoverContent: "helpPopoverContent", helpPopoverTitle: "helpPopoverTitle", helpKey: "helpKey" }, ngImport: i0, template: "@if (descriptionType) {\n <div class=\"sky-status-indicator\">\n <div\n aria-hidden=\"true\"\n class=\"sky-status-indicator-icon\"\n [ngClass]=\"'sky-status-indicator-icon-' + indicatorTypeOrDefault\"\n >\n <span class=\"sky-status-indicator-icon-default\">\n <sky-icon [icon]=\"icon\" />\n </span>\n <span class=\"sky-status-indicator-icon-modern\">\n <sky-icon-stack size=\"xs\" [baseIcon]=\"baseIcon\" [topIcon]=\"topIcon\" />\n </span>\n </div>\n <div class=\"sky-status-indicator-message-wrapper\">\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span #message=\"skyId\" skyId class=\"sky-status-indicator-message\" skyTrim\n ><ng-content /></span\n ><span class=\"sky-control-help-container\">\n @if (helpPopoverContent || helpKey) {\n <sky-help-inline\n [labelledBy]=\"message.id\"\n [helpKey]=\"helpKey\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n } @else {\n <ng-content select=\".sky-control-help\" />\n }\n </span>\n </div>\n </div>\n}\n", styles: [".sky-status-indicator:not(.sky-theme-modern *){--sky-override-status-indicator-icon-color-danger: #ef4044;--sky-override-status-indicator-icon-color-info: #00b4f1;--sky-override-status-indicator-icon-color-success: #72bf44;--sky-override-status-indicator-icon-color-warning: #fbb034;--sky-override-status-indicator-icon-padding-right: 5px;--sky-override-status-indicator-modern-default-display: none}:host-context(.sky-theme-modern) .sky-status-indicator{--sky-override-status-indicator-icon-default-display: none}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-status-indicator{--sky-override-status-indicator-info-exclamation-path-color: var( --modern-color-gray-105 )}.sky-status-indicator{align-items:baseline;display:flex}.sky-status-indicator-icon{flex-shrink:1;padding-right:var(--sky-override-status-indicator-icon-padding-right, var(--sky-space-gap-icon-s))}.sky-status-indicator-icon-default{display:var(--sky-override-status-indicator-icon-default-display)}.sky-status-indicator-icon-modern{display:var(--sky-override-status-indicator-modern-default-display, inline)}.sky-status-indicator-icon-info{color:var(--sky-override-status-indicator-icon-color-info, var(--sky-color-icon-info))}.sky-status-indicator-icon-success{color:var(--sky-override-status-indicator-icon-color-success, var(--sky-color-icon-success))}.sky-status-indicator-icon-warning{color:var(--sky-override-status-indicator-icon-color-warning, var(--sky-color-icon-warning))}.sky-status-indicator-icon-danger{color:var(--sky-override-status-indicator-icon-color-danger, var(--sky-color-icon-danger))}.sky-status-indicator-icon.sky-status-indicator-icon-warning,.sky-status-indicator-icon.sky-status-indicator-icon-success{--sky-icon-stack-top-icon-color-override: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-stack-top-icon-color-override: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-stack-top-icon-color-override: var( --sky-override-status-indicator-info-exclamation-path-color, var(--sky-color-icon-inverse) )}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.λ1, selector: "sky-help-inline", inputs: ["ariaControls", "ariaExpanded", "ariaLabel", "helpKey", "labelledBy", "labelText", "popoverContent", "popoverTitle"], outputs: ["actionClick"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant"] }, { kind: "component", type: i3.λ2, selector: "sky-icon-stack", inputs: ["size", "baseIcon", "topIcon"] }, { kind: "directive", type: i4.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i4.λ4, selector: "[skyTrim]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
93
- }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorComponent, decorators: [{
95
- type: Component,
96
- args: [{ selector: 'sky-status-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (descriptionType) {\n <div class=\"sky-status-indicator\">\n <div\n aria-hidden=\"true\"\n class=\"sky-status-indicator-icon\"\n [ngClass]=\"'sky-status-indicator-icon-' + indicatorTypeOrDefault\"\n >\n <span class=\"sky-status-indicator-icon-default\">\n <sky-icon [icon]=\"icon\" />\n </span>\n <span class=\"sky-status-indicator-icon-modern\">\n <sky-icon-stack size=\"xs\" [baseIcon]=\"baseIcon\" [topIcon]=\"topIcon\" />\n </span>\n </div>\n <div class=\"sky-status-indicator-message-wrapper\">\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span #message=\"skyId\" skyId class=\"sky-status-indicator-message\" skyTrim\n ><ng-content /></span\n ><span class=\"sky-control-help-container\">\n @if (helpPopoverContent || helpKey) {\n <sky-help-inline\n [labelledBy]=\"message.id\"\n [helpKey]=\"helpKey\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n } @else {\n <ng-content select=\".sky-control-help\" />\n }\n </span>\n </div>\n </div>\n}\n", styles: [".sky-status-indicator:not(.sky-theme-modern *){--sky-override-status-indicator-icon-color-danger: #ef4044;--sky-override-status-indicator-icon-color-info: #00b4f1;--sky-override-status-indicator-icon-color-success: #72bf44;--sky-override-status-indicator-icon-color-warning: #fbb034;--sky-override-status-indicator-icon-padding-right: 5px;--sky-override-status-indicator-modern-default-display: none}:host-context(.sky-theme-modern) .sky-status-indicator{--sky-override-status-indicator-icon-default-display: none}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-status-indicator{--sky-override-status-indicator-info-exclamation-path-color: var( --modern-color-gray-105 )}.sky-status-indicator{align-items:baseline;display:flex}.sky-status-indicator-icon{flex-shrink:1;padding-right:var(--sky-override-status-indicator-icon-padding-right, var(--sky-space-gap-icon-s))}.sky-status-indicator-icon-default{display:var(--sky-override-status-indicator-icon-default-display)}.sky-status-indicator-icon-modern{display:var(--sky-override-status-indicator-modern-default-display, inline)}.sky-status-indicator-icon-info{color:var(--sky-override-status-indicator-icon-color-info, var(--sky-color-icon-info))}.sky-status-indicator-icon-success{color:var(--sky-override-status-indicator-icon-color-success, var(--sky-color-icon-success))}.sky-status-indicator-icon-warning{color:var(--sky-override-status-indicator-icon-color-warning, var(--sky-color-icon-warning))}.sky-status-indicator-icon-danger{color:var(--sky-override-status-indicator-icon-color-danger, var(--sky-color-icon-danger))}.sky-status-indicator-icon.sky-status-indicator-icon-warning,.sky-status-indicator-icon.sky-status-indicator-icon-success{--sky-icon-stack-top-icon-color-override: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-stack-top-icon-color-override: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-stack-top-icon-color-override: var( --sky-override-status-indicator-info-exclamation-path-color, var(--sky-color-icon-inverse) )}\n"] }]
97
- }], propDecorators: { indicatorType: [{
98
- type: Input
99
- }], descriptionType: [{
100
- type: Input
101
- }], customDescription: [{
102
- type: Input
103
- }], helpPopoverContent: [{
104
- type: Input
105
- }], helpPopoverTitle: [{
106
- type: Input
107
- }], helpKey: [{
108
- type: Input
109
- }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvc3RhdHVzLWluZGljYXRvci9zdGF0dXMtaW5kaWNhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy9zdGF0dXMtaW5kaWNhdG9yL3N0YXR1cy1pbmRpY2F0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFHTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBS3JELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFFM0UsTUFBTSxzQkFBc0IsR0FBeUIsU0FBUyxDQUFDO0FBQy9EOzs7OztHQUtHO0FBT0gsTUFBTSxPQUFPLDJCQUEyQjtJQU54QztRQTRFUywyQkFBc0IsR0FBeUIsc0JBQXNCLENBQUM7UUFJN0Usb0JBQWUsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM1QyxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0tBNkNoRDtJQXZIQzs7O09BR0c7SUFDSCxJQUNXLGFBQWEsQ0FBQyxLQUEyQjtRQUNsRCxJQUFJLENBQUMsc0JBQXNCO1lBQ3pCLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFdkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFDVyxlQUFlLENBQUMsS0FBOEM7UUFDdkUsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNXLGlCQUFpQixDQUFDLEtBQXlCO1FBQ3BELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7UUFDakMsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7SUFrQ0QsZUFBZSxDQUE2QjtJQUM1QyxhQUFhLENBQWtDO0lBRS9DLGlCQUFpQixDQUEwQztJQUMzRCxtQkFBbUIsQ0FBcUI7SUFFakMsUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUNULE1BQU0sYUFBYSxHQUFHLHVCQUF1QixDQUFDLGVBQWUsQ0FDM0QsSUFBSSxDQUFDLHNCQUFzQixDQUM1QixDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUMsbUJBQW1CLENBQUM7UUFDbEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUMsa0JBQWtCLENBQUM7SUFDbEQsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixRQUFRLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFDN0IsS0FBSyxNQUFNO29CQUNULElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7b0JBQzlCLE1BQU07Z0JBQ1IsS0FBSyxRQUFRO29CQUNYLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7b0JBQ2xELE1BQU07Z0JBQ1I7b0JBQ0UsSUFBSSxDQUFDLGFBQWE7eUJBQ2YsU0FBUyxDQUNSLDRCQUE0Qjt3QkFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUMxQzt5QkFDQSxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDbkIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQzt3QkFDakMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDdEMsQ0FBQyxDQUFDLENBQUM7b0JBRUwsTUFBTTtZQUNWLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7K0dBdkhVLDJCQUEyQjttR0FBM0IsMkJBQTJCLHdSQzdCeEMsNHZDQXFDQTs7NEZEUmEsMkJBQTJCO2tCQU52QyxTQUFTOytCQUNFLHNCQUFzQixtQkFHZix1QkFBdUIsQ0FBQyxNQUFNOzhCQVFwQyxhQUFhO3NCQUR2QixLQUFLO2dCQWNLLGVBQWU7c0JBRHpCLEtBQUs7Z0JBZUssaUJBQWlCO3NCQUQzQixLQUFLO2dCQWdCQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBUUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQVFDLE9BQU87c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5pbXBvcnQgeyBTa3lJY29uU3RhY2tJdGVtIH0gZnJvbSAnQHNreXV4L2ljb24nO1xuXG5pbXBvcnQgeyBTa3lJbmRpY2F0b3JEZXNjcmlwdGlvblR5cGUgfSBmcm9tICcuLi9zaGFyZWQvaW5kaWNhdG9yLWRlc2NyaXB0aW9uLXR5cGUnO1xuaW1wb3J0IHsgU2t5SW5kaWNhdG9ySWNvblR5cGUgfSBmcm9tICcuLi9zaGFyZWQvaW5kaWNhdG9yLWljb24tdHlwZSc7XG5pbXBvcnQgeyBTa3lJbmRpY2F0b3JJY29uVXRpbGl0eSB9IGZyb20gJy4uL3NoYXJlZC9pbmRpY2F0b3ItaWNvbi11dGlsaXR5JztcblxuY29uc3QgSU5ESUNBVE9SX1RZUEVfREVGQVVMVDogU2t5SW5kaWNhdG9ySWNvblR5cGUgPSAnd2FybmluZyc7XG4vKipcbiAqIERpc3BsYXlzIHN0YXR1cyB0ZXh0IHdpdGggYW4gaWNvbiBtYXRjaGluZyB0aGUgc3BlY2lmaWVkIGluZGljYXRvciB0eXBlLlxuICogVG8gZGlzcGxheSBhIGhlbHAgYnV0dG9uIGJlc2lkZSB0aGUgbGFiZWwsIGluY2x1ZGUgYSBoZWxwIGJ1dHRvbiBlbGVtZW50LCBzdWNoIGFzXG4gKiBgc2t5LWhlbHAtaW5saW5lYCwgaW4gdGhlIGBza3ktc3RhdHVzLWluZGljYXRvcmAgZWxlbWVudCBhbmQgYSBgc2t5LWNvbnRyb2wtaGVscGBcbiAqIENTUyBjbGFzcyBvbiB0aGF0IGhlbHAgYnV0dG9uIGVsZW1lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1zdGF0dXMtaW5kaWNhdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXR1cy1pbmRpY2F0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGF0dXMtaW5kaWNhdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lTdGF0dXNJbmRpY2F0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAvKipcbiAgICogVGhlIHN0eWxlIGZvciB0aGUgc3RhdHVzIGluZGljYXRvciwgd2hpY2ggZGV0ZXJtaW5lcyB0aGUgaWNvbi5cbiAgICogQGRlZmF1bHQgXCJ3YXJuaW5nXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaW5kaWNhdG9yVHlwZSh2YWx1ZTogU2t5SW5kaWNhdG9ySWNvblR5cGUpIHtcbiAgICB0aGlzLmluZGljYXRvclR5cGVPckRlZmF1bHQgPVxuICAgICAgdmFsdWUgPT09IHVuZGVmaW5lZCA/IElORElDQVRPUl9UWVBFX0RFRkFVTFQgOiB2YWx1ZTtcblxuICAgIHRoaXMuI3VwZGF0ZUljb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcHJlZGVmaW5lZCB0ZXh0IHRvIGJlIHJlYWQgYnkgc2NyZWVuIHJlYWRlcnMgZm9yIHVzZXJzIHdob1xuICAgKiBjYW5ub3Qgc2VlIHRoZSBpbmRpY2F0b3IgaWNvbi5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlc2NyaXB0aW9uVHlwZSh2YWx1ZTogU2t5SW5kaWNhdG9yRGVzY3JpcHRpb25UeXBlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rlc2NyaXB0aW9uVHlwZSA9IHZhbHVlO1xuICAgIHRoaXMuI3VwZGF0ZURlc2NyaXB0aW9uQ29tcHV0ZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVzY3JpcHRpb25UeXBlKCk6IFNreUluZGljYXRvckRlc2NyaXB0aW9uVHlwZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19kZXNjcmlwdGlvblR5cGU7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHRleHQgdG8gYmUgcmVhZCBieSBzY3JlZW4gcmVhZGVycyBmb3IgdXNlcnMgd2hvIGNhbm5vdCBzZWVcbiAgICogdGhlIGluZGljYXRvciBpY29uIHdoZW4gYGRlc2NyaXB0aW9uVHlwZWAgaXMgYGN1c3RvbWAuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGN1c3RvbURlc2NyaXB0aW9uKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfY3VzdG9tRGVzY3JpcHRpb24gPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVEZXNjcmlwdGlvbkNvbXB1dGVkKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGN1c3RvbURlc2NyaXB0aW9uKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19jdXN0b21EZXNjcmlwdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29udGVudCBvZiB0aGUgaGVscCBwb3BvdmVyLiBXaGVuIHNwZWNpZmllZCwgYSBbaGVscCBpbmxpbmVdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9oZWxwLWlubGluZSlcbiAgICogYnV0dG9uIGlzIGFkZGVkIHRvIHRoZSBzdGF0dXMgaW5kaWNhdG9yLiBUaGUgaGVscCBpbmxpbmUgYnV0dG9uIGRpc3BsYXlzIGEgW3BvcG92ZXJdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9wb3BvdmVyKVxuICAgKiB3aGVuIGNsaWNrZWQgdXNpbmcgdGhlIHNwZWNpZmllZCBjb250ZW50IGFuZCBvcHRpb25hbCB0aXRsZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoZWxwUG9wb3ZlckNvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgb2YgdGhlIGhlbHAgcG9wb3Zlci4gVGhpcyBwcm9wZXJ0eSBvbmx5IGFwcGxpZXMgd2hlbiBgaGVscFBvcG92ZXJDb250ZW50YCBpc1xuICAgKiBhbHNvIHNwZWNpZmllZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoZWxwUG9wb3ZlclRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEEgaGVscCBrZXkgdGhhdCBpZGVudGlmaWVzIHRoZSBnbG9iYWwgaGVscCBjb250ZW50IHRvIGRpc3BsYXkuIFdoZW4gc3BlY2lmaWVkLCBhIFtoZWxwIGlubGluZV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2hlbHAtaW5saW5lKSBidXR0b24gaXNcbiAgICogcGxhY2VkIGJlc2lkZSB0aGUgc3RhdHVzIGluZGljYXRvciBsYWJlbC4gQ2xpY2tpbmcgdGhlIGJ1dHRvbiBpbnZva2VzIGdsb2JhbCBoZWxwIGFzIGNvbmZpZ3VyZWQgYnkgdGhlIGFwcGxpY2F0aW9uLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGhlbHBLZXk6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZGVzY3JpcHRpb25Db21wdXRlZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBiYXNlSWNvbjogU2t5SWNvblN0YWNrSXRlbSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgaWNvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBpbmRpY2F0b3JUeXBlT3JEZWZhdWx0OiBTa3lJbmRpY2F0b3JJY29uVHlwZSA9IElORElDQVRPUl9UWVBFX0RFRkFVTFQ7XG5cbiAgcHVibGljIHRvcEljb246IFNreUljb25TdGFja0l0ZW0gfCB1bmRlZmluZWQ7XG5cbiAgI2NoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgI3Jlc291cmNlc1N2YyA9IGluamVjdChTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlKTtcblxuICAjX2Rlc2NyaXB0aW9uVHlwZTogU2t5SW5kaWNhdG9yRGVzY3JpcHRpb25UeXBlIHwgdW5kZWZpbmVkO1xuICAjX2N1c3RvbURlc2NyaXB0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI3VwZGF0ZUljb24oKTtcbiAgfVxuXG4gICN1cGRhdGVJY29uKCk6IHZvaWQge1xuICAgIGNvbnN0IGluZGljYXRvckljb24gPSBTa3lJbmRpY2F0b3JJY29uVXRpbGl0eS5nZXRJY29uc0ZvclR5cGUoXG4gICAgICB0aGlzLmluZGljYXRvclR5cGVPckRlZmF1bHQsXG4gICAgKTtcblxuICAgIHRoaXMuaWNvbiA9IGluZGljYXRvckljb24uZGVmYXVsdFRoZW1lSWNvbjtcbiAgICB0aGlzLmJhc2VJY29uID0gaW5kaWNhdG9ySWNvbi5tb2Rlcm5UaGVtZUJhc2VJY29uO1xuICAgIHRoaXMudG9wSWNvbiA9IGluZGljYXRvckljb24ubW9kZXJuVGhlbWVUb3BJY29uO1xuICB9XG5cbiAgI3VwZGF0ZURlc2NyaXB0aW9uQ29tcHV0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVzY3JpcHRpb25UeXBlKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuZGVzY3JpcHRpb25UeXBlKSB7XG4gICAgICAgIGNhc2UgJ25vbmUnOlxuICAgICAgICAgIHRoaXMuZGVzY3JpcHRpb25Db21wdXRlZCA9ICcnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdjdXN0b20nOlxuICAgICAgICAgIHRoaXMuZGVzY3JpcHRpb25Db21wdXRlZCA9IHRoaXMuY3VzdG9tRGVzY3JpcHRpb247XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhpcy4jcmVzb3VyY2VzU3ZjXG4gICAgICAgICAgICAuZ2V0U3RyaW5nKFxuICAgICAgICAgICAgICAnc2t5dXhfc3RhdHVzX2luZGljYXRvcl9zcl8nICtcbiAgICAgICAgICAgICAgICB0aGlzLmRlc2NyaXB0aW9uVHlwZS5yZXBsYWNlKC8tL2csICdfJyksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmRlc2NyaXB0aW9uQ29tcHV0ZWQgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uQ29tcHV0ZWQgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG4iLCJAaWYgKGRlc2NyaXB0aW9uVHlwZSkge1xuICA8ZGl2IGNsYXNzPVwic2t5LXN0YXR1cy1pbmRpY2F0b3JcIj5cbiAgICA8ZGl2XG4gICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgY2xhc3M9XCJza3ktc3RhdHVzLWluZGljYXRvci1pY29uXCJcbiAgICAgIFtuZ0NsYXNzXT1cIidza3ktc3RhdHVzLWluZGljYXRvci1pY29uLScgKyBpbmRpY2F0b3JUeXBlT3JEZWZhdWx0XCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cInNreS1zdGF0dXMtaW5kaWNhdG9yLWljb24tZGVmYXVsdFwiPlxuICAgICAgICA8c2t5LWljb24gW2ljb25dPVwiaWNvblwiIC8+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNreS1zdGF0dXMtaW5kaWNhdG9yLWljb24tbW9kZXJuXCI+XG4gICAgICAgIDxza3ktaWNvbi1zdGFjayBzaXplPVwieHNcIiBbYmFzZUljb25dPVwiYmFzZUljb25cIiBbdG9wSWNvbl09XCJ0b3BJY29uXCIgLz5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LXN0YXR1cy1pbmRpY2F0b3ItbWVzc2FnZS13cmFwcGVyXCI+XG4gICAgICBAaWYgKGRlc2NyaXB0aW9uQ29tcHV0ZWQpIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktc2NyZWVuLXJlYWRlci1vbmx5XCI+XG4gICAgICAgICAge3sgZGVzY3JpcHRpb25Db21wdXRlZCB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICB9XG4gICAgICA8c3BhbiAjbWVzc2FnZT1cInNreUlkXCIgc2t5SWQgY2xhc3M9XCJza3ktc3RhdHVzLWluZGljYXRvci1tZXNzYWdlXCIgc2t5VHJpbVxuICAgICAgICA+PG5nLWNvbnRlbnQgLz48L3NwYW5cbiAgICAgID48c3BhbiBjbGFzcz1cInNreS1jb250cm9sLWhlbHAtY29udGFpbmVyXCI+XG4gICAgICAgIEBpZiAoaGVscFBvcG92ZXJDb250ZW50IHx8IGhlbHBLZXkpIHtcbiAgICAgICAgICA8c2t5LWhlbHAtaW5saW5lXG4gICAgICAgICAgICBbbGFiZWxsZWRCeV09XCJtZXNzYWdlLmlkXCJcbiAgICAgICAgICAgIFtoZWxwS2V5XT1cImhlbHBLZXlcIlxuICAgICAgICAgICAgW3BvcG92ZXJUaXRsZV09XCJoZWxwUG9wb3ZlclRpdGxlXCJcbiAgICAgICAgICAgIFtwb3BvdmVyQ29udGVudF09XCJoZWxwUG9wb3ZlckNvbnRlbnRcIlxuICAgICAgICAgIC8+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIi5za3ktY29udHJvbC1oZWxwXCIgLz5cbiAgICAgICAgfVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbn1cbiJdfQ==
@@ -1,39 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { SkyIdModule, SkyTrimModule } from '@skyux/core';
4
- import { SkyHelpInlineModule } from '@skyux/help-inline';
5
- import { SkyIconModule } from '@skyux/icon';
6
- import { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';
7
- import { SkyStatusIndicatorComponent } from './status-indicator.component';
8
- import * as i0 from "@angular/core";
9
- export class SkyStatusIndicatorModule {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
11
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorModule, declarations: [SkyStatusIndicatorComponent], imports: [CommonModule,
12
- SkyHelpInlineModule,
13
- SkyIconModule,
14
- SkyIdModule,
15
- SkyIndicatorsResourcesModule,
16
- SkyTrimModule], exports: [SkyStatusIndicatorComponent] }); }
17
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorModule, imports: [CommonModule,
18
- SkyHelpInlineModule,
19
- SkyIconModule,
20
- SkyIdModule,
21
- SkyIndicatorsResourcesModule,
22
- SkyTrimModule] }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyStatusIndicatorModule, decorators: [{
25
- type: NgModule,
26
- args: [{
27
- declarations: [SkyStatusIndicatorComponent],
28
- imports: [
29
- CommonModule,
30
- SkyHelpInlineModule,
31
- SkyIconModule,
32
- SkyIdModule,
33
- SkyIndicatorsResourcesModule,
34
- SkyTrimModule,
35
- ],
36
- exports: [SkyStatusIndicatorComponent],
37
- }]
38
- }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWluZGljYXRvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvc3RhdHVzLWluZGljYXRvci9zdGF0dXMtaW5kaWNhdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQWMzRSxNQUFNLE9BQU8sd0JBQXdCOytHQUF4Qix3QkFBd0I7Z0hBQXhCLHdCQUF3QixpQkFYcEIsMkJBQTJCLGFBRXhDLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsYUFBYTtZQUNiLFdBQVc7WUFDWCw0QkFBNEI7WUFDNUIsYUFBYSxhQUVMLDJCQUEyQjtnSEFFMUIsd0JBQXdCLFlBVGpDLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsYUFBYTtZQUNiLFdBQVc7WUFDWCw0QkFBNEI7WUFDNUIsYUFBYTs7NEZBSUosd0JBQXdCO2tCQVpwQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUMzQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCw0QkFBNEI7d0JBQzVCLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lJZE1vZHVsZSwgU2t5VHJpbU1vZHVsZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcbmltcG9ydCB7IFNreUhlbHBJbmxpbmVNb2R1bGUgfSBmcm9tICdAc2t5dXgvaGVscC1pbmxpbmUnO1xuaW1wb3J0IHsgU2t5SWNvbk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pY29uJztcblxuaW1wb3J0IHsgU2t5SW5kaWNhdG9yc1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktaW5kaWNhdG9ycy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5U3RhdHVzSW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9zdGF0dXMtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NreVN0YXR1c0luZGljYXRvckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5SGVscElubGluZU1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreUlkTW9kdWxlLFxuICAgIFNreUluZGljYXRvcnNSZXNvdXJjZXNNb2R1bGUsXG4gICAgU2t5VHJpbU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1NreVN0YXR1c0luZGljYXRvckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVN0YXR1c0luZGljYXRvck1vZHVsZSB7fVxuIl19
@@ -1,152 +0,0 @@
1
- import { Directive, ElementRef, Input, inject, } from '@angular/core';
2
- import { SkyMutationObserverService } from '@skyux/core';
3
- import * as i0 from "@angular/core";
4
- const CLASS_NAME = 'sky-highlight-mark';
5
- const SPECIAL_CHAR_REGEX = /[-/\\^$*+?.()|[\]{}]/g;
6
- function markNode(node, searchRegex) {
7
- // The search regular expression is reused across calls to markNode(), so reset
8
- // it so it searches from the start of the string each time.
9
- searchRegex.lastIndex = 0;
10
- const text = node.nodeValue;
11
- if (text) {
12
- const match = searchRegex.exec(text);
13
- if (match) {
14
- // Split apart text node with mark tags in the middle on the search term.
15
- const matchIndex = match.index;
16
- const middle = node.splitText(matchIndex);
17
- middle.splitText(searchRegex.lastIndex - matchIndex);
18
- const middleClone = middle.cloneNode(true);
19
- const markNode = document.createElement('mark');
20
- markNode.className = CLASS_NAME;
21
- markNode.appendChild(middleClone);
22
- /* istanbul ignore else */
23
- if (middle.parentNode) {
24
- middle.parentNode.replaceChild(markNode, middle);
25
- }
26
- return 1;
27
- }
28
- }
29
- return 0;
30
- }
31
- function markTextNodes(node, searchRegex) {
32
- if (node.nodeType === 3) {
33
- return markNode(node, searchRegex);
34
- }
35
- else if (node.nodeType === 1 && node.childNodes) {
36
- for (let i = 0; i < node.childNodes.length; i++) {
37
- const childNode = node.childNodes[i];
38
- i += markTextNodes(childNode, searchRegex);
39
- }
40
- }
41
- return 0;
42
- }
43
- function removeHighlight(el) {
44
- const matchedElements = Array.from(el.nativeElement.querySelectorAll(`mark.${CLASS_NAME}`));
45
- if (matchedElements) {
46
- for (const node of matchedElements) {
47
- const parentNode = node.parentNode;
48
- if (parentNode && node.firstChild) {
49
- parentNode.replaceChild(node.firstChild, node);
50
- parentNode.normalize();
51
- }
52
- }
53
- }
54
- }
55
- function createSearchRegex(searchTerms) {
56
- let searchRegex;
57
- if (searchTerms.length > 0) {
58
- // Escape all the special regular expression characters by adding a
59
- // preceding '\' to each match.
60
- searchTerms = searchTerms.map((searchTerm) => searchTerm.replace(SPECIAL_CHAR_REGEX, '\\$&'));
61
- searchRegex = new RegExp(searchTerms.join('|'), 'gi');
62
- }
63
- return searchRegex;
64
- }
65
- // Need to add the following to classes which contain static methods.
66
- // See: https://github.com/ng-packagr/ng-packagr/issues/641
67
- // @dynamic
68
- /**
69
- * Highlights all matching text within the current DOM element.
70
- */
71
- export class SkyTextHighlightDirective {
72
- /**
73
- * The text to highlight.
74
- */
75
- set skyHighlight(value) {
76
- value = value || [];
77
- if (Array.isArray(value)) {
78
- this.#searchTerms = value.filter((item) => !!item);
79
- // Reorder strings by their length in descending order to avoid missing matches
80
- // that contain substrings of other matches.
81
- this.#searchTerms.sort(function (a, b) {
82
- return b.length - a.length;
83
- });
84
- }
85
- else {
86
- this.#searchTerms = [value];
87
- }
88
- }
89
- #existingHighlight = false;
90
- #observer;
91
- #searchTerms = [];
92
- #el = inject(ElementRef);
93
- #observerSvc = inject(SkyMutationObserverService);
94
- ngOnChanges(changes) {
95
- if (changes['skyHighlight'] && !changes['skyHighlight'].firstChange) {
96
- this.#highlight();
97
- }
98
- }
99
- ngAfterViewInit() {
100
- this.#observer = this.#observerSvc.create(() => {
101
- this.#highlight();
102
- });
103
- this.#highlight();
104
- }
105
- ngOnDestroy() {
106
- this.#disconnectObserver();
107
- }
108
- #disconnectObserver() {
109
- if (this.#observer) {
110
- this.#observer.disconnect();
111
- }
112
- }
113
- #highlight() {
114
- this.#disconnectObserver();
115
- if (this.#existingHighlight) {
116
- removeHighlight(this.#el);
117
- }
118
- const node = this.#el.nativeElement;
119
- if (node) {
120
- const searchRegex = createSearchRegex(this.#searchTerms);
121
- // mark all matched text in the DOM
122
- if (searchRegex) {
123
- markTextNodes(node, searchRegex);
124
- this.#existingHighlight = true;
125
- }
126
- }
127
- this.#observeDom();
128
- }
129
- #observeDom() {
130
- if (this.#observer) {
131
- const config = {
132
- attributes: false,
133
- childList: true,
134
- characterData: true,
135
- subtree: true,
136
- };
137
- this.#observer.observe(this.#el.nativeElement, config);
138
- }
139
- }
140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
141
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: SkyTextHighlightDirective, isStandalone: true, selector: "[skyHighlight]", inputs: { skyHighlight: "skyHighlight" }, usesOnChanges: true, ngImport: i0 }); }
142
- }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightDirective, decorators: [{
144
- type: Directive,
145
- args: [{
146
- selector: '[skyHighlight]',
147
- standalone: true,
148
- }]
149
- }], propDecorators: { skyHighlight: [{
150
- type: Input
151
- }] } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1oaWdobGlnaHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3RleHQtaGlnaGxpZ2h0L3RleHQtaGlnaGxpZ2h0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBSUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFekQsTUFBTSxVQUFVLEdBQUcsb0JBQW9CLENBQUM7QUFDeEMsTUFBTSxrQkFBa0IsR0FBRyx1QkFBdUIsQ0FBQztBQUVuRCxTQUFTLFFBQVEsQ0FBQyxJQUFVLEVBQUUsV0FBbUI7SUFDL0MsK0VBQStFO0lBQy9FLDREQUE0RDtJQUM1RCxXQUFXLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUUxQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBRTVCLElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVix5RUFBeUU7WUFDekUsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUUvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsQ0FBQztZQUNyRCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTNDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxh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cmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TXV0YXRpb25PYnNlcnZlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmNvbnN0IENMQVNTX05BTUUgPSAnc2t5LWhpZ2hsaWdodC1tYXJrJztcbmNvbnN0IFNQRUNJQUxfQ0hBUl9SRUdFWCA9IC9bLS9cXFxcXiQqKz8uKCl8W1xcXXt9XS9nO1xuXG5mdW5jdGlvbiBtYXJrTm9kZShub2RlOiBUZXh0LCBzZWFyY2hSZWdleDogUmVnRXhwKTogbnVtYmVyIHtcbiAgLy8gVGhlIHNlYXJjaCByZWd1bGFyIGV4cHJlc3Npb24gaXMgcmV1c2VkIGFjcm9zcyBjYWxscyB0byBtYXJrTm9kZSgpLCBzbyByZXNldFxuICAvLyBpdCBzbyBpdCBzZWFyY2hlcyBmcm9tIHRoZSBzdGFydCBvZiB0aGUgc3RyaW5nIGVhY2ggdGltZS5cbiAgc2VhcmNoUmVnZXgubGFzdEluZGV4ID0gMDtcblxuICBjb25zdCB0ZXh0ID0gbm9kZS5ub2RlVmFsdWU7XG5cbiAgaWYgKHRleHQpIHtcbiAgICBjb25zdCBtYXRjaCA9IHNlYXJjaFJlZ2V4LmV4ZWModGV4dCk7XG5cbiAgICBpZiAobWF0Y2gpIHtcbiAgICAgIC8vIFNwbGl0IGFwYXJ0IHRleHQgbm9kZSB3aXRoIG1hcmsgdGFncyBpbiB0aGUgbWlkZGxlIG9uIHRoZSBzZWFyY2ggdGVybS5cbiAgICAgIGNvbnN0IG1hdGNoSW5kZXggPSBtYXRjaC5pbmRleDtcblxuICAgICAgY29uc3QgbWlkZGxlID0gbm9kZS5zcGxpdFRleHQobWF0Y2hJbmRleCk7XG4gICAgICBtaWRkbGUuc3BsaXRUZXh0KHNlYXJjaFJlZ2V4Lmxhc3RJbmRleCAtIG1hdGNoSW5kZXgpO1xuICAgICAgY29uc3QgbWlkZGxlQ2xvbmUgPSBtaWRkbGUuY2xvbmVOb2RlKHRydWUpO1xuXG4gICAgICBjb25zdCBtYXJrTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ21hcmsnKTtcbiAgICAgIG1hcmtOb2RlLmNsYXNzTmFtZSA9IENMQVNTX05BTUU7XG4gICAgICBtYXJrTm9kZS5hcHBlbmRDaGlsZChtaWRkbGVDbG9uZSk7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAobWlkZGxlLnBhcmVudE5vZGUpIHtcbiAgICAgICAgbWlkZGxlLnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKG1hcmtOb2RlLCBtaWRkbGUpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gMTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gMDtcbn1cblxuZnVuY3Rpb24gbWFya1RleHROb2Rlcyhub2RlOiBOb2RlLCBzZWFyY2hSZWdleDogUmVnRXhwKTogbnVtYmVyIHtcbiAgaWYgKG5vZGUubm9kZVR5cGUgPT09IDMpIHtcbiAgICByZXR1cm4gbWFya05vZGUobm9kZSBhcyBUZXh0LCBzZWFyY2hSZWdleCk7XG4gIH0gZWxzZSBpZiAobm9kZS5ub2RlVHlwZSA9PT0gMSAmJiBub2RlLmNoaWxkTm9kZXMpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuY2hpbGROb2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgY2hpbGROb2RlID0gbm9kZS5jaGlsZE5vZGVzW2ldO1xuICAgICAgaSArPSBtYXJrVGV4dE5vZGVzKGNoaWxkTm9kZSwgc2VhcmNoUmVnZXgpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAwO1xufVxuXG5mdW5jdGlvbiByZW1vdmVIaWdobGlnaHQoZWw6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgY29uc3QgbWF0Y2hlZEVsZW1lbnRzID0gQXJyYXkuZnJvbShcbiAgICAoZWwubmF0aXZlRWxlbWVudCBhcyBFbGVtZW50KS5xdWVyeVNlbGVjdG9yQWxsKGBtYXJrLiR7Q0xBU1NfTkFNRX1gKSxcbiAgKTtcblxuICBpZiAobWF0Y2hlZEVsZW1lbnRzKSB7XG4gICAgZm9yIChjb25zdCBub2RlIG9mIG1hdGNoZWRFbGVtZW50cykge1xuICAgICAgY29uc3QgcGFyZW50Tm9kZSA9IG5vZGUucGFyZW50Tm9kZTtcblxuICAgICAgaWYgKHBhcmVudE5vZGUgJiYgbm9kZS5maXJzdENoaWxkKSB7XG4gICAgICAgIHBhcmVudE5vZGUucmVwbGFjZUNoaWxkKG5vZGUuZmlyc3RDaGlsZCwgbm9kZSk7XG4gICAgICAgIHBhcmVudE5vZGUubm9ybWFsaXplKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVNlYXJjaFJlZ2V4KHNlYXJjaFRlcm1zOiBzdHJpbmdbXSk6IFJlZ0V4cCB8IHVuZGVmaW5lZCB7XG4gIGxldCBzZWFyY2hSZWdleDogUmVnRXhwIHwgdW5kZWZpbmVkO1xuXG4gIGlmIChzZWFyY2hUZXJtcy5sZW5ndGggPiAwKSB7XG4gICAgLy8gRXNjYXBlIGFsbCB0aGUgc3BlY2lhbCByZWd1bGFyIGV4cHJlc3Npb24gY2hhcmFjdGVycyBieSBhZGRpbmcgYVxuICAgIC8vIHByZWNlZGluZyAnXFwnIHRvIGVhY2ggbWF0Y2guXG4gICAgc2VhcmNoVGVybXMgPSBzZWFyY2hUZXJtcy5tYXAoKHNlYXJjaFRlcm0pID0+XG4gICAgICBzZWFyY2hUZXJtLnJlcGxhY2UoU1BFQ0lBTF9DSEFSX1JFR0VYLCAnXFxcXCQmJyksXG4gICAgKTtcblxuICAgIHNlYXJjaFJlZ2V4ID0gbmV3IFJlZ0V4cChzZWFyY2hUZXJtcy5qb2luKCd8JyksICdnaScpO1xuICB9XG5cbiAgcmV0dXJuIHNlYXJjaFJlZ2V4O1xufVxuXG4vLyBOZWVkIHRvIGFkZCB0aGUgZm9sbG93aW5nIHRvIGNsYXNzZXMgd2hpY2ggY29udGFpbiBzdGF0aWMgbWV0aG9kcy5cbi8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL25nLXBhY2thZ3IvbmctcGFja2Fnci9pc3N1ZXMvNjQxXG4vLyBAZHluYW1pY1xuLyoqXG4gKiBIaWdobGlnaHRzIGFsbCBtYXRjaGluZyB0ZXh0IHdpdGhpbiB0aGUgY3VycmVudCBET00gZWxlbWVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreUhpZ2hsaWdodF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUZXh0SGlnaGxpZ2h0RGlyZWN0aXZlXG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgLyoqXG4gICAqIFRoZSB0ZXh0IHRvIGhpZ2hsaWdodC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5SGlnaGxpZ2h0KHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHZhbHVlID0gdmFsdWUgfHwgW107XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHRoaXMuI3NlYXJjaFRlcm1zID0gdmFsdWUuZmlsdGVyKChpdGVtKSA9PiAhIWl0ZW0pO1xuICAgICAgLy8gUmVvcmRlciBzdHJpbmdzIGJ5IHRoZWlyIGxlbmd0aCBpbiBkZXNjZW5kaW5nIG9yZGVyIHRvIGF2b2lkIG1pc3NpbmcgbWF0Y2hlc1xuICAgICAgLy8gdGhhdCBjb250YWluIHN1YnN0cmluZ3Mgb2Ygb3RoZXIgbWF0Y2hlcy5cbiAgICAgIHRoaXMuI3NlYXJjaFRlcm1zLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgICAgcmV0dXJuIGIubGVuZ3RoIC0gYS5sZW5ndGg7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2VhcmNoVGVybXMgPSBbdmFsdWUgYXMgc3RyaW5nXTtcbiAgICB9XG4gIH1cblxuICAjZXhpc3RpbmdIaWdobGlnaHQgPSBmYWxzZTtcblxuICAjb2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXIgfCB1bmRlZmluZWQ7XG5cbiAgI3NlYXJjaFRlcm1zOiBzdHJpbmdbXSA9IFtdO1xuXG4gICNlbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgI29ic2VydmVyU3ZjID0gaW5qZWN0KFNreU11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlKTtcblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydza3lIaWdobGlnaHQnXSAmJiAhY2hhbmdlc1snc2t5SGlnaGxpZ2h0J10uZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMuI2hpZ2hsaWdodCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jb2JzZXJ2ZXIgPSB0aGlzLiNvYnNlcnZlclN2Yy5jcmVhdGUoKCkgPT4ge1xuICAgICAgdGhpcy4jaGlnaGxpZ2h0KCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLiNoaWdobGlnaHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNkaXNjb25uZWN0T2JzZXJ2ZXIoKTtcbiAgfVxuXG4gICNkaXNjb25uZWN0T2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI29ic2VydmVyKSB7XG4gICAgICB0aGlzLiNvYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgI2hpZ2hsaWdodCgpOiB2b2lkIHtcbiAgICB0aGlzLiNkaXNjb25uZWN0T2JzZXJ2ZXIoKTtcblxuICAgIGlmICh0aGlzLiNleGlzdGluZ0hpZ2hsaWdodCkge1xuICAgICAgcmVtb3ZlSGlnaGxpZ2h0KHRoaXMuI2VsKTtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gdGhpcy4jZWwubmF0aXZlRWxlbWVudDtcblxuICAgIGlmIChub2RlKSB7XG4gICAgICBjb25zdCBzZWFyY2hSZWdleCA9IGNyZWF0ZVNlYXJjaFJlZ2V4KHRoaXMuI3NlYXJjaFRlcm1zKTtcblxuICAgICAgLy8gbWFyayBhbGwgbWF0Y2hlZCB0ZXh0IGluIHRoZSBET01cbiAgICAgIGlmIChzZWFyY2hSZWdleCkge1xuICAgICAgICBtYXJrVGV4dE5vZGVzKG5vZGUsIHNlYXJjaFJlZ2V4KTtcbiAgICAgICAgdGhpcy4jZXhpc3RpbmdIaWdobGlnaHQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI29ic2VydmVEb20oKTtcbiAgfVxuXG4gICNvYnNlcnZlRG9tKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNvYnNlcnZlcikge1xuICAgICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICBhdHRyaWJ1dGVzOiBmYWxzZSxcbiAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxuICAgICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgfTtcblxuICAgICAgdGhpcy4jb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLiNlbC5uYXRpdmVFbGVtZW50LCBjb25maWcpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,18 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { SkyMutationObserverService } from '@skyux/core';
3
- import { SkyTextHighlightDirective } from './text-highlight.directive';
4
- import * as i0 from "@angular/core";
5
- export class SkyTextHighlightModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightModule, imports: [SkyTextHighlightDirective], exports: [SkyTextHighlightDirective] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightModule, providers: [SkyMutationObserverService] }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTextHighlightModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- imports: [SkyTextHighlightDirective],
14
- exports: [SkyTextHighlightDirective],
15
- providers: [SkyMutationObserverService],
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1oaWdobGlnaHQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3RleHQtaGlnaGxpZ2h0L3RleHQtaGlnaGxpZ2h0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPdkUsTUFBTSxPQUFPLHNCQUFzQjsrR0FBdEIsc0JBQXNCO2dIQUF0QixzQkFBc0IsWUFKdkIseUJBQXlCLGFBQ3pCLHlCQUF5QjtnSEFHeEIsc0JBQXNCLGFBRnRCLENBQUMsMEJBQTBCLENBQUM7OzRGQUU1QixzQkFBc0I7a0JBTGxDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUNwQyxTQUFTLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TXV0YXRpb25PYnNlcnZlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreVRleHRIaWdobGlnaHREaXJlY3RpdmUgfSBmcm9tICcuL3RleHQtaGlnaGxpZ2h0LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtTa3lUZXh0SGlnaGxpZ2h0RGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW1NreVRleHRIaWdobGlnaHREaXJlY3RpdmVdLFxuICBwcm92aWRlcnM6IFtTa3lNdXRhdGlvbk9ic2VydmVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVRleHRIaWdobGlnaHRNb2R1bGUge31cbiJdfQ==
@@ -1,120 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild, inject, } from '@angular/core';
2
- import { SkyLiveAnnouncerService } from '@skyux/core';
3
- import { SkyLibResourcesService } from '@skyux/i18n';
4
- import { take } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@skyux/icon";
8
- import * as i3 from "@skyux/core";
9
- import * as i4 from "@skyux/i18n";
10
- export class SkyTokenComponent {
11
- constructor() {
12
- /**
13
- * Fires when users click the close button.
14
- */
15
- this.dismiss = new EventEmitter();
16
- /**
17
- * Fires when users place focus on the token by navigating to it with the `Tab` key.
18
- */
19
- this.tokenFocus = new EventEmitter();
20
- this.isFocused = false;
21
- this.tokenActive = false;
22
- this.closeActive = false;
23
- this.tabIndex = 0;
24
- this.#elementRef = inject(ElementRef);
25
- this.#liveAnnouncerSvc = inject(SkyLiveAnnouncerService);
26
- this.#resourcesSvc = inject(SkyLibResourcesService);
27
- this.#_disabled = false;
28
- this.#_dismissible = true;
29
- }
30
- /**
31
- * Whether to disable the token to prevent users from selecting it, dismissing it,
32
- * or navigating to it with the arrow keys. When the token is disabled,
33
- * users can still place focus on it using the `Tab` key.
34
- * @default false
35
- */
36
- set disabled(value) {
37
- this.#_disabled = !!value;
38
- }
39
- get disabled() {
40
- return this.#_disabled;
41
- }
42
- /**
43
- * Whether users can remove the token from the list by selecting the close button.
44
- * @default true
45
- */
46
- set dismissible(value) {
47
- this.#_dismissible = value !== false;
48
- }
49
- get dismissible() {
50
- return this.#_dismissible;
51
- }
52
- /**
53
- * Whether users can place focus on the token using the `Tab`. This does not
54
- * affect the ability to select the token, dismiss it, or navigate to it with the arrow keys.
55
- * @default true
56
- */
57
- set focusable(value) {
58
- this.tabIndex = value !== false ? 0 : -1;
59
- }
60
- #elementRef;
61
- #liveAnnouncerSvc;
62
- #resourcesSvc;
63
- #_disabled;
64
- #_dismissible;
65
- onFocusIn() {
66
- if (!this.isFocused) {
67
- this.tokenFocus.emit();
68
- this.isFocused = true;
69
- }
70
- }
71
- onFocusOut(event) {
72
- this.isFocused = this.#elementRef.nativeElement.contains(event.relatedTarget);
73
- }
74
- dismissToken(event) {
75
- event.stopPropagation();
76
- this.#announceState('skyux_tokens_token_dismissed', this.actionButtonRef?.nativeElement.textContent.trim());
77
- this.dismiss.emit();
78
- }
79
- focusElement() {
80
- this.actionButtonRef?.nativeElement.focus();
81
- }
82
- setTokenActive(tokenActive) {
83
- this.tokenActive = tokenActive;
84
- }
85
- setCloseActive(closeActive) {
86
- this.closeActive = closeActive;
87
- }
88
- #announceState(resourceString, ...args) {
89
- this.#resourcesSvc
90
- .getString(resourceString, ...args)
91
- .pipe(take(1))
92
- .subscribe((internationalizedString) => {
93
- this.#liveAnnouncerSvc.announce(internationalizedString);
94
- });
95
- }
96
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTokenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
97
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SkyTokenComponent, selector: "sky-token", inputs: { disabled: "disabled", ariaLabel: "ariaLabel", dismissible: "dismissible", focusable: "focusable", role: "role" }, outputs: { dismiss: "dismiss", tokenFocus: "tokenFocus" }, viewQueries: [{ propertyName: "actionButtonRef", first: true, predicate: ["actionButton"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-token sky-btn sky-btn-default\"\n [attr.role]=\"role\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-disabled': disabled,\n 'sky-token-dismissible': dismissible,\n 'sky-token-active': tokenActive && !closeActive,\n 'sky-token-focused': isFocused\n }\"\n (document:mouseup)=\"setTokenActive(false)\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n (mousedown)=\"setTokenActive(true)\"\n>\n <span\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n #actionButton=\"skyId\"\n class=\"sky-btn sky-btn-default sky-token-btn sky-token-btn-action\"\n type=\"button\"\n skyId\n [attr.tabindex]=\"tabIndex\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled\n }\"\n >\n <ng-content />\n </button>\n </span>\n @if (dismissible) {\n <span\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n class=\"sky-btn sky-token-btn sky-token-btn-close\"\n type=\"button\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"\n !ariaLabel\n ? screenReaderLabelDismiss.id + ' ' + actionButton.id\n : undefined\n \"\n [attr.tabindex]=\"tabIndex\"\n [attr.title]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-btn-close-active': closeActive\n }\"\n (click)=\"dismissToken($event)\"\n (document:mouseup)=\"setCloseActive(false)\"\n (mousedown)=\"setCloseActive(true)\"\n >\n <sky-icon class=\"sky-token-btn-close-icon\" icon=\"close\" />\n </button>\n </span>\n }\n</div>\n<span\n #screenReaderLabelDismiss=\"skyId\"\n skyScreenReaderLabel\n skyId\n [createLabel]=\"dismissible && !ariaLabel\"\n>\n {{ 'skyux_tokens_dismiss_button_default_label' | skyLibResources }}\n</span>\n", styles: [".sky-token:not(.sky-theme-modern *){--sky-override-token-active-background-color: #91d6f8;--sky-override-token-active-border: 1px solid #00b4f1;--sky-override-token-active-box-shadow: 0 0 8px rgba(0, 180, 241, .6);--sky-override-token-align-items: inherit;--sky-override-token-background-color: #c1e8fb;--sky-override-token-border: 1px solid #00b4f1;--sky-override-token-box-shadow: none;--sky-override-token-button-padding: 2px 8px;--sky-override-token-close-align-items: inherit;--sky-override-token-close-active-background-color: transparent;--sky-override-token-close-active-box-shadow: none;--sky-override-token-close-border-radius: 3px;--sky-override-token-close-button-opacity: .9;--sky-override-token-close-display: inline-block;--sky-override-token-close-focus-background-color: transparent --sky-override-token-close-focus-box-shadow: none;--sky-override-token-close-focus-outline: auto;--sky-override-token-close-hover-background-color: transparent;--sky-override-token-close-hover-box-shadow: none;--sky-override-token-close-icon-width: initial;--sky-override-token-close-line-height: calc(20 / 14);--sky-override-token-close-margin-left: -2px;--sky-override-token-close-padding: 2px 8px;--sky-override-token-close-size: \"\";--sky-override-token-color-background-container-danger: var( --sky-background-color-danger );--sky-override-token-color-background-container-info: var( --sky-background-color-info );--sky-override-token-color-background-container-success: var( --sky-background-color-success );--sky-override-token-color-background-container-warning: var( --sky-background-color-warning );--sky-override-token-display: inline-block;--sky-override-token-disabled-background-color: #c1e8fb;--sky-override-token-dismissible-padding-right: 0;--sky-override-token-font-size: 15px;--sky-override-token-focused-background-color: #91d6f8;--sky-override-token-focused-border: 1px solid #00b4f1;--sky-override-token-focused-box-shadow: 0 0 8px rgba(0, 180, 241, .6);--sky-override-token-hover-background-color: #91d6f8;--sky-override-token-hover-border: 1px solid #008ebe;--sky-override-token-hover-box-shadow: none;--sky-override-token-padding: 0}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-token{--sky-override-token-button-padding: var(--modern-size-1) var(--modern-size-5);--sky-override-token-close-button-opacity: .9;--sky-override-token-close-hover-box-shadow: inset 0 0 0 1px transparent;--sky-override-token-close-line-height: calc(20 / 14);--sky-override-token-close-padding: 0;--sky-override-token-close-size: var(--modern-size-20);--sky-override-token-font-size: var(--modern-font-size-150);--sky-override-token-padding: 0}.sky-token{background-color:var(--sky-override-token-background-color, var(--sky-color-background-selected-soft));font-size:var(--sky-override-token-font-size, var(--sky-font-size-body-m));border:var(--sky-override-token-border, none);box-shadow:var(--sky-override-token-box-shadow, inset 0 0 0 var(--sky-border-width-action-base) var(--sky-color-border-selected_soft));padding:var(--sky-override-token-padding, var(--sky-space-inset-pillarbox-1_4-top-xs) var(--sky-space-inset-pillarbox-1_4-right-xs) var(--sky-space-inset-pillarbox-1_4-bottom-xs) var(--sky-space-inset-pillarbox-1_4-left-xs));align-items:var(--sky-override-token-align-items, center);display:var(--sky-override-token-display, inline-flex)}.sky-token.sky-token-focused:not(:active){background-color:var(--sky-override-token-focused-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-focused-border, none);box-shadow:var(--sky-override-token-focused-box-shadow, inset 0 0 0 var(--sky-border-width-action-focus) var(--sky-color-border-action-tertiary-focus), var(--sky-elevation-focus));cursor:pointer}.sky-token:hover{background-color:var(--sky-override-token-hover-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-hover-border, none);box-shadow:var(--sky-override-token-hover-box-shadow, inset 0 0 0 var(--sky-border-width-action-hover) var(--sky-color-border-action-tertiary-hover));cursor:pointer}.sky-token.sky-token-active{background-color:var(--sky-override-token-active-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-active-border, none);box-shadow:var(--sky-override-token-active-box-shadow, inset 0 0 0 var(--sky-border-width-action-active) var(--sky-color-border-action-tertiary-active));cursor:pointer}.sky-token .sky-token-btn{background-color:transparent;border:0;box-shadow:none}.sky-token-btn{padding:var(--sky-override-token-button-padding, 0)}.sky-btn-disabled{background-color:var(--sky-override-token-disabled-background-color, var(--sky-color-background-action-tertiary-disabled));cursor:default;-webkit-user-select:none;user-select:none}.sky-btn-disabled .sky-btn-disabled{opacity:1}.sky-btn-disabled .sky-token-btn-action{color:var(--sky-color-text-deemphasized)}.sky-btn-disabled .sky-token-btn-close{color:var(--sky-color-icon-deemphasized)}.sky-token-btn-close{margin-left:var(--sky-override-token-close-margin-left, var(--sky-space-gap-text_action-xs));opacity:var(--sky-override-token-close-button-opacity, 1);padding:var(--sky-override-token-close-padding, var(--sky-space-inset-balanced-xxs));border-radius:var(--sky-override-token-close-border-radius, calc(var(--sky-border-radius-s) - var(--sky-border-width-selected-s)));align-items:var(--sky-override-token-close-align-items, center);display:var(--sky-override-token-close-display, flex);height:var(--sky-override-token-close-size, \"\");width:var(--sky-override-token-close-size, \"\");line-height:var(--sky-override-token-close-line-height, 1)}.sky-token-btn-close:hover,.sky-token-btn-close:focus-visible{opacity:1}.sky-token-btn-close:hover{background-color:var(--sky-override-token-close-hover-background-color, var(--sky-color-background-action-tertiary-hover));border:none;box-shadow:var(--sky-override-token-close-hover-box-shadow, inset 0 0 0 var(--sky-border-width-action-hover) var(--sky-color-border-action-tertiary-hover))}.sky-token-btn-close:focus-visible{outline:var(--sky-override-token-close-focus-outline, none)}.sky-token-btn-close:focus-visible:not(:active){background-color:var(--sky-override-token-close-focus-background-color, var(--sky-color-background-action-tertiary-focus));border:none;box-shadow:var(--sky-override-token-close-focus-box-shadow, inset 0 0 0 var(--sky-border-width-action-focus) var(--sky-color-border-action-tertiary-focus), var(--sky-elevation-focus))}.sky-token-btn-close.sky-token-btn-close-active{background-color:var(--sky-override-token-close-active-background-color, var(--sky-color-background-action-tertiary-active));border:none;box-shadow:var(--sky-override-token-close-active-box-shadow, inset 0 0 0 var(--sky-border-width-action-active) var(--sky-color-border-action-tertiary-active))}.sky-token-dismissible{padding-right:var(--sky-override-token-dismissible-padding-right, var(--sky-border-width-selected-s))}.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-token-btn-action{font-size:var(--sky-override-token-font-size, var(--sky-font-size-body-m))}.sky-token-btn-action:focus-visible{outline:none}.sky-token-btn-close-icon{width:var(--sky-override-token-close-icon-width, 100%)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i3.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i3.SkyScreenReaderLabelDirective, selector: "[skyScreenReaderLabel]", inputs: ["createLabel"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
98
- }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyTokenComponent, decorators: [{
100
- type: Component,
101
- args: [{ selector: 'sky-token', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"sky-token sky-btn sky-btn-default\"\n [attr.role]=\"role\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-disabled': disabled,\n 'sky-token-dismissible': dismissible,\n 'sky-token-active': tokenActive && !closeActive,\n 'sky-token-focused': isFocused\n }\"\n (document:mouseup)=\"setTokenActive(false)\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n (mousedown)=\"setTokenActive(true)\"\n>\n <span\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n #actionButton=\"skyId\"\n class=\"sky-btn sky-btn-default sky-token-btn sky-token-btn-action\"\n type=\"button\"\n skyId\n [attr.tabindex]=\"tabIndex\"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled\n }\"\n >\n <ng-content />\n </button>\n </span>\n @if (dismissible) {\n <span\n class=\"sky-token-cell\"\n [attr.role]=\"role === 'row' ? 'gridcell' : undefined\"\n >\n <button\n class=\"sky-btn sky-token-btn sky-token-btn-close\"\n type=\"button\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"\n !ariaLabel\n ? screenReaderLabelDismiss.id + ' ' + actionButton.id\n : undefined\n \"\n [attr.tabindex]=\"tabIndex\"\n [attr.title]=\"\n ariaLabel || ('skyux_tokens_dismiss_button_title' | skyLibResources)\n \"\n [disabled]=\"disabled\"\n [ngClass]=\"{\n 'sky-btn-disabled': disabled,\n 'sky-token-btn-close-active': closeActive\n }\"\n (click)=\"dismissToken($event)\"\n (document:mouseup)=\"setCloseActive(false)\"\n (mousedown)=\"setCloseActive(true)\"\n >\n <sky-icon class=\"sky-token-btn-close-icon\" icon=\"close\" />\n </button>\n </span>\n }\n</div>\n<span\n #screenReaderLabelDismiss=\"skyId\"\n skyScreenReaderLabel\n skyId\n [createLabel]=\"dismissible && !ariaLabel\"\n>\n {{ 'skyux_tokens_dismiss_button_default_label' | skyLibResources }}\n</span>\n", styles: [".sky-token:not(.sky-theme-modern *){--sky-override-token-active-background-color: #91d6f8;--sky-override-token-active-border: 1px solid #00b4f1;--sky-override-token-active-box-shadow: 0 0 8px rgba(0, 180, 241, .6);--sky-override-token-align-items: inherit;--sky-override-token-background-color: #c1e8fb;--sky-override-token-border: 1px solid #00b4f1;--sky-override-token-box-shadow: none;--sky-override-token-button-padding: 2px 8px;--sky-override-token-close-align-items: inherit;--sky-override-token-close-active-background-color: transparent;--sky-override-token-close-active-box-shadow: none;--sky-override-token-close-border-radius: 3px;--sky-override-token-close-button-opacity: .9;--sky-override-token-close-display: inline-block;--sky-override-token-close-focus-background-color: transparent --sky-override-token-close-focus-box-shadow: none;--sky-override-token-close-focus-outline: auto;--sky-override-token-close-hover-background-color: transparent;--sky-override-token-close-hover-box-shadow: none;--sky-override-token-close-icon-width: initial;--sky-override-token-close-line-height: calc(20 / 14);--sky-override-token-close-margin-left: -2px;--sky-override-token-close-padding: 2px 8px;--sky-override-token-close-size: \"\";--sky-override-token-color-background-container-danger: var( --sky-background-color-danger );--sky-override-token-color-background-container-info: var( --sky-background-color-info );--sky-override-token-color-background-container-success: var( --sky-background-color-success );--sky-override-token-color-background-container-warning: var( --sky-background-color-warning );--sky-override-token-display: inline-block;--sky-override-token-disabled-background-color: #c1e8fb;--sky-override-token-dismissible-padding-right: 0;--sky-override-token-font-size: 15px;--sky-override-token-focused-background-color: #91d6f8;--sky-override-token-focused-border: 1px solid #00b4f1;--sky-override-token-focused-box-shadow: 0 0 8px rgba(0, 180, 241, .6);--sky-override-token-hover-background-color: #91d6f8;--sky-override-token-hover-border: 1px solid #008ebe;--sky-override-token-hover-box-shadow: none;--sky-override-token-padding: 0}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-token{--sky-override-token-button-padding: var(--modern-size-1) var(--modern-size-5);--sky-override-token-close-button-opacity: .9;--sky-override-token-close-hover-box-shadow: inset 0 0 0 1px transparent;--sky-override-token-close-line-height: calc(20 / 14);--sky-override-token-close-padding: 0;--sky-override-token-close-size: var(--modern-size-20);--sky-override-token-font-size: var(--modern-font-size-150);--sky-override-token-padding: 0}.sky-token{background-color:var(--sky-override-token-background-color, var(--sky-color-background-selected-soft));font-size:var(--sky-override-token-font-size, var(--sky-font-size-body-m));border:var(--sky-override-token-border, none);box-shadow:var(--sky-override-token-box-shadow, inset 0 0 0 var(--sky-border-width-action-base) var(--sky-color-border-selected_soft));padding:var(--sky-override-token-padding, var(--sky-space-inset-pillarbox-1_4-top-xs) var(--sky-space-inset-pillarbox-1_4-right-xs) var(--sky-space-inset-pillarbox-1_4-bottom-xs) var(--sky-space-inset-pillarbox-1_4-left-xs));align-items:var(--sky-override-token-align-items, center);display:var(--sky-override-token-display, inline-flex)}.sky-token.sky-token-focused:not(:active){background-color:var(--sky-override-token-focused-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-focused-border, none);box-shadow:var(--sky-override-token-focused-box-shadow, inset 0 0 0 var(--sky-border-width-action-focus) var(--sky-color-border-action-tertiary-focus), var(--sky-elevation-focus));cursor:pointer}.sky-token:hover{background-color:var(--sky-override-token-hover-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-hover-border, none);box-shadow:var(--sky-override-token-hover-box-shadow, inset 0 0 0 var(--sky-border-width-action-hover) var(--sky-color-border-action-tertiary-hover));cursor:pointer}.sky-token.sky-token-active{background-color:var(--sky-override-token-active-background-color, var(--sky-color-background-selected-soft));border:var(--sky-override-token-active-border, none);box-shadow:var(--sky-override-token-active-box-shadow, inset 0 0 0 var(--sky-border-width-action-active) var(--sky-color-border-action-tertiary-active));cursor:pointer}.sky-token .sky-token-btn{background-color:transparent;border:0;box-shadow:none}.sky-token-btn{padding:var(--sky-override-token-button-padding, 0)}.sky-btn-disabled{background-color:var(--sky-override-token-disabled-background-color, var(--sky-color-background-action-tertiary-disabled));cursor:default;-webkit-user-select:none;user-select:none}.sky-btn-disabled .sky-btn-disabled{opacity:1}.sky-btn-disabled .sky-token-btn-action{color:var(--sky-color-text-deemphasized)}.sky-btn-disabled .sky-token-btn-close{color:var(--sky-color-icon-deemphasized)}.sky-token-btn-close{margin-left:var(--sky-override-token-close-margin-left, var(--sky-space-gap-text_action-xs));opacity:var(--sky-override-token-close-button-opacity, 1);padding:var(--sky-override-token-close-padding, var(--sky-space-inset-balanced-xxs));border-radius:var(--sky-override-token-close-border-radius, calc(var(--sky-border-radius-s) - var(--sky-border-width-selected-s)));align-items:var(--sky-override-token-close-align-items, center);display:var(--sky-override-token-close-display, flex);height:var(--sky-override-token-close-size, \"\");width:var(--sky-override-token-close-size, \"\");line-height:var(--sky-override-token-close-line-height, 1)}.sky-token-btn-close:hover,.sky-token-btn-close:focus-visible{opacity:1}.sky-token-btn-close:hover{background-color:var(--sky-override-token-close-hover-background-color, var(--sky-color-background-action-tertiary-hover));border:none;box-shadow:var(--sky-override-token-close-hover-box-shadow, inset 0 0 0 var(--sky-border-width-action-hover) var(--sky-color-border-action-tertiary-hover))}.sky-token-btn-close:focus-visible{outline:var(--sky-override-token-close-focus-outline, none)}.sky-token-btn-close:focus-visible:not(:active){background-color:var(--sky-override-token-close-focus-background-color, var(--sky-color-background-action-tertiary-focus));border:none;box-shadow:var(--sky-override-token-close-focus-box-shadow, inset 0 0 0 var(--sky-border-width-action-focus) var(--sky-color-border-action-tertiary-focus), var(--sky-elevation-focus))}.sky-token-btn-close.sky-token-btn-close-active{background-color:var(--sky-override-token-close-active-background-color, var(--sky-color-background-action-tertiary-active));border:none;box-shadow:var(--sky-override-token-close-active-box-shadow, inset 0 0 0 var(--sky-border-width-action-active) var(--sky-color-border-action-tertiary-active))}.sky-token-dismissible{padding-right:var(--sky-override-token-dismissible-padding-right, var(--sky-border-width-selected-s))}.sky-token-dismissible .sky-token-btn-action{padding-right:0}.sky-token-btn-action{font-size:var(--sky-override-token-font-size, var(--sky-font-size-body-m))}.sky-token-btn-action:focus-visible{outline:none}.sky-token-btn-close-icon{width:var(--sky-override-token-close-icon-width, 100%)}\n"] }]
102
- }], propDecorators: { disabled: [{
103
- type: Input
104
- }], ariaLabel: [{
105
- type: Input
106
- }], dismissible: [{
107
- type: Input
108
- }], focusable: [{
109
- type: Input
110
- }], role: [{
111
- type: Input
112
- }], dismiss: [{
113
- type: Output
114
- }], tokenFocus: [{
115
- type: Output
116
- }], actionButtonRef: [{
117
- type: ViewChild,
118
- args: ['actionButton', { read: ElementRef, static: true }]
119
- }] } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3Rva2Vucy90b2tlbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvdG9rZW5zL3Rva2VuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN0RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFckQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBUTVCLE1BQU0sT0FBTyxpQkFBaUI7SUFOOUI7UUE2REU7O1dBRUc7UUFFSSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUxQzs7V0FFRztRQUVJLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBS3RDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUVwQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV4QixzQkFBaUIsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNwRCxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRXhELGVBQVUs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QUFNO2dCQUlBLGVBQWU7c0JBRHJCLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lMaXZlQW5ub3VuY2VyU2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRva2VuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rva2VuLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9rZW4uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreVRva2VuQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGlzYWJsZSB0aGUgdG9rZW4gdG8gcHJldmVudCB1c2VycyBmcm9tIHNlbGVjdGluZyBpdCwgZGlzbWlzc2luZyBpdCxcbiAgICogb3IgbmF2aWdhdGluZyB0byBpdCB3aXRoIHRoZSBhcnJvdyBrZXlzLiBXaGVuIHRoZSB0b2tlbiBpcyBkaXNhYmxlZCxcbiAgICogdXNlcnMgY2FuIHN0aWxsIHBsYWNlIGZvY3VzIG9uIGl0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc2FibGVkID0gISF2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19kaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJJQSBsYWJlbCBmb3IgdGhlIHRva2VuJ3MgY2xvc2UgYnV0dG9uLiBUaGlzIHNldHMgdGhlIGJ1dHRvbidzIGBhcmlhLWxhYmVsYCB0byBwcm92aWRlIGEgdGV4dCBlcXVpdmFsZW50IGZvciBzY3JlZW4gcmVhZGVyc1xuICAgKiBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpLlxuICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYGFyaWEtbGFiZWxgIGF0dHJpYnV0ZSwgc2VlIHRoZSBbV0FJLUFSSUEgZGVmaW5pdGlvbl0oaHR0cHM6Ly93d3cudzMub3JnL1RSL3dhaS1hcmlhLyNhcmlhLWxhYmVsKS5cbiAgICogQGRlZmF1bHQgXCJSZW1vdmUgaXRlbVwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXJpYUxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdXNlcnMgY2FuIHJlbW92ZSB0aGUgdG9rZW4gZnJvbSB0aGUgbGlzdCBieSBzZWxlY3RpbmcgdGhlIGNsb3NlIGJ1dHRvbi5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNtaXNzaWJsZSh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19kaXNtaXNzaWJsZSA9IHZhbHVlICE9PSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzbWlzc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19kaXNtaXNzaWJsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHVzZXJzIGNhbiBwbGFjZSBmb2N1cyBvbiB0aGUgdG9rZW4gdXNpbmcgdGhlIGBUYWJgLiBUaGlzIGRvZXMgbm90XG4gICAqIGFmZmVjdCB0aGUgYWJpbGl0eSB0byBzZWxlY3QgdGhlIHRva2VuLCBkaXNtaXNzIGl0LCBvciBuYXZpZ2F0ZSB0byBpdCB3aXRoIHRoZSBhcnJvdyBrZXlzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGZvY3VzYWJsZSh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudGFiSW5kZXggPSB2YWx1ZSAhPT0gZmFsc2UgPyAwIDogLTE7XG4gIH1cblxuICAvKipcbiAgICogVXNlZCBieSB0aGUgdG9rZW5zIGNvbXBvbmVudCB0byBzZXQgdGhlIGFwcHJvcHJpYXRlIHJvbGUgZm9yIGVhY2ggdG9rZW4uXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHJvbGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBjbGljayB0aGUgY2xvc2UgYnV0dG9uLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBkaXNtaXNzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHVzZXJzIHBsYWNlIGZvY3VzIG9uIHRoZSB0b2tlbiBieSBuYXZpZ2F0aW5nIHRvIGl0IHdpdGggdGhlIGBUYWJgIGtleS5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgdG9rZW5Gb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCdhY3Rpb25CdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgYWN0aW9uQnV0dG9uUmVmOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBpc0ZvY3VzZWQgPSBmYWxzZTtcbiAgcHVibGljIHRva2VuQWN0aXZlID0gZmFsc2U7XG4gIHB1YmxpYyBjbG9zZUFjdGl2ZSA9IGZhbHNlO1xuICBwdWJsaWMgdGFiSW5kZXggPSAwO1xuXG4gICNlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gIHJlYWRvbmx5ICNsaXZlQW5ub3VuY2VyU3ZjID0gaW5qZWN0KFNreUxpdmVBbm5vdW5jZXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI3Jlc291cmNlc1N2YyA9IGluamVjdChTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlKTtcblxuICAjX2Rpc2FibGVkID0gZmFsc2U7XG4gICNfZGlzbWlzc2libGUgPSB0cnVlO1xuXG4gIHByb3RlY3RlZCBvbkZvY3VzSW4oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzRm9jdXNlZCkge1xuICAgICAgdGhpcy50b2tlbkZvY3VzLmVtaXQoKTtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Gb2N1c091dChldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKFxuICAgICAgZXZlbnQucmVsYXRlZFRhcmdldCxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGRpc21pc3NUb2tlbihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLiNhbm5vdW5jZVN0YXRlKFxuICAgICAgJ3NreXV4X3Rva2Vuc190b2tlbl9kaXNtaXNzZWQnLFxuICAgICAgdGhpcy5hY3Rpb25CdXR0b25SZWY/Lm5hdGl2ZUVsZW1lbnQudGV4dENvbnRlbnQudHJpbSgpLFxuICAgICk7XG4gICAgdGhpcy5kaXNtaXNzLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1c0VsZW1lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5hY3Rpb25CdXR0b25SZWY/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUb2tlbkFjdGl2ZSh0b2tlbkFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudG9rZW5BY3RpdmUgPSB0b2tlbkFjdGl2ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRDbG9zZUFjdGl2ZShjbG9zZUFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VBY3RpdmUgPSBjbG9zZUFjdGl2ZTtcbiAgfVxuXG4gICNhbm5vdW5jZVN0YXRlKHJlc291cmNlU3RyaW5nOiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKTogdm9pZCB7XG4gICAgdGhpcy4jcmVzb3VyY2VzU3ZjXG4gICAgICAuZ2V0U3RyaW5nKHJlc291cmNlU3RyaW5nLCAuLi5hcmdzKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKGludGVybmF0aW9uYWxpemVkU3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuI2xpdmVBbm5vdW5jZXJTdmMuYW5ub3VuY2UoaW50ZXJuYXRpb25hbGl6ZWRTdHJpbmcpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktdG9rZW4gc2t5LWJ0biBza3ktYnRuLWRlZmF1bHRcIlxuICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NreS1idG4tZGlzYWJsZWQnOiBkaXNhYmxlZCxcbiAgICAnc2t5LXRva2VuLWRpc2FibGVkJzogZGlzYWJsZWQsXG4gICAgJ3NreS10b2tlbi1kaXNtaXNzaWJsZSc6IGRpc21pc3NpYmxlLFxuICAgICdza3ktdG9rZW4tYWN0aXZlJzogdG9rZW5BY3RpdmUgJiYgIWNsb3NlQWN0aXZlLFxuICAgICdza3ktdG9rZW4tZm9jdXNlZCc6IGlzRm9jdXNlZFxuICB9XCJcbiAgKGRvY3VtZW50Om1vdXNldXApPVwic2V0VG9rZW5BY3RpdmUoZmFsc2UpXCJcbiAgKGZvY3VzaW4pPVwib25Gb2N1c0luKClcIlxuICAoZm9jdXNvdXQpPVwib25Gb2N1c091dCgkZXZlbnQpXCJcbiAgKG1vdXNlZG93bik9XCJzZXRUb2tlbkFjdGl2ZSh0cnVlKVwiXG4+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJza3ktdG9rZW4tY2VsbFwiXG4gICAgW2F0dHIucm9sZV09XCJyb2xlID09PSAncm93JyA/ICdncmlkY2VsbCcgOiB1bmRlZmluZWRcIlxuICA+XG4gICAgPGJ1dHRvblxuICAgICAgI2FjdGlvbkJ1dHRvbj1cInNreUlkXCJcbiAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWRlZmF1bHQgc2t5LXRva2VuLWJ0biBza3ktdG9rZW4tYnRuLWFjdGlvblwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIHNreUlkXG4gICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJJbmRleFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnc2t5LWJ0bi1kaXNhYmxlZCc6IGRpc2FibGVkXG4gICAgICB9XCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCAvPlxuICAgIDwvYnV0dG9uPlxuICA8L3NwYW4+XG4gIEBpZiAoZGlzbWlzc2libGUpIHtcbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJza3ktdG9rZW4tY2VsbFwiXG4gICAgICBbYXR0ci5yb2xlXT1cInJvbGUgPT09ICdyb3cnID8gJ2dyaWRjZWxsJyA6IHVuZGVmaW5lZFwiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LXRva2VuLWJ0biBza3ktdG9rZW4tYnRuLWNsb3NlXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICFhcmlhTGFiZWxcbiAgICAgICAgICAgID8gc2NyZWVuUmVhZGVyTGFiZWxEaXNtaXNzLmlkICsgJyAnICsgYWN0aW9uQnV0dG9uLmlkXG4gICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICBcIlxuICAgICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJJbmRleFwiXG4gICAgICAgIFthdHRyLnRpdGxlXT1cIlxuICAgICAgICAgIGFyaWFMYWJlbCB8fCAoJ3NreXV4X3Rva2Vuc19kaXNtaXNzX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMpXG4gICAgICAgIFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnc2t5LWJ0bi1kaXNhYmxlZCc6IGRpc2FibGVkLFxuICAgICAgICAgICdza3ktdG9rZW4tYnRuLWNsb3NlLWFjdGl2ZSc6IGNsb3NlQWN0aXZlXG4gICAgICAgIH1cIlxuICAgICAgICAoY2xpY2spPVwiZGlzbWlzc1Rva2VuKCRldmVudClcIlxuICAgICAgICAoZG9jdW1lbnQ6bW91c2V1cCk9XCJzZXRDbG9zZUFjdGl2ZShmYWxzZSlcIlxuICAgICAgICAobW91c2Vkb3duKT1cInNldENsb3NlQWN0aXZlKHRydWUpXCJcbiAgICAgID5cbiAgICAgICAgPHNreS1pY29uIGNsYXNzPVwic2t5LXRva2VuLWJ0bi1jbG9zZS1pY29uXCIgaWNvbj1cImNsb3NlXCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvc3Bhbj5cbiAgfVxuPC9kaXY+XG48c3BhblxuICAjc2NyZWVuUmVhZGVyTGFiZWxEaXNtaXNzPVwic2t5SWRcIlxuICBza3lTY3JlZW5SZWFkZXJMYWJlbFxuICBza3lJZFxuICBbY3JlYXRlTGFiZWxdPVwiZGlzbWlzc2libGUgJiYgIWFyaWFMYWJlbFwiXG4+XG4gIHt7ICdza3l1eF90b2tlbnNfZGlzbWlzc19idXR0b25fZGVmYXVsdF9sYWJlbCcgfCBza3lMaWJSZXNvdXJjZXMgfX1cbjwvc3Bhbj5cbiJdfQ==