{"version":3,"file":"ui-vts-kit-ng-vts-timeline.mjs","sources":["../../components/timeline/typings.ts","../../components/timeline/timeline.service.ts","../../components/timeline/timeline-item.component.ts","../../components/timeline/timeline.component.ts","../../components/timeline/timeline.module.ts","../../components/timeline/public-api.ts","../../components/timeline/ui-vts-kit-ng-vts-timeline.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\nconst TimelineModes = ['left', 'alternate', 'right', 'custom'] as const;\nexport type VtsTimelineMode = (typeof TimelineModes)[number];\n\nconst TimelinePositions = ['left', 'right'] as const;\nexport type VtsTimelinePosition = (typeof TimelinePositions)[number];\n\nexport const TimelineTimeDefaultColors = ['red', 'blue', 'green', 'grey', 'gray'] as const;\nexport type VtsTimelineItemColor = (typeof TimelineTimeDefaultColors)[number];\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 */\nimport { Injectable } from '@angular/core';\nimport { ReplaySubject } from 'rxjs';\n\n@Injectable()\nexport class TimelineService {\n  check$ = new ReplaySubject(1);\n  markForCheck(): void {\n    this.check$.next();\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  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  Input,\n  OnChanges,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\n\nimport { TimelineService } from './timeline.service';\nimport { VtsTimelineItemColor, VtsTimelinePosition, TimelineTimeDefaultColors } from './typings';\n\nfunction isDefaultColor(color?: string): boolean {\n  return TimelineTimeDefaultColors.findIndex(i => i === color) !== -1;\n}\n\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  preserveWhitespaces: false,\n  selector: 'vts-timeline-item, [vts-timeline-item]',\n  exportAs: 'vtsTimelineItem',\n  template: `\n    <ng-template #template>\n      <li\n        class=\"vts-timeline-item\"\n        [class.vts-timeline-item-right]=\"(vtsPosition || position) === 'right'\"\n        [class.vts-timeline-item-left]=\"(vtsPosition || position) === 'left'\"\n        [class.vts-timeline-item-last]=\"isLast\"\n      >\n        <div class=\"vts-timeline-item-tail\"></div>\n        <div\n          class=\"vts-timeline-item-head\"\n          [class.vts-timeline-item-head-red]=\"vtsColor === 'red'\"\n          [class.vts-timeline-item-head-blue]=\"vtsColor === 'blue'\"\n          [class.vts-timeline-item-head-green]=\"vtsColor === 'green'\"\n          [class.vts-timeline-item-head-gray]=\"vtsColor === 'gray'\"\n          [class.vts-timeline-item-head-custom]=\"!!vtsDot\"\n          [style.border-color]=\"borderColor\"\n        >\n          <ng-container *vtsStringTemplateOutlet=\"vtsDot\">\n            {{ vtsDot }}\n          </ng-container>\n        </div>\n        <div class=\"vts-timeline-item-content\">\n          <ng-content></ng-content>\n        </div>\n      </li>\n    </ng-template>\n  `\n})\nexport class VtsTimelineItemComponent implements OnChanges {\n  @ViewChild('template', { static: false }) template!: TemplateRef<void>;\n\n  @Input() vtsPosition?: VtsTimelinePosition;\n  @Input() vtsColor: VtsTimelineItemColor = 'blue';\n  @Input() vtsDot?: string | TemplateRef<void>;\n\n  isLast = false;\n  borderColor: string | null = null;\n  position?: VtsTimelinePosition;\n\n  constructor(private cdr: ChangeDetectorRef, private timelineService: TimelineService) {}\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.timelineService.markForCheck();\n    if (changes.vtsColor) {\n      this.updateCustomColor();\n    }\n  }\n\n  detectChanges(): void {\n    this.cdr.detectChanges();\n  }\n\n  private updateCustomColor(): void {\n    this.borderColor = isDefaultColor(this.vtsColor) ? null : this.vtsColor;\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  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  QueryList,\n  SimpleChange,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { VtsTimelineItemComponent } from './timeline-item.component';\nimport { TimelineService } from './timeline.service';\nimport { VtsTimelineMode, VtsTimelinePosition } from './typings';\n\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  preserveWhitespaces: false,\n  selector: 'vts-timeline',\n  providers: [TimelineService],\n  exportAs: 'vtsTimeline',\n  template: `\n    <ul\n      class=\"vts-timeline\"\n      [class.vts-timeline-right]=\"vtsMode === 'right'\"\n      [class.vts-timeline-alternate]=\"vtsMode === 'alternate' || vtsMode === 'custom'\"\n      [class.vts-timeline-pending]=\"!!vtsPending\"\n      [class.vts-timeline-reverse]=\"vtsReverse\"\n      [class.vts-timeline-rtl]=\"dir === 'rtl'\"\n    >\n      <!-- pending dot (reversed) -->\n      <ng-container *ngIf=\"vtsReverse\" [ngTemplateOutlet]=\"pendingTemplate\"></ng-container>\n      <!-- timeline items -->\n      <ng-container *ngFor=\"let item of timelineItems\">\n        <ng-template [ngTemplateOutlet]=\"item.template\"></ng-template>\n      </ng-container>\n      <ng-container *ngIf=\"!vtsReverse\" [ngTemplateOutlet]=\"pendingTemplate\"></ng-container>\n      <!-- pending dot -->\n    </ul>\n    <ng-template #pendingTemplate>\n      <li *ngIf=\"vtsPending\" class=\"vts-timeline-item vts-timeline-item-pending\">\n        <div class=\"vts-timeline-item-tail\"></div>\n        <div\n          class=\"vts-timeline-item-head vts-timeline-item-head-custom vts-timeline-item-head-blue\"\n        >\n          <ng-container *vtsStringTemplateOutlet=\"vtsPendingDot\">\n            {{ vtsPendingDot }}\n            <i *ngIf=\"!vtsPendingDot\" vts-icon vtsType=\"Sync\"></i>\n          </ng-container>\n        </div>\n        <div class=\"vts-timeline-item-content\">\n          <ng-container *vtsStringTemplateOutlet=\"vtsPending\">\n            {{ isPendingBoolean ? '' : vtsPending }}\n          </ng-container>\n        </div>\n      </li>\n    </ng-template>\n    <!-- Grasp items -->\n    <ng-content></ng-content>\n  `\n})\nexport class VtsTimelineComponent implements AfterContentInit, OnChanges, OnDestroy, OnInit {\n  @ContentChildren(VtsTimelineItemComponent)\n  listOfItems!: QueryList<VtsTimelineItemComponent>;\n\n  @Input() vtsMode: VtsTimelineMode = 'left';\n  @Input() vtsPending?: string | boolean | TemplateRef<void>;\n  @Input() vtsPendingDot?: string | TemplateRef<void>;\n  @Input() vtsReverse: boolean = false;\n\n  isPendingBoolean: boolean = false;\n  timelineItems: VtsTimelineItemComponent[] = [];\n  dir: Direction = 'ltr';\n\n  private destroy$ = new Subject<void>();\n\n  constructor(\n    private cdr: ChangeDetectorRef,\n    private timelineService: TimelineService,\n    @Optional() private directionality: Directionality\n  ) {}\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { vtsMode, vtsReverse, vtsPending } = changes;\n\n    if (simpleChangeActivated(vtsMode) || simpleChangeActivated(vtsReverse)) {\n      this.updateChildren();\n    }\n\n    if (vtsPending) {\n      this.isPendingBoolean = vtsPending.currentValue === true;\n    }\n  }\n\n  ngOnInit(): void {\n    this.timelineService.check$.pipe(takeUntil(this.destroy$)).subscribe(() => {\n      this.cdr.markForCheck();\n    });\n\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n      this.dir = direction;\n      this.cdr.detectChanges();\n    });\n\n    this.dir = this.directionality.value;\n  }\n\n  ngAfterContentInit(): void {\n    this.updateChildren();\n\n    this.listOfItems.changes.pipe(takeUntil(this.destroy$)).subscribe(() => {\n      this.updateChildren();\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n\n  private updateChildren(): void {\n    if (this.listOfItems && this.listOfItems.length) {\n      const length = this.listOfItems.length;\n\n      this.listOfItems.forEach((item, index) => {\n        item.isLast = !this.vtsReverse ? index === length - 1 : index === 0;\n        item.position = getInferredTimelineItemPosition(index, this.vtsMode);\n        item.detectChanges();\n      });\n      this.timelineItems = this.vtsReverse\n        ? this.listOfItems.toArray().reverse()\n        : this.listOfItems.toArray();\n    }\n    this.cdr.markForCheck();\n  }\n}\n\nfunction simpleChangeActivated(simpleChange?: SimpleChange): boolean {\n  return !!(\n    simpleChange &&\n    (simpleChange.previousValue !== simpleChange.currentValue || simpleChange.isFirstChange())\n  );\n}\n\nfunction getInferredTimelineItemPosition(\n  index: number,\n  mode: VtsTimelineMode\n): VtsTimelinePosition | undefined {\n  return mode === 'custom'\n    ? undefined\n    : mode === 'left'\n    ? 'left'\n    : mode === 'right'\n    ? 'right'\n    : mode === 'alternate' && index % 2 === 0\n    ? 'left'\n    : 'right';\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 */\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { VtsOutletModule } from '@ui-vts-kit/ng-vts/core/outlet';\nimport { VtsIconModule } from '@ui-vts-kit/ng-vts/icon';\n\nimport { VtsTimelineItemComponent } from './timeline-item.component';\nimport { VtsTimelineComponent } from './timeline.component';\n\n@NgModule({\n  declarations: [VtsTimelineItemComponent, VtsTimelineComponent],\n  exports: [VtsTimelineItemComponent, VtsTimelineComponent],\n  imports: [BidiModule, CommonModule, PlatformModule, VtsIconModule, VtsOutletModule]\n})\nexport class VtsTimelineModule {}\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 './timeline-item.component';\nexport * from './timeline.component';\nexport * from './timeline.module';\nexport * from './timeline.service';\nexport { VtsTimelineMode, VtsTimelinePosition, VtsTimelineItemColor } from './typings';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.TimelineService","i2","i5"],"mappings":"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"}