UNPKG

tateru-cli

Version:

Simple CLI static site builder tool with Twig.

27 lines 2.36 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.deepMerge = void 0; const isObject = (obj) => obj && typeof obj === 'object'; function deepMerge(...objects) { return objects.reduce((prev, obj) => { if (!isObject(prev) || !isObject(obj)) { return obj; } Object.keys(obj).forEach((key) => { const pVal = prev[key]; const oVal = obj[key]; if (Array.isArray(pVal) && Array.isArray(oVal)) { prev[key] = [...pVal, ...oVal]; } else if (isObject(pVal) && isObject(oVal)) { prev[key] = deepMerge(pVal, oVal); } else { prev[key] = oVal; } }); return prev; }, Array.isArray(objects[0]) ? [] : {}); } exports.deepMerge = deepMerge; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcE1lcmdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvcmUvdXRpbHMvZGVlcE1lcmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBUSxFQUFpQixFQUFFLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUU3RSxTQUFnQixTQUFTLENBQTZCLEdBQUcsT0FBVTtJQUMvRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQ2pCLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNuQyxPQUFPLEdBQUcsQ0FBQztTQUNkO1FBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUM3QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBZSxDQUFtQixDQUFDO1lBQ3JELE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxHQUFtQixDQUFtQixDQUFDO1lBRXhELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMzQyxJQUFZLENBQUMsR0FBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO2FBQ3ZEO2lCQUFNLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDeEMsSUFBWSxDQUFDLEdBQWUsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDMUQ7aUJBQU07Z0JBQ0YsSUFBWSxDQUFDLEdBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQzthQUN6QztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQyxFQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNqQyxDQUFDO0FBQ1gsQ0FBQztBQXhCRCw4QkF3QkMifQ==