broccoli-es6-module-filter

broccoli filter for es6 modules

Usage no npm install needed!

<script type="module">
  import broccoliEs6ModuleFilter from 'https://cdn.skypack.dev/broccoli-es6-module-filter';
</script>

README

broccoli-es6-module-filter

Build Status

Transpile modules authored in ES6 to other module types.

Installation

npm install --save broccoli-es6-module-filter

Usage (Sample Brocfile.js)

var filterES6Modules = require('broccoli-es6-module-filter');
var pickFiles = require('broccoli-static-compiler');

module.exports = function (broccoli) {

  // say we're creating a third-party component, we'd house our
  // source code in './lib'
  var tree = broccoli.makeTree('lib');

  // create a CJS version
  var cjsTree = filterES6Modules(pickFiles(tree, {
    srcDir: '/',
    destDir: '/cjs'
  }));

  // and AMD
  var amdTree = filterES6Modules(pickFiles(tree, {
    srcDir: '/',
    destDir: '/amd'
  }), {
    moduleType: 'amd'
  });

  return [cjsTree, amdTree];
};

And then from the command line:

$ broccoli build output

Options

  • moduleType - amd or cjs

  • anonymous - for amd output, whether or not to name your modules.

  • packageName - for named-amd output, prepends packageName/ to your module names

  • main - for named-amd output, which file is the main entry point of your module that will be returned with require(['your-package'])

  • every other option supported by the transpiler