Skip to content

Commit 5a71bfb

Browse files
committed
Scaffolding for useFormState (#27270)
This exposes, but does not yet implement, a new experimental API called useFormState. It's gated behind the enableAsyncActions flag. useFormState has a similar signature to useReducer, except instead of a reducer it accepts an (async) action function. React will wait until the promise resolves before updating the state: ```js async function action(prevState, payload) { // .. } const [state, dispatch] = useFormState(action, initialState) ``` When used in combination with Server Actions, it will also support progressive enhancement — a form that is submitted before it has hydrated will have its state transferred to the next page. However, like the other action-related hooks, it works with fully client-driven actions, too. DiffTrain build for commit b4cdd3e.
1 parent d9702d1 commit 5a71bfb

File tree

7 files changed

+9
-9
lines changed

7 files changed

+9
-9
lines changed

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-dev.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23977,7 +23977,7 @@ function createFiberRoot(
2397723977
return root;
2397823978
}
2397923979

23980-
var ReactVersion = "18.3.0-canary-856dc5e43-20230822";
23980+
var ReactVersion = "18.3.0-canary-b4cdd3e89-20230823";
2398123981

2398223982
// Might add PROFILE later.
2398323983

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-prod.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8612,7 +8612,7 @@ var devToolsConfig$jscomp$inline_1029 = {
86128612
throw Error("TestRenderer does not support findFiberByHostInstance()");
86138613
},
86148614
bundleType: 0,
8615-
version: "18.3.0-canary-856dc5e43-20230822",
8615+
version: "18.3.0-canary-b4cdd3e89-20230823",
86168616
rendererPackageName: "react-test-renderer"
86178617
};
86188618
var internals$jscomp$inline_1228 = {
@@ -8643,7 +8643,7 @@ var internals$jscomp$inline_1228 = {
86438643
scheduleRoot: null,
86448644
setRefreshHandler: null,
86458645
getCurrentFiber: null,
8646-
reconcilerVersion: "18.3.0-canary-856dc5e43-20230822"
8646+
reconcilerVersion: "18.3.0-canary-b4cdd3e89-20230823"
86478647
};
86488648
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
86498649
var hook$jscomp$inline_1229 = __REACT_DEVTOOLS_GLOBAL_HOOK__;

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react-test-renderer/cjs/ReactTestRenderer-profiling.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9038,7 +9038,7 @@ var devToolsConfig$jscomp$inline_1071 = {
90389038
throw Error("TestRenderer does not support findFiberByHostInstance()");
90399039
},
90409040
bundleType: 0,
9041-
version: "18.3.0-canary-856dc5e43-20230822",
9041+
version: "18.3.0-canary-b4cdd3e89-20230823",
90429042
rendererPackageName: "react-test-renderer"
90439043
};
90449044
var internals$jscomp$inline_1269 = {
@@ -9069,7 +9069,7 @@ var internals$jscomp$inline_1269 = {
90699069
scheduleRoot: null,
90709070
setRefreshHandler: null,
90719071
getCurrentFiber: null,
9072-
reconcilerVersion: "18.3.0-canary-856dc5e43-20230822"
9072+
reconcilerVersion: "18.3.0-canary-b4cdd3e89-20230823"
90739073
};
90749074
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
90759075
var hook$jscomp$inline_1270 = __REACT_DEVTOOLS_GLOBAL_HOOK__;

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-dev.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ if (
2727
}
2828
"use strict";
2929

30-
var ReactVersion = "18.3.0-canary-856dc5e43-20230822";
30+
var ReactVersion = "18.3.0-canary-b4cdd3e89-20230823";
3131

3232
// ATTENTION
3333
// When adding new symbols to this file,

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-prod.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -616,4 +616,4 @@ exports.useSyncExternalStore = function (
616616
exports.useTransition = function () {
617617
return ReactCurrentDispatcher.current.useTransition();
618618
};
619-
exports.version = "18.3.0-canary-856dc5e43-20230822";
619+
exports.version = "18.3.0-canary-b4cdd3e89-20230823";

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/cjs/React-profiling.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -619,7 +619,7 @@ exports.useSyncExternalStore = function (
619619
exports.useTransition = function () {
620620
return ReactCurrentDispatcher.current.useTransition();
621621
};
622-
exports.version = "18.3.0-canary-856dc5e43-20230822";
622+
exports.version = "18.3.0-canary-b4cdd3e89-20230823";
623623

624624
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
625625
if (
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
856dc5e43352454b1d06c13e233d565ceda77e61
1+
b4cdd3e8922713f8c9817b004a0dc51be47bc5df

0 commit comments

Comments
 (0)