object-rewrite
Advanced tools
Comparing version 2.1.3 to 2.1.4
@@ -22,30 +22,34 @@ const assert = require('assert'); | ||
isMatch, | ||
needle, | ||
matchedBy, | ||
parents | ||
}) => { | ||
assert(isMatch === true); | ||
matchedBy.sort(); | ||
if (filter[needle] !== undefined && filter[needle](key, value, parents) === false) { | ||
if (matchedBy.some(n => filter[n] !== undefined && filter[n](key, value, parents) === false)) { | ||
toRemove.push(key); | ||
} | ||
if (retain.includes(needle)) { | ||
if (matchedBy.some(n => retain.includes(n))) { | ||
toRetain.push(key); | ||
} | ||
if (inject[needle] !== undefined) { | ||
Object.assign(value, inject[needle](key, value, parents)); | ||
} | ||
matchedBy.forEach(n => { | ||
if (inject[n] !== undefined) { | ||
Object.assign(value, inject[n](key, value, parents)); | ||
} | ||
}); | ||
matchedBy.forEach(n => { | ||
if (overwrite[n] !== undefined) { | ||
const lastStringIndex = key.reduce((p, c, idx) => typeof c === 'string' ? idx : p, 0); | ||
const directParent = key.slice(lastStringIndex, -1).reduce((p, c) => p[c], parents[0]); // eslint-disable-next-line no-param-reassign | ||
if (overwrite[needle] !== undefined) { | ||
const lastStringIndex = key.reduce((p, c, idx) => typeof c === 'string' ? idx : p, 0); | ||
const directParent = key.slice(lastStringIndex, -1).reduce((p, c) => p[c], parents[0]); // eslint-disable-next-line no-param-reassign | ||
directParent[key.slice(-1)[0]] = overwrite[needle](key, value, parents); | ||
} | ||
directParent[key.slice(-1)[0]] = overwrite[n](key, directParent[key.slice(-1)[0]], parents); | ||
} | ||
}); | ||
}, | ||
arrayCallbackFn: (key, value, { | ||
needle | ||
matchedBy | ||
}) => { | ||
if (retain.includes(needle)) { | ||
if (matchedBy.some(n => retain.includes(n))) { | ||
toRetain.push(key); | ||
@@ -55,5 +59,5 @@ } | ||
breakFn: (key, value, { | ||
needles: ndls | ||
traversedBy | ||
}) => { | ||
if (retainEmptyParents === true && ndls.some(ndl => retain.includes(ndl))) { | ||
if (retainEmptyParents === true && traversedBy.some(n => retain.includes(n))) { | ||
toRetain.push(key); | ||
@@ -72,2 +76,2 @@ } | ||
}; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJhc3NlcnQiLCJyZXF1aXJlIiwib2JqZWN0U2NhbiIsInRyZWUiLCJtb2R1bGUiLCJleHBvcnRzIiwiZmlsdGVyIiwiaW5qZWN0Iiwib3ZlcndyaXRlIiwicmV0YWluIiwicmV0YWluRW1wdHlQYXJlbnRzIiwibmVlZGxlcyIsIk9iamVjdCIsImtleXMiLCJ0b1JlbW92ZSIsInRvUmV0YWluIiwic2Nhbm5lciIsInVzZUFycmF5U2VsZWN0b3IiLCJqb2luZWQiLCJjYWxsYmFja0ZuIiwia2V5IiwidmFsdWUiLCJpc01hdGNoIiwibmVlZGxlIiwicGFyZW50cyIsInVuZGVmaW5lZCIsInB1c2giLCJpbmNsdWRlcyIsImFzc2lnbiIsImxhc3RTdHJpbmdJbmRleCIsInJlZHVjZSIsInAiLCJjIiwiaWR4IiwiZGlyZWN0UGFyZW50Iiwic2xpY2UiLCJhcnJheUNhbGxiYWNrRm4iLCJicmVha0ZuIiwibmRscyIsInNvbWUiLCJuZGwiLCJpbnB1dCIsInBydW5lIiwibGVuZ3RoIl0sIm1hcHBpbmdzIjoiQUFBQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxRQUFELENBQXRCOztBQUNBLE1BQU1DLFVBQVUsR0FBR0QsT0FBTyxDQUFDLGFBQUQsQ0FBMUI7O0FBQ0EsTUFBTUUsSUFBSSxHQUFHRixPQUFPLENBQUMsYUFBRCxDQUFwQjs7QUFFQUcsTUFBTSxDQUFDQyxPQUFQLEdBQWlCLENBQUM7QUFDaEJDLEVBQUFBLE1BQU0sR0FBRyxFQURPO0FBRWhCQyxFQUFBQSxNQUFNLEdBQUcsRUFGTztBQUdoQkMsRUFBQUEsU0FBUyxHQUFHLEVBSEk7QUFJaEJDLEVBQUFBLE1BQU0sR0FBRyxDQUFDLElBQUQsQ0FKTztBQUtoQkMsRUFBQUEsa0JBQWtCLEdBQUc7QUFMTCxDQUFELEtBTVg7QUFDSixRQUFNQyxPQUFPLEdBQUcsQ0FDZCxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWVAsTUFBWixDQURXLEVBRWQsR0FBR00sTUFBTSxDQUFDQyxJQUFQLENBQVlOLE1BQVosQ0FGVyxFQUdkLEdBQUdLLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZTCxTQUFaLENBSFcsRUFJZCxHQUFHQyxNQUpXLENBQWhCO0FBT0EsUUFBTUssUUFBUSxHQUFHLEVBQWpCO0FBQ0EsUUFBTUMsUUFBUSxHQUFHLEVBQWpCO0FBRUEsUUFBTUMsT0FBTyxHQUFHZCxVQUFVLENBQUNTLE9BQUQsRUFBVTtBQUNsQ00sSUFBQUEsZ0JBQWdCLEVBQUUsS0FEZ0I7QUFFbENDLElBQUFBLE1BQU0sRUFBRSxLQUYwQjtBQUdsQ0MsSUFBQUEsVUFBVSxFQUFFLENBQUNDLEdBQUQsRUFBTUMsS0FBTixFQUFhO0FBQUVDLE1BQUFBLE9BQUY7QUFBV0MsTUFBQUEsTUFBWDtBQUFtQkMsTUFBQUE7QUFBbkIsS0FBYixLQUE4QztBQUN4RHhCLE1BQUFBLE1BQU0sQ0FBQ3NCLE9BQU8sS0FBSyxJQUFiLENBQU47O0FBQ0EsVUFBSWhCLE1BQU0sQ0FBQ2lCLE1BQUQsQ0FBTixLQUFtQkUsU0FBbkIsSUFBZ0NuQixNQUFNLENBQUNpQixNQUFELENBQU4sQ0FBZUgsR0FBZixFQUFvQkMsS0FBcEIsRUFBMkJHLE9BQTNCLE1BQXdDLEtBQTVFLEVBQW1GO0FBQ2pGVixRQUFBQSxRQUFRLENBQUNZLElBQVQsQ0FBY04sR0FBZDtBQUNEOztBQUNELFVBQUlYLE1BQU0sQ0FBQ2tCLFFBQVAsQ0FBZ0JKLE1BQWhCLENBQUosRUFBNkI7QUFDM0JSLFFBQUFBLFFBQVEsQ0FBQ1csSUFBVCxDQUFjTixHQUFkO0FBQ0Q7O0FBQ0QsVUFBSWIsTUFBTSxDQUFDZ0IsTUFBRCxDQUFOLEtBQW1CRSxTQUF2QixFQUFrQztBQUNoQ2IsUUFBQUEsTUFBTSxDQUFDZ0IsTUFBUCxDQUFjUCxLQUFkLEVBQXFCZCxNQUFNLENBQUNnQixNQUFELENBQU4sQ0FBZUgsR0FBZixFQUFvQkMsS0FBcEIsRUFBMkJHLE9BQTNCLENBQXJCO0FBQ0Q7O0FBQ0QsVUFBSWhCLFNBQVMsQ0FBQ2UsTUFBRCxDQUFULEtBQXNCRSxTQUExQixFQUFxQztBQUNuQyxjQUFNSSxlQUFlLEdBQUdULEdBQUcsQ0FBQ1UsTUFBSixDQUFXLENBQUNDLENBQUQsRUFBSUMsQ0FBSixFQUFPQyxHQUFQLEtBQWdCLE9BQU9ELENBQVAsS0FBYSxRQUFiLEdBQXdCQyxHQUF4QixHQUE4QkYsQ0FBekQsRUFBNkQsQ0FBN0QsQ0FBeEI7QUFDQSxjQUFNRyxZQUFZLEdBQUdkLEdBQUcsQ0FBQ2UsS0FBSixDQUFVTixlQUFWLEVBQTJCLENBQUMsQ0FBNUIsRUFBK0JDLE1BQS9CLENBQXNDLENBQUNDLENBQUQsRUFBSUMsQ0FBSixLQUFVRCxDQUFDLENBQUNDLENBQUQsQ0FBakQsRUFBc0RSLE9BQU8sQ0FBQyxDQUFELENBQTdELENBQXJCLENBRm1DLENBR25DOztBQUNBVSxRQUFBQSxZQUFZLENBQUNkLEdBQUcsQ0FBQ2UsS0FBSixDQUFVLENBQUMsQ0FBWCxFQUFjLENBQWQsQ0FBRCxDQUFaLEdBQWlDM0IsU0FBUyxDQUFDZSxNQUFELENBQVQsQ0FBa0JILEdBQWxCLEVBQXVCQyxLQUF2QixFQUE4QkcsT0FBOUIsQ0FBakM7QUFDRDtBQUNGLEtBcEJpQztBQXFCbENZLElBQUFBLGVBQWUsRUFBRSxDQUFDaEIsR0FBRCxFQUFNQyxLQUFOLEVBQWE7QUFBRUUsTUFBQUE7QUFBRixLQUFiLEtBQTRCO0FBQzNDLFVBQUlkLE1BQU0sQ0FBQ2tCLFFBQVAsQ0FBZ0JKLE1BQWhCLENBQUosRUFBNkI7QUFDM0JSLFFBQUFBLFFBQVEsQ0FBQ1csSUFBVCxDQUFjTixHQUFkO0FBQ0Q7QUFDRixLQXpCaUM7QUEwQmxDaUIsSUFBQUEsT0FBTyxFQUFFLENBQUNqQixHQUFELEVBQU1DLEtBQU4sRUFBYTtBQUFFVixNQUFBQSxPQUFPLEVBQUUyQjtBQUFYLEtBQWIsS0FBbUM7QUFDMUMsVUFBSTVCLGtCQUFrQixLQUFLLElBQXZCLElBQStCNEIsSUFBSSxDQUFDQyxJQUFMLENBQVVDLEdBQUcsSUFBSS9CLE1BQU0sQ0FBQ2tCLFFBQVAsQ0FBZ0JhLEdBQWhCLENBQWpCLENBQW5DLEVBQTJFO0FBQ3pFekIsUUFBQUEsUUFBUSxDQUFDVyxJQUFULENBQWNOLEdBQWQ7QUFDRDs7QUFDRCxhQUFPLEtBQVA7QUFDRDtBQS9CaUMsR0FBVixDQUExQjtBQWtDQSxTQUFRcUIsS0FBRCxJQUFXO0FBQ2hCekIsSUFBQUEsT0FBTyxDQUFDeUIsS0FBRCxDQUFQO0FBQ0F0QyxJQUFBQSxJQUFJLENBQUN1QyxLQUFMLENBQVdELEtBQVgsRUFBa0IzQixRQUFsQixFQUE0QkMsUUFBNUI7QUFDQUQsSUFBQUEsUUFBUSxDQUFDNkIsTUFBVCxHQUFrQixDQUFsQjtBQUNBNUIsSUFBQUEsUUFBUSxDQUFDNEIsTUFBVCxHQUFrQixDQUFsQjtBQUNELEdBTEQ7QUFNRCxDQXpERCIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpO1xuY29uc3Qgb2JqZWN0U2NhbiA9IHJlcXVpcmUoJ29iamVjdC1zY2FuJyk7XG5jb25zdCB0cmVlID0gcmVxdWlyZSgnLi91dGlsL3RyZWUnKTtcblxubW9kdWxlLmV4cG9ydHMgPSAoe1xuICBmaWx0ZXIgPSB7fSxcbiAgaW5qZWN0ID0ge30sXG4gIG92ZXJ3cml0ZSA9IHt9LFxuICByZXRhaW4gPSBbJyoqJ10sXG4gIHJldGFpbkVtcHR5UGFyZW50cyA9IHRydWVcbn0pID0+IHtcbiAgY29uc3QgbmVlZGxlcyA9IFtcbiAgICAuLi5PYmplY3Qua2V5cyhmaWx0ZXIpLFxuICAgIC4uLk9iamVjdC5rZXlzKGluamVjdCksXG4gICAgLi4uT2JqZWN0LmtleXMob3ZlcndyaXRlKSxcbiAgICAuLi5yZXRhaW5cbiAgXTtcblxuICBjb25zdCB0b1JlbW92ZSA9IFtdO1xuICBjb25zdCB0b1JldGFpbiA9IFtdO1xuXG4gIGNvbnN0IHNjYW5uZXIgPSBvYmplY3RTY2FuKG5lZWRsZXMsIHtcbiAgICB1c2VBcnJheVNlbGVjdG9yOiBmYWxzZSxcbiAgICBqb2luZWQ6IGZhbHNlLFxuICAgIGNhbGxiYWNrRm46IChrZXksIHZhbHVlLCB7IGlzTWF0Y2gsIG5lZWRsZSwgcGFyZW50cyB9KSA9PiB7XG4gICAgICBhc3NlcnQoaXNNYXRjaCA9PT0gdHJ1ZSk7XG4gICAgICBpZiAoZmlsdGVyW25lZWRsZV0gIT09IHVuZGVmaW5lZCAmJiBmaWx0ZXJbbmVlZGxlXShrZXksIHZhbHVlLCBwYXJlbnRzKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgdG9SZW1vdmUucHVzaChrZXkpO1xuICAgICAgfVxuICAgICAgaWYgKHJldGFpbi5pbmNsdWRlcyhuZWVkbGUpKSB7XG4gICAgICAgIHRvUmV0YWluLnB1c2goa2V5KTtcbiAgICAgIH1cbiAgICAgIGlmIChpbmplY3RbbmVlZGxlXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24odmFsdWUsIGluamVjdFtuZWVkbGVdKGtleSwgdmFsdWUsIHBhcmVudHMpKTtcbiAgICAgIH1cbiAgICAgIGlmIChvdmVyd3JpdGVbbmVlZGxlXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGxhc3RTdHJpbmdJbmRleCA9IGtleS5yZWR1Y2UoKHAsIGMsIGlkeCkgPT4gKHR5cGVvZiBjID09PSAnc3RyaW5nJyA/IGlkeCA6IHApLCAwKTtcbiAgICAgICAgY29uc3QgZGlyZWN0UGFyZW50ID0ga2V5LnNsaWNlKGxhc3RTdHJpbmdJbmRleCwgLTEpLnJlZHVjZSgocCwgYykgPT4gcFtjXSwgcGFyZW50c1swXSk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICBkaXJlY3RQYXJlbnRba2V5LnNsaWNlKC0xKVswXV0gPSBvdmVyd3JpdGVbbmVlZGxlXShrZXksIHZhbHVlLCBwYXJlbnRzKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGFycmF5Q2FsbGJhY2tGbjogKGtleSwgdmFsdWUsIHsgbmVlZGxlIH0pID0+IHtcbiAgICAgIGlmIChyZXRhaW4uaW5jbHVkZXMobmVlZGxlKSkge1xuICAgICAgICB0b1JldGFpbi5wdXNoKGtleSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBicmVha0ZuOiAoa2V5LCB2YWx1ZSwgeyBuZWVkbGVzOiBuZGxzIH0pID0+IHtcbiAgICAgIGlmIChyZXRhaW5FbXB0eVBhcmVudHMgPT09IHRydWUgJiYgbmRscy5zb21lKG5kbCA9PiByZXRhaW4uaW5jbHVkZXMobmRsKSkpIHtcbiAgICAgICAgdG9SZXRhaW4ucHVzaChrZXkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIChpbnB1dCkgPT4ge1xuICAgIHNjYW5uZXIoaW5wdXQpO1xuICAgIHRyZWUucHJ1bmUoaW5wdXQsIHRvUmVtb3ZlLCB0b1JldGFpbik7XG4gICAgdG9SZW1vdmUubGVuZ3RoID0gMDtcbiAgICB0b1JldGFpbi5sZW5ndGggPSAwO1xuICB9O1xufTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJhc3NlcnQiLCJyZXF1aXJlIiwib2JqZWN0U2NhbiIsInRyZWUiLCJtb2R1bGUiLCJleHBvcnRzIiwiZmlsdGVyIiwiaW5qZWN0Iiwib3ZlcndyaXRlIiwicmV0YWluIiwicmV0YWluRW1wdHlQYXJlbnRzIiwibmVlZGxlcyIsIk9iamVjdCIsImtleXMiLCJ0b1JlbW92ZSIsInRvUmV0YWluIiwic2Nhbm5lciIsInVzZUFycmF5U2VsZWN0b3IiLCJqb2luZWQiLCJjYWxsYmFja0ZuIiwia2V5IiwidmFsdWUiLCJpc01hdGNoIiwibWF0Y2hlZEJ5IiwicGFyZW50cyIsInNvcnQiLCJzb21lIiwibiIsInVuZGVmaW5lZCIsInB1c2giLCJpbmNsdWRlcyIsImZvckVhY2giLCJhc3NpZ24iLCJsYXN0U3RyaW5nSW5kZXgiLCJyZWR1Y2UiLCJwIiwiYyIsImlkeCIsImRpcmVjdFBhcmVudCIsInNsaWNlIiwiYXJyYXlDYWxsYmFja0ZuIiwiYnJlYWtGbiIsInRyYXZlcnNlZEJ5IiwiaW5wdXQiLCJwcnVuZSIsImxlbmd0aCJdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTUEsTUFBTSxHQUFHQyxPQUFPLENBQUMsUUFBRCxDQUF0Qjs7QUFDQSxNQUFNQyxVQUFVLEdBQUdELE9BQU8sQ0FBQyxhQUFELENBQTFCOztBQUNBLE1BQU1FLElBQUksR0FBR0YsT0FBTyxDQUFDLGFBQUQsQ0FBcEI7O0FBRUFHLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQixDQUFDO0FBQ2hCQyxFQUFBQSxNQUFNLEdBQUcsRUFETztBQUVoQkMsRUFBQUEsTUFBTSxHQUFHLEVBRk87QUFHaEJDLEVBQUFBLFNBQVMsR0FBRyxFQUhJO0FBSWhCQyxFQUFBQSxNQUFNLEdBQUcsQ0FBQyxJQUFELENBSk87QUFLaEJDLEVBQUFBLGtCQUFrQixHQUFHO0FBTEwsQ0FBRCxLQU1YO0FBQ0osUUFBTUMsT0FBTyxHQUFHLENBQ2QsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVlQLE1BQVosQ0FEVyxFQUVkLEdBQUdNLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZTixNQUFaLENBRlcsRUFHZCxHQUFHSyxNQUFNLENBQUNDLElBQVAsQ0FBWUwsU0FBWixDQUhXLEVBSWQsR0FBR0MsTUFKVyxDQUFoQjtBQU9BLFFBQU1LLFFBQVEsR0FBRyxFQUFqQjtBQUNBLFFBQU1DLFFBQVEsR0FBRyxFQUFqQjtBQUVBLFFBQU1DLE9BQU8sR0FBR2QsVUFBVSxDQUFDUyxPQUFELEVBQVU7QUFDbENNLElBQUFBLGdCQUFnQixFQUFFLEtBRGdCO0FBRWxDQyxJQUFBQSxNQUFNLEVBQUUsS0FGMEI7QUFHbENDLElBQUFBLFVBQVUsRUFBRSxDQUFDQyxHQUFELEVBQU1DLEtBQU4sRUFBYTtBQUFFQyxNQUFBQSxPQUFGO0FBQVdDLE1BQUFBLFNBQVg7QUFBc0JDLE1BQUFBO0FBQXRCLEtBQWIsS0FBaUQ7QUFDM0R4QixNQUFBQSxNQUFNLENBQUNzQixPQUFPLEtBQUssSUFBYixDQUFOO0FBQ0FDLE1BQUFBLFNBQVMsQ0FBQ0UsSUFBVjs7QUFDQSxVQUFJRixTQUFTLENBQUNHLElBQVYsQ0FBZUMsQ0FBQyxJQUFJckIsTUFBTSxDQUFDcUIsQ0FBRCxDQUFOLEtBQWNDLFNBQWQsSUFBMkJ0QixNQUFNLENBQUNxQixDQUFELENBQU4sQ0FBVVAsR0FBVixFQUFlQyxLQUFmLEVBQXNCRyxPQUF0QixNQUFtQyxLQUFsRixDQUFKLEVBQThGO0FBQzVGVixRQUFBQSxRQUFRLENBQUNlLElBQVQsQ0FBY1QsR0FBZDtBQUNEOztBQUNELFVBQUlHLFNBQVMsQ0FBQ0csSUFBVixDQUFlQyxDQUFDLElBQUlsQixNQUFNLENBQUNxQixRQUFQLENBQWdCSCxDQUFoQixDQUFwQixDQUFKLEVBQTZDO0FBQzNDWixRQUFBQSxRQUFRLENBQUNjLElBQVQsQ0FBY1QsR0FBZDtBQUNEOztBQUNERyxNQUFBQSxTQUFTLENBQUNRLE9BQVYsQ0FBbUJKLENBQUQsSUFBTztBQUN2QixZQUFJcEIsTUFBTSxDQUFDb0IsQ0FBRCxDQUFOLEtBQWNDLFNBQWxCLEVBQTZCO0FBQzNCaEIsVUFBQUEsTUFBTSxDQUFDb0IsTUFBUCxDQUFjWCxLQUFkLEVBQXFCZCxNQUFNLENBQUNvQixDQUFELENBQU4sQ0FBVVAsR0FBVixFQUFlQyxLQUFmLEVBQXNCRyxPQUF0QixDQUFyQjtBQUNEO0FBQ0YsT0FKRDtBQUtBRCxNQUFBQSxTQUFTLENBQUNRLE9BQVYsQ0FBbUJKLENBQUQsSUFBTztBQUN2QixZQUFJbkIsU0FBUyxDQUFDbUIsQ0FBRCxDQUFULEtBQWlCQyxTQUFyQixFQUFnQztBQUM5QixnQkFBTUssZUFBZSxHQUFHYixHQUFHLENBQUNjLE1BQUosQ0FBVyxDQUFDQyxDQUFELEVBQUlDLENBQUosRUFBT0MsR0FBUCxLQUFnQixPQUFPRCxDQUFQLEtBQWEsUUFBYixHQUF3QkMsR0FBeEIsR0FBOEJGLENBQXpELEVBQTZELENBQTdELENBQXhCO0FBQ0EsZ0JBQU1HLFlBQVksR0FBR2xCLEdBQUcsQ0FBQ21CLEtBQUosQ0FBVU4sZUFBVixFQUEyQixDQUFDLENBQTVCLEVBQStCQyxNQUEvQixDQUFzQyxDQUFDQyxDQUFELEVBQUlDLENBQUosS0FBVUQsQ0FBQyxDQUFDQyxDQUFELENBQWpELEVBQXNEWixPQUFPLENBQUMsQ0FBRCxDQUE3RCxDQUFyQixDQUY4QixDQUc5Qjs7QUFDQWMsVUFBQUEsWUFBWSxDQUFDbEIsR0FBRyxDQUFDbUIsS0FBSixDQUFVLENBQUMsQ0FBWCxFQUFjLENBQWQsQ0FBRCxDQUFaLEdBQWlDL0IsU0FBUyxDQUFDbUIsQ0FBRCxDQUFULENBQWFQLEdBQWIsRUFBa0JrQixZQUFZLENBQUNsQixHQUFHLENBQUNtQixLQUFKLENBQVUsQ0FBQyxDQUFYLEVBQWMsQ0FBZCxDQUFELENBQTlCLEVBQWtEZixPQUFsRCxDQUFqQztBQUNEO0FBQ0YsT0FQRDtBQVFELEtBekJpQztBQTBCbENnQixJQUFBQSxlQUFlLEVBQUUsQ0FBQ3BCLEdBQUQsRUFBTUMsS0FBTixFQUFhO0FBQUVFLE1BQUFBO0FBQUYsS0FBYixLQUErQjtBQUM5QyxVQUFJQSxTQUFTLENBQUNHLElBQVYsQ0FBZUMsQ0FBQyxJQUFJbEIsTUFBTSxDQUFDcUIsUUFBUCxDQUFnQkgsQ0FBaEIsQ0FBcEIsQ0FBSixFQUE2QztBQUMzQ1osUUFBQUEsUUFBUSxDQUFDYyxJQUFULENBQWNULEdBQWQ7QUFDRDtBQUNGLEtBOUJpQztBQStCbENxQixJQUFBQSxPQUFPLEVBQUUsQ0FBQ3JCLEdBQUQsRUFBTUMsS0FBTixFQUFhO0FBQUVxQixNQUFBQTtBQUFGLEtBQWIsS0FBaUM7QUFDeEMsVUFBSWhDLGtCQUFrQixLQUFLLElBQXZCLElBQStCZ0MsV0FBVyxDQUFDaEIsSUFBWixDQUFpQkMsQ0FBQyxJQUFJbEIsTUFBTSxDQUFDcUIsUUFBUCxDQUFnQkgsQ0FBaEIsQ0FBdEIsQ0FBbkMsRUFBOEU7QUFDNUVaLFFBQUFBLFFBQVEsQ0FBQ2MsSUFBVCxDQUFjVCxHQUFkO0FBQ0Q7O0FBQ0QsYUFBTyxLQUFQO0FBQ0Q7QUFwQ2lDLEdBQVYsQ0FBMUI7QUF1Q0EsU0FBUXVCLEtBQUQsSUFBVztBQUNoQjNCLElBQUFBLE9BQU8sQ0FBQzJCLEtBQUQsQ0FBUDtBQUNBeEMsSUFBQUEsSUFBSSxDQUFDeUMsS0FBTCxDQUFXRCxLQUFYLEVBQWtCN0IsUUFBbEIsRUFBNEJDLFFBQTVCO0FBQ0FELElBQUFBLFFBQVEsQ0FBQytCLE1BQVQsR0FBa0IsQ0FBbEI7QUFDQTlCLElBQUFBLFFBQVEsQ0FBQzhCLE1BQVQsR0FBa0IsQ0FBbEI7QUFDRCxHQUxEO0FBTUQsQ0E5REQiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbmNvbnN0IG9iamVjdFNjYW4gPSByZXF1aXJlKCdvYmplY3Qtc2NhbicpO1xuY29uc3QgdHJlZSA9IHJlcXVpcmUoJy4vdXRpbC90cmVlJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gKHtcbiAgZmlsdGVyID0ge30sXG4gIGluamVjdCA9IHt9LFxuICBvdmVyd3JpdGUgPSB7fSxcbiAgcmV0YWluID0gWycqKiddLFxuICByZXRhaW5FbXB0eVBhcmVudHMgPSB0cnVlXG59KSA9PiB7XG4gIGNvbnN0IG5lZWRsZXMgPSBbXG4gICAgLi4uT2JqZWN0LmtleXMoZmlsdGVyKSxcbiAgICAuLi5PYmplY3Qua2V5cyhpbmplY3QpLFxuICAgIC4uLk9iamVjdC5rZXlzKG92ZXJ3cml0ZSksXG4gICAgLi4ucmV0YWluXG4gIF07XG5cbiAgY29uc3QgdG9SZW1vdmUgPSBbXTtcbiAgY29uc3QgdG9SZXRhaW4gPSBbXTtcblxuICBjb25zdCBzY2FubmVyID0gb2JqZWN0U2NhbihuZWVkbGVzLCB7XG4gICAgdXNlQXJyYXlTZWxlY3RvcjogZmFsc2UsXG4gICAgam9pbmVkOiBmYWxzZSxcbiAgICBjYWxsYmFja0ZuOiAoa2V5LCB2YWx1ZSwgeyBpc01hdGNoLCBtYXRjaGVkQnksIHBhcmVudHMgfSkgPT4ge1xuICAgICAgYXNzZXJ0KGlzTWF0Y2ggPT09IHRydWUpO1xuICAgICAgbWF0Y2hlZEJ5LnNvcnQoKTtcbiAgICAgIGlmIChtYXRjaGVkQnkuc29tZShuID0+IGZpbHRlcltuXSAhPT0gdW5kZWZpbmVkICYmIGZpbHRlcltuXShrZXksIHZhbHVlLCBwYXJlbnRzKSA9PT0gZmFsc2UpKSB7XG4gICAgICAgIHRvUmVtb3ZlLnB1c2goa2V5KTtcbiAgICAgIH1cbiAgICAgIGlmIChtYXRjaGVkQnkuc29tZShuID0+IHJldGFpbi5pbmNsdWRlcyhuKSkpIHtcbiAgICAgICAgdG9SZXRhaW4ucHVzaChrZXkpO1xuICAgICAgfVxuICAgICAgbWF0Y2hlZEJ5LmZvckVhY2goKG4pID0+IHtcbiAgICAgICAgaWYgKGluamVjdFtuXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgT2JqZWN0LmFzc2lnbih2YWx1ZSwgaW5qZWN0W25dKGtleSwgdmFsdWUsIHBhcmVudHMpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBtYXRjaGVkQnkuZm9yRWFjaCgobikgPT4ge1xuICAgICAgICBpZiAob3ZlcndyaXRlW25dICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBjb25zdCBsYXN0U3RyaW5nSW5kZXggPSBrZXkucmVkdWNlKChwLCBjLCBpZHgpID0+ICh0eXBlb2YgYyA9PT0gJ3N0cmluZycgPyBpZHggOiBwKSwgMCk7XG4gICAgICAgICAgY29uc3QgZGlyZWN0UGFyZW50ID0ga2V5LnNsaWNlKGxhc3RTdHJpbmdJbmRleCwgLTEpLnJlZHVjZSgocCwgYykgPT4gcFtjXSwgcGFyZW50c1swXSk7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG4gICAgICAgICAgZGlyZWN0UGFyZW50W2tleS5zbGljZSgtMSlbMF1dID0gb3ZlcndyaXRlW25dKGtleSwgZGlyZWN0UGFyZW50W2tleS5zbGljZSgtMSlbMF1dLCBwYXJlbnRzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBhcnJheUNhbGxiYWNrRm46IChrZXksIHZhbHVlLCB7IG1hdGNoZWRCeSB9KSA9PiB7XG4gICAgICBpZiAobWF0Y2hlZEJ5LnNvbWUobiA9PiByZXRhaW4uaW5jbHVkZXMobikpKSB7XG4gICAgICAgIHRvUmV0YWluLnB1c2goa2V5KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGJyZWFrRm46IChrZXksIHZhbHVlLCB7IHRyYXZlcnNlZEJ5IH0pID0+IHtcbiAgICAgIGlmIChyZXRhaW5FbXB0eVBhcmVudHMgPT09IHRydWUgJiYgdHJhdmVyc2VkQnkuc29tZShuID0+IHJldGFpbi5pbmNsdWRlcyhuKSkpIHtcbiAgICAgICAgdG9SZXRhaW4ucHVzaChrZXkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIChpbnB1dCkgPT4ge1xuICAgIHNjYW5uZXIoaW5wdXQpO1xuICAgIHRyZWUucHJ1bmUoaW5wdXQsIHRvUmVtb3ZlLCB0b1JldGFpbik7XG4gICAgdG9SZW1vdmUubGVuZ3RoID0gMDtcbiAgICB0b1JldGFpbi5sZW5ndGggPSAwO1xuICB9O1xufTtcbiJdfQ== |
{ | ||
"name": "object-rewrite", | ||
"version": "2.1.3", | ||
"version": "2.1.4", | ||
"description": "Rewrite an Object", | ||
@@ -10,3 +10,3 @@ "main": "lib/index.js", | ||
"dependencies": { | ||
"object-scan": "2.1.1" | ||
"object-scan": "3.0.0" | ||
}, | ||
@@ -16,11 +16,11 @@ "devDependencies": { | ||
"chai": "4.2.0", | ||
"coveralls": "3.0.2", | ||
"js-gardener": "1.35.0", | ||
"coveralls": "3.0.3", | ||
"js-gardener": "1.37.4", | ||
"nyc": "13.3.0", | ||
"semantic-release": "15.13.3", | ||
"@babel/register": "7.0.0", | ||
"@babel/core": "7.3.3", | ||
"@babel/core": "7.3.4", | ||
"@babel/cli": "7.2.3", | ||
"@babel/plugin-transform-flow-comments": "7.2.0", | ||
"@babel/plugin-proposal-object-rest-spread": "7.3.2", | ||
"@babel/plugin-proposal-object-rest-spread": "7.3.4", | ||
"@babel/preset-flow": "7.0.0" | ||
@@ -27,0 +27,0 @@ }, |
@@ -112,5 +112,5 @@ # object-rewrite | ||
## Deficiencies | ||
## Edge Cases | ||
Problems when different matchers are used between filter, inject, overwrite, retain that target the same elements. | ||
E.g. using `**` for retain, but `*.field` for inject. | ||
When different matchers target the same elements, all matcher functions are run in key-alphabetical order. | ||
Example of multi targeting would be e.g. using `**` and `*.field`. |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
22959
110
+ Addedobject-scan@3.0.0(transitive)
- Removedobject-scan@2.1.1(transitive)
Updatedobject-scan@3.0.0