validateConditional static method
Validates if a conditional configuration is valid. Returns null if valid, error message if invalid.
Implementation
static String? validateConditional(Map<String, dynamic>? conditional) {
if (conditional == null || conditional.isEmpty) {
return null; // No conditional is valid
}
// Check for JSONLogic
if (conditional.containsKey('json')) {
if (conditional['json'] is! Map) {
return 'JSONLogic conditional must have a valid JSON object';
}
return null;
}
// Check for custom JavaScript
if (conditional.containsKey('custom')) {
return 'JavaScript custom conditionals are not supported in Dart';
}
// Validate simple conditional
if (!conditional.containsKey('when')) {
return 'Simple conditional must have a "when" field';
}
return null;
}