Security News
Create React App Officially Deprecated Amid React 19 Compatibility Issues
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
broccoli-es6modules
Advanced tools
#broccoli-es6modules
Unmaintained! This project is no longer being maintained by the Ember CLI team.
Ember CLI has switched over to the broccoli-babel-transpiler and ember-cli-babel plugins.
If you would like to take off maintenance of this project please let us know!
ES6Modules is a broccoli filter that transpiles source code in a project from ES6 modules to ES5 modules in AMD, CJS, or UMD styles.
ES6Modules has two modes of transpilation: 1-to-1 (per-file) and n-to-1 (bundled);
1-to-1 mode transpiles every file in a tree from ES6 to the format specified
as the format
option.
For example, if you have the following directory:
src/
├── lib
│ ├── promise.js
│ ├── rsvp.js
│ └── utils.js
└── main.js
And convert the files using ES6Modules:
var tree = './src';
var ES6Modules = require('broccoli-es6modules');
var amdFiles = new ES6Modules(tree, {
format: 'amd'
});
You will have the following tree in your compiled output
├── lib
│ ├── promise.js
│ ├── rsvp.js
│ └── utils.js
└── main.js
And each file's contents will be converted from ES6 module syntax to AMD style.
n-to-1 mode begins transpiling at a single entry point and walks the dependency graph starting with the imported statements in the entry point.
This will result in a single, bundled file for your library containing any
files referenced by import
statements. Enable this mode by supplying a
bundleOptions
option with (at least) a name
for your resulting file and a
file to be the entry
point:
For example, if you have the following directory:
src/
├── lib
│ ├── promise.js
│ ├── rsvp.js
│ └── utils.js
└── main.js
And convert these files using ES6Modules:
var tree = './src';
var ES6Modules = require('broccoli-es6modules');
var amdFiles = new ES6Modules(tree, {
format: 'amd',
bundleOptions: {
entry: 'main.js',
name: 'myLib'
}
});
You will have the following tree in your compiled output
└── myLib.js
The contents of that file will be any code imported from main.js
's import process.
The ES5 module format to convert to. Available options are:
In namedAmd
the file path (with '.js' removed) of the file relative to the tree root
is used as the module's name.
So, if you have the following tree:
├── inner
│ └── first.js
└── outer.js
You will have the following module names passed to AMD's define
call:
'bundle', 'inner/first', and 'outer'.
Because this strategy combined with UMD would result in many properties being set on
the window
object in the browser, umd
format will throw an error if used without also
providing bundleOptions
.
An optional function for namedAmd
module format to customize the module name passed to esperanto.
For example if you have foo/bar.js
:
export default function() {
}
and a formatModuleName
option of:
formatModuleName: function(moduleName) {
return moduleName.replace('foo/', '');
}
Esperanto will give you:
define('bar', ['exports'], function(exports) {
'use strict';
exports['default'] = function() {
}
});
ES6Modules wraps the esperanto library. All options described for esperanto can be provided here. All defaults are identical to those used by esperanto.
Because the ES6Modules uses each file's name as its module name, the esperanto amdName
and
sourceMapSource
options are ignored.
ES6Modules wraps the esperanto library. All options described for esperanto bundling can be provided here. All defaults are identical to those used by esperanto.
The value you provide for esperantoOptions
will be passed to result of bundling, resulting
in a single output file.
FAQs
An es6 module transpiler & concatenator for broccoli.
The npm package broccoli-es6modules receives a total of 655 weekly downloads. As such, broccoli-es6modules popularity was classified as not popular.
We found that broccoli-es6modules demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.