feat(forms): add support for adding async validators via template

Example:

@Directive({
  selector: '[uniq-login-validator]',
  providers: [provide(NG_ASYNC_VALIDATORS, {useExisting: UniqLoginValidator, multi: true})]
})
class UniqLoginValidator implements Validator {
  validate(c) { return someFunctionReturningPromiseOrObservable(); }
}
This commit is contained in:
vsavkin
2015-11-02 10:00:42 -08:00
committed by Victor Savkin
parent cf449ddaa9
commit 31c12af81f
14 changed files with 249 additions and 101 deletions

View File

@ -819,6 +819,7 @@ var NG_ALL = [
'LowerCasePipe',
'LowerCasePipe.transform()',
'NG_VALIDATORS',
'NG_ASYNC_VALIDATORS',
'NgClass',
'NgClass.doCheck()',
'NgClass.initialClasses=',
@ -837,6 +838,7 @@ var NG_ALL = [
'NgControl.untouched',
'NgControl.valid',
'NgControl.validator',
'NgControl.asyncValidator',
'NgControl.value',
'NgControl.valueAccessor',
'NgControl.valueAccessor=',
@ -857,6 +859,7 @@ var NG_ALL = [
'NgControlGroup.valid',
'NgControlGroup.value',
'NgControlGroup.validator',
'NgControlGroup.asyncValidator',
'NgControlStatus',
'NgControlStatus.ngClassDirty',
'NgControlStatus.ngClassInvalid',
@ -884,6 +887,7 @@ var NG_ALL = [
'NgControlName.update=',
'NgControlName.valid',
'NgControlName.validator',
'NgControlName.asyncValidator',
'NgControlName.value',
'NgControlName.valueAccessor',
'NgControlName.valueAccessor=',
@ -941,6 +945,7 @@ var NG_ALL = [
'NgFormControl.update=',
'NgFormControl.valid',
'NgFormControl.validator',
'NgFormControl.asyncValidator',
'NgFormControl.value',
'NgFormControl.valueAccessor',
'NgFormControl.valueAccessor=',
@ -996,6 +1001,7 @@ var NG_ALL = [
'NgModel.update=',
'NgModel.valid',
'NgModel.validator',
'NgModel.asyncValidator',
'NgModel.value',
'NgModel.valueAccessor',
'NgModel.valueAccessor=',
@ -1223,6 +1229,7 @@ var NG_ALL = [
'UrlResolver',
'UrlResolver.resolve()',
'Validators#compose()',
'Validators#composeAsync()',
'Validators#nullValidator()',
'Validators#required()',
'Validators#minLength()',