key-path-mirror
Version:
Similar to keymirror but supports nested objects, built with TypeScript
24 lines • 753 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function keyPathMirror(obj, prefix) {
if (!isObject(obj)) {
throw new Error('1st argument should be an object');
}
var keyPathMirroredObj = {};
Object.keys(obj).forEach(function (key) {
var curPath = prefix ? "" + prefix + key : key;
var val = obj[key];
keyPathMirroredObj[key] = isObject(val)
? keyPathMirror(val, curPath + ".")
: curPath;
});
return keyPathMirroredObj;
}
exports.keyPathMirror = keyPathMirror;
function isObject(o) {
return (Object.prototype.toString
.call(o)
.slice(8, -1)
.toLowerCase() === 'object');
}
//# sourceMappingURL=key-path-mirror.js.map