mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Move Flight Fixture to use Middleware instead of WebDevServer (#26246)
This lets us put it in the same server that would be serving this
content in a more real world scenario.
I also de-CRA:ified this a bit by simplifying pieces we don't need.
I have more refactors coming for the SSR pieces but since many are
eyeing these fixtures right now I figured I'd push earlier.
The design here is that there are two servers:
- Global - representing a "CDN" which will also include the SSR server.
- Regional - representing something close to the data with low waterfall
costs which include the RSC server.
This is just an example.
These are using the "unbundled" strategy for the RSC server just to show
a simple case, but an implementation can use a bundled SSR server.
A smart SSR bundler could also put RSC and SSR in the same server and
even the same JS environment. It just need to ensure that the module
graphs are kept separately - so that the `react-server` condition is
respected. This include `react` itself. React will start breaking if
this isn't respected because the runtime will get the wrong copy of
`react`. Technically, you don't need the *entire* module graph to be
separated. It just needs to be any part of the graph that depends on a
fork. Like if "Client A" -> "foo" and "Server B" -> "foo", then it's ok
for the module "foo" to be shared. However if "foo" -> "bar", and "bar"
is forked by the "react-server" condition, then "foo" also needs to be
duplicated in the module graph so that it can get two copies of "bar".
DiffTrain build for [e7d7d4cb4b](https://github.com/facebook/react/commit/e7d7d4cb4b61624c5762521370a58d941c1c46e3)
This commit is contained in:
@@ -1 +1 @@
|
||||
564166099b5f46dd33f3356b01a72c0314103a18
|
||||
e7d7d4cb4b61624c5762521370a58d941c1c46e3
|
||||
|
||||
@@ -1 +1 @@
|
||||
564166099b5f46dd33f3356b01a72c0314103a18
|
||||
e7d7d4cb4b61624c5762521370a58d941c1c46e3
|
||||
|
||||
@@ -27,7 +27,7 @@ if (
|
||||
}
|
||||
"use strict";
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
// ATTENTION
|
||||
// When adding new symbols to this file,
|
||||
|
||||
@@ -27,7 +27,7 @@ if (
|
||||
}
|
||||
"use strict";
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
// ATTENTION
|
||||
// When adding new symbols to this file,
|
||||
|
||||
@@ -646,4 +646,4 @@ exports.useSyncExternalStore = function (
|
||||
);
|
||||
};
|
||||
exports.useTransition = useTransition;
|
||||
exports.version = "18.3.0-www-classic-564166099-20230224";
|
||||
exports.version = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -638,4 +638,4 @@ exports.useSyncExternalStore = function (
|
||||
);
|
||||
};
|
||||
exports.useTransition = useTransition;
|
||||
exports.version = "18.3.0-www-modern-564166099-20230224";
|
||||
exports.version = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -657,7 +657,7 @@ exports.useSyncExternalStore = function (
|
||||
);
|
||||
};
|
||||
exports.useTransition = useTransition;
|
||||
exports.version = "18.3.0-www-classic-564166099-20230224";
|
||||
exports.version = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
|
||||
if (
|
||||
|
||||
@@ -649,7 +649,7 @@ exports.useSyncExternalStore = function (
|
||||
);
|
||||
};
|
||||
exports.useTransition = useTransition;
|
||||
exports.version = "18.3.0-www-modern-564166099-20230224";
|
||||
exports.version = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
|
||||
if (
|
||||
|
||||
@@ -69,7 +69,7 @@ function _assertThisInitialized(self) {
|
||||
return self;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
var LegacyRoot = 0;
|
||||
var ConcurrentRoot = 1;
|
||||
|
||||
@@ -69,7 +69,7 @@ function _assertThisInitialized(self) {
|
||||
return self;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
var LegacyRoot = 0;
|
||||
var ConcurrentRoot = 1;
|
||||
|
||||
@@ -9780,7 +9780,7 @@ var slice = Array.prototype.slice,
|
||||
return null;
|
||||
},
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-classic-564166099-20230224",
|
||||
version: "18.3.0-www-classic-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-art"
|
||||
};
|
||||
var internals$jscomp$inline_1300 = {
|
||||
@@ -9811,7 +9811,7 @@ var internals$jscomp$inline_1300 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1301 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
|
||||
@@ -9445,7 +9445,7 @@ var slice = Array.prototype.slice,
|
||||
return null;
|
||||
},
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-modern-564166099-20230224",
|
||||
version: "18.3.0-www-modern-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-art"
|
||||
};
|
||||
var internals$jscomp$inline_1280 = {
|
||||
@@ -9476,7 +9476,7 @@ var internals$jscomp$inline_1280 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1281 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
|
||||
@@ -42002,7 +42002,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
function createPortal$1(
|
||||
children,
|
||||
|
||||
@@ -41606,7 +41606,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
function createPortal$1(
|
||||
children,
|
||||
|
||||
@@ -15449,7 +15449,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1741 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-classic-564166099-20230224",
|
||||
version: "18.3.0-www-classic-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
var internals$jscomp$inline_2108 = {
|
||||
@@ -15479,7 +15479,7 @@ var internals$jscomp$inline_2108 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2109 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -15727,4 +15727,4 @@ exports.unstable_renderSubtreeIntoContainer = function (
|
||||
);
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -14978,7 +14978,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1700 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-modern-564166099-20230224",
|
||||
version: "18.3.0-www-modern-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
var internals$jscomp$inline_2072 = {
|
||||
@@ -15009,7 +15009,7 @@ var internals$jscomp$inline_2072 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2073 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -15186,4 +15186,4 @@ exports.unstable_flushControlled = function (fn) {
|
||||
}
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -16219,7 +16219,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1821 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-classic-564166099-20230224",
|
||||
version: "18.3.0-www-classic-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
(function (internals) {
|
||||
@@ -16263,7 +16263,7 @@ var devToolsConfig$jscomp$inline_1821 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
});
|
||||
assign(Internals, {
|
||||
ReactBrowserEventEmitter: {
|
||||
@@ -16498,7 +16498,7 @@ exports.unstable_renderSubtreeIntoContainer = function (
|
||||
);
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
|
||||
if (
|
||||
|
||||
@@ -15738,7 +15738,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1780 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-modern-564166099-20230224",
|
||||
version: "18.3.0-www-modern-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
(function (internals) {
|
||||
@@ -15783,7 +15783,7 @@ var devToolsConfig$jscomp$inline_1780 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
});
|
||||
exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
|
||||
exports.createPortal = function (children, container) {
|
||||
@@ -15947,7 +15947,7 @@ exports.unstable_flushControlled = function (fn) {
|
||||
}
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
|
||||
if (
|
||||
|
||||
@@ -19,7 +19,7 @@ if (__DEV__) {
|
||||
var React = require("react");
|
||||
var ReactDOM = require("react-dom");
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
// This refers to a WWW module.
|
||||
var warningWWW = require("warning");
|
||||
|
||||
@@ -19,7 +19,7 @@ if (__DEV__) {
|
||||
var React = require("react");
|
||||
var ReactDOM = require("react-dom");
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
// This refers to a WWW module.
|
||||
var warningWWW = require("warning");
|
||||
|
||||
@@ -3670,4 +3670,4 @@ exports.renderToString = function (children, options) {
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "18.3.0-www-classic-564166099-20230224";
|
||||
exports.version = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -3568,4 +3568,4 @@ exports.renderToString = function (children, options) {
|
||||
'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server'
|
||||
);
|
||||
};
|
||||
exports.version = "18.3.0-www-modern-564166099-20230224";
|
||||
exports.version = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -31239,7 +31239,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
function createPortal$1(
|
||||
children,
|
||||
|
||||
@@ -37630,7 +37630,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
function createPortal$1(
|
||||
children,
|
||||
|
||||
@@ -11521,7 +11521,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1535 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-classic-564166099-20230224",
|
||||
version: "18.3.0-www-classic-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
var internals$jscomp$inline_2058 = {
|
||||
@@ -11551,7 +11551,7 @@ var internals$jscomp$inline_2058 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2059 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -14729,4 +14729,4 @@ exports.unstable_renderSubtreeIntoContainer = function (
|
||||
);
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -13836,7 +13836,7 @@ Internals.Events = [
|
||||
var devToolsConfig$jscomp$inline_1652 = {
|
||||
findFiberByHostInstance: getClosestInstanceFromNode,
|
||||
bundleType: 0,
|
||||
version: "18.3.0-www-modern-564166099-20230224",
|
||||
version: "18.3.0-www-modern-e7d7d4cb4-20230225",
|
||||
rendererPackageName: "react-dom"
|
||||
};
|
||||
var internals$jscomp$inline_2032 = {
|
||||
@@ -13867,7 +13867,7 @@ var internals$jscomp$inline_2032 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-next-564166099-20230224"
|
||||
reconcilerVersion: "18.3.0-next-e7d7d4cb4-20230225"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2033 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -14187,4 +14187,4 @@ exports.unstable_flushControlled = function (fn) {
|
||||
}
|
||||
};
|
||||
exports.unstable_runWithPriority = runWithPriority;
|
||||
exports.version = "18.3.0-next-564166099-20230224";
|
||||
exports.version = "18.3.0-next-e7d7d4cb4-20230225";
|
||||
|
||||
@@ -23755,7 +23755,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-classic-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-classic-e7d7d4cb4-20230225";
|
||||
|
||||
// Might add PROFILE later.
|
||||
|
||||
|
||||
@@ -23755,7 +23755,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-www-modern-564166099-20230224";
|
||||
var ReactVersion = "18.3.0-www-modern-e7d7d4cb4-20230225";
|
||||
|
||||
// Might add PROFILE later.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user