@skyux/progress-indicator 14.6.0 → 14.6.1

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.
@@ -1,16 +1,16 @@
1
- import * as i2 from '@angular/common';
1
+ import * as i1 from '@angular/common';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { NgModule, Pipe, Input, Optional, ChangeDetectionStrategy, Component, EventEmitter, ContentChildren, Output } from '@angular/core';
5
- import * as i1$1 from '@skyux/core';
6
- import { SkyTrimModule } from '@skyux/core';
4
+ import { NgModule, Pipe, inject, ChangeDetectorRef, Input, ChangeDetectionStrategy, Component, EventEmitter, ContentChildren, Output } from '@angular/core';
5
+ import * as i4 from '@skyux/core';
6
+ import { SkyAppWindowRef, SkyLogService, SkyTrimModule } from '@skyux/core';
7
7
  import * as i2$1 from '@skyux/help-inline';
8
8
  import { SkyHelpInlineModule } from '@skyux/help-inline';
9
- import * as i3 from '@skyux/icon';
9
+ import * as i2 from '@skyux/icon';
10
10
  import { SkyIconModule } from '@skyux/icon';
11
- import * as i1 from '@skyux/theme';
12
- import { SkyThemeModule } from '@skyux/theme';
13
- import * as i3$1 from '@skyux/i18n';
11
+ import * as i3 from '@skyux/theme';
12
+ import { SkyThemeService, SkyThemeModule } from '@skyux/theme';
13
+ import * as i2$2 from '@skyux/i18n';
14
14
  import { SkyLibResourcesService, SkyI18nModule } from '@skyux/i18n';
15
15
  import { Subject } from 'rxjs';
16
16
  import { takeUntil, delay, distinctUntilChanged } from 'rxjs/operators';
@@ -123,15 +123,15 @@ class SkyProgressIndicatorStatusMarkerComponent {
123
123
  #changeDetector;
124
124
  #_status;
125
125
  #_displayMode;
126
- constructor(changeDetector, themeSvc) {
126
+ constructor() {
127
127
  this.isComplete = false;
128
128
  this.#ngUnsubscribe = new Subject();
129
+ this.#changeDetector = inject(ChangeDetectorRef);
129
130
  this.#_status = SkyProgressIndicatorItemStatus.Active;
130
131
  this.#_displayMode = 'vertical';
131
- this.#changeDetector = changeDetector;
132
132
  // Update icons when theme changes.
133
- themeSvc?.settingsChange
134
- .pipe(takeUntil(this.#ngUnsubscribe))
133
+ inject(SkyThemeService, { optional: true })
134
+ ?.settingsChange.pipe(takeUntil(this.#ngUnsubscribe))
135
135
  .subscribe(() => {
136
136
  this.#changeDetector.markForCheck();
137
137
  });
@@ -140,15 +140,13 @@ class SkyProgressIndicatorStatusMarkerComponent {
140
140
  this.#ngUnsubscribe.next();
141
141
  this.#ngUnsubscribe.complete();
142
142
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorStatusMarkerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
144
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorStatusMarkerComponent, isStandalone: false, selector: "sky-progress-indicator-status-marker", inputs: { displayMode: "displayMode", status: "status" }, ngImport: i0, template: "<div\n class=\"sky-progress-indicator-status-marker\"\n role=\"presentation\"\n [ngClass]=\"displayMode | skyProgressIndicatorMarkerClass: status\"\n>\n <div class=\"sky-progress-indicator-status-marker-icon\">\n @if (isComplete) {\n <sky-icon iconName=\"checkmark\" />\n }\n </div>\n <div class=\"sky-progress-indicator-status-marker-line\"></div>\n</div>\n", styles: [".sky-progress-indicator-status-marker:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-vertical-width: auto;--sky-override-progress-indicator-status-marker-before-display: block;--sky-override-progress-indicator-status-marker-horizontal-icon-height: 15px;--sky-override-progress-indicator-status-marker-horizontal-padding-left: 5px;--sky-override-progress-indicator-status-marker-icon-active-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-border-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-icon-border-radius: 15px;--sky-override-progress-indicator-status-marker-icon-border-width: 2px;--sky-override-progress-indicator-status-marker-icon-margin-left: -1px;--sky-override-progress-indicator-status-marker-icon-margin-top: 1px;--sky-override-progress-indicator-status-marker-icon-pending-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-size: 15px;--sky-override-progress-indicator-status-marker-icon-success-color: #5a9936;--sky-override-progress-indicator-status-marker-line-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-line-complete-color: #5a9936;--sky-override-progress-indicator-status-marker-line-width: 1px;--sky-override-progress-indicator-status-marker-margin-right: 15px;--sky-override-progress-indicator-status-marker-status-active-icon-border-color: transparent}.sky-progress-indicator-status-marker{display:flex;height:100%}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical{flex-direction:column;margin-right:var(--sky-override-progress-indicator-status-marker-margin-right, var(--sky-space-gap-label-xl));position:relative;top:0;width:var(--sky-override-progress-indicator-mode-vertical-width, max(var(--sky-size-progress_step), var(--sky-size-icon-m)))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon{margin:var(--sky-override-progress-indicator-status-marker-icon-margin-top, 0) auto 0;width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon>::ng-deep sky-icon{margin-left:var(--sky-override-progress-indicator-status-marker-icon-margin-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-icon-m))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-line{margin:0 auto;width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-progress_connector))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal{flex-direction:row;width:100%;padding-left:var(--sky-override-progress-indicator-status-marker-horizontal-padding-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-icon{height:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);top:0;width:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);flex-basis:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-line{margin:auto 0;height:1px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border:0;margin-right:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#5a9936;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#cdcfd2;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker-icon{border-radius:var(--sky-override-progress-indicator-status-marker-icon-border-radius, var(--sky-border-radius-round));border:var(--sky-override-progress-indicator-status-marker-icon-border-width, var(--sky-border-width-progress_step)) solid var(--sky-override-progress-indicator-status-marker-icon-border-color, var(--sky-color-border-progress_step));flex:0 0 var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-color, var(--sky-color-border-progress_step));flex:1 0 auto}.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{background-color:var(--sky-override-progress-indicator-status-marker-icon-active-color, var(--sky-color-icon-success));border-color:var(--sky-override-progress-indicator-status-marker-status-active-icon-border-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-pending .sky-progress-indicator-status-marker-icon{border-color:var(--sky-override-progress-indicator-status-marker-icon-pending-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border-color:transparent;color:var(--sky-override-progress-indicator-status-marker-icon-success-color, var(--sky-color-icon-success));margin-top:0}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-complete-color, var(--sky-color-border-success));width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-divider))}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.λ1, selector: "sky-icon", inputs: ["iconName", "variant", "iconSize"] }, { kind: "pipe", type: SkyProgressIndicatorMarkerClassPipe, name: "skyProgressIndicatorMarkerClass" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
143
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorStatusMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
144
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorStatusMarkerComponent, isStandalone: false, selector: "sky-progress-indicator-status-marker", inputs: { displayMode: "displayMode", status: "status" }, ngImport: i0, template: "<div\n class=\"sky-progress-indicator-status-marker\"\n role=\"presentation\"\n [ngClass]=\"displayMode | skyProgressIndicatorMarkerClass: status\"\n>\n <div class=\"sky-progress-indicator-status-marker-icon\">\n @if (isComplete) {\n <sky-icon iconName=\"checkmark\" />\n }\n </div>\n <div class=\"sky-progress-indicator-status-marker-line\"></div>\n</div>\n", styles: [".sky-progress-indicator-status-marker:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-vertical-width: auto;--sky-override-progress-indicator-status-marker-before-display: block;--sky-override-progress-indicator-status-marker-horizontal-icon-height: 15px;--sky-override-progress-indicator-status-marker-horizontal-padding-left: 5px;--sky-override-progress-indicator-status-marker-icon-active-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-border-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-icon-border-radius: 15px;--sky-override-progress-indicator-status-marker-icon-border-width: 2px;--sky-override-progress-indicator-status-marker-icon-margin-left: -1px;--sky-override-progress-indicator-status-marker-icon-margin-top: 1px;--sky-override-progress-indicator-status-marker-icon-pending-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-size: 15px;--sky-override-progress-indicator-status-marker-icon-success-color: #5a9936;--sky-override-progress-indicator-status-marker-line-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-line-complete-color: #5a9936;--sky-override-progress-indicator-status-marker-line-width: 1px;--sky-override-progress-indicator-status-marker-margin-right: 15px;--sky-override-progress-indicator-status-marker-status-active-icon-border-color: transparent}.sky-progress-indicator-status-marker{display:flex;height:100%}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical{flex-direction:column;margin-right:var(--sky-override-progress-indicator-status-marker-margin-right, var(--sky-space-gap-label-xl));position:relative;top:0;width:var(--sky-override-progress-indicator-mode-vertical-width, max(var(--sky-size-progress_step), var(--sky-size-icon-m)))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon{margin:var(--sky-override-progress-indicator-status-marker-icon-margin-top, 0) auto 0;width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon>::ng-deep sky-icon{margin-left:var(--sky-override-progress-indicator-status-marker-icon-margin-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-icon-m))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-line{margin:0 auto;width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-progress_connector))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal{flex-direction:row;width:100%;padding-left:var(--sky-override-progress-indicator-status-marker-horizontal-padding-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-icon{height:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);top:0;width:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);flex-basis:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-line{margin:auto 0;height:1px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border:0;margin-right:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#5a9936;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#cdcfd2;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker-icon{border-radius:var(--sky-override-progress-indicator-status-marker-icon-border-radius, var(--sky-border-radius-round));border:var(--sky-override-progress-indicator-status-marker-icon-border-width, var(--sky-border-width-progress_step)) solid var(--sky-override-progress-indicator-status-marker-icon-border-color, var(--sky-color-border-progress_step));flex:0 0 var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-color, var(--sky-color-border-progress_step));flex:1 0 auto}.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{background-color:var(--sky-override-progress-indicator-status-marker-icon-active-color, var(--sky-color-icon-success));border-color:var(--sky-override-progress-indicator-status-marker-status-active-icon-border-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-pending .sky-progress-indicator-status-marker-icon{border-color:var(--sky-override-progress-indicator-status-marker-icon-pending-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border-color:transparent;color:var(--sky-override-progress-indicator-status-marker-icon-success-color, var(--sky-color-icon-success));margin-top:0}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-complete-color, var(--sky-color-border-success));width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-divider))}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.λ1, selector: "sky-icon", inputs: ["iconName", "variant", "iconSize"] }, { kind: "pipe", type: SkyProgressIndicatorMarkerClassPipe, name: "skyProgressIndicatorMarkerClass" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
145
145
  }
146
146
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorStatusMarkerComponent, decorators: [{
147
147
  type: Component,
148
148
  args: [{ selector: 'sky-progress-indicator-status-marker', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\n class=\"sky-progress-indicator-status-marker\"\n role=\"presentation\"\n [ngClass]=\"displayMode | skyProgressIndicatorMarkerClass: status\"\n>\n <div class=\"sky-progress-indicator-status-marker-icon\">\n @if (isComplete) {\n <sky-icon iconName=\"checkmark\" />\n }\n </div>\n <div class=\"sky-progress-indicator-status-marker-line\"></div>\n</div>\n", styles: [".sky-progress-indicator-status-marker:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-vertical-width: auto;--sky-override-progress-indicator-status-marker-before-display: block;--sky-override-progress-indicator-status-marker-horizontal-icon-height: 15px;--sky-override-progress-indicator-status-marker-horizontal-padding-left: 5px;--sky-override-progress-indicator-status-marker-icon-active-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-border-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-icon-border-radius: 15px;--sky-override-progress-indicator-status-marker-icon-border-width: 2px;--sky-override-progress-indicator-status-marker-icon-margin-left: -1px;--sky-override-progress-indicator-status-marker-icon-margin-top: 1px;--sky-override-progress-indicator-status-marker-icon-pending-color: #5a9936;--sky-override-progress-indicator-status-marker-icon-size: 15px;--sky-override-progress-indicator-status-marker-icon-success-color: #5a9936;--sky-override-progress-indicator-status-marker-line-color: var( --sky-border-color-neutral-medium );--sky-override-progress-indicator-status-marker-line-complete-color: #5a9936;--sky-override-progress-indicator-status-marker-line-width: 1px;--sky-override-progress-indicator-status-marker-margin-right: 15px;--sky-override-progress-indicator-status-marker-status-active-icon-border-color: transparent}.sky-progress-indicator-status-marker{display:flex;height:100%}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical{flex-direction:column;margin-right:var(--sky-override-progress-indicator-status-marker-margin-right, var(--sky-space-gap-label-xl));position:relative;top:0;width:var(--sky-override-progress-indicator-mode-vertical-width, max(var(--sky-size-progress_step), var(--sky-size-icon-m)))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon{margin:var(--sky-override-progress-indicator-status-marker-icon-margin-top, 0) auto 0;width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-icon>::ng-deep sky-icon{margin-left:var(--sky-override-progress-indicator-status-marker-icon-margin-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{width:var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-icon-m))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-vertical .sky-progress-indicator-status-marker-line{margin:0 auto;width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-progress_connector))}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal{flex-direction:row;width:100%;padding-left:var(--sky-override-progress-indicator-status-marker-horizontal-padding-left, 0)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-icon{height:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);top:0;width:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px);flex-basis:var(--sky-override-progress-indicator-status-marker-horizontal-icon-height, 17px)}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal .sky-progress-indicator-status-marker-line{margin:auto 0;height:1px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border:0;margin-right:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#5a9936;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon{position:relative}.sky-progress-indicator-status-marker.sky-progress-indicator-status-marker-mode-horizontal.sky-progress-indicator-status-marker-status-incomplete .sky-progress-indicator-status-marker-icon:before{content:\"\";display:var(--sky-override-progress-indicator-status-marker-before-display, none);width:5px;height:1px;background-color:#cdcfd2;position:absolute;left:-7px;top:5px}.sky-progress-indicator-status-marker-icon{border-radius:var(--sky-override-progress-indicator-status-marker-icon-border-radius, var(--sky-border-radius-round));border:var(--sky-override-progress-indicator-status-marker-icon-border-width, var(--sky-border-width-progress_step)) solid var(--sky-override-progress-indicator-status-marker-icon-border-color, var(--sky-color-border-progress_step));flex:0 0 var(--sky-override-progress-indicator-status-marker-icon-size, var(--sky-size-progress_step))}.sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-color, var(--sky-color-border-progress_step));flex:1 0 auto}.sky-progress-indicator-status-marker-status-active .sky-progress-indicator-status-marker-icon{background-color:var(--sky-override-progress-indicator-status-marker-icon-active-color, var(--sky-color-icon-success));border-color:var(--sky-override-progress-indicator-status-marker-status-active-icon-border-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-pending .sky-progress-indicator-status-marker-icon{border-color:var(--sky-override-progress-indicator-status-marker-icon-pending-color, var(--sky-color-border-success))}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-icon{border-color:transparent;color:var(--sky-override-progress-indicator-status-marker-icon-success-color, var(--sky-color-icon-success));margin-top:0}.sky-progress-indicator-status-marker-status-complete .sky-progress-indicator-status-marker-line{background-color:var(--sky-override-progress-indicator-status-marker-line-complete-color, var(--sky-color-border-success));width:var(--sky-override-progress-indicator-status-marker-line-width, var(--sky-border-width-divider))}\n"] }]
149
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.SkyThemeService, decorators: [{
150
- type: Optional
151
- }] }], propDecorators: { displayMode: [{
149
+ }], ctorParameters: () => [], propDecorators: { displayMode: [{
152
150
  type: Input
153
151
  }], status: [{
154
152
  type: Input
@@ -161,6 +159,14 @@ const STATUS_NAME_DEFAULT = 'incomplete';
161
159
  * and you can also specify step details within the `sky-progress-indicator-item` element.
162
160
  */
163
161
  class SkyProgressIndicatorItemComponent {
162
+ constructor() {
163
+ this.statusName = STATUS_NAME_DEFAULT;
164
+ this.#changeDetector = inject(ChangeDetectorRef);
165
+ this.#_isVisible = false;
166
+ this.#_showStatusMarker = true;
167
+ this.#_showTitle = true;
168
+ this.#_status = STATUS_DEFAULT;
169
+ }
164
170
  /**
165
171
  * The step label for the step in the progress indicator.
166
172
  * @required
@@ -225,14 +231,6 @@ class SkyProgressIndicatorItemComponent {
225
231
  #_showStatusMarker;
226
232
  #_showTitle;
227
233
  #_status;
228
- constructor(changeDetector) {
229
- this.statusName = STATUS_NAME_DEFAULT;
230
- this.#_isVisible = false;
231
- this.#_showStatusMarker = true;
232
- this.#_showTitle = true;
233
- this.#_status = STATUS_DEFAULT;
234
- this.#changeDetector = changeDetector;
235
- }
236
234
  ngOnInit() {
237
235
  this.#updateFormattedTitle();
238
236
  }
@@ -248,13 +246,13 @@ class SkyProgressIndicatorItemComponent {
248
246
  this.formattedTitle = `${this.#titlePrefix}${this.title}`;
249
247
  this.#changeDetector.markForCheck();
250
248
  }
251
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorItemComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
252
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorItemComponent, isStandalone: false, selector: "sky-progress-indicator-item", inputs: { title: "title", helpKey: "helpKey", helpPopoverContent: "helpPopoverContent", helpPopoverTitle: "helpPopoverTitle" }, ngImport: i0, template: "@if (isVisible) {\n <div\n class=\"sky-progress-indicator-item\"\n [ngClass]=\"'sky-progress-indicator-item-status-' + statusName\"\n >\n @if (showStatusMarker) {\n <sky-progress-indicator-status-marker [status]=\"status\" />\n }\n\n <div class=\"sky-progress-indicator-item-content\">\n @if (showTitle) {\n <div class=\"sky-progress-indicator-item-heading-wrapper\" skyTrim>\n <span\n aria-level=\"2\"\n class=\"sky-progress-indicator-item-heading\"\n role=\"heading\"\n [ngClass]=\"{\n 'sky-font-deemphasized': statusName === 'pending'\n }\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ formattedTitle }}\n @if (!helpKey && !helpPopoverContent) {\n <span class=\"sky-control-help-container\" skyTrim\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n }\n </span>\n @if (helpKey || helpPopoverContent) {\n <span class=\"sky-control-help-container\">\n <sky-help-inline\n [helpKey]=\"helpKey\"\n [labelText]=\"title\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n </span>\n }\n </div>\n }\n <div class=\"sky-progress-indicator-item-body\">\n @if (statusName !== 'incomplete') {\n <ng-content />\n }\n </div>\n </div>\n </div>\n}\n", styles: [".sky-progress-indicator-item:not(.sky-theme-modern *){--sky-override-progress-indicator-item-body-empty-padding: 10px 0 30px;--sky-override-progress-indicator-item-body-margin-bottom: 0;--sky-override-progress-indicator-item-body-min-height: 20px;--sky-override-progress-indicator-item-body-padding-bottom: 30px;--sky-override-progress-indicator-item-body-padding-top: 10px;--sky-override-progress-indicator-item-heading-wrapper-margin-top: 0;--sky-override-progress-indicator-item-margin: 0 0 -1px}.sky-progress-indicator-item{display:flex;margin:var(--sky-override-progress-indicator-item-margin, 0)}.sky-progress-indicator-item-content{flex:1 1 100%}.sky-progress-indicator-item-body{min-height:var(--sky-override-progress-indicator-item-body-min-height, 0);padding-top:var(--sky-override-progress-indicator-item-body-padding-top, var(--sky-space-stacked-l));padding-bottom:var(--sky-override-progress-indicator-item-body-padding-bottom, var(--sky-space-stacked-xl))}.sky-progress-indicator-item-body:empty{padding:var(--sky-override-progress-indicator-item-body-empty-padding, 0);margin-bottom:var(--sky-override-progress-indicator-item-body-margin-bottom, var(--sky-space-stacked-l))}.sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-progress_step)) / 2 * -1))}.sky-progress-indicator-item-status-complete .sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-icon-m)) / 2 * -1))}.sky-progress-indicator-item-status-incomplete .sky-progress-indicator-item-body{padding:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$1.λ1, selector: "sky-help-inline", inputs: ["ariaControls", "ariaExpanded", "ariaLabel", "helpKey", "labelledBy", "labelText", "popoverContent", "popoverTitle"], outputs: ["actionClick"] }, { kind: "directive", type: i1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i1$1.λ4, selector: "[skyTrim]" }, { kind: "component", type: SkyProgressIndicatorStatusMarkerComponent, selector: "sky-progress-indicator-status-marker", inputs: ["displayMode", "status"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorItemComponent, isStandalone: false, selector: "sky-progress-indicator-item", inputs: { title: "title", helpKey: "helpKey", helpPopoverContent: "helpPopoverContent", helpPopoverTitle: "helpPopoverTitle" }, ngImport: i0, template: "@if (isVisible) {\n <div\n class=\"sky-progress-indicator-item\"\n [ngClass]=\"'sky-progress-indicator-item-status-' + statusName\"\n >\n @if (showStatusMarker) {\n <sky-progress-indicator-status-marker [status]=\"status\" />\n }\n\n <div class=\"sky-progress-indicator-item-content\">\n @if (showTitle) {\n <div class=\"sky-progress-indicator-item-heading-wrapper\" skyTrim>\n <span\n aria-level=\"2\"\n class=\"sky-progress-indicator-item-heading\"\n role=\"heading\"\n [ngClass]=\"{\n 'sky-font-deemphasized': statusName === 'pending'\n }\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ formattedTitle }}\n @if (!helpKey && !helpPopoverContent) {\n <span class=\"sky-control-help-container\" skyTrim\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n }\n </span>\n @if (helpKey || helpPopoverContent) {\n <span class=\"sky-control-help-container\">\n <sky-help-inline\n [helpKey]=\"helpKey\"\n [labelText]=\"title\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n </span>\n }\n </div>\n }\n <div class=\"sky-progress-indicator-item-body\">\n @if (statusName !== 'incomplete') {\n <ng-content />\n }\n </div>\n </div>\n </div>\n}\n", styles: [".sky-progress-indicator-item:not(.sky-theme-modern *){--sky-override-progress-indicator-item-body-empty-padding: 10px 0 30px;--sky-override-progress-indicator-item-body-margin-bottom: 0;--sky-override-progress-indicator-item-body-min-height: 20px;--sky-override-progress-indicator-item-body-padding-bottom: 30px;--sky-override-progress-indicator-item-body-padding-top: 10px;--sky-override-progress-indicator-item-heading-wrapper-margin-top: 0;--sky-override-progress-indicator-item-margin: 0 0 -1px}.sky-progress-indicator-item{display:flex;margin:var(--sky-override-progress-indicator-item-margin, 0)}.sky-progress-indicator-item-content{flex:1 1 100%}.sky-progress-indicator-item-body{min-height:var(--sky-override-progress-indicator-item-body-min-height, 0);padding-top:var(--sky-override-progress-indicator-item-body-padding-top, var(--sky-space-stacked-l));padding-bottom:var(--sky-override-progress-indicator-item-body-padding-bottom, var(--sky-space-stacked-xl))}.sky-progress-indicator-item-body:empty{padding:var(--sky-override-progress-indicator-item-body-empty-padding, 0);margin-bottom:var(--sky-override-progress-indicator-item-body-margin-bottom, var(--sky-space-stacked-l))}.sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-progress_step)) / 2 * -1))}.sky-progress-indicator-item-status-complete .sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-icon-m)) / 2 * -1))}.sky-progress-indicator-item-status-incomplete .sky-progress-indicator-item-body{padding:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2$1.λ1, selector: "sky-help-inline", inputs: ["ariaControls", "ariaExpanded", "ariaLabel", "helpKey", "labelledBy", "labelText", "popoverContent", "popoverTitle"], outputs: ["actionClick"] }, { kind: "directive", type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i4.λ4, selector: "[skyTrim]" }, { kind: "component", type: SkyProgressIndicatorStatusMarkerComponent, selector: "sky-progress-indicator-status-marker", inputs: ["displayMode", "status"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
253
251
  }
254
252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorItemComponent, decorators: [{
255
253
  type: Component,
256
254
  args: [{ selector: 'sky-progress-indicator-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (isVisible) {\n <div\n class=\"sky-progress-indicator-item\"\n [ngClass]=\"'sky-progress-indicator-item-status-' + statusName\"\n >\n @if (showStatusMarker) {\n <sky-progress-indicator-status-marker [status]=\"status\" />\n }\n\n <div class=\"sky-progress-indicator-item-content\">\n @if (showTitle) {\n <div class=\"sky-progress-indicator-item-heading-wrapper\" skyTrim>\n <span\n aria-level=\"2\"\n class=\"sky-progress-indicator-item-heading\"\n role=\"heading\"\n [ngClass]=\"{\n 'sky-font-deemphasized': statusName === 'pending'\n }\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ formattedTitle }}\n @if (!helpKey && !helpPopoverContent) {\n <span class=\"sky-control-help-container\" skyTrim\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n }\n </span>\n @if (helpKey || helpPopoverContent) {\n <span class=\"sky-control-help-container\">\n <sky-help-inline\n [helpKey]=\"helpKey\"\n [labelText]=\"title\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n </span>\n }\n </div>\n }\n <div class=\"sky-progress-indicator-item-body\">\n @if (statusName !== 'incomplete') {\n <ng-content />\n }\n </div>\n </div>\n </div>\n}\n", styles: [".sky-progress-indicator-item:not(.sky-theme-modern *){--sky-override-progress-indicator-item-body-empty-padding: 10px 0 30px;--sky-override-progress-indicator-item-body-margin-bottom: 0;--sky-override-progress-indicator-item-body-min-height: 20px;--sky-override-progress-indicator-item-body-padding-bottom: 30px;--sky-override-progress-indicator-item-body-padding-top: 10px;--sky-override-progress-indicator-item-heading-wrapper-margin-top: 0;--sky-override-progress-indicator-item-margin: 0 0 -1px}.sky-progress-indicator-item{display:flex;margin:var(--sky-override-progress-indicator-item-margin, 0)}.sky-progress-indicator-item-content{flex:1 1 100%}.sky-progress-indicator-item-body{min-height:var(--sky-override-progress-indicator-item-body-min-height, 0);padding-top:var(--sky-override-progress-indicator-item-body-padding-top, var(--sky-space-stacked-l));padding-bottom:var(--sky-override-progress-indicator-item-body-padding-bottom, var(--sky-space-stacked-xl))}.sky-progress-indicator-item-body:empty{padding:var(--sky-override-progress-indicator-item-body-empty-padding, 0);margin-bottom:var(--sky-override-progress-indicator-item-body-margin-bottom, var(--sky-space-stacked-l))}.sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-progress_step)) / 2 * -1))}.sky-progress-indicator-item-status-complete .sky-progress-indicator-item-heading-wrapper{margin-top:var(--sky-override-progress-indicator-item-heading-wrapper-margin-top, calc((var(--sky-font-size-display-3) * var(--sky-font-line_height-display-3) - var(--sky-size-icon-m)) / 2 * -1))}.sky-progress-indicator-item-status-incomplete .sky-progress-indicator-item-body{padding:0}\n"] }]
257
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { title: [{
255
+ }], propDecorators: { title: [{
258
256
  type: Input
259
257
  }], helpKey: [{
260
258
  type: Input
@@ -309,20 +307,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
309
307
  }]
310
308
  }] });
311
309
 
312
- /**
313
- * Allows the consumer to decide whether the button's action should be completed successfully.
314
- * The handler is provided with all nav button types.
315
- */
316
- class SkyProgressIndicatorActionClickProgressHandler {
317
- /**
318
- *
319
- * @param advance Advances the progress indicator to the next step.
320
- */
321
- constructor(advance) {
322
- this.advance = advance;
323
- }
324
- }
325
-
326
310
  var SkyProgressIndicatorMessageType;
327
311
  (function (SkyProgressIndicatorMessageType) {
328
312
  /**
@@ -368,6 +352,24 @@ var SkyProgressIndicatorDisplayMode;
368
352
  })(SkyProgressIndicatorDisplayMode || (SkyProgressIndicatorDisplayMode = {}));
369
353
 
370
354
  class SkyProgressIndicatorComponent {
355
+ constructor() {
356
+ /**
357
+ * Fires when the progress indicator changes the status of an item.
358
+ */
359
+ this.progressChanges = new EventEmitter();
360
+ this.cssClassNames = [];
361
+ this.itemStatuses = [];
362
+ this.#_activeIndex = 0;
363
+ this.#_displayMode = 'vertical';
364
+ this.#_isPassive = false;
365
+ this.#_startingIndex = 0;
366
+ this.#initialized = false;
367
+ this.#ngUnsubscribe = new Subject();
368
+ this.#messageStream = new Subject();
369
+ this.#changeDetector = inject(ChangeDetectorRef);
370
+ this.#windowRef = inject(SkyAppWindowRef);
371
+ this.#logger = inject(SkyLogService);
372
+ }
371
373
  /**
372
374
  * The orientation of the progress indicator, which can be vertical or horizontal.
373
375
  * For [passive progress indicators](https://developer.blackbaud.com/skyux/components/progress-indicator-passive)
@@ -456,24 +458,6 @@ class SkyProgressIndicatorComponent {
456
458
  #changeDetector;
457
459
  #windowRef;
458
460
  #logger;
459
- constructor(changeDetector, windowRef, logger) {
460
- /**
461
- * Fires when the progress indicator changes the status of an item.
462
- */
463
- this.progressChanges = new EventEmitter();
464
- this.cssClassNames = [];
465
- this.itemStatuses = [];
466
- this.#_activeIndex = 0;
467
- this.#_displayMode = 'vertical';
468
- this.#_isPassive = false;
469
- this.#_startingIndex = 0;
470
- this.#initialized = false;
471
- this.#ngUnsubscribe = new Subject();
472
- this.#messageStream = new Subject();
473
- this.#changeDetector = changeDetector;
474
- this.#windowRef = windowRef;
475
- this.#logger = logger;
476
- }
477
461
  ngOnInit() {
478
462
  this.#initialized = true;
479
463
  this.#updateCssClassNames();
@@ -665,13 +649,13 @@ class SkyProgressIndicatorComponent {
665
649
  #getLastIndex() {
666
650
  return (this.itemComponents?.length || 0) - 1;
667
651
  }
668
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.SkyAppWindowRef }, { token: i1$1.SkyLogService }], target: i0.ɵɵFactoryTarget.Component }); }
669
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorComponent, isStandalone: false, selector: "sky-progress-indicator", inputs: { displayMode: "displayMode", isPassive: "isPassive", messageStream: "messageStream", startingIndex: "startingIndex" }, outputs: { progressChanges: "progressChanges" }, queries: [{ propertyName: "itemComponents", predicate: SkyProgressIndicatorItemComponent }], ngImport: i0, template: "<div class=\"sky-progress-indicator\" [ngClass]=\"cssClassNames\">\n @if (displayMode === 'horizontal') {\n <div class=\"sky-progress-indicator-horizontal-status-markers\">\n @for (status of itemStatuses; track status) {\n <sky-progress-indicator-status-marker\n [displayMode]=\"displayMode\"\n [status]=\"status\"\n />\n }\n </div>\n }\n <ng-content />\n</div>\n", styles: [".sky-progress-indicator:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-horizontal-item-heading-font-size: 16px;--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight: 600;--sky-override-progress-indicator-mode-vertical-margin-left: -30px;--sky-override-progress-indicator-nav-and-reset-margin: 0;--sky-override-progress-indicator-nav-and-reset-padding: 30px 0 0 15px;--sky-override-progress-indicator-nav-and-reset-text-align: start}.sky-progress-indicator ::ng-deep sky-progress-indicator-item:last-of-type .sky-progress-indicator-status-marker-line{display:none}.sky-progress-indicator-mode-vertical{max-width:400px;min-width:250px;margin:0 auto}.sky-progress-indicator-mode-vertical ::ng-deep .sky-progress-indicator-item-body{text-align:center;margin-left:var(--sky-override-progress-indicator-mode-vertical-margin-left, calc(-2*max(var(--sky-size-progress_step), var(--sky-size-icon-m))) )}.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-nav-button,.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-reset-button{display:block;padding:var(--sky-override-progress-indicator-nav-and-reset-padding, 0);text-align:var(--sky-override-progress-indicator-nav-and-reset-text-align, center);margin:var(--sky-override-progress-indicator-nav-and-reset-margin, var(--sky-space-stacked-xxl) 0 0)}::ng-deep .sky-popover ::ng-deep .sky-progress-indicator-mode-vertical{min-width:auto}.sky-progress-indicator-mode-horizontal ::ng-deep .sky-progress-indicator-item-heading{font-weight:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight, inherit);font-size:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-size, inherit)}.sky-progress-indicator-horizontal-status-markers{display:flex;margin-bottom:10px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker{flex-basis:45px;flex-grow:0}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type{margin-left:-5px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type .sky-progress-indicator-status-marker .sky-progress-indicator-status-marker-icon:before{display:none!important}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:last-of-type .sky-progress-indicator-status-marker-line{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SkyProgressIndicatorStatusMarkerComponent, selector: "sky-progress-indicator-status-marker", inputs: ["displayMode", "status"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
652
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
653
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorComponent, isStandalone: false, selector: "sky-progress-indicator", inputs: { displayMode: "displayMode", isPassive: "isPassive", messageStream: "messageStream", startingIndex: "startingIndex" }, outputs: { progressChanges: "progressChanges" }, queries: [{ propertyName: "itemComponents", predicate: SkyProgressIndicatorItemComponent }], ngImport: i0, template: "<div class=\"sky-progress-indicator\" [ngClass]=\"cssClassNames\">\n @if (displayMode === 'horizontal') {\n <div class=\"sky-progress-indicator-horizontal-status-markers\">\n @for (status of itemStatuses; track status) {\n <sky-progress-indicator-status-marker\n [displayMode]=\"displayMode\"\n [status]=\"status\"\n />\n }\n </div>\n }\n <ng-content />\n</div>\n", styles: [".sky-progress-indicator:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-horizontal-item-heading-font-size: 16px;--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight: 600;--sky-override-progress-indicator-mode-vertical-margin-left: -30px;--sky-override-progress-indicator-nav-and-reset-margin: 0;--sky-override-progress-indicator-nav-and-reset-padding: 30px 0 0 15px;--sky-override-progress-indicator-nav-and-reset-text-align: start}.sky-progress-indicator ::ng-deep sky-progress-indicator-item:last-of-type .sky-progress-indicator-status-marker-line{display:none}.sky-progress-indicator-mode-vertical{max-width:400px;min-width:250px;margin:0 auto}.sky-progress-indicator-mode-vertical ::ng-deep .sky-progress-indicator-item-body{text-align:center;margin-left:var(--sky-override-progress-indicator-mode-vertical-margin-left, calc(-2*max(var(--sky-size-progress_step), var(--sky-size-icon-m))) )}.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-nav-button,.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-reset-button{display:block;padding:var(--sky-override-progress-indicator-nav-and-reset-padding, 0);text-align:var(--sky-override-progress-indicator-nav-and-reset-text-align, center);margin:var(--sky-override-progress-indicator-nav-and-reset-margin, var(--sky-space-stacked-xxl) 0 0)}::ng-deep .sky-popover ::ng-deep .sky-progress-indicator-mode-vertical{min-width:auto}.sky-progress-indicator-mode-horizontal ::ng-deep .sky-progress-indicator-item-heading{font-weight:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight, inherit);font-size:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-size, inherit)}.sky-progress-indicator-horizontal-status-markers{display:flex;margin-bottom:10px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker{flex-basis:45px;flex-grow:0}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type{margin-left:-5px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type .sky-progress-indicator-status-marker .sky-progress-indicator-status-marker-icon:before{display:none!important}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:last-of-type .sky-progress-indicator-status-marker-line{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SkyProgressIndicatorStatusMarkerComponent, selector: "sky-progress-indicator-status-marker", inputs: ["displayMode", "status"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
670
654
  }
671
655
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorComponent, decorators: [{
672
656
  type: Component,
673
657
  args: [{ selector: 'sky-progress-indicator', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div class=\"sky-progress-indicator\" [ngClass]=\"cssClassNames\">\n @if (displayMode === 'horizontal') {\n <div class=\"sky-progress-indicator-horizontal-status-markers\">\n @for (status of itemStatuses; track status) {\n <sky-progress-indicator-status-marker\n [displayMode]=\"displayMode\"\n [status]=\"status\"\n />\n }\n </div>\n }\n <ng-content />\n</div>\n", styles: [".sky-progress-indicator:not(.sky-theme-modern *){--sky-override-progress-indicator-mode-horizontal-item-heading-font-size: 16px;--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight: 600;--sky-override-progress-indicator-mode-vertical-margin-left: -30px;--sky-override-progress-indicator-nav-and-reset-margin: 0;--sky-override-progress-indicator-nav-and-reset-padding: 30px 0 0 15px;--sky-override-progress-indicator-nav-and-reset-text-align: start}.sky-progress-indicator ::ng-deep sky-progress-indicator-item:last-of-type .sky-progress-indicator-status-marker-line{display:none}.sky-progress-indicator-mode-vertical{max-width:400px;min-width:250px;margin:0 auto}.sky-progress-indicator-mode-vertical ::ng-deep .sky-progress-indicator-item-body{text-align:center;margin-left:var(--sky-override-progress-indicator-mode-vertical-margin-left, calc(-2*max(var(--sky-size-progress_step), var(--sky-size-icon-m))) )}.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-nav-button,.sky-progress-indicator-mode-vertical ::ng-deep sky-progress-indicator-reset-button{display:block;padding:var(--sky-override-progress-indicator-nav-and-reset-padding, 0);text-align:var(--sky-override-progress-indicator-nav-and-reset-text-align, center);margin:var(--sky-override-progress-indicator-nav-and-reset-margin, var(--sky-space-stacked-xxl) 0 0)}::ng-deep .sky-popover ::ng-deep .sky-progress-indicator-mode-vertical{min-width:auto}.sky-progress-indicator-mode-horizontal ::ng-deep .sky-progress-indicator-item-heading{font-weight:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-weight, inherit);font-size:var(--sky-override-progress-indicator-mode-horizontal-item-heading-font-size, inherit)}.sky-progress-indicator-horizontal-status-markers{display:flex;margin-bottom:10px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker{flex-basis:45px;flex-grow:0}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type{margin-left:-5px}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:first-of-type .sky-progress-indicator-status-marker .sky-progress-indicator-status-marker-icon:before{display:none!important}.sky-progress-indicator-horizontal-status-markers ::ng-deep sky-progress-indicator-status-marker:last-of-type .sky-progress-indicator-status-marker-line{display:none}\n"] }]
674
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$1.SkyAppWindowRef }, { type: i1$1.SkyLogService }], propDecorators: { displayMode: [{
658
+ }], propDecorators: { displayMode: [{
675
659
  type: Input
676
660
  }], isPassive: [{
677
661
  type: Input
@@ -686,12 +670,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
686
670
  args: [SkyProgressIndicatorItemComponent]
687
671
  }] } });
688
672
 
673
+ /**
674
+ * Allows the consumer to decide whether the button's action should be completed successfully.
675
+ * The handler is provided with all nav button types.
676
+ */
677
+ class SkyProgressIndicatorActionClickProgressHandler {
678
+ /**
679
+ *
680
+ * @param advance Advances the progress indicator to the next step.
681
+ */
682
+ constructor(advance) {
683
+ this.advance = advance;
684
+ }
685
+ }
686
+
689
687
  const BUTTON_TYPE_DEFAULT = 'next';
690
688
  /**
691
689
  * Displays a button to navigate the steps in modal wizards. We recommend against using it in
692
690
  * passive progress indicators and waterfall progress indicators.
693
691
  */
694
692
  class SkyProgressIndicatorNavButtonComponent {
693
+ constructor() {
694
+ /**
695
+ * Fires when users select the nav button and emits a `SkyProgressIndicatorActionClickArgs`
696
+ * object that is passed into the callback function to allow consumers to decide whether
697
+ * the button’s action should complete successfully.
698
+ */
699
+ this.actionClick = new EventEmitter();
700
+ this.#ngUnsubscribe = new Subject();
701
+ this.#_buttonType = BUTTON_TYPE_DEFAULT;
702
+ this.#changeDetector = inject(ChangeDetectorRef);
703
+ this.#parentComponent = inject(SkyProgressIndicatorComponent, {
704
+ optional: true,
705
+ });
706
+ }
695
707
  /**
696
708
  * The type of nav button to include.
697
709
  * @default "next"
@@ -771,18 +783,6 @@ class SkyProgressIndicatorNavButtonComponent {
771
783
  #_progressIndicator;
772
784
  #changeDetector;
773
785
  #parentComponent;
774
- constructor(changeDetector, parentComponent) {
775
- /**
776
- * Fires when users select the nav button and emits a `SkyProgressIndicatorActionClickArgs`
777
- * object that is passed into the callback function to allow consumers to decide whether
778
- * the button’s action should complete successfully.
779
- */
780
- this.actionClick = new EventEmitter();
781
- this.#ngUnsubscribe = new Subject();
782
- this.#_buttonType = BUTTON_TYPE_DEFAULT;
783
- this.#changeDetector = changeDetector;
784
- this.#parentComponent = parentComponent;
785
- }
786
786
  ngAfterViewInit() {
787
787
  if (!this.progressIndicator && this.#parentComponent) {
788
788
  this.progressIndicator = this.#parentComponent;
@@ -855,15 +855,13 @@ class SkyProgressIndicatorNavButtonComponent {
855
855
  }
856
856
  this.isVisible = true;
857
857
  }
858
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorNavButtonComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: SkyProgressIndicatorComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
859
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorNavButtonComponent, isStandalone: false, selector: "sky-progress-indicator-nav-button", inputs: { buttonText: "buttonText", buttonType: "buttonType", disabled: "disabled", progressIndicator: "progressIndicator" }, outputs: { actionClick: "actionClick" }, ngImport: i0, template: "@if (isVisible) {\n <button\n class=\"sky-btn sky-margin-inline-sm\"\n type=\"button\"\n [disabled]=\"\n disabled\n | skyProgressIndicatorNavButtonDisabled\n : buttonType\n : lastProgressChange?.activeIndex\n : lastProgressChange?.itemStatuses\n \"\n [ngClass]=\"buttonType | skyProgressIndicatorNavButtonClass\"\n (click)=\"onClick($event)\"\n >\n {{\n buttonText ||\n ('skyux_progress_indicator_navigator_' + buttonType | skyLibResources)\n }}\n </button>\n}\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i3$1.SkyLibResourcesPipe, name: "skyLibResources" }, { kind: "pipe", type: SkyProgressIndicatorNavButtonClass, name: "skyProgressIndicatorNavButtonClass" }, { kind: "pipe", type: SkyProgressIndicatorNavButtonDisabledPipe, name: "skyProgressIndicatorNavButtonDisabled" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
858
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorNavButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
859
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.0", type: SkyProgressIndicatorNavButtonComponent, isStandalone: false, selector: "sky-progress-indicator-nav-button", inputs: { buttonText: "buttonText", buttonType: "buttonType", disabled: "disabled", progressIndicator: "progressIndicator" }, outputs: { actionClick: "actionClick" }, ngImport: i0, template: "@if (isVisible) {\n <button\n class=\"sky-btn sky-margin-inline-sm\"\n type=\"button\"\n [disabled]=\"\n disabled\n | skyProgressIndicatorNavButtonDisabled\n : buttonType\n : lastProgressChange?.activeIndex\n : lastProgressChange?.itemStatuses\n \"\n [ngClass]=\"buttonType | skyProgressIndicatorNavButtonClass\"\n (click)=\"onClick($event)\"\n >\n {{\n buttonText ||\n ('skyux_progress_indicator_navigator_' + buttonType | skyLibResources)\n }}\n </button>\n}\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i2$2.SkyLibResourcesPipe, name: "skyLibResources" }, { kind: "pipe", type: SkyProgressIndicatorNavButtonClass, name: "skyProgressIndicatorNavButtonClass" }, { kind: "pipe", type: SkyProgressIndicatorNavButtonDisabledPipe, name: "skyProgressIndicatorNavButtonDisabled" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
860
860
  }
861
861
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorNavButtonComponent, decorators: [{
862
862
  type: Component,
863
863
  args: [{ selector: 'sky-progress-indicator-nav-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (isVisible) {\n <button\n class=\"sky-btn sky-margin-inline-sm\"\n type=\"button\"\n [disabled]=\"\n disabled\n | skyProgressIndicatorNavButtonDisabled\n : buttonType\n : lastProgressChange?.activeIndex\n : lastProgressChange?.itemStatuses\n \"\n [ngClass]=\"buttonType | skyProgressIndicatorNavButtonClass\"\n (click)=\"onClick($event)\"\n >\n {{\n buttonText ||\n ('skyux_progress_indicator_navigator_' + buttonType | skyLibResources)\n }}\n </button>\n}\n" }]
864
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: SkyProgressIndicatorComponent, decorators: [{
865
- type: Optional
866
- }] }], propDecorators: { buttonText: [{
864
+ }], propDecorators: { buttonText: [{
867
865
  type: Input
868
866
  }], buttonType: [{
869
867
  type: Input
@@ -881,6 +879,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
881
879
  * users reach them in their sequential order.
882
880
  */
883
881
  class SkyProgressIndicatorResetButtonComponent {
882
+ constructor() {
883
+ /**
884
+ * Fires when users select the reset button that marks all items as incomplete and sets the
885
+ * first item as the active item.
886
+ */
887
+ this.resetClick = new EventEmitter();
888
+ this.#changeDetector = inject(ChangeDetectorRef);
889
+ }
884
890
  /**
885
891
  * Whether to disable the reset button.
886
892
  * @default false
@@ -894,14 +900,6 @@ class SkyProgressIndicatorResetButtonComponent {
894
900
  }
895
901
  #_disabled;
896
902
  #changeDetector;
897
- constructor(changeDetector) {
898
- /**
899
- * Fires when users select the reset button that marks all items as incomplete and sets the
900
- * first item as the active item.
901
- */
902
- this.resetClick = new EventEmitter();
903
- this.#changeDetector = changeDetector;
904
- }
905
903
  ngOnDestroy() {
906
904
  this.resetClick.complete();
907
905
  }
@@ -911,13 +909,13 @@ class SkyProgressIndicatorResetButtonComponent {
911
909
  type: SkyProgressIndicatorMessageType.Reset,
912
910
  });
913
911
  }
914
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorResetButtonComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
912
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorResetButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
915
913
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.0", type: SkyProgressIndicatorResetButtonComponent, isStandalone: false, selector: "sky-progress-indicator-reset-button", inputs: { disabled: "disabled", progressIndicator: "progressIndicator" }, outputs: { resetClick: "resetClick" }, ngImport: i0, template: "<button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"onClick()\"\n>\n <ng-content />\n</button>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
916
914
  }
917
915
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorResetButtonComponent, decorators: [{
918
916
  type: Component,
919
917
  args: [{ selector: 'sky-progress-indicator-reset-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"onClick()\"\n>\n <ng-content />\n</button>\n" }]
920
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { disabled: [{
918
+ }], propDecorators: { disabled: [{
921
919
  type: Input
922
920
  }], progressIndicator: [{
923
921
  type: Input
@@ -930,7 +928,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
930
928
  */
931
929
  class SkyProgressIndicatorTitleComponent {
932
930
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
933
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.0", type: SkyProgressIndicatorTitleComponent, isStandalone: false, selector: "sky-progress-indicator-title", ngImport: i0, template: "<div\n aria-level=\"1\"\n class=\"sky-progress-indicator-title\"\n role=\"heading\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'default',\n 'sky-font-heading-1': 'modern'\n }\"\n>\n <ng-content />\n</div>\n", styles: [".sky-progress-indicator-title:not(.sky-theme-modern *){--sky-override-progress-indicator-title-line-height: 1.1;--sky-override-progress-indicator-title-margin-bottom: 30px}.sky-progress-indicator-title{line-height:var(--sky-override-progress-indicator-title-line-height);margin:0 0 var(--sky-override-progress-indicator-title-margin-bottom, var(--sky-space-stacked-xxl));text-align:center}\n"], dependencies: [{ kind: "directive", type: i1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
931
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.0", type: SkyProgressIndicatorTitleComponent, isStandalone: false, selector: "sky-progress-indicator-title", ngImport: i0, template: "<div\n aria-level=\"1\"\n class=\"sky-progress-indicator-title\"\n role=\"heading\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'default',\n 'sky-font-heading-1': 'modern'\n }\"\n>\n <ng-content />\n</div>\n", styles: [".sky-progress-indicator-title:not(.sky-theme-modern *){--sky-override-progress-indicator-title-line-height: 1.1;--sky-override-progress-indicator-title-margin-bottom: 30px}.sky-progress-indicator-title{line-height:var(--sky-override-progress-indicator-title-line-height);margin:0 0 var(--sky-override-progress-indicator-title-margin-bottom, var(--sky-space-stacked-xxl));text-align:center}\n"], dependencies: [{ kind: "directive", type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
934
932
  }
935
933
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyProgressIndicatorTitleComponent, decorators: [{
936
934
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-progress-indicator.mjs","sources":["../../../../../libs/components/progress-indicator/src/lib/modules/shared/sky-progress-indicator-resources.module.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-item-status.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker-class.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-item/progress-indicator-item.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-item/progress-indicator-item.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button-class.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button-disabled.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-action-click-progress-handler.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-message-type.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-mode.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-reset-button/progress-indicator-reset-button.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-reset-button/progress-indicator-reset-button.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-title/progress-indicator-title.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-title/progress-indicator-title.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.module.ts","../../../../../libs/components/progress-indicator/src/skyux-progress-indicator.ts"],"sourcesContent":["/* istanbul ignore file */\n\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-progress-indicator' 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_progress_indicator_navigator_finish: { message: 'Finish' },\n skyux_progress_indicator_navigator_next: { message: 'Next' },\n skyux_progress_indicator_navigator_previous: { message: 'Previous' },\n skyux_progress_indicator_navigator_reset: { message: 'Reset' },\n },\n 'FR-CA': {\n skyux_progress_indicator_navigator_finish: { message: 'Terminer' },\n skyux_progress_indicator_navigator_next: { message: 'Suivant' },\n skyux_progress_indicator_navigator_previous: { message: 'Précédent' },\n skyux_progress_indicator_navigator_reset: { message: 'Réinitialiser' },\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 SkyProgressIndicatorResourcesModule {}\n","export enum SkyProgressIndicatorItemStatus {\n /**\n * The item is active.\n */\n Active = 0,\n\n /**\n * The item is complete.\n */\n Complete,\n\n /**\n * The item is incomplete.\n */\n Incomplete,\n\n /**\n * The item is pending.\n */\n Pending,\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\n@Pipe({\n name: 'skyProgressIndicatorMarkerClass',\n standalone: false,\n})\nexport class SkyProgressIndicatorMarkerClassPipe implements PipeTransform {\n public transform(\n displayMode: string,\n status: SkyProgressIndicatorItemStatus,\n ): string {\n let statusName: string;\n\n switch (status) {\n case SkyProgressIndicatorItemStatus.Complete:\n statusName = 'complete';\n break;\n case SkyProgressIndicatorItemStatus.Incomplete:\n statusName = 'incomplete';\n break;\n case SkyProgressIndicatorItemStatus.Pending:\n statusName = 'pending';\n break;\n default:\n statusName = 'active';\n }\n\n return `sky-progress-indicator-status-marker-mode-${displayMode} sky-progress-indicator-status-marker-status-${statusName}`;\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n Optional,\n} from '@angular/core';\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\n/**\n * Specifies the content to display in the status marker.\n * @internal\n */\n@Component({\n selector: 'sky-progress-indicator-status-marker',\n templateUrl: './progress-indicator-status-marker.component.html',\n styleUrls: ['./progress-indicator-status-marker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorStatusMarkerComponent implements OnDestroy {\n @Input()\n public set displayMode(value: 'vertical' | 'horizontal') {\n this.#_displayMode = value;\n }\n\n public get displayMode(): 'vertical' | 'horizontal' {\n return this.#_displayMode;\n }\n\n @Input()\n public set status(value: SkyProgressIndicatorItemStatus) {\n this.#_status = value;\n this.isComplete = this.#_status === SkyProgressIndicatorItemStatus.Complete;\n }\n\n public get status(): SkyProgressIndicatorItemStatus {\n return this.#_status;\n }\n\n public isComplete = false;\n\n #ngUnsubscribe = new Subject<void>();\n #changeDetector: ChangeDetectorRef;\n\n #_status: SkyProgressIndicatorItemStatus =\n SkyProgressIndicatorItemStatus.Active;\n #_displayMode: 'vertical' | 'horizontal' = 'vertical';\n\n constructor(\n changeDetector: ChangeDetectorRef,\n @Optional() themeSvc?: SkyThemeService,\n ) {\n this.#changeDetector = changeDetector;\n\n // Update icons when theme changes.\n themeSvc?.settingsChange\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n this.#changeDetector.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n class=\"sky-progress-indicator-status-marker\"\n role=\"presentation\"\n [ngClass]=\"displayMode | skyProgressIndicatorMarkerClass: status\"\n>\n <div class=\"sky-progress-indicator-status-marker-icon\">\n @if (isComplete) {\n <sky-icon iconName=\"checkmark\" />\n }\n </div>\n <div class=\"sky-progress-indicator-status-marker-line\"></div>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n TemplateRef,\n} from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\nconst STATUS_DEFAULT = SkyProgressIndicatorItemStatus.Incomplete;\nconst STATUS_NAME_DEFAULT = 'incomplete';\n\n/**\n * Specifies a step to include in the progress indicator. Each step requires a label,\n * and you can also specify step details within the `sky-progress-indicator-item` element.\n */\n@Component({\n selector: 'sky-progress-indicator-item',\n templateUrl: './progress-indicator-item.component.html',\n styleUrls: ['./progress-indicator-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorItemComponent implements OnInit {\n /**\n * The step label for the step in the progress indicator.\n * @required\n */\n @Input()\n public set title(value: string | undefined) {\n this.#_title = value;\n this.#updateFormattedTitle();\n }\n\n public get title(): string | undefined {\n return this.#_title;\n }\n\n /**\n * A help key that identifies the global help content to display. When specified along with `title`, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the progress indicator item label. Clicking the button invokes [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) as configured by the application.\n * This property only applies when `title` is also specified.\n */\n @Input()\n public helpKey: string | undefined;\n\n /**\n * The content of the help popover. When specified along with `title`, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the progress indicator item label. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title. This property only applies when `title` is also specified.\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 public set status(value: SkyProgressIndicatorItemStatus | undefined) {\n if (value === this.#_status) {\n return;\n }\n\n /* istanbul ignore next */\n this.#_status = value ?? STATUS_DEFAULT;\n\n switch (this.#_status) {\n case SkyProgressIndicatorItemStatus.Active:\n this.statusName = 'active';\n break;\n case SkyProgressIndicatorItemStatus.Complete:\n this.statusName = 'complete';\n break;\n case SkyProgressIndicatorItemStatus.Incomplete:\n this.statusName = 'incomplete';\n break;\n case SkyProgressIndicatorItemStatus.Pending:\n this.statusName = 'pending';\n break;\n }\n\n this.#changeDetector.markForCheck();\n }\n\n public get status(): SkyProgressIndicatorItemStatus {\n return this.#_status;\n }\n\n public formattedTitle: string | undefined;\n\n public set isVisible(value: boolean | undefined) {\n this.#_isVisible = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get isVisible(): boolean {\n return this.#_isVisible;\n }\n\n public set showStatusMarker(value: boolean | undefined) {\n this.#_showStatusMarker = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get showStatusMarker(): boolean {\n return this.#_showStatusMarker;\n }\n\n public set showTitle(value: boolean | undefined) {\n this.#_showTitle = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get showTitle(): boolean {\n return this.#_showTitle;\n }\n\n public statusName = STATUS_NAME_DEFAULT;\n\n #titlePrefix: string | undefined;\n #changeDetector: ChangeDetectorRef;\n\n #_isVisible = false;\n #_title: string | undefined;\n #_showStatusMarker = true;\n #_showTitle = true;\n #_status = STATUS_DEFAULT;\n\n constructor(changeDetector: ChangeDetectorRef) {\n this.#changeDetector = changeDetector;\n }\n\n public ngOnInit(): void {\n this.#updateFormattedTitle();\n }\n\n public showStepNumber(step: number): void {\n this.#titlePrefix = `${step} - `;\n this.#updateFormattedTitle();\n }\n\n public hideStepNumber(): void {\n this.#titlePrefix = '';\n this.#updateFormattedTitle();\n }\n\n #updateFormattedTitle(): void {\n this.formattedTitle = `${this.#titlePrefix}${this.title}`;\n this.#changeDetector.markForCheck();\n }\n}\n","@if (isVisible) {\n <div\n class=\"sky-progress-indicator-item\"\n [ngClass]=\"'sky-progress-indicator-item-status-' + statusName\"\n >\n @if (showStatusMarker) {\n <sky-progress-indicator-status-marker [status]=\"status\" />\n }\n\n <div class=\"sky-progress-indicator-item-content\">\n @if (showTitle) {\n <div class=\"sky-progress-indicator-item-heading-wrapper\" skyTrim>\n <span\n aria-level=\"2\"\n class=\"sky-progress-indicator-item-heading\"\n role=\"heading\"\n [ngClass]=\"{\n 'sky-font-deemphasized': statusName === 'pending'\n }\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ formattedTitle }}\n @if (!helpKey && !helpPopoverContent) {\n <span class=\"sky-control-help-container\" skyTrim\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n }\n </span>\n @if (helpKey || helpPopoverContent) {\n <span class=\"sky-control-help-container\">\n <sky-help-inline\n [helpKey]=\"helpKey\"\n [labelText]=\"title\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n </span>\n }\n </div>\n }\n <div class=\"sky-progress-indicator-item-body\">\n @if (statusName !== 'incomplete') {\n <ng-content />\n }\n </div>\n </div>\n </div>\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'skyProgressIndicatorNavButtonClass',\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonClass implements PipeTransform {\n public transform(buttonType: string): string[] {\n const classNames = [`sky-progress-indicator-nav-button-${buttonType}`];\n\n switch (buttonType) {\n case 'next':\n case 'finish':\n classNames.push('sky-btn-primary');\n break;\n case 'reset':\n classNames.push('sky-btn-link');\n break;\n default:\n classNames.push('sky-btn-default');\n }\n\n return classNames;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\nimport { SkyProgressIndicatorNavButtonType } from '../types/progress-indicator-nav-button-type';\n\n@Pipe({\n name: 'skyProgressIndicatorNavButtonDisabled',\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonDisabledPipe implements PipeTransform {\n public transform(\n disabled: boolean | undefined,\n buttonType: SkyProgressIndicatorNavButtonType,\n activeIndex: number | undefined,\n itemStatuses: SkyProgressIndicatorItemStatus[] | undefined,\n ): boolean | undefined {\n const isLastStep = itemStatuses && activeIndex === itemStatuses.length - 1;\n\n return (\n (buttonType === 'next' && isLastStep) ||\n (buttonType === 'previous' && activeIndex === 0) ||\n disabled\n );\n }\n}\n","/**\n * Allows the consumer to decide whether the button's action should be completed successfully.\n * The handler is provided with all nav button types.\n */\nexport class SkyProgressIndicatorActionClickProgressHandler {\n /**\n *\n * @param advance Advances the progress indicator to the next step.\n */\n constructor(public readonly advance: () => void) {}\n}\n","export enum SkyProgressIndicatorMessageType {\n /**\n * The current step is complete.\n * This completes the active item and moves to the next item.\n */\n Progress = 0,\n\n /**\n * Returns progress to the previous step.\n * This moves from the active item to the item that precedes it.\n */\n Regress = 1,\n\n /**\n * Progress is incomplete.\n * This marks all items as incomplete and sets the first item as the active item.\n */\n Reset = 2,\n\n /**\n * Progress is complete.\n * This marks all items as complete and sets the last item as the active item.\n */\n Finish = 3,\n\n /**\n * Moves progress to the item indicated by the `data.activeIndex` property.\n */\n GoTo = 4,\n}\n","/**\n * @deprecated Use `SkyProgressIndicatorDisplayModeType` instead.\n * @internal\n */\nexport enum SkyProgressIndicatorDisplayMode {\n /**\n * The vertical layout for the progress indicator.\n */\n Vertical = 0,\n\n /**\n * The horizontal layout for the progress indicator.\n */\n Horizontal,\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n} from '@angular/core';\nimport { SkyAppWindowRef, SkyLogService } from '@skyux/core';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { delay, takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorItemComponent } from './progress-indicator-item/progress-indicator-item.component';\nimport { SkyProgressIndicatorChange } from './types/progress-indicator-change';\nimport { SkyProgressIndicatorDisplayModeType } from './types/progress-indicator-display-mode-type';\nimport { SkyProgressIndicatorItemStatus } from './types/progress-indicator-item-status';\nimport { SkyProgressIndicatorMessage } from './types/progress-indicator-message';\nimport { SkyProgressIndicatorMessageType } from './types/progress-indicator-message-type';\nimport { SkyProgressIndicatorDisplayMode } from './types/progress-indicator-mode';\n\n@Component({\n selector: 'sky-progress-indicator',\n templateUrl: './progress-indicator.component.html',\n styleUrls: ['./progress-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorComponent\n implements OnInit, AfterContentInit, OnDestroy\n{\n /**\n * The orientation of the progress indicator, which can be vertical or horizontal.\n * For [passive progress indicators](https://developer.blackbaud.com/skyux/components/progress-indicator-passive)\n * and [waterfall progress indicators](https://developer.blackbaud.com/skyux/components/progress-indicator-waterfall),\n * use the vertical display mode. For [modal wizards](https://developer.blackbaud.com/skyux/components/progress-indicator-wizard),\n * use the horizontal display mode.\n * @deprecated The property was designed to create wizards by setting `displayMode=\"horizontal\"` on progress indicators in modals,\n * but this wizard implementation was replaced by the\n * [wizard component that uses tabs](https://developer.blackbaud.com/skyux/components/tabs-wizard).\n * @default \"vertical\"\n */\n @Input()\n public set displayMode(\n value: SkyProgressIndicatorDisplayModeType | undefined,\n ) {\n switch (value) {\n case SkyProgressIndicatorDisplayMode.Horizontal:\n case 'horizontal':\n this.#_displayMode = 'horizontal';\n break;\n default:\n this.#_displayMode = 'vertical';\n }\n\n this.#updateCssClassNames();\n\n if (this.#_displayMode === 'horizontal') {\n this.#logger.deprecated('SkyProgressIndicator wizard', {\n deprecationMajorVersion: 6,\n replacementRecommendation: 'Use Wizard (Tabs) instead.',\n });\n }\n }\n\n public get displayMode(): SkyProgressIndicatorDisplayModeType {\n return this.#_displayMode;\n }\n\n /**\n * Whether the progress indicator is passive. Passive progress indicators inform users of\n * progress that concerns them but that they are not responsible for, and they must use the vertical display mode.\n * @default false\n */\n @Input()\n public set isPassive(value: boolean | undefined) {\n this.#_isPassive = value;\n this.#updateCssClassNames();\n }\n\n public get isPassive(): boolean | undefined {\n return this.#_isPassive;\n }\n\n /**\n * The observable of `SkyProgressIndicatorMessage` that determines the status to\n * display for items in the progress indicator. The message stream is a queue of\n * commanding messages to change the state of the progress indicator based on the message type.\n */\n @Input()\n public set messageStream(\n value:\n | Subject<SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType>\n | undefined,\n ) {\n this.#messageStream = value || new Subject();\n this.#subscribeToMessageStream();\n }\n\n /**\n * The index for the item to make active when the progress indicator\n * loads. All steps that precede the active item are marked as complete, and all steps\n * that follow the active item are marked as incomplete.\n */\n @Input()\n public set startingIndex(value: number | undefined) {\n this.#_startingIndex = value || 0;\n }\n\n public get startingIndex(): number {\n return this.#_startingIndex;\n }\n\n /**\n * Fires when the progress indicator changes the status of an item.\n */\n @Output()\n public progressChanges = new EventEmitter<SkyProgressIndicatorChange>();\n\n public get hasFinishButton(): boolean | undefined {\n return this.#_hasFinishButton;\n }\n\n public set hasFinishButton(value: boolean | undefined) {\n this.#_hasFinishButton = value;\n }\n\n @ContentChildren(SkyProgressIndicatorItemComponent)\n public itemComponents:\n | QueryList<SkyProgressIndicatorItemComponent>\n | undefined;\n\n public cssClassNames: string[] = [];\n public itemStatuses: SkyProgressIndicatorItemStatus[] = [];\n\n set #activeIndex(value: number | undefined) {\n const lastIndex = (this.itemComponents?.length || 0) - 1;\n this.#_activeIndex = Math.max(Math.min(value || 0, lastIndex), 0);\n }\n\n get #activeIndex(): number {\n return this.#_activeIndex;\n }\n\n #_activeIndex = 0;\n #_displayMode: SkyProgressIndicatorDisplayModeType = 'vertical';\n #_hasFinishButton: boolean | undefined;\n #_isPassive: boolean | undefined = false;\n #_startingIndex = 0;\n\n #messageStreamSub: Subscription | undefined;\n #initialized = false;\n #ngUnsubscribe = new Subject<void>();\n #messageStream = new Subject<\n SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType\n >();\n #changeDetector: ChangeDetectorRef;\n #windowRef: SkyAppWindowRef;\n #logger: SkyLogService;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n windowRef: SkyAppWindowRef,\n logger: SkyLogService,\n ) {\n this.#changeDetector = changeDetector;\n this.#windowRef = windowRef;\n this.#logger = logger;\n }\n\n public ngOnInit(): void {\n this.#initialized = true;\n\n this.#updateCssClassNames();\n this.#subscribeToMessageStream();\n }\n\n public ngAfterContentInit(): void {\n this.#activeIndex = this.startingIndex;\n\n this.#updateSteps();\n\n // Note: The delay here is to ensure all change detection on the items has finished. Without\n // the delay we receive a changed before checked error for vertical progress indicators\n this.itemComponents?.changes\n .pipe(takeUntil(this.#ngUnsubscribe), delay(0))\n .subscribe(() => {\n this.#updateSteps();\n this.#updateStatusesAndNotify();\n });\n\n // Wait for item components' change detection to complete\n // before notifying changes to the consumer.\n this.#windowRef.nativeWindow.setTimeout(() => {\n this.#updateStatusesAndNotify();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sendMessage(message: SkyProgressIndicatorMessage): void {\n this.#messageStream.next(message);\n }\n\n #isPassiveAndVertical(): boolean | undefined {\n // Currently, passive mode is not supported for horizontal displays.\n if (this.displayMode === 'horizontal') {\n return false;\n }\n\n return this.isPassive;\n }\n\n #gotoNextStep(): void {\n const nextIndex = this.#activeIndex + 1;\n const lastIndex = this.#getLastIndex();\n\n if (nextIndex > lastIndex) {\n return;\n }\n\n this.#gotoStep(nextIndex);\n }\n\n #gotoPreviousStep(): void {\n const previousIndex = this.#activeIndex - 1;\n\n if (previousIndex < 0) {\n return;\n }\n\n this.#gotoStep(previousIndex);\n }\n\n #gotoStep(index: number): void {\n this.#activeIndex = index;\n this.#updateSteps();\n this.#updateStatusesAndNotify();\n }\n\n #finishSteps(): void {\n this.#activeIndex = this.#getLastIndex();\n\n this.itemComponents?.forEach((component) => {\n component.status = SkyProgressIndicatorItemStatus.Complete;\n });\n\n this.#updateStatusesAndNotify({\n isComplete: true,\n });\n }\n\n #resetSteps(): void {\n this.#gotoStep(0);\n }\n\n #updateSteps(): void {\n if (this.#activeIndex > this.#getLastIndex()) {\n this.#activeIndex = this.#activeIndex - 1;\n }\n\n const activeIndex = this.#activeIndex;\n const isPassiveAndVertical = this.#isPassiveAndVertical();\n const isVertical = this.displayMode === 'vertical';\n\n this.itemComponents?.forEach((component, i) => {\n // Set visibility.\n component.isVisible = activeIndex === i || isVertical;\n\n // Set status.\n let status: SkyProgressIndicatorItemStatus;\n if (activeIndex === i) {\n if (isPassiveAndVertical) {\n status = SkyProgressIndicatorItemStatus.Pending;\n } else {\n status = SkyProgressIndicatorItemStatus.Active;\n }\n } else if (activeIndex > i) {\n status = SkyProgressIndicatorItemStatus.Complete;\n } else {\n status = SkyProgressIndicatorItemStatus.Incomplete;\n }\n\n component.status = status;\n\n // Show or hide the status markers.\n component.showStatusMarker = isVertical;\n\n // Show or hide the step number.\n if (isPassiveAndVertical) {\n component.hideStepNumber();\n } else {\n component.showStepNumber(i + 1);\n }\n\n // If we're in passive mode, don't show titles for incomplete items.\n component.showTitle = !(isPassiveAndVertical && activeIndex < i);\n });\n }\n\n #updateItemStatuses(): void {\n /* istanbul ignore next */\n this.itemStatuses = this.itemComponents?.map((c) => c.status) || [];\n }\n\n #updateCssClassNames(): void {\n const classNames = [`sky-progress-indicator-mode-${this.displayMode}`];\n\n if (this.#isPassiveAndVertical()) {\n classNames.push('sky-progress-indicator-passive');\n }\n\n this.cssClassNames = classNames;\n }\n\n #handleIncomingMessage(\n message: SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType,\n ): void {\n const indicatorMessage = message as SkyProgressIndicatorMessage;\n\n let type: SkyProgressIndicatorMessageType;\n\n // Prints a deprecation warning if the consumer provides only `SkyProgressIndicatorMessageType`.\n if (indicatorMessage.type === undefined) {\n console.warn(\n \"[Deprecation warning] The progress indicator component's `messageStream` input is set \" +\n 'to `Subject<SkyProgressIndicatorMessageType>`. We will remove this deprecated type in ' +\n 'the next major version release. Instead, set the `messageStream` input to a value of ' +\n '`Subject<SkyProgressIndicatorMessage>`.',\n );\n\n type = message as SkyProgressIndicatorMessageType;\n } else {\n type = indicatorMessage.type;\n }\n\n switch (type) {\n case SkyProgressIndicatorMessageType.Progress:\n this.#gotoNextStep();\n break;\n\n case SkyProgressIndicatorMessageType.Regress:\n this.#gotoPreviousStep();\n break;\n\n case SkyProgressIndicatorMessageType.Finish:\n this.#finishSteps();\n break;\n\n case SkyProgressIndicatorMessageType.Reset:\n this.#resetSteps();\n break;\n\n case SkyProgressIndicatorMessageType.GoTo:\n if (\n !indicatorMessage.data ||\n indicatorMessage.data.activeIndex === undefined\n ) {\n console.warn(\n 'A message type of `SkyProgressIndicatorMessageType.GoTo` was passed to the progress ' +\n 'indicator, but no step index was provided. You can pass the desired active ' +\n 'index via:\\n' +\n '{\\n' +\n ' type: SkyProgressIndicatorMessageType.GoTo,\\n' +\n ' data: { activeIndex: 0 }\\n' +\n '}',\n );\n return;\n }\n\n this.#gotoStep(indicatorMessage.data.activeIndex);\n break;\n\n default:\n break;\n }\n\n // Update the view after a message is received.\n this.#changeDetector.markForCheck();\n }\n\n #subscribeToMessageStream(): void {\n if (this.#initialized) {\n if (this.#messageStreamSub) {\n this.#messageStreamSub.unsubscribe();\n this.#messageStreamSub = undefined;\n }\n\n if (this.#messageStream) {\n this.#messageStreamSub = this.#messageStream\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((message) => {\n this.#handleIncomingMessage(message);\n });\n }\n }\n }\n\n #updateStatusesAndNotify(change?: SkyProgressIndicatorChange): void {\n this.#updateItemStatuses();\n\n this.progressChanges.next(\n Object.assign(\n {},\n {\n activeIndex: this.#activeIndex,\n itemStatuses: this.itemStatuses,\n },\n change,\n ),\n );\n }\n\n #getLastIndex(): number {\n return (this.itemComponents?.length || 0) - 1;\n }\n}\n","<div class=\"sky-progress-indicator\" [ngClass]=\"cssClassNames\">\n @if (displayMode === 'horizontal') {\n <div class=\"sky-progress-indicator-horizontal-status-markers\">\n @for (status of itemStatuses; track status) {\n <sky-progress-indicator-status-marker\n [displayMode]=\"displayMode\"\n [status]=\"status\"\n />\n }\n </div>\n }\n <ng-content />\n</div>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorComponent } from '../progress-indicator.component';\nimport { SkyProgressIndicatorActionClickArgs } from '../types/progress-indicator-action-click-args';\nimport { SkyProgressIndicatorActionClickProgressHandler } from '../types/progress-indicator-action-click-progress-handler';\nimport { SkyProgressIndicatorChange } from '../types/progress-indicator-change';\nimport { SkyProgressIndicatorMessageType } from '../types/progress-indicator-message-type';\nimport { SkyProgressIndicatorNavButtonType } from '../types/progress-indicator-nav-button-type';\n\nconst BUTTON_TYPE_DEFAULT: SkyProgressIndicatorNavButtonType = 'next';\n\n/**\n * Displays a button to navigate the steps in modal wizards. We recommend against using it in\n * passive progress indicators and waterfall progress indicators.\n */\n@Component({\n selector: 'sky-progress-indicator-nav-button',\n templateUrl: './progress-indicator-nav-button.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonComponent\n implements AfterViewInit, OnDestroy\n{\n /**\n * The label to display on the nav button.\n * @default \"Next\"\n */\n @Input()\n public buttonText: string | undefined;\n\n /**\n * The type of nav button to include.\n * @default \"next\"\n */\n @Input()\n public set buttonType(value: SkyProgressIndicatorNavButtonType | undefined) {\n this.#_buttonType = value || BUTTON_TYPE_DEFAULT;\n }\n\n public get buttonType(): SkyProgressIndicatorNavButtonType {\n return this.#_buttonType;\n }\n\n /**\n * Whether to disable the nav button.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = value;\n this.#changeDetector.markForCheck();\n }\n\n public get disabled(): boolean | undefined {\n return this.#_disabled;\n }\n\n /**\n * The progress indicator component to associate with the nav button.\n * @required\n */\n @Input()\n public set progressIndicator(\n value: SkyProgressIndicatorComponent | undefined,\n ) {\n this.#_progressIndicator = value;\n\n if (this.#_progressIndicator) {\n if (this.buttonType === 'finish') {\n // The `hasFinishButton` field was added to support legacy API.\n // Some implementations only include a next button; we cannot\n // assume that every implementation includes both a finish button and a next button.\n this.#_progressIndicator.hasFinishButton = true;\n }\n\n this.#_progressIndicator.progressChanges\n .pipe(distinctUntilChanged(), takeUntil(this.#ngUnsubscribe))\n .subscribe((change: SkyProgressIndicatorChange) => {\n this.lastProgressChange = change;\n this.#updateButtonVisibility(change);\n });\n } else {\n if (!this.#parentTimeout) {\n this.#parentTimeout = window.setTimeout(() => {\n /* istanbul ignore else */\n if (!this.progressIndicator) {\n throw new Error(\n 'The `<sky-progress-indicator-nav-button>` component requires a reference to ' +\n 'the `<sky-progress-indicator>` component it controls. For example:\\n' +\n '<sky-progress-indicator\\n' +\n ' #myProgressIndicator\\n' +\n '>\\n' +\n '</sky-progress-indicator>\\n' +\n '<sky-progress-indicator-nav-button\\n' +\n ' [progressIndicator]=\"myProgressIndicator\"\\n' +\n '>\\n' +\n '</sky-progress-indicator-nav-button>',\n );\n }\n }, 50);\n }\n }\n }\n\n public get progressIndicator(): SkyProgressIndicatorComponent | undefined {\n return this.#_progressIndicator;\n }\n\n /**\n * Fires when users select the nav button and emits a `SkyProgressIndicatorActionClickArgs`\n * object that is passed into the callback function to allow consumers to decide whether\n * the button’s action should complete successfully.\n */\n @Output()\n public actionClick = new EventEmitter<SkyProgressIndicatorActionClickArgs>();\n\n public set isVisible(value: boolean | undefined) {\n this.#_isVisible = value;\n this.#changeDetector.markForCheck();\n }\n\n public get isVisible(): boolean | undefined {\n return this.#_isVisible;\n }\n\n public lastProgressChange: SkyProgressIndicatorChange | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #parentTimeout: number | undefined;\n\n #_buttonType = BUTTON_TYPE_DEFAULT;\n #_disabled: boolean | undefined;\n #_isVisible: boolean | undefined;\n #_progressIndicator: SkyProgressIndicatorComponent | undefined;\n\n #changeDetector: ChangeDetectorRef;\n #parentComponent: SkyProgressIndicatorComponent | undefined;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n @Optional() parentComponent?: SkyProgressIndicatorComponent,\n ) {\n this.#changeDetector = changeDetector;\n this.#parentComponent = parentComponent;\n }\n\n public ngAfterViewInit(): void {\n if (!this.progressIndicator && this.#parentComponent) {\n this.progressIndicator = this.#parentComponent;\n } else if (!this.progressIndicator) {\n this.progressIndicator = undefined;\n }\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n this.actionClick.complete();\n }\n\n public onClick(event: MouseEvent): void {\n event.preventDefault();\n\n let type: SkyProgressIndicatorMessageType | undefined;\n\n switch (this.buttonType) {\n case 'finish':\n type = SkyProgressIndicatorMessageType.Finish;\n break;\n case 'next':\n type = SkyProgressIndicatorMessageType.Progress;\n break;\n case 'previous':\n type = SkyProgressIndicatorMessageType.Regress;\n break;\n case 'reset':\n type = SkyProgressIndicatorMessageType.Reset;\n break;\n }\n\n // If the consumer has subscribed to the `actionClick` event,\n // allow them to decide when to advance to the next step.\n if (this.actionClick.observers.length > 0) {\n this.actionClick.emit({\n event,\n progressHandler: new SkyProgressIndicatorActionClickProgressHandler(\n () => {\n this.#sendMessage(type);\n },\n ),\n });\n } else {\n this.#sendMessage(type);\n }\n }\n\n #sendMessage(type: SkyProgressIndicatorMessageType | undefined): void {\n if (type !== undefined) {\n this.progressIndicator?.sendMessage({ type });\n }\n }\n\n #updateButtonVisibility(change: SkyProgressIndicatorChange): void {\n const isLastStep =\n change.itemStatuses &&\n change.activeIndex === change.itemStatuses.length - 1;\n const buttonType = this.buttonType;\n\n // Hide the button if all steps are complete\n // (except for the reset button)\n if (buttonType !== 'reset' && change.isComplete) {\n this.isVisible = false;\n return;\n }\n\n if (buttonType === 'finish') {\n this.isVisible = isLastStep;\n return;\n }\n\n // Hide the next button on the last step only if a finish button exists.\n if (\n buttonType === 'next' &&\n isLastStep &&\n this.progressIndicator?.hasFinishButton\n ) {\n this.isVisible = false;\n return;\n }\n\n this.isVisible = true;\n }\n}\n","@if (isVisible) {\n <button\n class=\"sky-btn sky-margin-inline-sm\"\n type=\"button\"\n [disabled]=\"\n disabled\n | skyProgressIndicatorNavButtonDisabled\n : buttonType\n : lastProgressChange?.activeIndex\n : lastProgressChange?.itemStatuses\n \"\n [ngClass]=\"buttonType | skyProgressIndicatorNavButtonClass\"\n (click)=\"onClick($event)\"\n >\n {{\n buttonText ||\n ('skyux_progress_indicator_navigator_' + buttonType | skyLibResources)\n }}\n </button>\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n} from '@angular/core';\n\nimport { SkyProgressIndicatorComponent } from '../progress-indicator.component';\nimport { SkyProgressIndicatorMessageType } from '../types/progress-indicator-message-type';\n\n/**\n * Displays a button to mark all items in the progress indicator as incomplete and set the\n * first item as the active item. The steps after the active item remain incomplete until\n * users reach them in their sequential order.\n */\n@Component({\n selector: 'sky-progress-indicator-reset-button',\n templateUrl: './progress-indicator-reset-button.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorResetButtonComponent implements OnDestroy {\n /**\n * Whether to disable the reset button.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = value;\n this.#changeDetector.markForCheck();\n }\n\n public get disabled(): boolean | undefined {\n return this.#_disabled;\n }\n\n /**\n * The progress indicator component to associate with the reset button.\n * @required\n */\n @Input()\n public progressIndicator: SkyProgressIndicatorComponent | undefined;\n\n /**\n * Fires when users select the reset button that marks all items as incomplete and sets the\n * first item as the active item.\n */\n @Output()\n public resetClick = new EventEmitter<void>();\n\n #_disabled: boolean | undefined;\n #changeDetector: ChangeDetectorRef;\n\n constructor(changeDetector: ChangeDetectorRef) {\n this.#changeDetector = changeDetector;\n }\n\n public ngOnDestroy(): void {\n this.resetClick.complete();\n }\n\n public onClick(): void {\n this.resetClick.emit();\n\n this.progressIndicator?.sendMessage({\n type: SkyProgressIndicatorMessageType.Reset,\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"onClick()\"\n>\n <ng-content />\n</button>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Specifies a header to display above the progress indicator.\n */\n@Component({\n selector: 'sky-progress-indicator-title',\n templateUrl: './progress-indicator-title.component.html',\n styleUrls: ['./progress-indicator-title.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorTitleComponent {}\n","<div\n aria-level=\"1\"\n class=\"sky-progress-indicator-title\"\n role=\"heading\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'default',\n 'sky-font-heading-1': 'modern'\n }\"\n>\n <ng-content />\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyProgressIndicatorResourcesModule } from '../shared/sky-progress-indicator-resources.module';\n\nimport { SkyProgressIndicatorItemComponent } from './progress-indicator-item/progress-indicator-item.component';\nimport { SkyProgressIndicatorNavButtonClass } from './progress-indicator-nav-button/progress-indicator-nav-button-class.pipe';\nimport { SkyProgressIndicatorNavButtonDisabledPipe } from './progress-indicator-nav-button/progress-indicator-nav-button-disabled.pipe';\nimport { SkyProgressIndicatorNavButtonComponent } from './progress-indicator-nav-button/progress-indicator-nav-button.component';\nimport { SkyProgressIndicatorResetButtonComponent } from './progress-indicator-reset-button/progress-indicator-reset-button.component';\nimport { SkyProgressIndicatorMarkerClassPipe } from './progress-indicator-status-marker/progress-indicator-status-marker-class.pipe';\nimport { SkyProgressIndicatorStatusMarkerComponent } from './progress-indicator-status-marker/progress-indicator-status-marker.component';\nimport { SkyProgressIndicatorTitleComponent } from './progress-indicator-title/progress-indicator-title.component';\nimport { SkyProgressIndicatorComponent } from './progress-indicator.component';\n\n@NgModule({\n declarations: [\n SkyProgressIndicatorComponent,\n SkyProgressIndicatorItemComponent,\n SkyProgressIndicatorMarkerClassPipe,\n SkyProgressIndicatorNavButtonClass,\n SkyProgressIndicatorNavButtonDisabledPipe,\n SkyProgressIndicatorNavButtonComponent,\n SkyProgressIndicatorResetButtonComponent,\n SkyProgressIndicatorStatusMarkerComponent,\n SkyProgressIndicatorTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyHelpInlineModule,\n SkyIconModule,\n SkyProgressIndicatorResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n ],\n exports: [\n SkyProgressIndicatorComponent,\n SkyProgressIndicatorItemComponent,\n SkyProgressIndicatorNavButtonComponent,\n SkyProgressIndicatorResetButtonComponent,\n SkyProgressIndicatorTitleComponent,\n ],\n})\nexport class SkyProgressIndicatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.SkyProgressIndicatorMarkerClassPipe","i1","i2","i3","i4","i5.SkyProgressIndicatorStatusMarkerComponent","i3.SkyProgressIndicatorStatusMarkerComponent","i1.SkyProgressIndicatorComponent","i4.SkyProgressIndicatorNavButtonClass","i5.SkyProgressIndicatorNavButtonDisabledPipe"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-progress-indicator.mjs","sources":["../../../../../libs/components/progress-indicator/src/lib/modules/shared/sky-progress-indicator-resources.module.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-item-status.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker-class.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-status-marker/progress-indicator-status-marker.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-item/progress-indicator-item.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-item/progress-indicator-item.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button-class.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button-disabled.pipe.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-message-type.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-mode.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/types/progress-indicator-action-click-progress-handler.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-nav-button/progress-indicator-nav-button.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-reset-button/progress-indicator-reset-button.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-reset-button/progress-indicator-reset-button.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-title/progress-indicator-title.component.ts","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator-title/progress-indicator-title.component.html","../../../../../libs/components/progress-indicator/src/lib/modules/progress-indicator/progress-indicator.module.ts","../../../../../libs/components/progress-indicator/src/skyux-progress-indicator.ts"],"sourcesContent":["/* istanbul ignore file */\n\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-progress-indicator' 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_progress_indicator_navigator_finish: { message: 'Finish' },\n skyux_progress_indicator_navigator_next: { message: 'Next' },\n skyux_progress_indicator_navigator_previous: { message: 'Previous' },\n skyux_progress_indicator_navigator_reset: { message: 'Reset' },\n },\n 'FR-CA': {\n skyux_progress_indicator_navigator_finish: { message: 'Terminer' },\n skyux_progress_indicator_navigator_next: { message: 'Suivant' },\n skyux_progress_indicator_navigator_previous: { message: 'Précédent' },\n skyux_progress_indicator_navigator_reset: { message: 'Réinitialiser' },\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 SkyProgressIndicatorResourcesModule {}\n","export enum SkyProgressIndicatorItemStatus {\n /**\n * The item is active.\n */\n Active = 0,\n\n /**\n * The item is complete.\n */\n Complete,\n\n /**\n * The item is incomplete.\n */\n Incomplete,\n\n /**\n * The item is pending.\n */\n Pending,\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\n@Pipe({\n name: 'skyProgressIndicatorMarkerClass',\n standalone: false,\n})\nexport class SkyProgressIndicatorMarkerClassPipe implements PipeTransform {\n public transform(\n displayMode: string,\n status: SkyProgressIndicatorItemStatus,\n ): string {\n let statusName: string;\n\n switch (status) {\n case SkyProgressIndicatorItemStatus.Complete:\n statusName = 'complete';\n break;\n case SkyProgressIndicatorItemStatus.Incomplete:\n statusName = 'incomplete';\n break;\n case SkyProgressIndicatorItemStatus.Pending:\n statusName = 'pending';\n break;\n default:\n statusName = 'active';\n }\n\n return `sky-progress-indicator-status-marker-mode-${displayMode} sky-progress-indicator-status-marker-status-${statusName}`;\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n inject,\n} from '@angular/core';\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\n/**\n * Specifies the content to display in the status marker.\n * @internal\n */\n@Component({\n selector: 'sky-progress-indicator-status-marker',\n templateUrl: './progress-indicator-status-marker.component.html',\n styleUrls: ['./progress-indicator-status-marker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorStatusMarkerComponent implements OnDestroy {\n @Input()\n public set displayMode(value: 'vertical' | 'horizontal') {\n this.#_displayMode = value;\n }\n\n public get displayMode(): 'vertical' | 'horizontal' {\n return this.#_displayMode;\n }\n\n @Input()\n public set status(value: SkyProgressIndicatorItemStatus) {\n this.#_status = value;\n this.isComplete = this.#_status === SkyProgressIndicatorItemStatus.Complete;\n }\n\n public get status(): SkyProgressIndicatorItemStatus {\n return this.#_status;\n }\n\n public isComplete = false;\n\n #ngUnsubscribe = new Subject<void>();\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n #_status: SkyProgressIndicatorItemStatus =\n SkyProgressIndicatorItemStatus.Active;\n #_displayMode: 'vertical' | 'horizontal' = 'vertical';\n\n constructor() {\n // Update icons when theme changes.\n inject(SkyThemeService, { optional: true })\n ?.settingsChange.pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n this.#changeDetector.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n class=\"sky-progress-indicator-status-marker\"\n role=\"presentation\"\n [ngClass]=\"displayMode | skyProgressIndicatorMarkerClass: status\"\n>\n <div class=\"sky-progress-indicator-status-marker-icon\">\n @if (isComplete) {\n <sky-icon iconName=\"checkmark\" />\n }\n </div>\n <div class=\"sky-progress-indicator-status-marker-line\"></div>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n TemplateRef,\n inject,\n} from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\n\nconst STATUS_DEFAULT = SkyProgressIndicatorItemStatus.Incomplete;\nconst STATUS_NAME_DEFAULT = 'incomplete';\n\n/**\n * Specifies a step to include in the progress indicator. Each step requires a label,\n * and you can also specify step details within the `sky-progress-indicator-item` element.\n */\n@Component({\n selector: 'sky-progress-indicator-item',\n templateUrl: './progress-indicator-item.component.html',\n styleUrls: ['./progress-indicator-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorItemComponent implements OnInit {\n /**\n * The step label for the step in the progress indicator.\n * @required\n */\n @Input()\n public set title(value: string | undefined) {\n this.#_title = value;\n this.#updateFormattedTitle();\n }\n\n public get title(): string | undefined {\n return this.#_title;\n }\n\n /**\n * A help key that identifies the global help content to display. When specified along with `title`, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline) button is\n * placed beside the progress indicator item label. Clicking the button invokes [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) as configured by the application.\n * This property only applies when `title` is also specified.\n */\n @Input()\n public helpKey: string | undefined;\n\n /**\n * The content of the help popover. When specified along with `title`, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the progress indicator item label. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title. This property only applies when `title` is also specified.\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 public set status(value: SkyProgressIndicatorItemStatus | undefined) {\n if (value === this.#_status) {\n return;\n }\n\n /* istanbul ignore next */\n this.#_status = value ?? STATUS_DEFAULT;\n\n switch (this.#_status) {\n case SkyProgressIndicatorItemStatus.Active:\n this.statusName = 'active';\n break;\n case SkyProgressIndicatorItemStatus.Complete:\n this.statusName = 'complete';\n break;\n case SkyProgressIndicatorItemStatus.Incomplete:\n this.statusName = 'incomplete';\n break;\n case SkyProgressIndicatorItemStatus.Pending:\n this.statusName = 'pending';\n break;\n }\n\n this.#changeDetector.markForCheck();\n }\n\n public get status(): SkyProgressIndicatorItemStatus {\n return this.#_status;\n }\n\n public formattedTitle: string | undefined;\n\n public set isVisible(value: boolean | undefined) {\n this.#_isVisible = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get isVisible(): boolean {\n return this.#_isVisible;\n }\n\n public set showStatusMarker(value: boolean | undefined) {\n this.#_showStatusMarker = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get showStatusMarker(): boolean {\n return this.#_showStatusMarker;\n }\n\n public set showTitle(value: boolean | undefined) {\n this.#_showTitle = !!value;\n this.#changeDetector.markForCheck();\n }\n\n public get showTitle(): boolean {\n return this.#_showTitle;\n }\n\n public statusName = STATUS_NAME_DEFAULT;\n\n #titlePrefix: string | undefined;\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n #_isVisible = false;\n #_title: string | undefined;\n #_showStatusMarker = true;\n #_showTitle = true;\n #_status = STATUS_DEFAULT;\n\n public ngOnInit(): void {\n this.#updateFormattedTitle();\n }\n\n public showStepNumber(step: number): void {\n this.#titlePrefix = `${step} - `;\n this.#updateFormattedTitle();\n }\n\n public hideStepNumber(): void {\n this.#titlePrefix = '';\n this.#updateFormattedTitle();\n }\n\n #updateFormattedTitle(): void {\n this.formattedTitle = `${this.#titlePrefix}${this.title}`;\n this.#changeDetector.markForCheck();\n }\n}\n","@if (isVisible) {\n <div\n class=\"sky-progress-indicator-item\"\n [ngClass]=\"'sky-progress-indicator-item-status-' + statusName\"\n >\n @if (showStatusMarker) {\n <sky-progress-indicator-status-marker [status]=\"status\" />\n }\n\n <div class=\"sky-progress-indicator-item-content\">\n @if (showTitle) {\n <div class=\"sky-progress-indicator-item-heading-wrapper\" skyTrim>\n <span\n aria-level=\"2\"\n class=\"sky-progress-indicator-item-heading\"\n role=\"heading\"\n [ngClass]=\"{\n 'sky-font-deemphasized': statusName === 'pending'\n }\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ formattedTitle }}\n @if (!helpKey && !helpPopoverContent) {\n <span class=\"sky-control-help-container\" skyTrim\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n }\n </span>\n @if (helpKey || helpPopoverContent) {\n <span class=\"sky-control-help-container\">\n <sky-help-inline\n [helpKey]=\"helpKey\"\n [labelText]=\"title\"\n [popoverTitle]=\"helpPopoverTitle\"\n [popoverContent]=\"helpPopoverContent\"\n />\n </span>\n }\n </div>\n }\n <div class=\"sky-progress-indicator-item-body\">\n @if (statusName !== 'incomplete') {\n <ng-content />\n }\n </div>\n </div>\n </div>\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'skyProgressIndicatorNavButtonClass',\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonClass implements PipeTransform {\n public transform(buttonType: string): string[] {\n const classNames = [`sky-progress-indicator-nav-button-${buttonType}`];\n\n switch (buttonType) {\n case 'next':\n case 'finish':\n classNames.push('sky-btn-primary');\n break;\n case 'reset':\n classNames.push('sky-btn-link');\n break;\n default:\n classNames.push('sky-btn-default');\n }\n\n return classNames;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyProgressIndicatorItemStatus } from '../types/progress-indicator-item-status';\nimport { SkyProgressIndicatorNavButtonType } from '../types/progress-indicator-nav-button-type';\n\n@Pipe({\n name: 'skyProgressIndicatorNavButtonDisabled',\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonDisabledPipe implements PipeTransform {\n public transform(\n disabled: boolean | undefined,\n buttonType: SkyProgressIndicatorNavButtonType,\n activeIndex: number | undefined,\n itemStatuses: SkyProgressIndicatorItemStatus[] | undefined,\n ): boolean | undefined {\n const isLastStep = itemStatuses && activeIndex === itemStatuses.length - 1;\n\n return (\n (buttonType === 'next' && isLastStep) ||\n (buttonType === 'previous' && activeIndex === 0) ||\n disabled\n );\n }\n}\n","export enum SkyProgressIndicatorMessageType {\n /**\n * The current step is complete.\n * This completes the active item and moves to the next item.\n */\n Progress = 0,\n\n /**\n * Returns progress to the previous step.\n * This moves from the active item to the item that precedes it.\n */\n Regress = 1,\n\n /**\n * Progress is incomplete.\n * This marks all items as incomplete and sets the first item as the active item.\n */\n Reset = 2,\n\n /**\n * Progress is complete.\n * This marks all items as complete and sets the last item as the active item.\n */\n Finish = 3,\n\n /**\n * Moves progress to the item indicated by the `data.activeIndex` property.\n */\n GoTo = 4,\n}\n","/**\n * @deprecated Use `SkyProgressIndicatorDisplayModeType` instead.\n * @internal\n */\nexport enum SkyProgressIndicatorDisplayMode {\n /**\n * The vertical layout for the progress indicator.\n */\n Vertical = 0,\n\n /**\n * The horizontal layout for the progress indicator.\n */\n Horizontal,\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n inject,\n} from '@angular/core';\nimport { SkyAppWindowRef, SkyLogService } from '@skyux/core';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { delay, takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorItemComponent } from './progress-indicator-item/progress-indicator-item.component';\nimport { SkyProgressIndicatorChange } from './types/progress-indicator-change';\nimport { SkyProgressIndicatorDisplayModeType } from './types/progress-indicator-display-mode-type';\nimport { SkyProgressIndicatorItemStatus } from './types/progress-indicator-item-status';\nimport { SkyProgressIndicatorMessage } from './types/progress-indicator-message';\nimport { SkyProgressIndicatorMessageType } from './types/progress-indicator-message-type';\nimport { SkyProgressIndicatorDisplayMode } from './types/progress-indicator-mode';\n\n@Component({\n selector: 'sky-progress-indicator',\n templateUrl: './progress-indicator.component.html',\n styleUrls: ['./progress-indicator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorComponent\n implements OnInit, AfterContentInit, OnDestroy\n{\n /**\n * The orientation of the progress indicator, which can be vertical or horizontal.\n * For [passive progress indicators](https://developer.blackbaud.com/skyux/components/progress-indicator-passive)\n * and [waterfall progress indicators](https://developer.blackbaud.com/skyux/components/progress-indicator-waterfall),\n * use the vertical display mode. For [modal wizards](https://developer.blackbaud.com/skyux/components/progress-indicator-wizard),\n * use the horizontal display mode.\n * @deprecated The property was designed to create wizards by setting `displayMode=\"horizontal\"` on progress indicators in modals,\n * but this wizard implementation was replaced by the\n * [wizard component that uses tabs](https://developer.blackbaud.com/skyux/components/tabs-wizard).\n * @default \"vertical\"\n */\n @Input()\n public set displayMode(\n value: SkyProgressIndicatorDisplayModeType | undefined,\n ) {\n switch (value) {\n case SkyProgressIndicatorDisplayMode.Horizontal:\n case 'horizontal':\n this.#_displayMode = 'horizontal';\n break;\n default:\n this.#_displayMode = 'vertical';\n }\n\n this.#updateCssClassNames();\n\n if (this.#_displayMode === 'horizontal') {\n this.#logger.deprecated('SkyProgressIndicator wizard', {\n deprecationMajorVersion: 6,\n replacementRecommendation: 'Use Wizard (Tabs) instead.',\n });\n }\n }\n\n public get displayMode(): SkyProgressIndicatorDisplayModeType {\n return this.#_displayMode;\n }\n\n /**\n * Whether the progress indicator is passive. Passive progress indicators inform users of\n * progress that concerns them but that they are not responsible for, and they must use the vertical display mode.\n * @default false\n */\n @Input()\n public set isPassive(value: boolean | undefined) {\n this.#_isPassive = value;\n this.#updateCssClassNames();\n }\n\n public get isPassive(): boolean | undefined {\n return this.#_isPassive;\n }\n\n /**\n * The observable of `SkyProgressIndicatorMessage` that determines the status to\n * display for items in the progress indicator. The message stream is a queue of\n * commanding messages to change the state of the progress indicator based on the message type.\n */\n @Input()\n public set messageStream(\n value:\n | Subject<SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType>\n | undefined,\n ) {\n this.#messageStream = value || new Subject();\n this.#subscribeToMessageStream();\n }\n\n /**\n * The index for the item to make active when the progress indicator\n * loads. All steps that precede the active item are marked as complete, and all steps\n * that follow the active item are marked as incomplete.\n */\n @Input()\n public set startingIndex(value: number | undefined) {\n this.#_startingIndex = value || 0;\n }\n\n public get startingIndex(): number {\n return this.#_startingIndex;\n }\n\n /**\n * Fires when the progress indicator changes the status of an item.\n */\n @Output()\n public progressChanges = new EventEmitter<SkyProgressIndicatorChange>();\n\n public get hasFinishButton(): boolean | undefined {\n return this.#_hasFinishButton;\n }\n\n public set hasFinishButton(value: boolean | undefined) {\n this.#_hasFinishButton = value;\n }\n\n @ContentChildren(SkyProgressIndicatorItemComponent)\n public itemComponents:\n | QueryList<SkyProgressIndicatorItemComponent>\n | undefined;\n\n public cssClassNames: string[] = [];\n public itemStatuses: SkyProgressIndicatorItemStatus[] = [];\n\n set #activeIndex(value: number | undefined) {\n const lastIndex = (this.itemComponents?.length || 0) - 1;\n this.#_activeIndex = Math.max(Math.min(value || 0, lastIndex), 0);\n }\n\n get #activeIndex(): number {\n return this.#_activeIndex;\n }\n\n #_activeIndex = 0;\n #_displayMode: SkyProgressIndicatorDisplayModeType = 'vertical';\n #_hasFinishButton: boolean | undefined;\n #_isPassive: boolean | undefined = false;\n #_startingIndex = 0;\n\n #messageStreamSub: Subscription | undefined;\n #initialized = false;\n #ngUnsubscribe = new Subject<void>();\n #messageStream = new Subject<\n SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType\n >();\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #windowRef = inject(SkyAppWindowRef);\n readonly #logger = inject(SkyLogService);\n\n public ngOnInit(): void {\n this.#initialized = true;\n\n this.#updateCssClassNames();\n this.#subscribeToMessageStream();\n }\n\n public ngAfterContentInit(): void {\n this.#activeIndex = this.startingIndex;\n\n this.#updateSteps();\n\n // Note: The delay here is to ensure all change detection on the items has finished. Without\n // the delay we receive a changed before checked error for vertical progress indicators\n this.itemComponents?.changes\n .pipe(takeUntil(this.#ngUnsubscribe), delay(0))\n .subscribe(() => {\n this.#updateSteps();\n this.#updateStatusesAndNotify();\n });\n\n // Wait for item components' change detection to complete\n // before notifying changes to the consumer.\n this.#windowRef.nativeWindow.setTimeout(() => {\n this.#updateStatusesAndNotify();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sendMessage(message: SkyProgressIndicatorMessage): void {\n this.#messageStream.next(message);\n }\n\n #isPassiveAndVertical(): boolean | undefined {\n // Currently, passive mode is not supported for horizontal displays.\n if (this.displayMode === 'horizontal') {\n return false;\n }\n\n return this.isPassive;\n }\n\n #gotoNextStep(): void {\n const nextIndex = this.#activeIndex + 1;\n const lastIndex = this.#getLastIndex();\n\n if (nextIndex > lastIndex) {\n return;\n }\n\n this.#gotoStep(nextIndex);\n }\n\n #gotoPreviousStep(): void {\n const previousIndex = this.#activeIndex - 1;\n\n if (previousIndex < 0) {\n return;\n }\n\n this.#gotoStep(previousIndex);\n }\n\n #gotoStep(index: number): void {\n this.#activeIndex = index;\n this.#updateSteps();\n this.#updateStatusesAndNotify();\n }\n\n #finishSteps(): void {\n this.#activeIndex = this.#getLastIndex();\n\n this.itemComponents?.forEach((component) => {\n component.status = SkyProgressIndicatorItemStatus.Complete;\n });\n\n this.#updateStatusesAndNotify({\n isComplete: true,\n });\n }\n\n #resetSteps(): void {\n this.#gotoStep(0);\n }\n\n #updateSteps(): void {\n if (this.#activeIndex > this.#getLastIndex()) {\n this.#activeIndex = this.#activeIndex - 1;\n }\n\n const activeIndex = this.#activeIndex;\n const isPassiveAndVertical = this.#isPassiveAndVertical();\n const isVertical = this.displayMode === 'vertical';\n\n this.itemComponents?.forEach((component, i) => {\n // Set visibility.\n component.isVisible = activeIndex === i || isVertical;\n\n // Set status.\n let status: SkyProgressIndicatorItemStatus;\n if (activeIndex === i) {\n if (isPassiveAndVertical) {\n status = SkyProgressIndicatorItemStatus.Pending;\n } else {\n status = SkyProgressIndicatorItemStatus.Active;\n }\n } else if (activeIndex > i) {\n status = SkyProgressIndicatorItemStatus.Complete;\n } else {\n status = SkyProgressIndicatorItemStatus.Incomplete;\n }\n\n component.status = status;\n\n // Show or hide the status markers.\n component.showStatusMarker = isVertical;\n\n // Show or hide the step number.\n if (isPassiveAndVertical) {\n component.hideStepNumber();\n } else {\n component.showStepNumber(i + 1);\n }\n\n // If we're in passive mode, don't show titles for incomplete items.\n component.showTitle = !(isPassiveAndVertical && activeIndex < i);\n });\n }\n\n #updateItemStatuses(): void {\n /* istanbul ignore next */\n this.itemStatuses = this.itemComponents?.map((c) => c.status) || [];\n }\n\n #updateCssClassNames(): void {\n const classNames = [`sky-progress-indicator-mode-${this.displayMode}`];\n\n if (this.#isPassiveAndVertical()) {\n classNames.push('sky-progress-indicator-passive');\n }\n\n this.cssClassNames = classNames;\n }\n\n #handleIncomingMessage(\n message: SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType,\n ): void {\n const indicatorMessage = message as SkyProgressIndicatorMessage;\n\n let type: SkyProgressIndicatorMessageType;\n\n // Prints a deprecation warning if the consumer provides only `SkyProgressIndicatorMessageType`.\n if (indicatorMessage.type === undefined) {\n console.warn(\n \"[Deprecation warning] The progress indicator component's `messageStream` input is set \" +\n 'to `Subject<SkyProgressIndicatorMessageType>`. We will remove this deprecated type in ' +\n 'the next major version release. Instead, set the `messageStream` input to a value of ' +\n '`Subject<SkyProgressIndicatorMessage>`.',\n );\n\n type = message as SkyProgressIndicatorMessageType;\n } else {\n type = indicatorMessage.type;\n }\n\n switch (type) {\n case SkyProgressIndicatorMessageType.Progress:\n this.#gotoNextStep();\n break;\n\n case SkyProgressIndicatorMessageType.Regress:\n this.#gotoPreviousStep();\n break;\n\n case SkyProgressIndicatorMessageType.Finish:\n this.#finishSteps();\n break;\n\n case SkyProgressIndicatorMessageType.Reset:\n this.#resetSteps();\n break;\n\n case SkyProgressIndicatorMessageType.GoTo:\n if (\n !indicatorMessage.data ||\n indicatorMessage.data.activeIndex === undefined\n ) {\n console.warn(\n 'A message type of `SkyProgressIndicatorMessageType.GoTo` was passed to the progress ' +\n 'indicator, but no step index was provided. You can pass the desired active ' +\n 'index via:\\n' +\n '{\\n' +\n ' type: SkyProgressIndicatorMessageType.GoTo,\\n' +\n ' data: { activeIndex: 0 }\\n' +\n '}',\n );\n return;\n }\n\n this.#gotoStep(indicatorMessage.data.activeIndex);\n break;\n\n default:\n break;\n }\n\n // Update the view after a message is received.\n this.#changeDetector.markForCheck();\n }\n\n #subscribeToMessageStream(): void {\n if (this.#initialized) {\n if (this.#messageStreamSub) {\n this.#messageStreamSub.unsubscribe();\n this.#messageStreamSub = undefined;\n }\n\n if (this.#messageStream) {\n this.#messageStreamSub = this.#messageStream\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((message) => {\n this.#handleIncomingMessage(message);\n });\n }\n }\n }\n\n #updateStatusesAndNotify(change?: SkyProgressIndicatorChange): void {\n this.#updateItemStatuses();\n\n this.progressChanges.next(\n Object.assign(\n {},\n {\n activeIndex: this.#activeIndex,\n itemStatuses: this.itemStatuses,\n },\n change,\n ),\n );\n }\n\n #getLastIndex(): number {\n return (this.itemComponents?.length || 0) - 1;\n }\n}\n","<div class=\"sky-progress-indicator\" [ngClass]=\"cssClassNames\">\n @if (displayMode === 'horizontal') {\n <div class=\"sky-progress-indicator-horizontal-status-markers\">\n @for (status of itemStatuses; track status) {\n <sky-progress-indicator-status-marker\n [displayMode]=\"displayMode\"\n [status]=\"status\"\n />\n }\n </div>\n }\n <ng-content />\n</div>\n","/**\n * Allows the consumer to decide whether the button's action should be completed successfully.\n * The handler is provided with all nav button types.\n */\nexport class SkyProgressIndicatorActionClickProgressHandler {\n /**\n *\n * @param advance Advances the progress indicator to the next step.\n */\n constructor(public readonly advance: () => void) {}\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n inject,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\n\nimport { SkyProgressIndicatorComponent } from '../progress-indicator.component';\nimport { SkyProgressIndicatorActionClickArgs } from '../types/progress-indicator-action-click-args';\nimport { SkyProgressIndicatorActionClickProgressHandler } from '../types/progress-indicator-action-click-progress-handler';\nimport { SkyProgressIndicatorChange } from '../types/progress-indicator-change';\nimport { SkyProgressIndicatorMessageType } from '../types/progress-indicator-message-type';\nimport { SkyProgressIndicatorNavButtonType } from '../types/progress-indicator-nav-button-type';\n\nconst BUTTON_TYPE_DEFAULT: SkyProgressIndicatorNavButtonType = 'next';\n\n/**\n * Displays a button to navigate the steps in modal wizards. We recommend against using it in\n * passive progress indicators and waterfall progress indicators.\n */\n@Component({\n selector: 'sky-progress-indicator-nav-button',\n templateUrl: './progress-indicator-nav-button.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorNavButtonComponent\n implements AfterViewInit, OnDestroy\n{\n /**\n * The label to display on the nav button.\n * @default \"Next\"\n */\n @Input()\n public buttonText: string | undefined;\n\n /**\n * The type of nav button to include.\n * @default \"next\"\n */\n @Input()\n public set buttonType(value: SkyProgressIndicatorNavButtonType | undefined) {\n this.#_buttonType = value || BUTTON_TYPE_DEFAULT;\n }\n\n public get buttonType(): SkyProgressIndicatorNavButtonType {\n return this.#_buttonType;\n }\n\n /**\n * Whether to disable the nav button.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = value;\n this.#changeDetector.markForCheck();\n }\n\n public get disabled(): boolean | undefined {\n return this.#_disabled;\n }\n\n /**\n * The progress indicator component to associate with the nav button.\n * @required\n */\n @Input()\n public set progressIndicator(\n value: SkyProgressIndicatorComponent | undefined,\n ) {\n this.#_progressIndicator = value;\n\n if (this.#_progressIndicator) {\n if (this.buttonType === 'finish') {\n // The `hasFinishButton` field was added to support legacy API.\n // Some implementations only include a next button; we cannot\n // assume that every implementation includes both a finish button and a next button.\n this.#_progressIndicator.hasFinishButton = true;\n }\n\n this.#_progressIndicator.progressChanges\n .pipe(distinctUntilChanged(), takeUntil(this.#ngUnsubscribe))\n .subscribe((change: SkyProgressIndicatorChange) => {\n this.lastProgressChange = change;\n this.#updateButtonVisibility(change);\n });\n } else {\n if (!this.#parentTimeout) {\n this.#parentTimeout = window.setTimeout(() => {\n /* istanbul ignore else */\n if (!this.progressIndicator) {\n throw new Error(\n 'The `<sky-progress-indicator-nav-button>` component requires a reference to ' +\n 'the `<sky-progress-indicator>` component it controls. For example:\\n' +\n '<sky-progress-indicator\\n' +\n ' #myProgressIndicator\\n' +\n '>\\n' +\n '</sky-progress-indicator>\\n' +\n '<sky-progress-indicator-nav-button\\n' +\n ' [progressIndicator]=\"myProgressIndicator\"\\n' +\n '>\\n' +\n '</sky-progress-indicator-nav-button>',\n );\n }\n }, 50);\n }\n }\n }\n\n public get progressIndicator(): SkyProgressIndicatorComponent | undefined {\n return this.#_progressIndicator;\n }\n\n /**\n * Fires when users select the nav button and emits a `SkyProgressIndicatorActionClickArgs`\n * object that is passed into the callback function to allow consumers to decide whether\n * the button’s action should complete successfully.\n */\n @Output()\n public actionClick = new EventEmitter<SkyProgressIndicatorActionClickArgs>();\n\n public set isVisible(value: boolean | undefined) {\n this.#_isVisible = value;\n this.#changeDetector.markForCheck();\n }\n\n public get isVisible(): boolean | undefined {\n return this.#_isVisible;\n }\n\n public lastProgressChange: SkyProgressIndicatorChange | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #parentTimeout: number | undefined;\n\n #_buttonType = BUTTON_TYPE_DEFAULT;\n #_disabled: boolean | undefined;\n #_isVisible: boolean | undefined;\n #_progressIndicator: SkyProgressIndicatorComponent | undefined;\n\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #parentComponent = inject(SkyProgressIndicatorComponent, {\n optional: true,\n });\n\n public ngAfterViewInit(): void {\n if (!this.progressIndicator && this.#parentComponent) {\n this.progressIndicator = this.#parentComponent;\n } else if (!this.progressIndicator) {\n this.progressIndicator = undefined;\n }\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n this.actionClick.complete();\n }\n\n public onClick(event: MouseEvent): void {\n event.preventDefault();\n\n let type: SkyProgressIndicatorMessageType | undefined;\n\n switch (this.buttonType) {\n case 'finish':\n type = SkyProgressIndicatorMessageType.Finish;\n break;\n case 'next':\n type = SkyProgressIndicatorMessageType.Progress;\n break;\n case 'previous':\n type = SkyProgressIndicatorMessageType.Regress;\n break;\n case 'reset':\n type = SkyProgressIndicatorMessageType.Reset;\n break;\n }\n\n // If the consumer has subscribed to the `actionClick` event,\n // allow them to decide when to advance to the next step.\n if (this.actionClick.observers.length > 0) {\n this.actionClick.emit({\n event,\n progressHandler: new SkyProgressIndicatorActionClickProgressHandler(\n () => {\n this.#sendMessage(type);\n },\n ),\n });\n } else {\n this.#sendMessage(type);\n }\n }\n\n #sendMessage(type: SkyProgressIndicatorMessageType | undefined): void {\n if (type !== undefined) {\n this.progressIndicator?.sendMessage({ type });\n }\n }\n\n #updateButtonVisibility(change: SkyProgressIndicatorChange): void {\n const isLastStep =\n change.itemStatuses &&\n change.activeIndex === change.itemStatuses.length - 1;\n const buttonType = this.buttonType;\n\n // Hide the button if all steps are complete\n // (except for the reset button)\n if (buttonType !== 'reset' && change.isComplete) {\n this.isVisible = false;\n return;\n }\n\n if (buttonType === 'finish') {\n this.isVisible = isLastStep;\n return;\n }\n\n // Hide the next button on the last step only if a finish button exists.\n if (\n buttonType === 'next' &&\n isLastStep &&\n this.progressIndicator?.hasFinishButton\n ) {\n this.isVisible = false;\n return;\n }\n\n this.isVisible = true;\n }\n}\n","@if (isVisible) {\n <button\n class=\"sky-btn sky-margin-inline-sm\"\n type=\"button\"\n [disabled]=\"\n disabled\n | skyProgressIndicatorNavButtonDisabled\n : buttonType\n : lastProgressChange?.activeIndex\n : lastProgressChange?.itemStatuses\n \"\n [ngClass]=\"buttonType | skyProgressIndicatorNavButtonClass\"\n (click)=\"onClick($event)\"\n >\n {{\n buttonText ||\n ('skyux_progress_indicator_navigator_' + buttonType | skyLibResources)\n }}\n </button>\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n inject,\n} from '@angular/core';\n\nimport { SkyProgressIndicatorComponent } from '../progress-indicator.component';\nimport { SkyProgressIndicatorMessageType } from '../types/progress-indicator-message-type';\n\n/**\n * Displays a button to mark all items in the progress indicator as incomplete and set the\n * first item as the active item. The steps after the active item remain incomplete until\n * users reach them in their sequential order.\n */\n@Component({\n selector: 'sky-progress-indicator-reset-button',\n templateUrl: './progress-indicator-reset-button.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorResetButtonComponent implements OnDestroy {\n /**\n * Whether to disable the reset button.\n * @default false\n */\n @Input()\n public set disabled(value: boolean | undefined) {\n this.#_disabled = value;\n this.#changeDetector.markForCheck();\n }\n\n public get disabled(): boolean | undefined {\n return this.#_disabled;\n }\n\n /**\n * The progress indicator component to associate with the reset button.\n * @required\n */\n @Input()\n public progressIndicator: SkyProgressIndicatorComponent | undefined;\n\n /**\n * Fires when users select the reset button that marks all items as incomplete and sets the\n * first item as the active item.\n */\n @Output()\n public resetClick = new EventEmitter<void>();\n\n #_disabled: boolean | undefined;\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n public ngOnDestroy(): void {\n this.resetClick.complete();\n }\n\n public onClick(): void {\n this.resetClick.emit();\n\n this.progressIndicator?.sendMessage({\n type: SkyProgressIndicatorMessageType.Reset,\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"onClick()\"\n>\n <ng-content />\n</button>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Specifies a header to display above the progress indicator.\n */\n@Component({\n selector: 'sky-progress-indicator-title',\n templateUrl: './progress-indicator-title.component.html',\n styleUrls: ['./progress-indicator-title.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyProgressIndicatorTitleComponent {}\n","<div\n aria-level=\"1\"\n class=\"sky-progress-indicator-title\"\n role=\"heading\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'default',\n 'sky-font-heading-1': 'modern'\n }\"\n>\n <ng-content />\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyProgressIndicatorResourcesModule } from '../shared/sky-progress-indicator-resources.module';\n\nimport { SkyProgressIndicatorItemComponent } from './progress-indicator-item/progress-indicator-item.component';\nimport { SkyProgressIndicatorNavButtonClass } from './progress-indicator-nav-button/progress-indicator-nav-button-class.pipe';\nimport { SkyProgressIndicatorNavButtonDisabledPipe } from './progress-indicator-nav-button/progress-indicator-nav-button-disabled.pipe';\nimport { SkyProgressIndicatorNavButtonComponent } from './progress-indicator-nav-button/progress-indicator-nav-button.component';\nimport { SkyProgressIndicatorResetButtonComponent } from './progress-indicator-reset-button/progress-indicator-reset-button.component';\nimport { SkyProgressIndicatorMarkerClassPipe } from './progress-indicator-status-marker/progress-indicator-status-marker-class.pipe';\nimport { SkyProgressIndicatorStatusMarkerComponent } from './progress-indicator-status-marker/progress-indicator-status-marker.component';\nimport { SkyProgressIndicatorTitleComponent } from './progress-indicator-title/progress-indicator-title.component';\nimport { SkyProgressIndicatorComponent } from './progress-indicator.component';\n\n@NgModule({\n declarations: [\n SkyProgressIndicatorComponent,\n SkyProgressIndicatorItemComponent,\n SkyProgressIndicatorMarkerClassPipe,\n SkyProgressIndicatorNavButtonClass,\n SkyProgressIndicatorNavButtonDisabledPipe,\n SkyProgressIndicatorNavButtonComponent,\n SkyProgressIndicatorResetButtonComponent,\n SkyProgressIndicatorStatusMarkerComponent,\n SkyProgressIndicatorTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyHelpInlineModule,\n SkyIconModule,\n SkyProgressIndicatorResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n ],\n exports: [\n SkyProgressIndicatorComponent,\n SkyProgressIndicatorItemComponent,\n SkyProgressIndicatorNavButtonComponent,\n SkyProgressIndicatorResetButtonComponent,\n SkyProgressIndicatorTitleComponent,\n ],\n})\nexport class SkyProgressIndicatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3.SkyProgressIndicatorMarkerClassPipe","i2","i5.SkyProgressIndicatorStatusMarkerComponent","i2.SkyProgressIndicatorStatusMarkerComponent","i3.SkyProgressIndicatorNavButtonClass","i4.SkyProgressIndicatorNavButtonDisabledPipe","i1"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAEA;;;;;AAKG;AAQH,MAAM,SAAS,GAAoC;AACjD,IAAA,OAAO,EAAE;AACP,QAAA,yCAAyC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;AAChE,QAAA,uCAAuC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;AAC5D,QAAA,2CAA2C,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AACpE,QAAA,wCAAwC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;AAC/D,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,yCAAyC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AAClE,QAAA,uCAAuC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;AAC/D,QAAA,2CAA2C,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;AACrE,QAAA,wCAAwC,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;AACvE,KAAA;CACF;AAED,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC;AAE9C;;AAEG;MAIU,mCAAmC,CAAA;8GAAnC,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,YAFpC,aAAa,CAAA,EAAA,CAAA,CAAA;AAEZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,YAFpC,aAAa,CAAA,EAAA,CAAA,CAAA;;2FAEZ,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAH/C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACzB,iBAAA;;;ICrCW;AAAZ,CAAA,UAAY,8BAA8B,EAAA;AACxC;;AAEG;AACH,IAAA,8BAAA,CAAA,8BAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAU;AAEV;;AAEG;AACH,IAAA,8BAAA,CAAA,8BAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAQ;AAER;;AAEG;AACH,IAAA,8BAAA,CAAA,8BAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAU;AAEV;;AAEG;AACH,IAAA,8BAAA,CAAA,8BAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAO;AACT,CAAC,EApBW,8BAA8B,KAA9B,8BAA8B,GAAA,EAAA,CAAA,CAAA;;MCQ7B,mCAAmC,CAAA;IACvC,SAAS,CACd,WAAmB,EACnB,MAAsC,EAAA;AAEtC,QAAA,IAAI,UAAkB;QAEtB,QAAQ,MAAM;YACZ,KAAK,8BAA8B,CAAC,QAAQ;gBAC1C,UAAU,GAAG,UAAU;gBACvB;YACF,KAAK,8BAA8B,CAAC,UAAU;gBAC5C,UAAU,GAAG,YAAY;gBACzB;YACF,KAAK,8BAA8B,CAAC,OAAO;gBACzC,UAAU,GAAG,SAAS;gBACtB;AACF,YAAA;gBACE,UAAU,GAAG,QAAQ;;AAGzB,QAAA,OAAO,CAAA,0CAAA,EAA6C,WAAW,CAAA,6CAAA,EAAgD,UAAU,EAAE;IAC7H;8GAtBW,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAnC,mCAAmC,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,iCAAA,EAAA,CAAA,CAAA;;2FAAnC,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAJ/C,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,iCAAiC;AACvC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACQD;;;AAGG;MAQU,yCAAyC,CAAA;IACpD,IACW,WAAW,CAAC,KAAgC,EAAA;AACrD,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;IAC5B;AAEA,IAAA,IAAW,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,IACW,MAAM,CAAC,KAAqC,EAAA;AACrD,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,KAAK,8BAA8B,CAAC,QAAQ;IAC7E;AAEA,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,QAAQ;IACtB;AAIA,IAAA,cAAc;AACL,IAAA,eAAe;AAExB,IAAA,QAAQ;AAER,IAAA,aAAa;AAEb,IAAA,WAAA,GAAA;QATO,IAAA,CAAA,UAAU,GAAG,KAAK;AAEzB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;AAC3B,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAEpD,QAAA,IAAA,CAAA,QAAQ,GACN,8BAA8B,CAAC,MAAM;QACvC,IAAA,CAAA,aAAa,GAA8B,UAAU;;QAInD,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;cACtC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;aACnD,SAAS,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;AACrC,QAAA,CAAC,CAAC;IACN;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;IAChC;8GAzCW,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yCAAyC,2JC1BtD,yXAYA,EAAA,MAAA,EAAA,CAAA,6vNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,mCAAA,EAAA,IAAA,EAAA,iCAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDca,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBAPrD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sCAAsC,EAAA,eAAA,EAG/B,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,yXAAA,EAAA,MAAA,EAAA,CAAA,6vNAAA,CAAA,EAAA;;sBAGhB;;sBASA;;;AExBH,MAAM,cAAc,GAAG,8BAA8B,CAAC,UAAU;AAChE,MAAM,mBAAmB,GAAG,YAAY;AAExC;;;AAGG;MAQU,iCAAiC,CAAA;AAP9C,IAAA,WAAA,GAAA;QAwGS,IAAA,CAAA,UAAU,GAAG,mBAAmB;AAG9B,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAEpD,IAAA,CAAA,WAAW,GAAG,KAAK;QAEnB,IAAA,CAAA,kBAAkB,GAAG,IAAI;QACzB,IAAA,CAAA,WAAW,GAAG,IAAI;QAClB,IAAA,CAAA,QAAQ,GAAG,cAAc;AAoB1B,IAAA;AA7HC;;;AAGG;IACH,IACW,KAAK,CAAC,KAAyB,EAAA;AACxC,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;QACpB,IAAI,CAAC,qBAAqB,EAAE;IAC9B;AAEA,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,OAAO;IACrB;IAyBA,IAAW,MAAM,CAAC,KAAiD,EAAA;AACjE,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,QAAQ,EAAE;YAC3B;QACF;;AAGA,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,cAAc;AAEvC,QAAA,QAAQ,IAAI,CAAC,QAAQ;YACnB,KAAK,8BAA8B,CAAC,MAAM;AACxC,gBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ;gBAC1B;YACF,KAAK,8BAA8B,CAAC,QAAQ;AAC1C,gBAAA,IAAI,CAAC,UAAU,GAAG,UAAU;gBAC5B;YACF,KAAK,8BAA8B,CAAC,UAAU;AAC5C,gBAAA,IAAI,CAAC,UAAU,GAAG,YAAY;gBAC9B;YACF,KAAK,8BAA8B,CAAC,OAAO;AACzC,gBAAA,IAAI,CAAC,UAAU,GAAG,SAAS;gBAC3B;;AAGJ,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,QAAQ;IACtB;IAIA,IAAW,SAAS,CAAC,KAA0B,EAAA;AAC7C,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK;AAC1B,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,WAAW;IACzB;IAEA,IAAW,gBAAgB,CAAC,KAA0B,EAAA;AACpD,QAAA,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,KAAK;AACjC,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,gBAAgB,GAAA;QACzB,OAAO,IAAI,CAAC,kBAAkB;IAChC;IAEA,IAAW,SAAS,CAAC,KAA0B,EAAA;AAC7C,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK;AAC1B,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,WAAW;IACzB;AAIA,IAAA,YAAY;AACH,IAAA,eAAe;AAExB,IAAA,WAAW;AACX,IAAA,OAAO;AACP,IAAA,kBAAkB;AAClB,IAAA,WAAW;AACX,IAAA,QAAQ;IAED,QAAQ,GAAA;QACb,IAAI,CAAC,qBAAqB,EAAE;IAC9B;AAEO,IAAA,cAAc,CAAC,IAAY,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,GAAG,CAAA,EAAG,IAAI,KAAK;QAChC,IAAI,CAAC,qBAAqB,EAAE;IAC9B;IAEO,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,YAAY,GAAG,EAAE;QACtB,IAAI,CAAC,qBAAqB,EAAE;IAC9B;IAEA,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,cAAc,GAAG,CAAA,EAAG,IAAI,CAAC,YAAY,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,CAAE;AACzD,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;8GA7HW,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iCAAiC,wNC1B9C,8lDAkDA,EAAA,MAAA,EAAA,CAAA,0xDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yCAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDxBa,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAP7C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,EAAA,eAAA,EAGtB,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,8lDAAA,EAAA,MAAA,EAAA,CAAA,0xDAAA,CAAA,EAAA;;sBAOhB;;sBAeA;;sBAQA;;sBAOA;;;MEvDU,kCAAkC,CAAA;AACtC,IAAA,SAAS,CAAC,UAAkB,EAAA;AACjC,QAAA,MAAM,UAAU,GAAG,CAAC,qCAAqC,UAAU,CAAA,CAAE,CAAC;QAEtE,QAAQ,UAAU;AAChB,YAAA,KAAK,MAAM;AACX,YAAA,KAAK,QAAQ;AACX,gBAAA,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBAClC;AACF,YAAA,KAAK,OAAO;AACV,gBAAA,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC/B;AACF,YAAA;AACE,gBAAA,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC;;AAGtC,QAAA,OAAO,UAAU;IACnB;8GAjBW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAlC,kCAAkC,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,oCAAA,EAAA,CAAA,CAAA;;2FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAJ9C,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,oCAAoC;AAC1C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCIY,yCAAyC,CAAA;AAC7C,IAAA,SAAS,CACd,QAA6B,EAC7B,UAA6C,EAC7C,WAA+B,EAC/B,YAA0D,EAAA;QAE1D,MAAM,UAAU,GAAG,YAAY,IAAI,WAAW,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC;AAE1E,QAAA,QACE,CAAC,UAAU,KAAK,MAAM,IAAI,UAAU;AACpC,aAAC,UAAU,KAAK,UAAU,IAAI,WAAW,KAAK,CAAC,CAAC;AAChD,YAAA,QAAQ;IAEZ;8GAdW,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAzC,yCAAyC,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,uCAAA,EAAA,CAAA,CAAA;;2FAAzC,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBAJrD,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,uCAAuC;AAC7C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ICRW;AAAZ,CAAA,UAAY,+BAA+B,EAAA;AACzC;;;AAGG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAY;AAEZ;;;AAGG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAEX;;;AAGG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS;AAET;;;AAGG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAU;AAEV;;AAEG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ;AACV,CAAC,EA7BW,+BAA+B,KAA/B,+BAA+B,GAAA,EAAA,CAAA,CAAA;;ACA3C;;;AAGG;IACS;AAAZ,CAAA,UAAY,+BAA+B,EAAA;AACzC;;AAEG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAY;AAEZ;;AAEG;AACH,IAAA,+BAAA,CAAA,+BAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAU;AACZ,CAAC,EAVW,+BAA+B,KAA/B,+BAA+B,GAAA,EAAA,CAAA,CAAA;;MC8B9B,6BAA6B,CAAA;AAP1C,IAAA,WAAA,GAAA;AA4FE;;AAEG;AAEI,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAA8B;QAehE,IAAA,CAAA,aAAa,GAAa,EAAE;QAC5B,IAAA,CAAA,YAAY,GAAqC,EAAE;QAW1D,IAAA,CAAA,aAAa,GAAG,CAAC;QACjB,IAAA,CAAA,aAAa,GAAwC,UAAU;QAE/D,IAAA,CAAA,WAAW,GAAwB,KAAK;QACxC,IAAA,CAAA,eAAe,GAAG,CAAC;QAGnB,IAAA,CAAA,YAAY,GAAG,KAAK;AACpB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;AACpC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAEzB;AACM,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC3C,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC;AACpC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC;AA2PzC,IAAA;AA1XC;;;;;;;;;;AAUG;IACH,IACW,WAAW,CACpB,KAAsD,EAAA;QAEtD,QAAQ,KAAK;YACX,KAAK,+BAA+B,CAAC,UAAU;AAC/C,YAAA,KAAK,YAAY;AACf,gBAAA,IAAI,CAAC,aAAa,GAAG,YAAY;gBACjC;AACF,YAAA;AACE,gBAAA,IAAI,CAAC,aAAa,GAAG,UAAU;;QAGnC,IAAI,CAAC,oBAAoB,EAAE;AAE3B,QAAA,IAAI,IAAI,CAAC,aAAa,KAAK,YAAY,EAAE;AACvC,YAAA,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,6BAA6B,EAAE;AACrD,gBAAA,uBAAuB,EAAE,CAAC;AAC1B,gBAAA,yBAAyB,EAAE,4BAA4B;AACxD,aAAA,CAAC;QACJ;IACF;AAEA,IAAA,IAAW,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,aAAa;IAC3B;AAEA;;;;AAIG;IACH,IACW,SAAS,CAAC,KAA0B,EAAA;AAC7C,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;QACxB,IAAI,CAAC,oBAAoB,EAAE;IAC7B;AAEA,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,WAAW;IACzB;AAEA;;;;AAIG;IACH,IACW,aAAa,CACtB,KAEa,EAAA;QAEb,IAAI,CAAC,cAAc,GAAG,KAAK,IAAI,IAAI,OAAO,EAAE;QAC5C,IAAI,CAAC,yBAAyB,EAAE;IAClC;AAEA;;;;AAIG;IACH,IACW,aAAa,CAAC,KAAyB,EAAA;AAChD,QAAA,IAAI,CAAC,eAAe,GAAG,KAAK,IAAI,CAAC;IACnC;AAEA,IAAA,IAAW,aAAa,GAAA;QACtB,OAAO,IAAI,CAAC,eAAe;IAC7B;AAQA,IAAA,IAAW,eAAe,GAAA;QACxB,OAAO,IAAI,CAAC,iBAAiB;IAC/B;IAEA,IAAW,eAAe,CAAC,KAA0B,EAAA;AACnD,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;IAChC;IAUA,IAAI,YAAY,CAAC,KAAyB,EAAA;AACxC,QAAA,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;QACxD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;IACnE;AAEA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;IAC3B;AAEA,IAAA,aAAa;AACb,IAAA,aAAa;AACb,IAAA,iBAAiB;AACjB,IAAA,WAAW;AACX,IAAA,eAAe;AAEf,IAAA,iBAAiB;AACjB,IAAA,YAAY;AACZ,IAAA,cAAc;AACd,IAAA,cAAc;AAGL,IAAA,eAAe;AACf,IAAA,UAAU;AACV,IAAA,OAAO;IAET,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;QAExB,IAAI,CAAC,oBAAoB,EAAE;QAC3B,IAAI,CAAC,yBAAyB,EAAE;IAClC;IAEO,kBAAkB,GAAA;AACvB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa;QAEtC,IAAI,CAAC,YAAY,EAAE;;;QAInB,IAAI,CAAC,cAAc,EAAE;AAClB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;aAC7C,SAAS,CAAC,MAAK;YACd,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,wBAAwB,EAAE;AACjC,QAAA,CAAC,CAAC;;;QAIJ,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,MAAK;YAC3C,IAAI,CAAC,wBAAwB,EAAE;AACjC,QAAA,CAAC,CAAC;IACJ;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;IAChC;AAEO,IAAA,WAAW,CAAC,OAAoC,EAAA;AACrD,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;IACnC;IAEA,qBAAqB,GAAA;;AAEnB,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,EAAE;AACrC,YAAA,OAAO,KAAK;QACd;QAEA,OAAO,IAAI,CAAC,SAAS;IACvB;IAEA,aAAa,GAAA;AACX,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC;AACvC,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE;AAEtC,QAAA,IAAI,SAAS,GAAG,SAAS,EAAE;YACzB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;IAC3B;IAEA,iBAAiB,GAAA;AACf,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC;AAE3C,QAAA,IAAI,aAAa,GAAG,CAAC,EAAE;YACrB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;IAC/B;AAEA,IAAA,SAAS,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK;QACzB,IAAI,CAAC,YAAY,EAAE;QACnB,IAAI,CAAC,wBAAwB,EAAE;IACjC;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE;QAExC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,KAAI;AACzC,YAAA,SAAS,CAAC,MAAM,GAAG,8BAA8B,CAAC,QAAQ;AAC5D,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,wBAAwB,CAAC;AAC5B,YAAA,UAAU,EAAE,IAAI;AACjB,SAAA,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACnB;IAEA,YAAY,GAAA;QACV,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE;YAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC;QAC3C;AAEA,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY;AACrC,QAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,EAAE;AACzD,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,UAAU;QAElD,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,KAAI;;YAE5C,SAAS,CAAC,SAAS,GAAG,WAAW,KAAK,CAAC,IAAI,UAAU;;AAGrD,YAAA,IAAI,MAAsC;AAC1C,YAAA,IAAI,WAAW,KAAK,CAAC,EAAE;gBACrB,IAAI,oBAAoB,EAAE;AACxB,oBAAA,MAAM,GAAG,8BAA8B,CAAC,OAAO;gBACjD;qBAAO;AACL,oBAAA,MAAM,GAAG,8BAA8B,CAAC,MAAM;gBAChD;YACF;AAAO,iBAAA,IAAI,WAAW,GAAG,CAAC,EAAE;AAC1B,gBAAA,MAAM,GAAG,8BAA8B,CAAC,QAAQ;YAClD;iBAAO;AACL,gBAAA,MAAM,GAAG,8BAA8B,CAAC,UAAU;YACpD;AAEA,YAAA,SAAS,CAAC,MAAM,GAAG,MAAM;;AAGzB,YAAA,SAAS,CAAC,gBAAgB,GAAG,UAAU;;YAGvC,IAAI,oBAAoB,EAAE;gBACxB,SAAS,CAAC,cAAc,EAAE;YAC5B;iBAAO;AACL,gBAAA,SAAS,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;YACjC;;YAGA,SAAS,CAAC,SAAS,GAAG,EAAE,oBAAoB,IAAI,WAAW,GAAG,CAAC,CAAC;AAClE,QAAA,CAAC,CAAC;IACJ;IAEA,mBAAmB,GAAA;;QAEjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;IACrE;IAEA,oBAAoB,GAAA;QAClB,MAAM,UAAU,GAAG,CAAC,CAAA,4BAAA,EAA+B,IAAI,CAAC,WAAW,CAAA,CAAE,CAAC;AAEtE,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE;AAChC,YAAA,UAAU,CAAC,IAAI,CAAC,gCAAgC,CAAC;QACnD;AAEA,QAAA,IAAI,CAAC,aAAa,GAAG,UAAU;IACjC;AAEA,IAAA,sBAAsB,CACpB,OAAsE,EAAA;QAEtE,MAAM,gBAAgB,GAAG,OAAsC;AAE/D,QAAA,IAAI,IAAqC;;AAGzC,QAAA,IAAI,gBAAgB,CAAC,IAAI,KAAK,SAAS,EAAE;YACvC,OAAO,CAAC,IAAI,CACV,wFAAwF;gBACtF,wFAAwF;gBACxF,uFAAuF;AACvF,gBAAA,yCAAyC,CAC5C;YAED,IAAI,GAAG,OAA0C;QACnD;aAAO;AACL,YAAA,IAAI,GAAG,gBAAgB,CAAC,IAAI;QAC9B;QAEA,QAAQ,IAAI;YACV,KAAK,+BAA+B,CAAC,QAAQ;gBAC3C,IAAI,CAAC,aAAa,EAAE;gBACpB;YAEF,KAAK,+BAA+B,CAAC,OAAO;gBAC1C,IAAI,CAAC,iBAAiB,EAAE;gBACxB;YAEF,KAAK,+BAA+B,CAAC,MAAM;gBACzC,IAAI,CAAC,YAAY,EAAE;gBACnB;YAEF,KAAK,+BAA+B,CAAC,KAAK;gBACxC,IAAI,CAAC,WAAW,EAAE;gBAClB;YAEF,KAAK,+BAA+B,CAAC,IAAI;gBACvC,IACE,CAAC,gBAAgB,CAAC,IAAI;AACtB,oBAAA,gBAAgB,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,EAC/C;oBACA,OAAO,CAAC,IAAI,CACV,sFAAsF;wBACpF,6EAA6E;wBAC7E,cAAc;wBACd,KAAK;wBACL,iDAAiD;wBACjD,8BAA8B;AAC9B,wBAAA,GAAG,CACN;oBACD;gBACF;gBAEA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC;gBACjD;AAEF,YAAA;gBACE;;;AAIJ,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;IAEA,yBAAyB,GAAA;AACvB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,gBAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;AACpC,gBAAA,IAAI,CAAC,iBAAiB,GAAG,SAAS;YACpC;AAEA,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACvB,gBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;AAC3B,qBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;AACnC,qBAAA,SAAS,CAAC,CAAC,OAAO,KAAI;AACrB,oBAAA,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;AACtC,gBAAA,CAAC,CAAC;YACN;QACF;IACF;AAEA,IAAA,wBAAwB,CAAC,MAAmC,EAAA;QAC1D,IAAI,CAAC,mBAAmB,EAAE;QAE1B,IAAI,CAAC,eAAe,CAAC,IAAI,CACvB,MAAM,CAAC,MAAM,CACX,EAAE,EACF;YACE,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,EACD,MAAM,CACP,CACF;IACH;IAEA,aAAa,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;IAC/C;8GA5XW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA7B,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,SAAA,EAmGvB,iCAAiC,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrIpD,gaAaA,EAAA,MAAA,EAAA,CAAA,k6EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yCAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDqBa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAPzC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,EAAA,eAAA,EAGjB,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,gaAAA,EAAA,MAAA,EAAA,CAAA,k6EAAA,CAAA,EAAA;;sBAgBhB;;sBAgCA;;sBAeA;;sBAeA;;sBAYA;;sBAWA,eAAe;uBAAC,iCAAiC;;;AErIpD;;;AAGG;MACU,8CAA8C,CAAA;AACzD;;;AAGG;AACH,IAAA,WAAA,CAA4B,OAAmB,EAAA;QAAnB,IAAA,CAAA,OAAO,GAAP,OAAO;IAAe;AACnD;;ACYD,MAAM,mBAAmB,GAAsC,MAAM;AAErE;;;AAGG;MAOU,sCAAsC,CAAA;AANnD,IAAA,WAAA,GAAA;AA8FE;;;;AAIG;AAEI,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAuC;AAa5E,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;QAGpC,IAAA,CAAA,YAAY,GAAG,mBAAmB;AAKzB,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC3C,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,6BAA6B,EAAE;AAChE,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CAAC;AAwFH,IAAA;AApMC;;;AAGG;IACH,IACW,UAAU,CAAC,KAAoD,EAAA;AACxE,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,IAAI,mBAAmB;IAClD;AAEA,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,YAAY;IAC1B;AAEA;;;AAGG;IACH,IACW,QAAQ,CAAC,KAA0B,EAAA;AAC5C,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,UAAU;IACxB;AAEA;;;AAGG;IACH,IACW,iBAAiB,CAC1B,KAAgD,EAAA;AAEhD,QAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK;AAEhC,QAAA,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC5B,YAAA,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;;;;AAIhC,gBAAA,IAAI,CAAC,mBAAmB,CAAC,eAAe,GAAG,IAAI;YACjD;YAEA,IAAI,CAAC,mBAAmB,CAAC;iBACtB,IAAI,CAAC,oBAAoB,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;AAC3D,iBAAA,SAAS,CAAC,CAAC,MAAkC,KAAI;AAChD,gBAAA,IAAI,CAAC,kBAAkB,GAAG,MAAM;AAChC,gBAAA,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;AACtC,YAAA,CAAC,CAAC;QACN;aAAO;AACL,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gBACxB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,MAAK;;AAE3C,oBAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;wBAC3B,MAAM,IAAI,KAAK,CACb,8EAA8E;4BAC5E,sEAAsE;4BACtE,2BAA2B;4BAC3B,0BAA0B;4BAC1B,KAAK;4BACL,6BAA6B;4BAC7B,sCAAsC;4BACtC,+CAA+C;4BAC/C,KAAK;AACL,4BAAA,sCAAsC,CACzC;oBACH;gBACF,CAAC,EAAE,EAAE,CAAC;YACR;QACF;IACF;AAEA,IAAA,IAAW,iBAAiB,GAAA;QAC1B,OAAO,IAAI,CAAC,mBAAmB;IACjC;IAUA,IAAW,SAAS,CAAC,KAA0B,EAAA;AAC7C,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,IAAI,CAAC,WAAW;IACzB;AAIA,IAAA,cAAc;AACd,IAAA,cAAc;AAEd,IAAA,YAAY;AACZ,IAAA,UAAU;AACV,IAAA,WAAW;AACX,IAAA,mBAAmB;AAEV,IAAA,eAAe;AACf,IAAA,gBAAgB;IAIlB,eAAe,GAAA;QACpB,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACpD,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB;QAChD;AAAO,aAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;AAClC,YAAA,IAAI,CAAC,iBAAiB,GAAG,SAAS;QACpC;IACF;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;AAC9B,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;IAC7B;AAEO,IAAA,OAAO,CAAC,KAAiB,EAAA;QAC9B,KAAK,CAAC,cAAc,EAAE;AAEtB,QAAA,IAAI,IAAiD;AAErD,QAAA,QAAQ,IAAI,CAAC,UAAU;AACrB,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,GAAG,+BAA+B,CAAC,MAAM;gBAC7C;AACF,YAAA,KAAK,MAAM;AACT,gBAAA,IAAI,GAAG,+BAA+B,CAAC,QAAQ;gBAC/C;AACF,YAAA,KAAK,UAAU;AACb,gBAAA,IAAI,GAAG,+BAA+B,CAAC,OAAO;gBAC9C;AACF,YAAA,KAAK,OAAO;AACV,gBAAA,IAAI,GAAG,+BAA+B,CAAC,KAAK;gBAC5C;;;;QAKJ,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACzC,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,KAAK;AACL,gBAAA,eAAe,EAAE,IAAI,8CAA8C,CACjE,MAAK;AACH,oBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AACzB,gBAAA,CAAC,CACF;AACF,aAAA,CAAC;QACJ;aAAO;AACL,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACzB;IACF;AAEA,IAAA,YAAY,CAAC,IAAiD,EAAA;AAC5D,QAAA,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;QAC/C;IACF;AAEA,IAAA,uBAAuB,CAAC,MAAkC,EAAA;AACxD,QAAA,MAAM,UAAU,GACd,MAAM,CAAC,YAAY;YACnB,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;AACvD,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;;;QAIlC,IAAI,UAAU,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE;AAC/C,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;YACtB;QACF;AAEA,QAAA,IAAI,UAAU,KAAK,QAAQ,EAAE;AAC3B,YAAA,IAAI,CAAC,SAAS,GAAG,UAAU;YAC3B;QACF;;QAGA,IACE,UAAU,KAAK,MAAM;YACrB,UAAU;AACV,YAAA,IAAI,CAAC,iBAAiB,EAAE,eAAe,EACvC;AACA,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;YACtB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;IACvB;8GA7MW,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sCAAsC,qQClCnD,8hBAoBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAG,kCAAA,EAAA,IAAA,EAAA,oCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,yCAAA,EAAA,IAAA,EAAA,uCAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDca,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBANlD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mCAAmC,EAAA,eAAA,EAE5B,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,8hBAAA,EAAA;;sBAShB;;sBAOA;;sBAaA;;sBAcA;;sBAoDA;;;AEjHH;;;;AAIG;MAOU,wCAAwC,CAAA;AANrD,IAAA,WAAA,GAAA;AA4BE;;;AAGG;AAEI,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAQ;AAGnC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAarD,IAAA;AA1CC;;;AAGG;IACH,IACW,QAAQ,CAAC,KAA0B,EAAA;AAC5C,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;IACrC;AAEA,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,UAAU;IACxB;AAgBA,IAAA,UAAU;AACD,IAAA,eAAe;IAEjB,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;IAC5B;IAEO,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;AAEtB,QAAA,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC;YAClC,IAAI,EAAE,+BAA+B,CAAC,KAAK;AAC5C,SAAA,CAAC;IACJ;8GA1CW,wCAAwC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wCAAwC,iNCzBrD,oJAQA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDiBa,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBANpD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qCAAqC,EAAA,eAAA,EAE9B,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,oJAAA,EAAA;;sBAOhB;;sBAcA;;sBAOA;;;AEjDH;;AAEG;MAQU,kCAAkC,CAAA;8GAAlC,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kCAAkC,yFCZ/C,+NAWA,EAAA,MAAA,EAAA,CAAA,yYAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDCa,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAP9C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,EAAA,eAAA,EAGvB,uBAAuB,CAAC,MAAM,cACnC,KAAK,EAAA,QAAA,EAAA,+NAAA,EAAA,MAAA,EAAA,CAAA,yYAAA,CAAA,EAAA;;;MEqCN,0BAA0B,CAAA;8GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,iBA1BnC,6BAA6B;YAC7B,iCAAiC;YACjC,mCAAmC;YACnC,kCAAkC;YAClC,yCAAyC;YACzC,sCAAsC;YACtC,wCAAwC;YACxC,yCAAyC;AACzC,YAAA,kCAAkC,aAGlC,YAAY;YACZ,mBAAmB;YACnB,aAAa;YACb,mCAAmC;YACnC,cAAc;AACd,YAAA,aAAa,aAGb,6BAA6B;YAC7B,iCAAiC;YACjC,sCAAsC;YACtC,wCAAwC;YACxC,kCAAkC,CAAA,EAAA,CAAA,CAAA;AAGzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YAfnC,YAAY;YACZ,mBAAmB;YACnB,aAAa;YACb,mCAAmC;YACnC,cAAc;YACd,aAAa,CAAA,EAAA,CAAA,CAAA;;2FAUJ,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBA5BtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,6BAA6B;wBAC7B,iCAAiC;wBACjC,mCAAmC;wBACnC,kCAAkC;wBAClC,yCAAyC;wBACzC,sCAAsC;wBACtC,wCAAwC;wBACxC,yCAAyC;wBACzC,kCAAkC;AACnC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,mBAAmB;wBACnB,aAAa;wBACb,mCAAmC;wBACnC,cAAc;wBACd,aAAa;AACd,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,6BAA6B;wBAC7B,iCAAiC;wBACjC,sCAAsC;wBACtC,wCAAwC;wBACxC,kCAAkC;AACnC,qBAAA;AACF,iBAAA;;;AC9CD;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/progress-indicator",
3
- "version": "14.6.0",
3
+ "version": "14.6.1",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -19,11 +19,11 @@
19
19
  "@angular/cdk": "^21.2.0",
20
20
  "@angular/common": "^21.2.0",
21
21
  "@angular/core": "^21.2.0",
22
- "@skyux/core": "14.6.0",
23
- "@skyux/help-inline": "14.6.0",
24
- "@skyux/i18n": "14.6.0",
25
- "@skyux/icon": "14.6.0",
26
- "@skyux/theme": "14.6.0"
22
+ "@skyux/core": "14.6.1",
23
+ "@skyux/help-inline": "14.6.1",
24
+ "@skyux/i18n": "14.6.1",
25
+ "@skyux/icon": "14.6.1",
26
+ "@skyux/theme": "14.6.1"
27
27
  },
28
28
  "dependencies": {
29
29
  "tslib": "^2.8.1"
@@ -1,14 +1,12 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnInit, TemplateRef, ChangeDetectorRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, PipeTransform, AfterViewInit } from '@angular/core';
3
- import * as i15 from '@skyux/core';
4
- import { SkyAppWindowRef, SkyLogService } from '@skyux/core';
2
+ import { OnInit, TemplateRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, PipeTransform, AfterViewInit } from '@angular/core';
5
3
  import { Subject } from 'rxjs';
6
- import * as i14 from '@skyux/theme';
7
- import { SkyThemeService } from '@skyux/theme';
8
4
  import * as i10 from '@angular/common';
9
5
  import * as i11 from '@skyux/help-inline';
10
6
  import * as i12 from '@skyux/icon';
11
7
  import * as i1 from '@skyux/i18n';
8
+ import * as i14 from '@skyux/theme';
9
+ import * as i15 from '@skyux/core';
12
10
 
13
11
  declare enum SkyProgressIndicatorItemStatus {
14
12
  /**
@@ -68,7 +66,6 @@ declare class SkyProgressIndicatorItemComponent implements OnInit {
68
66
  set showTitle(value: boolean | undefined);
69
67
  get showTitle(): boolean;
70
68
  statusName: string;
71
- constructor(changeDetector: ChangeDetectorRef);
72
69
  ngOnInit(): void;
73
70
  showStepNumber(step: number): void;
74
71
  hideStepNumber(): void;
@@ -179,7 +176,6 @@ declare class SkyProgressIndicatorComponent implements OnInit, AfterContentInit,
179
176
  itemComponents: QueryList<SkyProgressIndicatorItemComponent> | undefined;
180
177
  cssClassNames: string[];
181
178
  itemStatuses: SkyProgressIndicatorItemStatus[];
182
- constructor(changeDetector: ChangeDetectorRef, windowRef: SkyAppWindowRef, logger: SkyLogService);
183
179
  ngOnInit(): void;
184
180
  ngAfterContentInit(): void;
185
181
  ngOnDestroy(): void;
@@ -276,11 +272,10 @@ declare class SkyProgressIndicatorNavButtonComponent implements AfterViewInit, O
276
272
  set isVisible(value: boolean | undefined);
277
273
  get isVisible(): boolean | undefined;
278
274
  lastProgressChange: SkyProgressIndicatorChange | undefined;
279
- constructor(changeDetector: ChangeDetectorRef, parentComponent?: SkyProgressIndicatorComponent);
280
275
  ngAfterViewInit(): void;
281
276
  ngOnDestroy(): void;
282
277
  onClick(event: MouseEvent): void;
283
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyProgressIndicatorNavButtonComponent, [null, { optional: true; }]>;
278
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyProgressIndicatorNavButtonComponent, never>;
284
279
  static ɵcmp: i0.ɵɵComponentDeclaration<SkyProgressIndicatorNavButtonComponent, "sky-progress-indicator-nav-button", never, { "buttonText": { "alias": "buttonText"; "required": false; }; "buttonType": { "alias": "buttonType"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "progressIndicator": { "alias": "progressIndicator"; "required": false; }; }, { "actionClick": "actionClick"; }, never, never, false, never>;
285
280
  }
286
281
 
@@ -307,7 +302,6 @@ declare class SkyProgressIndicatorResetButtonComponent implements OnDestroy {
307
302
  * first item as the active item.
308
303
  */
309
304
  resetClick: EventEmitter<void>;
310
- constructor(changeDetector: ChangeDetectorRef);
311
305
  ngOnDestroy(): void;
312
306
  onClick(): void;
313
307
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyProgressIndicatorResetButtonComponent, never>;
@@ -325,9 +319,9 @@ declare class SkyProgressIndicatorStatusMarkerComponent implements OnDestroy {
325
319
  set status(value: SkyProgressIndicatorItemStatus);
326
320
  get status(): SkyProgressIndicatorItemStatus;
327
321
  isComplete: boolean;
328
- constructor(changeDetector: ChangeDetectorRef, themeSvc?: SkyThemeService);
322
+ constructor();
329
323
  ngOnDestroy(): void;
330
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyProgressIndicatorStatusMarkerComponent, [null, { optional: true; }]>;
324
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyProgressIndicatorStatusMarkerComponent, never>;
331
325
  static ɵcmp: i0.ɵɵComponentDeclaration<SkyProgressIndicatorStatusMarkerComponent, "sky-progress-indicator-status-marker", never, { "displayMode": { "alias": "displayMode"; "required": false; }; "status": { "alias": "status"; "required": false; }; }, {}, never, never, false, never>;
332
326
  }
333
327