validateNumber static method
Validate numeric input
Implementation
static String? validateNumber(
String? value, {
double? min,
double? max,
bool allowDecimals = true,
}) {
if (value == null || value.isEmpty) {
return 'This field is required.';
}
final numberRegExp =
allowDecimals ? RegExp(r'^-?\d*\.?\d+$') : RegExp(r'^-?\d+$');
if (!numberRegExp.hasMatch(value)) {
return 'Please enter a valid number.';
}
final number = double.tryParse(value);
if (number == null) {
return 'Invalid number format.';
}
if (min != null && number < min) {
return 'Value must be at least $min.';
}
if (max != null && number > max) {
return 'Value must not exceed $max.';
}
return null;
}