mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
[compiler] Allow setStates in use{Layout,Insertion}Effect where the set value is derived from a ref (#34462)
@stipsan found this issue where the compiler would bailout on the
`useLayoutEffect` examples in the React docs. While setState in an
effect is typically an anti-pattern due to the fact that it hurts
performance through cascading renders, the one scenario where it _is_
allowed is if the value being set flows from a ref.
DiffTrain build for [835b00908b](https://github.com/facebook/react/commit/835b00908b1b1c522323162b735a85c5f620ac81)
This commit is contained in:
@@ -32144,6 +32144,7 @@ const EnvironmentConfigSchema = zod.z.object({
|
||||
lowerContextAccess: ExternalFunctionSchema.nullable().default(null),
|
||||
validateNoVoidUseMemo: zod.z.boolean().default(false),
|
||||
validateNoDynamicallyCreatedComponentsOrHooks: zod.z.boolean().default(false),
|
||||
enableAllowSetStateFromRefsInEffects: zod.z.boolean().default(true),
|
||||
});
|
||||
class Environment {
|
||||
constructor(scope, fnType, compilerMode, config, contextIdentifiers, parentFunction, logger, filename, code, programContext) {
|
||||
@@ -50579,7 +50580,7 @@ function emitArrayInstr(elements, env) {
|
||||
return arrayInstr;
|
||||
}
|
||||
|
||||
function validateNoSetStateInEffects(fn) {
|
||||
function validateNoSetStateInEffects(fn, env) {
|
||||
const setStateFunctions = new Map();
|
||||
const errors = new CompilerError();
|
||||
for (const [, block] of fn.body.blocks) {
|
||||
@@ -50601,7 +50602,7 @@ function validateNoSetStateInEffects(fn) {
|
||||
case 'FunctionExpression': {
|
||||
if ([...eachInstructionValueOperand(instr.value)].some(operand => isSetStateType(operand.identifier) ||
|
||||
setStateFunctions.has(operand.identifier.id))) {
|
||||
const callee = getSetStateCall(instr.value.loweredFunc.func, setStateFunctions);
|
||||
const callee = getSetStateCall(instr.value.loweredFunc.func, setStateFunctions, env);
|
||||
if (callee !== null) {
|
||||
setStateFunctions.set(instr.lvalue.identifier.id, callee);
|
||||
}
|
||||
@@ -50645,9 +50646,29 @@ function validateNoSetStateInEffects(fn) {
|
||||
}
|
||||
return errors.asResult();
|
||||
}
|
||||
function getSetStateCall(fn, setStateFunctions) {
|
||||
function getSetStateCall(fn, setStateFunctions, env) {
|
||||
const refDerivedValues = new Set();
|
||||
const isDerivedFromRef = (place) => {
|
||||
return (refDerivedValues.has(place.identifier.id) ||
|
||||
isUseRefType(place.identifier) ||
|
||||
isRefValueType(place.identifier));
|
||||
};
|
||||
for (const [, block] of fn.body.blocks) {
|
||||
for (const instr of block.instructions) {
|
||||
if (env.config.enableAllowSetStateFromRefsInEffects) {
|
||||
const hasRefOperand = Iterable_some(eachInstructionValueOperand(instr.value), isDerivedFromRef);
|
||||
if (hasRefOperand) {
|
||||
for (const lvalue of eachInstructionLValue(instr)) {
|
||||
refDerivedValues.add(lvalue.identifier.id);
|
||||
}
|
||||
}
|
||||
if (instr.value.kind === 'PropertyLoad' &&
|
||||
instr.value.property === 'current' &&
|
||||
(isUseRefType(instr.value.object.identifier) ||
|
||||
isRefValueType(instr.value.object.identifier))) {
|
||||
refDerivedValues.add(instr.lvalue.identifier.id);
|
||||
}
|
||||
}
|
||||
switch (instr.value.kind) {
|
||||
case 'LoadLocal': {
|
||||
if (setStateFunctions.has(instr.value.place.identifier.id)) {
|
||||
@@ -50666,6 +50687,14 @@ function getSetStateCall(fn, setStateFunctions) {
|
||||
const callee = instr.value.callee;
|
||||
if (isSetStateType(callee.identifier) ||
|
||||
setStateFunctions.has(callee.identifier.id)) {
|
||||
if (env.config.enableAllowSetStateFromRefsInEffects) {
|
||||
const arg = instr.value.args.at(0);
|
||||
if (arg !== undefined &&
|
||||
arg.kind === 'Identifier' &&
|
||||
refDerivedValues.has(arg.identifier.id)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return callee;
|
||||
}
|
||||
}
|
||||
@@ -52129,7 +52158,7 @@ function runWithEnvironment(func, env) {
|
||||
validateNoDerivedComputationsInEffects(hir);
|
||||
}
|
||||
if (env.config.validateNoSetStateInEffects) {
|
||||
env.logErrors(validateNoSetStateInEffects(hir));
|
||||
env.logErrors(validateNoSetStateInEffects(hir, env));
|
||||
}
|
||||
if (env.config.validateNoJSXInTryStatements) {
|
||||
env.logErrors(validateNoJSXInTryStatement(hir));
|
||||
|
||||
@@ -1 +1 @@
|
||||
a34c5dff159a5b546a5b24a93e11102713a7d0ec
|
||||
835b00908b1b1c522323162b735a85c5f620ac81
|
||||
|
||||
@@ -1 +1 @@
|
||||
a34c5dff159a5b546a5b24a93e11102713a7d0ec
|
||||
835b00908b1b1c522323162b735a85c5f620ac81
|
||||
|
||||
@@ -1418,7 +1418,7 @@ __DEV__ &&
|
||||
exports.useTransition = function () {
|
||||
return resolveDispatcher().useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -1418,7 +1418,7 @@ __DEV__ &&
|
||||
exports.useTransition = function () {
|
||||
return resolveDispatcher().useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -600,4 +600,4 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
|
||||
@@ -600,4 +600,4 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
|
||||
@@ -604,7 +604,7 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -604,7 +604,7 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -19708,10 +19708,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-art",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -19745,7 +19745,7 @@ __DEV__ &&
|
||||
exports.Shape = Shape;
|
||||
exports.Surface = Surface;
|
||||
exports.Text = Text;
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -19479,10 +19479,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-art",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -19516,7 +19516,7 @@ __DEV__ &&
|
||||
exports.Shape = Shape;
|
||||
exports.Surface = Surface;
|
||||
exports.Text = Text;
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -11419,10 +11419,10 @@ var slice = Array.prototype.slice,
|
||||
})(React.Component);
|
||||
var internals$jscomp$inline_1631 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-art",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1632 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -11448,4 +11448,4 @@ exports.RadialGradient = RadialGradient;
|
||||
exports.Shape = TYPES.SHAPE;
|
||||
exports.Surface = Surface;
|
||||
exports.Text = Text;
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
|
||||
@@ -11131,10 +11131,10 @@ var slice = Array.prototype.slice,
|
||||
})(React.Component);
|
||||
var internals$jscomp$inline_1604 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-art",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1605 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -11160,4 +11160,4 @@ exports.RadialGradient = RadialGradient;
|
||||
exports.Shape = TYPES.SHAPE;
|
||||
exports.Surface = Surface;
|
||||
exports.Text = Text;
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
|
||||
@@ -32306,11 +32306,11 @@ __DEV__ &&
|
||||
return_targetInst = null;
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-www-classic-a34c5dff-20250910" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-www-classic-835b0090-20250910" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-www-classic-a34c5dff-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-www-classic-835b0090-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -32353,10 +32353,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -32968,7 +32968,7 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -32091,11 +32091,11 @@ __DEV__ &&
|
||||
return_targetInst = null;
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-www-modern-a34c5dff-20250910" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-www-modern-835b0090-20250910" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-www-modern-a34c5dff-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-www-modern-835b0090-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -32138,10 +32138,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -32753,7 +32753,7 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -19782,14 +19782,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2114 = React.version;
|
||||
if (
|
||||
"19.2.0-www-classic-a34c5dff-20250910" !==
|
||||
"19.2.0-www-classic-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2114
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2114,
|
||||
"19.2.0-www-classic-a34c5dff-20250910"
|
||||
"19.2.0-www-classic-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -19807,10 +19807,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2746 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2747 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -20239,4 +20239,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
|
||||
@@ -19511,14 +19511,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2104 = React.version;
|
||||
if (
|
||||
"19.2.0-www-modern-a34c5dff-20250910" !==
|
||||
"19.2.0-www-modern-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2104
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2104,
|
||||
"19.2.0-www-modern-a34c5dff-20250910"
|
||||
"19.2.0-www-modern-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -19536,10 +19536,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2728 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2729 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -19968,4 +19968,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
|
||||
@@ -21836,14 +21836,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2361 = React.version;
|
||||
if (
|
||||
"19.2.0-www-classic-a34c5dff-20250910" !==
|
||||
"19.2.0-www-classic-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2361
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2361,
|
||||
"19.2.0-www-classic-a34c5dff-20250910"
|
||||
"19.2.0-www-classic-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -21861,10 +21861,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2363 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
enableSchedulingProfiler &&
|
||||
((internals$jscomp$inline_2363.getLaneLabelMap = getLaneLabelMap),
|
||||
@@ -22297,7 +22297,7 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -21630,14 +21630,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2351 = React.version;
|
||||
if (
|
||||
"19.2.0-www-modern-a34c5dff-20250910" !==
|
||||
"19.2.0-www-modern-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2351
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2351,
|
||||
"19.2.0-www-modern-a34c5dff-20250910"
|
||||
"19.2.0-www-modern-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -21655,10 +21655,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2353 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
enableSchedulingProfiler &&
|
||||
((internals$jscomp$inline_2353.getLaneLabelMap = getLaneLabelMap),
|
||||
@@ -22091,7 +22091,7 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
@@ -10163,5 +10163,5 @@ __DEV__ &&
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -10092,5 +10092,5 @@ __DEV__ &&
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -6892,4 +6892,4 @@ exports.renderToString = function (children, options) {
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
|
||||
@@ -6825,4 +6825,4 @@ exports.renderToString = function (children, options) {
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
|
||||
@@ -32627,11 +32627,11 @@ __DEV__ &&
|
||||
return_targetInst = null;
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-www-classic-a34c5dff-20250910" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-www-classic-835b0090-20250910" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-www-classic-a34c5dff-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-www-classic-835b0090-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -32674,10 +32674,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -33455,5 +33455,5 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -32412,11 +32412,11 @@ __DEV__ &&
|
||||
return_targetInst = null;
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-www-modern-a34c5dff-20250910" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-www-modern-835b0090-20250910" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-www-modern-a34c5dff-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-www-modern-835b0090-20250910\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -32459,10 +32459,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -33240,5 +33240,5 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -20098,14 +20098,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2143 = React.version;
|
||||
if (
|
||||
"19.2.0-www-classic-a34c5dff-20250910" !==
|
||||
"19.2.0-www-classic-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2143
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2143,
|
||||
"19.2.0-www-classic-a34c5dff-20250910"
|
||||
"19.2.0-www-classic-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -20123,10 +20123,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2780 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2781 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -20706,4 +20706,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
|
||||
@@ -19827,14 +19827,14 @@ function getCrossOriginStringAs(as, input) {
|
||||
}
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2133 = React.version;
|
||||
if (
|
||||
"19.2.0-www-modern-a34c5dff-20250910" !==
|
||||
"19.2.0-www-modern-835b0090-20250910" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2133
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2133,
|
||||
"19.2.0-www-modern-a34c5dff-20250910"
|
||||
"19.2.0-www-modern-835b0090-20250910"
|
||||
)
|
||||
);
|
||||
Internals.findDOMNode = function (componentOrElement) {
|
||||
@@ -19852,10 +19852,10 @@ Internals.Events = [
|
||||
];
|
||||
var internals$jscomp$inline_2762 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2763 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -20435,4 +20435,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
|
||||
@@ -22572,7 +22572,7 @@ __DEV__ &&
|
||||
version: rendererVersion,
|
||||
rendererPackageName: rendererPackageName,
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
@@ -22352,7 +22352,7 @@ __DEV__ &&
|
||||
version: rendererVersion,
|
||||
rendererPackageName: rendererPackageName,
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
@@ -14163,7 +14163,7 @@ module.exports = function ($$$config) {
|
||||
version: rendererVersion,
|
||||
rendererPackageName: rendererPackageName,
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
@@ -13880,7 +13880,7 @@ module.exports = function ($$$config) {
|
||||
version: rendererVersion,
|
||||
rendererPackageName: rendererPackageName,
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
@@ -15571,10 +15571,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-classic-a34c5dff-20250910",
|
||||
version: "19.2.0-www-classic-835b0090-20250910",
|
||||
rendererPackageName: "react-test-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-classic-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-classic-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -15709,5 +15709,5 @@ __DEV__ &&
|
||||
exports.unstable_batchedUpdates = function (fn, a) {
|
||||
return fn(a);
|
||||
};
|
||||
exports.version = "19.2.0-www-classic-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-classic-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -15571,10 +15571,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-www-modern-a34c5dff-20250910",
|
||||
version: "19.2.0-www-modern-835b0090-20250910",
|
||||
rendererPackageName: "react-test-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-www-modern-a34c5dff-20250910"
|
||||
reconcilerVersion: "19.2.0-www-modern-835b0090-20250910"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -15709,5 +15709,5 @@ __DEV__ &&
|
||||
exports.unstable_batchedUpdates = function (fn, a) {
|
||||
return fn(a);
|
||||
};
|
||||
exports.version = "19.2.0-www-modern-a34c5dff-20250910";
|
||||
exports.version = "19.2.0-www-modern-835b0090-20250910";
|
||||
})();
|
||||
|
||||
@@ -1 +1 @@
|
||||
19.2.0-www-classic-a34c5dff-20250910
|
||||
19.2.0-www-classic-835b0090-20250910
|
||||
@@ -1 +1 @@
|
||||
19.2.0-www-modern-a34c5dff-20250910
|
||||
19.2.0-www-modern-835b0090-20250910
|
||||
Reference in New Issue
Block a user