Source
static AsyncValidatorFn composeAsync(List<AsyncValidatorFn> validators) { if (validators == null) return null; var presentValidators = validators.where((v) => v != null).toList(); if (presentValidators.length == 0) return null; return (model_module.AbstractControl control) { var promises = _executeAsyncValidators(control, presentValidators).map(_toFuture); return Future.wait(promises).then(_mergeErrors); }; }