passes method

  1. @override
FutureOr<bool> passes(
  1. ValidationContext context
)
override

Validates the value using the given context.

Returns true if valid, otherwise false.

Implementation

@override
FutureOr<bool> passes(ValidationContext context) {
  final value = context.value;
  final args = context.parameters;
  if (value == null || args.length < 2) return false;

  final strVal = value.toString();

  final min = int.tryParse(args[0]);
  final max = int.tryParse(args[1]);
  if (min == null || max == null) return false;

  if (!RegExp(r'^[0-9]+$').hasMatch(strVal)) return false;

  return strVal.length >= min && strVal.length <= max;
}