validate

  1. @override
ValidationResult<String> validate(
  1. dynamic value
)

override

Implementation

@override
ValidationResult<String> validate(dynamic value) {
  if (value == null) {
    return Invalid({
      _fieldName: ['is required']
    });
  }
  if (value is! String) {
    return Invalid({
      _fieldName: ['must be a string']
    });
  }

final errors = <String>[]; for (final check in _checks) { final error = check(value); if (error.isNotEmpty) errors.add(error); }

if (errors.isNotEmpty) { return Invalid({_fieldName: errors}); } return Valid(value); }