{"version":3,"file":"ng-zorro-antd-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/ng-zorro-antd-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 NzTimelineMode = typeof TimelineModes[number];\n\nconst TimelinePositions = ['left', 'right'] as const;\nexport type NzTimelinePosition = typeof TimelinePositions[number];\n\nexport const TimelineTimeDefaultColors = ['red', 'blue', 'green', 'grey', 'gray'] as const;\nexport type NzTimelineItemColor = 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 */\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 { NzTimelineItemColor, NzTimelinePosition, 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: 'nz-timeline-item, [nz-timeline-item]',\n  exportAs: 'nzTimelineItem',\n  template: `\n    <ng-template #template>\n      <li\n        class=\"ant-timeline-item\"\n        [class.ant-timeline-item-right]=\"(nzPosition || position) === 'right'\"\n        [class.ant-timeline-item-left]=\"(nzPosition || position) === 'left'\"\n        [class.ant-timeline-item-last]=\"isLast\"\n      >\n        <div *ngIf=\"nzLabel\" class=\"ant-timeline-item-label\">\n          <ng-container *nzStringTemplateOutlet=\"nzLabel\">{{ nzLabel }}</ng-container>\n        </div>\n        <div class=\"ant-timeline-item-tail\"></div>\n        <div\n          class=\"ant-timeline-item-head\"\n          [class.ant-timeline-item-head-red]=\"nzColor === 'red'\"\n          [class.ant-timeline-item-head-blue]=\"nzColor === 'blue'\"\n          [class.ant-timeline-item-head-green]=\"nzColor === 'green'\"\n          [class.ant-timeline-item-head-gray]=\"nzColor === 'gray'\"\n          [class.ant-timeline-item-head-custom]=\"!!nzDot\"\n          [style.border-color]=\"borderColor\"\n        >\n          <ng-container *nzStringTemplateOutlet=\"nzDot\">{{ nzDot }}</ng-container>\n        </div>\n        <div class=\"ant-timeline-item-content\">\n          <ng-content></ng-content>\n        </div>\n      </li>\n    </ng-template>\n  `\n})\nexport class NzTimelineItemComponent implements OnChanges {\n  @ViewChild('template', { static: false }) template!: TemplateRef<void>;\n\n  @Input() nzPosition?: NzTimelinePosition;\n  @Input() nzColor: NzTimelineItemColor = 'blue';\n  @Input() nzDot?: string | TemplateRef<void>;\n  @Input() nzLabel?: string | TemplateRef<void>;\n\n  isLast = false;\n  borderColor: string | null = null;\n  position?: NzTimelinePosition;\n\n  constructor(private cdr: ChangeDetectorRef, private timelineService: TimelineService) {}\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.timelineService.markForCheck();\n    if (changes.nzColor) {\n      this.updateCustomColor();\n    }\n  }\n\n  detectChanges(): void {\n    this.cdr.detectChanges();\n  }\n\n  private updateCustomColor(): void {\n    this.borderColor = isDefaultColor(this.nzColor) ? null : this.nzColor;\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 { Direction, Directionality } from '@angular/cdk/bidi';\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 { NzTimelineItemComponent } from './timeline-item.component';\nimport { TimelineService } from './timeline.service';\nimport { NzTimelineMode, NzTimelinePosition } from './typings';\n\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  preserveWhitespaces: false,\n  selector: 'nz-timeline',\n  providers: [TimelineService],\n  exportAs: 'nzTimeline',\n  template: `\n    <ul\n      class=\"ant-timeline\"\n      [class.ant-timeline-label]=\"hasLabelItem\"\n      [class.ant-timeline-right]=\"!hasLabelItem && nzMode === 'right'\"\n      [class.ant-timeline-alternate]=\"nzMode === 'alternate' || nzMode === 'custom'\"\n      [class.ant-timeline-pending]=\"!!nzPending\"\n      [class.ant-timeline-reverse]=\"nzReverse\"\n      [class.ant-timeline-rtl]=\"dir === 'rtl'\"\n    >\n      <!-- pending dot (reversed) -->\n      <ng-container *ngIf=\"nzReverse\" [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=\"!nzReverse\" [ngTemplateOutlet]=\"pendingTemplate\"></ng-container>\n      <!-- pending dot -->\n    </ul>\n    <ng-template #pendingTemplate>\n      <li *ngIf=\"nzPending\" class=\"ant-timeline-item ant-timeline-item-pending\">\n        <div class=\"ant-timeline-item-tail\"></div>\n        <div class=\"ant-timeline-item-head ant-timeline-item-head-custom ant-timeline-item-head-blue\">\n          <ng-container *nzStringTemplateOutlet=\"nzPendingDot\">\n            {{ nzPendingDot }}\n            <span *ngIf=\"!nzPendingDot\" nz-icon nzType=\"loading\"></span>\n          </ng-container>\n        </div>\n        <div class=\"ant-timeline-item-content\">\n          <ng-container *nzStringTemplateOutlet=\"nzPending\">\n            {{ isPendingBoolean ? '' : nzPending }}\n          </ng-container>\n        </div>\n      </li>\n    </ng-template>\n    <!-- Grasp items -->\n    <ng-content></ng-content>\n  `\n})\nexport class NzTimelineComponent implements AfterContentInit, OnChanges, OnDestroy, OnInit {\n  @ContentChildren(NzTimelineItemComponent) listOfItems!: QueryList<NzTimelineItemComponent>;\n\n  @Input() nzMode: NzTimelineMode = 'left';\n  @Input() nzPending?: string | boolean | TemplateRef<void>;\n  @Input() nzPendingDot?: string | TemplateRef<void>;\n  @Input() nzReverse: boolean = false;\n\n  isPendingBoolean: boolean = false;\n  timelineItems: NzTimelineItemComponent[] = [];\n  dir: Direction = 'ltr';\n  hasLabelItem = false;\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 { nzMode, nzReverse, nzPending } = changes;\n\n    if (simpleChangeActivated(nzMode) || simpleChangeActivated(nzReverse)) {\n      this.updateChildren();\n    }\n\n    if (nzPending) {\n      this.isPendingBoolean = nzPending.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      let hasLabelItem = false;\n\n      this.listOfItems.forEach((item: NzTimelineItemComponent, index: number) => {\n        item.isLast = !this.nzReverse ? index === length - 1 : index === 0;\n        item.position = getInferredTimelineItemPosition(index, this.nzMode);\n\n        if (!hasLabelItem && item.nzLabel) {\n          hasLabelItem = true;\n        }\n\n        item.detectChanges();\n      });\n\n      this.timelineItems = this.nzReverse ? this.listOfItems.toArray().reverse() : this.listOfItems.toArray();\n      this.hasLabelItem = hasLabelItem;\n    } else {\n      this.timelineItems = [];\n      this.hasLabelItem = false;\n    }\n\n    this.cdr.markForCheck();\n  }\n}\n\nfunction simpleChangeActivated(simpleChange?: SimpleChange): boolean {\n  return !!(simpleChange && (simpleChange.previousValue !== simpleChange.currentValue || simpleChange.isFirstChange()));\n}\n\nfunction getInferredTimelineItemPosition(index: number, mode: NzTimelineMode): NzTimelinePosition | 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 */\n\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzTimelineItemComponent } from './timeline-item.component';\nimport { NzTimelineComponent } from './timeline.component';\n\n@NgModule({\n  declarations: [NzTimelineItemComponent, NzTimelineComponent],\n  exports: [NzTimelineItemComponent, NzTimelineComponent],\n  imports: [BidiModule, CommonModule, PlatformModule, NzIconModule, NzOutletModule]\n})\nexport class NzTimelineModule {}\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 { NzTimelineMode, NzTimelinePosition, NzTimelineItemColor } from './typings';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.TimelineService","i2","i3","i5"],"mappings":"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"}