We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 5cd1ebd commit 009773aCopy full SHA for 009773a
lib/generate.js
@@ -19,6 +19,11 @@ module.exports = function generate(before, after) {
19
before = serialize(before);
20
after = serialize(after);
21
22
+ // An undefined target is a deletion attempt
23
+ if (after === undefined) {
24
+ return null;
25
+ }
26
+
27
if (!(before instanceof Object) &&
28
!(after instanceof Object) &&
29
before === after) { // Return no op when values match
@@ -33,10 +38,8 @@ module.exports = function generate(before, after) {
33
38
34
39
let patch = {};
35
40
for (let key of Object.keys(before)) {
36
- let newVal = null;
37
- if (key in after) {
- newVal = generate(before[key], after[key]);
- }
41
+ let newVal = generate(before[key], after[key]);
42
+ // Omit noops
43
if (equal(newVal, {})) {
44
continue;
45
}
0 commit comments