mirror of
https://github.com/zebrajr/react.git
synced 2025-12-06 12:20:20 +01:00
[Flight] Rename react-transport-... packages to react-server-... (#20403)
* Move files * Update paths * Rename import variables * Rename /server to /writer This is mainly because "React Server Server" is weird so we need another dimension. * Use "react-server" convention to enforce that writer is only loaded in a server
This commit is contained in:
parent
ce40f1dc2f
commit
5fd9db732d
|
|
@ -185,14 +185,14 @@ module.exports = {
|
||||||
{
|
{
|
||||||
files: [
|
files: [
|
||||||
'packages/react-native-renderer/**/*.js',
|
'packages/react-native-renderer/**/*.js',
|
||||||
'packages/react-transport-native-relay/**/*.js',
|
'packages/react-server-native-relay/**/*.js',
|
||||||
],
|
],
|
||||||
globals: {
|
globals: {
|
||||||
nativeFabricUIManager: true,
|
nativeFabricUIManager: true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
files: ['packages/react-transport-dom-webpack/**/*.js'],
|
files: ['packages/react-server-dom-webpack/**/*.js'],
|
||||||
globals: {
|
globals: {
|
||||||
__webpack_chunk_load__: true,
|
__webpack_chunk_load__: true,
|
||||||
__webpack_require__: true,
|
__webpack_require__: true,
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
<script src="../../build/node_modules/react/umd/react.development.js"></script>
|
<script src="../../build/node_modules/react/umd/react.development.js"></script>
|
||||||
<script src="../../build/node_modules/react-dom/umd/react-dom.development.js"></script>
|
<script src="../../build/node_modules/react-dom/umd/react-dom.development.js"></script>
|
||||||
<script src="../../build/node_modules/react-dom/umd/react-dom-server.browser.development.js"></script>
|
<script src="../../build/node_modules/react-dom/umd/react-dom-server.browser.development.js"></script>
|
||||||
<script src="../../build/node_modules/react-transport-dom-webpack/umd/react-transport-dom-webpack-server.browser.development.js"></script>
|
<script src="../../build/node_modules/react-server-dom-webpack/umd/react-server-dom-webpack-writer.browser.server.development.js"></script>
|
||||||
<script src="../../build/node_modules/react-transport-dom-webpack/umd/react-transport-dom-webpack.development.js"></script>
|
<script src="../../build/node_modules/react-server-dom-webpack/umd/react-server-dom-webpack.development.js"></script>
|
||||||
<script src="https://unpkg.com/babel-standalone@6/babel.js"></script>
|
<script src="https://unpkg.com/babel-standalone@6/babel.js"></script>
|
||||||
<script type="text/babel">
|
<script type="text/babel">
|
||||||
let Suspense = React.Suspense;
|
let Suspense = React.Suspense;
|
||||||
|
|
@ -60,7 +60,7 @@
|
||||||
content: <HTML />,
|
content: <HTML />,
|
||||||
};
|
};
|
||||||
|
|
||||||
let stream = ReactTransportDOMServer.renderToReadableStream(model);
|
let stream = ReactServerDOMWriter.renderToReadableStream(model);
|
||||||
let response = new Response(stream, {
|
let response = new Response(stream, {
|
||||||
headers: {'Content-Type': 'text/html'},
|
headers: {'Content-Type': 'text/html'},
|
||||||
});
|
});
|
||||||
|
|
@ -70,13 +70,13 @@
|
||||||
let blob = await responseToDisplay.blob();
|
let blob = await responseToDisplay.blob();
|
||||||
let url = URL.createObjectURL(blob);
|
let url = URL.createObjectURL(blob);
|
||||||
|
|
||||||
let data = ReactTransportDOMClient.createFromFetch(
|
let data = ReactServerDOMReader.createFromFetch(
|
||||||
fetch(url)
|
fetch(url)
|
||||||
);
|
);
|
||||||
// The client also supports XHR streaming.
|
// The client also supports XHR streaming.
|
||||||
// var xhr = new XMLHttpRequest();
|
// var xhr = new XMLHttpRequest();
|
||||||
// xhr.open('GET', url);
|
// xhr.open('GET', url);
|
||||||
// let data = ReactTransportDOMClient.createFromXHR(xhr);
|
// let data = ReactServerDOMReader.createFromXHR(xhr);
|
||||||
// xhr.send();
|
// xhr.send();
|
||||||
|
|
||||||
renderResult(data);
|
renderResult(data);
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
// Fork Start
|
// Fork Start
|
||||||
const ReactFlightWebpackPlugin = require('react-transport-dom-webpack/plugin');
|
const ReactFlightWebpackPlugin = require('react-server-dom-webpack/plugin');
|
||||||
// Fork End
|
// Fork End
|
||||||
|
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import {
|
||||||
resolve,
|
resolve,
|
||||||
getSource,
|
getSource,
|
||||||
transformSource as reactTransformSource,
|
transformSource as reactTransformSource,
|
||||||
} from 'react-transport-dom-webpack/node-loader';
|
} from 'react-server-dom-webpack/node-loader';
|
||||||
|
|
||||||
export {resolve, getSource};
|
export {resolve, getSource};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const register = require('react-transport-dom-webpack/node-register');
|
const register = require('react-server-dom-webpack/node-register');
|
||||||
register();
|
register();
|
||||||
|
|
||||||
const babelRegister = require('@babel/register');
|
const babelRegister = require('@babel/register');
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const {pipeToNodeWritable} = require('react-transport-dom-webpack/server');
|
const {pipeToNodeWritable} = require('react-server-dom-webpack/writer');
|
||||||
const {readFile} = require('fs');
|
const {readFile} = require('fs');
|
||||||
const {resolve} = require('path');
|
const {resolve} = require('path');
|
||||||
const React = require('react');
|
const React = require('react');
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,9 @@
|
||||||
import * as React from 'react';
|
import * as React from 'react';
|
||||||
import {Suspense} from 'react';
|
import {Suspense} from 'react';
|
||||||
import ReactDOM from 'react-dom';
|
import ReactDOM from 'react-dom';
|
||||||
import ReactTransportDOMClient from 'react-transport-dom-webpack';
|
import ReactServerDOMReader from 'react-server-dom-webpack';
|
||||||
|
|
||||||
let data = ReactTransportDOMClient.createFromFetch(
|
let data = ReactServerDOMReader.createFromFetch(fetch('http://localhost:3001'));
|
||||||
fetch('http://localhost:3001')
|
|
||||||
);
|
|
||||||
|
|
||||||
function Content() {
|
function Content() {
|
||||||
return data.readRoot();
|
return data.readRoot();
|
||||||
|
|
|
||||||
|
|
@ -9,4 +9,4 @@
|
||||||
|
|
||||||
export * from 'react-client/src/ReactFlightClientHostConfigBrowser';
|
export * from 'react-client/src/ReactFlightClientHostConfigBrowser';
|
||||||
export * from 'react-client/src/ReactFlightClientHostConfigStream';
|
export * from 'react-client/src/ReactFlightClientHostConfigStream';
|
||||||
export * from 'react-transport-dom-webpack/src/ReactFlightClientWebpackBundlerConfig';
|
export * from 'react-server-dom-webpack/src/ReactFlightClientWebpackBundlerConfig';
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,5 @@
|
||||||
* @flow
|
* @flow
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from 'react-transport-dom-relay/src/ReactFlightDOMRelayClientHostConfig';
|
export * from 'react-server-dom-relay/src/ReactFlightDOMRelayClientHostConfig';
|
||||||
export * from '../ReactFlightClientHostConfigNoStream';
|
export * from '../ReactFlightClientHostConfigNoStream';
|
||||||
|
|
|
||||||
|
|
@ -9,4 +9,4 @@
|
||||||
|
|
||||||
export * from 'react-client/src/ReactFlightClientHostConfigBrowser';
|
export * from 'react-client/src/ReactFlightClientHostConfigBrowser';
|
||||||
export * from 'react-client/src/ReactFlightClientHostConfigStream';
|
export * from 'react-client/src/ReactFlightClientHostConfigStream';
|
||||||
export * from 'react-transport-dom-webpack/src/ReactFlightClientWebpackBundlerConfig';
|
export * from 'react-server-dom-webpack/src/ReactFlightClientWebpackBundlerConfig';
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,5 @@
|
||||||
* @flow
|
* @flow
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from 'react-transport-native-relay/src/ReactFlightNativeRelayClientHostConfig';
|
export * from 'react-server-native-relay/src/ReactFlightNativeRelayClientHostConfig';
|
||||||
export * from '../ReactFlightClientHostConfigNoStream';
|
export * from '../ReactFlightClientHostConfigNoStream';
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
{
|
{
|
||||||
"name": "react-transport-dom-relay",
|
"name": "react-server-dom-relay",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"repository": {
|
"repository": {
|
||||||
"type" : "git",
|
"type" : "git",
|
||||||
"url" : "https://github.com/facebook/react.git",
|
"url" : "https://github.com/facebook/react.git",
|
||||||
"directory": "packages/react-transport-dom-relay"
|
"directory": "packages/react-server-dom-relay"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"object-assign": "^4.1.1",
|
"object-assign": "^4.1.1",
|
||||||
|
|
@ -21,8 +21,8 @@ describe('ReactFlightDOMRelay', () => {
|
||||||
act = require('react-dom/test-utils').unstable_concurrentAct;
|
act = require('react-dom/test-utils').unstable_concurrentAct;
|
||||||
React = require('react');
|
React = require('react');
|
||||||
ReactDOM = require('react-dom');
|
ReactDOM = require('react-dom');
|
||||||
ReactDOMFlightRelayServer = require('react-transport-dom-relay/server');
|
ReactDOMFlightRelayServer = require('react-server-dom-relay/server');
|
||||||
ReactDOMFlightRelayClient = require('react-transport-dom-relay');
|
ReactDOMFlightRelayClient = require('react-server-dom-relay');
|
||||||
JSResourceReference = require('JSResourceReference');
|
JSResourceReference = require('JSResourceReference');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
# react-transport-dom-webpack
|
# react-server-dom-webpack
|
||||||
|
|
||||||
Experimental React Flight bindings for DOM using Webpack.
|
Experimental React Flight bindings for DOM using Webpack.
|
||||||
|
|
||||||
7
packages/react-server-dom-webpack/npm/index.js
vendored
Normal file
7
packages/react-server-dom-webpack/npm/index.js
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack.production.min.js');
|
||||||
|
} else {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack.development.js');
|
||||||
|
}
|
||||||
3
packages/react-server-dom-webpack/npm/node-register.js
vendored
Normal file
3
packages/react-server-dom-webpack/npm/node-register.js
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-node-register.js');
|
||||||
3
packages/react-server-dom-webpack/npm/plugin.js
vendored
Normal file
3
packages/react-server-dom-webpack/npm/plugin.js
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-plugin.js');
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-writer.browser.server.production.min.js');
|
||||||
|
} else {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-writer.browser.server.development.js');
|
||||||
|
}
|
||||||
6
packages/react-server-dom-webpack/npm/writer.js
vendored
Normal file
6
packages/react-server-dom-webpack/npm/writer.js
vendored
Normal file
|
|
@ -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.'
|
||||||
|
);
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-writer.node.server.production.min.js');
|
||||||
|
} else {
|
||||||
|
module.exports = require('./cjs/react-server-dom-webpack-writer.node.server.development.js');
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "react-transport-dom-webpack",
|
"name": "react-server-dom-webpack",
|
||||||
"description": "React Transport bindings for DOM using Webpack. This is intended to be integrated into meta-frameworks. It is not intended to be imported directly.",
|
"description": "React Server Components bindings for DOM using Webpack. This is intended to be integrated into meta-frameworks. It is not intended to be imported directly.",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"keywords": [
|
"keywords": [
|
||||||
|
|
@ -14,9 +14,9 @@
|
||||||
"README.md",
|
"README.md",
|
||||||
"index.js",
|
"index.js",
|
||||||
"plugin.js",
|
"plugin.js",
|
||||||
"server.js",
|
"writer.js",
|
||||||
"server.browser.js",
|
"writer.browser.server.js",
|
||||||
"server.node.js",
|
"writer.node.server.js",
|
||||||
"node-register.js",
|
"node-register.js",
|
||||||
"cjs/",
|
"cjs/",
|
||||||
"umd/",
|
"umd/",
|
||||||
|
|
@ -25,21 +25,27 @@
|
||||||
"exports": {
|
"exports": {
|
||||||
".": "./index.js",
|
".": "./index.js",
|
||||||
"./plugin": "./plugin.js",
|
"./plugin": "./plugin.js",
|
||||||
"./server": "./server.js",
|
"./writer": {
|
||||||
"./server.browser": "./server.browser.js",
|
"react-server": {
|
||||||
"./server.node": "./server.node.js",
|
"node": "./writer.node.server.js",
|
||||||
"./node-loader": "./esm/react-transport-dom-webpack-node-loader.js",
|
"browser": "./writer.browser.server.js"
|
||||||
|
},
|
||||||
|
"default": "./writer.js"
|
||||||
|
},
|
||||||
|
"./writer.node.server": "./writer.node.server.js",
|
||||||
|
"./writer.browser.server": "./writer.browser.server.js",
|
||||||
|
"./node-loader": "./esm/react-server-dom-webpack-node-loader.js",
|
||||||
"./node-register": "./node-register.js",
|
"./node-register": "./node-register.js",
|
||||||
"./package.json": "./package.json"
|
"./package.json": "./package.json"
|
||||||
},
|
},
|
||||||
"browser": {
|
"browser": {
|
||||||
"./server.js": "./server.browser.js"
|
"./writer.js": "./writer.browser.server.js"
|
||||||
},
|
},
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type" : "git",
|
"type" : "git",
|
||||||
"url" : "https://github.com/facebook/react.git",
|
"url" : "https://github.com/facebook/react.git",
|
||||||
"directory": "packages/react-transport-dom-webpack"
|
"directory": "packages/react-server-dom-webpack"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
|
|
@ -50,7 +50,7 @@ type Options = {
|
||||||
manifestFilename?: string,
|
manifestFilename?: string,
|
||||||
};
|
};
|
||||||
|
|
||||||
const PLUGIN_NAME = 'React Transport Plugin';
|
const PLUGIN_NAME = 'React Server Plugin';
|
||||||
|
|
||||||
export default class ReactFlightWebpackPlugin {
|
export default class ReactFlightWebpackPlugin {
|
||||||
clientReferences: $ReadOnlyArray<ClientReferencePath>;
|
clientReferences: $ReadOnlyArray<ClientReferencePath>;
|
||||||
|
|
@ -28,8 +28,8 @@ let act;
|
||||||
let Stream;
|
let Stream;
|
||||||
let React;
|
let React;
|
||||||
let ReactDOM;
|
let ReactDOM;
|
||||||
let ReactTransportDOMServer;
|
let ReactServerDOMWriter;
|
||||||
let ReactTransportDOMClient;
|
let ReactServerDOMReader;
|
||||||
|
|
||||||
describe('ReactFlightDOM', () => {
|
describe('ReactFlightDOM', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
|
|
@ -40,8 +40,8 @@ describe('ReactFlightDOM', () => {
|
||||||
Stream = require('stream');
|
Stream = require('stream');
|
||||||
React = require('react');
|
React = require('react');
|
||||||
ReactDOM = require('react-dom');
|
ReactDOM = require('react-dom');
|
||||||
ReactTransportDOMServer = require('react-transport-dom-webpack/server');
|
ReactServerDOMWriter = require('react-server-dom-webpack/writer.node.server');
|
||||||
ReactTransportDOMClient = require('react-transport-dom-webpack');
|
ReactServerDOMReader = require('react-server-dom-webpack');
|
||||||
});
|
});
|
||||||
|
|
||||||
function getTestStream() {
|
function getTestStream() {
|
||||||
|
|
@ -113,8 +113,8 @@ describe('ReactFlightDOM', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const {writable, readable} = getTestStream();
|
const {writable, readable} = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(<App />, writable, webpackMap);
|
ReactServerDOMWriter.pipeToNodeWritable(<App />, writable, webpackMap);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(readable);
|
const response = ReactServerDOMReader.createFromReadableStream(readable);
|
||||||
await waitForSuspense(() => {
|
await waitForSuspense(() => {
|
||||||
const model = response.readRoot();
|
const model = response.readRoot();
|
||||||
expect(model).toEqual({
|
expect(model).toEqual({
|
||||||
|
|
@ -163,12 +163,12 @@ describe('ReactFlightDOM', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const {writable, readable} = getTestStream();
|
const {writable, readable} = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(
|
ReactServerDOMWriter.pipeToNodeWritable(
|
||||||
<RootModel />,
|
<RootModel />,
|
||||||
writable,
|
writable,
|
||||||
webpackMap,
|
webpackMap,
|
||||||
);
|
);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(readable);
|
const response = ReactServerDOMReader.createFromReadableStream(readable);
|
||||||
|
|
||||||
const container = document.createElement('div');
|
const container = document.createElement('div');
|
||||||
const root = ReactDOM.unstable_createRoot(container);
|
const root = ReactDOM.unstable_createRoot(container);
|
||||||
|
|
@ -202,12 +202,12 @@ describe('ReactFlightDOM', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const {writable, readable} = getTestStream();
|
const {writable, readable} = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(
|
ReactServerDOMWriter.pipeToNodeWritable(
|
||||||
<RootModel />,
|
<RootModel />,
|
||||||
writable,
|
writable,
|
||||||
webpackMap,
|
webpackMap,
|
||||||
);
|
);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(readable);
|
const response = ReactServerDOMReader.createFromReadableStream(readable);
|
||||||
|
|
||||||
const container = document.createElement('div');
|
const container = document.createElement('div');
|
||||||
const root = ReactDOM.unstable_createRoot(container);
|
const root = ReactDOM.unstable_createRoot(container);
|
||||||
|
|
@ -239,12 +239,12 @@ describe('ReactFlightDOM', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const {writable, readable} = getTestStream();
|
const {writable, readable} = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(
|
ReactServerDOMWriter.pipeToNodeWritable(
|
||||||
<RootModel />,
|
<RootModel />,
|
||||||
writable,
|
writable,
|
||||||
webpackMap,
|
webpackMap,
|
||||||
);
|
);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(readable);
|
const response = ReactServerDOMReader.createFromReadableStream(readable);
|
||||||
|
|
||||||
const container = document.createElement('div');
|
const container = document.createElement('div');
|
||||||
const root = ReactDOM.unstable_createRoot(container);
|
const root = ReactDOM.unstable_createRoot(container);
|
||||||
|
|
@ -374,8 +374,8 @@ describe('ReactFlightDOM', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const {writable, readable} = getTestStream();
|
const {writable, readable} = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(model, writable, webpackMap);
|
ReactServerDOMWriter.pipeToNodeWritable(model, writable, webpackMap);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(readable);
|
const response = ReactServerDOMReader.createFromReadableStream(readable);
|
||||||
|
|
||||||
const container = document.createElement('div');
|
const container = document.createElement('div');
|
||||||
const root = ReactDOM.unstable_createRoot(container);
|
const root = ReactDOM.unstable_createRoot(container);
|
||||||
|
|
@ -473,12 +473,12 @@ describe('ReactFlightDOM', () => {
|
||||||
const root = ReactDOM.unstable_createRoot(container);
|
const root = ReactDOM.unstable_createRoot(container);
|
||||||
|
|
||||||
const stream1 = getTestStream();
|
const stream1 = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(
|
ReactServerDOMWriter.pipeToNodeWritable(
|
||||||
<App color="red" />,
|
<App color="red" />,
|
||||||
stream1.writable,
|
stream1.writable,
|
||||||
webpackMap,
|
webpackMap,
|
||||||
);
|
);
|
||||||
const response1 = ReactTransportDOMClient.createFromReadableStream(
|
const response1 = ReactServerDOMReader.createFromReadableStream(
|
||||||
stream1.readable,
|
stream1.readable,
|
||||||
);
|
);
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
|
|
@ -501,12 +501,12 @@ describe('ReactFlightDOM', () => {
|
||||||
inputB.value = 'goodbye';
|
inputB.value = 'goodbye';
|
||||||
|
|
||||||
const stream2 = getTestStream();
|
const stream2 = getTestStream();
|
||||||
ReactTransportDOMServer.pipeToNodeWritable(
|
ReactServerDOMWriter.pipeToNodeWritable(
|
||||||
<App color="blue" />,
|
<App color="blue" />,
|
||||||
stream2.writable,
|
stream2.writable,
|
||||||
webpackMap,
|
webpackMap,
|
||||||
);
|
);
|
||||||
const response2 = ReactTransportDOMClient.createFromReadableStream(
|
const response2 = ReactServerDOMReader.createFromReadableStream(
|
||||||
stream2.readable,
|
stream2.readable,
|
||||||
);
|
);
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
|
|
@ -16,15 +16,15 @@ global.TextEncoder = require('util').TextEncoder;
|
||||||
global.TextDecoder = require('util').TextDecoder;
|
global.TextDecoder = require('util').TextDecoder;
|
||||||
|
|
||||||
let React;
|
let React;
|
||||||
let ReactTransportDOMServer;
|
let ReactServerDOMWriter;
|
||||||
let ReactTransportDOMClient;
|
let ReactServerDOMReader;
|
||||||
|
|
||||||
describe('ReactFlightDOMBrowser', () => {
|
describe('ReactFlightDOMBrowser', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
jest.resetModules();
|
jest.resetModules();
|
||||||
React = require('react');
|
React = require('react');
|
||||||
ReactTransportDOMServer = require('react-transport-dom-webpack/server.browser');
|
ReactServerDOMWriter = require('react-server-dom-webpack/writer.browser.server');
|
||||||
ReactTransportDOMClient = require('react-transport-dom-webpack');
|
ReactServerDOMReader = require('react-server-dom-webpack');
|
||||||
});
|
});
|
||||||
|
|
||||||
async function waitForSuspense(fn) {
|
async function waitForSuspense(fn) {
|
||||||
|
|
@ -61,8 +61,8 @@ describe('ReactFlightDOMBrowser', () => {
|
||||||
return model;
|
return model;
|
||||||
}
|
}
|
||||||
|
|
||||||
const stream = ReactTransportDOMServer.renderToReadableStream(<App />);
|
const stream = ReactServerDOMWriter.renderToReadableStream(<App />);
|
||||||
const response = ReactTransportDOMClient.createFromReadableStream(stream);
|
const response = ReactServerDOMReader.createFromReadableStream(stream);
|
||||||
await waitForSuspense(() => {
|
await waitForSuspense(() => {
|
||||||
const model = response.readRoot();
|
const model = response.readRoot();
|
||||||
expect(model).toEqual({
|
expect(model).toEqual({
|
||||||
|
|
@ -7,4 +7,7 @@
|
||||||
* @flow
|
* @flow
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from './server.node';
|
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.',
|
||||||
|
);
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
{
|
{
|
||||||
"name": "react-transport-native-relay",
|
"name": "react-server-native-relay",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"repository": {
|
"repository": {
|
||||||
"type" : "git",
|
"type" : "git",
|
||||||
"url" : "https://github.com/facebook/react.git",
|
"url" : "https://github.com/facebook/react.git",
|
||||||
"directory": "packages/react-transport-native-relay"
|
"directory": "packages/react-server-native-relay"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"object-assign": "^4.1.1",
|
"object-assign": "^4.1.1",
|
||||||
|
|
@ -36,8 +36,8 @@ describe('ReactFlightNativeRelay', () => {
|
||||||
uiViewClassName: 'RCTText',
|
uiViewClassName: 'RCTText',
|
||||||
}));
|
}));
|
||||||
|
|
||||||
ReactNativeFlightRelayServer = require('react-transport-native-relay/server');
|
ReactNativeFlightRelayServer = require('react-server-native-relay/server');
|
||||||
ReactNativeFlightRelayClient = require('react-transport-native-relay');
|
ReactNativeFlightRelayClient = require('react-server-native-relay');
|
||||||
JSResourceReferenceImpl = require('JSResourceReferenceImpl');
|
JSResourceReferenceImpl = require('JSResourceReferenceImpl');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -8,4 +8,4 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from '../ReactFlightServerConfigStream';
|
export * from '../ReactFlightServerConfigStream';
|
||||||
export * from 'react-transport-dom-webpack/src/ReactFlightServerWebpackBundlerConfig';
|
export * from 'react-server-dom-webpack/src/ReactFlightServerWebpackBundlerConfig';
|
||||||
|
|
|
||||||
|
|
@ -7,4 +7,4 @@
|
||||||
* @flow
|
* @flow
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from 'react-transport-dom-relay/src/ReactFlightDOMRelayServerHostConfig';
|
export * from 'react-server-dom-relay/src/ReactFlightDOMRelayServerHostConfig';
|
||||||
|
|
|
||||||
|
|
@ -8,4 +8,4 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from '../ReactFlightServerConfigStream';
|
export * from '../ReactFlightServerConfigStream';
|
||||||
export * from 'react-transport-dom-webpack/src/ReactFlightServerWebpackBundlerConfig';
|
export * from 'react-server-dom-webpack/src/ReactFlightServerWebpackBundlerConfig';
|
||||||
|
|
|
||||||
|
|
@ -7,4 +7,4 @@
|
||||||
* @flow
|
* @flow
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from 'react-transport-native-relay/src/ReactFlightNativeRelayServerHostConfig';
|
export * from 'react-server-native-relay/src/ReactFlightNativeRelayServerHostConfig';
|
||||||
|
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
if (process.env.NODE_ENV === 'production') {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack.production.min.js');
|
|
||||||
} else {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack.development.js');
|
|
||||||
}
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-node-register.js');
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-plugin.js');
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
if (process.env.NODE_ENV === 'production') {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-server.browser.production.min.js');
|
|
||||||
} else {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-server.browser.development.js');
|
|
||||||
}
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
module.exports = require('./server.node');
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
if (process.env.NODE_ENV === 'production') {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-server.node.production.min.js');
|
|
||||||
} else {
|
|
||||||
module.exports = require('./cjs/react-transport-dom-webpack-server.node.development.js');
|
|
||||||
}
|
|
||||||
|
|
@ -270,64 +270,64 @@ const bundles = [
|
||||||
externals: ['react', 'react-dom/server'],
|
externals: ['react', 'react-dom/server'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Server Webpack *******/
|
/******* React Server DOM Webpack Writer *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_DEV, NODE_PROD, UMD_DEV, UMD_PROD],
|
bundleTypes: [NODE_DEV, NODE_PROD, UMD_DEV, UMD_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-dom-webpack/server.browser',
|
entry: 'react-server-dom-webpack/writer.browser.server',
|
||||||
global: 'ReactTransportDOMServer',
|
global: 'ReactServerDOMWriter',
|
||||||
externals: ['react', 'react-dom/server'],
|
externals: ['react', 'react-dom/server'],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_DEV, NODE_PROD],
|
bundleTypes: [NODE_DEV, NODE_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-dom-webpack/server.node',
|
entry: 'react-server-dom-webpack/writer.node.server',
|
||||||
global: 'ReactTransportDOMServer',
|
global: 'ReactServerDOMWriter',
|
||||||
externals: ['react', 'react-dom/server'],
|
externals: ['react', 'react-dom/server'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Client Webpack *******/
|
/******* React Server DOM Webpack Reader *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_DEV, NODE_PROD, UMD_DEV, UMD_PROD],
|
bundleTypes: [NODE_DEV, NODE_PROD, UMD_DEV, UMD_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-dom-webpack',
|
entry: 'react-server-dom-webpack',
|
||||||
global: 'ReactTransportDOMClient',
|
global: 'ReactServerDOMReader',
|
||||||
externals: ['react'],
|
externals: ['react'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Webpack Plugin *******/
|
/******* React Server DOM Webpack Plugin *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_ES2015],
|
bundleTypes: [NODE_ES2015],
|
||||||
moduleType: RENDERER_UTILS,
|
moduleType: RENDERER_UTILS,
|
||||||
entry: 'react-transport-dom-webpack/plugin',
|
entry: 'react-server-dom-webpack/plugin',
|
||||||
global: 'ReactFlightWebpackPlugin',
|
global: 'ReactServerWebpackPlugin',
|
||||||
externals: ['fs', 'path', 'url', 'neo-async'],
|
externals: ['fs', 'path', 'url', 'neo-async'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Webpack Node.js Loader *******/
|
/******* React Server DOM Webpack Node.js Loader *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_ESM],
|
bundleTypes: [NODE_ESM],
|
||||||
moduleType: RENDERER_UTILS,
|
moduleType: RENDERER_UTILS,
|
||||||
entry: 'react-transport-dom-webpack/node-loader',
|
entry: 'react-server-dom-webpack/node-loader',
|
||||||
global: 'ReactFlightWebpackNodeLoader',
|
global: 'ReactServerWebpackNodeLoader',
|
||||||
externals: ['acorn'],
|
externals: ['acorn'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Webpack Node.js CommonJS Loader *******/
|
/******* React Server DOM Webpack Node.js CommonJS Loader *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [NODE_ES2015],
|
bundleTypes: [NODE_ES2015],
|
||||||
moduleType: RENDERER_UTILS,
|
moduleType: RENDERER_UTILS,
|
||||||
entry: 'react-transport-dom-webpack/node-register',
|
entry: 'react-server-dom-webpack/node-register',
|
||||||
global: 'ReactFlightWebpackNodeRegister',
|
global: 'ReactFlightWebpackNodeRegister',
|
||||||
externals: ['url', 'module'],
|
externals: ['url', 'module'],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Server Relay *******/
|
/******* React Server DOM Relay Writer *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [FB_WWW_DEV, FB_WWW_PROD],
|
bundleTypes: [FB_WWW_DEV, FB_WWW_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-dom-relay/server',
|
entry: 'react-server-dom-relay/server',
|
||||||
global: 'ReactFlightDOMRelayServer',
|
global: 'ReactFlightDOMRelayServer', // TODO: Rename to Writer
|
||||||
externals: [
|
externals: [
|
||||||
'react',
|
'react',
|
||||||
'react-dom/server',
|
'react-dom/server',
|
||||||
|
|
@ -336,12 +336,12 @@ const bundles = [
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport DOM Client Relay *******/
|
/******* React Server DOM Relay Reader *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [FB_WWW_DEV, FB_WWW_PROD],
|
bundleTypes: [FB_WWW_DEV, FB_WWW_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-dom-relay',
|
entry: 'react-server-dom-relay',
|
||||||
global: 'ReactFlightDOMRelayClient',
|
global: 'ReactFlightDOMRelayClient', // TODO: Rename to Reader
|
||||||
externals: [
|
externals: [
|
||||||
'react',
|
'react',
|
||||||
'ReactFlightDOMRelayClientIntegration',
|
'ReactFlightDOMRelayClientIntegration',
|
||||||
|
|
@ -349,12 +349,12 @@ const bundles = [
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport Native Server Relay *******/
|
/******* React Server Native Relay Writer *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [RN_FB_DEV, RN_FB_PROD],
|
bundleTypes: [RN_FB_DEV, RN_FB_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-native-relay/server',
|
entry: 'react-server-native-relay/server',
|
||||||
global: 'ReactFlightNativeRelayServer',
|
global: 'ReactFlightNativeRelayServer', // TODO: Rename to Writer
|
||||||
externals: [
|
externals: [
|
||||||
'react',
|
'react',
|
||||||
'ReactFlightNativeRelayServerIntegration',
|
'ReactFlightNativeRelayServerIntegration',
|
||||||
|
|
@ -362,12 +362,12 @@ const bundles = [
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
/******* React Transport Native Client Relay *******/
|
/******* React Server Native Relay Reader *******/
|
||||||
{
|
{
|
||||||
bundleTypes: [RN_FB_DEV, RN_FB_PROD],
|
bundleTypes: [RN_FB_DEV, RN_FB_PROD],
|
||||||
moduleType: RENDERER,
|
moduleType: RENDERER,
|
||||||
entry: 'react-transport-native-relay',
|
entry: 'react-server-native-relay',
|
||||||
global: 'ReactFlightNativeRelayClient',
|
global: 'ReactFlightNativeRelayClient', // TODO: Rename to Reader
|
||||||
externals: [
|
externals: [
|
||||||
'react',
|
'react',
|
||||||
'ReactFlightNativeRelayClientIntegration',
|
'ReactFlightNativeRelayClientIntegration',
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,7 @@ function getBundleOutputPath(bundleType, filename, packageName) {
|
||||||
/\.js$/,
|
/\.js$/,
|
||||||
'.fb.js'
|
'.fb.js'
|
||||||
)}`;
|
)}`;
|
||||||
case 'react-transport-native-relay':
|
case 'react-server-native-relay':
|
||||||
return `build/facebook-relay/flight/${filename}`;
|
return `build/facebook-relay/flight/${filename}`;
|
||||||
default:
|
default:
|
||||||
throw new Error('Unknown RN package.');
|
throw new Error('Unknown RN package.');
|
||||||
|
|
|
||||||
|
|
@ -13,18 +13,18 @@ module.exports = [
|
||||||
'react-dom',
|
'react-dom',
|
||||||
'react-dom/testing',
|
'react-dom/testing',
|
||||||
'react-dom/unstable-fizz.node',
|
'react-dom/unstable-fizz.node',
|
||||||
'react-transport-dom-webpack/server.node',
|
'react-server-dom-webpack/writer.node.server',
|
||||||
'react-transport-dom-webpack',
|
'react-server-dom-webpack',
|
||||||
],
|
],
|
||||||
paths: [
|
paths: [
|
||||||
'react-dom',
|
'react-dom',
|
||||||
'react-dom/unstable-fizz',
|
'react-dom/unstable-fizz',
|
||||||
'react-dom/unstable-fizz.node',
|
'react-dom/unstable-fizz.node',
|
||||||
'react-dom/src/server/ReactDOMFizzServerNode.js', // react-dom/unstable-fizz.node
|
'react-dom/src/server/ReactDOMFizzServerNode.js', // react-dom/unstable-fizz.node
|
||||||
'react-transport-dom-webpack',
|
'react-server-dom-webpack',
|
||||||
'react-transport-dom-webpack/server',
|
'react-server-dom-webpack/writer',
|
||||||
'react-transport-dom-webpack/server.node',
|
'react-server-dom-webpack/writer.node.server',
|
||||||
'react-transport-dom-webpack/src/ReactFlightDOMServerNode.js', // react-transport-dom-webpack/server.browser
|
'react-server-dom-webpack/src/ReactFlightDOMServerNode.js', // react-server-dom-webpack/writer.node.server
|
||||||
'react-client/src/ReactFlightClientStream.js', // We can only type check this in streaming configurations.
|
'react-client/src/ReactFlightClientStream.js', // We can only type check this in streaming configurations.
|
||||||
'react-interactions',
|
'react-interactions',
|
||||||
],
|
],
|
||||||
|
|
@ -37,17 +37,17 @@ module.exports = [
|
||||||
'react-dom',
|
'react-dom',
|
||||||
'react-dom/testing',
|
'react-dom/testing',
|
||||||
'react-dom/unstable-fizz.browser',
|
'react-dom/unstable-fizz.browser',
|
||||||
'react-transport-dom-webpack/server.browser',
|
'react-server-dom-webpack/writer.browser.server',
|
||||||
'react-transport-dom-webpack',
|
'react-server-dom-webpack',
|
||||||
],
|
],
|
||||||
paths: [
|
paths: [
|
||||||
'react-dom',
|
'react-dom',
|
||||||
'react-dom/testing',
|
'react-dom/testing',
|
||||||
'react-dom/unstable-fizz.browser',
|
'react-dom/unstable-fizz.browser',
|
||||||
'react-dom/src/server/ReactDOMFizzServerBrowser.js', // react-dom/unstable-fizz.browser
|
'react-dom/src/server/ReactDOMFizzServerBrowser.js', // react-dom/unstable-fizz.browser
|
||||||
'react-transport-dom-webpack',
|
'react-server-dom-webpack',
|
||||||
'react-transport-dom-webpack/server.browser',
|
'react-server-dom-webpack/writer.browser.server',
|
||||||
'react-transport-dom-webpack/src/ReactFlightDOMServerBrowser.js', // react-transport-dom-webpack/server.browser
|
'react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js', // react-server-dom-webpack/writer.browser.server
|
||||||
'react-client/src/ReactFlightClientStream.js', // We can only type check this in streaming configurations.
|
'react-client/src/ReactFlightClientStream.js', // We can only type check this in streaming configurations.
|
||||||
],
|
],
|
||||||
isFlowTyped: true,
|
isFlowTyped: true,
|
||||||
|
|
@ -83,21 +83,18 @@ module.exports = [
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
shortName: 'dom-relay',
|
shortName: 'dom-relay',
|
||||||
entryPoints: [
|
entryPoints: ['react-server-dom-relay', 'react-server-dom-relay/server'],
|
||||||
'react-transport-dom-relay',
|
paths: ['react-dom', 'react-server-dom-relay'],
|
||||||
'react-transport-dom-relay/server',
|
|
||||||
],
|
|
||||||
paths: ['react-dom', 'react-transport-dom-relay'],
|
|
||||||
isFlowTyped: true,
|
isFlowTyped: true,
|
||||||
isServerSupported: true,
|
isServerSupported: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
shortName: 'native-relay',
|
shortName: 'native-relay',
|
||||||
entryPoints: [
|
entryPoints: [
|
||||||
'react-transport-native-relay',
|
'react-server-native-relay',
|
||||||
'react-transport-native-relay/server',
|
'react-server-native-relay/server',
|
||||||
],
|
],
|
||||||
paths: ['react-native-renderer', 'react-transport-native-relay'],
|
paths: ['react-native-renderer', 'react-server-native-relay'],
|
||||||
isFlowTyped: true,
|
isFlowTyped: true,
|
||||||
isServerSupported: true,
|
isServerSupported: true,
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user