webpack/lib/node/NodeTargetPlugin.js

81 lines
1.2 KiB
JavaScript
Raw Normal View History

/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
2018-07-30 23:08:51 +08:00
"use strict";
const ExternalsPlugin = require("../ExternalsPlugin");
2018-11-09 05:59:19 +08:00
/** @typedef {import("../Compiler")} Compiler */
const builtins = [
"assert",
"async_hooks",
"buffer",
"child_process",
"cluster",
"console",
"constants",
"crypto",
"dgram",
"diagnostics_channel",
"dns",
"dns/promises",
"domain",
"events",
"fs",
"fs/promises",
"http",
"http2",
"https",
"inspector",
"module",
"net",
"os",
"path",
2021-10-28 02:48:34 +08:00
"path/posix",
"path/win32",
"perf_hooks",
"process",
"punycode",
"querystring",
"readline",
"repl",
"stream",
"stream/promises",
"stream/web",
"string_decoder",
"sys",
"timers",
"timers/promises",
"tls",
"trace_events",
"tty",
"url",
"util",
"v8",
"vm",
2021-02-16 12:21:04 +08:00
"wasi",
"worker_threads",
"zlib",
/^node:/,
// cspell:word pnpapi
// Yarn PnP adds pnpapi as "builtin"
"pnpapi"
];
class NodeTargetPlugin {
2018-11-09 05:59:19 +08:00
/**
2020-04-23 16:48:36 +08:00
* Apply the plugin
2018-11-09 05:59:19 +08:00
* @param {Compiler} compiler the compiler instance
* @returns {void}
*/
apply(compiler) {
new ExternalsPlugin("node-commonjs", builtins).apply(compiler);
}
}
2014-03-06 02:56:53 +08:00
module.exports = NodeTargetPlugin;