Move tail hydration mismatch back to hydration context (#28501)

In #23176 we added a special case in completeWork for SuspenseBoundaries
if they still have trailing children. However, that misses a case
because it doesn't log a recoverable error for the hydration mismatch.
So we get an error that we rerendered.

I think this special case was done to avoid contexts getting out of
sync. I don't know why we didn't just move where the pop happens though
so that's what I did here and let the regular pass throw instead. Seems
to be pass the tests.

DiffTrain build for [c11b196ae3](https://github.com/facebook/react/commit/c11b196ae3e2e3c5d143d9102b35a6b6fa97c849)
This commit is contained in:
sebmarkbage
2024-03-06 01:58:04 +00:00
parent 6cf536e74c
commit 401192f5a4
19 changed files with 357 additions and 445 deletions
+1 -1
View File
@@ -1 +1 @@
113ab9af08c46e8a548a397154f5c9dfeb96ab6a
c11b196ae3e2e3c5d143d9102b35a6b6fa97c849
+1 -1
View File
@@ -633,4 +633,4 @@ exports.useSyncExternalStore = function (
exports.useTransition = function () {
return ReactCurrentDispatcher.current.useTransition();
};
exports.version = "18.3.0-www-classic-f938cefa";
exports.version = "18.3.0-www-classic-5741f0db";
@@ -637,7 +637,7 @@ exports.useSyncExternalStore = function (
exports.useTransition = function () {
return ReactCurrentDispatcher.current.useTransition();
};
exports.version = "18.3.0-www-classic-c1c1744a";
exports.version = "18.3.0-www-classic-6ddd4df1";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -66,7 +66,7 @@ if (__DEV__) {
return self;
}
var ReactVersion = "18.3.0-www-classic-20a604bc";
var ReactVersion = "18.3.0-www-classic-14143ab0";
var LegacyRoot = 0;
var ConcurrentRoot = 1;
@@ -19974,7 +19974,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -19995,17 +19994,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
+7 -4
View File
@@ -66,7 +66,7 @@ if (__DEV__) {
return self;
}
var ReactVersion = "18.3.0-www-modern-c0bbf979";
var ReactVersion = "18.3.0-www-modern-0883d4be";
var LegacyRoot = 0;
var ConcurrentRoot = 1;
@@ -19655,7 +19655,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -19676,17 +19675,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -6253,7 +6253,6 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
@@ -6274,9 +6273,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(instance = !0);
if (!instance)
return workInProgress.flags & 256 ? workInProgress : null;
if (!instance) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -10596,7 +10600,7 @@ var slice = Array.prototype.slice,
return null;
},
bundleType: 0,
version: "18.3.0-www-classic-0f4883c5",
version: "18.3.0-www-classic-cad557f7",
rendererPackageName: "react-art"
};
var internals$jscomp$inline_1320 = {
@@ -10627,7 +10631,7 @@ var internals$jscomp$inline_1320 = {
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-classic-0f4883c5"
reconcilerVersion: "18.3.0-www-classic-cad557f7"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_1321 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -5992,7 +5992,6 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
@@ -6013,9 +6012,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(instance = !0);
if (!instance)
return workInProgress.flags & 256 ? workInProgress : null;
if (!instance) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -10251,7 +10255,7 @@ var slice = Array.prototype.slice,
return null;
},
bundleType: 0,
version: "18.3.0-www-modern-1b51d894",
version: "18.3.0-www-modern-5c2d3ed7",
rendererPackageName: "react-art"
};
var internals$jscomp$inline_1300 = {
@@ -10282,7 +10286,7 @@ var internals$jscomp$inline_1300 = {
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-modern-1b51d894"
reconcilerVersion: "18.3.0-www-modern-5c2d3ed7"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_1301 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
+7 -19
View File
@@ -8941,10 +8941,6 @@ if (__DEV__) {
return true;
}
function hasUnhydratedTailNodes() {
return isHydrating && nextHydratableInstance !== null;
}
function warnIfUnhydratedTailNodes(fiber) {
var nextInstance = nextHydratableInstance;
@@ -24958,17 +24954,6 @@ if (__DEV__) {
workInProgress,
nextState
) {
if (
hasUnhydratedTailNodes() &&
(workInProgress.mode & ConcurrentMode) !== NoMode &&
(workInProgress.flags & DidCapture) === NoFlags$1
) {
warnIfUnhydratedTailNodes(workInProgress);
resetHydrationState();
workInProgress.flags |= ForceClientRender | DidCapture;
return false;
}
var wasHydrated = popHydrationState(workInProgress);
if (nextState !== null && nextState.dehydrated !== null) {
@@ -25405,7 +25390,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -25426,17 +25410,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -36046,7 +36034,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-classic-e13660d6";
var ReactVersion = "18.3.0-www-classic-78291ba2";
function createPortal$1(
children,
+7 -19
View File
@@ -8903,10 +8903,6 @@ if (__DEV__) {
return true;
}
function hasUnhydratedTailNodes() {
return isHydrating && nextHydratableInstance !== null;
}
function warnIfUnhydratedTailNodes(fiber) {
var nextInstance = nextHydratableInstance;
@@ -24843,17 +24839,6 @@ if (__DEV__) {
workInProgress,
nextState
) {
if (
hasUnhydratedTailNodes() &&
(workInProgress.mode & ConcurrentMode) !== NoMode &&
(workInProgress.flags & DidCapture) === NoFlags$1
) {
warnIfUnhydratedTailNodes(workInProgress);
resetHydrationState();
workInProgress.flags |= ForceClientRender | DidCapture;
return false;
}
var wasHydrated = popHydrationState(workInProgress);
if (nextState !== null && nextState.dehydrated !== null) {
@@ -25283,7 +25268,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -25304,17 +25288,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -35893,7 +35881,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-modern-06a38f42";
var ReactVersion = "18.3.0-www-modern-8a38254f";
function createPortal$1(
children,
+49 -59
View File
@@ -1816,9 +1816,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1852,10 +1854,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7442,27 +7440,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7481,9 +7466,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -13135,14 +13125,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$352;
if (canUseDOM) {
var isSupported$jscomp$inline_1551 = "oninput" in document;
if (!isSupported$jscomp$inline_1551) {
var element$jscomp$inline_1552 = document.createElement("div");
element$jscomp$inline_1552.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1551 =
"function" === typeof element$jscomp$inline_1552.oninput;
var isSupported$jscomp$inline_1554 = "oninput" in document;
if (!isSupported$jscomp$inline_1554) {
var element$jscomp$inline_1555 = document.createElement("div");
element$jscomp$inline_1555.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1554 =
"function" === typeof element$jscomp$inline_1555.oninput;
}
JSCompiler_inline_result$jscomp$352 = isSupported$jscomp$inline_1551;
JSCompiler_inline_result$jscomp$352 = isSupported$jscomp$inline_1554;
} else JSCompiler_inline_result$jscomp$352 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$352 &&
@@ -13517,20 +13507,20 @@ function extractEvents$1(
}
}
for (
var i$jscomp$inline_1592 = 0;
i$jscomp$inline_1592 < simpleEventPluginEvents.length;
i$jscomp$inline_1592++
var i$jscomp$inline_1595 = 0;
i$jscomp$inline_1595 < simpleEventPluginEvents.length;
i$jscomp$inline_1595++
) {
var eventName$jscomp$inline_1593 =
simpleEventPluginEvents[i$jscomp$inline_1592],
domEventName$jscomp$inline_1594 =
eventName$jscomp$inline_1593.toLowerCase(),
capitalizedEvent$jscomp$inline_1595 =
eventName$jscomp$inline_1593[0].toUpperCase() +
eventName$jscomp$inline_1593.slice(1);
var eventName$jscomp$inline_1596 =
simpleEventPluginEvents[i$jscomp$inline_1595],
domEventName$jscomp$inline_1597 =
eventName$jscomp$inline_1596.toLowerCase(),
capitalizedEvent$jscomp$inline_1598 =
eventName$jscomp$inline_1596[0].toUpperCase() +
eventName$jscomp$inline_1596.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1594,
"on" + capitalizedEvent$jscomp$inline_1595
domEventName$jscomp$inline_1597,
"on" + capitalizedEvent$jscomp$inline_1598
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -17244,17 +17234,17 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1819 = {
var devToolsConfig$jscomp$inline_1822 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-classic-d9a421c8",
version: "18.3.0-www-classic-513335d7",
rendererPackageName: "react-dom"
};
var internals$jscomp$inline_2178 = {
bundleType: devToolsConfig$jscomp$inline_1819.bundleType,
version: devToolsConfig$jscomp$inline_1819.version,
rendererPackageName: devToolsConfig$jscomp$inline_1819.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1819.rendererConfig,
var internals$jscomp$inline_2181 = {
bundleType: devToolsConfig$jscomp$inline_1822.bundleType,
version: devToolsConfig$jscomp$inline_1822.version,
rendererPackageName: devToolsConfig$jscomp$inline_1822.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1822.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -17270,26 +17260,26 @@ var internals$jscomp$inline_2178 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1819.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1822.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-classic-d9a421c8"
reconcilerVersion: "18.3.0-www-classic-513335d7"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2179 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
var hook$jscomp$inline_2182 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
if (
!hook$jscomp$inline_2179.isDisabled &&
hook$jscomp$inline_2179.supportsFiber
!hook$jscomp$inline_2182.isDisabled &&
hook$jscomp$inline_2182.supportsFiber
)
try {
(rendererID = hook$jscomp$inline_2179.inject(
internals$jscomp$inline_2178
(rendererID = hook$jscomp$inline_2182.inject(
internals$jscomp$inline_2181
)),
(injectedHook = hook$jscomp$inline_2179);
(injectedHook = hook$jscomp$inline_2182);
} catch (err) {}
}
assign(Internals, {
@@ -17608,4 +17598,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-classic-d9a421c8";
exports.version = "18.3.0-www-classic-513335d7";
+49 -59
View File
@@ -1710,9 +1710,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1746,10 +1748,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7279,27 +7277,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7318,9 +7303,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -13502,14 +13492,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$350;
if (canUseDOM) {
var isSupported$jscomp$inline_1551 = "oninput" in document;
if (!isSupported$jscomp$inline_1551) {
var element$jscomp$inline_1552 = document.createElement("div");
element$jscomp$inline_1552.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1551 =
"function" === typeof element$jscomp$inline_1552.oninput;
var isSupported$jscomp$inline_1554 = "oninput" in document;
if (!isSupported$jscomp$inline_1554) {
var element$jscomp$inline_1555 = document.createElement("div");
element$jscomp$inline_1555.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1554 =
"function" === typeof element$jscomp$inline_1555.oninput;
}
JSCompiler_inline_result$jscomp$350 = isSupported$jscomp$inline_1551;
JSCompiler_inline_result$jscomp$350 = isSupported$jscomp$inline_1554;
} else JSCompiler_inline_result$jscomp$350 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$350 &&
@@ -13821,20 +13811,20 @@ function registerSimpleEvent(domEventName, reactName) {
registerTwoPhaseEvent(reactName, [domEventName]);
}
for (
var i$jscomp$inline_1592 = 0;
i$jscomp$inline_1592 < simpleEventPluginEvents.length;
i$jscomp$inline_1592++
var i$jscomp$inline_1595 = 0;
i$jscomp$inline_1595 < simpleEventPluginEvents.length;
i$jscomp$inline_1595++
) {
var eventName$jscomp$inline_1593 =
simpleEventPluginEvents[i$jscomp$inline_1592],
domEventName$jscomp$inline_1594 =
eventName$jscomp$inline_1593.toLowerCase(),
capitalizedEvent$jscomp$inline_1595 =
eventName$jscomp$inline_1593[0].toUpperCase() +
eventName$jscomp$inline_1593.slice(1);
var eventName$jscomp$inline_1596 =
simpleEventPluginEvents[i$jscomp$inline_1595],
domEventName$jscomp$inline_1597 =
eventName$jscomp$inline_1596.toLowerCase(),
capitalizedEvent$jscomp$inline_1598 =
eventName$jscomp$inline_1596[0].toUpperCase() +
eventName$jscomp$inline_1596.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1594,
"on" + capitalizedEvent$jscomp$inline_1595
domEventName$jscomp$inline_1597,
"on" + capitalizedEvent$jscomp$inline_1598
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -16760,17 +16750,17 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1778 = {
var devToolsConfig$jscomp$inline_1781 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-modern-7bb4d6b0",
version: "18.3.0-www-modern-f13b626a",
rendererPackageName: "react-dom"
};
var internals$jscomp$inline_2142 = {
bundleType: devToolsConfig$jscomp$inline_1778.bundleType,
version: devToolsConfig$jscomp$inline_1778.version,
rendererPackageName: devToolsConfig$jscomp$inline_1778.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1778.rendererConfig,
var internals$jscomp$inline_2145 = {
bundleType: devToolsConfig$jscomp$inline_1781.bundleType,
version: devToolsConfig$jscomp$inline_1781.version,
rendererPackageName: devToolsConfig$jscomp$inline_1781.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1781.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -16787,26 +16777,26 @@ var internals$jscomp$inline_2142 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1778.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1781.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-modern-7bb4d6b0"
reconcilerVersion: "18.3.0-www-modern-f13b626a"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2143 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
var hook$jscomp$inline_2146 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
if (
!hook$jscomp$inline_2143.isDisabled &&
hook$jscomp$inline_2143.supportsFiber
!hook$jscomp$inline_2146.isDisabled &&
hook$jscomp$inline_2146.supportsFiber
)
try {
(rendererID = hook$jscomp$inline_2143.inject(
internals$jscomp$inline_2142
(rendererID = hook$jscomp$inline_2146.inject(
internals$jscomp$inline_2145
)),
(injectedHook = hook$jscomp$inline_2143);
(injectedHook = hook$jscomp$inline_2146);
} catch (err) {}
}
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
@@ -17053,4 +17043,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-modern-7bb4d6b0";
exports.version = "18.3.0-www-modern-f13b626a";
@@ -1954,9 +1954,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1990,10 +1992,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7722,27 +7720,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7774,9 +7759,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (
(workInProgress.lanes = renderLanes),
@@ -13904,14 +13894,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$373;
if (canUseDOM) {
var isSupported$jscomp$inline_1636 = "oninput" in document;
if (!isSupported$jscomp$inline_1636) {
var element$jscomp$inline_1637 = document.createElement("div");
element$jscomp$inline_1637.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1636 =
"function" === typeof element$jscomp$inline_1637.oninput;
var isSupported$jscomp$inline_1639 = "oninput" in document;
if (!isSupported$jscomp$inline_1639) {
var element$jscomp$inline_1640 = document.createElement("div");
element$jscomp$inline_1640.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1639 =
"function" === typeof element$jscomp$inline_1640.oninput;
}
JSCompiler_inline_result$jscomp$373 = isSupported$jscomp$inline_1636;
JSCompiler_inline_result$jscomp$373 = isSupported$jscomp$inline_1639;
} else JSCompiler_inline_result$jscomp$373 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$373 &&
@@ -14286,20 +14276,20 @@ function extractEvents$1(
}
}
for (
var i$jscomp$inline_1677 = 0;
i$jscomp$inline_1677 < simpleEventPluginEvents.length;
i$jscomp$inline_1677++
var i$jscomp$inline_1680 = 0;
i$jscomp$inline_1680 < simpleEventPluginEvents.length;
i$jscomp$inline_1680++
) {
var eventName$jscomp$inline_1678 =
simpleEventPluginEvents[i$jscomp$inline_1677],
domEventName$jscomp$inline_1679 =
eventName$jscomp$inline_1678.toLowerCase(),
capitalizedEvent$jscomp$inline_1680 =
eventName$jscomp$inline_1678[0].toUpperCase() +
eventName$jscomp$inline_1678.slice(1);
var eventName$jscomp$inline_1681 =
simpleEventPluginEvents[i$jscomp$inline_1680],
domEventName$jscomp$inline_1682 =
eventName$jscomp$inline_1681.toLowerCase(),
capitalizedEvent$jscomp$inline_1683 =
eventName$jscomp$inline_1681[0].toUpperCase() +
eventName$jscomp$inline_1681.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1679,
"on" + capitalizedEvent$jscomp$inline_1680
domEventName$jscomp$inline_1682,
"on" + capitalizedEvent$jscomp$inline_1683
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -18013,10 +18003,10 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1904 = {
var devToolsConfig$jscomp$inline_1907 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-classic-86500a4d",
version: "18.3.0-www-classic-a5679a0f",
rendererPackageName: "react-dom"
};
(function (internals) {
@@ -18034,10 +18024,10 @@ var devToolsConfig$jscomp$inline_1904 = {
} catch (err) {}
return hook.checkDCE ? !0 : !1;
})({
bundleType: devToolsConfig$jscomp$inline_1904.bundleType,
version: devToolsConfig$jscomp$inline_1904.version,
rendererPackageName: devToolsConfig$jscomp$inline_1904.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1904.rendererConfig,
bundleType: devToolsConfig$jscomp$inline_1907.bundleType,
version: devToolsConfig$jscomp$inline_1907.version,
rendererPackageName: devToolsConfig$jscomp$inline_1907.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1907.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -18053,14 +18043,14 @@ var devToolsConfig$jscomp$inline_1904 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1904.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1907.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-classic-86500a4d"
reconcilerVersion: "18.3.0-www-classic-a5679a0f"
});
assign(Internals, {
ReactBrowserEventEmitter: {
@@ -18378,7 +18368,7 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-classic-86500a4d";
exports.version = "18.3.0-www-classic-a5679a0f";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -1848,9 +1848,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1884,10 +1886,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7553,27 +7551,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7605,9 +7590,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (
(workInProgress.lanes = renderLanes),
@@ -14265,14 +14255,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$371;
if (canUseDOM) {
var isSupported$jscomp$inline_1636 = "oninput" in document;
if (!isSupported$jscomp$inline_1636) {
var element$jscomp$inline_1637 = document.createElement("div");
element$jscomp$inline_1637.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1636 =
"function" === typeof element$jscomp$inline_1637.oninput;
var isSupported$jscomp$inline_1639 = "oninput" in document;
if (!isSupported$jscomp$inline_1639) {
var element$jscomp$inline_1640 = document.createElement("div");
element$jscomp$inline_1640.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1639 =
"function" === typeof element$jscomp$inline_1640.oninput;
}
JSCompiler_inline_result$jscomp$371 = isSupported$jscomp$inline_1636;
JSCompiler_inline_result$jscomp$371 = isSupported$jscomp$inline_1639;
} else JSCompiler_inline_result$jscomp$371 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$371 &&
@@ -14584,20 +14574,20 @@ function registerSimpleEvent(domEventName, reactName) {
registerTwoPhaseEvent(reactName, [domEventName]);
}
for (
var i$jscomp$inline_1677 = 0;
i$jscomp$inline_1677 < simpleEventPluginEvents.length;
i$jscomp$inline_1677++
var i$jscomp$inline_1680 = 0;
i$jscomp$inline_1680 < simpleEventPluginEvents.length;
i$jscomp$inline_1680++
) {
var eventName$jscomp$inline_1678 =
simpleEventPluginEvents[i$jscomp$inline_1677],
domEventName$jscomp$inline_1679 =
eventName$jscomp$inline_1678.toLowerCase(),
capitalizedEvent$jscomp$inline_1680 =
eventName$jscomp$inline_1678[0].toUpperCase() +
eventName$jscomp$inline_1678.slice(1);
var eventName$jscomp$inline_1681 =
simpleEventPluginEvents[i$jscomp$inline_1680],
domEventName$jscomp$inline_1682 =
eventName$jscomp$inline_1681.toLowerCase(),
capitalizedEvent$jscomp$inline_1683 =
eventName$jscomp$inline_1681[0].toUpperCase() +
eventName$jscomp$inline_1681.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1679,
"on" + capitalizedEvent$jscomp$inline_1680
domEventName$jscomp$inline_1682,
"on" + capitalizedEvent$jscomp$inline_1683
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -17523,10 +17513,10 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1863 = {
var devToolsConfig$jscomp$inline_1866 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-modern-c0bbf979",
version: "18.3.0-www-modern-0883d4be",
rendererPackageName: "react-dom"
};
(function (internals) {
@@ -17544,10 +17534,10 @@ var devToolsConfig$jscomp$inline_1863 = {
} catch (err) {}
return hook.checkDCE ? !0 : !1;
})({
bundleType: devToolsConfig$jscomp$inline_1863.bundleType,
version: devToolsConfig$jscomp$inline_1863.version,
rendererPackageName: devToolsConfig$jscomp$inline_1863.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1863.rendererConfig,
bundleType: devToolsConfig$jscomp$inline_1866.bundleType,
version: devToolsConfig$jscomp$inline_1866.version,
rendererPackageName: devToolsConfig$jscomp$inline_1866.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1866.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -17564,14 +17554,14 @@ var devToolsConfig$jscomp$inline_1863 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1863.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1866.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-modern-c0bbf979"
reconcilerVersion: "18.3.0-www-modern-0883d4be"
});
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
exports.createPortal = function (children, container) {
@@ -17817,7 +17807,7 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-modern-c0bbf979";
exports.version = "18.3.0-www-modern-0883d4be";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -9078,10 +9078,6 @@ if (__DEV__) {
return true;
}
function hasUnhydratedTailNodes() {
return isHydrating && nextHydratableInstance !== null;
}
function warnIfUnhydratedTailNodes(fiber) {
var nextInstance = nextHydratableInstance;
@@ -25095,17 +25091,6 @@ if (__DEV__) {
workInProgress,
nextState
) {
if (
hasUnhydratedTailNodes() &&
(workInProgress.mode & ConcurrentMode) !== NoMode &&
(workInProgress.flags & DidCapture) === NoFlags$1
) {
warnIfUnhydratedTailNodes(workInProgress);
resetHydrationState();
workInProgress.flags |= ForceClientRender | DidCapture;
return false;
}
var wasHydrated = popHydrationState(workInProgress);
if (nextState !== null && nextState.dehydrated !== null) {
@@ -25542,7 +25527,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -25563,17 +25547,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -36670,7 +36658,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-classic-f938cefa";
var ReactVersion = "18.3.0-www-classic-5741f0db";
function createPortal$1(
children,
@@ -9040,10 +9040,6 @@ if (__DEV__) {
return true;
}
function hasUnhydratedTailNodes() {
return isHydrating && nextHydratableInstance !== null;
}
function warnIfUnhydratedTailNodes(fiber) {
var nextInstance = nextHydratableInstance;
@@ -24980,17 +24976,6 @@ if (__DEV__) {
workInProgress,
nextState
) {
if (
hasUnhydratedTailNodes() &&
(workInProgress.mode & ConcurrentMode) !== NoMode &&
(workInProgress.flags & DidCapture) === NoFlags$1
) {
warnIfUnhydratedTailNodes(workInProgress);
resetHydrationState();
workInProgress.flags |= ForceClientRender | DidCapture;
return false;
}
var wasHydrated = popHydrationState(workInProgress);
if (nextState !== null && nextState.dehydrated !== null) {
@@ -25420,7 +25405,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -25441,17 +25425,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -36517,7 +36505,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-modern-0576ced4";
var ReactVersion = "18.3.0-www-modern-3b677659";
function createPortal$1(
children,
@@ -1902,9 +1902,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1938,10 +1940,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7528,27 +7526,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7567,9 +7552,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -13407,14 +13397,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$354;
if (canUseDOM) {
var isSupported$jscomp$inline_1578 = "oninput" in document;
if (!isSupported$jscomp$inline_1578) {
var element$jscomp$inline_1579 = document.createElement("div");
element$jscomp$inline_1579.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1578 =
"function" === typeof element$jscomp$inline_1579.oninput;
var isSupported$jscomp$inline_1581 = "oninput" in document;
if (!isSupported$jscomp$inline_1581) {
var element$jscomp$inline_1582 = document.createElement("div");
element$jscomp$inline_1582.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1581 =
"function" === typeof element$jscomp$inline_1582.oninput;
}
JSCompiler_inline_result$jscomp$354 = isSupported$jscomp$inline_1578;
JSCompiler_inline_result$jscomp$354 = isSupported$jscomp$inline_1581;
} else JSCompiler_inline_result$jscomp$354 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$354 &&
@@ -13789,20 +13779,20 @@ function extractEvents$1(
}
}
for (
var i$jscomp$inline_1619 = 0;
i$jscomp$inline_1619 < simpleEventPluginEvents.length;
i$jscomp$inline_1619++
var i$jscomp$inline_1622 = 0;
i$jscomp$inline_1622 < simpleEventPluginEvents.length;
i$jscomp$inline_1622++
) {
var eventName$jscomp$inline_1620 =
simpleEventPluginEvents[i$jscomp$inline_1619],
domEventName$jscomp$inline_1621 =
eventName$jscomp$inline_1620.toLowerCase(),
capitalizedEvent$jscomp$inline_1622 =
eventName$jscomp$inline_1620[0].toUpperCase() +
eventName$jscomp$inline_1620.slice(1);
var eventName$jscomp$inline_1623 =
simpleEventPluginEvents[i$jscomp$inline_1622],
domEventName$jscomp$inline_1624 =
eventName$jscomp$inline_1623.toLowerCase(),
capitalizedEvent$jscomp$inline_1625 =
eventName$jscomp$inline_1623[0].toUpperCase() +
eventName$jscomp$inline_1623.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1621,
"on" + capitalizedEvent$jscomp$inline_1622
domEventName$jscomp$inline_1624,
"on" + capitalizedEvent$jscomp$inline_1625
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -17573,17 +17563,17 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1824 = {
var devToolsConfig$jscomp$inline_1827 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-classic-c1c1744a",
version: "18.3.0-www-classic-6ddd4df1",
rendererPackageName: "react-dom"
};
var internals$jscomp$inline_2190 = {
bundleType: devToolsConfig$jscomp$inline_1824.bundleType,
version: devToolsConfig$jscomp$inline_1824.version,
rendererPackageName: devToolsConfig$jscomp$inline_1824.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1824.rendererConfig,
var internals$jscomp$inline_2193 = {
bundleType: devToolsConfig$jscomp$inline_1827.bundleType,
version: devToolsConfig$jscomp$inline_1827.version,
rendererPackageName: devToolsConfig$jscomp$inline_1827.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1827.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -17599,26 +17589,26 @@ var internals$jscomp$inline_2190 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1824.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1827.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-classic-c1c1744a"
reconcilerVersion: "18.3.0-www-classic-6ddd4df1"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2191 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
var hook$jscomp$inline_2194 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
if (
!hook$jscomp$inline_2191.isDisabled &&
hook$jscomp$inline_2191.supportsFiber
!hook$jscomp$inline_2194.isDisabled &&
hook$jscomp$inline_2194.supportsFiber
)
try {
(rendererID = hook$jscomp$inline_2191.inject(
internals$jscomp$inline_2190
(rendererID = hook$jscomp$inline_2194.inject(
internals$jscomp$inline_2193
)),
(injectedHook = hook$jscomp$inline_2191);
(injectedHook = hook$jscomp$inline_2194);
} catch (err) {}
}
assign(Internals, {
@@ -18088,4 +18078,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-classic-c1c1744a";
exports.version = "18.3.0-www-classic-6ddd4df1";
@@ -1857,9 +1857,11 @@ function popHydrationState(fiber) {
}
JSCompiler_temp && (shouldClear = !0);
if (shouldClear && (shouldClear = nextHydratableInstance))
if (shouldClientRenderOnMismatch(fiber))
warnIfUnhydratedTailNodes(), throwOnHydrationMismatch();
else
if (shouldClientRenderOnMismatch(fiber)) {
for (shouldClear = nextHydratableInstance; shouldClear; )
shouldClear = getNextHydratableSibling(shouldClear);
throwOnHydrationMismatch();
} else
for (; shouldClear; )
deleteHydratableInstance(fiber, shouldClear),
(shouldClear = getNextHydratableSibling(shouldClear));
@@ -1893,10 +1895,6 @@ function popHydrationState(fiber) {
: null;
return !0;
}
function warnIfUnhydratedTailNodes() {
for (var nextInstance = nextHydratableInstance; nextInstance; )
nextInstance = getNextHydratableSibling(nextInstance);
}
function resetHydrationState() {
nextHydratableInstance = hydrationParentFiber = null;
isHydrating = !1;
@@ -7426,27 +7424,14 @@ function completeWork(current, workInProgress, renderLanes) {
bubbleProperties(workInProgress);
return null;
case 13:
popSuspenseHandler(workInProgress);
newProps = workInProgress.memoizedState;
if (
null === current ||
(null !== current.memoizedState &&
null !== current.memoizedState.dehydrated)
) {
if (
isHydrating &&
null !== nextHydratableInstance &&
0 !== (workInProgress.mode & 1) &&
0 === (workInProgress.flags & 128)
)
warnIfUnhydratedTailNodes(),
resetHydrationState(),
(workInProgress.flags |= 384),
(currentResource = !1);
else if (
((currentResource = popHydrationState(workInProgress)),
null !== newProps && null !== newProps.dehydrated)
) {
currentResource = popHydrationState(workInProgress);
if (null !== newProps && null !== newProps.dehydrated) {
if (null === current) {
if (!currentResource) throw Error(formatProdErrorMessage(318));
currentResource = workInProgress.memoizedState;
@@ -7465,9 +7450,14 @@ function completeWork(current, workInProgress, renderLanes) {
null !== hydrationErrors &&
(queueRecoverableErrors(hydrationErrors), (hydrationErrors = null)),
(currentResource = !0);
if (!currentResource)
return workInProgress.flags & 256 ? workInProgress : null;
if (!currentResource) {
if (workInProgress.flags & 256)
return popSuspenseHandler(workInProgress), workInProgress;
popSuspenseHandler(workInProgress);
return null;
}
}
popSuspenseHandler(workInProgress);
if (0 !== (workInProgress.flags & 128))
return (workInProgress.lanes = renderLanes), workInProgress;
renderLanes = null !== newProps;
@@ -13835,14 +13825,14 @@ var isInputEventSupported = !1;
if (canUseDOM) {
var JSCompiler_inline_result$jscomp$352;
if (canUseDOM) {
var isSupported$jscomp$inline_1578 = "oninput" in document;
if (!isSupported$jscomp$inline_1578) {
var element$jscomp$inline_1579 = document.createElement("div");
element$jscomp$inline_1579.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1578 =
"function" === typeof element$jscomp$inline_1579.oninput;
var isSupported$jscomp$inline_1581 = "oninput" in document;
if (!isSupported$jscomp$inline_1581) {
var element$jscomp$inline_1582 = document.createElement("div");
element$jscomp$inline_1582.setAttribute("oninput", "return;");
isSupported$jscomp$inline_1581 =
"function" === typeof element$jscomp$inline_1582.oninput;
}
JSCompiler_inline_result$jscomp$352 = isSupported$jscomp$inline_1578;
JSCompiler_inline_result$jscomp$352 = isSupported$jscomp$inline_1581;
} else JSCompiler_inline_result$jscomp$352 = !1;
isInputEventSupported =
JSCompiler_inline_result$jscomp$352 &&
@@ -14154,20 +14144,20 @@ function registerSimpleEvent(domEventName, reactName) {
registerTwoPhaseEvent(reactName, [domEventName]);
}
for (
var i$jscomp$inline_1619 = 0;
i$jscomp$inline_1619 < simpleEventPluginEvents.length;
i$jscomp$inline_1619++
var i$jscomp$inline_1622 = 0;
i$jscomp$inline_1622 < simpleEventPluginEvents.length;
i$jscomp$inline_1622++
) {
var eventName$jscomp$inline_1620 =
simpleEventPluginEvents[i$jscomp$inline_1619],
domEventName$jscomp$inline_1621 =
eventName$jscomp$inline_1620.toLowerCase(),
capitalizedEvent$jscomp$inline_1622 =
eventName$jscomp$inline_1620[0].toUpperCase() +
eventName$jscomp$inline_1620.slice(1);
var eventName$jscomp$inline_1623 =
simpleEventPluginEvents[i$jscomp$inline_1622],
domEventName$jscomp$inline_1624 =
eventName$jscomp$inline_1623.toLowerCase(),
capitalizedEvent$jscomp$inline_1625 =
eventName$jscomp$inline_1623[0].toUpperCase() +
eventName$jscomp$inline_1623.slice(1);
registerSimpleEvent(
domEventName$jscomp$inline_1621,
"on" + capitalizedEvent$jscomp$inline_1622
domEventName$jscomp$inline_1624,
"on" + capitalizedEvent$jscomp$inline_1625
);
}
registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -17150,17 +17140,17 @@ Internals.Events = [
restoreStateIfNeeded,
batchedUpdates$1
];
var devToolsConfig$jscomp$inline_1783 = {
var devToolsConfig$jscomp$inline_1786 = {
findFiberByHostInstance: getClosestInstanceFromNode,
bundleType: 0,
version: "18.3.0-www-modern-7e0344a2",
version: "18.3.0-www-modern-05c693f4",
rendererPackageName: "react-dom"
};
var internals$jscomp$inline_2153 = {
bundleType: devToolsConfig$jscomp$inline_1783.bundleType,
version: devToolsConfig$jscomp$inline_1783.version,
rendererPackageName: devToolsConfig$jscomp$inline_1783.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1783.rendererConfig,
var internals$jscomp$inline_2156 = {
bundleType: devToolsConfig$jscomp$inline_1786.bundleType,
version: devToolsConfig$jscomp$inline_1786.version,
rendererPackageName: devToolsConfig$jscomp$inline_1786.rendererPackageName,
rendererConfig: devToolsConfig$jscomp$inline_1786.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
@@ -17177,26 +17167,26 @@ var internals$jscomp$inline_2153 = {
return null === fiber ? null : fiber.stateNode;
},
findFiberByHostInstance:
devToolsConfig$jscomp$inline_1783.findFiberByHostInstance ||
devToolsConfig$jscomp$inline_1786.findFiberByHostInstance ||
emptyFindFiberByHostInstance,
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.3.0-www-modern-7e0344a2"
reconcilerVersion: "18.3.0-www-modern-05c693f4"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2154 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
var hook$jscomp$inline_2157 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
if (
!hook$jscomp$inline_2154.isDisabled &&
hook$jscomp$inline_2154.supportsFiber
!hook$jscomp$inline_2157.isDisabled &&
hook$jscomp$inline_2157.supportsFiber
)
try {
(rendererID = hook$jscomp$inline_2154.inject(
internals$jscomp$inline_2153
(rendererID = hook$jscomp$inline_2157.inject(
internals$jscomp$inline_2156
)),
(injectedHook = hook$jscomp$inline_2154);
(injectedHook = hook$jscomp$inline_2157);
} catch (err) {}
}
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
@@ -17593,4 +17583,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactCurrentDispatcher$2.current.useHostTransitionStatus();
};
exports.version = "18.3.0-www-modern-7e0344a2";
exports.version = "18.3.0-www-modern-05c693f4";
@@ -17512,7 +17512,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -17533,17 +17532,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -26102,7 +26105,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-classic-767ddd4e";
var ReactVersion = "18.3.0-www-classic-ce114f6f";
// Might add PROFILE later.
@@ -17512,7 +17512,6 @@ if (__DEV__) {
}
case SuspenseComponent: {
popSuspenseHandler(workInProgress);
var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this
// to its own fiber type so that we can add other kinds of hydration
// boundaries that aren't associated with a Suspense tree. In anticipation
@@ -17533,17 +17532,21 @@ if (__DEV__) {
if (!fallthroughToNormalSuspensePath) {
if (workInProgress.flags & ForceClientRender) {
// Special case. There were remaining unhydrated nodes. We treat
popSuspenseHandler(workInProgress); // Special case. There were remaining unhydrated nodes. We treat
// this as a mismatch. Revert to client rendering.
return workInProgress;
} else {
// Did not finish hydrating, either because this is the initial
popSuspenseHandler(workInProgress); // Did not finish hydrating, either because this is the initial
// render or because something suspended.
return null;
}
} // Continue with the normal Suspense path.
}
popSuspenseHandler(workInProgress);
if ((workInProgress.flags & DidCapture) !== NoFlags$1) {
// Something suspended. Re-render with the fallback children.
workInProgress.lanes = renderLanes; // Do not reset the effect list.
@@ -26102,7 +26105,7 @@ if (__DEV__) {
return root;
}
var ReactVersion = "18.3.0-www-modern-34e32e54";
var ReactVersion = "18.3.0-www-modern-9e4f77da";
// Might add PROFILE later.