redact static method
Implementation
static Map<String, dynamic> redact(Map<String, dynamic> input) {
final result = <String, dynamic>{};
for (final entry in input.entries) {
if (isSensitive(entry.key)) {
result[entry.key] = _redacted;
} else if (entry.value is Map<String, dynamic>) {
result[entry.key] = redact(entry.value as Map<String, dynamic>);
} else if (entry.value is List) {
result[entry.key] = (entry.value as List).map((item) {
if (item is Map<String, dynamic>) return redact(item);
return item;
}).toList();
} else {
result[entry.key] = entry.value;
}
}
return result;
}