com.phloxui
Version:
PhloxUI Ng2+ Framework
48 lines (47 loc) • 2 kB
TypeScript
import { OnInit, ElementRef } from '@angular/core';
import { DialogService } from '../service/DialogService.service';
import { AbstractDataLangSelector } from './AbstractDataLangSelector';
import { LanguageButtonModel } from './model/LanguageButtonModel';
export declare abstract class AbstractComponentDataLangSelector extends AbstractDataLangSelector implements OnInit {
protected componentHandler: Function;
/**
* the object map that contains component instances that has langCode as a key
*/
protected componentInstances: any;
protected defaultComponentHandler: Function;
protected defaultComponentInstance: any;
constructor(elementRef: ElementRef, dialogService: DialogService);
ngOnInit(): void;
private getIndexFromDataLang(data);
private getDataLangFromIndex(index);
private getLanuageIndexFromCode(langCode);
protected reAddingDataToInstance(): void;
setData(data: any): void;
/**
* @param langCode string as a language code
* @return any as a component instance of langCode return defaultInstance if langCode is null
*/
getComponentInstance(langCode: string): any;
/**
* data null return as a defaultInstanceDirty
* @param data as a dataLanguage
* @return boolean is dataLanguageDirty
*/
isDataLanguageDirty(data: any): boolean;
getComponentSetting(index: number): any;
getDefaultComponentInstance(): any;
getComponentInstances(): any;
getDefaultComponentHandler(): Function;
getComponentHandler(): Function;
/**
* @param data as any
* @return any as one object.
*/
protected abstract getDefaultData(): any;
protected abstract getDataObjects(): any[];
abstract getLanguageFieldName(): string;
abstract getObjectIdFieldName(): string;
abstract getInstanceDefaultData(data: any): any;
abstract getInstanceDataLanguage(data: any): any;
abstract parseLanguageButtonModel(langCode: string): LanguageButtonModel;
}