UNPKG

discord.js-pages

Version:

Dynamic pages pagination module for discord.js

43 lines (35 loc) 965 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.mergeDeep = mergeDeep; var _isObject = require("./isObject"); function mergeDeep(target, ...sources) { if (!sources.length) { return target; } const source = sources.shift(); if ((0, _isObject.isObject)(target) && (0, _isObject.isObject)(source)) { for (const key in source) { const targetField = target[key]; const sourceField = source[key]; if ((0, _isObject.isObject)(sourceField)) { if (!targetField) { Object.assign(target, { [key]: {} }); } mergeDeep(target[key], sourceField); } else if (Array.isArray(sourceField)) { Object.assign(target, { [key]: [...(targetField || []), ...sourceField] }); } else { Object.assign(target, { [key]: sourceField }); } } } return mergeDeep(target, ...sources); }