deepCopy function
A deep copy of maps and lists, other values as they are.
Implementation
Object? deepCopy(Object? value) {
if (value is Map<String, Object?>) {
return <String, Object?>{
for (final entry in value.entries) entry.key: deepCopy(entry.value),
};
}
if (value is Map<Object?, Object?>) {
return <Object?, Object?>{
for (final entry in value.entries) entry.key: deepCopy(entry.value),
};
}
if (value is List<Object?>) return [for (final item in value) deepCopy(item)];
return value;
}