A Broccoli plugin that transpiles ES6 modules to other module types using Square's es6-module-transpiler.
Note: The es6-module-transpiler
package underwent a major refactor after
v0.4.0
, the previous version of this package that works with the older
transpiler is available on the transpiler-0.4
branch.
var compileModules = require('broccoli-es6-module-transpiler');
var transpiledLib = compileModules(lib, {
formatter: 'commonjs'
});
The bundle format is perfect for packaging your app's modules into one file that can be loaded in the browser without needing a module loader.
var compileModules = require('broccoli-es6-module-transpiler');
var transpiledLib = compileModules(lib, {
formatter: 'bundle',
output : 'app.js'
});
Note: The output
option has a specified value to tell the transpiler where
to output the new JavaScript file that contains the bundled transpiled modules.
An output
value is required when using the Bundle Format.
The latest version of Square's transpiler is flexible and pluggable, and while it doesn't ship with AMD support built-in you can use the AMD formatter: es6-module-transpiler-amd-formatter.
var compileModules = require('broccoli-es6-module-transpiler');
var AMDFormatter = require('es6-module-transpiler-amd-formatter');
var transpiledLib = compileModules(lib, {
formatter: new AMDFormatter()
});
options.formatter
{String | Object}
The formatter instance or built-in name to use to transpile the modules.
Built-in formatters: bundle
, commonjs
.
Default: bundle
.
options.resolvers
{Array}
An array of resolver classes used to resolve modules to their source code.
Default: [ FileResolver ]
.
options.output
{String}
The path where the transpiler should output the transpiled modules to. For formatters that output one file per module, this should be a directory, while formatters like the Bundle Format require a value for this option and it must be a file path.
Default: "."
.
options.basePath
{String}
The path used to resolve the transpiled modules' source paths against. The resolved path will then serve as the sourceFileName
value for the module in the output file's source map.
Default: srcDir
.
options.sourceRoot
{String}
The path to use as the sourceRoot
value in the output file's source map.
Default: "/"
.
options.description
{String}
Used to add a description to the top of the compiled file.