ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
138 lines (137 loc) • 7.41 kB
TypeScript
import { SelectionModel } from '@angular/cdk/collections';
import { ChangeDetectorRef, EventEmitter } from '@angular/core';
import { MatCheckboxChange } from '@angular/material/checkbox';
import { Observable } from 'rxjs';
import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject';
import type { SnackBarService } from './../../services/snackbar.service';
import type { QuickFilterFunction } from "../../types/quick-filter-function.type";
import type { OColumn } from "./column/o-column.class";
import type { OPermissions } from "../../types/o-permissions.type";
import type { OTableButtons } from "../../interfaces/o-table-buttons.interface";
import type { OTableQuickfilter } from "../../interfaces/o-table-quickfilter.interface";
import type { OTableMenu } from "../../interfaces/o-table-menu.interface";
import type { OColumnValueFilter } from "../../types/table/o-column-value-filter.type";
import type { OContextMenuComponent } from "../contextmenu/o-context-menu.component";
import type { Expression, OFilterDefinition, OGroupedColumnTypes, OTableMenuPermissions, SQLOrder } from "../../types";
import type { OTableComponentStateClass } from "../../services/state/o-table-component-state.class";
import type { OTableHeaderComponent } from "./extensions/header/table-header/o-table-header.component";
import type { MatPaginator } from "@angular/material/paginator";
import type { OTableColumnSelectAllDirective } from "./extensions/header/table-column-select-all/o-table-column-select-all.directive";
import type { OFilterBuilderComponent } from "../filter-builder/o-filter-builder.component";
import { OTableColumnsFilterComponent } from './extensions/header/table-columns-filter/o-table-columns-filter.component';
import { OFilterColumn } from './extensions/header/table-columns-filter/columns/o-table-columns-filter-column.component';
import { BaseService } from '../../services/base-service.class';
import { ServiceResponse } from '../../interfaces/service-response.interface';
import { OTableDataSource } from '../../interfaces/o-table-datasource.interface';
export declare abstract class OTableBase {
abstract getMenuPermissions(): OTableMenuPermissions;
abstract rowHeightObservable: Observable<string>;
abstract initializeCheckboxColumn(): any;
oTableColumnsFilterComponent: OTableColumnsFilterComponent;
visibleExportDialogButtons: string;
service: string;
serviceType: string;
exportServiceType: string;
exportOptsTemplate: any;
visibleColArray: string[];
queryMethod: string;
showNotificationOfReadOnly: boolean;
showLoading: Observable<boolean>;
abstract reinitializeSortColumns(sortColumns?: SQLOrder[]): any;
abstract setGroupColumns(value: any[]): any;
abstract clearColumnFilters(triggerDatasourceUpdate?: boolean, columnsAttr?: string[]): void;
abstract refreshColumnsWidthFromLocalStorage(): any;
abstract rowHeight: string;
abstract groupedColumnTypes: OGroupedColumnTypes[];
abstract setGroupedColumnTypes(value: OGroupedColumnTypes[]): any;
abstract state: OTableComponentStateClass;
abstract storeFilterInState(arg: OFilterDefinition): any;
abstract setFiltersConfiguration(): any;
abstract reloadPaginatedDataFromStart(clearSelectedItems?: boolean): any;
abstract clearFilters(): void;
abstract resetColumnsWidth(): any;
abstract componentStateService: any;
abstract applyDefaultConfiguration(): any;
abstract applyConfiguration(configurationName: string): any;
abstract getColumnsNotIncluded(): string[];
abstract getComponentFilter(existingFilter?: any): any;
abstract entity: string;
abstract getSqlTypes(): any;
abstract getColumnNames(columns: string[]): {
[]: string;
};
abstract showCaseSensitiveCheckbox(): boolean;
abstract pageable: boolean;
abstract dataSource: OTableDataSource | null;
abstract quickFilterCallback: QuickFilterFunction;
abstract abortQuery: BehaviorSubject<boolean>;
abstract oTableOptions: any;
abstract registerQuickFilter(arg: any): void;
abstract getOColumnFromTh(th: any): OColumn;
abstract cd: ChangeDetectorRef;
abstract getClientWidthColumn(col: OColumn): number;
abstract horizontalScroll: boolean;
abstract getActionsPermissions(): OPermissions[];
abstract selection: SelectionModel<Element>;
abstract registerOTableButtons(arg: OTableButtons): any;
abstract add(): any;
abstract reloadData(clearSelectedItems: boolean): void;
abstract remove(): any;
abstract onUpdateScrolledState: EventEmitter<any>;
abstract rowWidth: any;
abstract onContentChange: EventEmitter<any>;
abstract staticData: Array<any>;
abstract oTableQuickFilterComponent: OTableQuickfilter;
abstract quickFilter: boolean;
abstract groupedColumnsArray: string[];
abstract isColumnFilterable(column: OColumn): boolean;
abstract openColumnFilterDialog(column: OColumn, event: Event): any;
abstract isColumnFiltersActive: boolean;
abstract oTableMenu: OTableMenu;
abstract getOColumn(attr: string): OColumn;
abstract groupByColumn(column: OColumn, type?: string): any;
abstract unGroupByColumn(column: OColumn): any;
abstract unGroupByAllColumns(): any;
abstract filterByColumn(columnValueFilter: OColumnValueFilter): any;
abstract refresh(): any;
abstract copySelection(): any;
abstract copyAll(): any;
abstract showAndSelectAllCheckbox(): any;
abstract doHandleClick(row: any, column: string, rowIndex: number, $event: MouseEvent): any;
abstract viewDetail(item: any): void;
abstract clearSelection(): void;
abstract isSelectionModeMultiple(): boolean;
abstract registerContextMenu(value: OContextMenuComponent): void;
abstract groupable: boolean;
abstract selectAllCheckbox: boolean;
abstract isSelectionModeNone(): boolean;
abstract isAllSelected(): boolean;
abstract nonHidableColumns: string;
abstract visibleColumns: string;
abstract sortColArray: SQLOrder[];
abstract currentPage: number;
abstract queryRows: number;
abstract resizable: boolean;
abstract registerTableHeaders(tableHeader: OTableHeaderComponent): any;
abstract showButtonsText: boolean;
abstract matpaginator: MatPaginator;
abstract isIndeterminate(): boolean;
abstract onFilterByColumnChange: EventEmitter<any>;
abstract masterToggle(event: MatCheckboxChange): void;
abstract tableColumnSelectAllContentChild: OTableColumnSelectAllDirective;
abstract getColumnFiltersExpression(): Expression;
abstract columns: string;
abstract getParentKeysValues(): any;
abstract filterBuilder: OFilterBuilderComponent;
abstract readOnlyFunction: (configuration: any) => boolean;
abstract isComponentReadOnly(selector: string, attr: string): boolean;
abstract getSnackService(): SnackBarService;
abstract setSelectedByKeys(keyValues: Array<any>): void;
abstract setSelectedByMultipleKeys(keyValues: Array<Object>): void;
abstract setSelectedByRowIds(rowIds: Array<number>): void;
abstract getFilterColumnByAttr(attr: string): OFilterColumn;
abstract getValue(): any[];
abstract setOTableColumnsFilter(tableColumnsFilter: OTableColumnsFilterComponent): any;
abstract getAllValues(): any[];
abstract getDataService(): BaseService<ServiceResponse>;
}