passes method
Validates the value using the given context.
Returns true if valid, otherwise false.
Implementation
@override
FutureOr<bool> passes(ValidationContext context) {
final value = context.value;
if (value == null) return false;
if (value is! String) return false;
// Strict regex for UUID v1-v5
// xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
// M is version (1-5), N is variant (8, 9, a, b)
final uuidRegex = RegExp(
r'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$',
caseSensitive: false,
);
return uuidRegex.hasMatch(value);
}