You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

26 lines
622 B

'use strict'
var moduleName = require('../utils/module-name.js')
function andIsDev (name) {
return function (req) {
return req.package &&
req.package.devDependencies &&
req.package.devDependencies[name]
}
}
exports.isDev = function (node) {
return node.requiredBy.some(andIsDev(moduleName(node)))
}
function andIsOnlyDev (name) {
var isThisDev = andIsDev(name)
return function (req) {
return isThisDev(req) &&
(!req.package.dependencies || !req.package.dependencies[name])
}
}
exports.isOnlyDev = function (node) {
return node.requiredBy.every(andIsOnlyDev(moduleName(node)))
}