From 9bce51f651aad297ef9eb6df832bfdaf1de05d84 Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期三, 22 四月 2026 14:27:54 +0800
Subject: [PATCH] 青岛推送
---
node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js | 53 ++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 38 insertions(+), 15 deletions(-)
diff --git a/node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js b/node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js
index 3bbcf0d..f5a4bca 100644
--- a/node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js
+++ b/node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js
@@ -26,13 +26,16 @@
/** @typedef {import("estree").ObjectExpression} ObjectExpression */
/** @typedef {import("estree").SpreadElement} SpreadElement */
/** @typedef {import("../../declarations/WebpackOptions").JavascriptParserOptions} JavascriptParserOptions */
+/** @typedef {import("../Dependency")} Dependency */
/** @typedef {import("../Dependency").DependencyLocation} DependencyLocation */
/** @typedef {import("../javascript/BasicEvaluatedExpression")} BasicEvaluatedExpression */
/** @typedef {import("../javascript/JavascriptParser")} JavascriptParser */
/** @typedef {import("../javascript/JavascriptParser").ExportedVariableInfo} ExportedVariableInfo */
/** @typedef {import("../javascript/JavascriptParser").Range} Range */
+/** @typedef {import("./LocalModule")} LocalModule */
/**
+ * Checks whether this object is bound function expression.
* @param {Expression | SpreadElement} expr expression
* @returns {expr is CallExpression} true if it's a bound function expression
*/
@@ -49,6 +52,7 @@
/** @typedef {FunctionExpression | ArrowFunctionExpression} UnboundFunctionExpression */
/**
+ * Checks whether this object is unbound function expression.
* @param {Expression | SpreadElement} expr expression
* @returns {expr is FunctionExpression | ArrowFunctionExpression} true when unbound function expression
*/
@@ -59,6 +63,7 @@
};
/**
+ * Checks whether this object is callable.
* @param {Expression | SpreadElement} expr expression
* @returns {expr is FunctionExpression | ArrowFunctionExpression | CallExpression} true when callable
*/
@@ -74,6 +79,7 @@
class AMDDefineDependencyParserPlugin {
/**
+ * Creates an instance of AMDDefineDependencyParserPlugin.
* @param {JavascriptParserOptions} options parserOptions
*/
constructor(options) {
@@ -81,6 +87,7 @@
}
/**
+ * Applies the plugin by registering its hooks on the compiler.
* @param {JavascriptParser} parser the parser
* @returns {void}
*/
@@ -91,6 +98,7 @@
}
/**
+ * Processes the provided parser.
* @param {JavascriptParser} parser the parser
* @param {CallExpression} expr call expression
* @param {BasicEvaluatedExpression} param param
@@ -123,7 +131,9 @@
const deps = [];
const array = /** @type {string[]} */ (param.array);
for (const [idx, request] of array.entries()) {
+ /** @type {string | LocalModuleDependency | AMDRequireItemDependency} */
let dep;
+ /** @type {undefined | null | LocalModule} */
let localModule;
if (request === "require") {
identifiers[idx] = request;
@@ -156,6 +166,7 @@
}
/**
+ * Processes the provided parser.
* @param {JavascriptParser} parser the parser
* @param {CallExpression} expr call expression
* @param {BasicEvaluatedExpression} param param
@@ -174,7 +185,9 @@
return true;
} else if (param.isString()) {
+ /** @type {Dependency} */
let dep;
+ /** @type {undefined | null | LocalModule} */
let localModule;
if (param.string === "require") {
@@ -220,6 +233,7 @@
}
/**
+ * Processes the provided parser.
* @param {JavascriptParser} parser the parser
* @param {CallExpression} expr call expression
* @param {BasicEvaluatedExpression} param param
@@ -245,6 +259,7 @@
}
/**
+ * Process call define.
* @param {JavascriptParser} parser the parser
* @param {CallExpression} expr call expression
* @returns {boolean | undefined} result
@@ -388,21 +403,25 @@
let inTry;
if (fn && isUnboundFunctionExpression(fn)) {
inTry = parser.scope.inTry;
- parser.inScope(/** @type {Identifier[]} */ (fnParams), () => {
- for (const [name, varInfo] of fnRenames) {
- parser.setVariable(name, varInfo);
+ parser.inFunctionScope(
+ true,
+ /** @type {Identifier[]} */ (fnParams),
+ () => {
+ for (const [name, varInfo] of fnRenames) {
+ parser.setVariable(name, varInfo);
+ }
+ parser.scope.inTry = /** @type {boolean} */ (inTry);
+ if (fn.body.type === "BlockStatement") {
+ parser.detectMode(fn.body.body);
+ const prev = parser.prevStatement;
+ parser.preWalkStatement(fn.body);
+ parser.prevStatement = prev;
+ parser.walkStatement(fn.body);
+ } else {
+ parser.walkExpression(fn.body);
+ }
}
- parser.scope.inTry = /** @type {boolean} */ (inTry);
- if (fn.body.type === "BlockStatement") {
- parser.detectMode(fn.body.body);
- const prev = parser.prevStatement;
- parser.preWalkStatement(fn.body);
- parser.prevStatement = prev;
- parser.walkStatement(fn.body);
- } else {
- parser.walkExpression(fn.body);
- }
- });
+ );
} else if (fn && isBoundFunctionExpression(fn)) {
inTry = parser.scope.inTry;
@@ -410,7 +429,8 @@
/** @type {FunctionExpression} */
(/** @type {MemberExpression} */ (fn.callee).object);
- parser.inScope(
+ parser.inFunctionScope(
+ true,
/** @type {Identifier[]} */
(object.params).filter(
(i) => !["require", "module", "exports"].includes(i.name)
@@ -453,6 +473,7 @@
}
/**
+ * New define dependency.
* @param {Range} range range
* @param {Range | null} arrayRange array range
* @param {Range | null} functionRange function range
@@ -477,6 +498,7 @@
}
/**
+ * New require array dependency.
* @param {(string | LocalModuleDependency | AMDRequireItemDependency)[]} depsArray deps array
* @param {Range} range range
* @returns {AMDRequireArrayDependency} AMDRequireArrayDependency
@@ -486,6 +508,7 @@
}
/**
+ * New require item dependency.
* @param {string} request request
* @param {Range=} range range
* @returns {AMDRequireItemDependency} AMDRequireItemDependency
--
Gitblit v1.9.3