Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
add-module-exports-webpack-plugin
Advanced tools
Add `module.exports` for Babel and TypeScript compiled code
[!WARNING] Deprecated. Prefer using JavaScript Modules instead of CommonJS.
Add
module.exports
for Babel and TypeScript compiled code
When you use ES2015 modules with Babel or have a default export in TypeScript, they generate code which requires you to import it with require('x').default
in CommonJS instead of require('x')
. This plugin enables the latter.
$ npm install add-module-exports-webpack-plugin
const AddModuleExportsPlugin = require('add-module-exports-webpack-plugin');
module.exports = {
// …
output: {
filename: 'dist/index.js',
libraryTarget: 'commonjs2'
},
plugins: [
new AddModuleExportsPlugin()
]
};
output.libraryTarget
must be commonjs2
When exporting a primitive value as default export, other exported values will not be exported anymore. The reason is that this module redeclares the exports as follows.
module.exports.default = (arg1, arg2) => arg1 + arg2;
module.exports.subtract = (arg1, arg2) => arg1 - arg2;
This module re-exports them as follows.
module.exports = (arg1, arg2) => arg1 + arg2;
module.exports.default = (arg1, arg2) => arg1 + arg2;
module.exports.subtract = (arg1, arg2) => arg1 - arg2;
Because you can't attach properties to a primitive value, it's not possible to re-export the other properties and so you would end up with only a module.exports
.
NODE_ENV
handlingFAQs
Add `module.exports` for Babel and TypeScript compiled code
The npm package add-module-exports-webpack-plugin receives a total of 7 weekly downloads. As such, add-module-exports-webpack-plugin popularity was classified as not popular.
We found that add-module-exports-webpack-plugin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer 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 researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.