babel-plugin-system-import-transformer weekly downloads statistics
By thgreasi · npm · Babel plugins
Babel plugin that replaces System.import with the equivalent UMD pattern
babel-plugin-system-import-transformer has 41,680 recorded weekly downloads on npm, a decrease of 30.3% over the past 30 days, ranking #625 of 2,322 tracked listings.
About babel-plugin-system-import-transformer
babel-plugin-system-import-transformer
Babel plugin that replaces import() & System.import() with the equivalent UMD pattern
Transforms
import('./utils/serializer').then(function(module){
console.log(module);
});
// AND
System.import('./utils/serializer').then(function(module){
console.log(module);
});
to
new Promise(function (resolve, reject) {
var global = window;
if (typeof global.define === 'function' && global.define.amd) {
global.require(['utilsSerializer'], resolve, reject);
} else if (typeof module !== 'undefined' && (module.exports && typeof require !== 'undefined') ||
typeof module !== 'undefined' && (module.component && (global.require && global.require.loader === 'component'))) {
resolve(require('./utils/serializer'));
} else {
resolve(global['utilsSerializer']);
}
}).then(function(module){
console.log(module);
});
Requirements
- Babel v7.x.x
Notes:
- for babel ^6.14.0 please use the v3.x.x releases.
- for babel <6.14 please use the v2.x.x releases.
- for babel v5 please use the v1.x.x releases.
Installation
npm install babel-plugin-system-import-transformer
Add "system-import-transformer" to your plugins argument or inside the plugins options of your Gruntfile.
// in .babelrc
{
"plugins": [
"system-import-transformer"
]
}
// in grunt.js
babel: {
options: {
plugins: ["system-import-transformer"]
}
}
Configuration
Relative paths and Aliases
The babel's getModuleId option (if defined) is used for the AMD and Global Module import.
babel: {
options: {
moduleIds: true,
getModuleId: function(moduleName) {
var files = {
'src/utils/serializer': 'utilsSerializer'
};
return files[moduleName] || moduleName.replace('src/', '');
},
plugins: ['system-import-transformer']
}
}
Options
commonJS
CommonJS specific options.
commonJS.useRequireEnsure
Type: Boolean
Values: [false/true]
When set to true, all CommonJS import statements will use Webpack's require.ensure() syntax. This enables dynamic module loading in CommonJS (Webpack) and works both for the UMD and (of course) CommonJS module target types.
{
"plugins": [
["system-import-transformer", { "commonJS": { "useRequireEnsure": true } }]
]
}
// the CommonJS code part will look like:
new Promise(function (resolve) {
require.ensure([], function (require) {
resolve(require('./utils/serializer'));
});
}).then(function(module){ console.log(module); });
modules
Type: String
Values: [UMD/amd/common]
Example
Specifies the target compilation module system. When set configured to an option other than UMD then system-import-transformer will omit the module type detection code and just insert the appropriate require statement wrapped with a Promise.
// targeting AMD
{
"plugins": [
["system-import-transformer", { "modules": "amd" }]
]
}
// will emit an AMD specific code like:
new Promise(function (resolve, reject) {
var global = window;
global.require(['utilsSerializer'], resolve, reject);
}).then(function(module){ console.log(module); });
// targeting CommonJS
{
"plugins": [
["system-import-transformer", { "modules": "common" }]
]
}
// will emit a CommonJS specific code like:
new Promise(function (resolve, reject) {
resolve(require('./utils/serializer'));
}).then(function(module){ console.log(module); });
syntax
Syntax specific options.
syntax.import
Type: Boolean
Values: [true/false]
Example
When set to false, babel will not transpile import() statements.
syntax["system-import"]
Type: Boolean
Values: [true/false]
Example
When set to false, babel will not transpile System.import() statements.
Description from the npm listing.
- babel
- babel-plugin
- system
- import
- transformer
- UMD
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (544)Similar npm Babel plugins plugins
All 20 babel-plugin-system-import-transformer alternativesData source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/babel-plugin-system-import-transformer. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.