UNPKG

641 Btext/coffeescriptView Raw
1_ = require 'lodash'
2logger = require 'torch'
3
4getKeys = (obj) ->
5 if obj? then Object.keys(obj) else undefined
6
7module.exports = (pkg, blacklist) ->
8
9 dependencies = _.union getKeys(pkg?.dependencies), getKeys(pkg?.devDependencies)
10
11 # Filter out non-axiom NPM modules
12 axiomNpmModules = dependencies.filter (dep) -> /^axiom-\S\S*/.test dep
13
14 # Remove the 'axiom-' prefix
15 axiomModules = axiomNpmModules.map (m) -> m.slice('axiom-'.length)
16
17 # We only want the axiom modules not blacklisted, so take the
18 # set difference of 'axiomModules' \ 'blacklist'.
19 axiomModules = _.difference axiomModules, blacklist
20
21 return axiomModules