@clr/angular 18.0.0-beta.1 → 18.0.0-beta.10
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.
- package/fesm2022/clr-angular-accordion.mjs +1 -1
- package/fesm2022/clr-angular-accordion.mjs.map +1 -1
- package/fesm2022/clr-angular-button.mjs +6 -6
- package/fesm2022/clr-angular-button.mjs.map +1 -1
- package/fesm2022/clr-angular-data-datagrid.mjs +27 -35
- package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -1
- package/fesm2022/clr-angular-data-tree-view.mjs +3 -3
- package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -1
- package/fesm2022/clr-angular-data.mjs +11 -9116
- package/fesm2022/clr-angular-data.mjs.map +1 -1
- package/fesm2022/clr-angular-emphasis-alert.mjs +2 -2
- package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -1
- package/fesm2022/clr-angular-emphasis.mjs +12 -778
- package/fesm2022/clr-angular-emphasis.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-checkbox.mjs +13 -44
- package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-combobox.mjs +420 -90
- package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-common.mjs +62 -57
- package/fesm2022/clr-angular-forms-common.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-datalist.mjs +2 -14
- package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-datepicker.mjs +20 -28
- package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-file-input.mjs +78 -62
- package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-input.mjs +4 -18
- package/fesm2022/clr-angular-forms-input.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-number-input.mjs +2 -14
- package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-password.mjs +2 -14
- package/fesm2022/clr-angular-forms-password.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-radio.mjs +13 -44
- package/fesm2022/clr-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-range.mjs +3 -16
- package/fesm2022/clr-angular-forms-range.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-select.mjs +3 -16
- package/fesm2022/clr-angular-forms-select.mjs.map +1 -1
- package/fesm2022/clr-angular-forms-textarea.mjs +4 -17
- package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/clr-angular-forms.mjs +68 -8560
- package/fesm2022/clr-angular-forms.mjs.map +1 -1
- package/fesm2022/clr-angular-icon.mjs +10 -0
- package/fesm2022/clr-angular-icon.mjs.map +1 -1
- package/fesm2022/clr-angular-layout-nav.mjs +27 -25
- package/fesm2022/clr-angular-layout-nav.mjs.map +1 -1
- package/fesm2022/clr-angular-layout-tabs.mjs +1 -1
- package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -1
- package/fesm2022/clr-angular-layout.mjs +15 -2057
- package/fesm2022/clr-angular-layout.mjs.map +1 -1
- package/fesm2022/clr-angular-modal.mjs +4 -5
- package/fesm2022/clr-angular-modal.mjs.map +1 -1
- package/fesm2022/clr-angular-popover-common.mjs +151 -85
- package/fesm2022/clr-angular-popover-common.mjs.map +1 -1
- package/fesm2022/clr-angular-popover-dropdown.mjs +7 -4
- package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -1
- package/fesm2022/clr-angular-popover-signpost.mjs +30 -15
- package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -1
- package/fesm2022/clr-angular-popover-tooltip.mjs +7 -7
- package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -1
- package/fesm2022/clr-angular-popover.mjs +12 -2242
- package/fesm2022/clr-angular-popover.mjs.map +1 -1
- package/fesm2022/clr-angular-stepper.mjs +5 -5
- package/fesm2022/clr-angular-stepper.mjs.map +1 -1
- package/fesm2022/clr-angular-utils.mjs +20 -485
- package/fesm2022/clr-angular-utils.mjs.map +1 -1
- package/fesm2022/clr-angular-wizard.mjs +434 -223
- package/fesm2022/clr-angular-wizard.mjs.map +1 -1
- package/fesm2022/clr-angular.mjs +94 -38740
- package/fesm2022/clr-angular.mjs.map +1 -1
- package/package.json +10 -5
- package/popover/common/README.md +14 -12
- package/schematics/collection.json +14 -0
- package/schematics/ng-update/index.d.ts +2 -0
- package/schematics/ng-update/index.js +69 -0
- package/schematics/ng-update/index.js.map +1 -0
- package/schematics/ng-update/migrations/css-migration.d.ts +6 -0
- package/schematics/ng-update/migrations/css-migration.js +177 -0
- package/schematics/ng-update/migrations/css-migration.js.map +1 -0
- package/schematics/ng-update/migrations/import-migration.d.ts +4 -0
- package/schematics/ng-update/migrations/import-migration.js +187 -0
- package/schematics/ng-update/migrations/import-migration.js.map +1 -0
- package/schematics/ng-update/migrations/template-migration.d.ts +6 -0
- package/schematics/ng-update/migrations/template-migration.js +261 -0
- package/schematics/ng-update/migrations/template-migration.js.map +1 -0
- package/schematics/ng-update/replacements/css-replacements.d.ts +17 -0
- package/schematics/ng-update/replacements/css-replacements.js +74 -0
- package/schematics/ng-update/replacements/css-replacements.js.map +1 -0
- package/schematics/ng-update/replacements/import-replacements.d.ts +13 -0
- package/schematics/ng-update/replacements/import-replacements.js +108 -0
- package/schematics/ng-update/replacements/import-replacements.js.map +1 -0
- package/schematics/ng-update/replacements/symbol-replacements.d.ts +12 -0
- package/schematics/ng-update/replacements/symbol-replacements.js +67 -0
- package/schematics/ng-update/replacements/symbol-replacements.js.map +1 -0
- package/schematics/ng-update/replacements/template-replacements.d.ts +19 -0
- package/schematics/ng-update/replacements/template-replacements.js +57 -0
- package/schematics/ng-update/replacements/template-replacements.js.map +1 -0
- package/schematics/ng-update/tests/test-helpers.d.ts +6 -0
- package/schematics/ng-update/tests/test-helpers.js +34 -0
- package/schematics/ng-update/tests/test-helpers.js.map +1 -0
- package/schematics/ng-update/utils/file-visitor.d.ts +8 -0
- package/schematics/ng-update/utils/file-visitor.js +44 -0
- package/schematics/ng-update/utils/file-visitor.js.map +1 -0
- package/schematics/ng-update/utils/regexp-utils.d.ts +16 -0
- package/schematics/ng-update/utils/regexp-utils.js +34 -0
- package/schematics/ng-update/utils/regexp-utils.js.map +1 -0
- package/schematics/vitest.config.d.ts +2 -0
- package/schematics/vitest.config.js +17 -0
- package/schematics/vitest.config.js.map +1 -0
- package/types/clr-angular-accordion.d.ts +1 -1
- package/types/clr-angular-button.d.ts +1 -1
- package/types/clr-angular-data-datagrid.d.ts +23 -33
- package/types/clr-angular-data-tree-view.d.ts +10 -1
- package/types/clr-angular-data.d.ts +4 -2136
- package/types/clr-angular-emphasis.d.ts +4 -220
- package/types/clr-angular-forms-combobox.d.ts +64 -11
- package/types/clr-angular-forms-common.d.ts +9 -9
- package/types/clr-angular-forms-datepicker.d.ts +8 -1
- package/types/clr-angular-forms-file-input.d.ts +6 -3
- package/types/clr-angular-forms.d.ts +26 -2062
- package/types/clr-angular-layout-nav.d.ts +6 -2
- package/types/clr-angular-layout-tabs.d.ts +1 -1
- package/types/clr-angular-layout.d.ts +6 -463
- package/types/clr-angular-popover-common.d.ts +38 -13
- package/types/clr-angular-popover-dropdown.d.ts +2 -1
- package/types/clr-angular-popover-signpost.d.ts +15 -7
- package/types/clr-angular-popover-tooltip.d.ts +1 -1
- package/types/clr-angular-popover.d.ts +7 -559
- package/types/clr-angular-stepper.d.ts +1 -1
- package/types/clr-angular-utils.d.ts +13 -175
- package/types/clr-angular-wizard.d.ts +92 -35
- package/types/clr-angular.d.ts +22 -10238
|
@@ -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';\nexport * from './chocolate/stepper-willy-wonka';\nexport * 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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"}
|