Security News
The Dark Side of Open Source
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
@babel/plugin-transform-modules-commonjs
Advanced tools
Package description
The @babel/plugin-transform-modules-commonjs npm package is a Babel plugin that transforms ECMAScript modules to CommonJS modules. This is useful for enabling code written using ES6 module syntax to run in environments that only support CommonJS modules, such as older versions of Node.js or browsers without ES6 module support.
Transform ES6 import statements to CommonJS require
Converts ES6 import statements into CommonJS require calls.
import { square } from './math';
console.log(square(5));
// Transformed code:
var _math = require('./math');
console.log(_math.square(5));
Transform ES6 export statements to CommonJS exports
Converts ES6 named and default export statements into CommonJS module.exports assignments.
export const square = (n) => n * n;
export default square;
// Transformed code:
const square = (n) => n * n;
exports.square = square;
exports.default = square;
Interoperability with Babel's module interop helpers
Ensures compatibility with Babel's interopRequireDefault helper to handle default exports when importing modules.
import square from './math';
console.log(square(5));
// Transformed code with interopRequireDefault helper:
var _math = _interopRequireDefault(require('./math'));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
console.log(_math.default(5));
The 'esm' package is a lightweight runtime that allows you to load ES modules in Node.js. It differs from @babel/plugin-transform-modules-commonjs in that it doesn't require a build step and can directly execute ES modules in Node.js.
The '@rollup/plugin-commonjs' package is a plugin for Rollup that converts CommonJS modules into ES6 modules that Rollup can then bundle. It serves a similar purpose but is specific to the Rollup bundler, whereas @babel/plugin-transform-modules-commonjs is more general-purpose and can be used with various build tools that support Babel.
The 'babel-plugin-transform-es2015-modules-commonjs' package is an older Babel plugin that also transforms ES6 modules to CommonJS. It has been superseded by @babel/plugin-transform-modules-commonjs, which is part of the Babel 7 release.
Changelog
v7.24.1 (2024-03-19)
babel-helper-create-class-features-plugin
, babel-plugin-proposal-decorators
babel-plugin-proposal-decorators
, babel-plugin-proposal-json-modules
, babel-plugin-transform-async-generator-functions
, babel-plugin-transform-regenerator
, babel-plugin-transform-runtime
, babel-preset-env
moduleName
for @babel/runtime/regenerator
imports (@nicolo-ribaudo)babel-helper-create-class-features-plugin
, babel-plugin-proposal-decorators
, babel-plugin-proposal-pipeline-operator
, babel-plugin-transform-class-properties
babel-helper-create-class-features-plugin
, babel-helper-replace-supers
, babel-plugin-proposal-decorators
, babel-plugin-transform-class-properties
babel-code-frame
, babel-highlight
chalk
with picocolors
(@nicolo-ribaudo)babel-helper-fixtures
, babel-helpers
, babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression
, babel-plugin-proposal-pipeline-operator
, babel-plugin-transform-unicode-sets-regex
, babel-preset-env
, babel-preset-flow
babel-helpers
, babel-plugin-transform-async-generator-functions
, babel-plugin-transform-class-properties
, babel-plugin-transform-class-static-block
, babel-plugin-transform-modules-commonjs
, babel-plugin-transform-modules-systemjs
, babel-plugin-transform-regenerator
, babel-plugin-transform-runtime
, babel-preset-env
, babel-runtime-corejs3
, babel-runtime
, babel-standalone
babel-helper-module-imports
, babel-plugin-proposal-import-wasm-source
, babel-plugin-proposal-json-modules
, babel-plugin-proposal-record-and-tuple
, babel-plugin-transform-react-jsx-development
, babel-plugin-transform-react-jsx
babel-helper-create-class-features-plugin
, babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression
, babel-plugin-bugfix-v8-spread-parameters-in-optional-chaining
, babel-plugin-bugfix-v8-static-class-fields-redefine-readonly
, babel-plugin-external-helpers
, babel-plugin-proposal-async-do-expressions
, babel-plugin-proposal-decorators
, babel-plugin-proposal-destructuring-private
, babel-plugin-proposal-do-expressions
, babel-plugin-proposal-duplicate-named-capturing-groups-regex
, babel-plugin-proposal-explicit-resource-management
, babel-plugin-proposal-export-default-from
, babel-plugin-proposal-function-bind
, babel-plugin-proposal-function-sent
, babel-plugin-proposal-import-attributes-to-assertions
, babel-plugin-proposal-import-defer
, babel-plugin-proposal-import-wasm-source
, babel-plugin-proposal-json-modules
, babel-plugin-proposal-optional-chaining-assign
, babel-plugin-proposal-partial-application
, babel-plugin-proposal-pipeline-operator
, babel-plugin-proposal-record-and-tuple
, babel-plugin-proposal-regexp-modifiers
, babel-plugin-proposal-throw-expressions
, babel-plugin-syntax-async-do-expressions
, babel-plugin-syntax-decimal
, babel-plugin-syntax-decorators
, babel-plugin-syntax-destructuring-private
, babel-plugin-syntax-do-expressions
, babel-plugin-syntax-explicit-resource-management
, babel-plugin-syntax-export-default-from
, babel-plugin-syntax-flow
, babel-plugin-syntax-function-bind
, babel-plugin-syntax-function-sent
, babel-plugin-syntax-import-assertions
, babel-plugin-syntax-import-attributes
, babel-plugin-syntax-import-defer
, babel-plugin-syntax-import-reflection
, babel-plugin-syntax-import-source
, babel-plugin-syntax-jsx
, babel-plugin-syntax-module-blocks
, babel-plugin-syntax-optional-chaining-assign
, babel-plugin-syntax-partial-application
, babel-plugin-syntax-pipeline-operator
, babel-plugin-syntax-record-and-tuple
, babel-plugin-syntax-throw-expressions
, babel-plugin-syntax-typescript
, babel-plugin-transform-arrow-functions
, babel-plugin-transform-async-generator-functions
, babel-plugin-transform-async-to-generator
, babel-plugin-transform-block-scoped-functions
, babel-plugin-transform-block-scoping
, babel-plugin-transform-class-properties
, babel-plugin-transform-class-static-block
, babel-plugin-transform-classes
, babel-plugin-transform-computed-properties
, babel-plugin-transform-destructuring
, babel-plugin-transform-dotall-regex
, babel-plugin-transform-duplicate-keys
, babel-plugin-transform-dynamic-import
, babel-plugin-transform-exponentiation-operator
, babel-plugin-transform-export-namespace-from
, babel-plugin-transform-flow-comments
, babel-plugin-transform-flow-strip-types
, babel-plugin-transform-for-of
, babel-plugin-transform-function-name
, babel-plugin-transform-instanceof
, babel-plugin-transform-jscript
, babel-plugin-transform-json-strings
, babel-plugin-transform-literals
, babel-plugin-transform-logical-assignment-operators
, babel-plugin-transform-member-expression-literals
, babel-plugin-transform-modules-amd
, babel-plugin-transform-modules-commonjs
, babel-plugin-transform-modules-systemjs
, babel-plugin-transform-modules-umd
, babel-plugin-transform-new-target
, babel-plugin-transform-nullish-coalescing-operator
, babel-plugin-transform-numeric-separator
, babel-plugin-transform-object-assign
, babel-plugin-transform-object-rest-spread
, babel-plugin-transform-object-set-prototype-of-to-assign
, babel-plugin-transform-object-super
, babel-plugin-transform-optional-catch-binding
, babel-plugin-transform-optional-chaining
, babel-plugin-transform-parameters
, babel-plugin-transform-private-methods
, babel-plugin-transform-private-property-in-object
, babel-plugin-transform-property-literals
, babel-plugin-transform-property-mutators
, babel-plugin-transform-proto-to-assign
, babel-plugin-transform-react-constant-elements
, babel-plugin-transform-react-display-name
, babel-plugin-transform-react-inline-elements
, babel-plugin-transform-react-jsx-compat
, babel-plugin-transform-react-jsx-self
, babel-plugin-transform-react-jsx-source
, babel-plugin-transform-react-pure-annotations
, babel-plugin-transform-regenerator
, babel-plugin-transform-reserved-words
, babel-plugin-transform-runtime
, babel-plugin-transform-shorthand-properties
, babel-plugin-transform-spread
, babel-plugin-transform-sticky-regex
, babel-plugin-transform-strict-mode
, babel-plugin-transform-template-literals
, babel-plugin-transform-typeof-symbol
, babel-plugin-transform-typescript
, babel-plugin-transform-unicode-escapes
, babel-plugin-transform-unicode-property-regex
, babel-plugin-transform-unicode-regex
, babel-plugin-transform-unicode-sets-regex
, babel-preset-env
, babel-preset-flow
, babel-preset-react
, babel-preset-typescript
babel-compat-data
, babel-plugin-transform-object-rest-spread
, babel-preset-env
@babel/compat-data
package.json (@nicolo-ribaudo)babel-helper-replace-supers
, babel-plugin-transform-class-properties
, babel-plugin-transform-classes
, babel-plugin-transform-parameters
, babel-plugin-transform-runtime
assertThisInitialized
after super()
(@liuxingbaoyu)babel-plugin-transform-class-properties
, babel-plugin-transform-classes
assertThisInitialized
more often (@liuxingbaoyu)babel-plugin-proposal-decorators
, babel-plugin-transform-class-properties
, babel-plugin-transform-object-rest-spread
, babel-traverse
babel-core
, babel-plugin-external-helpers
, babel-plugin-proposal-decorators
, babel-plugin-proposal-function-bind
, babel-plugin-transform-class-properties
, babel-plugin-transform-classes
, babel-plugin-transform-flow-comments
, babel-plugin-transform-flow-strip-types
, babel-plugin-transform-function-name
, babel-plugin-transform-modules-systemjs
, babel-plugin-transform-parameters
, babel-plugin-transform-private-property-in-object
, babel-plugin-transform-react-jsx
, babel-plugin-transform-runtime
, babel-plugin-transform-spread
, babel-plugin-transform-typescript
, babel-preset-env
Readme
This plugin transforms ES2015 modules to CommonJS
See our website @babel/plugin-transform-modules-commonjs for more information.
Using npm:
npm install --save-dev @babel/plugin-transform-modules-commonjs
or using yarn:
yarn add @babel/plugin-transform-modules-commonjs --dev
FAQs
This plugin transforms ES2015 modules to CommonJS
The npm package @babel/plugin-transform-modules-commonjs receives a total of 25,031,138 weekly downloads. As such, @babel/plugin-transform-modules-commonjs popularity was classified as popular.
We found that @babel/plugin-transform-modules-commonjs demonstrated a healthy version release cadence and project activity because the last version was released less than 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
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.
Security News
OpenJS is warning of social engineering takeovers targeting open source projects after receiving a credible attempt on the foundation.