deps-object
Advanced tools
Comparing version 1.0.3 to 1.1.0
@@ -30,3 +30,3 @@ 'use strict'; | ||
// depObject :: String -> Object | ||
var depObject = _ramda2.default.pipe(_ramda2.default.split('@'), _ramda2.default.apply(_ramda2.default.objOf)); | ||
var depObject = _ramda2.default.pipe(_ramda2.default.split('@'), _ramda2.default.splitAt(-1), _ramda2.default.map(_ramda2.default.join('@')), _ramda2.default.apply(_ramda2.default.objOf)); | ||
@@ -38,4 +38,4 @@ // depLatestObject :: String -> Object | ||
// completeDep :: String -> Promise Object | ||
var completeDep = _ramda2.default.ifElse(_ramda2.default.contains('@'), depObject, depLatestObject); | ||
// completeDependency :: String -> Promise Object | ||
var completeDependency = _ramda2.default.ifElse(_ramda2.default.contains('@'), depObject, depLatestObject); | ||
@@ -45,8 +45,15 @@ // isArrayOfStrings :: Input -> Boolean | ||
// saveToDeps :: Array[String] -> Object | ||
var saveToDeps = _ramda2.default.pipeP(resolve, _ramda2.default.unless(isArrayOfStrings, function () { | ||
return reject('deps should be an Array[String]'); | ||
}), _ramda2.default.map(completeDep), all, _ramda2.default.mergeAll, _sortedObject2.default); | ||
// depsObject :: Array[String] -> Object -> Object | ||
var depsObject = function depsObject(deps) { | ||
var initDeps = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; | ||
return _ramda2.default.pipeP(resolve, _ramda2.default.unless(isArrayOfStrings, function () { | ||
return reject('deps should be an Array[String]'); | ||
}), _ramda2.default.unless(function () { | ||
return _ramda2.default.is(Object, initDeps); | ||
}, function () { | ||
return reject('initDeps should be an Object'); | ||
}), _ramda2.default.map(completeDependency), all, _ramda2.default.prepend(initDeps), _ramda2.default.mergeAll, _sortedObject2.default)(deps); | ||
}; | ||
exports.default = saveToDeps; | ||
exports.default = depsObject; | ||
module.exports = exports['default']; |
{ | ||
"name": "deps-object", | ||
"version": "1.0.3", | ||
"version": "1.1.0", | ||
"description": "Transform dependencies Array into an Object", | ||
@@ -5,0 +5,0 @@ "main": "index.es5.js", |
@@ -17,5 +17,5 @@ # deps-object | ||
```js | ||
import saveToDeps from 'deps-object'; | ||
import depsObject from 'deps-object'; | ||
saveToDeps(['ava', 'nyc@^6.0.0', 'rimraf@2.5.2']) | ||
depsObject(['ava', 'nyc@^6.0.0', 'rimraf@2.5.2']) | ||
.then(item => console.log(item)); | ||
@@ -27,2 +27,9 @@ /* { | ||
} */ | ||
depsObject(['@sindresorhus/df'], { nyc: '^6.0.0' }) | ||
.then(item => console.log(item)); | ||
/* { | ||
'@sindresorhus/df': '^1.0.1', | ||
nyc: '^6.0.0', | ||
} */ | ||
``` | ||
@@ -32,5 +39,5 @@ | ||
### saveToDeps(deps) | ||
### depsObject(deps, initDeps) | ||
// saveToDeps :: Array[String] -> Promise Object` | ||
// depsObject :: Array[String] -> Object -> Promise Object` | ||
@@ -46,3 +53,10 @@ Return a promise that resolves to dependencies object. | ||
#### initDeps | ||
Type: `Object` | ||
Default: `{}` | ||
Initial dependencies object in which result dependencies object will be merged in and sorted. | ||
## License | ||
@@ -49,0 +63,0 @@ |
5717
39
73