Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds node-style experimental ES modules support. pass
esm: true
to interpret.mjs
files as ES modules.ES modules get a
rec.esm
property so that later parts in the browserify pipeline can identify them.rec.esm
is an object containing properties:rec.esm.imports
- array of imported bindingsrec.esm.exports
- array of exported bindingsImported bindings are objects of the form:
binding.from
- source module (value"a"
inimport "a"
)binding.import
- imported bindingbinding.as
- local name for the binding (often the same asbinding.import
)binding.esm
- true if the source module is also an ES module, false if it is a commonjs module.Exported bindings are objects of the form:
binding.export
- local name of the binding (can be undefined ifexport default
-ing an unnamed expression)binding.as
- public name of the bindingTransforms can check
opts._flags.esm
to see if the module being transformed is an ES module (true) or a CommonJS module (false). It might be useful if transforms could also setopts._flags.esm
to mark their output as an ES module, for languages that compile to ES modules.