@skyux/indicators 12.0.0-alpha.13 → 12.0.0-alpha.14

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.
@@ -268,11 +268,11 @@ class SkyAlertComponent {
268
268
  }
269
269
  }
270
270
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
271
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyAlertComponent, isStandalone: false, selector: "sky-alert", inputs: { alertType: "alertType", closeable: "closeable", closed: "closed", descriptionType: "descriptionType", customDescription: "customDescription" }, outputs: { closedChange: "closedChange" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n", styles: [":host.sky-cmp-theme-default{display:block}.sky-alert:not(.sky-theme-modern *){padding:0 10px;border-left:solid 30px;color:var(--sky-text-color-default);display:flex;flex-direction:row;align-items:center}.sky-alert:not(.sky-theme-modern *) .sky-alert-content{padding:10px 0;width:100%}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a{color:#212327cc;text-decoration:underline}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a:hover{color:var(--sky-text-color-default)}.sky-alert:not(.sky-theme-modern *) button{margin-left:auto;width:32px;height:32px}.sky-alert:not(.sky-theme-modern *):not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: #212327}.sky-alert:not(.sky-theme-modern *).sky-alert-info{background-color:var(--sky-background-color-info);border-color:var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success{background-color:var(--sky-background-color-success);border-color:var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning{background-color:var(--sky-background-color-warning);border-color:var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger{background-color:var(--sky-background-color-danger);border-color:var(--sky-highlight-color-danger)}.sky-alert:not(.sky-theme-modern *) .sky-alert-close{cursor:pointer;font-weight:700;line-height:1;margin:0;padding:0;color:var(--sky-text-color-default);opacity:.8;border:none;border-radius:3px;background-color:transparent;display:none;flex-shrink:0}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:hover{opacity:1;border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible{border:var(--sky-background-color-primary-dark) solid 2px;outline:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:active{border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible:not(:active){box-shadow:none}.sky-alert:not(.sky-theme-modern *).sky-alert-closeable .sky-alert-close{display:block}.sky-alert:not(.sky-theme-modern *) .sky-alert-icon{color:#fff;margin-left:-35px;margin-right:17px}.sky-alert:not(.sky-theme-modern *).sky-alert-info .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-danger)}\n", ":host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{display:block}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-alert{--sky-override-alert-button-padding: 0;--sky-override-alert-button-size: 32px;--sky-override-alert-inner-icon-color: var(--sky-color-icon-default);--sky-override-alert-padding: 0 var(--modern-size-10);--sky-override-alert-text-link-color: #212327cc;--sky-override-alert-text-vertical-padding: var(--modern-size-15)}:host-context(.sky-theme-modern) .sky-alert{padding:var(--sky-override-alert-padding, var(--sky-space-inset-balanced-s));border-left:solid var(--sky-border-width-accent);color:var(--sky-color-text-default);display:flex;flex-direction:row;align-items:center}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content{padding:var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-text_action-m) var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-icon-l);width:100%}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a{color:var(--sky-override-alert-text-link-color, var(--sky-color-text-default));text-decoration:var(--sky-font-text_decoration-visible_link)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a:hover{color:var(--sky-color-text-default)}:host-context(.sky-theme-modern) .sky-alert button{margin-left:auto;height:var(--sky-override-alert-button-size, auto);width:var(--sky-override-alert-button-size, auto)}:host-context(.sky-theme-modern) .sky-alert:not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: var(--sky-color-icon-default)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info{background-color:var(--sky-color-background-container-info);border-color:var(--sky-color-border-info);--sky-icon-svg-path-2-color-input: var( --sky-override-alert-inner-icon-color, var(--sky-color-icon-inverse) )}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success{background-color:var(--sky-color-background-container-success);border-color:var(--sky-color-border-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning{background-color:var(--sky-color-background-container-warning);border-color:var(--sky-color-border-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger{background-color:var(--sky-color-background-container-danger);border-color:var(--sky-color-border-danger)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close{cursor:pointer;line-height:1;padding:var(--sky-override-alert-button-padding, var(--sky-space-inset-balanced-xs));color:var(--sky-color-icon-default);border-style:solid;border-color:var(--sky-color-border-action-tertiary-base);border-radius:var(--sky-border-radius-s);border-width:var(--sky-border-width-action-base);background-color:var(--sky-color-background-action-tertiary-base);display:none;flex-shrink:0}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:hover{opacity:1;border-color:var(--sky-color-border-action-tertiary-hover);border-width:var(--sky-border-width-action-hover)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible{outline:none;border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:active{border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible:not(:active){box-shadow:var(--sky-elevation-raised-100)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-closeable .sky-alert-close{display:block}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info .sky-alert-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success .sky-alert-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning .sky-alert-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger .sky-alert-icon{color:var(--sky-color-icon-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i1$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }] }); }
271
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyAlertComponent, isStandalone: false, selector: "sky-alert", inputs: { alertType: "alertType", closeable: "closeable", closed: "closed", descriptionType: "descriptionType", customDescription: "customDescription" }, outputs: { closedChange: "closedChange" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n", styles: [":host.sky-cmp-theme-default{display:block}.sky-alert:not(.sky-theme-modern *){padding:0 10px;border-left:solid 30px;color:var(--sky-text-color-default);display:flex;flex-direction:row;align-items:center}.sky-alert:not(.sky-theme-modern *) .sky-alert-content{padding:10px 0;width:100%}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a{color:#212327cc;text-decoration:underline}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a:hover{color:var(--sky-text-color-default)}.sky-alert:not(.sky-theme-modern *) button{margin-left:auto;width:32px;height:32px}.sky-alert:not(.sky-theme-modern *):not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: #212327}.sky-alert:not(.sky-theme-modern *).sky-alert-info{background-color:var(--sky-background-color-info);border-color:var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success{background-color:var(--sky-background-color-success);border-color:var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning{background-color:var(--sky-background-color-warning);border-color:var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger{background-color:var(--sky-background-color-danger);border-color:var(--sky-highlight-color-danger)}.sky-alert:not(.sky-theme-modern *) .sky-alert-close{cursor:pointer;font-weight:700;line-height:1;margin:0;padding:0;color:var(--sky-text-color-default);opacity:.8;border:none;border-radius:3px;background-color:transparent;display:none;flex-shrink:0}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:hover{opacity:1;border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible{border:var(--sky-background-color-primary-dark) solid 2px;outline:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:active{border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible:not(:active){box-shadow:none}.sky-alert:not(.sky-theme-modern *).sky-alert-closeable .sky-alert-close{display:block}.sky-alert:not(.sky-theme-modern *) .sky-alert-icon{color:#fff;margin-left:-35px;margin-right:17px}.sky-alert:not(.sky-theme-modern *).sky-alert-info .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-danger)}\n", ":host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{display:block}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-alert{--sky-override-alert-button-padding: 0;--sky-override-alert-button-size: 32px;--sky-override-alert-inner-icon-color: var(--sky-color-icon-default);--sky-override-alert-padding: 0 var(--modern-size-10);--sky-override-alert-text-link-color: #212327cc;--sky-override-alert-text-vertical-padding: var(--modern-size-15)}:host-context(.sky-theme-modern) .sky-alert{padding:var(--sky-override-alert-padding, var(--sky-space-inset-balanced-s));border-left:solid var(--sky-border-width-accent);color:var(--sky-color-text-default);display:flex;flex-direction:row;align-items:center}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content{padding:var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-text_action-m) var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-icon-l);width:100%}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a{color:var(--sky-override-alert-text-link-color, var(--sky-color-text-default));text-decoration:var(--sky-font-text_decoration-visible_link)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a:hover{color:var(--sky-color-text-default)}:host-context(.sky-theme-modern) .sky-alert button{margin-left:auto;height:var(--sky-override-alert-button-size, auto);width:var(--sky-override-alert-button-size, auto)}:host-context(.sky-theme-modern) .sky-alert:not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: var(--sky-color-icon-default)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info{background-color:var(--sky-color-background-container-info);border-color:var(--sky-color-border-info);--sky-icon-svg-path-2-color-input: var( --sky-override-alert-inner-icon-color, var(--sky-color-icon-inverse) )}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success{background-color:var(--sky-color-background-container-success);border-color:var(--sky-color-border-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning{background-color:var(--sky-color-background-container-warning);border-color:var(--sky-color-border-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger{background-color:var(--sky-color-background-container-danger);border-color:var(--sky-color-border-danger)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close{cursor:pointer;line-height:1;padding:var(--sky-override-alert-button-padding, var(--sky-space-inset-balanced-xs));color:var(--sky-color-icon-default);border-style:solid;border-color:var(--sky-color-border-action-tertiary-base);border-radius:var(--sky-border-radius-s);border-width:var(--sky-border-width-action-base);background-color:var(--sky-color-background-action-tertiary-base);display:none;flex-shrink:0}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:hover{opacity:1;border-color:var(--sky-color-border-action-tertiary-hover);border-width:var(--sky-border-width-action-hover)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible{outline:none;border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:active{border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible:not(:active){box-shadow:var(--sky-elevation-raised-100)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-closeable .sky-alert-close{display:block}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info .sky-alert-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success .sky-alert-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning .sky-alert-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger .sky-alert-icon{color:var(--sky-color-icon-danger)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i1$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }] }); }
272
272
  }
273
273
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyAlertComponent, decorators: [{
274
274
  type: Component,
275
- args: [{ selector: 'sky-alert', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n", styles: [":host.sky-cmp-theme-default{display:block}.sky-alert:not(.sky-theme-modern *){padding:0 10px;border-left:solid 30px;color:var(--sky-text-color-default);display:flex;flex-direction:row;align-items:center}.sky-alert:not(.sky-theme-modern *) .sky-alert-content{padding:10px 0;width:100%}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a{color:#212327cc;text-decoration:underline}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a:hover{color:var(--sky-text-color-default)}.sky-alert:not(.sky-theme-modern *) button{margin-left:auto;width:32px;height:32px}.sky-alert:not(.sky-theme-modern *):not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: #212327}.sky-alert:not(.sky-theme-modern *).sky-alert-info{background-color:var(--sky-background-color-info);border-color:var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success{background-color:var(--sky-background-color-success);border-color:var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning{background-color:var(--sky-background-color-warning);border-color:var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger{background-color:var(--sky-background-color-danger);border-color:var(--sky-highlight-color-danger)}.sky-alert:not(.sky-theme-modern *) .sky-alert-close{cursor:pointer;font-weight:700;line-height:1;margin:0;padding:0;color:var(--sky-text-color-default);opacity:.8;border:none;border-radius:3px;background-color:transparent;display:none;flex-shrink:0}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:hover{opacity:1;border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible{border:var(--sky-background-color-primary-dark) solid 2px;outline:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:active{border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible:not(:active){box-shadow:none}.sky-alert:not(.sky-theme-modern *).sky-alert-closeable .sky-alert-close{display:block}.sky-alert:not(.sky-theme-modern *) .sky-alert-icon{color:#fff;margin-left:-35px;margin-right:17px}.sky-alert:not(.sky-theme-modern *).sky-alert-info .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-danger)}\n", ":host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{display:block}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-alert{--sky-override-alert-button-padding: 0;--sky-override-alert-button-size: 32px;--sky-override-alert-inner-icon-color: var(--sky-color-icon-default);--sky-override-alert-padding: 0 var(--modern-size-10);--sky-override-alert-text-link-color: #212327cc;--sky-override-alert-text-vertical-padding: var(--modern-size-15)}:host-context(.sky-theme-modern) .sky-alert{padding:var(--sky-override-alert-padding, var(--sky-space-inset-balanced-s));border-left:solid var(--sky-border-width-accent);color:var(--sky-color-text-default);display:flex;flex-direction:row;align-items:center}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content{padding:var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-text_action-m) var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-icon-l);width:100%}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a{color:var(--sky-override-alert-text-link-color, var(--sky-color-text-default));text-decoration:var(--sky-font-text_decoration-visible_link)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a:hover{color:var(--sky-color-text-default)}:host-context(.sky-theme-modern) .sky-alert button{margin-left:auto;height:var(--sky-override-alert-button-size, auto);width:var(--sky-override-alert-button-size, auto)}:host-context(.sky-theme-modern) .sky-alert:not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: var(--sky-color-icon-default)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info{background-color:var(--sky-color-background-container-info);border-color:var(--sky-color-border-info);--sky-icon-svg-path-2-color-input: var( --sky-override-alert-inner-icon-color, var(--sky-color-icon-inverse) )}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success{background-color:var(--sky-color-background-container-success);border-color:var(--sky-color-border-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning{background-color:var(--sky-color-background-container-warning);border-color:var(--sky-color-border-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger{background-color:var(--sky-color-background-container-danger);border-color:var(--sky-color-border-danger)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close{cursor:pointer;line-height:1;padding:var(--sky-override-alert-button-padding, var(--sky-space-inset-balanced-xs));color:var(--sky-color-icon-default);border-style:solid;border-color:var(--sky-color-border-action-tertiary-base);border-radius:var(--sky-border-radius-s);border-width:var(--sky-border-width-action-base);background-color:var(--sky-color-background-action-tertiary-base);display:none;flex-shrink:0}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:hover{opacity:1;border-color:var(--sky-color-border-action-tertiary-hover);border-width:var(--sky-border-width-action-hover)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible{outline:none;border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:active{border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible:not(:active){box-shadow:var(--sky-elevation-raised-100)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-closeable .sky-alert-close{display:block}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info .sky-alert-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success .sky-alert-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning .sky-alert-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger .sky-alert-icon{color:var(--sky-color-icon-danger)}\n"] }]
275
+ args: [{ selector: 'sky-alert', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n", styles: [":host.sky-cmp-theme-default{display:block}.sky-alert:not(.sky-theme-modern *){padding:0 10px;border-left:solid 30px;color:var(--sky-text-color-default);display:flex;flex-direction:row;align-items:center}.sky-alert:not(.sky-theme-modern *) .sky-alert-content{padding:10px 0;width:100%}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a{color:#212327cc;text-decoration:underline}.sky-alert:not(.sky-theme-modern *) .sky-alert-content ::ng-deep a:hover{color:var(--sky-text-color-default)}.sky-alert:not(.sky-theme-modern *) button{margin-left:auto;width:32px;height:32px}.sky-alert:not(.sky-theme-modern *):not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: #212327}.sky-alert:not(.sky-theme-modern *).sky-alert-info{background-color:var(--sky-background-color-info);border-color:var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success{background-color:var(--sky-background-color-success);border-color:var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning{background-color:var(--sky-background-color-warning);border-color:var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger{background-color:var(--sky-background-color-danger);border-color:var(--sky-highlight-color-danger)}.sky-alert:not(.sky-theme-modern *) .sky-alert-close{cursor:pointer;font-weight:700;line-height:1;margin:0;padding:0;color:var(--sky-text-color-default);opacity:.8;border:none;border-radius:3px;background-color:transparent;display:none;flex-shrink:0}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:hover{opacity:1;border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible{border:var(--sky-background-color-primary-dark) solid 2px;outline:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:active{border:none}.sky-alert:not(.sky-theme-modern *) .sky-alert-close:focus-visible:not(:active){box-shadow:none}.sky-alert:not(.sky-theme-modern *).sky-alert-closeable .sky-alert-close{display:block}.sky-alert:not(.sky-theme-modern *) .sky-alert-icon{color:#fff;margin-left:-35px;margin-right:17px}.sky-alert:not(.sky-theme-modern *).sky-alert-info .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-info)}.sky-alert:not(.sky-theme-modern *).sky-alert-success .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-success)}.sky-alert:not(.sky-theme-modern *).sky-alert-warning .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-warning)}.sky-alert:not(.sky-theme-modern *).sky-alert-danger .sky-alert-icon{--sky-icon-svg-path-2-color-input: var(--sky-highlight-color-danger)}\n", ":host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{display:block}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-alert{--sky-override-alert-button-padding: 0;--sky-override-alert-button-size: 32px;--sky-override-alert-inner-icon-color: var(--sky-color-icon-default);--sky-override-alert-padding: 0 var(--modern-size-10);--sky-override-alert-text-link-color: #212327cc;--sky-override-alert-text-vertical-padding: var(--modern-size-15)}:host-context(.sky-theme-modern) .sky-alert{padding:var(--sky-override-alert-padding, var(--sky-space-inset-balanced-s));border-left:solid var(--sky-border-width-accent);color:var(--sky-color-text-default);display:flex;flex-direction:row;align-items:center}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content{padding:var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-text_action-m) var(--sky-override-alert-text-vertical-padding, var(--sky-space-inset-balanced-none)) var(--sky-space-gap-icon-l);width:100%}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a{color:var(--sky-override-alert-text-link-color, var(--sky-color-text-default));text-decoration:var(--sky-font-text_decoration-visible_link)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-content ::ng-deep a:hover{color:var(--sky-color-text-default)}:host-context(.sky-theme-modern) .sky-alert button{margin-left:auto;height:var(--sky-override-alert-button-size, auto);width:var(--sky-override-alert-button-size, auto)}:host-context(.sky-theme-modern) .sky-alert:not(.sky-alert-danger){--sky-icon-svg-path-2-color-input: var(--sky-color-icon-default)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info{background-color:var(--sky-color-background-container-info);border-color:var(--sky-color-border-info);--sky-icon-svg-path-2-color-input: var( --sky-override-alert-inner-icon-color, var(--sky-color-icon-inverse) )}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success{background-color:var(--sky-color-background-container-success);border-color:var(--sky-color-border-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning{background-color:var(--sky-color-background-container-warning);border-color:var(--sky-color-border-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger{background-color:var(--sky-color-background-container-danger);border-color:var(--sky-color-border-danger)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close{cursor:pointer;line-height:1;padding:var(--sky-override-alert-button-padding, var(--sky-space-inset-balanced-xs));color:var(--sky-color-icon-default);border-style:solid;border-color:var(--sky-color-border-action-tertiary-base);border-radius:var(--sky-border-radius-s);border-width:var(--sky-border-width-action-base);background-color:var(--sky-color-background-action-tertiary-base);display:none;flex-shrink:0}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:hover{opacity:1;border-color:var(--sky-color-border-action-tertiary-hover);border-width:var(--sky-border-width-action-hover)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible{outline:none;border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:active{border-color:var(--sky-color-border-action-tertiary-focus);border-width:var(--sky-border-width-action-focus)}:host-context(.sky-theme-modern) .sky-alert .sky-alert-close:focus-visible:not(:active){box-shadow:var(--sky-elevation-raised-100)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-closeable .sky-alert-close{display:block}:host-context(.sky-theme-modern) .sky-alert.sky-alert-info .sky-alert-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-success .sky-alert-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-warning .sky-alert-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-alert.sky-alert-danger .sky-alert-icon{color:var(--sky-color-icon-danger)}\n"] }]
276
276
  }], propDecorators: { alertType: [{
277
277
  type: Input
278
278
  }], closeable: [{
@@ -330,11 +330,11 @@ class SkyExpansionIndicatorComponent {
330
330
  }
331
331
  }
332
332
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyExpansionIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
333
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.1", type: SkyExpansionIndicatorComponent, isStandalone: false, selector: "sky-expansion-indicator", inputs: { direction: "direction" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n", styles: [".sky-expansion-indicator:not(.sky-theme-modern *){display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;overflow:hidden;width:24px;position:relative;vertical-align:top}.sky-expansion-indicator-part:not(.sky-theme-modern *){border-color:#cdcfd2;border-style:solid;border-width:3px 0 0 0;display:inline-block;height:10px;position:absolute;top:10px;transition:transform .25s,left .25s;vertical-align:top;width:10px}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:7px;transform:rotate(-45deg)}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:7px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:2px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:12px;transform:rotate(-45deg)}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-expansion-indicator{--sky-override-expansion-indicator-container-left: 4px;--sky-override-expansion-indicator-container-top: 3.5px;--sky-override-expansion-indicator-leg-left-left: 4px;--sky-override-expansion-indicator-leg-right-left: 10.5px;--sky-override-expansion-indicator-line-height: normal;--sky-override-expansion-indicator-size: 26px;--sky-override-expansion-indicator-size-half: 13px}:host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{line-height:var(--sky-override-expansion-indicator-line-height, 1)}:host-context(.sky-theme-modern) .sky-expansion-indicator{display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s));margin:0;overflow:hidden;position:relative;vertical-align:top;width:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s))}:host-context(.sky-theme-modern) .sky-expansion-indicator-part{background:var(--sky-color-icon-deemphasized);border:none;display:inline-block;height:2px;position:absolute;top:var(--sky-override-expansion-indicator-size-half, calc(var(--sky-size-icon-s) / 2));transition:transform .25s,left .25s;vertical-align:top;width:11px}:host-context(.sky-theme-modern) .sky-expansion-indicator-glyph-container{left:var(--sky-override-expansion-indicator-container-left, 0);display:inline-block;position:absolute;top:var(--sky-override-expansion-indicator-container-top, 1.5px);transform:scale(.68)}:host-context(.sky-theme-modern) .sky-expansion-indicator-left{border-radius:1px 0 0 1px;left:var(--sky-override-expansion-indicator-leg-left-left, 2.75px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-right{border-radius:0 1px 1px 0;left:var(--sky-override-expansion-indicator-leg-right-left, 9.25px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-left{transform:rotate(-45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-right{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-left{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-right{transform:rotate(-45deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }] }); }
333
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.1", type: SkyExpansionIndicatorComponent, isStandalone: false, selector: "sky-expansion-indicator", inputs: { direction: "direction" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n", styles: [".sky-expansion-indicator:not(.sky-theme-modern *){display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;overflow:hidden;width:24px;position:relative;vertical-align:top}.sky-expansion-indicator-part:not(.sky-theme-modern *){border-color:#cdcfd2;border-style:solid;border-width:3px 0 0 0;display:inline-block;height:10px;position:absolute;top:10px;transition:transform .25s,left .25s;vertical-align:top;width:10px}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:7px;transform:rotate(-45deg)}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:7px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:2px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:12px;transform:rotate(-45deg)}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-expansion-indicator{--sky-override-expansion-indicator-container-left: 4px;--sky-override-expansion-indicator-container-top: 3.5px;--sky-override-expansion-indicator-leg-left-left: 4px;--sky-override-expansion-indicator-leg-right-left: 10.5px;--sky-override-expansion-indicator-line-height: normal;--sky-override-expansion-indicator-size: 26px;--sky-override-expansion-indicator-size-half: 13px}:host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{line-height:var(--sky-override-expansion-indicator-line-height, 1)}:host-context(.sky-theme-modern) .sky-expansion-indicator{display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s));margin:0;overflow:hidden;position:relative;vertical-align:top;width:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s))}:host-context(.sky-theme-modern) .sky-expansion-indicator-part{background:var(--sky-color-icon-deemphasized);border:none;display:inline-block;height:2px;position:absolute;top:var(--sky-override-expansion-indicator-size-half, calc(var(--sky-size-icon-s) / 2));transition:transform .25s,left .25s;vertical-align:top;width:11px}:host-context(.sky-theme-modern) .sky-expansion-indicator-glyph-container{left:var(--sky-override-expansion-indicator-container-left, 0);display:inline-block;position:absolute;top:var(--sky-override-expansion-indicator-container-top, 1.5px);transform:scale(.68)}:host-context(.sky-theme-modern) .sky-expansion-indicator-left{border-radius:1px 0 0 1px;left:var(--sky-override-expansion-indicator-leg-left-left, 2.75px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-right{border-radius:0 1px 1px 0;left:var(--sky-override-expansion-indicator-leg-right-left, 9.25px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-left{transform:rotate(-45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-right{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-left{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-right{transform:rotate(-45deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }] }); }
334
334
  }
335
335
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyExpansionIndicatorComponent, decorators: [{
336
336
  type: Component,
337
- args: [{ selector: 'sky-expansion-indicator', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n", styles: [".sky-expansion-indicator:not(.sky-theme-modern *){display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;overflow:hidden;width:24px;position:relative;vertical-align:top}.sky-expansion-indicator-part:not(.sky-theme-modern *){border-color:#cdcfd2;border-style:solid;border-width:3px 0 0 0;display:inline-block;height:10px;position:absolute;top:10px;transition:transform .25s,left .25s;vertical-align:top;width:10px}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:7px;transform:rotate(-45deg)}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:7px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:2px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:12px;transform:rotate(-45deg)}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-expansion-indicator{--sky-override-expansion-indicator-container-left: 4px;--sky-override-expansion-indicator-container-top: 3.5px;--sky-override-expansion-indicator-leg-left-left: 4px;--sky-override-expansion-indicator-leg-right-left: 10.5px;--sky-override-expansion-indicator-line-height: normal;--sky-override-expansion-indicator-size: 26px;--sky-override-expansion-indicator-size-half: 13px}:host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{line-height:var(--sky-override-expansion-indicator-line-height, 1)}:host-context(.sky-theme-modern) .sky-expansion-indicator{display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s));margin:0;overflow:hidden;position:relative;vertical-align:top;width:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s))}:host-context(.sky-theme-modern) .sky-expansion-indicator-part{background:var(--sky-color-icon-deemphasized);border:none;display:inline-block;height:2px;position:absolute;top:var(--sky-override-expansion-indicator-size-half, calc(var(--sky-size-icon-s) / 2));transition:transform .25s,left .25s;vertical-align:top;width:11px}:host-context(.sky-theme-modern) .sky-expansion-indicator-glyph-container{left:var(--sky-override-expansion-indicator-container-left, 0);display:inline-block;position:absolute;top:var(--sky-override-expansion-indicator-container-top, 1.5px);transform:scale(.68)}:host-context(.sky-theme-modern) .sky-expansion-indicator-left{border-radius:1px 0 0 1px;left:var(--sky-override-expansion-indicator-leg-left-left, 2.75px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-right{border-radius:0 1px 1px 0;left:var(--sky-override-expansion-indicator-leg-right-left, 9.25px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-left{transform:rotate(-45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-right{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-left{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-right{transform:rotate(-45deg)}\n"] }]
337
+ args: [{ selector: 'sky-expansion-indicator', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n", styles: [".sky-expansion-indicator:not(.sky-theme-modern *){display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;overflow:hidden;width:24px;position:relative;vertical-align:top}.sky-expansion-indicator-part:not(.sky-theme-modern *){border-color:#cdcfd2;border-style:solid;border-width:3px 0 0 0;display:inline-block;height:10px;position:absolute;top:10px;transition:transform .25s,left .25s;vertical-align:top;width:10px}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:7px;transform:rotate(-45deg)}.sky-expansion-indicator-up:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:7px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-left{left:2px;transform:rotate(45deg)}.sky-expansion-indicator-down:not(.sky-theme-modern *) .sky-expansion-indicator-right{left:12px;transform:rotate(-45deg)}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-expansion-indicator{--sky-override-expansion-indicator-container-left: 4px;--sky-override-expansion-indicator-container-top: 3.5px;--sky-override-expansion-indicator-leg-left-left: 4px;--sky-override-expansion-indicator-leg-right-left: 10.5px;--sky-override-expansion-indicator-line-height: normal;--sky-override-expansion-indicator-size: 26px;--sky-override-expansion-indicator-size-half: 13px}:host-context(.sky-theme-modern) :host.sky-cmp-theme-modern{line-height:var(--sky-override-expansion-indicator-line-height, 1)}:host-context(.sky-theme-modern) .sky-expansion-indicator{display:inline-block;border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s));margin:0;overflow:hidden;position:relative;vertical-align:top;width:var(--sky-override-expansion-indicator-size, var(--sky-size-icon-s))}:host-context(.sky-theme-modern) .sky-expansion-indicator-part{background:var(--sky-color-icon-deemphasized);border:none;display:inline-block;height:2px;position:absolute;top:var(--sky-override-expansion-indicator-size-half, calc(var(--sky-size-icon-s) / 2));transition:transform .25s,left .25s;vertical-align:top;width:11px}:host-context(.sky-theme-modern) .sky-expansion-indicator-glyph-container{left:var(--sky-override-expansion-indicator-container-left, 0);display:inline-block;position:absolute;top:var(--sky-override-expansion-indicator-container-top, 1.5px);transform:scale(.68)}:host-context(.sky-theme-modern) .sky-expansion-indicator-left{border-radius:1px 0 0 1px;left:var(--sky-override-expansion-indicator-leg-left-left, 2.75px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-right{border-radius:0 1px 1px 0;left:var(--sky-override-expansion-indicator-leg-right-left, 9.25px)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-left{transform:rotate(-45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-up .sky-expansion-indicator-right{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-left{transform:rotate(45deg)}:host-context(.sky-theme-modern) .sky-expansion-indicator-down .sky-expansion-indicator-right{transform:rotate(-45deg)}\n"] }]
338
338
  }], propDecorators: { direction: [{
339
339
  type: Input
340
340
  }] } });
@@ -408,11 +408,11 @@ class SkyChevronComponent {
408
408
  }
409
409
  }
410
410
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyChevronComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
411
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.1", type: SkyChevronComponent, isStandalone: false, selector: "sky-chevron", inputs: { ariaControls: "ariaControls", ariaLabel: "ariaLabel", direction: "direction", disabled: "disabled" }, outputs: { directionChange: "directionChange" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n", styles: [".sky-chevron:not(.sky-theme-modern *){border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;padding:0;overflow:hidden;width:24px;cursor:pointer;position:relative;vertical-align:top}.sky-chevron:not(.sky-theme-modern *):hover .sky-chevron-part{border-color:#979ba2}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-chevron{--sky-override-chevron-line-height: calc(20 / 14);--sky-override-chevron-size: 24px;padding:0}:host-context(.sky-theme-modern) .sky-chevron{border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-chevron-size, \"\");line-height:var(--sky-override-chevron-line-height, 1);margin:0;overflow:hidden;width:var(--sky-override-chevron-size, \"\");cursor:pointer;position:relative;vertical-align:top}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "component", type: SkyExpansionIndicatorComponent, selector: "sky-expansion-indicator", inputs: ["direction"] }] }); }
411
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.1", type: SkyChevronComponent, isStandalone: false, selector: "sky-chevron", inputs: { ariaControls: "ariaControls", ariaLabel: "ariaLabel", direction: "direction", disabled: "disabled" }, outputs: { directionChange: "directionChange" }, hostDirectives: [{ directive: i1$1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n", styles: [".sky-chevron:not(.sky-theme-modern *){border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;padding:0;overflow:hidden;width:24px;cursor:pointer;position:relative;vertical-align:top}.sky-chevron:not(.sky-theme-modern *):hover .sky-chevron-part{border-color:#979ba2}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-chevron{--sky-override-chevron-line-height: calc(20 / 14);--sky-override-chevron-size: 24px;padding:0}:host-context(.sky-theme-modern) .sky-chevron{border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-chevron-size, \"\");line-height:var(--sky-override-chevron-line-height, 1);margin:0;overflow:hidden;width:var(--sky-override-chevron-size, \"\");cursor:pointer;position:relative;vertical-align:top}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "component", type: SkyExpansionIndicatorComponent, selector: "sky-expansion-indicator", inputs: ["direction"] }] }); }
412
412
  }
413
413
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyChevronComponent, decorators: [{
414
414
  type: Component,
415
- args: [{ selector: 'sky-chevron', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n", styles: [".sky-chevron:not(.sky-theme-modern *){border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;padding:0;overflow:hidden;width:24px;cursor:pointer;position:relative;vertical-align:top}.sky-chevron:not(.sky-theme-modern *):hover .sky-chevron-part{border-color:#979ba2}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-chevron{--sky-override-chevron-line-height: calc(20 / 14);--sky-override-chevron-size: 24px;padding:0}:host-context(.sky-theme-modern) .sky-chevron{border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-chevron-size, \"\");line-height:var(--sky-override-chevron-line-height, 1);margin:0;overflow:hidden;width:var(--sky-override-chevron-size, \"\");cursor:pointer;position:relative;vertical-align:top}\n"] }]
415
+ args: [{ selector: 'sky-chevron', hostDirectives: [SkyThemeComponentClassDirective], standalone: false, template: "<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n", styles: [".sky-chevron:not(.sky-theme-modern *){border:none;background-color:transparent;flex-shrink:0;height:24px;margin:0;padding:0;overflow:hidden;width:24px;cursor:pointer;position:relative;vertical-align:top}.sky-chevron:not(.sky-theme-modern *):hover .sky-chevron-part{border-color:#979ba2}\n", ":host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-chevron{--sky-override-chevron-line-height: calc(20 / 14);--sky-override-chevron-size: 24px;padding:0}:host-context(.sky-theme-modern) .sky-chevron{border:none;background-color:transparent;flex-shrink:0;height:var(--sky-override-chevron-size, \"\");line-height:var(--sky-override-chevron-line-height, 1);margin:0;overflow:hidden;width:var(--sky-override-chevron-size, \"\");cursor:pointer;position:relative;vertical-align:top}\n"] }]
416
416
  }], propDecorators: { ariaControls: [{
417
417
  type: Input
418
418
  }], ariaLabel: [{
@@ -694,11 +694,11 @@ class SkyLabelComponent {
694
694
  }
695
695
  }
696
696
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
697
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyLabelComponent, isStandalone: false, selector: "sky-label", inputs: { labelType: "labelType", descriptionType: "descriptionType", customDescription: "customDescription" }, ngImport: i0, template: "<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n", styles: [".sky-label:not(.sky-theme-modern *){--sky-override-label-align-items: initial;--sky-override-label-border-radius-pill: 10rem;--sky-override-label-color-background-container-danger: var( --sky-background-color-danger );--sky-override-label-color-background-container-info: var( --sky-background-color-info );--sky-override-label-color-background-container-success: var( --sky-background-color-success );--sky-override-label-color-background-container-warning: var( --sky-background-color-warning );--sky-override-label-display: inline;--sky-override-label-icon-modern-display: none;--sky-override-label-inner-icon-path-color-danger: var( --sky-background-color-danger );--sky-override-label-inner-icon-path-color-info: var( --sky-background-color-info );--sky-override-label-inner-icon-path-color-success: var( --sky-background-color-success );--sky-override-label-inner-icon-path-color-warning: var( --sky-background-color-warning );--sky-override-label-line-height: 2.2;--sky-override-label-margin: 0 3px;--sky-override-label-padding: .3em .6em .3em .6em;--sky-override-label-text-padding-left: var(--sky-padding-half)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label{--sky-override-sky-icon-svg-size-s: 21px;--sky-override-label-line-height: 1;--sky-override-label-margin: 0 3px;--sky-override-label-inner-icon-path-color-info: var(--modern-color-gray-105)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-danger,:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-warning{--sky-override-label-padding-left: var(--modern-size-9)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-info,:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-success{--sky-override-label-padding-left: var(--modern-size-6)}:host-context(.sky-theme-modern) .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-theme-modern .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}.sky-theme-modern .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}.sky-theme-modern .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}.sky-theme-modern .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-label{color:var(--sky-text-color-default);display:var(--sky-override-label-display, inline-block);align-items:var(--sky-override-label-align-items, center);border-radius:var(--sky-override-label-border-radius-pill, var(--sky-border-radius-pill));line-height:var(--sky-override-label-line-height, unset);margin:var(--sky-override-label-margin, unset);white-space:nowrap;padding:var(--sky-override-label-padding, var(--sky-space-inset-pillarbox-1_4-top-s) var(--sky-space-inset-pillarbox-1_4-right-s) var(--sky-space-inset-pillarbox-1_4-bottom-s) var(--sky-override-label-padding-left, var(--sky-space-inset-pillarbox-1_4-left-s)))}.sky-label-success{background-color:var(--sky-override-label-color-background-container-success, var(--sky-color-background-container-success));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-success, var(--sky-color-icon-default) )}.sky-label-info{background-color:var(--sky-override-label-color-background-container-info, var(--sky-color-background-container-info));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-info, var(--sky-color-icon-inverse) )}.sky-label-warning{background-color:var(--sky-override-label-color-background-container-warning, var(--sky-color-background-container-warning));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-warning, var(--sky-color-icon-default) )}.sky-label-danger{background-color:var(--sky-override-label-color-background-container-danger, var(--sky-color-background-container-danger));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-danger, var(--sky-color-icon-inverse) )}.sky-label-text{display:inline-block;padding-left:var(--sky-override-label-text-padding-left, var(--sky-space-gap-icon-s))}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }] }); }
697
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyLabelComponent, isStandalone: false, selector: "sky-label", inputs: { labelType: "labelType", descriptionType: "descriptionType", customDescription: "customDescription" }, ngImport: i0, template: "<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n", styles: [".sky-label:not(.sky-theme-modern *){--sky-override-label-align-items: initial;--sky-override-label-border-radius-pill: 10rem;--sky-override-label-color-background-container-danger: var( --sky-background-color-danger );--sky-override-label-color-background-container-info: var( --sky-background-color-info );--sky-override-label-color-background-container-success: var( --sky-background-color-success );--sky-override-label-color-background-container-warning: var( --sky-background-color-warning );--sky-override-label-display: inline;--sky-override-label-icon-modern-display: none;--sky-override-label-inner-icon-path-color-danger: var( --sky-background-color-danger );--sky-override-label-inner-icon-path-color-info: var( --sky-background-color-info );--sky-override-label-inner-icon-path-color-success: var( --sky-background-color-success );--sky-override-label-inner-icon-path-color-warning: var( --sky-background-color-warning );--sky-override-label-line-height: 2.2;--sky-override-label-margin: 0 3px;--sky-override-label-padding: .3em .6em .3em .6em;--sky-override-label-text-padding-left: var(--sky-padding-half)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label{--sky-override-sky-icon-svg-size-s: 21px;--sky-override-label-line-height: 1;--sky-override-label-margin: 0 3px;--sky-override-label-inner-icon-path-color-info: var(--modern-color-gray-105)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-danger,:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-warning{--sky-override-label-padding-left: var(--modern-size-9)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-info,:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-success{--sky-override-label-padding-left: var(--modern-size-6)}:host-context(.sky-theme-modern) .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-theme-modern .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}.sky-theme-modern .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}.sky-theme-modern .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}.sky-theme-modern .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-label{color:var(--sky-text-color-default);display:var(--sky-override-label-display, inline-block);align-items:var(--sky-override-label-align-items, center);border-radius:var(--sky-override-label-border-radius-pill, var(--sky-border-radius-pill));line-height:var(--sky-override-label-line-height, unset);margin:var(--sky-override-label-margin, unset);white-space:nowrap;padding:var(--sky-override-label-padding, var(--sky-space-inset-pillarbox-1_4-top-s) var(--sky-space-inset-pillarbox-1_4-right-s) var(--sky-space-inset-pillarbox-1_4-bottom-s) var(--sky-override-label-padding-left, var(--sky-space-inset-pillarbox-1_4-left-s)))}.sky-label-success{background-color:var(--sky-override-label-color-background-container-success, var(--sky-color-background-container-success));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-success, var(--sky-color-icon-default) )}.sky-label-info{background-color:var(--sky-override-label-color-background-container-info, var(--sky-color-background-container-info));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-info, var(--sky-color-icon-inverse) )}.sky-label-warning{background-color:var(--sky-override-label-color-background-container-warning, var(--sky-color-background-container-warning));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-warning, var(--sky-color-icon-default) )}.sky-label-danger{background-color:var(--sky-override-label-color-background-container-danger, var(--sky-color-background-container-danger));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-danger, var(--sky-color-icon-inverse) )}.sky-label-text{display:inline-block;padding-left:var(--sky-override-label-text-padding-left, var(--sky-space-gap-icon-s))}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i1$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }] }); }
698
698
  }
699
699
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyLabelComponent, decorators: [{
700
700
  type: Component,
701
- args: [{ selector: 'sky-label', standalone: false, template: "<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n", styles: [".sky-label:not(.sky-theme-modern *){--sky-override-label-align-items: initial;--sky-override-label-border-radius-pill: 10rem;--sky-override-label-color-background-container-danger: var( --sky-background-color-danger );--sky-override-label-color-background-container-info: var( --sky-background-color-info );--sky-override-label-color-background-container-success: var( --sky-background-color-success );--sky-override-label-color-background-container-warning: var( --sky-background-color-warning );--sky-override-label-display: inline;--sky-override-label-icon-modern-display: none;--sky-override-label-inner-icon-path-color-danger: var( --sky-background-color-danger );--sky-override-label-inner-icon-path-color-info: var( --sky-background-color-info );--sky-override-label-inner-icon-path-color-success: var( --sky-background-color-success );--sky-override-label-inner-icon-path-color-warning: var( --sky-background-color-warning );--sky-override-label-line-height: 2.2;--sky-override-label-margin: 0 3px;--sky-override-label-padding: .3em .6em .3em .6em;--sky-override-label-text-padding-left: var(--sky-padding-half)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label{--sky-override-sky-icon-svg-size-s: 21px;--sky-override-label-line-height: 1;--sky-override-label-margin: 0 3px;--sky-override-label-inner-icon-path-color-info: var(--modern-color-gray-105)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-danger,:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-warning{--sky-override-label-padding-left: var(--modern-size-9)}:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-info,:host-context(.sky-theme-modern:not(.sky-theme-brand-blackbaud)) .sky-label.sky-label-success{--sky-override-label-padding-left: var(--modern-size-6)}:host-context(.sky-theme-modern) .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-theme-modern .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}.sky-theme-modern .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}.sky-theme-modern .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}.sky-theme-modern .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-label{color:var(--sky-text-color-default);display:var(--sky-override-label-display, inline-block);align-items:var(--sky-override-label-align-items, center);border-radius:var(--sky-override-label-border-radius-pill, var(--sky-border-radius-pill));line-height:var(--sky-override-label-line-height, unset);margin:var(--sky-override-label-margin, unset);white-space:nowrap;padding:var(--sky-override-label-padding, var(--sky-space-inset-pillarbox-1_4-top-s) var(--sky-space-inset-pillarbox-1_4-right-s) var(--sky-space-inset-pillarbox-1_4-bottom-s) var(--sky-override-label-padding-left, var(--sky-space-inset-pillarbox-1_4-left-s)))}.sky-label-success{background-color:var(--sky-override-label-color-background-container-success, var(--sky-color-background-container-success));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-success, var(--sky-color-icon-default) )}.sky-label-info{background-color:var(--sky-override-label-color-background-container-info, var(--sky-color-background-container-info));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-info, var(--sky-color-icon-inverse) )}.sky-label-warning{background-color:var(--sky-override-label-color-background-container-warning, var(--sky-color-background-container-warning));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-warning, var(--sky-color-icon-default) )}.sky-label-danger{background-color:var(--sky-override-label-color-background-container-danger, var(--sky-color-background-container-danger));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-danger, var(--sky-color-icon-inverse) )}.sky-label-text{display:inline-block;padding-left:var(--sky-override-label-text-padding-left, var(--sky-space-gap-icon-s))}\n"] }]
701
+ args: [{ selector: 'sky-label', standalone: false, template: "<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n", styles: [".sky-label:not(.sky-theme-modern *){--sky-override-label-align-items: initial;--sky-override-label-border-radius-pill: 10rem;--sky-override-label-color-background-container-danger: var( --sky-background-color-danger );--sky-override-label-color-background-container-info: var( --sky-background-color-info );--sky-override-label-color-background-container-success: var( --sky-background-color-success );--sky-override-label-color-background-container-warning: var( --sky-background-color-warning );--sky-override-label-display: inline;--sky-override-label-icon-modern-display: none;--sky-override-label-inner-icon-path-color-danger: var( --sky-background-color-danger );--sky-override-label-inner-icon-path-color-info: var( --sky-background-color-info );--sky-override-label-inner-icon-path-color-success: var( --sky-background-color-success );--sky-override-label-inner-icon-path-color-warning: var( --sky-background-color-warning );--sky-override-label-line-height: 2.2;--sky-override-label-margin: 0 3px;--sky-override-label-padding: .3em .6em .3em .6em;--sky-override-label-text-padding-left: var(--sky-padding-half)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label{--sky-override-sky-icon-svg-size-s: 21px;--sky-override-label-line-height: 1;--sky-override-label-margin: 0 3px;--sky-override-label-inner-icon-path-color-info: var(--modern-color-gray-105)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-danger,:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-warning{--sky-override-label-padding-left: var(--modern-size-9)}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-info,:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .sky-label.sky-label-success{--sky-override-label-padding-left: var(--modern-size-6)}:host-context(.sky-theme-modern) .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}:host-context(.sky-theme-modern) .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}:host-context(.sky-theme-modern) .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}:host-context(.sky-theme-modern) .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-theme-modern .sky-label-info .sky-label-icon{color:var(--sky-color-icon-info)}.sky-theme-modern .sky-label-success .sky-label-icon{color:var(--sky-color-icon-success)}.sky-theme-modern .sky-label-warning .sky-label-icon{color:var(--sky-color-icon-warning)}.sky-theme-modern .sky-label-danger .sky-label-icon{color:var(--sky-color-icon-danger)}.sky-label{color:var(--sky-text-color-default);display:var(--sky-override-label-display, inline-block);align-items:var(--sky-override-label-align-items, center);border-radius:var(--sky-override-label-border-radius-pill, var(--sky-border-radius-pill));line-height:var(--sky-override-label-line-height, unset);margin:var(--sky-override-label-margin, unset);white-space:nowrap;padding:var(--sky-override-label-padding, var(--sky-space-inset-pillarbox-1_4-top-s) var(--sky-space-inset-pillarbox-1_4-right-s) var(--sky-space-inset-pillarbox-1_4-bottom-s) var(--sky-override-label-padding-left, var(--sky-space-inset-pillarbox-1_4-left-s)))}.sky-label-success{background-color:var(--sky-override-label-color-background-container-success, var(--sky-color-background-container-success));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-success, var(--sky-color-icon-default) )}.sky-label-info{background-color:var(--sky-override-label-color-background-container-info, var(--sky-color-background-container-info));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-info, var(--sky-color-icon-inverse) )}.sky-label-warning{background-color:var(--sky-override-label-color-background-container-warning, var(--sky-color-background-container-warning));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-warning, var(--sky-color-icon-default) )}.sky-label-danger{background-color:var(--sky-override-label-color-background-container-danger, var(--sky-color-background-container-danger));--sky-icon-svg-path-2-color-input: var( --sky-override-label-inner-icon-path-color-danger, var(--sky-color-icon-inverse) )}.sky-label-text{display:inline-block;padding-left:var(--sky-override-label-text-padding-left, var(--sky-space-gap-icon-s))}\n"] }]
702
702
  }], propDecorators: { labelType: [{
703
703
  type: Input
704
704
  }], descriptionType: [{
@@ -812,11 +812,11 @@ class SkyStatusIndicatorComponent {
812
812
  }
813
813
  }
814
814
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyStatusIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
815
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyStatusIndicatorComponent, isStandalone: false, 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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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: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-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-svg-path-2-color-input: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-svg-path-2-color-input: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-svg-path-2-color-input: 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", "iconSize"] }, { kind: "directive", type: i3$1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i3$1.λ4, selector: "[skyTrim]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
815
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyStatusIndicatorComponent, isStandalone: false, 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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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:not(.sky-theme-brand-base)) .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-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-svg-path-2-color-input: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-svg-path-2-color-input: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-svg-path-2-color-input: 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", "iconSize"] }, { kind: "directive", type: i3$1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i3$1.λ4, selector: "[skyTrim]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
816
816
  }
817
817
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyStatusIndicatorComponent, decorators: [{
818
818
  type: Component,
819
- args: [{ selector: 'sky-status-indicator', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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: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-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-svg-path-2-color-input: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-svg-path-2-color-input: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-svg-path-2-color-input: var( --sky-override-status-indicator-info-exclamation-path-color, var(--sky-color-icon-inverse) )}\n"] }]
819
+ args: [{ selector: 'sky-status-indicator', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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:not(.sky-theme-brand-base)) .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-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-svg-path-2-color-input: var(--sky-color-icon-default)}.sky-status-indicator-icon.sky-status-indicator-icon-danger{--sky-icon-svg-path-2-color-input: var(--sky-color-icon-inverse)}.sky-status-indicator-icon.sky-status-indicator-icon-info{--sky-icon-svg-path-2-color-input: var( --sky-override-status-indicator-info-exclamation-path-color, var(--sky-color-icon-inverse) )}\n"] }]
820
820
  }], propDecorators: { indicatorType: [{
821
821
  type: Input
822
822
  }], descriptionType: [{
@@ -1115,11 +1115,11 @@ class SkyTokenComponent {
1115
1115
  });
1116
1116
  }
1117
1117
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyTokenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1118
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyTokenComponent, isStandalone: false, 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\" iconName=\"dismiss\" />\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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--sky-override-token-hover-border: 1px solid rgb(0, 141.9087136929, 190);--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: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i3$1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i3$1.SkyScreenReaderLabelDirective, selector: "[skyScreenReaderLabel]", inputs: ["createLabel"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: SkyTokenComponent, isStandalone: false, 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\" iconName=\"dismiss\" />\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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--sky-override-token-hover-border: 1px solid rgb(0, 141.9087136929, 190);--sky-override-token-hover-box-shadow: none;--sky-override-token-padding: 0}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .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: i3.λ1, selector: "sky-icon", inputs: ["icon", "iconName", "iconType", "size", "fixedWidth", "variant", "iconSize"] }, { kind: "directive", type: i3$1.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "directive", type: i3$1.SkyScreenReaderLabelDirective, selector: "[skyScreenReaderLabel]", inputs: ["createLabel"] }, { kind: "pipe", type: i4.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1119
1119
  }
1120
1120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: SkyTokenComponent, decorators: [{
1121
1121
  type: Component,
1122
- args: [{ selector: 'sky-token', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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\" iconName=\"dismiss\" />\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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--sky-override-token-hover-border: 1px solid rgb(0, 141.9087136929, 190);--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"] }]
1122
+ args: [{ selector: 'sky-token', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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\" iconName=\"dismiss\" />\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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--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: rgb(145.0909090909, 214.2272727273, 247.9090909091);--sky-override-token-hover-border: 1px solid rgb(0, 141.9087136929, 190);--sky-override-token-hover-box-shadow: none;--sky-override-token-padding: 0}:host-context(.sky-theme-modern:not(.sky-theme-brand-base)) .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"] }]
1123
1123
  }], propDecorators: { disabled: [{
1124
1124
  type: Input
1125
1125
  }], ariaLabel: [{
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-indicators.mjs","sources":["../../../../../libs/components/indicators/src/lib/modules/shared/sky-indicators-resources.module.ts","../../../../../libs/components/indicators/src/lib/modules/shared/indicator-icon-utility.ts","../../../../../libs/components/indicators/src/lib/modules/alert/alert.component.ts","../../../../../libs/components/indicators/src/lib/modules/alert/alert.component.html","../../../../../libs/components/indicators/src/lib/modules/alert/alert.module.ts","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.component.ts","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.component.html","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.module.ts","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.component.ts","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.component.html","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.module.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration-resolver.service.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.component.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.component.html","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.module.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info-label.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info-value.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.component.html","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.module.ts","../../../../../libs/components/indicators/src/lib/modules/label/label.component.ts","../../../../../libs/components/indicators/src/lib/modules/label/label.component.html","../../../../../libs/components/indicators/src/lib/modules/label/label.module.ts","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.component.ts","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.component.html","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.module.ts","../../../../../libs/components/indicators/src/lib/modules/text-highlight/text-highlight.directive.ts","../../../../../libs/components/indicators/src/lib/modules/text-highlight/text-highlight.module.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/token.component.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/token.component.html","../../../../../libs/components/indicators/src/lib/modules/tokens/types/tokens-message-type.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.component.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.component.html","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.module.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-adapter.service.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait.component.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait.component.html","../../../../../libs/components/indicators/src/lib/modules/wait/wait.module.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-page.component.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-page.component.html","../../../../../libs/components/indicators/src/lib/modules/wait/wait.service.ts","../../../../../libs/components/indicators/src/skyux-indicators.ts"],"sourcesContent":["/* istanbul ignore file */\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-indicators' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n skyux_alert_close: { message: 'Close the alert' },\n skyux_alert_sr_attention: { message: 'Attention:' },\n skyux_alert_sr_caution: { message: 'Caution:' },\n skyux_alert_sr_completed: { message: 'Completed:' },\n skyux_alert_sr_danger: { message: 'Danger:' },\n skyux_alert_sr_error: { message: 'Error:' },\n skyux_alert_sr_important_info: { message: 'Important information:' },\n skyux_alert_sr_important_warning: { message: 'Important warning:' },\n skyux_alert_sr_success: { message: 'Success:' },\n skyux_alert_sr_warning: { message: 'Warning:' },\n skyux_help_inline_button_title: { message: 'Show help content' },\n skyux_label_sr_attention: { message: 'Attention:' },\n skyux_label_sr_caution: { message: 'Caution:' },\n skyux_label_sr_completed: { message: 'Completed:' },\n skyux_label_sr_danger: { message: 'Danger:' },\n skyux_label_sr_error: { message: 'Error:' },\n skyux_label_sr_important_info: { message: 'Important information:' },\n skyux_label_sr_important_warning: { message: 'Important warning:' },\n skyux_label_sr_success: { message: 'Success:' },\n skyux_label_sr_warning: { message: 'Warning:' },\n skyux_status_indicator_sr_attention: { message: 'Attention:' },\n skyux_status_indicator_sr_caution: { message: 'Caution:' },\n skyux_status_indicator_sr_completed: { message: 'Completed:' },\n skyux_status_indicator_sr_danger: { message: 'Danger:' },\n skyux_status_indicator_sr_error: { message: 'Error:' },\n skyux_status_indicator_sr_important_info: {\n message: 'Important information:',\n },\n skyux_status_indicator_sr_important_warning: {\n message: 'Important warning:',\n },\n skyux_status_indicator_sr_success: { message: 'Success:' },\n skyux_status_indicator_sr_warning: { message: 'Warning:' },\n skyux_tokens_dismiss_button_default_label: { message: 'Remove ' },\n skyux_tokens_dismiss_button_title: { message: 'Remove item' },\n skyux_tokens_token_dismissed: { message: '{0} removed' },\n skyux_wait_aria_alt_text: { message: 'Loading.' },\n skyux_wait_blocking_aria_alt_text: { message: 'Loading. Please wait.' },\n skyux_wait_page_aria_alt_text: { message: 'Page loading.' },\n skyux_wait_page_blocking_aria_alt_text: {\n message: 'Page loading. Please wait.',\n },\n skyux_wait_screen_reader_completed_text: { message: 'Loading complete.' },\n skyux_wait_page_screen_reader_completed_text: {\n message: 'Page loading complete.',\n },\n },\n 'FR-CA': {\n skyux_alert_close: { message: 'Fermer l’alerte' },\n skyux_alert_sr_attention: { message: 'Attention :' },\n skyux_alert_sr_caution: { message: 'Mise en garde :' },\n skyux_alert_sr_completed: { message: 'Terminé :' },\n skyux_alert_sr_danger: { message: 'Danger :' },\n skyux_alert_sr_error: { message: 'Erreur :' },\n skyux_alert_sr_important_info: { message: 'Information importante :' },\n skyux_alert_sr_important_warning: { message: 'Avertissement important :' },\n skyux_alert_sr_success: { message: 'Réussi :' },\n skyux_alert_sr_warning: { message: 'Avertissement :' },\n skyux_help_inline_button_title: {\n message: 'Afficher le contenu de l’aide',\n },\n skyux_label_sr_attention: { message: 'Attention :' },\n skyux_label_sr_caution: { message: 'Mise en garde :' },\n skyux_label_sr_completed: { message: 'Terminé :' },\n skyux_label_sr_danger: { message: 'Danger :' },\n skyux_label_sr_error: { message: 'Erreur :' },\n skyux_label_sr_important_info: { message: 'Information importante :' },\n skyux_label_sr_important_warning: { message: 'Avertissement important :' },\n skyux_label_sr_success: { message: 'Réussi :' },\n skyux_label_sr_warning: { message: 'Avertissement :' },\n skyux_status_indicator_sr_attention: { message: 'Attention :' },\n skyux_status_indicator_sr_caution: { message: 'Mise en garde :' },\n skyux_status_indicator_sr_completed: { message: 'Terminé :' },\n skyux_status_indicator_sr_danger: { message: 'Danger :' },\n skyux_status_indicator_sr_error: { message: 'Erreur :' },\n skyux_status_indicator_sr_important_info: {\n message: 'Information importante :',\n },\n skyux_status_indicator_sr_important_warning: {\n message: 'Avertissement important :',\n },\n skyux_status_indicator_sr_success: { message: 'Réussi :' },\n skyux_status_indicator_sr_warning: { message: 'Avertissement :' },\n skyux_tokens_dismiss_button_default_label: { message: 'Retirer ' },\n skyux_tokens_dismiss_button_title: { message: 'Retirer l’article' },\n skyux_tokens_token_dismissed: { message: '{0} retiré' },\n skyux_wait_aria_alt_text: { message: 'Chargement en cours.' },\n skyux_wait_blocking_aria_alt_text: {\n message: 'Chargement en cours. Veuillez patienter.',\n },\n skyux_wait_page_aria_alt_text: {\n message: 'Chargement de la page en cours.',\n },\n skyux_wait_page_blocking_aria_alt_text: {\n message: 'Chargement de la page en cours. Veuillez patienter.',\n },\n skyux_wait_screen_reader_completed_text: { message: 'Chargement terminé.' },\n skyux_wait_page_screen_reader_completed_text: {\n message: 'Chargement de la page terminé.',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyIndicatorsResourcesModule {}\n","import { SkyIndicatorIconType } from './indicator-icon-type';\n\n/**\n * @internal\n */\nexport class SkyIndicatorIconUtility {\n public static getIconNameForType(\n indicatorType: SkyIndicatorIconType,\n ): string {\n let icon: string;\n\n switch (indicatorType) {\n case 'danger':\n case 'warning':\n icon = 'sky-warning';\n break;\n case 'info':\n icon = 'sky-info';\n break;\n case 'success':\n icon = 'sky-success';\n break;\n }\n\n return icon;\n }\n}\n","import {\n AfterViewChecked,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n inject,\n} from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\nimport { Subscription } from 'rxjs';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconType } from '../shared/indicator-icon-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nconst ALERT_TYPE_DEFAULT = 'warning';\n\n@Component({\n selector: 'sky-alert',\n styleUrls: [\n './alert.default.component.scss',\n './alert.modern.component.scss',\n ],\n templateUrl: './alert.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyAlertComponent implements AfterViewChecked, OnInit, OnDestroy {\n /**\n * The style for the alert, which determines the icon and background color.\n * The valid options are `danger`, `info`, `success`, and `warning`.\n * @default \"warning\"\n */\n @Input()\n public set alertType(value: SkyIndicatorIconType | undefined) {\n if (value !== this.alertTypeOrDefault) {\n this.alertTypeOrDefault = value || ALERT_TYPE_DEFAULT;\n this.#updateAlertIcon();\n }\n }\n\n /**\n * Whether to include a close button for users to dismiss the alert.\n * @default false\n */\n @Input()\n public closeable: boolean | undefined;\n\n /**\n * Whether the alert is closed.\n * @default false\n */\n @Input()\n public closed: boolean | undefined;\n\n /**\n * The predefined text to be read by screen readers for users who cannot see the alert icon.\n * This property is optional but will be required in future versions of SKY UX.\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n /**\n * Fires when users close the alert.\n */\n @Output()\n public closedChange = new EventEmitter<boolean>();\n\n public iconName: string | undefined;\n\n public alertTypeOrDefault: SkyIndicatorIconType = ALERT_TYPE_DEFAULT;\n\n public descriptionComputed: string | undefined;\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n\n #_customDescription: string | undefined;\n\n #descriptionTypeResourceSubscription: Subscription | undefined;\n #descriptionTypeWarned: boolean | undefined;\n\n #resources = inject(SkyLibResourcesService);\n #logSvc = inject(SkyLogService);\n\n public ngOnInit(): void {\n this.#updateAlertIcon();\n }\n\n public ngAfterViewChecked(): void {\n if (!this.descriptionType && !this.#descriptionTypeWarned) {\n this.#logSvc.deprecated('SkyAlertComponent without `descriptionType`', {\n deprecationMajorVersion: 8,\n replacementRecommendation:\n 'Always specify a `descriptionType` property.',\n });\n\n this.#descriptionTypeWarned = true;\n }\n }\n\n public ngOnDestroy(): void {\n this.#unsubscribe();\n }\n\n public close(): void {\n this.closed = true;\n this.closedChange.emit(true);\n }\n\n #updateAlertIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.alertTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n this.#unsubscribe();\n\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = undefined;\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#descriptionTypeResourceSubscription = this.#resources\n .getString(\n 'skyux_alert_sr_' + this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n\n #unsubscribe(): void {\n if (this.#descriptionTypeResourceSubscription) {\n this.#descriptionTypeResourceSubscription.unsubscribe();\n this.#descriptionTypeResourceSubscription = undefined;\n }\n }\n}\n","<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyAlertComponent } from './alert.component';\n\n@NgModule({\n declarations: [SkyAlertComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n ],\n exports: [SkyAlertComponent],\n})\nexport class SkyAlertModule {}\n","import { Component, Input } from '@angular/core';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\n/**\n * Displays a chevron icon.\n * @internal\n */\n@Component({\n selector: 'sky-expansion-indicator',\n styleUrls: [\n './expansion-indicator.default.component.scss',\n './expansion-indicator.modern.component.scss',\n ],\n templateUrl: './expansion-indicator.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyExpansionIndicatorComponent {\n /**\n * The direction that the chevron points, which can be up or down.\n */\n @Input()\n public set direction(value: string | undefined) {\n /* istanbul ignore else */\n if (value !== this.directionOrDefault) {\n this.directionOrDefault = value ? value : 'up';\n }\n }\n\n public directionOrDefault = 'up';\n}\n","<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyExpansionIndicatorComponent } from './expansion-indicator.component';\n\n@NgModule({\n declarations: [SkyExpansionIndicatorComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyExpansionIndicatorComponent],\n})\nexport class SkyExpansionIndicatorModule {}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\n/**\n * Creates an accessible button that wraps the chevron icon.\n * @internal\n */\n@Component({\n selector: 'sky-chevron',\n styleUrls: [\n './chevron.default.component.scss',\n './chevron.modern.component.scss',\n ],\n templateUrl: './chevron.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyChevronComponent {\n /**\n * The element whose contents are controlled by the chevron.\n * This sets the chevron's `aria-controls` attribute\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-controls` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-controls).\n */\n @Input()\n public ariaControls: string | undefined;\n\n /**\n * The ARIA label for the chevron. This sets the chevron's `aria-label` attribute to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label).\n */\n @Input()\n public ariaLabel: string | undefined;\n\n /**\n * The direction that the chevron points, which can be up or down.\n */\n @Input()\n public set direction(value: string | undefined) {\n /* istanbul ignore else */\n if (value !== this.directionOrDefault) {\n this.directionOrDefault = value ? value : 'up';\n /* istanbul ignore else */\n if (this.directionOrDefault === 'up') {\n this.ariaExpanded = true;\n } else if (this.directionOrDefault === 'down') {\n this.ariaExpanded = false;\n }\n }\n }\n\n /**\n * Whether to disable the chevron button.\n */\n @Input()\n public disabled = false;\n\n /**\n * Fires when the direction of the chevron changes.\n */\n @Output()\n public directionChange = new EventEmitter<string>();\n\n public ariaExpanded = true;\n\n public directionOrDefault = 'up';\n\n public chevronClick(event: Event): void {\n event.stopPropagation();\n this.direction = this.directionOrDefault === 'up' ? 'down' : 'up';\n this.directionChange.emit(this.directionOrDefault);\n }\n\n public chevronKeyDown(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (event.key) {\n switch (event.key.toLowerCase()) {\n case ' ':\n case 'enter':\n this.direction = this.directionOrDefault === 'up' ? 'down' : 'up';\n this.directionChange.emit(this.directionOrDefault);\n event.preventDefault();\n event.stopPropagation();\n break;\n default:\n break;\n }\n }\n }\n}\n","<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyExpansionIndicatorModule } from '../expansion-indicator/expansion-indicator.module';\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyChevronComponent } from './chevron.component';\n\n/**\n * @internal\n */\n@NgModule({\n declarations: [SkyChevronComponent],\n imports: [\n CommonModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n SkyExpansionIndicatorModule,\n ],\n exports: [SkyChevronComponent],\n})\nexport class SkyChevronModule {}\n","import { Injectable } from '@angular/core';\n\n/**\n * Resolves information about spot illustrations.\n */\n@Injectable()\nexport abstract class SkyIllustrationResolverService {\n /**\n * Resolves a URL for the specified illustration name.\n */\n public abstract resolveUrl(name: string): Promise<string>;\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\nimport { catchError, from, of, switchMap } from 'rxjs';\n\nimport { SkyIllustrationResolverService } from './illustration-resolver.service';\nimport { SkyIllustrationSize } from './illustration-size';\n\nconst pixelSizes: Record<SkyIllustrationSize, number> = {\n sm: 48,\n md: 64,\n lg: 80,\n xl: 96,\n};\n\n/**\n * Displays a spot illustration at the specified size.\n */\n@Component({\n selector: 'sky-illustration',\n imports: [CommonModule],\n templateUrl: './illustration.component.html',\n styleUrls: [\n './illustration.default.component.scss',\n './illustration.modern.component.scss',\n ],\n hostDirectives: [SkyThemeComponentClassDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyIllustrationComponent {\n readonly #resolverSvc = inject(SkyIllustrationResolverService, {\n optional: true,\n });\n\n /**\n * The name of the illustration to display.\n * @required\n */\n public readonly name = input.required<string>();\n\n /**\n * The size of the illustration.\n * @required\n */\n public readonly size = input.required<SkyIllustrationSize>();\n\n protected readonly url = toSignal(\n toObservable(this.name).pipe(\n switchMap((name) =>\n this.#resolverSvc ? from(this.#resolverSvc.resolveUrl(name)) : of(''),\n ),\n catchError(() => of('')),\n ),\n );\n\n protected readonly pixelSize = computed(() => pixelSizes[this.size()]);\n}\n","<img\n alt=\"\"\n class=\"sky-illustration-img\"\n loading=\"lazy\"\n [attr.data-sky-illustration-name]=\"name()\"\n [height]=\"pixelSize()\"\n [ngClass]=\"{\n 'sky-illustration-img-loaded': !!url()\n }\"\n [src]=\"url()\"\n [width]=\"pixelSize()\"\n/>\n","import { NgModule } from '@angular/core';\n\nimport { SkyIllustrationComponent } from './illustration.component';\n\n@NgModule({\n imports: [SkyIllustrationComponent],\n exports: [SkyIllustrationComponent],\n})\nexport class SkyIllustrationModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a label to display in smaller text under or beside the value.\n * To display a help button beside the label, include a help button element, such as `sky-help-inline`,\n * in the `sky-key-info` element and a `sky-control-help` CSS class on that help button element.\n * @required\n */\n@Component({\n selector: 'sky-key-info-label',\n template: '<span skyTrim><ng-content /></span>',\n standalone: false,\n})\nexport class SkyKeyInfoLabelComponent {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a value to display in larger, bold text.\n * @required\n */\n@Component({\n selector: 'sky-key-info-value',\n template: '<ng-content />',\n standalone: false,\n})\nexport class SkyKeyInfoValueComponent {}\n","import { Component, Input, TemplateRef } from '@angular/core';\n\nimport { SkyKeyInfoLayoutType } from './key-info-layout-type';\n\n@Component({\n selector: 'sky-key-info',\n templateUrl: './key-info.component.html',\n styleUrls: ['./key-info.component.scss'],\n standalone: false,\n})\nexport class SkyKeyInfoComponent {\n /**\n * A help key that identifies the global help content to display. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the key info. Clicking the button invokes global help as configured by the application.\n */\n @Input()\n public helpKey: string | undefined;\n\n /**\n * The content of the help popover. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the key info. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title.\n */\n @Input()\n public helpPopoverContent: string | TemplateRef<unknown> | undefined;\n\n /**\n * The title of the help popover. This property only applies when `helpPopoverContent` is\n * also specified.\n */\n @Input()\n public helpPopoverTitle: string | undefined;\n\n /**\n * The layout for the key info. The vertical layout places the label under the\n * value, while the horizontal layout places the label beside the value.\n * @default \"vertical\"\n */\n @Input()\n public layout: SkyKeyInfoLayoutType | undefined = 'vertical';\n}\n","<div\n class=\"sky-key-info\"\n [ngClass]=\"{\n 'sky-key-info-horizontal': layout === 'horizontal'\n }\"\n>\n <div class=\"sky-key-info-value sky-font-display-3\">\n <ng-content select=\"sky-key-info-value\" />\n </div>\n <div class=\"sky-key-info-label sky-field-label sky-font-data-label\">\n <span #label=\"skyId\" skyId><ng-content select=\"sky-key-info-label\" /></span\n ><span class=\"sky-control-help-container\">\n @if (helpPopoverContent || helpKey) {\n <sky-help-inline\n [labelledBy]=\"label.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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\nimport { SkyKeyInfoLabelComponent } from './key-info-label.component';\nimport { SkyKeyInfoValueComponent } from './key-info-value.component';\nimport { SkyKeyInfoComponent } from './key-info.component';\n\n@NgModule({\n declarations: [\n SkyKeyInfoComponent,\n SkyKeyInfoLabelComponent,\n SkyKeyInfoValueComponent,\n ],\n imports: [CommonModule, SkyTrimModule, SkyHelpInlineModule, SkyIdModule],\n exports: [\n SkyKeyInfoComponent,\n SkyKeyInfoLabelComponent,\n SkyKeyInfoValueComponent,\n ],\n})\nexport class SkyKeyInfoModule {}\n","import {\n AfterViewChecked,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Subscription } from 'rxjs/internal/Subscription';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nimport { SkyLabelType } from './label-type';\n\nconst LABEL_TYPE_DEFAULT: SkyLabelType = 'info';\n\n@Component({\n selector: 'sky-label',\n templateUrl: './label.component.html',\n styleUrls: ['./label.component.scss'],\n standalone: false,\n})\nexport class SkyLabelComponent implements AfterViewChecked, OnDestroy, OnInit {\n /**\n * The type of label to display.\n * @default 'info'\n */\n @Input()\n public set labelType(value: SkyLabelType | undefined) {\n this.labelTypeOrDefault = value === undefined ? LABEL_TYPE_DEFAULT : value;\n\n this.#updateIcon();\n }\n\n /**\n * The predefined text to be read by screen readers for users who cannot see the indicator icon.\n * This property is optional but will be required in future versions of SKY UX.\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n public descriptionComputed: string | undefined;\n\n public iconName: string | undefined;\n\n public labelTypeOrDefault = LABEL_TYPE_DEFAULT;\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n #_customDescription: string | undefined;\n\n #descriptionTypeResourceSubscription: Subscription | undefined;\n #descriptionTypeWarned: boolean | undefined;\n\n #changeDetector = inject(ChangeDetectorRef);\n #resources = inject(SkyLibResourcesService);\n #logSvc = inject(SkyLogService);\n\n public ngOnInit(): void {\n this.#updateIcon();\n }\n\n public ngAfterViewChecked(): void {\n if (!this.descriptionType && !this.#descriptionTypeWarned) {\n this.#logSvc.deprecated('SkyLabelComponent without `descriptionType`', {\n deprecationMajorVersion: 8,\n replacementRecommendation:\n 'Always specify a `descriptionType` property.',\n });\n\n this.#descriptionTypeWarned = true;\n }\n }\n\n public ngOnDestroy(): void {\n this.#unsubscribe();\n }\n\n #updateIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.labelTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n this.#unsubscribe();\n\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = undefined;\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#descriptionTypeResourceSubscription = this.#resources\n .getString(\n 'skyux_label_sr_' + this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n this.#changeDetector.markForCheck();\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n\n #unsubscribe(): void {\n if (this.#descriptionTypeResourceSubscription) {\n this.#descriptionTypeResourceSubscription.unsubscribe();\n this.#descriptionTypeResourceSubscription = undefined;\n }\n }\n}\n","<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyLabelComponent } from './label.component';\n\n@NgModule({\n declarations: [SkyLabelComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n ],\n exports: [SkyLabelComponent],\n})\nexport class SkyLabelModule {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n TemplateRef,\n inject,\n} from '@angular/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconType } from '../shared/indicator-icon-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nconst INDICATOR_TYPE_DEFAULT: SkyIndicatorIconType = 'warning';\n/**\n * Displays status text with an icon matching the specified indicator type.\n * To display a help button beside the label, include a help button element, such as\n * `sky-help-inline`, in the `sky-status-indicator` element and a `sky-control-help`\n * CSS class on that help button element.\n */\n@Component({\n selector: 'sky-status-indicator',\n templateUrl: './status-indicator.component.html',\n styleUrls: ['./status-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyStatusIndicatorComponent implements OnInit {\n /**\n * The style for the status indicator, which determines the icon.\n * @default \"warning\"\n */\n @Input()\n public set indicatorType(value: SkyIndicatorIconType) {\n this.indicatorTypeOrDefault =\n value === undefined ? INDICATOR_TYPE_DEFAULT : value;\n\n this.#updateIcon();\n }\n\n /**\n * The predefined text to be read by screen readers for users who\n * cannot see the indicator icon.\n * @required\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n /**\n * The content of the help popover. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the status indicator. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title.\n */\n @Input()\n public helpPopoverContent: string | TemplateRef<unknown> | undefined;\n\n /**\n * The title of the help popover. This property only applies when `helpPopoverContent` is\n * also specified.\n */\n @Input()\n public helpPopoverTitle: string | undefined;\n\n /**\n * A help key that identifies the global help content to display. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the status indicator label. Clicking the button invokes global help as configured by the application.\n */\n @Input()\n public helpKey: string | undefined;\n\n public descriptionComputed: string | undefined;\n\n public iconName: string | undefined;\n\n public indicatorTypeOrDefault: SkyIndicatorIconType = INDICATOR_TYPE_DEFAULT;\n\n #changeDetector = inject(ChangeDetectorRef);\n #resourcesSvc = inject(SkyLibResourcesService);\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n #_customDescription: string | undefined;\n\n public ngOnInit(): void {\n this.#updateIcon();\n }\n\n #updateIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.indicatorTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = '';\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#resourcesSvc\n .getString(\n 'skyux_status_indicator_sr_' +\n this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n this.#changeDetector.markForCheck();\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n}\n","@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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyStatusIndicatorComponent } from './status-indicator.component';\n\n@NgModule({\n declarations: [SkyStatusIndicatorComponent],\n imports: [\n CommonModule,\n SkyHelpInlineModule,\n SkyIconModule,\n SkyIdModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n ],\n exports: [SkyStatusIndicatorComponent],\n})\nexport class SkyStatusIndicatorModule {}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n inject,\n} from '@angular/core';\nimport { SkyMutationObserverService } from '@skyux/core';\n\nconst CLASS_NAME = 'sky-highlight-mark';\nconst SPECIAL_CHAR_REGEX = /[-/\\\\^$*+?.()|[\\]{}]/g;\n\nfunction markNode(node: Text, searchRegex: RegExp): number {\n // The search regular expression is reused across calls to markNode(), so reset\n // it so it searches from the start of the string each time.\n searchRegex.lastIndex = 0;\n\n const text = node.nodeValue;\n\n if (text) {\n const match = searchRegex.exec(text);\n\n if (match) {\n // Split apart text node with mark tags in the middle on the search term.\n const matchIndex = match.index;\n\n const middle = node.splitText(matchIndex);\n middle.splitText(searchRegex.lastIndex - matchIndex);\n const middleClone = middle.cloneNode(true);\n\n const markNode = document.createElement('mark');\n markNode.className = CLASS_NAME;\n markNode.appendChild(middleClone);\n\n /* istanbul ignore else */\n if (middle.parentNode) {\n middle.parentNode.replaceChild(markNode, middle);\n }\n\n return 1;\n }\n }\n\n return 0;\n}\n\nfunction markTextNodes(node: Node, searchRegex: RegExp): number {\n if (node.nodeType === 3) {\n return markNode(node as Text, searchRegex);\n } else if (node.nodeType === 1 && node.childNodes) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const childNode = node.childNodes[i];\n i += markTextNodes(childNode, searchRegex);\n }\n }\n\n return 0;\n}\n\nfunction removeHighlight(el: ElementRef): void {\n const matchedElements = Array.from(\n (el.nativeElement as Element).querySelectorAll(`mark.${CLASS_NAME}`),\n );\n\n if (matchedElements) {\n for (const node of matchedElements) {\n const parentNode = node.parentNode;\n\n if (parentNode && node.firstChild) {\n parentNode.replaceChild(node.firstChild, node);\n parentNode.normalize();\n }\n }\n }\n}\n\nfunction createSearchRegex(searchTerms: string[]): RegExp | undefined {\n let searchRegex: RegExp | undefined;\n\n if (searchTerms.length > 0) {\n // Escape all the special regular expression characters by adding a\n // preceding '\\' to each match.\n searchTerms = searchTerms.map((searchTerm) =>\n searchTerm.replace(SPECIAL_CHAR_REGEX, '\\\\$&'),\n );\n\n searchRegex = new RegExp(searchTerms.join('|'), 'gi');\n }\n\n return searchRegex;\n}\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\n/**\n * Highlights all matching text within the current DOM element.\n */\n@Directive({\n selector: '[skyHighlight]',\n standalone: true,\n})\nexport class SkyTextHighlightDirective\n implements OnChanges, AfterViewInit, OnDestroy\n{\n /**\n * The text to highlight.\n */\n @Input()\n public set skyHighlight(value: string | string[] | undefined) {\n value = value || [];\n\n if (Array.isArray(value)) {\n this.#searchTerms = value.filter((item) => !!item);\n // Reorder strings by their length in descending order to avoid missing matches\n // that contain substrings of other matches.\n this.#searchTerms.sort(function (a, b) {\n return b.length - a.length;\n });\n } else {\n this.#searchTerms = [value as string];\n }\n }\n\n #existingHighlight = false;\n\n #observer: MutationObserver | undefined;\n\n #searchTerms: string[] = [];\n\n #el = inject(ElementRef);\n #observerSvc = inject(SkyMutationObserverService);\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['skyHighlight'] && !changes['skyHighlight'].firstChange) {\n this.#highlight();\n }\n }\n\n public ngAfterViewInit(): void {\n this.#observer = this.#observerSvc.create(() => {\n this.#highlight();\n });\n\n this.#highlight();\n }\n\n public ngOnDestroy(): void {\n this.#disconnectObserver();\n }\n\n #disconnectObserver(): void {\n if (this.#observer) {\n this.#observer.disconnect();\n }\n }\n\n #highlight(): void {\n this.#disconnectObserver();\n\n if (this.#existingHighlight) {\n removeHighlight(this.#el);\n }\n\n const node = this.#el.nativeElement;\n\n if (node) {\n const searchRegex = createSearchRegex(this.#searchTerms);\n\n // mark all matched text in the DOM\n if (searchRegex) {\n markTextNodes(node, searchRegex);\n this.#existingHighlight = true;\n }\n }\n\n this.#observeDom();\n }\n\n #observeDom(): void {\n if (this.#observer) {\n const config = {\n attributes: false,\n childList: true,\n characterData: true,\n subtree: true,\n };\n\n this.#observer.observe(this.#el.nativeElement, config);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyMutationObserverService } from '@skyux/core';\n\nimport { SkyTextHighlightDirective } from './text-highlight.directive';\n\n@NgModule({\n imports: [SkyTextHighlightDirective],\n exports: [SkyTextHighlightDirective],\n providers: [SkyMutationObserverService],\n})\nexport class SkyTextHighlightModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { SkyLiveAnnouncerService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { take } from 'rxjs';\n\n@Component({\n selector: 'sky-token',\n templateUrl: './token.component.html',\n styleUrls: ['./token.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyTokenComponent {\n /**\n * Whether to disable the token to prevent users from selecting it, dismissing it,\n * or navigating to it with the arrow keys. When the token is disabled,\n * users can still place focus on it using the `Tab` key.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = !!value;\n }\n\n public get disabled(): boolean {\n return this.#_disabled;\n }\n\n /**\n * The ARIA label for the token's close button. This sets the button's `aria-label` to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label).\n * @default \"Remove item\"\n */\n @Input()\n public ariaLabel: string | undefined;\n\n /**\n * Whether users can remove the token from the list by selecting the close button.\n * @default true\n */\n @Input()\n public set dismissible(value: boolean | undefined) {\n this.#_dismissible = value !== false;\n }\n\n public get dismissible(): boolean {\n return this.#_dismissible;\n }\n\n /**\n * Whether users can place focus on the token using the `Tab`. This does not\n * affect the ability to select the token, dismiss it, or navigate to it with the arrow keys.\n * @default true\n */\n @Input()\n public set focusable(value: boolean | undefined) {\n this.tabIndex = value !== false ? 0 : -1;\n }\n\n /**\n * Used by the tokens component to set the appropriate role for each token.\n * @internal\n */\n @Input()\n public role: string | undefined;\n\n /**\n * Fires when users click the close button.\n */\n @Output()\n public dismiss = new EventEmitter<void>();\n\n /**\n * Fires when users place focus on the token by navigating to it with the `Tab` key.\n */\n @Output()\n public tokenFocus = new EventEmitter<void>();\n\n @ViewChild('actionButton', { read: ElementRef, static: true })\n public actionButtonRef: ElementRef | undefined;\n\n public isFocused = false;\n public tokenActive = false;\n public closeActive = false;\n public tabIndex = 0;\n\n #elementRef = inject(ElementRef);\n\n readonly #liveAnnouncerSvc = inject(SkyLiveAnnouncerService);\n readonly #resourcesSvc = inject(SkyLibResourcesService);\n\n #_disabled = false;\n #_dismissible = true;\n\n protected onFocusIn(): void {\n if (!this.isFocused) {\n this.tokenFocus.emit();\n this.isFocused = true;\n }\n }\n\n protected onFocusOut(event: FocusEvent): void {\n this.isFocused = this.#elementRef.nativeElement.contains(\n event.relatedTarget,\n );\n }\n\n public dismissToken(event: Event): void {\n event.stopPropagation();\n this.#announceState(\n 'skyux_tokens_token_dismissed',\n this.actionButtonRef?.nativeElement.textContent.trim(),\n );\n this.dismiss.emit();\n }\n\n public focusElement(): void {\n this.actionButtonRef?.nativeElement.focus();\n }\n\n public setTokenActive(tokenActive: boolean): void {\n this.tokenActive = tokenActive;\n }\n\n public setCloseActive(closeActive: boolean): void {\n this.closeActive = closeActive;\n }\n\n #announceState(resourceString: string, ...args: any[]): void {\n this.#resourcesSvc\n .getString(resourceString, ...args)\n .pipe(take(1))\n .subscribe((internationalizedString) => {\n this.#liveAnnouncerSvc.announce(internationalizedString);\n });\n }\n}\n","<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\" iconName=\"dismiss\" />\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","export enum SkyTokensMessageType {\n /**\n * Places focus on the last token in the list.\n */\n FocusLastToken = 0,\n\n /**\n * Places focus on the token that is currently selected.\n */\n FocusActiveToken = 1,\n\n /**\n * Places focus on the token before the currently selected token.\n */\n FocusPreviousToken = 2,\n\n /**\n * Places focus on the token after the currently selected token.\n */\n FocusNextToken = 3,\n\n /**\n * Removes the token that is currently selected from the list of tokens.\n */\n RemoveActiveToken = 4,\n}\n","import { animate, style, transition, trigger } from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n TrackByFunction,\n ViewChildren,\n inject,\n} from '@angular/core';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTokenComponent } from './token.component';\nimport { SkyToken } from './types/token';\nimport { SkyTokenSelectedEventArgs } from './types/token-selected-event-args';\nimport { SkyTokensMessage } from './types/tokens-message';\nimport { SkyTokensMessageType } from './types/tokens-message-type';\n\nconst DISPLAY_WITH_DEFAULT = 'name';\n\n/**\n * Creates a container that enables navigation between tokens using keyboard arrow keys.\n * This is useful when combined with other components where the <kbd>Tab</kbd> key is\n * reserved for other functions, such as the SKY UX Lookup component.\n */\n@Component({\n selector: 'sky-tokens',\n templateUrl: './tokens.component.html',\n styleUrls: ['./tokens.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('blockAnimationOnLoad', [transition(':enter', [])]),\n trigger('dismiss', [\n transition(':enter', [\n style({\n opacity: 0,\n width: 0,\n }),\n animate(\n '150ms ease-in',\n style({\n opacity: 1,\n width: '*',\n }),\n ),\n ]),\n transition(':leave', [\n animate(\n '150ms ease-in',\n style({\n opacity: 0,\n width: 0,\n }),\n ),\n ]),\n ]),\n ],\n standalone: false,\n})\nexport class SkyTokensComponent implements OnDestroy {\n /**\n * Whether to disable the tokens list to prevent users from selecting tokens,\n * dismissing tokens, or navigating through the list with the arrow keys. When the tokens list\n * is disabled, users can still place focus on items in the list using the `Tab` key.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = !!value;\n }\n\n public get disabled(): boolean {\n return this.#_disabled;\n }\n\n /**\n * Whether users can remove a token from the list by selecting a token's close button.\n * @default true\n */\n @Input()\n public set dismissible(value: boolean | undefined) {\n this.#_dismissible = value !== false;\n }\n\n public get dismissible(): boolean {\n return this.#_dismissible;\n }\n\n /**\n * The token property to display for each item in the tokens list.\n * @default \"name\"\n */\n @Input()\n public set displayWith(value: string | undefined) {\n this.#_displayWith = value || DISPLAY_WITH_DEFAULT;\n }\n\n public get displayWith(): string {\n return this.#_displayWith;\n }\n\n /**\n * The token property that represents the token's unique identifier. When this property\n * is set, animations are enabled when dismissing tokens.\n */\n @Input()\n public trackWith: string | undefined;\n\n /**\n * Whether users can place focus on tokens in the list using the `Tab` key.\n * This does not affect the ability of users to select tokens, dismiss tokens,\n * or navigate through the list with the arrow keys.\n * @default true\n */\n @Input()\n public set focusable(value: boolean | undefined) {\n this.#_focusable = value !== false;\n }\n\n public get focusable(): boolean {\n return this.#_focusable;\n }\n\n /**\n * The array of tokens to include in the list.\n */\n @Input()\n public set tokens(value: SkyToken[] | undefined) {\n this.#_tokens = value || [];\n // The previous behavior was to set `this._tokens = value`, then emit `this._tokens`,\n // which would emit `undefined` instead of a default value of `[]` returned by the\n // get accessor when set to `undefined`. Emitting `value` instead of `this.#_tokensOrDefault`\n // preserves that behavior.\n this.tokensChange.emit(value);\n }\n\n public get tokens(): SkyToken[] {\n return this.#_tokens;\n }\n\n /**\n * The observable of `SkyTokensMessage` that can place focus on a\n * particular token or remove the active token from the list.\n */\n @Input()\n public set messageStream(value: Subject<SkyTokensMessage> | undefined) {\n this.#_messageStream = value || new Subject<SkyTokensMessage>();\n this.#initMessageStream();\n }\n\n public get messageStream(): Subject<SkyTokensMessage> {\n return this.#_messageStream;\n }\n\n /**\n * Fires when users navigate through the tokens list with the `Tab` key\n * and attempt to move past the final token in the list.\n */\n @Output()\n public focusIndexOverRange = new EventEmitter<void>();\n\n /**\n * Fires when users navigate through the tokens list with the `Tab` key\n * and attempt to move before the first token in the list.\n */\n @Output()\n public focusIndexUnderRange = new EventEmitter<void>();\n\n /**\n * Fires when users select a token in the list. This event emits the selected token.\n */\n @Output()\n public tokenSelected = new EventEmitter<SkyTokenSelectedEventArgs>();\n\n /**\n * Fires when the tokens in the list change.\n * This event emits an array of the tokens in the updated list.\n */\n @Output()\n public tokensChange = new EventEmitter<SkyToken[]>();\n\n /**\n * Fires when all animations on the tokens are complete.\n * @internal\n */\n @Output()\n public tokensRendered = new EventEmitter<void>();\n\n public get activeIndex(): number {\n return this.#_activeIndex;\n }\n\n public set activeIndex(value: number) {\n if (value >= this.#_tokens.length) {\n value = this.#_tokens.length - 1;\n this.focusIndexOverRange.emit();\n }\n\n if (value < 0) {\n value = 0;\n this.focusIndexUnderRange.emit();\n }\n\n this.#_activeIndex = value || 0;\n }\n\n public trackTokenFn: TrackByFunction<SkyToken>;\n\n #_disabled = false;\n #_dismissible = true;\n #_focusable = true;\n #_tokens: SkyToken[] = [];\n #_displayWith = DISPLAY_WITH_DEFAULT;\n\n @ViewChildren(SkyTokenComponent)\n public tokenComponents: QueryList<SkyTokenComponent> | undefined;\n\n #messageStreamSub: Subscription | undefined;\n #ngUnsubscribe = new Subject<void>();\n\n #changeDetector = inject(ChangeDetectorRef);\n\n #_activeIndex = 0;\n #_messageStream = new Subject<SkyTokensMessage>();\n\n constructor() {\n this.#initMessageStream();\n\n // Angular calls the trackBy function without applying the component instance's scope.\n // Use a fat-arrow function so the current component instance's trackWith property can\n // be referenced.\n this.trackTokenFn = (_index, item): unknown => {\n if (this.trackWith) {\n return item.value[this.trackWith];\n }\n\n return item;\n };\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onTokenClick(token: SkyToken): void {\n if (this.disabled) {\n return;\n }\n\n this.#notifyTokenSelected(token);\n }\n\n public animationDone(): void {\n this.tokensRendered.emit();\n }\n\n public onTokenKeyDown(event: KeyboardEvent): void {\n if (!this.disabled) {\n switch (event.key) {\n case 'Left':\n case 'ArrowLeft':\n this.#_messageStream.next({\n type: SkyTokensMessageType.FocusPreviousToken,\n });\n event.preventDefault();\n break;\n\n case 'Right':\n case 'ArrowRight':\n this.#_messageStream.next({\n type: SkyTokensMessageType.FocusNextToken,\n });\n event.preventDefault();\n break;\n }\n }\n }\n\n public selectToken(token: SkyToken): void {\n if (!this.disabled) {\n this.#notifyTokenSelected(token);\n }\n }\n\n public removeToken(token: SkyToken): void {\n this.tokens = this.tokens.filter((t) => t !== token);\n this.#changeDetector.detectChanges();\n }\n\n #focusPreviousToken(): void {\n this.activeIndex--;\n this.#focusActiveToken();\n }\n\n #focusNextToken(): void {\n this.activeIndex++;\n this.#focusActiveToken();\n }\n\n #focusLastToken(): void {\n if (this.tokenComponents) {\n this.activeIndex = this.tokenComponents.length - 1;\n this.#focusActiveToken();\n }\n }\n\n #focusActiveToken(): void {\n if (this.tokenComponents) {\n const tokenComponent = this.tokenComponents.find(\n (_comp: SkyTokenComponent, i: number) => {\n return this.activeIndex === i;\n },\n );\n\n if (tokenComponent) {\n tokenComponent.focusElement();\n }\n }\n }\n\n #removeActiveToken(): void {\n const token = this.tokens[this.activeIndex];\n if (token) {\n this.removeToken(token);\n }\n }\n\n #initMessageStream(): void {\n if (this.#messageStreamSub) {\n this.#messageStreamSub.unsubscribe();\n }\n\n this.#messageStreamSub = this.messageStream\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((message: SkyTokensMessage) => {\n switch (message.type) {\n case SkyTokensMessageType.FocusLastToken:\n this.#focusLastToken();\n break;\n\n case SkyTokensMessageType.FocusActiveToken:\n this.#focusActiveToken();\n break;\n\n case SkyTokensMessageType.FocusPreviousToken:\n this.#focusPreviousToken();\n break;\n\n case SkyTokensMessageType.FocusNextToken:\n this.#focusNextToken();\n break;\n\n case SkyTokensMessageType.RemoveActiveToken:\n this.#removeActiveToken();\n break;\n }\n });\n }\n\n #notifyTokenSelected(token: SkyToken): void {\n this.tokenSelected.emit({\n token,\n });\n }\n}\n","<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n @for (token of tokens; track trackTokenFn(i, token); let i = $index) {\n <sky-token\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (@dismiss.done)=\"animationDone()\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n }\n <div class=\"sky-tokens-content\" [attr.role]=\"tokens.length ? 'row' : null\">\n <div [attr.role]=\"tokens.length ? 'gridcell' : null\">\n <ng-content />\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyScreenReaderLabelDirective } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyTokenComponent } from './token.component';\nimport { SkyTokensComponent } from './tokens.component';\n\n@NgModule({\n declarations: [SkyTokenComponent, SkyTokensComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyIdModule,\n SkyScreenReaderLabelDirective,\n ],\n exports: [SkyTokenComponent, SkyTokensComponent],\n})\nexport class SkyTokensModule {}\n","import {\n ElementRef,\n Injectable,\n OnDestroy,\n Renderer2,\n RendererFactory2,\n} from '@angular/core';\n\nconst busyElements: Record<\n string,\n {\n busyEl: HTMLElement | undefined;\n listener: () => void;\n restoreFocusElement?: HTMLElement | undefined;\n restoreFocusCheckElement?: HTMLElement | undefined;\n }\n> = {};\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n/**\n * @internal\n * @dynamic\n */\n@Injectable()\nexport class SkyWaitAdapterService implements OnDestroy {\n public static isPageWaitActive = false;\n\n #focusableElements: HTMLElement[] | undefined;\n #renderer: Renderer2;\n\n constructor(rendererFactory: RendererFactory2) {\n this.#renderer = rendererFactory.createRenderer(undefined, null);\n }\n\n public ngOnDestroy(): void {\n this.#clearListeners();\n }\n\n public setWaitBounds(waitEl: ElementRef): void {\n this.#renderer.setStyle(\n waitEl.nativeElement.parentElement,\n 'position',\n 'relative',\n );\n }\n\n public removeWaitBounds(waitEl: ElementRef): void {\n this.#renderer.removeStyle(waitEl.nativeElement.parentElement, 'position');\n }\n\n public setBusyState(\n waitEl: ElementRef,\n isFullPage: boolean,\n isWaiting: boolean,\n isNonBlocking: boolean,\n waitComponentId?: string,\n ): void {\n const busyEl = isFullPage\n ? document.body\n : waitEl.nativeElement.parentElement;\n\n if (!isNonBlocking) {\n if (isWaiting) {\n let restoreFocusElement: HTMLElement | undefined = undefined;\n let restoreFocusCheckElement: HTMLElement | undefined = undefined;\n this.#renderer.setAttribute(busyEl, 'aria-busy', 'true');\n\n // Remove focus from page when full page blocking wait\n if (isFullPage || busyEl.contains(document.activeElement)) {\n if (document.activeElement !== document.body) {\n restoreFocusElement = document.activeElement as HTMLElement;\n }\n this.#clearDocumentFocus();\n restoreFocusCheckElement = document.activeElement as HTMLElement;\n }\n\n if (isFullPage) {\n SkyWaitAdapterService.isPageWaitActive = true;\n const endListenerFunc = this.#renderer.listen(\n document.body,\n 'keydown',\n (event: KeyboardEvent) => {\n /*istanbul ignore else */\n if (event.key) {\n /* istanbul ignore else */\n if (event.key.toLowerCase() === 'tab') {\n (event.target as HTMLElement).blur();\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n this.#clearDocumentFocus();\n }\n }\n },\n );\n\n if (waitComponentId) {\n busyElements[waitComponentId] = {\n listener: endListenerFunc,\n busyEl: undefined,\n restoreFocusElement,\n restoreFocusCheckElement,\n };\n }\n } else {\n const endListenerFunc = this.#renderer.listen(\n busyEl,\n 'focusin',\n (event: KeyboardEvent) => {\n /* istanbul ignore else */\n if (!isNonBlocking) {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n\n if (SkyWaitAdapterService.isPageWaitActive) {\n this.#clearDocumentFocus();\n } else {\n // Propagate tab navigation if attempted into waited element\n const target = event.target as HTMLElement;\n\n if (target) {\n target.blur();\n this.#focusNextElement(target, this.#isShift(event));\n }\n }\n }\n },\n );\n\n if (waitComponentId) {\n busyElements[waitComponentId] = {\n listener: endListenerFunc,\n busyEl,\n restoreFocusElement,\n restoreFocusCheckElement,\n };\n }\n }\n } else {\n this.#renderer.removeAttribute(busyEl, 'aria-busy');\n\n if (isFullPage) {\n SkyWaitAdapterService.isPageWaitActive = false;\n }\n\n if (waitComponentId && waitComponentId in busyElements) {\n const busyElement = busyElements[waitComponentId];\n\n busyElement.listener();\n\n // If there is a restore focus element and the focus has not moved, restore focus.\n if (busyElement.restoreFocusCheckElement === document.activeElement) {\n busyElement.restoreFocusElement?.focus();\n }\n\n delete busyElements[waitComponentId];\n }\n }\n }\n }\n\n #focusNextElement(targetElement: HTMLElement, shiftKey: boolean): void {\n const focusable = this.#getFocusableElements();\n\n // If shift tab, go in the other direction\n const modifier = shiftKey ? -1 : 1;\n\n // Find the next navigable element that isn't waiting\n const startingIndex = focusable.indexOf(targetElement);\n let curIndex = startingIndex + modifier;\n while (\n focusable[curIndex] &&\n this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n curIndex += modifier;\n }\n\n if (\n focusable[curIndex] &&\n !this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n focusable[curIndex].focus();\n } else {\n // Try wrapping the navigation\n /* istanbul ignore next */\n /* sanity check */\n curIndex = modifier > 0 ? 0 : focusable.length - 1;\n while (\n curIndex !== startingIndex &&\n focusable[curIndex] &&\n this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n /* istanbul ignore next */\n /* sanity check */\n curIndex += modifier;\n }\n\n /* istanbul ignore else */\n /* sanity check */\n if (\n focusable[curIndex] &&\n !this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n focusable[curIndex].focus();\n } else {\n // No valid target, wipe focus\n this.#clearDocumentFocus();\n }\n }\n\n // clear focusableElements list\n this.#focusableElements = undefined;\n }\n\n #isShift(event: Event): boolean {\n // Determine if shift+tab was used based on element order\n const elements = this.#getFocusableElements().filter(\n (elem) => !this.#isElementHidden(elem),\n );\n\n const previousInd = elements.indexOf((event as any).relatedTarget);\n const currentInd = elements.indexOf(event.target as HTMLElement);\n\n return (\n previousInd === currentInd + 1 ||\n (previousInd === 0 && currentInd === elements.length - 1) ||\n previousInd > currentInd ||\n !(event as any).relatedTarget\n );\n }\n\n #isElementHidden(element: HTMLElement): boolean {\n const style = window.getComputedStyle(element);\n return style.display === 'none' || style.visibility === 'hidden';\n }\n\n #isElementBusyOrHidden(element: HTMLElement): boolean {\n if (this.#isElementHidden(element)) {\n return true;\n }\n\n for (const key of Object.keys(busyElements)) {\n const parentElement = busyElements[key].busyEl;\n if (parentElement && parentElement.contains(element)) {\n return true;\n }\n }\n return false;\n }\n\n #clearDocumentFocus(): void {\n const activeElement = document.activeElement as HTMLElement;\n\n /* istanbul ignore else */\n if (activeElement) {\n activeElement.blur();\n }\n\n document.body.focus();\n }\n\n #getFocusableElements(): HTMLElement[] {\n // Keep this cached so we can reduce queries\n if (this.#focusableElements) {\n return this.#focusableElements;\n }\n\n // Select all possible focusable elements\n const focusableElements =\n 'a[href], ' +\n 'area[href], ' +\n \"input:not([disabled]):not([tabindex='-1']), \" +\n \"button:not([disabled]):not([tabindex='-1']), \" +\n \"select:not([disabled]):not([tabindex='-1']), \" +\n \"textarea:not([disabled]):not([tabindex='-1']), \" +\n 'iframe, object, embed, ' +\n \"*[tabindex]:not([tabindex='-1']), \" +\n '*[contenteditable=true]';\n\n this.#focusableElements = Array.prototype.filter.call(\n document.body.querySelectorAll(focusableElements),\n (element: HTMLElement) => {\n return (\n element.offsetWidth > 0 ||\n element.offsetHeight > 0 ||\n element === document.activeElement\n );\n },\n );\n return this.#focusableElements;\n }\n\n #clearListeners(): void {\n SkyWaitAdapterService.isPageWaitActive = false;\n for (const key of Object.keys(busyElements)) {\n busyElements[key].listener();\n delete busyElements[key];\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyLiveAnnouncerService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyWaitAdapterService } from './wait-adapter.service';\n\nlet nextId = 0;\n\n@Component({\n selector: 'sky-wait',\n templateUrl: './wait.component.html',\n styleUrls: ['./wait.component.scss'],\n providers: [SkyWaitAdapterService],\n imports: [CommonModule, SkyIndicatorsResourcesModule],\n})\nexport class SkyWaitComponent implements OnInit, OnDestroy {\n /**\n * The ARIA label for the wait icon.\n * This sets the icon's `aria-label` attribute to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility) when an element or page loads and when users tab to a wait icon.\n * The default value varies based on whether the wait is for an element or a page and whether it is a blocking wait. For example, the default for a page-level blocking wait is \"Page loading. Please wait.\"\n * For element-level waits, we recommend that consumers overwrite the default to describe the specific element.\n * \"For more information, see the Design tab and the [WAI-ARIA `aria-label` definition](https://www.w3.org/TR/wai-aria/#aria-label).\n */\n @Input()\n public set ariaLabel(value: string | undefined) {\n this.#customAriaLabel = value;\n this.#publishAriaLabel();\n }\n\n /**\n * When set to `true`, wait indication appears on the parent element of the `sky-wait` component.\n */\n @Input()\n public set isWaiting(value: boolean | undefined) {\n if (!this.isFullPage) {\n if (value) {\n this.#adapterService.setWaitBounds(this.#elRef);\n } else {\n this.#adapterService.removeWaitBounds(this.#elRef);\n }\n }\n\n this.#adapterService.setBusyState(\n this.#elRef,\n !!this.isFullPage,\n !!value,\n !!this.isNonBlocking,\n this.#id,\n );\n\n if (value) {\n this.#liveAnnouncer.announce(this.ariaLabelStream.getValue());\n } else if (this.#_isWaiting) {\n // NOTE: This should only happen if the wait was previously waiting and no longer is waiting.\n this.#liveAnnouncer.announce(\n this.screenReaderCompletedTextStream.getValue(),\n );\n }\n\n this.#_isWaiting = value;\n }\n\n public get isWaiting(): boolean | undefined {\n return this.#_isWaiting;\n }\n\n /**\n * When set to `true`, wait indication appears on the page level instead of the\n * parent element level. We recommend that you use the `beginBlockingPageWait` or\n * `beginNonBlockingPageWait` functions of the `SkyWaitService` instead of setting this\n * on the component level.\n * @default false\n */\n @Input()\n public set isFullPage(value: boolean | undefined) {\n /* istanbul ignore else: untestable */\n if (value) {\n this.#adapterService.removeWaitBounds(this.#elRef);\n } else if (this.isWaiting) {\n this.#adapterService.setWaitBounds(this.#elRef);\n }\n\n this.#_isFullPage = value;\n this.#publishAriaLabel();\n this.#publishScreenReaderCompletedText();\n }\n\n public get isFullPage(): boolean | undefined {\n return this.#_isFullPage;\n }\n\n /**\n * When set to `true`, wait indication appears in the bottom left corner of the element\n * instead of hiding the entire parent element.\n * @default false\n */\n @Input()\n public set isNonBlocking(value: boolean | undefined) {\n this.#_isNonBlocking = value;\n this.#publishAriaLabel();\n }\n\n public get isNonBlocking(): boolean | undefined {\n return this.#_isNonBlocking;\n }\n\n /**\n * Screen reader text [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility) when the wait toggles off.\n * The default varies based on whether the wait is for an element or a page.\n * For example, the default for a page-level wait is \"Page loading complete.\"\n * For element-level waits, we recommend that consumers overwrite the default to describe the specific element.\n * For more information, see the Design tab and the [WCAG documentation on status messages](https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html).\n */\n @Input()\n public set screenReaderCompletedText(value: string | undefined) {\n this.#customScreenReaderCompletedText = value;\n this.#publishScreenReaderCompletedText();\n }\n\n public ariaLabelStream = new BehaviorSubject<string>('');\n public ariaLiveText = '';\n public screenReaderCompletedTextStream = new BehaviorSubject<string>('');\n\n #customAriaLabel: string | undefined;\n #customScreenReaderCompletedText: string | undefined;\n #id = `sky-wait-${++nextId}`;\n #ngUnsubscribe = new Subject<void>();\n\n #_isFullPage: boolean | undefined;\n #_isNonBlocking: boolean | undefined;\n #_isWaiting: boolean | undefined;\n\n readonly #adapterService = inject(SkyWaitAdapterService);\n readonly #elRef = inject(ElementRef);\n readonly #liveAnnouncer = inject(SkyLiveAnnouncerService);\n readonly #resourceSvc = inject(SkyLibResourcesService);\n\n public ngOnInit(): void {\n this.#publishAriaLabel();\n this.#publishScreenReaderCompletedText();\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n #publishAriaLabel(): void {\n if (this.#customAriaLabel) {\n this.ariaLabelStream.next(this.#customAriaLabel);\n } else {\n const type = this.isFullPage ? '_page' : '';\n const blocking = this.isNonBlocking ? '' : '_blocking';\n const key = `skyux_wait${type}${blocking}_aria_alt_text`;\n this.#resourceSvc\n .getString(key)\n .pipe(take(1), takeUntil(this.#ngUnsubscribe))\n .subscribe((value) => {\n this.ariaLabelStream.next(value);\n });\n }\n }\n\n #publishScreenReaderCompletedText(): void {\n if (this.#customScreenReaderCompletedText) {\n this.screenReaderCompletedTextStream.next(\n this.#customScreenReaderCompletedText,\n );\n } else {\n const type = this.isFullPage ? '_page' : '';\n const key = `skyux_wait${type}_screen_reader_completed_text`;\n this.#resourceSvc\n .getString(key)\n .pipe(take(1), takeUntil(this.#ngUnsubscribe))\n .subscribe((value) => {\n this.screenReaderCompletedTextStream.next(value);\n });\n }\n }\n}\n","<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n @if (isWaiting) {\n <div\n class=\"sky-wait-mask\"\n role=\"progressbar\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n }\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SkyWaitComponent } from './wait.component';\n\n@NgModule({\n imports: [SkyWaitComponent],\n exports: [SkyWaitComponent],\n})\nexport class SkyWaitModule {}\n","import { Component, Input } from '@angular/core';\n\nimport { SkyWaitComponent } from './wait.component';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-wait-page',\n templateUrl: './wait-page.component.html',\n styleUrls: ['./wait-page.component.scss'],\n imports: [SkyWaitComponent],\n})\nexport class SkyWaitPageComponent {\n @Input()\n public hasBlockingWait: boolean | undefined;\n\n @Input()\n public hasNonBlockingWait: boolean | undefined;\n}\n","<div class=\"sky-wait-page\">\n <sky-wait\n data-sky-id=\"page-wait-non-blocking\"\n [isFullPage]=\"true\"\n [isNonBlocking]=\"true\"\n [isWaiting]=\"hasNonBlockingWait\"\n />\n <sky-wait\n data-sky-id=\"page-wait-blocking\"\n [isFullPage]=\"true\"\n [isWaiting]=\"hasBlockingWait\"\n />\n</div>\n","import {\n ComponentRef,\n EnvironmentInjector,\n Injectable,\n inject,\n} from '@angular/core';\nimport { SkyAppWindowRef, SkyDynamicComponentService } from '@skyux/core';\n\nimport { Observable, defer as observableDefer } from 'rxjs';\nimport { finalize } from 'rxjs/operators';\n\nimport { SkyWaitPageComponent } from './wait-page.component';\n\nlet waitComponent: SkyWaitPageComponent | undefined;\nlet waitComponentRef: ComponentRef<SkyWaitPageComponent> | undefined;\nlet pageWaitBlockingCount = 0;\nlet pageWaitNonBlockingCount = 0;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyWaitService {\n #environmentInjector = inject(EnvironmentInjector);\n #windowSvc = inject(SkyAppWindowRef);\n #dynamicComponentService = inject(SkyDynamicComponentService);\n\n /**\n * Starts a blocking page wait on the page.\n */\n public beginBlockingPageWait(): void {\n this.#beginPageWait(true);\n }\n\n /**\n * Starts a non-blocking page wait on the page.\n */\n public beginNonBlockingPageWait(): void {\n this.#beginPageWait(false);\n }\n\n /**\n * Ends a blocking page wait on the page. Blocking page wait indication\n * is removed when all running blocking page waits are ended.\n */\n public endBlockingPageWait(): void {\n this.#endPageWait(true);\n }\n\n /**\n * Ends a non-blocking page wait on the page. Non-blocking page wait indication\n * is removed when all running non-blocking page waits are ended.\n */\n public endNonBlockingPageWait(): void {\n this.#endPageWait(false);\n }\n\n /**\n * Clears all blocking and non-blocking page waits on the page.\n */\n public clearAllPageWaits(): void {\n this.#clearPageWait(true);\n this.#clearPageWait(false);\n }\n\n /**\n * @internal\n */\n public dispose(): void {\n if (waitComponent) {\n waitComponent = undefined;\n pageWaitBlockingCount = 0;\n pageWaitNonBlockingCount = 0;\n this.#dynamicComponentService.removeComponent(waitComponentRef);\n }\n }\n\n /**\n * Launches a page wait and automatically stops when the specific asynchronous event completes.\n */\n public blockingWrap<T>(observable: Observable<T>): Observable<T> {\n return observableDefer(() => {\n this.beginBlockingPageWait();\n return observable.pipe(finalize(() => this.endBlockingPageWait()));\n });\n }\n\n /**\n * Launches a non-blocking page wait and automatically stops when the specific\n * asynchronous event completes.\n */\n public nonBlockingWrap<T>(observable: Observable<T>): Observable<T> {\n return observableDefer(() => {\n this.beginNonBlockingPageWait();\n return observable.pipe(finalize(() => this.endNonBlockingPageWait()));\n });\n }\n\n #setWaitComponentProperties(isBlocking: boolean): void {\n if (waitComponent) {\n if (isBlocking) {\n waitComponent.hasBlockingWait = true;\n pageWaitBlockingCount++;\n } else {\n waitComponent.hasNonBlockingWait = true;\n pageWaitNonBlockingCount++;\n }\n }\n }\n\n #beginPageWait(isBlocking: boolean): void {\n if (!waitComponent) {\n /*\n Dynamic component creation needs to be done in a timeout to prevent ApplicationRef from\n crashing when wait service is called in Angular lifecycle functions.\n */\n this.#windowSvc.nativeWindow.setTimeout(() => {\n // Ensuring here that we recheck this after the setTimeout is over so that we don't clash\n // with any other waits that are created.\n if (!waitComponent) {\n waitComponentRef = this.#dynamicComponentService.createComponent(\n SkyWaitPageComponent,\n {\n environmentInjector: this.#environmentInjector,\n },\n );\n\n waitComponent = waitComponentRef.instance;\n }\n\n this.#setWaitComponentProperties(isBlocking);\n });\n } else {\n this.#setWaitComponentProperties(isBlocking);\n }\n }\n\n #endPageWait(isBlocking: boolean): void {\n /*\n Needs to yield so that wait creation can finish\n before it is dismissed in the event of a race.\n */\n this.#windowSvc.nativeWindow.setTimeout(() => {\n if (waitComponent) {\n if (isBlocking) {\n if (pageWaitBlockingCount > 0) {\n pageWaitBlockingCount--;\n }\n\n if (pageWaitBlockingCount < 1) {\n waitComponent.hasBlockingWait = false;\n }\n } else {\n if (pageWaitNonBlockingCount > 0) {\n pageWaitNonBlockingCount--;\n }\n\n if (pageWaitNonBlockingCount < 1) {\n waitComponent.hasNonBlockingWait = false;\n }\n }\n }\n });\n }\n\n #clearPageWait(isBlocking: boolean): void {\n // Wait for the component to be created before clearing it.\n this.#windowSvc.nativeWindow.setTimeout(() => {\n if (waitComponent) {\n if (isBlocking) {\n pageWaitBlockingCount = 0;\n waitComponent.hasBlockingWait = false;\n } else {\n pageWaitNonBlockingCount = 0;\n waitComponent.hasNonBlockingWait = false;\n }\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i3.SkyExpansionIndicatorComponent","i3","i4","i1.SkyTokenComponent","take","observableDefer"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-indicators.mjs","sources":["../../../../../libs/components/indicators/src/lib/modules/shared/sky-indicators-resources.module.ts","../../../../../libs/components/indicators/src/lib/modules/shared/indicator-icon-utility.ts","../../../../../libs/components/indicators/src/lib/modules/alert/alert.component.ts","../../../../../libs/components/indicators/src/lib/modules/alert/alert.component.html","../../../../../libs/components/indicators/src/lib/modules/alert/alert.module.ts","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.component.ts","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.component.html","../../../../../libs/components/indicators/src/lib/modules/expansion-indicator/expansion-indicator.module.ts","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.component.ts","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.component.html","../../../../../libs/components/indicators/src/lib/modules/chevron/chevron.module.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration-resolver.service.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.component.ts","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.component.html","../../../../../libs/components/indicators/src/lib/modules/illustration/illustration.module.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info-label.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info-value.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.component.ts","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.component.html","../../../../../libs/components/indicators/src/lib/modules/key-info/key-info.module.ts","../../../../../libs/components/indicators/src/lib/modules/label/label.component.ts","../../../../../libs/components/indicators/src/lib/modules/label/label.component.html","../../../../../libs/components/indicators/src/lib/modules/label/label.module.ts","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.component.ts","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.component.html","../../../../../libs/components/indicators/src/lib/modules/status-indicator/status-indicator.module.ts","../../../../../libs/components/indicators/src/lib/modules/text-highlight/text-highlight.directive.ts","../../../../../libs/components/indicators/src/lib/modules/text-highlight/text-highlight.module.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/token.component.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/token.component.html","../../../../../libs/components/indicators/src/lib/modules/tokens/types/tokens-message-type.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.component.ts","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.component.html","../../../../../libs/components/indicators/src/lib/modules/tokens/tokens.module.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-adapter.service.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait.component.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait.component.html","../../../../../libs/components/indicators/src/lib/modules/wait/wait.module.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-page.component.ts","../../../../../libs/components/indicators/src/lib/modules/wait/wait-page.component.html","../../../../../libs/components/indicators/src/lib/modules/wait/wait.service.ts","../../../../../libs/components/indicators/src/skyux-indicators.ts"],"sourcesContent":["/* istanbul ignore file */\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-indicators' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n skyux_alert_close: { message: 'Close the alert' },\n skyux_alert_sr_attention: { message: 'Attention:' },\n skyux_alert_sr_caution: { message: 'Caution:' },\n skyux_alert_sr_completed: { message: 'Completed:' },\n skyux_alert_sr_danger: { message: 'Danger:' },\n skyux_alert_sr_error: { message: 'Error:' },\n skyux_alert_sr_important_info: { message: 'Important information:' },\n skyux_alert_sr_important_warning: { message: 'Important warning:' },\n skyux_alert_sr_success: { message: 'Success:' },\n skyux_alert_sr_warning: { message: 'Warning:' },\n skyux_help_inline_button_title: { message: 'Show help content' },\n skyux_label_sr_attention: { message: 'Attention:' },\n skyux_label_sr_caution: { message: 'Caution:' },\n skyux_label_sr_completed: { message: 'Completed:' },\n skyux_label_sr_danger: { message: 'Danger:' },\n skyux_label_sr_error: { message: 'Error:' },\n skyux_label_sr_important_info: { message: 'Important information:' },\n skyux_label_sr_important_warning: { message: 'Important warning:' },\n skyux_label_sr_success: { message: 'Success:' },\n skyux_label_sr_warning: { message: 'Warning:' },\n skyux_status_indicator_sr_attention: { message: 'Attention:' },\n skyux_status_indicator_sr_caution: { message: 'Caution:' },\n skyux_status_indicator_sr_completed: { message: 'Completed:' },\n skyux_status_indicator_sr_danger: { message: 'Danger:' },\n skyux_status_indicator_sr_error: { message: 'Error:' },\n skyux_status_indicator_sr_important_info: {\n message: 'Important information:',\n },\n skyux_status_indicator_sr_important_warning: {\n message: 'Important warning:',\n },\n skyux_status_indicator_sr_success: { message: 'Success:' },\n skyux_status_indicator_sr_warning: { message: 'Warning:' },\n skyux_tokens_dismiss_button_default_label: { message: 'Remove ' },\n skyux_tokens_dismiss_button_title: { message: 'Remove item' },\n skyux_tokens_token_dismissed: { message: '{0} removed' },\n skyux_wait_aria_alt_text: { message: 'Loading.' },\n skyux_wait_blocking_aria_alt_text: { message: 'Loading. Please wait.' },\n skyux_wait_page_aria_alt_text: { message: 'Page loading.' },\n skyux_wait_page_blocking_aria_alt_text: {\n message: 'Page loading. Please wait.',\n },\n skyux_wait_screen_reader_completed_text: { message: 'Loading complete.' },\n skyux_wait_page_screen_reader_completed_text: {\n message: 'Page loading complete.',\n },\n },\n 'FR-CA': {\n skyux_alert_close: { message: 'Fermer l’alerte' },\n skyux_alert_sr_attention: { message: 'Attention :' },\n skyux_alert_sr_caution: { message: 'Mise en garde :' },\n skyux_alert_sr_completed: { message: 'Terminé :' },\n skyux_alert_sr_danger: { message: 'Danger :' },\n skyux_alert_sr_error: { message: 'Erreur :' },\n skyux_alert_sr_important_info: { message: 'Information importante :' },\n skyux_alert_sr_important_warning: { message: 'Avertissement important :' },\n skyux_alert_sr_success: { message: 'Réussi :' },\n skyux_alert_sr_warning: { message: 'Avertissement :' },\n skyux_help_inline_button_title: {\n message: 'Afficher le contenu de l’aide',\n },\n skyux_label_sr_attention: { message: 'Attention :' },\n skyux_label_sr_caution: { message: 'Mise en garde :' },\n skyux_label_sr_completed: { message: 'Terminé :' },\n skyux_label_sr_danger: { message: 'Danger :' },\n skyux_label_sr_error: { message: 'Erreur :' },\n skyux_label_sr_important_info: { message: 'Information importante :' },\n skyux_label_sr_important_warning: { message: 'Avertissement important :' },\n skyux_label_sr_success: { message: 'Réussi :' },\n skyux_label_sr_warning: { message: 'Avertissement :' },\n skyux_status_indicator_sr_attention: { message: 'Attention :' },\n skyux_status_indicator_sr_caution: { message: 'Mise en garde :' },\n skyux_status_indicator_sr_completed: { message: 'Terminé :' },\n skyux_status_indicator_sr_danger: { message: 'Danger :' },\n skyux_status_indicator_sr_error: { message: 'Erreur :' },\n skyux_status_indicator_sr_important_info: {\n message: 'Information importante :',\n },\n skyux_status_indicator_sr_important_warning: {\n message: 'Avertissement important :',\n },\n skyux_status_indicator_sr_success: { message: 'Réussi :' },\n skyux_status_indicator_sr_warning: { message: 'Avertissement :' },\n skyux_tokens_dismiss_button_default_label: { message: 'Retirer ' },\n skyux_tokens_dismiss_button_title: { message: 'Retirer l’article' },\n skyux_tokens_token_dismissed: { message: '{0} retiré' },\n skyux_wait_aria_alt_text: { message: 'Chargement en cours.' },\n skyux_wait_blocking_aria_alt_text: {\n message: 'Chargement en cours. Veuillez patienter.',\n },\n skyux_wait_page_aria_alt_text: {\n message: 'Chargement de la page en cours.',\n },\n skyux_wait_page_blocking_aria_alt_text: {\n message: 'Chargement de la page en cours. Veuillez patienter.',\n },\n skyux_wait_screen_reader_completed_text: { message: 'Chargement terminé.' },\n skyux_wait_page_screen_reader_completed_text: {\n message: 'Chargement de la page terminé.',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyIndicatorsResourcesModule {}\n","import { SkyIndicatorIconType } from './indicator-icon-type';\n\n/**\n * @internal\n */\nexport class SkyIndicatorIconUtility {\n public static getIconNameForType(\n indicatorType: SkyIndicatorIconType,\n ): string {\n let icon: string;\n\n switch (indicatorType) {\n case 'danger':\n case 'warning':\n icon = 'sky-warning';\n break;\n case 'info':\n icon = 'sky-info';\n break;\n case 'success':\n icon = 'sky-success';\n break;\n }\n\n return icon;\n }\n}\n","import {\n AfterViewChecked,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n inject,\n} from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\nimport { Subscription } from 'rxjs';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconType } from '../shared/indicator-icon-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nconst ALERT_TYPE_DEFAULT = 'warning';\n\n@Component({\n selector: 'sky-alert',\n styleUrls: [\n './alert.default.component.scss',\n './alert.modern.component.scss',\n ],\n templateUrl: './alert.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyAlertComponent implements AfterViewChecked, OnInit, OnDestroy {\n /**\n * The style for the alert, which determines the icon and background color.\n * The valid options are `danger`, `info`, `success`, and `warning`.\n * @default \"warning\"\n */\n @Input()\n public set alertType(value: SkyIndicatorIconType | undefined) {\n if (value !== this.alertTypeOrDefault) {\n this.alertTypeOrDefault = value || ALERT_TYPE_DEFAULT;\n this.#updateAlertIcon();\n }\n }\n\n /**\n * Whether to include a close button for users to dismiss the alert.\n * @default false\n */\n @Input()\n public closeable: boolean | undefined;\n\n /**\n * Whether the alert is closed.\n * @default false\n */\n @Input()\n public closed: boolean | undefined;\n\n /**\n * The predefined text to be read by screen readers for users who cannot see the alert icon.\n * This property is optional but will be required in future versions of SKY UX.\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n /**\n * Fires when users close the alert.\n */\n @Output()\n public closedChange = new EventEmitter<boolean>();\n\n public iconName: string | undefined;\n\n public alertTypeOrDefault: SkyIndicatorIconType = ALERT_TYPE_DEFAULT;\n\n public descriptionComputed: string | undefined;\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n\n #_customDescription: string | undefined;\n\n #descriptionTypeResourceSubscription: Subscription | undefined;\n #descriptionTypeWarned: boolean | undefined;\n\n #resources = inject(SkyLibResourcesService);\n #logSvc = inject(SkyLogService);\n\n public ngOnInit(): void {\n this.#updateAlertIcon();\n }\n\n public ngAfterViewChecked(): void {\n if (!this.descriptionType && !this.#descriptionTypeWarned) {\n this.#logSvc.deprecated('SkyAlertComponent without `descriptionType`', {\n deprecationMajorVersion: 8,\n replacementRecommendation:\n 'Always specify a `descriptionType` property.',\n });\n\n this.#descriptionTypeWarned = true;\n }\n }\n\n public ngOnDestroy(): void {\n this.#unsubscribe();\n }\n\n public close(): void {\n this.closed = true;\n this.closedChange.emit(true);\n }\n\n #updateAlertIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.alertTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n this.#unsubscribe();\n\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = undefined;\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#descriptionTypeResourceSubscription = this.#resources\n .getString(\n 'skyux_alert_sr_' + this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n\n #unsubscribe(): void {\n if (this.#descriptionTypeResourceSubscription) {\n this.#descriptionTypeResourceSubscription.unsubscribe();\n this.#descriptionTypeResourceSubscription = undefined;\n }\n }\n}\n","<div\n class=\"sky-alert\"\n role=\"alert\"\n [skyThemeClass]=\"{\n 'sky-rounded-corners': 'default',\n 'sky-box sky-elevation-1': 'modern'\n }\"\n [hidden]=\"closed\"\n [ngClass]=\"{\n 'sky-alert-info': alertTypeOrDefault === 'info',\n 'sky-alert-success': alertTypeOrDefault === 'success',\n 'sky-alert-warning': alertTypeOrDefault === 'warning',\n 'sky-alert-danger': alertTypeOrDefault === 'danger',\n 'sky-alert-closeable': closeable\n }\"\n>\n <div *skyThemeIf=\"'modern'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"xl\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n <div *skyThemeIf=\"'default'\" aria-hidden=\"true\" class=\"sky-alert-icon\">\n <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\n </div>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <div class=\"sky-alert-content\">\n <ng-content />\n </div>\n <button\n class=\"sky-alert-close\"\n type=\"button\"\n [attr.aria-label]=\"'skyux_alert_close' | skyLibResources\"\n [hidden]=\"!closeable\"\n (click)=\"close()\"\n >\n <span aria-hidden=\"true\">\n <sky-icon iconName=\"dismiss\" />\n </span>\n </button>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyAlertComponent } from './alert.component';\n\n@NgModule({\n declarations: [SkyAlertComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n ],\n exports: [SkyAlertComponent],\n})\nexport class SkyAlertModule {}\n","import { Component, Input } from '@angular/core';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\n/**\n * Displays a chevron icon.\n * @internal\n */\n@Component({\n selector: 'sky-expansion-indicator',\n styleUrls: [\n './expansion-indicator.default.component.scss',\n './expansion-indicator.modern.component.scss',\n ],\n templateUrl: './expansion-indicator.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyExpansionIndicatorComponent {\n /**\n * The direction that the chevron points, which can be up or down.\n */\n @Input()\n public set direction(value: string | undefined) {\n /* istanbul ignore else */\n if (value !== this.directionOrDefault) {\n this.directionOrDefault = value ? value : 'up';\n }\n }\n\n public directionOrDefault = 'up';\n}\n","<div\n aria-hidden=\"true\"\n class=\"sky-expansion-indicator\"\n [ngClass]=\"['sky-expansion-indicator-' + directionOrDefault]\"\n>\n <ng-container *skyThemeIf=\"'default'\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </ng-container>\n <ng-container *skyThemeIf=\"'modern'\">\n <span class=\"sky-expansion-indicator-glyph-container\">\n <ng-container *ngTemplateOutlet=\"icon\" />\n </span>\n </ng-container>\n</div>\n\n<ng-template #icon>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-left\"> </i>\n <i class=\"sky-expansion-indicator-part sky-expansion-indicator-right\"> </i>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyExpansionIndicatorComponent } from './expansion-indicator.component';\n\n@NgModule({\n declarations: [SkyExpansionIndicatorComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyExpansionIndicatorComponent],\n})\nexport class SkyExpansionIndicatorModule {}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\n/**\n * Creates an accessible button that wraps the chevron icon.\n * @internal\n */\n@Component({\n selector: 'sky-chevron',\n styleUrls: [\n './chevron.default.component.scss',\n './chevron.modern.component.scss',\n ],\n templateUrl: './chevron.component.html',\n hostDirectives: [SkyThemeComponentClassDirective],\n standalone: false,\n})\nexport class SkyChevronComponent {\n /**\n * The element whose contents are controlled by the chevron.\n * This sets the chevron's `aria-controls` attribute\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-controls` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-controls).\n */\n @Input()\n public ariaControls: string | undefined;\n\n /**\n * The ARIA label for the chevron. This sets the chevron's `aria-label` attribute to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label).\n */\n @Input()\n public ariaLabel: string | undefined;\n\n /**\n * The direction that the chevron points, which can be up or down.\n */\n @Input()\n public set direction(value: string | undefined) {\n /* istanbul ignore else */\n if (value !== this.directionOrDefault) {\n this.directionOrDefault = value ? value : 'up';\n /* istanbul ignore else */\n if (this.directionOrDefault === 'up') {\n this.ariaExpanded = true;\n } else if (this.directionOrDefault === 'down') {\n this.ariaExpanded = false;\n }\n }\n }\n\n /**\n * Whether to disable the chevron button.\n */\n @Input()\n public disabled = false;\n\n /**\n * Fires when the direction of the chevron changes.\n */\n @Output()\n public directionChange = new EventEmitter<string>();\n\n public ariaExpanded = true;\n\n public directionOrDefault = 'up';\n\n public chevronClick(event: Event): void {\n event.stopPropagation();\n this.direction = this.directionOrDefault === 'up' ? 'down' : 'up';\n this.directionChange.emit(this.directionOrDefault);\n }\n\n public chevronKeyDown(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (event.key) {\n switch (event.key.toLowerCase()) {\n case ' ':\n case 'enter':\n this.direction = this.directionOrDefault === 'up' ? 'down' : 'up';\n this.directionChange.emit(this.directionOrDefault);\n event.preventDefault();\n event.stopPropagation();\n break;\n default:\n break;\n }\n }\n }\n}\n","<button\n class=\"sky-chevron\"\n type=\"button\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-label]=\"ariaLabel\"\n [disabled]=\"disabled\"\n [ngClass]=\"['sky-chevron-' + directionOrDefault]\"\n [skyThemeClass]=\"{\n 'sky-btn sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"chevronClick($event)\"\n (keydown)=\"chevronKeyDown($event)\"\n>\n <sky-expansion-indicator [direction]=\"directionOrDefault\" />\n</button>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyExpansionIndicatorModule } from '../expansion-indicator/expansion-indicator.module';\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyChevronComponent } from './chevron.component';\n\n/**\n * @internal\n */\n@NgModule({\n declarations: [SkyChevronComponent],\n imports: [\n CommonModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n SkyExpansionIndicatorModule,\n ],\n exports: [SkyChevronComponent],\n})\nexport class SkyChevronModule {}\n","import { Injectable } from '@angular/core';\n\n/**\n * Resolves information about spot illustrations.\n */\n@Injectable()\nexport abstract class SkyIllustrationResolverService {\n /**\n * Resolves a URL for the specified illustration name.\n */\n public abstract resolveUrl(name: string): Promise<string>;\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\nimport { catchError, from, of, switchMap } from 'rxjs';\n\nimport { SkyIllustrationResolverService } from './illustration-resolver.service';\nimport { SkyIllustrationSize } from './illustration-size';\n\nconst pixelSizes: Record<SkyIllustrationSize, number> = {\n sm: 48,\n md: 64,\n lg: 80,\n xl: 96,\n};\n\n/**\n * Displays a spot illustration at the specified size.\n */\n@Component({\n selector: 'sky-illustration',\n imports: [CommonModule],\n templateUrl: './illustration.component.html',\n styleUrls: [\n './illustration.default.component.scss',\n './illustration.modern.component.scss',\n ],\n hostDirectives: [SkyThemeComponentClassDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyIllustrationComponent {\n readonly #resolverSvc = inject(SkyIllustrationResolverService, {\n optional: true,\n });\n\n /**\n * The name of the illustration to display.\n * @required\n */\n public readonly name = input.required<string>();\n\n /**\n * The size of the illustration.\n * @required\n */\n public readonly size = input.required<SkyIllustrationSize>();\n\n protected readonly url = toSignal(\n toObservable(this.name).pipe(\n switchMap((name) =>\n this.#resolverSvc ? from(this.#resolverSvc.resolveUrl(name)) : of(''),\n ),\n catchError(() => of('')),\n ),\n );\n\n protected readonly pixelSize = computed(() => pixelSizes[this.size()]);\n}\n","<img\n alt=\"\"\n class=\"sky-illustration-img\"\n loading=\"lazy\"\n [attr.data-sky-illustration-name]=\"name()\"\n [height]=\"pixelSize()\"\n [ngClass]=\"{\n 'sky-illustration-img-loaded': !!url()\n }\"\n [src]=\"url()\"\n [width]=\"pixelSize()\"\n/>\n","import { NgModule } from '@angular/core';\n\nimport { SkyIllustrationComponent } from './illustration.component';\n\n@NgModule({\n imports: [SkyIllustrationComponent],\n exports: [SkyIllustrationComponent],\n})\nexport class SkyIllustrationModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a label to display in smaller text under or beside the value.\n * To display a help button beside the label, include a help button element, such as `sky-help-inline`,\n * in the `sky-key-info` element and a `sky-control-help` CSS class on that help button element.\n * @required\n */\n@Component({\n selector: 'sky-key-info-label',\n template: '<span skyTrim><ng-content /></span>',\n standalone: false,\n})\nexport class SkyKeyInfoLabelComponent {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a value to display in larger, bold text.\n * @required\n */\n@Component({\n selector: 'sky-key-info-value',\n template: '<ng-content />',\n standalone: false,\n})\nexport class SkyKeyInfoValueComponent {}\n","import { Component, Input, TemplateRef } from '@angular/core';\n\nimport { SkyKeyInfoLayoutType } from './key-info-layout-type';\n\n@Component({\n selector: 'sky-key-info',\n templateUrl: './key-info.component.html',\n styleUrls: ['./key-info.component.scss'],\n standalone: false,\n})\nexport class SkyKeyInfoComponent {\n /**\n * A help key that identifies the global help content to display. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the key info. Clicking the button invokes global help as configured by the application.\n */\n @Input()\n public helpKey: string | undefined;\n\n /**\n * The content of the help popover. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the key info. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title.\n */\n @Input()\n public helpPopoverContent: string | TemplateRef<unknown> | undefined;\n\n /**\n * The title of the help popover. This property only applies when `helpPopoverContent` is\n * also specified.\n */\n @Input()\n public helpPopoverTitle: string | undefined;\n\n /**\n * The layout for the key info. The vertical layout places the label under the\n * value, while the horizontal layout places the label beside the value.\n * @default \"vertical\"\n */\n @Input()\n public layout: SkyKeyInfoLayoutType | undefined = 'vertical';\n}\n","<div\n class=\"sky-key-info\"\n [ngClass]=\"{\n 'sky-key-info-horizontal': layout === 'horizontal'\n }\"\n>\n <div class=\"sky-key-info-value sky-font-display-3\">\n <ng-content select=\"sky-key-info-value\" />\n </div>\n <div class=\"sky-key-info-label sky-field-label sky-font-data-label\">\n <span #label=\"skyId\" skyId><ng-content select=\"sky-key-info-label\" /></span\n ><span class=\"sky-control-help-container\">\n @if (helpPopoverContent || helpKey) {\n <sky-help-inline\n [labelledBy]=\"label.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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\nimport { SkyKeyInfoLabelComponent } from './key-info-label.component';\nimport { SkyKeyInfoValueComponent } from './key-info-value.component';\nimport { SkyKeyInfoComponent } from './key-info.component';\n\n@NgModule({\n declarations: [\n SkyKeyInfoComponent,\n SkyKeyInfoLabelComponent,\n SkyKeyInfoValueComponent,\n ],\n imports: [CommonModule, SkyTrimModule, SkyHelpInlineModule, SkyIdModule],\n exports: [\n SkyKeyInfoComponent,\n SkyKeyInfoLabelComponent,\n SkyKeyInfoValueComponent,\n ],\n})\nexport class SkyKeyInfoModule {}\n","import {\n AfterViewChecked,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Subscription } from 'rxjs/internal/Subscription';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nimport { SkyLabelType } from './label-type';\n\nconst LABEL_TYPE_DEFAULT: SkyLabelType = 'info';\n\n@Component({\n selector: 'sky-label',\n templateUrl: './label.component.html',\n styleUrls: ['./label.component.scss'],\n standalone: false,\n})\nexport class SkyLabelComponent implements AfterViewChecked, OnDestroy, OnInit {\n /**\n * The type of label to display.\n * @default 'info'\n */\n @Input()\n public set labelType(value: SkyLabelType | undefined) {\n this.labelTypeOrDefault = value === undefined ? LABEL_TYPE_DEFAULT : value;\n\n this.#updateIcon();\n }\n\n /**\n * The predefined text to be read by screen readers for users who cannot see the indicator icon.\n * This property is optional but will be required in future versions of SKY UX.\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n public descriptionComputed: string | undefined;\n\n public iconName: string | undefined;\n\n public labelTypeOrDefault = LABEL_TYPE_DEFAULT;\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n #_customDescription: string | undefined;\n\n #descriptionTypeResourceSubscription: Subscription | undefined;\n #descriptionTypeWarned: boolean | undefined;\n\n #changeDetector = inject(ChangeDetectorRef);\n #resources = inject(SkyLibResourcesService);\n #logSvc = inject(SkyLogService);\n\n public ngOnInit(): void {\n this.#updateIcon();\n }\n\n public ngAfterViewChecked(): void {\n if (!this.descriptionType && !this.#descriptionTypeWarned) {\n this.#logSvc.deprecated('SkyLabelComponent without `descriptionType`', {\n deprecationMajorVersion: 8,\n replacementRecommendation:\n 'Always specify a `descriptionType` property.',\n });\n\n this.#descriptionTypeWarned = true;\n }\n }\n\n public ngOnDestroy(): void {\n this.#unsubscribe();\n }\n\n #updateIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.labelTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n this.#unsubscribe();\n\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = undefined;\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#descriptionTypeResourceSubscription = this.#resources\n .getString(\n 'skyux_label_sr_' + this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n this.#changeDetector.markForCheck();\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n\n #unsubscribe(): void {\n if (this.#descriptionTypeResourceSubscription) {\n this.#descriptionTypeResourceSubscription.unsubscribe();\n this.#descriptionTypeResourceSubscription = undefined;\n }\n }\n}\n","<span class=\"sky-label\" [ngClass]=\"'sky-label-' + labelTypeOrDefault\">\n <span class=\"sky-label-icon\">\n <sky-icon\n *skyThemeIf=\"'default'\"\n iconSize=\"m\"\n variant=\"solid\"\n [iconName]=\"iconName\"\n />\n <sky-icon *skyThemeIf=\"'modern'\" variant=\"solid\" [iconName]=\"iconName\" />\n </span>\n @if (descriptionComputed) {\n <span class=\"sky-screen-reader-only\">\n {{ descriptionComputed }}\n </span>\n }\n <span class=\"sky-label-text\">\n <ng-content />\n </span>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyLabelComponent } from './label.component';\n\n@NgModule({\n declarations: [SkyLabelComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n ],\n exports: [SkyLabelComponent],\n})\nexport class SkyLabelModule {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n TemplateRef,\n inject,\n} from '@angular/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { SkyIndicatorDescriptionType } from '../shared/indicator-description-type';\nimport { SkyIndicatorIconType } from '../shared/indicator-icon-type';\nimport { SkyIndicatorIconUtility } from '../shared/indicator-icon-utility';\n\nconst INDICATOR_TYPE_DEFAULT: SkyIndicatorIconType = 'warning';\n/**\n * Displays status text with an icon matching the specified indicator type.\n * To display a help button beside the label, include a help button element, such as\n * `sky-help-inline`, in the `sky-status-indicator` element and a `sky-control-help`\n * CSS class on that help button element.\n */\n@Component({\n selector: 'sky-status-indicator',\n templateUrl: './status-indicator.component.html',\n styleUrls: ['./status-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyStatusIndicatorComponent implements OnInit {\n /**\n * The style for the status indicator, which determines the icon.\n * @default \"warning\"\n */\n @Input()\n public set indicatorType(value: SkyIndicatorIconType) {\n this.indicatorTypeOrDefault =\n value === undefined ? INDICATOR_TYPE_DEFAULT : value;\n\n this.#updateIcon();\n }\n\n /**\n * The predefined text to be read by screen readers for users who\n * cannot see the indicator icon.\n * @required\n */\n @Input()\n public set descriptionType(value: SkyIndicatorDescriptionType | undefined) {\n this.#_descriptionType = value;\n this.#updateDescriptionComputed();\n }\n\n public get descriptionType(): SkyIndicatorDescriptionType | undefined {\n return this.#_descriptionType;\n }\n\n /**\n * The text to be read by screen readers for users who cannot see\n * the indicator icon when `descriptionType` is `custom`.\n */\n @Input()\n public set customDescription(value: string | undefined) {\n this.#_customDescription = value;\n this.#updateDescriptionComputed();\n }\n\n public get customDescription(): string | undefined {\n return this.#_customDescription;\n }\n\n /**\n * The content of the help popover. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the status indicator. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title.\n */\n @Input()\n public helpPopoverContent: string | TemplateRef<unknown> | undefined;\n\n /**\n * The title of the help popover. This property only applies when `helpPopoverContent` is\n * also specified.\n */\n @Input()\n public helpPopoverTitle: string | undefined;\n\n /**\n * A help key that identifies the global help content to display. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the status indicator label. Clicking the button invokes global help as configured by the application.\n */\n @Input()\n public helpKey: string | undefined;\n\n public descriptionComputed: string | undefined;\n\n public iconName: string | undefined;\n\n public indicatorTypeOrDefault: SkyIndicatorIconType = INDICATOR_TYPE_DEFAULT;\n\n #changeDetector = inject(ChangeDetectorRef);\n #resourcesSvc = inject(SkyLibResourcesService);\n\n #_descriptionType: SkyIndicatorDescriptionType | undefined;\n #_customDescription: string | undefined;\n\n public ngOnInit(): void {\n this.#updateIcon();\n }\n\n #updateIcon(): void {\n this.iconName = SkyIndicatorIconUtility.getIconNameForType(\n this.indicatorTypeOrDefault,\n );\n }\n\n #updateDescriptionComputed(): void {\n if (this.descriptionType) {\n switch (this.descriptionType) {\n case 'none':\n this.descriptionComputed = '';\n break;\n case 'custom':\n this.descriptionComputed = this.customDescription;\n break;\n default:\n this.#resourcesSvc\n .getString(\n 'skyux_status_indicator_sr_' +\n this.descriptionType.replace(/-/g, '_'),\n )\n .subscribe((value) => {\n this.descriptionComputed = value;\n this.#changeDetector.markForCheck();\n });\n\n break;\n }\n } else {\n this.descriptionComputed = undefined;\n }\n }\n}\n","@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 <sky-icon iconSize=\"m\" variant=\"solid\" [iconName]=\"iconName\" />\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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyStatusIndicatorComponent } from './status-indicator.component';\n\n@NgModule({\n declarations: [SkyStatusIndicatorComponent],\n imports: [\n CommonModule,\n SkyHelpInlineModule,\n SkyIconModule,\n SkyIdModule,\n SkyIndicatorsResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n ],\n exports: [SkyStatusIndicatorComponent],\n})\nexport class SkyStatusIndicatorModule {}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n inject,\n} from '@angular/core';\nimport { SkyMutationObserverService } from '@skyux/core';\n\nconst CLASS_NAME = 'sky-highlight-mark';\nconst SPECIAL_CHAR_REGEX = /[-/\\\\^$*+?.()|[\\]{}]/g;\n\nfunction markNode(node: Text, searchRegex: RegExp): number {\n // The search regular expression is reused across calls to markNode(), so reset\n // it so it searches from the start of the string each time.\n searchRegex.lastIndex = 0;\n\n const text = node.nodeValue;\n\n if (text) {\n const match = searchRegex.exec(text);\n\n if (match) {\n // Split apart text node with mark tags in the middle on the search term.\n const matchIndex = match.index;\n\n const middle = node.splitText(matchIndex);\n middle.splitText(searchRegex.lastIndex - matchIndex);\n const middleClone = middle.cloneNode(true);\n\n const markNode = document.createElement('mark');\n markNode.className = CLASS_NAME;\n markNode.appendChild(middleClone);\n\n /* istanbul ignore else */\n if (middle.parentNode) {\n middle.parentNode.replaceChild(markNode, middle);\n }\n\n return 1;\n }\n }\n\n return 0;\n}\n\nfunction markTextNodes(node: Node, searchRegex: RegExp): number {\n if (node.nodeType === 3) {\n return markNode(node as Text, searchRegex);\n } else if (node.nodeType === 1 && node.childNodes) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const childNode = node.childNodes[i];\n i += markTextNodes(childNode, searchRegex);\n }\n }\n\n return 0;\n}\n\nfunction removeHighlight(el: ElementRef): void {\n const matchedElements = Array.from(\n (el.nativeElement as Element).querySelectorAll(`mark.${CLASS_NAME}`),\n );\n\n if (matchedElements) {\n for (const node of matchedElements) {\n const parentNode = node.parentNode;\n\n if (parentNode && node.firstChild) {\n parentNode.replaceChild(node.firstChild, node);\n parentNode.normalize();\n }\n }\n }\n}\n\nfunction createSearchRegex(searchTerms: string[]): RegExp | undefined {\n let searchRegex: RegExp | undefined;\n\n if (searchTerms.length > 0) {\n // Escape all the special regular expression characters by adding a\n // preceding '\\' to each match.\n searchTerms = searchTerms.map((searchTerm) =>\n searchTerm.replace(SPECIAL_CHAR_REGEX, '\\\\$&'),\n );\n\n searchRegex = new RegExp(searchTerms.join('|'), 'gi');\n }\n\n return searchRegex;\n}\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n// @dynamic\n/**\n * Highlights all matching text within the current DOM element.\n */\n@Directive({\n selector: '[skyHighlight]',\n standalone: true,\n})\nexport class SkyTextHighlightDirective\n implements OnChanges, AfterViewInit, OnDestroy\n{\n /**\n * The text to highlight.\n */\n @Input()\n public set skyHighlight(value: string | string[] | undefined) {\n value = value || [];\n\n if (Array.isArray(value)) {\n this.#searchTerms = value.filter((item) => !!item);\n // Reorder strings by their length in descending order to avoid missing matches\n // that contain substrings of other matches.\n this.#searchTerms.sort(function (a, b) {\n return b.length - a.length;\n });\n } else {\n this.#searchTerms = [value as string];\n }\n }\n\n #existingHighlight = false;\n\n #observer: MutationObserver | undefined;\n\n #searchTerms: string[] = [];\n\n #el = inject(ElementRef);\n #observerSvc = inject(SkyMutationObserverService);\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['skyHighlight'] && !changes['skyHighlight'].firstChange) {\n this.#highlight();\n }\n }\n\n public ngAfterViewInit(): void {\n this.#observer = this.#observerSvc.create(() => {\n this.#highlight();\n });\n\n this.#highlight();\n }\n\n public ngOnDestroy(): void {\n this.#disconnectObserver();\n }\n\n #disconnectObserver(): void {\n if (this.#observer) {\n this.#observer.disconnect();\n }\n }\n\n #highlight(): void {\n this.#disconnectObserver();\n\n if (this.#existingHighlight) {\n removeHighlight(this.#el);\n }\n\n const node = this.#el.nativeElement;\n\n if (node) {\n const searchRegex = createSearchRegex(this.#searchTerms);\n\n // mark all matched text in the DOM\n if (searchRegex) {\n markTextNodes(node, searchRegex);\n this.#existingHighlight = true;\n }\n }\n\n this.#observeDom();\n }\n\n #observeDom(): void {\n if (this.#observer) {\n const config = {\n attributes: false,\n childList: true,\n characterData: true,\n subtree: true,\n };\n\n this.#observer.observe(this.#el.nativeElement, config);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyMutationObserverService } from '@skyux/core';\n\nimport { SkyTextHighlightDirective } from './text-highlight.directive';\n\n@NgModule({\n imports: [SkyTextHighlightDirective],\n exports: [SkyTextHighlightDirective],\n providers: [SkyMutationObserverService],\n})\nexport class SkyTextHighlightModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { SkyLiveAnnouncerService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { take } from 'rxjs';\n\n@Component({\n selector: 'sky-token',\n templateUrl: './token.component.html',\n styleUrls: ['./token.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyTokenComponent {\n /**\n * Whether to disable the token to prevent users from selecting it, dismissing it,\n * or navigating to it with the arrow keys. When the token is disabled,\n * users can still place focus on it using the `Tab` key.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = !!value;\n }\n\n public get disabled(): boolean {\n return this.#_disabled;\n }\n\n /**\n * The ARIA label for the token's close button. This sets the button's `aria-label` to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n * For more information about the `aria-label` attribute, see the [WAI-ARIA definition](https://www.w3.org/TR/wai-aria/#aria-label).\n * @default \"Remove item\"\n */\n @Input()\n public ariaLabel: string | undefined;\n\n /**\n * Whether users can remove the token from the list by selecting the close button.\n * @default true\n */\n @Input()\n public set dismissible(value: boolean | undefined) {\n this.#_dismissible = value !== false;\n }\n\n public get dismissible(): boolean {\n return this.#_dismissible;\n }\n\n /**\n * Whether users can place focus on the token using the `Tab`. This does not\n * affect the ability to select the token, dismiss it, or navigate to it with the arrow keys.\n * @default true\n */\n @Input()\n public set focusable(value: boolean | undefined) {\n this.tabIndex = value !== false ? 0 : -1;\n }\n\n /**\n * Used by the tokens component to set the appropriate role for each token.\n * @internal\n */\n @Input()\n public role: string | undefined;\n\n /**\n * Fires when users click the close button.\n */\n @Output()\n public dismiss = new EventEmitter<void>();\n\n /**\n * Fires when users place focus on the token by navigating to it with the `Tab` key.\n */\n @Output()\n public tokenFocus = new EventEmitter<void>();\n\n @ViewChild('actionButton', { read: ElementRef, static: true })\n public actionButtonRef: ElementRef | undefined;\n\n public isFocused = false;\n public tokenActive = false;\n public closeActive = false;\n public tabIndex = 0;\n\n #elementRef = inject(ElementRef);\n\n readonly #liveAnnouncerSvc = inject(SkyLiveAnnouncerService);\n readonly #resourcesSvc = inject(SkyLibResourcesService);\n\n #_disabled = false;\n #_dismissible = true;\n\n protected onFocusIn(): void {\n if (!this.isFocused) {\n this.tokenFocus.emit();\n this.isFocused = true;\n }\n }\n\n protected onFocusOut(event: FocusEvent): void {\n this.isFocused = this.#elementRef.nativeElement.contains(\n event.relatedTarget,\n );\n }\n\n public dismissToken(event: Event): void {\n event.stopPropagation();\n this.#announceState(\n 'skyux_tokens_token_dismissed',\n this.actionButtonRef?.nativeElement.textContent.trim(),\n );\n this.dismiss.emit();\n }\n\n public focusElement(): void {\n this.actionButtonRef?.nativeElement.focus();\n }\n\n public setTokenActive(tokenActive: boolean): void {\n this.tokenActive = tokenActive;\n }\n\n public setCloseActive(closeActive: boolean): void {\n this.closeActive = closeActive;\n }\n\n #announceState(resourceString: string, ...args: any[]): void {\n this.#resourcesSvc\n .getString(resourceString, ...args)\n .pipe(take(1))\n .subscribe((internationalizedString) => {\n this.#liveAnnouncerSvc.announce(internationalizedString);\n });\n }\n}\n","<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\" iconName=\"dismiss\" />\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","export enum SkyTokensMessageType {\n /**\n * Places focus on the last token in the list.\n */\n FocusLastToken = 0,\n\n /**\n * Places focus on the token that is currently selected.\n */\n FocusActiveToken = 1,\n\n /**\n * Places focus on the token before the currently selected token.\n */\n FocusPreviousToken = 2,\n\n /**\n * Places focus on the token after the currently selected token.\n */\n FocusNextToken = 3,\n\n /**\n * Removes the token that is currently selected from the list of tokens.\n */\n RemoveActiveToken = 4,\n}\n","import { animate, style, transition, trigger } from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n TrackByFunction,\n ViewChildren,\n inject,\n} from '@angular/core';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTokenComponent } from './token.component';\nimport { SkyToken } from './types/token';\nimport { SkyTokenSelectedEventArgs } from './types/token-selected-event-args';\nimport { SkyTokensMessage } from './types/tokens-message';\nimport { SkyTokensMessageType } from './types/tokens-message-type';\n\nconst DISPLAY_WITH_DEFAULT = 'name';\n\n/**\n * Creates a container that enables navigation between tokens using keyboard arrow keys.\n * This is useful when combined with other components where the <kbd>Tab</kbd> key is\n * reserved for other functions, such as the SKY UX Lookup component.\n */\n@Component({\n selector: 'sky-tokens',\n templateUrl: './tokens.component.html',\n styleUrls: ['./tokens.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('blockAnimationOnLoad', [transition(':enter', [])]),\n trigger('dismiss', [\n transition(':enter', [\n style({\n opacity: 0,\n width: 0,\n }),\n animate(\n '150ms ease-in',\n style({\n opacity: 1,\n width: '*',\n }),\n ),\n ]),\n transition(':leave', [\n animate(\n '150ms ease-in',\n style({\n opacity: 0,\n width: 0,\n }),\n ),\n ]),\n ]),\n ],\n standalone: false,\n})\nexport class SkyTokensComponent implements OnDestroy {\n /**\n * Whether to disable the tokens list to prevent users from selecting tokens,\n * dismissing tokens, or navigating through the list with the arrow keys. When the tokens list\n * is disabled, users can still place focus on items in the list using the `Tab` key.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = !!value;\n }\n\n public get disabled(): boolean {\n return this.#_disabled;\n }\n\n /**\n * Whether users can remove a token from the list by selecting a token's close button.\n * @default true\n */\n @Input()\n public set dismissible(value: boolean | undefined) {\n this.#_dismissible = value !== false;\n }\n\n public get dismissible(): boolean {\n return this.#_dismissible;\n }\n\n /**\n * The token property to display for each item in the tokens list.\n * @default \"name\"\n */\n @Input()\n public set displayWith(value: string | undefined) {\n this.#_displayWith = value || DISPLAY_WITH_DEFAULT;\n }\n\n public get displayWith(): string {\n return this.#_displayWith;\n }\n\n /**\n * The token property that represents the token's unique identifier. When this property\n * is set, animations are enabled when dismissing tokens.\n */\n @Input()\n public trackWith: string | undefined;\n\n /**\n * Whether users can place focus on tokens in the list using the `Tab` key.\n * This does not affect the ability of users to select tokens, dismiss tokens,\n * or navigate through the list with the arrow keys.\n * @default true\n */\n @Input()\n public set focusable(value: boolean | undefined) {\n this.#_focusable = value !== false;\n }\n\n public get focusable(): boolean {\n return this.#_focusable;\n }\n\n /**\n * The array of tokens to include in the list.\n */\n @Input()\n public set tokens(value: SkyToken[] | undefined) {\n this.#_tokens = value || [];\n // The previous behavior was to set `this._tokens = value`, then emit `this._tokens`,\n // which would emit `undefined` instead of a default value of `[]` returned by the\n // get accessor when set to `undefined`. Emitting `value` instead of `this.#_tokensOrDefault`\n // preserves that behavior.\n this.tokensChange.emit(value);\n }\n\n public get tokens(): SkyToken[] {\n return this.#_tokens;\n }\n\n /**\n * The observable of `SkyTokensMessage` that can place focus on a\n * particular token or remove the active token from the list.\n */\n @Input()\n public set messageStream(value: Subject<SkyTokensMessage> | undefined) {\n this.#_messageStream = value || new Subject<SkyTokensMessage>();\n this.#initMessageStream();\n }\n\n public get messageStream(): Subject<SkyTokensMessage> {\n return this.#_messageStream;\n }\n\n /**\n * Fires when users navigate through the tokens list with the `Tab` key\n * and attempt to move past the final token in the list.\n */\n @Output()\n public focusIndexOverRange = new EventEmitter<void>();\n\n /**\n * Fires when users navigate through the tokens list with the `Tab` key\n * and attempt to move before the first token in the list.\n */\n @Output()\n public focusIndexUnderRange = new EventEmitter<void>();\n\n /**\n * Fires when users select a token in the list. This event emits the selected token.\n */\n @Output()\n public tokenSelected = new EventEmitter<SkyTokenSelectedEventArgs>();\n\n /**\n * Fires when the tokens in the list change.\n * This event emits an array of the tokens in the updated list.\n */\n @Output()\n public tokensChange = new EventEmitter<SkyToken[]>();\n\n /**\n * Fires when all animations on the tokens are complete.\n * @internal\n */\n @Output()\n public tokensRendered = new EventEmitter<void>();\n\n public get activeIndex(): number {\n return this.#_activeIndex;\n }\n\n public set activeIndex(value: number) {\n if (value >= this.#_tokens.length) {\n value = this.#_tokens.length - 1;\n this.focusIndexOverRange.emit();\n }\n\n if (value < 0) {\n value = 0;\n this.focusIndexUnderRange.emit();\n }\n\n this.#_activeIndex = value || 0;\n }\n\n public trackTokenFn: TrackByFunction<SkyToken>;\n\n #_disabled = false;\n #_dismissible = true;\n #_focusable = true;\n #_tokens: SkyToken[] = [];\n #_displayWith = DISPLAY_WITH_DEFAULT;\n\n @ViewChildren(SkyTokenComponent)\n public tokenComponents: QueryList<SkyTokenComponent> | undefined;\n\n #messageStreamSub: Subscription | undefined;\n #ngUnsubscribe = new Subject<void>();\n\n #changeDetector = inject(ChangeDetectorRef);\n\n #_activeIndex = 0;\n #_messageStream = new Subject<SkyTokensMessage>();\n\n constructor() {\n this.#initMessageStream();\n\n // Angular calls the trackBy function without applying the component instance's scope.\n // Use a fat-arrow function so the current component instance's trackWith property can\n // be referenced.\n this.trackTokenFn = (_index, item): unknown => {\n if (this.trackWith) {\n return item.value[this.trackWith];\n }\n\n return item;\n };\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onTokenClick(token: SkyToken): void {\n if (this.disabled) {\n return;\n }\n\n this.#notifyTokenSelected(token);\n }\n\n public animationDone(): void {\n this.tokensRendered.emit();\n }\n\n public onTokenKeyDown(event: KeyboardEvent): void {\n if (!this.disabled) {\n switch (event.key) {\n case 'Left':\n case 'ArrowLeft':\n this.#_messageStream.next({\n type: SkyTokensMessageType.FocusPreviousToken,\n });\n event.preventDefault();\n break;\n\n case 'Right':\n case 'ArrowRight':\n this.#_messageStream.next({\n type: SkyTokensMessageType.FocusNextToken,\n });\n event.preventDefault();\n break;\n }\n }\n }\n\n public selectToken(token: SkyToken): void {\n if (!this.disabled) {\n this.#notifyTokenSelected(token);\n }\n }\n\n public removeToken(token: SkyToken): void {\n this.tokens = this.tokens.filter((t) => t !== token);\n this.#changeDetector.detectChanges();\n }\n\n #focusPreviousToken(): void {\n this.activeIndex--;\n this.#focusActiveToken();\n }\n\n #focusNextToken(): void {\n this.activeIndex++;\n this.#focusActiveToken();\n }\n\n #focusLastToken(): void {\n if (this.tokenComponents) {\n this.activeIndex = this.tokenComponents.length - 1;\n this.#focusActiveToken();\n }\n }\n\n #focusActiveToken(): void {\n if (this.tokenComponents) {\n const tokenComponent = this.tokenComponents.find(\n (_comp: SkyTokenComponent, i: number) => {\n return this.activeIndex === i;\n },\n );\n\n if (tokenComponent) {\n tokenComponent.focusElement();\n }\n }\n }\n\n #removeActiveToken(): void {\n const token = this.tokens[this.activeIndex];\n if (token) {\n this.removeToken(token);\n }\n }\n\n #initMessageStream(): void {\n if (this.#messageStreamSub) {\n this.#messageStreamSub.unsubscribe();\n }\n\n this.#messageStreamSub = this.messageStream\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((message: SkyTokensMessage) => {\n switch (message.type) {\n case SkyTokensMessageType.FocusLastToken:\n this.#focusLastToken();\n break;\n\n case SkyTokensMessageType.FocusActiveToken:\n this.#focusActiveToken();\n break;\n\n case SkyTokensMessageType.FocusPreviousToken:\n this.#focusPreviousToken();\n break;\n\n case SkyTokensMessageType.FocusNextToken:\n this.#focusNextToken();\n break;\n\n case SkyTokensMessageType.RemoveActiveToken:\n this.#removeActiveToken();\n break;\n }\n });\n }\n\n #notifyTokenSelected(token: SkyToken): void {\n this.tokenSelected.emit({\n token,\n });\n }\n}\n","<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n @for (token of tokens; track trackTokenFn(i, token); let i = $index) {\n <sky-token\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (@dismiss.done)=\"animationDone()\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n }\n <div class=\"sky-tokens-content\" [attr.role]=\"tokens.length ? 'row' : null\">\n <div [attr.role]=\"tokens.length ? 'gridcell' : null\">\n <ng-content />\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyScreenReaderLabelDirective } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyTokenComponent } from './token.component';\nimport { SkyTokensComponent } from './tokens.component';\n\n@NgModule({\n declarations: [SkyTokenComponent, SkyTokensComponent],\n imports: [\n CommonModule,\n SkyIconModule,\n SkyIndicatorsResourcesModule,\n SkyIdModule,\n SkyScreenReaderLabelDirective,\n ],\n exports: [SkyTokenComponent, SkyTokensComponent],\n})\nexport class SkyTokensModule {}\n","import {\n ElementRef,\n Injectable,\n OnDestroy,\n Renderer2,\n RendererFactory2,\n} from '@angular/core';\n\nconst busyElements: Record<\n string,\n {\n busyEl: HTMLElement | undefined;\n listener: () => void;\n restoreFocusElement?: HTMLElement | undefined;\n restoreFocusCheckElement?: HTMLElement | undefined;\n }\n> = {};\n\n// Need to add the following to classes which contain static methods.\n// See: https://github.com/ng-packagr/ng-packagr/issues/641\n/**\n * @internal\n * @dynamic\n */\n@Injectable()\nexport class SkyWaitAdapterService implements OnDestroy {\n public static isPageWaitActive = false;\n\n #focusableElements: HTMLElement[] | undefined;\n #renderer: Renderer2;\n\n constructor(rendererFactory: RendererFactory2) {\n this.#renderer = rendererFactory.createRenderer(undefined, null);\n }\n\n public ngOnDestroy(): void {\n this.#clearListeners();\n }\n\n public setWaitBounds(waitEl: ElementRef): void {\n this.#renderer.setStyle(\n waitEl.nativeElement.parentElement,\n 'position',\n 'relative',\n );\n }\n\n public removeWaitBounds(waitEl: ElementRef): void {\n this.#renderer.removeStyle(waitEl.nativeElement.parentElement, 'position');\n }\n\n public setBusyState(\n waitEl: ElementRef,\n isFullPage: boolean,\n isWaiting: boolean,\n isNonBlocking: boolean,\n waitComponentId?: string,\n ): void {\n const busyEl = isFullPage\n ? document.body\n : waitEl.nativeElement.parentElement;\n\n if (!isNonBlocking) {\n if (isWaiting) {\n let restoreFocusElement: HTMLElement | undefined = undefined;\n let restoreFocusCheckElement: HTMLElement | undefined = undefined;\n this.#renderer.setAttribute(busyEl, 'aria-busy', 'true');\n\n // Remove focus from page when full page blocking wait\n if (isFullPage || busyEl.contains(document.activeElement)) {\n if (document.activeElement !== document.body) {\n restoreFocusElement = document.activeElement as HTMLElement;\n }\n this.#clearDocumentFocus();\n restoreFocusCheckElement = document.activeElement as HTMLElement;\n }\n\n if (isFullPage) {\n SkyWaitAdapterService.isPageWaitActive = true;\n const endListenerFunc = this.#renderer.listen(\n document.body,\n 'keydown',\n (event: KeyboardEvent) => {\n /*istanbul ignore else */\n if (event.key) {\n /* istanbul ignore else */\n if (event.key.toLowerCase() === 'tab') {\n (event.target as HTMLElement).blur();\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n this.#clearDocumentFocus();\n }\n }\n },\n );\n\n if (waitComponentId) {\n busyElements[waitComponentId] = {\n listener: endListenerFunc,\n busyEl: undefined,\n restoreFocusElement,\n restoreFocusCheckElement,\n };\n }\n } else {\n const endListenerFunc = this.#renderer.listen(\n busyEl,\n 'focusin',\n (event: KeyboardEvent) => {\n /* istanbul ignore else */\n if (!isNonBlocking) {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n\n if (SkyWaitAdapterService.isPageWaitActive) {\n this.#clearDocumentFocus();\n } else {\n // Propagate tab navigation if attempted into waited element\n const target = event.target as HTMLElement;\n\n if (target) {\n target.blur();\n this.#focusNextElement(target, this.#isShift(event));\n }\n }\n }\n },\n );\n\n if (waitComponentId) {\n busyElements[waitComponentId] = {\n listener: endListenerFunc,\n busyEl,\n restoreFocusElement,\n restoreFocusCheckElement,\n };\n }\n }\n } else {\n this.#renderer.removeAttribute(busyEl, 'aria-busy');\n\n if (isFullPage) {\n SkyWaitAdapterService.isPageWaitActive = false;\n }\n\n if (waitComponentId && waitComponentId in busyElements) {\n const busyElement = busyElements[waitComponentId];\n\n busyElement.listener();\n\n // If there is a restore focus element and the focus has not moved, restore focus.\n if (busyElement.restoreFocusCheckElement === document.activeElement) {\n busyElement.restoreFocusElement?.focus();\n }\n\n delete busyElements[waitComponentId];\n }\n }\n }\n }\n\n #focusNextElement(targetElement: HTMLElement, shiftKey: boolean): void {\n const focusable = this.#getFocusableElements();\n\n // If shift tab, go in the other direction\n const modifier = shiftKey ? -1 : 1;\n\n // Find the next navigable element that isn't waiting\n const startingIndex = focusable.indexOf(targetElement);\n let curIndex = startingIndex + modifier;\n while (\n focusable[curIndex] &&\n this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n curIndex += modifier;\n }\n\n if (\n focusable[curIndex] &&\n !this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n focusable[curIndex].focus();\n } else {\n // Try wrapping the navigation\n /* istanbul ignore next */\n /* sanity check */\n curIndex = modifier > 0 ? 0 : focusable.length - 1;\n while (\n curIndex !== startingIndex &&\n focusable[curIndex] &&\n this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n /* istanbul ignore next */\n /* sanity check */\n curIndex += modifier;\n }\n\n /* istanbul ignore else */\n /* sanity check */\n if (\n focusable[curIndex] &&\n !this.#isElementBusyOrHidden(focusable[curIndex])\n ) {\n focusable[curIndex].focus();\n } else {\n // No valid target, wipe focus\n this.#clearDocumentFocus();\n }\n }\n\n // clear focusableElements list\n this.#focusableElements = undefined;\n }\n\n #isShift(event: Event): boolean {\n // Determine if shift+tab was used based on element order\n const elements = this.#getFocusableElements().filter(\n (elem) => !this.#isElementHidden(elem),\n );\n\n const previousInd = elements.indexOf((event as any).relatedTarget);\n const currentInd = elements.indexOf(event.target as HTMLElement);\n\n return (\n previousInd === currentInd + 1 ||\n (previousInd === 0 && currentInd === elements.length - 1) ||\n previousInd > currentInd ||\n !(event as any).relatedTarget\n );\n }\n\n #isElementHidden(element: HTMLElement): boolean {\n const style = window.getComputedStyle(element);\n return style.display === 'none' || style.visibility === 'hidden';\n }\n\n #isElementBusyOrHidden(element: HTMLElement): boolean {\n if (this.#isElementHidden(element)) {\n return true;\n }\n\n for (const key of Object.keys(busyElements)) {\n const parentElement = busyElements[key].busyEl;\n if (parentElement && parentElement.contains(element)) {\n return true;\n }\n }\n return false;\n }\n\n #clearDocumentFocus(): void {\n const activeElement = document.activeElement as HTMLElement;\n\n /* istanbul ignore else */\n if (activeElement) {\n activeElement.blur();\n }\n\n document.body.focus();\n }\n\n #getFocusableElements(): HTMLElement[] {\n // Keep this cached so we can reduce queries\n if (this.#focusableElements) {\n return this.#focusableElements;\n }\n\n // Select all possible focusable elements\n const focusableElements =\n 'a[href], ' +\n 'area[href], ' +\n \"input:not([disabled]):not([tabindex='-1']), \" +\n \"button:not([disabled]):not([tabindex='-1']), \" +\n \"select:not([disabled]):not([tabindex='-1']), \" +\n \"textarea:not([disabled]):not([tabindex='-1']), \" +\n 'iframe, object, embed, ' +\n \"*[tabindex]:not([tabindex='-1']), \" +\n '*[contenteditable=true]';\n\n this.#focusableElements = Array.prototype.filter.call(\n document.body.querySelectorAll(focusableElements),\n (element: HTMLElement) => {\n return (\n element.offsetWidth > 0 ||\n element.offsetHeight > 0 ||\n element === document.activeElement\n );\n },\n );\n return this.#focusableElements;\n }\n\n #clearListeners(): void {\n SkyWaitAdapterService.isPageWaitActive = false;\n for (const key of Object.keys(busyElements)) {\n busyElements[key].listener();\n delete busyElements[key];\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyLiveAnnouncerService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyIndicatorsResourcesModule } from '../shared/sky-indicators-resources.module';\n\nimport { SkyWaitAdapterService } from './wait-adapter.service';\n\nlet nextId = 0;\n\n@Component({\n selector: 'sky-wait',\n templateUrl: './wait.component.html',\n styleUrls: ['./wait.component.scss'],\n providers: [SkyWaitAdapterService],\n imports: [CommonModule, SkyIndicatorsResourcesModule],\n})\nexport class SkyWaitComponent implements OnInit, OnDestroy {\n /**\n * The ARIA label for the wait icon.\n * This sets the icon's `aria-label` attribute to provide a text equivalent for screen readers\n * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility) when an element or page loads and when users tab to a wait icon.\n * The default value varies based on whether the wait is for an element or a page and whether it is a blocking wait. For example, the default for a page-level blocking wait is \"Page loading. Please wait.\"\n * For element-level waits, we recommend that consumers overwrite the default to describe the specific element.\n * \"For more information, see the Design tab and the [WAI-ARIA `aria-label` definition](https://www.w3.org/TR/wai-aria/#aria-label).\n */\n @Input()\n public set ariaLabel(value: string | undefined) {\n this.#customAriaLabel = value;\n this.#publishAriaLabel();\n }\n\n /**\n * When set to `true`, wait indication appears on the parent element of the `sky-wait` component.\n */\n @Input()\n public set isWaiting(value: boolean | undefined) {\n if (!this.isFullPage) {\n if (value) {\n this.#adapterService.setWaitBounds(this.#elRef);\n } else {\n this.#adapterService.removeWaitBounds(this.#elRef);\n }\n }\n\n this.#adapterService.setBusyState(\n this.#elRef,\n !!this.isFullPage,\n !!value,\n !!this.isNonBlocking,\n this.#id,\n );\n\n if (value) {\n this.#liveAnnouncer.announce(this.ariaLabelStream.getValue());\n } else if (this.#_isWaiting) {\n // NOTE: This should only happen if the wait was previously waiting and no longer is waiting.\n this.#liveAnnouncer.announce(\n this.screenReaderCompletedTextStream.getValue(),\n );\n }\n\n this.#_isWaiting = value;\n }\n\n public get isWaiting(): boolean | undefined {\n return this.#_isWaiting;\n }\n\n /**\n * When set to `true`, wait indication appears on the page level instead of the\n * parent element level. We recommend that you use the `beginBlockingPageWait` or\n * `beginNonBlockingPageWait` functions of the `SkyWaitService` instead of setting this\n * on the component level.\n * @default false\n */\n @Input()\n public set isFullPage(value: boolean | undefined) {\n /* istanbul ignore else: untestable */\n if (value) {\n this.#adapterService.removeWaitBounds(this.#elRef);\n } else if (this.isWaiting) {\n this.#adapterService.setWaitBounds(this.#elRef);\n }\n\n this.#_isFullPage = value;\n this.#publishAriaLabel();\n this.#publishScreenReaderCompletedText();\n }\n\n public get isFullPage(): boolean | undefined {\n return this.#_isFullPage;\n }\n\n /**\n * When set to `true`, wait indication appears in the bottom left corner of the element\n * instead of hiding the entire parent element.\n * @default false\n */\n @Input()\n public set isNonBlocking(value: boolean | undefined) {\n this.#_isNonBlocking = value;\n this.#publishAriaLabel();\n }\n\n public get isNonBlocking(): boolean | undefined {\n return this.#_isNonBlocking;\n }\n\n /**\n * Screen reader text [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility) when the wait toggles off.\n * The default varies based on whether the wait is for an element or a page.\n * For example, the default for a page-level wait is \"Page loading complete.\"\n * For element-level waits, we recommend that consumers overwrite the default to describe the specific element.\n * For more information, see the Design tab and the [WCAG documentation on status messages](https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html).\n */\n @Input()\n public set screenReaderCompletedText(value: string | undefined) {\n this.#customScreenReaderCompletedText = value;\n this.#publishScreenReaderCompletedText();\n }\n\n public ariaLabelStream = new BehaviorSubject<string>('');\n public ariaLiveText = '';\n public screenReaderCompletedTextStream = new BehaviorSubject<string>('');\n\n #customAriaLabel: string | undefined;\n #customScreenReaderCompletedText: string | undefined;\n #id = `sky-wait-${++nextId}`;\n #ngUnsubscribe = new Subject<void>();\n\n #_isFullPage: boolean | undefined;\n #_isNonBlocking: boolean | undefined;\n #_isWaiting: boolean | undefined;\n\n readonly #adapterService = inject(SkyWaitAdapterService);\n readonly #elRef = inject(ElementRef);\n readonly #liveAnnouncer = inject(SkyLiveAnnouncerService);\n readonly #resourceSvc = inject(SkyLibResourcesService);\n\n public ngOnInit(): void {\n this.#publishAriaLabel();\n this.#publishScreenReaderCompletedText();\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n #publishAriaLabel(): void {\n if (this.#customAriaLabel) {\n this.ariaLabelStream.next(this.#customAriaLabel);\n } else {\n const type = this.isFullPage ? '_page' : '';\n const blocking = this.isNonBlocking ? '' : '_blocking';\n const key = `skyux_wait${type}${blocking}_aria_alt_text`;\n this.#resourceSvc\n .getString(key)\n .pipe(take(1), takeUntil(this.#ngUnsubscribe))\n .subscribe((value) => {\n this.ariaLabelStream.next(value);\n });\n }\n }\n\n #publishScreenReaderCompletedText(): void {\n if (this.#customScreenReaderCompletedText) {\n this.screenReaderCompletedTextStream.next(\n this.#customScreenReaderCompletedText,\n );\n } else {\n const type = this.isFullPage ? '_page' : '';\n const key = `skyux_wait${type}_screen_reader_completed_text`;\n this.#resourceSvc\n .getString(key)\n .pipe(take(1), takeUntil(this.#ngUnsubscribe))\n .subscribe((value) => {\n this.screenReaderCompletedTextStream.next(value);\n });\n }\n }\n}\n","<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n @if (isWaiting) {\n <div\n class=\"sky-wait-mask\"\n role=\"progressbar\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n }\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SkyWaitComponent } from './wait.component';\n\n@NgModule({\n imports: [SkyWaitComponent],\n exports: [SkyWaitComponent],\n})\nexport class SkyWaitModule {}\n","import { Component, Input } from '@angular/core';\n\nimport { SkyWaitComponent } from './wait.component';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-wait-page',\n templateUrl: './wait-page.component.html',\n styleUrls: ['./wait-page.component.scss'],\n imports: [SkyWaitComponent],\n})\nexport class SkyWaitPageComponent {\n @Input()\n public hasBlockingWait: boolean | undefined;\n\n @Input()\n public hasNonBlockingWait: boolean | undefined;\n}\n","<div class=\"sky-wait-page\">\n <sky-wait\n data-sky-id=\"page-wait-non-blocking\"\n [isFullPage]=\"true\"\n [isNonBlocking]=\"true\"\n [isWaiting]=\"hasNonBlockingWait\"\n />\n <sky-wait\n data-sky-id=\"page-wait-blocking\"\n [isFullPage]=\"true\"\n [isWaiting]=\"hasBlockingWait\"\n />\n</div>\n","import {\n ComponentRef,\n EnvironmentInjector,\n Injectable,\n inject,\n} from '@angular/core';\nimport { SkyAppWindowRef, SkyDynamicComponentService } from '@skyux/core';\n\nimport { Observable, defer as observableDefer } from 'rxjs';\nimport { finalize } from 'rxjs/operators';\n\nimport { SkyWaitPageComponent } from './wait-page.component';\n\nlet waitComponent: SkyWaitPageComponent | undefined;\nlet waitComponentRef: ComponentRef<SkyWaitPageComponent> | undefined;\nlet pageWaitBlockingCount = 0;\nlet pageWaitNonBlockingCount = 0;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyWaitService {\n #environmentInjector = inject(EnvironmentInjector);\n #windowSvc = inject(SkyAppWindowRef);\n #dynamicComponentService = inject(SkyDynamicComponentService);\n\n /**\n * Starts a blocking page wait on the page.\n */\n public beginBlockingPageWait(): void {\n this.#beginPageWait(true);\n }\n\n /**\n * Starts a non-blocking page wait on the page.\n */\n public beginNonBlockingPageWait(): void {\n this.#beginPageWait(false);\n }\n\n /**\n * Ends a blocking page wait on the page. Blocking page wait indication\n * is removed when all running blocking page waits are ended.\n */\n public endBlockingPageWait(): void {\n this.#endPageWait(true);\n }\n\n /**\n * Ends a non-blocking page wait on the page. Non-blocking page wait indication\n * is removed when all running non-blocking page waits are ended.\n */\n public endNonBlockingPageWait(): void {\n this.#endPageWait(false);\n }\n\n /**\n * Clears all blocking and non-blocking page waits on the page.\n */\n public clearAllPageWaits(): void {\n this.#clearPageWait(true);\n this.#clearPageWait(false);\n }\n\n /**\n * @internal\n */\n public dispose(): void {\n if (waitComponent) {\n waitComponent = undefined;\n pageWaitBlockingCount = 0;\n pageWaitNonBlockingCount = 0;\n this.#dynamicComponentService.removeComponent(waitComponentRef);\n }\n }\n\n /**\n * Launches a page wait and automatically stops when the specific asynchronous event completes.\n */\n public blockingWrap<T>(observable: Observable<T>): Observable<T> {\n return observableDefer(() => {\n this.beginBlockingPageWait();\n return observable.pipe(finalize(() => this.endBlockingPageWait()));\n });\n }\n\n /**\n * Launches a non-blocking page wait and automatically stops when the specific\n * asynchronous event completes.\n */\n public nonBlockingWrap<T>(observable: Observable<T>): Observable<T> {\n return observableDefer(() => {\n this.beginNonBlockingPageWait();\n return observable.pipe(finalize(() => this.endNonBlockingPageWait()));\n });\n }\n\n #setWaitComponentProperties(isBlocking: boolean): void {\n if (waitComponent) {\n if (isBlocking) {\n waitComponent.hasBlockingWait = true;\n pageWaitBlockingCount++;\n } else {\n waitComponent.hasNonBlockingWait = true;\n pageWaitNonBlockingCount++;\n }\n }\n }\n\n #beginPageWait(isBlocking: boolean): void {\n if (!waitComponent) {\n /*\n Dynamic component creation needs to be done in a timeout to prevent ApplicationRef from\n crashing when wait service is called in Angular lifecycle functions.\n */\n this.#windowSvc.nativeWindow.setTimeout(() => {\n // Ensuring here that we recheck this after the setTimeout is over so that we don't clash\n // with any other waits that are created.\n if (!waitComponent) {\n waitComponentRef = this.#dynamicComponentService.createComponent(\n SkyWaitPageComponent,\n {\n environmentInjector: this.#environmentInjector,\n },\n );\n\n waitComponent = waitComponentRef.instance;\n }\n\n this.#setWaitComponentProperties(isBlocking);\n });\n } else {\n this.#setWaitComponentProperties(isBlocking);\n }\n }\n\n #endPageWait(isBlocking: boolean): void {\n /*\n Needs to yield so that wait creation can finish\n before it is dismissed in the event of a race.\n */\n this.#windowSvc.nativeWindow.setTimeout(() => {\n if (waitComponent) {\n if (isBlocking) {\n if (pageWaitBlockingCount > 0) {\n pageWaitBlockingCount--;\n }\n\n if (pageWaitBlockingCount < 1) {\n waitComponent.hasBlockingWait = false;\n }\n } else {\n if (pageWaitNonBlockingCount > 0) {\n pageWaitNonBlockingCount--;\n }\n\n if (pageWaitNonBlockingCount < 1) {\n waitComponent.hasNonBlockingWait = false;\n }\n }\n }\n });\n }\n\n #clearPageWait(isBlocking: boolean): void {\n // Wait for the component to be created before clearing it.\n this.#windowSvc.nativeWindow.setTimeout(() => {\n if (waitComponent) {\n if (isBlocking) {\n pageWaitBlockingCount = 0;\n waitComponent.hasBlockingWait = false;\n } else {\n pageWaitNonBlockingCount = 0;\n waitComponent.hasNonBlockingWait = false;\n }\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1","i3.SkyExpansionIndicatorComponent","i3","i4","i1.SkyTokenComponent","take","observableDefer"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/indicators",
3
- "version": "12.0.0-alpha.13",
3
+ "version": "12.0.0-alpha.14",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -21,12 +21,12 @@
21
21
  "@angular/common": "^19.2.1",
22
22
  "@angular/core": "^19.2.1",
23
23
  "@angular/platform-browser": "^19.2.1",
24
- "@skyux-sdk/testing": "12.0.0-alpha.13",
25
- "@skyux/core": "12.0.0-alpha.13",
26
- "@skyux/help-inline": "12.0.0-alpha.13",
27
- "@skyux/i18n": "12.0.0-alpha.13",
28
- "@skyux/icon": "12.0.0-alpha.13",
29
- "@skyux/theme": "12.0.0-alpha.13"
24
+ "@skyux-sdk/testing": "12.0.0-alpha.14",
25
+ "@skyux/core": "12.0.0-alpha.14",
26
+ "@skyux/help-inline": "12.0.0-alpha.14",
27
+ "@skyux/i18n": "12.0.0-alpha.14",
28
+ "@skyux/icon": "12.0.0-alpha.14",
29
+ "@skyux/theme": "12.0.0-alpha.14"
30
30
  },
31
31
  "dependencies": {
32
32
  "tslib": "^2.8.1"