[Flight] Build Node.js Web Streams builds for Turbopack and Parcel (#33457)

Same as #33456 and #33442 but for Turbopack and Parcel.
This commit is contained in:
Sebastian Markbåge
2025-06-06 11:07:40 -04:00
committed by GitHub
parent e8d15fa19e
commit ab859e31be
28 changed files with 318 additions and 29 deletions

View File

@@ -0,0 +1,18 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export {default as rendererVersion} from 'shared/ReactVersion';
export const rendererPackageName = 'react-server-dom-parcel';
export * from 'react-client/src/ReactFlightClientStreamConfigWeb';
export * from 'react-client/src/ReactClientConsoleConfigServer';
export * from 'react-server-dom-parcel/src/client/ReactFlightClientConfigBundlerParcel';
export * from 'react-server-dom-parcel/src/client/ReactFlightClientConfigTargetParcelServer';
export * from 'react-dom-bindings/src/shared/ReactFlightClientConfigDOM';
export const usedWithSSR = true;

View File

@@ -0,0 +1,19 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export {default as rendererVersion} from 'shared/ReactVersion';
export const rendererPackageName = 'react-server-dom-turbopack';
export * from 'react-client/src/ReactFlightClientStreamConfigWeb';
export * from 'react-client/src/ReactClientConsoleConfigServer';
export * from 'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopack';
export * from 'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopackServer';
export * from 'react-server-dom-turbopack/src/client/ReactFlightClientConfigTargetTurbopackServer';
export * from 'react-dom-bindings/src/shared/ReactFlightClientConfigDOM';
export const usedWithSSR = true;

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientBrowser';
export * from './src/client/react-flight-dom-client.browser';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientEdge';
export * from './src/client/react-flight-dom-client.edge';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientNode';
export * from './src/client/react-flight-dom-client.node';

View File

@@ -1,7 +1,28 @@
'use strict';
var n, w;
if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-parcel-client.node.production.js');
n = require('./cjs/react-server-dom-parcel-client.node.production.js');
w = require('./cjs/react-server-dom-parcel-client.node-webstreams.production.js');
} else {
module.exports = require('./cjs/react-server-dom-parcel-client.node.development.js');
n = require('./cjs/react-server-dom-parcel-client.node.development.js');
w = require('./cjs/react-server-dom-parcel-client.node-webstreams.development.js');
}
exports.registerServerReference = function (r, i, e) {
return w.registerServerReference(n.registerServerReference(r, i, e), i, e);
};
exports.createServerReference = function (i, c, e, d, f) {
return w.registerServerReference(
n.createServerReference(i, c, e, d, f),
i,
e
);
};
exports.createFromNodeStream = n.createFromNodeStream;
exports.createFromFetch = w.createFromFetch;
exports.createFromReadableStream = w.createFromReadableStream;
exports.createTemporaryReferenceSet = w.createTemporaryReferenceSet;
exports.encodeReply = w.encodeReply;

View File

@@ -1,10 +1,12 @@
'use strict';
var s;
var s, w;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-parcel-server.node.production.js');
w = require('./cjs/react-server-dom-parcel-server.node-webstreams.production.js');
} else {
s = require('./cjs/react-server-dom-parcel-server.node.development.js');
w = require('./cjs/react-server-dom-parcel-server.node-webstreams.development.js');
}
exports.renderToPipeableStream = s.renderToPipeableStream;
@@ -15,5 +17,11 @@ exports.decodeFormState = s.decodeFormState;
exports.createClientReference = s.createClientReference;
exports.registerServerReference = s.registerServerReference;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;
exports.registerServerActions = s.registerServerActions;
exports.registerServerActions = function (m) {
w.registerServerActions(m);
s.registerServerActions(m);
};
exports.loadServerAction = s.loadServerAction;
exports.renderToReadableStream = w.renderToReadableStream;
exports.decodeReplyFromAsyncIterable = w.decodeReplyFromAsyncIterable;

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientBrowser';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientEdge';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientEdge';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientNode';

View File

@@ -0,0 +1,22 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export {
renderToReadableStream,
prerender as unstable_prerender,
decodeReply,
decodeReplyFromAsyncIterable,
decodeAction,
decodeFormState,
createClientReference,
registerServerReference,
createTemporaryReferenceSet,
registerServerActions,
loadServerAction,
} from './ReactFlightDOMServerEdge';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientBrowser';
export * from './src/client/react-flight-dom-client.browser';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientEdge';
export * from './src/client/react-flight-dom-client.edge';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientNode';
export * from './src/client/react-flight-dom-client.node';

View File

@@ -1,7 +1,28 @@
'use strict';
var n, w;
if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-turbopack-client.node.production.js');
n = require('./cjs/react-server-dom-turbopack-client.node.production.js');
w = require('./cjs/react-server-dom-turbopack-client.node-webstreams.production.js');
} else {
module.exports = require('./cjs/react-server-dom-turbopack-client.node.development.js');
n = require('./cjs/react-server-dom-turbopack-client.node.development.js');
w = require('./cjs/react-server-dom-turbopack-client.node-webstreams.development.js');
}
exports.registerServerReference = function (r, i, e) {
return w.registerServerReference(n.registerServerReference(r, i, e), i, e);
};
exports.createServerReference = function (i, c, e, d, f) {
return w.registerServerReference(
n.createServerReference(i, c, e, d, f),
i,
e
);
};
exports.createFromNodeStream = n.createFromNodeStream;
exports.createFromFetch = w.createFromFetch;
exports.createFromReadableStream = w.createFromReadableStream;
exports.createTemporaryReferenceSet = w.createTemporaryReferenceSet;
exports.encodeReply = w.encodeReply;

View File

@@ -1,10 +1,12 @@
'use strict';
var s;
var s, w;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-turbopack-server.node.production.js');
w = require('./cjs/react-server-dom-turbopack-server.node-webstreams.production.js');
} else {
s = require('./cjs/react-server-dom-turbopack-server.node.development.js');
w = require('./cjs/react-server-dom-turbopack-server.node-webstreams.development.js');
}
exports.renderToPipeableStream = s.renderToPipeableStream;
@@ -16,3 +18,6 @@ exports.registerServerReference = s.registerServerReference;
exports.registerClientReference = s.registerClientReference;
exports.createClientModuleProxy = s.createClientModuleProxy;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;
exports.renderToReadableStream = w.renderToReadableStream;
exports.decodeReplyFromAsyncIterable = w.decodeReplyFromAsyncIterable;

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientBrowser';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientEdge';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientEdge';

View File

@@ -0,0 +1,10 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export * from './ReactFlightDOMClientNode';

View File

@@ -0,0 +1,21 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
export {
renderToReadableStream,
prerender as unstable_prerender,
decodeReply,
decodeReplyFromAsyncIterable,
decodeAction,
decodeFormState,
registerServerReference,
registerClientReference,
createClientModuleProxy,
createTemporaryReferenceSet,
} from './ReactFlightDOMServerEdge';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientBrowser';
export * from './src/client/react-flight-dom-client.browser';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientEdge';
export * from './src/client/react-flight-dom-client.edge';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientNode';
export * from './src/client/react-flight-dom-client.node';

View File

@@ -7,4 +7,4 @@
* @flow
*/
export * from './src/client/ReactFlightDOMClientNode';
export * from './src/client/react-flight-dom-client.node.unbundled';

View File

@@ -646,6 +646,18 @@ const bundles = [
wrapWithModuleBoundaries: false,
externals: ['react', 'util', 'async_hooks', 'react-dom'],
},
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry:
'react-server-dom-turbopack/src/server/react-flight-dom-server.node-webstreams',
name: 'react-server-dom-turbopack-server.node-webstreams',
condition: 'react-server',
global: 'ReactServerDOMServer',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
externals: ['react', 'util', 'async_hooks', 'react-dom'],
},
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
@@ -662,7 +674,9 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-turbopack/client.browser',
entry:
'react-server-dom-turbopack/src/client/react-flight-dom-client.browser',
name: 'react-server-dom-turbopack-client.browser',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
@@ -671,7 +685,8 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-turbopack/client.node',
entry: 'react-server-dom-turbopack/src/client/react-flight-dom-client.node',
name: 'react-server-dom-turbopack-client.node',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
@@ -680,7 +695,19 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-turbopack/client.edge',
entry:
'react-server-dom-turbopack/src/client/react-flight-dom-client.node-webstreams',
name: 'react-server-dom-turbopack-client.node-webstreams',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
externals: ['react', 'react-dom', 'util'],
},
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-turbopack/src/client/react-flight-dom-client.edge',
name: 'react-server-dom-turbopack-client.edge',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
@@ -710,6 +737,18 @@ const bundles = [
wrapWithModuleBoundaries: false,
externals: ['react', 'util', 'async_hooks', 'react-dom'],
},
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry:
'react-server-dom-parcel/src/server/react-flight-dom-server.node-webstreams',
name: 'react-server-dom-parcel-server.node-webstreams',
condition: 'react-server',
global: 'ReactServerDOMServer',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
externals: ['react', 'util', 'async_hooks', 'react-dom'],
},
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
@@ -726,7 +765,8 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-parcel/client.browser',
entry: 'react-server-dom-parcel/src/client/react-flight-dom-client.browser',
name: 'react-server-dom-parcel-client.browser',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
@@ -735,7 +775,8 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-parcel/client.node',
entry: 'react-server-dom-parcel/src/client/react-flight-dom-client.node',
name: 'react-server-dom-parcel-client.node',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,
@@ -744,7 +785,8 @@ const bundles = [
{
bundleTypes: [NODE_DEV, NODE_PROD],
moduleType: RENDERER,
entry: 'react-server-dom-parcel/client.edge',
entry: 'react-server-dom-parcel/src/client/react-flight-dom-client.edge',
name: 'react-server-dom-parcel-client.edge',
global: 'ReactServerDOMClient',
minifyWithProdErrorCodes: false,
wrapWithModuleBoundaries: false,

View File

@@ -206,7 +206,7 @@ module.exports = [
{
shortName: 'dom-node-turbopack',
entryPoints: [
'react-server-dom-turbopack/client.node',
'react-server-dom-turbopack/src/client/react-flight-dom-client.node',
'react-server-dom-turbopack/src/server/react-flight-dom-server.node',
],
paths: [
@@ -233,6 +233,7 @@ module.exports = [
'react-server-dom-turbopack/src/client/ReactFlightDOMClientNode.js', // react-server-dom-turbopack/client.node
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopack.js',
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopackServer.js',
'react-server-dom-turbopack/src/client/react-flight-dom-client.node',
'react-server-dom-turbopack/src/server/react-flight-dom-server.node',
'react-server-dom-turbopack/src/server/ReactFlightDOMServerNode.js', // react-server-dom-turbopack/src/server/react-flight-dom-server.node
'react-server-dom-turbopack/node-register',
@@ -247,10 +248,23 @@ module.exports = [
isFlowTyped: true,
isServerSupported: true,
},
{
shortName: 'dom-node-webstreams-turbopack',
entryPoints: [
'react-server-dom-turbopack/src/client/react-flight-dom-client.node-webstreams',
'react-server-dom-turbopack/src/server/react-flight-dom-server.node-webstreams',
],
paths: [
'react-server-dom-turbopack/src/client/react-flight-dom-client.node-webstreams',
'react-server-dom-turbopack/src/server/react-flight-dom-server.node-webstreams',
],
isFlowTyped: false,
isServerSupported: true,
},
{
shortName: 'dom-node-parcel',
entryPoints: [
'react-server-dom-parcel/client.node',
'react-server-dom-parcel/src/client/react-flight-dom-client.node',
'react-server-dom-parcel/src/server/react-flight-dom-server.node',
],
paths: [
@@ -276,6 +290,7 @@ module.exports = [
'react-server-dom-parcel/static.node',
'react-server-dom-parcel/src/client/ReactFlightDOMClientNode.js', // react-server-dom-parcel/client.node
'react-server-dom-parcel/src/client/ReactFlightClientConfigBundlerParcel.js',
'react-server-dom-parcel/src/client/react-flight-dom-client.node',
'react-server-dom-parcel/src/server/react-flight-dom-server.node',
'react-server-dom-parcel/src/server/ReactFlightDOMServerNode.js', // react-server-dom-parcel/src/server/react-flight-dom-server.node
'react-devtools',
@@ -288,6 +303,19 @@ module.exports = [
isFlowTyped: true,
isServerSupported: true,
},
{
shortName: 'dom-node-webstreams-parcel',
entryPoints: [
'react-server-dom-parcel/src/client/react-flight-dom-client.node-webstreams',
'react-server-dom-parcel/src/server/react-flight-dom-server.node-webstreams',
],
paths: [
'react-server-dom-parcel/src/client/react-flight-dom-client.node-webstreams',
'react-server-dom-parcel/src/server/react-flight-dom-server.node-webstreams',
],
isFlowTyped: false,
isServerSupported: true,
},
{
shortName: 'dom-bun',
entryPoints: ['react-dom/src/server/react-dom-server.bun.js'],
@@ -339,7 +367,7 @@ module.exports = [
{
shortName: 'dom-browser-turbopack',
entryPoints: [
'react-server-dom-turbopack/client.browser',
'react-server-dom-turbopack/src/client/react-flight-dom-client.browser',
'react-server-dom-turbopack/src/server/react-flight-dom-server.browser',
],
paths: [
@@ -360,6 +388,7 @@ module.exports = [
'react-server-dom-turbopack/src/client/ReactFlightDOMClientBrowser.js', // react-server-dom-turbopack/client.browser
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopack.js',
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopackBrowser.js',
'react-server-dom-turbopack/src/client/react-flight-dom-client.browser',
'react-server-dom-turbopack/src/server/react-flight-dom-server.browser',
'react-server-dom-turbopack/src/server/ReactFlightDOMServerBrowser.js', // react-server-dom-turbopack/src/server/react-flight-dom-server.browser
'react-devtools',
@@ -375,7 +404,7 @@ module.exports = [
{
shortName: 'dom-browser-parcel',
entryPoints: [
'react-server-dom-parcel/client.browser',
'react-server-dom-parcel/src/client/react-flight-dom-client.browser',
'react-server-dom-parcel/src/server/react-flight-dom-server.browser',
],
paths: [
@@ -395,6 +424,7 @@ module.exports = [
'react-server-dom-parcel/static.browser',
'react-server-dom-parcel/src/client/ReactFlightDOMClientBrowser.js', // react-server-dom-parcel/client.browser
'react-server-dom-parcel/src/client/ReactFlightClientConfigBundlerParcel.js',
'react-server-dom-parcel/src/client/react-flight-dom-client.browser',
'react-server-dom-parcel/src/server/react-flight-dom-server.browser',
'react-server-dom-parcel/src/server/ReactFlightDOMServerBrowser.js', // react-server-dom-parcel/src/server/react-flight-dom-server.browser
'react-devtools',
@@ -453,7 +483,7 @@ module.exports = [
{
shortName: 'dom-edge-turbopack',
entryPoints: [
'react-server-dom-turbopack/client.edge',
'react-server-dom-turbopack/src/client/react-flight-dom-client.edge',
'react-server-dom-turbopack/src/server/react-flight-dom-server.edge',
],
paths: [
@@ -478,6 +508,7 @@ module.exports = [
'react-server-dom-turbopack/src/client/ReactFlightDOMClientEdge.js', // react-server-dom-turbopack/client.edge
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopack.js',
'react-server-dom-turbopack/src/client/ReactFlightClientConfigBundlerTurbopackServer.js',
'react-server-dom-turbopack/src/client/react-flight-dom-client.edge',
'react-server-dom-turbopack/src/server/react-flight-dom-server.edge',
'react-server-dom-turbopack/src/server/ReactFlightDOMServerEdge.js', // react-server-dom-turbopack/src/server/react-flight-dom-server.edge
'react-devtools',
@@ -493,7 +524,7 @@ module.exports = [
{
shortName: 'dom-edge-parcel',
entryPoints: [
'react-server-dom-parcel/client.edge',
'react-server-dom-parcel/src/client/react-flight-dom-client.edge',
'react-server-dom-parcel/src/server/react-flight-dom-server.edge',
],
paths: [
@@ -517,6 +548,7 @@ module.exports = [
'react-server-dom-parcel/static.edge',
'react-server-dom-parcel/src/client/ReactFlightDOMClientEdge.js', // react-server-dom-parcel/client.edge
'react-server-dom-parcel/src/client/ReactFlightClientConfigBundlerParcel.js',
'react-server-dom-parcel/src/client/react-flight-dom-client.edge',
'react-server-dom-parcel/src/server/react-flight-dom-server.edge',
'react-server-dom-parcel/src/server/ReactFlightDOMServerEdge.js', // react-server-dom-parcel/src/server/react-flight-dom-server.edge
'react-devtools',