ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
73 lines (72 loc) • 4.21 kB
TypeScript
import { AfterViewInit, ElementRef, EventEmitter, Injector, OnDestroy, QueryList, ViewContainerRef } from '@angular/core';
import { MatTabChangeEvent, MatTabGroup } from '@angular/material/tabs';
import { ActivatedRoute, Router } from '@angular/router';
import { BehaviorSubject, Subject, Subscription } from 'rxjs';
import { ILayoutManagerComponent } from '../../../interfaces/layout-manager-component.interface';
import { OFormLayoutManagerMode } from '../../../interfaces/o-form-layout-manager-mode.interface';
import { DialogService } from '../../../services/dialog.service';
import { OFormLayoutManagerComponentStateClass } from '../../../services/state/o-form-layout-manager-component-state.class';
import { FormLayoutCloseDetailOptions, FormLayoutDetailComponentData } from '../../../types/form-layout-detail-component-data.type';
import { OFormLayoutManagerContentDirective } from '../directives/o-form-layout-manager-content.directive';
import { OFormLayoutManagerBase } from '../o-form-layout-manager-base.class';
import * as i0 from "@angular/core";
export declare const DEFAULT_INPUTS_O_FORM_LAYOUT_TABGROUP: string[];
export declare const DEFAULT_OUTPUTS_O_FORM_LAYOUT_TABGROUP: string[];
export declare class OFormLayoutTabGroupComponent implements OFormLayoutManagerMode, AfterViewInit, OnDestroy {
protected injector: Injector;
protected location: ViewContainerRef;
protected elementRef: ElementRef;
formLayoutManager: OFormLayoutManagerBase;
data: FormLayoutDetailComponentData[];
title: string;
options: any;
showLoading: BehaviorSubject<boolean>;
stretchTabs: boolean;
tabGroup: MatTabGroup;
tabsDirectives: QueryList<OFormLayoutManagerContentDirective>;
protected subscriptions: Subscription;
protected router: Router;
protected dialogService: DialogService;
onMainTabSelected: EventEmitter<any>;
onSelectedTabChange: EventEmitter<any>;
onCloseTab: EventEmitter<any>;
protected previousSelectedIndex: number;
updateTabComponentsState: Subject<any>;
tabsModificationsCache: any[];
actRoute: ActivatedRoute;
constructor(injector: Injector, location: ViewContainerRef, elementRef: ElementRef, formLayoutManager: OFormLayoutManagerBase);
get state(): OFormLayoutManagerComponentStateClass;
ngAfterViewInit(): void;
ngOnDestroy(): void;
get mainTabTitle(): string;
get disableAnimation(): any;
get headerPosition(): any;
get color(): any;
get backgroundColor(): any;
get templateMatTabLabel(): any;
get icon(): any;
get isIconPositionLeft(): boolean;
get maxTabs(): number;
addTab(compData: FormLayoutDetailComponentData): void;
reloadTab(compData: FormLayoutDetailComponentData): void;
onTabSelectChange(arg: MatTabChangeEvent): void;
closeTab(index: number, options?: FormLayoutCloseDetailOptions): void;
createTabComponent(tabData: FormLayoutDetailComponentData, content: OFormLayoutManagerContentDirective): void;
getFormCacheData(): FormLayoutDetailComponentData;
getRouteOfActiveItem(): any[];
setModifiedState(formAttr: string, modified: boolean, confirmExit: boolean): void;
updateNavigation(data: any, keysValues: any, insertionMode?: boolean): void;
updateActiveData(data: any): void;
getDataToStore(): any;
initializeComponentState(): void;
getParams(): any;
isMainComponent(comp: ILayoutManagerComponent): boolean;
openDetail(detail: FormLayoutDetailComponentData): void;
closeDetail(options?: FormLayoutCloseDetailOptions): void;
canAddDetailComponent(): boolean;
isTabDataModified(tabData: FormLayoutDetailComponentData): boolean;
closeDetails(detailsKeysData?: any[], options?: FormLayoutCloseDetailOptions): void;
getIdOfActiveItem(): string;
static ɵfac: i0.ɵɵFactoryDeclaration<OFormLayoutTabGroupComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<OFormLayoutTabGroupComponent, "o-form-layout-tabgroup", never, { "title": "title"; "options": "options"; "stretchTabs": "stretch-tabs"; }, { "onMainTabSelected": "onMainTabSelected"; "onSelectedTabChange": "onSelectedTabChange"; "onCloseTab": "onCloseTab"; }, never, ["*"], false, never>;
}