@lunaticmuch/front-matter-manipulator
Version:
A utility for parsing and manipulating documents with Front Matter
20 lines (18 loc) • 621 B
JavaScript
export default function uniqueKeys(dest, source) {
if (typeof source[0] === 'object' && !Array.isArray(source[0])) {
var returnObj = {};
var keys = Object.keys(source.reduce(function(result, obj) {
return Object.assign(result, obj);
}, {}));
for (var i = 0; i < source.length; i++) {
keys.map(function(k) {
if(returnObj[k] === undefined)
returnObj[k] = source[i][k];
});
}
return returnObj;
} else if (Array.isArray(source[0])) {
return uniqueKeys(source);
}
return source;
}