Registry / http-networking / babel-plugin-transform-inline-imports-commonjs

babel-plugin-transform-inline-imports-commonjs

JSON →
library1.2.0jsnpmunverified

A Babel plugin (v1.2.0, last updated 2019) that transforms ES module imports into lazily loaded, memoized CommonJS requires, deferring require() calls until the imported identifier is actually referenced. Unlike the standard babel-plugin-transform-es2015-modules-commonjs, this avoids upfront I/O and execution costs for imported modules. Maintained by the author of babel-plugin-module-resolver, but now in maintenance mode as most projects have moved to @babel/preset-env or other bundlers. Supports options like excludeModules and excludeNodeBuiltins to skip lazy loading for specific modules or Node builtins. No TypeScript types, minimal breaking changes across versions.

npm install babel-plugin-transform-inline-imports-commonjs
INSTALL
IMPORT
SIG · BABEL-PLUGIN-TRANS
B
babel-plugin-transform-inline-imports-commonjs
http-networkingjavascriptv1.2.0
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
module.exports = require('babel-plugin-transform-inline-imports-commonjs')
import plugin from 'babel-plugin-transform-inline-imports-commonjs'
This is a Babel plugin, not a runtime package. It should be listed in .babelrc or babel.config.js, not imported in code. Common mistake is to try to import it in source files.
babel-plugin-transform-inline-imports-commonjs
// .babelrc { "plugins": ["transform-inline-imports-commonjs"] }
// Incorrect path { "plugins": ["@babel/plugin-transform-inline-imports-commonjs"] }
The package name does not include the @babel/ scope. Use the exact name as published.
excludeModules
// .babelrc { "plugins": [["transform-inline-imports-commonjs", { "excludeModules": ["atom"] }]] }
// Typo in option name { "plugins": [["transform-inline-imports-commonjs", { "exclude": ["atom"] }]] }
Option is 'excludeModules', not 'exclude'. Available since v1.0.0.

Shows Babel plugin configuration with exclusion options and a sample import that gets lazily loaded.

// .babelrc { "plugins": [ ["transform-inline-imports-commonjs", { "excludeNodeBuiltins": true, "excludeModules": ["react"] }] ] } // index.js (will be transformed) import express from 'express'; const app = express(); export default app;
Debug
Known issues
deprecatedThis plugin is in maintenance mode; it has not been updated since Babel 6 era. For Babel 7+, consider using @babel/plugin-transform-modules-commonjs with lazy evaluation via other means.
fix
Migrate to @babel/preset-env or @babel/plugin-transform-modules-commonjs with babel-plugin-lazy-require or similar.
affects: >=1.0.0
breakingIn version 1.0.0, the option 'exclude' was renamed to 'excludeModules'.
fix
Use 'excludeModules' instead of 'exclude' in plugin options.
affects: <1.0.0
gotchaIf you use this plugin alongside @babel/plugin-transform-runtime, the lazy loading may conflict with runtime helpers.
fix
Order plugins correctly: transform-inline-imports-commonjs should come before transform-runtime in your plugin list.
affects: >=0.1.0
gotchaLazy loading can cause issues with circular dependencies because the require is deferred until the variable is used.
fix
Use the 'excludeModules' option to skip lazy loading for modules involved in circular dependencies.
affects: >=0.1.0
Errors
Common errors & fixes
Error: Plugin/Preset files are not allowed to export objects, only functions.
Using the plugin incorrectly with a bundler that doesn't support Babel 6-style plugins, or using a Babel 7 package with Babel 6.
fix
Ensure you are using Babel 6 with this plugin. For Babel 7, use a different module transformation plugin.
Cannot find module 'babel-plugin-transform-inline-imports-commonjs'
Package not installed or wrong name in .babelrc.
fix
Run: npm install --save-dev babel-plugin-transform-inline-imports-commonjs and verify the name in .babelrc.
Upgrade
Version history
1.2.0latest on npm
Audit
Dependencies
@babel/corerequiredRequired peer dependency for any Babel plugin
Agent activity
14 hits · last 30 days
node
12
OpenAI (training)
2
Resources
babel-plugin-transform-inline-imports-commonjs — npm install babel-plugin-transform-inline-imports-commonjs · libregistry