{"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 { filter, map, pairwise, startWith, 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      // Only react to genuine status transitions (e.g. INVALID→VALID or VALID→INVALID).\n      // Using startWith to seed the stream with the current status so that repeated\n      // same-status emissions produced by Angular's updateValueAndValidity() calls\n      // (which always emit even when the status hasn't changed) are filtered out.\n      // This prevents a single blurred+typed control from triggering validation on\n      // all sibling controls in the group via triggerAllFormControlValidation.\n      this.subscriptions.push(\n        this.formGroup.statusChanges\n          .pipe(\n            startWith(this.formGroup.status),\n            pairwise(),\n            filter(([prev, curr]) => prev !== curr),\n            map(([, curr]) => curr)\n          )\n          .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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"}