checkMissingKey function
Implementation
void checkMissingKey(List<Record> records) {
final keys = records.fold<Set<String>>({}, (prev, it) {
if (prev.length < it.records.keys.length) {
return it.records.keys.toSet();
}
return prev;
});
for (final record in records) {
if (record.records.keys.length != keys.length) {
final localeKeys = record.records.keys.toSet();
final missingKeys = keys.fold<Set<String>>({}, (acc, it) {
if (!localeKeys.contains(it)) {
acc.add(it);
}
return acc;
});
throw MissingKeysException(record.locale, missingKeys);
}
}
}