removeDeeply function
remove element at keyPath
in data
Implementation
dynamic removeDeeply(List keyPath, dynamic data, [int i = 0]) {
if (data is Map) {
if (!data.containsKey(keyPath[i])) {
return data;
} else {
if (keyPath.length == i + 1) {
data.remove(keyPath[i]);
return data;
}
}
} else {
return data;
}
data[keyPath[i]] = removeDeeply(keyPath, data[keyPath[i]], ++i);
return data;
}