@doku-dev/doku-fragment
Version:
A new Angular UI library that moving away from Bootstrap and built from scratch.
40 lines (39 loc) • 1.73 kB
TypeScript
import { AfterViewInit, ElementRef, NgZone, OnChanges, OnDestroy, Renderer2, SimpleChanges } from '@angular/core';
import { DokuTable } from './table.directive';
import * as i0 from "@angular/core";
export declare enum DokuStickyColumnPosition {
Left = "left",
Right = "right"
}
export declare class DokuTableStickyColumn implements OnChanges, OnDestroy, AfterViewInit {
private elementRef;
private renderer;
private ngZone;
private dokuTable?;
position?: DokuStickyColumnPosition;
private observer?;
private destroy$;
constructor(elementRef: ElementRef, renderer: Renderer2, ngZone: NgZone, dokuTable?: DokuTable | undefined);
protected get element(): HTMLElement;
protected get isStickyLeft(): boolean;
protected get isStickyRight(): boolean;
ngOnChanges(changes: SimpleChanges): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
private handleDynamicStyleRight;
private handleDynamicStyleLeft;
private getSiblingElementClientWidth;
private watchTableContainerScrollEvent;
private handleStickyLeftShadow;
private handleStickyRightShadow;
/**
* Check whether this column is the last sticky column.
*
* For the `left` position, will check if no sticky column after.
* For the `right` position, will check if no sticky column before.
*/
private isLastStickyColumn;
private toggleShadowClass;
static ɵfac: i0.ɵɵFactoryDeclaration<DokuTableStickyColumn, [null, null, null, { optional: true; }]>;
static ɵdir: i0.ɵɵDirectiveDeclaration<DokuTableStickyColumn, "th[doku-sticky-column], td[doku-sticky-column]", ["dokuStickyColumn"], { "position": "doku-sticky-column"; }, {}, never, never, true>;
}