broccoli-dependency-funnel
v2.1.2
Published
Funnels a set of files included (or excluded) from a JS dependency graph
Downloads
34,317
Readme
broccoli-dependency-funnel
This Broccoli plugin funnels a set of files included (or excluded) from a JS dependency graph.
In other words, you specify an ES6 module as an entry point and the plugin will walk its import graph and only copy-forward the files included in the graph. Alternatively, you can copy forward all files except those in the graph.
Usage
const DependencyFunnel = require('broccoli-dependency-funnel');
const input = 'src'; // Can be a directory or Broccoli plugin/node
module.exports = new DependencyFunnel(input, {
include: true,
entry: 'app.js',
external: [ 'lodash' ]
});
Options
include
/exclude
: you must specify exactly one of these options set totrue
. This determines whether the files included in the dependency graph or the files excluded from the dependency graph will be funneled forward.entry
: you must specify an entry point to the dependency graph you wish to funnel. This should be a string path relative the input directory/node.external
: an optional array of imports to be treated as external, meaning they aren't present in the given input directory structure.
Development
Installation
git clone <repository-url>
cd broccoli-dependency-funnel
npm install
Testing
npm run test
ornpm run test:debug