summaryrefslogtreecommitdiffstats
path: root/node_modules/webpack/lib/CommonJsStuffPlugin.js
diff options
context:
space:
mode:
authorGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
committerGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
commite06ec920f7a5d784e674c4c4b4e6d1da3dc7391d (patch)
tree55713f725f77b44ebfec86e4eec3ce33e71458ca /node_modules/webpack/lib/CommonJsStuffPlugin.js
downloadwebsite_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.gz
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.bz2
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.zip
api, login, auth
Diffstat (limited to 'node_modules/webpack/lib/CommonJsStuffPlugin.js')
-rw-r--r--node_modules/webpack/lib/CommonJsStuffPlugin.js116
1 files changed, 116 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/CommonJsStuffPlugin.js b/node_modules/webpack/lib/CommonJsStuffPlugin.js
new file mode 100644
index 0000000..80fee87
--- /dev/null
+++ b/node_modules/webpack/lib/CommonJsStuffPlugin.js
@@ -0,0 +1,116 @@
+/*
+ MIT License http://www.opensource.org/licenses/mit-license.php
+ Author Tobias Koppers @sokra
+*/
+"use strict";
+
+const path = require("path");
+const ParserHelpers = require("./ParserHelpers");
+
+class CommonJsStuffPlugin {
+ apply(compiler) {
+ compiler.hooks.compilation.tap(
+ "CommonJsStuffPlugin",
+ (compilation, { normalModuleFactory }) => {
+ const handler = (parser, parserOptions) => {
+ parser.hooks.expression
+ .for("require.main.require")
+ .tap(
+ "CommonJsStuffPlugin",
+ ParserHelpers.expressionIsUnsupported(
+ parser,
+ "require.main.require is not supported by webpack."
+ )
+ );
+ parser.hooks.expression
+ .for("module.parent.require")
+ .tap(
+ "CommonJsStuffPlugin",
+ ParserHelpers.expressionIsUnsupported(
+ parser,
+ "module.parent.require is not supported by webpack."
+ )
+ );
+ parser.hooks.expression
+ .for("require.main")
+ .tap(
+ "CommonJsStuffPlugin",
+ ParserHelpers.toConstantDependencyWithWebpackRequire(
+ parser,
+ "__webpack_require__.c[__webpack_require__.s]"
+ )
+ );
+ parser.hooks.expression
+ .for("module.loaded")
+ .tap("CommonJsStuffPlugin", expr => {
+ parser.state.module.buildMeta.moduleConcatenationBailout =
+ "module.loaded";
+ return ParserHelpers.toConstantDependency(
+ parser,
+ "module.l"
+ )(expr);
+ });
+ parser.hooks.expression
+ .for("module.id")
+ .tap("CommonJsStuffPlugin", expr => {
+ parser.state.module.buildMeta.moduleConcatenationBailout =
+ "module.id";
+ return ParserHelpers.toConstantDependency(
+ parser,
+ "module.i"
+ )(expr);
+ });
+ parser.hooks.expression
+ .for("module.exports")
+ .tap("CommonJsStuffPlugin", () => {
+ const module = parser.state.module;
+ const isHarmony =
+ module.buildMeta && module.buildMeta.exportsType;
+ if (!isHarmony) return true;
+ });
+ parser.hooks.evaluateIdentifier
+ .for("module.hot")
+ .tap(
+ "CommonJsStuffPlugin",
+ ParserHelpers.evaluateToIdentifier("module.hot", false)
+ );
+ parser.hooks.expression
+ .for("module")
+ .tap("CommonJsStuffPlugin", () => {
+ const module = parser.state.module;
+ const isHarmony =
+ module.buildMeta && module.buildMeta.exportsType;
+ let moduleJsPath = path.join(
+ __dirname,
+ "..",
+ "buildin",
+ isHarmony ? "harmony-module.js" : "module.js"
+ );
+ if (module.context) {
+ moduleJsPath = path.relative(
+ parser.state.module.context,
+ moduleJsPath
+ );
+ if (!/^[A-Z]:/i.test(moduleJsPath)) {
+ moduleJsPath = `./${moduleJsPath.replace(/\\/g, "/")}`;
+ }
+ }
+ return ParserHelpers.addParsedVariableToModule(
+ parser,
+ "module",
+ `require(${JSON.stringify(moduleJsPath)})(module)`
+ );
+ });
+ };
+
+ normalModuleFactory.hooks.parser
+ .for("javascript/auto")
+ .tap("CommonJsStuffPlugin", handler);
+ normalModuleFactory.hooks.parser
+ .for("javascript/dynamic")
+ .tap("CommonJsStuffPlugin", handler);
+ }
+ );
+ }
+}
+module.exports = CommonJsStuffPlugin;