Skip to content

Commit 7465063

Browse files
authored
chore(react-server-dom-vite): minor fixup (#81)
1 parent 161b4a5 commit 7465063

File tree

7 files changed

+21
-15
lines changed

7 files changed

+21
-15
lines changed

react-server-dom-vite-example/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"lint-check": "biome check ."
1313
},
1414
"dependencies": {
15-
"@jacob-ebey/react-server-dom-vite": "19.0.0-experimental.14",
15+
"react-server-dom-vite": "npm:@jacob-ebey/react-server-dom-vite@19.0.0-experimental.14",
1616
"react": "^19.0.0",
1717
"react-dom": "^19.0.0"
1818
},

react-server-dom-vite-example/pnpm-lock.yaml

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

react-server-dom-vite-example/src/entry.client.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import ReactClient from "@jacob-ebey/react-server-dom-vite/client";
21
import React from "react";
32
import ReactDomClient from "react-dom/client";
3+
import ReactClient from "react-server-dom-vite/client";
44
import type { ServerPayload } from "./entry.rsc";
55
import type { CallServerFn } from "./types";
66
import { clientReferenceManifest } from "./utils/client-reference";

react-server-dom-vite-example/src/entry.rsc.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import ReactServer from "@jacob-ebey/react-server-dom-vite/server";
21
import type { ReactFormState } from "react-dom/client";
2+
import ReactServer from "react-server-dom-vite/server";
33
import { Router } from "./app/routes";
44
import type {
55
ClientReferenceMetadataManifest,

react-server-dom-vite-example/src/entry.ssr.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import type { IncomingMessage, ServerResponse } from "node:http";
2-
import ReactClient from "@jacob-ebey/react-server-dom-vite/client";
32
import ReactDomServer from "react-dom/server";
3+
import ReactClient from "react-server-dom-vite/client";
44
import type { ModuleRunner } from "vite/module-runner";
55
import type { ServerPayload } from "./entry.rsc";
66
import { clientReferenceManifest } from "./utils/client-reference";

react-server-dom-vite-example/src/types/ambient.d.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/// <reference types="vite/client" />
22

3-
declare module "@jacob-ebey/react-server-dom-vite/server" {
3+
declare module "react-server-dom-vite/server" {
44
export function renderToPipeableStream<T>(
55
data: T,
66
manifest: import(".").ClientReferenceMetadataManifest,
@@ -21,7 +21,7 @@ declare module "@jacob-ebey/react-server-dom-vite/server" {
2121
): Promise<import("react-dom/client").ReactFormState>;
2222
}
2323

24-
declare module "@jacob-ebey/react-server-dom-vite/client" {
24+
declare module "react-server-dom-vite/client" {
2525
export function createFromNodeStream<T>(
2626
stream: import("node:stream").Readable,
2727
manifest: import(".").ClientReferenceManifest,

react-server-dom-vite-example/vite.config.ts

+12-6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ export default defineConfig({
1919
appType: "custom",
2020
environments: {
2121
client: {
22+
optimizeDeps: {
23+
include: ["react-dom/client", "react-server-dom-vite/client"],
24+
},
2225
build: {
2326
manifest: true,
2427
outDir: "dist/client",
@@ -41,7 +44,7 @@ export default defineConfig({
4144
"react",
4245
"react/jsx-runtime",
4346
"react/jsx-dev-runtime",
44-
"@jacob-ebey/react-server-dom-vite/server",
47+
"react-server-dom-vite/server",
4548
],
4649
},
4750
resolve: {
@@ -190,12 +193,15 @@ function vitePluginUseClient(): Plugin[] {
190193
return;
191194
}
192195
clientReferences[id] = id; // TODO: normalize
193-
const matches = code.matchAll(/export function (\w+)\(/g);
196+
const matches = [
197+
...code.matchAll(/export function (\w+)\(/g),
198+
...code.matchAll(/export (default) (function|class) /g),
199+
];
194200
const result = [
195-
`import $$ReactServer from "@jacob-ebey/react-server-dom-vite/server"`,
201+
`import $$ReactServer from "react-server-dom-vite/server"`,
196202
...[...matches].map(
197203
([, name]) =>
198-
`export const ${name} = $$ReactServer.registerClientReference({}, ${JSON.stringify(id)}, ${JSON.stringify(name)})`,
204+
`export ${name === "default" ? "default" : `const ${name} =`} $$ReactServer.registerClientReference({}, ${JSON.stringify(id)}, ${JSON.stringify(name)})`,
199205
),
200206
].join(";\n");
201207
return { code: result, map: null };
@@ -225,7 +231,7 @@ function vitePluginUseServer(): Plugin[] {
225231
const matches = code.matchAll(/export async function (\w+)\(/g);
226232
const result = [
227233
code,
228-
`import $$ReactServer from "@jacob-ebey/react-server-dom-vite/server"`,
234+
`import $$ReactServer from "react-server-dom-vite/server"`,
229235
...[...matches].map(
230236
([, name]) =>
231237
`${name} = $$ReactServer.registerServerReference(${name}, ${JSON.stringify(id)}, ${JSON.stringify(name)})`,
@@ -235,7 +241,7 @@ function vitePluginUseServer(): Plugin[] {
235241
} else {
236242
const matches = code.matchAll(/export async function (\w+)\(/g);
237243
const result = [
238-
`import $$ReactClient from "@jacob-ebey/react-server-dom-vite/client"`,
244+
`import $$ReactClient from "react-server-dom-vite/client"`,
239245
...[...matches].map(
240246
([, name]) =>
241247
`export const ${name} = $$ReactClient.createServerReference(${JSON.stringify(id + "#" + name)}, (...args) => __callServer(...args))`,

0 commit comments

Comments
 (0)