ngx-reactive-form-class-validator
Version:
A lightweight library for dynamically validate Angular reactive forms using class-validator library.
78 lines • 3.88 kB
TypeScript
import { AbstractControlOptions, AsyncValidatorFn, FormArray, FormControlState, ValidatorFn } from '@angular/forms';
import { ClassValidatorFormGroup } from './class-validator-form-group';
import { ClassValidatorFormControl } from './class-validator-form-control';
import { ClassType } from './types';
import * as i0 from "@angular/core";
export declare class ClassValidatorFormBuilderService {
/**
* @description
* Construct a new `FormGroup` instance.
*
* @param formClassType the `classType` containing `class-validator` decorators to be used to validate form
* @param controlsConfig A collection of child controls. The key for each child is the name
* under which it is registered.
*
* @param options Configuration options object for the `FormGroup`. The object can
* have two shapes:
*
* 1) `AbstractControlOptions` object (preferred), which consists of:
* * `validators`: A synchronous validator function, or an array of validator functions
* * `asyncValidators`: A single async validator or array of async validator functions
* * `updateOn`: The event upon which the control should be updated (options: 'change' | 'blur' |
* submit')
*
* 2) Legacy configuration object, which consists of:
* * `validator`: A synchronous validator function, or an array of validator functions
* * `asyncValidator`: A single async validator or array of async validator functions
*
*/
group(formClassType: ClassType<any>, controlsConfig: {
[p: string]: any;
}, options?: AbstractControlOptions | {
[p: string]: any;
} | null): ClassValidatorFormGroup;
/**
* Constructs a new `FormArray` from the given array of configurations,
* validators and options.
*
* @param controlsConfig An array of child controls or control configs. Each
* child control is given an index when it is registered.
*
* @param validatorOrOpts A synchronous validator function, or an array of
* such functions, or an `AbstractControlOptions` object that contains
* validation functions and a validation trigger.
*
* @param asyncValidator A single async validator or array of async validator
* functions.
*/
array<T>(controlsConfig: Array<T>, validatorOrOpts?: ValidatorFn | ValidatorFn[] | AbstractControlOptions | null, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null): FormArray;
/**
* @description
* Construct a new `FormControl` with the given state, validators and options.
*
* @param formState Initializes the control with an initial state value, or
* with an object that contains both a value and a disabled status.
*
* @param validatorOrOpts A synchronous validator function, or an array of
* such functions, or an `AbstractControlOptions` object that contains
* validation functions and a validation trigger.
*
* @param asyncValidator A single async validator or array of async validator
* functions.
*
* @usageNotes
*
* ### Initialize a control as disabled
*
* The following example returns a control with an initial value in a disabled state.
*
* <code-example path="forms/ts/formBuilder/form_builder_example.ts" region="disabled-control">
* </code-example>
*/
control<T>(formState: T | FormControlState<T>, validatorOrOpts?: ValidatorFn | ValidatorFn[] | AbstractControlOptions | null, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null): ClassValidatorFormControl;
private reduceControls;
private createControl;
static ɵfac: i0.ɵɵFactoryDeclaration<ClassValidatorFormBuilderService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<ClassValidatorFormBuilderService>;
}
//# sourceMappingURL=class-validator-form-builder.service.d.ts.map