Skip to content

Commit 5392e75

Browse files
committed
Clean up inconsistent naming in Flight implementation, part 1
Since `ClientManifest` and `SSRManifest` are now clearly differentiated in their structure (via facebook#26300) and type names (via facebook#26351), this opened up the opportunity to clean up some inconsistencies in how parameters, variables and properties were named (e.g. `config`, `bundlerConfig`, `moduleMap`, `webpackMap`, ...). To improve readability and avoid confusion between the two different types of objects we now always name them either `clientManifest` or `ssrManifest`.
1 parent 3706edb commit 5392e75

29 files changed

+132
-130
lines changed

fixtures/flight/server/global.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,8 +122,8 @@ app.all('/', async function (req, res, next) {
122122
virtualFs = fs;
123123
buildPath = path.join(__dirname, '../build/');
124124
}
125-
// Read the module map from the virtual file system.
126-
const moduleMap = JSON.parse(
125+
// Read the SSR manifest from the virtual file system.
126+
const ssrManifest = JSON.parse(
127127
await virtualFs.readFile(
128128
path.join(buildPath, 'react-ssr-manifest.json'),
129129
'utf8'
@@ -140,7 +140,7 @@ app.all('/', async function (req, res, next) {
140140
// For HTML, we're a "client" emulator that runs the client code,
141141
// so we start by consuming the RSC payload. This needs a module
142142
// map that reverse engineers the client-side path to the SSR path.
143-
const root = await createFromNodeStream(rscResponse, moduleMap);
143+
const root = await createFromNodeStream(rscResponse, ssrManifest);
144144
// Render it into HTML by resolving the client components
145145
res.set('Content-type', 'text/html');
146146
const {pipe} = renderToPipeableStream(root, {

fixtures/flight/server/region.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ app.get('/', async function (req, res) {
5151
// const m = require('../src/App.js');
5252
const m = await import('../src/App.js');
5353

54-
let moduleMap;
54+
let clientManifest;
5555
let mainCSSChunks;
5656
if (process.env.NODE_ENV === 'development') {
57-
// Read the module map from the HMR server in development.
58-
moduleMap = await (
57+
// Read the client manifest from the HMR server in development.
58+
clientManifest = await (
5959
await fetch('http://localhost:3000/react-client-manifest.json')
6060
).json();
6161
mainCSSChunks = (
@@ -64,8 +64,8 @@ app.get('/', async function (req, res) {
6464
).json()
6565
).main.css;
6666
} else {
67-
// Read the module map from the static build in production.
68-
moduleMap = JSON.parse(
67+
// Read the client manifest from the static build in production.
68+
clientManifest = JSON.parse(
6969
await readFile(
7070
path.resolve(__dirname, `../build/react-client-manifest.json`),
7171
'utf8'
@@ -90,7 +90,7 @@ app.get('/', async function (req, res) {
9090
),
9191
React.createElement(App),
9292
];
93-
const {pipe} = renderToPipeableStream(root, moduleMap);
93+
const {pipe} = renderToPipeableStream(root, clientManifest);
9494
pipe(res);
9595
});
9696

packages/react-client/src/ReactFlightClient.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ Chunk.prototype.then = function <T>(
149149
};
150150

151151
export type ResponseBase = {
152-
_bundlerConfig: SSRManifest,
152+
_ssrManifest: SSRManifest,
153153
_callServer: CallServerCallback,
154154
_chunks: Map<number, SomeChunk<any>>,
155155
...
@@ -611,12 +611,12 @@ function missingCall() {
611611
}
612612

613613
export function createResponse(
614-
bundlerConfig: SSRManifest,
614+
ssrManifest: SSRManifest,
615615
callServer: void | CallServerCallback,
616616
): ResponseBase {
617617
const chunks: Map<number, SomeChunk<any>> = new Map();
618618
const response = {
619-
_bundlerConfig: bundlerConfig,
619+
_ssrManifest: ssrManifest,
620620
_callServer: callServer !== undefined ? callServer : missingCall,
621621
_chunks: chunks,
622622
};
@@ -649,7 +649,7 @@ export function resolveModule(
649649
model,
650650
);
651651
const clientReference = resolveClientReference<$FlowFixMe>(
652-
response._bundlerConfig,
652+
response._ssrManifest,
653653
clientReferenceMetadata,
654654
);
655655

packages/react-client/src/ReactFlightClientStream.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,13 +121,13 @@ function createFromJSONCallback(response: Response) {
121121
}
122122

123123
export function createResponse(
124-
bundlerConfig: SSRManifest,
124+
ssrManifest: SSRManifest,
125125
callServer: void | CallServerCallback,
126126
): Response {
127127
// NOTE: CHECK THE COMPILER OUTPUT EACH TIME YOU CHANGE THIS.
128128
// It should be inlined to one object literal but minor changes can break it.
129129
const stringDecoder = supportsBinaryStreams ? createStringDecoder() : null;
130-
const response: any = createResponseBase(bundlerConfig, callServer);
130+
const response: any = createResponseBase(ssrManifest, callServer);
131131
response._partialRow = '';
132132
if (supportsBinaryStreams) {
133133
response._stringDecoder = stringDecoder;

packages/react-noop-renderer/src/ReactNoopFlightClient.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ type Source = Array<string>;
2222

2323
const {createResponse, processStringChunk, getRoot, close} = ReactFlightClient({
2424
supportsBinaryStreams: false,
25-
resolveClientReference(bundlerConfig: null, idx: string) {
25+
resolveClientReference(ssrManifest: null, idx: string) {
2626
return idx;
2727
},
2828
preloadModule(idx: string) {},

packages/react-noop-renderer/src/ReactNoopFlightServer.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,14 @@ const ReactNoopFlightServer = ReactFlightServer({
5454
isServerReference(reference: Object): boolean {
5555
return reference.$$typeof === Symbol.for('react.server.reference');
5656
},
57-
getClientReferenceKey(reference: Object): Object {
58-
return reference;
57+
getClientReferenceKey(clientReference: Object): Object {
58+
return clientReference;
5959
},
6060
resolveClientReferenceMetadata(
61-
config: void,
62-
reference: {$$typeof: symbol, value: any},
61+
clientManifest: void,
62+
clientReference: {$$typeof: symbol, value: any},
6363
) {
64-
return saveModule(reference.value);
64+
return saveModule(clientReference.value);
6565
},
6666
});
6767

@@ -73,10 +73,10 @@ type Options = {
7373

7474
function render(model: ReactClientValue, options?: Options): Destination {
7575
const destination: Destination = [];
76-
const bundlerConfig = undefined;
76+
const clientManifest = undefined;
7777
const request = ReactNoopFlightServer.createRequest(
7878
model,
79-
bundlerConfig,
79+
clientManifest,
8080
options ? options.onError : undefined,
8181
options ? options.context : undefined,
8282
options ? options.identifierPrefix : undefined,

packages/react-server-dom-relay/src/ReactFlightDOMRelayClientHostConfig.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export type UninitializedModel = JSONValue;
3838
export type Response = ResponseBase;
3939

4040
export function resolveClientReference<T>(
41-
bundlerConfig: SSRManifest,
41+
ssrManifest: SSRManifest,
4242
metadata: ClientReferenceMetadata,
4343
): ClientReference<T> {
4444
return resolveClientReferenceImpl(metadata);

packages/react-server-dom-relay/src/ReactFlightDOMRelayServer.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ type Options = {
2727
function render(
2828
model: ReactClientValue,
2929
destination: Destination,
30-
config: ClientManifest,
30+
clientManifest: ClientManifest,
3131
options?: Options,
3232
): void {
3333
const request = createRequest(
3434
model,
35-
config,
35+
clientManifest,
3636
options ? options.onError : undefined,
3737
undefined, // not currently set up to supply context overrides
3838
options ? options.identifierPrefix : undefined,

packages/react-server-dom-relay/src/ReactFlightDOMRelayServerHostConfig.js

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export type ServerReferenceId = {};
2626

2727
import type {
2828
Destination,
29-
BundlerConfig as ClientManifest,
29+
ClientManifest,
3030
ClientReferenceMetadata,
3131
} from 'ReactFlightDOMRelayServerIntegration';
3232

@@ -40,7 +40,7 @@ import {
4040

4141
export type {
4242
Destination,
43-
BundlerConfig as ClientManifest,
43+
ClientManifest,
4444
ClientReferenceMetadata,
4545
} from 'ReactFlightDOMRelayServerIntegration';
4646

@@ -55,30 +55,30 @@ export function isServerReference(reference: Object): boolean {
5555
export type ClientReferenceKey = ClientReference<any>;
5656

5757
export function getClientReferenceKey(
58-
reference: ClientReference<any>,
58+
clientReference: ClientReference<any>,
5959
): ClientReferenceKey {
6060
// We use the reference object itself as the key because we assume the
6161
// object will be cached by the bundler runtime.
62-
return reference;
62+
return clientReference;
6363
}
6464

6565
export function resolveClientReferenceMetadata<T>(
66-
config: ClientManifest,
67-
resource: ClientReference<T>,
66+
clientManifest: ClientManifest,
67+
clientReference: ClientReference<T>,
6868
): ClientReferenceMetadata {
69-
return resolveClientReferenceMetadataImpl(config, resource);
69+
return resolveClientReferenceMetadataImpl(clientManifest, clientReference);
7070
}
7171

7272
export function getServerReferenceId<T>(
73-
config: ClientManifest,
74-
resource: ServerReference<T>,
73+
clientManifest: ClientManifest,
74+
serverReference: ServerReference<T>,
7575
): ServerReferenceId {
7676
throw new Error('Not implemented.');
7777
}
7878

7979
export function getServerReferenceBoundArguments<T>(
80-
config: ClientManifest,
81-
resource: ServerReference<T>,
80+
clientManifest: ClientManifest,
81+
serverReference: ServerReference<T>,
8282
): Array<ReactClientValue> {
8383
throw new Error('Not implemented.');
8484
}

packages/react-server-dom-relay/src/__mocks__/ReactFlightDOMRelayServerIntegration.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ const ReactFlightDOMRelayServerIntegration = {
1212
destination.push(json);
1313
},
1414
close(destination) {},
15-
resolveClientReferenceMetadata(config, resource) {
16-
return resource._moduleId;
15+
resolveClientReferenceMetadata(clientManifest, clientReference) {
16+
return clientReference._moduleId;
1717
},
1818
};
1919

packages/react-server-dom-webpack/src/ReactFlightClientNodeBundlerConfig.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ export opaque type ClientReference<T> = {
3232
};
3333

3434
export function resolveClientReference<T>(
35-
bundlerConfig: SSRManifest,
35+
ssrManifest: SSRManifest,
3636
metadata: ClientReferenceMetadata,
3737
): ClientReference<T> {
38-
const resolvedModuleData = bundlerConfig[metadata.id][metadata.name];
38+
const resolvedModuleData = ssrManifest[metadata.id][metadata.name];
3939
return resolvedModuleData;
4040
}
4141

packages/react-server-dom-webpack/src/ReactFlightClientWebpackBundlerConfig.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ export opaque type ClientReferenceMetadata = {
3030
export opaque type ClientReference<T> = ClientReferenceMetadata;
3131

3232
export function resolveClientReference<T>(
33-
bundlerConfig: SSRManifest,
33+
ssrManifest: SSRManifest,
3434
metadata: ClientReferenceMetadata,
3535
): ClientReference<T> {
36-
if (bundlerConfig) {
37-
const resolvedModuleData = bundlerConfig[metadata.id][metadata.name];
36+
if (ssrManifest) {
37+
const resolvedModuleData = ssrManifest[metadata.id][metadata.name];
3838
if (metadata.async) {
3939
return {
4040
id: resolvedModuleData.id,

packages/react-server-dom-webpack/src/ReactFlightDOMClientEdge.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ function noServerCall() {
3030
}
3131

3232
export type Options = {
33-
moduleMap?: SSRManifest,
33+
ssrManifest?: SSRManifest,
3434
};
3535

3636
function createResponseFromOptions(options: void | Options) {
3737
return createResponse(
38-
options && options.moduleMap ? options.moduleMap : null,
38+
options && options.ssrManifest ? options.ssrManifest : null,
3939
noServerCall,
4040
);
4141
}

packages/react-server-dom-webpack/src/ReactFlightDOMClientNode.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ function noServerCall() {
3434

3535
function createFromNodeStream<T>(
3636
stream: Readable,
37-
moduleMap: $NonMaybeType<SSRManifest>,
37+
ssrManifest: $NonMaybeType<SSRManifest>,
3838
): Thenable<T> {
39-
const response: Response = createResponse(moduleMap, noServerCall);
39+
const response: Response = createResponse(ssrManifest, noServerCall);
4040
stream.on('data', chunk => {
4141
if (typeof chunk === 'string') {
4242
processStringChunk(response, chunk, 0);

packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ type Options = {
2727

2828
function renderToReadableStream(
2929
model: ReactClientValue,
30-
webpackMap: ClientManifest,
30+
clientManifest: ClientManifest,
3131
options?: Options,
3232
): ReadableStream {
3333
const request = createRequest(
3434
model,
35-
webpackMap,
35+
clientManifest,
3636
options ? options.onError : undefined,
3737
options ? options.context : undefined,
3838
options ? options.identifierPrefix : undefined,

packages/react-server-dom-webpack/src/ReactFlightDOMServerEdge.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ type Options = {
2727

2828
function renderToReadableStream(
2929
model: ReactClientValue,
30-
webpackMap: ClientManifest,
30+
clientManifest: ClientManifest,
3131
options?: Options,
3232
): ReadableStream {
3333
const request = createRequest(
3434
model,
35-
webpackMap,
35+
clientManifest,
3636
options ? options.onError : undefined,
3737
options ? options.context : undefined,
3838
options ? options.identifierPrefix : undefined,

packages/react-server-dom-webpack/src/ReactFlightDOMServerNode.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ type PipeableStream = {
4040

4141
function renderToPipeableStream(
4242
model: ReactClientValue,
43-
webpackMap: ClientManifest,
43+
clientManifest: ClientManifest,
4444
options?: Options,
4545
): PipeableStream {
4646
const request = createRequest(
4747
model,
48-
webpackMap,
48+
clientManifest,
4949
options ? options.onError : undefined,
5050
options ? options.context : undefined,
5151
options ? options.identifierPrefix : undefined,

packages/react-server-dom-webpack/src/ReactFlightServerWebpackBundlerConfig.js

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,11 @@ const CLIENT_REFERENCE_TAG = Symbol.for('react.client.reference');
4141
const SERVER_REFERENCE_TAG = Symbol.for('react.server.reference');
4242

4343
export function getClientReferenceKey(
44-
reference: ClientReference<any>,
44+
clientReference: ClientReference<any>,
4545
): ClientReferenceKey {
46-
return reference.$$async ? reference.$$id + '#async' : reference.$$id;
46+
return clientReference.$$async
47+
? clientReference.$$id + '#async'
48+
: clientReference.$$id;
4749
}
4850

4951
export function isClientReference(reference: Object): boolean {
@@ -55,10 +57,10 @@ export function isServerReference(reference: Object): boolean {
5557
}
5658

5759
export function resolveClientReferenceMetadata<T>(
58-
config: ClientManifest,
60+
clientManifest: ClientManifest,
5961
clientReference: ClientReference<T>,
6062
): ClientReferenceMetadata {
61-
const resolvedModuleData = config[clientReference.$$id];
63+
const resolvedModuleData = clientManifest[clientReference.$$id];
6264
if (clientReference.$$async) {
6365
return {
6466
id: resolvedModuleData.id,
@@ -72,14 +74,14 @@ export function resolveClientReferenceMetadata<T>(
7274
}
7375

7476
export function getServerReferenceId<T>(
75-
config: ClientManifest,
77+
clientManifest: ClientManifest,
7678
serverReference: ServerReference<T>,
7779
): ServerReferenceId {
7880
return serverReference.$$id;
7981
}
8082

8183
export function getServerReferenceBoundArguments<T>(
82-
config: ClientManifest,
84+
clientManifest: ClientManifest,
8385
serverReference: ServerReference<T>,
8486
): null | Array<ReactClientValue> {
8587
return serverReference.$$bound;

packages/react-server-dom-webpack/src/ReactFlightWebpackPlugin.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ export default class ReactFlightWebpackPlugin {
213213
if (clientFileNameFound === false) {
214214
compilation.warnings.push(
215215
new WebpackError(
216-
`Client runtime at ${clientImportName} was not found. React Server Components module map file ${_this.clientManifestFilename} was not created.`,
216+
`Client runtime at ${clientImportName} was not found. React Server Components client manifest file ${_this.clientManifestFilename} was not created.`,
217217
),
218218
);
219219
return;

0 commit comments

Comments
 (0)