diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-dev.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-dev.js index c35ff19cc1..1a0cb0f4bd 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-dev.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-dev.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<<4d9878b267a005902b63980f6c367201>> */ 'use strict'; @@ -8580,46 +8580,49 @@ function mountDeferredValueImpl(hook, value, initialValue) { } function updateDeferredValueImpl(hook, prevValue, value, initialValue) { - // TODO: We should also check if this component is going from - // hidden -> visible. If so, it should use the initialValue arg. - var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + if (objectIs(value, prevValue)) { + // The incoming value is referentially identical to the currently rendered + // value, so we can bail out quickly. + return value; + } else { + // Received a new value that's different from the current value. + // Check if we're inside a hidden tree + if (isCurrentTreeHidden()) { + // Revealing a prerendered tree is considered the same as mounting new + // one, so we reuse the "mount" path in this case. + var resultValue = mountDeferredValueImpl(hook, value); // Unlike during an actual mount, we need to mark this as an update if + // the value changed. - if (shouldDeferValue) { - // This is an urgent update. If the value has changed, keep using the - // previous value and spawn a deferred render to update it later. - if (!objectIs(value, prevValue)) { + if (!objectIs(resultValue, prevValue)) { + markWorkInProgressReceivedUpdate(); + } + + return resultValue; + } + + var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + + if (shouldDeferValue) { + // This is an urgent update. Since the value has changed, keep using the + // previous value and spawn a deferred render to update it later. // Schedule a deferred render var deferredLane = requestDeferredLane(); currentlyRenderingFiber$1.lanes = mergeLanes( currentlyRenderingFiber$1.lanes, deferredLane ); - markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent - // from the latest value. The name "baseState" doesn't really match how we - // use it because we're reusing a state hook field instead of creating a - // new one. + markSkippedUpdateLanes(deferredLane); // Reuse the previous value. We do not need to mark this as an update, + // because we did not render a new value. - hook.baseState = true; - } // Reuse the previous value - - return prevValue; - } else { - // This is not an urgent update, so we can use the latest value regardless - // of what it is. No need to defer it. - // However, if we're currently inside a spawned render, then we need to mark - // this as an update to prevent the fiber from bailing out. - // - // `baseState` is true when the current value is different from the rendered - // value. The name doesn't really match how we use it because we're reusing - // a state hook field instead of creating a new one. - if (hook.baseState) { - // Flip this back to false. - hook.baseState = false; + return prevValue; + } else { + // This is not an urgent update, so we can use the latest value regardless + // of what it is. No need to defer it. + // Mark this as an update to prevent the fiber from bailing out. markWorkInProgressReceivedUpdate(); + hook.memoizedState = value; + return value; } - - hook.memoizedState = value; - return value; } } @@ -24875,7 +24878,7 @@ function createFiberRoot( return root; } -var ReactVersion = "18.3.0-canary-b2a68a65c-20231017"; +var ReactVersion = "18.3.0-canary-75c1bd7ee-20231017"; // Might add PROFILE later. diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-prod.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-prod.js index bc42d729b0..82685c770e 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-prod.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-prod.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<> */ "use strict"; @@ -2849,21 +2849,23 @@ function updateMemo(nextCreate, deps) { return nextCreate; } function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook.memoizedState = value), + objectIs(value, prevValue) || (didReceiveUpdate = !0), + value ); - objectIs(value, prevValue) || - (0 === workInProgressDeferredLane && - (workInProgressDeferredLane = - 0 !== (workInProgressRootRenderLanes & 536870912) - ? 536870912 - : requestTransitionLane()), - (value = workInProgressDeferredLane), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + 0 === workInProgressDeferredLane && + (workInProgressDeferredLane = + 0 !== (workInProgressRootRenderLanes & 536870912) + ? 536870912 + : requestTransitionLane()); + hook = workInProgressDeferredLane; + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -9015,19 +9017,19 @@ function wrapFiber(fiber) { fiberToWrapper.set(fiber, wrapper)); return wrapper; } -var devToolsConfig$jscomp$inline_1025 = { +var devToolsConfig$jscomp$inline_1031 = { findFiberByHostInstance: function () { throw Error("TestRenderer does not support findFiberByHostInstance()"); }, bundleType: 0, - version: "18.3.0-canary-b2a68a65c-20231017", + version: "18.3.0-canary-75c1bd7ee-20231017", rendererPackageName: "react-test-renderer" }; -var internals$jscomp$inline_1218 = { - bundleType: devToolsConfig$jscomp$inline_1025.bundleType, - version: devToolsConfig$jscomp$inline_1025.version, - rendererPackageName: devToolsConfig$jscomp$inline_1025.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1025.rendererConfig, +var internals$jscomp$inline_1224 = { + bundleType: devToolsConfig$jscomp$inline_1031.bundleType, + version: devToolsConfig$jscomp$inline_1031.version, + rendererPackageName: devToolsConfig$jscomp$inline_1031.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1031.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -9044,26 +9046,26 @@ var internals$jscomp$inline_1218 = { return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1025.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1031.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-b2a68a65c-20231017" + reconcilerVersion: "18.3.0-canary-75c1bd7ee-20231017" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_1219 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_1225 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_1219.isDisabled && - hook$jscomp$inline_1219.supportsFiber + !hook$jscomp$inline_1225.isDisabled && + hook$jscomp$inline_1225.supportsFiber ) try { - (rendererID = hook$jscomp$inline_1219.inject( - internals$jscomp$inline_1218 + (rendererID = hook$jscomp$inline_1225.inject( + internals$jscomp$inline_1224 )), - (injectedHook = hook$jscomp$inline_1219); + (injectedHook = hook$jscomp$inline_1225); } catch (err) {} } exports._Scheduler = Scheduler; diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-profiling.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-profiling.js index f3e4003b87..1e95ec344e 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-profiling.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-profiling.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<> */ "use strict"; @@ -2869,21 +2869,23 @@ function updateMemo(nextCreate, deps) { return nextCreate; } function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook.memoizedState = value), + objectIs(value, prevValue) || (didReceiveUpdate = !0), + value ); - objectIs(value, prevValue) || - (0 === workInProgressDeferredLane && - (workInProgressDeferredLane = - 0 !== (workInProgressRootRenderLanes & 536870912) - ? 536870912 - : requestTransitionLane()), - (value = workInProgressDeferredLane), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + 0 === workInProgressDeferredLane && + (workInProgressDeferredLane = + 0 !== (workInProgressRootRenderLanes & 536870912) + ? 536870912 + : requestTransitionLane()); + hook = workInProgressDeferredLane; + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -9441,19 +9443,19 @@ function wrapFiber(fiber) { fiberToWrapper.set(fiber, wrapper)); return wrapper; } -var devToolsConfig$jscomp$inline_1067 = { +var devToolsConfig$jscomp$inline_1073 = { findFiberByHostInstance: function () { throw Error("TestRenderer does not support findFiberByHostInstance()"); }, bundleType: 0, - version: "18.3.0-canary-b2a68a65c-20231017", + version: "18.3.0-canary-75c1bd7ee-20231017", rendererPackageName: "react-test-renderer" }; -var internals$jscomp$inline_1259 = { - bundleType: devToolsConfig$jscomp$inline_1067.bundleType, - version: devToolsConfig$jscomp$inline_1067.version, - rendererPackageName: devToolsConfig$jscomp$inline_1067.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1067.rendererConfig, +var internals$jscomp$inline_1265 = { + bundleType: devToolsConfig$jscomp$inline_1073.bundleType, + version: devToolsConfig$jscomp$inline_1073.version, + rendererPackageName: devToolsConfig$jscomp$inline_1073.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1073.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -9470,26 +9472,26 @@ var internals$jscomp$inline_1259 = { return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1067.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1073.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-b2a68a65c-20231017" + reconcilerVersion: "18.3.0-canary-75c1bd7ee-20231017" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_1260 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_1266 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_1260.isDisabled && - hook$jscomp$inline_1260.supportsFiber + !hook$jscomp$inline_1266.isDisabled && + hook$jscomp$inline_1266.supportsFiber ) try { - (rendererID = hook$jscomp$inline_1260.inject( - internals$jscomp$inline_1259 + (rendererID = hook$jscomp$inline_1266.inject( + internals$jscomp$inline_1265 )), - (injectedHook = hook$jscomp$inline_1260); + (injectedHook = hook$jscomp$inline_1266); } catch (err) {} } exports._Scheduler = Scheduler; diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-dev.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-dev.js index 6b1b568491..7c4650d835 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-dev.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-dev.js @@ -27,7 +27,7 @@ if ( } "use strict"; -var ReactVersion = "18.3.0-canary-b2a68a65c-20231017"; +var ReactVersion = "18.3.0-canary-75c1bd7ee-20231017"; // ATTENTION // When adding new symbols to this file, diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-prod.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-prod.js index 5b9bbc8b44..bf69e3250f 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-prod.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-prod.js @@ -580,4 +580,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactCurrentDispatcher.current.useTransition(); }; -exports.version = "18.3.0-canary-b2a68a65c-20231017"; +exports.version = "18.3.0-canary-75c1bd7ee-20231017"; diff --git a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-profiling.js b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-profiling.js index 8911457e35..4ed50d9844 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-profiling.js +++ b/compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-profiling.js @@ -583,7 +583,7 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactCurrentDispatcher.current.useTransition(); }; -exports.version = "18.3.0-canary-b2a68a65c-20231017"; +exports.version = "18.3.0-canary-75c1bd7ee-20231017"; /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ if ( diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/REVISION b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/REVISION index a6a4eca4c8..f172e74bf0 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/REVISION +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/REVISION @@ -1 +1 @@ -b2a68a65c84b63ac86930d88ae5c84380cbbdeb6 +75c1bd7ee7e4a87a4dd0f560e157c57957ef823b diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-dev.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-dev.fb.js index a1bc10ee7b..dc8ce97ce8 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-dev.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<<6162ebbe05ae0d0f278a11c2d5dc1c6c>> + * @generated SignedSource<<30eb74bc13c38978deef06e3b48b5850>> */ 'use strict'; @@ -12067,7 +12067,7 @@ function updateDeferredValue(value, initialValue) { var hook = updateWorkInProgressHook(); var resolvedCurrentHook = currentHook; var prevValue = resolvedCurrentHook.memoizedState; - return updateDeferredValueImpl(hook, prevValue, value); + return updateDeferredValueImpl(hook, prevValue, value, initialValue); } function rerenderDeferredValue(value, initialValue) { @@ -12079,7 +12079,7 @@ function rerenderDeferredValue(value, initialValue) { } else { // This is a rerender during an update. var prevValue = currentHook.memoizedState; - return updateDeferredValueImpl(hook, prevValue, value); + return updateDeferredValueImpl(hook, prevValue, value, initialValue); } } @@ -12100,12 +12100,7 @@ function mountDeferredValueImpl(hook, value, initialValue) { currentlyRenderingFiber$1.lanes, deferredLane ); - markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent - // from the latest value. The name "baseState" doesn't really match how we - // use it because we're reusing a state hook field instead of creating a - // new one. - - hook.baseState = true; + markSkippedUpdateLanes(deferredLane); return initialValue; } else { hook.memoizedState = value; @@ -12114,46 +12109,49 @@ function mountDeferredValueImpl(hook, value, initialValue) { } function updateDeferredValueImpl(hook, prevValue, value, initialValue) { - // TODO: We should also check if this component is going from - // hidden -> visible. If so, it should use the initialValue arg. - var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + if (objectIs(value, prevValue)) { + // The incoming value is referentially identical to the currently rendered + // value, so we can bail out quickly. + return value; + } else { + // Received a new value that's different from the current value. + // Check if we're inside a hidden tree + if (isCurrentTreeHidden()) { + // Revealing a prerendered tree is considered the same as mounting new + // one, so we reuse the "mount" path in this case. + var resultValue = mountDeferredValueImpl(hook, value, initialValue); // Unlike during an actual mount, we need to mark this as an update if + // the value changed. - if (shouldDeferValue) { - // This is an urgent update. If the value has changed, keep using the - // previous value and spawn a deferred render to update it later. - if (!objectIs(value, prevValue)) { + if (!objectIs(resultValue, prevValue)) { + markWorkInProgressReceivedUpdate(); + } + + return resultValue; + } + + var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + + if (shouldDeferValue) { + // This is an urgent update. Since the value has changed, keep using the + // previous value and spawn a deferred render to update it later. // Schedule a deferred render var deferredLane = requestDeferredLane(); currentlyRenderingFiber$1.lanes = mergeLanes( currentlyRenderingFiber$1.lanes, deferredLane ); - markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent - // from the latest value. The name "baseState" doesn't really match how we - // use it because we're reusing a state hook field instead of creating a - // new one. + markSkippedUpdateLanes(deferredLane); // Reuse the previous value. We do not need to mark this as an update, + // because we did not render a new value. - hook.baseState = true; - } // Reuse the previous value - - return prevValue; - } else { - // This is not an urgent update, so we can use the latest value regardless - // of what it is. No need to defer it. - // However, if we're currently inside a spawned render, then we need to mark - // this as an update to prevent the fiber from bailing out. - // - // `baseState` is true when the current value is different from the rendered - // value. The name doesn't really match how we use it because we're reusing - // a state hook field instead of creating a new one. - if (hook.baseState) { - // Flip this back to false. - hook.baseState = false; + return prevValue; + } else { + // This is not an urgent update, so we can use the latest value regardless + // of what it is. No need to defer it. + // Mark this as an update to prevent the fiber from bailing out. markWorkInProgressReceivedUpdate(); + hook.memoizedState = value; + return value; } - - hook.memoizedState = value; - return value; } } @@ -12821,7 +12819,7 @@ var InvalidNestedHooksDispatcherOnRerenderInDEV = null; useDeferredValue: function (value, initialValue) { currentHookNameInDev = "useDeferredValue"; updateHookTypesDev(); - return updateDeferredValue(value); + return updateDeferredValue(value, initialValue); }, useTransition: function () { currentHookNameInDev = "useTransition"; @@ -13189,7 +13187,7 @@ var InvalidNestedHooksDispatcherOnRerenderInDEV = null; currentHookNameInDev = "useDeferredValue"; warnInvalidHookAccess(); updateHookTypesDev(); - return updateDeferredValue(value); + return updateDeferredValue(value, initialValue); }, useTransition: function () { currentHookNameInDev = "useTransition"; @@ -27253,7 +27251,7 @@ function createFiberRoot( return root; } -var ReactVersion = "18.3.0-canary-36074133"; +var ReactVersion = "18.3.0-canary-b286d49a"; function createPortal$1( children, diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-prod.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-prod.fb.js index 262d9fa6b1..68ddc5112c 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-prod.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<> */ "use strict"; @@ -4068,24 +4068,25 @@ function updateMemo(nextCreate, deps) { function mountDeferredValueImpl(hook, value, initialValue) { return void 0 !== initialValue && 0 === (renderLanes & 1073741824) ? ((hook.memoizedState = initialValue), - (value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0), + (hook = requestDeferredLane()), + (currentlyRenderingFiber$1.lanes |= hook), + (workInProgressRootSkippedLanes |= hook), initialValue) : (hook.memoizedState = value); } -function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) +function updateDeferredValueImpl(hook, prevValue, value, initialValue) { + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook = mountDeferredValueImpl(hook, value, initialValue)), + objectIs(hook, prevValue) || (didReceiveUpdate = !0), + hook ); - objectIs(value, prevValue) || - ((value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + hook = requestDeferredLane(); + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -4349,9 +4350,14 @@ var HooksDispatcherOnUpdate = { return updateReducer(basicStateReducer); }, useDebugValue: mountDebugValue, - useDeferredValue: function (value) { + useDeferredValue: function (value, initialValue) { var hook = updateWorkInProgressHook(); - return updateDeferredValueImpl(hook, currentHook.memoizedState, value); + return updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = updateReducer(basicStateReducer)[0], @@ -4387,7 +4393,12 @@ var HooksDispatcherOnRerender = { var hook = updateWorkInProgressHook(); return null === currentHook ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl(hook, currentHook.memoizedState, value); + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = rerenderReducer(basicStateReducer)[0], @@ -9519,10 +9530,10 @@ batchedUpdatesImpl = function (fn, a) { } }; var roots = new Map(), - devToolsConfig$jscomp$inline_1047 = { + devToolsConfig$jscomp$inline_1048 = { findFiberByHostInstance: getInstanceFromNode, bundleType: 0, - version: "18.3.0-canary-95ce36ab", + version: "18.3.0-canary-db869081", rendererPackageName: "react-native-renderer", rendererConfig: { getInspectorDataForInstance: getInspectorDataForInstance, @@ -9538,11 +9549,11 @@ var roots = new Map(), }.bind(null, findNodeHandle) } }; -var internals$jscomp$inline_1289 = { - bundleType: devToolsConfig$jscomp$inline_1047.bundleType, - version: devToolsConfig$jscomp$inline_1047.version, - rendererPackageName: devToolsConfig$jscomp$inline_1047.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1047.rendererConfig, +var internals$jscomp$inline_1290 = { + bundleType: devToolsConfig$jscomp$inline_1048.bundleType, + version: devToolsConfig$jscomp$inline_1048.version, + rendererPackageName: devToolsConfig$jscomp$inline_1048.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1048.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -9558,26 +9569,26 @@ var internals$jscomp$inline_1289 = { return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1047.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1048.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-95ce36ab" + reconcilerVersion: "18.3.0-canary-db869081" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_1290 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_1291 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_1290.isDisabled && - hook$jscomp$inline_1290.supportsFiber + !hook$jscomp$inline_1291.isDisabled && + hook$jscomp$inline_1291.supportsFiber ) try { - (rendererID = hook$jscomp$inline_1290.inject( - internals$jscomp$inline_1289 + (rendererID = hook$jscomp$inline_1291.inject( + internals$jscomp$inline_1290 )), - (injectedHook = hook$jscomp$inline_1290); + (injectedHook = hook$jscomp$inline_1291); } catch (err) {} } exports.createPortal = function (children, containerTag) { diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js index 6e450604a5..ff6b2582fe 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<<4c458b1ffae67751c0467a6058d6e4f2>> */ @@ -4199,24 +4199,25 @@ function updateMemo(nextCreate, deps) { function mountDeferredValueImpl(hook, value, initialValue) { return void 0 !== initialValue && 0 === (renderLanes & 1073741824) ? ((hook.memoizedState = initialValue), - (value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0), + (hook = requestDeferredLane()), + (currentlyRenderingFiber$1.lanes |= hook), + (workInProgressRootSkippedLanes |= hook), initialValue) : (hook.memoizedState = value); } -function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) +function updateDeferredValueImpl(hook, prevValue, value, initialValue) { + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook = mountDeferredValueImpl(hook, value, initialValue)), + objectIs(hook, prevValue) || (didReceiveUpdate = !0), + hook ); - objectIs(value, prevValue) || - ((value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + hook = requestDeferredLane(); + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -4482,9 +4483,14 @@ var HooksDispatcherOnUpdate = { return updateReducer(basicStateReducer); }, useDebugValue: mountDebugValue, - useDeferredValue: function (value) { + useDeferredValue: function (value, initialValue) { var hook = updateWorkInProgressHook(); - return updateDeferredValueImpl(hook, currentHook.memoizedState, value); + return updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = updateReducer(basicStateReducer)[0], @@ -4520,7 +4526,12 @@ var HooksDispatcherOnRerender = { var hook = updateWorkInProgressHook(); return null === currentHook ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl(hook, currentHook.memoizedState, value); + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = rerenderReducer(basicStateReducer)[0], @@ -10228,10 +10239,10 @@ batchedUpdatesImpl = function (fn, a) { } }; var roots = new Map(), - devToolsConfig$jscomp$inline_1125 = { + devToolsConfig$jscomp$inline_1126 = { findFiberByHostInstance: getInstanceFromNode, bundleType: 0, - version: "18.3.0-canary-f4487f8c", + version: "18.3.0-canary-0539669f", rendererPackageName: "react-native-renderer", rendererConfig: { getInspectorDataForInstance: getInspectorDataForInstance, @@ -10261,10 +10272,10 @@ var roots = new Map(), } catch (err) {} return hook.checkDCE ? !0 : !1; })({ - bundleType: devToolsConfig$jscomp$inline_1125.bundleType, - version: devToolsConfig$jscomp$inline_1125.version, - rendererPackageName: devToolsConfig$jscomp$inline_1125.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1125.rendererConfig, + bundleType: devToolsConfig$jscomp$inline_1126.bundleType, + version: devToolsConfig$jscomp$inline_1126.version, + rendererPackageName: devToolsConfig$jscomp$inline_1126.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1126.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -10280,14 +10291,14 @@ var roots = new Map(), return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1125.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1126.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-f4487f8c" + reconcilerVersion: "18.3.0-canary-0539669f" }); exports.createPortal = function (children, containerTag) { return createPortal$1( diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js index 8f8fc246ec..a325d1a4e5 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<<5149fa2eabf0394426b82a7118203775>> + * @generated SignedSource<<7761533a90172f142b7160c8a395139f>> */ 'use strict'; @@ -12339,7 +12339,7 @@ function updateDeferredValue(value, initialValue) { var hook = updateWorkInProgressHook(); var resolvedCurrentHook = currentHook; var prevValue = resolvedCurrentHook.memoizedState; - return updateDeferredValueImpl(hook, prevValue, value); + return updateDeferredValueImpl(hook, prevValue, value, initialValue); } function rerenderDeferredValue(value, initialValue) { @@ -12351,7 +12351,7 @@ function rerenderDeferredValue(value, initialValue) { } else { // This is a rerender during an update. var prevValue = currentHook.memoizedState; - return updateDeferredValueImpl(hook, prevValue, value); + return updateDeferredValueImpl(hook, prevValue, value, initialValue); } } @@ -12372,12 +12372,7 @@ function mountDeferredValueImpl(hook, value, initialValue) { currentlyRenderingFiber$1.lanes, deferredLane ); - markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent - // from the latest value. The name "baseState" doesn't really match how we - // use it because we're reusing a state hook field instead of creating a - // new one. - - hook.baseState = true; + markSkippedUpdateLanes(deferredLane); return initialValue; } else { hook.memoizedState = value; @@ -12386,46 +12381,49 @@ function mountDeferredValueImpl(hook, value, initialValue) { } function updateDeferredValueImpl(hook, prevValue, value, initialValue) { - // TODO: We should also check if this component is going from - // hidden -> visible. If so, it should use the initialValue arg. - var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + if (objectIs(value, prevValue)) { + // The incoming value is referentially identical to the currently rendered + // value, so we can bail out quickly. + return value; + } else { + // Received a new value that's different from the current value. + // Check if we're inside a hidden tree + if (isCurrentTreeHidden()) { + // Revealing a prerendered tree is considered the same as mounting new + // one, so we reuse the "mount" path in this case. + var resultValue = mountDeferredValueImpl(hook, value, initialValue); // Unlike during an actual mount, we need to mark this as an update if + // the value changed. - if (shouldDeferValue) { - // This is an urgent update. If the value has changed, keep using the - // previous value and spawn a deferred render to update it later. - if (!objectIs(value, prevValue)) { + if (!objectIs(resultValue, prevValue)) { + markWorkInProgressReceivedUpdate(); + } + + return resultValue; + } + + var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes); + + if (shouldDeferValue) { + // This is an urgent update. Since the value has changed, keep using the + // previous value and spawn a deferred render to update it later. // Schedule a deferred render var deferredLane = requestDeferredLane(); currentlyRenderingFiber$1.lanes = mergeLanes( currentlyRenderingFiber$1.lanes, deferredLane ); - markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent - // from the latest value. The name "baseState" doesn't really match how we - // use it because we're reusing a state hook field instead of creating a - // new one. + markSkippedUpdateLanes(deferredLane); // Reuse the previous value. We do not need to mark this as an update, + // because we did not render a new value. - hook.baseState = true; - } // Reuse the previous value - - return prevValue; - } else { - // This is not an urgent update, so we can use the latest value regardless - // of what it is. No need to defer it. - // However, if we're currently inside a spawned render, then we need to mark - // this as an update to prevent the fiber from bailing out. - // - // `baseState` is true when the current value is different from the rendered - // value. The name doesn't really match how we use it because we're reusing - // a state hook field instead of creating a new one. - if (hook.baseState) { - // Flip this back to false. - hook.baseState = false; + return prevValue; + } else { + // This is not an urgent update, so we can use the latest value regardless + // of what it is. No need to defer it. + // Mark this as an update to prevent the fiber from bailing out. markWorkInProgressReceivedUpdate(); + hook.memoizedState = value; + return value; } - - hook.memoizedState = value; - return value; } } @@ -13093,7 +13091,7 @@ var InvalidNestedHooksDispatcherOnRerenderInDEV = null; useDeferredValue: function (value, initialValue) { currentHookNameInDev = "useDeferredValue"; updateHookTypesDev(); - return updateDeferredValue(value); + return updateDeferredValue(value, initialValue); }, useTransition: function () { currentHookNameInDev = "useTransition"; @@ -13461,7 +13459,7 @@ var InvalidNestedHooksDispatcherOnRerenderInDEV = null; currentHookNameInDev = "useDeferredValue"; warnInvalidHookAccess(); updateHookTypesDev(); - return updateDeferredValue(value); + return updateDeferredValue(value, initialValue); }, useTransition: function () { currentHookNameInDev = "useTransition"; @@ -27683,7 +27681,7 @@ function createFiberRoot( return root; } -var ReactVersion = "18.3.0-canary-5d666072"; +var ReactVersion = "18.3.0-canary-9a620f58"; function createPortal$1( children, diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js index 1da2c132a1..f99e3c8711 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<<88f7c87bf49d72ee9327d09a61b0fdb4>> + * @generated SignedSource<<5fe45a496910e026038e9ec934488c9b>> */ "use strict"; @@ -4144,24 +4144,25 @@ function updateMemo(nextCreate, deps) { function mountDeferredValueImpl(hook, value, initialValue) { return void 0 !== initialValue && 0 === (renderLanes & 1073741824) ? ((hook.memoizedState = initialValue), - (value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0), + (hook = requestDeferredLane()), + (currentlyRenderingFiber$1.lanes |= hook), + (workInProgressRootSkippedLanes |= hook), initialValue) : (hook.memoizedState = value); } -function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) +function updateDeferredValueImpl(hook, prevValue, value, initialValue) { + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook = mountDeferredValueImpl(hook, value, initialValue)), + objectIs(hook, prevValue) || (didReceiveUpdate = !0), + hook ); - objectIs(value, prevValue) || - ((value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + hook = requestDeferredLane(); + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -4425,9 +4426,14 @@ var HooksDispatcherOnUpdate = { return updateReducer(basicStateReducer); }, useDebugValue: mountDebugValue, - useDeferredValue: function (value) { + useDeferredValue: function (value, initialValue) { var hook = updateWorkInProgressHook(); - return updateDeferredValueImpl(hook, currentHook.memoizedState, value); + return updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = updateReducer(basicStateReducer)[0], @@ -4463,7 +4469,12 @@ var HooksDispatcherOnRerender = { var hook = updateWorkInProgressHook(); return null === currentHook ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl(hook, currentHook.memoizedState, value); + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = rerenderReducer(basicStateReducer)[0], @@ -9737,10 +9748,10 @@ batchedUpdatesImpl = function (fn, a) { } }; var roots = new Map(), - devToolsConfig$jscomp$inline_1110 = { + devToolsConfig$jscomp$inline_1111 = { findFiberByHostInstance: getInstanceFromTag, bundleType: 0, - version: "18.3.0-canary-2f2d9965", + version: "18.3.0-canary-17a637f1", rendererPackageName: "react-native-renderer", rendererConfig: { getInspectorDataForInstance: getInspectorDataForInstance, @@ -9756,11 +9767,11 @@ var roots = new Map(), }.bind(null, findNodeHandle) } }; -var internals$jscomp$inline_1366 = { - bundleType: devToolsConfig$jscomp$inline_1110.bundleType, - version: devToolsConfig$jscomp$inline_1110.version, - rendererPackageName: devToolsConfig$jscomp$inline_1110.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1110.rendererConfig, +var internals$jscomp$inline_1367 = { + bundleType: devToolsConfig$jscomp$inline_1111.bundleType, + version: devToolsConfig$jscomp$inline_1111.version, + rendererPackageName: devToolsConfig$jscomp$inline_1111.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1111.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -9776,26 +9787,26 @@ var internals$jscomp$inline_1366 = { return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1110.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1111.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-2f2d9965" + reconcilerVersion: "18.3.0-canary-17a637f1" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_1367 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_1368 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_1367.isDisabled && - hook$jscomp$inline_1367.supportsFiber + !hook$jscomp$inline_1368.isDisabled && + hook$jscomp$inline_1368.supportsFiber ) try { - (rendererID = hook$jscomp$inline_1367.inject( - internals$jscomp$inline_1366 + (rendererID = hook$jscomp$inline_1368.inject( + internals$jscomp$inline_1367 )), - (injectedHook = hook$jscomp$inline_1367); + (injectedHook = hook$jscomp$inline_1368); } catch (err) {} } exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = { diff --git a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js index 81d78d41f1..69dcebbccf 100644 --- a/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +++ b/compiled-rn/facebook-fbsource/xplat/js/react-native-github/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js @@ -7,7 +7,7 @@ * @noflow * @nolint * @preventMunge - * @generated SignedSource<> + * @generated SignedSource<<66a3ab08e21262224c99cef051dda83e>> */ @@ -4275,24 +4275,25 @@ function updateMemo(nextCreate, deps) { function mountDeferredValueImpl(hook, value, initialValue) { return void 0 !== initialValue && 0 === (renderLanes & 1073741824) ? ((hook.memoizedState = initialValue), - (value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0), + (hook = requestDeferredLane()), + (currentlyRenderingFiber$1.lanes |= hook), + (workInProgressRootSkippedLanes |= hook), initialValue) : (hook.memoizedState = value); } -function updateDeferredValueImpl(hook, prevValue, value) { - if (0 === (renderLanes & 42)) +function updateDeferredValueImpl(hook, prevValue, value, initialValue) { + if (objectIs(value, prevValue)) return value; + if (null !== currentTreeHiddenStackCursor.current) return ( - hook.baseState && ((hook.baseState = !1), (didReceiveUpdate = !0)), - (hook.memoizedState = value) + (hook = mountDeferredValueImpl(hook, value, initialValue)), + objectIs(hook, prevValue) || (didReceiveUpdate = !0), + hook ); - objectIs(value, prevValue) || - ((value = requestDeferredLane()), - (currentlyRenderingFiber$1.lanes |= value), - (workInProgressRootSkippedLanes |= value), - (hook.baseState = !0)); + if (0 === (renderLanes & 42)) + return (didReceiveUpdate = !0), (hook.memoizedState = value); + hook = requestDeferredLane(); + currentlyRenderingFiber$1.lanes |= hook; + workInProgressRootSkippedLanes |= hook; return prevValue; } function startTransition(fiber, queue, pendingState, finishedState, callback) { @@ -4558,9 +4559,14 @@ var HooksDispatcherOnUpdate = { return updateReducer(basicStateReducer); }, useDebugValue: mountDebugValue, - useDeferredValue: function (value) { + useDeferredValue: function (value, initialValue) { var hook = updateWorkInProgressHook(); - return updateDeferredValueImpl(hook, currentHook.memoizedState, value); + return updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = updateReducer(basicStateReducer)[0], @@ -4596,7 +4602,12 @@ var HooksDispatcherOnRerender = { var hook = updateWorkInProgressHook(); return null === currentHook ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl(hook, currentHook.memoizedState, value); + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); }, useTransition: function () { var booleanOrThenable = rerenderReducer(basicStateReducer)[0], @@ -10446,10 +10457,10 @@ batchedUpdatesImpl = function (fn, a) { } }; var roots = new Map(), - devToolsConfig$jscomp$inline_1188 = { + devToolsConfig$jscomp$inline_1189 = { findFiberByHostInstance: getInstanceFromTag, bundleType: 0, - version: "18.3.0-canary-57d766d3", + version: "18.3.0-canary-2a28451e", rendererPackageName: "react-native-renderer", rendererConfig: { getInspectorDataForInstance: getInspectorDataForInstance, @@ -10479,10 +10490,10 @@ var roots = new Map(), } catch (err) {} return hook.checkDCE ? !0 : !1; })({ - bundleType: devToolsConfig$jscomp$inline_1188.bundleType, - version: devToolsConfig$jscomp$inline_1188.version, - rendererPackageName: devToolsConfig$jscomp$inline_1188.rendererPackageName, - rendererConfig: devToolsConfig$jscomp$inline_1188.rendererConfig, + bundleType: devToolsConfig$jscomp$inline_1189.bundleType, + version: devToolsConfig$jscomp$inline_1189.version, + rendererPackageName: devToolsConfig$jscomp$inline_1189.rendererPackageName, + rendererConfig: devToolsConfig$jscomp$inline_1189.rendererConfig, overrideHookState: null, overrideHookStateDeletePath: null, overrideHookStateRenamePath: null, @@ -10498,14 +10509,14 @@ var roots = new Map(), return null === fiber ? null : fiber.stateNode; }, findFiberByHostInstance: - devToolsConfig$jscomp$inline_1188.findFiberByHostInstance || + devToolsConfig$jscomp$inline_1189.findFiberByHostInstance || emptyFindFiberByHostInstance, findHostInstancesForRefresh: null, scheduleRefresh: null, scheduleRoot: null, setRefreshHandler: null, getCurrentFiber: null, - reconcilerVersion: "18.3.0-canary-57d766d3" + reconcilerVersion: "18.3.0-canary-2a28451e" }); exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = { computeComponentStackForErrorReporting: function (reactTag) {