{"version":3,"file":"ui-vts-kit-ng-vts-steps.mjs","sources":["../../components/steps/step.component.ts","../../components/steps/steps.component.ts","../../components/steps/steps.module.ts","../../components/steps/public-api.ts","../../components/steps/ui-vts-kit-ng-vts-steps.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  Input,\n  OnDestroy,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { BooleanInput, NgClassType } from '@ui-vts-kit/ng-vts/core/types';\nimport { InputBoolean } from '@ui-vts-kit/ng-vts/core/util';\n\nimport { Subject } from 'rxjs';\n\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  selector: 'vts-step',\n  exportAs: 'vtsStep',\n  preserveWhitespaces: false,\n  template: `\n    <div\n      class=\"vts-steps-item-container\"\n      [attr.role]=\"clickable && !vtsDisabled ? 'button' : null\"\n      [tabindex]=\"clickable && !vtsDisabled ? 0 : null\"\n      (click)=\"onClick()\"\n    >\n      <div class=\"vts-steps-item-tail\" *ngIf=\"last !== true\"></div>\n      <div class=\"vts-steps-item-icon\">\n        <ng-template [ngIf]=\"!showProcessDot\">\n          <span class=\"vts-steps-icon\" *ngIf=\"vtsStatus === 'finish' && !vtsIcon\">\n            <i vts-icon vtsType=\"check\"></i>\n          </span>\n          <span class=\"vts-steps-icon\" *ngIf=\"vtsStatus === 'error'\">\n            <i vts-icon vtsType=\"Close\"></i>\n          </span>\n          <span\n            class=\"vts-steps-icon\"\n            *ngIf=\"(vtsStatus === 'process' || vtsStatus === 'wait') && !vtsIcon\"\n          >\n            {{ index + 1 }}\n          </span>\n          <span class=\"vts-steps-icon\" *ngIf=\"vtsIcon\">\n            <ng-container *vtsStringTemplateOutlet=\"vtsIcon; let icon\">\n              <i vts-icon [vtsType]=\"!oldAPIIcon && icon\" [ngClass]=\"oldAPIIcon && icon\"></i>\n            </ng-container>\n          </span>\n        </ng-template>\n        <ng-template [ngIf]=\"showProcessDot\">\n          <span class=\"vts-steps-icon\">\n            <ng-template #processDotTemplate>\n              <span class=\"vts-steps-icon-dot\"></span>\n            </ng-template>\n            <ng-template\n              [ngTemplateOutlet]=\"customProcessTemplate || processDotTemplate\"\n              [ngTemplateOutletContext]=\"{\n                $implicit: processDotTemplate,\n                status: vtsStatus,\n                index: index\n              }\"\n            ></ng-template>\n          </span>\n        </ng-template>\n      </div>\n      <div class=\"vts-steps-item-content\">\n        <div class=\"vts-steps-item-title\">\n          <ng-container *vtsStringTemplateOutlet=\"vtsTitle\">\n            {{ vtsTitle }}\n          </ng-container>\n          <div *ngIf=\"vtsSubtitle\" class=\"vts-steps-item-subtitle\">\n            <ng-container *vtsStringTemplateOutlet=\"vtsSubtitle\">\n              {{ vtsSubtitle }}\n            </ng-container>\n          </div>\n        </div>\n        <div class=\"vts-steps-item-description\">\n          <ng-container *vtsStringTemplateOutlet=\"vtsDescription\">\n            {{ vtsDescription }}\n          </ng-container>\n        </div>\n      </div>\n    </div>\n  `,\n  host: {\n    class: 'vts-steps-item',\n    '[class.vts-steps-item-wait]': 'vtsStatus === \"wait\"',\n    '[class.vts-steps-item-process]': 'vtsStatus === \"process\"',\n    '[class.vts-steps-item-finish]': 'vtsStatus === \"finish\"',\n    '[class.vts-steps-item-error]': 'vtsStatus === \"error\"',\n    '[class.vts-steps-item-active]': 'currentIndex === index',\n    '[class.vts-steps-item-disabled]': 'vtsDisabled',\n    '[class.vts-steps-item-custom]': '!!vtsIcon',\n    '[class.vts-steps-next-error]': '(outStatus === \"error\") && (currentIndex === index + 1)'\n  }\n})\nexport class VtsStepComponent implements OnDestroy {\n  static ngAcceptInputType_vtsDisabled: BooleanInput;\n\n  @ViewChild('processDotTemplate', { static: false })\n  processDotTemplate?: TemplateRef<void>;\n\n  @Input() vtsTitle?: string | TemplateRef<void>;\n  @Input() vtsSubtitle?: string | TemplateRef<void>;\n  @Input() vtsDescription?: string | TemplateRef<void>;\n  @Input() @InputBoolean() vtsDisabled = false;\n\n  @Input()\n  get vtsStatus(): string {\n    return this._status;\n  }\n\n  set vtsStatus(status: string) {\n    this._status = status;\n    this.isCustomStatus = true;\n  }\n\n  isCustomStatus = false;\n  private _status = 'wait';\n\n  @Input()\n  get vtsIcon(): NgClassType | TemplateRef<void> | undefined {\n    return this._icon;\n  }\n\n  set vtsIcon(value: NgClassType | TemplateRef<void> | undefined) {\n    if (!(value instanceof TemplateRef)) {\n      this.oldAPIIcon = typeof value === 'string' && value.indexOf('vtsicon') > -1;\n    } else {\n    }\n    this._icon = value;\n  }\n\n  oldAPIIcon = true;\n  private _icon?: NgClassType | TemplateRef<void>;\n\n  customProcessTemplate?: TemplateRef<{\n    $implicit: TemplateRef<void>;\n    status: string;\n    index: number;\n  }>; // Set by parent.\n  direction = 'horizontal';\n  index = 0;\n  last = false;\n  outStatus = 'process';\n  showProcessDot = false;\n  clickable = false;\n  click$ = new Subject<number>();\n\n  get currentIndex(): number {\n    return this._currentIndex;\n  }\n\n  set currentIndex(current: number) {\n    this._currentIndex = current;\n    if (!this.isCustomStatus) {\n      this._status =\n        current > this.index ? 'finish' : current === this.index ? this.outStatus || '' : 'wait';\n    }\n  }\n\n  private _currentIndex = 0;\n\n  constructor(private cdr: ChangeDetectorRef) {}\n\n  onClick(): void {\n    if (this.clickable && this.currentIndex !== this.index && !this.vtsDisabled) {\n      this.click$.next(this.index);\n    }\n  }\n\n  enable(): void {\n    this.vtsDisabled = false;\n    this.cdr.markForCheck();\n  }\n\n  disable(): void {\n    this.vtsDisabled = true;\n    this.cdr.markForCheck();\n  }\n\n  markForCheck(): void {\n    this.cdr.markForCheck();\n  }\n\n  ngOnDestroy(): void {\n    this.click$.complete();\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Output,\n  QueryList,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\nimport { toBoolean } from '@ui-vts-kit/ng-vts/core/util';\nimport { merge, Subject, Subscription } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\n\nimport { BooleanInput, NgClassType, VtsSizeDSType } from '@ui-vts-kit/ng-vts/core/types';\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { VtsStepComponent } from './step.component';\n\nexport type VtsDirectionType = 'horizontal' | 'vertical';\nexport type VtsStatusType = 'wait' | 'process' | 'finish' | 'error';\nexport type vtsProgressDotTemplate = TemplateRef<{\n  $implicit: TemplateRef<void>;\n  status: string;\n  index: number;\n}>;\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  preserveWhitespaces: false,\n  selector: 'vts-steps',\n  exportAs: 'vtsSteps',\n  template: `\n    <div class=\"vts-steps\" [ngClass]=\"classMap\">\n      <ng-content></ng-content>\n    </div>\n  `\n})\nexport class VtsStepsComponent implements OnChanges, OnInit, OnDestroy, AfterContentInit {\n  static ngAcceptInputType_vtsProgressDot: BooleanInput | vtsProgressDotTemplate | undefined | null;\n\n  @ContentChildren(VtsStepComponent) steps!: QueryList<VtsStepComponent>;\n\n  @Input() vtsCurrent = 0;\n  @Input() vtsDirection: VtsDirectionType = 'horizontal';\n  @Input() vtsLabelPlacement: 'horizontal' | 'vertical' = 'horizontal';\n  @Input() vtsType: 'default' | 'navigation' = 'default';\n  @Input() vtsSize: VtsSizeDSType = 'md';\n  @Input() vtsStartIndex = 0;\n  @Input() vtsStatus: VtsStatusType = 'process';\n\n  @Input()\n  set vtsProgressDot(value: boolean | vtsProgressDotTemplate) {\n    if (value instanceof TemplateRef) {\n      this.showProcessDot = true;\n      this.customProcessDotTemplate = value;\n    } else {\n      this.showProcessDot = toBoolean(value);\n    }\n    this.updateChildrenSteps();\n  }\n\n  @Output() readonly vtsIndexChange = new EventEmitter<number>();\n\n  private destroy$ = new Subject<void>();\n  private indexChangeSubscription?: Subscription;\n\n  showProcessDot = false;\n  customProcessDotTemplate?: TemplateRef<{\n    $implicit: TemplateRef<void>;\n    status: string;\n    index: number;\n  }>;\n  classMap: NgClassType = {};\n  dir: Direction = 'ltr';\n\n  constructor(private cdr: ChangeDetectorRef, @Optional() private directionality: Directionality) {\n    this.setClassMap();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes.vtsStartIndex || changes.vtsDirection || changes.vtsStatus || changes.vtsCurrent) {\n      this.updateChildrenSteps();\n    }\n    if (\n      changes.vtsDirection ||\n      changes.vtsProgressDot ||\n      changes.vtsLabelPlacement ||\n      changes.vtsSize\n    ) {\n      this.setClassMap();\n    }\n  }\n\n  ngOnInit(): void {\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n      this.dir = direction;\n      this.setClassMap();\n      this.cdr.detectChanges();\n    });\n\n    this.dir = this.directionality.value;\n    this.setClassMap();\n    this.updateChildrenSteps();\n  }\n\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n    if (this.indexChangeSubscription) {\n      this.indexChangeSubscription.unsubscribe();\n    }\n  }\n\n  ngAfterContentInit(): void {\n    if (this.steps) {\n      this.steps.changes.pipe(startWith(null), takeUntil(this.destroy$)).subscribe(() => {\n        this.updateChildrenSteps();\n      });\n    }\n  }\n\n  private updateChildrenSteps(): void {\n    if (this.steps) {\n      const length = this.steps.length;\n      this.steps.toArray().forEach((step, index) => {\n        Promise.resolve().then(() => {\n          step.outStatus = this.vtsStatus;\n          step.showProcessDot = this.showProcessDot;\n          if (this.customProcessDotTemplate) {\n            step.customProcessTemplate = this.customProcessDotTemplate;\n          }\n          step.clickable = this.vtsIndexChange.observers.length > 0;\n          step.direction = this.vtsDirection;\n          step.index = index + this.vtsStartIndex;\n          step.currentIndex = this.vtsCurrent;\n          step.last = length === index + 1;\n          step.markForCheck();\n        });\n      });\n      if (this.indexChangeSubscription) {\n        this.indexChangeSubscription.unsubscribe();\n      }\n      this.indexChangeSubscription = merge(...this.steps.map(step => step.click$)).subscribe(\n        index => this.vtsIndexChange.emit(index)\n      );\n    }\n  }\n\n  private setClassMap(): void {\n    this.classMap = {\n      [`vts-steps-${this.vtsDirection}`]: true,\n      [`vts-steps-label-horizontal`]: this.vtsDirection === 'horizontal',\n      [`vts-steps-label-vertical`]:\n        (this.showProcessDot || this.vtsLabelPlacement === 'vertical') &&\n        this.vtsDirection === 'horizontal',\n      [`vts-steps-dot`]: this.showProcessDot,\n      ['vts-steps-small']: this.vtsSize === 'sm',\n      ['vts-steps-navigation']: this.vtsType === 'navigation',\n      ['vts-steps-rtl']: this.dir === 'rtl'\n    };\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { VtsOutletModule } from '@ui-vts-kit/ng-vts/core/outlet';\nimport { VtsIconModule } from '@ui-vts-kit/ng-vts/icon';\n\nimport { VtsStepComponent } from './step.component';\nimport { VtsStepsComponent } from './steps.component';\n\n@NgModule({\n  imports: [BidiModule, CommonModule, VtsIconModule, VtsOutletModule],\n  exports: [VtsStepsComponent, VtsStepComponent],\n  declarations: [VtsStepsComponent, VtsStepComponent]\n})\nexport class VtsStepsModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './steps.component';\nexport * from './step.component';\nexport * from './steps.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}