_.mergeWith(old, ...fresh, (s, f) => { if (_.isArray(s)) return _.uniq(s.concat(f)); })
]; } else { publishFoldersInfo = _.mergeWith(publishFoldersInfo, getPublishStaticFiles(pageInclude.css, 'css'), getPublishStaticFiles(pageInclude.js, 'js'), getPublishImageFiles(pageInclude.images), mergeArrayConcatCustomizer);
filesInfo = _.mergeWith(filesInfo, imagesInfo, mergeArrayConcatCustomizer);
async getPermissions() { const permissions = {}; const mergeStrategy = function customizer(objValue, srcValue) { if (_.isArray(objValue)) { return _.uniq(objValue.concat(srcValue)); } }; const groups = await this.userManager.loadGroups(); _.each(groups, (group) => { if (_.includes(this.groups, group.name)) { _.mergeWith(permissions, group.permissions, mergeStrategy) } }); return permissions; }
parse(xmlPayload, callback) { this.xmlPayload = xmlPayload this.parser.parseString(this.xmlPayload, (err, results) => { if (err) { return callback(null, { message: this.xmlPayload.trim() }) } const parsedResults = _.mergeWith({}, results, function(a, b) { var obj = {} Object.keys(b).forEach(function(key) { if (key === '$') { obj.attribs = b[key] } else if (_.isArray(b[key])) { obj[key] = _.map(b[key], '$') } }) return obj }) return callback(null, parsedResults) }) }
_.mergeWith(opt, options || {}, function(objValue, srcValue, key) { if (key === 'bucket') { return srcValue; } })
apply(config) { _.mergeWith(this.config, config, (dest, src) => { if (typeof dest !== 'string') { return; } // If source object is array, convert to string, adding spaces between entries if (Array.isArray(src)) { return src.join(' '); } // Convert object to string if (typeof src === 'object') { return JSON.stringify(src); } }); }