@ux-aspects/ux-aspects
Version:
Open source user interface framework for building modern, responsive, mobile big data applications
40 lines (39 loc) • 1.66 kB
TypeScript
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import * as i0 from "@angular/core";
export declare class FixedHeaderTableDirective<T> implements OnInit, OnDestroy {
private readonly _elementRef;
private readonly _renderer;
private readonly _resizeService;
/** Allow dataset changes to trigger re-layout */
set dataset(_dataset: ReadonlyArray<T>);
/** Define the table height */
tableHeight: number | string;
/** Emit when the table tries to load more data */
tablePaging: EventEmitter<number>;
/** Apply a class whenever the table has scrolled */
_hasScrolled: boolean;
/** Store the table head element */
private _tableHead;
/** Store the table body element */
private _tableBody;
/** Unsubscribe from all observables on destroy */
private readonly _onDestroy;
ngOnInit(): void;
ngOnDestroy(): void;
/**
* Get the table element
* Primarily used by column width directive
*/
getTable(): HTMLTableElement;
/**
* Update the size of the table header to account for the scrollbar.
* This is important to keep the columns aligned
*/
setLayout(): void;
/**
* Handle scroll events
*/
private onScroll;
static ɵfac: i0.ɵɵFactoryDeclaration<FixedHeaderTableDirective<any>, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<FixedHeaderTableDirective<any>, "[uxFixedHeaderTable]", ["ux-fixed-header-table"], { "dataset": { "alias": "dataset"; "required": false; }; "tableHeight": { "alias": "tableHeight"; "required": false; }; }, { "tablePaging": "tablePaging"; }, never, never, false, never>;
}