vite-plugin-react-server 0.1.0

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.
Files changed (158) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +289 -0
  3. package/dist/build/createBuildConfig.d.ts +12 -0
  4. package/dist/build/createBuildConfig.d.ts.map +1 -0
  5. package/dist/build/createBuildConfig.js +55 -0
  6. package/dist/build/createBuildConfig.js.map +1 -0
  7. package/dist/checkFilesExist.d.ts +8 -0
  8. package/dist/checkFilesExist.d.ts.map +1 -0
  9. package/dist/checkFilesExist.js +61 -0
  10. package/dist/checkFilesExist.js.map +1 -0
  11. package/dist/collect-css-manifest.d.ts +4 -0
  12. package/dist/collect-css-manifest.d.ts.map +1 -0
  13. package/dist/collect-css-manifest.js +57 -0
  14. package/dist/collect-css-manifest.js.map +1 -0
  15. package/dist/components.d.ts +13 -0
  16. package/dist/components.d.ts.map +1 -0
  17. package/dist/components.js +13 -0
  18. package/dist/components.js.map +1 -0
  19. package/dist/copy-dir.d.ts +4 -0
  20. package/dist/copy-dir.d.ts.map +1 -0
  21. package/dist/getEnv.d.ts +19 -0
  22. package/dist/getEnv.d.ts.map +1 -0
  23. package/dist/getEnv.js +76 -0
  24. package/dist/getEnv.js.map +1 -0
  25. package/dist/helpers/normalizedRelativePath.d.ts +9 -0
  26. package/dist/helpers/normalizedRelativePath.d.ts.map +1 -0
  27. package/dist/helpers/normalizedRelativePath.js +31 -0
  28. package/dist/helpers/normalizedRelativePath.js.map +1 -0
  29. package/dist/helpers/tryManifest.d.ts +8 -0
  30. package/dist/helpers/tryManifest.d.ts.map +1 -0
  31. package/dist/html/createPageLoader.d.ts +26 -0
  32. package/dist/html/createPageLoader.d.ts.map +1 -0
  33. package/dist/html/createPageLoader.js +70 -0
  34. package/dist/html/createPageLoader.js.map +1 -0
  35. package/dist/index.d.ts +3 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +5 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/manifest.d.ts +6 -0
  40. package/dist/manifest.d.ts.map +1 -0
  41. package/dist/module-graph.d.ts +10 -0
  42. package/dist/module-graph.d.ts.map +1 -0
  43. package/dist/options.d.ts +86 -0
  44. package/dist/options.d.ts.map +1 -0
  45. package/dist/options.js +251 -0
  46. package/dist/options.js.map +1 -0
  47. package/dist/plugin.d.ts +8 -0
  48. package/dist/plugin.d.ts.map +1 -0
  49. package/dist/plugin.js +31 -0
  50. package/dist/plugin.js.map +1 -0
  51. package/dist/react-client/plugin.d.ts +4 -0
  52. package/dist/react-client/plugin.d.ts.map +1 -0
  53. package/dist/react-client/plugin.js +28 -0
  54. package/dist/react-client/plugin.js.map +1 -0
  55. package/dist/react-server/createDevMiddleware.d.ts +8 -0
  56. package/dist/react-server/createDevMiddleware.d.ts.map +1 -0
  57. package/dist/react-server/createDevServer.d.ts +4 -0
  58. package/dist/react-server/createDevServer.d.ts.map +1 -0
  59. package/dist/react-server/createHandler.d.ts +23 -0
  60. package/dist/react-server/createHandler.d.ts.map +1 -0
  61. package/dist/react-server/createHandler.js +110 -0
  62. package/dist/react-server/createHandler.js.map +1 -0
  63. package/dist/react-server/createReactNodeStreamer.d.ts +10 -0
  64. package/dist/react-server/createReactNodeStreamer.d.ts.map +1 -0
  65. package/dist/react-server/createRscStream.d.ts +4 -0
  66. package/dist/react-server/createRscStream.d.ts.map +1 -0
  67. package/dist/react-server/createRscStream.js +47 -0
  68. package/dist/react-server/createRscStream.js.map +1 -0
  69. package/dist/react-server/createSsrHandler.d.ts +4 -0
  70. package/dist/react-server/createSsrHandler.d.ts.map +1 -0
  71. package/dist/react-server/plugin.d.ts +8 -0
  72. package/dist/react-server/plugin.d.ts.map +1 -0
  73. package/dist/react-server/plugin.js +298 -0
  74. package/dist/react-server/plugin.js.map +1 -0
  75. package/dist/resolvePage.d.ts +19 -0
  76. package/dist/resolvePage.d.ts.map +1 -0
  77. package/dist/resolvePage.js +44 -0
  78. package/dist/resolvePage.js.map +1 -0
  79. package/dist/resolveProps.d.ts +19 -0
  80. package/dist/resolveProps.d.ts.map +1 -0
  81. package/dist/resolveProps.js +90 -0
  82. package/dist/resolveProps.js.map +1 -0
  83. package/dist/server.d.ts +2 -0
  84. package/dist/server.d.ts.map +1 -0
  85. package/dist/transformer/index.d.ts +28 -0
  86. package/dist/transformer/index.d.ts.map +1 -0
  87. package/dist/transformer/index.js +54 -0
  88. package/dist/transformer/index.js.map +1 -0
  89. package/dist/transformer/preserveDirectives.d.ts +4 -0
  90. package/dist/transformer/preserveDirectives.d.ts.map +1 -0
  91. package/dist/transformer/preserveDirectives.js +72 -0
  92. package/dist/transformer/preserveDirectives.js.map +1 -0
  93. package/dist/transformer/preserver.d.ts +2 -0
  94. package/dist/transformer/preserver.d.ts.map +1 -0
  95. package/dist/transformer/transformer.d.ts +30 -0
  96. package/dist/transformer/transformer.d.ts.map +1 -0
  97. package/dist/transformer/transformer.js +80 -0
  98. package/dist/transformer/transformer.js.map +1 -0
  99. package/dist/transformer/types.d.ts +15 -0
  100. package/dist/transformer/types.d.ts.map +1 -0
  101. package/dist/types.d.ts +197 -0
  102. package/dist/types.d.ts.map +1 -0
  103. package/dist/worker/createHtmlStream.d.ts +7 -0
  104. package/dist/worker/createHtmlStream.d.ts.map +1 -0
  105. package/dist/worker/createWorker.d.ts +3 -0
  106. package/dist/worker/createWorker.d.ts.map +1 -0
  107. package/dist/worker/createWorker.js +33 -0
  108. package/dist/worker/createWorker.js.map +1 -0
  109. package/dist/worker/loader.d.ts +15 -0
  110. package/dist/worker/loader.d.ts.map +1 -0
  111. package/dist/worker/renderPages.d.ts +18 -0
  112. package/dist/worker/renderPages.d.ts.map +1 -0
  113. package/dist/worker/renderPages.js +99 -0
  114. package/dist/worker/renderPages.js.map +1 -0
  115. package/dist/worker/types.d.ts +31 -0
  116. package/dist/worker/types.d.ts.map +1 -0
  117. package/dist/worker/worker.d.ts +7 -0
  118. package/dist/worker/worker.d.ts.map +1 -0
  119. package/package.json +116 -0
  120. package/src/build/createBuildConfig.ts +74 -0
  121. package/src/checkFilesExist.ts +67 -0
  122. package/src/collect-css-manifest.ts +76 -0
  123. package/src/components.tsx +14 -0
  124. package/src/copy-dir.ts +27 -0
  125. package/src/getEnv.ts +135 -0
  126. package/src/helpers/normalizedRelativePath.ts +59 -0
  127. package/src/helpers/tryManifest.ts +23 -0
  128. package/src/html/createPageLoader.ts +99 -0
  129. package/src/index.ts +4 -0
  130. package/src/manifest.ts +24 -0
  131. package/src/module-graph.ts +48 -0
  132. package/src/options.ts +351 -0
  133. package/src/plugin.ts +31 -0
  134. package/src/react-client/plugin.ts +34 -0
  135. package/src/react-server/createDevMiddleware.ts +75 -0
  136. package/src/react-server/createDevServer.ts +10 -0
  137. package/src/react-server/createHandler.ts +144 -0
  138. package/src/react-server/createReactNodeStreamer.ts +25 -0
  139. package/src/react-server/createRscStream.ts +52 -0
  140. package/src/react-server/createSsrHandler.ts +147 -0
  141. package/src/react-server/plugin.ts +349 -0
  142. package/src/resolvePage.ts +65 -0
  143. package/src/resolveProps.ts +122 -0
  144. package/src/server.tsx +0 -0
  145. package/src/transformer/README.md +44 -0
  146. package/src/transformer/index.ts +112 -0
  147. package/src/transformer/preserveDirectives.ts +100 -0
  148. package/src/transformer/preserver.ts +47 -0
  149. package/src/transformer/transformer.ts +123 -0
  150. package/src/transformer/types.ts +15 -0
  151. package/src/types.ts +245 -0
  152. package/src/worker/createHtmlStream.ts +76 -0
  153. package/src/worker/createWorker.ts +39 -0
  154. package/src/worker/loader.ts +16 -0
  155. package/src/worker/renderPages.ts +144 -0
  156. package/src/worker/types.ts +38 -0
  157. package/src/worker/worker.tsx +136 -0
  158. package/tsconfig.json +79 -0
package/dist/getEnv.js ADDED
@@ -0,0 +1,76 @@
1
+ import { readFileSync } from "node:fs";
2
+ import { resolve } from "node:path";
3
+ import { loadEnv } from "vite";
4
+ import { DEFAULT_CONFIG } from "./options.js";
5
+ function getEnv(config, configEnv) {
6
+ const isLocal = config.mode === "development";
7
+ const envName = isLocal ? `${config.mode}.local` : config.mode ? config.mode : "production";
8
+ const environmentName = config.mode ?? envName ?? "production";
9
+ const env = loadEnv(
10
+ environmentName,
11
+ config.envDir ?? config.root ?? process.cwd(),
12
+ config.envPrefix ?? DEFAULT_CONFIG.ENV_PREFIX ?? "VITE_"
13
+ );
14
+ const serverConfig = config.server || {};
15
+ const previewConfig = config.preview || {};
16
+ const host = configEnv.isPreview ? previewConfig.host ?? DEFAULT_CONFIG.PREVIEW_HOST : serverConfig.host ?? DEFAULT_CONFIG.DEV_HOST;
17
+ let previewPort = previewConfig.port ?? DEFAULT_CONFIG.PREVIEW_PORT;
18
+ let devPort = serverConfig.port ?? DEFAULT_CONFIG.DEV_PORT;
19
+ let homepage = env["VITE_BASE_URL"];
20
+ if (configEnv.command === "build" && (!homepage || homepage === "")) {
21
+ try {
22
+ const packageJson = JSON.parse(
23
+ readFileSync(resolve(config.root ?? "", "package.json"), "utf-8")
24
+ );
25
+ homepage = packageJson.homepage ?? "";
26
+ if (!homepage || homepage === "") {
27
+ console.warn(
28
+ "[RSC] 🔧 For production builds, please set 'homepage' in package.json, or set VITE_BASE_URL in your environment"
29
+ );
30
+ }
31
+ } catch (e) {
32
+ console.error(e);
33
+ }
34
+ }
35
+ let baseUrl = env["VITE_BASE_URL"] && env["VITE_PUBLIC_URL"] !== "" ? env["VITE_BASE_URL"] : configEnv.isPreview ? `http://${host}:${previewPort}` : configEnv.command === "serve" ? `http://${host}:${devPort}` : homepage;
36
+ let publicUrl = env["VITE_PUBLIC_URL"] && env["VITE_PUBLIC_URL"] !== "" ? env["VITE_PUBLIC_URL"] : "";
37
+ const port = configEnv.isPreview ? previewConfig.port || DEFAULT_CONFIG.PREVIEW_PORT : serverConfig.port || DEFAULT_CONFIG.DEV_PORT;
38
+ if (configEnv.isPreview && `http://${host}:${port}` !== baseUrl) {
39
+ console.log(
40
+ `VITE_BASE_URL: "${baseUrl}" wasn't configured correctly for this server, overriding to: "http://${host}:${port}"`
41
+ );
42
+ baseUrl = `http://${host}:${port}`;
43
+ }
44
+ const envPrefix = typeof config.envPrefix === "string" ? config.envPrefix : Array.isArray(config.envPrefix) ? config.envPrefix[0] : DEFAULT_CONFIG.ENV_PREFIX;
45
+ const nodeProcessEnv = {
46
+ NODE_ENV: configEnv.command === "build" ? "production" : "development"
47
+ };
48
+ const defineProcess = Object.entries(nodeProcessEnv).map(([key, value]) => {
49
+ switch (key) {
50
+ case "NODE_ENV":
51
+ const isDev = value === "" ? configEnv.command === "build" ? false : true : value === "development";
52
+ return [`import.meta.env.DEV`, JSON.stringify(isDev)];
53
+ default:
54
+ return null;
55
+ }
56
+ }).filter(Array.isArray);
57
+ const defineImportMeta = Object.entries(env).map(([key, value]) => [
58
+ `import.meta.env.${key}`,
59
+ key === "VITE_BASE_URL" ? value ? JSON.stringify(value) : JSON.stringify(baseUrl) : key === "VITE_PUBLIC_URL" ? value ? JSON.stringify(value) : JSON.stringify(publicUrl) : JSON.stringify(value)
60
+ ]);
61
+ const define = Object.fromEntries([...defineProcess, ...defineImportMeta]);
62
+ return {
63
+ baseUrl,
64
+ publicUrl,
65
+ port,
66
+ host,
67
+ envPrefix,
68
+ environmentName,
69
+ env,
70
+ define
71
+ };
72
+ }
73
+ export {
74
+ getEnv
75
+ };
76
+ //# sourceMappingURL=getEnv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEnv.js","sources":["../src/getEnv.ts"],"sourcesContent":["import { readFileSync } from \"node:fs\";\nimport { resolve } from \"node:path\";\nimport type { ConfigEnv, UserConfig } from \"vite\";\nimport { loadEnv } from \"vite\";\nimport { DEFAULT_CONFIG } from \"./options.js\";\n\n/**\n * Get environment variables for Vite, sets defaults to ensure the server can start with BASE_URL and PUBLIC_URL\n *\n * @param config - Vite configuration object\n * @param { isPreview: boolean } - Object containing a boolean indicating if the environment is for preview\n * @returns An object containing the environment variables\n */\nexport function getEnv(config: UserConfig, configEnv: ConfigEnv) {\n const isLocal =\n config.mode === \"development\"\n\n const envName = isLocal\n ? `${config.mode}.local`\n : config.mode\n ? config.mode\n : \"production\";\n const environmentName = config.mode ?? envName ?? \"production\";\n\n const env = loadEnv(\n environmentName,\n config.envDir ?? config.root ?? process.cwd(),\n config.envPrefix ?? DEFAULT_CONFIG.ENV_PREFIX ?? \"VITE_\"\n );\n\n // Get server config\n const serverConfig = config.server || {};\n const previewConfig = config.preview || {};\n const host = configEnv.isPreview\n ? previewConfig.host ?? DEFAULT_CONFIG.PREVIEW_HOST\n : serverConfig.host ?? DEFAULT_CONFIG.DEV_HOST;\n let previewPort = previewConfig.port ?? DEFAULT_CONFIG.PREVIEW_PORT;\n let devPort = serverConfig.port ?? DEFAULT_CONFIG.DEV_PORT;\n\n let homepage = env[\"VITE_BASE_URL\"]\n if (configEnv.command === \"build\" && (!homepage || homepage === \"\")) {\n try {\n const packageJson = JSON.parse(\n readFileSync(resolve(config.root ?? \"\", \"package.json\"), \"utf-8\")\n );\n homepage = packageJson.homepage ?? \"\";\n if (!homepage || homepage === \"\") {\n console.warn(\n \"[RSC] 🔧 For production builds, please set 'homepage' in package.json, or set VITE_BASE_URL in your environment\"\n );\n }\n } catch (e) {\n console.error(e);\n }\n }\n\n let baseUrl =\n env[\"VITE_BASE_URL\"] && env[\"VITE_PUBLIC_URL\"] !== \"\"\n ? env[\"VITE_BASE_URL\"]\n : configEnv.isPreview\n ? `http://${host}:${previewPort}`\n : configEnv.command === \"serve\"\n ? `http://${host}:${devPort}`\n : homepage;\n\n let publicUrl =\n env[\"VITE_PUBLIC_URL\"] && env[\"VITE_PUBLIC_URL\"] !== \"\"\n ? env[\"VITE_PUBLIC_URL\"]\n : \"\";\n\n // Determine port and host based on mode\n const port = configEnv.isPreview\n ? previewConfig.port || DEFAULT_CONFIG.PREVIEW_PORT // Preview server\n : serverConfig.port || DEFAULT_CONFIG.DEV_PORT; // Dev server\n\n // Build base URL\n if (configEnv.isPreview && `http://${host}:${port}` !== baseUrl) {\n console.log(\n `VITE_BASE_URL: \\\"${baseUrl}\\\" wasn't configured correctly for this server, overriding to: \\\"http://${host}:${port}\\\"`\n );\n baseUrl = `http://${host}:${port}`;\n }\n\n const envPrefix =\n typeof config.envPrefix === \"string\"\n ? config.envPrefix\n : Array.isArray(config.envPrefix)\n ? config.envPrefix[0]\n : DEFAULT_CONFIG.ENV_PREFIX;\n\n const nodeProcessEnv = {\n NODE_ENV: configEnv.command === \"build\" ? \"production\" : \"development\",\n };\n const defineProcess = Object.entries(nodeProcessEnv)\n .map(([key, value]) => {\n switch (key) {\n case \"NODE_ENV\":\n const isDev =\n value === \"\"\n ? configEnv.command === \"build\"\n ? false\n : true\n : value === \"development\";\n return [`import.meta.env.DEV`, JSON.stringify(isDev)];\n default:\n return null;\n }\n })\n .filter(Array.isArray);\n\n const defineImportMeta = Object.entries(env).map(([key, value]) => [\n `import.meta.env.${key}`,\n key === \"VITE_BASE_URL\"\n ? value\n ? JSON.stringify(value)\n : JSON.stringify(baseUrl)\n : key === \"VITE_PUBLIC_URL\"\n ? value\n ? JSON.stringify(value)\n : JSON.stringify(publicUrl)\n : JSON.stringify(value),\n ]);\n const define = Object.fromEntries([...defineProcess, ...defineImportMeta]);\n\n return {\n baseUrl,\n publicUrl,\n port,\n host,\n envPrefix,\n environmentName,\n env,\n define,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ type NormalizedRelativePathOptions = {
2
+ root: string;
3
+ outDir: string | string[];
4
+ moduleBase: string;
5
+ noLeadingSlash: boolean;
6
+ };
7
+ export declare const createNormalizedRelativePath: (options?: NormalizedRelativePathOptions) => (path: string) => string;
8
+ export {};
9
+ //# sourceMappingURL=normalizedRelativePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizedRelativePath.d.ts","sourceRoot":"","sources":["../../src/helpers/normalizedRelativePath.ts"],"names":[],"mappings":"AAEA,KAAK,6BAA6B,GAAG;IAEnC,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE1B,UAAU,EAAE,MAAM,CAAC;IAEnB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,4BAA4B,aAC9B,6BAA6B,YA2CxB,MAAM,WACrB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { normalizePath } from "vite";
2
+ const createNormalizedRelativePath = (options = {
3
+ root: process.cwd(),
4
+ outDir: ["dist", "build"],
5
+ moduleBase: "src",
6
+ noLeadingSlash: false
7
+ }) => {
8
+ const base = options.noLeadingSlash && options.moduleBase.startsWith("/") ? options.moduleBase.slice(1) : options.moduleBase;
9
+ const removeOutDir = Array.isArray(options.outDir) ? (path) => options.outDir.map((dir) => path.startsWith(dir)).some((v) => v) ? path.slice(options.outDir[0].length) : path : (path) => options.outDir === path ? path.slice(options.outDir.length) : path;
10
+ const removeRoot = (path) => {
11
+ const normalized = normalizePath(path);
12
+ const relative = normalized.startsWith(options.root) ? normalized.slice(options.root.length) : normalized;
13
+ return relative;
14
+ };
15
+ const ensureModuleBase = (path) => {
16
+ if (options.noLeadingSlash && path.startsWith("/")) {
17
+ return path.slice(1);
18
+ }
19
+ if (!path.startsWith(base)) {
20
+ throw new Error(
21
+ `Path ${path} does not start with module base ${base}, this will not work down the line.`
22
+ );
23
+ }
24
+ return path;
25
+ };
26
+ return (path) => ensureModuleBase(removeOutDir(removeRoot(path)));
27
+ };
28
+ export {
29
+ createNormalizedRelativePath
30
+ };
31
+ //# sourceMappingURL=normalizedRelativePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizedRelativePath.js","sources":["../../src/helpers/normalizedRelativePath.ts"],"sourcesContent":["import { normalizePath } from \"vite\";\n\ntype NormalizedRelativePathOptions = {\n // will automatically remove this part\n root: string;\n // will automatically see this as a optional extra part of the rootDir that will be removed\n outDir: string | string[];\n // will ensure it always starts with this path, if it does not it will be added\n moduleBase: string;\n // will ensure it never starts with a leading /, which in some cases is needed (vite entry), other cases it is not for example from project root /\n noLeadingSlash: boolean;\n};\n\nexport const createNormalizedRelativePath = (\n options: NormalizedRelativePathOptions = {\n root: process.cwd(),\n outDir: [\"dist\", \"build\"],\n moduleBase: \"src\",\n noLeadingSlash: false,\n }\n) => {\n const base =\n options.noLeadingSlash && options.moduleBase.startsWith(\"/\")\n ? options.moduleBase.slice(1)\n : options.moduleBase;\n const removeOutDir = Array.isArray(options.outDir)\n ? (path: string) =>\n (options.outDir as string[])\n .map((dir) => path.startsWith(dir))\n .some((v) => v)\n ? path.slice(options.outDir[0].length)\n : path\n : (path: string) =>\n (options.outDir as string) === path\n ? path.slice(options.outDir.length)\n : path;\n\n const removeRoot = (path: string) => {\n const normalized = normalizePath(path);\n const relative = normalized.startsWith(options.root)\n ? normalized.slice(options.root.length)\n : normalized;\n return relative;\n };\n\n const ensureModuleBase = (path: string) => {\n if (options.noLeadingSlash && path.startsWith(\"/\")) {\n return path.slice(1);\n }\n if (!path.startsWith(base)) {\n throw new Error(\n `Path ${path} does not start with module base ${base}, this will not work down the line.`\n );\n }\n return path;\n };\n\n return (path: string) => ensureModuleBase(removeOutDir(removeRoot(path)));\n};\n"],"names":[],"mappings":";AAaa,MAAA,+BAA+B,CAC1C,UAAyC;AAAA,EACvC,MAAM,QAAQ,IAAI;AAAA,EAClB,QAAQ,CAAC,QAAQ,OAAO;AAAA,EACxB,YAAY;AAAA,EACZ,gBAAgB;AAClB,MACG;AACH,QAAM,OACJ,QAAQ,kBAAkB,QAAQ,WAAW,WAAW,GAAG,IACvD,QAAQ,WAAW,MAAM,CAAC,IAC1B,QAAQ;AACd,QAAM,eAAe,MAAM,QAAQ,QAAQ,MAAM,IAC7C,CAAC,SACE,QAAQ,OACN,IAAI,CAAC,QAAQ,KAAK,WAAW,GAAG,CAAC,EACjC,KAAK,CAAC,MAAM,CAAC,IACZ,KAAK,MAAM,QAAQ,OAAO,CAAC,EAAE,MAAM,IACnC,OACN,CAAC,SACE,QAAQ,WAAsB,OAC3B,KAAK,MAAM,QAAQ,OAAO,MAAM,IAChC;AAEJ,QAAA,aAAa,CAAC,SAAiB;AAC7B,UAAA,aAAa,cAAc,IAAI;AAC/B,UAAA,WAAW,WAAW,WAAW,QAAQ,IAAI,IAC/C,WAAW,MAAM,QAAQ,KAAK,MAAM,IACpC;AACG,WAAA;AAAA,EACT;AAEM,QAAA,mBAAmB,CAAC,SAAiB;AACzC,QAAI,QAAQ,kBAAkB,KAAK,WAAW,GAAG,GAAG;AAC3C,aAAA,KAAK,MAAM,CAAC;AAAA,IAAA;AAErB,QAAI,CAAC,KAAK,WAAW,IAAI,GAAG;AAC1B,YAAM,IAAI;AAAA,QACR,QAAQ,IAAI,oCAAoC,IAAI;AAAA,MACtD;AAAA,IAAA;AAEK,WAAA;AAAA,EACT;AAEA,SAAO,CAAC,SAAiB,iBAAiB,aAAa,WAAW,IAAI,CAAC,CAAC;AAC1E;"}
@@ -0,0 +1,8 @@
1
+ type TryManifestOptions = {
2
+ root: string;
3
+ outDir: string;
4
+ ssrManifest: boolean;
5
+ };
6
+ export declare function tryManifest(options: TryManifestOptions): any;
7
+ export {};
8
+ //# sourceMappingURL=tryManifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tryManifest.d.ts","sourceRoot":"","sources":["../../src/helpers/tryManifest.ts"],"names":[],"mappings":"AAGA,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,OAatD"}
@@ -0,0 +1,26 @@
1
+ type CreatePageLoaderOptions = {
2
+ manifest: Record<string, {
3
+ file: string;
4
+ }>;
5
+ root: string;
6
+ outDir: string;
7
+ moduleBase: string;
8
+ registerServer?: string[];
9
+ registerClient?: string[];
10
+ alwaysRegisterServer?: boolean;
11
+ alwaysRegisterClient?: boolean;
12
+ };
13
+ type CreateDefaultLoaderOptions = {
14
+ id: string;
15
+ registerServer?: string[];
16
+ registerClient?: string[];
17
+ alwaysRegisterServer?: boolean;
18
+ alwaysRegisterClient?: boolean;
19
+ };
20
+ export declare const createDefaultLoader: ({ id, registerServer, registerClient, alwaysRegisterServer, alwaysRegisterClient, }: CreateDefaultLoaderOptions) => (url: string) => Promise<any>;
21
+ export declare const createPageLoader: ({ manifest, root, outDir, moduleBase, registerServer, registerClient, alwaysRegisterServer, alwaysRegisterClient, }: CreatePageLoaderOptions) => (id: string) => Promise<{
22
+ format: string;
23
+ source: string;
24
+ }>;
25
+ export {};
26
+ //# sourceMappingURL=createPageLoader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPageLoader.d.ts","sourceRoot":"","sources":["../../src/html/createPageLoader.ts"],"names":[],"mappings":"AAQA,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,eAAO,MAAM,mBAAmB,wFAM7B,0BAA0B,WAqBR,MAAM,iBAE1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,wHAS1B,uBAAuB,UAON,MAAM;;;EAwBzB,CAAC"}
@@ -0,0 +1,70 @@
1
+ import { resolve } from "node:path";
2
+ import { load } from "react-server-dom-esm/node-loader";
3
+ import { registerClientReference, registerServerReference } from "react-server-dom-esm/server.node";
4
+ import { createNormalizedRelativePath } from "../helpers/normalizedRelativePath.js";
5
+ const createDefaultLoader = ({
6
+ id,
7
+ registerServer,
8
+ registerClient,
9
+ alwaysRegisterServer = false,
10
+ alwaysRegisterClient = false
11
+ }) => {
12
+ const mapper = ([key, value]) => {
13
+ try {
14
+ if (registerClient?.includes(key) || alwaysRegisterClient && typeof value === "function") {
15
+ return [key, registerClientReference(value, id, key)];
16
+ }
17
+ if (registerServer?.includes(key) || alwaysRegisterServer && typeof value === "function") {
18
+ return [key, registerServerReference(value, id, key)];
19
+ }
20
+ return [key, value];
21
+ } catch (e) {
22
+ console.error("[RSC] Error registering reference:", key, value, e);
23
+ return [key, value];
24
+ }
25
+ };
26
+ return async (url) => Object.fromEntries(Object.entries(await import(url)).map(mapper));
27
+ };
28
+ const createPageLoader = ({
29
+ manifest,
30
+ root,
31
+ outDir,
32
+ moduleBase,
33
+ registerServer,
34
+ registerClient,
35
+ alwaysRegisterServer,
36
+ alwaysRegisterClient
37
+ }) => {
38
+ const pathNormalizer = createNormalizedRelativePath({
39
+ root,
40
+ outDir,
41
+ moduleBase,
42
+ noLeadingSlash: true
43
+ });
44
+ return async (id) => {
45
+ const normalizedId = pathNormalizer(id);
46
+ const entry = normalizedId in manifest ? manifest[normalizedId] : Object.values(manifest).find((entry2) => entry2.file === normalizedId);
47
+ if (!entry) {
48
+ throw new Error(
49
+ `Could not find manifest entry for ${id}, ${normalizedId} from ${root}`
50
+ );
51
+ }
52
+ const loaderResult = await load(
53
+ resolve(root, outDir, entry.file),
54
+ { format: "module" },
55
+ createDefaultLoader({
56
+ id,
57
+ registerServer,
58
+ registerClient,
59
+ alwaysRegisterServer,
60
+ alwaysRegisterClient
61
+ })
62
+ );
63
+ return loaderResult;
64
+ };
65
+ };
66
+ export {
67
+ createDefaultLoader,
68
+ createPageLoader
69
+ };
70
+ //# sourceMappingURL=createPageLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPageLoader.js","sources":["../../src/html/createPageLoader.ts"],"sourcesContent":["import { resolve as resolvePath } from \"node:path\";\nimport { load } from \"react-server-dom-esm/node-loader\";\nimport {\n registerClientReference,\n registerServerReference,\n} from \"react-server-dom-esm/server.node\";\nimport { createNormalizedRelativePath } from \"../helpers/normalizedRelativePath.js\";\n\ntype CreatePageLoaderOptions = {\n manifest: Record<string, { file: string }>;\n root: string;\n outDir: string;\n moduleBase: string;\n registerServer?: string[];\n registerClient?: string[];\n alwaysRegisterServer?: boolean;\n alwaysRegisterClient?: boolean;\n};\n\ntype CreateDefaultLoaderOptions = {\n id: string;\n registerServer?: string[];\n registerClient?: string[];\n alwaysRegisterServer?: boolean;\n alwaysRegisterClient?: boolean;\n};\n\nexport const createDefaultLoader = ({\n id,\n registerServer,\n registerClient,\n alwaysRegisterServer = false,\n alwaysRegisterClient = false,\n}: CreateDefaultLoaderOptions) => {\n const mapper = ([key, value]: [string, any]) => {\n try {\n if (\n registerClient?.includes(key) ||\n (alwaysRegisterClient && typeof value === \"function\")\n ) {\n return [key, registerClientReference(value, id, key)];\n }\n if (\n registerServer?.includes(key) ||\n (alwaysRegisterServer && typeof value === \"function\")\n ) {\n return [key, registerServerReference(value, id, key)];\n }\n return [key, value];\n } catch (e) {\n console.error(\"[RSC] Error registering reference:\", key, value, e);\n return [key, value];\n }\n };\n return async (url: string) =>\n Object.fromEntries(Object.entries(await import(url)).map(mapper));\n};\n\nexport const createPageLoader = ({\n manifest,\n root,\n outDir,\n moduleBase,\n registerServer,\n registerClient,\n alwaysRegisterServer,\n alwaysRegisterClient,\n}: CreatePageLoaderOptions) => {\n const pathNormalizer = createNormalizedRelativePath({\n root,\n outDir,\n moduleBase,\n noLeadingSlash: true,\n });\n return async (id: string) => {\n const normalizedId = pathNormalizer(id);\n const entry =\n normalizedId in manifest\n ? manifest[normalizedId]\n : Object.values(manifest).find((entry) => entry.file === normalizedId);\n if (!entry) {\n throw new Error(\n `Could not find manifest entry for ${id}, ${normalizedId} from ${root}`\n );\n }\n const loaderResult = await load(\n resolvePath(root, outDir, entry.file),\n { format: \"module\" },\n createDefaultLoader({\n id,\n registerServer,\n registerClient,\n alwaysRegisterServer,\n alwaysRegisterClient,\n })\n );\n return loaderResult;\n };\n};\n"],"names":["entry","resolvePath"],"mappings":";;;;AA2BO,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA,uBAAuB;AAAA,EACvB,uBAAuB;AACzB,MAAkC;AAChC,QAAM,SAAS,CAAC,CAAC,KAAK,KAAK,MAAqB;AAC1C,QAAA;AACF,UACE,gBAAgB,SAAS,GAAG,KAC3B,wBAAwB,OAAO,UAAU,YAC1C;AACA,eAAO,CAAC,KAAK,wBAAwB,OAAO,IAAI,GAAG,CAAC;AAAA,MAAA;AAEtD,UACE,gBAAgB,SAAS,GAAG,KAC3B,wBAAwB,OAAO,UAAU,YAC1C;AACA,eAAO,CAAC,KAAK,wBAAwB,OAAO,IAAI,GAAG,CAAC;AAAA,MAAA;AAE/C,aAAA,CAAC,KAAK,KAAK;AAAA,aACX,GAAG;AACV,cAAQ,MAAM,sCAAsC,KAAK,OAAO,CAAC;AAC1D,aAAA,CAAC,KAAK,KAAK;AAAA,IAAA;AAAA,EAEtB;AACA,SAAO,OAAO,QACZ,OAAO,YAAY,OAAO,QAAQ,MAAM,OAAO,IAAI,EAAE,IAAI,MAAM,CAAC;AACpE;AAEO,MAAM,mBAAmB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAA+B;AAC7B,QAAM,iBAAiB,6BAA6B;AAAA,IAClD;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,EAAA,CACjB;AACD,SAAO,OAAO,OAAe;AACrB,UAAA,eAAe,eAAe,EAAE;AACtC,UAAM,QACJ,gBAAgB,WACZ,SAAS,YAAY,IACrB,OAAO,OAAO,QAAQ,EAAE,KAAK,CAACA,WAAUA,OAAM,SAAS,YAAY;AACzE,QAAI,CAAC,OAAO;AACV,YAAM,IAAI;AAAA,QACR,qCAAqC,EAAE,KAAK,YAAY,SAAS,IAAI;AAAA,MACvE;AAAA,IAAA;AAEF,UAAM,eAAe,MAAM;AAAA,MACzBC,QAAY,MAAM,QAAQ,MAAM,IAAI;AAAA,MACpC,EAAE,QAAQ,SAAS;AAAA,MACnB,oBAAoB;AAAA,QAClB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD,CAAA;AAAA,IACH;AACO,WAAA;AAAA,EACT;AACF;"}
@@ -0,0 +1,3 @@
1
+ export { reactStreamPlugin } from './plugin.js';
2
+ export type * from './types.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,mBAAmB,YAAY,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ import { reactStreamPlugin } from "./plugin.js";
2
+ export {
3
+ reactStreamPlugin
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,6 @@
1
+ import type { Manifest } from "vite";
2
+ export interface RscManifest {
3
+ clientComponents: Record<string, string>;
4
+ }
5
+ export declare function resolveManifestEntry(id: string, manifest: Manifest): string | undefined;
6
+ //# sourceMappingURL=manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGrC,MAAM,WAAW,WAAW;IAC1B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GACjB,MAAM,GAAG,SAAS,CAapB"}
@@ -0,0 +1,10 @@
1
+ import type { ViteDevServer } from "vite";
2
+ export interface ModuleWithDeps {
3
+ id: string;
4
+ deps: Set<string>;
5
+ css: Set<string>;
6
+ }
7
+ export declare function getModuleGraph(server: ViteDevServer): {
8
+ getModuleWithDeps(id: string): Promise<ModuleWithDeps>;
9
+ };
10
+ //# sourceMappingURL=module-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-graph.d.ts","sourceRoot":"","sources":["../src/module-graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,MAAM,CAAC;AAEtD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa;0BAEpB,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;EAqC/D"}
@@ -0,0 +1,86 @@
1
+ import type { ConfigEnv, ResolvedConfig, UserConfig } from "vite";
2
+ import type { ResolvedUserOptions, StreamPluginOptions } from "./types.js";
3
+ export declare const DEFAULT_CONFIG: {
4
+ readonly FILE_REGEX: RegExp;
5
+ readonly CLIENT_ASSETS_DIR: "assets";
6
+ readonly RSC_DIR: "rsc";
7
+ readonly MODULE_BASE: "src";
8
+ readonly MODULE_BASE_PATH: "/src";
9
+ readonly MODULE_BASE_URL: "/src";
10
+ readonly PAGE: "/src/page/page.tsx";
11
+ readonly PROPS: "/src/page/props.ts";
12
+ readonly CLIENT_ENTRY: "/src/client.tsx";
13
+ readonly PAGE_EXPORT: "Page";
14
+ readonly PROPS_EXPORT: "props";
15
+ readonly WORKER_PATH: "worker/worker.tsx";
16
+ readonly LOADER_PATH: "worker/loader.ts";
17
+ readonly RSC_EXTENSION: ".rsc";
18
+ readonly HTML: ({ children }: {
19
+ children: any;
20
+ }) => any;
21
+ readonly COLLECT_CSS: true;
22
+ readonly COLLECT_ASSETS: true;
23
+ readonly PAGE_PATTERN: "/src/page/**/*.page.tsx";
24
+ readonly PROPS_PATTERN: "/src/page/**/*.props.ts";
25
+ readonly DEV_PORT: 5173;
26
+ readonly PREVIEW_PORT: 4173;
27
+ readonly DEV_HOST: "localhost";
28
+ readonly PREVIEW_HOST: "localhost";
29
+ readonly ENV_PREFIX: "VITE_";
30
+ readonly BUILD: {
31
+ readonly pages: () => string[];
32
+ readonly client: "dist/client";
33
+ readonly server: "dist/server";
34
+ };
35
+ };
36
+ export declare const resolveConfig: <T extends ResolvedConfig>(config: T, resolvedUserConfig: UserConfig, userOptions: ResolvedUserOptions) => T & {
37
+ build: {
38
+ assetsDir: string;
39
+ modulePreload: false | import("vite").ResolvedModulePreloadOptions;
40
+ write: boolean;
41
+ manifest: boolean | string;
42
+ sourcemap: boolean | "inline" | "hidden";
43
+ target: string | false | string[];
44
+ minify: boolean | "terser" | "esbuild";
45
+ ssr: boolean | string;
46
+ watch: import("rollup").WatcherOptions | null;
47
+ outDir: string;
48
+ assetsInlineLimit: number | ((filePath: string, content: Buffer) => boolean | undefined);
49
+ cssCodeSplit: boolean;
50
+ cssTarget: string | false | string[];
51
+ cssMinify: boolean | "esbuild" | "lightningcss";
52
+ terserOptions: import("vite").TerserOptions;
53
+ rollupOptions: import("rollup").RollupOptions;
54
+ commonjsOptions: import("vite").RollupCommonJSOptions;
55
+ dynamicImportVarsOptions: import("vite").RollupDynamicImportVarsOptions;
56
+ emptyOutDir: boolean | null;
57
+ copyPublicDir: boolean;
58
+ lib: import("vite").LibraryOptions | false;
59
+ ssrManifest: boolean | string;
60
+ ssrEmitAssets: boolean;
61
+ reportCompressedSize: boolean;
62
+ chunkSizeWarningLimit: number;
63
+ };
64
+ };
65
+ export declare const resolveUserConfig: (condition: "react-client" | "react-server", input: string[], config: UserConfig, configEnv: ConfigEnv, userOptions: ResolvedUserOptions) => {
66
+ type: "error";
67
+ error: Error;
68
+ } | {
69
+ type: "success";
70
+ userConfig: Required<Pick<UserConfig, "root" | "build" | "mode">> & Omit<UserConfig, "root" | "build" | "mode">;
71
+ };
72
+ export declare const resolveOptions: (options: StreamPluginOptions) => {
73
+ type: "error";
74
+ error: Error;
75
+ } | {
76
+ type: "success";
77
+ userOptions: ResolvedUserOptions;
78
+ };
79
+ export declare function resolvePages(pages: ResolvedUserOptions["build"]["pages"]): Promise<{
80
+ type: "success";
81
+ pages: string[];
82
+ } | {
83
+ type: "error";
84
+ error: Error;
85
+ }>;
86
+ //# sourceMappingURL=options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE3E,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;kCAgBJ;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE;;;;;;;;;;;;;;;CAe9B,CAAC;AAEX,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,cAAc,UAC5C,CAAC,sBACW,UAAU,eACjB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjC,CAAC;AAEF,eAAO,MAAM,iBAAiB,cACjB,cAAc,GAAG,cAAc,SACnC,MAAM,EAAE,UACP,UAAU,aACP,SAAS,eACP,mBAAmB,KAE9B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAC/B;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,GAC/D,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC;CA2FnD,CAAC;AAEF,eAAO,MAAM,cAAc,YAChB,mBAAmB,KAE1B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAC/B;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,mBAAmB,CAAC;CA6FtC,CAAC;AAEF,wBAAsB,YAAY,CAChC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAC3C,OAAO,CACN;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,CACJ,CAmFA"}