Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
broccoli-es6modules
Advanced tools
#broccoli-es6modules
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
.
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 2,461 weekly downloads. As such, broccoli-es6modules popularity was classified as 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.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.