Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
WebPack Loader of resources and their dependencies using base64 in a temporary folder
npm install --save-dev b64-loader
Loader for embedding native add-ons in projects of nodes or electrons by unpacking native add-ons and their dependencies from base64 in a temporary folder.
:information_source: WebPack Target: Node
index.js
import pty from "./blessed/pty.js";
export default pty;
webpack.config.js
module.exports = {
target: 'node',
module: {
rules: [{
test: /\.node$/,
loader: "b64-loader",
}]
}
};
Name | Type | Default | Description |
---|---|---|---|
tempDir | {String} | 'myAddons' | The name of the folder in the temporary folder |
resourceDir | {Boolean|String} | false | One folder name for all addons |
grouping | {Array} | [] | Grouping files into one folder |
dependencies | {Object} | {} | Saving dependencies |
dirs (beta) | {Object} | {} | Saving specified files and folders |
resourceDir
Type: Boolean|String
Default: false
If true
then the resource folder will have a name by hashName
from its path, and not by name.
Otherwise, your value.
webpack.config.js
module.exports = {
target: 'node',
module: {
rules: [{
test: /\.(node|exe|dll)$/,
loader: "b64-loader",
options: {
resourceDir: true || "nameYourFolder"
}
}]
}
};
grouping
Type: Array
Default: []
Resource folder will have a name by hashName
from resource path...
webpack.config.js
module.exports = {
target: 'node',
module: {
rules: [{
test: /\.(node|exe|dll)$/,
loader: "b64-loader",
options: {
grouping: [
'pty.node',
'winpty.dll',
'winpty-agent.exe',
]
}
}]
}
};
dependencies
Type: Object
Default: {}
Resource folder will have a name by hashName
from resource path...
webpack.config.js
module.exports = {
target: 'node',
module: {
rules: [{
test: /\.node$/,
loader: "b64-loader",
options: {
tempDir: "blessedApp",
dependencies: {
'pty.node': [
'winpty.dll',
'winpty-agent.exe',
'obj/pty/pty.obj',
]
}
}
}]
}
};
dirs
Type: Object
Default: {}
Resource folder will have a name by hashName
from resource path...
webpack.config.js
module.exports = {
target: 'node',
module: {
rules: [{
test: /\.node$/,
loader: "b64-loader",
options: {
tempDir: "blessedApp",
dirs: {
'linux': [
// All files and folders in resource folder
'.',
]
}
}
}]
}
};
index.js
const Fs = require("fs-extra");
const b64Loader = require("b64-loader").custom;
const tempDir = "myPacker";
const res = b64Loader(
"D:/projects/node/webpack/blessed/usr/linux",
null, // No source
{
tempDir,
dirs: {
'linux': [
// All files in `D:/projects/node/webpack/blessed/usr/`
'.',
]
}
}
)
Fs.writeFileSync("./blessed/lib/vjuh-usr-win.js", res);
FAQs
WebPack Loader of resources and their dependencies using base64 in a temporary folder
We found that b64-loader demonstrated a not healthy version release cadence and project activity because the last version was released 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.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.