ng-table-virtual-scroll
Version:
Virtual scroll for for Angular Material Table
35 lines (34 loc) • 1.76 kB
TypeScript
import { CdkTable } from '@angular/cdk/table';
import { AfterContentInit, NgZone, OnChanges, OnDestroy } from '@angular/core';
import { Subject } from 'rxjs';
import { FixedSizeTableVirtualScrollStrategy } from './fixed-size-table-virtual-scroll-strategy';
import * as i0 from "@angular/core";
export declare function _tableVirtualScrollDirectiveStrategyFactory(tableDir: TableItemSizeDirective): FixedSizeTableVirtualScrollStrategy;
export declare class TableItemSizeDirective<T = unknown> implements OnChanges, AfterContentInit, OnDestroy {
private zone;
private destroyed$;
rowHeight: string | number;
headerEnabled: boolean;
headerHeight: string | number;
footerEnabled: boolean;
footerHeight: string | number;
bufferMultiplier: string | number;
table: CdkTable<T>;
scrollStrategy: FixedSizeTableVirtualScrollStrategy;
dataSourceChanges: Subject<void>;
private stickyPositions;
private resetStickyPositions;
private stickyEnabled;
constructor(zone: NgZone);
ngOnDestroy(): void;
ngAfterContentInit(): void;
connectDataSource(dataSource: unknown): void;
ngOnChanges(): void;
private setStickyEnabled;
private setStickyHeader;
private setStickyFooter;
private initStickyPositions;
private getScheduleObservable;
static ɵfac: i0.ɵɵFactoryDeclaration<TableItemSizeDirective<any>, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<TableItemSizeDirective<any>, "cdk-virtual-scroll-viewport[tvsItemSize]", never, { "rowHeight": "tvsItemSize"; "headerEnabled": "headerEnabled"; "headerHeight": "headerHeight"; "footerEnabled": "footerEnabled"; "footerHeight": "footerHeight"; "bufferMultiplier": "bufferMultiplier"; }, {}, ["table"], never, false, never>;
}