ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
178 lines (177 loc) • 11 kB
TypeScript
import { SelectionModel } from '@angular/cdk/collections';
import { ElementRef, EventEmitter, Injector } from '@angular/core';
import { MatFormFieldAppearance } from '@angular/material/form-field';
import { MatPaginator, PageEvent } from '@angular/material/paginator';
import { ActivatedRoute } from '@angular/router';
import { BehaviorSubject, Observable, Subscription } from 'rxjs';
import { OFilterBuilderComponent } from '../components/filter-builder/o-filter-builder.component';
import { OSearchInputComponent } from '../components/input/search-input/o-search-input.component';
import { IServiceDataComponent } from '../interfaces/service-data-component.interface';
import { OFormLayoutDialogComponent } from '../layouts/form-layout/dialog/o-form-layout-dialog.component';
import { NavigationService } from '../services/navigation.service';
import { PermissionsService } from '../services/permissions/permissions.service';
import { AbstractServiceComponentStateClass } from '../services/state/o-component-state.class';
import { AbstractComponentStateService, DefaultServiceComponentStateService } from '../services/state/o-component-state.service';
import { OTranslateService } from '../services/translate/o-translate.service';
import { OPermissions } from '../types';
import { Expression } from '../types/expression.type';
import { OListInitializationOptions } from '../types/o-list-initialization-options.type';
import { OTableInitializationOptions } from '../types/table/o-table-initialization-options.type';
import { OFormComponent } from './form/o-form.component';
import { AbstractOServiceBaseComponent } from './o-service-base-component.class';
import { OFormLayoutManagerBase } from '../layouts/form-layout/o-form-layout-manager-base.class';
import { OFormLayoutManagerContext } from '../types/form-layout-manager-context.type';
import * as i0 from "@angular/core";
interface ItemClick {
getItemData(): any;
}
export declare const DEFAULT_INPUTS_O_SERVICE_COMPONENT: string[];
export declare const DEFAULT_OUTPUTS_O_SERVICE_COMPONENT: string[];
export declare abstract class AbstractOServiceComponent<T extends AbstractComponentStateService<AbstractServiceComponentStateClass>> extends AbstractOServiceBaseComponent<T> implements IServiceDataComponent {
protected elRef: ElementRef;
protected form: OFormComponent;
matpaginator: MatPaginator;
protected permissionsService: PermissionsService;
protected translateService: OTranslateService;
protected navigationService: NavigationService;
set title(val: string);
get title(): string;
protected _title: string;
protected ovisible: boolean;
protected oenabled: boolean;
protected controls: boolean;
detailMode: string;
protected detailFormRoute: string;
protected recursiveDetail: boolean;
detailButtonInRow: boolean;
detailButtonInRowIcon: string;
protected editFormRoute: string;
protected recursiveEdit: boolean;
editButtonInRow: boolean;
editButtonInRowIcon: string;
insertButton: boolean;
paginationControls: boolean;
disablePageSizeCalculation: boolean;
get pageSizeOptions(): number[];
set pageSizeOptions(val: number[]);
protected _rowHeight: string;
protected rowHeightSubject: BehaviorSubject<string>;
rowHeightObservable: Observable<string>;
protected checkViewPortSubject: BehaviorSubject<boolean>;
checkViewPortObservable: Observable<boolean>;
set rowHeight(value: string);
get rowHeight(): string;
protected insertFormRoute: string;
protected recursiveInsert: boolean;
protected _filterCaseSensitive: boolean;
set filterCaseSensitive(value: boolean);
get filterCaseSensitive(): boolean;
protected _quickFilter: boolean;
get quickFilter(): boolean;
set quickFilter(val: boolean);
quickFilterPlaceholder: string;
onClick: EventEmitter<any>;
onDoubleClick: EventEmitter<any>;
onDataLoaded: EventEmitter<any>;
onPaginatedDataLoaded: EventEmitter<any>;
onSearch: EventEmitter<string>;
filterBuilder: OFilterBuilderComponent;
protected _selection: SelectionModel<any>;
get selection(): SelectionModel<any>;
protected onTriggerUpdateSubscription: any;
protected formLayoutManager: OFormLayoutManagerBase;
protected formLayoutManagerTabIndex: number;
oFormLayoutDialog: OFormLayoutDialogComponent;
protected tabsSubscriptions: any;
quickFilterComponent: OSearchInputComponent;
searchInputComponent: OSearchInputComponent;
protected quickFilterColArray: string[];
protected dataResponseArray: any[];
protected quickFilterSubscription: Subscription;
_pageSizeOptions: number[];
protected clickTimer: any;
protected clickDelay: number;
protected clickPrevent: boolean;
protected _quickFilterAppearance: MatFormFieldAppearance;
private mutationObservers;
enabledInsertButton: boolean;
enabledRefreshButton: boolean;
protected initialFilterFunction: () => Expression | {
[key: string]: any;
};
protected filterBuilderFunction?: () => OFilterBuilderComponent;
constructor(injector: Injector, elRef: ElementRef, form: OFormComponent);
private getGlobalInjectionTokenConfig;
initialize(): void;
afterViewInit(): void;
destroy(): void;
isVisible(): boolean;
hasControls(): boolean;
hasTitle(): boolean;
getSelectedItems(): any[];
clearSelection(): void;
setSelected(item: any): void;
protected navigateToDetail(route: any[], qParams: any, relativeTo: ActivatedRoute): Promise<void>;
insertDetail(): void;
viewDetail(item: any, context?: OFormLayoutManagerContext): void;
editDetail(item: any): void;
protected addFormLayoutManagerRoute(routeArr: any[]): any[];
protected setButtonPermissions(actionsPermissions: any): void;
protected setPermission(attr: string, visibleProp: string, enabledProp: string, actionsPermissions: any): void;
protected manageCustomPermissions(actionsPermissions: any, selector: any): void;
protected getActionsPermissions(permissions: any): OPermissions[];
protected getPermissionByAttr(attr: string, actionsPermissions: OPermissions[]): OPermissions;
protected managePermission(elementRef: any, permission: OPermissions, mutationObservers: any[], selector: string, attr?: string): void;
protected getEncodedParentKeys(): string;
getInsertRoute(): any[];
getItemModeRoute(item: any, modeRoute: string): any[];
protected getQueryConfiguration(): any;
getRouteOfSelectedRow(item: any): any[];
protected deleteLocalItems(): void;
reinitialize(options: OListInitializationOptions | OTableInitializationOptions): void;
setFilterBuilder(filterBuilder: OFilterBuilderComponent): void;
getComponentFilter(existingFilter?: any): Expression | {
[key: string]: any;
};
protected getQuickFilterExpression(): Expression;
protected getFilterBuilderExpression(): Expression;
protected storeNavigationFormRoutes(activeMode: string, queryConf?: any): void;
protected saveDataNavigationInLocalStorage(): void;
protected getKeysValues(): any[];
getRouteKey(): string;
get elementRef(): ElementRef;
showCaseSensitiveCheckbox(): boolean;
registerQuickFilter(arg: any): void;
isFilterCaseSensitive(): boolean;
configureFilterValue(value: string): string;
getQuickFilterValue(): string;
getQuickFilterColumns(): string[];
filterData(value?: string, loadMore?: boolean): void;
protected getQuickFilterDataFromArray(quickfilter: string, dataArray: any[]): any[];
protected getSortedDataFromArray(dataArray: any[]): any[];
protected setData(data: any, sqlTypes?: any, replace?: boolean): void;
protected parseResponseArray(data: any[], replace?: boolean): any[];
protected registerFormLayoutManagerState(): void;
applyDefaultConfiguration(): void;
onChangePage(e: PageEvent): void;
set currentPage(val: number);
get currentPage(): number;
protected _currentPage: number;
get totalRecords(): number;
protected getPaginationDataFromArray(dataArray: any[]): any[];
handleItemClick(item: ItemClick): void;
protected itemClickDone(item: ItemClick): void;
handleItemDblClick(item: ItemClick): void;
protected itemDblClickDone(item: ItemClick): void;
get quickFilterAppearance(): MatFormFieldAppearance;
set quickFilterAppearance(value: MatFormFieldAppearance);
protected getSqlTypesOfKeys(): {};
compareRow(): ((o1: any, o2: any) => boolean) | undefined;
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractOServiceComponent<any>, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractOServiceComponent<any>, never, never, { "oattr": "attr"; "service": "service"; "serviceType": "service-type"; "entity": "entity"; "queryOnInit": "query-on-init"; "queryOnBind": "query-on-bind"; "queryOnEvent": "query-on-event"; "pageable": "pageable"; "columns": "columns"; "keys": "keys"; "parentKeys": "parent-keys"; "staticData": "static-data"; "queryMethod": "query-method"; "paginatedQueryMethod": "paginated-query-method"; "oQueryRows": "query-rows"; "insertMethod": "insert-method"; "updateMethod": "update-method"; "deleteMethod": "delete-method"; "storeState": "store-state"; "queryWithNullParentKeys": "query-with-null-parent-keys"; "queryFallbackFunction": "query-fallback-function"; "configureServiceArgs": "configure-service-args"; "_title": "title"; "ovisible": "visible"; "oenabled": "enabled"; "controls": "controls"; "detailMode": "detail-mode"; "detailFormRoute": "detail-form-route"; "recursiveDetail": "recursive-detail"; "detailButtonInRow": "detail-button-in-row"; "detailButtonInRowIcon": "detail-button-in-row-icon"; "editFormRoute": "edit-form-route"; "recursiveEdit": "recursive-edit"; "editButtonInRow": "edit-button-in-row"; "editButtonInRowIcon": "edit-button-in-row-icon"; "insertButton": "insert-button"; "rowHeight": "row-height"; "insertFormRoute": "insert-form-route"; "recursiveInsert": "recursive-insert"; "filterCaseSensitive": "filter-case-sensitive"; "quickFilter": "quick-filter"; "quickFilterPlaceholder": "quick-filter-placeholder"; "paginationControls": "pagination-controls"; "pageSizeOptions": "page-size-options"; "quickFilterAppearance": "quick-filter-appearance"; "disablePageSizeCalculation": "disable-page-size-calculation"; "initialFilterFunction": "initial-filter-function"; "filterBuilderFunction": "filter-builder-function"; }, { "onClick": "onClick"; "onDoubleClick": "onDoubleClick"; "onDataLoaded": "onDataLoaded"; "onPaginatedDataLoaded": "onPaginatedDataLoaded"; "onSearch": "onSearch"; }, never, never, false, never>;
}
export declare class OServiceComponent extends AbstractOServiceComponent<DefaultServiceComponentStateService> {
static ɵfac: i0.ɵɵFactoryDeclaration<OServiceComponent, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<OServiceComponent, never, never, {}, {}, never, never, false, never>;
}
export {};