vite-plugin-react-server 0.3.18 → 0.3.19

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 (208) hide show
  1. package/README.md +119 -118
  2. package/bin/patch.mjs +8 -2
  3. package/dist/package.json +3 -3
  4. package/dist/plugin/checkFilesExist.d.ts.map +1 -1
  5. package/dist/plugin/checkFilesExist.js +6 -2
  6. package/dist/plugin/checkFilesExist.js.map +1 -1
  7. package/dist/plugin/collect-manifest-client-files.d.ts +23 -0
  8. package/dist/plugin/collect-manifest-client-files.d.ts.map +1 -0
  9. package/dist/plugin/collect-manifest-client-files.js +117 -0
  10. package/dist/plugin/collect-manifest-client-files.js.map +1 -0
  11. package/dist/plugin/components.d.ts +9 -9
  12. package/dist/plugin/components.d.ts.map +1 -1
  13. package/dist/plugin/components.js +50 -9
  14. package/dist/plugin/components.js.map +1 -0
  15. package/dist/plugin/config/defaults.d.ts +7 -6
  16. package/dist/plugin/config/defaults.d.ts.map +1 -1
  17. package/dist/plugin/config/defaults.js +8 -5
  18. package/dist/plugin/config/defaults.js.map +1 -1
  19. package/dist/plugin/config/getPaths.d.ts +0 -1
  20. package/dist/plugin/config/getPaths.d.ts.map +1 -1
  21. package/dist/plugin/config/getPaths.js +2 -7
  22. package/dist/plugin/config/getPaths.js.map +1 -1
  23. package/dist/plugin/config/mimeTypes.d.ts +2 -0
  24. package/dist/plugin/config/mimeTypes.d.ts.map +1 -0
  25. package/dist/plugin/config/mimeTypes.js +24 -0
  26. package/dist/plugin/config/mimeTypes.js.map +1 -0
  27. package/dist/plugin/config/resolveOptions.d.ts +1 -1
  28. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  29. package/dist/plugin/config/resolveOptions.js +41 -28
  30. package/dist/plugin/config/resolveOptions.js.map +1 -1
  31. package/dist/plugin/config/resolvePages.d.ts +1 -0
  32. package/dist/plugin/config/resolvePages.d.ts.map +1 -1
  33. package/dist/plugin/config/resolvePages.js +9 -5
  34. package/dist/plugin/config/resolvePages.js.map +1 -1
  35. package/dist/plugin/config/resolveUserConfig.d.ts +2 -1
  36. package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
  37. package/dist/plugin/config/resolveUserConfig.js +10 -5
  38. package/dist/plugin/config/resolveUserConfig.js.map +1 -1
  39. package/dist/plugin/copy-dir.js +23 -18
  40. package/dist/plugin/copy-dir.js.map +1 -0
  41. package/dist/plugin/helpers/createHandler.d.ts +22 -0
  42. package/dist/plugin/helpers/createHandler.d.ts.map +1 -0
  43. package/dist/plugin/{react-server → helpers}/createHandler.js +36 -48
  44. package/dist/plugin/helpers/createHandler.js.map +1 -0
  45. package/dist/plugin/{react-server → helpers}/createRscStream.d.ts +2 -1
  46. package/dist/plugin/helpers/createRscStream.d.ts.map +1 -0
  47. package/dist/plugin/helpers/createRscStream.js +71 -0
  48. package/dist/plugin/helpers/createRscStream.js.map +1 -0
  49. package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
  50. package/dist/plugin/helpers/getBundleManifest.js +12 -4
  51. package/dist/plugin/helpers/getBundleManifest.js.map +1 -1
  52. package/dist/plugin/loader/createBuildLoader.d.ts +1 -1
  53. package/dist/plugin/loader/createBuildLoader.d.ts.map +1 -1
  54. package/dist/plugin/loader/createBuildLoader.js +8 -5
  55. package/dist/plugin/loader/createBuildLoader.js.map +1 -1
  56. package/dist/plugin/loader/css-loader.d.ts.map +1 -1
  57. package/dist/plugin/loader/css-loader.js.map +1 -1
  58. package/dist/plugin/loader/react-loader.js +2 -2
  59. package/dist/plugin/loader/react-loader.js.map +1 -1
  60. package/dist/plugin/preserver/plugin.d.ts.map +1 -1
  61. package/dist/plugin/preserver/plugin.js +49 -14
  62. package/dist/plugin/preserver/plugin.js.map +1 -1
  63. package/dist/plugin/react-client/plugin.d.ts.map +1 -1
  64. package/dist/plugin/react-client/plugin.js +18 -76
  65. package/dist/plugin/react-client/plugin.js.map +1 -1
  66. package/dist/plugin/react-server/index.d.ts.map +1 -1
  67. package/dist/plugin/react-server/index.js +2 -0
  68. package/dist/plugin/react-server/index.js.map +1 -1
  69. package/dist/plugin/react-server/plugin.d.ts +2 -1
  70. package/dist/plugin/react-server/plugin.d.ts.map +1 -1
  71. package/dist/plugin/react-server/plugin.js +53 -217
  72. package/dist/plugin/react-server/plugin.js.map +1 -1
  73. package/dist/plugin/react-static/index.d.ts +2 -0
  74. package/dist/plugin/react-static/index.d.ts.map +1 -0
  75. package/dist/plugin/react-static/index.js +1 -0
  76. package/dist/plugin/react-static/plugin.d.ts +7 -0
  77. package/dist/plugin/react-static/plugin.d.ts.map +1 -0
  78. package/dist/plugin/react-static/plugin.js +199 -0
  79. package/dist/plugin/react-static/plugin.js.map +1 -0
  80. package/dist/plugin/resolvePage.d.ts.map +1 -1
  81. package/dist/plugin/resolvePage.js +9 -0
  82. package/dist/plugin/resolvePage.js.map +1 -1
  83. package/dist/plugin/root.d.ts +2 -0
  84. package/dist/plugin/root.d.ts.map +1 -0
  85. package/dist/plugin/root.js +12 -0
  86. package/dist/plugin/root.js.map +1 -0
  87. package/dist/plugin/transformer/plugin.d.ts.map +1 -1
  88. package/dist/plugin/transformer/plugin.js +32 -23
  89. package/dist/plugin/transformer/plugin.js.map +1 -1
  90. package/dist/plugin/transformer/types.d.ts +1 -18
  91. package/dist/plugin/transformer/types.d.ts.map +1 -1
  92. package/dist/plugin/types.d.ts +24 -6
  93. package/dist/plugin/types.d.ts.map +1 -1
  94. package/dist/plugin/worker/createWorker.js +0 -1
  95. package/dist/plugin/worker/createWorker.js.map +1 -1
  96. package/dist/plugin/worker/html/html-worker.development.d.ts +30 -0
  97. package/dist/plugin/worker/html/html-worker.development.d.ts.map +1 -1
  98. package/dist/plugin/worker/html/html-worker.development.js +30 -2
  99. package/dist/plugin/worker/html/html-worker.development.js.map +1 -1
  100. package/dist/plugin/worker/html/html-worker.production.js +3 -5
  101. package/dist/plugin/worker/html/html-worker.production.js.map +1 -1
  102. package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
  103. package/dist/plugin/worker/html/messageHandler.js +8 -2
  104. package/dist/plugin/worker/html/messageHandler.js.map +1 -1
  105. package/dist/plugin/worker/html/plugin.d.ts.map +1 -1
  106. package/dist/plugin/worker/html/plugin.js +2 -3
  107. package/dist/plugin/worker/html/renderPages.d.ts +8 -4
  108. package/dist/plugin/worker/html/renderPages.d.ts.map +1 -1
  109. package/dist/plugin/worker/html/renderPages.js +118 -83
  110. package/dist/plugin/worker/html/renderPages.js.map +1 -1
  111. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  112. package/dist/plugin/worker/rsc/messageHandler.js +89 -84
  113. package/dist/plugin/worker/rsc/messageHandler.js.map +1 -1
  114. package/dist/plugin/worker/rsc/plugin.d.ts.map +1 -1
  115. package/dist/plugin/worker/rsc/plugin.js +1 -2
  116. package/dist/plugin/worker/rsc/rsc-worker.development.js +13 -18
  117. package/dist/plugin/worker/rsc/rsc-worker.development.js.map +1 -1
  118. package/dist/plugin/worker/rsc/rsc-worker.production.js +4 -1
  119. package/dist/plugin/worker/rsc/rsc-worker.production.js.map +1 -1
  120. package/dist/plugin/worker/rsc/state.d.ts.map +1 -1
  121. package/dist/plugin/worker/rsc/state.js.map +1 -1
  122. package/dist/tsconfig.tsbuildinfo +1 -1
  123. package/package.json +3 -3
  124. package/plugin/checkFilesExist.ts +7 -3
  125. package/plugin/collect-manifest-client-files.ts +152 -0
  126. package/plugin/components.tsx +55 -10
  127. package/plugin/config/defaults.tsx +69 -0
  128. package/plugin/config/getPaths.ts +1 -7
  129. package/plugin/config/mimeTypes.ts +17 -0
  130. package/plugin/config/resolveOptions.ts +48 -40
  131. package/plugin/config/resolvePages.ts +8 -4
  132. package/plugin/config/resolveUserConfig.ts +12 -9
  133. package/plugin/{react-server → helpers}/createHandler.ts +46 -63
  134. package/plugin/helpers/createRscStream.ts +81 -0
  135. package/plugin/helpers/getBundleManifest.ts +14 -5
  136. package/plugin/loader/createBuildLoader.ts +9 -6
  137. package/plugin/loader/css-loader.ts +0 -2
  138. package/plugin/loader/react-loader.ts +2 -2
  139. package/plugin/preserver/plugin.ts +64 -17
  140. package/plugin/react-client/plugin.ts +20 -91
  141. package/plugin/react-server/index.ts +2 -0
  142. package/plugin/react-server/plugin.ts +66 -293
  143. package/plugin/react-static/index.ts +1 -0
  144. package/plugin/react-static/plugin.ts +247 -0
  145. package/plugin/resolvePage.ts +9 -0
  146. package/plugin/root.ts +4 -0
  147. package/plugin/transformer/plugin.ts +40 -31
  148. package/plugin/transformer/types.ts +0 -19
  149. package/plugin/types.ts +25 -6
  150. package/plugin/worker/createWorker.ts +1 -1
  151. package/plugin/worker/html/README.md +63 -0
  152. package/plugin/worker/html/html-worker.development.tsx +89 -2
  153. package/plugin/worker/html/html-worker.production.tsx +8 -10
  154. package/plugin/worker/html/messageHandler.ts +8 -2
  155. package/plugin/worker/html/plugin.ts +2 -3
  156. package/plugin/worker/html/renderPages.ts +150 -114
  157. package/plugin/worker/rsc/README.md +58 -0
  158. package/plugin/worker/rsc/messageHandler.tsx +95 -111
  159. package/plugin/worker/rsc/plugin.ts +1 -2
  160. package/plugin/worker/rsc/rsc-worker.development.ts +12 -22
  161. package/plugin/worker/rsc/rsc-worker.production.ts +5 -1
  162. package/plugin/worker/rsc/state.ts +0 -3
  163. package/scripts/react+0.0.0-experimental-eda36a1c-20250228.patch +114 -12
  164. package/scripts/react-dom+0.0.0-experimental-eda36a1c-20250228.patch +10571 -121
  165. package/tsconfig.json +2 -2
  166. package/dist/plugin/collect-css-manifest.d.ts +0 -4
  167. package/dist/plugin/collect-css-manifest.d.ts.map +0 -1
  168. package/dist/plugin/collect-css-manifest.js +0 -65
  169. package/dist/plugin/collect-css-manifest.js.map +0 -1
  170. package/dist/plugin/config/createModuleIdGenerator.d.ts +0 -11
  171. package/dist/plugin/config/createModuleIdGenerator.d.ts.map +0 -1
  172. package/dist/plugin/config/createModuleIdGenerator.js +0 -44
  173. package/dist/plugin/config/createModuleIdGenerator.js.map +0 -1
  174. package/dist/plugin/loader/createCssLoader.d.ts +0 -30
  175. package/dist/plugin/loader/createCssLoader.d.ts.map +0 -1
  176. package/dist/plugin/loader/createCssLoader.js +0 -35
  177. package/dist/plugin/loader/createPageLoader.d.ts +0 -24
  178. package/dist/plugin/loader/createPageLoader.d.ts.map +0 -1
  179. package/dist/plugin/loader/createPageLoader.js +0 -50
  180. package/dist/plugin/loader/rsc/messageHandler.d.ts +0 -2
  181. package/dist/plugin/loader/rsc/messageHandler.d.ts.map +0 -1
  182. package/dist/plugin/loader/rsc/messageHandler.js +0 -1
  183. package/dist/plugin/loader/rsc/rsc-worker.development.d.ts +0 -2
  184. package/dist/plugin/loader/rsc/rsc-worker.development.d.ts.map +0 -1
  185. package/dist/plugin/loader/rsc/rsc-worker.development.js +0 -1
  186. package/dist/plugin/react-server/createHandler.d.ts +0 -17
  187. package/dist/plugin/react-server/createHandler.d.ts.map +0 -1
  188. package/dist/plugin/react-server/createHandler.js.map +0 -1
  189. package/dist/plugin/react-server/createRscStream.d.ts.map +0 -1
  190. package/dist/plugin/react-server/createRscStream.js +0 -70
  191. package/dist/plugin/react-server/createRscStream.js.map +0 -1
  192. package/dist/plugin/react-server/createSsrHandler.d.ts +0 -4
  193. package/dist/plugin/react-server/createSsrHandler.d.ts.map +0 -1
  194. package/dist/plugin/react-server/createSsrHandler.js +0 -95
  195. package/dist/plugin/utils/logger.d.ts +0 -9
  196. package/dist/plugin/utils/logger.d.ts.map +0 -1
  197. package/dist/plugin/utils/logger.js +0 -68
  198. package/dist/plugin/utils/logger.js.map +0 -1
  199. package/plugin/collect-css-manifest.ts +0 -82
  200. package/plugin/config/createModuleIdGenerator.ts +0 -52
  201. package/plugin/config/defaults.ts +0 -51
  202. package/plugin/loader/createCssLoader.ts +0 -73
  203. package/plugin/loader/createPageLoader.ts +0 -103
  204. package/plugin/loader/rsc/messageHandler.tsx +0 -1
  205. package/plugin/loader/rsc/rsc-worker.development.ts +0 -1
  206. package/plugin/react-server/createRscStream.ts +0 -86
  207. package/plugin/react-server/createSsrHandler.ts +0 -125
  208. package/plugin/utils/logger.ts +0 -52
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sources":["../../plugin/components.tsx"],"sourcesContent":["import React from \"react\";\n/**\n * A component that emits <link> tags for CSS files during streaming.\n * The high precedence ensures they bubble up to the document head.\n */\nexport function CssCollector({\n children,\n cssFiles,\n moduleBaseUrl,\n route = \"/\"\n}: {\n children?: React.ReactNode;\n cssFiles: string[];\n moduleBaseUrl?: string;\n route?: string;\n}) {\n // Calculate depth and prefix based on route\n const depth = route.split('/').filter(Boolean).length ;\n const prefix = depth > 0 ? '../'.repeat(depth) : './';\n const base = typeof moduleBaseUrl === 'string' && moduleBaseUrl !== '' ? moduleBaseUrl : prefix;\n\n return React.createElement(\n React.Fragment,\n null,\n ...cssFiles.map((css) => {\n try {\n if(moduleBaseUrl) {\n new URL(css, moduleBaseUrl);\n } else {\n new URL(`file://${base}${css}`);\n }\n } catch (error) {\n return React.createElement('style', {type: 'text/css'}, \n css\n );\n }\n // Handle different types of paths\n let url = css;\n if (css.startsWith('http') || css.startsWith('data:')) {\n // Keep absolute URLs as is\n url = css;\n } else if (css.startsWith('/')) {\n // Convert absolute paths to relative\n url = base + css.slice(1);\n } else if (!css.startsWith('./') && !css.startsWith('../')) {\n // Add prefix to relative paths that don't start with ./ or ../\n url = base + css;\n }\n \n return React.createElement(\"link\", {\n key: css,\n rel: \"stylesheet\",\n href: url,\n precedence: \"high\",\n });\n }),\n children\n );\n}\n"],"names":["React"],"mappings":";;;;;;;AAKO,SAAS,YAAa,CAAA;AAAA,EAC3B,QAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA;AAAA,EACA,KAAQ,GAAA;AACV,CAKG,EAAA;AAED,EAAA,MAAM,QAAQ,KAAM,CAAA,KAAA,CAAM,GAAG,CAAE,CAAA,MAAA,CAAO,OAAO,CAAE,CAAA,MAAA;AAC/C,EAAA,MAAM,SAAS,KAAQ,GAAA,CAAA,GAAI,KAAM,CAAA,MAAA,CAAO,KAAK,CAAI,GAAA,IAAA;AACjD,EAAA,MAAM,OAAO,OAAO,aAAA,KAAkB,QAAY,IAAA,aAAA,KAAkB,KAAK,aAAgB,GAAA,MAAA;AAEzF,EAAA,OAAOA,cAAM,CAAA,aAAA;AAAA,IACXA,cAAM,CAAA,QAAA;AAAA,IACN,IAAA;AAAA,IACA,GAAG,QAAA,CAAS,GAAI,CAAA,CAAC,GAAQ,KAAA;AACvB,MAAI,IAAA;AACF,QAAA,IAAG,aAAe,EAAA;AAChB,UAAI,IAAA,GAAA,CAAI,KAAK,aAAa,CAAA;AAAA,SACrB,MAAA;AACL,UAAA,IAAI,GAAI,CAAA,CAAA,OAAA,EAAU,IAAI,CAAA,EAAG,GAAG,CAAE,CAAA,CAAA;AAAA;AAChC,eACO,KAAO,EAAA;AACd,QAAA,OAAOA,cAAM,CAAA,aAAA;AAAA,UAAc,OAAA;AAAA,UAAS,EAAC,MAAM,UAAU,EAAA;AAAA,UACnD;AAAA,SACF;AAAA;AAGF,MAAA,IAAI,GAAM,GAAA,GAAA;AACV,MAAA,IAAI,IAAI,UAAW,CAAA,MAAM,KAAK,GAAI,CAAA,UAAA,CAAW,OAAO,CAAG,EAAA;AAErD,QAAM,GAAA,GAAA,GAAA;AAAA,OACG,MAAA,IAAA,GAAA,CAAI,UAAW,CAAA,GAAG,CAAG,EAAA;AAE9B,QAAM,GAAA,GAAA,IAAA,GAAO,GAAI,CAAA,KAAA,CAAM,CAAC,CAAA;AAAA,OAC1B,MAAA,IAAW,CAAC,GAAA,CAAI,UAAW,CAAA,IAAI,KAAK,CAAC,GAAA,CAAI,UAAW,CAAA,KAAK,CAAG,EAAA;AAE1D,QAAA,GAAA,GAAM,IAAO,GAAA,GAAA;AAAA;AAGf,MAAO,OAAAA,cAAA,CAAM,cAAc,MAAQ,EAAA;AAAA,QACjC,GAAK,EAAA,GAAA;AAAA,QACL,GAAK,EAAA,YAAA;AAAA,QACL,IAAM,EAAA,GAAA;AAAA,QACN,UAAY,EAAA;AAAA,OACb,CAAA;AAAA,KACF,CAAA;AAAA,IACD;AAAA,GACF;AACF;;;;"}
@@ -1,23 +1,24 @@
1
+ import React from "react";
1
2
  export declare const DEFAULT_CONFIG: {
2
3
  readonly FILE_REGEX: RegExp;
3
4
  readonly CLIENT_ASSETS_DIR: "assets";
4
5
  readonly RSC_DIR: "rsc";
5
6
  readonly MODULE_BASE: "src";
6
- readonly MODULE_BASE_PATH: "/src";
7
- readonly MODULE_BASE_URL: "/src";
7
+ readonly MODULE_BASE_PATH: "";
8
+ readonly MODULE_BASE_URL: "";
8
9
  readonly PAGE: "src/page/page.tsx";
9
10
  readonly PROPS: "src/page/props.ts";
10
11
  readonly CLIENT_ENTRY: "src/client.tsx";
11
12
  readonly SERVER_ENTRY: "src/server.tsx";
12
13
  readonly PAGE_EXPORT_NAME: "Page";
13
14
  readonly PROPS_EXPORT_NAME: "props";
14
- readonly HTML_WORKER_PATH: "node_modules/vite-plugin-react-server/dist/plugin/worker/html/html-worker.production.js" | "node_modules/vite-plugin-react-server/dist/plugin/worker/html/html-worker.development.js";
15
- readonly RSC_WORKER_PATH: "node_modules/vite-plugin-react-server/dist/plugin/worker/rsc/rsc-worker.production.js" | "node_modules/vite-plugin-react-server/dist/plugin/worker/rsc/rsc-worker.development.js";
16
- readonly LOADER_PATH: "node_modules/vite-plugin-react-server/dist/plugin/worker/loader.js";
15
+ readonly HTML_WORKER_PATH: "worker/html/html-worker.production.js" | "worker/html/html-worker.development.js";
16
+ readonly RSC_WORKER_PATH: "worker/rsc/rsc-worker.production.js" | "worker/rsc/rsc-worker.development.js";
17
+ readonly LOADER_PATH: "worker/loader.js";
17
18
  readonly RSC_EXTENSION: ".rsc";
18
19
  readonly HTML: ({ children }: {
19
20
  children: any;
20
- }) => any;
21
+ }) => React.JSX.Element;
21
22
  readonly COLLECT_CSS: true;
22
23
  readonly COLLECT_ASSETS: true;
23
24
  readonly DEV_PORT: 5173;
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../plugin/config/defaults.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;kCAiBJ;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE;;;;;;;;;;;;;;;;;;;qCAmBR,MAAM,EAAE;;oCAEjB,MAAM;kCACR,MAAM;mCACL,MAAM;uCACF,MAAM;sCACP,MAAM;iCACX,MAAM;uCACA,MAAM;oCACT,MAAM;kCACR,MAAM;kCACN,MAAM;;6BAET,MAAM;CACd,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../plugin/config/defaults.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;kCAqBJ;QAAE,QAAQ,EAAE,GAAG,CAAA;KAAE;;;;;;;;;;;;;;;;;;;qCA0BR,MAAM,EAAE;;oCAEjB,MAAM;kCACR,MAAM;mCAEL,MAAM;uCAEF,MAAM;sCAEP,MAAM;iCAEX,MAAM;uCACA,MAAM;oCACT,MAAM;kCAGR,MAAM;kCACN,MAAM;;6BAET,MAAM;CACd,CAAC"}
@@ -3,21 +3,24 @@
3
3
  * Copyright (c) Nico Brinkkemper
4
4
  * MIT License
5
5
  */
6
+ import React__default from 'react';
7
+
6
8
  const DEFAULT_CONFIG = {
7
9
  FILE_REGEX: /\.(m|c)?(j|t)sx?$/,
8
10
  CLIENT_ASSETS_DIR: "assets",
9
11
  MODULE_BASE: "src",
10
- MODULE_BASE_URL: "/src",
12
+ MODULE_BASE_PATH: "",
13
+ MODULE_BASE_URL: "",
11
14
  PAGE: "src/page/page.tsx",
12
15
  PROPS: "src/page/props.ts",
13
16
  CLIENT_ENTRY: "src/client.tsx",
14
17
  SERVER_ENTRY: "src/server.tsx",
15
18
  PAGE_EXPORT_NAME: "Page",
16
19
  PROPS_EXPORT_NAME: "props",
17
- HTML_WORKER_PATH: `node_modules/vite-plugin-react-server/dist/plugin/worker/html/html-worker.${process.env["NODE_ENV"] === "development" ? "development" : "production"}.js`,
18
- RSC_WORKER_PATH: `node_modules/vite-plugin-react-server/dist/plugin/worker/rsc/rsc-worker.${process.env["NODE_ENV"] === "development" ? "development" : "production"}.js`,
19
- LOADER_PATH: "node_modules/vite-plugin-react-server/dist/plugin/worker/loader.js",
20
- HTML: ({ children }) => children,
20
+ HTML_WORKER_PATH: `worker/html/html-worker.${process.env["NODE_ENV"] === "development" ? "development" : "production"}.js`,
21
+ RSC_WORKER_PATH: `worker/rsc/rsc-worker.${process.env["NODE_ENV"] === "development" ? "development" : "production"}.js`,
22
+ LOADER_PATH: "worker/loader.js",
23
+ HTML: ({ children }) => /* @__PURE__ */ React__default.createElement("html", null, /* @__PURE__ */ React__default.createElement("head", null), /* @__PURE__ */ React__default.createElement("body", null, /* @__PURE__ */ React__default.createElement("div", { id: "root" }, children))),
21
24
  COLLECT_CSS: true,
22
25
  COLLECT_ASSETS: true,
23
26
  BUILD: {
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sources":["../../../plugin/config/defaults.ts"],"sourcesContent":["export const DEFAULT_CONFIG = {\n FILE_REGEX: /\\.(m|c)?(j|t)sx?$/,\n CLIENT_ASSETS_DIR: \"assets\",\n RSC_DIR: \"rsc\",\n MODULE_BASE: \"src\",\n MODULE_BASE_PATH: \"/src\",\n MODULE_BASE_URL: \"/src\",\n PAGE: \"src/page/page.tsx\",\n PROPS: \"src/page/props.ts\",\n CLIENT_ENTRY: \"src/client.tsx\",\n SERVER_ENTRY: \"src/server.tsx\",\n PAGE_EXPORT_NAME: \"Page\",\n PROPS_EXPORT_NAME: \"props\",\n HTML_WORKER_PATH: `node_modules/vite-plugin-react-server/dist/plugin/worker/html/html-worker.${process.env['NODE_ENV'] === 'development' ? 'development' : 'production'}.js`,\n RSC_WORKER_PATH: `node_modules/vite-plugin-react-server/dist/plugin/worker/rsc/rsc-worker.${process.env['NODE_ENV'] === 'development' ? 'development' : 'production'}.js`,\n LOADER_PATH: 'node_modules/vite-plugin-react-server/dist/plugin/worker/loader.js',\n RSC_EXTENSION: \".rsc\",\n HTML: ({ children }: { children: any }) => children,\n COLLECT_CSS: true,\n COLLECT_ASSETS: true,\n DEV_PORT: 5173,\n PREVIEW_PORT: 4173,\n DEV_HOST: \"localhost\",\n PREVIEW_HOST: \"localhost\",\n ENV_PREFIX: \"VITE_\",\n BUILD: {\n pages: () => [\"/\"],\n client: \"client\",\n server: \"server\",\n static: \"static\",\n api: \"api\",\n outDir: \"dist\",\n assetsDir: \"assets\",\n hash: \"hash\",\n preserveModulesRoot: true,\n },\n MODULE_BASE_EXCEPTIONS: [] as string[],\n AUTO_DISCOVER: {\n modulePattern: (n: string) => DEFAULT_CONFIG.FILE_REGEX.test(n),\n pagePattern: (n: string) => n.toLowerCase().endsWith('/page') || n.toLowerCase() === 'page',\n propsPattern: (n: string) => n.toLowerCase().endsWith('/props') || n.toLowerCase() === 'props',\n clientComponents: (n: string) => n.toLowerCase().endsWith('.client') || n.toLowerCase() === 'client',\n serverFunctions: (n: string) => n.toLowerCase().endsWith('.server') || n.toLowerCase() === 'server',\n cssPattern: (n: string) => n.toLowerCase().endsWith('.css'),\n cssModulePattern: (n: string) => n.toLowerCase().endsWith('.css.js'),\n vendorPattern: (n: string) => n.toLowerCase().startsWith('node_modules') || n.toLowerCase().startsWith('_virtual'),\n htmlPattern: (n: string) => n.toLowerCase().endsWith('.html'),\n jsonPattern: (n: string) => n.toLowerCase().endsWith('.json'),\n },\n MODULE_ID: (id: string) => id,\n} as const; "],"names":[],"mappings":";;;;;AAAO,MAAM,cAAiB,GAAA;AAAA,EAC5B,UAAY,EAAA,mBAAA;AAAA,EACZ,iBAAmB,EAAA,QAAA;AAAA,EAEnB,WAAa,EAAA,KAAA;AAAA,EAEb,eAAiB,EAAA,MAAA;AAAA,EACjB,IAAM,EAAA,mBAAA;AAAA,EACN,KAAO,EAAA,mBAAA;AAAA,EACP,YAAc,EAAA,gBAAA;AAAA,EACd,YAAc,EAAA,gBAAA;AAAA,EACd,gBAAkB,EAAA,MAAA;AAAA,EAClB,iBAAmB,EAAA,OAAA;AAAA,EACnB,gBAAA,EAAkB,6EAA6E,OAAQ,CAAA,GAAA,CAAI,UAAU,CAAM,KAAA,aAAA,GAAgB,gBAAgB,YAAY,CAAA,GAAA,CAAA;AAAA,EACvK,eAAA,EAAiB,2EAA2E,OAAQ,CAAA,GAAA,CAAI,UAAU,CAAM,KAAA,aAAA,GAAgB,gBAAgB,YAAY,CAAA,GAAA,CAAA;AAAA,EACpK,WAAa,EAAA,oEAAA;AAAA,EAEb,IAAM,EAAA,CAAC,EAAE,QAAA,EAAkC,KAAA,QAAA;AAAA,EAC3C,WAAa,EAAA,IAAA;AAAA,EACb,cAAgB,EAAA,IAAA;AAAA,EAMhB,KAAO,EAAA;AAAA,IACL,KAAA,EAAO,MAAM,CAAC,GAAG,CAAA;AAAA,IACjB,MAAQ,EAAA,QAAA;AAAA,IACR,MAAQ,EAAA,QAAA;AAAA,IACR,MAAQ,EAAA,QAAA;AAAA,IACR,GAAK,EAAA,KAAA;AAAA,IACL,MAAQ,EAAA,MAAA;AAAA,IAER,IAAM,EAAA,MAAA;AAAA,IACN,mBAAqB,EAAA;AAAA,GACvB;AAAA,EAEA,aAAe,EAAA;AAAA,IACb,eAAe,CAAC,CAAA,KAAc,cAAe,CAAA,UAAA,CAAW,KAAK,CAAC,CAAA;AAAA,IAC9D,WAAA,EAAa,CAAC,CAAA,KAAc,CAAE,CAAA,WAAA,EAAc,CAAA,QAAA,CAAS,OAAO,CAAA,IAAK,CAAE,CAAA,WAAA,EAAkB,KAAA,MAAA;AAAA,IACrF,YAAA,EAAc,CAAC,CAAA,KAAc,CAAE,CAAA,WAAA,EAAc,CAAA,QAAA,CAAS,QAAQ,CAAA,IAAK,CAAE,CAAA,WAAA,EAAkB,KAAA,OAAA;AAAA,IACvF,gBAAA,EAAkB,CAAC,CAAA,KAAc,CAAE,CAAA,WAAA,EAAc,CAAA,QAAA,CAAS,SAAS,CAAA,IAAK,CAAE,CAAA,WAAA,EAAkB,KAAA,QAAA;AAAA,IAC5F,eAAA,EAAiB,CAAC,CAAA,KAAc,CAAE,CAAA,WAAA,EAAc,CAAA,QAAA,CAAS,SAAS,CAAA,IAAK,CAAE,CAAA,WAAA,EAAkB,KAAA,QAAA;AAAA,IAC3F,YAAY,CAAC,CAAA,KAAc,EAAE,WAAY,EAAA,CAAE,SAAS,MAAM,CAAA;AAAA,IAC1D,kBAAkB,CAAC,CAAA,KAAc,EAAE,WAAY,EAAA,CAAE,SAAS,SAAS,CAAA;AAAA,IACnE,aAAe,EAAA,CAAC,CAAc,KAAA,CAAA,CAAE,WAAY,EAAA,CAAE,UAAW,CAAA,cAAc,CAAK,IAAA,CAAA,CAAE,WAAY,EAAA,CAAE,WAAW,UAAU,CAAA;AAAA,IACjH,aAAa,CAAC,CAAA,KAAc,EAAE,WAAY,EAAA,CAAE,SAAS,OAAO,CAAA;AAAA,IAC5D,aAAa,CAAC,CAAA,KAAc,EAAE,WAAY,EAAA,CAAE,SAAS,OAAO;AAAA,GAGhE;;;;"}
1
+ {"version":3,"file":"defaults.js","sources":["../../../plugin/config/defaults.tsx"],"sourcesContent":["import React from \"react\";\nexport const DEFAULT_CONFIG = {\n FILE_REGEX: /\\.(m|c)?(j|t)sx?$/,\n CLIENT_ASSETS_DIR: \"assets\",\n RSC_DIR: \"rsc\",\n MODULE_BASE: \"src\",\n MODULE_BASE_PATH: \"\",\n MODULE_BASE_URL: \"\",\n PAGE: \"src/page/page.tsx\",\n PROPS: \"src/page/props.ts\",\n CLIENT_ENTRY: \"src/client.tsx\",\n SERVER_ENTRY: \"src/server.tsx\",\n PAGE_EXPORT_NAME: \"Page\",\n PROPS_EXPORT_NAME: \"props\",\n HTML_WORKER_PATH: `worker/html/html-worker.${\n process.env[\"NODE_ENV\"] === \"development\" ? \"development\" : \"production\"\n }.js`,\n RSC_WORKER_PATH: `worker/rsc/rsc-worker.${\n process.env[\"NODE_ENV\"] === \"development\" ? \"development\" : \"production\"\n }.js`,\n LOADER_PATH: \"worker/loader.js\",\n RSC_EXTENSION: \".rsc\",\n HTML: ({ children }: { children: any }) => (\n <html>\n <head></head>\n <body>\n <div id=\"root\">{children}</div>\n </body>\n </html>\n ),\n COLLECT_CSS: true,\n COLLECT_ASSETS: true,\n DEV_PORT: 5173,\n PREVIEW_PORT: 4173,\n DEV_HOST: \"localhost\",\n PREVIEW_HOST: \"localhost\",\n ENV_PREFIX: \"VITE_\",\n BUILD: {\n pages: () => [\"/\"],\n client: \"client\",\n server: \"server\",\n static: \"static\",\n api: \"api\",\n outDir: \"dist\",\n assetsDir: \"assets\",\n hash: \"hash\",\n preserveModulesRoot: true,\n },\n MODULE_BASE_EXCEPTIONS: [] as string[],\n AUTO_DISCOVER: {\n modulePattern: (n: string) => DEFAULT_CONFIG.FILE_REGEX.test(n),\n pagePattern: (n: string) =>\n n.toLowerCase().endsWith(\"/page\") || n.toLowerCase() === \"page\",\n propsPattern: (n: string) =>\n n.toLowerCase().endsWith(\"/props\") || n.toLowerCase() === \"props\",\n clientComponents: (n: string) =>\n n.toLowerCase().endsWith(\".client\") || n.toLowerCase() === \"client\",\n serverFunctions: (n: string) =>\n n.toLowerCase().endsWith(\".server\") || n.toLowerCase() === \"server\",\n cssPattern: (n: string) => n.toLowerCase().endsWith(\".css\"),\n cssModulePattern: (n: string) => n.toLowerCase().endsWith(\".css.js\"),\n vendorPattern: (n: string) =>\n n.toLowerCase().startsWith(\"node_modules\") ||\n n.toLowerCase().startsWith(\"_virtual\"),\n htmlPattern: (n: string) => n.toLowerCase().endsWith(\".html\"),\n jsonPattern: (n: string) => n.toLowerCase().endsWith(\".json\"),\n },\n MODULE_ID: (id: string) => id,\n} as const;\n"],"names":["React"],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  export declare const getNodePath: (root?: string) => string;
2
- export declare const getPluginRoot: () => string;
3
2
  export declare const getMode: () => "production" | "development" | "test";
4
3
  export declare const getDistDir: (mode: "production" | "development" | "test") => string;
5
4
  //# sourceMappingURL=getPaths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPaths.d.ts","sourceRoot":"","sources":["../../../plugin/config/getPaths.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,UAAU,MAAM,KAAmB,MAE1D,CAAA;AAED,eAAO,MAAM,aAAa,QAAO,MAGhC,CAAA;AAED,eAAO,MAAM,OAAO,QAAO,YAAY,GAAG,aAAa,GAAG,MAMzD,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,YAAY,GAAG,aAAa,GAAG,MAAM,KAAG,MAIxE,CAAA"}
1
+ {"version":3,"file":"getPaths.d.ts","sourceRoot":"","sources":["../../../plugin/config/getPaths.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,UAAU,MAAM,KAAmB,MAE1D,CAAA;AAED,eAAO,MAAM,OAAO,QAAO,YAAY,GAAG,aAAa,GAAG,MAMzD,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,YAAY,GAAG,aAAa,GAAG,MAAM,KAAG,MAIxE,CAAA"}
@@ -3,19 +3,14 @@
3
3
  * Copyright (c) Nico Brinkkemper
4
4
  * MIT License
5
5
  */
6
- import { dirname, join } from 'node:path';
7
- import { fileURLToPath } from 'node:url';
6
+ import { join } from 'node:path';
8
7
 
9
8
  const getNodePath = (root = process.cwd()) => {
10
9
  return process.env["module_root"] ?? join(root, "node_modules");
11
10
  };
12
- const getPluginRoot = () => {
13
- const __dirname = dirname(fileURLToPath(import.meta.url));
14
- return join(__dirname, "..");
15
- };
16
11
  const getMode = () => {
17
12
  return process.env["NODE_ENV"] === "development" ? "development" : process.env["NODE_ENV"] === "test" ? "test" : "production";
18
13
  };
19
14
 
20
- export { getMode, getNodePath, getPluginRoot };
15
+ export { getMode, getNodePath };
21
16
  //# sourceMappingURL=getPaths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPaths.js","sources":["../../../plugin/config/getPaths.ts"],"sourcesContent":["import { join, dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nexport const getNodePath = (root: string = process.cwd()): string => {\n return process.env['module_root'] ?? join(root, \"node_modules\");\n}\n\nexport const getPluginRoot = (): string => {\n const __dirname = dirname(fileURLToPath(import.meta.url));\n return join(__dirname, '..');\n}\n\nexport const getMode = (): \"production\" | \"development\" | \"test\" => {\n return process.env['NODE_ENV'] === \"development\" \n ? \"development\" \n : process.env['NODE_ENV'] === \"test\" \n ? \"test\" \n : \"production\";\n}\n\nexport const getDistDir = (mode: \"production\" | \"development\" | \"test\"): string => {\n return mode === 'production' \n ? join(process.cwd(), 'dist') \n : join(process.cwd(), 'test/fixtures/dist');\n} \n"],"names":[],"mappings":";;;;;;;;AAGO,MAAM,WAAc,GAAA,CAAC,IAAe,GAAA,OAAA,CAAQ,KAAkB,KAAA;AACnE,EAAA,OAAO,QAAQ,GAAI,CAAA,aAAa,CAAK,IAAA,IAAA,CAAK,MAAM,cAAc,CAAA;AAChE;AAEO,MAAM,gBAAgB,MAAc;AACzC,EAAA,MAAM,SAAY,GAAA,OAAA,CAAQ,aAAc,CAAA,MAAA,CAAA,IAAA,CAAY,GAAG,CAAC,CAAA;AACxD,EAAO,OAAA,IAAA,CAAK,WAAW,IAAI,CAAA;AAC7B;AAEO,MAAM,UAAU,MAA6C;AAClE,EAAO,OAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAM,KAAA,aAAA,GAC/B,aACA,GAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAM,KAAA,MAAA,GAC1B,MACA,GAAA,YAAA;AACR;;;;"}
1
+ {"version":3,"file":"getPaths.js","sources":["../../../plugin/config/getPaths.ts"],"sourcesContent":["import { join } from 'node:path';\n\nexport const getNodePath = (root: string = process.cwd()): string => {\n return process.env['module_root'] ?? join(root, \"node_modules\");\n}\n\nexport const getMode = (): \"production\" | \"development\" | \"test\" => {\n return process.env['NODE_ENV'] === \"development\" \n ? \"development\" \n : process.env['NODE_ENV'] === \"test\" \n ? \"test\" \n : \"production\";\n}\n\nexport const getDistDir = (mode: \"production\" | \"development\" | \"test\"): string => {\n return mode === 'production' \n ? join(process.cwd(), 'dist') \n : join(process.cwd(), 'test/fixtures/dist');\n} \n"],"names":[],"mappings":";;;;;;;AAEO,MAAM,WAAc,GAAA,CAAC,IAAe,GAAA,OAAA,CAAQ,KAAkB,KAAA;AACnE,EAAA,OAAO,QAAQ,GAAI,CAAA,aAAa,CAAK,IAAA,IAAA,CAAK,MAAM,cAAc,CAAA;AAChE;AAEO,MAAM,UAAU,MAA6C;AAClE,EAAO,OAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAM,KAAA,aAAA,GAC/B,aACA,GAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAM,KAAA,MAAA,GAC1B,MACA,GAAA,YAAA;AACR;;;;"}
@@ -0,0 +1,2 @@
1
+ export declare const MIME_TYPES: Record<string, string>;
2
+ //# sourceMappingURL=mimeTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mimeTypes.d.ts","sourceRoot":"","sources":["../../../plugin/config/mimeTypes.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAe3C,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * vite-plugin-react-server
3
+ * Copyright (c) Nico Brinkkemper
4
+ * MIT License
5
+ */
6
+ const MIME_TYPES = {
7
+ ".html": "text/html",
8
+ ".css": "text/css",
9
+ ".js": "application/javascript",
10
+ ".json": "application/json",
11
+ ".png": "image/png",
12
+ ".jpg": "image/jpeg",
13
+ ".jpeg": "image/jpeg",
14
+ ".gif": "image/gif",
15
+ ".svg": "image/svg+xml",
16
+ ".ico": "image/x-icon",
17
+ ".woff": "font/woff",
18
+ ".woff2": "font/woff2",
19
+ ".ttf": "font/ttf",
20
+ ".rsc": "text/x-component"
21
+ };
22
+
23
+ export { MIME_TYPES };
24
+ //# sourceMappingURL=mimeTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mimeTypes.js","sources":["../../../plugin/config/mimeTypes.ts"],"sourcesContent":["\nexport const MIME_TYPES: Record<string, string> = {\n '.html': 'text/html',\n '.css': 'text/css',\n '.js': 'application/javascript',\n '.json': 'application/json',\n '.png': 'image/png',\n '.jpg': 'image/jpeg',\n '.jpeg': 'image/jpeg',\n '.gif': 'image/gif',\n '.svg': 'image/svg+xml',\n '.ico': 'image/x-icon',\n '.woff': 'font/woff',\n '.woff2': 'font/woff2',\n '.ttf': 'font/ttf',\n '.rsc': 'text/x-component'\n };"],"names":[],"mappings":";;;;;AACO,MAAM,UAAqC,GAAA;AAAA,EAC9C,OAAS,EAAA,WAAA;AAAA,EACT,MAAQ,EAAA,UAAA;AAAA,EACR,KAAO,EAAA,wBAAA;AAAA,EACP,OAAS,EAAA,kBAAA;AAAA,EACT,MAAQ,EAAA,WAAA;AAAA,EACR,MAAQ,EAAA,YAAA;AAAA,EACR,OAAS,EAAA,YAAA;AAAA,EACT,MAAQ,EAAA,WAAA;AAAA,EACR,MAAQ,EAAA,eAAA;AAAA,EACR,MAAQ,EAAA,cAAA;AAAA,EACR,OAAS,EAAA,WAAA;AAAA,EACT,QAAU,EAAA,YAAA;AAAA,EACV,MAAQ,EAAA,UAAA;AAAA,EACR,MAAQ,EAAA;AACV;;;;"}
@@ -1,5 +1,5 @@
1
1
  import type { StreamPluginOptions, ResolvedUserOptions } from "../types.js";
2
- export declare const resolveOptions: (options: StreamPluginOptions, isClient?: boolean) => {
2
+ export declare const resolveOptions: (options: StreamPluginOptions, isClient: boolean) => {
3
3
  type: "success";
4
4
  userOptions: ResolvedUserOptions;
5
5
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"resolveOptions.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAoD5E,eAAO,MAAM,cAAc,YAChB,mBAAmB,aAClB,OAAO,KAEf;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,mBAAmB,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CA8ShC,CAAC"}
1
+ {"version":3,"file":"resolveOptions.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAoD5E,eAAO,MAAM,cAAc,YAChB,mBAAmB,YAClB,OAAO,KAEf;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,mBAAmB,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAsThC,CAAC"}
@@ -4,8 +4,8 @@
4
4
  * MIT License
5
5
  */
6
6
  import { DEFAULT_CONFIG } from './defaults.js';
7
- import { createModuleIdGenerator } from './createModuleIdGenerator.js';
8
- import 'vite';
7
+ import { join } from 'node:path';
8
+ import { pluginRoot } from '../root.js';
9
9
 
10
10
  const resolveAutoDiscoverMatcher = (options, fallback) => {
11
11
  if (!options) {
@@ -37,10 +37,10 @@ const handleSearchQuery = (path) => {
37
37
  const filename = path.split("/").pop();
38
38
  return `${folder}/${filename}?${searchQuery}`;
39
39
  };
40
- const applyPattern = (path, pattern, fallback) => {
40
+ const applyPattern = (path, _pattern, _fallback) => {
41
41
  return path;
42
42
  };
43
- const resolveOptions = (options, isClient = false) => {
43
+ const resolveOptions = (options, isClient) => {
44
44
  const projectRoot = options.projectRoot ?? process.cwd();
45
45
  const {
46
46
  pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,
@@ -111,6 +111,21 @@ const resolveOptions = (options, isClient = false) => {
111
111
  );
112
112
  const preserveModulesRoot = options.build?.preserveModulesRoot ?? DEFAULT_CONFIG.BUILD.preserveModulesRoot;
113
113
  const hashOption = typeof options.build?.hash === "string" ? options.build.hash : DEFAULT_CONFIG.BUILD.hash;
114
+ const hashString = hashOption === "" ? "" : `-[${hashOption}]`;
115
+ const hash = (n) => {
116
+ if (!n) return "";
117
+ if (hashString === "" || !isClient && !n.endsWith(".css") && !n.endsWith(".json")) {
118
+ return n;
119
+ }
120
+ const extensionIndex = n.lastIndexOf(".");
121
+ if (extensionIndex !== -1) {
122
+ const extension = n.slice(extensionIndex);
123
+ const filename = n.slice(0, extensionIndex);
124
+ return filename + hashString + extension;
125
+ } else {
126
+ return n + hashString;
127
+ }
128
+ };
114
129
  const getOutputPath = (n) => {
115
130
  if (!n) return "";
116
131
  let path = handleSearchQuery(n);
@@ -119,13 +134,17 @@ const resolveOptions = (options, isClient = false) => {
119
134
  return path;
120
135
  }
121
136
  if (testCssModule(path)) {
122
- return applyPattern(path, options.autoDiscover?.cssModulePattern);
137
+ return applyPattern(
138
+ path,
139
+ options.autoDiscover?.cssModulePattern);
123
140
  }
124
141
  if (testCss(path)) {
125
142
  return applyPattern(path, options.autoDiscover?.cssPattern);
126
143
  }
127
144
  if (testClientComponents(path)) {
128
- return applyPattern(path, options.autoDiscover?.clientComponents);
145
+ return applyPattern(
146
+ path,
147
+ options.autoDiscover?.clientComponents);
129
148
  }
130
149
  if (testHtml(path)) {
131
150
  return applyPattern(path, options.autoDiscover?.htmlPattern);
@@ -148,7 +167,9 @@ const resolveOptions = (options, isClient = false) => {
148
167
  );
149
168
  }
150
169
  if (testServerFunctions(path)) {
151
- return applyPattern(path, options.autoDiscover?.serverFunctions);
170
+ return applyPattern(
171
+ path,
172
+ options.autoDiscover?.serverFunctions);
152
173
  }
153
174
  if (testModulePattern(path)) {
154
175
  return path;
@@ -159,18 +180,18 @@ const resolveOptions = (options, isClient = false) => {
159
180
  if (testVendor(n.name)) {
160
181
  const search = n.facadeModuleId?.split("?")[1];
161
182
  if (search) {
162
- return `${n.name}.${search}.js`;
183
+ return hash(`${n.name}.${search}.js`);
163
184
  } else {
164
- return n.name + ".js";
185
+ return hash(`${n.name}.js`);
165
186
  }
166
187
  }
167
- return addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name))));
188
+ return hash(addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name)))));
168
189
  };
169
190
  const chunkFile = (n) => {
170
- return addJS(getOutputPath(ensureModuleBase(ensureNoRoot("_" + n.name))));
191
+ return hash(addJS(getOutputPath(ensureModuleBase(ensureNoRoot("_" + n.name)))));
171
192
  };
172
193
  const assetFile = (n) => {
173
- return getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0])));
194
+ return hash(getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0]))));
174
195
  };
175
196
  const build = typeof options.build === "object" && options.build !== null ? {
176
197
  pages,
@@ -200,8 +221,11 @@ const resolveOptions = (options, isClient = false) => {
200
221
  assetFile
201
222
  };
202
223
  const moduleBase = typeof options.moduleBase === "string" ? options.moduleBase : DEFAULT_CONFIG.MODULE_BASE;
203
- const moduleBasePath = typeof options.moduleBasePath === "string" ? options.moduleBasePath : options.moduleBase.startsWith("/") ? options.moduleBase : "/" + options.moduleBase;
204
- const moduleBaseURL = typeof options.moduleBaseURL === "string" ? options.moduleBaseURL : moduleBasePath ?? DEFAULT_CONFIG.MODULE_BASE_URL;
224
+ const moduleBasePath = typeof options.moduleBasePath === "string" ? options.moduleBasePath : DEFAULT_CONFIG.MODULE_BASE_PATH;
225
+ const moduleBaseURL = typeof options.moduleBaseURL === "string" ? options.moduleBaseURL : DEFAULT_CONFIG.MODULE_BASE_URL;
226
+ const rscWorkerPath = typeof options.rscWorkerPath === "string" ? join(projectRoot, options.rscWorkerPath) : join(pluginRoot, DEFAULT_CONFIG.RSC_WORKER_PATH);
227
+ const htmlWorkerPath = typeof options.htmlWorkerPath === "string" ? join(projectRoot, options.htmlWorkerPath) : join(pluginRoot, DEFAULT_CONFIG.HTML_WORKER_PATH);
228
+ const loaderPath = typeof options.loaderPath === "string" ? join(projectRoot, options.loaderPath) : join(pluginRoot, DEFAULT_CONFIG.LOADER_PATH);
205
229
  const autoDiscover = {
206
230
  modulePattern: testModulePattern,
207
231
  cssPattern: testCss,
@@ -213,22 +237,11 @@ const resolveOptions = (options, isClient = false) => {
213
237
  cssModulePattern: testCssModule,
214
238
  vendorPattern: testVendor
215
239
  };
216
- const moduleId = typeof options.moduleId === "function" ? options.moduleId : createModuleIdGenerator({
217
- isProduction: process.env["NODE_ENV"] === "production",
218
- inputRoot: projectRoot,
219
- client,
220
- server,
221
- moduleBase,
222
- preserveModulesRoot,
223
- removeExtension: DEFAULT_CONFIG.FILE_REGEX,
224
- imports: {}
225
- });
226
240
  try {
227
241
  return {
228
242
  type: "success",
229
243
  userOptions: {
230
244
  projectRoot,
231
- moduleId,
232
245
  moduleBase,
233
246
  moduleBasePath,
234
247
  moduleBaseURL,
@@ -240,9 +253,9 @@ const resolveOptions = (options, isClient = false) => {
240
253
  propsExportName,
241
254
  collectCss: options.collectCss ?? DEFAULT_CONFIG.COLLECT_CSS,
242
255
  collectAssets: options.collectAssets ?? DEFAULT_CONFIG.COLLECT_ASSETS,
243
- htmlWorkerPath: options.htmlWorkerPath ?? DEFAULT_CONFIG.HTML_WORKER_PATH,
244
- rscWorkerPath: options.rscWorkerPath ?? DEFAULT_CONFIG.RSC_WORKER_PATH,
245
- loaderPath: options.loaderPath ?? DEFAULT_CONFIG.LOADER_PATH,
256
+ htmlWorkerPath,
257
+ rscWorkerPath,
258
+ loaderPath,
246
259
  clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,
247
260
  serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,
248
261
  moduleBaseExceptions: options.moduleBaseExceptions ?? [],
@@ -1 +1 @@
1
- {"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type { StreamPluginOptions, ResolvedUserOptions } from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { createModuleIdGenerator } from \"./createModuleIdGenerator.js\";\nimport { normalizePath } from \"vite\";\n\nconst resolveAutoDiscoverMatcher = (\n options: undefined | string | RegExp | ((path: string) => boolean),\n fallback: RegExp | ((path: string) => boolean)\n) => {\n if (!options) {\n if (typeof fallback === \"function\") {\n return fallback;\n } else {\n return (path: string) => fallback.test(path);\n }\n }\n if (typeof options === \"string\") {\n const matcher = new RegExp(options);\n return (path: string) => matcher.test(path);\n } else if (typeof options === \"function\") {\n return options;\n } else {\n return (path: string) => options.test(path);\n }\n};\n\nconst addJS = (path: string) => {\n if (path.endsWith(\".js\")) return path;\n if (path.endsWith(\"/.\")) return path.slice(0, -2) + \".js\";\n if (path.endsWith(\".\")) return path + \"js\";\n return path + \".js\";\n};\n\nconst handleSearchQuery = (path: string) => {\n // make the query part of the name of the file so it's not ending up like index1, index2, etc.\n const searchQuery = path.split(\"?\")[1];\n if (!searchQuery) return path;\n // add the folder before the filename\n const folder = path.split(\"/\").slice(0, -1).join(\"/\");\n const filename = path.split(\"/\").pop();\n return `${folder}/${filename}?${searchQuery}`;\n};\n\nconst applyPattern = (\n path: string,\n pattern?: string | RegExp | ((path: string) => boolean) | undefined,\n fallback?: string | undefined\n) => {\n // TODO: What to actually do here? I guess we could replace the extension, but it's not needed since we map them from the manifest anyway.\n return path;\n};\n\nexport const resolveOptions = (\n options: StreamPluginOptions,\n isClient: boolean = false\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions }\n | { type: \"error\"; error: Error } => {\n const projectRoot = options.projectRoot ?? process.cwd();\n const {\n pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,\n propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME,\n } = options;\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ?? `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n const ensureModuleBase = (n: string | null) => {\n if (!n) return \"\";\n return n.startsWith(moduleBase + \"/\") ? n.slice(moduleBase.length + 1) : n;\n };\n const hasWrongRoot = !projectRoot.startsWith(\"/\");\n if (hasWrongRoot) {\n console.warn(\"projectRoot is not a full path\", projectRoot);\n }\n const wrongRoot = !hasWrongRoot ? projectRoot.slice(1) : projectRoot;\n const ensureNoRoot = (n: string | null) => {\n if (!n) return \"\";\n if (n.startsWith(wrongRoot)) {\n return n.slice(wrongRoot.length + 1);\n }\n return n.startsWith(projectRoot + \"/\")\n ? n.slice(projectRoot.length + 1)\n : n;\n };\n\n const testModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const testJson = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const testCss = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n const testClientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n const testServerFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n const testPropsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n const testPagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n const testCssModule = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n const testVendor = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n const preserveModulesRoot =\n options.build?.preserveModulesRoot ??\n DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n const hashOption =\n typeof options.build?.hash === \"string\"\n ? options.build.hash\n : DEFAULT_CONFIG.BUILD.hash;\n const hashString = hashOption === \"\" ? \"\" : `-[${hashOption}]`;\n const hash = (n: string | null) => {\n if (!n) return \"\";\n if (hashString === \"\") return n;\n const extensionIndex = n.lastIndexOf(\".\");\n if (extensionIndex !== -1) {\n // put hash between extension and filename\n const extension = n.slice(extensionIndex);\n const filename = n.slice(0, extensionIndex);\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n };\n\n const getOutputPath = (n: string | null) => {\n if (!n) return \"\";\n let path = handleSearchQuery(n);\n // Remove src/ prefix if present\n path = path.startsWith(moduleBase + \"/\")\n ? path.slice(moduleBase.length + 1)\n : path;\n\n if (testVendor(path)) {\n return path;\n }\n \n if (testCssModule(path)) {\n // For CSS modules, keep the .css.js extension\n return applyPattern(path, options.autoDiscover?.cssModulePattern, \".css.js\");\n }\n \n if (testCss(path)) {\n // For regular CSS files, keep the .css extension\n return applyPattern(path, options.autoDiscover?.cssPattern, \".css\");\n }\n\n if (testClientComponents(path)) {\n return applyPattern(path, options.autoDiscover?.clientComponents, \"client\");\n }\n if (testHtml(path)) {\n return applyPattern(path, options.autoDiscover?.htmlPattern, \".html\");\n }\n if (testJson(path)) {\n return applyPattern(path, options.autoDiscover?.jsonPattern, \".json\");\n }\n if (testPropsPattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.propsPattern,\n options.propsExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()\n );\n }\n if (testPagePattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.pagePattern,\n options.pageExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()\n );\n }\n if (testServerFunctions(path)) {\n return applyPattern(path, options.autoDiscover?.serverFunctions, \"server\");\n }\n if (testModulePattern(path)) {\n return path;\n }\n return path;\n };\n\n const entryFile = (n: PreRenderedChunk) => {\n if (testVendor(n.name)) {\n const search = n.facadeModuleId?.split(\"?\")[1];\n if(search) {\n return `${n.name}.${search}.js`;\n } else {\n return n.name + \".js\";\n }\n }\n return addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name))));\n };\n\n const chunkFile = (n: PreRenderedChunk) => {\n // For chunks, we always want .js\n return addJS(getOutputPath(ensureModuleBase(ensureNoRoot('_'+n.name))));\n };\n\n const assetFile = (n: PreRenderedAsset) => {\n // For assets, keep the original extension\n return getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0])));\n };\n\n const build =\n typeof options.build === \"object\" && options.build !== null\n ? {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n }\n : {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile,\n chunkFile,\n assetFile,\n };\n\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : options.moduleBase.startsWith(\"/\")\n ? options.moduleBase\n : \"/\" + options.moduleBase;\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : moduleBasePath ?? DEFAULT_CONFIG.MODULE_BASE_URL;\n\n const autoDiscover = {\n modulePattern: testModulePattern,\n cssPattern: testCss,\n jsonPattern: testJson,\n clientComponents: testClientComponents,\n serverFunctions: testServerFunctions,\n propsPattern: testPropsPattern,\n pagePattern: testPagePattern,\n cssModulePattern: testCssModule,\n vendorPattern: testVendor,\n };\n\n const moduleId =\n typeof options.moduleId === \"function\"\n ? options.moduleId\n : createModuleIdGenerator({\n isProduction: process.env[\"NODE_ENV\"] === \"production\",\n inputRoot: projectRoot,\n client: client,\n server: server,\n moduleBase: moduleBase,\n preserveModulesRoot: preserveModulesRoot,\n removeExtension: DEFAULT_CONFIG.FILE_REGEX,\n imports: {},\n });\n\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleId: moduleId,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n build: build,\n Page: options.Page ?? DEFAULT_CONFIG.PAGE,\n props: options.props ?? DEFAULT_CONFIG.PROPS,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n collectCss: options.collectCss ?? DEFAULT_CONFIG.COLLECT_CSS,\n collectAssets: options.collectAssets ?? DEFAULT_CONFIG.COLLECT_ASSETS,\n htmlWorkerPath:\n options.htmlWorkerPath ?? DEFAULT_CONFIG.HTML_WORKER_PATH,\n rscWorkerPath: options.rscWorkerPath ?? DEFAULT_CONFIG.RSC_WORKER_PATH,\n loaderPath: options.loaderPath ?? DEFAULT_CONFIG.LOADER_PATH,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipableStreamOptions: options.pipableStreamOptions ?? {\n bootstrapModules: [\n options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n ],\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type { StreamPluginOptions, ResolvedUserOptions } from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { join } from \"node:path\";\nimport { pluginRoot } from \"../root.js\";\n\nconst resolveAutoDiscoverMatcher = (\n options: undefined | string | RegExp | ((path: string) => boolean),\n fallback: RegExp | ((path: string) => boolean)\n) => {\n if (!options) {\n if (typeof fallback === \"function\") {\n return fallback;\n } else {\n return (path: string) => fallback.test(path);\n }\n }\n if (typeof options === \"string\") {\n const matcher = new RegExp(options);\n return (path: string) => matcher.test(path);\n } else if (typeof options === \"function\") {\n return options;\n } else {\n return (path: string) => options.test(path);\n }\n};\n\nconst addJS = (path: string) => {\n if (path.endsWith(\".js\")) return path;\n if (path.endsWith(\"/.\")) return path.slice(0, -2) + \".js\";\n if (path.endsWith(\".\")) return path + \"js\";\n return path + \".js\";\n};\n\nconst handleSearchQuery = (path: string) => {\n // make the query part of the name of the file so it's not ending up like index1, index2, etc.\n const searchQuery = path.split(\"?\")[1];\n if (!searchQuery) return path;\n // add the folder before the filename\n const folder = path.split(\"/\").slice(0, -1).join(\"/\");\n const filename = path.split(\"/\").pop();\n return `${folder}/${filename}?${searchQuery}`;\n};\n\nconst applyPattern = (\n path: string,\n _pattern?: string | RegExp | ((path: string) => boolean) | undefined,\n _fallback?: string | undefined\n) => {\n // TODO: What to actually do here? I guess we could replace the extension, but it's not needed since we map them from the manifest anyway.\n return path;\n};\n\nexport const resolveOptions = (\n options: StreamPluginOptions,\n isClient: boolean\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions }\n | { type: \"error\"; error: Error } => {\n const projectRoot = options.projectRoot ?? process.cwd();\n const {\n pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,\n propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME,\n } = options;\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ?? `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n const ensureModuleBase = (n: string | null) => {\n if (!n) return \"\";\n return n.startsWith(moduleBase + \"/\") ? n.slice(moduleBase.length + 1) : n;\n };\n const hasWrongRoot = !projectRoot.startsWith(\"/\");\n if (hasWrongRoot) {\n console.warn(\"projectRoot is not a full path\", projectRoot);\n }\n const wrongRoot = !hasWrongRoot ? projectRoot.slice(1) : projectRoot;\n const ensureNoRoot = (n: string | null) => {\n if (!n) return \"\";\n if (n.startsWith(wrongRoot)) {\n return n.slice(wrongRoot.length + 1);\n }\n return n.startsWith(projectRoot + \"/\")\n ? n.slice(projectRoot.length + 1)\n : n;\n };\n\n const testModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const testJson = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const testCss = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n const testClientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n const testServerFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n const testPropsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n const testPagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n const testCssModule = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n const testVendor = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n const preserveModulesRoot =\n options.build?.preserveModulesRoot ??\n DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n const hashOption =\n typeof options.build?.hash === \"string\"\n ? options.build.hash\n : DEFAULT_CONFIG.BUILD.hash;\n const hashString = hashOption === \"\" ? \"\" : `-[${hashOption}]`;\n const hash = (n: string | null) => {\n if (!n) return \"\";\n if (hashString === \"\" || ( !isClient && !n.endsWith('.css') && !n.endsWith('.json') ) ) {\n return n;\n }\n const extensionIndex = n.lastIndexOf(\".\");\n if (extensionIndex !== -1) {\n // put hash between extension and filename\n const extension = n.slice(extensionIndex);\n const filename = n.slice(0, extensionIndex);\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n };\n\n const getOutputPath = (n: string | null) => {\n if (!n) return \"\";\n let path = handleSearchQuery(n);\n // Remove src/ prefix if present\n path = path.startsWith(moduleBase + \"/\")\n ? path.slice(moduleBase.length + 1)\n : path;\n\n if (testVendor(path)) {\n return path;\n }\n\n if (testCssModule(path)) {\n // For CSS modules, keep the .css.js extension\n return applyPattern(\n path,\n options.autoDiscover?.cssModulePattern,\n \".css.js\"\n );\n }\n\n if (testCss(path)) {\n // For regular CSS files, keep the .css extension\n return applyPattern(path, options.autoDiscover?.cssPattern, \".css\");\n }\n\n if (testClientComponents(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.clientComponents,\n \"client\"\n );\n }\n if (testHtml(path)) {\n return applyPattern(path, options.autoDiscover?.htmlPattern, \".html\");\n }\n if (testJson(path)) {\n return applyPattern(path, options.autoDiscover?.jsonPattern, \".json\");\n }\n if (testPropsPattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.propsPattern,\n options.propsExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()\n );\n }\n if (testPagePattern(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.pagePattern,\n options.pageExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()\n );\n }\n if (testServerFunctions(path)) {\n return applyPattern(\n path,\n options.autoDiscover?.serverFunctions,\n \"server\"\n );\n }\n if (testModulePattern(path)) {\n return path;\n }\n return path;\n };\n\n const entryFile = (n: PreRenderedChunk) => {\n if (testVendor(n.name)) {\n const search = n.facadeModuleId?.split(\"?\")[1];\n if (search) {\n return hash(`${n.name}.${search}.js`);\n } else {\n return hash(`${n.name}.js`);\n }\n }\n return hash(addJS(getOutputPath(ensureModuleBase(ensureNoRoot(n.name)))));\n };\n\n const chunkFile = (n: PreRenderedChunk) => {\n // For chunks, we always want .js\n return hash(addJS(getOutputPath(ensureModuleBase(ensureNoRoot(\"_\" + n.name)))));\n };\n\n const assetFile = (n: PreRenderedAsset) => {\n // For assets, keep the original extension\n return hash(getOutputPath(ensureModuleBase(ensureNoRoot(n.names[0]))));\n };\n\n const build =\n typeof options.build === \"object\" && options.build !== null\n ? {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n }\n : {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n entryFile,\n chunkFile,\n assetFile,\n };\n\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : DEFAULT_CONFIG.MODULE_BASE_PATH;\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : DEFAULT_CONFIG.MODULE_BASE_URL;\n const rscWorkerPath =\n typeof options.rscWorkerPath === \"string\"\n ? join(projectRoot, options.rscWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.RSC_WORKER_PATH);\n const htmlWorkerPath =\n typeof options.htmlWorkerPath === \"string\"\n ? join(projectRoot, options.htmlWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.HTML_WORKER_PATH);\n const loaderPath =\n typeof options.loaderPath === \"string\"\n ? join(projectRoot, options.loaderPath)\n : join(pluginRoot, DEFAULT_CONFIG.LOADER_PATH);\n\n const autoDiscover = {\n modulePattern: testModulePattern,\n cssPattern: testCss,\n jsonPattern: testJson,\n clientComponents: testClientComponents,\n serverFunctions: testServerFunctions,\n propsPattern: testPropsPattern,\n pagePattern: testPagePattern,\n cssModulePattern: testCssModule,\n vendorPattern: testVendor,\n };\n\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n build: build,\n Page: options.Page ?? DEFAULT_CONFIG.PAGE,\n props: options.props ?? DEFAULT_CONFIG.PROPS,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n collectCss: options.collectCss ?? DEFAULT_CONFIG.COLLECT_CSS,\n collectAssets: options.collectAssets ?? DEFAULT_CONFIG.COLLECT_ASSETS,\n htmlWorkerPath: htmlWorkerPath,\n rscWorkerPath: rscWorkerPath,\n loaderPath: loaderPath,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipableStreamOptions: options.pipableStreamOptions ?? {\n bootstrapModules: [\n options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n ],\n },\n },\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { ResolvedUserOptions } from '../types.js';
2
+ export declare let stashedPages: string[];
2
3
  export declare function resolvePages(pages: ResolvedUserOptions["build"]["pages"]): Promise<{
3
4
  type: "success";
4
5
  error?: never;
@@ -1 +1 @@
1
- {"version":3,"file":"resolvePages.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolvePages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,wBAAsB,YAAY,CAChC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAC3C,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAC,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,CAAC,EAAC,KAAK,CAAA;CAAE,CAAC,CAsC7G"}
1
+ {"version":3,"file":"resolvePages.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolvePages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,eAAO,IAAI,YAAY,EAAE,MAAM,EAAO,CAAC;AACvC,wBAAsB,YAAY,CAChC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAC3C,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAC,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,CAAC,EAAC,KAAK,CAAA;CAAE,CAAC,CAyC7G"}
@@ -3,24 +3,28 @@
3
3
  * Copyright (c) Nico Brinkkemper
4
4
  * MIT License
5
5
  */
6
+ let stashedPages = [];
6
7
  async function resolvePages(pages) {
8
+ if (stashedPages.length > 0) {
9
+ return { type: "success", pages: stashedPages };
10
+ }
7
11
  if (!pages) {
8
12
  return { type: "success", pages: [] };
9
13
  }
10
14
  try {
11
15
  if (typeof pages === "function") {
12
- const result = await Promise.resolve(pages());
13
- return resolvePages(result);
16
+ return resolvePages(pages());
14
17
  }
15
18
  if (pages instanceof Promise) {
16
- const result = await pages;
17
- return resolvePages(result);
19
+ return resolvePages(await pages);
18
20
  }
19
21
  if (typeof pages === "string") {
22
+ stashedPages = [pages];
20
23
  return { type: "success", pages: [pages] };
21
24
  }
22
25
  if (Array.isArray(pages)) {
23
26
  if (pages.every((page) => typeof page === "string")) {
27
+ stashedPages = pages;
24
28
  return { type: "success", pages };
25
29
  }
26
30
  throw new Error("All pages must be strings");
@@ -34,5 +38,5 @@ async function resolvePages(pages) {
34
38
  }
35
39
  }
36
40
 
37
- export { resolvePages };
41
+ export { resolvePages, stashedPages };
38
42
  //# sourceMappingURL=resolvePages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolvePages.js","sources":["../../../plugin/config/resolvePages.ts"],"sourcesContent":["import type { ResolvedUserOptions } from '../types.js';\n\nexport async function resolvePages(\n pages: ResolvedUserOptions[\"build\"][\"pages\"]\n): Promise<{ type: \"success\"; error?:never; pages: string[] } | { type: \"error\"; error: Error; pages?:never }> {\n if (!pages) {\n return { type: \"success\", pages: [] };\n }\n\n try {\n // Handle function\n if (typeof pages === \"function\") {\n const result = await Promise.resolve(pages());\n return resolvePages(result);\n }\n\n // Handle Promise\n if (pages instanceof Promise) {\n const result = await pages;\n return resolvePages(result);\n }\n\n // Handle string\n if (typeof pages === \"string\") {\n return { type: \"success\", pages: [pages] };\n }\n\n // Handle array\n if (Array.isArray(pages)) {\n if (pages.every(page => typeof page === \"string\")) {\n return { type: \"success\", pages };\n }\n throw new Error('All pages must be strings');\n }\n\n throw new Error('Invalid pages format');\n } catch (error) {\n return {\n type: \"error\",\n error: error instanceof Error ? error : new Error('Failed to resolve pages')\n };\n }\n} "],"names":[],"mappings":";;;;;AAEA,eAAsB,aACpB,KAC6G,EAAA;AAC7G,EAAA,IAAI,CAAC,KAAO,EAAA;AACV,IAAA,OAAO,EAAE,IAAA,EAAM,SAAW,EAAA,KAAA,EAAO,EAAG,EAAA;AAAA;AAGtC,EAAI,IAAA;AAEF,IAAI,IAAA,OAAO,UAAU,UAAY,EAAA;AAC/B,MAAA,MAAM,MAAS,GAAA,MAAM,OAAQ,CAAA,OAAA,CAAQ,OAAO,CAAA;AAC5C,MAAA,OAAO,aAAa,MAAM,CAAA;AAAA;AAI5B,IAAA,IAAI,iBAAiB,OAAS,EAAA;AAC5B,MAAA,MAAM,SAAS,MAAM,KAAA;AACrB,MAAA,OAAO,aAAa,MAAM,CAAA;AAAA;AAI5B,IAAI,IAAA,OAAO,UAAU,QAAU,EAAA;AAC7B,MAAA,OAAO,EAAE,IAAM,EAAA,SAAA,EAAW,KAAO,EAAA,CAAC,KAAK,CAAE,EAAA;AAAA;AAI3C,IAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,KAAK,CAAG,EAAA;AACxB,MAAA,IAAI,MAAM,KAAM,CAAA,CAAA,IAAA,KAAQ,OAAO,IAAA,KAAS,QAAQ,CAAG,EAAA;AACjD,QAAO,OAAA,EAAE,IAAM,EAAA,SAAA,EAAW,KAAM,EAAA;AAAA;AAElC,MAAM,MAAA,IAAI,MAAM,2BAA2B,CAAA;AAAA;AAG7C,IAAM,MAAA,IAAI,MAAM,sBAAsB,CAAA;AAAA,WAC/B,KAAO,EAAA;AACd,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAO,KAAiB,YAAA,KAAA,GAAQ,KAAQ,GAAA,IAAI,MAAM,yBAAyB;AAAA,KAC7E;AAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"resolvePages.js","sources":["../../../plugin/config/resolvePages.ts"],"sourcesContent":["import type { ResolvedUserOptions } from '../types.js';\n\nexport let stashedPages: string[] = [];\nexport async function resolvePages(\n pages: ResolvedUserOptions[\"build\"][\"pages\"]\n): Promise<{ type: \"success\"; error?:never; pages: string[] } | { type: \"error\"; error: Error; pages?:never }> {\n if(stashedPages.length > 0){\n return { type: \"success\", pages: stashedPages };\n }\n if (!pages) {\n return { type: \"success\", pages: [] };\n }\n\n try {\n // Handle function\n if (typeof pages === \"function\") {\n return resolvePages(pages());\n }\n\n // Handle Promise\n if (pages instanceof Promise) {\n return resolvePages(await pages);\n }\n\n // Handle string\n if (typeof pages === \"string\") {\n stashedPages = [pages];\n return { type: \"success\", pages: [pages] };\n }\n\n // Handle array\n if (Array.isArray(pages)) {\n if (pages.every(page => typeof page === \"string\")) {\n stashedPages = pages;\n return { type: \"success\", pages };\n }\n throw new Error('All pages must be strings');\n }\n\n throw new Error('Invalid pages format');\n } catch (error) {\n return {\n type: \"error\",\n error: error instanceof Error ? error : new Error('Failed to resolve pages')\n };\n }\n} "],"names":[],"mappings":";;;;;AAEO,IAAI,eAAyB;AACpC,eAAsB,aACpB,KAC6G,EAAA;AAC7G,EAAG,IAAA,YAAA,CAAa,SAAS,CAAE,EAAA;AACzB,IAAA,OAAO,EAAE,IAAA,EAAM,SAAW,EAAA,KAAA,EAAO,YAAa,EAAA;AAAA;AAEhD,EAAA,IAAI,CAAC,KAAO,EAAA;AACV,IAAA,OAAO,EAAE,IAAA,EAAM,SAAW,EAAA,KAAA,EAAO,EAAG,EAAA;AAAA;AAGtC,EAAI,IAAA;AAEF,IAAI,IAAA,OAAO,UAAU,UAAY,EAAA;AAC/B,MAAO,OAAA,YAAA,CAAa,OAAO,CAAA;AAAA;AAI7B,IAAA,IAAI,iBAAiB,OAAS,EAAA;AAC5B,MAAO,OAAA,YAAA,CAAa,MAAM,KAAK,CAAA;AAAA;AAIjC,IAAI,IAAA,OAAO,UAAU,QAAU,EAAA;AAC7B,MAAA,YAAA,GAAe,CAAC,KAAK,CAAA;AACrB,MAAA,OAAO,EAAE,IAAM,EAAA,SAAA,EAAW,KAAO,EAAA,CAAC,KAAK,CAAE,EAAA;AAAA;AAI3C,IAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,KAAK,CAAG,EAAA;AACxB,MAAA,IAAI,MAAM,KAAM,CAAA,CAAA,IAAA,KAAQ,OAAO,IAAA,KAAS,QAAQ,CAAG,EAAA;AACjD,QAAe,YAAA,GAAA,KAAA;AACf,QAAO,OAAA,EAAE,IAAM,EAAA,SAAA,EAAW,KAAM,EAAA;AAAA;AAElC,MAAM,MAAA,IAAI,MAAM,2BAA2B,CAAA;AAAA;AAG7C,IAAM,MAAA,IAAI,MAAM,sBAAsB,CAAA;AAAA,WAC/B,KAAO,EAAA;AACd,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAO,KAAiB,YAAA,KAAA,GAAQ,KAAQ,GAAA,IAAI,MAAM,yBAAyB;AAAA,KAC7E;AAAA;AAEJ;;;;"}
@@ -2,6 +2,7 @@ import type { ConfigEnv, UserConfig } from "vite";
2
2
  import type { CheckFilesExistReturn, ResolvedUserConfig, ResolvedUserOptions } from "../types.js";
3
3
  export type ResolveUserConfigProps = {
4
4
  isClient?: boolean;
5
+ isStatic?: boolean;
5
6
  config: UserConfig;
6
7
  configEnv: ConfigEnv;
7
8
  userOptions: ResolvedUserOptions;
@@ -14,5 +15,5 @@ export type ResolveUserConfigReturn = {
14
15
  type: "error";
15
16
  error: Error;
16
17
  };
17
- export declare function resolveUserConfig({ isClient, config, configEnv, userOptions, files, }: ResolveUserConfigProps): ResolveUserConfigReturn;
18
+ export declare function resolveUserConfig({ isClient, isStatic, config, configEnv, userOptions, files, }: ResolveUserConfigProps): ResolveUserConfigReturn;
18
19
  //# sourceMappingURL=resolveUserConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveUserConfig.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveUserConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAMrB,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,kBAAkB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC,wBAAgB,iBAAiB,CAAC,EAChC,QAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,KAAK,GACN,EAAE,sBAAsB,GAAG,uBAAuB,CAwMlD"}
1
+ {"version":3,"file":"resolveUserConfig.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveUserConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAMrB,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,kBAAkB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC,wBAAgB,iBAAiB,CAAC,EAChC,QAAgB,EAChB,QAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,KAAK,GACN,EAAE,sBAAsB,GAAG,uBAAuB,CAyMlD"}