@swimlane/ngx-datatable
Version:
ngx-datatable is an Angular table grid component for presenting large and complex data.
76 lines (75 loc) • 4.37 kB
TypeScript
import { EventEmitter, OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
import { ColumnResizeEvent, InnerSortEvent, ReorderEvent, SelectionType, SortDirection, SortEvent, SortPropDir, SortType } from '../../types/public.types';
import { NgStyle } from '@angular/common';
import { TableColumn } from '../../types/table-column.type';
import { OrderableReorderEvent, PinnedColumns, TargetChangedEvent } from '../../types/internal.types';
import * as i0 from "@angular/core";
export declare class DataTableHeaderComponent implements OnDestroy, OnChanges {
private cd;
private scrollbarHelper;
sortAscendingIcon: string;
sortDescendingIcon: string;
sortUnsetIcon: string;
scrollbarH: boolean;
dealsWithGroup: boolean;
targetMarkerTemplate: TemplateRef<unknown>;
enableClearingSortState: boolean;
set innerWidth(val: number);
get innerWidth(): number;
sorts: SortPropDir[];
sortType: SortType;
allRowsSelected: boolean;
selectionType: SelectionType;
reorderable: boolean;
verticalScrollVisible: boolean;
dragEventTarget?: MouseEvent;
set headerHeight(val: any);
get headerHeight(): any;
set columns(val: TableColumn[]);
get columns(): any[];
set offsetX(val: number);
get offsetX(): number;
sort: EventEmitter<SortEvent>;
reorder: EventEmitter<ReorderEvent>;
resize: EventEmitter<ColumnResizeEvent>;
resizing: EventEmitter<ColumnResizeEvent>;
select: EventEmitter<void>;
columnContextmenu: EventEmitter<{
event: MouseEvent;
column: TableColumn;
}>;
_columnsByPin: PinnedColumns[];
_columnGroupWidths: any;
_innerWidth: number;
_offsetX: number;
_columns: TableColumn[];
_headerHeight: string;
_styleByGroup: {
left: NgStyle['ngStyle'];
center: NgStyle['ngStyle'];
right: NgStyle['ngStyle'];
};
private destroyed;
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
onLongPressStart({ event, model }: {
event: MouseEvent;
model: TableColumn;
}): void;
onLongPressEnd({ model }: {
model: TableColumn;
}): void;
get headerWidth(): string;
onColumnResized(width: number, column: TableColumn): void;
onColumnResizing(width: number, column: TableColumn): void;
private makeResizeEvent;
onColumnReordered({ prevIndex, newIndex, model }: OrderableReorderEvent): void;
onTargetChanged({ prevIndex, newIndex, initialIndex }: TargetChangedEvent): void;
getColumn(index: number): any;
onSort({ column, prevValue, newValue }: InnerSortEvent): void;
calcNewSorts(column: TableColumn, prevValue: SortDirection, newValue: SortDirection): SortPropDir[];
setStylesByGroup(): void;
calcStylesByGroup(group: 'center' | 'right' | 'left'): NgStyle['ngStyle'];
static ɵfac: i0.ɵɵFactoryDeclaration<DataTableHeaderComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DataTableHeaderComponent, "datatable-header", never, { "sortAscendingIcon": { "alias": "sortAscendingIcon"; "required": false; }; "sortDescendingIcon": { "alias": "sortDescendingIcon"; "required": false; }; "sortUnsetIcon": { "alias": "sortUnsetIcon"; "required": false; }; "scrollbarH": { "alias": "scrollbarH"; "required": false; }; "dealsWithGroup": { "alias": "dealsWithGroup"; "required": false; }; "targetMarkerTemplate": { "alias": "targetMarkerTemplate"; "required": false; }; "enableClearingSortState": { "alias": "enableClearingSortState"; "required": false; }; "innerWidth": { "alias": "innerWidth"; "required": false; }; "sorts": { "alias": "sorts"; "required": false; }; "sortType": { "alias": "sortType"; "required": false; }; "allRowsSelected": { "alias": "allRowsSelected"; "required": false; }; "selectionType": { "alias": "selectionType"; "required": false; }; "reorderable": { "alias": "reorderable"; "required": false; }; "verticalScrollVisible": { "alias": "verticalScrollVisible"; "required": false; }; "headerHeight": { "alias": "headerHeight"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "offsetX": { "alias": "offsetX"; "required": false; }; }, { "sort": "sort"; "reorder": "reorder"; "resize": "resize"; "resizing": "resizing"; "select": "select"; "columnContextmenu": "columnContextmenu"; }, never, never, true, never>;
}