{"version":3,"file":"vts-voffice-ng-vts-table.mjs","sources":["../../components/table/src/addon/filter-trigger.component.ts","../../components/table/src/addon/filter.component.ts","../../components/table/src/addon/row-expand-button.directive.ts","../../components/table/src/addon/row-indent.directive.ts","../../components/table/src/addon/selection.component.ts","../../components/table/src/addon/sorters.component.ts","../../components/table/src/cell/cell-fixed.directive.ts","../../components/table/src/table-style.service.ts","../../components/table/src/cell/cell.directive.ts","../../components/table/src/cell/td-addon.component.ts","../../components/table/src/cell/th-addon.component.ts","../../components/table/src/cell/th-measure.directive.ts","../../components/table/src/cell/th-selection.component.ts","../../components/table/src/styled/align.directive.ts","../../components/table/src/styled/ellipsis.directive.ts","../../components/table/src/styled/word-break.directive.ts","../../components/table/src/table/table-content.component.ts","../../components/table/src/table/table-fixed-row.component.ts","../../components/table/src/table/table-inner-default.component.ts","../../components/table/src/table/tr.directive.ts","../../components/table/src/table/tr-measure.component.ts","../../components/table/src/table/tbody.component.ts","../../components/table/src/table/table-inner-scroll.component.ts","../../components/table/src/table/table-virtual-scroll.directive.ts","../../components/table/src/table-data.service.ts","../../components/table/src/table/title-footer.component.ts","../../components/table/src/table/table.component.ts","../../components/table/src/table/thead.component.ts","../../components/table/src/table/tr-expand.directive.ts","../../components/table/src/table.module.ts","../../components/table/src/table.types.ts","../../components/table/public-api.ts","../../components/table/vts-voffice-ng-vts-table.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 {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  Output,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsDropdownMenuComponent } from '@vts-voffice/ng-vts/dropdown';\r\n\r\n@Component({\r\n  selector: 'vts-filter-trigger',\r\n  exportAs: `vtsFilterTrigger`,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  preserveWhitespaces: false,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <span\r\n      vts-dropdown\r\n      class=\"vts-table-filter-trigger\"\r\n      vtsTrigger=\"click\"\r\n      vtsPlacement=\"bottomRight\"\r\n      [vtsHasBackdrop]=\"vtsHasBackdrop\"\r\n      [vtsClickHide]=\"false\"\r\n      [vtsDropdownMenu]=\"vtsDropdownMenu\"\r\n      [class.active]=\"vtsActive\"\r\n      [class.vts-table-filter-open]=\"vtsVisible\"\r\n      [vtsVisible]=\"vtsVisible\"\r\n      (vtsVisibleChange)=\"onVisibleChange($event)\"\r\n      (click)=\"onFilterClick($event)\"\r\n    >\r\n      <ng-content></ng-content>\r\n    </span>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-filter-trigger-container-open]': 'vtsVisible'\r\n  }\r\n})\r\nexport class VtsFilterTriggerComponent {\r\n  @Input() vtsActive = false;\r\n  @Input() vtsDropdownMenu!: VtsDropdownMenuComponent;\r\n  @Input() vtsVisible = false;\r\n  @Input() vtsHasBackdrop = false;\r\n\r\n  @Output() readonly vtsVisibleChange = new EventEmitter<boolean>();\r\n\r\n  onVisibleChange(visible: boolean): void {\r\n    this.vtsVisible = visible;\r\n    this.vtsVisibleChange.next(visible);\r\n  }\r\n\r\n  onFilterClick($event: MouseEvent): void {\r\n    $event.stopPropagation();\r\n  }\r\n\r\n  hide(): void {\r\n    this.vtsVisible = false;\r\n    this.cdr.markForCheck();\r\n  }\r\n\r\n  show(): void {\r\n    this.vtsVisible = true;\r\n    this.cdr.markForCheck();\r\n  }\r\n\r\n  constructor(private cdr: ChangeDetectorRef, private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-filter-trigger-container');\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 {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Output,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { arraysEqual } from '@vts-voffice/ng-vts/core/util';\r\nimport { VtsI18nService, VtsTableI18nInterface } from '@vts-voffice/ng-vts/i18n';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { VtsTableFilterList } from '../table.types';\r\n\r\ninterface VtsThItemInterface {\r\n  text: string;\r\n  value: VtsSafeAny;\r\n  checked: boolean;\r\n}\r\n\r\n@Component({\r\n  selector: 'vts-table-filter',\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <span class=\"vts-table-filter-column-title\">\r\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\r\n    </span>\r\n    <ng-container *ngIf=\"!customFilter; else extraTemplate\">\r\n      <vts-filter-trigger\r\n        [vtsVisible]=\"isVisible\"\r\n        [vtsActive]=\"isChecked\"\r\n        [vtsDropdownMenu]=\"filterMenu\"\r\n        (vtsVisibleChange)=\"onVisibleChange($event)\"\r\n      >\r\n        <i vts-icon vtsType=\"filter\"></i>\r\n      </vts-filter-trigger>\r\n      <vts-dropdown-menu #filterMenu=\"vtsDropdownMenu\">\r\n        <div class=\"vts-table-filter-dropdown\">\r\n          <ul vts-menu>\r\n            <li\r\n              vts-menu-item\r\n              [vtsSelected]=\"f.checked\"\r\n              *ngFor=\"let f of listOfParsedFilter; trackBy: trackByValue\"\r\n              (click)=\"check(f)\"\r\n            >\r\n              <label\r\n                vts-radio\r\n                *ngIf=\"!filterMultiple\"\r\n                [ngModel]=\"f.checked\"\r\n                (ngModelChange)=\"check(f)\"\r\n              ></label>\r\n              <label\r\n                vts-checkbox\r\n                *ngIf=\"filterMultiple\"\r\n                [ngModel]=\"f.checked\"\r\n                (ngModelChange)=\"check(f)\"\r\n              ></label>\r\n              <span>{{ f.text }}</span>\r\n            </li>\r\n          </ul>\r\n          <div class=\"vts-table-filter-dropdown-btns\">\r\n            <button\r\n              vts-button\r\n              vtsType=\"link\"\r\n              vtsSize=\"sm\"\r\n              (click)=\"reset()\"\r\n              [disabled]=\"!isChecked\"\r\n            >\r\n              {{ locale.filterReset }}\r\n            </button>\r\n            <button vts-button vtsType=\"primary\" vtsSize=\"sm\" (click)=\"confirm()\">\r\n              {{ locale.filterConfirm }}\r\n            </button>\r\n          </div>\r\n        </div>\r\n      </vts-dropdown-menu>\r\n    </ng-container>\r\n  `\r\n})\r\nexport class VtsTableFilterComponent implements OnChanges, OnDestroy, OnInit {\r\n  @Input() contentTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() customFilter = false;\r\n  @Input() extraTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() filterMultiple = true;\r\n  @Input() listOfFilter: VtsTableFilterList = [];\r\n  @Output() readonly filterChange = new EventEmitter<VtsSafeAny[] | VtsSafeAny>();\r\n  private destroy$ = new Subject();\r\n  locale!: VtsTableI18nInterface;\r\n  isChecked = false;\r\n  isVisible = false;\r\n  listOfParsedFilter: VtsThItemInterface[] = [];\r\n  listOfChecked: VtsSafeAny[] = [];\r\n\r\n  trackByValue(_: number, item: VtsThItemInterface): VtsSafeAny {\r\n    return item.value;\r\n  }\r\n\r\n  check(filter: VtsThItemInterface): void {\r\n    if (this.filterMultiple) {\r\n      this.listOfParsedFilter = this.listOfParsedFilter.map(item => {\r\n        if (item === filter) {\r\n          return { ...item, checked: !filter.checked };\r\n        } else {\r\n          return item;\r\n        }\r\n      });\r\n      filter.checked = !filter.checked;\r\n    } else {\r\n      this.listOfParsedFilter = this.listOfParsedFilter.map(item => {\r\n        return { ...item, checked: item === filter };\r\n      });\r\n    }\r\n    this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\r\n  }\r\n\r\n  confirm(): void {\r\n    this.isVisible = false;\r\n    this.emitFilterData();\r\n  }\r\n\r\n  reset(): void {\r\n    this.isVisible = false;\r\n    this.listOfParsedFilter = this.parseListOfFilter(this.listOfFilter, true);\r\n    this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\r\n    this.emitFilterData();\r\n  }\r\n\r\n  onVisibleChange(value: boolean): void {\r\n    this.isVisible = value;\r\n    if (!value) {\r\n      this.emitFilterData();\r\n    } else {\r\n      this.listOfChecked = this.listOfParsedFilter\r\n        .filter(item => item.checked)\r\n        .map(item => item.value);\r\n    }\r\n  }\r\n\r\n  emitFilterData(): void {\r\n    const listOfChecked = this.listOfParsedFilter\r\n      .filter(item => item.checked)\r\n      .map(item => item.value);\r\n    if (!arraysEqual(this.listOfChecked, listOfChecked)) {\r\n      if (this.filterMultiple) {\r\n        this.filterChange.emit(listOfChecked);\r\n      } else {\r\n        this.filterChange.emit(listOfChecked.length > 0 ? listOfChecked[0] : null);\r\n      }\r\n    }\r\n  }\r\n\r\n  parseListOfFilter(listOfFilter: VtsTableFilterList, reset?: boolean): VtsThItemInterface[] {\r\n    return listOfFilter.map(item => {\r\n      const checked = reset ? false : !!item.byDefault;\r\n      return { text: item.text, value: item.value, checked };\r\n    });\r\n  }\r\n\r\n  getCheckedStatus(listOfParsedFilter: VtsThItemInterface[]): boolean {\r\n    return listOfParsedFilter.some(item => item.checked);\r\n  }\r\n\r\n  constructor(\r\n    private cdr: ChangeDetectorRef,\r\n    private i18n: VtsI18nService,\r\n    private elementRef: ElementRef\r\n  ) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-filter-column');\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.i18n.localeChange.pipe(takeUntil(this.destroy$)).subscribe(() => {\r\n      this.locale = this.i18n.getLocaleData('Table');\r\n      this.cdr.markForCheck();\r\n    });\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const { listOfFilter } = changes;\r\n    if (listOfFilter && this.listOfFilter && this.listOfFilter.length) {\r\n      this.listOfParsedFilter = this.parseListOfFilter(this.listOfFilter);\r\n      this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\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 { Component, ElementRef, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'button[vts-row-expand-button]',\r\n  template: `\r\n    <ng-container *ngIf=\"!!expandTemplate\">\r\n      <ng-template\r\n        [ngTemplateOutlet]=\"expandTemplate\"\r\n        [ngTemplateOutletContext]=\"{ $implicit: expand }\"\r\n      ></ng-template>\r\n    </ng-container>\r\n  `,\r\n  host: {\r\n    '[type]': `'button'`,\r\n    '[class.vts-table-row-expand-icon-template]': `!!expandTemplate`,\r\n    '[class.vts-table-row-expand-icon-expanded]': `!expandTemplate && !spaceMode && expand === true`,\r\n    '[class.vts-table-row-expand-icon-collapsed]': `!expandTemplate && !spaceMode && expand === false`,\r\n    '[class.vts-table-row-expand-icon-spaced]': 'spaceMode',\r\n    '(click)': 'onHostClick()'\r\n  }\r\n})\r\nexport class VtsRowExpandButtonComponent {\r\n  @Input() expand = false;\r\n  @Input() spaceMode = false;\r\n  @Output() readonly expandChange = new EventEmitter();\r\n  @Input() expandTemplate: TemplateRef<{\r\n    $implicit: boolean;\r\n  }> | null = null;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-row-expand-icon');\r\n  }\r\n\r\n  onHostClick(): void {\r\n    if (!this.spaceMode) {\r\n      this.expand = !this.expand;\r\n      this.expandChange.next(this.expand);\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\n\r\nimport { Directive, ElementRef, Input } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: 'vts-row-indent',\r\n  host: {\r\n    '[style.padding-left.px]': 'indentSize'\r\n  }\r\n})\r\nexport class VtsRowIndentDirective {\r\n  @Input() indentSize = 0;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-row-indent');\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 {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  Output,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\n\r\n@Component({\r\n  selector: 'vts-table-selection',\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <label\r\n      *ngIf=\"showCheckbox\"\r\n      vts-checkbox\r\n      [class.vts-table-selection-select-all-custom]=\"showRowSelection\"\r\n      [ngModel]=\"checked\"\r\n      [vtsDisabled]=\"disabled\"\r\n      [vtsIndeterminate]=\"indeterminate\"\r\n      (ngModelChange)=\"onCheckedChange($event)\"\r\n    ></label>\r\n    <div class=\"vts-table-selection-extra\" *ngIf=\"showRowSelection\">\r\n      <span\r\n        vts-dropdown\r\n        class=\"vts-table-selection-down\"\r\n        vtsPlacement=\"bottomLeft\"\r\n        [vtsDropdownMenu]=\"selectionMenu\"\r\n      >\r\n        <i vts-icon vtsType=\"ArrowMiniDown\"></i>\r\n      </span>\r\n      <vts-dropdown-menu #selectionMenu=\"vtsDropdownMenu\">\r\n        <ul vts-menu class=\"vts-table-selection-menu\">\r\n          <li\r\n            vts-menu-item\r\n            *ngFor=\"let selection of listOfSelections\"\r\n            (click)=\"selection.onSelect()\"\r\n          >\r\n            {{ selection.text }}\r\n          </li>\r\n        </ul>\r\n      </vts-dropdown-menu>\r\n    </div>\r\n  `\r\n})\r\nexport class VtsTableSelectionComponent {\r\n  @Input() listOfSelections: Array<{\r\n    text: string;\r\n    onSelect(...args: VtsSafeAny[]): VtsSafeAny;\r\n  }> = [];\r\n  @Input() checked = false;\r\n  @Input() disabled = false;\r\n  @Input() indeterminate = false;\r\n  @Input() showCheckbox = false;\r\n  @Input() showRowSelection = false;\r\n  @Output() readonly checkedChange = new EventEmitter<boolean>();\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-selection');\r\n  }\r\n\r\n  onCheckedChange(checked: boolean): void {\r\n    this.checked = checked;\r\n    this.checkedChange.emit(checked);\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 {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  Input,\r\n  OnChanges,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { VtsTableSortOrder } from '../table.types';\r\n\r\n@Component({\r\n  selector: 'vts-table-sorters',\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <span>\r\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\r\n    </span>\r\n    <span class=\"vts-table-column-sorter\" [class.vts-table-column-sorter-full]=\"isDown && isUp\">\r\n      <span class=\"vts-table-column-sorter-inner\">\r\n        <i\r\n          vts-icon\r\n          vtsType=\"ArrowUpOutline\"\r\n          *ngIf=\"isUp\"\r\n          class=\"vts-table-column-sorter-up\"\r\n          [class.active]=\"sortOrder == 'ascend'\"\r\n        ></i>\r\n        <i\r\n          vts-icon\r\n          vtsType=\"ArrowDownOutline\"\r\n          *ngIf=\"isDown\"\r\n          class=\"vts-table-column-sorter-down\"\r\n          [class.active]=\"sortOrder == 'descend'\"\r\n        ></i>\r\n      </span>\r\n    </span>\r\n  `\r\n})\r\nexport class VtsTableSortersComponent implements OnChanges {\r\n  @Input() sortDirections: VtsTableSortOrder[] = ['ascend', 'descend', null];\r\n  @Input() sortOrder: VtsTableSortOrder = null;\r\n  @Input() contentTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  isUp = false;\r\n  isDown = false;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-column-sorters');\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const { sortDirections } = changes;\r\n    if (sortDirections) {\r\n      this.isUp = this.sortDirections.indexOf('ascend') !== -1;\r\n      this.isDown = this.sortDirections.indexOf('descend') !== -1;\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\n\r\nimport { Directive, ElementRef, Input, OnChanges, Renderer2 } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Directive({\r\n  selector: 'td[vtsRight],th[vtsRight],td[vtsLeft],th[vtsLeft]',\r\n  host: {\r\n    '[class.vts-table-cell-fix-right]': `isFixedRight`,\r\n    '[class.vts-table-cell-fix-left]': `isFixedLeft`,\r\n    '[style.position]': `isFixed? 'sticky' : null`\r\n  }\r\n})\r\nexport class VtsCellFixedDirective implements OnChanges {\r\n  @Input() vtsRight: string | boolean = false;\r\n  @Input() vtsLeft: string | boolean = false;\r\n  @Input() colspan: number | null = null;\r\n  @Input() colSpan: number | null = null;\r\n  changes$ = new Subject<void>();\r\n  isAutoLeft = false;\r\n  isAutoRight = false;\r\n  isFixedLeft = false;\r\n  isFixedRight = false;\r\n  isFixed = false;\r\n\r\n  setAutoLeftWidth(autoLeft: string | null): void {\r\n    this.renderer.setStyle(this.elementRef.nativeElement, 'left', autoLeft);\r\n  }\r\n\r\n  setAutoRightWidth(autoRight: string | null): void {\r\n    this.renderer.setStyle(this.elementRef.nativeElement, 'right', autoRight);\r\n  }\r\n\r\n  setIsFirstRight(isFirstRight: boolean): void {\r\n    this.setFixClass(isFirstRight, 'vts-table-cell-fix-right-first');\r\n  }\r\n\r\n  setIsLastLeft(isLastLeft: boolean): void {\r\n    this.setFixClass(isLastLeft, 'vts-table-cell-fix-left-last');\r\n  }\r\n\r\n  private setFixClass(flag: boolean, className: string): void {\r\n    // the setFixClass function may call many times, so remove it first.\r\n    this.renderer.removeClass(this.elementRef.nativeElement, className);\r\n\r\n    if (flag) {\r\n      this.renderer.addClass(this.elementRef.nativeElement, className);\r\n    }\r\n  }\r\n\r\n  constructor(private renderer: Renderer2, private elementRef: ElementRef) {}\r\n\r\n  ngOnChanges(): void {\r\n    this.setIsFirstRight(false);\r\n    this.setIsLastLeft(false);\r\n    this.isAutoLeft = this.vtsLeft === '' || this.vtsLeft === true;\r\n    this.isAutoRight = this.vtsRight === '' || this.vtsRight === true;\r\n    this.isFixedLeft = this.vtsLeft !== false;\r\n    this.isFixedRight = this.vtsRight !== false;\r\n    this.isFixed = this.isFixedLeft || this.isFixedRight;\r\n    const validatePx = (value: string | boolean): string | null => {\r\n      if (typeof value === 'string' && value !== '') {\r\n        return value;\r\n      } else {\r\n        return null;\r\n      }\r\n    };\r\n    this.setAutoLeftWidth(validatePx(this.vtsLeft));\r\n    this.setAutoRightWidth(validatePx(this.vtsRight));\r\n    this.changes$.next();\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 { Injectable, TemplateRef } from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { BehaviorSubject, combineLatest, merge, ReplaySubject } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { VtsThMeasureDirective } from './cell/th-measure.directive';\r\n\r\n@Injectable()\r\nexport class VtsTableStyleService {\r\n  theadTemplate$ = new ReplaySubject<TemplateRef<VtsSafeAny>>(1);\r\n  hasFixLeft$ = new ReplaySubject<boolean>(1);\r\n  hasFixRight$ = new ReplaySubject<boolean>(1);\r\n  hostWidth$ = new ReplaySubject<number>(1);\r\n  columnCount$ = new ReplaySubject<number>(1);\r\n  showEmpty$ = new ReplaySubject<boolean>(1);\r\n  noResult$ = new ReplaySubject<string | TemplateRef<VtsSafeAny> | undefined>(1);\r\n  private listOfThWidthConfigPx$ = new BehaviorSubject<ReadonlyArray<string | null>>([]);\r\n  private tableWidthConfigPx$ = new BehaviorSubject<ReadonlyArray<string | null>>([]);\r\n  manualWidthConfigPx$ = combineLatest([\r\n    this.tableWidthConfigPx$,\r\n    this.listOfThWidthConfigPx$\r\n  ]).pipe(map(([widthConfig, listOfWidth]) => (widthConfig.length ? widthConfig : listOfWidth)));\r\n  private listOfAutoWidthPx$ = new ReplaySubject<ReadonlyArray<string>>(1);\r\n  listOfListOfThWidthPx$ = merge(\r\n    /** init with manual width **/\r\n    this.manualWidthConfigPx$,\r\n    combineLatest([this.listOfAutoWidthPx$, this.manualWidthConfigPx$]).pipe(\r\n      map(([autoWidth, manualWidth]) => {\r\n        /** use autoWidth until column length match **/\r\n        if (autoWidth.length === manualWidth.length) {\r\n          return autoWidth.map((width, index) => {\r\n            if (width === '0px') {\r\n              return manualWidth[index] || null;\r\n            } else {\r\n              return manualWidth[index] || width;\r\n            }\r\n          });\r\n        } else {\r\n          return manualWidth;\r\n        }\r\n      })\r\n    )\r\n  );\r\n  listOfMeasureColumn$ = new ReplaySubject<ReadonlyArray<string>>(1);\r\n  listOfListOfThWidth$ = this.listOfAutoWidthPx$.pipe(\r\n    map(list => list.map(width => parseInt(width, 10)))\r\n  );\r\n  enableAutoMeasure$ = new ReplaySubject<boolean>(1);\r\n\r\n  setTheadTemplate(template: TemplateRef<VtsSafeAny>): void {\r\n    this.theadTemplate$.next(template);\r\n  }\r\n\r\n  setHasFixLeft(hasFixLeft: boolean): void {\r\n    this.hasFixLeft$.next(hasFixLeft);\r\n  }\r\n\r\n  setHasFixRight(hasFixRight: boolean): void {\r\n    this.hasFixRight$.next(hasFixRight);\r\n  }\r\n\r\n  setTableWidthConfig(widthConfig: ReadonlyArray<string | null>): void {\r\n    this.tableWidthConfigPx$.next(widthConfig);\r\n  }\r\n\r\n  setListOfTh(listOfTh: ReadonlyArray<VtsThMeasureDirective>): void {\r\n    let columnCount = 0;\r\n    listOfTh.forEach(th => {\r\n      columnCount += (th.colspan && +th.colspan) || (th.colSpan && +th.colSpan) || 1;\r\n    });\r\n    const listOfThPx = listOfTh.map(item => item.vtsWidth);\r\n    this.columnCount$.next(columnCount);\r\n    this.listOfThWidthConfigPx$.next(listOfThPx);\r\n  }\r\n\r\n  setListOfMeasureColumn(listOfTh: ReadonlyArray<VtsThMeasureDirective>): void {\r\n    const listOfKeys: string[] = [];\r\n    listOfTh.forEach(th => {\r\n      const length = (th.colspan && +th.colspan) || (th.colSpan && +th.colSpan) || 1;\r\n      for (let i = 0; i < length; i++) {\r\n        listOfKeys.push(`measure_key_${i}`);\r\n      }\r\n    });\r\n    this.listOfMeasureColumn$.next(listOfKeys);\r\n  }\r\n\r\n  setListOfAutoWidth(listOfAutoWidth: number[]): void {\r\n    this.listOfAutoWidthPx$.next(listOfAutoWidth.map(width => `${width}px`));\r\n  }\r\n\r\n  setShowEmpty(showEmpty: boolean): void {\r\n    this.showEmpty$.next(showEmpty);\r\n  }\r\n\r\n  setNoResult(noResult: string | TemplateRef<VtsSafeAny> | undefined): void {\r\n    this.noResult$.next(noResult);\r\n  }\r\n\r\n  setScroll(scrollX: string | null, scrollY: string | null): void {\r\n    const enableAutoMeasure = !!(scrollX || scrollY);\r\n    if (!enableAutoMeasure) {\r\n      this.setListOfAutoWidth([]);\r\n    }\r\n    this.enableAutoMeasure$.next(enableAutoMeasure);\r\n  }\r\n\r\n  constructor() {}\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 { Directive, Optional } from '@angular/core';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\n\r\n@Directive({\r\n  selector: 'th:not(.vts-disable-th):not([mat-cell]), td:not(.vts-disable-td):not([mat-cell])',\r\n  host: {\r\n    '[class.vts-table-cell]': 'isInsideTable'\r\n  }\r\n})\r\nexport class VtsTableCellDirective {\r\n  isInsideTable = false;\r\n  constructor(@Optional() vtsTableStyleService: VtsTableStyleService) {\r\n    this.isInsideTable = !!vtsTableStyleService;\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/* tslint:disable:component-selector */\r\n\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  Output,\r\n  SimpleChange,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { BooleanInput } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean } from '@vts-voffice/ng-vts/core/util';\r\n\r\n@Component({\r\n  selector:\r\n    'td[vtsChecked], td[vtsDisabled], td[vtsIndeterminate], td[vtsIndentSize], td[vtsExpand], td[vtsShowExpand], td[vtsShowCheckbox], td[vtsNoWrap]',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  preserveWhitespaces: false,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <ng-container *ngIf=\"vtsShowExpand || vtsIndentSize > 0\">\r\n      <vts-row-indent [indentSize]=\"vtsIndentSize\"></vts-row-indent>\r\n      <button\r\n        vts-row-expand-button\r\n        [expand]=\"vtsExpand\"\r\n        (expandChange)=\"onExpandChange($event)\"\r\n        [spaceMode]=\"!vtsShowExpand\"\r\n        [expandTemplate]=\"vtsExpandTemplate\"\r\n      ></button>\r\n    </ng-container>\r\n    <label\r\n      vts-checkbox\r\n      *ngIf=\"vtsShowCheckbox\"\r\n      [vtsDisabled]=\"vtsDisabled\"\r\n      [ngModel]=\"vtsChecked\"\r\n      [vtsIndeterminate]=\"vtsIndeterminate\"\r\n      (ngModelChange)=\"onCheckedChange($event)\"\r\n    ></label>\r\n    <ng-content></ng-content>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-cell-with-append]': `vtsShowExpand || vtsIndentSize > 0`,\r\n    '[class.vts-table-selection-column]': `vtsShowCheckbox`,\r\n    '[class.vts-table-cell-nowrap]': `vtsNoWrap`\r\n  }\r\n})\r\nexport class VtsTdAddOnComponent implements OnChanges {\r\n  static ngAcceptInputType_vtsShowExpand: BooleanInput;\r\n  static ngAcceptInputType_vtsShowCheckbox: BooleanInput;\r\n  static ngAcceptInputType_vtsExpand: BooleanInput;\r\n  static ngAcceptInputType_vtsNoWrap: BooleanInput;\r\n\r\n  @Input() vtsChecked = false;\r\n  @Input() vtsDisabled = false;\r\n  @Input() vtsIndeterminate = false;\r\n  @Input() vtsIndentSize = 0;\r\n  @Input() @InputBoolean() vtsShowExpand = false;\r\n  @Input() @InputBoolean() vtsShowCheckbox = false;\r\n  @Input() @InputBoolean() vtsExpand = false;\r\n  @Input() @InputBoolean() vtsNoWrap = false;\r\n  @Input() vtsExpandTemplate: TemplateRef<{\r\n    $implicit: boolean;\r\n  }> | null = null;\r\n\r\n  @Output() readonly vtsCheckedChange = new EventEmitter<boolean>();\r\n  @Output() readonly vtsExpandChange = new EventEmitter<boolean>();\r\n  private isVtsShowExpandChanged = false;\r\n  private isVtsShowCheckboxChanged = false;\r\n\r\n  onCheckedChange(checked: boolean): void {\r\n    this.vtsChecked = checked;\r\n    this.vtsCheckedChange.emit(checked);\r\n  }\r\n\r\n  onExpandChange(expand: boolean): void {\r\n    this.vtsExpand = expand;\r\n    this.vtsExpandChange.emit(expand);\r\n  }\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const isFirstChange = (value: SimpleChange) =>\r\n      value && value.firstChange && value.currentValue !== undefined;\r\n    const { vtsExpand, vtsChecked, vtsShowExpand, vtsShowCheckbox } = changes;\r\n    if (vtsShowExpand) {\r\n      this.isVtsShowExpandChanged = true;\r\n    }\r\n    if (vtsShowCheckbox) {\r\n      this.isVtsShowCheckboxChanged = true;\r\n    }\r\n    if (isFirstChange(vtsExpand) && !this.isVtsShowExpandChanged) {\r\n      this.vtsShowExpand = true;\r\n    }\r\n    if (isFirstChange(vtsChecked) && !this.isVtsShowCheckboxChanged) {\r\n      this.vtsShowCheckbox = true;\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\n/* tslint:disable:component-selector */\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Output,\r\n  SimpleChange,\r\n  SimpleChanges,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { BooleanInput } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean } from '@vts-voffice/ng-vts/core/util';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport {\r\n  VtsTableFilterFn,\r\n  VtsTableFilterList,\r\n  VtsTableFilterValue,\r\n  VtsTableSortFn,\r\n  VtsTableSortOrder\r\n} from '../table.types';\r\n\r\n@Component({\r\n  selector:\r\n    'th[vtsColumnKey], th[vtsSortFn], th[vtsSortOrder], th[vtsFilters], th[vtsShowSort], th[vtsShowFilter], th[vtsCustomFilter], th[vtsNoWrap]',\r\n  preserveWhitespaces: false,\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  template: `\r\n    <vts-table-filter\r\n      *ngIf=\"vtsShowFilter || vtsCustomFilter; else notFilterTemplate\"\r\n      [contentTemplate]=\"notFilterTemplate\"\r\n      [extraTemplate]=\"extraTemplate\"\r\n      [customFilter]=\"vtsCustomFilter\"\r\n      [filterMultiple]=\"vtsFilterMultiple\"\r\n      [listOfFilter]=\"vtsFilters\"\r\n      (filterChange)=\"onFilterValueChange($event)\"\r\n    ></vts-table-filter>\r\n    <ng-template #notFilterTemplate>\r\n      <ng-template [ngTemplateOutlet]=\"vtsShowSort ? sortTemplate : contentTemplate\"></ng-template>\r\n    </ng-template>\r\n    <ng-template #extraTemplate>\r\n      <ng-content select=\"[vts-th-extra]\"></ng-content>\r\n      <ng-content select=\"vts-filter-trigger\"></ng-content>\r\n    </ng-template>\r\n    <ng-template #sortTemplate>\r\n      <vts-table-sorters\r\n        [sortOrder]=\"sortOrder\"\r\n        [sortDirections]=\"sortDirections\"\r\n        [contentTemplate]=\"contentTemplate\"\r\n      ></vts-table-sorters>\r\n    </ng-template>\r\n    <ng-template #contentTemplate>\r\n      <ng-content></ng-content>\r\n    </ng-template>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-column-has-sorters]': 'vtsShowSort',\r\n    '[class.vts-table-column-sort]': `sortOrder === 'descend' || sortOrder === 'ascend'`,\r\n    '[class.vts-table-cell-nowrap]': `vtsNoWrap`,\r\n    '(click)': 'emitNextSortValue()'\r\n  }\r\n})\r\nexport class VtsThAddOnComponent implements OnChanges, OnInit, OnDestroy {\r\n  static ngAcceptInputType_vtsShowSort: BooleanInput;\r\n  static ngAcceptInputType_vtsShowFilter: BooleanInput;\r\n  static ngAcceptInputType_vtsCustomFilter: BooleanInput;\r\n  static ngAcceptInputType_vtsNoWrap: BooleanInput;\r\n\r\n  manualClickOrder$ = new Subject<VtsThAddOnComponent>();\r\n  calcOperatorChange$ = new Subject();\r\n  vtsFilterValue: VtsTableFilterValue = null;\r\n  sortOrder: VtsTableSortOrder = null;\r\n  sortDirections: VtsTableSortOrder[] = ['ascend', 'descend', null];\r\n  private sortOrderChange$ = new Subject<VtsTableSortOrder>();\r\n  private destroy$ = new Subject();\r\n  private isVtsShowSortChanged = false;\r\n  private isVtsShowFilterChanged = false;\r\n  @Input() vtsColumnKey?: string;\r\n  @Input() vtsFilterMultiple = true;\r\n  @Input() vtsSortOrder: VtsTableSortOrder = null;\r\n  @Input() vtsSortPriority: number | boolean = false;\r\n  @Input() vtsSortDirections: VtsTableSortOrder[] = ['ascend', 'descend', null];\r\n  @Input() vtsFilters: VtsTableFilterList = [];\r\n  @Input() vtsSortFn: VtsTableSortFn | boolean | null = null;\r\n  @Input() vtsFilterFn: VtsTableFilterFn | boolean | null = null;\r\n  @Input() @InputBoolean() vtsShowSort = false;\r\n  @Input() @InputBoolean() vtsShowFilter = false;\r\n  @Input() @InputBoolean() vtsCustomFilter = false;\r\n  @Input() @InputBoolean() vtsNoWrap = false;\r\n  @Output() readonly vtsCheckedChange = new EventEmitter<boolean>();\r\n  @Output() readonly vtsSortOrderChange = new EventEmitter<string | null>();\r\n  @Output() readonly vtsFilterChange = new EventEmitter<VtsTableFilterValue>();\r\n\r\n  getNextSortDirection(\r\n    sortDirections: VtsTableSortOrder[],\r\n    current: VtsTableSortOrder\r\n  ): VtsTableSortOrder {\r\n    const index = sortDirections.indexOf(current);\r\n    if (index === sortDirections.length - 1) {\r\n      return sortDirections[0];\r\n    } else {\r\n      return sortDirections[index + 1];\r\n    }\r\n  }\r\n\r\n  emitNextSortValue(): void {\r\n    if (this.vtsShowSort) {\r\n      const nextOrder = this.getNextSortDirection(this.sortDirections, this.sortOrder!);\r\n      this.setSortOrder(nextOrder);\r\n      this.manualClickOrder$.next(this);\r\n    }\r\n  }\r\n\r\n  setSortOrder(order: VtsTableSortOrder): void {\r\n    this.sortOrderChange$.next(order);\r\n  }\r\n\r\n  clearSortOrder(): void {\r\n    if (this.sortOrder !== null) {\r\n      this.setSortOrder(null);\r\n    }\r\n  }\r\n\r\n  onFilterValueChange(value: VtsTableFilterValue): void {\r\n    this.vtsFilterChange.emit(value);\r\n    this.vtsFilterValue = value;\r\n    this.updateCalcOperator();\r\n  }\r\n\r\n  updateCalcOperator(): void {\r\n    this.calcOperatorChange$.next();\r\n  }\r\n\r\n  constructor(private cdr: ChangeDetectorRef) {}\r\n\r\n  ngOnInit(): void {\r\n    this.sortOrderChange$.pipe(takeUntil(this.destroy$)).subscribe(order => {\r\n      if (this.sortOrder !== order) {\r\n        this.sortOrder = order;\r\n        this.vtsSortOrderChange.emit(order);\r\n      }\r\n      this.updateCalcOperator();\r\n      this.cdr.markForCheck();\r\n    });\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const {\r\n      vtsSortDirections,\r\n      vtsFilters,\r\n      vtsSortOrder,\r\n      vtsSortFn,\r\n      vtsFilterFn,\r\n      vtsSortPriority,\r\n      vtsFilterMultiple,\r\n      vtsShowSort,\r\n      vtsShowFilter\r\n    } = changes;\r\n    if (vtsSortDirections) {\r\n      if (this.vtsSortDirections && this.vtsSortDirections.length) {\r\n        this.sortDirections = this.vtsSortDirections;\r\n      }\r\n    }\r\n    if (vtsSortOrder) {\r\n      this.sortOrder = this.vtsSortOrder;\r\n      this.setSortOrder(this.vtsSortOrder);\r\n    }\r\n    if (vtsShowSort) {\r\n      this.isVtsShowSortChanged = true;\r\n    }\r\n    if (vtsShowFilter) {\r\n      this.isVtsShowFilterChanged = true;\r\n    }\r\n    const isFirstChange = (value: SimpleChange) =>\r\n      value && value.firstChange && value.currentValue !== undefined;\r\n    if ((isFirstChange(vtsSortOrder) || isFirstChange(vtsSortFn)) && !this.isVtsShowSortChanged) {\r\n      this.vtsShowSort = true;\r\n    }\r\n    if (isFirstChange(vtsFilters) && !this.isVtsShowFilterChanged) {\r\n      this.vtsShowFilter = true;\r\n    }\r\n    if ((vtsFilters || vtsFilterMultiple) && this.vtsShowFilter) {\r\n      const listOfValue = this.vtsFilters.filter(item => item.byDefault).map(item => item.value);\r\n      this.vtsFilterValue = this.vtsFilterMultiple ? listOfValue : listOfValue[0] || null;\r\n    }\r\n    if (vtsSortFn || vtsFilterFn || vtsSortPriority || vtsFilters) {\r\n      this.updateCalcOperator();\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\nimport { Directive, ElementRef, Input, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\r\nimport { isNil } from '@vts-voffice/ng-vts/core/util';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Directive({\r\n  selector: 'th'\r\n})\r\nexport class VtsThMeasureDirective implements OnChanges {\r\n  changes$ = new Subject();\r\n  @Input() vtsWidth: string | null = null;\r\n  @Input() colspan: string | number | null = null;\r\n  @Input() colSpan: string | number | null = null;\r\n  @Input() rowspan: string | number | null = null;\r\n  @Input() rowSpan: string | number | null = null;\r\n  constructor(private renderer: Renderer2, private elementRef: ElementRef) {}\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const { vtsWidth, colspan, rowspan, colSpan, rowSpan } = changes;\r\n    if (colspan || colSpan) {\r\n      const col = this.colspan || this.colSpan;\r\n      if (!isNil(col)) {\r\n        this.renderer.setAttribute(this.elementRef.nativeElement, 'colspan', `${col}`);\r\n      } else {\r\n        this.renderer.removeAttribute(this.elementRef.nativeElement, 'colspan');\r\n      }\r\n    }\r\n    if (rowspan || rowSpan) {\r\n      const row = this.rowspan || this.rowSpan;\r\n      if (!isNil(row)) {\r\n        this.renderer.setAttribute(this.elementRef.nativeElement, 'rowspan', `${row}`);\r\n      } else {\r\n        this.renderer.removeAttribute(this.elementRef.nativeElement, 'rowspan');\r\n      }\r\n    }\r\n    if (vtsWidth || colspan) {\r\n      this.changes$.next();\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\n/* tslint:disable:component-selector */\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  Output,\r\n  SimpleChange,\r\n  SimpleChanges,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { BooleanInput, VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean } from '@vts-voffice/ng-vts/core/util';\r\n\r\n@Component({\r\n  selector: 'th[vtsSelections],th[vtsChecked],th[vtsShowCheckbox],th[vtsShowRowSelection]',\r\n  preserveWhitespaces: false,\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  template: `\r\n    <vts-table-selection\r\n      [checked]=\"vtsChecked\"\r\n      [disabled]=\"vtsDisabled\"\r\n      [indeterminate]=\"vtsIndeterminate\"\r\n      [listOfSelections]=\"vtsSelections\"\r\n      [showCheckbox]=\"vtsShowCheckbox\"\r\n      [showRowSelection]=\"vtsShowRowSelection\"\r\n      (checkedChange)=\"onCheckedChange($event)\"\r\n    ></vts-table-selection>\r\n    <ng-content></ng-content>\r\n  `\r\n})\r\nexport class VtsThSelectionComponent implements OnChanges {\r\n  static ngAcceptInputType_vtsShowCheckbox: BooleanInput;\r\n  static ngAcceptInputType_vtsShowRowSelection: BooleanInput;\r\n\r\n  @Input() vtsSelections: Array<{\r\n    text: string;\r\n    onSelect(...args: VtsSafeAny[]): VtsSafeAny;\r\n  }> = [];\r\n  @Input() vtsChecked = false;\r\n  @Input() vtsDisabled = false;\r\n  @Input() vtsIndeterminate = false;\r\n  @Input() @InputBoolean() vtsShowCheckbox = false;\r\n  @Input() @InputBoolean() vtsShowRowSelection = false;\r\n  @Output() readonly vtsCheckedChange = new EventEmitter<boolean>();\r\n\r\n  private isVtsShowExpandChanged = false;\r\n  private isVtsShowCheckboxChanged = false;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-selection-column');\r\n  }\r\n\r\n  onCheckedChange(checked: boolean): void {\r\n    this.vtsChecked = checked;\r\n    this.vtsCheckedChange.emit(checked);\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const isFirstChange = (value: SimpleChange) =>\r\n      value && value.firstChange && value.currentValue !== undefined;\r\n    const { vtsChecked, vtsSelections, vtsShowExpand, vtsShowCheckbox } = changes;\r\n    if (vtsShowExpand) {\r\n      this.isVtsShowExpandChanged = true;\r\n    }\r\n    if (vtsShowCheckbox) {\r\n      this.isVtsShowCheckboxChanged = true;\r\n    }\r\n    if (isFirstChange(vtsSelections) && !this.isVtsShowExpandChanged) {\r\n      this.vtsShowRowSelection = true;\r\n    }\r\n    if (isFirstChange(vtsChecked) && !this.isVtsShowCheckboxChanged) {\r\n      this.vtsShowCheckbox = true;\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\n\r\nimport { Directive, Input } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: 'th[vtsAlign],td[vtsAlign]',\r\n  host: {\r\n    '[style.text-align]': 'vtsAlign'\r\n  }\r\n})\r\nexport class VtsCellAlignDirective {\r\n  @Input() vtsAlign: 'left' | 'right' | 'center' | null = null;\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 { Directive, Input } from '@angular/core';\r\nimport { BooleanInput } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean } from '@vts-voffice/ng-vts/core/util';\r\n\r\n@Directive({\r\n  selector: 'th[vtsEllipsis],td[vtsEllipsis]',\r\n  host: {\r\n    '[class.vts-table-cell-ellipsis]': 'vtsEllipsis'\r\n  }\r\n})\r\nexport class VtsCellEllipsisDirective {\r\n  static ngAcceptInputType_vtsEllipsis: BooleanInput;\r\n\r\n  @Input() @InputBoolean() vtsEllipsis = true;\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 { Directive, Input } from '@angular/core';\r\nimport { BooleanInput } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean } from '@vts-voffice/ng-vts/core/util';\r\n\r\n@Directive({\r\n  selector: 'th[vtsBreakWord],td[vtsBreakWord]',\r\n  host: {\r\n    '[style.word-break]': `vtsBreakWord ? 'break-all' : ''`\r\n  }\r\n})\r\nexport class VtsCellBreakWordDirective {\r\n  static ngAcceptInputType_vtsBreakWord: BooleanInput;\r\n\r\n  @Input() @InputBoolean() vtsBreakWord = true;\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 {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  Input,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { VtsTableLayout } from '../table.types';\r\n\r\n@Component({\r\n  selector: 'table[vts-table-content]',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <col [style.width]=\"width\" [style.minWidth]=\"width\" *ngFor=\"let width of listOfColWidth\" />\r\n    <thead class=\"vts-table-thead\" *ngIf=\"theadTemplate\">\r\n      <ng-template [ngTemplateOutlet]=\"theadTemplate\"></ng-template>\r\n    </thead>\r\n    <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\r\n    <ng-content></ng-content>\r\n  `,\r\n  host: {\r\n    '[style.table-layout]': 'tableLayout',\r\n    '[class.vts-table-fixed]': 'scrollX',\r\n    '[style.width]': 'scrollX',\r\n    '[style.min-width]': `scrollX ? '100%': null`\r\n  }\r\n})\r\nexport class VtsTableContentComponent {\r\n  @Input() tableLayout: VtsTableLayout = 'auto';\r\n  @Input() theadTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() contentTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\r\n  @Input() scrollX: string | null = null;\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 {\r\n  AfterViewInit,\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  OnDestroy,\r\n  OnInit,\r\n  Renderer2,\r\n  ViewChild,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\n\r\n@Component({\r\n  selector: 'tr[vts-table-fixed-row], tr[vtsExpand]',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <td class=\"vts-disable-td vts-table-cell\" #tdElement>\r\n      <div\r\n        class=\"vts-table-expanded-row-fixed\"\r\n        *ngIf=\"enableAutoMeasure$ | async; else contentTemplate\"\r\n        style=\"position: sticky; left: 0px; overflow: hidden;\"\r\n        [style.width.px]=\"hostWidth$ | async\"\r\n      >\r\n        <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\r\n      </div>\r\n    </td>\r\n    <ng-template #contentTemplate><ng-content></ng-content></ng-template>\r\n  `\r\n})\r\nexport class VtsTableFixedRowComponent implements OnInit, OnDestroy, AfterViewInit {\r\n  @ViewChild('tdElement') tdElement!: ElementRef;\r\n  hostWidth$ = new BehaviorSubject<number | null>(null);\r\n  enableAutoMeasure$ = new BehaviorSubject<boolean>(false);\r\n  private destroy$ = new Subject();\r\n  constructor(private vtsTableStyleService: VtsTableStyleService, private renderer: Renderer2) {}\r\n  ngOnInit(): void {\r\n    if (this.vtsTableStyleService) {\r\n      const { enableAutoMeasure$, hostWidth$ } = this.vtsTableStyleService;\r\n      enableAutoMeasure$.pipe(takeUntil(this.destroy$)).subscribe(this.enableAutoMeasure$);\r\n      hostWidth$.subscribe(this.hostWidth$);\r\n    }\r\n  }\r\n  ngAfterViewInit(): void {\r\n    this.vtsTableStyleService.columnCount$.pipe(takeUntil(this.destroy$)).subscribe(count => {\r\n      this.renderer.setAttribute(this.tdElement.nativeElement, 'colspan', `${count}`);\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 {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  Input,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { VtsTableLayout } from '../table.types';\r\n\r\n@Component({\r\n  selector: 'vts-table-inner-default',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <div class=\"vts-table-content\">\r\n      <table\r\n        vts-table-content\r\n        [contentTemplate]=\"contentTemplate\"\r\n        [tableLayout]=\"tableLayout\"\r\n        [listOfColWidth]=\"listOfColWidth\"\r\n        [theadTemplate]=\"theadTemplate\"\r\n      ></table>\r\n    </div>\r\n  `\r\n})\r\nexport class VtsTableInnerDefaultComponent {\r\n  @Input() tableLayout: VtsTableLayout = 'auto';\r\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\r\n  @Input() theadTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() contentTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-container');\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 {\r\n  AfterContentInit,\r\n  ContentChildren,\r\n  Directive,\r\n  OnDestroy,\r\n  Optional,\r\n  QueryList,\r\n  Input\r\n} from '@angular/core';\r\nimport { combineLatest, merge, Observable, ReplaySubject, Subject } from 'rxjs';\r\nimport { map, mergeMap, startWith, switchMap, takeUntil } from 'rxjs/operators';\r\nimport { VtsCellFixedDirective } from '../cell/cell-fixed.directive';\r\nimport { VtsThMeasureDirective } from '../cell/th-measure.directive';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\n\r\n@Directive({\r\n  selector:\r\n    'tr:not([mat-row]):not([mat-header-row]):not([vts-table-measure-row]):not([vtsExpand]):not([vts-table-fixed-row])',\r\n  host: {\r\n    '[class.vts-table-row]': 'isInsideTable',\r\n    '[class.vts-table-row-odd]': 'isOdd',\r\n    '[class.vts-table-row-even]': '!isOdd'\r\n  }\r\n})\r\nexport class VtsTrDirective implements AfterContentInit, OnDestroy {\r\n  @Input() isOdd: boolean = true;\r\n  @ContentChildren(VtsThMeasureDirective)\r\n  listOfVtsThDirective!: QueryList<VtsThMeasureDirective>;\r\n  @ContentChildren(VtsCellFixedDirective)\r\n  listOfCellFixedDirective!: QueryList<VtsCellFixedDirective>;\r\n  private destroy$ = new Subject<void>();\r\n  private listOfFixedColumns$ = new ReplaySubject<VtsCellFixedDirective[]>(1);\r\n  private listOfColumns$ = new ReplaySubject<VtsThMeasureDirective[]>(1);\r\n  listOfFixedColumnsChanges$: Observable<VtsCellFixedDirective[]> = this.listOfFixedColumns$.pipe(\r\n    switchMap(list =>\r\n      merge(\r\n        ...[this.listOfFixedColumns$, ...list.map((c: VtsCellFixedDirective) => c.changes$)]\r\n      ).pipe(mergeMap(() => this.listOfFixedColumns$))\r\n    ),\r\n    takeUntil(this.destroy$)\r\n  );\r\n  listOfFixedLeftColumnChanges$ = this.listOfFixedColumnsChanges$.pipe(\r\n    map(list => list.filter(item => item.vtsLeft !== false))\r\n  );\r\n  listOfFixedRightColumnChanges$ = this.listOfFixedColumnsChanges$.pipe(\r\n    map(list => list.filter(item => item.vtsRight !== false))\r\n  );\r\n  listOfColumnsChanges$: Observable<VtsThMeasureDirective[]> = this.listOfColumns$.pipe(\r\n    switchMap(list =>\r\n      merge(...[this.listOfColumns$, ...list.map((c: VtsThMeasureDirective) => c.changes$)]).pipe(\r\n        mergeMap(() => this.listOfColumns$)\r\n      )\r\n    ),\r\n    takeUntil(this.destroy$)\r\n  );\r\n  isInsideTable = false;\r\n\r\n  constructor(@Optional() private vtsTableStyleService: VtsTableStyleService) {\r\n    this.isInsideTable = !!vtsTableStyleService;\r\n  }\r\n\r\n  ngAfterContentInit(): void {\r\n    if (this.vtsTableStyleService) {\r\n      this.listOfCellFixedDirective.changes\r\n        .pipe(startWith(this.listOfCellFixedDirective), takeUntil(this.destroy$))\r\n        .subscribe(this.listOfFixedColumns$);\r\n      this.listOfVtsThDirective.changes\r\n        .pipe(startWith(this.listOfVtsThDirective), takeUntil(this.destroy$))\r\n        .subscribe(this.listOfColumns$);\r\n      /** set last left and first right **/\r\n      this.listOfFixedLeftColumnChanges$.subscribe(listOfFixedLeft => {\r\n        listOfFixedLeft.forEach(cell =>\r\n          cell.setIsLastLeft(cell === listOfFixedLeft[listOfFixedLeft.length - 1])\r\n        );\r\n      });\r\n      this.listOfFixedRightColumnChanges$.subscribe(listOfFixedRight => {\r\n        listOfFixedRight.forEach(cell => cell.setIsFirstRight(cell === listOfFixedRight[0]));\r\n      });\r\n      /** calculate fixed vtsLeft and vtsRight **/\r\n      combineLatest([\r\n        this.vtsTableStyleService.listOfListOfThWidth$,\r\n        this.listOfFixedLeftColumnChanges$\r\n      ])\r\n        .pipe(takeUntil(this.destroy$))\r\n        .subscribe(([listOfAutoWidth, listOfLeftCell]) => {\r\n          listOfLeftCell.forEach((cell, index) => {\r\n            if (cell.isAutoLeft) {\r\n              const currentArray = listOfLeftCell.slice(0, index);\r\n              const count = currentArray.reduce(\r\n                (pre, cur) => pre + (cur.colspan || cur.colSpan || 1),\r\n                0\r\n              );\r\n              const width = listOfAutoWidth.slice(0, count).reduce((pre, cur) => pre + cur, 0);\r\n              cell.setAutoLeftWidth(`${width}px`);\r\n            }\r\n          });\r\n        });\r\n      combineLatest([\r\n        this.vtsTableStyleService.listOfListOfThWidth$,\r\n        this.listOfFixedRightColumnChanges$\r\n      ])\r\n        .pipe(takeUntil(this.destroy$))\r\n        .subscribe(([listOfAutoWidth, listOfRightCell]) => {\r\n          listOfRightCell.forEach((_, index) => {\r\n            const cell = listOfRightCell[listOfRightCell.length - index - 1];\r\n            if (cell.isAutoRight) {\r\n              const currentArray = listOfRightCell.slice(\r\n                listOfRightCell.length - index,\r\n                listOfRightCell.length\r\n              );\r\n              const count = currentArray.reduce(\r\n                (pre, cur) => pre + (cur.colspan || cur.colSpan || 1),\r\n                0\r\n              );\r\n              const width = listOfAutoWidth\r\n                .slice(listOfAutoWidth.length - count, listOfAutoWidth.length)\r\n                .reduce((pre, cur) => pre + cur, 0);\r\n              cell.setAutoRightWidth(`${width}px`);\r\n            }\r\n          });\r\n        });\r\n    }\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/* tslint:disable:component-selector */\r\n\r\nimport {\r\n  AfterViewInit,\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  NgZone,\r\n  OnDestroy,\r\n  Output,\r\n  QueryList,\r\n  ViewChildren,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsResizeObserver } from '@vts-voffice/ng-vts/cdk/resize-observer';\r\nimport { combineLatest, Observable, Subject } from 'rxjs';\r\nimport { debounceTime, map, startWith, switchMap, takeUntil } from 'rxjs/operators';\r\n\r\n@Component({\r\n  selector: 'tr[vts-table-measure-row]',\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <td\r\n      #tdElement\r\n      class=\"vts-disable-td\"\r\n      style=\"padding: 0px; border: 0px; height: 0px;\"\r\n      *ngFor=\"let th of listOfMeasureColumn; trackBy: trackByFunc\"\r\n    ></td>\r\n  `\r\n})\r\nexport class VtsTrMeasureComponent implements AfterViewInit, OnDestroy {\r\n  @Input() listOfMeasureColumn: ReadonlyArray<string> = [];\r\n  @Output() readonly listOfAutoWidth = new EventEmitter<number[]>();\r\n  @ViewChildren('tdElement') listOfTdElement!: QueryList<ElementRef>;\r\n  private destroy$ = new Subject();\r\n  constructor(\r\n    private vtsResizeObserver: VtsResizeObserver,\r\n    private ngZone: NgZone,\r\n    private elementRef: ElementRef\r\n  ) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-measure-now');\r\n  }\r\n  trackByFunc(_: number, key: string): string {\r\n    return key;\r\n  }\r\n  ngAfterViewInit(): void {\r\n    this.listOfTdElement.changes\r\n      .pipe(startWith(this.listOfTdElement))\r\n      .pipe(\r\n        switchMap(list => {\r\n          return combineLatest(\r\n            list.toArray().map((item: ElementRef) => {\r\n              return this.vtsResizeObserver.observe(item).pipe(\r\n                map(([entry]) => {\r\n                  const { width } = entry.target.getBoundingClientRect();\r\n                  return Math.floor(width);\r\n                })\r\n              );\r\n            })\r\n          ) as Observable<number[]>;\r\n        }),\r\n        debounceTime(16),\r\n        takeUntil(this.destroy$)\r\n      )\r\n      .subscribe(data => {\r\n        this.ngZone.run(() => {\r\n          this.listOfAutoWidth.next(data);\r\n        });\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/* tslint:disable:component-selector */\r\n\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  OnDestroy,\r\n  Optional,\r\n  TemplateRef,\r\n  ViewEncapsulation,\r\n  ContentChildren,\r\n  QueryList,\r\n  AfterContentInit,\r\n  AfterViewInit\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\nimport { VtsTrDirective } from './tr.directive';\r\n\r\n@Component({\r\n  selector: 'tbody',\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <ng-container *ngIf=\"listOfMeasureColumn$ | async as listOfMeasureColumn\">\r\n      <tr\r\n        vts-table-measure-row\r\n        *ngIf=\"isInsideTable && listOfMeasureColumn.length\"\r\n        [listOfMeasureColumn]=\"listOfMeasureColumn\"\r\n        (listOfAutoWidth)=\"onListOfAutoWidthChange($event)\"\r\n      ></tr>\r\n    </ng-container>\r\n    <ng-content></ng-content>\r\n    <tr class=\"vts-table-placeholder\" vts-table-fixed-row *ngIf=\"showEmpty$ | async\">\r\n      <vts-embed-empty\r\n        vtsComponentName=\"table\"\r\n        [specificContent]=\"(noResult$ | async)!\"\r\n      ></vts-embed-empty>\r\n    </tr>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-tbody]': 'isInsideTable'\r\n  }\r\n})\r\nexport class VtsTbodyComponent implements OnDestroy, AfterContentInit, AfterViewInit {\r\n  @ContentChildren(VtsTrDirective, { descendants: true })\r\n  listOfVtsTrDirective!: QueryList<VtsTrDirective>;\r\n  isInsideTable = false;\r\n  showEmpty$ = new BehaviorSubject<boolean>(false);\r\n  noResult$ = new BehaviorSubject<string | TemplateRef<VtsSafeAny> | undefined>(undefined);\r\n  listOfMeasureColumn$ = new BehaviorSubject<ReadonlyArray<string>>([]);\r\n  private destroy$ = new Subject<void>();\r\n\r\n  constructor(@Optional() private vtsTableStyleService: VtsTableStyleService) {\r\n    this.isInsideTable = !!this.vtsTableStyleService;\r\n    if (this.vtsTableStyleService) {\r\n      const { showEmpty$, noResult$, listOfMeasureColumn$ } = this.vtsTableStyleService;\r\n      noResult$.pipe(takeUntil(this.destroy$)).subscribe(this.noResult$);\r\n      listOfMeasureColumn$.pipe(takeUntil(this.destroy$)).subscribe(this.listOfMeasureColumn$);\r\n      showEmpty$.pipe(takeUntil(this.destroy$)).subscribe(this.showEmpty$);\r\n    }\r\n  }\r\n\r\n  onListOfAutoWidthChange(listOfAutoWidth: number[]): void {\r\n    this.vtsTableStyleService.setListOfAutoWidth(listOfAutoWidth);\r\n  }\r\n\r\n  ngAfterViewInit() {\r\n    if (this.listOfVtsTrDirective.length) {\r\n      this.listOfVtsTrDirective.toArray().forEach((r, i) => (r.isOdd = i % 2 == 1));\r\n    }\r\n  }\r\n\r\n  ngAfterContentInit(): void {\r\n    this.listOfVtsTrDirective.changes\r\n      .pipe(takeUntil(this.destroy$))\r\n      .subscribe((rows: QueryList<VtsTrDirective>) => {\r\n        rows.toArray().forEach((r, i) => (r.isOdd = i % 2 == 1));\r\n      });\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 { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\r\nimport {\r\n  AfterViewInit,\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ElementRef,\r\n  Input,\r\n  NgZone,\r\n  OnChanges,\r\n  OnDestroy,\r\n  Renderer2,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  TrackByFunction,\r\n  ViewChild,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsResizeService } from '@vts-voffice/ng-vts/core/services';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { fromEvent, merge, Subject } from 'rxjs';\r\nimport { delay, filter, startWith, switchMap, takeUntil } from 'rxjs/operators';\r\nimport { VtsTableData } from '../table.types';\r\n\r\n@Component({\r\n  selector: 'vts-table-inner-scroll',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <ng-container *ngIf=\"scrollY\">\r\n      <div\r\n        #tableHeaderElement\r\n        [ngStyle]=\"headerStyleMap\"\r\n        class=\"vts-table-header vts-table-hide-scrollbar\"\r\n      >\r\n        <table\r\n          vts-table-content\r\n          tableLayout=\"fixed\"\r\n          [scrollX]=\"scrollX\"\r\n          [listOfColWidth]=\"listOfColWidth\"\r\n          [theadTemplate]=\"theadTemplate\"\r\n        ></table>\r\n      </div>\r\n      <div\r\n        #tableBodyElement\r\n        *ngIf=\"!virtualTemplate\"\r\n        class=\"vts-table-body\"\r\n        [ngStyle]=\"bodyStyleMap\"\r\n      >\r\n        <table\r\n          vts-table-content\r\n          tableLayout=\"fixed\"\r\n          [scrollX]=\"scrollX\"\r\n          [listOfColWidth]=\"listOfColWidth\"\r\n          [contentTemplate]=\"contentTemplate\"\r\n        ></table>\r\n      </div>\r\n      <cdk-virtual-scroll-viewport\r\n        #tableBodyElement\r\n        *ngIf=\"virtualTemplate\"\r\n        [itemSize]=\"virtualItemSize\"\r\n        [maxBufferPx]=\"virtualMaxBufferPx\"\r\n        [minBufferPx]=\"virtualMinBufferPx\"\r\n        [style.height]=\"data.length ? scrollY : noDateVirtualHeight\"\r\n      >\r\n        <table\r\n          vts-table-content\r\n          tableLayout=\"fixed\"\r\n          [scrollX]=\"scrollX\"\r\n          [listOfColWidth]=\"listOfColWidth\"\r\n        >\r\n          <tbody>\r\n            <ng-container\r\n              *cdkVirtualFor=\"let item of data; let i = index; trackBy: virtualForTrackBy\"\r\n            >\r\n              <ng-template\r\n                [ngTemplateOutlet]=\"virtualTemplate\"\r\n                [ngTemplateOutletContext]=\"{\r\n                  $implicit: item,\r\n                  index: i\r\n                }\"\r\n              ></ng-template>\r\n            </ng-container>\r\n          </tbody>\r\n        </table>\r\n      </cdk-virtual-scroll-viewport>\r\n    </ng-container>\r\n    <div class=\"vts-table-content\" #tableBodyElement *ngIf=\"!scrollY\" [ngStyle]=\"bodyStyleMap\">\r\n      <table\r\n        vts-table-content\r\n        tableLayout=\"fixed\"\r\n        [scrollX]=\"scrollX\"\r\n        [listOfColWidth]=\"listOfColWidth\"\r\n        [theadTemplate]=\"theadTemplate\"\r\n        [contentTemplate]=\"contentTemplate\"\r\n      ></table>\r\n    </div>\r\n  `\r\n})\r\nexport class VtsTableInnerScrollComponent implements OnChanges, AfterViewInit, OnDestroy {\r\n  @Input() data: ReadonlyArray<VtsTableData> = [];\r\n  @Input() scrollX: string | null = null;\r\n  @Input() scrollY: string | null = null;\r\n  @Input() contentTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() widthConfig: string[] = [];\r\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\r\n  @Input() theadTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() virtualTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() virtualItemSize = 0;\r\n  @Input() virtualMaxBufferPx = 200;\r\n  @Input() virtualMinBufferPx = 100;\r\n  @Input() tableMainElement?: HTMLDivElement;\r\n  @Input() virtualForTrackBy: TrackByFunction<VtsTableData> = index => index;\r\n  @ViewChild('tableHeaderElement', { read: ElementRef })\r\n  tableHeaderElement!: ElementRef;\r\n  @ViewChild('tableBodyElement', { read: ElementRef })\r\n  tableBodyElement!: ElementRef;\r\n  @ViewChild(CdkVirtualScrollViewport, { read: CdkVirtualScrollViewport })\r\n  cdkVirtualScrollViewport?: CdkVirtualScrollViewport;\r\n  headerStyleMap = {};\r\n  bodyStyleMap = {};\r\n  @Input() verticalScrollBarWidth = 0;\r\n  noDateVirtualHeight = '182px';\r\n  private data$ = new Subject<void>();\r\n  private scroll$ = new Subject<void>();\r\n  private destroy$ = new Subject<void>();\r\n\r\n  setScrollPositionClassName(clear: boolean = false): void {\r\n    const { scrollWidth, scrollLeft, clientWidth } = this.tableBodyElement.nativeElement;\r\n    const leftClassName = 'vts-table-ping-left';\r\n    const rightClassName = 'vts-table-ping-right';\r\n    if ((scrollWidth === clientWidth && scrollWidth !== 0) || clear) {\r\n      this.renderer.removeClass(this.tableMainElement, leftClassName);\r\n      this.renderer.removeClass(this.tableMainElement, rightClassName);\r\n    } else if (scrollLeft === 0) {\r\n      this.renderer.removeClass(this.tableMainElement, leftClassName);\r\n      this.renderer.addClass(this.tableMainElement, rightClassName);\r\n    } else if (scrollWidth === scrollLeft + clientWidth) {\r\n      this.renderer.removeClass(this.tableMainElement, rightClassName);\r\n      this.renderer.addClass(this.tableMainElement, leftClassName);\r\n    } else {\r\n      this.renderer.addClass(this.tableMainElement, leftClassName);\r\n      this.renderer.addClass(this.tableMainElement, rightClassName);\r\n    }\r\n  }\r\n\r\n  constructor(\r\n    private renderer: Renderer2,\r\n    private ngZone: NgZone,\r\n    private platform: Platform,\r\n    private resizeService: VtsResizeService,\r\n    private elementRef: ElementRef\r\n  ) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-container');\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const { scrollX, scrollY, data } = changes;\r\n    if (scrollX || scrollY) {\r\n      const hasVerticalScrollBar = this.verticalScrollBarWidth !== 0;\r\n      this.headerStyleMap = {\r\n        overflowX: 'hidden',\r\n        overflowY: this.scrollY && hasVerticalScrollBar ? 'scroll' : 'hidden'\r\n      };\r\n      this.bodyStyleMap = {\r\n        overflowY: this.scrollY ? 'scroll' : 'hidden',\r\n        overflowX: this.scrollX ? 'auto' : null,\r\n        maxHeight: this.scrollY\r\n      };\r\n      this.scroll$.next();\r\n    }\r\n    if (data) {\r\n      this.data$.next();\r\n    }\r\n  }\r\n  ngAfterViewInit(): void {\r\n    if (this.platform.isBrowser) {\r\n      this.ngZone.runOutsideAngular(() => {\r\n        const scrollEvent$ = this.scroll$.pipe(\r\n          startWith(null),\r\n          delay(0),\r\n          switchMap(() =>\r\n            fromEvent<MouseEvent>(this.tableBodyElement.nativeElement, 'scroll').pipe(\r\n              startWith(true)\r\n            )\r\n          ),\r\n          takeUntil(this.destroy$)\r\n        );\r\n        const resize$ = this.resizeService.subscribe().pipe(takeUntil(this.destroy$));\r\n        const data$ = this.data$.pipe(takeUntil(this.destroy$));\r\n        const setClassName$ = merge(scrollEvent$, resize$, data$, this.scroll$).pipe(\r\n          startWith(true),\r\n          delay(0),\r\n          takeUntil(this.destroy$)\r\n        );\r\n        setClassName$.subscribe(() => this.setScrollPositionClassName());\r\n        scrollEvent$\r\n          .pipe(filter(() => !!this.scrollY))\r\n          .subscribe(\r\n            () =>\r\n              (this.tableHeaderElement.nativeElement.scrollLeft =\r\n                this.tableBodyElement.nativeElement.scrollLeft)\r\n          );\r\n      });\r\n    }\r\n  }\r\n  ngOnDestroy(): void {\r\n    this.setScrollPositionClassName(true);\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 { Directive, TemplateRef } from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\n\r\n@Directive({\r\n  selector: '[vts-virtual-scroll]',\r\n  exportAs: 'vtsVirtualScroll'\r\n})\r\nexport class VtsTableVirtualScrollDirective {\r\n  constructor(public templateRef: TemplateRef<{ $implicit: VtsSafeAny; index: number }>) {}\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 { Injectable, OnDestroy } from '@angular/core';\r\nimport { BehaviorSubject, combineLatest, Observable, Subject } from 'rxjs';\r\nimport {\r\n  debounceTime,\r\n  distinctUntilChanged,\r\n  filter,\r\n  map,\r\n  skip,\r\n  switchMap,\r\n  takeUntil\r\n} from 'rxjs/operators';\r\nimport {\r\n  VtsTableData,\r\n  VtsTableFilterFn,\r\n  VtsTableFilterValue,\r\n  VtsTableQueryParams,\r\n  VtsTableSortFn,\r\n  VtsTableSortOrder\r\n} from './table.types';\r\n\r\n@Injectable()\r\nexport class VtsTableDataService implements OnDestroy {\r\n  private destroy$ = new Subject();\r\n  private pageIndex$ = new BehaviorSubject<number>(1);\r\n  private frontPagination$ = new BehaviorSubject<boolean>(true);\r\n  private pageSize$ = new BehaviorSubject<number>(10);\r\n  private listOfData$ = new BehaviorSubject<ReadonlyArray<VtsTableData>>([]);\r\n  pageIndexDistinct$ = this.pageIndex$.pipe(distinctUntilChanged());\r\n  pageSizeDistinct$ = this.pageSize$.pipe(distinctUntilChanged());\r\n  listOfCalcOperator$ = new BehaviorSubject<\r\n    Array<{\r\n      key?: string;\r\n      sortFn: VtsTableSortFn | null | boolean;\r\n      sortOrder: VtsTableSortOrder;\r\n      filterFn: VtsTableFilterFn | null | boolean;\r\n      filterValue: VtsTableFilterValue;\r\n      sortPriority: number | boolean;\r\n    }>\r\n  >([]);\r\n  queryParams$: Observable<VtsTableQueryParams> = combineLatest([\r\n    this.pageIndexDistinct$,\r\n    this.pageSizeDistinct$,\r\n    this.listOfCalcOperator$\r\n  ]).pipe(\r\n    debounceTime(0),\r\n    skip(1),\r\n    map(([pageIndex, pageSize, listOfCalc]) => {\r\n      return {\r\n        pageIndex,\r\n        pageSize,\r\n        sort: listOfCalc\r\n          .filter(item => item.sortFn)\r\n          .map(item => {\r\n            return {\r\n              key: item.key!,\r\n              value: item.sortOrder\r\n            };\r\n          }),\r\n        filter: listOfCalc\r\n          .filter(item => item.filterFn)\r\n          .map(item => {\r\n            return {\r\n              key: item.key!,\r\n              value: item.filterValue\r\n            };\r\n          })\r\n      };\r\n    })\r\n  );\r\n  private listOfDataAfterCalc$ = combineLatest([this.listOfData$, this.listOfCalcOperator$]).pipe(\r\n    map(([listOfData, listOfCalcOperator]) => {\r\n      let listOfDataAfterCalc = [...listOfData];\r\n      const listOfFilterOperator = listOfCalcOperator.filter(item => {\r\n        const { filterValue, filterFn } = item;\r\n        const isReset =\r\n          filterValue === null ||\r\n          filterValue === undefined ||\r\n          (Array.isArray(filterValue) && filterValue!.length === 0);\r\n        return !isReset && typeof filterFn === 'function';\r\n      });\r\n      for (const item of listOfFilterOperator) {\r\n        const { filterFn, filterValue } = item;\r\n        listOfDataAfterCalc = listOfDataAfterCalc.filter(data =>\r\n          (filterFn as VtsTableFilterFn)(filterValue, data)\r\n        );\r\n      }\r\n      const listOfSortOperator = listOfCalcOperator\r\n        .filter(item => item.sortOrder !== null && typeof item.sortFn === 'function')\r\n        .sort((a, b) => +b.sortPriority - +a.sortPriority);\r\n      if (listOfCalcOperator.length) {\r\n        listOfDataAfterCalc.sort((record1, record2) => {\r\n          for (const item of listOfSortOperator) {\r\n            const { sortFn, sortOrder } = item;\r\n            if (sortFn && sortOrder) {\r\n              const compareResult = (sortFn as VtsTableSortFn)(record1, record2, sortOrder);\r\n              if (compareResult !== 0) {\r\n                return sortOrder === 'ascend' ? compareResult : -compareResult;\r\n              }\r\n            }\r\n          }\r\n          return 0;\r\n        });\r\n      }\r\n      return listOfDataAfterCalc;\r\n    })\r\n  );\r\n  private listOfFrontEndCurrentPageData$ = combineLatest([\r\n    this.pageIndexDistinct$,\r\n    this.pageSizeDistinct$,\r\n    this.listOfDataAfterCalc$\r\n  ]).pipe(\r\n    takeUntil(this.destroy$),\r\n    filter(value => {\r\n      const [pageIndex, pageSize, listOfData] = value;\r\n      const maxPageIndex = Math.ceil(listOfData.length / pageSize) || 1;\r\n      return pageIndex <= maxPageIndex;\r\n    }),\r\n    map(([pageIndex, pageSize, listOfData]) => {\r\n      return listOfData.slice((pageIndex - 1) * pageSize, pageIndex * pageSize);\r\n    })\r\n  );\r\n  listOfCurrentPageData$ = this.frontPagination$.pipe(\r\n    switchMap(pagination => (pagination ? this.listOfFrontEndCurrentPageData$ : this.listOfData$))\r\n  );\r\n  total$ = this.frontPagination$.pipe(\r\n    switchMap(pagination => (pagination ? this.listOfDataAfterCalc$ : this.listOfData$)),\r\n    map(list => list.length),\r\n    distinctUntilChanged()\r\n  );\r\n\r\n  updatePageSize(size: number): void {\r\n    this.pageSize$.next(size);\r\n  }\r\n  updateFrontPagination(pagination: boolean): void {\r\n    this.frontPagination$.next(pagination);\r\n  }\r\n  updatePageIndex(index: number): void {\r\n    this.pageIndex$.next(index);\r\n  }\r\n  updateListOfData(list: ReadonlyArray<VtsTableData>): void {\r\n    this.listOfData$.next(list);\r\n  }\r\n  constructor() {}\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 {\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  Input,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\n\r\n@Component({\r\n  selector: 'vts-table-title-footer',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <ng-container *vtsStringTemplateOutlet=\"title\">{{ title }}</ng-container>\r\n    <ng-container *vtsStringTemplateOutlet=\"footer\">{{ footer }}</ng-container>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-title]': `title !== null`,\r\n    '[class.vts-table-footer]': `footer !== null`\r\n  }\r\n})\r\nexport class VtsTableTitleFooterComponent {\r\n  @Input() title: string | TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() footer: string | TemplateRef<VtsSafeAny> | null = null;\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 { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\r\nimport {\r\n  AfterViewInit,\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ContentChild,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  Output,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  TrackByFunction,\r\n  ViewChild,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsConfigKey, VtsConfigService, WithConfig } from '@vts-voffice/ng-vts/core/config';\r\nimport { VtsResizeObserver } from '@vts-voffice/ng-vts/cdk/resize-observer';\r\nimport { BooleanInput, VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean, measureScrollbar } from '@vts-voffice/ng-vts/core/util';\r\nimport { PaginationItemRenderContext, VtsPaginationComponent } from '@vts-voffice/ng-vts/pagination';\r\nimport { BehaviorSubject, combineLatest, Subject } from 'rxjs';\r\nimport { filter, map, takeUntil } from 'rxjs/operators';\r\nimport { VtsTableDataService } from '../table-data.service';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\nimport {\r\n  VtsTableData,\r\n  VtsTableLayout,\r\n  VtsTablePaginationPosition,\r\n  VtsTableQueryParams,\r\n  VtsTableSize\r\n} from '../table.types';\r\nimport { VtsTableInnerScrollComponent } from './table-inner-scroll.component';\r\nimport { VtsTableVirtualScrollDirective } from './table-virtual-scroll.directive';\r\n\r\nconst VTS_CONFIG_MODULE_NAME: VtsConfigKey = 'table';\r\n\r\n@Component({\r\n  selector: 'vts-table',\r\n  exportAs: 'vtsTable',\r\n  providers: [VtsTableStyleService, VtsTableDataService],\r\n  preserveWhitespaces: false,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <vts-spin\r\n      [vtsDelay]=\"vtsLoadingDelay\"\r\n      [vtsSpinning]=\"vtsLoading\"\r\n      [vtsIndicator]=\"vtsLoadingIndicator\"\r\n    >\r\n      <ng-container *ngIf=\"vtsPaginationPosition === 'both' || vtsPaginationPosition === 'top'\">\r\n        <ng-template [ngTemplateOutlet]=\"paginationTemplate\"></ng-template>\r\n      </ng-container>\r\n      <div\r\n        #tableMainElement\r\n        class=\"vts-table\"\r\n        [class.vts-table-rtl]=\"dir === 'rtl'\"\r\n        [class.vts-table-fixed-header]=\"vtsData.length && scrollY\"\r\n        [class.vts-table-fixed-column]=\"scrollX\"\r\n        [class.vts-table-has-fix-left]=\"hasFixLeft\"\r\n        [class.vts-table-has-fix-right]=\"hasFixRight\"\r\n        [class.vts-table-bordered]=\"vtsBordered\"\r\n        [class.vts-table-out-bordered]=\"vtsOuterBordered && !vtsBordered\"\r\n        [class.vts-table-lg]=\"vtsSize === 'lg'\"\r\n        [class.vts-table-sm]=\"vtsSize === 'sm'\"\r\n        [class.vts-table-stripe]=\"vtsStripe\"\r\n      >\r\n        <vts-table-title-footer [title]=\"vtsTitle\" *ngIf=\"vtsTitle\"></vts-table-title-footer>\r\n        <vts-table-inner-scroll\r\n          *ngIf=\"scrollY || scrollX; else defaultTemplate\"\r\n          [data]=\"data\"\r\n          [scrollX]=\"scrollX\"\r\n          [scrollY]=\"scrollY\"\r\n          [contentTemplate]=\"contentTemplate\"\r\n          [listOfColWidth]=\"listOfAutoColWidth\"\r\n          [theadTemplate]=\"theadTemplate\"\r\n          [verticalScrollBarWidth]=\"verticalScrollBarWidth\"\r\n          [virtualTemplate]=\"\r\n            vtsVirtualScrollDirective ? vtsVirtualScrollDirective.templateRef : null\r\n          \"\r\n          [virtualItemSize]=\"vtsVirtualItemSize\"\r\n          [virtualMaxBufferPx]=\"vtsVirtualMaxBufferPx\"\r\n          [virtualMinBufferPx]=\"vtsVirtualMinBufferPx\"\r\n          [tableMainElement]=\"tableMainElement\"\r\n          [virtualForTrackBy]=\"vtsVirtualForTrackBy\"\r\n        ></vts-table-inner-scroll>\r\n        <ng-template #defaultTemplate>\r\n          <vts-table-inner-default\r\n            [tableLayout]=\"vtsTableLayout\"\r\n            [listOfColWidth]=\"listOfManualColWidth\"\r\n            [theadTemplate]=\"theadTemplate\"\r\n            [contentTemplate]=\"contentTemplate\"\r\n          ></vts-table-inner-default>\r\n        </ng-template>\r\n        <vts-table-title-footer [footer]=\"vtsFooter\" *ngIf=\"vtsFooter\"></vts-table-title-footer>\r\n      </div>\r\n      <ng-container *ngIf=\"vtsPaginationPosition === 'both' || vtsPaginationPosition === 'bottom'\">\r\n        <ng-template [ngTemplateOutlet]=\"paginationTemplate\"></ng-template>\r\n      </ng-container>\r\n    </vts-spin>\r\n    <ng-template #paginationTemplate>\r\n      <vts-pagination\r\n        *ngIf=\"vtsShowPagination && data.length\"\r\n        [hidden]=\"!showPagination\"\r\n        class=\"vts-table-pagination vts-table-pagination-right\"\r\n        [vtsShowSizeChanger]=\"vtsShowSizeChanger\"\r\n        [vtsPageSizeOptions]=\"vtsPageSizeOptions\"\r\n        [vtsItemRender]=\"vtsItemRender!\"\r\n        [vtsShowQuickJumper]=\"vtsShowQuickJumper\"\r\n        [vtsHidePaginationOnSinglePage]=\"vtsHidePaginationOnSinglePage\"\r\n        [vtsShowTotal]=\"vtsShowTotal\"\r\n        [vtsPageSize]=\"vtsPageSize\"\r\n        [vtsTotal]=\"vtsTotal\"\r\n        [vtsSimple]=\"vtsSimple\"\r\n        [vtsMini]=\"vtsMini\"\r\n        [vtsResponsive]=\"vtsResponsive\"\r\n        [vtsRounded]=\"vtsRounded\"\r\n        [vtsOutline]=\"vtsOutline\"\r\n        [vtsPageIndex]=\"vtsPageIndex\"\r\n        (vtsPageSizeChange)=\"onPageSizeChange($event)\"\r\n        (vtsPageIndexChange)=\"onPageIndexChange($event)\"\r\n      ></vts-pagination>\r\n    </ng-template>\r\n    <ng-template #contentTemplate>\r\n      <ng-content></ng-content>\r\n    </ng-template>\r\n  `,\r\n  host: {\r\n    '[class.vts-table-wrapper-rtl]': 'dir === \"rtl\"'\r\n  }\r\n})\r\nexport class VtsTableComponent<T = VtsSafeAny>\r\n  implements OnInit, OnDestroy, OnChanges, AfterViewInit\r\n{\r\n  readonly _vtsModuleName: VtsConfigKey = VTS_CONFIG_MODULE_NAME;\r\n\r\n  static ngAcceptInputType_vtsClientPagination: BooleanInput;\r\n  static ngAcceptInputType_vtsTemplateMode: BooleanInput;\r\n  static ngAcceptInputType_vtsShowPagination: BooleanInput;\r\n  static ngAcceptInputType_vtsLoading: BooleanInput;\r\n  static ngAcceptInputType_vtsBordered: BooleanInput;\r\n  static ngAcceptInputType_vtsOuterBordered: BooleanInput;\r\n  static ngAcceptInputType_vtsShowSizeChanger: BooleanInput;\r\n  static ngAcceptInputType_vtsHidePaginationOnSinglePage: BooleanInput;\r\n  static ngAcceptInputType_vtsShowQuickJumper: BooleanInput;\r\n  static ngAcceptInputType_vtsSimple: BooleanInput;\r\n  static ngAcceptInputType_vtsMini: BooleanInput;\r\n  static ngAcceptInputType_vtsOutline: BooleanInput;\r\n  static ngAcceptInputType_vtsRounded: BooleanInput;\r\n  static ngAcceptInputType_vtsResponsive: BooleanInput;\r\n  static ngAcceptInputType_vtsStripe: BooleanInput;\r\n\r\n  @Input() vtsTableLayout: VtsTableLayout = 'auto';\r\n  @Input() vtsShowTotal: TemplateRef<{\r\n    $implicit: number;\r\n    range: [number, number];\r\n  }> | null = null;\r\n  @Input()\r\n  @Input()\r\n  vtsItemRender: TemplateRef<PaginationItemRenderContext> | null = null;\r\n  @Input() vtsTitle: string | TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() vtsFooter: string | TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() vtsNoResult: string | TemplateRef<VtsSafeAny> | undefined = undefined;\r\n  @Input() vtsPageSizeOptions = [10, 20, 30, 40];\r\n  @Input() vtsVirtualItemSize = 0;\r\n  @Input() vtsVirtualMaxBufferPx = 200;\r\n  @Input() vtsVirtualMinBufferPx = 100;\r\n  @Input() vtsVirtualForTrackBy: TrackByFunction<VtsTableData> = index => index;\r\n  @Input() vtsLoadingDelay = 0;\r\n  @Input() vtsPageIndex = 1;\r\n  @Input() vtsPageSize = 10;\r\n  @Input() vtsTotal = 0;\r\n  @Input() vtsWidthConfig: ReadonlyArray<string | null> = [];\r\n  @Input() vtsData: ReadonlyArray<T> = [];\r\n  @Input() vtsPaginationPosition: VtsTablePaginationPosition = 'bottom';\r\n  @Input() vtsScroll: { x?: string | null; y?: string | null } = {\r\n    x: null,\r\n    y: null\r\n  };\r\n  @Input() @InputBoolean() vtsClientPagination = true;\r\n  @Input() @InputBoolean() vtsTemplateMode = false;\r\n  @Input() @InputBoolean() vtsShowPagination = false;\r\n  @Input() @InputBoolean() vtsLoading = false;\r\n  @Input() @InputBoolean() vtsOuterBordered = false;\r\n  @Input() vtsLoadingIndicator: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() @WithConfig() @InputBoolean() vtsBordered: boolean = true;\r\n  @Input() @WithConfig() vtsSize: VtsTableSize = 'sm';\r\n  @Input() @WithConfig() @InputBoolean() vtsShowSizeChanger: boolean = false;\r\n  @Input() @WithConfig() @InputBoolean() vtsHidePaginationOnSinglePage: boolean = true;\r\n  @Input() @WithConfig() @InputBoolean() vtsShowQuickJumper: boolean = false;\r\n  @Input() @WithConfig() @InputBoolean() vtsSimple: boolean = false;\r\n  @Input() @InputBoolean() vtsMini: boolean = false;\r\n  @Input() @InputBoolean() vtsResponsive: boolean = false;\r\n  @Input() @InputBoolean() vtsRounded: boolean = false;\r\n  @Input() @InputBoolean() vtsOutline: boolean = false;\r\n  @Input() @InputBoolean() vtsStripe: boolean = true;\r\n  @Output() readonly vtsPageSizeChange = new EventEmitter<number>();\r\n  @Output() readonly vtsPageIndexChange = new EventEmitter<number>();\r\n  @Output() readonly vtsQueryParams = new EventEmitter<VtsTableQueryParams>();\r\n  @Output() readonly vtsCurrentPageDataChange = new EventEmitter<ReadonlyArray<VtsTableData>>();\r\n\r\n  @ViewChild(VtsPaginationComponent) pagination?: VtsPaginationComponent;\r\n\r\n  /** public data for ngFor tr */\r\n  public data: ReadonlyArray<T> = [];\r\n  public cdkVirtualScrollViewport?: CdkVirtualScrollViewport;\r\n  scrollX: string | null = null;\r\n  scrollY: string | null = null;\r\n  theadTemplate: TemplateRef<VtsSafeAny> | null = null;\r\n  listOfAutoColWidth: ReadonlyArray<string | null> = [];\r\n  listOfManualColWidth: ReadonlyArray<string | null> = [];\r\n  hasFixLeft = false;\r\n  hasFixRight = false;\r\n  showPagination = true;\r\n  private destroy$ = new Subject<void>();\r\n  private loading$ = new BehaviorSubject<boolean>(false);\r\n  private templateMode$ = new BehaviorSubject<boolean>(false);\r\n  dir: Direction = 'ltr';\r\n  @ContentChild(VtsTableVirtualScrollDirective, { static: false })\r\n  vtsVirtualScrollDirective!: VtsTableVirtualScrollDirective;\r\n  @ViewChild(VtsTableInnerScrollComponent)\r\n  vtsTableInnerScrollComponent!: VtsTableInnerScrollComponent;\r\n  verticalScrollBarWidth = 0;\r\n  onPageSizeChange(size: number): void {\r\n    this.vtsTableDataService.updatePageSize(size);\r\n  }\r\n\r\n  onPageIndexChange(index: number): void {\r\n    this.vtsTableDataService.updatePageIndex(index);\r\n  }\r\n\r\n  constructor(\r\n    private elementRef: ElementRef,\r\n    private vtsResizeObserver: VtsResizeObserver,\r\n    private vtsConfigService: VtsConfigService,\r\n    private cdr: ChangeDetectorRef,\r\n    private vtsTableStyleService: VtsTableStyleService,\r\n    private vtsTableDataService: VtsTableDataService,\r\n    @Optional() private directionality: Directionality\r\n  ) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-wrapper');\r\n    this.vtsConfigService\r\n      .getConfigChangeEventForComponent(VTS_CONFIG_MODULE_NAME)\r\n      .pipe(takeUntil(this.destroy$))\r\n      .subscribe(() => {\r\n        this.cdr.markForCheck();\r\n      });\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    const { pageIndexDistinct$, pageSizeDistinct$, listOfCurrentPageData$, total$, queryParams$ } =\r\n      this.vtsTableDataService;\r\n    const { theadTemplate$, hasFixLeft$, hasFixRight$ } = this.vtsTableStyleService;\r\n\r\n    this.dir = this.directionality.value;\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    queryParams$.pipe(takeUntil(this.destroy$)).subscribe(this.vtsQueryParams);\r\n    pageIndexDistinct$.pipe(takeUntil(this.destroy$)).subscribe(pageIndex => {\r\n      if (pageIndex !== this.vtsPageIndex) {\r\n        this.vtsPageIndex = pageIndex;\r\n        this.vtsPageIndexChange.next(pageIndex);\r\n      }\r\n    });\r\n    pageSizeDistinct$.pipe(takeUntil(this.destroy$)).subscribe(pageSize => {\r\n      if (pageSize !== this.vtsPageSize) {\r\n        this.vtsPageSize = pageSize;\r\n        this.vtsPageSizeChange.next(pageSize);\r\n      }\r\n    });\r\n    total$\r\n      .pipe(\r\n        takeUntil(this.destroy$),\r\n        filter(() => this.vtsClientPagination)\r\n      )\r\n      .subscribe(total => {\r\n        if (total !== this.vtsTotal) {\r\n          this.vtsTotal = total;\r\n          this.cdr.markForCheck();\r\n        }\r\n      });\r\n    listOfCurrentPageData$.pipe(takeUntil(this.destroy$)).subscribe(data => {\r\n      this.data = data;\r\n      this.vtsCurrentPageDataChange.next(data);\r\n      this.cdr.markForCheck();\r\n    });\r\n\r\n    theadTemplate$.pipe(takeUntil(this.destroy$)).subscribe(theadTemplate => {\r\n      this.theadTemplate = theadTemplate;\r\n      this.cdr.markForCheck();\r\n    });\r\n\r\n    hasFixLeft$.pipe(takeUntil(this.destroy$)).subscribe(hasFixLeft => {\r\n      this.hasFixLeft = hasFixLeft;\r\n      this.cdr.markForCheck();\r\n    });\r\n\r\n    hasFixRight$.pipe(takeUntil(this.destroy$)).subscribe(hasFixRight => {\r\n      this.hasFixRight = hasFixRight;\r\n      this.cdr.markForCheck();\r\n    });\r\n\r\n    combineLatest([total$, this.loading$, this.templateMode$])\r\n      .pipe(\r\n        map(([total, loading, templateMode]) => total === 0 && !loading && !templateMode),\r\n        takeUntil(this.destroy$)\r\n      )\r\n      .subscribe(empty => {\r\n        this.vtsTableStyleService.setShowEmpty(empty);\r\n      });\r\n\r\n    this.verticalScrollBarWidth = measureScrollbar('vertical');\r\n    this.vtsTableStyleService.listOfListOfThWidthPx$\r\n      .pipe(takeUntil(this.destroy$))\r\n      .subscribe(listOfWidth => {\r\n        this.listOfAutoColWidth = listOfWidth;\r\n        this.cdr.markForCheck();\r\n      });\r\n    this.vtsTableStyleService.manualWidthConfigPx$\r\n      .pipe(takeUntil(this.destroy$))\r\n      .subscribe(listOfWidth => {\r\n        this.listOfManualColWidth = listOfWidth;\r\n        this.cdr.markForCheck();\r\n      });\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const {\r\n      vtsScroll,\r\n      vtsPageIndex,\r\n      vtsPageSize,\r\n      vtsClientPagination,\r\n      vtsData,\r\n      vtsWidthConfig,\r\n      vtsNoResult,\r\n      vtsLoading,\r\n      vtsTemplateMode\r\n    } = changes;\r\n    if (vtsPageIndex) {\r\n      this.vtsTableDataService.updatePageIndex(this.vtsPageIndex);\r\n    }\r\n    if (vtsPageSize) {\r\n      this.vtsTableDataService.updatePageSize(this.vtsPageSize);\r\n    }\r\n    if (vtsData) {\r\n      this.vtsData = this.vtsData || [];\r\n      this.vtsTableDataService.updateListOfData(this.vtsData);\r\n    }\r\n    if (vtsClientPagination) {\r\n      this.vtsTableDataService.updateFrontPagination(this.vtsClientPagination);\r\n    }\r\n    if (vtsScroll) {\r\n      this.setScrollOnChanges();\r\n    }\r\n    if (vtsWidthConfig) {\r\n      this.vtsTableStyleService.setTableWidthConfig(this.vtsWidthConfig);\r\n    }\r\n    if (vtsLoading) {\r\n      this.loading$.next(this.vtsLoading);\r\n    }\r\n    if (vtsTemplateMode) {\r\n      this.templateMode$.next(this.vtsTemplateMode);\r\n    }\r\n    if (vtsNoResult) {\r\n      this.vtsTableStyleService.setNoResult(this.vtsNoResult);\r\n    }\r\n\r\n    this.updateShowPagination();\r\n  }\r\n\r\n  ngAfterViewInit(): void {\r\n    this.vtsResizeObserver\r\n      .observe(this.elementRef)\r\n      .pipe(\r\n        map(([entry]) => {\r\n          const { width } = entry.target.getBoundingClientRect();\r\n          const scrollBarWidth = this.scrollY ? this.verticalScrollBarWidth : 0;\r\n          return Math.floor(width - scrollBarWidth);\r\n        }),\r\n        takeUntil(this.destroy$)\r\n      )\r\n      .subscribe(this.vtsTableStyleService.hostWidth$);\r\n    if (\r\n      this.vtsTableInnerScrollComponent &&\r\n      this.vtsTableInnerScrollComponent.cdkVirtualScrollViewport\r\n    ) {\r\n      this.cdkVirtualScrollViewport = this.vtsTableInnerScrollComponent.cdkVirtualScrollViewport;\r\n    }\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.destroy$.next();\r\n    this.destroy$.complete();\r\n  }\r\n\r\n  private setScrollOnChanges(): void {\r\n    this.scrollX = (this.vtsScroll && this.vtsScroll.x) || null;\r\n    this.scrollY = (this.vtsScroll && this.vtsScroll.y) || null;\r\n    this.vtsTableStyleService.setScroll(this.scrollX, this.scrollY);\r\n  }\r\n\r\n  private updateShowPagination(): void {\r\n    this.showPagination =\r\n      (this.vtsHidePaginationOnSinglePage && this.vtsData.length > this.vtsPageSize) ||\r\n      (this.vtsData.length > 0 && !this.vtsHidePaginationOnSinglePage) ||\r\n      (!this.vtsClientPagination && this.vtsTotal > this.vtsPageSize);\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/* tslint:disable:component-selector */\r\nimport {\r\n  AfterContentInit,\r\n  AfterViewInit,\r\n  ChangeDetectionStrategy,\r\n  Component,\r\n  ContentChildren,\r\n  ElementRef,\r\n  EventEmitter,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  Output,\r\n  QueryList,\r\n  Renderer2,\r\n  TemplateRef,\r\n  ViewChild,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\n\r\nimport { EMPTY, merge, Observable, of, Subject } from 'rxjs';\r\nimport { delay, map, mergeMap, startWith, switchMap, takeUntil } from 'rxjs/operators';\r\nimport { VtsThAddOnComponent } from '../cell/th-addon.component';\r\nimport { VtsTableDataService } from '../table-data.service';\r\nimport { VtsTableStyleService } from '../table-style.service';\r\nimport { VtsTrDirective } from './tr.directive';\r\n\r\n@Component({\r\n  selector: 'thead:not(.vts-table-thead)',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  encapsulation: ViewEncapsulation.None,\r\n  template: `\r\n    <ng-template #contentTemplate>\r\n      <ng-content></ng-content>\r\n    </ng-template>\r\n    <ng-container *ngIf=\"!isInsideTable\">\r\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\r\n    </ng-container>\r\n  `\r\n})\r\nexport class VtsTheadComponent implements AfterContentInit, OnDestroy, AfterViewInit, OnInit {\r\n  private destroy$ = new Subject<void>();\r\n  isInsideTable = false;\r\n  @ViewChild('contentTemplate', { static: true })\r\n  templateRef!: TemplateRef<VtsSafeAny>;\r\n  @ContentChildren(VtsTrDirective, { descendants: true })\r\n  listOfVtsTrDirective!: QueryList<VtsTrDirective>;\r\n  @ContentChildren(VtsThAddOnComponent, { descendants: true })\r\n  listOfVtsThAddOnComponent!: QueryList<VtsThAddOnComponent>;\r\n  @Output() readonly vtsSortOrderChange = new EventEmitter<{\r\n    key: VtsSafeAny;\r\n    value: string | null;\r\n  }>();\r\n\r\n  constructor(\r\n    private elementRef: ElementRef,\r\n    private renderer: Renderer2,\r\n    @Optional() private vtsTableStyleService: VtsTableStyleService,\r\n    @Optional() private vtsTableDataService: VtsTableDataService\r\n  ) {\r\n    this.isInsideTable = !!this.vtsTableStyleService;\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    if (this.vtsTableStyleService) {\r\n      this.vtsTableStyleService.setTheadTemplate(this.templateRef);\r\n    }\r\n  }\r\n\r\n  ngAfterContentInit(): void {\r\n    if (this.vtsTableStyleService) {\r\n      const firstTableRow$ = this.listOfVtsTrDirective.changes.pipe(\r\n        startWith(this.listOfVtsTrDirective),\r\n        map(item => item && item.first)\r\n      ) as Observable<VtsTrDirective>;\r\n      const listOfColumnsChanges$ = firstTableRow$.pipe(\r\n        switchMap(firstTableRow => (firstTableRow ? firstTableRow.listOfColumnsChanges$ : EMPTY)),\r\n        takeUntil(this.destroy$)\r\n      );\r\n      listOfColumnsChanges$.subscribe(data => this.vtsTableStyleService.setListOfTh(data));\r\n      /** TODO: need reset the measure row when scrollX change **/\r\n      this.vtsTableStyleService.enableAutoMeasure$\r\n        .pipe(switchMap(enable => (enable ? listOfColumnsChanges$ : of([]))))\r\n        .pipe(takeUntil(this.destroy$))\r\n        .subscribe(data => this.vtsTableStyleService.setListOfMeasureColumn(data));\r\n      const listOfFixedLeftColumnChanges$ = firstTableRow$.pipe(\r\n        switchMap(firstTr => (firstTr ? firstTr.listOfFixedLeftColumnChanges$ : EMPTY)),\r\n        takeUntil(this.destroy$)\r\n      );\r\n      const listOfFixedRightColumnChanges$ = firstTableRow$.pipe(\r\n        switchMap(firstTr => (firstTr ? firstTr.listOfFixedRightColumnChanges$ : EMPTY)),\r\n        takeUntil(this.destroy$)\r\n      );\r\n      listOfFixedLeftColumnChanges$.subscribe(listOfFixedLeftColumn => {\r\n        this.vtsTableStyleService.setHasFixLeft(listOfFixedLeftColumn.length !== 0);\r\n      });\r\n      listOfFixedRightColumnChanges$.subscribe(listOfFixedRightColumn => {\r\n        this.vtsTableStyleService.setHasFixRight(listOfFixedRightColumn.length !== 0);\r\n      });\r\n    }\r\n    if (this.vtsTableDataService) {\r\n      const listOfColumn$ = this.listOfVtsThAddOnComponent.changes.pipe(\r\n        startWith(this.listOfVtsThAddOnComponent)\r\n      ) as Observable<QueryList<VtsThAddOnComponent>>;\r\n      const manualSort$ = listOfColumn$.pipe(\r\n        switchMap(() => merge(...this.listOfVtsThAddOnComponent.map(th => th.manualClickOrder$))),\r\n        takeUntil(this.destroy$)\r\n      );\r\n      manualSort$.subscribe((data: VtsThAddOnComponent) => {\r\n        const emitValue = { key: data.vtsColumnKey, value: data.sortOrder };\r\n        this.vtsSortOrderChange.emit(emitValue);\r\n        if (data.vtsSortFn && data.vtsSortPriority === false) {\r\n          this.listOfVtsThAddOnComponent\r\n            .filter(th => th !== data)\r\n            .forEach(th => th.clearSortOrder());\r\n        }\r\n      });\r\n      const listOfCalcOperator$ = listOfColumn$.pipe(\r\n        switchMap(list =>\r\n          merge(\r\n            ...[listOfColumn$, ...list.map((c: VtsThAddOnComponent) => c.calcOperatorChange$)]\r\n          ).pipe(mergeMap(() => listOfColumn$))\r\n        ),\r\n        map(list =>\r\n          list\r\n            .filter(item => !!item.vtsSortFn || !!item.vtsFilterFn)\r\n            .map(item => {\r\n              const {\r\n                vtsSortFn,\r\n                sortOrder,\r\n                vtsFilterFn,\r\n                vtsFilterValue,\r\n                vtsSortPriority,\r\n                vtsColumnKey\r\n              } = item;\r\n              return {\r\n                key: vtsColumnKey,\r\n                sortFn: vtsSortFn,\r\n                sortPriority: vtsSortPriority,\r\n                sortOrder: sortOrder!,\r\n                filterFn: vtsFilterFn!,\r\n                filterValue: vtsFilterValue\r\n              };\r\n            })\r\n        ),\r\n        // TODO: after checked error here\r\n        delay(0),\r\n        takeUntil(this.destroy$)\r\n      );\r\n      listOfCalcOperator$.subscribe(list => {\r\n        this.vtsTableDataService.listOfCalcOperator$.next(list);\r\n      });\r\n    }\r\n  }\r\n\r\n  ngAfterViewInit(): void {\r\n    if (this.vtsTableStyleService) {\r\n      this.renderer.removeChild(\r\n        this.renderer.parentNode(this.elementRef.nativeElement),\r\n        this.elementRef.nativeElement\r\n      );\r\n    }\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 { Directive, ElementRef, Input } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: 'tr[vtsExpand]',\r\n  host: {\r\n    '[hidden]': `!vtsExpand`\r\n  }\r\n})\r\nexport class VtsTrExpandDirective {\r\n  @Input() vtsExpand = true;\r\n\r\n  constructor(private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-table-expanded-row');\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 { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { VtsButtonModule } from '@vts-voffice/ng-vts/button';\r\nimport { VtsCheckboxModule } from '@vts-voffice/ng-vts/checkbox';\r\nimport { VtsOutletModule } from '@vts-voffice/ng-vts/core/outlet';\r\nimport { VtsResizeObserverModule } from '@vts-voffice/ng-vts/cdk/resize-observer';\r\nimport { VtsDropDownModule } from '@vts-voffice/ng-vts/dropdown';\r\nimport { VtsEmptyModule } from '@vts-voffice/ng-vts/empty';\r\nimport { VtsI18nModule } from '@vts-voffice/ng-vts/i18n';\r\nimport { VtsIconModule } from '@vts-voffice/ng-vts/icon';\r\nimport { VtsMenuModule } from '@vts-voffice/ng-vts/menu';\r\nimport { VtsPaginationModule } from '@vts-voffice/ng-vts/pagination';\r\nimport { VtsRadioModule } from '@vts-voffice/ng-vts/radio';\r\nimport { VtsSpinModule } from '@vts-voffice/ng-vts/spin';\r\nimport { VtsFilterTriggerComponent } from './addon/filter-trigger.component';\r\nimport { VtsTableFilterComponent } from './addon/filter.component';\r\nimport { VtsRowExpandButtonComponent } from './addon/row-expand-button.directive';\r\nimport { VtsRowIndentDirective } from './addon/row-indent.directive';\r\nimport { VtsTableSelectionComponent } from './addon/selection.component';\r\nimport { VtsTableSortersComponent } from './addon/sorters.component';\r\nimport { VtsCellFixedDirective } from './cell/cell-fixed.directive';\r\nimport { VtsTableCellDirective } from './cell/cell.directive';\r\nimport { VtsTdAddOnComponent } from './cell/td-addon.component';\r\nimport { VtsThAddOnComponent } from './cell/th-addon.component';\r\nimport { VtsThMeasureDirective } from './cell/th-measure.directive';\r\nimport { VtsThSelectionComponent } from './cell/th-selection.component';\r\nimport { VtsCellAlignDirective } from './styled/align.directive';\r\nimport { VtsCellEllipsisDirective } from './styled/ellipsis.directive';\r\nimport { VtsCellBreakWordDirective } from './styled/word-break.directive';\r\nimport { VtsTableContentComponent } from './table/table-content.component';\r\nimport { VtsTableFixedRowComponent } from './table/table-fixed-row.component';\r\nimport { VtsTableInnerDefaultComponent } from './table/table-inner-default.component';\r\nimport { VtsTableInnerScrollComponent } from './table/table-inner-scroll.component';\r\nimport { VtsTableVirtualScrollDirective } from './table/table-virtual-scroll.directive';\r\nimport { VtsTableComponent } from './table/table.component';\r\nimport { VtsTbodyComponent } from './table/tbody.component';\r\nimport { VtsTheadComponent } from './table/thead.component';\r\nimport { VtsTableTitleFooterComponent } from './table/title-footer.component';\r\nimport { VtsTrExpandDirective } from './table/tr-expand.directive';\r\nimport { VtsTrMeasureComponent } from './table/tr-measure.component';\r\nimport { VtsTrDirective } from './table/tr.directive';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    VtsTableComponent,\r\n    VtsThAddOnComponent,\r\n    VtsTableCellDirective,\r\n    VtsThMeasureDirective,\r\n    VtsTdAddOnComponent,\r\n    VtsTheadComponent,\r\n    VtsTbodyComponent,\r\n    VtsTrDirective,\r\n    VtsTrExpandDirective,\r\n    VtsTableVirtualScrollDirective,\r\n    VtsCellFixedDirective,\r\n    VtsTableContentComponent,\r\n    VtsTableTitleFooterComponent,\r\n    VtsTableInnerDefaultComponent,\r\n    VtsTableInnerScrollComponent,\r\n    VtsTrMeasureComponent,\r\n    VtsRowIndentDirective,\r\n    VtsRowExpandButtonComponent,\r\n    VtsCellBreakWordDirective,\r\n    VtsCellAlignDirective,\r\n    VtsTableSortersComponent,\r\n    VtsTableFilterComponent,\r\n    VtsTableSelectionComponent,\r\n    VtsCellEllipsisDirective,\r\n    VtsFilterTriggerComponent,\r\n    VtsTableFixedRowComponent,\r\n    VtsThSelectionComponent\r\n  ],\r\n  exports: [\r\n    VtsTableComponent,\r\n    VtsThAddOnComponent,\r\n    VtsTableCellDirective,\r\n    VtsThMeasureDirective,\r\n    VtsTdAddOnComponent,\r\n    VtsTheadComponent,\r\n    VtsTbodyComponent,\r\n    VtsTrDirective,\r\n    VtsTableVirtualScrollDirective,\r\n    VtsCellFixedDirective,\r\n    VtsFilterTriggerComponent,\r\n    VtsTrExpandDirective,\r\n    VtsCellBreakWordDirective,\r\n    VtsCellAlignDirective,\r\n    VtsCellEllipsisDirective,\r\n    VtsTableFixedRowComponent,\r\n    VtsThSelectionComponent\r\n  ],\r\n  imports: [\r\n    BidiModule,\r\n    VtsMenuModule,\r\n    FormsModule,\r\n    VtsOutletModule,\r\n    VtsRadioModule,\r\n    VtsCheckboxModule,\r\n    VtsDropDownModule,\r\n    VtsButtonModule,\r\n    CommonModule,\r\n    PlatformModule,\r\n    VtsPaginationModule,\r\n    VtsResizeObserverModule,\r\n    VtsSpinModule,\r\n    VtsI18nModule,\r\n    VtsIconModule,\r\n    VtsEmptyModule,\r\n    ScrollingModule,\r\n    VtsResizeObserverModule\r\n  ]\r\n})\r\nexport class VtsTableModule {}\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 { VtsSafeAny, VtsSizeLMSType } from '@vts-voffice/ng-vts/core/types';\r\n\r\nexport type VtsTableData =\r\n  | VtsSafeAny\r\n  | {\r\n      [key: string]: VtsTableData;\r\n    };\r\nexport type VtsTableLayout = 'fixed' | 'auto';\r\nexport type VtsTablePaginationPosition = 'top' | 'bottom' | 'both';\r\nexport type VtsTablePaginationType = 'default' | 'small';\r\nexport type VtsTableSize = VtsSizeLMSType;\r\nexport type VtsTableFilterList = Array<{\r\n  text: string;\r\n  value: VtsSafeAny;\r\n  byDefault?: boolean;\r\n}>;\r\nexport type VtsTableSortOrder = string | 'ascend' | 'descend' | null;\r\nexport type VtsTableSortFn = (\r\n  a: VtsTableData,\r\n  b: VtsTableData,\r\n  sortOrder?: VtsTableSortOrder\r\n) => number;\r\nexport type VtsTableFilterValue = VtsSafeAny[] | VtsSafeAny;\r\nexport type VtsTableFilterFn = (value: VtsTableFilterValue, data: VtsTableData) => boolean;\r\n\r\nexport interface VtsTableQueryParams {\r\n  pageIndex: number;\r\n  pageSize: number;\r\n  sort: Array<{ key: string; value: VtsTableSortOrder }>;\r\n  filter: Array<{ key: string; value: VtsTableFilterValue }>;\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\nexport * from './src/table.module';\r\nexport * from './src/table.types';\r\nexport * from './src/table-data.service';\r\nexport * from './src/table-style.service';\r\nexport * from './src/table/table.component';\r\nexport * from './src/table/table-content.component';\r\nexport * from './src/table/table-fixed-row.component';\r\nexport * from './src/table/table-inner-default.component';\r\nexport * from './src/table/table-inner-scroll.component';\r\nexport * from './src/table/table-virtual-scroll.directive';\r\nexport * from './src/table/table-fixed-row.component';\r\nexport * from './src/table/tbody.component';\r\nexport * from './src/table/thead.component';\r\nexport * from './src/table/tr.directive';\r\nexport * from './src/table/tr-expand.directive';\r\nexport * from './src/table/title-footer.component';\r\nexport * from './src/table/tr-measure.component';\r\nexport * from './src/cell/cell-fixed.directive';\r\nexport * from './src/cell/cell.directive';\r\nexport * from './src/cell/th-measure.directive';\r\nexport * from './src/cell/td-addon.component';\r\nexport * from './src/cell/th-selection.component';\r\nexport * from './src/cell/th-addon.component';\r\nexport * from './src/addon/filter.component';\r\nexport * from './src/addon/row-expand-button.directive';\r\nexport * from './src/addon/row-indent.directive';\r\nexport * from './src/addon/selection.component';\r\nexport * from './src/addon/sorters.component';\r\nexport * from './src/addon/filter-trigger.component';\r\nexport * from './src/styled/align.directive';\r\nexport * from './src/styled/ellipsis.directive';\r\nexport * from './src/styled/word-break.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i4","i6","i9","i11.VtsFilterTriggerComponent","i2","i3","i5","i7","i1.VtsTableStyleService","i4.VtsRowIndentDirective","i5.VtsRowExpandButtonComponent","i2.VtsTableSortersComponent","i3.VtsTableFilterComponent","i1.VtsTableSelectionComponent","i1.VtsTableContentComponent","i4.VtsTrMeasureComponent","i5.VtsTableFixedRowComponent","i5.VtsTbodyComponent","i6.VtsTableContentComponent","i3.VtsTableStyleService","i4.VtsTableDataService","i8","i9.VtsTableTitleFooterComponent","i10.VtsTableInnerDefaultComponent","i11.VtsTableInnerScrollComponent","i2.VtsTableDataService"],"mappings":"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"}