diff options
author | Samy Pessé <samypesse@gmail.com> | 2016-06-07 10:48:04 +0200 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2016-06-07 10:48:04 +0200 |
commit | cedfa186f2142633a3e219d6713b38fda62dccab (patch) | |
tree | 360f5a40e5efaf6d6b5acc11be9abfaf71b9559a /lib | |
parent | 80f0d1bfed75b35e68d587fc79fd22d3704acc71 (diff) | |
download | gitbook-cedfa186f2142633a3e219d6713b38fda62dccab.zip gitbook-cedfa186f2142633a3e219d6713b38fda62dccab.tar.gz gitbook-cedfa186f2142633a3e219d6713b38fda62dccab.tar.bz2 |
Remove merge-defaults dependency
Diffstat (limited to 'lib')
-rw-r--r-- | lib/parse/validateConfig.js | 2 | ||||
-rw-r--r-- | lib/plugins/validateConfig.js | 2 | ||||
-rw-r--r-- | lib/utils/mergeDefaults.js | 10 |
3 files changed, 12 insertions, 2 deletions
diff --git a/lib/parse/validateConfig.js b/lib/parse/validateConfig.js index 855edc3..21294ac 100644 --- a/lib/parse/validateConfig.js +++ b/lib/parse/validateConfig.js @@ -1,9 +1,9 @@ var jsonschema = require('jsonschema'); var jsonSchemaDefaults = require('json-schema-defaults'); -var mergeDefaults = require('merge-defaults'); var schema = require('../constants/configSchema'); var error = require('../utils/error'); +var mergeDefaults = require('../utils/mergeDefaults'); /** Validate a book.json content diff --git a/lib/plugins/validateConfig.js b/lib/plugins/validateConfig.js index 37f3c96..fab1fef 100644 --- a/lib/plugins/validateConfig.js +++ b/lib/plugins/validateConfig.js @@ -1,10 +1,10 @@ var Immutable = require('immutable'); var jsonschema = require('jsonschema'); var jsonSchemaDefaults = require('json-schema-defaults'); -var mergeDefaults = require('merge-defaults'); var Promise = require('../utils/promise'); var error = require('../utils/error'); +var mergeDefaults = require('../utils/mergeDefaults'); /** Validate one plugin for a book and update book's confiration 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); +}); |