@ctodev/cclibrary-typings
Version:
Library typings for use with CLARC INFINITY
361 lines (360 loc) • 15.9 kB
TypeScript
import { AfterViewInit, EventEmitter, OnDestroy, QueryList, TemplateRef } from '@angular/core';
import { TccContextMenuServiceNamespace } from '../../../shared/services/tcc-context-menu/tcc-context-menu.service';
import { Observable } from 'rxjs';
import { tccFilterbar, TccFilterbarComponent } from '../tcc-filterbar/tcc-filterbar.component';
import { TccTable, TccTableComponent } from '../tcc-table/tcc-table.component';
import { TccSliderRightComponent } from '../../../shared/components/tcc-slider-right/tcc-slider-right.component';
import { tccDialogWindow } from '../tcc-dialog-window/tcc-dialog-window.component';
import { TccInfinityScroll, TccInfinityScrollComponent } from '../../../shared/components/tcc-infinity-scroll/tcc-infinity-scroll.component';
import { TccPagedDataManager, TccPagedDataManagerNamespace } from '../../../shared/classes/TccPagedDataManager';
import { TccODataServiceFactory } from '../../../odata/factories/tcc-odata-service/tcc-odata-service.factory';
import { TccPagedDataManagerService } from '../../../shared/services/tcc-paged-data-manager/tcc-paged-data-manager.service';
import { TccDialogWindowService } from '../../services/tcc-dialog-window/tcc-dialog-window.service';
import { TccSnackBarService } from '../../services/tcc-snackbar/tcc-snackbar.service';
import { TccInputMask } from '../../../shared/models/inputMask.model';
import { TccTutorialTooltip } from '../tcc-tutorial-tooltip/tcc-tutorial-tooltip.component';
import { TccIcon } from '../../../odata/models/shared.model';
import { TccStandardSliderDetailsViewComponent } from '../tcc-standard-slider-details-view/tcc-standard-slider-details-view.component';
import { TccInputMaskComponent } from '../../../shared/components/tcc-input-mask/tcc-input-mask.component';
import { MatTabChangeEvent } from '@angular/material/tabs';
import { PageEvent } from '@angular/material/paginator';
import { tccFilter } from '../tcc-filter/tcc-filter.component';
import { TccKeypressService } from '../../services/tcc-keypress/tcc-keypress.service';
import { TccUserPropertyService } from '../../../shared/services/tcc-user-property/tcc-user-property.service';
import { TccChooseProfileThumbnail } from '../tcc-choose-profile-thumbnail/tcc-choose-profile-thumbnail.component';
import { MatDialog } from '@angular/material/dialog';
import { InputMaskHTMLElement } from '../../../shared/components/tcc-input-mask/directives/input-mask-htmlelement';
import { SpecialColDirective } from '../tcc-table/directives/special-col.directive';
import { TccSectionNavigationButtonConfig } from '../../../shared/components/tcc-section-navigation/tcc-section-navigation.component';
export declare namespace TccStandardTableView {
enum userServiceColumnDefPropertyName {
columnDef = "columnDef"
}
interface options<T> {
tableInput: TccTable.TableInputs<T>;
entityName?: TccStandardTableView.entityName;
entityPath?: string;
iconPath?: string[];
nestedEntity?: {
path: string;
id: string;
};
searchFields?: string[];
useSliderDetailsView?: boolean;
useSliderStandardDetailsView?: boolean;
standardDetailsInputElements?: TccInputMask.SectionElements;
standardDetailsProfileOptions?: TccChooseProfileThumbnail.Options;
standardDetailsTitle?: string;
createEntityCallback?: (result: tccDialogWindow.TccInputDialogReturn, newEntity: T) => T;
createEntityOptions?: TccStandardTableView.createEntityOptions;
noContentSettings?: tccFilterbar.noContentSettings;
hideSaveButton?: boolean;
hideDeleteButton?: boolean;
multiSave?: boolean;
setValueChangesFunction?: (Entity: T, Changes: TccInputMask.valueChanges) => void;
useStandardCreate?: boolean;
filterOptions?: tccFilter.FilterInputOptions;
permanentFilter?: string;
deleteGetNameFunction?: (T: any) => string;
deleteForbiddenFunction?: (T: any) => string;
primaryButton?: string;
primaryButtonIcon?: string;
orderBy?: string;
disableChangableColumns?: boolean;
generateChangableColumnsFunction?: () => tccFilterbar.settings;
disableChooseProfile?: boolean;
disabledTableColumns?: string[];
basePath?: string;
useSelectForTable?: boolean;
addSelectsForTable?: string[][];
sliderConfig?: TccSectionNavigationButtonConfig;
}
interface entityName {
singular: string;
plural: string;
}
interface createEntityOptions {
extraInputs?: TccInputMask.RowElements;
title?: string;
illustration?: string;
tutorial?: TccTutorialTooltip.options;
disableStandardInput?: boolean;
}
interface rowClickEvent<T> {
entity: T;
index?: number;
}
interface change<T> {
entity: T;
changes: TccInputMask.valueChanges;
icon?: TccIcon;
}
interface changes<T> {
[entityId: string]: change<T>;
}
interface inputsLoaded<T> {
inputs: string[];
entity: T;
}
}
export declare class TccStandardTableViewComponent<T> implements AfterViewInit, OnDestroy {
private factory;
private pagedDataManagerService;
private dialog;
private matDialog;
private snackbarservice;
private keyPressService;
private userPropertyService;
private dataCyStandardTableView;
private dataCyStandardSliderDetails;
private dataCySliderDetails;
private dataCyStandardTableViewHidden;
private dataCyStandardTableViewMultiSave;
specialColumnDirectivesList: QueryList<SpecialColDirective>;
tileTemplateRef: TemplateRef<any>;
filterBar: TccFilterbarComponent;
table: TccTableComponent<T>;
slider: TccSliderRightComponent;
tccStandardSliderDetailsView: TccStandardSliderDetailsViewComponent<T>;
infinityScrollTiles: TccInfinityScrollComponent;
inputMaskHTMLElementDirectives: QueryList<InputMaskHTMLElement>;
set entities(entities: T[]);
set options(options: TccStandardTableView.options<T>);
changed: boolean;
/** sets the standardTableView to display: none */
set hide(hide: boolean);
set standardDetailsTitle(standardDetailsTitle: string);
cellClickEmitter: EventEmitter<any>;
rowClickEmitter: EventEmitter<TccStandardTableView.rowClickEvent<T>>;
scrollDownEmitter: EventEmitter<boolean>;
checkboxEmitter: EventEmitter<TccTable.checkboxEvent>;
sortTableEmitter: EventEmitter<TccTable.sortTableEvent>;
contextMenuEmitter: EventEmitter<TccContextMenuServiceNamespace.contextMenuClickEvent>;
tableLoadedEmitter: EventEmitter<boolean>;
markTableRowEmitter: EventEmitter<T[]>;
onPrimary: EventEmitter<void>;
onCreate: EventEmitter<void>;
onDelete: EventEmitter<T[]>;
pageLoaded: EventEmitter<T[]>;
onComponentViewChange: EventEmitter<string>;
onFileUploadEvent: EventEmitter<FileList>;
inputMaskInputsLoaded: EventEmitter<TccStandardTableView.inputsLoaded<T>>;
inputMaskSubmit: EventEmitter<void>;
inputMaskChangeTab: EventEmitter<{
id: string;
value: MatTabChangeEvent;
}>;
inputMaskChangeChip: EventEmitter<{
id: string;
index: number;
}>;
inputMaskChangePage: EventEmitter<{
id: string;
value: PageEvent;
}>;
inputMaskSearch: EventEmitter<TccInputMask.eventOutput<TccInputMask.ValueUnion>>;
inputMaskSearchEnter: EventEmitter<TccInputMask.eventOutput<TccInputMask.ValueUnion>>;
inputMaskValueChange: EventEmitter<TccInputMask.eventOutput<TccInputMask.ValueUnion>>;
inputMaskValueChangeExtended: EventEmitter<TccInputMask.eventOutput<TccInputMask.ValueUnion>>;
inputMaskFocusEvent: EventEmitter<TccInputMask.eventTrigger>;
inputMaskBlurEvent: EventEmitter<TccInputMask.eventTrigger>;
inputMaskInputButtonClick: EventEmitter<TccInputMask.eventTrigger>;
inputMaskRowButtonClick: EventEmitter<TccInputMask.eventTrigger>;
inputMaskButtonClick: EventEmitter<TccInputMask.eventTrigger>;
inputMaskSelectOpen: EventEmitter<TccInputMask.eventTrigger>;
inputMaskSearchListChange: EventEmitter<{
id: string;
value: Array<string>;
}>;
inputMaskSearchListChangePage: EventEmitter<{
id: string;
pagenumber: number;
searchactive: boolean;
}>;
inputMaskSearchListSearch: EventEmitter<{
id: string;
searchstring: string;
selection?: string;
}>;
inputMaskSearchListDialogClose: EventEmitter<TccInputMask.searchListDialogEvent>;
inputMaskCreateListDialogClose: EventEmitter<TccInputMask.createListDialogEvent>;
inputMaskCreateSimpleListDialogClose: EventEmitter<TccInputMask.eventOutput<TccInputMask.ValueUnion>>;
inputMaskFieldMouseEnter: EventEmitter<TccInputMask.eventTrigger>;
inputMaskFieldMouseLeave: EventEmitter<TccInputMask.eventTrigger>;
inputMaskOpenAccordion: EventEmitter<string>;
inputMaskEntityValuesSet: EventEmitter<T>;
save: EventEmitter<T | T[]>;
afterSave: EventEmitter<T | T[]>;
createEntity: EventEmitter<void>;
sliderIconButtonEvent: EventEmitter<void>;
sliderOutlinedButtonEvent: EventEmitter<void>;
sliderPrimaryButtonEvent: EventEmitter<void>;
private set multiSave(value);
_tableInput: TccTable.TableInputs<T>;
_useSliderDetailsView: boolean;
_useSliderStandardDetailsView: boolean;
_standardDetailsInputElements: TccInputMask.SectionElements;
_standardDetailsProfileOptions: TccChooseProfileThumbnail.Options;
_standardDetailsTitle: string;
_noContentSettings: tccFilterbar.noContentSettings;
_saveButtonCaption: string;
_deleteButtonCaption: string;
_standardPrimaryButtonTooltip: string;
_filterOptions: tccFilter.FilterInputOptions;
private _permanentFilter;
_primaryButton: string;
_primaryButtonIcon: string;
_disableChooseProfile: boolean;
_basePath: string;
_hide: boolean;
private _useSelectForTable;
private _addSelectsForTable;
private _entityName;
private _entityPath;
private _iconPath;
private _nestedEntity;
private _searchFields;
hasSearch: boolean;
private _internalCreateEntityCallback;
private _createEntityOptions;
private _multiSave;
private _setValueChangesFunction;
private _useStandardCreate;
private _deleteGetNameFunction;
private _deleteForbiddenFunction;
private _orderBy;
private _disableChangableColumns;
private _generateChangableColumnsFunction;
private _disabledTableColumns;
_searchOnEnter: boolean;
_sliderConfig: TccSectionNavigationButtonConfig;
dataSource: Array<T>;
infinityScrollContentType: TccInfinityScroll.contentType;
private service;
private serviceSelect;
pagedDataManager: TccPagedDataManager<T>;
deleteDisabled: boolean;
_entities: T[];
currEntity: T;
changes: TccStandardTableView.changes<T>;
private lastRefreshedCheckDirective;
elementIds: {
[elementId: string]: T;
};
_standardPrimaryButton: string;
_deleteButton: string;
changeableColumns: tccFilterbar.settings;
displayedColumns: string[];
private _searchEntities;
private lastSearchString;
get standardDetailsInputMask(): TccInputMaskComponent;
constructor(factory: TccODataServiceFactory, pagedDataManagerService: TccPagedDataManagerService, dialog: TccDialogWindowService, matDialog: MatDialog, snackbarservice: TccSnackBarService, keyPressService: TccKeypressService, userPropertyService: TccUserPropertyService);
ngAfterViewInit(): void;
ngOnDestroy(): void;
private initObjectDetails;
private initKeyPressService;
private initSliderSubscriptions;
private initService;
private initServiceSelect;
private generatePagedDataManager;
private dataSubscribe;
private localSearchEventHandler;
private canSliderClose;
getItemByIndex(index: number): Observable<T>;
tableLoadedEvent(): void;
refreshReferences(references: TccPagedDataManagerNamespace.refreshReferencesOptions<T>): void;
private onKeyPressCreate;
private onKeyPressDelete;
afterCustomDeleteSuccess(deletedEntities: T[]): void;
private onKeyPressSave;
private changeView;
cellClickEvent(event: any): void;
selectEntity(row: TccTable.rowClickEvent): void;
refreshDataManagerCheckDirectiveRef(): void;
sortColumn(sort: {
active: string;
direction: "asc" | "desc" | "";
}): void;
contextMenuOptionClick(event: TccContextMenuServiceNamespace.contextMenuClickEvent): void;
scrollDownEvent(event: boolean): void;
markTableRowEvent(event: TccTable.checkboxEvent): void;
private getSelectedItems;
refreshTransformedValues(): void;
standardDetailsSave(): void;
onPrimaryButtonEvent(): void;
onOutlinedButtonEvent(): void;
onIconButtonEvent(): void;
onFilterbarCreate(): void;
onFilterbarPrimary(): void;
onFilterbarSave(): void;
private setIconInEntity;
private changeSingleEntity;
onFilterbarSaveCallback(entity: T): void;
private onFilterbarSaveErrorCallback;
onChangeColumnEvent(settings: tccFilterbar.settings): void;
onFilterbarDelete(): void;
/**
* opens dialog to create new Entity
*/
_createEntity(): void;
/**
* dialog callback to create new Workflow and save it to the Server
* @param {TccInputDialogReturn} result dialog result
*/
private _createEntityCallback;
navigateOnEntitySelection(entity: T, index?: number): void;
private _navigateOnEntitySelection;
private addCurrChangesToChanges;
getEntityId(entity: T): string;
private generateId;
private generateChangeableColumns;
private getDisplayedColumns;
onChangeComponetView(event: string): void;
FileUploadEvent(event: FileList): void;
_inputMaskInputsLoaded(event: string[]): void;
_inputMaskSubmit(): void;
_inputMaskChangeTab(event: {
id: string;
value: MatTabChangeEvent;
}): void;
_inputMaskChangeChip(event: {
id: string;
index: number;
}): void;
_inputMaskChangePage(event: {
id: string;
value: PageEvent;
}): void;
_inputMaskSearch(event: TccInputMask.eventOutput): void;
_inputMaskSearchEnter(event: TccInputMask.eventOutput): void;
_inputMaskValueChange(event: TccInputMask.eventOutput): void;
_inputMaskValueChangeExtended(event: TccInputMask.eventOutput): void;
_iconChanged(): void;
_inputMaskFocusEvent(event: TccInputMask.eventTrigger): void;
_inputMaskBlurEvent(event: TccInputMask.eventTrigger): void;
_inputMaskInputButtonClick(event: TccInputMask.eventTrigger): void;
_inputMaskRowButtonClick(event: TccInputMask.eventTrigger): void;
_inputMaskButtonClick(event: TccInputMask.eventTrigger): void;
_inputMaskSelectOpen(event: TccInputMask.eventTrigger): void;
_inputMaskSearchListChange(event: {
id: string;
value: Array<string>;
}): void;
_inputMaskSearchListChangePage(event: {
id: string;
pagenumber: number;
searchactive: boolean;
}): void;
_inputMaskSearchListSearch(event: {
id: string;
searchstring: string;
selection?: string;
}): void;
_inputMaskSearchListDialogClose(event: TccInputMask.searchListDialogEvent): void;
_inputMaskCreateListDialogClose(event: TccInputMask.createListDialogEvent): void;
_inputMaskCreateSimpleListDialogClose(event: TccInputMask.eventOutput): void;
_inputMaskFieldMouseEnter(event: TccInputMask.eventTrigger): void;
_inputMaskFieldMouseLeave(event: TccInputMask.eventTrigger): void;
_inputMaskOpenAccordion(event: string): void;
_inputMaskEntityValuesSet(event: T): void;
}