Bubléify
A browserify transform for Bublé to transform ES2015 to ES5.
Installation
npm install --save-dev bubleify
Usage
Node
const browserify = require('browserify');
const bubleify = require('bubleify');
const b = browserify();
b.add('./file.es2015.js'));
b.transform(bubleify, {
target: {
chrome: 48,
firefox: 44,
},
transforms: {
arrow: true,
defaultParameter: false,
dangerousForOf: true,
},
});
b.bundle();
CLI
browserify script.js -o bundle.js -t [ bubleify ]
Options
target: Object
Target specifies a list of environments the output file should be compatible to. Bublè will decide based on this list which transforms should be used.
transforms: Object
Transforms define which ES2015 features should or should not be transformed into ES5.
Bublèify by default disables the module
transform to not throw an error when ES2015 import
and export
statements are used. If you want to use ES2015 modules you should add another transform to do so.
Find a list of all transforms on the Bublè documentation in section list of transforms. For more detailed information about each transform also see supported features and dangerous transforms.
sourceMap: Boolean
Define whether an inline source map should or should not be created by Bublé.
Default is true
.
Please note that browserify will not output any source map if debug mode is false
, even if sourceMap was set to true
.
extensions: Array
The allowed file extensions that should be transformed with Bublé. Files included into the stream that do not match an extension will be ignored by Bubléify.
Default is ['.js', '.jsx', '.es', '.es6']
.
bubleError: Boolean
Define whether the error generated by Bublè or a the Bublè error message as a string should be emitted in case of an error.
Default is false
.
Bublè may in some situations throw a custom error. Browserify will, when used on the command line, just output the call stack in this situation but does not show the error message. Turning this option on will display the error message but suppresses the call stack.
Credits
Thanks goes to Rich Harris for the Bublè package.
License
Licensed under the MIT License.