vite-plugin-react-server 0.3.9 → 0.3.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +1 -1
- package/dist/index.d.ts +3 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/package.json +2 -4
- package/dist/plugin/assertServerCondition.d.ts +5 -1
- package/dist/plugin/assertServerCondition.d.ts.map +1 -1
- package/dist/plugin/assertServerCondition.js +1 -3
- package/dist/plugin/checkFilesExist.js +10 -7
- package/dist/plugin/checkFilesExist.js.map +1 -1
- package/dist/plugin/components.js +1 -1
- package/dist/plugin/components.js.map +1 -1
- package/dist/plugin/config/createModuleIdGenerator.d.ts +11 -0
- package/dist/plugin/config/createModuleIdGenerator.d.ts.map +1 -0
- package/dist/plugin/config/createModuleIdGenerator.js +44 -0
- package/dist/plugin/config/createModuleIdGenerator.js.map +1 -0
- package/dist/plugin/config/defaults.d.ts +31 -19
- package/dist/plugin/config/defaults.d.ts.map +1 -1
- package/dist/plugin/config/defaults.js +22 -27
- package/dist/plugin/config/defaults.js.map +1 -1
- package/dist/plugin/config/resolveOptions.d.ts +1 -1
- package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
- package/dist/plugin/config/resolveOptions.js +202 -16
- package/dist/plugin/config/resolveOptions.js.map +1 -1
- package/dist/plugin/config/resolvePages.d.ts +2 -0
- package/dist/plugin/config/resolvePages.d.ts.map +1 -1
- package/dist/plugin/config/resolvePages.js.map +1 -1
- package/dist/plugin/config/resolveUserConfig.d.ts +2 -2
- package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
- package/dist/plugin/config/resolveUserConfig.js +161 -50
- package/dist/plugin/config/resolveUserConfig.js.map +1 -1
- package/dist/plugin/helpers/getBundleManifest.d.ts +20 -0
- package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -0
- package/dist/plugin/helpers/getBundleManifest.js +43 -0
- package/dist/plugin/helpers/getBundleManifest.js.map +1 -0
- package/dist/plugin/helpers/getModuleManifest.d.ts +5 -0
- package/dist/plugin/helpers/getModuleManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/getModuleManifest.js +20 -21
- package/dist/plugin/helpers/inputNormalizer.d.ts +15 -1
- package/dist/plugin/helpers/inputNormalizer.d.ts.map +1 -1
- package/dist/plugin/helpers/inputNormalizer.js +122 -16
- package/dist/plugin/helpers/inputNormalizer.js.map +1 -1
- package/dist/plugin/helpers/inputNormalizerWorker.d.ts +2 -1
- package/dist/plugin/helpers/inputNormalizerWorker.d.ts.map +1 -1
- package/dist/plugin/helpers/inputNormalizerWorker.js +10 -7
- package/dist/plugin/helpers/tryManifest.d.ts +2 -0
- package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
- package/dist/plugin/helpers/tryManifest.js +1 -1
- package/dist/plugin/helpers/tryManifest.js.map +1 -1
- package/dist/plugin/loader/createBuildLoader.d.ts +6 -2
- package/dist/plugin/loader/createBuildLoader.d.ts.map +1 -1
- package/dist/plugin/loader/createBuildLoader.js +35 -10
- package/dist/plugin/loader/createBuildLoader.js.map +1 -1
- package/dist/plugin/loader/createPageLoader.d.ts.map +1 -1
- package/dist/plugin/loader/createPageLoader.js +0 -7
- package/dist/plugin/plugin.d.ts +0 -1
- package/dist/plugin/plugin.d.ts.map +1 -1
- package/dist/plugin/plugin.js +2 -1
- package/dist/plugin/preserver/plugin.d.ts.map +1 -1
- package/dist/plugin/preserver/plugin.js +3 -2
- package/dist/plugin/preserver/plugin.js.map +1 -1
- package/dist/plugin/react-client/index.d.ts +2 -1
- package/dist/plugin/react-client/index.d.ts.map +1 -1
- package/dist/plugin/react-client/index.js +19 -1
- package/dist/plugin/react-client/index.js.map +1 -0
- package/dist/plugin/react-client/plugin.d.ts +2 -2
- package/dist/plugin/react-client/plugin.d.ts.map +1 -1
- package/dist/plugin/react-client/plugin.js +106 -10
- package/dist/plugin/react-client/plugin.js.map +1 -1
- package/dist/plugin/react-server/createHandler.d.ts +2 -2
- package/dist/plugin/react-server/createHandler.d.ts.map +1 -1
- package/dist/plugin/react-server/createHandler.js +5 -5
- package/dist/plugin/react-server/createHandler.js.map +1 -1
- package/dist/plugin/react-server/createRscStream.d.ts.map +1 -1
- package/dist/plugin/react-server/createRscStream.js +15 -1
- package/dist/plugin/react-server/createRscStream.js.map +1 -1
- package/dist/plugin/react-server/createSsrHandler.d.ts +2 -2
- package/dist/plugin/react-server/createSsrHandler.d.ts.map +1 -1
- package/dist/plugin/react-server/createSsrHandler.js +5 -12
- package/dist/plugin/react-server/index.js +18 -9
- package/dist/plugin/react-server/index.js.map +1 -0
- package/dist/plugin/react-server/plugin.d.ts.map +1 -1
- package/dist/plugin/react-server/plugin.js +133 -127
- package/dist/plugin/react-server/plugin.js.map +1 -1
- package/dist/plugin/transformer/plugin.d.ts +2 -1
- package/dist/plugin/transformer/plugin.d.ts.map +1 -1
- package/dist/plugin/transformer/plugin.js +52 -72
- package/dist/plugin/transformer/plugin.js.map +1 -1
- package/dist/plugin/transformer/transformer-client-components.d.ts +12 -3
- package/dist/plugin/transformer/transformer-client-components.d.ts.map +1 -1
- package/dist/plugin/transformer/transformer-client-components.js +71 -10
- package/dist/plugin/transformer/transformer-client-components.js.map +1 -1
- package/dist/plugin/transformer/transformer-server-actions.d.ts +3 -3
- package/dist/plugin/transformer/transformer-server-actions.d.ts.map +1 -1
- package/dist/plugin/transformer/transformer-server-actions.js +80 -66
- package/dist/plugin/transformer/types.d.ts +4 -0
- package/dist/plugin/transformer/types.d.ts.map +1 -1
- package/dist/plugin/types.d.ts +51 -20
- package/dist/plugin/types.d.ts.map +1 -1
- package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
- package/dist/plugin/worker/html/messageHandler.js +37 -23
- package/dist/plugin/worker/html/messageHandler.js.map +1 -1
- package/dist/plugin/worker/html/plugin.d.ts.map +1 -1
- package/dist/plugin/worker/html/plugin.js +10 -5
- package/dist/plugin/worker/html/renderPages.d.ts +7 -6
- package/dist/plugin/worker/html/renderPages.d.ts.map +1 -1
- package/dist/plugin/worker/html/renderPages.js +112 -57
- package/dist/plugin/worker/html/renderPages.js.map +1 -1
- package/dist/plugin/worker/loader.d.ts +1 -11
- package/dist/plugin/worker/loader.d.ts.map +1 -1
- package/dist/plugin/worker/loader.js +2 -2
- package/dist/plugin/worker/loader.js.map +1 -1
- package/dist/plugin/worker/plugin.d.ts +10 -1
- package/dist/plugin/worker/plugin.d.ts.map +1 -1
- package/dist/plugin/worker/plugin.js +10 -1
- package/dist/plugin/worker/types.d.ts +17 -4
- package/dist/plugin/worker/types.d.ts.map +1 -1
- package/dist/server.d.ts +1 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1 -3
- package/dist/server.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -4
- package/plugin/assertServerCondition.ts +2 -3
- package/plugin/checkFilesExist.ts +10 -10
- package/plugin/components.tsx +1 -1
- package/plugin/config/createModuleIdGenerator.ts +52 -0
- package/plugin/config/defaults.ts +24 -15
- package/plugin/config/resolveOptions.ts +253 -25
- package/plugin/config/resolvePages.ts +1 -1
- package/plugin/config/resolveUserConfig.ts +197 -62
- package/plugin/helpers/getBundleManifest.ts +75 -0
- package/plugin/helpers/getModuleManifest.ts +5 -0
- package/plugin/helpers/inputNormalizer.ts +175 -26
- package/plugin/helpers/inputNormalizerWorker.ts +13 -8
- package/plugin/helpers/tryManifest.ts +2 -0
- package/plugin/loader/createBuildLoader.ts +54 -10
- package/plugin/loader/createPageLoader.ts +1 -7
- package/plugin/plugin.ts +2 -1
- package/plugin/preserver/plugin.ts +2 -1
- package/plugin/react-client/index.ts +12 -1
- package/plugin/react-client/plugin.ts +127 -12
- package/plugin/react-server/createHandler.ts +7 -13
- package/plugin/react-server/createRscStream.ts +14 -2
- package/plugin/react-server/createSsrHandler.ts +7 -26
- package/plugin/react-server/plugin.ts +176 -144
- package/plugin/transformer/plugin.ts +69 -94
- package/plugin/transformer/transformer-client-components.ts +98 -24
- package/plugin/transformer/transformer-server-actions.ts +22 -7
- package/plugin/transformer/types.ts +4 -0
- package/plugin/types.ts +118 -64
- package/plugin/worker/html/messageHandler.ts +46 -31
- package/plugin/worker/html/plugin.ts +15 -11
- package/plugin/worker/html/renderPages.ts +175 -88
- package/plugin/worker/loader.ts +4 -13
- package/plugin/worker/plugin.ts +10 -1
- package/plugin/worker/types.ts +24 -3
- package/dist/node_modules/magic-string/dist/magic-string.es.js +0 -1283
- package/dist/node_modules/magic-string/dist/magic-string.es.js.map +0 -1
- package/dist/plugin/build/createClientBuildConfig.d.ts +0 -3
- package/dist/plugin/build/createClientBuildConfig.d.ts.map +0 -1
- package/dist/plugin/build/createClientBuildConfig.js +0 -14
- package/dist/plugin/build/createServerBuildConfig.d.ts +0 -12
- package/dist/plugin/build/createServerBuildConfig.d.ts.map +0 -1
- package/dist/plugin/build/createServerBuildConfig.js +0 -40
- package/dist/plugin/build/createSharedBuildConfig.d.ts +0 -5
- package/dist/plugin/build/createSharedBuildConfig.d.ts.map +0 -1
- package/dist/plugin/build/createSharedBuildConfig.js +0 -28
- package/dist/plugin/build/mergeInputs.d.ts +0 -9
- package/dist/plugin/build/mergeInputs.d.ts.map +0 -1
- package/dist/plugin/build/mergeInputs.js +0 -56
- package/dist/plugin/config/moduleIdDefault.d.ts +0 -8
- package/dist/plugin/config/moduleIdDefault.d.ts.map +0 -1
- package/dist/plugin/config/moduleIdDefault.js +0 -23
- package/dist/plugin/config/moduleIdDefault.js.map +0 -1
- package/dist/plugin/helpers/getModuleManifest.js.map +0 -1
- package/dist/plugin/react-server/createDevMiddleware.d.ts +0 -8
- package/dist/plugin/react-server/createDevMiddleware.d.ts.map +0 -1
- package/dist/plugin/react-server/createDevMiddleware.js +0 -68
- package/dist/plugin/react-server/createDevServer.d.ts +0 -4
- package/dist/plugin/react-server/createDevServer.d.ts.map +0 -1
- package/dist/plugin/react-server/createDevServer.js +0 -4
- package/dist/plugin/react-server/createReactNodeStreamer.d.ts +0 -10
- package/dist/plugin/react-server/createReactNodeStreamer.d.ts.map +0 -1
- package/dist/plugin/react-server/createReactNodeStreamer.js +0 -7
- package/dist/plugin/transformer/transformer-server-actions.js.map +0 -1
- package/plugin/build/createClientBuildConfig.ts +0 -21
- package/plugin/build/createServerBuildConfig.ts +0 -66
- package/plugin/build/createSharedBuildConfig.ts +0 -35
- package/plugin/build/mergeInputs.ts +0 -58
- package/plugin/config/moduleIdDefault.ts +0 -23
- package/plugin/react-server/createDevMiddleware.ts +0 -91
- package/plugin/react-server/createDevServer.ts +0 -9
- package/plugin/react-server/createReactNodeStreamer.ts +0 -26
|
@@ -4,76 +4,114 @@
|
|
|
4
4
|
* MIT License
|
|
5
5
|
*/
|
|
6
6
|
import { mkdirSync } from 'node:fs';
|
|
7
|
-
import {
|
|
7
|
+
import { mkdir, writeFile } from 'node:fs/promises';
|
|
8
8
|
import { resolve, join, dirname } from 'node:path';
|
|
9
9
|
import { Transform } from 'node:stream';
|
|
10
10
|
import { createHandler } from '../../react-server/createHandler.js';
|
|
11
11
|
|
|
12
|
-
async function renderPages(routes, options) {
|
|
13
|
-
|
|
14
|
-
const
|
|
12
|
+
async function renderPages(pluginContext, routes, options) {
|
|
13
|
+
const root = pluginContext.environment.config.root ?? options.userConfig.root ?? options.pluginOptions.projectRoot ?? process.cwd();
|
|
14
|
+
const outDir = pluginContext.environment.config.build.outDir ?? options.userConfig.build.outDir ?? options.pluginOptions.build.outDir;
|
|
15
|
+
pluginContext.environment.config.build.assetsDir ?? options.userConfig.build.assetsDir ?? options.pluginOptions.build.assetsDir;
|
|
16
|
+
const isServer = outDir.endsWith(options.pluginOptions.build.server);
|
|
17
|
+
const isClient = outDir.endsWith(options.pluginOptions.build.client);
|
|
18
|
+
if (!isServer && !isClient) {
|
|
19
|
+
throw new Error("Invalid outDir directory");
|
|
20
|
+
}
|
|
21
|
+
const destinationRoot = isServer ? resolve(
|
|
22
|
+
root,
|
|
23
|
+
options.pluginOptions.build.outDir,
|
|
24
|
+
options.pluginOptions.build.client
|
|
25
|
+
) : join(root, outDir);
|
|
15
26
|
const failedRoutes = /* @__PURE__ */ new Map();
|
|
16
|
-
const moduleRootPath = join(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
options.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
27
|
+
const moduleRootPath = join(
|
|
28
|
+
root,
|
|
29
|
+
options.pluginOptions.build.outDir,
|
|
30
|
+
options.pluginOptions.build.client
|
|
31
|
+
) + "/";
|
|
32
|
+
const moduleBaseURL = `file://${root}`;
|
|
33
|
+
const htmlRoot = destinationRoot;
|
|
34
|
+
const rscRoot = destinationRoot;
|
|
23
35
|
const completedRoutes = /* @__PURE__ */ new Set();
|
|
24
|
-
const
|
|
36
|
+
const transforms = /* @__PURE__ */ new Map();
|
|
25
37
|
const writePromises = /* @__PURE__ */ new Map();
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
38
|
+
const pipableStreamOptions = options.pipableStreamOptions ?? {};
|
|
39
|
+
pipableStreamOptions.importMap = pipableStreamOptions?.importMap ?? {};
|
|
40
|
+
pipableStreamOptions.importMap.imports = pipableStreamOptions.importMap.imports ?? {};
|
|
41
|
+
if (!("react" in pipableStreamOptions.importMap.imports)) {
|
|
42
|
+
pipableStreamOptions.importMap.imports["react"] = "https://esm.sh/react@experimental?pin=v124&dev";
|
|
43
|
+
}
|
|
44
|
+
if (!("react-dom" in pipableStreamOptions.importMap.imports)) {
|
|
45
|
+
pipableStreamOptions.importMap.imports["react-dom"] = "https://esm.sh/react-dom@experimental?pin=v124&dev";
|
|
46
|
+
}
|
|
47
|
+
if (!("react-dom/" in pipableStreamOptions.importMap.imports)) {
|
|
48
|
+
pipableStreamOptions.importMap.imports["react-dom/"] = "https://esm.sh/react-dom@experimental&pin=v124&dev/";
|
|
49
|
+
}
|
|
50
|
+
if (!("react-server-dom-esm/client.browser" in pipableStreamOptions.importMap.imports)) {
|
|
51
|
+
pipableStreamOptions.importMap.imports["react-server-dom-esm/client.browser"] = `/node_modules/react-server-dom-esm/esm/react-server-dom-esm-client.browser.${options.userConfig.mode}.js`;
|
|
52
|
+
}
|
|
53
|
+
for (const [key, serverEntry] of Object.entries(options.serverManifest)) {
|
|
54
|
+
if (!key.includes(".client.")) continue;
|
|
55
|
+
const clientEntry = Object.entries(options.clientManifest).find(
|
|
56
|
+
([_2, entry2]) => entry2.src === serverEntry.src
|
|
57
|
+
);
|
|
58
|
+
if (!clientEntry) continue;
|
|
59
|
+
const [_, entry] = clientEntry;
|
|
60
|
+
const serverPath = serverEntry.src;
|
|
61
|
+
const clientPath = entry.file;
|
|
62
|
+
pipableStreamOptions.importMap.imports[serverPath] = "/" + clientPath;
|
|
63
|
+
}
|
|
64
|
+
for (const [key, value] of Object.entries(options.clientManifest)) {
|
|
65
|
+
if (value.isEntry) {
|
|
66
|
+
if (Array.isArray(pipableStreamOptions.bootstrapModules)) {
|
|
67
|
+
pipableStreamOptions.bootstrapModules.push("/" + value.file);
|
|
68
|
+
} else {
|
|
69
|
+
pipableStreamOptions.bootstrapModules = ["/" + value.file];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
await mkdir(htmlRoot, { recursive: true });
|
|
74
|
+
await mkdir(rscRoot, { recursive: true });
|
|
75
|
+
try {
|
|
76
|
+
const allRoutesComplete = new Promise((resolve2) => {
|
|
77
|
+
options.worker.on("message", (msg) => {
|
|
78
|
+
switch (msg.type) {
|
|
79
|
+
case "ALL_READY": {
|
|
80
|
+
const { id, html, outputPath } = msg;
|
|
81
|
+
mkdirSync(dirname(outputPath), { recursive: true });
|
|
82
|
+
const writePromise = writeFile(outputPath, html).then(() => {
|
|
83
|
+
completedRoutes.add(id);
|
|
84
|
+
writePromises.delete(id);
|
|
85
|
+
if (completedRoutes.size === routes.length) {
|
|
86
|
+
resolve2();
|
|
87
|
+
}
|
|
88
|
+
}).catch((error) => {
|
|
89
|
+
failedRoutes.set(id, error);
|
|
90
|
+
});
|
|
91
|
+
writePromises.set(id, writePromise);
|
|
92
|
+
break;
|
|
50
93
|
}
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
case "ERROR": {
|
|
54
|
-
console.error("[renderPages] Worker error:", msg.error);
|
|
55
|
-
if (msg.id) {
|
|
94
|
+
case "ERROR": {
|
|
56
95
|
failedRoutes.set(msg.id, new Error(msg.error));
|
|
96
|
+
break;
|
|
57
97
|
}
|
|
58
|
-
break;
|
|
59
98
|
}
|
|
60
|
-
}
|
|
99
|
+
});
|
|
61
100
|
});
|
|
62
|
-
});
|
|
63
|
-
try {
|
|
64
|
-
await mkdir(htmlRoot, { recursive: true });
|
|
65
101
|
const renderPromises = routes.map(async (route) => {
|
|
66
102
|
try {
|
|
67
103
|
const result = await createHandler(route, options.pluginOptions, {
|
|
68
104
|
loader: options.loader,
|
|
69
|
-
|
|
105
|
+
clientManifest: options.clientManifest,
|
|
106
|
+
serverManifest: options.serverManifest,
|
|
107
|
+
pipableStreamOptions: options.pipableStreamOptions
|
|
70
108
|
});
|
|
71
109
|
if (result.type !== "success") {
|
|
72
|
-
|
|
110
|
+
failedRoutes.set(route, new Error(`Handler failed for ${route}`));
|
|
73
111
|
return;
|
|
74
112
|
}
|
|
75
|
-
const htmlOutputPath = route === "/" ?
|
|
76
|
-
|
|
113
|
+
const htmlOutputPath = route === "/" ? join(htmlRoot, "index.html") : join(htmlRoot, route, "index.html");
|
|
114
|
+
transforms.set(route, new Transform({
|
|
77
115
|
transform(chunk, _encoding, callback) {
|
|
78
116
|
options.worker.postMessage({
|
|
79
117
|
type: "RSC_CHUNK",
|
|
@@ -83,8 +121,16 @@ async function renderPages(routes, options) {
|
|
|
83
121
|
moduleBaseURL,
|
|
84
122
|
htmlOutputPath,
|
|
85
123
|
outDir: options.userConfig.build.outDir,
|
|
86
|
-
pipableStreamOptions
|
|
124
|
+
pipableStreamOptions,
|
|
125
|
+
clientManifest: options.clientManifest,
|
|
126
|
+
serverManifest: options.serverManifest
|
|
87
127
|
});
|
|
128
|
+
const rscOutputPath = route === "/" ? join(rscRoot, "index.rsc") : join(rscRoot, route, "index.rsc");
|
|
129
|
+
mkdirSync(dirname(rscOutputPath), { recursive: true });
|
|
130
|
+
const writePromise = writeFile(rscOutputPath, chunk).catch((error) => {
|
|
131
|
+
failedRoutes.set(route, error);
|
|
132
|
+
});
|
|
133
|
+
writePromises.set(`${route}:rsc`, writePromise);
|
|
88
134
|
callback(null, chunk);
|
|
89
135
|
},
|
|
90
136
|
flush(callback) {
|
|
@@ -94,18 +140,27 @@ async function renderPages(routes, options) {
|
|
|
94
140
|
});
|
|
95
141
|
callback();
|
|
96
142
|
}
|
|
143
|
+
}));
|
|
144
|
+
result.stream.pipe(transforms.get(route));
|
|
145
|
+
await new Promise((resolve2) => {
|
|
146
|
+
transforms.get(route)?.on("finish", resolve2);
|
|
97
147
|
});
|
|
98
|
-
result.stream.pipe(transform);
|
|
99
148
|
} catch (error) {
|
|
100
149
|
failedRoutes.set(route, error);
|
|
101
150
|
}
|
|
102
151
|
});
|
|
103
|
-
await Promise.all(
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
]);
|
|
152
|
+
await Promise.all(renderPromises);
|
|
153
|
+
await Promise.all(writePromises.values());
|
|
154
|
+
await allRoutesComplete;
|
|
107
155
|
} finally {
|
|
108
|
-
|
|
156
|
+
for (const transform of transforms.values()) {
|
|
157
|
+
transform.destroy();
|
|
158
|
+
}
|
|
159
|
+
transforms.clear();
|
|
160
|
+
writePromises.clear();
|
|
161
|
+
options.worker.postMessage({
|
|
162
|
+
type: "SHUTDOWN"
|
|
163
|
+
});
|
|
109
164
|
}
|
|
110
165
|
return {
|
|
111
166
|
failedRoutes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderPages.js","sources":["../../../../plugin/worker/html/renderPages.ts"],"sourcesContent":["import { mkdirSync } from \"node:fs\";\nimport { mkdir, writeFile } from \"node:fs/promises\";\nimport { dirname, join, resolve as resolvePath } from \"node:path\";\nimport { Transform } from \"node:stream\";\nimport type { Worker } from \"node:worker_threads\";\nimport { createHandler } from \"../../react-server/createHandler.js\";\nimport type { ResolvedUserConfig, StreamPluginOptions } from \"../../types.js\";\n\ninterface PipeableStreamOptions {\n bootstrapModules?: string[];\n bootstrapScripts?: string[];\n bootstrapScriptContent?: string;\n signal?: AbortSignal;\n identifierPrefix?: string;\n namespaceURI?: string;\n nonce?: string;\n progressiveChunkSize?: number;\n onShellReady?: () => void;\n onAllReady?: () => void;\n onError?: (error: unknown) => void;\n importMap?: {\n imports?: Record<string, string>;\n };\n}\n\ntype RenderPagesOptions = {\n pluginOptions: Required<\n Pick<\n StreamPluginOptions,\n \"moduleBase\" | \"moduleBasePath\" | \"moduleBaseURL\" | \"projectRoot\"\n >\n > &\n Pick<\n StreamPluginOptions,\n \"Page\" | \"props\" | \"build\" | \"Html\" | \"pageExportName\" | \"propsExportName\"\n >;\n userConfig: ResolvedUserConfig;\n manifest: Record<string, { file: string }>;\n worker: Worker;\n pipableStreamOptions?: PipeableStreamOptions;\n loader: (id: string) => Promise<Record<string, any>>;\n onCssFile?: (path: string) => void;\n clientCss?: string[];\n moduleBasePath: string;\n moduleBaseURL: string;\n};\n\nexport async function renderPages(\n routes: string[],\n options: RenderPagesOptions\n) {\n console.log(\"[renderPages] Starting render for routes:\", routes);\n\n const destinationRoot = resolvePath(options.userConfig.root, options.userConfig.build.outDir);\n const failedRoutes = new Map<string, Error>();\n const moduleRootPath = join(destinationRoot, options.moduleBasePath);\n const moduleBaseURL = options.moduleBaseURL;\n const htmlRoot = join(\n options.userConfig.root,\n options.userConfig.build.outDir\n );\n const streamStarted = new Set<string>();\n const completedRoutes = new Set<string>();\n const htmlContent = new Map<string, string>();\n const writePromises = new Map<string, Promise<void>>();\n\n // Create a promise that resolves when all routes are complete\n const allRoutesComplete = new Promise<void>((resolve, reject) => {\n\n\n options.worker.on(\"message\", function messageHandler(msg: any) {\n switch (msg.type) {\n case \"SHELL_READY\": {\n streamStarted.add(msg.id);\n break;\n }\n case \"HTML_READY\": {\n htmlContent.set(msg.id, msg.html);\n break;\n }\n case \"ALL_READY\": {\n completedRoutes.add(msg.id);\n \n if (completedRoutes.size === routes.length) {\n options.worker.removeListener(\"message\", messageHandler);\n \n // Write all HTML files\n for (const [route, html] of htmlContent) {\n const outputPath = route === '/' \n ? join(htmlRoot, 'index.html')\n : join(htmlRoot, route, 'index.html');\n mkdirSync(dirname(outputPath), { recursive: true });\n const writePromise = writeFile(outputPath, html)\n .catch(error => {\n failedRoutes.set(route, error as Error);\n });\n writePromises.set(route, writePromise);\n }\n\n // Wait for all files to be written\n Promise.all(writePromises.values())\n .then(() => resolve())\n .catch(reject);\n }\n break;\n }\n case \"ERROR\": {\n console.error(\"[renderPages] Worker error:\", msg.error);\n if (msg.id) {\n failedRoutes.set(msg.id, new Error(msg.error));\n }\n break;\n }\n }\n });\n });\n\n try {\n await mkdir(htmlRoot, { recursive: true });\n\n const renderPromises = routes.map(async (route) => {\n \n try {\n const result = await createHandler(route, options.pluginOptions, {\n loader: options.loader,\n manifest: options.manifest,\n });\n\n if (result.type !== \"success\") {\n console.log(\"[renderPages] Handler failed:\", result);\n return;\n }\n\n const htmlOutputPath = route === '/' \n ? resolvePath(htmlRoot, 'index.html')\n : resolvePath(htmlRoot, route, 'index.html');\n\n const transform = new Transform({\n transform(chunk, _encoding, callback) {\n options.worker.postMessage({\n type: \"RSC_CHUNK\",\n id: route,\n chunk: chunk,\n moduleRootPath: moduleRootPath,\n moduleBaseURL: moduleBaseURL,\n htmlOutputPath,\n outDir: options.userConfig.build.outDir,\n pipableStreamOptions: options.pipableStreamOptions ?? {},\n });\n callback(null, chunk);\n },\n flush(callback) {\n options.worker.postMessage({\n type: \"RSC_END\",\n id: route,\n });\n callback();\n }\n });\n \n result.stream.pipe(transform);\n\n } catch (error) {\n failedRoutes.set(route, error as Error);\n }\n });\n\n // Wait for both the render promises and all routes to complete\n await Promise.all([\n Promise.all(renderPromises),\n allRoutesComplete\n ]);\n\n } finally {\n await options.worker.terminate();\n }\n\n return {\n failedRoutes,\n completedRoutes\n };\n}\n"],"names":["resolvePath"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"renderPages.js","sources":["../../../../plugin/worker/html/renderPages.ts"],"sourcesContent":["import { appendFile, mkdirSync } from \"node:fs\";\nimport { mkdir, writeFile } from \"node:fs/promises\";\nimport { dirname, join, resolve, resolve as resolvePath } from \"node:path\";\nimport { Transform } from \"node:stream\";\nimport type { Worker } from \"node:worker_threads\";\nimport { createHandler } from \"../../react-server/createHandler.js\";\nimport type { ResolvedUserConfig, ResolvedUserOptions } from \"../../types.js\";\nimport type {\n HtmlWorkerMessage,\n HtmlWorkerResponse,\n WorkerRscChunkMessage,\n} from \"../types.js\";\nimport type { Manifest } from \"vite\";\nimport type {\n EmittedFile,\n EmittedPrebuiltChunk,\n PluginContext,\n ResolvedId,\n} from \"rollup\";\nimport { createInputNormalizer } from \"../../helpers/inputNormalizer.js\";\n\ninterface PipeableStreamOptions {\n bootstrapModules?: string[];\n bootstrapScripts?: string[];\n bootstrapScriptContent?: string;\n signal?: AbortSignal;\n identifierPrefix?: string;\n namespaceURI?: string;\n nonce?: string;\n progressiveChunkSize?: number;\n onShellReady?: () => void;\n onAllReady?: () => void;\n onError?: (error: unknown) => void;\n importMap?: {\n imports?: Record<string, string>;\n };\n}\n\ntype RenderPagesOptions = {\n pluginOptions: ResolvedUserOptions;\n userConfig: ResolvedUserConfig;\n clientManifest: Manifest;\n serverManifest: Manifest;\n worker: Worker;\n pipableStreamOptions?: PipeableStreamOptions;\n loader: (id: string) => Promise<Record<string, any>>;\n onCssFile?: (path: string) => void;\n clientCss?: string[];\n moduleBasePath: string;\n moduleBaseURL: string;\n};\n\nexport async function renderPages(\n pluginContext: PluginContext,\n routes: string[],\n options: RenderPagesOptions\n) {\n const root =\n pluginContext.environment.config.root ??\n options.userConfig.root ??\n options.pluginOptions.projectRoot ??\n process.cwd();\n const outDir =\n pluginContext.environment.config.build.outDir ??\n options.userConfig.build.outDir ??\n options.pluginOptions.build.outDir;\n const assetsDir =\n pluginContext.environment.config.build.assetsDir ??\n options.userConfig.build.assetsDir ??\n options.pluginOptions.build.assetsDir;\n\n const isServer = outDir.endsWith(options.pluginOptions.build.server);\n const isClient = outDir.endsWith(options.pluginOptions.build.client);\n if (!isServer && !isClient) {\n throw new Error(\"Invalid outDir directory\");\n }\n\n const destinationRoot = isServer\n ? resolvePath(\n root,\n options.pluginOptions.build.outDir,\n options.pluginOptions.build.client\n )\n : join(root, outDir);\n const failedRoutes = new Map<string, Error>();\n const moduleRootPath =\n join(\n root,\n options.pluginOptions.build.outDir,\n options.pluginOptions.build.client\n ) + \"/\";\n const moduleBaseURL = `file://${root}`;\n const htmlRoot = destinationRoot;\n const rscRoot = destinationRoot;\n const streamStarted = new Set<string>();\n const completedRoutes = new Set<string>();\n const htmlContent = new Map<string, string>();\n const transforms = new Map<string, Transform>();\n const writePromises = new Map<string, Promise<void>>();\n const pipableStreamOptions = options.pipableStreamOptions ?? {};\n pipableStreamOptions.importMap = pipableStreamOptions?.importMap ?? {};\n pipableStreamOptions.importMap.imports =\n pipableStreamOptions.importMap.imports ?? {};\n if (!(\"react\" in pipableStreamOptions.importMap.imports)) {\n pipableStreamOptions.importMap.imports[\"react\"] = 'https://esm.sh/react@experimental?pin=v124&dev'\n }\n if (!(\"react-dom\" in pipableStreamOptions.importMap.imports)) {\n pipableStreamOptions.importMap.imports[\"react-dom\"] = 'https://esm.sh/react-dom@experimental?pin=v124&dev'\n }\n if (!(\"react-dom/\" in pipableStreamOptions.importMap.imports)) {\n pipableStreamOptions.importMap.imports[\"react-dom/\"] = 'https://esm.sh/react-dom@experimental&pin=v124&dev/'\n }\n if (!(\"react-server-dom-esm/client.browser\" in pipableStreamOptions.importMap.imports)) {\n pipableStreamOptions.importMap.imports[\"react-server-dom-esm/client.browser\"] = `/node_modules/react-server-dom-esm/esm/react-server-dom-esm-client.browser.${options.userConfig.mode}.js`\n }\n // Find matching client components by their source paths\n for (const [key, serverEntry] of Object.entries(options.serverManifest)) {\n // Skip non-client components\n if (!key.includes(\".client.\")) continue;\n\n // Find matching client entry by source path\n const clientEntry = Object.entries(options.clientManifest).find(\n ([_, entry]) => entry.src === serverEntry.src\n );\n\n if (!clientEntry) continue;\n\n const [_, entry] = clientEntry;\n const serverPath = serverEntry.src as string;\n const clientPath = entry.file\n\n pipableStreamOptions.importMap.imports[serverPath] = '/' + clientPath;\n\n }\n for(const [key, value] of Object.entries(options.clientManifest)) {\n if(value.isEntry) {\n if(Array.isArray(pipableStreamOptions.bootstrapModules)) {\n pipableStreamOptions.bootstrapModules.push('/'+value.file);\n } else {\n pipableStreamOptions.bootstrapModules = ['/'+value.file];\n }\n }\n }\n\n // Remove the initial empty file writes - we'll create directories as needed\n await mkdir(htmlRoot, { recursive: true });\n await mkdir(rscRoot, { recursive: true });\n\n try {\n const allRoutesComplete = new Promise<void>((resolve) => {\n options.worker.on(\"message\", (msg: HtmlWorkerResponse) => {\n switch (msg.type) {\n case \"ALL_READY\": {\n const { id, html, outputPath } = msg;\n mkdirSync(dirname(outputPath), { recursive: true });\n \n const writePromise = writeFile(outputPath, html)\n .then(() => {\n completedRoutes.add(id);\n writePromises.delete(id);\n \n // Only resolve when all routes are complete\n if (completedRoutes.size === routes.length) {\n resolve();\n }\n })\n .catch((error) => {\n failedRoutes.set(id, error as Error);\n });\n\n writePromises.set(id, writePromise);\n break;\n }\n case \"ERROR\": {\n failedRoutes.set(msg.id, new Error(msg.error));\n break;\n }\n }\n });\n });\n\n const renderPromises = routes.map(async (route) => {\n try {\n const result = await createHandler(route, options.pluginOptions, {\n loader: options.loader,\n clientManifest: options.clientManifest,\n serverManifest: options.serverManifest,\n pipableStreamOptions: options.pipableStreamOptions,\n });\n\n if (result.type !== \"success\") {\n failedRoutes.set(route, new Error(`Handler failed for ${route}`));\n return;\n }\n\n const htmlOutputPath = route === \"/\"\n ? join(htmlRoot, \"index.html\")\n : join(htmlRoot, route, \"index.html\");\n\n transforms.set(route, new Transform({\n transform(chunk, _encoding, callback) {\n options.worker.postMessage({\n type: \"RSC_CHUNK\",\n id: route,\n chunk: chunk,\n moduleRootPath: moduleRootPath,\n moduleBaseURL: moduleBaseURL,\n htmlOutputPath: htmlOutputPath,\n outDir: options.userConfig.build.outDir,\n pipableStreamOptions: pipableStreamOptions,\n clientManifest: options.clientManifest,\n serverManifest: options.serverManifest,\n } satisfies WorkerRscChunkMessage);\n\n const rscOutputPath = route === \"/\"\n ? join(rscRoot, \"index.rsc\")\n : join(rscRoot, route, \"index.rsc\");\n\n mkdirSync(dirname(rscOutputPath), { recursive: true });\n \n // Track RSC file write\n const writePromise = writeFile(rscOutputPath, chunk)\n .catch((error) => {\n failedRoutes.set(route, error as Error);\n });\n\n writePromises.set(`${route}:rsc`, writePromise);\n callback(null, chunk);\n },\n flush(callback) {\n options.worker.postMessage({\n type: \"RSC_END\",\n id: route,\n });\n callback();\n },\n }));\n\n result.stream.pipe(transforms.get(route) as Transform);\n await new Promise<void>((resolve) => {\n transforms.get(route)?.on(\"finish\", resolve);\n });\n } catch (error) {\n failedRoutes.set(route, error as Error);\n }\n });\n\n // Wait for everything to complete\n await Promise.all(renderPromises);\n await Promise.all(writePromises.values());\n await allRoutesComplete;\n\n } finally {\n for (const transform of transforms.values()) {\n transform.destroy();\n }\n transforms.clear();\n writePromises.clear();\n\n options.worker.postMessage({\n type: \"SHUTDOWN\",\n });\n }\n\n return {\n failedRoutes,\n completedRoutes,\n };\n}\n"],"names":["resolvePath","_","entry","resolve"],"mappings":"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"}
|
|
@@ -1,15 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* This file can be overridden via the plugin options:
|
|
4
|
-
*
|
|
5
|
-
* ```ts
|
|
6
|
-
* reactStreamPlugin({
|
|
7
|
-
* loaderPath: './my-custom-loader.ts'
|
|
8
|
-
* })
|
|
9
|
-
* ```
|
|
10
|
-
*
|
|
11
|
-
* The default loader provides basic module loading functionality.
|
|
12
|
-
* Override this if you need custom module resolution or transformation.
|
|
2
|
+
* Not used currently
|
|
13
3
|
*/
|
|
14
4
|
export declare function load(id: string): Promise<any>;
|
|
15
5
|
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../plugin/worker/loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../plugin/worker/loader.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,wBAAsB,IAAI,CAAC,EAAE,EAAE,MAAM,gBAEpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sources":["../../../plugin/worker/loader.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"loader.js","sources":["../../../plugin/worker/loader.ts"],"sourcesContent":["\n/**\n * Not used currently\n */\nexport async function load(id: string) {\n return await import(id);\n}\n"],"names":[],"mappings":";;;;;AAIA,eAAsB,KAAK,EAAY,EAAA;AACrC,EAAA,OAAO,MAAM,OAAO,EAAA,CAAA;AACtB;;;;"}
|
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
import type { StreamPluginOptions } from "../types.js";
|
|
2
2
|
import type { Plugin } from "vite";
|
|
3
3
|
/**
|
|
4
|
-
* This plugin can be used to create your own worker paths.
|
|
4
|
+
* This plugin can be used to create your own worker paths. This build should be separated from the main build.
|
|
5
|
+
*
|
|
6
|
+
*
|
|
7
|
+
* ```ts
|
|
8
|
+
* @example
|
|
9
|
+
*export reactWorkerPluginConfig = {
|
|
10
|
+
* htmlWorkerPath: './workers/html.tsx',
|
|
11
|
+
* rscWorkerPath: './workers/rsc.tsx',
|
|
12
|
+
* }
|
|
13
|
+
* ```
|
|
5
14
|
*
|
|
6
15
|
* @param options
|
|
7
16
|
* @returns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../plugin/worker/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIlC
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../plugin/worker/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIlC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAKxE"}
|
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
import { reactHtmlWorkerPlugin } from "./html/plugin.js";
|
|
2
2
|
import { reactRscWorkerPlugin } from "./rsc/plugin.js";
|
|
3
3
|
/**
|
|
4
|
-
* This plugin can be used to create your own worker paths.
|
|
4
|
+
* This plugin can be used to create your own worker paths. This build should be separated from the main build.
|
|
5
|
+
*
|
|
6
|
+
*
|
|
7
|
+
* ```ts
|
|
8
|
+
* @example
|
|
9
|
+
*export reactWorkerPluginConfig = {
|
|
10
|
+
* htmlWorkerPath: './workers/html.tsx',
|
|
11
|
+
* rscWorkerPath: './workers/rsc.tsx',
|
|
12
|
+
* }
|
|
13
|
+
* ```
|
|
5
14
|
*
|
|
6
15
|
* @param options
|
|
7
16
|
* @returns
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import type { Manifest } from "vite";
|
|
2
|
+
export interface PipeableStreamOptions {
|
|
2
3
|
bootstrapModules?: string[];
|
|
3
4
|
bootstrapScripts?: string[];
|
|
4
5
|
bootstrapScriptContent?: string;
|
|
@@ -44,11 +45,23 @@ export interface WorkerRscChunkMessage {
|
|
|
44
45
|
outDir: string;
|
|
45
46
|
htmlOutputPath: string;
|
|
46
47
|
pipableStreamOptions: PipeableStreamOptions;
|
|
48
|
+
clientManifest: Manifest;
|
|
49
|
+
serverManifest: Manifest;
|
|
47
50
|
}
|
|
48
51
|
export interface ShutdownMessage {
|
|
49
52
|
type: "SHUTDOWN";
|
|
50
53
|
id: string;
|
|
51
54
|
}
|
|
55
|
+
export interface ShellReadyMessage {
|
|
56
|
+
type: "SHELL_READY";
|
|
57
|
+
id: string;
|
|
58
|
+
}
|
|
59
|
+
export interface AllReadyMessage {
|
|
60
|
+
type: "ALL_READY";
|
|
61
|
+
id: string;
|
|
62
|
+
outputPath: string;
|
|
63
|
+
html: string;
|
|
64
|
+
}
|
|
52
65
|
export interface RscRenderMessage {
|
|
53
66
|
type: "RSC_RENDER";
|
|
54
67
|
id: string;
|
|
@@ -64,7 +77,7 @@ export interface RscCompleteMessage {
|
|
|
64
77
|
id: string;
|
|
65
78
|
outputPath: string;
|
|
66
79
|
}
|
|
67
|
-
export interface
|
|
80
|
+
export interface WorkerErrorMessage {
|
|
68
81
|
type: "ERROR";
|
|
69
82
|
id: string;
|
|
70
83
|
error: string;
|
|
@@ -93,7 +106,7 @@ export interface ServerReferenceMessage {
|
|
|
93
106
|
ref: unknown;
|
|
94
107
|
}
|
|
95
108
|
export type HtmlWorkerMessage = WorkerRscChunkMessage | RscEndMessage | ShutdownMessage;
|
|
109
|
+
export type HtmlWorkerResponse = ShellReadyMessage | AllReadyMessage | WorkerErrorMessage;
|
|
96
110
|
export type RscWorkerMessage = RscRenderMessage | RscEndMessage | ShutdownMessage | ClientReferenceMessage | ServerReferenceMessage;
|
|
97
|
-
export type RscWorkerResponse = RscCompleteMessage |
|
|
98
|
-
export {};
|
|
111
|
+
export type RscWorkerResponse = RscCompleteMessage | WorkerErrorMessage | RscWroteFileMessage | ClientReferenceMessage | ServerReferenceMessage;
|
|
99
112
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../plugin/worker/types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../plugin/worker/types.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { reactTransformPlugin } from './plugin/transformer/plugin.js';
|
|
3
|
-
export { reactPreservePlugin } from './plugin/preserver/plugin.js';
|
|
1
|
+
export { vitePluginReactServer } from './plugin/react-server/index.js';
|
|
4
2
|
export type * from './plugin/types.js';
|
|
5
3
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAGvE,mBAAmB,mBAAmB,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -3,7 +3,5 @@
|
|
|
3
3
|
* Copyright (c) Nico Brinkkemper
|
|
4
4
|
* MIT License
|
|
5
5
|
*/
|
|
6
|
-
export {
|
|
7
|
-
export { reactTransformPlugin } from './plugin/transformer/plugin.js';
|
|
8
|
-
export { reactPreservePlugin } from './plugin/preserver/plugin.js';
|
|
6
|
+
export { vitePluginReactServer } from './plugin/react-server/index.js';
|
|
9
7
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|