validate method
FutureOr<ValidationResult?>
validate(
- BuildContext context,
- T? value,
- FormValidationMode state
override
Validates the given value and returns a validation result.
This method performs the actual validation logic and should return null if the value is valid, or a ValidationResult describing the validation error if invalid.
Parameters:
context(BuildContext): The build context for localization accessvalue(T?): The value to validate (may be null)lifecycle(FormValidationMode): The current validation trigger mode
Returns a FutureOr<ValidationResult?> that is null for valid values
or contains error information for invalid values.
Implementation
@override
FutureOr<ValidationResult?> validate(
BuildContext context, T? value, FormValidationMode state) {
var localizations = Localizations.of(context, ShadcnLocalizations);
var result = validator.validate(context, value, state);
if (result is Future<ValidationResult?>) {
return result.then((value) {
if (value == null) {
return InvalidResult(message ?? localizations.invalidValue,
state: state);
}
return null;
});
} else if (result == null) {
return InvalidResult(message ?? localizations.invalidValue, state: state);
}
return null;
}