changes static method

MapChanges changes(
  1. Map oldMap,
  2. Map newMap
)

Helper function to find all changed paths in nested maps

Implementation

static MapChanges changes(Map oldMap, Map newMap) {
  final result = {
    'added': <String>[],
    'removed': <String>[],
    'modified': <String>[],
    'unchanged': <String>[],
  };

  _compareNestedMaps(oldMap, newMap, '', result);

  final added = result["added"]!;
  final removed = result["removed"]!;
  final modified = result["modified"]!;
  final unchanged = result["unchanged"]!;

  return MapChanges(
    added: added,
    removed: removed,
    modified: modified,
    unchanged: unchanged,
  );
}