@clr/angular 18.0.0-beta.1 → 18.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/fesm2022/clr-angular-button.mjs +2 -2
  2. package/fesm2022/clr-angular-button.mjs.map +1 -1
  3. package/fesm2022/clr-angular-data-datagrid.mjs +12 -26
  4. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -1
  5. package/fesm2022/clr-angular-data-tree-view.mjs +2 -2
  6. package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -1
  7. package/fesm2022/clr-angular-data.mjs +13 -27
  8. package/fesm2022/clr-angular-data.mjs.map +1 -1
  9. package/fesm2022/clr-angular-emphasis-alert.mjs +2 -2
  10. package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -1
  11. package/fesm2022/clr-angular-emphasis.mjs +2 -2
  12. package/fesm2022/clr-angular-emphasis.mjs.map +1 -1
  13. package/fesm2022/clr-angular-forms-checkbox.mjs +13 -44
  14. package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -1
  15. package/fesm2022/clr-angular-forms-combobox.mjs +94 -61
  16. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -1
  17. package/fesm2022/clr-angular-forms-common.mjs +61 -58
  18. package/fesm2022/clr-angular-forms-common.mjs.map +1 -1
  19. package/fesm2022/clr-angular-forms-datalist.mjs +2 -14
  20. package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -1
  21. package/fesm2022/clr-angular-forms-datepicker.mjs +16 -24
  22. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -1
  23. package/fesm2022/clr-angular-forms-file-input.mjs +72 -55
  24. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -1
  25. package/fesm2022/clr-angular-forms-input.mjs +4 -18
  26. package/fesm2022/clr-angular-forms-input.mjs.map +1 -1
  27. package/fesm2022/clr-angular-forms-number-input.mjs +2 -14
  28. package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -1
  29. package/fesm2022/clr-angular-forms-password.mjs +2 -14
  30. package/fesm2022/clr-angular-forms-password.mjs.map +1 -1
  31. package/fesm2022/clr-angular-forms-radio.mjs +13 -44
  32. package/fesm2022/clr-angular-forms-radio.mjs.map +1 -1
  33. package/fesm2022/clr-angular-forms-range.mjs +3 -16
  34. package/fesm2022/clr-angular-forms-range.mjs.map +1 -1
  35. package/fesm2022/clr-angular-forms-select.mjs +3 -16
  36. package/fesm2022/clr-angular-forms-select.mjs.map +1 -1
  37. package/fesm2022/clr-angular-forms-textarea.mjs +4 -17
  38. package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -1
  39. package/fesm2022/clr-angular-forms.mjs +258 -358
  40. package/fesm2022/clr-angular-forms.mjs.map +1 -1
  41. package/fesm2022/clr-angular-modal.mjs +2 -2
  42. package/fesm2022/clr-angular-modal.mjs.map +1 -1
  43. package/fesm2022/clr-angular-popover-common.mjs +151 -85
  44. package/fesm2022/clr-angular-popover-common.mjs.map +1 -1
  45. package/fesm2022/clr-angular-popover-dropdown.mjs +7 -4
  46. package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -1
  47. package/fesm2022/clr-angular-popover-signpost.mjs +27 -12
  48. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -1
  49. package/fesm2022/clr-angular-popover-tooltip.mjs +4 -4
  50. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -1
  51. package/fesm2022/clr-angular-popover.mjs +186 -102
  52. package/fesm2022/clr-angular-popover.mjs.map +1 -1
  53. package/fesm2022/clr-angular-stepper.mjs +4 -4
  54. package/fesm2022/clr-angular-stepper.mjs.map +1 -1
  55. package/fesm2022/clr-angular-utils.mjs +12 -47
  56. package/fesm2022/clr-angular-utils.mjs.map +1 -1
  57. package/fesm2022/clr-angular-wizard.mjs +19 -11
  58. package/fesm2022/clr-angular-wizard.mjs.map +1 -1
  59. package/fesm2022/clr-angular.mjs +491 -548
  60. package/fesm2022/clr-angular.mjs.map +1 -1
  61. package/package.json +2 -2
  62. package/popover/common/README.md +14 -12
  63. package/types/clr-angular-data-datagrid.d.ts +0 -10
  64. package/types/clr-angular-data.d.ts +0 -10
  65. package/types/clr-angular-forms-combobox.d.ts +11 -4
  66. package/types/clr-angular-forms-common.d.ts +9 -9
  67. package/types/clr-angular-forms-datepicker.d.ts +7 -0
  68. package/types/clr-angular-forms-file-input.d.ts +5 -2
  69. package/types/clr-angular-forms.d.ts +31 -15
  70. package/types/clr-angular-popover-common.d.ts +38 -13
  71. package/types/clr-angular-popover-dropdown.d.ts +2 -1
  72. package/types/clr-angular-popover-signpost.d.ts +14 -6
  73. package/types/clr-angular-popover.d.ts +52 -18
  74. package/types/clr-angular-utils.d.ts +4 -14
  75. package/types/clr-angular-wizard.d.ts +7 -4
  76. package/types/clr-angular.d.ts +91 -59
@@ -9,7 +9,7 @@ import { map, distinctUntilChanged, tap, filter, skipUntil, startWith } from 'rx
9
9
  import * as i2 from '@angular/forms';
10
10
  import { Subject, Observable } from 'rxjs';
11
11
  import * as i5 from '@clr/angular/icon';
12
- import { ClarityIcons, angleIcon, exclamationCircleIcon, checkCircleIcon, ClrIcon } from '@clr/angular/icon';
12
+ import { ClarityIcons, angleIcon, successStandardIcon, errorStandardIcon, ClrIcon } from '@clr/angular/icon';
13
13
 
14
14
  /*
15
15
  * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
@@ -357,11 +357,11 @@ class ClrStepperPanel extends CollapsiblePanel {
357
357
  }
358
358
  }
359
359
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrStepperPanel, deps: [{ token: PLATFORM_ID }, { token: i1.ClrCommonStringsService }, { token: i2.FormGroupName, optional: true }, { token: i2.NgModelGroup, optional: true }, { token: StepperService }, { token: i1.IfExpandService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
360
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: ClrStepperPanel, isStandalone: false, selector: "clr-stepper-panel", host: { properties: { "class.clr-stepper-panel": "true", "class.clr-stepper-panel-disabled": "this.disabled" } }, providers: [IfExpandService], queries: [{ propertyName: "stepDescription", predicate: ClrStepDescription }], viewQueries: [{ propertyName: "headerButton", first: true, predicate: ["headerButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i5.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], animations: collapsiblePanelAnimation, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
360
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: ClrStepperPanel, isStandalone: false, selector: "clr-stepper-panel", host: { properties: { "class.clr-stepper-panel": "true", "class.clr-stepper-panel-disabled": "this.disabled" } }, providers: [IfExpandService], queries: [{ propertyName: "stepDescription", predicate: ClrStepDescription }], viewQueries: [{ propertyName: "headerButton", first: true, predicate: ["headerButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"error-standard\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"success-standard\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i5.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], animations: collapsiblePanelAnimation, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
361
361
  }
362
362
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrStepperPanel, decorators: [{
363
363
  type: Component,
364
- args: [{ selector: 'clr-stepper-panel', host: { '[class.clr-stepper-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: collapsiblePanelAnimation, providers: [IfExpandService], standalone: false, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n" }]
364
+ args: [{ selector: 'clr-stepper-panel', host: { '[class.clr-stepper-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: collapsiblePanelAnimation, providers: [IfExpandService], standalone: false, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"error-standard\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"success-standard\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n" }]
365
365
  }], ctorParameters: () => [{ type: undefined, decorators: [{
366
366
  type: Inject,
367
367
  args: [PLATFORM_ID]
@@ -644,7 +644,7 @@ const declarations = [
644
644
  ];
645
645
  class ClrStepperModule {
646
646
  constructor() {
647
- ClarityIcons.addIcons(angleIcon, exclamationCircleIcon, checkCircleIcon);
647
+ ClarityIcons.addIcons(angleIcon, successStandardIcon, errorStandardIcon);
648
648
  }
649
649
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrStepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
650
650
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: ClrStepperModule, declarations: [ClrStepper,
@@ -1 +1 @@
1
- {"version":3,"file":"clr-angular-stepper.mjs","sources":["../../../projects/angular/stepper/enums/stepper-panel-status.enum.ts","../../../projects/angular/stepper/step-description.ts","../../../projects/angular/stepper/models/stepper-panel.model.ts","../../../projects/angular/stepper/models/stepper.model.ts","../../../projects/angular/stepper/providers/stepper.service.ts","../../../projects/angular/stepper/stepper-panel.ts","../../../projects/angular/stepper/stepper-panel.html","../../../projects/angular/stepper/stepper.ts","../../../projects/angular/stepper/chocolate/stepper-willy-wonka.ts","../../../projects/angular/stepper/chocolate/stepper-oompa-loompa.ts","../../../projects/angular/stepper/step-button.ts","../../../projects/angular/stepper/step-content.ts","../../../projects/angular/stepper/step-title.ts","../../../projects/angular/stepper/stepper.module.ts","../../../projects/angular/stepper/index.ts","../../../projects/angular/stepper/clr-angular-stepper.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport enum StepperPanelStatus {\n Inactive = 'inactive',\n Error = 'error',\n Complete = 'complete',\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-description',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-stepper-description]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepDescription {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelModel } from '@clr/angular/collapsible-panel';\n\nimport { StepperPanelStatus } from '../enums/stepper-panel-status.enum';\n\nexport class StepperPanelModel extends CollapsiblePanelModel {\n status = StepperPanelStatus.Inactive;\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelGroupModel } from '@clr/angular/collapsible-panel';\n\nimport { StepperPanelModel } from './stepper-panel.model';\nimport { StepperPanelStatus } from '../enums/stepper-panel-status.enum';\n\nexport class StepperModel extends CollapsiblePanelGroupModel {\n protected override _panels: { [id: string]: StepperPanelModel } = {};\n\n private stepperModelInitialize = false;\n private initialPanel: string;\n\n override get panels(): StepperPanelModel[] {\n return Object.keys(this._panels).map(id => this._panels[id]);\n }\n\n get allPanelsCompleted(): boolean {\n return this.panels.length && this.getNumberOfIncompletePanels() === 0 && this.getNumberOfOpenPanels() === 0;\n }\n\n get shouldOpenFirstPanel() {\n return !this.initialPanel || (this._panels && Object.keys(this._panels).length && !this._panels[this.initialPanel]);\n }\n\n override addPanel(id: string, open = false) {\n const panel = new StepperPanelModel(id, this.panelGroupCount);\n panel.open = open;\n panel.disabled = true;\n this._panels[id] = panel;\n }\n\n override updatePanelOrder(ids: string[]) {\n super.updatePanelOrder(ids);\n if (this.stepperModelInitialize === false) {\n this.openFirstPanel();\n }\n }\n\n override togglePanel(panelId: string) {\n if (this._panels[panelId]?.status === StepperPanelStatus.Complete) {\n this._panels[panelId].open = !this._panels[panelId].open;\n }\n }\n\n navigateToPreviousPanel(currentPanelId: string) {\n this.openPreviousPanel(this._panels[currentPanelId].id);\n }\n\n navigateToNextPanel(currentPanelId: string, currentPanelValid = true) {\n if (currentPanelValid) {\n this.completePanel(currentPanelId);\n this.openNextPanel(this._panels[currentPanelId].id);\n } else {\n this.setPanelError(currentPanelId);\n }\n }\n\n overrideInitialPanel(panelId: string) {\n this.initialPanel = panelId;\n this.panels\n .filter(() => this._panels[panelId] !== undefined)\n .forEach(panel => {\n if (panel.index < this._panels[panelId].index) {\n this.completePanel(panel.id);\n } else if (panel.id === panelId) {\n this._panels[panel.id].open = true;\n } else {\n this._panels[panel.id].open = false;\n }\n });\n }\n\n setPanelValid(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Complete;\n }\n\n setPanelInvalid(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Error;\n }\n\n setPanelsWithErrors(ids: string[]) {\n ids.forEach(id => this.setPanelError(id));\n }\n\n resetPanels() {\n this.stepperModelInitialize = false;\n this.panels.forEach(p => this.resetPanel(p.id));\n this.openFirstPanel();\n }\n\n getNextPanel(currentPanelId: string) {\n return this.panels.find(s => s.index === this._panels[currentPanelId].index + 1);\n }\n\n getPreviousPanel(currentPanelId: string) {\n return this.panels.find(s => s.index === this._panels[currentPanelId].index - 1);\n }\n\n private resetAllFuturePanels(panelId: string) {\n this.panels.filter(panel => panel.index >= this._panels[panelId].index).forEach(panel => this.resetPanel(panel.id));\n }\n\n private resetPanel(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Inactive;\n this._panels[panelId].open = false;\n this._panels[panelId].disabled = true;\n }\n\n private openFirstPanel() {\n if (!this.shouldOpenFirstPanel) {\n return;\n }\n const firstPanel = this.getFirstPanel();\n if (!firstPanel) {\n return;\n }\n\n this._panels[firstPanel.id].open = true;\n this._panels[firstPanel.id].disabled = true;\n this.stepperModelInitialize = true;\n }\n\n private completePanel(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Complete;\n this._panels[panelId].disabled = false;\n this._panels[panelId].open = false;\n }\n\n private openNextPanel(currentPanelId: string) {\n const nextPanel = this.getNextPanel(currentPanelId);\n\n if (nextPanel) {\n this.resetAllFuturePanels(nextPanel.id);\n this._panels[nextPanel.id].open = true;\n this._panels[nextPanel.id].disabled = true;\n }\n }\n\n private openPreviousPanel(currentPanelId: string) {\n const prevPanel = this.getPreviousPanel(currentPanelId);\n\n if (prevPanel) {\n this._panels[currentPanelId].open = false;\n this._panels[currentPanelId].disabled = false;\n\n this._panels[prevPanel.id].open = true;\n this._panels[prevPanel.id].disabled = true;\n }\n }\n\n private setPanelError(panelId: string) {\n this.resetAllFuturePanels(panelId);\n this._panels[panelId].open = true;\n this._panels[panelId].status = StepperPanelStatus.Error;\n }\n\n private getFirstPanel() {\n return this.panels.find(panel => panel.index === 0);\n }\n\n private getNumberOfIncompletePanels() {\n return this.panels.reduce((prev, next) => (next.status !== StepperPanelStatus.Complete ? prev + 1 : prev), 0);\n }\n\n private getNumberOfOpenPanels() {\n return this.panels.reduce((prev, next) => (next.open !== false ? prev + 1 : prev), 0);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Observable, Subject } from 'rxjs';\nimport { distinctUntilChanged, map } from 'rxjs/operators';\n\nimport { StepperModel } from '../models/stepper.model';\n\n@Injectable()\nexport class StepperService extends CollapsiblePanelService {\n readonly activeStep: Observable<string>;\n readonly panelsCompleted = this.getAllCompletedPanelChanges();\n\n protected override panelGroup = new StepperModel();\n\n private _activeStepChanges = new Subject<string>();\n\n constructor() {\n super();\n\n this.activeStep = this._activeStepChanges.asObservable();\n }\n\n resetPanels() {\n this.panelGroup.resetPanels();\n this.emitUpdatedPanels();\n }\n\n setPanelValid(panelId: string) {\n this.panelGroup.setPanelValid(panelId);\n this.emitUpdatedPanels();\n }\n\n setPanelInvalid(panelId: string) {\n this.panelGroup.setPanelInvalid(panelId);\n this.emitUpdatedPanels();\n }\n\n setPanelsWithErrors(ids: string[]) {\n this.panelGroup.setPanelsWithErrors(ids);\n this.emitUpdatedPanels();\n }\n\n navigateToPreviousPanel(currentPanelId: string) {\n this.panelGroup.navigateToPreviousPanel(currentPanelId);\n this.updatePreviousStep(currentPanelId);\n this.emitUpdatedPanels();\n }\n\n navigateToNextPanel(currentPanelId: string, currentPanelValid = true) {\n this.panelGroup.navigateToNextPanel(currentPanelId, currentPanelValid);\n this.updateNextStep(currentPanelId, currentPanelValid);\n this.emitUpdatedPanels();\n }\n\n overrideInitialPanel(panelId: string) {\n this.panelGroup.overrideInitialPanel(panelId);\n this.emitUpdatedPanels();\n }\n\n private updateNextStep(currentPanelId: string, currentPanelValid: boolean) {\n const nextPanel = this.panelGroup.getNextPanel(currentPanelId);\n\n if (currentPanelValid && nextPanel) {\n this._activeStepChanges.next(nextPanel.id);\n } else if (currentPanelValid) {\n this._activeStepChanges.next(currentPanelId);\n }\n }\n\n private updatePreviousStep(currentPanelId: string) {\n const prevPanel = this.panelGroup.getPreviousPanel(currentPanelId);\n\n if (prevPanel) {\n this._activeStepChanges.next(prevPanel.id);\n }\n }\n\n private getAllCompletedPanelChanges(): Observable<boolean> {\n return this._panelsChanges.pipe(\n map(() => this.panelGroup.allPanelsCompleted),\n distinctUntilChanged()\n );\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Inject,\n OnInit,\n Optional,\n PLATFORM_ID,\n QueryList,\n ViewChild,\n} from '@angular/core';\nimport { FormGroupName, NgModelGroup } from '@angular/forms';\nimport { CollapsiblePanel, collapsiblePanelAnimation } from '@clr/angular/collapsible-panel';\nimport { ClrCommonStringsService, IfExpandService, triggerAllFormControlValidation } from '@clr/angular/utils';\nimport { Observable, Subscription } from 'rxjs';\nimport { distinctUntilChanged, filter, skipUntil, tap } from 'rxjs/operators';\n\nimport { StepperPanelStatus } from './enums/stepper-panel-status.enum';\nimport { StepperPanelModel } from './models/stepper-panel.model';\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepDescription } from './step-description';\n\n@Component({\n selector: 'clr-stepper-panel',\n templateUrl: 'stepper-panel.html',\n host: { '[class.clr-stepper-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class ClrStepperPanel extends CollapsiblePanel implements OnInit {\n @ViewChild('headerButton') headerButton: ElementRef<HTMLButtonElement>;\n @ContentChildren(ClrStepDescription) stepDescription: QueryList<ClrStepDescription>;\n @HostBinding('class.clr-stepper-panel-disabled') disabled = false;\n readonly PanelStatus = StepperPanelStatus;\n override panel: Observable<StepperPanelModel>;\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: any,\n public commonStrings: ClrCommonStringsService,\n @Optional() private formGroupName: FormGroupName,\n @Optional() private ngModelGroup: NgModelGroup,\n private stepperService: StepperService,\n ifExpandService: IfExpandService,\n cdr: ChangeDetectorRef\n ) {\n super(stepperService, ifExpandService, cdr);\n }\n\n override get id(): string {\n return this.formGroupName ? this.formGroupName.name.toString() : this.ngModelGroup.name;\n }\n override set id(_value: string) {\n // overriding parent id required empty setter\n }\n\n get panelNumber() {\n return this._panelIndex + 1;\n }\n\n get formGroup() {\n return this.formGroupName ? this.formGroupName.control : this.ngModelGroup.control;\n }\n\n getPanelStatus(panel: StepperPanelModel): StepperPanelStatus {\n return panel.status;\n }\n\n getPanelStateClasses(panel: StepperPanelModel) {\n return `clr-stepper-panel-${this.getPanelStatus(panel)} ${panel.open ? 'clr-stepper-panel-open' : ''}`;\n }\n\n getContentId(id: string) {\n return `clr-stepper-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `clr-stepper-header-${id}`;\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.panel = this.panel.pipe(tap(panel => this.triggerAllFormControlValidationIfError(panel)));\n this.stepperService.disablePanel(this.id, true);\n this.listenToFocusChanges();\n\n // not all stepper panels are guaranteed to have a form (i.e. empty template-driven)\n if (this.formGroup) {\n // set panel status on form status change only after the form becomes invalid\n const invalidStatusTrigger = this.formGroup.statusChanges.pipe(filter(status => status === 'INVALID'));\n\n this.subscriptions.push(\n this.formGroup.statusChanges.pipe(skipUntil(invalidStatusTrigger), distinctUntilChanged()).subscribe(status => {\n if (!this.formGroup.touched) {\n return;\n }\n\n if (status === 'VALID') {\n this.stepperService.setPanelValid(this.id);\n } else if (status === 'INVALID') {\n this.stepperService.setPanelInvalid(this.id);\n }\n })\n );\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n protected stepCompleteText(panelNumber: number) {\n return this.commonStrings.parse(this.commonStrings.keys.stepComplete, { STEP: panelNumber.toString() });\n }\n\n protected stepErrorText(panelNumber: number) {\n return this.commonStrings.parse(this.commonStrings.keys.stepError, { STEP: panelNumber.toString() });\n }\n\n private listenToFocusChanges() {\n this.subscriptions.push(\n this.stepperService.activeStep\n .pipe(filter(panelId => isPlatformBrowser(this.platformId) && panelId === this.id))\n .subscribe(() => {\n this.headerButton.nativeElement.focus();\n })\n );\n }\n\n private triggerAllFormControlValidationIfError(panel: StepperPanelModel) {\n if (panel.status === StepperPanelStatus.Error) {\n triggerAllFormControlValidation(this.formGroup);\n }\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"exclamation-circle\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"check-circle\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { AbstractControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Observable, Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepperPanel } from './stepper-panel';\n\n@Component({\n selector: 'form[clrStepper]',\n template: `<ng-content></ng-content>`,\n host: {\n '[class.clr-stepper-forms]': 'true',\n },\n providers: [StepperService, { provide: CollapsiblePanelService, useExisting: StepperService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepper implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('clrInitialStep') initialPanel: string;\n @ContentChildren(ClrStepperPanel) panels: QueryList<ClrStepperPanel>;\n form: FormGroupDirective | NgForm;\n private subscriptions: Subscription[] = [];\n\n constructor(\n @Optional() private formGroup: FormGroupDirective,\n @Optional() private ngForm: NgForm,\n private stepperService: StepperService\n ) {}\n\n ngOnInit() {\n if (!this.formGroup && !this.ngForm) {\n throw new Error('To use stepper a Reactive or Template Form is required.');\n }\n\n this.form = this.formGroup ? this.formGroup : this.ngForm;\n this.subscriptions.push(this.listenForPanelsCompleted());\n this.subscriptions.push(this.listenForFormResetChanges());\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n changes.initialPanel &&\n !changes.initialPanel.firstChange &&\n changes.initialPanel.currentValue !== changes.initialPanel.previousValue\n ) {\n this.stepperService.overrideInitialPanel(this.initialPanel);\n }\n }\n\n ngAfterViewInit() {\n this.subscriptions.push(this.listenForDOMChanges());\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n private listenForFormResetChanges() {\n return fromControlReset(this.form.form).subscribe(() => this.stepperService.resetPanels());\n }\n\n private listenForPanelsCompleted() {\n return this.stepperService.panelsCompleted.subscribe(panelsCompleted => {\n if (panelsCompleted && this.form.valid) {\n this.form.ngSubmit.emit();\n } else if (!this.form.valid && this.form.touched) {\n this.setPanelsWithFormErrors();\n }\n });\n }\n\n private setPanelsWithFormErrors() {\n const panelsWithErrors = this.panels.reduce((panels, p) => (p.formGroup.invalid ? [...panels, p.id] : panels), []);\n this.stepperService.setPanelsWithErrors(panelsWithErrors);\n }\n\n private listenForDOMChanges() {\n return this.panels.changes.pipe(startWith(this.panels)).subscribe((panels: QueryList<ClrStepperPanel>) => {\n this.stepperService.updatePanelOrder(panels.toArray().map(p => p.id));\n\n if (this.initialPanel) {\n this.stepperService.overrideInitialPanel(this.initialPanel);\n }\n });\n }\n}\n\nfunction fromControlReset(control: AbstractControl) {\n return new Observable<void>(observer => {\n const unpatchedControlReset = control.reset;\n\n control.reset = () => {\n observer.next();\n unpatchedControlReset.apply(control);\n };\n\n return () => {\n control.reset = unpatchedControlReset;\n };\n });\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive } from '@angular/core';\nimport { WillyWonka } from '@clr/angular/utils';\n\n@Directive({\n selector: 'form[clrStepper]',\n standalone: false,\n})\nexport class StepperWillyWonka extends WillyWonka {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\nimport { IfExpandService, OompaLoompa } from '@clr/angular/utils';\n\nimport { StepperWillyWonka } from './stepper-willy-wonka';\n\n@Directive({\n selector: 'clr-stepper-panel, [clrStepButton]',\n standalone: false,\n})\nexport class StepperOompaLoompa extends OompaLoompa {\n private expand: IfExpandService;\n\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: StepperWillyWonka, ifExpandService: IfExpandService) {\n if (!willyWonka) {\n throw new Error('clr-stepper-panel should only be used inside of clrStepper');\n }\n super(cdr, willyWonka);\n this.expand = ifExpandService;\n }\n\n get flavor() {\n return this.expand.expanded;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, HostBinding, HostListener, Input, OnInit } from '@angular/core';\n\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepperPanel } from './stepper-panel';\n\nexport enum ClrStepButtonType {\n Next = 'next',\n Previous = 'previous',\n Submit = 'submit',\n}\n\n@Directive({\n selector: '[clrStepButton]',\n host: {\n '[class.clr-step-button]': 'true',\n '[class.btn]': 'true',\n '[type]': \"'button'\",\n },\n standalone: false,\n})\nexport class ClrStepButton implements OnInit {\n @Input('clrStepButton') type: ClrStepButtonType | string = ClrStepButtonType.Next;\n @HostBinding('class.btn-success') submitButton = false;\n @HostBinding('class.btn-link') previousButton = false;\n\n constructor(\n private clrStep: ClrStepperPanel,\n private stepperService: StepperService\n ) {}\n\n ngOnInit() {\n this.submitButton = this.type === ClrStepButtonType.Submit;\n this.previousButton = this.type === ClrStepButtonType.Previous;\n }\n\n @HostListener('click')\n navigateToNextPanel() {\n if (this.previousButton) {\n this.stepperService.navigateToPreviousPanel(this.clrStep.id);\n return;\n }\n\n this.stepperService.navigateToNextPanel(this.clrStep.id, this.clrStep.formGroup.valid);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-content',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepContent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-title',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-stepper-title]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepTitle {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { angleIcon, checkCircleIcon, ClarityIcons, ClrIcon, exclamationCircleIcon } from '@clr/angular/icon';\n\nimport { StepperOompaLoompa } from './chocolate/stepper-oompa-loompa';\nimport { StepperWillyWonka } from './chocolate/stepper-willy-wonka';\nimport { ClrStepButton } from './step-button';\nimport { ClrStepContent } from './step-content';\nimport { ClrStepDescription } from './step-description';\nimport { ClrStepTitle } from './step-title';\nimport { ClrStepper } from './stepper';\nimport { ClrStepperPanel } from './stepper-panel';\n\nconst declarations = [\n ClrStepper,\n ClrStepButton,\n ClrStepTitle,\n ClrStepDescription,\n ClrStepContent,\n ClrStepperPanel,\n StepperOompaLoompa,\n StepperWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, ClrIcon],\n declarations: [...declarations],\n exports: [...declarations, ClrIcon],\n})\nexport class ClrStepperModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon, exclamationCircleIcon, checkCircleIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './stepper-panel';\nexport * from './stepper';\nexport * from './stepper.module';\nexport * from './step-button';\nexport * from './step-title';\nexport * from './step-description';\nexport * from './step-content';\nexport * from './enums/stepper-panel-status.enum';\nexport * from './models/stepper-panel.model';\nexport * from './providers/stepper.service';\n\nexport { StepperWillyWonka as ÇlrStepperWillyWonka } from './chocolate/stepper-willy-wonka';\nexport { StepperOompaLoompa as ÇlrStepperOompaLoompa } from './chocolate/stepper-oompa-loompa';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3.StepperService","i1","i2.StepperService","i1.StepperWillyWonka","i2","i1.ClrStepperPanel"],"mappings":"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"}
1
+ {"version":3,"file":"clr-angular-stepper.mjs","sources":["../../../projects/angular/stepper/enums/stepper-panel-status.enum.ts","../../../projects/angular/stepper/step-description.ts","../../../projects/angular/stepper/models/stepper-panel.model.ts","../../../projects/angular/stepper/models/stepper.model.ts","../../../projects/angular/stepper/providers/stepper.service.ts","../../../projects/angular/stepper/stepper-panel.ts","../../../projects/angular/stepper/stepper-panel.html","../../../projects/angular/stepper/stepper.ts","../../../projects/angular/stepper/chocolate/stepper-willy-wonka.ts","../../../projects/angular/stepper/chocolate/stepper-oompa-loompa.ts","../../../projects/angular/stepper/step-button.ts","../../../projects/angular/stepper/step-content.ts","../../../projects/angular/stepper/step-title.ts","../../../projects/angular/stepper/stepper.module.ts","../../../projects/angular/stepper/index.ts","../../../projects/angular/stepper/clr-angular-stepper.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport enum StepperPanelStatus {\n Inactive = 'inactive',\n Error = 'error',\n Complete = 'complete',\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-description',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-stepper-description]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepDescription {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelModel } from '@clr/angular/collapsible-panel';\n\nimport { StepperPanelStatus } from '../enums/stepper-panel-status.enum';\n\nexport class StepperPanelModel extends CollapsiblePanelModel {\n status = StepperPanelStatus.Inactive;\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelGroupModel } from '@clr/angular/collapsible-panel';\n\nimport { StepperPanelModel } from './stepper-panel.model';\nimport { StepperPanelStatus } from '../enums/stepper-panel-status.enum';\n\nexport class StepperModel extends CollapsiblePanelGroupModel {\n protected override _panels: { [id: string]: StepperPanelModel } = {};\n\n private stepperModelInitialize = false;\n private initialPanel: string;\n\n override get panels(): StepperPanelModel[] {\n return Object.keys(this._panels).map(id => this._panels[id]);\n }\n\n get allPanelsCompleted(): boolean {\n return this.panels.length && this.getNumberOfIncompletePanels() === 0 && this.getNumberOfOpenPanels() === 0;\n }\n\n get shouldOpenFirstPanel() {\n return !this.initialPanel || (this._panels && Object.keys(this._panels).length && !this._panels[this.initialPanel]);\n }\n\n override addPanel(id: string, open = false) {\n const panel = new StepperPanelModel(id, this.panelGroupCount);\n panel.open = open;\n panel.disabled = true;\n this._panels[id] = panel;\n }\n\n override updatePanelOrder(ids: string[]) {\n super.updatePanelOrder(ids);\n if (this.stepperModelInitialize === false) {\n this.openFirstPanel();\n }\n }\n\n override togglePanel(panelId: string) {\n if (this._panels[panelId]?.status === StepperPanelStatus.Complete) {\n this._panels[panelId].open = !this._panels[panelId].open;\n }\n }\n\n navigateToPreviousPanel(currentPanelId: string) {\n this.openPreviousPanel(this._panels[currentPanelId].id);\n }\n\n navigateToNextPanel(currentPanelId: string, currentPanelValid = true) {\n if (currentPanelValid) {\n this.completePanel(currentPanelId);\n this.openNextPanel(this._panels[currentPanelId].id);\n } else {\n this.setPanelError(currentPanelId);\n }\n }\n\n overrideInitialPanel(panelId: string) {\n this.initialPanel = panelId;\n this.panels\n .filter(() => this._panels[panelId] !== undefined)\n .forEach(panel => {\n if (panel.index < this._panels[panelId].index) {\n this.completePanel(panel.id);\n } else if (panel.id === panelId) {\n this._panels[panel.id].open = true;\n } else {\n this._panels[panel.id].open = false;\n }\n });\n }\n\n setPanelValid(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Complete;\n }\n\n setPanelInvalid(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Error;\n }\n\n setPanelsWithErrors(ids: string[]) {\n ids.forEach(id => this.setPanelError(id));\n }\n\n resetPanels() {\n this.stepperModelInitialize = false;\n this.panels.forEach(p => this.resetPanel(p.id));\n this.openFirstPanel();\n }\n\n getNextPanel(currentPanelId: string) {\n return this.panels.find(s => s.index === this._panels[currentPanelId].index + 1);\n }\n\n getPreviousPanel(currentPanelId: string) {\n return this.panels.find(s => s.index === this._panels[currentPanelId].index - 1);\n }\n\n private resetAllFuturePanels(panelId: string) {\n this.panels.filter(panel => panel.index >= this._panels[panelId].index).forEach(panel => this.resetPanel(panel.id));\n }\n\n private resetPanel(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Inactive;\n this._panels[panelId].open = false;\n this._panels[panelId].disabled = true;\n }\n\n private openFirstPanel() {\n if (!this.shouldOpenFirstPanel) {\n return;\n }\n const firstPanel = this.getFirstPanel();\n if (!firstPanel) {\n return;\n }\n\n this._panels[firstPanel.id].open = true;\n this._panels[firstPanel.id].disabled = true;\n this.stepperModelInitialize = true;\n }\n\n private completePanel(panelId: string) {\n this._panels[panelId].status = StepperPanelStatus.Complete;\n this._panels[panelId].disabled = false;\n this._panels[panelId].open = false;\n }\n\n private openNextPanel(currentPanelId: string) {\n const nextPanel = this.getNextPanel(currentPanelId);\n\n if (nextPanel) {\n this.resetAllFuturePanels(nextPanel.id);\n this._panels[nextPanel.id].open = true;\n this._panels[nextPanel.id].disabled = true;\n }\n }\n\n private openPreviousPanel(currentPanelId: string) {\n const prevPanel = this.getPreviousPanel(currentPanelId);\n\n if (prevPanel) {\n this._panels[currentPanelId].open = false;\n this._panels[currentPanelId].disabled = false;\n\n this._panels[prevPanel.id].open = true;\n this._panels[prevPanel.id].disabled = true;\n }\n }\n\n private setPanelError(panelId: string) {\n this.resetAllFuturePanels(panelId);\n this._panels[panelId].open = true;\n this._panels[panelId].status = StepperPanelStatus.Error;\n }\n\n private getFirstPanel() {\n return this.panels.find(panel => panel.index === 0);\n }\n\n private getNumberOfIncompletePanels() {\n return this.panels.reduce((prev, next) => (next.status !== StepperPanelStatus.Complete ? prev + 1 : prev), 0);\n }\n\n private getNumberOfOpenPanels() {\n return this.panels.reduce((prev, next) => (next.open !== false ? prev + 1 : prev), 0);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Observable, Subject } from 'rxjs';\nimport { distinctUntilChanged, map } from 'rxjs/operators';\n\nimport { StepperModel } from '../models/stepper.model';\n\n@Injectable()\nexport class StepperService extends CollapsiblePanelService {\n readonly activeStep: Observable<string>;\n readonly panelsCompleted = this.getAllCompletedPanelChanges();\n\n protected override panelGroup = new StepperModel();\n\n private _activeStepChanges = new Subject<string>();\n\n constructor() {\n super();\n\n this.activeStep = this._activeStepChanges.asObservable();\n }\n\n resetPanels() {\n this.panelGroup.resetPanels();\n this.emitUpdatedPanels();\n }\n\n setPanelValid(panelId: string) {\n this.panelGroup.setPanelValid(panelId);\n this.emitUpdatedPanels();\n }\n\n setPanelInvalid(panelId: string) {\n this.panelGroup.setPanelInvalid(panelId);\n this.emitUpdatedPanels();\n }\n\n setPanelsWithErrors(ids: string[]) {\n this.panelGroup.setPanelsWithErrors(ids);\n this.emitUpdatedPanels();\n }\n\n navigateToPreviousPanel(currentPanelId: string) {\n this.panelGroup.navigateToPreviousPanel(currentPanelId);\n this.updatePreviousStep(currentPanelId);\n this.emitUpdatedPanels();\n }\n\n navigateToNextPanel(currentPanelId: string, currentPanelValid = true) {\n this.panelGroup.navigateToNextPanel(currentPanelId, currentPanelValid);\n this.updateNextStep(currentPanelId, currentPanelValid);\n this.emitUpdatedPanels();\n }\n\n overrideInitialPanel(panelId: string) {\n this.panelGroup.overrideInitialPanel(panelId);\n this.emitUpdatedPanels();\n }\n\n private updateNextStep(currentPanelId: string, currentPanelValid: boolean) {\n const nextPanel = this.panelGroup.getNextPanel(currentPanelId);\n\n if (currentPanelValid && nextPanel) {\n this._activeStepChanges.next(nextPanel.id);\n } else if (currentPanelValid) {\n this._activeStepChanges.next(currentPanelId);\n }\n }\n\n private updatePreviousStep(currentPanelId: string) {\n const prevPanel = this.panelGroup.getPreviousPanel(currentPanelId);\n\n if (prevPanel) {\n this._activeStepChanges.next(prevPanel.id);\n }\n }\n\n private getAllCompletedPanelChanges(): Observable<boolean> {\n return this._panelsChanges.pipe(\n map(() => this.panelGroup.allPanelsCompleted),\n distinctUntilChanged()\n );\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Inject,\n OnInit,\n Optional,\n PLATFORM_ID,\n QueryList,\n ViewChild,\n} from '@angular/core';\nimport { FormGroupName, NgModelGroup } from '@angular/forms';\nimport { CollapsiblePanel, collapsiblePanelAnimation } from '@clr/angular/collapsible-panel';\nimport { ClrCommonStringsService, IfExpandService, triggerAllFormControlValidation } from '@clr/angular/utils';\nimport { Observable, Subscription } from 'rxjs';\nimport { distinctUntilChanged, filter, skipUntil, tap } from 'rxjs/operators';\n\nimport { StepperPanelStatus } from './enums/stepper-panel-status.enum';\nimport { StepperPanelModel } from './models/stepper-panel.model';\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepDescription } from './step-description';\n\n@Component({\n selector: 'clr-stepper-panel',\n templateUrl: 'stepper-panel.html',\n host: { '[class.clr-stepper-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class ClrStepperPanel extends CollapsiblePanel implements OnInit {\n @ViewChild('headerButton') headerButton: ElementRef<HTMLButtonElement>;\n @ContentChildren(ClrStepDescription) stepDescription: QueryList<ClrStepDescription>;\n @HostBinding('class.clr-stepper-panel-disabled') disabled = false;\n readonly PanelStatus = StepperPanelStatus;\n override panel: Observable<StepperPanelModel>;\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: any,\n public commonStrings: ClrCommonStringsService,\n @Optional() private formGroupName: FormGroupName,\n @Optional() private ngModelGroup: NgModelGroup,\n private stepperService: StepperService,\n ifExpandService: IfExpandService,\n cdr: ChangeDetectorRef\n ) {\n super(stepperService, ifExpandService, cdr);\n }\n\n override get id(): string {\n return this.formGroupName ? this.formGroupName.name.toString() : this.ngModelGroup.name;\n }\n override set id(_value: string) {\n // overriding parent id required empty setter\n }\n\n get panelNumber() {\n return this._panelIndex + 1;\n }\n\n get formGroup() {\n return this.formGroupName ? this.formGroupName.control : this.ngModelGroup.control;\n }\n\n getPanelStatus(panel: StepperPanelModel): StepperPanelStatus {\n return panel.status;\n }\n\n getPanelStateClasses(panel: StepperPanelModel) {\n return `clr-stepper-panel-${this.getPanelStatus(panel)} ${panel.open ? 'clr-stepper-panel-open' : ''}`;\n }\n\n getContentId(id: string) {\n return `clr-stepper-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `clr-stepper-header-${id}`;\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.panel = this.panel.pipe(tap(panel => this.triggerAllFormControlValidationIfError(panel)));\n this.stepperService.disablePanel(this.id, true);\n this.listenToFocusChanges();\n\n // not all stepper panels are guaranteed to have a form (i.e. empty template-driven)\n if (this.formGroup) {\n // set panel status on form status change only after the form becomes invalid\n const invalidStatusTrigger = this.formGroup.statusChanges.pipe(filter(status => status === 'INVALID'));\n\n this.subscriptions.push(\n this.formGroup.statusChanges.pipe(skipUntil(invalidStatusTrigger), distinctUntilChanged()).subscribe(status => {\n if (!this.formGroup.touched) {\n return;\n }\n\n if (status === 'VALID') {\n this.stepperService.setPanelValid(this.id);\n } else if (status === 'INVALID') {\n this.stepperService.setPanelInvalid(this.id);\n }\n })\n );\n }\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n protected stepCompleteText(panelNumber: number) {\n return this.commonStrings.parse(this.commonStrings.keys.stepComplete, { STEP: panelNumber.toString() });\n }\n\n protected stepErrorText(panelNumber: number) {\n return this.commonStrings.parse(this.commonStrings.keys.stepError, { STEP: panelNumber.toString() });\n }\n\n private listenToFocusChanges() {\n this.subscriptions.push(\n this.stepperService.activeStep\n .pipe(filter(panelId => isPlatformBrowser(this.platformId) && panelId === this.id))\n .subscribe(() => {\n this.headerButton.nativeElement.focus();\n })\n );\n }\n\n private triggerAllFormControlValidationIfError(panel: StepperPanelModel) {\n if (panel.status === StepperPanelStatus.Error) {\n triggerAllFormControlValidation(this.formGroup);\n }\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div class=\"clr-stepper-header\">\n <button\n type=\"button\"\n class=\"clr-stepper-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [attr.aria-disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"getContentId(panel.templateId)\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-stepper-header-has-description]=\"(stepDescription.changes | async)?.length || stepDescription.length\"\n #headerButton\n >\n <span class=\"clr-step-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-stepper-angle clr-step-angle\"></cds-icon>\n <span class=\"clr-step-status-icon\">\n @if (getPanelStatus(panel) === PanelStatus.Error) {\n <cds-icon status=\"danger\" shape=\"error-standard\" class=\"clr-step-error-icon\"></cds-icon>\n } @if (getPanelStatus(panel) === PanelStatus.Complete) {\n <cds-icon status=\"success\" shape=\"success-standard\" class=\"clr-step-complete-icon\"></cds-icon>\n }\n </span>\n </span>\n <span class=\"clr-step-title-wrapper\">\n <span class=\"clr-step-number\">{{panelNumber}}.</span>\n <ng-content select=\"clr-step-title\"></ng-content>\n </span>\n <ng-content select=\"clr-step-description\"></ng-content>\n </button>\n <div class=\"clr-sr-only\" role=\"status\">\n @if (getPanelStatus(panel) === PanelStatus.Error) { {{ stepErrorText(panelNumber)}} } @if (getPanelStatus(panel)\n === PanelStatus.Complete) { {{ stepCompleteText(panelNumber)}} }\n </div>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-stepper-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-stepper-content\">\n <div class=\"clr-stepper-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { AbstractControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Observable, Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepperPanel } from './stepper-panel';\n\n@Component({\n selector: 'form[clrStepper]',\n template: `<ng-content></ng-content>`,\n host: {\n '[class.clr-stepper-forms]': 'true',\n },\n providers: [StepperService, { provide: CollapsiblePanelService, useExisting: StepperService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepper implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('clrInitialStep') initialPanel: string;\n @ContentChildren(ClrStepperPanel) panels: QueryList<ClrStepperPanel>;\n form: FormGroupDirective | NgForm;\n private subscriptions: Subscription[] = [];\n\n constructor(\n @Optional() private formGroup: FormGroupDirective,\n @Optional() private ngForm: NgForm,\n private stepperService: StepperService\n ) {}\n\n ngOnInit() {\n if (!this.formGroup && !this.ngForm) {\n throw new Error('To use stepper a Reactive or Template Form is required.');\n }\n\n this.form = this.formGroup ? this.formGroup : this.ngForm;\n this.subscriptions.push(this.listenForPanelsCompleted());\n this.subscriptions.push(this.listenForFormResetChanges());\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n changes.initialPanel &&\n !changes.initialPanel.firstChange &&\n changes.initialPanel.currentValue !== changes.initialPanel.previousValue\n ) {\n this.stepperService.overrideInitialPanel(this.initialPanel);\n }\n }\n\n ngAfterViewInit() {\n this.subscriptions.push(this.listenForDOMChanges());\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n private listenForFormResetChanges() {\n return fromControlReset(this.form.form).subscribe(() => this.stepperService.resetPanels());\n }\n\n private listenForPanelsCompleted() {\n return this.stepperService.panelsCompleted.subscribe(panelsCompleted => {\n if (panelsCompleted && this.form.valid) {\n this.form.ngSubmit.emit();\n } else if (!this.form.valid && this.form.touched) {\n this.setPanelsWithFormErrors();\n }\n });\n }\n\n private setPanelsWithFormErrors() {\n const panelsWithErrors = this.panels.reduce((panels, p) => (p.formGroup.invalid ? [...panels, p.id] : panels), []);\n this.stepperService.setPanelsWithErrors(panelsWithErrors);\n }\n\n private listenForDOMChanges() {\n return this.panels.changes.pipe(startWith(this.panels)).subscribe((panels: QueryList<ClrStepperPanel>) => {\n this.stepperService.updatePanelOrder(panels.toArray().map(p => p.id));\n\n if (this.initialPanel) {\n this.stepperService.overrideInitialPanel(this.initialPanel);\n }\n });\n }\n}\n\nfunction fromControlReset(control: AbstractControl) {\n return new Observable<void>(observer => {\n const unpatchedControlReset = control.reset;\n\n control.reset = () => {\n observer.next();\n unpatchedControlReset.apply(control);\n };\n\n return () => {\n control.reset = unpatchedControlReset;\n };\n });\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive } from '@angular/core';\nimport { WillyWonka } from '@clr/angular/utils';\n\n@Directive({\n selector: 'form[clrStepper]',\n standalone: false,\n})\nexport class StepperWillyWonka extends WillyWonka {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\nimport { IfExpandService, OompaLoompa } from '@clr/angular/utils';\n\nimport { StepperWillyWonka } from './stepper-willy-wonka';\n\n@Directive({\n selector: 'clr-stepper-panel, [clrStepButton]',\n standalone: false,\n})\nexport class StepperOompaLoompa extends OompaLoompa {\n private expand: IfExpandService;\n\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: StepperWillyWonka, ifExpandService: IfExpandService) {\n if (!willyWonka) {\n throw new Error('clr-stepper-panel should only be used inside of clrStepper');\n }\n super(cdr, willyWonka);\n this.expand = ifExpandService;\n }\n\n get flavor() {\n return this.expand.expanded;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive, HostBinding, HostListener, Input, OnInit } from '@angular/core';\n\nimport { StepperService } from './providers/stepper.service';\nimport { ClrStepperPanel } from './stepper-panel';\n\nexport enum ClrStepButtonType {\n Next = 'next',\n Previous = 'previous',\n Submit = 'submit',\n}\n\n@Directive({\n selector: '[clrStepButton]',\n host: {\n '[class.clr-step-button]': 'true',\n '[class.btn]': 'true',\n '[type]': \"'button'\",\n },\n standalone: false,\n})\nexport class ClrStepButton implements OnInit {\n @Input('clrStepButton') type: ClrStepButtonType | string = ClrStepButtonType.Next;\n @HostBinding('class.btn-success') submitButton = false;\n @HostBinding('class.btn-link') previousButton = false;\n\n constructor(\n private clrStep: ClrStepperPanel,\n private stepperService: StepperService\n ) {}\n\n ngOnInit() {\n this.submitButton = this.type === ClrStepButtonType.Submit;\n this.previousButton = this.type === ClrStepButtonType.Previous;\n }\n\n @HostListener('click')\n navigateToNextPanel() {\n if (this.previousButton) {\n this.stepperService.navigateToPreviousPanel(this.clrStep.id);\n return;\n }\n\n this.stepperService.navigateToNextPanel(this.clrStep.id, this.clrStep.formGroup.valid);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-content',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepContent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-step-title',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-stepper-title]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrStepTitle {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { angleIcon, ClarityIcons, ClrIcon, errorStandardIcon, successStandardIcon } from '@clr/angular/icon';\n\nimport { StepperOompaLoompa } from './chocolate/stepper-oompa-loompa';\nimport { StepperWillyWonka } from './chocolate/stepper-willy-wonka';\nimport { ClrStepButton } from './step-button';\nimport { ClrStepContent } from './step-content';\nimport { ClrStepDescription } from './step-description';\nimport { ClrStepTitle } from './step-title';\nimport { ClrStepper } from './stepper';\nimport { ClrStepperPanel } from './stepper-panel';\n\nconst declarations = [\n ClrStepper,\n ClrStepButton,\n ClrStepTitle,\n ClrStepDescription,\n ClrStepContent,\n ClrStepperPanel,\n StepperOompaLoompa,\n StepperWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, ClrIcon],\n declarations: [...declarations],\n exports: [...declarations, ClrIcon],\n})\nexport class ClrStepperModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon, successStandardIcon, errorStandardIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './stepper-panel';\nexport * from './stepper';\nexport * from './stepper.module';\nexport * from './step-button';\nexport * from './step-title';\nexport * from './step-description';\nexport * from './step-content';\nexport * from './enums/stepper-panel-status.enum';\nexport * from './models/stepper-panel.model';\nexport * from './providers/stepper.service';\n\nexport { StepperWillyWonka as ÇlrStepperWillyWonka } from './chocolate/stepper-willy-wonka';\nexport { StepperOompaLoompa as ÇlrStepperOompaLoompa } from './chocolate/stepper-oompa-loompa';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3.StepperService","i1","i2.StepperService","i1.StepperWillyWonka","i2","i1.ClrStepperPanel"],"mappings":"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"}
@@ -313,7 +313,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
313
313
  /**
314
314
  * HostWrapper must be called in OnInit to ensure that the Views are ready. If its called in a constructor the view is
315
315
  * still undefined.
316
- * TODO - make sure these comment annotations do not break ng-packgr.
317
316
  */
318
317
  class HostWrapper {
319
318
  constructor(containerType, vcr, index = 0) {
@@ -1565,15 +1564,6 @@ var Keys;
1565
1564
  Keys["PageDown"] = "PageDown";
1566
1565
  Keys["PageUp"] = "PageUp";
1567
1566
  })(Keys || (Keys = {}));
1568
- var IEKeys;
1569
- (function (IEKeys) {
1570
- IEKeys["ArrowUp"] = "Up";
1571
- IEKeys["ArrowDown"] = "Down";
1572
- IEKeys["ArrowRight"] = "Right";
1573
- IEKeys["ArrowLeft"] = "Left";
1574
- IEKeys["Space"] = "Spacebar";
1575
- IEKeys["Escape"] = "Esc";
1576
- })(IEKeys || (IEKeys = {}));
1577
1567
 
1578
1568
  /*
1579
1569
  * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
@@ -1581,31 +1571,8 @@ var IEKeys;
1581
1571
  * This software is released under MIT license.
1582
1572
  * The full license information can be found in LICENSE in the root directory of this project.
1583
1573
  */
1584
- function normalizeKey(key) {
1585
- if (key === Keys.ArrowUp || key === IEKeys.ArrowUp) {
1586
- return Keys.ArrowUp;
1587
- }
1588
- else if (key === Keys.ArrowDown || key === IEKeys.ArrowDown) {
1589
- return Keys.ArrowDown;
1590
- }
1591
- else if (key === Keys.ArrowRight || key === IEKeys.ArrowRight) {
1592
- return Keys.ArrowRight;
1593
- }
1594
- else if (key === Keys.ArrowLeft || key === IEKeys.ArrowLeft) {
1595
- return Keys.ArrowLeft;
1596
- }
1597
- else if (key === Keys.Space || key === IEKeys.Space) {
1598
- return Keys.Space;
1599
- }
1600
- else if (key === Keys.Escape || key === IEKeys.Escape) {
1601
- return Keys.Escape;
1602
- }
1603
- else {
1604
- return key;
1605
- }
1606
- }
1607
1574
  function preventArrowKeyScroll(event) {
1608
- const key = normalizeKey(event.key);
1575
+ const key = event.key;
1609
1576
  if (key === Keys.ArrowUp || key === Keys.ArrowDown || key === Keys.ArrowLeft || key === Keys.ArrowRight) {
1610
1577
  // prevent element container scroll
1611
1578
  // MDN references this is really the only way to prevent native browser interactions
@@ -1710,7 +1677,7 @@ class ClrKeyFocus {
1710
1677
  }
1711
1678
  focusCurrent() {
1712
1679
  this.currentItem.focus();
1713
- this.focusChange.next(this._current);
1680
+ this.focusChange.emit(this._current);
1714
1681
  }
1715
1682
  moveTo(position) {
1716
1683
  if (this.positionInRange(position)) {
@@ -1742,27 +1709,25 @@ class ClrKeyFocus {
1742
1709
  }
1743
1710
  }
1744
1711
  nextKeyPressed(event) {
1745
- const key = normalizeKey(event.key);
1746
1712
  switch (this.direction) {
1747
1713
  case ClrFocusDirection.VERTICAL:
1748
- return key === Keys.ArrowDown;
1714
+ return event.key === Keys.ArrowDown;
1749
1715
  case ClrFocusDirection.HORIZONTAL:
1750
- return key === Keys.ArrowRight;
1716
+ return event.key === Keys.ArrowRight;
1751
1717
  case ClrFocusDirection.BOTH:
1752
- return key === Keys.ArrowDown || key === Keys.ArrowRight;
1718
+ return event.key === Keys.ArrowDown || event.key === Keys.ArrowRight;
1753
1719
  default:
1754
1720
  return false;
1755
1721
  }
1756
1722
  }
1757
1723
  prevKeyPressed(event) {
1758
- const key = normalizeKey(event.key);
1759
1724
  switch (this.direction) {
1760
1725
  case ClrFocusDirection.VERTICAL:
1761
- return key === Keys.ArrowUp;
1726
+ return event.key === Keys.ArrowUp;
1762
1727
  case ClrFocusDirection.HORIZONTAL:
1763
- return key === Keys.ArrowLeft;
1728
+ return event.key === Keys.ArrowLeft;
1764
1729
  case ClrFocusDirection.BOTH:
1765
- return key === Keys.ArrowUp || key === Keys.ArrowLeft;
1730
+ return event.key === Keys.ArrowUp || event.key === Keys.ArrowLeft;
1766
1731
  default:
1767
1732
  return false;
1768
1733
  }
@@ -2427,11 +2392,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2427
2392
  *
2428
2393
  *
2429
2394
  * Consumers tell us that they want something to display on the TOP_LEFT of the trigger and that they want the
2430
- * _content_ container to anchor/orient AT the bottom left.
2431
- * In order to calculate the position for the content I need to match up the anchor/toggle ClrPosition with the
2395
+ * _content_ container to orient AT the bottom left.
2396
+ * In order to calculate the position for the content I need to match up the origin/trigger ClrPosition with the
2432
2397
  * content ClrPosition.
2433
2398
  *
2434
- * Anchor TOP_LEFT **AT** Content BOTTOM_LEFT.
2399
+ * Origin TOP_LEFT **AT** Content BOTTOM_LEFT.
2435
2400
  * -----------
2436
2401
  * | |
2437
2402
  * | |
@@ -2540,5 +2505,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2540
2505
  * Generated bundle index. Do not edit.
2541
2506
  */
2542
2507
 
2543
- export { ArrowKeyDirection, BASIC_FOCUSABLE_ITEM_PROVIDER, BaseExpandableAnimation, BasicFocusableItem, CLR_LOADING_DIRECTIVES, CONDITIONAL_DIRECTIVES, CdkDragModule, CdkDragModule_CdkDrag, CdkTrapFocusModule, CdkTrapFocusModule_CdkTrapFocus, ClrCommonStringsService, ClrConditionalModule, ClrDestroyService, ClrExpandableAnimation, ClrExpandableAnimationDirective, ClrExpandableAnimationModule, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrHostWrappingModule, ClrIfActive, ClrIfExpanded, ClrKeyFocus, ClrKeyFocusItem, ClrKeyFocusModule, ClrLoading, ClrLoadingModule, ClrLoadingState, ClrOutsideClickModule, ClrPosition, ClrRovingTabindex, ClrStandaloneCdkTrapFocus, ClrTemplateRefModule, DATEPICKER_ENABLE_BREAKPOINT, DomAdapter, EXPANDABLE_ANIMATION_DIRECTIVES, EXTRA_LARGE_BREAKPOINT, EmptyAnchor, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, FOCUS_SERVICE_PROVIDER, FocusService, FocusableItem, HostWrapper, IEKeys, IF_ACTIVE_ID, IF_ACTIVE_ID_PROVIDER, IfActiveService, IfExpandService, Keys, LARGE_BREAKPOINT, Linkers, LoadingListener, MEDIUM_BREAKPOINT, MOCK_DOM_ADAPTER_PROVIDER, MockDomAdapter, MockFocusableItem, OUSTIDE_CLICK_DIRECTIVES, OompaLoompa, OutsideClick, SMALL_BREAKPOINT, ScrollingService, TemplateRefContainer, WillyWonka, assertNever, clrFocusServiceFactory, collapse, commonStringsDefault, customFocusableItemProvider, defaultAnimationTiming, defaultExpandAnimation, fade, fadeSlide, isBooleanAttributeSet, isKeyEitherLetterOrNumber, normalizeKey, preventArrowKeyScroll, slide, tokenFactory, triggerAllFormControlValidation, uniqueIdFactory, wrapObservable };
2508
+ export { ArrowKeyDirection, BASIC_FOCUSABLE_ITEM_PROVIDER, BaseExpandableAnimation, BasicFocusableItem, CLR_LOADING_DIRECTIVES, CONDITIONAL_DIRECTIVES, CdkDragModule, CdkDragModule_CdkDrag, CdkTrapFocusModule, CdkTrapFocusModule_CdkTrapFocus, ClrCommonStringsService, ClrConditionalModule, ClrDestroyService, ClrExpandableAnimation, ClrExpandableAnimationDirective, ClrExpandableAnimationModule, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrHostWrappingModule, ClrIfActive, ClrIfExpanded, ClrKeyFocus, ClrKeyFocusItem, ClrKeyFocusModule, ClrLoading, ClrLoadingModule, ClrLoadingState, ClrOutsideClickModule, ClrPosition, ClrRovingTabindex, ClrStandaloneCdkTrapFocus, ClrTemplateRefModule, DATEPICKER_ENABLE_BREAKPOINT, DomAdapter, EXPANDABLE_ANIMATION_DIRECTIVES, EXTRA_LARGE_BREAKPOINT, EmptyAnchor, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, FOCUS_SERVICE_PROVIDER, FocusService, FocusableItem, HostWrapper, IF_ACTIVE_ID, IF_ACTIVE_ID_PROVIDER, IfActiveService, IfExpandService, Keys, LARGE_BREAKPOINT, Linkers, LoadingListener, MEDIUM_BREAKPOINT, MOCK_DOM_ADAPTER_PROVIDER, MockDomAdapter, MockFocusableItem, OUSTIDE_CLICK_DIRECTIVES, OompaLoompa, OutsideClick, SMALL_BREAKPOINT, ScrollingService, TemplateRefContainer, WillyWonka, assertNever, clrFocusServiceFactory, collapse, commonStringsDefault, customFocusableItemProvider, defaultAnimationTiming, defaultExpandAnimation, fade, fadeSlide, isBooleanAttributeSet, isKeyEitherLetterOrNumber, preventArrowKeyScroll, slide, tokenFactory, triggerAllFormControlValidation, uniqueIdFactory, wrapObservable };
2544
2509
  //# sourceMappingURL=clr-angular-utils.mjs.map