wrapperActivateValidation<TAbstractControl extends AbstractControl> function

ValidatorsFunction<TAbstractControl> wrapperActivateValidation<TAbstractControl extends AbstractControl>(
  1. bool activate(
    1. TAbstractControl control
    ),
  2. List<ValidatorsFunction<TAbstractControl>> validators, {
  3. List<ValidatorsFunction<TAbstractControl>>? elseValidators,
})

Runs validations only if activation conditions are met Запускает валидации только если условие активации выполнено

Implementation

ValidatorsFunction<TAbstractControl>
    wrapperActivateValidation<TAbstractControl extends AbstractControl>(
  bool Function(TAbstractControl control) activate,
  List<ValidatorsFunction<TAbstractControl>> validators, {
  List<ValidatorsFunction<TAbstractControl>>? elseValidators,
}) =>
        (TAbstractControl control) async {
          if (activate(control)) {
            final validations = await Future.wait((validators).map(
                (validator) => control.executeAsyncValidation(
                    (control) => validator(control as TAbstractControl))));
            return combineErrors(validations);
          }
          if (elseValidators != null && elseValidators.length > 0) {
            final validations = await Future.wait(elseValidators.map(
                (validator) => control.executeAsyncValidation(
                    (control) => validator(control as TAbstractControl))));
            return combineErrors(validations);
          }
          return [];
        };