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