import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { FormBuilder, FormGroup } from '@angular/forms'; import { TranslateService } from '@ngx-translate/core'; import { Subscription } from 'rxjs'; import { GeneralODataService } from '../../../api/general-odata.service'; import { GeneralFieldConfigInterface } from '../../../models/general-field-config.interface'; import { GeneralFormFieldValidatorInterface } from '../../../models/general-form-field-validator.interface'; import { GeneralFormFieldsetConfigInterface, GeneralFormFieldsetSectionInterface } from '../../../models/general-form-fieldset-config.interface'; import { ModalService } from '../../modal/modal.service'; import { FararuToastService } from '../../toast'; import * as i0 from "@angular/core"; export interface SimpleDataEntrySubmitEvent extends SubmitEvent { reactiveForm: FormGroup; data: T; formIsValid: boolean; } export type DataEntryFieldConfigInterface = { [key: string]: string | number | boolean | null | object; }; export type DataEntryConfigInterface = { [K in keyof T]: Omit, 'name'>; }; interface FieldsetFields extends GeneralFormFieldsetSectionInterface { fields?: GeneralFieldConfigInterface[]; } export declare class GeneralSimpleDataEntryComponent implements OnInit, OnChanges, OnDestroy { protected fb: FormBuilder; protected toastService: FararuToastService; protected translateService?: TranslateService; protected generalOdataService?: GeneralODataService; protected modalService?: ModalService; config?: DataEntryConfigInterface; header: string; id?: string; disabled: boolean; fields: GeneralFieldConfigInterface[]; columnCount: number; formGroup: FormGroup; saveButtonFor?: string; cancelButtonFor?: string; fieldsetConfig?: GeneralFormFieldsetConfigInterface; noTopGutter?: boolean; noGutter?: boolean; noScroll?: boolean; hideCancelButton?: boolean; hideReloadButton?: boolean; hideSaveButton?: boolean; hideBorder?: boolean; hideFooter?: boolean; hideSideSpacing?: boolean; modalMode?: boolean; showFooterOnTop?: boolean; saveCallback: EventEmitter; formReadyCallback: EventEmitter; submitCallback: EventEmitter>; cancelCallback: EventEmitter; reloadCallback: EventEmitter; formChanged: EventEmitter<{ values: T; errors: string[]; }>; Math: Math; /** * @internal * This property is internal and may become `private` in future versions. * Avoid using it directly in your code. */ reactiveForm?: FormGroup; submitted: boolean; nowTime?: string; adjustedFieldsets?: FieldsetFields[]; notAdjustedFields?: GeneralFieldConfigInterface[]; needToAutoFocus?: boolean | null; readOnlyMap: { [key: string]: boolean; }; hiddenMap: { [key: string]: boolean; }; userChangedMap: { [key: string]: boolean; }; readyToBindFields: { [key: string]: { value?: any; config?: GeneralFieldConfigInterface; }; }; validationMessages: { [fieldName: string]: { [validatorType: string]: string; }; }; private _initialModelStringify; valueSubscription: Subscription; private dataForBinding; constructor(fb: FormBuilder, toastService: FararuToastService, translateService?: TranslateService, generalOdataService?: GeneralODataService, modalService?: ModalService); ngOnInit(): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; oldValues2: any; observeFieldChanges(values: any, fieldConfig: GeneralFieldConfigInterface): void; oldValues: any; handleFormValueChanges(values: any): void; save(data: T): void; submit(event: SubmitEvent): void; cancel(): void; reloadHandler(): void; selectChanged(changedValue: any, fieldConfig: GeneralFieldConfigInterface): void; identitySelectorChanged(changedValue: any, fieldConfig: GeneralFieldConfigInterface): void; selectMenuOpened(field: GeneralFieldConfigInterface): void; textboxChanged(changedValue: string | number | undefined, fieldConfig: GeneralFieldConfigInterface): void; checkboxChanged(changedValue: any, fieldConfig: GeneralFieldConfigInterface): void; userChanged(fieldConfig: GeneralFieldConfigInterface): void; updateProps(fieldConfig: GeneralFieldConfigInterface, changedValue: any): void; getIdFromField(field: GeneralFieldConfigInterface): string; getExpandableSize(fieldCount: number): string; getFieldsetErrorCount(fields: GeneralFieldConfigInterface[]): string; hasRequiredValidator(validators: GeneralFormFieldValidatorInterface[]): boolean; applyBooleanPropery(input: boolean | (() => boolean)): boolean; resetForm(type?: 'hard' | 'soft'): void; get formHasChanges(): boolean; get formIsValid(): boolean; get formData(): any; private get formDataWithFieldNamesAndBindings(); private setupControl; private addControls; bindValues(data: any): void; private bindFormConfig; unbindValues(): void; updateReadyForBinding(name: string, value?: any, config?: GeneralFieldConfigInterface): void; private getFieldErrors; validateAllFormFields(): void; private bindValidations; private fieldIsFocusable; private autoFocus; private setFocus; private adjustFieldsInFieldsets; private checkValidatorMessage; getField(name: string): GeneralFieldConfigInterface | null; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "app-general-simple-data-entry", never, { "config": { "alias": "config"; "required": false; }; "header": { "alias": "header"; "required": false; }; "id": { "alias": "id"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "fields": { "alias": "fields"; "required": false; }; "columnCount": { "alias": "columnCount"; "required": false; }; "formGroup": { "alias": "formGroup"; "required": false; }; "saveButtonFor": { "alias": "saveButtonFor"; "required": false; }; "cancelButtonFor": { "alias": "cancelButtonFor"; "required": false; }; "fieldsetConfig": { "alias": "fieldsetConfig"; "required": false; }; "noTopGutter": { "alias": "noTopGutter"; "required": false; }; "noGutter": { "alias": "noGutter"; "required": false; }; "noScroll": { "alias": "noScroll"; "required": false; }; "hideCancelButton": { "alias": "hideCancelButton"; "required": false; }; "hideReloadButton": { "alias": "hideReloadButton"; "required": false; }; "hideSaveButton": { "alias": "hideSaveButton"; "required": false; }; "hideBorder": { "alias": "hideBorder"; "required": false; }; "hideFooter": { "alias": "hideFooter"; "required": false; }; "hideSideSpacing": { "alias": "hideSideSpacing"; "required": false; }; "modalMode": { "alias": "modalMode"; "required": false; }; "showFooterOnTop": { "alias": "showFooterOnTop"; "required": false; }; }, { "saveCallback": "saveCallback"; "formReadyCallback": "formReadyCallback"; "submitCallback": "submitCallback"; "cancelCallback": "cancelCallback"; "reloadCallback": "reloadCallback"; "formChanged": "formChanged"; }, never, ["*"], false, never>; } export {};