Add JS-CATCH-FALLBACK-01 rule and update npm packages
Add PHP-ALIAS-01 rule: prohibit field aliasing in serialization 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
37
node_modules/webpack/lib/DefinePlugin.js
generated
vendored
37
node_modules/webpack/lib/DefinePlugin.js
generated
vendored
@@ -5,6 +5,7 @@
|
||||
|
||||
"use strict";
|
||||
|
||||
const { SyncWaterfallHook } = require("tapable");
|
||||
const {
|
||||
JAVASCRIPT_MODULE_TYPE_AUTO,
|
||||
JAVASCRIPT_MODULE_TYPE_DYNAMIC,
|
||||
@@ -32,6 +33,7 @@ const createHash = require("./util/createHash");
|
||||
/** @typedef {import("./javascript/JavascriptParser").DestructuringAssignmentProperties} DestructuringAssignmentProperties */
|
||||
/** @typedef {import("./javascript/JavascriptParser").Range} Range */
|
||||
/** @typedef {import("./logging/Logger").Logger} Logger */
|
||||
/** @typedef {import("./Compilation")} Compilation */
|
||||
|
||||
/** @typedef {null | undefined | RegExp | EXPECTED_FUNCTION | string | number | boolean | bigint | undefined} CodeValuePrimitive */
|
||||
/** @typedef {RecursiveArrayOrRecord<CodeValuePrimitive | RuntimeValue>} CodeValue */
|
||||
@@ -42,7 +44,7 @@ const createHash = require("./util/createHash");
|
||||
* @property {string[]=} contextDependencies
|
||||
* @property {string[]=} missingDependencies
|
||||
* @property {string[]=} buildDependencies
|
||||
* @property {string| (() => string)=} version
|
||||
* @property {string | (() => string)=} version
|
||||
*/
|
||||
|
||||
/** @typedef {(value: { module: NormalModule, key: string, readonly version: ValueCacheVersion }) => CodeValuePrimitive} GeneratorFn */
|
||||
@@ -180,7 +182,7 @@ const stringifyObj = (
|
||||
code = `{${keys
|
||||
.map((key) => {
|
||||
const code = obj[key];
|
||||
return `${JSON.stringify(key)}:${toCode(
|
||||
return `${key === "__proto__" ? '["__proto__"]' : JSON.stringify(key)}:${toCode(
|
||||
code,
|
||||
parser,
|
||||
valueCacheVersions,
|
||||
@@ -330,7 +332,30 @@ const WEBPACK_REQUIRE_FUNCTION_REGEXP = new RegExp(
|
||||
);
|
||||
const WEBPACK_REQUIRE_IDENTIFIER_REGEXP = new RegExp(RuntimeGlobals.require);
|
||||
|
||||
/**
|
||||
* @typedef {object} DefinePluginHooks
|
||||
* @property {SyncWaterfallHook<[Record<string, CodeValue>]>} definitions
|
||||
*/
|
||||
|
||||
/** @type {WeakMap<Compilation, DefinePluginHooks>} */
|
||||
const compilationHooksMap = new WeakMap();
|
||||
|
||||
class DefinePlugin {
|
||||
/**
|
||||
* @param {Compilation} compilation the compilation
|
||||
* @returns {DefinePluginHooks} the attached hooks
|
||||
*/
|
||||
static getCompilationHooks(compilation) {
|
||||
let hooks = compilationHooksMap.get(compilation);
|
||||
if (hooks === undefined) {
|
||||
hooks = {
|
||||
definitions: new SyncWaterfallHook(["definitions"])
|
||||
};
|
||||
compilationHooksMap.set(compilation, hooks);
|
||||
}
|
||||
return hooks;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new define plugin
|
||||
* @param {Record<string, CodeValue>} definitions A map of global object definitions
|
||||
@@ -358,6 +383,12 @@ class DefinePlugin {
|
||||
PLUGIN_NAME,
|
||||
(compilation, { normalModuleFactory }) => {
|
||||
const definitions = this.definitions;
|
||||
const hooks = DefinePlugin.getCompilationHooks(compilation);
|
||||
|
||||
hooks.definitions.tap(PLUGIN_NAME, (previousDefinitions) => ({
|
||||
...previousDefinitions,
|
||||
...definitions
|
||||
}));
|
||||
|
||||
/**
|
||||
* @type {Map<string, Set<string>>}
|
||||
@@ -505,7 +536,7 @@ class DefinePlugin {
|
||||
return;
|
||||
}
|
||||
/** @type {Record<string, CodeValue>} */
|
||||
const obj = {};
|
||||
const obj = Object.create(null);
|
||||
const finalSet = finalByNestedKey.get(nested);
|
||||
for (const { id } of destructed) {
|
||||
const fullKey = `${nested}.${id}`;
|
||||
|
||||
Reference in New Issue
Block a user