UNPKG

ngx-core-business

Version:

A comprehensive solution designed to streamline the development of enterprise-level Angular applications.

82 lines (81 loc) 3.08 kB
import { Injector } from '@angular/core'; import { ModelViewComponent } from './model-view.component'; import { AbstractControl, UntypedFormGroup } from '@angular/forms'; import { FieldValidations, FormBuilderHelper, FormFields } from './form-builder-helper'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; export declare abstract class FormComponent<T> extends ModelViewComponent<T> { protected api: any; formModel: UntypedFormGroup; formFields: FormFields; model: T | any; modelIdProperty: string; autoload: boolean; dataPath: string; fieldRequiredErrorMessageText: string; invalidValuesMessageText: string; msgSuccessfulCreateText: string; msgSuccessfulUpdateText: string; _isSaving: boolean; /** * This property is used to idenfify whe the form model don't exist yet */ routeCreateKeyword: string; protected fbHelper: FormBuilderHelper; constructor(injector: Injector, api: any); subscribeRouteParams(): void; ngOnInit(): void; onData(model: any): void; /** * Hook para cargar datasets relacionados como por ejemplo: listas de selección */ loadDatasets(): void; getPostData(): any; getNewModel(): T; getModelId(): any; isFormValid(): boolean; /** * Permite determinar si el campo debe incluirse en el formulario * @param field * @returns */ hasField(field: string): boolean; /** * Retorna el campo del formulario solicitado * @param name */ getFormControl(name: string): AbstractControl | null; hasError(fieldName: string, errorType: string): boolean | undefined; getFieldProperty(fieldName: string, prop: keyof FieldValidations): any; getFieldValue(field: string): any; defineFormModel(): void; /** * Permite modificar la definición original del campo antes de construir el formControl * @param field * @returns */ protected transformDefinedField(fieldName: string, field: FieldValidations): FieldValidations; /** * Permite modificar los valores que se usarán para construir el formControl * @param field * @returns */ protected getValuesForFormModel(values: T | any): any; isFieldRequired(fieldName: string): boolean | undefined; hasMinLengthError(fieldName: string): boolean | undefined; hasMaxLengthError(fieldName: string): boolean | undefined; getRequiredErrorMessage(_fieldName?: string): string; getMinLengthErrorMessage(fieldName: string): string; getMaxLengthErrorMessage(fieldName: string): string; onSubmit(): void; resetValues(): void; /** * * @returns true si el modelo posee un id. */ isRecordStored(): boolean; getDataService(): any; getSaveService(model: any): Observable<any>; static ɵfac: i0.ɵɵFactoryDeclaration<FormComponent<any>, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<FormComponent<any>, never, never, { "dataPath": { "alias": "dataPath"; "required": false; }; }, {}, never, never, true, never>; }