vite-plugin-react-server 1.1.20 → 1.2.0-alpha.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 (783) hide show
  1. package/README.md +102 -395
  2. package/dist/_virtual/dynamic-import-helper.js +1 -1
  3. package/dist/client.d.ts +1 -1
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +5 -2
  6. package/dist/index.js +1 -1
  7. package/dist/package.json +58 -25
  8. package/dist/plugin/components/{css-collector-elements.d.ts → css.d.ts} +2 -2
  9. package/dist/plugin/components/css.d.ts.map +1 -0
  10. package/dist/plugin/components/css.js +33 -0
  11. package/dist/plugin/components/html.d.ts +1 -1
  12. package/dist/plugin/components/html.d.ts.map +1 -1
  13. package/dist/plugin/components/html.js +5 -5
  14. package/dist/plugin/components/index.d.ts +3 -3
  15. package/dist/plugin/components/index.d.ts.map +1 -1
  16. package/dist/plugin/components/index.js +9 -3
  17. package/dist/plugin/components/root.d.ts +7 -0
  18. package/dist/plugin/components/root.d.ts.map +1 -0
  19. package/dist/plugin/components/root.js +18 -0
  20. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js +1 -1
  21. package/dist/plugin/config/autoDiscover/customWorkerFiles.js +1 -1
  22. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js +1 -1
  23. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts +5 -4
  24. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts.map +1 -1
  25. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js +26 -7
  26. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts +25 -2
  27. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts.map +1 -1
  28. package/dist/plugin/config/autoDiscover/resolveBuildPages.js +84 -5
  29. package/dist/plugin/config/createModuleID.d.ts +3 -6
  30. package/dist/plugin/config/createModuleID.d.ts.map +1 -1
  31. package/dist/plugin/config/createModuleID.js +42 -32
  32. package/dist/plugin/config/defaults.d.ts +199 -121
  33. package/dist/plugin/config/defaults.d.ts.map +1 -1
  34. package/dist/plugin/config/defaults.js +155 -89
  35. package/dist/plugin/config/extMap.d.ts +6 -2
  36. package/dist/plugin/config/extMap.d.ts.map +1 -1
  37. package/dist/plugin/config/extMap.js +38 -48
  38. package/dist/plugin/config/flightBindings.d.ts +4 -0
  39. package/dist/plugin/config/flightBindings.d.ts.map +1 -0
  40. package/dist/plugin/config/flightBindings.js +215 -0
  41. package/dist/plugin/config/getCondition.d.ts +2 -0
  42. package/dist/plugin/config/getCondition.d.ts.map +1 -1
  43. package/dist/plugin/config/getCondition.js +4 -2
  44. package/dist/plugin/config/getPaths.js +1 -1
  45. package/dist/plugin/config/index.d.ts +17 -4
  46. package/dist/plugin/config/index.d.ts.map +1 -1
  47. package/dist/plugin/config/index.js +29 -7
  48. package/dist/plugin/config/interpolatePattern.d.ts +13 -0
  49. package/dist/plugin/config/interpolatePattern.d.ts.map +1 -0
  50. package/dist/plugin/config/interpolatePattern.js +13 -0
  51. package/dist/plugin/config/mimeTypes.js +1 -1
  52. package/dist/plugin/config/parsePattern.d.ts +25 -0
  53. package/dist/plugin/config/parsePattern.d.ts.map +1 -0
  54. package/dist/plugin/config/parsePattern.js +30 -0
  55. package/dist/plugin/config/resolveAllowedDirectives.d.ts +26 -0
  56. package/dist/plugin/config/resolveAllowedDirectives.d.ts.map +1 -0
  57. package/dist/plugin/config/resolveAllowedDirectives.js +35 -0
  58. package/dist/plugin/config/resolveDirectiveMatcher.d.ts +25 -0
  59. package/dist/plugin/config/resolveDirectiveMatcher.d.ts.map +1 -0
  60. package/dist/plugin/config/resolveDirectiveMatcher.js +33 -0
  61. package/dist/plugin/config/resolveEnv.d.ts.map +1 -1
  62. package/dist/plugin/config/resolveEnv.js +14 -4
  63. package/dist/plugin/config/resolveOptions.d.ts +13 -3
  64. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  65. package/dist/plugin/config/resolveOptions.js +228 -206
  66. package/dist/plugin/config/resolvePages.js +1 -1
  67. package/dist/plugin/config/resolvePatternWithValues.d.ts +39 -0
  68. package/dist/plugin/config/resolvePatternWithValues.d.ts.map +1 -0
  69. package/dist/plugin/config/resolvePatternWithValues.js +36 -0
  70. package/dist/plugin/config/resolveRegExp.d.ts +29 -0
  71. package/dist/plugin/config/resolveRegExp.d.ts.map +1 -0
  72. package/dist/plugin/config/resolveRegExp.js +39 -0
  73. package/dist/plugin/config/resolveUrlOption.d.ts +37 -6
  74. package/dist/plugin/config/resolveUrlOption.d.ts.map +1 -1
  75. package/dist/plugin/config/resolveUrlOption.js +42 -12
  76. package/dist/plugin/config/resolveUserConfig.d.ts +5 -4
  77. package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
  78. package/dist/plugin/config/resolveUserConfig.js +86 -40
  79. package/dist/plugin/env/plugin.d.ts +6 -0
  80. package/dist/plugin/env/plugin.d.ts.map +1 -1
  81. package/dist/plugin/env/plugin.js +111 -93
  82. package/dist/plugin/error/directiveError.d.ts +13 -0
  83. package/dist/plugin/error/directiveError.d.ts.map +1 -0
  84. package/dist/plugin/error/directiveError.js +21 -0
  85. package/dist/plugin/error/enhanceError.d.ts +14 -0
  86. package/dist/plugin/error/enhanceError.d.ts.map +1 -0
  87. package/dist/plugin/error/enhanceError.js +24 -0
  88. package/dist/plugin/error/index.d.ts +4 -0
  89. package/dist/plugin/error/index.d.ts.map +1 -0
  90. package/dist/plugin/error/index.js +9 -0
  91. package/dist/plugin/error/logError.d.ts +3 -0
  92. package/dist/plugin/error/logError.d.ts.map +1 -0
  93. package/dist/plugin/error/logError.js +47 -0
  94. package/dist/plugin/error/serializeError.d.ts +7 -0
  95. package/dist/plugin/error/serializeError.d.ts.map +1 -0
  96. package/dist/plugin/error/serializeError.js +37 -0
  97. package/dist/plugin/error/toError.d.ts +1 -8
  98. package/dist/plugin/error/toError.d.ts.map +1 -1
  99. package/dist/plugin/error/toError.js +62 -34
  100. package/dist/plugin/file-preserver/plugin.js +93 -105
  101. package/dist/plugin/getNodeEnv.d.ts +11 -0
  102. package/dist/plugin/getNodeEnv.d.ts.map +1 -0
  103. package/dist/plugin/getNodeEnv.js +17 -0
  104. package/dist/plugin/helpers/cleanObject.d.ts.map +1 -1
  105. package/dist/plugin/helpers/cleanObject.js +2 -1
  106. package/dist/plugin/helpers/collectManifestCss.js +1 -1
  107. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +6 -4
  108. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
  109. package/dist/plugin/helpers/collectViteModuleGraphCss.js +15 -9
  110. package/dist/plugin/helpers/createCssProps.d.ts +3 -4
  111. package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
  112. package/dist/plugin/helpers/createCssProps.js +16 -4
  113. package/dist/plugin/helpers/createEventHandler.d.ts +2 -2
  114. package/dist/plugin/helpers/createEventHandler.d.ts.map +1 -1
  115. package/dist/plugin/helpers/createEventHandler.js +1 -1
  116. package/dist/plugin/helpers/createHandler.d.ts +10 -8
  117. package/dist/plugin/helpers/createHandler.d.ts.map +1 -1
  118. package/dist/plugin/helpers/createHandler.js +11 -5
  119. package/dist/plugin/helpers/createRscStream.d.ts +18 -5
  120. package/dist/plugin/helpers/createRscStream.d.ts.map +1 -1
  121. package/dist/plugin/helpers/createRscStream.js +48 -14
  122. package/dist/plugin/helpers/formatMetrics.d.ts +1 -5
  123. package/dist/plugin/helpers/formatMetrics.d.ts.map +1 -1
  124. package/dist/plugin/helpers/formatMetrics.js +2 -39
  125. package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
  126. package/dist/plugin/helpers/getBundleManifest.js +9 -2
  127. package/dist/plugin/helpers/getRouteFiles.d.ts +30 -2
  128. package/dist/plugin/helpers/getRouteFiles.d.ts.map +1 -1
  129. package/dist/plugin/helpers/getRouteFiles.js +70 -7
  130. package/dist/plugin/helpers/handleServerAction.d.ts +8 -7
  131. package/dist/plugin/helpers/handleServerAction.d.ts.map +1 -1
  132. package/dist/plugin/helpers/handleServerAction.js +5 -2
  133. package/dist/plugin/helpers/hydrateUserOptions.d.ts +9 -0
  134. package/dist/plugin/helpers/hydrateUserOptions.d.ts.map +1 -0
  135. package/dist/plugin/helpers/hydrateUserOptions.js +22 -0
  136. package/dist/plugin/helpers/index.d.ts +2 -0
  137. package/dist/plugin/helpers/index.d.ts.map +1 -1
  138. package/dist/plugin/helpers/index.js +31 -31
  139. package/dist/plugin/helpers/inputNormalizer.d.ts +1 -1
  140. package/dist/plugin/helpers/inputNormalizer.d.ts.map +1 -1
  141. package/dist/plugin/helpers/inputNormalizer.js +33 -20
  142. package/dist/plugin/helpers/metrics.d.ts +4 -10
  143. package/dist/plugin/helpers/metrics.d.ts.map +1 -1
  144. package/dist/plugin/helpers/metrics.js +3 -59
  145. package/dist/plugin/helpers/moduleRefs.js +1 -1
  146. package/dist/plugin/helpers/moduleResolver.d.ts +24 -2
  147. package/dist/plugin/helpers/moduleResolver.d.ts.map +1 -1
  148. package/dist/plugin/helpers/moduleResolver.js +61 -22
  149. package/dist/plugin/helpers/requestInfo.d.ts +28 -1
  150. package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
  151. package/dist/plugin/helpers/requestInfo.js +43 -30
  152. package/dist/plugin/helpers/requestToRoute.d.ts +1 -1
  153. package/dist/plugin/helpers/requestToRoute.d.ts.map +1 -1
  154. package/dist/plugin/helpers/requestToRoute.js +17 -9
  155. package/dist/plugin/helpers/resolveComponent.d.ts +57 -0
  156. package/dist/plugin/helpers/resolveComponent.d.ts.map +1 -0
  157. package/dist/plugin/helpers/resolveComponent.js +71 -0
  158. package/dist/plugin/helpers/resolveComponents.d.ts +27 -0
  159. package/dist/plugin/helpers/resolveComponents.d.ts.map +1 -0
  160. package/dist/plugin/helpers/resolveComponents.js +137 -0
  161. package/dist/plugin/helpers/resolvePage.d.ts +15 -11
  162. package/dist/plugin/helpers/resolvePage.d.ts.map +1 -1
  163. package/dist/plugin/helpers/resolvePage.js +11 -7
  164. package/dist/plugin/helpers/resolvePageAndProps.d.ts +3 -10
  165. package/dist/plugin/helpers/resolvePageAndProps.d.ts.map +1 -1
  166. package/dist/plugin/helpers/resolvePageAndProps.js +28 -18
  167. package/dist/plugin/helpers/resolveProps.d.ts +13 -7
  168. package/dist/plugin/helpers/resolveProps.d.ts.map +1 -1
  169. package/dist/plugin/helpers/resolveProps.js +55 -25
  170. package/dist/plugin/helpers/resolveUserComponents.d.ts +33 -0
  171. package/dist/plugin/helpers/resolveUserComponents.d.ts.map +1 -0
  172. package/dist/plugin/helpers/resolveUserComponents.js +163 -0
  173. package/dist/plugin/helpers/serializeUserOptions.d.ts +7 -7
  174. package/dist/plugin/helpers/serializeUserOptions.d.ts.map +1 -1
  175. package/dist/plugin/helpers/serializeUserOptions.js +127 -42
  176. package/dist/plugin/helpers/stashReturnValue.d.ts +2 -1
  177. package/dist/plugin/helpers/stashReturnValue.d.ts.map +1 -1
  178. package/dist/plugin/helpers/stashReturnValue.js +6 -3
  179. package/dist/plugin/helpers/tryManifest.d.ts +1 -2
  180. package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
  181. package/dist/plugin/helpers/tryManifest.js +1 -1
  182. package/dist/plugin/loader/createDefaultLoader.d.ts +19 -8
  183. package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
  184. package/dist/plugin/loader/createDefaultLoader.js +69 -107
  185. package/dist/plugin/loader/createTransformer.d.ts +6 -0
  186. package/dist/plugin/loader/createTransformer.d.ts.map +1 -0
  187. package/dist/plugin/loader/createTransformer.js +97 -0
  188. package/dist/plugin/loader/{css-loader.development.d.ts → css-loader.d.ts} +6 -8
  189. package/dist/plugin/loader/css-loader.d.ts.map +1 -0
  190. package/dist/plugin/loader/css-loader.js +134 -0
  191. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts +4 -0
  192. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts.map +1 -0
  193. package/dist/plugin/loader/directives/addLocalExportedNames.js +57 -0
  194. package/dist/plugin/loader/directives/analyzeDirectives.d.ts +9 -0
  195. package/dist/plugin/loader/directives/analyzeDirectives.d.ts.map +1 -0
  196. package/dist/plugin/loader/directives/analyzeDirectives.js +221 -0
  197. package/dist/plugin/loader/directives/analyzeModule.d.ts +11 -0
  198. package/dist/plugin/loader/directives/analyzeModule.d.ts.map +1 -0
  199. package/dist/plugin/loader/directives/analyzeModule.js +34 -0
  200. package/dist/plugin/loader/directives/collectExports.d.ts +13 -0
  201. package/dist/plugin/loader/directives/collectExports.d.ts.map +1 -0
  202. package/dist/plugin/loader/directives/collectExports.js +116 -0
  203. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts +6 -0
  204. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts.map +1 -0
  205. package/dist/plugin/loader/directives/collectExportsFromModule.js +24 -0
  206. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts +3 -0
  207. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts.map +1 -0
  208. package/dist/plugin/loader/directives/findDirectiveMatches.js +46 -0
  209. package/dist/plugin/loader/directives/getExportedName.d.ts +3 -0
  210. package/dist/plugin/loader/directives/getExportedName.d.ts.map +1 -0
  211. package/dist/plugin/loader/directives/getExportedName.js +59 -0
  212. package/dist/plugin/loader/directives/getExports.d.ts +7 -0
  213. package/dist/plugin/loader/directives/getExports.d.ts.map +1 -0
  214. package/dist/plugin/loader/directives/getExports.js +28 -0
  215. package/dist/plugin/loader/directives/getFunctionBody.d.ts +3 -0
  216. package/dist/plugin/loader/directives/getFunctionBody.d.ts.map +1 -0
  217. package/dist/plugin/loader/directives/getFunctionBody.js +31 -0
  218. package/dist/plugin/loader/directives/getFunctionName.d.ts +10 -0
  219. package/dist/plugin/loader/directives/getFunctionName.d.ts.map +1 -0
  220. package/dist/plugin/loader/directives/getFunctionName.js +42 -0
  221. package/dist/plugin/loader/directives/getQualifiedName.d.ts +3 -0
  222. package/dist/plugin/loader/directives/getQualifiedName.d.ts.map +1 -0
  223. package/dist/plugin/loader/directives/getQualifiedName.js +65 -0
  224. package/dist/plugin/loader/directives/index.d.ts +14 -0
  225. package/dist/plugin/loader/directives/index.d.ts.map +1 -0
  226. package/dist/plugin/loader/directives/index.js +18 -0
  227. package/dist/plugin/loader/directives/processFunctionNode.d.ts +4 -0
  228. package/dist/plugin/loader/directives/processFunctionNode.d.ts.map +1 -0
  229. package/dist/plugin/loader/directives/processFunctionNode.js +86 -0
  230. package/dist/plugin/loader/directives/typeGuards.d.ts +37 -0
  231. package/dist/plugin/loader/directives/typeGuards.d.ts.map +1 -0
  232. package/dist/plugin/loader/directives/typeGuards.js +100 -0
  233. package/dist/plugin/loader/directives/types.d.ts +154 -0
  234. package/dist/plugin/loader/directives/types.d.ts.map +1 -0
  235. package/dist/plugin/loader/directives/utils.d.ts +14 -0
  236. package/dist/plugin/loader/directives/utils.d.ts.map +1 -0
  237. package/dist/plugin/loader/directives/utils.js +21 -0
  238. package/dist/plugin/loader/env-loader.d.ts +11 -0
  239. package/dist/plugin/loader/env-loader.d.ts.map +1 -0
  240. package/dist/plugin/loader/env-loader.js +65 -0
  241. package/dist/plugin/loader/index.d.ts +8 -1
  242. package/dist/plugin/loader/index.d.ts.map +1 -1
  243. package/dist/plugin/loader/index.js +13 -4
  244. package/dist/plugin/loader/parse.d.ts +11 -2
  245. package/dist/plugin/loader/parse.d.ts.map +1 -1
  246. package/dist/plugin/loader/parse.js +29 -6
  247. package/dist/plugin/loader/react-loader.d.ts +22 -1
  248. package/dist/plugin/loader/react-loader.d.ts.map +1 -1
  249. package/dist/plugin/loader/react-loader.js +169 -6
  250. package/dist/plugin/loader/removeDirectives.d.ts +5 -0
  251. package/dist/plugin/loader/removeDirectives.d.ts.map +1 -0
  252. package/dist/plugin/loader/removeDirectives.js +17 -0
  253. package/dist/plugin/loader/removeRanges.d.ts +5 -0
  254. package/dist/plugin/loader/removeRanges.d.ts.map +1 -0
  255. package/dist/plugin/loader/removeRanges.js +20 -0
  256. package/dist/plugin/loader/sourceMap.d.ts +16 -24
  257. package/dist/plugin/loader/sourceMap.d.ts.map +1 -1
  258. package/dist/plugin/loader/sourceMap.js +125 -97
  259. package/dist/plugin/loader/transformClientModule.d.ts +10 -0
  260. package/dist/plugin/loader/transformClientModule.d.ts.map +1 -0
  261. package/dist/plugin/loader/transformClientModule.js +46 -0
  262. package/dist/plugin/loader/transformModule.d.ts +6 -0
  263. package/dist/plugin/loader/transformModule.d.ts.map +1 -0
  264. package/dist/plugin/loader/transformModule.js +33 -0
  265. package/dist/plugin/loader/transformModuleIfNeeded.d.ts +12 -1
  266. package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
  267. package/dist/plugin/loader/transformModuleIfNeeded.js +9 -20
  268. package/dist/plugin/loader/transformServerModule.d.ts +11 -0
  269. package/dist/plugin/loader/transformServerModule.d.ts.map +1 -0
  270. package/dist/plugin/loader/transformServerModule.js +84 -0
  271. package/dist/plugin/loader/transformWithAcornLoose.d.ts +12 -0
  272. package/dist/plugin/loader/transformWithAcornLoose.d.ts.map +1 -0
  273. package/dist/plugin/loader/transformWithAcornLoose.js +18 -0
  274. package/dist/plugin/loader/types.d.ts +59 -12
  275. package/dist/plugin/loader/types.d.ts.map +1 -1
  276. package/dist/plugin/metrics/collectStreamMetrics.d.ts +9 -0
  277. package/dist/plugin/metrics/collectStreamMetrics.d.ts.map +1 -0
  278. package/dist/plugin/metrics/collectStreamMetrics.js +35 -0
  279. package/dist/plugin/metrics/createRenderMetrics.d.ts +3 -0
  280. package/dist/plugin/metrics/createRenderMetrics.d.ts.map +1 -0
  281. package/dist/plugin/metrics/createRenderMetrics.js +24 -0
  282. package/dist/plugin/metrics/createStreamMetrics.d.ts +3 -0
  283. package/dist/plugin/metrics/createStreamMetrics.d.ts.map +1 -0
  284. package/dist/plugin/metrics/createStreamMetrics.js +19 -0
  285. package/dist/plugin/metrics/formatMetrics.d.ts +6 -3
  286. package/dist/plugin/metrics/formatMetrics.d.ts.map +1 -1
  287. package/dist/plugin/metrics/formatMetrics.js +5 -2
  288. package/dist/plugin/metrics/index.d.ts +3 -1
  289. package/dist/plugin/metrics/index.d.ts.map +1 -1
  290. package/dist/plugin/metrics/index.js +9 -1
  291. package/dist/plugin/metrics/types.d.ts +23 -0
  292. package/dist/plugin/metrics/types.d.ts.map +1 -0
  293. package/dist/plugin/metrics/types.js +1 -0
  294. package/dist/plugin/plugin.client.d.ts +23 -2
  295. package/dist/plugin/plugin.client.d.ts.map +1 -1
  296. package/dist/plugin/plugin.client.js +30 -17
  297. package/dist/plugin/plugin.server.d.ts +13 -2
  298. package/dist/plugin/plugin.server.d.ts.map +1 -1
  299. package/dist/plugin/plugin.server.js +7 -4
  300. package/dist/plugin/preserver/plugin.d.ts +2 -2
  301. package/dist/plugin/preserver/plugin.d.ts.map +1 -1
  302. package/dist/plugin/preserver/plugin.js +33 -29
  303. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts +11 -0
  304. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts.map +1 -0
  305. package/dist/plugin/react-client/cleanupWorkerServerAction.js +18 -0
  306. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts +9 -9
  307. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +1 -1
  308. package/dist/plugin/react-client/configureWorkerRequestHandler.js +25 -14
  309. package/dist/plugin/react-client/createMessageHandlers.d.ts +1 -1
  310. package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
  311. package/dist/plugin/react-client/createMessageHandlers.js +15 -3
  312. package/dist/plugin/react-client/createWorkerStream.d.ts +12 -10
  313. package/dist/plugin/react-client/createWorkerStream.d.ts.map +1 -1
  314. package/dist/plugin/react-client/createWorkerStream.js +27 -29
  315. package/dist/plugin/react-client/handleWorkerRscStream.d.ts +13 -8
  316. package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +1 -1
  317. package/dist/plugin/react-client/handleWorkerRscStream.js +59 -24
  318. package/dist/plugin/react-client/handleWorkerServerAction.d.ts +2 -1
  319. package/dist/plugin/react-client/handleWorkerServerAction.d.ts.map +1 -1
  320. package/dist/plugin/react-client/handleWorkerServerAction.js +43 -28
  321. package/dist/plugin/react-client/index.d.ts +4 -1
  322. package/dist/plugin/react-client/index.d.ts.map +1 -1
  323. package/dist/plugin/react-client/index.js +10 -1
  324. package/dist/plugin/react-client/plugin.d.ts +5 -3
  325. package/dist/plugin/react-client/plugin.d.ts.map +1 -1
  326. package/dist/plugin/react-client/plugin.js +9 -11
  327. package/dist/plugin/react-client/restartWorker.d.ts +5 -4
  328. package/dist/plugin/react-client/restartWorker.d.ts.map +1 -1
  329. package/dist/plugin/react-client/restartWorker.js +12 -10
  330. package/dist/plugin/react-server/configureReactServer.d.ts +5 -4
  331. package/dist/plugin/react-server/configureReactServer.d.ts.map +1 -1
  332. package/dist/plugin/react-server/configureReactServer.js +98 -43
  333. package/dist/plugin/react-server/handleServerAction.d.ts +3 -2
  334. package/dist/plugin/react-server/handleServerAction.d.ts.map +1 -1
  335. package/dist/plugin/react-server/handleServerAction.js +14 -20
  336. package/dist/plugin/react-server/plugin.d.ts +3 -4
  337. package/dist/plugin/react-server/plugin.d.ts.map +1 -1
  338. package/dist/plugin/react-server/plugin.js +14 -17
  339. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts +8 -6
  340. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts.map +1 -1
  341. package/dist/plugin/react-static/collectHtmlWorkerContent.js +4 -4
  342. package/dist/plugin/react-static/collectRscContent.d.ts +8 -6
  343. package/dist/plugin/react-static/collectRscContent.d.ts.map +1 -1
  344. package/dist/plugin/react-static/collectRscContent.js +4 -4
  345. package/dist/plugin/react-static/configurePreviewServer.d.ts +6 -4
  346. package/dist/plugin/react-static/configurePreviewServer.d.ts.map +1 -1
  347. package/dist/plugin/react-static/configurePreviewServer.js +38 -31
  348. package/dist/plugin/react-static/createBuildLoader.d.ts +5 -5
  349. package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -1
  350. package/dist/plugin/react-static/createBuildLoader.js +122 -30
  351. package/dist/plugin/react-static/fileWriter.js +1 -1
  352. package/dist/plugin/react-static/plugin.d.ts +3 -4
  353. package/dist/plugin/react-static/plugin.d.ts.map +1 -1
  354. package/dist/plugin/react-static/plugin.js +62 -47
  355. package/dist/plugin/react-static/renderPage.d.ts +4 -2
  356. package/dist/plugin/react-static/renderPage.d.ts.map +1 -1
  357. package/dist/plugin/react-static/renderPage.js +33 -17
  358. package/dist/plugin/react-static/renderPages.d.ts +4 -2
  359. package/dist/plugin/react-static/renderPages.d.ts.map +1 -1
  360. package/dist/plugin/react-static/renderPages.js +7 -6
  361. package/dist/plugin/react-static/renderStreams.d.ts +5 -22
  362. package/dist/plugin/react-static/renderStreams.d.ts.map +1 -1
  363. package/dist/plugin/react-static/renderStreams.js +6 -6
  364. package/dist/plugin/react-static/rscToHtmlStream.d.ts.map +1 -1
  365. package/dist/plugin/react-static/rscToHtmlStream.js +1 -1
  366. package/dist/plugin/react-static/temporaryReferences.js +1 -1
  367. package/dist/plugin/react-static/types.d.ts +0 -1
  368. package/dist/plugin/react-static/types.d.ts.map +1 -1
  369. package/dist/plugin/root.js +1 -1
  370. package/dist/plugin/transformer/plugin.js +1 -1
  371. package/dist/plugin/transformer/plugin.server.d.ts +5 -3
  372. package/dist/plugin/transformer/plugin.server.d.ts.map +1 -1
  373. package/dist/plugin/transformer/plugin.server.js +43 -44
  374. package/dist/plugin/types/css-tracking.d.ts +2 -2
  375. package/dist/plugin/types/css-tracking.d.ts.map +1 -1
  376. package/dist/plugin/types.d.ts +452 -192
  377. package/dist/plugin/types.d.ts.map +1 -1
  378. package/dist/plugin/types.js +2 -1
  379. package/dist/plugin/utils/callServer.js +1 -1
  380. package/dist/plugin/utils/createCallServer.d.ts +1 -1
  381. package/dist/plugin/utils/createCallServer.d.ts.map +1 -1
  382. package/dist/plugin/utils/createCallServer.js +1 -1
  383. package/dist/plugin/utils/createReactFetcher.d.ts +2 -3
  384. package/dist/plugin/utils/createReactFetcher.d.ts.map +1 -1
  385. package/dist/plugin/utils/createReactFetcher.js +1 -1
  386. package/dist/plugin/utils/env.js +1 -1
  387. package/dist/plugin/utils/envUrls.node.js +1 -1
  388. package/dist/plugin/utils/index.d.ts +1 -0
  389. package/dist/plugin/utils/index.d.ts.map +1 -1
  390. package/dist/plugin/utils/index.js +12 -5
  391. package/dist/plugin/utils/routeToURL.d.ts +12 -0
  392. package/dist/plugin/utils/routeToURL.d.ts.map +1 -0
  393. package/dist/plugin/utils/routeToURL.js +26 -0
  394. package/dist/plugin/utils/urls.d.ts.map +1 -1
  395. package/dist/plugin/utils/urls.js +5 -3
  396. package/dist/plugin/vendor/index.js +7 -1
  397. package/dist/plugin/vendor/vendor.client.js +1 -1
  398. package/dist/plugin/vendor/vendor.js +1 -1
  399. package/dist/plugin/vendor/vendor.server.js +1 -1
  400. package/dist/plugin/worker/createWorker.d.ts +31 -17
  401. package/dist/plugin/worker/createWorker.d.ts.map +1 -1
  402. package/dist/plugin/worker/createWorker.js +18 -12
  403. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts +2 -2
  404. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts.map +1 -1
  405. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js +5 -2
  406. package/dist/plugin/worker/html/html-worker.development.js +3 -3
  407. package/dist/plugin/worker/html/html-worker.production.js +1 -1
  408. package/dist/plugin/worker/html/index.d.ts +1 -1
  409. package/dist/plugin/worker/html/index.d.ts.map +1 -1
  410. package/dist/plugin/worker/html/index.js +1 -1
  411. package/dist/plugin/worker/html/messageHandler.d.ts +1 -1
  412. package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
  413. package/dist/plugin/worker/html/messageHandler.js +9 -11
  414. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts +3 -0
  415. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts.map +1 -0
  416. package/dist/plugin/worker/html/sendHtmlWorkerMessage.js +2 -0
  417. package/dist/plugin/worker/html/types.d.ts +20 -2
  418. package/dist/plugin/worker/html/types.d.ts.map +1 -1
  419. package/dist/plugin/worker/index.d.ts +3 -0
  420. package/dist/plugin/worker/index.d.ts.map +1 -0
  421. package/dist/plugin/worker/index.js +7 -0
  422. package/dist/plugin/worker/registerLoaders.js +2 -2
  423. package/dist/plugin/worker/rsc/handleRender.d.ts +4 -3
  424. package/dist/plugin/worker/rsc/handleRender.d.ts.map +1 -1
  425. package/dist/plugin/worker/rsc/handleRender.js +54 -32
  426. package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -1
  427. package/dist/plugin/worker/rsc/handlers.js +19 -15
  428. package/dist/plugin/worker/rsc/index.d.ts +1 -1
  429. package/dist/plugin/worker/rsc/index.d.ts.map +1 -1
  430. package/dist/plugin/worker/rsc/index.js +1 -1
  431. package/dist/plugin/worker/rsc/messageHandler.d.ts +1 -1
  432. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  433. package/dist/plugin/worker/rsc/messageHandler.js +16 -4
  434. package/dist/plugin/worker/rsc/rsc-worker.development.js +77 -11
  435. package/dist/plugin/worker/rsc/rsc-worker.production.js +1 -1
  436. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts +3 -0
  437. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts.map +1 -0
  438. package/dist/plugin/worker/rsc/sendRscWorkerMessage.js +11 -0
  439. package/dist/plugin/worker/rsc/state.js +1 -1
  440. package/dist/plugin/worker/rsc/types.d.ts +95 -0
  441. package/dist/plugin/worker/rsc/types.d.ts.map +1 -0
  442. package/dist/plugin/worker/rsc/types.js +1 -0
  443. package/dist/plugin/worker/rsc/userOptions.d.ts +1 -1
  444. package/dist/plugin/worker/rsc/userOptions.d.ts.map +1 -1
  445. package/dist/plugin/worker/rsc/userOptions.js +3 -4
  446. package/dist/plugin/worker/sendMessage.d.ts +3 -4
  447. package/dist/plugin/worker/sendMessage.d.ts.map +1 -1
  448. package/dist/plugin/worker/sendMessage.js +15 -5
  449. package/dist/plugin/worker/types.d.ts +109 -260
  450. package/dist/plugin/worker/types.d.ts.map +1 -1
  451. package/dist/server.js +1 -1
  452. package/dist/tsconfig.tsbuildinfo +1 -1
  453. package/package.json +58 -25
  454. package/plugin/components/{css-collector-elements.tsx → css.tsx} +3 -3
  455. package/plugin/components/html.tsx +4 -4
  456. package/plugin/components/index.ts +3 -3
  457. package/plugin/components/root.tsx +20 -0
  458. package/plugin/config/autoDiscover/resolveAutoDiscover.ts +173 -134
  459. package/plugin/config/autoDiscover/resolveBuildPages.ts +120 -7
  460. package/plugin/config/createModuleID.ts +60 -39
  461. package/plugin/config/defaults.tsx +184 -95
  462. package/plugin/config/extMap.ts +51 -56
  463. package/plugin/config/flightBindings.ts +221 -0
  464. package/plugin/config/getCondition.ts +6 -0
  465. package/plugin/config/index.ts +17 -4
  466. package/plugin/config/interpolatePattern.ts +19 -0
  467. package/plugin/config/parsePattern.ts +81 -0
  468. package/plugin/config/resolveAllowedDirectives.ts +59 -0
  469. package/plugin/config/resolveDirectiveMatcher.ts +57 -0
  470. package/plugin/config/resolveEnv.ts +5 -10
  471. package/plugin/config/resolveOptions.ts +415 -299
  472. package/plugin/config/resolvePatternWithValues.ts +70 -0
  473. package/plugin/config/resolveRegExp.ts +89 -0
  474. package/plugin/config/resolveUrlOption.ts +92 -20
  475. package/plugin/config/resolveUserConfig.ts +417 -351
  476. package/plugin/env/plugin.ts +71 -7
  477. package/plugin/error/directiveError.ts +29 -0
  478. package/plugin/error/enhanceError.ts +41 -0
  479. package/plugin/error/index.ts +3 -0
  480. package/plugin/error/logError.ts +45 -0
  481. package/plugin/error/serializeError.ts +34 -0
  482. package/plugin/error/toError.ts +75 -45
  483. package/plugin/file-preserver/plugin.ts +3 -3
  484. package/plugin/getNodeEnv.ts +24 -0
  485. package/plugin/helpers/cleanObject.ts +2 -1
  486. package/plugin/helpers/collectViteModuleGraphCss.ts +138 -118
  487. package/plugin/helpers/createCssProps.tsx +41 -20
  488. package/plugin/helpers/createEventHandler.ts +1 -1
  489. package/plugin/helpers/createHandler.ts +40 -12
  490. package/plugin/helpers/createRscStream.tsx +97 -35
  491. package/plugin/helpers/formatMetrics.ts +2 -37
  492. package/plugin/helpers/getBundleManifest.ts +10 -1
  493. package/plugin/helpers/getRouteFiles.ts +112 -8
  494. package/plugin/helpers/handleServerAction.ts +10 -6
  495. package/plugin/helpers/hydrateUserOptions.ts +23 -0
  496. package/plugin/helpers/index.ts +4 -0
  497. package/plugin/helpers/inputNormalizer.ts +44 -24
  498. package/plugin/helpers/metrics.ts +4 -64
  499. package/plugin/helpers/moduleResolver.ts +74 -19
  500. package/plugin/helpers/requestInfo.ts +72 -52
  501. package/plugin/helpers/requestToRoute.ts +38 -12
  502. package/plugin/helpers/resolveComponent.ts +173 -0
  503. package/plugin/helpers/resolveComponents.ts +185 -0
  504. package/plugin/helpers/resolvePage.ts +35 -29
  505. package/plugin/helpers/resolvePageAndProps.ts +82 -61
  506. package/plugin/helpers/resolveProps.ts +100 -37
  507. package/plugin/helpers/resolveUserComponents.ts +190 -0
  508. package/plugin/helpers/serializeUserOptions.ts +190 -69
  509. package/plugin/helpers/stashReturnValue.ts +7 -4
  510. package/plugin/helpers/tryManifest.ts +1 -1
  511. package/plugin/loader/createDefaultLoader.ts +119 -119
  512. package/plugin/loader/createTransformer.ts +118 -0
  513. package/plugin/loader/css-loader.ts +206 -0
  514. package/plugin/loader/directives/addLocalExportedNames.ts +78 -0
  515. package/plugin/loader/directives/analyzeDirectives.ts +298 -0
  516. package/plugin/loader/directives/analyzeModule.ts +39 -0
  517. package/plugin/loader/directives/collectExports.ts +181 -0
  518. package/plugin/loader/directives/collectExportsFromModule.ts +25 -0
  519. package/plugin/loader/directives/findDirectiveMatches.ts +58 -0
  520. package/plugin/loader/directives/getExportedName.ts +73 -0
  521. package/plugin/loader/directives/getExports.ts +27 -0
  522. package/plugin/loader/directives/getFunctionBody.ts +32 -0
  523. package/plugin/loader/directives/getFunctionName.ts +70 -0
  524. package/plugin/loader/directives/getQualifiedName.ts +76 -0
  525. package/plugin/loader/directives/index.ts +13 -0
  526. package/plugin/loader/directives/processFunctionNode.ts +97 -0
  527. package/plugin/loader/directives/typeGuards.ts +160 -0
  528. package/plugin/loader/directives/types.ts +174 -0
  529. package/plugin/loader/directives/utils.ts +35 -0
  530. package/plugin/loader/{env-loader.development.ts → env-loader.ts} +8 -22
  531. package/plugin/loader/index.ts +8 -6
  532. package/plugin/loader/parse.ts +42 -12
  533. package/plugin/loader/react-loader.ts +255 -4
  534. package/plugin/loader/removeDirectives.ts +14 -0
  535. package/plugin/loader/removeRanges.ts +21 -0
  536. package/plugin/loader/sourceMap.ts +174 -84
  537. package/plugin/loader/transformClientModule.ts +64 -0
  538. package/plugin/loader/transformModule.ts +54 -0
  539. package/plugin/loader/transformModuleIfNeeded.ts +40 -40
  540. package/plugin/loader/transformServerModule.ts +136 -0
  541. package/plugin/loader/transformWithAcornLoose.ts +27 -0
  542. package/plugin/loader/types.ts +65 -13
  543. package/plugin/metrics/collectStreamMetrics.ts +38 -0
  544. package/plugin/metrics/createRenderMetrics.ts +17 -0
  545. package/plugin/metrics/createStreamMetrics.ts +14 -0
  546. package/plugin/metrics/formatMetrics.ts +7 -3
  547. package/plugin/metrics/index.ts +3 -1
  548. package/plugin/metrics/types.ts +24 -0
  549. package/plugin/plugin.client.ts +39 -15
  550. package/plugin/plugin.server.ts +39 -18
  551. package/plugin/preserver/plugin.ts +42 -42
  552. package/plugin/react-client/cleanupWorkerServerAction.ts +33 -0
  553. package/plugin/react-client/configureWorkerRequestHandler.ts +212 -201
  554. package/plugin/react-client/createMessageHandlers.ts +17 -3
  555. package/plugin/react-client/createWorkerStream.ts +55 -51
  556. package/plugin/react-client/handleWorkerRscStream.ts +141 -61
  557. package/plugin/react-client/handleWorkerServerAction.ts +59 -37
  558. package/plugin/react-client/index.ts +4 -1
  559. package/plugin/react-client/plugin.ts +17 -18
  560. package/plugin/react-client/restartWorker.ts +75 -70
  561. package/plugin/react-server/configureReactServer.ts +200 -142
  562. package/plugin/react-server/handleServerAction.ts +156 -160
  563. package/plugin/react-server/plugin.ts +18 -25
  564. package/plugin/react-static/collectHtmlWorkerContent.ts +109 -102
  565. package/plugin/react-static/collectRscContent.ts +55 -51
  566. package/plugin/react-static/configurePreviewServer.ts +110 -100
  567. package/plugin/react-static/createBuildLoader.ts +157 -48
  568. package/plugin/react-static/plugin.ts +368 -357
  569. package/plugin/react-static/renderPage.ts +43 -24
  570. package/plugin/react-static/renderPages.ts +21 -14
  571. package/plugin/react-static/renderStreams.ts +13 -15
  572. package/plugin/react-static/rscToHtmlStream.ts +4 -6
  573. package/plugin/react-static/types.ts +0 -3
  574. package/plugin/transformer/README.md +82 -8
  575. package/plugin/transformer/plugin.server.ts +55 -82
  576. package/plugin/types/css-tracking.ts +1 -1
  577. package/plugin/types/global.d.ts +2 -2
  578. package/plugin/types/react-server-dom-esm.d.ts +12 -13
  579. package/plugin/types.ts +685 -309
  580. package/plugin/utils/createCallServer.ts +5 -5
  581. package/plugin/utils/createReactFetcher.ts +4 -6
  582. package/plugin/utils/index.ts +2 -1
  583. package/plugin/utils/routeToURL.ts +34 -0
  584. package/plugin/utils/urls.ts +9 -6
  585. package/plugin/worker/createWorker.ts +67 -34
  586. package/plugin/worker/html/README.md +10 -0
  587. package/plugin/worker/html/createHtmlWorkerRenderState.tsx +7 -4
  588. package/plugin/worker/html/html-worker.development.tsx +4 -3
  589. package/plugin/worker/html/index.ts +3 -1
  590. package/plugin/worker/html/messageHandler.tsx +10 -16
  591. package/plugin/worker/html/sendHtmlWorkerMessage.ts +8 -0
  592. package/plugin/worker/html/types.ts +67 -1
  593. package/plugin/worker/index.ts +2 -0
  594. package/plugin/worker/registerLoaders.ts +3 -3
  595. package/plugin/worker/rsc/README.md +203 -1
  596. package/plugin/worker/rsc/handleRender.ts +76 -39
  597. package/plugin/worker/rsc/handlers.ts +30 -22
  598. package/plugin/worker/rsc/index.ts +2 -0
  599. package/plugin/worker/rsc/messageHandler.tsx +17 -10
  600. package/plugin/worker/rsc/rsc-worker.development.ts +104 -17
  601. package/plugin/worker/rsc/sendRscWorkerMessage.ts +7 -0
  602. package/plugin/worker/rsc/state.ts +1 -1
  603. package/plugin/worker/rsc/types.ts +185 -0
  604. package/plugin/worker/rsc/userOptions.ts +2 -3
  605. package/plugin/worker/sendMessage.ts +23 -14
  606. package/plugin/worker/types.ts +131 -386
  607. package/scripts/check-react-version.mjs +3 -3
  608. package/scripts/fix-unused-imports.mjs +77 -0
  609. package/tsconfig.json +1 -1
  610. package/dist/_virtual/dynamic-import-helper.js.map +0 -1
  611. package/dist/client.js.map +0 -1
  612. package/dist/index.js.map +0 -1
  613. package/dist/plugin/components/css-collector-elements.d.ts.map +0 -1
  614. package/dist/plugin/components/css-collector-elements.js +0 -33
  615. package/dist/plugin/components/css-collector-elements.js.map +0 -1
  616. package/dist/plugin/components/css-collector.d.ts +0 -7
  617. package/dist/plugin/components/css-collector.d.ts.map +0 -1
  618. package/dist/plugin/components/css-collector.js +0 -18
  619. package/dist/plugin/components/css-collector.js.map +0 -1
  620. package/dist/plugin/components/html.js.map +0 -1
  621. package/dist/plugin/components.js +0 -9
  622. package/dist/plugin/components.js.map +0 -1
  623. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js.map +0 -1
  624. package/dist/plugin/config/autoDiscover/customWorkerFiles.js.map +0 -1
  625. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js.map +0 -1
  626. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js.map +0 -1
  627. package/dist/plugin/config/autoDiscover/resolveBuildPages.js.map +0 -1
  628. package/dist/plugin/config/defaults.js.map +0 -1
  629. package/dist/plugin/config/extMap.js.map +0 -1
  630. package/dist/plugin/config/getCondition.js.map +0 -1
  631. package/dist/plugin/config/getPaths.js.map +0 -1
  632. package/dist/plugin/config/mimeTypes.js.map +0 -1
  633. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts +0 -5
  634. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts.map +0 -1
  635. package/dist/plugin/config/resolveAutoDiscoverMatcher.js +0 -25
  636. package/dist/plugin/config/resolveAutoDiscoverMatcher.js.map +0 -1
  637. package/dist/plugin/config/resolveEnv.js.map +0 -1
  638. package/dist/plugin/config/resolveOptions.js.map +0 -1
  639. package/dist/plugin/config/resolvePages.js.map +0 -1
  640. package/dist/plugin/config/resolveUrlOption.js.map +0 -1
  641. package/dist/plugin/config/resolveUserConfig.js.map +0 -1
  642. package/dist/plugin/config.js +0 -17
  643. package/dist/plugin/config.js.map +0 -1
  644. package/dist/plugin/env.js +0 -79
  645. package/dist/plugin/env.js.map +0 -1
  646. package/dist/plugin/error/toError.js.map +0 -1
  647. package/dist/plugin/file-preserver.js +0 -96
  648. package/dist/plugin/file-preserver.js.map +0 -1
  649. package/dist/plugin/helpers/cleanObject.js.map +0 -1
  650. package/dist/plugin/helpers/collectManifestCss.js.map +0 -1
  651. package/dist/plugin/helpers/collectViteModuleGraphCss.js.map +0 -1
  652. package/dist/plugin/helpers/createCssProps.js.map +0 -1
  653. package/dist/plugin/helpers/createEventHandler.js.map +0 -1
  654. package/dist/plugin/helpers/createHandler.js.map +0 -1
  655. package/dist/plugin/helpers/createRscStream.js.map +0 -1
  656. package/dist/plugin/helpers/formatMetrics.js.map +0 -1
  657. package/dist/plugin/helpers/getBundleManifest.js.map +0 -1
  658. package/dist/plugin/helpers/getRouteFiles.js.map +0 -1
  659. package/dist/plugin/helpers/handleServerAction.js.map +0 -1
  660. package/dist/plugin/helpers/inputNormalizer.js.map +0 -1
  661. package/dist/plugin/helpers/metrics.js.map +0 -1
  662. package/dist/plugin/helpers/moduleRefs.js.map +0 -1
  663. package/dist/plugin/helpers/requestInfo.js.map +0 -1
  664. package/dist/plugin/helpers/requestToRoute.js.map +0 -1
  665. package/dist/plugin/helpers/resolvePage.js.map +0 -1
  666. package/dist/plugin/helpers/resolvePageAndProps.js.map +0 -1
  667. package/dist/plugin/helpers/resolveProps.js.map +0 -1
  668. package/dist/plugin/helpers/serializeUserOptions.js.map +0 -1
  669. package/dist/plugin/helpers/sourceMap.d.ts +0 -8
  670. package/dist/plugin/helpers/sourceMap.d.ts.map +0 -1
  671. package/dist/plugin/helpers/sourceMap.js +0 -136
  672. package/dist/plugin/helpers/stashReturnValue.js.map +0 -1
  673. package/dist/plugin/helpers/tryManifest.js.map +0 -1
  674. package/dist/plugin/helpers.js +0 -27
  675. package/dist/plugin/helpers.js.map +0 -1
  676. package/dist/plugin/loader/css-loader.development.d.ts.map +0 -1
  677. package/dist/plugin/loader/css-loader.development.js +0 -76
  678. package/dist/plugin/loader/css-loader.development.js.map +0 -1
  679. package/dist/plugin/loader/css-loader.production.d.ts +0 -31
  680. package/dist/plugin/loader/css-loader.production.d.ts.map +0 -1
  681. package/dist/plugin/loader/css-loader.production.js +0 -45
  682. package/dist/plugin/loader/css-loader.production.js.map +0 -1
  683. package/dist/plugin/loader/env-loader.development.d.ts +0 -13
  684. package/dist/plugin/loader/env-loader.development.d.ts.map +0 -1
  685. package/dist/plugin/loader/env-loader.development.js +0 -68
  686. package/dist/plugin/loader/handleExports.d.ts +0 -40
  687. package/dist/plugin/loader/handleExports.d.ts.map +0 -1
  688. package/dist/plugin/loader/handleExports.js +0 -209
  689. package/dist/plugin/loader/handleExports.js.map +0 -1
  690. package/dist/plugin/loader/parse.js.map +0 -1
  691. package/dist/plugin/loader/react-loader.client.d.ts +0 -2
  692. package/dist/plugin/loader/react-loader.client.d.ts.map +0 -1
  693. package/dist/plugin/loader/react-loader.client.js +0 -2
  694. package/dist/plugin/loader/react-loader.js.map +0 -1
  695. package/dist/plugin/loader/react-loader.server.d.ts +0 -21
  696. package/dist/plugin/loader/react-loader.server.d.ts.map +0 -1
  697. package/dist/plugin/loader/react-loader.server.js +0 -131
  698. package/dist/plugin/loader/transformModuleIfNeeded.js.map +0 -1
  699. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts +0 -48
  700. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts.map +0 -1
  701. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js +0 -428
  702. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js.map +0 -1
  703. package/dist/plugin/metrics/formatMetrics.js.map +0 -1
  704. package/dist/plugin/metrics.js +0 -7
  705. package/dist/plugin/metrics.js.map +0 -1
  706. package/dist/plugin/plugin.client.js.map +0 -1
  707. package/dist/plugin/plugin.server.js.map +0 -1
  708. package/dist/plugin/preserver/plugin.js.map +0 -1
  709. package/dist/plugin/react-client/configureWorkerRequestHandler.js.map +0 -1
  710. package/dist/plugin/react-client/createMessageHandlers.js.map +0 -1
  711. package/dist/plugin/react-client/createWorkerStream.js.map +0 -1
  712. package/dist/plugin/react-client/handleWorkerRscStream.js.map +0 -1
  713. package/dist/plugin/react-client/handleWorkerServerAction.js.map +0 -1
  714. package/dist/plugin/react-client/plugin.js.map +0 -1
  715. package/dist/plugin/react-client/restartWorker.js.map +0 -1
  716. package/dist/plugin/react-server/configureReactServer.js.map +0 -1
  717. package/dist/plugin/react-server/handleServerAction.js.map +0 -1
  718. package/dist/plugin/react-server/plugin.js.map +0 -1
  719. package/dist/plugin/react-static/collectHtmlWorkerContent.js.map +0 -1
  720. package/dist/plugin/react-static/collectRscContent.js.map +0 -1
  721. package/dist/plugin/react-static/configurePreviewServer.js.map +0 -1
  722. package/dist/plugin/react-static/createBuildLoader.js.map +0 -1
  723. package/dist/plugin/react-static/fileWriter.js.map +0 -1
  724. package/dist/plugin/react-static/plugin.js.map +0 -1
  725. package/dist/plugin/react-static/renderPage.js.map +0 -1
  726. package/dist/plugin/react-static/renderPages.js.map +0 -1
  727. package/dist/plugin/react-static/renderStreams.js.map +0 -1
  728. package/dist/plugin/react-static/rscToHtmlStream.js.map +0 -1
  729. package/dist/plugin/react-static/temporaryReferences.js.map +0 -1
  730. package/dist/plugin/root.js.map +0 -1
  731. package/dist/plugin/source-map/createMappingsSerializer.d.ts +0 -2
  732. package/dist/plugin/source-map/createMappingsSerializer.d.ts.map +0 -1
  733. package/dist/plugin/source-map/createMappingsSerializer.js +0 -129
  734. package/dist/plugin/source-map/createMappingsSerializer.js.map +0 -1
  735. package/dist/plugin/source-map/readMappings.d.ts +0 -2
  736. package/dist/plugin/source-map/readMappings.d.ts.map +0 -1
  737. package/dist/plugin/source-map/readMappings.js +0 -200
  738. package/dist/plugin/transformer/plugin.client.d.ts +0 -2
  739. package/dist/plugin/transformer/plugin.client.d.ts.map +0 -1
  740. package/dist/plugin/transformer/plugin.js.map +0 -1
  741. package/dist/plugin/transformer/plugin.server.js.map +0 -1
  742. package/dist/plugin/utils/callServer.js.map +0 -1
  743. package/dist/plugin/utils/createCallServer.js.map +0 -1
  744. package/dist/plugin/utils/createReactFetcher.js.map +0 -1
  745. package/dist/plugin/utils/env.js.map +0 -1
  746. package/dist/plugin/utils/envUrls.node.js.map +0 -1
  747. package/dist/plugin/utils/urls.js.map +0 -1
  748. package/dist/plugin/utils.js +0 -11
  749. package/dist/plugin/utils.js.map +0 -1
  750. package/dist/plugin/vendor/vendor.client.js.map +0 -1
  751. package/dist/plugin/vendor/vendor.js.map +0 -1
  752. package/dist/plugin/vendor/vendor.server.js.map +0 -1
  753. package/dist/plugin/vendor.js +0 -7
  754. package/dist/plugin/vendor.js.map +0 -1
  755. package/dist/plugin/worker/createWorker.js.map +0 -1
  756. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js.map +0 -1
  757. package/dist/plugin/worker/html/html-worker.development.js.map +0 -1
  758. package/dist/plugin/worker/html/html-worker.production.js.map +0 -1
  759. package/dist/plugin/worker/html/index.js.map +0 -1
  760. package/dist/plugin/worker/html/messageHandler.js.map +0 -1
  761. package/dist/plugin/worker/rsc/handleRender.js.map +0 -1
  762. package/dist/plugin/worker/rsc/handlers.js.map +0 -1
  763. package/dist/plugin/worker/rsc/index.js.map +0 -1
  764. package/dist/plugin/worker/rsc/messageHandler.js.map +0 -1
  765. package/dist/plugin/worker/rsc/rsc-worker.development.js.map +0 -1
  766. package/dist/plugin/worker/rsc/rsc-worker.production.js.map +0 -1
  767. package/dist/plugin/worker/rsc/state.js.map +0 -1
  768. package/dist/plugin/worker/rsc/userOptions.js.map +0 -1
  769. package/dist/plugin/worker/sendMessage.js.map +0 -1
  770. package/dist/server.js.map +0 -1
  771. package/plugin/components/css-collector.tsx +0 -20
  772. package/plugin/config/resolveAutoDiscoverMatcher.ts +0 -23
  773. package/plugin/helpers/sourceMap.ts +0 -182
  774. package/plugin/loader/css-loader.development.ts +0 -135
  775. package/plugin/loader/css-loader.production.ts +0 -84
  776. package/plugin/loader/handleExports.ts +0 -309
  777. package/plugin/loader/react-loader.client.ts +0 -1
  778. package/plugin/loader/react-loader.server.ts +0 -185
  779. package/plugin/loader/transformModuleWithPreservedFunctions.ts +0 -593
  780. package/plugin/source-map/createMappingsSerializer.ts +0 -181
  781. package/plugin/source-map/readMappings.ts +0 -194
  782. package/plugin/transformer/plugin.client.ts +0 -0
  783. /package/dist/plugin/{transformer/plugin.client.js → loader/directives/types.js} +0 -0
@@ -15,13 +15,8 @@
15
15
  */
16
16
 
17
17
  import { join } from "node:path";
18
- import { Worker } from "node:worker_threads";
19
- import {
20
- type Manifest,
21
- type ResolvedConfig,
22
- type Plugin as VitePlugin,
23
- createLogger,
24
- } from "vite";
18
+ import type { Worker } from "node:worker_threads";
19
+ import { type Manifest, type ResolvedConfig, createLogger } from "vite";
25
20
  import { resolveOptions } from "../config/resolveOptions.js";
26
21
  import { resolveUserConfig } from "../config/resolveUserConfig.js";
27
22
  import { createBuildLoader } from "./createBuildLoader.js";
@@ -29,20 +24,16 @@ import type {
29
24
  BuildTiming,
30
25
  ReactStreamPluginMeta,
31
26
  ResolvedUserConfig,
32
- ResolvedUserOptions,
33
27
  PluginEvent,
34
28
  RenderPagesResult,
35
29
  AutoDiscoveredFiles,
36
30
  CssContent,
37
- PagePropOpt,
38
- InlineCssOpt,
31
+ ReactStreamPluginFn,
39
32
  } from "../types.js";
40
- import { type StreamPluginOptions } from "../types.js";
41
33
  import { renderPages } from "./renderPages.js";
42
34
  import { getBundleManifest } from "../helpers/getBundleManifest.js";
43
35
  import { createWorker } from "../worker/createWorker.js";
44
36
  import { resolveAutoDiscover } from "../config/autoDiscover/resolveAutoDiscover.js";
45
- import { getCondition } from "../config/getCondition.js";
46
37
  import {
47
38
  serializedOptions,
48
39
  serializeResolvedConfig,
@@ -53,386 +44,406 @@ import { performance } from "node:perf_hooks";
53
44
  import { DEFAULT_CONFIG } from "../config/defaults.js";
54
45
  import { baseURL } from "../utils/envUrls.node.js";
55
46
  import { readFile } from "node:fs/promises";
47
+ import { logError } from "../error/logError.js";
48
+ import { toError } from "../error/toError.js";
49
+ import { createDefaultModuleID } from "../config/createModuleID.js";
56
50
 
57
- if (getCondition() !== "react-server") {
58
- throw new Error(
59
- "Condition mismatch, should be react-server but got " +
60
- process.env["NODE_OPTIONS"]
61
- );
62
- }
63
51
 
64
- export function reactStaticPlugin<
65
- T extends PagePropOpt = PagePropOpt,
66
- InlineCSS extends InlineCssOpt = InlineCssOpt
67
- >(
68
- options: StreamPluginOptions<T, InlineCSS>
69
- ): VitePlugin<{
52
+ export type ReactStaticPluginFn = ReactStreamPluginFn<{
70
53
  meta: ReactStreamPluginMeta;
71
- }> {
72
- let worker: Worker;
73
- let userConfig: ResolvedUserConfig;
74
- let resolvedConfig: ResolvedConfig;
75
- let userOptions: ResolvedUserOptions<T, InlineCSS>;
76
- let autoDiscoveredFiles: AutoDiscoveredFiles | null = null;
77
- let serverManifest: Manifest | undefined = undefined;
78
- let buildLoader: Awaited<ReturnType<typeof createBuildLoader>> | undefined;
79
- const timing: BuildTiming = {
80
- start: Date.now(),
81
- configResolved: 0,
82
- buildStart: 0,
83
- renderStart: 0,
84
- };
85
-
86
- const resolvedOptions = resolveOptions(options);
87
- if (resolvedOptions.type === "error") {
88
- throw resolvedOptions.error;
89
- }
90
- userOptions = resolvedOptions.userOptions;
54
+ }>;
91
55
 
92
- return {
93
- name: "vite:plugin-react-server/static",
94
- enforce: "post",
95
- api: {
96
- meta: { timing },
97
- },
56
+ export const reactStaticPlugin: ReactStaticPluginFn =
57
+ function _reactStaticPlugin(options) {
58
+ let worker: Worker;
59
+ let userConfig: ResolvedUserConfig;
60
+ let resolvedConfig: ResolvedConfig;
61
+ let autoDiscoveredFiles: AutoDiscoveredFiles | null = null;
62
+ let serverManifest: Manifest | undefined = undefined;
63
+ const timing: BuildTiming = {
64
+ start: Date.now(),
65
+ configResolved: 0,
66
+ buildStart: 0,
67
+ renderStart: 0,
68
+ };
98
69
 
99
- async config(config, configEnv) {
100
- if (config.root && config.root !== userOptions.projectRoot) {
101
- userOptions.projectRoot = config.root;
102
- }
103
- if (configEnv.command !== "build") {
104
- return;
105
- }
106
- // Initialize autoDiscoveredFiles for both server and client builds
107
- const autoDiscoverResult = await resolveAutoDiscover({
108
- config,
109
- configEnv,
110
- userOptions,
111
- condition: "react-server",
112
- });
113
- if (autoDiscoverResult.type === "error") {
114
- throw autoDiscoverResult.error;
115
- }
116
- autoDiscoveredFiles = autoDiscoverResult.autoDiscoveredFiles;
117
- const resolvedConfig = resolveUserConfig({
118
- condition: "react-server",
119
- config,
120
- configEnv,
121
- userOptions,
122
- autoDiscoveredFiles,
123
- });
124
- if (resolvedConfig.type === "error") {
125
- throw resolvedConfig.error;
126
- }
70
+ const resolvedOptions = resolveOptions(options);
71
+ if (resolvedOptions.type === "error") {
72
+ throw resolvedOptions.error;
73
+ }
74
+ const userOptions = resolvedOptions.userOptions;
127
75
 
128
- userConfig = resolvedConfig.userConfig;
129
- timing.configResolved = Date.now();
130
- },
131
- configResolved(config) {
132
- resolvedConfig = config;
133
- },
134
- async buildStart() {
135
- timing.buildStart = Date.now();
136
- if (userOptions.onEvent && autoDiscoveredFiles) {
137
- userOptions.onEvent({
138
- type: "build.start",
139
- data: {
140
- pages: Array.from(autoDiscoveredFiles.urlMap.keys()),
141
- files: autoDiscoveredFiles,
142
- },
143
- });
144
- }
145
- },
146
-
147
- async renderStart() {
148
- timing.renderStart = Date.now();
149
- },
76
+ return {
77
+ name: "vite:plugin-react-server/static",
78
+ enforce: "post",
79
+ api: {
80
+ meta: { timing },
81
+ },
150
82
 
151
- async writeBundle(options, bundle) {
152
- if (userOptions.onEvent) {
153
- userOptions.onEvent({
154
- type: "build.writeBundle.static-server",
155
- data: {
156
- pages: Array.from(autoDiscoveredFiles?.urlMap.keys() ?? []),
157
- options,
158
- bundle,
159
- },
83
+ async config(config, configEnv) {
84
+ if (config.root && config.root !== userOptions.projectRoot) {
85
+ userOptions.projectRoot = config.root;
86
+ }
87
+ if (configEnv.command !== "build") {
88
+ return;
89
+ }
90
+ if(typeof userOptions.moduleID !== "function") {
91
+ userOptions.moduleID = createDefaultModuleID(userOptions, configEnv, userOptions.loader.mode);
92
+ }
93
+ // Initialize autoDiscoveredFiles for both server and client builds
94
+ const autoDiscoverResult = await resolveAutoDiscover({
95
+ config,
96
+ configEnv,
97
+ userOptions,
98
+ condition: "react-server",
160
99
  });
161
- }
162
- try {
163
- const bundleManifest = getBundleManifest<false>({
164
- bundle,
165
- normalizer: userOptions.normalizer,
100
+ if (autoDiscoverResult.type === "error") {
101
+ throw autoDiscoverResult.error;
102
+ }
103
+ autoDiscoveredFiles = autoDiscoverResult.autoDiscoveredFiles;
104
+ const resolvedConfig = resolveUserConfig({
105
+ condition: "react-server",
106
+ config,
107
+ configEnv,
108
+ userOptions,
109
+ autoDiscoveredFiles,
166
110
  });
167
- const manifestPath =
168
- typeof resolvedConfig.build.manifest === "string"
169
- ? resolvedConfig.build.manifest
170
- : ".vite/manifest.json";
171
- if (!("source" in bundleManifest[manifestPath])) {
172
- throw new Error("Server manifest not found");
111
+ if (resolvedConfig.type === "error") {
112
+ throw resolvedConfig.error;
173
113
  }
174
114
 
175
- serverManifest = JSON.parse(
176
- bundleManifest[manifestPath].source as string
177
- );
178
-
179
- if (!serverManifest) {
180
- throw new Error("Failed to parse server manifest");
115
+ userConfig = resolvedConfig.userConfig;
116
+ timing.configResolved = Date.now();
117
+ },
118
+ configResolved(config) {
119
+ resolvedConfig = config;
120
+ },
121
+ async buildStart() {
122
+ timing.buildStart = Date.now();
123
+ if (userOptions.onEvent && autoDiscoveredFiles) {
124
+ userOptions.onEvent({
125
+ type: "build.start",
126
+ data: {
127
+ pages: Array.from(autoDiscoveredFiles.urlMap.keys()),
128
+ files: autoDiscoveredFiles,
129
+ },
130
+ });
181
131
  }
132
+ },
133
+
134
+ async renderStart() {
135
+ timing.renderStart = Date.now();
136
+ },
182
137
 
183
- buildLoader = await createBuildLoader(
184
- {
185
- userConfig,
186
- userOptions: userOptions,
187
- serverManifest: serverManifest ?? {},
188
- staticManifest: autoDiscoveredFiles?.staticManifest ?? {},
189
- clientManifest: {},
190
- },
191
- bundle
192
- );
138
+ async writeBundle(options, bundle) {
139
+ if (userOptions.onEvent) {
140
+ userOptions.onEvent({
141
+ type: "build.writeBundle.static-server",
142
+ data: {
143
+ pages: Array.from(autoDiscoveredFiles?.urlMap.keys() ?? []),
144
+ options,
145
+ bundle,
146
+ },
147
+ });
148
+ }
149
+ try {
150
+ const bundleManifest = getBundleManifest<false>({
151
+ bundle,
152
+ normalizer: userOptions.normalizer,
153
+ });
154
+ const manifestPath =
155
+ typeof resolvedConfig.build.manifest === "string"
156
+ ? resolvedConfig.build.manifest
157
+ : ".vite/manifest.json";
158
+ if (!bundleManifest[manifestPath] || !("source" in bundleManifest[manifestPath])) {
159
+ throw new Error("Server manifest not found");
160
+ }
193
161
 
194
- // Create CSS props for each CSS file
195
- const cssFilesByPage = new Map();
162
+ serverManifest = JSON.parse(
163
+ bundleManifest[manifestPath].source as string
164
+ );
196
165
 
197
- // First collect global styles from index.html
198
- const indexHtmlCssInputs = collectManifestCss(
199
- autoDiscoveredFiles?.staticManifest ?? {},
200
- userOptions.clientEntry ?? "index.html"
201
- );
202
- const clientEntryCssInputs = collectManifestCss(
203
- autoDiscoveredFiles?.staticManifest ?? {},
204
- userOptions.clientEntry
205
- );
206
- const globalCssInputs = {
207
- ...indexHtmlCssInputs,
208
- ...clientEntryCssInputs,
209
- };
166
+ if (!serverManifest) {
167
+ throw new Error("Failed to parse server manifest");
168
+ }
210
169
 
211
- const globalCss: Map<string, CssContent<InlineCSS>> = new Map();
212
- // Collect CSS files for each page and its props
213
- for (const [url, { page, props }] of autoDiscoveredFiles?.urlMap ??
214
- []) {
215
- const transformedServerManifest = Object.fromEntries(
216
- Object.entries(serverManifest).map(([key, value]) => {
217
- if (!value.css?.length) {
218
- return [key, value];
219
- }
220
- return [
221
- key,
222
- {
223
- ...value,
224
- css:
225
- autoDiscoveredFiles?.staticManifest[key]?.css ?? value.css,
226
- },
227
- ];
228
- })
170
+ const buildLoader = createBuildLoader(
171
+ {
172
+ userConfig,
173
+ userOptions: userOptions,
174
+ serverManifest: serverManifest ?? {},
175
+ staticManifest: autoDiscoveredFiles?.staticManifest ?? {},
176
+ clientManifest: {},
177
+ },
178
+ bundle
229
179
  );
230
- const cssInputs = collectManifestCss(
231
- transformedServerManifest,
232
- props ? [page, props] : page
180
+
181
+ // Create CSS props for each CSS file
182
+ const cssFilesByPage = new Map();
183
+
184
+ // First collect global styles from index.html
185
+ const indexHtmlCssInputs = collectManifestCss(
186
+ autoDiscoveredFiles?.staticManifest ?? {},
187
+ "index.html"
233
188
  );
234
- // Create a map for this page's CSS files
235
- const pageCssMap: Map<string, CssContent> = new Map();
236
- // Add global styles if they exist
237
- if (Object.keys(globalCssInputs).length > 0) {
238
- for (const [key, value] of Object.entries(globalCssInputs)) {
239
- let cssContent = await buildLoader(value + "?inline").then((r) =>
240
- String(r.default)
241
- );
242
- if (cssContent === "undefined" || !cssContent) {
243
- cssContent =
244
- (await readFile(
245
- join(
246
- userOptions.projectRoot,
247
- userOptions.build.outDir,
248
- userOptions.build.static,
249
- key
250
- ),
251
- "utf-8"
252
- )) ?? "";
253
- }
254
- if (cssContent) {
255
- globalCss.set(
189
+ const clientEntryCssInputs = userOptions.clientEntry
190
+ ? collectManifestCss(
191
+ autoDiscoveredFiles?.staticManifest ?? {},
192
+ userOptions.clientEntry
193
+ )
194
+ : null;
195
+ const globalCssInputs = {
196
+ ...indexHtmlCssInputs,
197
+ ...clientEntryCssInputs,
198
+ };
199
+
200
+ const globalCss = new Map();
201
+ // Collect CSS files for each page and its props
202
+ for (const [url, { page, props }] of autoDiscoveredFiles?.urlMap ??
203
+ []) {
204
+ const transformedServerManifest = Object.fromEntries(
205
+ Object.entries(serverManifest).map(([key, value]) => {
206
+ if (!value.css?.length) {
207
+ return [key, value];
208
+ }
209
+ return [
256
210
  key,
257
- createCssProps<T, InlineCSS>({
258
- id: key,
259
- code: cssContent,
260
- userOptions: userOptions,
261
- })
211
+ {
212
+ ...value,
213
+ css:
214
+ autoDiscoveredFiles?.staticManifest[key]?.css ??
215
+ value.css,
216
+ },
217
+ ];
218
+ })
219
+ );
220
+ const cssInputs = collectManifestCss(
221
+ transformedServerManifest,
222
+ props ? [page, props] : page
223
+ );
224
+ // Create a map for this page's CSS files
225
+ const pageCssMap: Map<string, CssContent> = new Map();
226
+ // Add global styles if they exist
227
+ if (Object.keys(globalCssInputs).length > 0) {
228
+ for (const [key, value] of Object.entries(globalCssInputs)) {
229
+ let cssContent = await buildLoader(`${value}?inline`).then(
230
+ (r) => r.default
262
231
  );
232
+ if (cssContent === "undefined" || !cssContent) {
233
+ cssContent =
234
+ (await readFile(
235
+ join(
236
+ userOptions.projectRoot,
237
+ userOptions.build.outDir,
238
+ userOptions.build.static,
239
+ key
240
+ ),
241
+ "utf-8"
242
+ )) ?? "";
243
+ }
244
+ if (cssContent) {
245
+ globalCss.set(
246
+ key,
247
+ createCssProps({
248
+ id: key,
249
+ code: cssContent,
250
+ userOptions: userOptions,
251
+ })
252
+ );
253
+ }
263
254
  }
264
255
  }
265
- }
266
256
 
267
- // Add page-specific styles
268
- for (const [key, value] of Object.entries(cssInputs)) {
269
- try {
270
- const { default: cssContent } = await buildLoader(
271
- value + "?inline"
272
- );
273
- if (typeof cssContent !== "string") {
274
- continue;
275
- }
276
- if (cssContent) {
277
- // Ensure the CSS file path is properly resolved
278
- pageCssMap.set(
279
- key,
280
- createCssProps({
281
- id: key,
282
- code: cssContent,
283
- userOptions: userOptions,
284
- })
257
+ // Add page-specific styles
258
+ for (const [key, value] of Object.entries(cssInputs)) {
259
+ try {
260
+ const cssContent = await buildLoader(`${value}?inline`).then(
261
+ (r) => String(r.default)
285
262
  );
263
+ if (
264
+ typeof cssContent !== "string" ||
265
+ cssContent === "undefined"
266
+ ) {
267
+ continue;
268
+ }
269
+ if (cssContent) {
270
+ // Ensure the CSS file path is properly resolved
271
+ pageCssMap.set(
272
+ key,
273
+ createCssProps({
274
+ id: key,
275
+ code: cssContent,
276
+ userOptions: userOptions,
277
+ })
278
+ );
279
+ }
280
+ } catch (error) {
281
+ console.warn(`Failed to process CSS file ${value}:`, error);
282
+ continue;
286
283
  }
287
- } catch (error) {
288
- console.warn(`Failed to process CSS file ${value}:`, error);
289
- continue;
290
284
  }
285
+ cssFilesByPage.set(url, pageCssMap);
291
286
  }
292
- cssFilesByPage.set(url, pageCssMap);
293
- }
294
287
 
295
- const staticManifest = autoDiscoveredFiles?.staticManifest ?? {};
296
- const indexHtml = staticManifest?.["index.html"]?.file;
297
- const pipeableStreamOptions = {
298
- ...userOptions.pipeableStreamOptions,
299
- bootstrapModules: [
300
- ...(indexHtml ? [baseURL(indexHtml)] : []),
301
- ...(userOptions.pipeableStreamOptions?.bootstrapModules ?? []),
302
- ],
303
- };
304
- userOptions.pipeableStreamOptions = pipeableStreamOptions;
305
- const serializedUserOptions = serializedOptions(
306
- userOptions,
307
- autoDiscoveredFiles!
308
- );
309
- // Create worker
310
- if (!worker) {
311
- const viteEnvPrefix =
312
- typeof resolvedConfig.envPrefix === "string"
313
- ? resolvedConfig.envPrefix
314
- : Array.isArray(resolvedConfig.envPrefix)
315
- ? resolvedConfig.envPrefix[0]
316
- : DEFAULT_CONFIG.ENV_PREFIX;
317
- const routeCount = autoDiscoveredFiles?.urlMap.size ?? 0;
318
- const maxListeners = routeCount + 1;
319
- const workerResult = await createWorker({
320
- projectRoot: userOptions.projectRoot,
321
- workerPath: userOptions.htmlWorkerPath,
322
- currentCondition: "react-server",
323
- reverseCondition: "react-client",
324
- maxListeners: maxListeners,
325
- envPrefix: viteEnvPrefix,
326
- logger: this.environment.logger,
327
- workerData: {
328
- resolvedConfig: serializeResolvedConfig(resolvedConfig),
329
- userOptions: {
330
- ...serializedUserOptions,
288
+ const staticManifest = autoDiscoveredFiles?.staticManifest ?? {};
289
+ const indexHtml = staticManifest?.["index.html"]?.file;
290
+ const pipeableStreamOptions = {
291
+ ...userOptions.pipeableStreamOptions,
292
+ bootstrapModules: [
293
+ ...(indexHtml ? [baseURL(indexHtml)] : []),
294
+ ...(userOptions.pipeableStreamOptions?.bootstrapModules ?? []),
295
+ ],
296
+ };
297
+ userOptions.pipeableStreamOptions = pipeableStreamOptions;
298
+ const serializedUserOptions = serializedOptions(
299
+ userOptions,
300
+ autoDiscoveredFiles!
301
+ );
302
+ // Create worker
303
+ if (!worker) {
304
+ const viteEnvPrefix =
305
+ typeof resolvedConfig.envPrefix === "string"
306
+ ? resolvedConfig.envPrefix
307
+ : Array.isArray(resolvedConfig.envPrefix)
308
+ ? resolvedConfig.envPrefix[0]
309
+ : DEFAULT_CONFIG.ENV_PREFIX;
310
+ const routeCount = autoDiscoveredFiles?.urlMap.size ?? 0;
311
+ const maxListeners = routeCount + 1;
312
+ const workerResult = await createWorker({
313
+ projectRoot: userOptions.projectRoot,
314
+ workerPath: userOptions.htmlWorkerPath,
315
+ currentCondition: "react-server",
316
+ reverseCondition: "react-client",
317
+ maxListeners: maxListeners,
318
+ envPrefix: viteEnvPrefix,
319
+ logger: this.environment.logger,
320
+ workerData: {
321
+ resolvedConfig: serializeResolvedConfig(resolvedConfig),
322
+ userOptions: serializedUserOptions,
331
323
  },
332
- },
333
- });
334
- if (workerResult.type === "error") {
335
- throw workerResult.error;
336
- } else if (workerResult.type === "skip") {
337
- this.environment.logger.info(
338
- "Worker not created, skipping static build"
339
- );
340
- return;
341
- } else {
342
- worker = workerResult.worker;
324
+ });
325
+ if (workerResult.type === "error") {
326
+ throw workerResult.error;
327
+ } else if (workerResult.type === "skip") {
328
+ this.environment.logger.info(
329
+ "Worker not created, skipping static build"
330
+ );
331
+ return;
332
+ } else {
333
+ worker = workerResult.worker;
334
+ }
343
335
  }
344
- }
345
- // Render pages
346
- const { onEvent, ...handlerOptions } = userOptions;
347
- const renderPagesGenerator = renderPages(
348
- autoDiscoveredFiles!,
349
- {
350
- ...handlerOptions,
351
- loader: buildLoader,
352
- worker: worker,
353
- logger: createLogger(),
354
- onEvent: async (event: PluginEvent) => {
355
- if (userOptions.onEvent) {
356
- userOptions.onEvent(event);
357
- }
358
- // Add file write completion event
359
- if (event.type === "file.write") {
360
- await event.data.onComplete();
361
- }
362
- },
363
- pipeableStreamOptions: pipeableStreamOptions,
364
- manifest: serverManifest ?? {},
365
- build: {
366
- htmlOutputPath: userOptions.build.htmlOutputPath,
367
- rscOutputPath: userOptions.build.rscOutputPath,
368
- outDir: userOptions.build.outDir,
369
- pages: userOptions.build.pages,
370
- server: userOptions.build.server,
371
- static: userOptions.build.static,
372
- client: userOptions.build.client,
373
- },
374
- globalCss: globalCss,
375
- css: {
376
- ...handlerOptions.css,
377
- inlineCss: handlerOptions.css?.inlineCss ?? true,
336
+ // Render pages - component resolution now happens per-route in renderPage
337
+ const { onEvent, ...handlerOptions } = userOptions;
338
+ const renderPagesGenerator = renderPages(
339
+ autoDiscoveredFiles!,
340
+ {
341
+ ...handlerOptions,
342
+ loader: buildLoader,
343
+ worker: worker,
344
+ logger: createLogger(),
345
+ onEvent: async (event: PluginEvent) => {
346
+ if (onEvent) {
347
+ onEvent(event);
348
+ }
349
+ // Add file write completion event
350
+ if (event.type === "file.write") {
351
+ await event.data.onComplete();
352
+ }
353
+ },
354
+ pipeableStreamOptions: pipeableStreamOptions,
355
+ manifest: serverManifest ?? {},
356
+ build: {
357
+ htmlOutputPath: userOptions.build.htmlOutputPath,
358
+ rscOutputPath: userOptions.build.rscOutputPath,
359
+ outDir: userOptions.build.outDir,
360
+ pages: userOptions.build.pages,
361
+ server: userOptions.build.server,
362
+ static: userOptions.build.static,
363
+ client: userOptions.build.client,
364
+ },
365
+ globalCss: globalCss,
366
+ css: {
367
+ ...handlerOptions.css,
368
+ inlineCss: handlerOptions.css.inlineCss,
369
+ },
370
+
378
371
  },
379
- },
380
- cssFilesByPage
381
- );
372
+ cssFilesByPage
373
+ );
382
374
 
383
- // Process render results
384
- let finalResult: RenderPagesResult | undefined;
385
- for await (const result of renderPagesGenerator) {
386
- if (result.type === "error") {
387
- throw result.error;
375
+ // Process render results
376
+ let finalResult: RenderPagesResult | undefined;
377
+ const errors: Error[] = [];
378
+ for await (const result of renderPagesGenerator) {
379
+ if (result.type === "error") {
380
+ errors.push(result.error);
381
+
382
+ // Provide developer-friendly error messages for common issues
383
+ if (result.error.message.includes("Attempted to load a Client Module outside the hosted root")) {
384
+ const failedRoutes = Array.from(result.failedRoutes || []);
385
+ const failingPage = failedRoutes[failedRoutes.length - 1] || 'unknown';
386
+ const hostedRoot = userOptions.moduleBaseURL || '/';
387
+ this.environment.logger.error(
388
+ `❌ Page: ${failingPage} | Hosted root: ${hostedRoot} | Client modules registered outside hosted root`
389
+ );
390
+ } else {
391
+ this.environment.logger.warn(
392
+ `Failed to render page, skipping: ${result.error.message}`
393
+ );
394
+ }
395
+
396
+ // Continue processing other pages instead of throwing
397
+ finalResult = {
398
+ type: "success",
399
+ completedRoutes: result.completedRoutes,
400
+ failedRoutes: undefined,
401
+ htmlSizes: result.htmlSizes,
402
+ rscSizes: result.rscSizes,
403
+ streamMetrics: result.streamMetrics,
404
+ results: result.results,
405
+ };
406
+ continue;
407
+ }
408
+ finalResult = result;
388
409
  }
389
- finalResult = result;
390
- }
391
410
 
392
- if (!finalResult) {
393
- throw new Error("No render result produced");
394
- }
395
- finalResult.streamMetrics.duration = Math.round(
396
- performance.now() - finalResult.streamMetrics.startTime
397
- );
398
-
399
- this.environment.logger.info(
400
- `Rendered ${finalResult.completedRoutes.size} unique routes in ${finalResult.streamMetrics.duration}ms`
401
- );
402
- if (process.env["NODE_ENV"] !== "production") {
403
- this.environment.logger.warn(
404
- `THIS IS BUILD IS NOT INTENDED FOR PRODUCTION (${process.env["NODE_ENV"]})`
411
+ if (!finalResult) {
412
+ throw new Error("No render result produced");
413
+ }
414
+ finalResult.streamMetrics.duration = Math.round(
415
+ performance.now() - finalResult.streamMetrics.startTime
405
416
  );
406
- }
407
417
 
408
- // Update timing
409
- timing.render = Date.now() - (timing.renderStart ?? timing.start);
410
- } catch (error) {
411
- throw error;
412
- }
418
+ this.environment.logger.info(
419
+ `Rendered ${finalResult.completedRoutes.size} unique routes in ${finalResult.streamMetrics.duration}ms`
420
+ );
421
+ if (errors.length > 0) {
422
+ this.environment.logger.warn(
423
+ `${errors.length} pages failed to render and were skipped`
424
+ );
425
+ }
426
+ if (process.env["NODE_ENV"] !== "production") {
427
+ this.environment.logger.warn(
428
+ `THIS IS BUILD IS NOT INTENDED FOR PRODUCTION (${process.env["NODE_ENV"]})`
429
+ );
430
+ }
413
431
 
414
- // Cleanup
415
- try {
416
- worker.postMessage({ type: "SHUTDOWN", id: "*" });
417
- await new Promise<void>((resolve, reject) => {
418
- const shutdownHandler = (msg: any) => {
419
- if (msg.type === "SHUTDOWN_COMPLETE") {
420
- worker.removeListener("message", shutdownHandler);
421
- worker
422
- .terminate()
423
- .then((code) =>
424
- code === 1
425
- ? resolve()
426
- : reject(new Error(`Worker terminated with code ${code}`))
427
- )
428
- .catch(reject);
432
+ // Update timing
433
+ timing.render = Date.now() - (timing.renderStart ?? timing.start);
434
+ } catch (error) {
435
+ logError(toError(error), this.environment.logger);
436
+ } finally {
437
+ // Cleanup
438
+ if (worker) {
439
+ try {
440
+ // Force terminate the worker without waiting for graceful shutdown
441
+ await worker.terminate();
442
+ } catch (error) {
443
+ logError(toError(error), this.environment.logger);
429
444
  }
430
- };
431
- worker.on("message", shutdownHandler);
432
- });
433
- } catch (error) {
434
- throw error;
435
- }
436
- },
437
- } as const;
438
- }
445
+ }
446
+ }
447
+ },
448
+ } as const;
449
+ };