diff options
Diffstat (limited to 'lib/utils/mergeDefaults.js')
-rw-r--r-- | lib/utils/mergeDefaults.js | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/utils/mergeDefaults.js b/lib/utils/mergeDefaults.js new file mode 100644 index 0000000..8266b85 --- /dev/null +++ b/lib/utils/mergeDefaults.js @@ -0,0 +1,10 @@ +var _ = require('lodash'); + +module.exports = _.partialRight(_.merge, function recursiveDefaults () { + // Ensure dates and arrays are not recursively merged + if (_.isArray(arguments[0]) || _.isDate(arguments[0])) { + return arguments[0]; + } + + return _.merge(arguments[0], arguments[1], recursiveDefaults); +}); |