import { ChangeDetectorRef, ComponentRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { FormBuilder, FormControl, FormGroup } from '@angular/forms'; import { EsFormFieldConfig } from '../model/es-config.interface'; import { EsForm } from '../model/es-form.interface'; import { EsFormService } from '../es-form.service'; import { HttpParams } from '@angular/common/http'; import { TranslateService } from '@ngx-translate/core'; import { Observable, Subject, Subscription } from 'rxjs'; import { EsFormField } from '../model/es-form-field.interface'; import { EsSnackBarService } from '@eurosat/snackbar'; import { EsFormTranslates } from '../model/es-form.translates'; import { EsResizedEvent } from '@eurosat/resized-event'; import { EsFormConfigGroup } from '../model/es-form-config-group.interface'; import { EsFormResponseMessage } from '../model/es-form-response-message'; import { BreakpointObserver } from '@angular/cdk/layout'; import { IEsFormComponent } from './es-form.interface'; import * as i0 from "@angular/core"; interface DynamicFieldConfigList { [key: string]: EsFormField; } export declare class EsFormComponent implements OnChanges, OnDestroy, IEsFormComponent { private fb; private formService; private snackBar; private translate; private cd; private breakpointObserver; name: string; cols: number; formUrl: string; dynamicForm: EsForm; maxWidth: number; autofocus: boolean; params: HttpParams; postParams: FormData; snackBarMessage: string; formErrors: any; postingData: boolean; onSuccessReload: boolean; submit: EventEmitter; formSubmitEmit: EventEmitter; formCreated: EventEmitter; formSuccess: EventEmitter; formError: EventEmitter; reloadForm: EventEmitter; formUrlChange: EventEmitter; copyBtnAdd: Subject; copyBtnDel: Subject; simpleForm: boolean; fontSize: number; form: FormGroup; tmpGroups: EsFormConfigGroup[]; tmpCols: { index: number; }[]; tmpColGroups: EsFormConfigGroup[][]; isInitialized: boolean; /** dButton se nastavuje jednou na kazdou generaci configu (novy config = reload ze serveru) */ private deleteButtonsApplied; destroy$: Subject; response: any; formWidth: number; subComponents: any[]; pauseSubmit: boolean; activeRequest: Subscription; translates: EsFormTranslates; formButtons: EsFormFieldConfig[]; firstRender: boolean; isMobile: boolean; emitOnSubmit: boolean; _postParams: FormData; fields: DynamicFieldConfigList; reloading: boolean; colGroups(col: any): EsFormConfigGroup[]; colsIndex(): void; getGroups(): EsFormConfigGroup[]; getGroupConfigFromFormConfig(config: EsFormFieldConfig): EsFormConfigGroup; getButtons(): EsFormFieldConfig[]; get controls(): EsFormFieldConfig[]; get controlsToRender(): EsFormFieldConfig[]; get changes(): Observable; get valid(): boolean; get value(): any; constructor(fb: FormBuilder, formService: EsFormService, snackBar: EsSnackBarService, translate: TranslateService, cd: ChangeDetectorRef, breakpointObserver: BreakpointObserver); onFormResized(e: EsResizedEvent): void; ngOnChanges(changes: SimpleChanges): void; createGroups(): void; reload(showSpinner?: boolean, params?: any): void; setDynamicForm(dynamicForm: EsForm): void; initFocused(): void; createGroup(): FormGroup<{}>; createControl(config: EsFormFieldConfig): FormControl; fieldReady(e: ComponentRef): void; onFormCreated(): void; initDynamicFieldConfigList(): void; getSubComponent(name: string): any; formSubmit(event?: Event): void; handleSubmit(showSnackBar?: boolean): void; onFormSubmitResponse(response: any, showSnackBar?: boolean): void; private findParentName; private addServerErrorValidator; getSnack(messages: EsFormResponseMessage[]): { message: string; panelClass: string; }; getPostData(update?: boolean, withoutType?: string): FormData; /** * odstraneni prvku z post dat vcetne odvozenych klicu * name - prosta hodnota * name[] - multi-select, slider-range * name_from - flat-pickr-range * name_to - flat-pickr-range * name_descriptions_0 ... - upload */ private deleteCopyItemFromPostData; setDisabled(name: string, disable: boolean): void; setValue(controlName: string, value: any, options?: Object): void; getValue(controlName: string): any; getFieldConfig(controlName: string): EsFormFieldConfig; getResponseValue(controlName: string): any; getSubmitButtonName(): any; setActions(): void; actionReloadForm(): void; checkView(): void; setDeleteButtons(): void; copyButtonCheckView(): void; setVisibility(): void; onCopyBtnAddClick(controlName: string): Observable; onCopyBtnDelClick(controlName: string): Observable; /** * Ceka (max. ~650 ms), nez se prvek s danym id objevi v DOM. * Pokud se neobjevi, resolvne null - drive Promise zustala navzdy viset. */ getDOMElement(controlName: string): Promise; ngOnDestroy(): void; setDisplay(name: string, display: boolean): void; private splitFieldName; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};