material-dynamic-forms
Version:
¡Crea formularios dinámicos, potentes y configurables en Angular usando Material Design! 🚀
65 lines (64 loc) • 2.95 kB
TypeScript
import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { eDataType, IFieldDynamicForm, IFieldGroup } from './interfaces/fieldDynamicForm.interface';
import { FormGroup } from '@angular/forms';
import { MatDialogRef } from '@angular/material/dialog';
import { DynamicFormService } from './dynamic-form.service';
import * as i0 from "@angular/core";
export declare class DynamicFormComponent implements OnInit, OnChanges, OnDestroy {
private data;
private modal;
private dynamicFormService;
fieldGroups: IFieldGroup[];
isModal: boolean;
baseUrl: string;
resetFormTrigger: boolean;
isEdit: boolean;
isReadonlyForm: boolean;
changeValueSelected: EventEmitter<{
form: IFieldDynamicForm;
value: any;
}>;
formValidityChange: EventEmitter<boolean>;
externalDependenciesValuesChanged: EventEmitter<void>;
form: FormGroup;
eDataType: typeof eDataType;
title: string;
titleButton: string;
value: string;
selectedOption: any;
constructor(data: any, modal: MatDialogRef<any>, dynamicFormService: DynamicFormService);
ngOnInit(): void;
ngOnDestroy(): void;
ngOnChanges(changes: SimpleChanges): void;
inizializarForm(): void;
/**
* Método para manejar dependencias externas.
*/
handleExternalDependencies(field: IFieldDynamicForm): void;
updateExternalDependencies(values: {
[key: string]: any;
}): void;
updateFormField(fieldName: string, value: any): void;
/**
* Función pública para deshabilitar un campo específico
* @param fieldName Nombre del campo a deshabilitar
*/
disableField(fieldName: string): void;
/**
* Función pública para habilitar un campo específico
* @param fieldName Nombre del campo a habilitar
*/
enableField(fieldName: string): void;
removeExternalDependency(key: string): void;
refreshDependentFields(): void;
simulateFieldChange(fieldName: string): void;
getFormFieldValue(fieldName: string): any;
onSubmit(): void;
emitEvent(nameForm: IFieldDynamicForm, event?: any): void;
getForm(): FormGroup<any>;
getErrorMessage(fieldName: string): string | null;
getGridColumns(columnCount: number): string;
getColSpanClass(colspan: number | undefined): string;
static ɵfac: i0.ɵɵFactoryDeclaration<DynamicFormComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DynamicFormComponent, "lib-dynamic-form", never, { "fieldGroups": "fieldGroups"; "isModal": "isModal"; "baseUrl": "baseUrl"; "resetFormTrigger": "resetFormTrigger"; "isEdit": "isEdit"; "isReadonlyForm": "isReadonlyForm"; }, { "changeValueSelected": "changeValueSelected"; "formValidityChange": "formValidityChange"; "externalDependenciesValuesChanged": "externalDependenciesValuesChanged"; }, never, never, false>;
}