validate method
- dynamic value,
- String path
override
Validates value at path and returns every violation found.
path is a dot-notation string identifying the location of value
within the document (e.g. 'address.city', '' for the root). Violations
use path as their SchemaViolation.path.
Implementation
@override
List<SchemaViolation> validate(dynamic value, String path) {
if (value is! Map) return [];
return [
for (final key in value.keys.cast<String>())
if (!allowed.contains(key))
SchemaViolation(
path: path.isEmpty ? key : '$path.$key',
message: 'additional property not allowed',
),
];
}