Skip to content
9 changes: 9 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,7 @@ module.exports = {
'packages/react-server-dom-webpack/**/*.js',
'packages/react-server-dom-turbopack/**/*.js',
'packages/react-server-dom-parcel/**/*.js',
'packages/react-server-dom-rspack/**/*.js',
'packages/react-server-dom-fb/**/*.js',
'packages/react-server-dom-unbundled/**/*.js',
'packages/react-test-renderer/**/*.js',
Expand Down Expand Up @@ -486,6 +487,14 @@ module.exports = {
parcelRequire: 'readonly',
},
},
{
files: ['packages/react-server-dom-rspack/**/*.js'],
globals: {
__webpack_chunk_load__: 'readonly',
__webpack_get_script_filename__: 'readonly',
__webpack_require__: 'readonly',
},
},
{
files: ['packages/scheduler/**/*.js'],
globals: {
Expand Down
1 change: 1 addition & 0 deletions ReactVersions.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ const stablePackages = {
'react-server-dom-webpack': ReactVersion,
'react-server-dom-turbopack': ReactVersion,
'react-server-dom-parcel': ReactVersion,
'react-server-dom-rspack': ReactVersion,
'react-is': ReactVersion,
'react-reconciler': '0.34.0',
'react-refresh': '0.19.0',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/**
* 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-rspack';

export * from 'react-client/src/ReactFlightClientStreamConfigWeb';
export * from 'react-client/src/ReactClientConsoleConfigBrowser';
export * from 'react-client/src/ReactClientDebugConfigBrowser';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspack';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspackBrowser';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigTargetRspackBrowser';
export * from 'react-dom-bindings/src/shared/ReactFlightClientConfigDOM';
export const usedWithSSR = false;
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/**
* 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-rspack';

export * from 'react-client/src/ReactFlightClientStreamConfigWeb';
export * from 'react-client/src/ReactClientConsoleConfigServer';
export * from 'react-client/src/ReactClientDebugConfigPlain';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspack';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspackServer';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigTargetRspackServer';
export * from 'react-dom-bindings/src/shared/ReactFlightClientConfigDOM';
export const usedWithSSR = true;
Original file line number Diff line number Diff line change
@@ -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-rspack';

export * from 'react-client/src/ReactFlightClientStreamConfigNode';
export * from 'react-client/src/ReactClientConsoleConfigServer';
export * from 'react-client/src/ReactClientDebugConfigNode';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspack';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigBundlerRspackServer';
export * from 'react-server-dom-rspack/src/client/ReactFlightClientConfigTargetRspackServer';
export * from 'react-dom-bindings/src/shared/ReactFlightClientConfigDOM';
export const usedWithSSR = true;
5 changes: 5 additions & 0 deletions packages/react-server-dom-rspack/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# react-server-dom-rspack

Experimental React Flight bindings for DOM using Rspack.

**Use it at your own risk.**
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/client.browser.js
Original file line number Diff line number Diff line change
@@ -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 './src/client/react-flight-dom-client.browser';
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/client.edge.js
Original file line number Diff line number Diff line change
@@ -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 './src/client/react-flight-dom-client.edge';
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/client.js
Original file line number Diff line number Diff line change
@@ -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 './client.browser';
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/client.node.js
Original file line number Diff line number Diff line change
@@ -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 './src/client/react-flight-dom-client.node';
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/index.js
Original file line number Diff line number Diff line change
@@ -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
*/

throw new Error('Use react-server-dom-rspack/client instead.');
7 changes: 7 additions & 0 deletions packages/react-server-dom-rspack/npm/client.browser.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-rspack-client.browser.production.js');
} else {
module.exports = require('./cjs/react-server-dom-rspack-client.browser.development.js');
}
7 changes: 7 additions & 0 deletions packages/react-server-dom-rspack/npm/client.edge.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-rspack-client.edge.production.js');
} else {
module.exports = require('./cjs/react-server-dom-rspack-client.edge.development.js');
}
3 changes: 3 additions & 0 deletions packages/react-server-dom-rspack/npm/client.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
'use strict';

module.exports = require('./client.browser');
7 changes: 7 additions & 0 deletions packages/react-server-dom-rspack/npm/client.node.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-rspack-client.node.production.js');
} else {
module.exports = require('./cjs/react-server-dom-rspack-client.node.development.js');
}
7 changes: 7 additions & 0 deletions packages/react-server-dom-rspack/npm/client.node.unbundled.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

if (process.env.NODE_ENV === 'production') {
module.exports = require('./cjs/react-server-dom-rspack-client.node.unbundled.production.js');
} else {
module.exports = require('./cjs/react-server-dom-rspack-client.node.unbundled.development.js');
}
3 changes: 3 additions & 0 deletions packages/react-server-dom-rspack/npm/esm/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"type": "module"
}
12 changes: 12 additions & 0 deletions packages/react-server-dom-rspack/npm/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/**
* 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
*/

'use strict';

throw new Error('Use react-server-dom-rspack/client instead.');
3 changes: 3 additions & 0 deletions packages/react-server-dom-rspack/npm/plugin.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
'use strict';

module.exports = require('./cjs/react-server-dom-rspack-plugin.js');
24 changes: 24 additions & 0 deletions packages/react-server-dom-rspack/npm/server.browser.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.browser.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.browser.development.js');
}

exports.renderToReadableStream = s.renderToReadableStream;
exports.decodeReply = s.decodeReply;
exports.decodeAction = s.decodeAction;
exports.decodeFormState = s.decodeFormState;
exports.registerServerReference = s.registerServerReference;
exports.registerClientReference = s.registerClientReference;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;

exports.setServerActionBoundArgsEncryption =
s.setServerActionBoundArgsEncryption;
exports.encryptServerActionBoundArgs = s.encryptServerActionBoundArgs;
exports.decryptServerActionBoundArgs = s.decryptServerActionBoundArgs;
exports.loadServerAction = s.loadServerAction;
exports.createServerEntry = s.createServerEntry;
exports.ensureServerActions = s.ensureServerActions;
25 changes: 25 additions & 0 deletions packages/react-server-dom-rspack/npm/server.edge.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.edge.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.edge.development.js');
}

exports.renderToReadableStream = s.renderToReadableStream;
exports.decodeReply = s.decodeReply;
exports.decodeReplyFromAsyncIterable = s.decodeReplyFromAsyncIterable;
exports.decodeAction = s.decodeAction;
exports.decodeFormState = s.decodeFormState;
exports.registerServerReference = s.registerServerReference;
exports.registerClientReference = s.registerClientReference;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;

exports.setServerActionBoundArgsEncryption =
s.setServerActionBoundArgsEncryption;
exports.encryptServerActionBoundArgs = s.encryptServerActionBoundArgs;
exports.decryptServerActionBoundArgs = s.decryptServerActionBoundArgs;
exports.loadServerAction = s.loadServerAction;
exports.createServerEntry = s.createServerEntry;
exports.ensureServerActions = s.ensureServerActions;
6 changes: 6 additions & 0 deletions packages/react-server-dom-rspack/npm/server.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
'use strict';

throw new Error(
'The React Server Writer cannot be used outside a react-server environment. ' +
'You must configure Node.js using the `--conditions react-server` flag.'
);
27 changes: 27 additions & 0 deletions packages/react-server-dom-rspack/npm/server.node.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.node.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.node.development.js');
}

exports.renderToReadableStream = s.renderToReadableStream;
exports.renderToPipeableStream = s.renderToPipeableStream;
exports.decodeReply = s.decodeReply;
exports.decodeReplyFromBusboy = s.decodeReplyFromBusboy;
exports.decodeReplyFromAsyncIterable = s.decodeReplyFromAsyncIterable;
exports.decodeAction = s.decodeAction;
exports.decodeFormState = s.decodeFormState;
exports.registerServerReference = s.registerServerReference;
exports.registerClientReference = s.registerClientReference;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;

exports.setServerActionBoundArgsEncryption =
s.setServerActionBoundArgsEncryption;
exports.encryptServerActionBoundArgs = s.encryptServerActionBoundArgs;
exports.decryptServerActionBoundArgs = s.decryptServerActionBoundArgs;
exports.loadServerAction = s.loadServerAction;
exports.createServerEntry = s.createServerEntry;
exports.ensureServerActions = s.ensureServerActions;
27 changes: 27 additions & 0 deletions packages/react-server-dom-rspack/npm/server.node.unbundled.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.node.unbundled.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.node.unbundled.development.js');
}

exports.renderToReadableStream = s.renderToReadableStream;
exports.renderToPipeableStream = s.renderToPipeableStream;
exports.decodeReply = s.decodeReply;
exports.decodeReplyFromBusboy = s.decodeReplyFromBusboy;
exports.decodeReplyFromAsyncIterable = s.decodeReplyFromAsyncIterable;
exports.decodeAction = s.decodeAction;
exports.decodeFormState = s.decodeFormState;
exports.registerServerReference = s.registerServerReference;
exports.registerClientReference = s.registerClientReference;
exports.createTemporaryReferenceSet = s.createTemporaryReferenceSet;

exports.setServerActionBoundArgsEncryption =
s.setServerActionBoundArgsEncryption;
exports.encryptServerActionBoundArgs = s.encryptServerActionBoundArgs;
exports.decryptServerActionBoundArgs = s.decryptServerActionBoundArgs;
exports.loadServerAction = s.loadServerAction;
exports.createServerEntry = s.createServerEntry;
exports.ensureServerActions = s.ensureServerActions;
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/npm/static.browser.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.browser.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.browser.development.js');
}

exports.prerender = s.prerender;
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/npm/static.edge.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.edge.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.edge.development.js');
}

exports.prerender = s.prerender;
6 changes: 6 additions & 0 deletions packages/react-server-dom-rspack/npm/static.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
'use strict';

throw new Error(
'The React Server Writer cannot be used outside a react-server environment. ' +
'You must configure Node.js using the `--conditions react-server` flag.'
);
11 changes: 11 additions & 0 deletions packages/react-server-dom-rspack/npm/static.node.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.node.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.node.development.js');
}

exports.prerender = s.prerender;
exports.prerenderToNodeStream = s.prerenderToNodeStream;
10 changes: 10 additions & 0 deletions packages/react-server-dom-rspack/npm/static.node.unbundled.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
'use strict';

var s;
if (process.env.NODE_ENV === 'production') {
s = require('./cjs/react-server-dom-rspack-server.node.unbundled.production.js');
} else {
s = require('./cjs/react-server-dom-rspack-server.node.unbundled.development.js');
}

exports.prerenderToNodeStream = s.prerenderToNodeStream;
Loading