UNPKG

ngx-core-business

Version:

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

50 lines (49 loc) 1.54 kB
import { FormBuilder, FormGroup } from '@angular/forms'; import * as i0 from "@angular/core"; export declare const EMAIL_PATTERN: RegExp; export declare const URL_PATTERN: RegExp; export type FieldGroupType = 'object' | 'array'; export interface FieldValidations { groupType?: string; required?: boolean; disabled?: boolean; min?: number; max?: number; minLength?: number; maxLength?: number; email?: boolean; pattern?: RegExp | string; emailPattern?: boolean | RegExp; urlPattern?: boolean | RegExp; customValidation?: () => boolean; defaultValue?: any; valueType?: 'array' | 'object' | 'string' | 'number' | 'boolean'; arrayValueType?: 'string' | 'number'; } export type FormFieldDefinition = FieldValidations | { [key: string]: FieldValidations | string; groupType: string; }; export interface FormField extends FieldValidations { name: string; } export type FormFields = { [key: string]: FormFieldDefinition; }; export declare class FormBuilderHelper { private formBuilder; constructor(formBuilder: FormBuilder); buildFormGroup(fields: FormFields, values?: { [key: string]: any; }): FormGroup; /** * Retronar un arreglo de validadores * * @param field */ getValidators(field: FieldValidations): any[]; private buildFormArray; private getFormGroupFieldDefinition; static ɵfac: i0.ɵɵFactoryDeclaration<FormBuilderHelper, never>; static ɵprov: i0.ɵɵInjectableDeclaration<FormBuilderHelper>; }