{"version":3,"file":"novo-elements-elements-stepper.mjs","sources":["../../../projects/novo-elements/src/elements/stepper/step-label.component.ts","../../../projects/novo-elements/src/elements/stepper/step-status.component.ts","../../../projects/novo-elements/src/elements/stepper/step-status.component.html","../../../projects/novo-elements/src/elements/stepper/step-header.component.ts","../../../projects/novo-elements/src/elements/stepper/step-header.component.html","../../../projects/novo-elements/src/elements/stepper/stepper-buttons.component.ts","../../../projects/novo-elements/src/elements/stepper/stepper.animations.ts","../../../projects/novo-elements/src/elements/stepper/stepper.component.ts","../../../projects/novo-elements/src/elements/stepper/step.component.html","../../../projects/novo-elements/src/elements/stepper/stepper-horizontal.html","../../../projects/novo-elements/src/elements/stepper/stepper-vertical.html","../../../projects/novo-elements/src/elements/stepper/stepper.module.ts","../../../projects/novo-elements/src/elements/stepper/novo-elements-elements-stepper.ts"],"sourcesContent":["import { CdkStepLabel } from '@angular/cdk/stepper';\nimport { Directive, TemplateRef } from '@angular/core';\n\n@Directive({\n    selector: '[novoStepLabel]',\n    standalone: false,\n})\nexport class NovoStepLabel extends CdkStepLabel {\n  constructor(template: TemplateRef<any>) {\n    super(template);\n  }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n    selector: 'novo-step-status',\n    templateUrl: 'step-status.component.html',\n    // encapsulation: ViewEncapsulation.None,\n    preserveWhitespaces: false,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        class: 'novo-step-status',\n    },\n    standalone: false,\n})\nexport class NovoStepStatus {\n  @Input()\n  state: string;\n\n  constructor() {}\n}\n","<div class=\"novo-stepper-status-line\" [ngClass]=\"state\"></div>\n<div [ngSwitch]=\"state\" class=\"novo-stepper-status-icon\">\n  <novo-icon color=\"positive\" *ngSwitchCase=\"'edit'\">check-circle</novo-icon>\n  <novo-icon color=\"positive\" *ngSwitchCase=\"'done'\">check-circle-filled</novo-icon>\n  <novo-icon color=\"positive\" *ngSwitchDefault>circle-o</novo-icon>\n</div>","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { CdkStepHeader } from '@angular/cdk/stepper';\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, OnDestroy, TemplateRef } from '@angular/core';\nimport { NovoStepLabel } from './step-label.component';\n\n@Component({\n    selector: 'novo-step-header',\n    templateUrl: 'step-header.component.html',\n    styleUrls: ['step-header.component.scss'],\n    host: {\n        class: 'novo-step-header',\n        role: 'tab',\n    },\n    preserveWhitespaces: false,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    standalone: false,\n})\nexport class NovoStepHeader extends CdkStepHeader implements OnDestroy {\n  @Input()\n  theme: string;\n  @Input()\n  color: string;\n  @Input()\n  icon: string;\n  /** State of the given step. */\n  @Input()\n  state: string;\n\n  /** Label of the given step. */\n  @Input()\n  label: NovoStepLabel | string;\n\n  /** Overrides for the header icons, passed in via the stepper. */\n  @Input()\n  iconOverrides: { [key: string]: TemplateRef<any> };\n\n  /** Index of the given step. */\n  @Input()\n  get index(): number {\n    return this._index;\n  }\n  set index(value: number) {\n    this._index = coerceNumberProperty(value);\n  }\n  private _index: number;\n\n  /** Whether the given step is selected. */\n  @Input()\n  get selected(): boolean {\n    return this._selected;\n  }\n  set selected(value: boolean) {\n    this._selected = coerceBooleanProperty(value);\n  }\n  private _selected: boolean;\n\n  /** Whether the given step label is active. */\n  @Input()\n  get active(): boolean {\n    return this._active;\n  }\n  set active(value: boolean) {\n    this._active = coerceBooleanProperty(value);\n  }\n  private _active: boolean;\n\n  /** Whether the given step label is active. */\n  get touched(): boolean {\n    return this.selected || this.state === 'edit' || this.state === 'done';\n  }\n\n  /** Whether the given step is optional. */\n  @Input()\n  get optional(): boolean {\n    return this._optional;\n  }\n  set optional(value: boolean) {\n    this._optional = coerceBooleanProperty(value);\n  }\n  private _optional: boolean;\n\n  constructor(private _focusMonitor: FocusMonitor, private _element: ElementRef) {\n    super(_element);\n    _focusMonitor.monitor(_element.nativeElement, true);\n  }\n\n  ngOnDestroy() {\n    this._focusMonitor.stopMonitoring(this._element.nativeElement);\n  }\n\n  /** Returns string label of given step if it is a text label. */\n  _stringLabel(): string | null {\n    return this.label instanceof NovoStepLabel ? null : this.label;\n  }\n\n  /** Returns NovoStepLabel if the label of given step is a template label. */\n  _templateLabel(): NovoStepLabel | null {\n    return this.label instanceof NovoStepLabel ? this.label : null;\n  }\n\n  /** Returns the host HTML element. */\n  _getHostElement() {\n    return this._element.nativeElement;\n  }\n}\n","<div [class.novo-step-icon]=\"touched\"\n  [class.novo-step-icon-not-touched]=\"!touched\">\n  <ng-container *ngIf=\"icon\">\n    <novo-icon raised=\"true\" [theme]=\"theme\">{{icon}}</novo-icon>\n  </ng-container>\n  <ng-container *ngIf=\"!icon\">\n    <span class=\"novo-step-number\">{{index + 1}}</span>\n  </ng-container>\n</div>\n<div class=\"novo-step-label\"\n  [class.novo-step-label-active]=\"active\"\n  [class.novo-step-label-selected]=\"selected\">\n  <!-- If there is a label template, use it. -->\n  <ng-container *ngIf=\"_templateLabel()\" [ngTemplateOutlet]=\"_templateLabel()!.template\">\n  </ng-container>\n  <!-- It there is no label template, fall back to the text label. -->\n  <div class=\"novo-step-text-label\" *ngIf=\"_stringLabel()\">{{label}}</div>\n</div>\n<novo-step-status [state]=\"state\"></novo-step-status>","import { CdkStepperNext, CdkStepperPrevious } from '@angular/cdk/stepper';\nimport { Directive } from '@angular/core';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n    selector: 'button[novoStepperNext]',\n    host: {\n        class: 'novo-stepper-next',\n        '[type]': 'type',\n    },\n    inputs: ['type'],\n    standalone: false,\n})\nexport class NovoStepperNext extends CdkStepperNext {}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n    selector: 'button[novoStepperPrevious]',\n    host: {\n        class: 'novo-stepper-previous',\n        '[type]': 'type',\n    },\n    inputs: ['type'],\n    standalone: false,\n})\nexport class NovoStepperPrevious extends CdkStepperPrevious {}\n","import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\n/** Animations used by the Novo steppers. */\nexport const novoStepperAnimations: {\n  readonly horizontalStepTransition: AnimationTriggerMetadata;\n  readonly verticalStepTransition: AnimationTriggerMetadata;\n} = {\n  /** Animation that transitions the step along the X axis in a horizontal stepper. */\n  horizontalStepTransition: trigger('stepTransition', [\n    state('previous', style({ transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden' })),\n    state('current', style({ transform: 'none', visibility: 'visible' })),\n    state('next', style({ transform: 'translate3d(100%, 0, 0)', visibility: 'hidden' })),\n    transition('* => *', animate('500ms cubic-bezier(0.35, 0, 0.25, 1)')),\n  ]),\n\n  /** Animation that transitions the step along the Y axis in a vertical stepper. */\n  verticalStepTransition: trigger('stepTransition', [\n    state('previous', style({ height: '0px', visibility: 'hidden' })),\n    state('next', style({ height: '0px', visibility: 'hidden' })),\n    state('current', style({ height: '*', visibility: 'visible' })),\n    transition('* <=> current', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n  ]),\n};\n","import { Directionality } from '@angular/cdk/bidi';\nimport { CdkStep, CdkStepHeader, CdkStepper } from '@angular/cdk/stepper';\nimport {\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChild,\n  ContentChildren,\n  Directive,\n  ElementRef,\n  forwardRef,\n  Inject,\n  Input,\n  OnDestroy,\n  Optional,\n  QueryList,\n  TemplateRef,\n  ViewChildren,\n} from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { NovoIconComponent } from 'novo-elements/elements/icon';\nimport { NovoStepHeader } from './step-header.component';\nimport { NovoStepLabel } from './step-label.component';\nimport { novoStepperAnimations } from './stepper.animations';\n\n@Component({\n    selector: 'novo-step',\n    templateUrl: 'step.component.html',\n    styleUrls: ['stepper.component.scss'],\n    preserveWhitespaces: false,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [{ provide: CdkStep, useExisting: NovoStep }],\n    standalone: false,\n})\nexport class NovoStep extends CdkStep {\n  /** Content for step label given by `<ng-template novoStepLabel>`. */\n  @ContentChild(NovoStepLabel)\n  stepLabel: NovoStepLabel;\n\n  @Input()\n  theme: string;\n  @Input()\n  color: string;\n  @Input()\n  icon: string;\n\n  constructor(@Inject(forwardRef(() => NovoStepper)) stepper: CdkStepper) {\n    super(stepper);\n  }\n}\n\n@Directive({\n    selector: '[novoStepper]',\n    providers: [\n        { provide: CdkStep, useExisting: NovoStep },\n        { provide: CdkStepper, useExisting: NovoStepper },\n    ],\n    standalone: false,\n})\nexport class NovoStepper extends CdkStepper implements AfterContentInit, OnDestroy {\n  /** The list of step headers of the steps in the stepper. */\n  @ViewChildren(NovoStepHeader)\n  _stepHeader: QueryList<CdkStepHeader>;\n\n  /** Steps that the stepper holds. */\n  @ContentChildren(NovoStep, { descendants: true })\n  steps: QueryList<NovoStep>;\n\n  /** Custom icon overrides passed in by the consumer. */\n  @ContentChildren(NovoIconComponent)\n  _icons: QueryList<NovoIconComponent>;\n\n  /** Consumer-specified template-refs to be used to override the header icons. */\n  _iconOverrides: { [key: string]: TemplateRef<any> } = {};\n\n  get completed(): boolean {\n    try {\n      const steps = this.steps.toArray();\n      const length = steps.length - 1;\n      return steps[length].completed && length === this.selectedIndex;\n    } catch (err) {\n      return false;\n    }\n  }\n\n  ngAfterContentInit() {\n    // Mark the component for change detection whenever the content children query changes\n    this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => this._stateChanged());\n  }\n\n  ngOnDestroy() {}\n\n  complete() {\n    try {\n      const steps = this.steps.toArray();\n      steps[this.selectedIndex].completed = true;\n      this.next();\n      this._stateChanged();\n    } catch (err) {\n      // do nothing\n    }\n  }\n\n  getIndicatorType(index: number): 'none' | '' | 'edit' | 'done' {\n    const steps = this.steps.toArray();\n    if (index === this.selectedIndex) {\n      if (steps[index] && index === steps.length - 1 && steps[index].completed) {\n        return 'done';\n      }\n      return 'edit';\n    }\n    if (index < this.selectedIndex) {\n      return 'done';\n    }\n    return 'none';\n  }\n}\n\n@Component({\n    selector: 'novo-horizontal-stepper',\n    exportAs: 'novoHorizontalStepper',\n    templateUrl: 'stepper-horizontal.html',\n    styleUrls: ['stepper.component.scss'],\n    host: {\n        class: 'novo-stepper-horizontal',\n        'aria-orientation': 'horizontal',\n        role: 'tablist',\n    },\n    animations: [novoStepperAnimations.horizontalStepTransition],\n    providers: [\n        { provide: NovoStepper, useExisting: NovoHorizontalStepper },\n        { provide: CdkStepper, useExisting: NovoHorizontalStepper },\n    ],\n    // encapsulation: ViewEncapsulation.None,\n    preserveWhitespaces: false,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    standalone: false,\n})\nexport class NovoHorizontalStepper extends NovoStepper {}\n\n@Component({\n    selector: 'novo-vertical-stepper',\n    exportAs: 'novoVerticalStepper',\n    templateUrl: 'stepper-vertical.html',\n    styleUrls: ['stepper.component.scss'],\n    host: {\n        class: 'novo-stepper-vertical',\n        'aria-orientation': 'vertical',\n        role: 'tablist',\n    },\n    animations: [novoStepperAnimations.verticalStepTransition],\n    providers: [\n        { provide: NovoStepper, useExisting: NovoVerticalStepper },\n        { provide: CdkStepper, useExisting: NovoVerticalStepper },\n    ],\n    preserveWhitespaces: false,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    standalone: false,\n})\nexport class NovoVerticalStepper extends NovoStepper {\n  constructor(@Optional() dir: Directionality, changeDetectorRef: ChangeDetectorRef, elementRef: ElementRef) {\n    super(dir, changeDetectorRef, elementRef);\n    this.orientation = 'vertical';\n  }\n}\n","<ng-template><ng-content></ng-content></ng-template>\n","<div class=\"novo-horizontal-stepper-header-container\">\n  <div class=\"novo-stepper-horizontal-line complete\"></div>\n  <ng-container *ngFor=\"let step of _steps; let i = index; let isLast = last\">\n    <novo-step-header class=\"novo-horizontal-stepper-header\"\n      (click)=\"step.select()\"\n      (keydown)=\"_onKeydown($event)\"\n      [tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n      [id]=\"_getStepLabelId(i)\"\n      [attr.aria-controls]=\"_getStepContentId(i)\"\n      [attr.aria-selected]=\"selectedIndex == i\"\n      [index]=\"i\"\n      [theme]=\"step.theme\"\n      [color]=\"step.color\"\n      [icon]=\"step.icon\"\n      [state]=\"getIndicatorType(i)\"\n      [label]=\"step.stepLabel || step.label\"\n      [selected]=\"selectedIndex === i\"\n      [active]=\"step.completed || selectedIndex === i || !linear\"\n      [optional]=\"step.optional\"\n      [iconOverrides]=\"_iconOverrides\">\n    </novo-step-header>\n  </ng-container>\n  <div class=\"novo-stepper-horizontal-line\" [class.complete]=\"completed\"></div>\n</div>\n\n<div class=\"novo-horizontal-content-container\">\n  <div *ngFor=\"let step of _steps; let i = index\"\n    class=\"novo-horizontal-stepper-content\" role=\"tabpanel\"\n    [@stepTransition]=\"_getAnimationDirection(i)\"\n    [id]=\"_getStepContentId(i)\"\n    [attr.aria-labelledby]=\"_getStepLabelId(i)\"\n    [attr.aria-expanded]=\"selectedIndex === i\">\n    <ng-container [ngTemplateOutlet]=\"step.content\"></ng-container>\n  </div>\n</div>","<div class=\"novo-step\" *ngFor=\"let step of _steps; let i = index; let isLast = last\">\n  <novo-step-header class=\"novo-vertical-stepper-header\"\n    (click)=\"step.select()\"\n    (keydown)=\"_onKeydown($event)\"\n    [tabIndex]=\"_getFocusIndex() == i ? 0 : -1\"\n    [id]=\"_getStepLabelId(i)\"\n    [attr.aria-controls]=\"_getStepContentId(i)\"\n    [attr.aria-selected]=\"selectedIndex === i\"\n    [index]=\"i\"\n    [theme]=\"step.theme\"\n    [color]=\"step.color\"\n    [icon]=\"step.icon\"\n    [state]=\"getIndicatorType(i)\"\n    [label]=\"step.stepLabel || step.label\"\n    [selected]=\"selectedIndex === i\"\n    [active]=\"step.completed || selectedIndex === i || !linear\"\n    [optional]=\"step.optional\"\n    [iconOverrides]=\"_iconOverrides\">\n  </novo-step-header>\n\n  <div class=\"novo-vertical-content-container\" [class.novo-stepper-vertical-line]=\"!isLast\"\n    [ngClass]=\"getIndicatorType(i)\">\n    <div class=\"novo-vertical-stepper-content\" role=\"tabpanel\"\n      [@stepTransition]=\"_getAnimationDirection(i)\"\n      [id]=\"_getStepContentId(i)\"\n      [attr.aria-labelledby]=\"_getStepLabelId(i)\"\n      [attr.aria-expanded]=\"selectedIndex === i\">\n      <div class=\"novo-vertical-content\">\n        <ng-container [ngTemplateOutlet]=\"step.content\"></ng-container>\n      </div>\n    </div>\n  </div>\n</div>","import { A11yModule } from '@angular/cdk/a11y';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CdkStepperModule } from '@angular/cdk/stepper';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoStepHeader } from './step-header.component';\nimport { NovoStepLabel } from './step-label.component';\nimport { NovoStepStatus } from './step-status.component';\nimport { NovoStepperNext, NovoStepperPrevious } from './stepper-buttons.component';\nimport { NovoHorizontalStepper, NovoStep, NovoStepper, NovoVerticalStepper } from './stepper.component';\n@NgModule({\n  imports: [CommonModule, PortalModule, NovoButtonModule, CdkStepperModule, NovoIconModule, A11yModule],\n  exports: [\n    NovoHorizontalStepper,\n    NovoVerticalStepper,\n    NovoStep,\n    NovoStepLabel,\n    NovoStepper,\n    NovoStepHeader,\n    NovoStepStatus,\n    NovoStepperNext,\n    NovoStepperPrevious,\n  ],\n  declarations: [\n    NovoHorizontalStepper,\n    NovoVerticalStepper,\n    NovoStep,\n    NovoStepLabel,\n    NovoStepper,\n    NovoStepHeader,\n    NovoStepStatus,\n    NovoStepperNext,\n    NovoStepperPrevious,\n  ],\n})\nexport class NovoStepperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i4.NovoStepStatus","i3.NovoStepHeader"],"mappings":"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"}