{"version":3,"file":"vts-voffice-ng-vts-statistic.mjs","sources":["../../components/statistic/statistic-number.component.ts","../../components/statistic/statistic.component.ts","../../components/statistic/countdown.component.ts","../../components/statistic/statistic.module.ts","../../components/statistic/public-api.ts","../../components/statistic/vts-voffice-ng-vts-statistic.ts"],"sourcesContent":["/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport { getLocaleNumberSymbol, NumberSymbol } from '@angular/common';\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  Inject,\r\n  Input,\r\n  LOCALE_ID,\r\n  OnChanges,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsStatisticValueType } from './typings';\r\n\r\n@Component({\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  preserveWhitespaces: false,\r\n  selector: 'vts-statistic-number',\r\n  exportAs: 'vtsStatisticNumber',\r\n  template: `\r\n    <span class=\"vts-statistic-content-value\">\r\n      <ng-container\r\n        *ngIf=\"vtsValueTemplate\"\r\n        [ngTemplateOutlet]=\"vtsValueTemplate\"\r\n        [ngTemplateOutletContext]=\"{ $implicit: vtsValue }\"\r\n      ></ng-container>\r\n      <ng-container *ngIf=\"!vtsValueTemplate\">\r\n        <span *ngIf=\"displayInt\" class=\"vts-statistic-content-value-int\">\r\n          {{ displayInt }}\r\n        </span>\r\n        <span *ngIf=\"displayDecimal\" class=\"vts-statistic-content-value-decimal\">\r\n          {{ displayDecimal }}\r\n        </span>\r\n      </ng-container>\r\n    </span>\r\n  `\r\n})\r\nexport class VtsStatisticNumberComponent implements OnChanges {\r\n  @Input() vtsValue?: VtsStatisticValueType;\r\n  @Input() vtsValueTemplate?: TemplateRef<{ $implicit: VtsStatisticValueType }>;\r\n\r\n  displayInt = '';\r\n  displayDecimal = '';\r\n\r\n  constructor(@Inject(LOCALE_ID) private locale_id: string) {}\r\n\r\n  ngOnChanges(): void {\r\n    this.formatNumber();\r\n  }\r\n\r\n  private formatNumber(): void {\r\n    const decimalSeparator: string =\r\n      typeof this.vtsValue === 'number'\r\n        ? '.'\r\n        : getLocaleNumberSymbol(this.locale_id, NumberSymbol.Decimal);\r\n    const value = String(this.vtsValue);\r\n    const [int, decimal] = value.split(decimalSeparator);\r\n\r\n    this.displayInt = int;\r\n    this.displayDecimal = decimal ? `${decimalSeparator}${decimal}` : '';\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport { Direction, Directionality } from '@angular/cdk/bidi';\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  Input,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { NgStyleInterface } from '@vts-voffice/ng-vts/core/types';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { VtsStatisticValueType } from './typings';\r\n\r\n@Component({\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  selector: 'vts-statistic',\r\n  exportAs: 'vtsStatistic',\r\n  template: `\r\n    <div class=\"vts-statistic\" [class.vts-statistic-rtl]=\"dir === 'rtl'\">\r\n      <div class=\"vts-statistic-title\">\r\n        <ng-container *vtsStringTemplateOutlet=\"vtsTitle\">\r\n          {{ vtsTitle }}\r\n        </ng-container>\r\n      </div>\r\n      <div class=\"vts-statistic-content\" [ngStyle]=\"vtsValueStyle\">\r\n        <span *ngIf=\"vtsPrefix\" class=\"vts-statistic-content-prefix\">\r\n          <ng-container *vtsStringTemplateOutlet=\"vtsPrefix\">\r\n            {{ vtsPrefix }}\r\n          </ng-container>\r\n        </span>\r\n        <vts-statistic-number\r\n          [vtsValue]=\"vtsValue\"\r\n          [vtsValueTemplate]=\"vtsValueTemplate\"\r\n        ></vts-statistic-number>\r\n        <span *ngIf=\"vtsSuffix\" class=\"vts-statistic-content-suffix\">\r\n          <ng-container *vtsStringTemplateOutlet=\"vtsSuffix\">\r\n            {{ vtsSuffix }}\r\n          </ng-container>\r\n        </span>\r\n      </div>\r\n    </div>\r\n  `\r\n})\r\nexport class VtsStatisticComponent implements OnDestroy, OnInit {\r\n  @Input() vtsPrefix?: string | TemplateRef<void>;\r\n  @Input() vtsSuffix?: string | TemplateRef<void>;\r\n  @Input() vtsTitle?: string | TemplateRef<void>;\r\n  @Input() vtsValue?: VtsStatisticValueType;\r\n  @Input() vtsValueStyle: NgStyleInterface = {};\r\n  @Input() vtsValueTemplate?: TemplateRef<{ $implicit: VtsStatisticValueType }>;\r\n  dir: Direction = 'ltr';\r\n\r\n  private destroy$ = new Subject<void>();\r\n\r\n  constructor(\r\n    protected cdr: ChangeDetectorRef,\r\n    @Optional() private directionality: Directionality\r\n  ) {}\r\n\r\n  ngOnInit(): void {\r\n    this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\r\n      this.dir = direction;\r\n      this.cdr.detectChanges();\r\n    });\r\n\r\n    this.dir = this.directionality.value;\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.destroy$.next();\r\n    this.destroy$.complete();\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport { Platform } from '@angular/cdk/platform';\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  NgZone,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  Output,\r\n  SimpleChanges,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { interval, Subscription } from 'rxjs';\r\n\r\nimport { Directionality } from '@angular/cdk/bidi';\r\nimport { VtsStatisticComponent } from './statistic.component';\r\n\r\nconst REFRESH_INTERVAL = 1000 / 30;\r\n\r\n@Component({\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  selector: 'vts-countdown',\r\n  exportAs: 'vtsCountdown',\r\n  template: `\r\n    <vts-statistic\r\n      [vtsValue]=\"diff\"\r\n      [vtsValueStyle]=\"vtsValueStyle\"\r\n      [vtsValueTemplate]=\"vtsValueTemplate || countDownTpl\"\r\n      [vtsTitle]=\"vtsTitle\"\r\n      [vtsPrefix]=\"vtsPrefix\"\r\n      [vtsSuffix]=\"vtsSuffix\"\r\n    ></vts-statistic>\r\n\r\n    <ng-template #countDownTpl>\r\n      {{ diff | vtsTimeRange : vtsFormat }}\r\n    </ng-template>\r\n  `\r\n})\r\nexport class VtsCountdownComponent\r\n  extends VtsStatisticComponent\r\n  implements OnInit, OnChanges, OnDestroy\r\n{\r\n  @Input() vtsFormat: string = 'HH:mm:ss';\r\n  @Output() readonly vtsCountdownFinish = new EventEmitter<void>();\r\n\r\n  diff!: number;\r\n\r\n  private target: number = 0;\r\n  private updater_?: Subscription | null;\r\n\r\n  constructor(\r\n    cdr: ChangeDetectorRef,\r\n    private ngZone: NgZone,\r\n    private platform: Platform,\r\n    @Optional() directionality: Directionality\r\n  ) {\r\n    super(cdr, directionality);\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    if (changes.vtsValue) {\r\n      this.target = Number(changes.vtsValue.currentValue);\r\n      if (!changes.vtsValue.isFirstChange()) {\r\n        this.syncTimer();\r\n      }\r\n    }\r\n  }\r\n\r\n  override ngOnInit(): void {\r\n    super.ngOnInit();\r\n    this.syncTimer();\r\n  }\r\n\r\n  override ngOnDestroy(): void {\r\n    this.stopTimer();\r\n  }\r\n\r\n  syncTimer(): void {\r\n    if (this.target >= Date.now()) {\r\n      this.startTimer();\r\n    } else {\r\n      this.stopTimer();\r\n    }\r\n  }\r\n\r\n  startTimer(): void {\r\n    if (this.platform.isBrowser) {\r\n      this.ngZone.runOutsideAngular(() => {\r\n        this.stopTimer();\r\n        this.updater_ = interval(REFRESH_INTERVAL).subscribe(() => {\r\n          this.updateValue();\r\n          this.cdr.detectChanges();\r\n        });\r\n      });\r\n    }\r\n  }\r\n\r\n  stopTimer(): void {\r\n    if (this.updater_) {\r\n      this.updater_.unsubscribe();\r\n      this.updater_ = null;\r\n    }\r\n  }\r\n\r\n  /**\r\n   * Update time that should be displayed on the screen.\r\n   */\r\n  protected updateValue(): void {\r\n    this.diff = Math.max(this.target - Date.now(), 0);\r\n\r\n    if (this.diff === 0) {\r\n      this.stopTimer();\r\n      this.vtsCountdownFinish.emit();\r\n    }\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\nimport { BidiModule } from '@angular/cdk/bidi';\r\nimport { PlatformModule } from '@angular/cdk/platform';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { VtsOutletModule } from '@vts-voffice/ng-vts/core/outlet';\r\nimport { VtsPipesModule as VtsPipesModuleFromCore } from '@vts-voffice/ng-vts/core/pipe';\r\n\r\nimport { VtsCountdownComponent } from './countdown.component';\r\nimport { VtsStatisticNumberComponent } from './statistic-number.component';\r\nimport { VtsStatisticComponent } from './statistic.component';\r\n\r\n@NgModule({\r\n  imports: [BidiModule, CommonModule, PlatformModule, VtsOutletModule, VtsPipesModuleFromCore],\r\n  declarations: [VtsStatisticComponent, VtsCountdownComponent, VtsStatisticNumberComponent],\r\n  exports: [VtsStatisticComponent, VtsCountdownComponent, VtsStatisticNumberComponent]\r\n})\r\nexport class VtsStatisticModule {}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nexport * from './countdown.component';\r\nexport * from './statistic.component';\r\nexport * from './statistic.module';\r\nexport * from './statistic-number.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i4.VtsStatisticNumberComponent","i3.VtsStatisticComponent","VtsPipesModuleFromCore"],"mappings":"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"}