deepSet method
Sets a deeply nested value at path, creating intermediate maps as needed.
<String, dynamic>{}.deepSet(['user', 'name'], 'Alice')
// {'user': {'name': 'Alice'}}
Implementation
Map<String, dynamic> deepSet(List<String> path, dynamic value) {
if (path.isEmpty) return this as Map<String, dynamic>;
final result = Map<String, dynamic>.from(this as Map);
Map<String, dynamic> current = result;
for (var i = 0; i < path.length - 1; i++) {
final key = path[i];
if (current[key] is! Map) {
current[key] = <String, dynamic>{};
}
current = Map<String, dynamic>.from(current[key] as Map);
result[path[i]] = current;
}
current[path.last] = value;
return result;
}