{"version":3,"file":"ng-zorro-antd-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/table-data.service.ts","../../components/table/src/cell/custom-column.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-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/title-footer.component.ts","../../components/table/src/table/table.component.ts","../../components/table/src/table/tfoot-summary.component.ts","../../components/table/src/table/tr.directive.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/ng-zorro-antd-table.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnInit,\n  Output,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  DestroyRef,\n  inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport { fromEventOutsideAngular } from 'ng-zorro-antd/core/util';\nimport { NzDropdownDirective, NzDropdownModule, NzDropdownMenuComponent } from 'ng-zorro-antd/dropdown';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'filterTrigger';\n\n@Component({\n  selector: 'nz-filter-trigger',\n  exportAs: `nzFilterTrigger`,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <span\n      nz-dropdown\n      class=\"ant-table-filter-trigger\"\n      nzTrigger=\"click\"\n      nzPlacement=\"bottomRight\"\n      [nzBackdrop]=\"nzBackdrop\"\n      [nzClickHide]=\"false\"\n      [nzDropdownMenu]=\"nzDropdownMenu\"\n      [class.active]=\"nzActive\"\n      [class.ant-table-filter-open]=\"nzVisible\"\n      [nzVisible]=\"nzVisible\"\n      (nzVisibleChange)=\"onVisibleChange($event)\"\n    >\n      <ng-content />\n    </span>\n  `,\n  imports: [NzDropdownModule]\n})\nexport class NzFilterTriggerComponent implements OnInit {\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n  public readonly nzConfigService = inject(NzConfigService);\n  private readonly cdr = inject(ChangeDetectorRef);\n  private readonly destroyRef = inject(DestroyRef);\n\n  @Input() nzActive = false;\n  @Input() nzDropdownMenu!: NzDropdownMenuComponent;\n  @Input() nzVisible = false;\n\n  @Input({ transform: booleanAttribute }) @WithConfig() nzBackdrop = false;\n\n  @Output() readonly nzVisibleChange = new EventEmitter<boolean>();\n\n  @ViewChild(NzDropdownDirective, { static: true, read: ElementRef }) nzDropdown!: ElementRef<HTMLElement>;\n\n  onVisibleChange(visible: boolean): void {\n    this.nzVisible = visible;\n    this.nzVisibleChange.next(visible);\n  }\n\n  hide(): void {\n    this.nzVisible = false;\n    this.cdr.markForCheck();\n  }\n\n  show(): void {\n    this.nzVisible = true;\n    this.cdr.markForCheck();\n  }\n\n  ngOnInit(): void {\n    fromEventOutsideAngular(this.nzDropdown.nativeElement, 'click')\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe(event => event.stopPropagation());\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  DestroyRef,\n  EventEmitter,\n  inject,\n  Input,\n  OnChanges,\n  OnInit,\n  Output,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { arraysEqual } from 'ng-zorro-antd/core/util';\nimport { NzDropdownModule } from 'ng-zorro-antd/dropdown';\nimport { NzI18nService, NzTableI18nInterface } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzRadioComponent } from 'ng-zorro-antd/radio';\n\nimport { NzTableFilterList } from '../table.types';\nimport { NzFilterTriggerComponent } from './filter-trigger.component';\n\ninterface NzThItemInterface {\n  text: string;\n  value: NzSafeAny;\n  checked: boolean;\n}\n\n@Component({\n  selector: 'nz-table-filter',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <span class=\"ant-table-column-title\">\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n    </span>\n    @if (!customFilter) {\n      <nz-filter-trigger\n        [nzVisible]=\"isVisible\"\n        [nzActive]=\"isChecked\"\n        [nzDropdownMenu]=\"filterMenu\"\n        (nzVisibleChange)=\"onVisibleChange($event)\"\n      >\n        <nz-icon nzType=\"filter\" nzTheme=\"fill\" />\n      </nz-filter-trigger>\n      <nz-dropdown-menu #filterMenu=\"nzDropdownMenu\">\n        <div class=\"ant-table-filter-dropdown\">\n          <ul nz-menu>\n            @for (f of listOfParsedFilter; track f.value) {\n              <li nz-menu-item [nzSelected]=\"f.checked\" (click)=\"check(f)\">\n                @if (!filterMultiple) {\n                  <label nz-radio [ngModel]=\"f.checked\" (ngModelChange)=\"check(f)\"></label>\n                } @else {\n                  <label nz-checkbox [ngModel]=\"f.checked\" (ngModelChange)=\"check(f)\"></label>\n                }\n                <span>{{ f.text }}</span>\n              </li>\n            }\n          </ul>\n          <div class=\"ant-table-filter-dropdown-btns\">\n            <button nz-button nzType=\"link\" nzSize=\"small\" (click)=\"reset()\" [disabled]=\"!isChecked\">\n              {{ locale.filterReset }}\n            </button>\n            <button nz-button nzType=\"primary\" nzSize=\"small\" (click)=\"confirm()\">{{ locale.filterConfirm }}</button>\n          </div>\n        </div>\n      </nz-dropdown-menu>\n    } @else {\n      <ng-container [ngTemplateOutlet]=\"extraTemplate\" />\n    }\n  `,\n  host: { class: 'ant-table-filter-column' },\n  imports: [\n    NgTemplateOutlet,\n    NzFilterTriggerComponent,\n    NzIconModule,\n    NzDropdownModule,\n    NzRadioComponent,\n    NzCheckboxModule,\n    FormsModule,\n    NzButtonModule\n  ]\n})\nexport class NzTableFilterComponent implements OnChanges, OnInit {\n  private readonly cdr = inject(ChangeDetectorRef);\n  private readonly i18n = inject(NzI18nService);\n  private readonly destroyRef = inject(DestroyRef);\n\n  @Input() contentTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() customFilter = false;\n  @Input() extraTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() filterMultiple = true;\n  @Input() listOfFilter: NzTableFilterList = [];\n  @Output() readonly filterChange = new EventEmitter<NzSafeAny[] | NzSafeAny>();\n  locale!: NzTableI18nInterface;\n  isChecked = false;\n  isVisible = false;\n  listOfParsedFilter: NzThItemInterface[] = [];\n  listOfChecked: NzSafeAny[] = [];\n\n  check(filter: NzThItemInterface): void {\n    if (this.filterMultiple) {\n      this.listOfParsedFilter = this.listOfParsedFilter.map(item => {\n        if (item === filter) {\n          return { ...item, checked: !filter.checked };\n        } else {\n          return item;\n        }\n      });\n      filter.checked = !filter.checked;\n    } else {\n      this.listOfParsedFilter = this.listOfParsedFilter.map(item => ({ ...item, checked: item === filter }));\n    }\n    this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\n  }\n\n  confirm(): void {\n    this.isVisible = false;\n    this.emitFilterData();\n  }\n\n  reset(): void {\n    this.isVisible = false;\n    this.listOfParsedFilter = this.parseListOfFilter(this.listOfFilter, true);\n    this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\n    this.emitFilterData();\n  }\n\n  onVisibleChange(value: boolean): void {\n    this.isVisible = value;\n    if (!value) {\n      this.emitFilterData();\n    } else {\n      this.listOfChecked = this.listOfParsedFilter.filter(item => item.checked).map(item => item.value);\n    }\n  }\n\n  emitFilterData(): void {\n    const listOfChecked = this.listOfParsedFilter.filter(item => item.checked).map(item => item.value);\n    if (!arraysEqual(this.listOfChecked, listOfChecked)) {\n      if (this.filterMultiple) {\n        this.filterChange.emit(listOfChecked);\n      } else {\n        this.filterChange.emit(listOfChecked.length > 0 ? listOfChecked[0] : null);\n      }\n    }\n  }\n\n  parseListOfFilter(listOfFilter: NzTableFilterList, reset?: boolean): NzThItemInterface[] {\n    return listOfFilter.map(item => {\n      const checked = reset ? false : !!item.byDefault;\n      return { text: item.text, value: item.value, checked };\n    });\n  }\n\n  getCheckedStatus(listOfParsedFilter: NzThItemInterface[]): boolean {\n    return listOfParsedFilter.some(item => item.checked);\n  }\n\n  ngOnInit(): void {\n    this.i18n.localeChange.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n      this.locale = this.i18n.getLocaleData('Table');\n      this.cdr.markForCheck();\n    });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { listOfFilter } = changes;\n    if (listOfFilter && this.listOfFilter && this.listOfFilter.length) {\n      this.listOfParsedFilter = this.parseListOfFilter(this.listOfFilter);\n      this.isChecked = this.getCheckedStatus(this.listOfParsedFilter);\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, EventEmitter, Input, Output } from '@angular/core';\n\n@Directive({\n  selector: 'button[nz-row-expand-button]',\n  host: {\n    class: 'ant-table-row-expand-icon',\n    '[type]': `'button'`,\n    '[class.ant-table-row-expand-icon-expanded]': `!spaceMode && expand === true`,\n    '[class.ant-table-row-expand-icon-collapsed]': `!spaceMode && expand === false`,\n    '[class.ant-table-row-expand-icon-spaced]': 'spaceMode',\n    '(click)': 'onHostClick()'\n  }\n})\nexport class NzRowExpandButtonDirective {\n  @Input() expand = false;\n  @Input() spaceMode = false;\n  @Output() readonly expandChange = new EventEmitter();\n\n  onHostClick(): void {\n    if (!this.spaceMode) {\n      this.expand = !this.expand;\n      this.expandChange.next(this.expand);\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, Input } from '@angular/core';\n\n@Directive({\n  selector: 'nz-row-indent',\n  host: {\n    class: 'ant-table-row-indent',\n    '[style.padding-left.px]': 'indentSize'\n  }\n})\nexport class NzRowIndentDirective {\n  @Input() indentSize = 0;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDropdownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\n@Component({\n  selector: 'nz-table-selection',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (showCheckbox) {\n      <label\n        nz-checkbox\n        [class.ant-table-selection-select-all-custom]=\"showRowSelection\"\n        [ngModel]=\"checked\"\n        [nzDisabled]=\"disabled\"\n        [nzIndeterminate]=\"indeterminate\"\n        [attr.aria-label]=\"label\"\n        (ngModelChange)=\"onCheckedChange($event)\"\n      ></label>\n    }\n    @if (showRowSelection) {\n      <div class=\"ant-table-selection-extra\">\n        <span nz-dropdown class=\"ant-table-selection-down\" nzPlacement=\"bottomLeft\" [nzDropdownMenu]=\"selectionMenu\">\n          <nz-icon nzType=\"down\" />\n        </span>\n        <nz-dropdown-menu #selectionMenu=\"nzDropdownMenu\">\n          <ul nz-menu class=\"ant-table-selection-menu\">\n            @for (selection of listOfSelections; track selection) {\n              <li nz-menu-item (click)=\"selection.onSelect()\">\n                {{ selection.text }}\n              </li>\n            }\n          </ul>\n        </nz-dropdown-menu>\n      </div>\n    }\n  `,\n  host: { class: 'ant-table-selection' },\n  imports: [FormsModule, NzCheckboxModule, NzDropdownModule, NzIconModule]\n})\nexport class NzTableSelectionComponent {\n  @Input() listOfSelections: Array<{ text: string; onSelect(...args: NzSafeAny[]): NzSafeAny }> = [];\n  @Input() checked = false;\n  @Input() disabled = false;\n  @Input() indeterminate = false;\n  @Input() label: string | null = null;\n  @Input() showCheckbox = false;\n  @Input() showRowSelection = false;\n  @Output() readonly checkedChange = new EventEmitter<boolean>();\n\n  onCheckedChange(checked: boolean): void {\n    this.checked = checked;\n    this.checkedChange.emit(checked);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  Input,\n  OnChanges,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation\n} from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzTableSortOrder } from '../table.types';\n\n@Component({\n  selector: 'nz-table-sorters',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <span class=\"ant-table-column-title\"><ng-template [ngTemplateOutlet]=\"contentTemplate\" /></span>\n    <span class=\"ant-table-column-sorter\" [class.ant-table-column-sorter-full]=\"isDown && isUp\">\n      <span class=\"ant-table-column-sorter-inner\">\n        @if (isUp) {\n          <nz-icon nzType=\"caret-up\" class=\"ant-table-column-sorter-up\" [class.active]=\"sortOrder === 'ascend'\" />\n        }\n        @if (isDown) {\n          <nz-icon nzType=\"caret-down\" class=\"ant-table-column-sorter-down\" [class.active]=\"sortOrder === 'descend'\" />\n        }\n      </span>\n    </span>\n  `,\n  host: {\n    class: 'ant-table-column-sorters'\n  },\n  imports: [NzIconModule, NgTemplateOutlet]\n})\nexport class NzTableSortersComponent implements OnChanges {\n  @Input() sortDirections: NzTableSortOrder[] = ['ascend', 'descend', null];\n  @Input() sortOrder: NzTableSortOrder = null;\n  @Input() contentTemplate: TemplateRef<NzSafeAny> | null = null;\n  isUp = false;\n  isDown = false;\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { sortDirections } = changes;\n    if (sortDirections) {\n      this.isUp = this.sortDirections.indexOf('ascend') !== -1;\n      this.isDown = this.sortDirections.indexOf('descend') !== -1;\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, ElementRef, inject, Input, OnChanges, Renderer2 } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Directive({\n  selector: 'td[nzRight],th[nzRight],td[nzLeft],th[nzLeft]',\n  host: {\n    '[class.ant-table-cell-fix-right]': `isFixedRight`,\n    '[class.ant-table-cell-fix-left]': `isFixedLeft`,\n    '[style.position]': `isFixed? 'sticky' : null`\n  }\n})\nexport class NzCellFixedDirective implements OnChanges {\n  private renderer = inject(Renderer2);\n  private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n\n  @Input() nzRight: string | boolean = false;\n  @Input() nzLeft: string | boolean = false;\n  @Input() colspan: number | null = null;\n  @Input() colSpan: number | null = null;\n  changes$ = new Subject<void>();\n  isAutoLeft = false;\n  isAutoRight = false;\n  isFixedLeft = false;\n  isFixedRight = false;\n  isFixed = false;\n\n  setAutoLeftWidth(autoLeft: string | null): void {\n    this.renderer.setStyle(this.el, 'left', autoLeft);\n  }\n\n  setAutoRightWidth(autoRight: string | null): void {\n    this.renderer.setStyle(this.el, 'right', autoRight);\n  }\n\n  setIsFirstRight(isFirstRight: boolean): void {\n    this.setFixClass(isFirstRight, 'ant-table-cell-fix-right-first');\n  }\n\n  setIsLastLeft(isLastLeft: boolean): void {\n    this.setFixClass(isLastLeft, 'ant-table-cell-fix-left-last');\n  }\n\n  private setFixClass(flag: boolean, className: string): void {\n    // the setFixClass function may call many times, so remove it first.\n    this.renderer.removeClass(this.el, className);\n\n    if (flag) {\n      this.renderer.addClass(this.el, className);\n    }\n  }\n\n  ngOnChanges(): void {\n    this.setIsFirstRight(false);\n    this.setIsLastLeft(false);\n    this.isAutoLeft = this.nzLeft === '' || this.nzLeft === true;\n    this.isAutoRight = this.nzRight === '' || this.nzRight === true;\n    this.isFixedLeft = this.nzLeft !== false;\n    this.isFixedRight = this.nzRight !== false;\n    this.isFixed = this.isFixedLeft || this.isFixedRight;\n    const validatePx = (value: string | boolean): string | null => {\n      if (typeof value === 'string' && value !== '') {\n        return value;\n      } else {\n        return null;\n      }\n    };\n    this.setAutoLeftWidth(validatePx(this.nzLeft));\n    this.setAutoRightWidth(validatePx(this.nzRight));\n    this.changes$.next();\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Injectable, TemplateRef } from '@angular/core';\nimport { BehaviorSubject, combineLatest, merge, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzThMeasureDirective } from './cell/th-measure.directive';\nimport { NzTableSummaryFixedType } from './table.types';\n\n@Injectable()\nexport class NzTableStyleService {\n  theadTemplate$ = new ReplaySubject<TemplateRef<NzSafeAny>>(1);\n  tfootTemplate$ = new ReplaySubject<TemplateRef<NzSafeAny>>(1);\n  tfootFixed$ = new ReplaySubject<NzTableSummaryFixedType | null>(1);\n  hasFixLeft$ = new ReplaySubject<boolean>(1);\n  hasFixRight$ = new ReplaySubject<boolean>(1);\n  hostWidth$ = new ReplaySubject<number>(1);\n  columnCount$ = new ReplaySubject<number>(1);\n  showEmpty$ = new ReplaySubject<boolean>(1);\n  noResult$ = new ReplaySubject<string | TemplateRef<NzSafeAny> | undefined>(1);\n  private listOfThWidthConfigPx$ = new BehaviorSubject<ReadonlyArray<string | null>>([]);\n  private tableWidthConfigPx$ = new BehaviorSubject<ReadonlyArray<string | null>>([]);\n  manualWidthConfigPx$ = combineLatest([this.tableWidthConfigPx$, this.listOfThWidthConfigPx$]).pipe(\n    map(([widthConfig, listOfWidth]) => (widthConfig.length ? widthConfig : listOfWidth))\n  );\n  private listOfAutoWidthPx$ = new ReplaySubject<readonly string[]>(1);\n  listOfListOfThWidthPx$ = merge(\n    /** init with manual width **/\n    this.manualWidthConfigPx$,\n    combineLatest([this.listOfAutoWidthPx$, this.manualWidthConfigPx$]).pipe(\n      map(([autoWidth, manualWidth]) => {\n        /** use autoWidth until column length match **/\n        if (autoWidth.length === manualWidth.length) {\n          return autoWidth.map((width, index) => {\n            if (width === '0px') {\n              return manualWidth[index] || null;\n            } else {\n              return manualWidth[index] || width;\n            }\n          });\n        } else {\n          return manualWidth;\n        }\n      })\n    )\n  );\n  listOfMeasureColumn$ = new ReplaySubject<readonly string[]>(1);\n  listOfListOfThWidth$ = this.listOfAutoWidthPx$.pipe(map(list => list.map(width => parseInt(width, 10))));\n  enableAutoMeasure$ = new ReplaySubject<boolean>(1);\n\n  setTheadTemplate(template: TemplateRef<NzSafeAny>): void {\n    this.theadTemplate$.next(template);\n  }\n\n  setTfootTemplate(template: TemplateRef<NzSafeAny>): void {\n    this.tfootTemplate$.next(template);\n  }\n\n  setTfootFixed(fixed: NzTableSummaryFixedType | null): void {\n    this.tfootFixed$.next(fixed);\n  }\n\n  setHasFixLeft(hasFixLeft: boolean): void {\n    this.hasFixLeft$.next(hasFixLeft);\n  }\n\n  setHasFixRight(hasFixRight: boolean): void {\n    this.hasFixRight$.next(hasFixRight);\n  }\n\n  setTableWidthConfig(widthConfig: ReadonlyArray<string | null>): void {\n    this.tableWidthConfigPx$.next(widthConfig);\n  }\n\n  setListOfTh(listOfTh: readonly NzThMeasureDirective[]): void {\n    let columnCount = 0;\n    listOfTh.forEach(th => {\n      columnCount += (th.colspan && +th.colspan) || (th.colSpan && +th.colSpan) || 1;\n    });\n    const listOfThPx = listOfTh.map(item => item.nzWidth);\n    this.columnCount$.next(columnCount);\n    this.listOfThWidthConfigPx$.next(listOfThPx);\n  }\n\n  setListOfMeasureColumn(listOfTh: readonly NzThMeasureDirective[]): void {\n    const listOfKeys: string[] = [];\n    listOfTh.forEach(th => {\n      const length = (th.colspan && +th.colspan) || (th.colSpan && +th.colSpan) || 1;\n      for (let i = 0; i < length; i++) {\n        listOfKeys.push(`measure_key_${i}`);\n      }\n    });\n    this.listOfMeasureColumn$.next(listOfKeys);\n  }\n\n  setListOfAutoWidth(listOfAutoWidth: number[]): void {\n    this.listOfAutoWidthPx$.next(listOfAutoWidth.map(width => `${width}px`));\n  }\n\n  setShowEmpty(showEmpty: boolean): void {\n    this.showEmpty$.next(showEmpty);\n  }\n\n  setNoResult(noResult: string | TemplateRef<NzSafeAny> | undefined): void {\n    this.noResult$.next(noResult);\n  }\n\n  setScroll(scrollX: string | null, scrollY: string | null): void {\n    const enableAutoMeasure = !!(scrollX || scrollY);\n    if (!enableAutoMeasure) {\n      this.setListOfAutoWidth([]);\n    }\n    this.enableAutoMeasure$.next(enableAutoMeasure);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, inject } from '@angular/core';\n\nimport { NzTableStyleService } from '../table-style.service';\n\n@Directive({\n  selector: 'th:not(.nz-disable-th), td:not(.nz-disable-td)',\n  host: {\n    '[class.ant-table-cell]': 'isInsideTable'\n  }\n})\nexport class NzTableCellDirective {\n  isInsideTable = !!inject(NzTableStyleService, { optional: true });\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { DestroyRef, inject, Injectable } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, Observable, combineLatest } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, filter, map, skip, switchMap } from 'rxjs/operators';\n\nimport {\n  NzCustomColumn,\n  NzTableFilterFn,\n  NzTableFilterValue,\n  NzTableQueryParams,\n  NzTableSortFn,\n  NzTableSortOrder\n} from './table.types';\n\n@Injectable()\nexport class NzTableDataService<T> {\n  private destroyRef = inject(DestroyRef);\n  private pageIndex$ = new BehaviorSubject<number>(1);\n  private frontPagination$ = new BehaviorSubject<boolean>(true);\n  private pageSize$ = new BehaviorSubject<number>(10);\n  private listOfData$ = new BehaviorSubject<readonly T[]>([]);\n  listOfCustomColumn$ = new BehaviorSubject<NzCustomColumn[]>([]);\n  pageIndexDistinct$ = this.pageIndex$.pipe(distinctUntilChanged());\n  pageSizeDistinct$ = this.pageSize$.pipe(distinctUntilChanged());\n  listOfCalcOperator$ = new BehaviorSubject<\n    Array<{\n      key?: string;\n      sortFn: NzTableSortFn<T> | null | boolean;\n      sortOrder: NzTableSortOrder;\n      filterFn: NzTableFilterFn<T> | null | boolean;\n      filterValue: NzTableFilterValue;\n      sortPriority: number | boolean;\n    }>\n  >([]);\n  queryParams$: Observable<NzTableQueryParams> = combineLatest([\n    this.pageIndexDistinct$,\n    this.pageSizeDistinct$,\n    this.listOfCalcOperator$\n  ]).pipe(\n    debounceTime(0),\n    skip(1),\n    map(([pageIndex, pageSize, listOfCalc]) => ({\n      pageIndex,\n      pageSize,\n      sort: listOfCalc\n        .filter(item => item.sortFn)\n        .map(item => ({\n          key: item.key!,\n          value: item.sortOrder\n        })),\n      filter: listOfCalc\n        .filter(item => item.filterFn)\n        .map(item => ({\n          key: item.key!,\n          value: item.filterValue\n        }))\n    }))\n  );\n  private listOfDataAfterCalc$ = combineLatest([this.listOfData$, this.listOfCalcOperator$]).pipe(\n    map(([listOfData, listOfCalcOperator]) => {\n      let listOfDataAfterCalc = [...listOfData];\n      const listOfFilterOperator = listOfCalcOperator.filter(item => {\n        const { filterValue, filterFn } = item;\n        const isReset =\n          filterValue === null ||\n          filterValue === undefined ||\n          (Array.isArray(filterValue) && filterValue!.length === 0);\n        return !isReset && typeof filterFn === 'function';\n      });\n      for (const item of listOfFilterOperator) {\n        const { filterFn, filterValue } = item;\n        listOfDataAfterCalc = listOfDataAfterCalc.filter(data => (filterFn as NzTableFilterFn<T>)(filterValue, data));\n      }\n      const listOfSortOperator = listOfCalcOperator\n        .filter(item => item.sortOrder !== null && typeof item.sortFn === 'function')\n        .sort((a, b) => +b.sortPriority - +a.sortPriority);\n      if (listOfCalcOperator.length) {\n        listOfDataAfterCalc.sort((record1, record2) => {\n          for (const item of listOfSortOperator) {\n            const { sortFn, sortOrder } = item;\n            if (sortFn && sortOrder) {\n              const compareResult = (sortFn as NzTableSortFn<T>)(record1, record2, sortOrder);\n              if (compareResult !== 0) {\n                return sortOrder === 'ascend' ? compareResult : -compareResult;\n              }\n            }\n          }\n          return 0;\n        });\n      }\n      return listOfDataAfterCalc;\n    })\n  );\n  private listOfFrontEndCurrentPageData$ = combineLatest([\n    this.pageIndexDistinct$,\n    this.pageSizeDistinct$,\n    this.listOfDataAfterCalc$\n  ]).pipe(\n    takeUntilDestroyed(this.destroyRef),\n    filter(value => {\n      const [pageIndex, pageSize, listOfData] = value;\n      const maxPageIndex = Math.ceil(listOfData.length / pageSize) || 1;\n      return pageIndex <= maxPageIndex;\n    }),\n    map(([pageIndex, pageSize, listOfData]) => listOfData.slice((pageIndex - 1) * pageSize, pageIndex * pageSize))\n  );\n  listOfCurrentPageData$ = this.frontPagination$.pipe(\n    switchMap(pagination => (pagination ? this.listOfFrontEndCurrentPageData$ : this.listOfDataAfterCalc$))\n  );\n  total$ = this.frontPagination$.pipe(\n    switchMap(pagination => (pagination ? this.listOfDataAfterCalc$ : this.listOfData$)),\n    map(list => list.length),\n    distinctUntilChanged()\n  );\n\n  updatePageSize(size: number): void {\n    this.pageSize$.next(size);\n  }\n  updateFrontPagination(pagination: boolean): void {\n    this.frontPagination$.next(pagination);\n  }\n  updatePageIndex(index: number): void {\n    this.pageIndex$.next(index);\n  }\n  updateListOfData(list: readonly T[]): void {\n    this.listOfData$.next(list);\n  }\n  updateListOfCustomColumn(list: NzCustomColumn[]): void {\n    this.listOfCustomColumn$.next(list);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { DestroyRef, Directive, ElementRef, inject, Input, OnInit, Renderer2 } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { NzTableDataService } from '../table-data.service';\n\n@Directive({\n  selector: 'td[nzCellControl],th[nzCellControl]'\n})\nexport class NzCustomColumnDirective<T> implements OnInit {\n  private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n  private renderer = inject(Renderer2);\n  private nzTableDataService = inject(NzTableDataService<T>);\n  private destroyRef = inject(DestroyRef);\n\n  @Input() nzCellControl: string | null = null;\n\n  ngOnInit(): void {\n    this.nzTableDataService.listOfCustomColumn$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(item => {\n      item.forEach((v, i) => {\n        if (v.value === this.nzCellControl) {\n          this.renderer.setStyle(this.el, 'display', v.default ? 'block' : 'none');\n          this.renderer.setStyle(this.el, 'order', i);\n          this.renderer.setStyle(this.el, 'flex', v.fixWidth ? `1 0 ${v.width}px` : `1 1 ${v.width}px`);\n        }\n      });\n    });\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/* eslint-disable @angular-eslint/component-selector */\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  EventEmitter,\n  Input,\n  OnChanges,\n  Output,\n  SimpleChange,\n  SimpleChanges,\n  TemplateRef,\n  ViewEncapsulation,\n  booleanAttribute\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\n\nimport { NzRowExpandButtonDirective } from '../addon/row-expand-button.directive';\nimport { NzRowIndentDirective } from '../addon/row-indent.directive';\n\n@Component({\n  selector:\n    'td[nzChecked], td[nzDisabled], td[nzIndeterminate], td[nzIndentSize], td[nzExpand], td[nzShowExpand], td[nzShowCheckbox]',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (nzShowExpand || nzIndentSize > 0) {\n      <nz-row-indent [indentSize]=\"nzIndentSize\" />\n      @if (nzExpandIcon) {\n        <ng-template [ngTemplateOutlet]=\"nzExpandIcon\" />\n      } @else {\n        <button\n          nz-row-expand-button\n          [expand]=\"nzExpand\"\n          (expandChange)=\"onExpandChange($event)\"\n          [spaceMode]=\"!nzShowExpand\"\n        ></button>\n      }\n    }\n    @if (nzShowCheckbox) {\n      <label\n        nz-checkbox\n        [nzDisabled]=\"nzDisabled\"\n        [ngModel]=\"nzChecked\"\n        [nzIndeterminate]=\"nzIndeterminate\"\n        [attr.aria-label]=\"nzLabel\"\n        (ngModelChange)=\"onCheckedChange($event)\"\n      ></label>\n    }\n    <ng-content />\n  `,\n  host: {\n    '[class.ant-table-cell-with-append]': `nzShowExpand || nzIndentSize > 0`,\n    '[class.ant-table-selection-column]': `nzShowCheckbox`\n  },\n  imports: [NzRowIndentDirective, NzRowExpandButtonDirective, NgTemplateOutlet, NzCheckboxModule, FormsModule]\n})\nexport class NzTdAddOnComponent implements OnChanges {\n  @Input() nzChecked = false;\n  @Input() nzDisabled = false;\n  @Input() nzIndeterminate = false;\n  @Input() nzLabel: string | null = null;\n  @Input() nzIndentSize = 0;\n  @Input({ transform: booleanAttribute }) nzShowExpand = false;\n  @Input({ transform: booleanAttribute }) nzShowCheckbox = false;\n  @Input({ transform: booleanAttribute }) nzExpand = false;\n  @Input() nzExpandIcon: TemplateRef<void> | null = null;\n  @Output() readonly nzCheckedChange = new EventEmitter<boolean>();\n  @Output() readonly nzExpandChange = new EventEmitter<boolean>();\n  private isNzShowExpandChanged = false;\n  private isNzShowCheckboxChanged = false;\n\n  onCheckedChange(checked: boolean): void {\n    this.nzChecked = checked;\n    this.nzCheckedChange.emit(checked);\n  }\n\n  onExpandChange(expand: boolean): void {\n    this.nzExpand = expand;\n    this.nzExpandChange.emit(expand);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const isFirstChange = (value: SimpleChange): boolean =>\n      value && value.firstChange && value.currentValue !== undefined;\n    const { nzExpand, nzChecked, nzShowExpand, nzShowCheckbox } = changes;\n    if (nzShowExpand) {\n      this.isNzShowExpandChanged = true;\n    }\n    if (nzShowCheckbox) {\n      this.isNzShowCheckboxChanged = true;\n    }\n    if (isFirstChange(nzExpand) && !this.isNzShowExpandChanged) {\n      this.nzShowExpand = true;\n    }\n    if (isFirstChange(nzChecked) && !this.isNzShowCheckboxChanged) {\n      this.nzShowCheckbox = true;\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/* eslint-disable @angular-eslint/component-selector */\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  NgZone,\n  OnChanges,\n  OnInit,\n  Output,\n  SimpleChange,\n  SimpleChanges,\n  ViewEncapsulation,\n  booleanAttribute,\n  inject,\n  DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport { fromEventOutsideAngular } from 'ng-zorro-antd/core/util';\n\nimport { NzTableFilterComponent } from '../addon/filter.component';\nimport { NzTableSortersComponent } from '../addon/sorters.component';\nimport {\n  NzTableFilterFn,\n  NzTableFilterList,\n  NzTableFilterValue,\n  NzTableSortFn,\n  NzTableSortOrder\n} from '../table.types';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'table';\n\n@Component({\n  selector:\n    'th[nzColumnKey], th[nzSortFn], th[nzSortOrder], th[nzFilters], th[nzShowSort], th[nzShowFilter], th[nzCustomFilter]',\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    @if (nzShowFilter || nzCustomFilter) {\n      <nz-table-filter\n        [contentTemplate]=\"notFilterTemplate\"\n        [extraTemplate]=\"extraTemplate\"\n        [customFilter]=\"nzCustomFilter\"\n        [filterMultiple]=\"nzFilterMultiple\"\n        [listOfFilter]=\"nzFilters\"\n        (filterChange)=\"onFilterValueChange($event)\"\n      />\n    } @else {\n      <ng-container [ngTemplateOutlet]=\"notFilterTemplate\" />\n    }\n    <ng-template #notFilterTemplate>\n      <ng-template [ngTemplateOutlet]=\"nzShowSort ? sortTemplate : contentTemplate\" />\n    </ng-template>\n    <ng-template #extraTemplate>\n      <ng-content select=\"[nz-th-extra]\" />\n      <ng-content select=\"nz-filter-trigger\" />\n    </ng-template>\n    <ng-template #sortTemplate>\n      <nz-table-sorters [sortOrder]=\"sortOrder\" [sortDirections]=\"sortDirections\" [contentTemplate]=\"contentTemplate\" />\n    </ng-template>\n    <ng-template #contentTemplate>\n      <ng-content />\n    </ng-template>\n  `,\n  host: {\n    '[class.ant-table-column-has-sorters]': 'nzShowSort',\n    '[class.ant-table-column-sort]': `sortOrder === 'descend' || sortOrder === 'ascend'`\n  },\n  imports: [NzTableFilterComponent, NgTemplateOutlet, NzTableSortersComponent]\n})\nexport class NzThAddOnComponent<T> implements OnChanges, OnInit {\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n  nzConfigService = inject(NzConfigService);\n  private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n  private destroyRef = inject(DestroyRef);\n  private cdr = inject(ChangeDetectorRef);\n  private ngZone = inject(NgZone);\n\n  manualClickOrder$ = new Subject<NzThAddOnComponent<T>>();\n  calcOperatorChange$ = new Subject<void>();\n  nzFilterValue: NzTableFilterValue = null;\n  sortOrder: NzTableSortOrder = null;\n  sortDirections: NzTableSortOrder[] = ['ascend', 'descend', null];\n  private sortOrderChange$ = new Subject<NzTableSortOrder>();\n  private isNzShowSortChanged = false;\n  private isNzShowFilterChanged = false;\n  @Input() nzColumnKey?: string;\n  @Input() nzFilterMultiple = true;\n  @Input() nzSortOrder: NzTableSortOrder = null;\n  @Input() nzSortPriority: number | boolean = false;\n  @Input() @WithConfig() nzSortDirections: NzTableSortOrder[] = ['ascend', 'descend', null];\n  @Input() nzFilters: NzTableFilterList = [];\n  @Input() nzSortFn: NzTableSortFn<T> | boolean | null = null;\n  @Input() nzFilterFn: NzTableFilterFn<T> | boolean | null = null;\n  @Input({ transform: booleanAttribute }) nzShowSort = false;\n  @Input({ transform: booleanAttribute }) nzShowFilter = false;\n  @Input({ transform: booleanAttribute }) nzCustomFilter = false;\n  @Output() readonly nzCheckedChange = new EventEmitter<boolean>();\n  @Output() readonly nzSortOrderChange = new EventEmitter<string | null>();\n  @Output() readonly nzFilterChange = new EventEmitter<NzTableFilterValue>();\n\n  getNextSortDirection(sortDirections: NzTableSortOrder[], current: NzTableSortOrder): NzTableSortOrder {\n    const index = sortDirections.indexOf(current);\n    if (index === sortDirections.length - 1) {\n      return sortDirections[0];\n    } else {\n      return sortDirections[index + 1];\n    }\n  }\n\n  setSortOrder(order: NzTableSortOrder): void {\n    this.sortOrderChange$.next(order);\n  }\n\n  clearSortOrder(): void {\n    if (this.sortOrder !== null) {\n      this.setSortOrder(null);\n    }\n  }\n\n  onFilterValueChange(value: NzTableFilterValue): void {\n    this.nzFilterChange.emit(value);\n    this.nzFilterValue = value;\n    this.updateCalcOperator();\n  }\n\n  updateCalcOperator(): void {\n    this.calcOperatorChange$.next();\n  }\n\n  ngOnInit(): void {\n    fromEventOutsideAngular(this.el, 'click')\n      .pipe(\n        filter(() => this.nzShowSort),\n        takeUntilDestroyed(this.destroyRef)\n      )\n      .subscribe(() => {\n        const nextOrder = this.getNextSortDirection(this.sortDirections, this.sortOrder!);\n        this.ngZone.run(() => {\n          this.setSortOrder(nextOrder);\n          this.manualClickOrder$.next(this);\n        });\n      });\n\n    this.sortOrderChange$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(order => {\n      if (this.sortOrder !== order) {\n        this.sortOrder = order;\n        this.nzSortOrderChange.emit(order);\n      }\n      this.updateCalcOperator();\n      this.cdr.markForCheck();\n    });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const {\n      nzSortDirections,\n      nzFilters,\n      nzSortOrder,\n      nzSortFn,\n      nzFilterFn,\n      nzSortPriority,\n      nzFilterMultiple,\n      nzShowSort,\n      nzShowFilter\n    } = changes;\n    if (nzSortDirections) {\n      if (this.nzSortDirections && this.nzSortDirections.length) {\n        this.sortDirections = this.nzSortDirections;\n      }\n    }\n    if (nzSortOrder) {\n      this.sortOrder = this.nzSortOrder;\n      this.setSortOrder(this.nzSortOrder);\n    }\n    if (nzShowSort) {\n      this.isNzShowSortChanged = true;\n    }\n    if (nzShowFilter) {\n      this.isNzShowFilterChanged = true;\n    }\n    const isFirstChange = (value: SimpleChange): boolean =>\n      value && value.firstChange && value.currentValue !== undefined;\n    if ((isFirstChange(nzSortOrder) || isFirstChange(nzSortFn)) && !this.isNzShowSortChanged) {\n      this.nzShowSort = true;\n    }\n    if (isFirstChange(nzFilters) && !this.isNzShowFilterChanged) {\n      this.nzShowFilter = true;\n    }\n    if ((nzFilters || nzFilterMultiple) && this.nzShowFilter) {\n      const listOfValue = this.nzFilters.filter(item => item.byDefault).map(item => item.value);\n      this.nzFilterValue = this.nzFilterMultiple ? listOfValue : listOfValue[0] || null;\n    }\n    if (nzSortFn || nzFilterFn || nzSortPriority || nzFilters) {\n      this.updateCalcOperator();\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, ElementRef, inject, Input, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { isNil } from 'ng-zorro-antd/core/util';\n\n@Directive({\n  selector: 'th'\n})\nexport class NzThMeasureDirective implements OnChanges {\n  private renderer = inject(Renderer2);\n  private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n\n  changes$ = new Subject<void>();\n  @Input() nzWidth: string | null = null;\n  @Input() colspan: string | number | null = null;\n  @Input() colSpan: string | number | null = null;\n  @Input() rowspan: string | number | null = null;\n  @Input() rowSpan: string | number | null = null;\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { nzWidth, colspan, rowspan, colSpan, rowSpan } = changes;\n    if (colspan || colSpan) {\n      const col = this.colspan || this.colSpan;\n      if (!isNil(col)) {\n        this.renderer.setAttribute(this.el, 'colspan', `${col}`);\n      } else {\n        this.renderer.removeAttribute(this.el, 'colspan');\n      }\n    }\n    if (rowspan || rowSpan) {\n      const row = this.rowspan || this.rowSpan;\n      if (!isNil(row)) {\n        this.renderer.setAttribute(this.el, 'rowspan', `${row}`);\n      } else {\n        this.renderer.removeAttribute(this.el, 'rowspan');\n      }\n    }\n    if (nzWidth || colspan) {\n      this.changes$.next();\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/* eslint-disable @angular-eslint/component-selector */\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  EventEmitter,\n  Input,\n  OnChanges,\n  Output,\n  SimpleChange,\n  SimpleChanges,\n  ViewEncapsulation,\n  booleanAttribute\n} from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzTableSelectionComponent } from '../addon/selection.component';\n\n@Component({\n  selector: 'th[nzSelections],th[nzChecked],th[nzShowCheckbox],th[nzShowRowSelection]',\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  template: `\n    <nz-table-selection\n      [checked]=\"nzChecked\"\n      [disabled]=\"nzDisabled\"\n      [indeterminate]=\"nzIndeterminate\"\n      [label]=\"nzLabel\"\n      [listOfSelections]=\"nzSelections\"\n      [showCheckbox]=\"nzShowCheckbox\"\n      [showRowSelection]=\"nzShowRowSelection\"\n      (checkedChange)=\"onCheckedChange($event)\"\n    />\n    <ng-content />\n  `,\n  host: { class: 'ant-table-selection-column' },\n  imports: [NzTableSelectionComponent]\n})\nexport class NzThSelectionComponent implements OnChanges {\n  @Input() nzSelections: Array<{ text: string; onSelect(...args: NzSafeAny[]): NzSafeAny }> = [];\n  @Input({ transform: booleanAttribute }) nzChecked = false;\n  @Input({ transform: booleanAttribute }) nzDisabled = false;\n  @Input() nzIndeterminate = false;\n  @Input() nzLabel: string | null = null;\n  @Input({ transform: booleanAttribute }) nzShowCheckbox = false;\n  @Input({ transform: booleanAttribute }) nzShowRowSelection = false;\n  @Output() readonly nzCheckedChange = new EventEmitter<boolean>();\n\n  private isNzShowExpandChanged = false;\n  private isNzShowCheckboxChanged = false;\n\n  onCheckedChange(checked: boolean): void {\n    this.nzChecked = checked;\n    this.nzCheckedChange.emit(checked);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const isFirstChange = (value: SimpleChange): boolean =>\n      value && value.firstChange && value.currentValue !== undefined;\n    const { nzChecked, nzSelections, nzShowExpand, nzShowCheckbox } = changes;\n    if (nzShowExpand) {\n      this.isNzShowExpandChanged = true;\n    }\n    if (nzShowCheckbox) {\n      this.isNzShowCheckboxChanged = true;\n    }\n    if (isFirstChange(nzSelections) && !this.isNzShowExpandChanged) {\n      this.nzShowRowSelection = true;\n    }\n    if (isFirstChange(nzChecked) && !this.isNzShowCheckboxChanged) {\n      this.nzShowCheckbox = true;\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, Input } from '@angular/core';\n\n@Directive({\n  selector: 'th[nzAlign],td[nzAlign]',\n  host: {\n    '[style.text-align]': 'nzAlign'\n  }\n})\nexport class NzCellAlignDirective {\n  @Input() nzAlign: 'left' | 'right' | 'center' | null = null;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, Input, booleanAttribute } from '@angular/core';\n\n@Directive({\n  selector: 'th[nzEllipsis],td[nzEllipsis]',\n  host: {\n    '[class.ant-table-cell-ellipsis]': 'nzEllipsis'\n  }\n})\nexport class NzCellEllipsisDirective {\n  @Input({ transform: booleanAttribute }) nzEllipsis = true;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, Input, booleanAttribute } from '@angular/core';\n\n@Directive({\n  selector: 'th[nzBreakWord],td[nzBreakWord]',\n  host: {\n    '[style.word-break]': `nzBreakWord ? 'break-all' : ''`\n  }\n})\nexport class NzCellBreakWordDirective {\n  @Input({ transform: booleanAttribute }) nzBreakWord = true;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewEncapsulation } from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzTableLayout } from '../table.types';\n\n@Component({\n  selector: 'table[nz-table-content]',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (listOfColWidth.length > 0) {\n      <colgroup>\n        @for (width of listOfColWidth; track $index) {\n          <col [style.width]=\"width\" [style.minWidth]=\"width\" />\n        }\n      </colgroup>\n    }\n    @if (theadTemplate) {\n      <thead class=\"ant-table-thead\">\n        <ng-template [ngTemplateOutlet]=\"theadTemplate\" />\n      </thead>\n    }\n    <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n    <ng-content />\n    @if (tfootTemplate) {\n      <tfoot class=\"ant-table-summary\">\n        <ng-template [ngTemplateOutlet]=\"tfootTemplate\" />\n      </tfoot>\n    }\n  `,\n  host: {\n    '[style.table-layout]': 'tableLayout',\n    '[class.ant-table-fixed]': 'scrollX',\n    '[style.width]': 'scrollX',\n    '[style.min-width]': `scrollX ? '100%' : null`\n  },\n  imports: [NgTemplateOutlet]\n})\nexport class NzTableContentComponent {\n  @Input() tableLayout: NzTableLayout = 'auto';\n  @Input() theadTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() contentTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() tfootTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\n  @Input() scrollX: string | null = null;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  DestroyRef,\n  ElementRef,\n  inject,\n  OnInit,\n  Renderer2,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { NzTableStyleService } from '../table-style.service';\n\n@Component({\n  selector: 'tr[nz-table-fixed-row], tr[nzExpand]',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <td class=\"nz-disable-td ant-table-cell\" #tdElement>\n      @if (enableAutoMeasure$ | async) {\n        <div\n          class=\"ant-table-expanded-row-fixed\"\n          style=\"position: sticky; left: 0; overflow: hidden;\"\n          [style.width.px]=\"hostWidth$ | async\"\n        >\n          <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n        </div>\n      } @else {\n        <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n      }\n    </td>\n    <ng-template #contentTemplate>\n      <ng-content />\n    </ng-template>\n  `,\n  imports: [AsyncPipe, NgTemplateOutlet]\n})\nexport class NzTableFixedRowComponent implements OnInit, AfterViewInit {\n  private nzTableStyleService = inject(NzTableStyleService);\n  private renderer = inject(Renderer2);\n  private destroyRef = inject(DestroyRef);\n\n  @ViewChild('tdElement', { static: true }) tdElement!: ElementRef;\n  hostWidth$ = new BehaviorSubject<number | null>(null);\n  enableAutoMeasure$ = new BehaviorSubject<boolean>(false);\n\n  ngOnInit(): void {\n    if (this.nzTableStyleService) {\n      const { enableAutoMeasure$, hostWidth$ } = this.nzTableStyleService;\n      enableAutoMeasure$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(this.enableAutoMeasure$);\n      hostWidth$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(this.hostWidth$);\n    }\n  }\n\n  ngAfterViewInit(): void {\n    this.nzTableStyleService.columnCount$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(count => {\n      this.renderer.setAttribute(this.tdElement.nativeElement, 'colspan', `${count}`);\n    });\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewEncapsulation } from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzTableLayout } from '../table.types';\nimport { NzTableContentComponent } from './table-content.component';\n\n@Component({\n  selector: 'nz-table-inner-default',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <div class=\"ant-table-content\">\n      <table\n        nz-table-content\n        [contentTemplate]=\"contentTemplate\"\n        [tableLayout]=\"tableLayout\"\n        [listOfColWidth]=\"listOfColWidth\"\n        [theadTemplate]=\"theadTemplate\"\n        [tfootTemplate]=\"tfootTemplate\"\n      ></table>\n    </div>\n  `,\n  host: { class: 'ant-table-container' },\n  imports: [NzTableContentComponent]\n})\nexport class NzTableInnerDefaultComponent {\n  @Input() tableLayout: NzTableLayout = 'auto';\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\n  @Input() theadTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() contentTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() tfootTemplate: TemplateRef<NzSafeAny> | null = null;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  DestroyRef,\n  ElementRef,\n  EventEmitter,\n  inject,\n  Input,\n  NgZone,\n  Output,\n  QueryList,\n  ViewChildren,\n  ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Observable, combineLatest } from 'rxjs';\nimport { debounceTime, map, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzResizeObserver } from 'ng-zorro-antd/cdk/resize-observer';\n\n@Component({\n  selector: 'tr[nz-table-measure-row]',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @for (th of listOfMeasureColumn; track $index) {\n      <td #tdElement class=\"nz-disable-td\" style=\"padding: 0; border: 0; height: 0;\"></td>\n    }\n  `,\n  host: {\n    class: 'ant-table-measure-now'\n  }\n})\nexport class NzTrMeasureComponent implements AfterViewInit {\n  private nzResizeObserver = inject(NzResizeObserver);\n  private ngZone = inject(NgZone);\n  private destroyRef = inject(DestroyRef);\n\n  @Input() listOfMeasureColumn: readonly string[] = [];\n  @Output() readonly listOfAutoWidth = new EventEmitter<number[]>();\n  @ViewChildren('tdElement') listOfTdElement!: QueryList<ElementRef>;\n\n  ngAfterViewInit(): void {\n    this.listOfTdElement.changes\n      .pipe(startWith(this.listOfTdElement))\n      .pipe(\n        switchMap(\n          list =>\n            combineLatest(\n              list.toArray().map((item: ElementRef) =>\n                this.nzResizeObserver.observe(item).pipe(\n                  map(([entry]) => {\n                    const { width } = entry.target.getBoundingClientRect();\n                    return Math.floor(width);\n                  })\n                )\n              )\n            ) as Observable<number[]>\n        ),\n        debounceTime(16),\n        takeUntilDestroyed(this.destroyRef)\n      )\n      .subscribe(data => {\n        // Caretaker note: we don't have to re-enter the Angular zone each time the stream emits.\n        // The below check is necessary to be sure that zone is not nooped through `BootstrapOptions`\n        // (`bootstrapModule(AppModule, { ngZone: 'noop' }))`. The `ngZone instanceof NgZone` may return\n        // `false` if zone is nooped, since `ngZone` will be an instance of the `NoopNgZone`.\n        // The `ResizeObserver` might be also patched through `zone.js/dist/zone-patch-resize-observer`,\n        // thus calling `ngZone.run` again will cause another change detection.\n        if (this.ngZone instanceof NgZone && NgZone.isInAngularZone()) {\n          this.listOfAutoWidth.next(data);\n        } else {\n          this.ngZone.run(() => this.listOfAutoWidth.next(data));\n        }\n      });\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/* eslint-disable @angular-eslint/component-selector */\n\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, ViewEncapsulation, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\n\nimport { NzTableStyleService } from '../table-style.service';\nimport { NzTableFixedRowComponent } from './table-fixed-row.component';\nimport { NzTrMeasureComponent } from './tr-measure.component';\n\n@Component({\n  selector: 'tbody',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (listOfMeasureColumn$ | async; as listOfMeasureColumn) {\n      @if (isInsideTable && listOfMeasureColumn.length) {\n        <tr\n          nz-table-measure-row\n          [listOfMeasureColumn]=\"listOfMeasureColumn\"\n          (listOfAutoWidth)=\"onListOfAutoWidthChange($event)\"\n        ></tr>\n      }\n    }\n    <ng-content />\n    @if (showEmpty$ | async) {\n      <tr class=\"ant-table-placeholder\" nz-table-fixed-row>\n        <nz-embed-empty nzComponentName=\"table\" [specificContent]=\"(noResult$ | async)!\" />\n      </tr>\n    }\n  `,\n  host: {\n    '[class.ant-table-tbody]': 'isInsideTable'\n  },\n  imports: [AsyncPipe, NzTrMeasureComponent, NzTableFixedRowComponent, NzEmptyModule]\n})\nexport class NzTbodyComponent {\n  showEmpty$ = new BehaviorSubject<boolean>(false);\n  noResult$ = new BehaviorSubject<string | TemplateRef<NzSafeAny> | undefined>(undefined);\n  listOfMeasureColumn$ = new BehaviorSubject<readonly string[]>([]);\n  private nzTableStyleService = inject(NzTableStyleService, { optional: true });\n  isInsideTable = !!this.nzTableStyleService;\n\n  constructor() {\n    if (this.nzTableStyleService) {\n      const { showEmpty$, noResult$, listOfMeasureColumn$ } = this.nzTableStyleService;\n      noResult$.pipe(takeUntilDestroyed()).subscribe(this.noResult$);\n      listOfMeasureColumn$.pipe(takeUntilDestroyed()).subscribe(this.listOfMeasureColumn$);\n      showEmpty$.pipe(takeUntilDestroyed()).subscribe(this.showEmpty$);\n    }\n  }\n\n  onListOfAutoWidthChange(listOfAutoWidth: number[]): void {\n    this.nzTableStyleService?.setListOfAutoWidth(listOfAutoWidth);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Platform } from '@angular/cdk/platform';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  DestroyRef,\n  ElementRef,\n  inject,\n  Input,\n  NgZone,\n  OnChanges,\n  Renderer2,\n  SimpleChanges,\n  TemplateRef,\n  TrackByFunction,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { merge, Subject } from 'rxjs';\nimport { delay, filter, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzResizeService } from 'ng-zorro-antd/core/services';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { fromEventOutsideAngular } from 'ng-zorro-antd/core/util';\n\nimport { NzTableSummaryFixedType } from '../table.types';\nimport { NzTableContentComponent } from './table-content.component';\nimport { NzTbodyComponent } from './tbody.component';\n\n@Component({\n  selector: 'nz-table-inner-scroll',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (scrollY) {\n      <div #tableHeaderElement [style]=\"headerStyleMap\" class=\"ant-table-header nz-table-hide-scrollbar\">\n        <table\n          nz-table-content\n          tableLayout=\"fixed\"\n          [scrollX]=\"scrollX\"\n          [listOfColWidth]=\"listOfColWidth\"\n          [theadTemplate]=\"theadTemplate\"\n          [tfootTemplate]=\"tfootFixed === 'top' ? tfootTemplate : null\"\n        ></table>\n      </div>\n      @if (!virtualTemplate) {\n        <div #tableBodyElement cdkScrollable class=\"ant-table-body\" [style]=\"bodyStyleMap\">\n          <table\n            nz-table-content\n            tableLayout=\"fixed\"\n            [scrollX]=\"scrollX\"\n            [listOfColWidth]=\"listOfColWidth\"\n            [contentTemplate]=\"contentTemplate\"\n          ></table>\n        </div>\n      } @else {\n        <cdk-virtual-scroll-viewport\n          #tableBodyElement\n          [itemSize]=\"virtualItemSize\"\n          [maxBufferPx]=\"virtualMaxBufferPx\"\n          [minBufferPx]=\"virtualMinBufferPx\"\n          [style.height]=\"data.length ? scrollY : noDataVirtualHeight\"\n        >\n          <table nz-table-content tableLayout=\"fixed\" [scrollX]=\"scrollX\" [listOfColWidth]=\"listOfColWidth\">\n            <tbody>\n              <ng-container *cdkVirtualFor=\"let item of data; let i = index; trackBy: virtualForTrackBy\">\n                <ng-template\n                  [ngTemplateOutlet]=\"virtualTemplate\"\n                  [ngTemplateOutletContext]=\"{ $implicit: item, index: i }\"\n                />\n              </ng-container>\n            </tbody>\n          </table>\n        </cdk-virtual-scroll-viewport>\n      }\n      @if (tfootFixed === 'bottom') {\n        <div #tableFootElement class=\"ant-table-summary\" [style]=\"headerStyleMap\">\n          <table\n            nz-table-content\n            tableLayout=\"fixed\"\n            [scrollX]=\"scrollX\"\n            [listOfColWidth]=\"listOfColWidth\"\n            [tfootTemplate]=\"tfootTemplate\"\n          ></table>\n        </div>\n      }\n    } @else {\n      <div class=\"ant-table-content\" #tableBodyElement [style]=\"bodyStyleMap\">\n        <table\n          nz-table-content\n          tableLayout=\"fixed\"\n          [scrollX]=\"scrollX\"\n          [listOfColWidth]=\"listOfColWidth\"\n          [theadTemplate]=\"theadTemplate\"\n          [contentTemplate]=\"contentTemplate\"\n          [tfootTemplate]=\"tfootTemplate\"\n        ></table>\n      </div>\n    }\n  `,\n  host: { class: 'ant-table-container' },\n  imports: [NzTableContentComponent, ScrollingModule, NgTemplateOutlet, NzTbodyComponent]\n})\nexport class NzTableInnerScrollComponent<T> implements OnChanges, AfterViewInit {\n  private renderer = inject(Renderer2);\n  private ngZone = inject(NgZone);\n  private platform = inject(Platform);\n  private resizeService = inject(NzResizeService);\n  private destroyRef = inject(DestroyRef);\n\n  @Input() data: readonly T[] = [];\n  @Input() scrollX: string | null = null;\n  @Input() scrollY: string | null = null;\n  @Input() contentTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() widthConfig: string[] = [];\n  @Input() listOfColWidth: ReadonlyArray<string | null> = [];\n  @Input() theadTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() tfootTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() tfootFixed: NzTableSummaryFixedType | null = null;\n  @Input() virtualTemplate: TemplateRef<NzSafeAny> | null = null;\n  @Input() virtualItemSize = 0;\n  @Input() virtualMaxBufferPx = 200;\n  @Input() virtualMinBufferPx = 100;\n  @Input() tableMainElement?: HTMLDivElement;\n  @Input() virtualForTrackBy: TrackByFunction<T> = index => index;\n  @ViewChild('tableHeaderElement', { read: ElementRef }) tableHeaderElement!: ElementRef;\n  @ViewChild('tableBodyElement', { read: ElementRef }) tableBodyElement!: ElementRef;\n  @ViewChild('tableFootElement', { read: ElementRef }) tableFootElement?: ElementRef;\n  @ViewChild(CdkVirtualScrollViewport, { read: CdkVirtualScrollViewport })\n  cdkVirtualScrollViewport?: CdkVirtualScrollViewport;\n  headerStyleMap = {};\n  bodyStyleMap = {};\n  @Input() verticalScrollBarWidth = 0;\n  @Input() noDataVirtualHeight = '182px';\n  private data$ = new Subject<void>();\n  private scroll$ = new Subject<void>();\n\n  private setScrollPositionClassName(clear: boolean = false): void {\n    const { scrollWidth, scrollLeft, clientWidth } = this.tableBodyElement.nativeElement;\n    const leftClassName = 'ant-table-ping-left';\n    const rightClassName = 'ant-table-ping-right';\n    if ((scrollWidth === clientWidth && scrollWidth !== 0) || clear) {\n      this.renderer.removeClass(this.tableMainElement, leftClassName);\n      this.renderer.removeClass(this.tableMainElement, rightClassName);\n    } else if (scrollLeft === 0) {\n      this.renderer.removeClass(this.tableMainElement, leftClassName);\n      this.renderer.addClass(this.tableMainElement, rightClassName);\n    } else if (scrollWidth === scrollLeft + clientWidth) {\n      this.renderer.removeClass(this.tableMainElement, rightClassName);\n      this.renderer.addClass(this.tableMainElement, leftClassName);\n    } else {\n      this.renderer.addClass(this.tableMainElement, leftClassName);\n      this.renderer.addClass(this.tableMainElement, rightClassName);\n    }\n  }\n\n  constructor() {\n    this.destroyRef.onDestroy(() => {\n      this.setScrollPositionClassName(true);\n    });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { scrollX, scrollY, data } = changes;\n    if (scrollX || scrollY) {\n      const hasVerticalScrollBar = this.verticalScrollBarWidth !== 0;\n      this.headerStyleMap = {\n        overflowX: 'hidden',\n        overflowY: this.scrollY && hasVerticalScrollBar ? 'scroll' : 'hidden'\n      };\n      this.bodyStyleMap = {\n        overflowY: this.scrollY ? 'scroll' : 'hidden',\n        overflowX: this.scrollX ? 'auto' : null,\n        maxHeight: this.scrollY\n      };\n      // Caretaker note: we have to emit the value outside the Angular zone, thus DOM timer (`delay(0)`) and `scroll`\n      // event listener will be also added outside the Angular zone.\n      this.ngZone.runOutsideAngular(() => this.scroll$.next());\n    }\n    if (data) {\n      // See the comment above.\n      this.ngZone.runOutsideAngular(() => this.data$.next());\n    }\n  }\n\n  ngAfterViewInit(): void {\n    if (this.platform.isBrowser) {\n      const scrollEvent$ = this.scroll$.pipe(\n        startWith(null),\n        delay(0),\n        switchMap(() =>\n          fromEventOutsideAngular<MouseEvent>(this.tableBodyElement.nativeElement, 'scroll').pipe(startWith(true))\n        )\n      );\n      const resize$ = this.resizeService.connect();\n      merge(scrollEvent$, resize$, this.data$, this.scroll$)\n        .pipe(startWith(true), delay(0), takeUntilDestroyed(this.destroyRef))\n        .subscribe(() => this.setScrollPositionClassName());\n      scrollEvent$.pipe(filter(() => !!this.scrollY)).subscribe(() => {\n        this.tableHeaderElement.nativeElement.scrollLeft = this.tableBodyElement.nativeElement.scrollLeft;\n        if (this.tableFootElement) {\n          this.tableFootElement.nativeElement.scrollLeft = this.tableBodyElement.nativeElement.scrollLeft;\n        }\n      });\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, inject, TemplateRef } from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Directive({\n  selector: '[nz-virtual-scroll]',\n  exportAs: 'nzVirtualScroll'\n})\nexport class NzTableVirtualScrollDirective<T> {\n  templateRef: TemplateRef<{ $implicit: T; index: number }> = inject(TemplateRef);\n\n  static ngTemplateContextGuard<T>(\n    _dir: NzTableVirtualScrollDirective<T>,\n    _ctx: NzSafeAny\n  ): _ctx is { $implicit: T; index: number } {\n    return true;\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewEncapsulation } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Component({\n  selector: 'nz-table-title-footer',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n    <ng-container *nzStringTemplateOutlet=\"footer\">{{ footer }}</ng-container>\n  `,\n  host: {\n    '[class.ant-table-title]': `title !== null`,\n    '[class.ant-table-footer]': `footer !== null`\n  },\n  imports: [NzOutletModule]\n})\nexport class NzTableTitleFooterComponent {\n  @Input() title: string | TemplateRef<NzSafeAny> | null = null;\n  @Input() footer: string | TemplateRef<NzSafeAny> | null = null;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  ContentChild,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnInit,\n  Output,\n  SimpleChanges,\n  TemplateRef,\n  TrackByFunction,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  inject,\n  DestroyRef,\n  ElementRef,\n  ChangeDetectorRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, combineLatest } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\n\nimport { NzResizeObserver } from 'ng-zorro-antd/cdk/resize-observer';\nimport { NzConfigKey, onConfigChangeEventForComponent, WithConfig } from 'ng-zorro-antd/core/config';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { measureScrollbar } from 'ng-zorro-antd/core/util';\nimport { NzPaginationModule, PaginationItemRenderContext } from 'ng-zorro-antd/pagination';\nimport { NzSpinComponent } from 'ng-zorro-antd/spin';\n\nimport { NzTableDataService } from '../table-data.service';\nimport { NzTableStyleService } from '../table-style.service';\nimport {\n  NzCustomColumn,\n  NzTableLayout,\n  NzTablePaginationPosition,\n  NzTablePaginationType,\n  NzTableQueryParams,\n  NzTableSize,\n  NzTableSummaryFixedType\n} from '../table.types';\nimport { NzTableInnerDefaultComponent } from './table-inner-default.component';\nimport { NzTableInnerScrollComponent } from './table-inner-scroll.component';\nimport { NzTableVirtualScrollDirective } from './table-virtual-scroll.directive';\nimport { NzTableTitleFooterComponent } from './title-footer.component';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'table';\n\n@Component({\n  selector: 'nz-table',\n  exportAs: 'nzTable',\n  providers: [NzTableStyleService, NzTableDataService],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <nz-spin [nzDelay]=\"nzLoadingDelay\" [nzSpinning]=\"nzLoading\" [nzIndicator]=\"nzLoadingIndicator\">\n      @if (nzPaginationPosition === 'both' || nzPaginationPosition === 'top') {\n        <ng-template [ngTemplateOutlet]=\"paginationTemplate\" />\n      }\n      <div\n        #tableMainElement\n        class=\"ant-table\"\n        [class.ant-table-rtl]=\"dir === 'rtl'\"\n        [class.ant-table-fixed-header]=\"nzData.length && scrollY\"\n        [class.ant-table-fixed-column]=\"scrollX\"\n        [class.ant-table-has-fix-left]=\"hasFixLeft\"\n        [class.ant-table-has-fix-right]=\"hasFixRight\"\n        [class.ant-table-bordered]=\"nzBordered\"\n        [class.nz-table-out-bordered]=\"nzOuterBordered && !nzBordered\"\n        [class.ant-table-middle]=\"nzSize === 'middle'\"\n        [class.ant-table-small]=\"nzSize === 'small'\"\n      >\n        @if (nzTitle) {\n          <nz-table-title-footer [title]=\"nzTitle\" />\n        }\n        @if (scrollY || scrollX) {\n          <nz-table-inner-scroll\n            [data]=\"data\"\n            [scrollX]=\"scrollX\"\n            [scrollY]=\"scrollY\"\n            [contentTemplate]=\"contentTemplate\"\n            [listOfColWidth]=\"listOfAutoColWidth\"\n            [theadTemplate]=\"theadTemplate\"\n            [tfootTemplate]=\"tfootTemplate\"\n            [tfootFixed]=\"tfootFixed\"\n            [verticalScrollBarWidth]=\"verticalScrollBarWidth\"\n            [virtualTemplate]=\"nzVirtualScrollDirective ? nzVirtualScrollDirective.templateRef : null\"\n            [virtualItemSize]=\"nzVirtualItemSize\"\n            [virtualMaxBufferPx]=\"nzVirtualMaxBufferPx\"\n            [virtualMinBufferPx]=\"nzVirtualMinBufferPx\"\n            [tableMainElement]=\"tableMainElement\"\n            [virtualForTrackBy]=\"nzVirtualForTrackBy\"\n            [noDataVirtualHeight]=\"noDataVirtualHeight\"\n          />\n        } @else {\n          <nz-table-inner-default\n            [tableLayout]=\"nzTableLayout\"\n            [listOfColWidth]=\"listOfManualColWidth\"\n            [theadTemplate]=\"theadTemplate\"\n            [contentTemplate]=\"contentTemplate\"\n            [tfootTemplate]=\"tfootTemplate\"\n          />\n        }\n        @if (nzFooter) {\n          <nz-table-title-footer [footer]=\"nzFooter\" />\n        }\n      </div>\n      @if (nzPaginationPosition === 'both' || nzPaginationPosition === 'bottom') {\n        <ng-template [ngTemplateOutlet]=\"paginationTemplate\" />\n      }\n    </nz-spin>\n    <ng-template #paginationTemplate>\n      @if (nzShowPagination && data.length) {\n        <nz-pagination\n          [hidden]=\"!showPagination\"\n          class=\"ant-table-pagination ant-table-pagination-right\"\n          [nzShowSizeChanger]=\"nzShowSizeChanger\"\n          [nzPageSizeOptions]=\"nzPageSizeOptions\"\n          [nzItemRender]=\"nzItemRender!\"\n          [nzShowQuickJumper]=\"nzShowQuickJumper\"\n          [nzHideOnSinglePage]=\"nzHideOnSinglePage\"\n          [nzShowTotal]=\"nzShowTotal\"\n          [nzSize]=\"nzPaginationType === 'small' ? 'small' : nzSize === 'default' ? 'default' : 'small'\"\n          [nzPageSize]=\"nzPageSize\"\n          [nzTotal]=\"nzTotal\"\n          [nzSimple]=\"nzSimple\"\n          [nzPageIndex]=\"nzPageIndex\"\n          (nzPageSizeChange)=\"onPageSizeChange($event)\"\n          (nzPageIndexChange)=\"onPageIndexChange($event)\"\n        />\n      }\n    </ng-template>\n    <ng-template #contentTemplate>\n      <ng-content />\n    </ng-template>\n  `,\n  host: {\n    class: 'ant-table-wrapper',\n    '[class.ant-table-wrapper-rtl]': 'dir === \"rtl\"',\n    '[class.ant-table-custom-column]': `nzCustomColumn.length`\n  },\n  imports: [\n    NzSpinComponent,\n    NgTemplateOutlet,\n    NzTableTitleFooterComponent,\n    NzTableInnerScrollComponent,\n    NzTableInnerDefaultComponent,\n    NzPaginationModule\n  ]\n})\nexport class NzTableComponent<T> implements OnInit, OnChanges, AfterViewInit {\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n  private elementRef = inject(ElementRef);\n  private nzResizeObserver = inject(NzResizeObserver);\n  private cdr = inject(ChangeDetectorRef);\n  private nzTableStyleService = inject(NzTableStyleService);\n  private nzTableDataService = inject(NzTableDataService<T>);\n  private directionality = inject(Directionality);\n  private destroyRef = inject(DestroyRef);\n\n  @Input() nzTableLayout: NzTableLayout = 'auto';\n  @Input() nzShowTotal: TemplateRef<{ $implicit: number; range: [number, number] }> | null = null;\n  @Input() nzItemRender: TemplateRef<PaginationItemRenderContext> | null = null;\n  @Input() nzTitle: string | TemplateRef<NzSafeAny> | null = null;\n  @Input() nzFooter: string | TemplateRef<NzSafeAny> | null = null;\n  @Input() nzNoResult: string | TemplateRef<NzSafeAny> | undefined = undefined;\n  @Input() nzPageSizeOptions = [10, 20, 30, 40, 50];\n  @Input() nzVirtualItemSize = 0;\n  @Input() nzVirtualMaxBufferPx = 200;\n  @Input() nzVirtualMinBufferPx = 100;\n  @Input() nzVirtualForTrackBy: TrackByFunction<T> = index => index;\n  @Input() nzLoadingDelay = 0;\n  @Input() nzPageIndex = 1;\n  @Input() nzPageSize = 10;\n  @Input() nzTotal = 0;\n  @Input() nzWidthConfig: ReadonlyArray<string | null> = [];\n  @Input() nzData: readonly T[] = [];\n  @Input() nzCustomColumn: NzCustomColumn[] = [];\n\n  @Input() nzPaginationPosition: NzTablePaginationPosition = 'bottom';\n  @Input() nzScroll: { x?: string | null; y?: string | null } = { x: null, y: null };\n  @Input() noDataVirtualHeight = '182px';\n  @Input() nzPaginationType: NzTablePaginationType = 'default';\n  @Input({ transform: booleanAttribute }) nzFrontPagination = true;\n  @Input({ transform: booleanAttribute }) nzTemplateMode = false;\n  @Input({ transform: booleanAttribute }) nzShowPagination = true;\n  @Input({ transform: booleanAttribute }) nzLoading = false;\n  @Input({ transform: booleanAttribute }) nzOuterBordered = false;\n  @Input() @WithConfig() nzLoadingIndicator: TemplateRef<NzSafeAny> | null = null;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzBordered: boolean = false;\n  @Input() @WithConfig() nzSize: NzTableSize = 'default';\n  @Input({ transform: booleanAttribute }) @WithConfig() nzShowSizeChanger: boolean = false;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzHideOnSinglePage: boolean = false;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzShowQuickJumper: boolean = false;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzSimple: boolean = false;\n  @Output() readonly nzPageSizeChange = new EventEmitter<number>();\n  @Output() readonly nzPageIndexChange = new EventEmitter<number>();\n  @Output() readonly nzQueryParams = new EventEmitter<NzTableQueryParams>();\n  @Output() readonly nzCurrentPageDataChange = new EventEmitter<readonly T[]>();\n  @Output() readonly nzCustomColumnChange = new EventEmitter<readonly NzCustomColumn[]>();\n\n  /** public data for ngFor tr */\n  public data: readonly T[] = [];\n  public cdkVirtualScrollViewport?: CdkVirtualScrollViewport;\n  scrollX: string | null = null;\n  scrollY: string | null = null;\n  theadTemplate: TemplateRef<NzSafeAny> | null = null;\n  tfootTemplate: TemplateRef<NzSafeAny> | null = null;\n  tfootFixed: NzTableSummaryFixedType | null = null;\n  listOfAutoColWidth: ReadonlyArray<string | null> = [];\n  listOfManualColWidth: ReadonlyArray<string | null> = [];\n  hasFixLeft = false;\n  hasFixRight = false;\n  showPagination = true;\n  private templateMode$ = new BehaviorSubject<boolean>(false);\n  dir: Direction = 'ltr';\n  @ContentChild(NzTableVirtualScrollDirective, { static: false })\n  nzVirtualScrollDirective!: NzTableVirtualScrollDirective<T>;\n  @ViewChild(NzTableInnerScrollComponent) nzTableInnerScrollComponent!: NzTableInnerScrollComponent<T>;\n  verticalScrollBarWidth = 0;\n  onPageSizeChange(size: number): void {\n    this.nzTableDataService.updatePageSize(size);\n  }\n\n  onPageIndexChange(index: number): void {\n    this.nzTableDataService.updatePageIndex(index);\n  }\n\n  constructor() {\n    onConfigChangeEventForComponent(NZ_CONFIG_MODULE_NAME, () => this.cdr.markForCheck());\n  }\n\n  ngOnInit(): void {\n    const { pageIndexDistinct$, pageSizeDistinct$, listOfCurrentPageData$, total$, queryParams$, listOfCustomColumn$ } =\n      this.nzTableDataService;\n    const { theadTemplate$, tfootTemplate$, tfootFixed$, hasFixLeft$, hasFixRight$ } = this.nzTableStyleService;\n\n    this.dir = this.directionality.value;\n    this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n      this.dir = direction;\n      this.cdr.detectChanges();\n    });\n\n    queryParams$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(this.nzQueryParams);\n    pageIndexDistinct$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(pageIndex => {\n      if (pageIndex !== this.nzPageIndex) {\n        this.nzPageIndex = pageIndex;\n        this.nzPageIndexChange.next(pageIndex);\n      }\n    });\n    pageSizeDistinct$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(pageSize => {\n      if (pageSize !== this.nzPageSize) {\n        this.nzPageSize = pageSize;\n        this.nzPageSizeChange.next(pageSize);\n      }\n    });\n    total$\n      .pipe(\n        takeUntilDestroyed(this.destroyRef),\n        filter(total => this.nzFrontPagination && total !== this.nzTotal)\n      )\n      .subscribe(total => {\n        this.nzTotal = total;\n        this.cdr.markForCheck();\n      });\n    listOfCurrentPageData$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(data => {\n      this.data = data;\n      this.nzCurrentPageDataChange.next(data);\n      this.cdr.markForCheck();\n    });\n\n    listOfCustomColumn$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(data => {\n      this.nzCustomColumn = data;\n      this.nzCustomColumnChange.next(data);\n      this.cdr.markForCheck();\n    });\n\n    theadTemplate$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(theadTemplate => {\n      this.theadTemplate = theadTemplate;\n      this.cdr.markForCheck();\n    });\n\n    combineLatest([tfootTemplate$, tfootFixed$])\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe(([tfootTemplate, tfootFixed]) => {\n        this.tfootTemplate = tfootTemplate;\n        this.tfootFixed = tfootFixed;\n        this.cdr.markForCheck();\n      });\n\n    hasFixLeft$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(hasFixLeft => {\n      this.hasFixLeft = hasFixLeft;\n      this.cdr.markForCheck();\n    });\n\n    hasFixRight$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(hasFixRight => {\n      this.hasFixRight = hasFixRight;\n      this.cdr.markForCheck();\n    });\n\n    combineLatest([total$, this.templateMode$])\n      .pipe(\n        map(([total, templateMode]) => total === 0 && !templateMode),\n        takeUntilDestroyed(this.destroyRef)\n      )\n      .subscribe(empty => {\n        this.nzTableStyleService.setShowEmpty(empty);\n      });\n\n    this.verticalScrollBarWidth = measureScrollbar('vertical');\n    this.nzTableStyleService.listOfListOfThWidthPx$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(listOfWidth => {\n      this.listOfAutoColWidth = listOfWidth;\n      this.cdr.markForCheck();\n    });\n    this.nzTableStyleService.manualWidthConfigPx$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(listOfWidth => {\n      this.listOfManualColWidth = listOfWidth;\n      this.cdr.markForCheck();\n    });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const {\n      nzScroll,\n      nzPageIndex,\n      nzPageSize,\n      nzFrontPagination,\n      nzData,\n      nzCustomColumn,\n      nzWidthConfig,\n      nzNoResult,\n      nzTemplateMode\n    } = changes;\n    if (nzPageIndex) {\n      this.nzTableDataService.updatePageIndex(this.nzPageIndex);\n    }\n    if (nzPageSize) {\n      this.nzTableDataService.updatePageSize(this.nzPageSize);\n    }\n    if (nzData) {\n      this.nzData = this.nzData || [];\n      this.nzTableDataService.updateListOfData(this.nzData);\n    }\n    if (nzCustomColumn) {\n      this.nzCustomColumn = this.nzCustomColumn || [];\n      this.nzTableDataService.updateListOfCustomColumn(this.nzCustomColumn);\n    }\n    if (nzFrontPagination) {\n      this.nzTableDataService.updateFrontPagination(this.nzFrontPagination);\n    }\n    if (nzScroll) {\n      this.setScrollOnChanges();\n    }\n    if (nzWidthConfig) {\n      this.nzTableStyleService.setTableWidthConfig(this.nzWidthConfig);\n    }\n    if (nzTemplateMode) {\n      this.templateMode$.next(this.nzTemplateMode);\n    }\n    if (nzNoResult) {\n      this.nzTableStyleService.setNoResult(this.nzNoResult);\n    }\n\n    this.updateShowPagination();\n  }\n\n  ngAfterViewInit(): void {\n    this.nzResizeObserver\n      .observe(this.elementRef)\n      .pipe(\n        map(([entry]) => {\n          const { width } = entry.target.getBoundingClientRect();\n          const scrollBarWidth = this.scrollY ? this.verticalScrollBarWidth : 0;\n          return Math.floor(width - scrollBarWidth);\n        }),\n        takeUntilDestroyed(this.destroyRef)\n      )\n      .subscribe(this.nzTableStyleService.hostWidth$);\n    if (this.nzTableInnerScrollComponent && this.nzTableInnerScrollComponent.cdkVirtualScrollViewport) {\n      this.cdkVirtualScrollViewport = this.nzTableInnerScrollComponent.cdkVirtualScrollViewport;\n    }\n  }\n\n  private setScrollOnChanges(): void {\n    this.scrollX = (this.nzScroll && this.nzScroll.x) || null;\n    this.scrollY = (this.nzScroll && this.nzScroll.y) || null;\n    this.nzTableStyleService.setScroll(this.scrollX, this.scrollY);\n  }\n\n  private updateShowPagination(): void {\n    this.showPagination =\n      (this.nzHideOnSinglePage && this.nzData.length > this.nzPageSize) ||\n      (this.nzData.length > 0 && !this.nzHideOnSinglePage) ||\n      (!this.nzFrontPagination && this.nzTotal > this.nzPageSize);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  booleanAttribute,\n  ChangeDetectionStrategy,\n  Component,\n  inject,\n  Input,\n  OnChanges,\n  OnInit,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzTableStyleService } from '../table-style.service';\nimport { NzTableSummaryFixedType } from '../table.types';\n\nfunction fixedAttribute(value: NzTableSummaryFixedType | boolean | unknown): NzTableSummaryFixedType | null {\n  return value === 'top' || value === 'bottom' ? value : booleanAttribute(value) ? 'bottom' : null;\n}\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n  selector: 'tfoot[nzSummary]',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <ng-template #contentTemplate>\n      <ng-content />\n    </ng-template>\n    @if (!isInsideTable || !nzFixed) {\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n    }\n  `,\n  imports: [NgTemplateOutlet],\n  host: {\n    '[class.ant-table-summary]': '!isInsideTable || !nzFixed'\n  }\n})\nexport class NzTfootSummaryComponent implements OnInit, OnChanges {\n  @Input({ transform: fixedAttribute }) nzFixed: NzTableSummaryFixedType | null = null;\n  @ViewChild('contentTemplate', { static: true }) templateRef!: TemplateRef<NzSafeAny>;\n  private nzTableStyleService = inject(NzTableStyleService, { optional: true });\n  isInsideTable = !!this.nzTableStyleService;\n\n  ngOnInit(): void {\n    this.nzTableStyleService?.setTfootTemplate(this.templateRef);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { nzFixed } = changes;\n    this.nzTableStyleService?.setTfootFixed(nzFixed.currentValue);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { AfterContentInit, ContentChildren, DestroyRef, Directive, QueryList, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Observable, ReplaySubject, combineLatest, merge } from 'rxjs';\nimport { map, mergeMap, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzCellFixedDirective } from '../cell/cell-fixed.directive';\nimport { NzThMeasureDirective } from '../cell/th-measure.directive';\nimport { NzTableStyleService } from '../table-style.service';\n\n@Directive({\n  selector: 'tr:not([nz-table-measure-row]):not([nzExpand]):not([nz-table-fixed-row])',\n  host: {\n    '[class.ant-table-row]': 'isInsideTable'\n  }\n})\nexport class NzTrDirective implements AfterContentInit {\n  private destroyRef = inject(DestroyRef);\n\n  @ContentChildren(NzThMeasureDirective) listOfNzThDirective!: QueryList<NzThMeasureDirective>;\n  @ContentChildren(NzCellFixedDirective) listOfCellFixedDirective!: QueryList<NzCellFixedDirective>;\n\n  private listOfFixedColumns$ = new ReplaySubject<NzCellFixedDirective[]>(1);\n  private listOfColumns$ = new ReplaySubject<NzThMeasureDirective[]>(1);\n  listOfFixedColumnsChanges$: Observable<NzCellFixedDirective[]> = this.listOfFixedColumns$.pipe(\n    switchMap(list =>\n      merge(this.listOfFixedColumns$, ...list.map(c => c.changes$)).pipe(mergeMap(() => this.listOfFixedColumns$))\n    ),\n    takeUntilDestroyed(this.destroyRef)\n  );\n  listOfFixedLeftColumnChanges$ = this.listOfFixedColumnsChanges$.pipe(\n    map(list => list.filter(item => item.nzLeft !== false))\n  );\n  listOfFixedRightColumnChanges$ = this.listOfFixedColumnsChanges$.pipe(\n    map(list => list.filter(item => item.nzRight !== false))\n  );\n  listOfColumnsChanges$: Observable<NzThMeasureDirective[]> = this.listOfColumns$.pipe(\n    switchMap(list =>\n      merge(this.listOfColumns$, ...list.map(c => c.changes$)).pipe(mergeMap(() => this.listOfColumns$))\n    ),\n    takeUntilDestroyed(this.destroyRef)\n  );\n\n  private nzTableStyleService = inject(NzTableStyleService, { optional: true });\n  isInsideTable = !!this.nzTableStyleService;\n\n  ngAfterContentInit(): void {\n    if (this.nzTableStyleService) {\n      this.listOfCellFixedDirective.changes\n        .pipe(startWith(this.listOfCellFixedDirective), takeUntilDestroyed(this.destroyRef))\n        .subscribe(this.listOfFixedColumns$);\n      this.listOfNzThDirective.changes\n        .pipe(startWith(this.listOfNzThDirective), takeUntilDestroyed(this.destroyRef))\n        .subscribe(this.listOfColumns$);\n      /** set last left and first right **/\n      this.listOfFixedLeftColumnChanges$.subscribe(listOfFixedLeft => {\n        listOfFixedLeft.forEach(cell => cell.setIsLastLeft(cell === listOfFixedLeft[listOfFixedLeft.length - 1]));\n      });\n      this.listOfFixedRightColumnChanges$.subscribe(listOfFixedRight => {\n        listOfFixedRight.forEach(cell => cell.setIsFirstRight(cell === listOfFixedRight[0]));\n      });\n      /** calculate fixed nzLeft and nzRight **/\n      combineLatest([this.nzTableStyleService.listOfListOfThWidth$, this.listOfFixedLeftColumnChanges$])\n        .pipe(takeUntilDestroyed(this.destroyRef))\n        .subscribe(([listOfAutoWidth, listOfLeftCell]) => {\n          listOfLeftCell.forEach((cell, index) => {\n            if (cell.isAutoLeft) {\n              const currentArray = listOfLeftCell.slice(0, index);\n              const count = currentArray.reduce((pre, cur) => pre + (cur.colspan || cur.colSpan || 1), 0);\n              const width = listOfAutoWidth.slice(0, count).reduce((pre, cur) => pre + cur, 0);\n              cell.setAutoLeftWidth(`${width}px`);\n            }\n          });\n        });\n      combineLatest([this.nzTableStyleService.listOfListOfThWidth$, this.listOfFixedRightColumnChanges$])\n        .pipe(takeUntilDestroyed(this.destroyRef))\n        .subscribe(([listOfAutoWidth, listOfRightCell]) => {\n          listOfRightCell.forEach((_, index) => {\n            const cell = listOfRightCell[listOfRightCell.length - index - 1];\n            if (cell.isAutoRight) {\n              const currentArray = listOfRightCell.slice(listOfRightCell.length - index, listOfRightCell.length);\n              const count = currentArray.reduce((pre, cur) => pre + (cur.colspan || cur.colSpan || 1), 0);\n              const width = listOfAutoWidth\n                .slice(listOfAutoWidth.length - count, listOfAutoWidth.length)\n                .reduce((pre, cur) => pre + cur, 0);\n              cell.setAutoRightWidth(`${width}px`);\n            }\n          });\n        });\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/* eslint-disable @angular-eslint/component-selector */\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n  AfterContentInit,\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  ContentChildren,\n  ElementRef,\n  EventEmitter,\n  OnInit,\n  Output,\n  QueryList,\n  Renderer2,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation,\n  inject,\n  DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { EMPTY, Observable, merge, of } from 'rxjs';\nimport { delay, map, mergeMap, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzThAddOnComponent } from '../cell/th-addon.component';\nimport { NzTableDataService } from '../table-data.service';\nimport { NzTableStyleService } from '../table-style.service';\nimport { NzTrDirective } from './tr.directive';\n\n@Component({\n  selector: 'thead:not(.ant-table-thead)',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <ng-template #contentTemplate>\n      <ng-content />\n    </ng-template>\n    @if (!isInsideTable) {\n      <ng-template [ngTemplateOutlet]=\"contentTemplate\" />\n    }\n  `,\n  imports: [NgTemplateOutlet]\n})\nexport class NzTheadComponent<T> implements AfterContentInit, AfterViewInit, OnInit {\n  private nzTableStyleService = inject(NzTableStyleService, { optional: true });\n  private nzTableDataService: NzTableDataService<T> | null = inject(NzTableDataService, { optional: true });\n  private destroyRef = inject(DestroyRef);\n  private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n  private renderer = inject(Renderer2);\n\n  isInsideTable = !!this.nzTableStyleService;\n  @ViewChild('contentTemplate', { static: true }) templateRef!: TemplateRef<NzSafeAny>;\n  @ContentChildren(NzTrDirective, { descendants: true }) listOfNzTrDirective!: QueryList<NzTrDirective>;\n  @ContentChildren(NzThAddOnComponent, { descendants: true }) listOfNzThAddOnComponent!: QueryList<\n    NzThAddOnComponent<T>\n  >;\n  @Output() readonly nzSortOrderChange = new EventEmitter<{ key: NzSafeAny; value: string | null }>();\n\n  ngOnInit(): void {\n    if (this.nzTableStyleService) {\n      this.nzTableStyleService.setTheadTemplate(this.templateRef);\n    }\n  }\n\n  ngAfterContentInit(): void {\n    if (this.nzTableStyleService) {\n      const firstTableRow$ = this.listOfNzTrDirective.changes.pipe(\n        startWith(this.listOfNzTrDirective),\n        map(item => item && item.first),\n        takeUntilDestroyed(this.destroyRef)\n      ) as Observable<NzTrDirective>;\n      const listOfColumnsChanges$ = firstTableRow$.pipe(\n        switchMap(firstTableRow => (firstTableRow ? firstTableRow.listOfColumnsChanges$ : EMPTY))\n      );\n      listOfColumnsChanges$.subscribe(data => this.nzTableStyleService!.setListOfTh(data));\n      /** TODO: need reset the measure row when scrollX change **/\n      this.nzTableStyleService.enableAutoMeasure$\n        .pipe(switchMap(enable => (enable ? listOfColumnsChanges$ : of([]))))\n        .pipe(takeUntilDestroyed(this.destroyRef))\n        .subscribe(data => this.nzTableStyleService!.setListOfMeasureColumn(data));\n      const listOfFixedLeftColumnChanges$ = firstTableRow$.pipe(\n        switchMap(firstTr => (firstTr ? firstTr.listOfFixedLeftColumnChanges$ : EMPTY))\n      );\n      const listOfFixedRightColumnChanges$ = firstTableRow$.pipe(\n        switchMap(firstTr => (firstTr ? firstTr.listOfFixedRightColumnChanges$ : EMPTY))\n      );\n      listOfFixedLeftColumnChanges$.subscribe(listOfFixedLeftColumn => {\n        this.nzTableStyleService!.setHasFixLeft(listOfFixedLeftColumn.length !== 0);\n      });\n      listOfFixedRightColumnChanges$.subscribe(listOfFixedRightColumn => {\n        this.nzTableStyleService!.setHasFixRight(listOfFixedRightColumn.length !== 0);\n      });\n    }\n\n    if (this.nzTableDataService) {\n      const listOfColumn$ = this.listOfNzThAddOnComponent.changes.pipe(\n        startWith(this.listOfNzThAddOnComponent)\n      ) as Observable<QueryList<NzThAddOnComponent<T>>>;\n      const manualSort$ = listOfColumn$.pipe(\n        switchMap(() => merge(...this.listOfNzThAddOnComponent.map(th => th.manualClickOrder$))),\n        takeUntilDestroyed(this.destroyRef)\n      );\n      manualSort$.subscribe(data => {\n        const emitValue = { key: data.nzColumnKey, value: data.sortOrder };\n        this.nzSortOrderChange.emit(emitValue);\n        if (data.nzSortFn && data.nzSortPriority === false) {\n          this.listOfNzThAddOnComponent.filter(th => th !== data).forEach(th => th.clearSortOrder());\n        }\n      });\n      const listOfCalcOperator$ = listOfColumn$.pipe(\n        switchMap(list =>\n          merge(listOfColumn$, ...list.map(c => c.calcOperatorChange$)).pipe(mergeMap(() => listOfColumn$))\n        ),\n        map(list =>\n          list\n            .filter(item => !!item.nzSortFn || !!item.nzFilterFn)\n            .map(item => {\n              const { nzSortFn, sortOrder, nzFilterFn, nzFilterValue, nzSortPriority, nzColumnKey } = item;\n              return {\n                key: nzColumnKey,\n                sortFn: nzSortFn,\n                sortPriority: nzSortPriority,\n                sortOrder: sortOrder!,\n                filterFn: nzFilterFn!,\n                filterValue: nzFilterValue\n              };\n            })\n        ),\n        // TODO: after checked error here\n        delay(0),\n        takeUntilDestroyed(this.destroyRef)\n      );\n      listOfCalcOperator$.subscribe(list => {\n        this.nzTableDataService?.listOfCalcOperator$.next(list);\n      });\n    }\n  }\n\n  ngAfterViewInit(): void {\n    if (this.nzTableStyleService) {\n      this.renderer.removeChild(this.renderer.parentNode(this.el), this.el);\n    }\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { booleanAttribute, Directive, Input } from '@angular/core';\n\n@Directive({\n  selector: 'tr[nzExpand]',\n  host: {\n    class: 'ant-table-expanded-row',\n    '[hidden]': `!nzExpand`\n  }\n})\nexport class NzTrExpandDirective {\n  @Input({ transform: booleanAttribute }) nzExpand = true;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzFilterTriggerComponent } from './addon/filter-trigger.component';\nimport { NzTableFilterComponent } from './addon/filter.component';\nimport { NzRowExpandButtonDirective } from './addon/row-expand-button.directive';\nimport { NzRowIndentDirective } from './addon/row-indent.directive';\nimport { NzTableSelectionComponent } from './addon/selection.component';\nimport { NzTableSortersComponent } from './addon/sorters.component';\nimport { NzCellFixedDirective } from './cell/cell-fixed.directive';\nimport { NzTableCellDirective } from './cell/cell.directive';\nimport { NzCustomColumnDirective } from './cell/custom-column.directive';\nimport { NzTdAddOnComponent } from './cell/td-addon.component';\nimport { NzThAddOnComponent } from './cell/th-addon.component';\nimport { NzThMeasureDirective } from './cell/th-measure.directive';\nimport { NzThSelectionComponent } from './cell/th-selection.component';\nimport { NzCellAlignDirective } from './styled/align.directive';\nimport { NzCellEllipsisDirective } from './styled/ellipsis.directive';\nimport { NzCellBreakWordDirective } from './styled/word-break.directive';\nimport { NzTableContentComponent } from './table/table-content.component';\nimport { NzTableFixedRowComponent } from './table/table-fixed-row.component';\nimport { NzTableInnerDefaultComponent } from './table/table-inner-default.component';\nimport { NzTableInnerScrollComponent } from './table/table-inner-scroll.component';\nimport { NzTableVirtualScrollDirective } from './table/table-virtual-scroll.directive';\nimport { NzTableComponent } from './table/table.component';\nimport { NzTbodyComponent } from './table/tbody.component';\nimport { NzTfootSummaryComponent } from './table/tfoot-summary.component';\nimport { NzTheadComponent } from './table/thead.component';\nimport { NzTableTitleFooterComponent } from './table/title-footer.component';\nimport { NzTrExpandDirective } from './table/tr-expand.directive';\nimport { NzTrMeasureComponent } from './table/tr-measure.component';\nimport { NzTrDirective } from './table/tr.directive';\n\n@NgModule({\n  imports: [\n    NzTableComponent,\n    NzThAddOnComponent,\n    NzTableCellDirective,\n    NzThMeasureDirective,\n    NzTdAddOnComponent,\n    NzTheadComponent,\n    NzTbodyComponent,\n    NzTrDirective,\n    NzTrExpandDirective,\n    NzTfootSummaryComponent,\n    NzTableVirtualScrollDirective,\n    NzCellFixedDirective,\n    NzCustomColumnDirective,\n    NzTableContentComponent,\n    NzTableTitleFooterComponent,\n    NzTableInnerDefaultComponent,\n    NzTableInnerScrollComponent,\n    NzTrMeasureComponent,\n    NzRowIndentDirective,\n    NzRowExpandButtonDirective,\n    NzCellBreakWordDirective,\n    NzCellAlignDirective,\n    NzTableSortersComponent,\n    NzTableFilterComponent,\n    NzTableSelectionComponent,\n    NzCellEllipsisDirective,\n    NzFilterTriggerComponent,\n    NzTableFixedRowComponent,\n    NzThSelectionComponent\n  ],\n  exports: [\n    NzTableComponent,\n    NzThAddOnComponent,\n    NzTableCellDirective,\n    NzThMeasureDirective,\n    NzTdAddOnComponent,\n    NzTheadComponent,\n    NzTbodyComponent,\n    NzTrDirective,\n    NzTableVirtualScrollDirective,\n    NzCellFixedDirective,\n    NzCustomColumnDirective,\n    NzFilterTriggerComponent,\n    NzTrExpandDirective,\n    NzTfootSummaryComponent,\n    NzCellBreakWordDirective,\n    NzCellAlignDirective,\n    NzCellEllipsisDirective,\n    NzTableFixedRowComponent,\n    NzThSelectionComponent\n  ]\n})\nexport class NzTableModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport type NzTableLayout = 'fixed' | 'auto';\nexport type NzTablePaginationPosition = 'top' | 'bottom' | 'both';\nexport type NzTablePaginationType = 'default' | 'small';\nexport type NzTableSize = 'middle' | 'default' | 'small';\nexport type NzTableFilterList = Array<{ text: string; value: NzSafeAny; byDefault?: boolean }>;\nexport type NzTableSortOrder = string | 'ascend' | 'descend' | null;\nexport type NzTableSortFn<T = unknown> = (a: T, b: T, sortOrder?: NzTableSortOrder) => number;\nexport type NzTableFilterValue = NzSafeAny[] | NzSafeAny;\nexport type NzTableFilterFn<T = unknown> = (value: NzTableFilterValue, data: T) => boolean;\n\nexport interface NzTableQueryParams {\n  pageIndex: number;\n  pageSize: number;\n  sort: Array<{ key: string; value: NzTableSortOrder }>;\n  filter: Array<{ key: string; value: NzTableFilterValue }>;\n}\n\nexport interface NzCustomColumn {\n  value: string;\n  default: boolean;\n  width: number;\n  fixWidth?: boolean;\n}\n\nexport type NzTableSummaryFixedType = 'top' | 'bottom';\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './src/table.module';\nexport * from './src/table.types';\nexport * from './src/table-data.service';\nexport * from './src/table-style.service';\nexport * from './src/table/table.component';\nexport * from './src/table/table-content.component';\nexport * from './src/table/table-fixed-row.component';\nexport * from './src/table/table-inner-default.component';\nexport * from './src/table/table-inner-scroll.component';\nexport * from './src/table/table-virtual-scroll.directive';\nexport * from './src/table/table-fixed-row.component';\nexport * from './src/table/tbody.component';\nexport * from './src/table/thead.component';\nexport * from './src/table/tfoot-summary.component';\nexport * from './src/table/tr.directive';\nexport * from './src/table/tr-expand.directive';\nexport * from './src/table/title-footer.component';\nexport * from './src/table/tr-measure.component';\nexport * from './src/cell/cell-fixed.directive';\nexport * from './src/cell/cell.directive';\nexport * from './src/cell/custom-column.directive';\nexport * from './src/cell/th-measure.directive';\nexport * from './src/cell/td-addon.component';\nexport * from './src/cell/th-selection.component';\nexport * from './src/cell/th-addon.component';\nexport * from './src/addon/filter.component';\nexport * from './src/addon/row-expand-button.directive';\nexport * from './src/addon/row-indent.directive';\nexport * from './src/addon/selection.component';\nexport * from './src/addon/sorters.component';\nexport * from './src/addon/filter-trigger.component';\nexport * from './src/styled/align.directive';\nexport * from './src/styled/ellipsis.directive';\nexport * from './src/styled/word-break.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["NZ_CONFIG_MODULE_NAME","i1","i3","i4","i2","i5"],"mappings":"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"}