ngx-ui-hero
Version:
Simple, fast and reliable utilities for Angular.
158 lines (157 loc) • 7.91 kB
TypeScript
import { BsModalService } from "ngx-bootstrap/modal";
import { PageChangedEvent, PaginationComponent } from "ngx-bootstrap/pagination";
import { DoCheck, EventEmitter, IterableDiffers, OnInit, Renderer2 } from "@angular/core";
import { DomSanitizer, SafeHtml } from "@angular/platform-browser";
import { DataGridConfig, EnumAutoFitMode, EnumDataGridMode } from "./config/data-grid-config";
import { ActionsColumnDirective } from "./directives/data-grid-templates.directive";
import { DataGridColumnModel, EnumSortDirection } from "./models/data-grid-column.model";
import * as i0 from "@angular/core";
export declare class GridDataModel {
rows: Array<GridRowModel>;
hasData: boolean;
}
export declare class GridRowModel {
model: any;
columns: Array<GridColumnModel>;
selected: boolean;
ngClass?: any;
}
export declare class GridColumnModel {
value?: string | SafeHtml;
isHtml: boolean;
}
export declare class DataGridComponent implements OnInit, DoCheck, DataGridConfig {
private iterableDiffers;
private modalService;
private renderer;
private sanitizer;
initialRenderApplied: boolean;
sortApplied: boolean;
animating: boolean;
selectAll: boolean;
isResizing: boolean;
isReordering: boolean;
currentElementBeingReorderedFromIndex: number;
currentElementBeingReorderedToIndex: number;
currentPage: number;
gridData: GridDataModel;
identifier: string;
debugMode: boolean;
tableId?: string;
columns: Array<DataGridColumnModel>;
emptyResultsMessage?: string;
infoMessage?: string;
animated?: boolean;
striped?: boolean;
bordered?: boolean;
hoverEffect?: boolean;
responsive?: boolean;
showCheckboxColumn?: boolean;
showSelectAllCheckbox?: boolean;
selectAllPages?: boolean;
checkBoxMode?: number;
showSummaries?: boolean;
allowExports?: boolean;
exportButtonLabel?: string;
exportedFileName?: string;
exportedExcelSheetName?: string;
initialColumnToSort?: number;
initialSortDirection?: EnumSortDirection;
mode?: EnumDataGridMode;
totalItems?: number;
itemsPerPage?: number;
maxSize?: number;
boundaryLinks?: boolean;
directionLinks?: boolean;
rotate?: boolean;
showActionsColumn?: boolean;
showInfos?: boolean;
actionsColumnCaption?: string;
actionsColumnWidth?: string;
firstText?: string;
previousText?: string;
nextText?: string;
lastText?: string;
autoFitMode?: EnumAutoFitMode;
allowColumnResize?: boolean;
allowColumnFilters?: boolean;
allowColumnReorder?: boolean;
fixedHeader?: boolean;
minHeight?: number;
maxHeight?: number;
userPreferencesKey?: string;
filterPlaceholder?: string;
filterPlacement?: string;
boundedExportCallback?: () => Promise<any[]>;
OnSelectionChanged: EventEmitter<any>;
OnRowSelected: EventEmitter<any>;
OnRowRendered: EventEmitter<GridRowModel>;
OnPaginate: EventEmitter<any>;
OnSort: EventEmitter<DataGridColumnModel>;
OnColumnFiltered: EventEmitter<DataGridColumnModel>;
actionsColumnTemplate: ActionsColumnDirective;
paginator: PaginationComponent;
private _dataDiffer;
private _internalData;
private _externalData;
private _internalColumns;
private _externalColumns;
private _maxWidth;
private _minColumnWidth;
private _columnDefinitions;
get data(): Array<any>;
set data(value: Array<any>);
constructor(defaultOptions: DataGridConfig, iterableDiffers: IterableDiffers, modalService: BsModalService, renderer: Renderer2, sanitizer: DomSanitizer);
ngOnInit(): void;
ngDoCheck(): void;
ToogleSorting(column: DataGridColumnModel): void;
PageChanged(event: PageChangedEvent): void;
GetInfo(): string;
Redraw(): void;
RenderPropertyValue(propertyPath: string, object: any): any;
RenderColumnSummary(column: DataGridColumnModel): number;
HasSummarizableColumns(): boolean;
OnSelectAllChanged(): void;
OnRowSelectedChanged(row: any, rowIndex: number): void;
ExportToExcel(event: MouseEvent): Promise<boolean>;
OnResizerMouseDown(e: any): void;
OnColumnMouseDown(e: any, index: number): void;
OnColumnFilterClick(e: Event, column: DataGridColumnModel): void;
OnFiltersChange(column: DataGridColumnModel): void;
HandleColumnClick(row: any, currentData: any, rowIndex: number, column: DataGridColumnModel): void;
HandleColumnRendering(row: any, currentData: any, rowIndex: number, column: DataGridColumnModel): SafeHtml;
private draw;
private initializeRendering;
private initializeGridData;
private initGridDataModel;
private initializeColumns;
private initializeSorting;
private initializePaging;
private paddingDiff;
private getStyleVal;
private isUndefinedOrNull;
private sortOnClient;
private paginateOnClient;
private handleAutoFit;
private autofitByContent;
private autofitByCaption;
private autofitByFixedWidths;
private handleSelectAllCheckboxState;
private setDataGridWidths;
private handleInitialRenderingFlag;
private initializeFilters;
private closeAllColumnsFilters;
private handleRowRenders;
private verifyColumnIndexPersistences;
private getColumnReorderingDefinition;
private getOrCreateColumnReorderingDefinition;
private buildColumnReorderingDefinition;
private definitionIsNotCompatibleAnymore;
private applyColumnReorderingDefinition;
private updateColumnReorderingDefinition;
private getColumnReorderingDefinitionFrom;
private filterColumnsThatShouldBeVisible;
private debug;
static ɵfac: i0.ɵɵFactoryDeclaration<DataGridComponent, [{ optional: true; }, null, null, null, null]>;
static ɵcmp: i0.ɵɵComponentDeclaration<DataGridComponent, "datagrid", never, { "debugMode": "debugMode"; "tableId": "tableId"; "columns": "columns"; "emptyResultsMessage": "emptyResultsMessage"; "infoMessage": "infoMessage"; "animated": "animated"; "striped": "striped"; "bordered": "bordered"; "hoverEffect": "hoverEffect"; "responsive": "responsive"; "showCheckboxColumn": "showCheckboxColumn"; "showSelectAllCheckbox": "showSelectAllCheckbox"; "selectAllPages": "selectAllPages"; "checkBoxMode": "checkBoxMode"; "showSummaries": "showSummaries"; "allowExports": "allowExports"; "exportButtonLabel": "exportButtonLabel"; "exportedFileName": "exportedFileName"; "exportedExcelSheetName": "exportedExcelSheetName"; "initialColumnToSort": "initialColumnToSort"; "initialSortDirection": "initialSortDirection"; "mode": "mode"; "totalItems": "totalItems"; "itemsPerPage": "itemsPerPage"; "maxSize": "maxSize"; "boundaryLinks": "boundaryLinks"; "directionLinks": "directionLinks"; "rotate": "rotate"; "showActionsColumn": "showActionsColumn"; "showInfos": "showInfos"; "actionsColumnCaption": "actionsColumnCaption"; "actionsColumnWidth": "actionsColumnWidth"; "firstText": "firstText"; "previousText": "previousText"; "nextText": "nextText"; "lastText": "lastText"; "autoFitMode": "autoFitMode"; "allowColumnResize": "allowColumnResize"; "allowColumnFilters": "allowColumnFilters"; "allowColumnReorder": "allowColumnReorder"; "fixedHeader": "fixedHeader"; "minHeight": "minHeight"; "maxHeight": "maxHeight"; "userPreferencesKey": "userPreferencesKey"; "filterPlaceholder": "filterPlaceholder"; "filterPlacement": "filterPlacement"; "boundedExportCallback": "boundedExportCallback"; "data": "data"; }, { "OnSelectionChanged": "OnSelectionChanged"; "OnRowSelected": "OnRowSelected"; "OnRowRendered": "OnRowRendered"; "OnPaginate": "OnPaginate"; "OnSort": "OnSort"; "OnColumnFiltered": "OnColumnFiltered"; }, ["actionsColumnTemplate"], never, false, never>;
}