Skip to content

Commit 427bcad

Browse files
authored
Update React on site
Closes GH-1987 Reviewed-by: Christian Murphy <[email protected]>
1 parent b8a76c9 commit 427bcad

File tree

7 files changed

+1152
-8151
lines changed

7 files changed

+1152
-8151
lines changed

docs/_asset/index.client.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react'
2-
import {hydrateRoot} from 'react-dom'
2+
import {createRoot} from 'react-dom/client'
33
import {createFromFetch} from 'react-server-dom-webpack'
44
import {Root} from './root.client.js'
55

@@ -12,7 +12,8 @@ if ('paintWorklet' in CSS) {
1212
}
1313

1414
async function main() {
15-
const $root = document.querySelector('#root')
1615
const nljson = document.querySelector('#payload').dataset.src
17-
hydrateRoot($root, <Root response={createFromFetch(fetch(nljson))} />)
16+
const $root = document.querySelector('#root')
17+
const root = createRoot($root)
18+
root.render(<Root response={createFromFetch(fetch(nljson))} />)
1819
}

package-lock.json

Lines changed: 1120 additions & 8120 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,11 @@
6464
"postcss-cli": "^9.0.0",
6565
"prettier": "^2.0.0",
6666
"puppeteer-core": "^13.0.0",
67-
"react": "0.0.0-experimental-7ec4c5597",
68-
"react-dom": "0.0.0-experimental-7ec4c5597",
67+
"react": "0.0.0-experimental-1159ff619-20220324",
68+
"react-dom": "0.0.0-experimental-1159ff619-20220324",
6969
"react-error-boundary": "^3.0.0",
70-
"react-fetch": "0.0.0-experimental-7ec4c5597",
71-
"react-server-dom-webpack": "0.0.0-experimental-7ec4c5597",
70+
"react-fetch": "0.0.0-experimental-1159ff619-20220324",
71+
"react-server-dom-webpack": "0.0.0-experimental-1159ff619-20220324",
7272
"react-tabs": "^4.0.0",
7373
"react-use-clipboard": "^1.0.0",
7474
"rehype-autolink-headings": "^6.0.0",
@@ -100,7 +100,7 @@
100100
"rimraf": "^3.0.0",
101101
"rodemirror": "^1.0.0",
102102
"type-coverage": "^2.0.0",
103-
"typescript": "~4.4.0",
103+
"typescript": "^4.0.0",
104104
"unified": "^10.0.0",
105105
"unist-builder": "^3.0.0",
106106
"unist-util-visit": "^4.0.0",
@@ -109,7 +109,7 @@
109109
"vfile-message": "^3.0.0",
110110
"vfile-reporter": "^7.0.0",
111111
"vfile-statistics": "^2.0.0",
112-
"webpack": "^4.0.0",
112+
"webpack": "^5.0.0",
113113
"xast-util-feed": "^1.0.0",
114114
"xast-util-sitemap": "^1.0.0",
115115
"xast-util-to-xml": "^3.0.0",

patches/react-server-dom-webpack+0.0.0-experimental-7ec4c5597.patch renamed to patches/react-server-dom-webpack+0.0.0-experimental-1159ff619-20220324.patch

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
diff --git a/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-node-register.js b/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-node-register.js
2-
index 184ed95..76fa48e 100644
2+
index ad8aaca..16dd552 100644
33
--- a/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-node-register.js
44
+++ b/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-node-register.js
5-
@@ -68,7 +68,7 @@ module.exports = function register() {
5+
@@ -69,7 +69,7 @@ module.exports = function register() {
66
}
77
};
88

@@ -11,7 +11,7 @@ index 184ed95..76fa48e 100644
1111
var moduleId = url.pathToFileURL(path).href;
1212
var moduleReference = {
1313
$$typeof: MODULE_REFERENCE,
14-
@@ -84,11 +84,11 @@ module.exports = function register() {
14+
@@ -85,11 +85,11 @@ module.exports = function register() {
1515
Module._resolveFilename = function (request, parent, isMain, options) {
1616
var resolved = originalResolveFilename.apply(this, arguments);
1717

@@ -27,10 +27,10 @@ index 184ed95..76fa48e 100644
2727
} else {
2828
reason = "\"" + request + "\" (which expands to \"" + resolved + "\")";
2929
diff --git a/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-plugin.js b/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-plugin.js
30-
index 01e3fcf..39c86f1 100644
30+
index a78c39c..c26a388 100644
3131
--- a/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-plugin.js
3232
+++ b/node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack-plugin.js
33-
@@ -58,7 +58,7 @@ class ReactFlightWebpackPlugin {
33+
@@ -61,7 +61,7 @@ class ReactFlightWebpackPlugin {
3434
this.clientReferences = [{
3535
directory: '.',
3636
recursive: true,
@@ -39,20 +39,20 @@ index 01e3fcf..39c86f1 100644
3939
}];
4040
} else if (typeof options.clientReferences === 'string' || !isArray(options.clientReferences)) {
4141
this.clientReferences = [options.clientReferences];
42-
@@ -146,7 +146,7 @@ class ReactFlightWebpackPlugin {
43-
// TODO: Hook into deps instead of the target module.
44-
// That way we know by the type of dep whether to include.
45-
// It also resolves conflicts when the same module is in multiple chunks.
46-
- if (!/\.client\.js$/.test(mod.resource)) {
47-
+ if (!/\.client\.(js|md|mdx)$/.test(mod.resource)) {
48-
return;
49-
}
42+
@@ -162,7 +162,7 @@ class ReactFlightWebpackPlugin {
43+
// TODO: Hook into deps instead of the target module.
44+
// That way we know by the type of dep whether to include.
45+
// It also resolves conflicts when the same module is in multiple chunks.
46+
- if (!/\.client\.(js|ts)x?$/.test(module.resource)) {
47+
+ if (!/\.client\.(js|ts|md)x?$/.test(module.resource)) {
48+
return;
49+
}
5050

5151
diff --git a/node_modules/react-server-dom-webpack/esm/react-server-dom-webpack-node-loader.js b/node_modules/react-server-dom-webpack/esm/react-server-dom-webpack-node-loader.js
52-
index 843eb86..2741250 100644
52+
index 15742ac..2cfc007 100644
5353
--- a/node_modules/react-server-dom-webpack/esm/react-server-dom-webpack-node-loader.js
5454
+++ b/node_modules/react-server-dom-webpack/esm/react-server-dom-webpack-node-loader.js
55-
@@ -72,13 +72,13 @@ async function resolve(specifier, context, defaultResolve) {
55+
@@ -78,13 +78,13 @@ async function resolve(specifier, context, defaultResolve) {
5656

5757
var resolved = await defaultResolve(specifier, context, defaultResolve);
5858

@@ -69,7 +69,7 @@ index 843eb86..2741250 100644
6969
reason = "\"" + specifier + "\"";
7070
} else {
7171
reason = "\"" + specifier + "\" (which expands to \"" + resolved.url + "\")";
72-
@@ -233,7 +233,7 @@ async function parseExportNamesInto(transformedSource, names, parentURL, default
72+
@@ -239,7 +239,7 @@ async function parseExportNamesInto(transformedSource, names, parentURL, default
7373
async function transformSource(source, context, defaultTransformSource) {
7474
var transformed = await defaultTransformSource(source, context, defaultTransformSource);
7575

renovate.json5

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,9 @@
88
// RSC.
99
'react',
1010
'react-dom',
11+
'react-fetch',
1112
'react-server-dom-webpack',
12-
// `[email protected]` has a problem with tail calls.
13-
'typescript',
14-
// `node-loader@2` depends on Node 16+.
13+
// `node-loader@2` depends on Node 16+. Our website is on Vercel/AWS which don’t support Node 16.
1514
'@node-loader/babel',
1615
'@node-loader/core'
1716
],

website/generate.server.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import path from 'path'
44
import process from 'process'
55
import {fileURLToPath} from 'url'
66
import React from 'react'
7-
import {pipeToNodeWritable} from 'react-server-dom-webpack/writer'
7+
import {renderToPipeableStream} from 'react-server-dom-webpack/writer'
88
import pAll from 'p-all'
99
import {globby} from 'globby'
1010
import {sitemap} from 'xast-util-sitemap'
@@ -159,7 +159,8 @@ async function main() {
159159
navTree
160160
})
161161

162-
pipeToNodeWritable(element, writeStream, manifest)
162+
const {pipe} = renderToPipeableStream(element, manifest)
163+
pipe(writeStream)
163164
}),
164165
{concurrency: 6}
165166
)

website/prerender.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import {promises as fs} from 'fs'
33
import path from 'path'
44
import {fileURLToPath} from 'url'
55
import React from 'react'
6-
import {renderToString} from 'react-dom/server.js'
6+
import {renderToString} from 'react-dom/server'
77
import {createFromReadableStream} from 'react-server-dom-webpack'
88
import {globby} from 'globby'
99
import pAll from 'p-all'

0 commit comments

Comments
 (0)