vite-plugin-react-server 1.2.0-alpha.1 → 1.2.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 (1137) hide show
  1. package/README.md +211 -51
  2. package/dist/client.d.ts +4 -1
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +5 -6
  5. package/dist/index.d.ts +3 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +7 -10
  8. package/dist/package.json +102 -27
  9. package/dist/plugin/bundle/bundles.d.ts +11 -0
  10. package/dist/plugin/bundle/bundles.d.ts.map +1 -0
  11. package/dist/plugin/bundle/bundles.js +11 -0
  12. package/dist/plugin/bundle/deferredStaticGeneration.d.ts +31 -0
  13. package/dist/plugin/bundle/deferredStaticGeneration.d.ts.map +1 -0
  14. package/dist/plugin/bundle/deferredStaticGeneration.js +44 -0
  15. package/dist/plugin/bundle/manifests.d.ts +20 -0
  16. package/dist/plugin/bundle/manifests.d.ts.map +1 -0
  17. package/dist/plugin/bundle/manifests.js +54 -0
  18. package/dist/plugin/components/css.d.ts +2 -5
  19. package/dist/plugin/components/css.d.ts.map +1 -1
  20. package/dist/plugin/components/css.js +7 -9
  21. package/dist/plugin/components/html.d.ts +2 -3
  22. package/dist/plugin/components/html.d.ts.map +1 -1
  23. package/dist/plugin/components/html.js +3 -3
  24. package/dist/plugin/components/index.d.ts +1 -1
  25. package/dist/plugin/components/index.d.ts.map +1 -1
  26. package/dist/plugin/components/root.d.ts.map +1 -1
  27. package/dist/plugin/components/root.js +4 -4
  28. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.d.ts.map +1 -1
  29. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js +6 -6
  30. package/dist/plugin/config/autoDiscover/pageAndPropFiles.d.ts.map +1 -1
  31. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js +1 -1
  32. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts +6 -5
  33. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts.map +1 -1
  34. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js +34 -51
  35. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts +5 -1
  36. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts.map +1 -1
  37. package/dist/plugin/config/autoDiscover/resolveBuildPages.js +124 -52
  38. package/dist/plugin/config/createHandlerOptions.client.d.ts +4 -0
  39. package/dist/plugin/config/createHandlerOptions.client.d.ts.map +1 -0
  40. package/dist/plugin/config/createHandlerOptions.client.js +293 -0
  41. package/dist/plugin/config/createHandlerOptions.d.ts +4 -0
  42. package/dist/plugin/config/createHandlerOptions.d.ts.map +1 -0
  43. package/dist/plugin/config/createHandlerOptions.js +13 -0
  44. package/dist/plugin/config/createHandlerOptions.server.d.ts +4 -0
  45. package/dist/plugin/config/createHandlerOptions.server.d.ts.map +1 -0
  46. package/dist/plugin/config/createHandlerOptions.server.js +344 -0
  47. package/dist/plugin/config/createHandlerOptions.types.d.ts +114 -0
  48. package/dist/plugin/config/createHandlerOptions.types.d.ts.map +1 -0
  49. package/dist/plugin/config/createModuleID.d.ts +1 -1
  50. package/dist/plugin/config/createModuleID.d.ts.map +1 -1
  51. package/dist/plugin/config/createModuleID.js +121 -8
  52. package/dist/plugin/config/defaults.d.ts +46 -6
  53. package/dist/plugin/config/defaults.d.ts.map +1 -1
  54. package/dist/plugin/config/defaults.js +54 -11
  55. package/dist/plugin/config/envPrefixFromConfig.d.ts +3 -0
  56. package/dist/plugin/config/envPrefixFromConfig.d.ts.map +1 -0
  57. package/dist/plugin/config/envPrefixFromConfig.js +8 -0
  58. package/dist/plugin/config/getCondition.d.ts +54 -3
  59. package/dist/plugin/config/getCondition.d.ts.map +1 -1
  60. package/dist/plugin/config/getCondition.js +158 -6
  61. package/dist/plugin/{getNodeEnv.d.ts → config/getNodeEnv.d.ts} +1 -1
  62. package/dist/plugin/config/getNodeEnv.d.ts.map +1 -0
  63. package/dist/plugin/config/getNodeEnv.js +17 -0
  64. package/dist/plugin/config/index.d.ts +43 -1
  65. package/dist/plugin/config/index.d.ts.map +1 -1
  66. package/dist/plugin/config/index.js +9 -4
  67. package/dist/plugin/config/resolveDirectiveMatcher.d.ts +6 -6
  68. package/dist/plugin/config/resolveDirectiveMatcher.d.ts.map +1 -1
  69. package/dist/plugin/config/resolveDirectiveMatcher.js +7 -23
  70. package/dist/plugin/config/resolveEnv.d.ts.map +1 -1
  71. package/dist/plugin/config/resolveEnv.js +3 -6
  72. package/dist/plugin/config/resolveOptions.d.ts +3 -2
  73. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  74. package/dist/plugin/config/resolveOptions.js +188 -43
  75. package/dist/plugin/config/resolvePages.d.ts +1 -1
  76. package/dist/plugin/config/resolvePages.d.ts.map +1 -1
  77. package/dist/plugin/config/resolvePages.js +1 -1
  78. package/dist/plugin/config/resolvePatternWithValues.d.ts.map +1 -1
  79. package/dist/plugin/config/resolvePatternWithValues.js +7 -26
  80. package/dist/plugin/config/resolveUrlOption.d.ts +1 -1
  81. package/dist/plugin/config/resolveUrlOption.d.ts.map +1 -1
  82. package/dist/plugin/config/resolveUrlOption.js +2 -2
  83. package/dist/plugin/config/resolveUserConfig.d.ts +5 -3
  84. package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
  85. package/dist/plugin/config/resolveUserConfig.js +221 -75
  86. package/dist/plugin/config/stashedOptionsState.d.ts +66 -0
  87. package/dist/plugin/config/stashedOptionsState.d.ts.map +1 -0
  88. package/dist/plugin/config/stashedOptionsState.js +25 -0
  89. package/dist/plugin/dev-server/cleanupServerAction.client.d.ts +6 -0
  90. package/dist/plugin/dev-server/cleanupServerAction.client.d.ts.map +1 -0
  91. package/dist/plugin/dev-server/cleanupServerAction.client.js +28 -0
  92. package/dist/plugin/dev-server/cleanupServerAction.d.ts +2 -0
  93. package/dist/plugin/dev-server/cleanupServerAction.d.ts.map +1 -0
  94. package/dist/plugin/dev-server/cleanupServerAction.js +4 -0
  95. package/dist/plugin/dev-server/cleanupServerAction.server.d.ts +8 -0
  96. package/dist/plugin/dev-server/cleanupServerAction.server.d.ts.map +1 -0
  97. package/dist/plugin/dev-server/cleanupServerAction.server.js +15 -0
  98. package/dist/plugin/dev-server/configureReactServer.client.d.ts +7 -0
  99. package/dist/plugin/dev-server/configureReactServer.client.d.ts.map +1 -0
  100. package/dist/plugin/dev-server/configureReactServer.client.js +85 -0
  101. package/dist/plugin/dev-server/configureReactServer.d.ts +2 -0
  102. package/dist/plugin/dev-server/configureReactServer.d.ts.map +1 -0
  103. package/dist/plugin/dev-server/configureReactServer.js +13 -0
  104. package/dist/plugin/dev-server/configureReactServer.server.d.ts +3 -0
  105. package/dist/plugin/dev-server/configureReactServer.server.d.ts.map +1 -0
  106. package/dist/plugin/dev-server/configureReactServer.server.js +444 -0
  107. package/dist/plugin/dev-server/configureRequestHandler.client.d.ts +13 -0
  108. package/dist/plugin/dev-server/configureRequestHandler.client.d.ts.map +1 -0
  109. package/dist/plugin/dev-server/configureRequestHandler.client.js +307 -0
  110. package/dist/plugin/dev-server/configureRequestHandler.d.ts +2 -0
  111. package/dist/plugin/dev-server/configureRequestHandler.d.ts.map +1 -0
  112. package/dist/plugin/dev-server/configureRequestHandler.js +4 -0
  113. package/dist/plugin/dev-server/configureRequestHandler.server.d.ts +6 -0
  114. package/dist/plugin/dev-server/configureRequestHandler.server.d.ts.map +1 -0
  115. package/dist/plugin/dev-server/configureRequestHandler.server.js +44 -0
  116. package/dist/plugin/dev-server/handleServerAction.client.d.ts +11 -0
  117. package/dist/plugin/dev-server/handleServerAction.client.d.ts.map +1 -0
  118. package/dist/plugin/dev-server/handleServerAction.client.js +97 -0
  119. package/dist/plugin/dev-server/handleServerAction.d.ts +2 -0
  120. package/dist/plugin/dev-server/handleServerAction.d.ts.map +1 -0
  121. package/dist/plugin/dev-server/handleServerAction.js +13 -0
  122. package/dist/plugin/dev-server/handleServerAction.server.d.ts +3 -0
  123. package/dist/plugin/dev-server/handleServerAction.server.d.ts.map +1 -0
  124. package/dist/plugin/dev-server/handleServerAction.server.js +15 -0
  125. package/dist/plugin/dev-server/index.client.d.ts +7 -0
  126. package/dist/plugin/dev-server/index.client.d.ts.map +1 -0
  127. package/dist/plugin/dev-server/index.client.js +11 -0
  128. package/dist/plugin/dev-server/index.d.ts +4 -0
  129. package/dist/plugin/dev-server/index.d.ts.map +1 -0
  130. package/dist/plugin/dev-server/index.js +19 -0
  131. package/dist/plugin/dev-server/index.server.d.ts +7 -0
  132. package/dist/plugin/dev-server/index.server.d.ts.map +1 -0
  133. package/dist/plugin/dev-server/index.server.js +11 -0
  134. package/dist/plugin/dev-server/plugin.client.d.ts +7 -0
  135. package/dist/plugin/dev-server/plugin.client.d.ts.map +1 -0
  136. package/dist/plugin/dev-server/plugin.client.js +122 -0
  137. package/dist/plugin/dev-server/plugin.server.d.ts +8 -0
  138. package/dist/plugin/dev-server/plugin.server.d.ts.map +1 -0
  139. package/dist/plugin/dev-server/plugin.server.js +108 -0
  140. package/dist/plugin/dev-server/restartWorker.client.d.ts +3 -0
  141. package/dist/plugin/dev-server/restartWorker.client.d.ts.map +1 -0
  142. package/dist/plugin/dev-server/restartWorker.client.js +131 -0
  143. package/dist/plugin/dev-server/restartWorker.d.ts +2 -0
  144. package/dist/plugin/dev-server/restartWorker.d.ts.map +1 -0
  145. package/dist/plugin/dev-server/restartWorker.js +4 -0
  146. package/dist/plugin/dev-server/restartWorker.server.d.ts +3 -0
  147. package/dist/plugin/dev-server/restartWorker.server.d.ts.map +1 -0
  148. package/dist/plugin/dev-server/restartWorker.server.js +88 -0
  149. package/dist/plugin/dev-server/types.d.ts +38 -0
  150. package/dist/plugin/dev-server/types.d.ts.map +1 -0
  151. package/dist/plugin/dev-server/virtualRscHmrPlugin.d.ts +7 -0
  152. package/dist/plugin/dev-server/virtualRscHmrPlugin.d.ts.map +1 -0
  153. package/dist/plugin/dev-server/virtualRscHmrPlugin.js +80 -0
  154. package/dist/plugin/env/createConfigEnv.d.ts +7 -1
  155. package/dist/plugin/env/createConfigEnv.d.ts.map +1 -1
  156. package/dist/plugin/env/createConfigEnv.js +18 -5
  157. package/dist/plugin/env/createEnvPlugin.d.ts +3 -0
  158. package/dist/plugin/env/createEnvPlugin.d.ts.map +1 -0
  159. package/dist/plugin/env/createEnvPlugin.js +59 -0
  160. package/dist/plugin/env/getArgValue.js +47 -27
  161. package/dist/plugin/env/getEnvKey.d.ts +6 -0
  162. package/dist/plugin/env/getEnvKey.d.ts.map +1 -1
  163. package/dist/plugin/env/getEnvKey.js +11 -3
  164. package/dist/plugin/env/index.d.ts +2 -0
  165. package/dist/plugin/env/index.d.ts.map +1 -1
  166. package/dist/plugin/env/index.js +4 -0
  167. package/dist/plugin/env/plugin.client.d.ts +2 -0
  168. package/dist/plugin/env/plugin.client.d.ts.map +1 -0
  169. package/dist/plugin/env/plugin.client.js +2 -0
  170. package/dist/plugin/env/plugin.d.ts +4 -34
  171. package/dist/plugin/env/plugin.d.ts.map +1 -1
  172. package/dist/plugin/env/plugin.js +31 -64
  173. package/dist/plugin/env/plugin.server.d.ts +2 -0
  174. package/dist/plugin/env/plugin.server.d.ts.map +1 -0
  175. package/dist/plugin/env/plugin.server.js +2 -0
  176. package/dist/plugin/env/userConfigEnv.js +9 -18
  177. package/dist/plugin/environments/createBuildEventPlugin.d.ts +4 -0
  178. package/dist/plugin/environments/createBuildEventPlugin.d.ts.map +1 -0
  179. package/dist/plugin/environments/createBuildEventPlugin.js +100 -0
  180. package/dist/plugin/environments/createEnvironmentPlugin.d.ts +19 -0
  181. package/dist/plugin/environments/createEnvironmentPlugin.d.ts.map +1 -0
  182. package/dist/plugin/environments/createEnvironmentPlugin.js +257 -0
  183. package/dist/plugin/environments/hashCoordination.d.ts +14 -0
  184. package/dist/plugin/environments/hashCoordination.d.ts.map +1 -0
  185. package/dist/plugin/environments/hashCoordination.js +35 -0
  186. package/dist/plugin/environments/resolveEnvironmentConfig.d.ts +41 -0
  187. package/dist/plugin/environments/resolveEnvironmentConfig.d.ts.map +1 -0
  188. package/dist/plugin/environments/resolveEnvironmentConfig.js +232 -0
  189. package/dist/plugin/error/assertPanic.d.ts +2 -0
  190. package/dist/plugin/error/assertPanic.d.ts.map +1 -0
  191. package/dist/plugin/error/assertPanic.js +15 -0
  192. package/dist/plugin/error/handleError.d.ts +9 -0
  193. package/dist/plugin/error/handleError.d.ts.map +1 -0
  194. package/dist/plugin/error/handleError.js +51 -0
  195. package/dist/plugin/error/index.d.ts +3 -0
  196. package/dist/plugin/error/index.d.ts.map +1 -1
  197. package/dist/plugin/error/index.js +4 -1
  198. package/dist/plugin/error/logError.d.ts +6 -2
  199. package/dist/plugin/error/logError.d.ts.map +1 -1
  200. package/dist/plugin/error/logError.js +34 -36
  201. package/dist/plugin/error/panicThresholdHandler.d.ts +27 -0
  202. package/dist/plugin/error/panicThresholdHandler.d.ts.map +1 -0
  203. package/dist/plugin/error/panicThresholdHandler.js +13 -0
  204. package/dist/plugin/error/serializeError.d.ts +6 -2
  205. package/dist/plugin/error/serializeError.d.ts.map +1 -1
  206. package/dist/plugin/error/serializeError.js +30 -10
  207. package/dist/plugin/error/serializeErrorInfo.d.ts +5 -0
  208. package/dist/plugin/error/serializeErrorInfo.d.ts.map +1 -0
  209. package/dist/plugin/error/serializeErrorInfo.js +19 -0
  210. package/dist/plugin/error/setupGlobalErrorHandler.d.ts +4 -0
  211. package/dist/plugin/error/setupGlobalErrorHandler.d.ts.map +1 -0
  212. package/dist/plugin/error/setupGlobalErrorHandler.js +52 -0
  213. package/dist/plugin/error/shouldPanic.d.ts +6 -0
  214. package/dist/plugin/error/shouldPanic.d.ts.map +1 -0
  215. package/dist/plugin/error/shouldPanic.js +15 -0
  216. package/dist/plugin/error/toError.d.ts +5 -1
  217. package/dist/plugin/error/toError.d.ts.map +1 -1
  218. package/dist/plugin/error/toError.js +43 -19
  219. package/dist/plugin/error/types.d.ts +28 -0
  220. package/dist/plugin/error/types.d.ts.map +1 -0
  221. package/dist/plugin/error/types.js +1 -0
  222. package/dist/plugin/helpers/collectManifestCss.d.ts.map +1 -1
  223. package/dist/plugin/helpers/collectManifestCss.js +19 -5
  224. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +3 -3
  225. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
  226. package/dist/plugin/helpers/collectViteModuleGraphCss.js +64 -3
  227. package/dist/plugin/helpers/createBufferedRscStream.d.ts +52 -0
  228. package/dist/plugin/helpers/createBufferedRscStream.d.ts.map +1 -0
  229. package/dist/plugin/helpers/createBufferedRscStream.js +147 -0
  230. package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
  231. package/dist/plugin/helpers/createCssProps.js +15 -14
  232. package/dist/plugin/helpers/createElementWithReact.d.ts +9 -0
  233. package/dist/plugin/helpers/createElementWithReact.d.ts.map +1 -0
  234. package/dist/plugin/helpers/createElementWithReact.js +87 -0
  235. package/dist/plugin/helpers/createPatternMatcher.d.ts +24 -0
  236. package/dist/plugin/helpers/createPatternMatcher.d.ts.map +1 -0
  237. package/dist/plugin/helpers/createPatternMatcher.js +50 -0
  238. package/dist/plugin/helpers/createRscRenderHelpers.d.ts +16 -0
  239. package/dist/plugin/helpers/createRscRenderHelpers.d.ts.map +1 -0
  240. package/dist/plugin/helpers/createRscRenderHelpers.js +60 -0
  241. package/dist/plugin/helpers/createSafePageComponent.d.ts +36 -0
  242. package/dist/plugin/helpers/createSafePageComponent.d.ts.map +1 -0
  243. package/dist/plugin/helpers/createSafePageComponent.js +50 -0
  244. package/dist/plugin/helpers/createSerializableHandlerOptions.d.ts +60 -0
  245. package/dist/plugin/helpers/createSerializableHandlerOptions.d.ts.map +1 -0
  246. package/dist/plugin/helpers/createSerializableHandlerOptions.js +94 -0
  247. package/dist/plugin/helpers/createSharedLoader.d.ts +44 -0
  248. package/dist/plugin/helpers/createSharedLoader.d.ts.map +1 -0
  249. package/dist/plugin/helpers/createSharedLoader.js +137 -0
  250. package/dist/plugin/helpers/createUnifiedCssProcessor.d.ts +70 -0
  251. package/dist/plugin/helpers/createUnifiedCssProcessor.d.ts.map +1 -0
  252. package/dist/plugin/helpers/createUnifiedCssProcessor.js +89 -0
  253. package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
  254. package/dist/plugin/helpers/getBundleManifest.js +2 -3
  255. package/dist/plugin/helpers/getRouteFiles.d.ts +1 -1
  256. package/dist/plugin/helpers/getRouteFiles.d.ts.map +1 -1
  257. package/dist/plugin/helpers/getRouteFiles.js +43 -41
  258. package/dist/plugin/helpers/handleServerAction.client.d.ts +29 -0
  259. package/dist/plugin/helpers/handleServerAction.client.d.ts.map +1 -0
  260. package/dist/plugin/helpers/handleServerAction.client.js +93 -0
  261. package/dist/plugin/helpers/handleServerAction.d.ts +2 -34
  262. package/dist/plugin/helpers/handleServerAction.d.ts.map +1 -1
  263. package/dist/plugin/helpers/handleServerAction.js +15 -45
  264. package/dist/plugin/helpers/handleServerAction.server.d.ts +25 -0
  265. package/dist/plugin/helpers/handleServerAction.server.d.ts.map +1 -0
  266. package/dist/plugin/helpers/handleServerAction.server.js +80 -0
  267. package/dist/plugin/helpers/handleServerActionHelper.d.ts +61 -0
  268. package/dist/plugin/helpers/handleServerActionHelper.d.ts.map +1 -0
  269. package/dist/plugin/helpers/handleServerActionHelper.js +183 -0
  270. package/dist/plugin/helpers/headlessStreamReuseHandler.d.ts +12 -0
  271. package/dist/plugin/helpers/headlessStreamReuseHandler.d.ts.map +1 -0
  272. package/dist/plugin/helpers/headlessStreamReuseHandler.js +29 -0
  273. package/dist/plugin/helpers/headlessStreamState.d.ts +71 -0
  274. package/dist/plugin/helpers/headlessStreamState.d.ts.map +1 -0
  275. package/dist/plugin/helpers/headlessStreamState.js +81 -0
  276. package/dist/plugin/helpers/hydrateUserOptions.d.ts +1 -1
  277. package/dist/plugin/helpers/hydrateUserOptions.d.ts.map +1 -1
  278. package/dist/plugin/helpers/hydrateUserOptions.js +2 -2
  279. package/dist/plugin/helpers/index.d.ts +12 -5
  280. package/dist/plugin/helpers/index.d.ts.map +1 -1
  281. package/dist/plugin/helpers/index.js +18 -4
  282. package/dist/plugin/helpers/logRenderStart.d.ts +17 -0
  283. package/dist/plugin/helpers/logRenderStart.d.ts.map +1 -0
  284. package/dist/plugin/helpers/logRenderStart.js +13 -0
  285. package/dist/plugin/helpers/mergeMessageWithDefaults.d.ts +90 -0
  286. package/dist/plugin/helpers/mergeMessageWithDefaults.d.ts.map +1 -0
  287. package/dist/plugin/helpers/mergeMessageWithDefaults.js +67 -0
  288. package/dist/plugin/helpers/pipeToResponse.d.ts +19 -0
  289. package/dist/plugin/helpers/pipeToResponse.d.ts.map +1 -0
  290. package/dist/plugin/helpers/pipeToResponse.js +55 -0
  291. package/dist/plugin/helpers/requestInfo.d.ts +2 -0
  292. package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
  293. package/dist/plugin/helpers/requestInfo.js +6 -2
  294. package/dist/plugin/helpers/resolveComponents.client.d.ts +34 -0
  295. package/dist/plugin/helpers/resolveComponents.client.d.ts.map +1 -0
  296. package/dist/plugin/helpers/resolveComponents.client.js +126 -0
  297. package/dist/plugin/helpers/resolveModuleFromManifest.d.ts +36 -0
  298. package/dist/plugin/helpers/resolveModuleFromManifest.d.ts.map +1 -0
  299. package/dist/plugin/helpers/resolveModuleFromManifest.js +60 -0
  300. package/dist/plugin/helpers/resolvePageAndProps.d.ts +23 -2
  301. package/dist/plugin/helpers/resolvePageAndProps.d.ts.map +1 -1
  302. package/dist/plugin/helpers/resolvePageAndProps.js +150 -9
  303. package/dist/plugin/helpers/resolveRenderUrl.d.ts +11 -0
  304. package/dist/plugin/helpers/resolveRenderUrl.d.ts.map +1 -0
  305. package/dist/plugin/helpers/resolveRenderUrl.js +19 -0
  306. package/dist/plugin/helpers/resolveStreamElements.client.d.ts +14 -0
  307. package/dist/plugin/helpers/resolveStreamElements.client.d.ts.map +1 -0
  308. package/dist/plugin/helpers/resolveStreamElements.client.js +36 -0
  309. package/dist/plugin/helpers/resolveStreamElements.d.ts +3 -0
  310. package/dist/plugin/helpers/resolveStreamElements.d.ts.map +1 -0
  311. package/dist/plugin/helpers/resolveStreamElements.js +13 -0
  312. package/dist/plugin/helpers/resolveStreamElements.server.d.ts +15 -0
  313. package/dist/plugin/helpers/resolveStreamElements.server.d.ts.map +1 -0
  314. package/dist/plugin/helpers/resolveStreamElements.server.js +35 -0
  315. package/dist/plugin/helpers/resolveStreamElements.types.d.ts +22 -0
  316. package/dist/plugin/helpers/resolveStreamElements.types.d.ts.map +1 -0
  317. package/dist/plugin/helpers/resolveStreamElements.types.js +1 -0
  318. package/dist/plugin/helpers/resolveVirtualAndNodeModules.d.ts +15 -0
  319. package/dist/plugin/helpers/resolveVirtualAndNodeModules.d.ts.map +1 -0
  320. package/dist/plugin/helpers/resolveVirtualAndNodeModules.js +45 -0
  321. package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.d.ts +18 -0
  322. package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.d.ts.map +1 -0
  323. package/dist/plugin/helpers/resolveWithDefaultRootAndHtml.js +17 -0
  324. package/dist/plugin/helpers/serializeUserOptions.d.ts +2 -2
  325. package/dist/plugin/helpers/serializeUserOptions.d.ts.map +1 -1
  326. package/dist/plugin/helpers/serializeUserOptions.js +28 -13
  327. package/dist/plugin/helpers/tryManifest.d.ts +2 -2
  328. package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
  329. package/dist/plugin/helpers/tryManifest.js +12 -6
  330. package/dist/plugin/helpers/validateRscRenderMessage.d.ts +9 -0
  331. package/dist/plugin/helpers/validateRscRenderMessage.d.ts.map +1 -0
  332. package/dist/plugin/helpers/validateRscRenderMessage.js +13 -0
  333. package/dist/plugin/helpers/workerCleanup.d.ts +29 -0
  334. package/dist/plugin/helpers/workerCleanup.d.ts.map +1 -0
  335. package/dist/plugin/helpers/workerCleanup.js +28 -0
  336. package/dist/plugin/helpers/workerManager.d.ts +5 -0
  337. package/dist/plugin/helpers/workerManager.d.ts.map +1 -0
  338. package/dist/plugin/helpers/workerManager.js +18 -0
  339. package/dist/plugin/index.d.ts +4 -1
  340. package/dist/plugin/index.d.ts.map +1 -1
  341. package/dist/plugin/index.js +5 -2
  342. package/dist/plugin/loader/createDefaultLoader.d.ts +1 -1
  343. package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
  344. package/dist/plugin/loader/createDefaultLoader.js +2 -22
  345. package/dist/plugin/loader/createTransformer.d.ts.map +1 -1
  346. package/dist/plugin/loader/createTransformer.js +155 -25
  347. package/dist/plugin/loader/directives/analyzeDirectives.d.ts +3 -2
  348. package/dist/plugin/loader/directives/analyzeDirectives.d.ts.map +1 -1
  349. package/dist/plugin/loader/directives/analyzeDirectives.js +53 -26
  350. package/dist/plugin/loader/directives/analyzeModule.d.ts.map +1 -1
  351. package/dist/plugin/loader/directives/analyzeModule.js +16 -9
  352. package/dist/plugin/loader/env-loader.js +2 -2
  353. package/dist/plugin/loader/react-loader.d.ts +4 -4
  354. package/dist/plugin/loader/react-loader.d.ts.map +1 -1
  355. package/dist/plugin/loader/react-loader.js +101 -73
  356. package/dist/plugin/loader/transformClientModule.d.ts +3 -3
  357. package/dist/plugin/loader/transformClientModule.d.ts.map +1 -1
  358. package/dist/plugin/loader/transformClientModule.js +63 -18
  359. package/dist/plugin/loader/transformModule.d.ts.map +1 -1
  360. package/dist/plugin/loader/transformModule.js +80 -16
  361. package/dist/plugin/loader/transformModuleIfNeeded.d.ts +6 -1
  362. package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
  363. package/dist/plugin/loader/transformModuleIfNeeded.js +10 -18
  364. package/dist/plugin/loader/transformNonServerEnvironment.d.ts +1 -1
  365. package/dist/plugin/loader/transformNonServerEnvironment.d.ts.map +1 -1
  366. package/dist/plugin/loader/transformNonServerEnvironment.js +14 -12
  367. package/dist/plugin/loader/transformServerModule.d.ts +1 -1
  368. package/dist/plugin/loader/transformServerModule.d.ts.map +1 -1
  369. package/dist/plugin/loader/transformServerModule.js +54 -15
  370. package/dist/plugin/loader/types.d.ts +24 -7
  371. package/dist/plugin/loader/types.d.ts.map +1 -1
  372. package/dist/plugin/metrics/collectStreamMetrics.d.ts +1 -2
  373. package/dist/plugin/metrics/collectStreamMetrics.d.ts.map +1 -1
  374. package/dist/plugin/metrics/collectStreamMetrics.js +1 -1
  375. package/dist/plugin/metrics/convertStreamMetrics.d.ts +3 -0
  376. package/dist/plugin/metrics/convertStreamMetrics.d.ts.map +1 -0
  377. package/dist/plugin/metrics/convertStreamMetrics.js +26 -0
  378. package/dist/plugin/metrics/createModuleResolutionMetrics.d.ts +12 -0
  379. package/dist/plugin/metrics/createModuleResolutionMetrics.d.ts.map +1 -0
  380. package/dist/plugin/metrics/createModuleResolutionMetrics.js +32 -0
  381. package/dist/plugin/metrics/createRenderMetrics.d.ts +2 -2
  382. package/dist/plugin/metrics/createRenderMetrics.d.ts.map +1 -1
  383. package/dist/plugin/metrics/createRenderMetrics.js +45 -13
  384. package/dist/plugin/metrics/createStreamMetrics.d.ts +2 -2
  385. package/dist/plugin/metrics/createStreamMetrics.d.ts.map +1 -1
  386. package/dist/plugin/metrics/createStreamMetrics.js +15 -4
  387. package/dist/plugin/metrics/createWorkerStartupMetrics.d.ts +12 -0
  388. package/dist/plugin/metrics/createWorkerStartupMetrics.d.ts.map +1 -0
  389. package/dist/plugin/metrics/createWorkerStartupMetrics.js +14 -0
  390. package/dist/plugin/metrics/formatMetrics.d.ts +0 -6
  391. package/dist/plugin/metrics/formatMetrics.d.ts.map +1 -1
  392. package/dist/plugin/metrics/formatMetrics.js +7 -29
  393. package/dist/plugin/metrics/index.d.ts +6 -3
  394. package/dist/plugin/metrics/index.d.ts.map +1 -1
  395. package/dist/plugin/metrics/index.js +6 -3
  396. package/dist/plugin/metrics/metricWatcher.d.ts +9 -0
  397. package/dist/plugin/metrics/metricWatcher.d.ts.map +1 -0
  398. package/dist/plugin/metrics/metricWatcher.js +141 -0
  399. package/dist/plugin/metrics/types.d.ts +72 -6
  400. package/dist/plugin/metrics/types.d.ts.map +1 -1
  401. package/dist/plugin/orchestrator/createPluginOrchestrator.client.d.ts +3 -0
  402. package/dist/plugin/orchestrator/createPluginOrchestrator.client.d.ts.map +1 -0
  403. package/dist/plugin/orchestrator/createPluginOrchestrator.client.js +36 -0
  404. package/dist/plugin/orchestrator/createPluginOrchestrator.d.ts +19 -0
  405. package/dist/plugin/orchestrator/createPluginOrchestrator.d.ts.map +1 -0
  406. package/dist/plugin/orchestrator/createPluginOrchestrator.js +13 -0
  407. package/dist/plugin/orchestrator/createPluginOrchestrator.server.d.ts +3 -0
  408. package/dist/plugin/orchestrator/createPluginOrchestrator.server.d.ts.map +1 -0
  409. package/dist/plugin/orchestrator/createPluginOrchestrator.server.js +44 -0
  410. package/dist/plugin/orchestrator/index.d.ts +2 -0
  411. package/dist/plugin/orchestrator/index.d.ts.map +1 -0
  412. package/dist/plugin/orchestrator/index.js +1 -0
  413. package/dist/plugin/orchestrator/plugin.js +7 -0
  414. package/dist/plugin/orchestrator/resolveStrategy.d.ts +19 -0
  415. package/dist/plugin/orchestrator/resolveStrategy.d.ts.map +1 -0
  416. package/dist/plugin/orchestrator/resolveStrategy.js +35 -0
  417. package/dist/plugin/orchestrator/types.d.ts +21 -0
  418. package/dist/plugin/orchestrator/types.d.ts.map +1 -0
  419. package/dist/plugin/orchestrator/types.js +1 -0
  420. package/dist/plugin/plugin.client.d.ts +11 -19
  421. package/dist/plugin/plugin.client.d.ts.map +1 -1
  422. package/dist/plugin/plugin.client.js +20 -13
  423. package/dist/plugin/plugin.d.ts +2 -1
  424. package/dist/plugin/plugin.d.ts.map +1 -1
  425. package/dist/plugin/plugin.js +4 -2
  426. package/dist/plugin/plugin.server.d.ts +13 -11
  427. package/dist/plugin/plugin.server.d.ts.map +1 -1
  428. package/dist/plugin/plugin.server.js +19 -18
  429. package/dist/plugin/process-env.d.ts +1 -0
  430. package/dist/plugin/process-env.d.ts.map +1 -1
  431. package/dist/plugin/react-client/createMessageHandlers.d.ts +2 -10
  432. package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
  433. package/dist/plugin/react-client/createMessageHandlers.js +42 -69
  434. package/dist/plugin/react-client/index.client.d.ts +2 -0
  435. package/dist/plugin/react-client/index.client.d.ts.map +1 -0
  436. package/dist/plugin/react-client/index.client.js +1 -0
  437. package/dist/plugin/react-client/index.d.ts +3 -4
  438. package/dist/plugin/react-client/index.d.ts.map +1 -1
  439. package/dist/plugin/react-client/index.js +10 -5
  440. package/dist/plugin/react-client/index.server.d.ts +2 -0
  441. package/dist/plugin/react-client/index.server.d.ts.map +1 -0
  442. package/dist/plugin/react-client/index.server.js +1 -0
  443. package/dist/plugin/react-client/plugin.client.d.ts +15 -0
  444. package/dist/plugin/react-client/plugin.client.d.ts.map +1 -0
  445. package/dist/plugin/react-client/plugin.client.js +98 -0
  446. package/dist/plugin/react-client/plugin.d.ts +2 -5
  447. package/dist/plugin/react-client/plugin.d.ts.map +1 -1
  448. package/dist/plugin/react-client/plugin.js +6 -121
  449. package/dist/plugin/react-client/plugin.server.d.ts +15 -0
  450. package/dist/plugin/react-client/plugin.server.d.ts.map +1 -0
  451. package/dist/plugin/react-client/plugin.server.js +93 -0
  452. package/dist/plugin/react-client/types.d.ts +60 -0
  453. package/dist/plugin/react-client/types.d.ts.map +1 -0
  454. package/dist/plugin/react-client/types.js +1 -0
  455. package/dist/plugin/react-server/index.client.d.ts +2 -0
  456. package/dist/plugin/react-server/index.client.d.ts.map +1 -0
  457. package/dist/plugin/react-server/index.client.js +1 -0
  458. package/dist/plugin/react-server/index.d.ts +3 -1
  459. package/dist/plugin/react-server/index.d.ts.map +1 -1
  460. package/dist/plugin/react-server/index.js +13 -1
  461. package/dist/plugin/react-server/index.server.d.ts +2 -0
  462. package/dist/plugin/react-server/index.server.d.ts.map +1 -0
  463. package/dist/plugin/react-server/index.server.js +1 -0
  464. package/dist/plugin/react-server/plugin.client.d.ts +3 -0
  465. package/dist/plugin/react-server/plugin.client.d.ts.map +1 -0
  466. package/dist/plugin/react-server/plugin.client.js +40 -0
  467. package/dist/plugin/react-server/plugin.d.ts +2 -5
  468. package/dist/plugin/react-server/plugin.d.ts.map +1 -1
  469. package/dist/plugin/react-server/plugin.js +5 -143
  470. package/dist/plugin/react-server/plugin.server.d.ts +3 -0
  471. package/dist/plugin/react-server/plugin.server.d.ts.map +1 -0
  472. package/dist/plugin/react-server/plugin.server.js +18 -0
  473. package/dist/plugin/react-server/types.d.ts +11 -0
  474. package/dist/plugin/react-server/types.d.ts.map +1 -0
  475. package/dist/plugin/react-server/types.js +1 -0
  476. package/dist/plugin/react-static/collectHtmlContent.d.ts +15 -0
  477. package/dist/plugin/react-static/collectHtmlContent.d.ts.map +1 -0
  478. package/dist/plugin/react-static/collectHtmlContent.js +104 -0
  479. package/dist/plugin/react-static/collectRscContent.d.ts +10 -15
  480. package/dist/plugin/react-static/collectRscContent.d.ts.map +1 -1
  481. package/dist/plugin/react-static/collectRscContent.js +71 -20
  482. package/dist/plugin/react-static/configurePreviewServer.d.ts +1 -7
  483. package/dist/plugin/react-static/configurePreviewServer.d.ts.map +1 -1
  484. package/dist/plugin/react-static/configurePreviewServer.js +3 -6
  485. package/dist/plugin/react-static/createBuildLoader.client.d.ts +2 -0
  486. package/dist/plugin/react-static/createBuildLoader.client.d.ts.map +1 -0
  487. package/dist/plugin/react-static/createBuildLoader.client.js +7 -0
  488. package/dist/plugin/react-static/createBuildLoader.d.ts +3 -19
  489. package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -1
  490. package/dist/plugin/react-static/createBuildLoader.js +4 -226
  491. package/dist/plugin/react-static/createBuildLoader.server.d.ts +9 -0
  492. package/dist/plugin/react-static/createBuildLoader.server.d.ts.map +1 -0
  493. package/dist/plugin/react-static/createBuildLoader.server.js +253 -0
  494. package/dist/plugin/react-static/fileWriter.d.ts +3 -14
  495. package/dist/plugin/react-static/fileWriter.d.ts.map +1 -1
  496. package/dist/plugin/react-static/fileWriter.js +233 -42
  497. package/dist/plugin/react-static/index.client.d.ts +7 -0
  498. package/dist/plugin/react-static/index.client.d.ts.map +1 -0
  499. package/dist/plugin/react-static/index.client.js +6 -0
  500. package/dist/plugin/react-static/index.d.ts +7 -1
  501. package/dist/plugin/react-static/index.d.ts.map +1 -1
  502. package/dist/plugin/react-static/index.js +19 -1
  503. package/dist/plugin/react-static/index.server.d.ts +7 -0
  504. package/dist/plugin/react-static/index.server.d.ts.map +1 -0
  505. package/dist/plugin/react-static/index.server.js +6 -0
  506. package/dist/plugin/react-static/plugin.client.d.ts +32 -0
  507. package/dist/plugin/react-static/plugin.client.d.ts.map +1 -0
  508. package/dist/plugin/react-static/plugin.client.js +801 -0
  509. package/dist/plugin/react-static/plugin.d.ts +3 -20
  510. package/dist/plugin/react-static/plugin.d.ts.map +1 -1
  511. package/dist/plugin/react-static/plugin.js +4 -365
  512. package/dist/plugin/react-static/plugin.server.d.ts +18 -0
  513. package/dist/plugin/react-static/plugin.server.d.ts.map +1 -0
  514. package/dist/plugin/react-static/plugin.server.js +615 -0
  515. package/dist/plugin/react-static/processCssFilesForPages.d.ts +16 -0
  516. package/dist/plugin/react-static/processCssFilesForPages.d.ts.map +1 -0
  517. package/dist/plugin/react-static/processCssFilesForPages.js +94 -0
  518. package/dist/plugin/react-static/renderPage.client.d.ts +49 -0
  519. package/dist/plugin/react-static/renderPage.client.d.ts.map +1 -0
  520. package/dist/plugin/react-static/renderPage.client.js +555 -0
  521. package/dist/plugin/react-static/renderPage.d.ts +3 -4
  522. package/dist/plugin/react-static/renderPage.d.ts.map +1 -1
  523. package/dist/plugin/react-static/renderPage.js +6 -119
  524. package/dist/plugin/react-static/renderPage.server.d.ts +24 -0
  525. package/dist/plugin/react-static/renderPage.server.d.ts.map +1 -0
  526. package/dist/plugin/react-static/renderPage.server.js +533 -0
  527. package/dist/plugin/react-static/renderPages.d.ts +11 -3
  528. package/dist/plugin/react-static/renderPages.d.ts.map +1 -1
  529. package/dist/plugin/react-static/renderPages.js +533 -92
  530. package/dist/plugin/react-static/renderPagesBatched.d.ts +6 -0
  531. package/dist/plugin/react-static/renderPagesBatched.d.ts.map +1 -0
  532. package/dist/plugin/react-static/renderPagesBatched.js +195 -0
  533. package/dist/plugin/react-static/renderStreams.d.ts +2 -5
  534. package/dist/plugin/react-static/renderStreams.d.ts.map +1 -1
  535. package/dist/plugin/react-static/renderStreams.js +36 -24
  536. package/dist/plugin/react-static/rscToHtmlStream.client.d.ts +12 -0
  537. package/dist/plugin/react-static/rscToHtmlStream.client.d.ts.map +1 -0
  538. package/dist/plugin/react-static/rscToHtmlStream.client.js +32 -0
  539. package/dist/plugin/react-static/rscToHtmlStream.d.ts +3 -21
  540. package/dist/plugin/react-static/rscToHtmlStream.d.ts.map +1 -1
  541. package/dist/plugin/react-static/rscToHtmlStream.js +4 -53
  542. package/dist/plugin/react-static/rscToHtmlStream.server.d.ts +3 -0
  543. package/dist/plugin/react-static/rscToHtmlStream.server.d.ts.map +1 -0
  544. package/dist/plugin/react-static/rscToHtmlStream.server.js +39 -0
  545. package/dist/plugin/react-static/temporaryReferences.client.d.ts +2 -0
  546. package/dist/plugin/react-static/temporaryReferences.client.d.ts.map +1 -0
  547. package/dist/plugin/react-static/temporaryReferences.client.js +1 -0
  548. package/dist/plugin/react-static/temporaryReferences.d.ts +2 -1
  549. package/dist/plugin/react-static/temporaryReferences.d.ts.map +1 -1
  550. package/dist/plugin/react-static/temporaryReferences.js +6 -10
  551. package/dist/plugin/react-static/temporaryReferences.server.d.ts +2 -0
  552. package/dist/plugin/react-static/temporaryReferences.server.d.ts.map +1 -0
  553. package/dist/plugin/react-static/temporaryReferences.server.js +3 -0
  554. package/dist/plugin/react-static/types.d.ts +83 -9
  555. package/dist/plugin/react-static/types.d.ts.map +1 -1
  556. package/dist/plugin/root.d.ts.map +1 -1
  557. package/dist/plugin/root.js +2 -5
  558. package/dist/plugin/stream/MessagePortReadable.d.ts +22 -0
  559. package/dist/plugin/stream/MessagePortReadable.d.ts.map +1 -0
  560. package/dist/plugin/stream/MessagePortReadable.js +101 -0
  561. package/dist/plugin/stream/MessagePortWritable.d.ts +22 -0
  562. package/dist/plugin/stream/MessagePortWritable.d.ts.map +1 -0
  563. package/dist/plugin/stream/MessagePortWritable.js +85 -0
  564. package/dist/plugin/stream/client.js +12 -0
  565. package/dist/plugin/stream/createFromNodeStream.client.d.ts +9 -0
  566. package/dist/plugin/stream/createFromNodeStream.client.d.ts.map +1 -0
  567. package/dist/plugin/stream/createFromNodeStream.client.js +76 -0
  568. package/dist/plugin/stream/createFromNodeStream.d.ts +3 -0
  569. package/dist/plugin/stream/createFromNodeStream.d.ts.map +1 -0
  570. package/dist/plugin/stream/createFromNodeStream.js +6 -0
  571. package/dist/plugin/stream/createFromNodeStream.server.d.ts +9 -0
  572. package/dist/plugin/stream/createFromNodeStream.server.d.ts.map +1 -0
  573. package/dist/plugin/stream/createFromNodeStream.server.js +27 -0
  574. package/dist/plugin/stream/createFromNodeStream.types.d.ts +37 -0
  575. package/dist/plugin/stream/createFromNodeStream.types.d.ts.map +1 -0
  576. package/dist/plugin/stream/createFromNodeStream.types.js +1 -0
  577. package/dist/plugin/stream/createHtmlStream.client.d.ts +3 -0
  578. package/dist/plugin/stream/createHtmlStream.client.d.ts.map +1 -0
  579. package/dist/plugin/stream/createHtmlStream.client.js +42 -0
  580. package/dist/plugin/stream/createHtmlStream.d.ts +3 -0
  581. package/dist/plugin/stream/createHtmlStream.d.ts.map +1 -0
  582. package/dist/plugin/stream/createHtmlStream.js +6 -0
  583. package/dist/plugin/stream/createHtmlStream.server.d.ts +6 -0
  584. package/dist/plugin/stream/createHtmlStream.server.d.ts.map +1 -0
  585. package/dist/plugin/stream/createHtmlStream.server.js +224 -0
  586. package/dist/plugin/stream/createHtmlStream.types.d.ts +43 -0
  587. package/dist/plugin/stream/createHtmlStream.types.d.ts.map +1 -0
  588. package/dist/plugin/stream/createHtmlStream.types.js +1 -0
  589. package/dist/plugin/stream/createMainThreadHandlers.d.ts +11 -0
  590. package/dist/plugin/stream/createMainThreadHandlers.d.ts.map +1 -0
  591. package/dist/plugin/stream/createMainThreadHandlers.js +32 -0
  592. package/dist/plugin/stream/createMessageChannels.d.ts +29 -0
  593. package/dist/plugin/stream/createMessageChannels.d.ts.map +1 -0
  594. package/dist/plugin/stream/createMessageChannels.js +35 -0
  595. package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.d.ts +10 -0
  596. package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.d.ts.map +1 -0
  597. package/dist/plugin/stream/createRenderToPipeableStreamHandler.client.js +188 -0
  598. package/dist/plugin/stream/createRenderToPipeableStreamHandler.d.ts +3 -0
  599. package/dist/plugin/stream/createRenderToPipeableStreamHandler.d.ts.map +1 -0
  600. package/dist/plugin/stream/createRenderToPipeableStreamHandler.js +6 -0
  601. package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.d.ts +45 -0
  602. package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.d.ts.map +1 -0
  603. package/dist/plugin/stream/createRenderToPipeableStreamHandler.server.js +249 -0
  604. package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.d.ts +17 -0
  605. package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.d.ts.map +1 -0
  606. package/dist/plugin/stream/createRenderToPipeableStreamHandler.types.js +1 -0
  607. package/dist/plugin/stream/createRscStream.client.d.ts +18 -0
  608. package/dist/plugin/stream/createRscStream.client.d.ts.map +1 -0
  609. package/dist/plugin/stream/createRscStream.client.js +79 -0
  610. package/dist/plugin/stream/createRscStream.d.ts +2 -0
  611. package/dist/plugin/stream/createRscStream.d.ts.map +1 -0
  612. package/dist/plugin/stream/createRscStream.js +13 -0
  613. package/dist/plugin/stream/createRscStream.server.d.ts +46 -0
  614. package/dist/plugin/stream/createRscStream.server.d.ts.map +1 -0
  615. package/dist/plugin/stream/createRscStream.server.js +113 -0
  616. package/dist/plugin/stream/createRscStream.types.d.ts +134 -0
  617. package/dist/plugin/stream/createRscStream.types.d.ts.map +1 -0
  618. package/dist/plugin/stream/createRscStream.types.js +1 -0
  619. package/dist/plugin/stream/createRscStream.utils.d.ts +54 -0
  620. package/dist/plugin/stream/createRscStream.utils.d.ts.map +1 -0
  621. package/dist/plugin/stream/createRscStream.utils.js +91 -0
  622. package/dist/plugin/stream/createRscWorkerStream.d.ts +41 -0
  623. package/dist/plugin/stream/createRscWorkerStream.d.ts.map +1 -0
  624. package/dist/plugin/stream/createRscWorkerStream.js +120 -0
  625. package/dist/plugin/stream/handleRscStream.client.d.ts +17 -0
  626. package/dist/plugin/stream/handleRscStream.client.d.ts.map +1 -0
  627. package/dist/plugin/stream/handleRscStream.client.js +163 -0
  628. package/dist/plugin/stream/handleRscStream.d.ts +3 -0
  629. package/dist/plugin/stream/handleRscStream.d.ts.map +1 -0
  630. package/dist/plugin/stream/handleRscStream.js +13 -0
  631. package/dist/plugin/stream/handleRscStream.server.d.ts +6 -0
  632. package/dist/plugin/stream/handleRscStream.server.d.ts.map +1 -0
  633. package/dist/plugin/stream/handleRscStream.server.js +70 -0
  634. package/dist/plugin/stream/handleRscStream.types.d.ts +28 -0
  635. package/dist/plugin/stream/handleRscStream.types.d.ts.map +1 -0
  636. package/dist/plugin/stream/handleRscStream.types.js +1 -0
  637. package/dist/plugin/stream/index.client.d.ts +7 -0
  638. package/dist/plugin/stream/index.client.d.ts.map +1 -0
  639. package/dist/plugin/stream/index.client.js +11 -0
  640. package/dist/plugin/stream/index.d.ts +95 -0
  641. package/dist/plugin/stream/index.d.ts.map +1 -0
  642. package/dist/plugin/stream/index.js +21 -0
  643. package/dist/plugin/stream/index.server.d.ts +7 -0
  644. package/dist/plugin/stream/index.server.d.ts.map +1 -0
  645. package/dist/plugin/stream/index.server.js +11 -0
  646. package/dist/plugin/stream/renderRscStream.server.d.ts +21 -0
  647. package/dist/plugin/stream/renderRscStream.server.d.ts.map +1 -0
  648. package/dist/plugin/stream/renderRscStream.server.js +153 -0
  649. package/dist/plugin/stream/renderRscStream.types.d.ts +36 -0
  650. package/dist/plugin/stream/renderRscStream.types.d.ts.map +1 -0
  651. package/dist/plugin/stream/renderRscStream.types.js +1 -0
  652. package/dist/plugin/stream/renderRscStreamHelpers.server.d.ts +9 -0
  653. package/dist/plugin/stream/renderRscStreamHelpers.server.d.ts.map +1 -0
  654. package/dist/plugin/stream/renderRscStreamHelpers.server.js +63 -0
  655. package/dist/plugin/stream/server.js +12 -0
  656. package/dist/plugin/stream/setMaxListeners.d.ts +16 -0
  657. package/dist/plugin/stream/setMaxListeners.d.ts.map +1 -0
  658. package/dist/plugin/stream/setMaxListeners.js +16 -0
  659. package/dist/plugin/transformer/createTransformerPlugin.d.ts +18 -0
  660. package/dist/plugin/transformer/createTransformerPlugin.d.ts.map +1 -0
  661. package/dist/plugin/transformer/createTransformerPlugin.js +269 -0
  662. package/dist/plugin/transformer/plugin.client.d.ts +2 -29
  663. package/dist/plugin/transformer/plugin.client.d.ts.map +1 -1
  664. package/dist/plugin/transformer/plugin.client.js +5 -96
  665. package/dist/plugin/transformer/plugin.server.d.ts +2 -29
  666. package/dist/plugin/transformer/plugin.server.d.ts.map +1 -1
  667. package/dist/plugin/transformer/plugin.server.js +5 -96
  668. package/dist/plugin/transformer/transformerEnv.d.ts +15 -0
  669. package/dist/plugin/transformer/transformerEnv.d.ts.map +1 -0
  670. package/dist/plugin/transformer/transformerEnv.js +26 -0
  671. package/dist/plugin/types.d.ts +366 -140
  672. package/dist/plugin/types.d.ts.map +1 -1
  673. package/dist/plugin/types.js +1 -2
  674. package/dist/plugin/utils/callServer.d.ts +1 -1
  675. package/dist/plugin/utils/callServer.d.ts.map +1 -1
  676. package/dist/plugin/utils/createCallServer.d.ts +1 -1
  677. package/dist/plugin/utils/createCallServer.d.ts.map +1 -1
  678. package/dist/plugin/utils/createCallServer.js +4 -9
  679. package/dist/plugin/utils/createReactFetcher.d.ts +43 -2
  680. package/dist/plugin/utils/createReactFetcher.d.ts.map +1 -1
  681. package/dist/plugin/utils/createReactFetcher.js +14 -3
  682. package/dist/plugin/utils/envUrls.node.js +11 -12
  683. package/dist/plugin/utils/index.client.d.ts +8 -0
  684. package/dist/plugin/utils/index.client.d.ts.map +1 -0
  685. package/dist/plugin/utils/index.client.js +8 -0
  686. package/dist/plugin/utils/index.d.ts +1 -0
  687. package/dist/plugin/utils/index.d.ts.map +1 -1
  688. package/dist/plugin/utils/index.js +3 -2
  689. package/dist/plugin/utils/index.server.d.ts +6 -0
  690. package/dist/plugin/utils/index.server.d.ts.map +1 -0
  691. package/dist/plugin/utils/index.server.js +8 -0
  692. package/dist/plugin/utils/routeToURL.d.ts.map +1 -1
  693. package/dist/plugin/utils/routeToURL.js +4 -4
  694. package/dist/plugin/utils/urls.d.ts +1 -1
  695. package/dist/plugin/utils/urls.d.ts.map +1 -1
  696. package/dist/plugin/utils/urls.js +29 -8
  697. package/dist/plugin/utils/useRscHmr.d.ts +39 -0
  698. package/dist/plugin/utils/useRscHmr.d.ts.map +1 -0
  699. package/dist/plugin/utils/useRscHmr.js +27 -0
  700. package/dist/plugin/vendor/vendor.client.d.ts +3 -3
  701. package/dist/plugin/vendor/vendor.client.d.ts.map +1 -1
  702. package/dist/plugin/vendor/vendor.client.js +7 -6
  703. package/dist/plugin/vendor/vendor.d.ts +1 -1
  704. package/dist/plugin/vendor/vendor.d.ts.map +1 -1
  705. package/dist/plugin/vendor/vendor.js +4 -6
  706. package/dist/plugin/vendor/vendor.server.d.ts +4 -2
  707. package/dist/plugin/vendor/vendor.server.d.ts.map +1 -1
  708. package/dist/plugin/vendor/vendor.server.js +2 -3
  709. package/dist/plugin/vendor/vendor.static.d.ts +4 -0
  710. package/dist/plugin/vendor/vendor.static.d.ts.map +1 -0
  711. package/dist/plugin/vendor/vendor.static.js +15 -0
  712. package/dist/plugin/worker/createWorker.d.ts +16 -5
  713. package/dist/plugin/worker/createWorker.d.ts.map +1 -1
  714. package/dist/plugin/worker/createWorker.js +207 -30
  715. package/dist/plugin/worker/html/handleHtmlRender.d.ts +14 -0
  716. package/dist/plugin/worker/html/handleHtmlRender.d.ts.map +1 -0
  717. package/dist/plugin/worker/html/handleHtmlRender.js +190 -0
  718. package/dist/plugin/worker/html/html-worker.development.js +9 -26
  719. package/dist/plugin/worker/html/html-worker.js +4 -4
  720. package/dist/plugin/worker/html/html-worker.production.js +7 -13
  721. package/dist/plugin/worker/html/index.d.ts +1 -1
  722. package/dist/plugin/worker/html/index.js +6 -2
  723. package/dist/plugin/worker/html/messageHandler.d.ts +1 -1
  724. package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
  725. package/dist/plugin/worker/html/messageHandler.js +291 -104
  726. package/dist/plugin/worker/html/state.d.ts +10 -0
  727. package/dist/plugin/worker/html/state.d.ts.map +1 -0
  728. package/dist/plugin/worker/html/state.js +28 -0
  729. package/dist/plugin/worker/html/types.d.ts +52 -23
  730. package/dist/plugin/worker/html/types.d.ts.map +1 -1
  731. package/dist/plugin/worker/index.js +1 -1
  732. package/dist/plugin/worker/rsc/createBundleLoader.d.ts +22 -0
  733. package/dist/plugin/worker/rsc/createBundleLoader.d.ts.map +1 -0
  734. package/dist/plugin/worker/rsc/createBundleLoader.js +55 -0
  735. package/dist/plugin/worker/rsc/createRscWorkerLoader.d.ts +23 -0
  736. package/dist/plugin/worker/rsc/createRscWorkerLoader.d.ts.map +1 -0
  737. package/dist/plugin/worker/rsc/createRscWorkerLoader.js +79 -0
  738. package/dist/plugin/worker/rsc/handleRscRender.d.ts +32 -0
  739. package/dist/plugin/worker/rsc/handleRscRender.d.ts.map +1 -0
  740. package/dist/plugin/worker/rsc/handleRscRender.js +349 -0
  741. package/dist/plugin/worker/rsc/handlers.d.ts +8 -2
  742. package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -1
  743. package/dist/plugin/worker/rsc/handlers.js +137 -200
  744. package/dist/plugin/worker/rsc/hydrateRscRenderMessage.d.ts +118 -0
  745. package/dist/plugin/worker/rsc/hydrateRscRenderMessage.d.ts.map +1 -0
  746. package/dist/plugin/worker/rsc/hydrateRscRenderMessage.js +61 -0
  747. package/dist/plugin/worker/rsc/messageHandler.d.ts +1 -1
  748. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  749. package/dist/plugin/worker/rsc/messageHandler.js +927 -49
  750. package/dist/plugin/worker/rsc/rsc-worker.development.js +153 -148
  751. package/dist/plugin/worker/rsc/rsc-worker.js +2 -3
  752. package/dist/plugin/worker/rsc/rsc-worker.production.js +238 -42
  753. package/dist/plugin/worker/rsc/state.d.ts +6 -0
  754. package/dist/plugin/worker/rsc/state.d.ts.map +1 -1
  755. package/dist/plugin/worker/rsc/state.js +37 -5
  756. package/dist/plugin/worker/rsc/types.d.ts +73 -12
  757. package/dist/plugin/worker/rsc/types.d.ts.map +1 -1
  758. package/dist/plugin/worker/rsc/workerUserOptions.d.ts +10 -0
  759. package/dist/plugin/worker/rsc/workerUserOptions.d.ts.map +1 -0
  760. package/dist/plugin/worker/rsc/workerUserOptions.js +39 -0
  761. package/dist/plugin/worker/sendMessage.d.ts +2 -3
  762. package/dist/plugin/worker/sendMessage.d.ts.map +1 -1
  763. package/dist/plugin/worker/sendMessage.js +24 -38
  764. package/dist/plugin/worker/types.d.ts +42 -56
  765. package/dist/plugin/worker/types.d.ts.map +1 -1
  766. package/dist/plugin/worker/worker-handlers.server.d.ts +2 -0
  767. package/dist/plugin/worker/worker-handlers.server.d.ts.map +1 -0
  768. package/dist/plugin/worker/worker-handlers.server.js +1 -0
  769. package/dist/server.d.ts +5 -1
  770. package/dist/server.d.ts.map +1 -1
  771. package/dist/server.js +4 -6
  772. package/dist/static.js +11 -0
  773. package/dist/tsconfig.tsbuildinfo +1 -1
  774. package/package.json +103 -28
  775. package/plugin/bundle/bundles.ts +22 -0
  776. package/plugin/bundle/deferredStaticGeneration.ts +48 -0
  777. package/plugin/bundle/manifests.ts +73 -0
  778. package/plugin/components/css.tsx +3 -7
  779. package/plugin/components/html.tsx +4 -3
  780. package/plugin/components/index.ts +1 -1
  781. package/plugin/components/root.tsx +3 -3
  782. package/plugin/config/autoDiscover/createGlobAutoDiscover.ts +10 -5
  783. package/plugin/config/autoDiscover/pageAndPropFiles.ts +4 -2
  784. package/plugin/config/autoDiscover/resolveAutoDiscover.ts +64 -79
  785. package/plugin/config/autoDiscover/resolveBuildPages.ts +181 -69
  786. package/plugin/config/createHandlerOptions.client.ts +403 -0
  787. package/plugin/config/createHandlerOptions.server.ts +477 -0
  788. package/plugin/config/createHandlerOptions.ts +46 -0
  789. package/plugin/config/createHandlerOptions.types.ts +119 -0
  790. package/plugin/config/createModuleID.ts +201 -10
  791. package/plugin/config/defaults.tsx +58 -9
  792. package/plugin/config/envPrefixFromConfig.ts +10 -0
  793. package/plugin/config/getCondition.ts +267 -10
  794. package/plugin/{getNodeEnv.ts → config/getNodeEnv.ts} +4 -2
  795. package/plugin/config/index.ts +60 -1
  796. package/plugin/config/resolveDirectiveMatcher.ts +13 -34
  797. package/plugin/config/resolveEnv.ts +3 -8
  798. package/plugin/config/resolveOptions.ts +295 -77
  799. package/plugin/config/resolvePages.ts +1 -1
  800. package/plugin/config/resolvePatternWithValues.ts +6 -26
  801. package/plugin/config/resolveUrlOption.ts +2 -2
  802. package/plugin/config/resolveUserConfig.ts +358 -133
  803. package/plugin/config/stashedOptionsState.ts +144 -0
  804. package/plugin/dev-server/cleanupServerAction.client.ts +47 -0
  805. package/plugin/dev-server/cleanupServerAction.server.ts +24 -0
  806. package/plugin/dev-server/cleanupServerAction.ts +8 -0
  807. package/plugin/dev-server/configureReactServer.client.ts +107 -0
  808. package/plugin/dev-server/configureReactServer.server.ts +558 -0
  809. package/plugin/dev-server/configureReactServer.ts +8 -0
  810. package/plugin/dev-server/configureRequestHandler.client.ts +382 -0
  811. package/plugin/dev-server/configureRequestHandler.server.ts +46 -0
  812. package/plugin/dev-server/configureRequestHandler.ts +8 -0
  813. package/plugin/dev-server/handleServerAction.client.ts +126 -0
  814. package/plugin/dev-server/handleServerAction.server.ts +10 -0
  815. package/plugin/dev-server/handleServerAction.ts +8 -0
  816. package/plugin/dev-server/index.client.ts +6 -0
  817. package/plugin/dev-server/index.server.ts +6 -0
  818. package/plugin/dev-server/index.ts +20 -0
  819. package/plugin/dev-server/plugin.client.ts +160 -0
  820. package/plugin/dev-server/plugin.server.ts +133 -0
  821. package/plugin/dev-server/restartWorker.client.ts +155 -0
  822. package/plugin/dev-server/restartWorker.server.ts +108 -0
  823. package/plugin/dev-server/restartWorker.ts +8 -0
  824. package/plugin/dev-server/types.ts +78 -0
  825. package/plugin/dev-server/virtualRscHmrPlugin.ts +82 -0
  826. package/plugin/env/createConfigEnv.ts +27 -8
  827. package/plugin/env/createEnvPlugin.ts +76 -0
  828. package/plugin/env/getArgValue.ts +1 -1
  829. package/plugin/env/getEnvKey.ts +20 -1
  830. package/plugin/env/index.ts +10 -0
  831. package/plugin/env/plugin.client.ts +3 -0
  832. package/plugin/env/plugin.server.ts +4 -0
  833. package/plugin/env/plugin.ts +48 -103
  834. package/plugin/environments/createBuildEventPlugin.ts +117 -0
  835. package/plugin/environments/createEnvironmentPlugin.ts +332 -0
  836. package/plugin/environments/hashCoordination.ts +39 -0
  837. package/plugin/environments/resolveEnvironmentConfig.ts +320 -0
  838. package/plugin/error/assertPanic.ts +9 -0
  839. package/plugin/error/handleError.ts +63 -0
  840. package/plugin/error/index.ts +4 -1
  841. package/plugin/error/logError.ts +63 -42
  842. package/plugin/error/panicThresholdHandler.ts +52 -0
  843. package/plugin/error/serializeError.ts +36 -11
  844. package/plugin/error/serializeErrorInfo.ts +17 -0
  845. package/plugin/error/setupGlobalErrorHandler.ts +71 -0
  846. package/plugin/error/shouldPanic.ts +14 -0
  847. package/plugin/error/toError.ts +59 -19
  848. package/plugin/error/types.ts +32 -0
  849. package/plugin/helpers/README.md +112 -0
  850. package/plugin/helpers/collectManifestCss.ts +24 -5
  851. package/plugin/helpers/collectViteModuleGraphCss.ts +83 -9
  852. package/plugin/helpers/createBufferedRscStream.ts +194 -0
  853. package/plugin/helpers/createCssProps.tsx +22 -19
  854. package/plugin/helpers/createElementWithReact.tsx +121 -0
  855. package/plugin/helpers/createPatternMatcher.ts +100 -0
  856. package/plugin/helpers/createRscRenderHelpers.ts +77 -0
  857. package/plugin/helpers/createSafePageComponent.ts +64 -0
  858. package/plugin/helpers/createSerializableHandlerOptions.ts +183 -0
  859. package/plugin/helpers/createSharedLoader.ts +207 -0
  860. package/plugin/helpers/createUnifiedCssProcessor.ts +175 -0
  861. package/plugin/helpers/getBundleManifest.ts +2 -3
  862. package/plugin/helpers/getRouteFiles.ts +28 -23
  863. package/plugin/helpers/handleServerAction.client.ts +145 -0
  864. package/plugin/helpers/handleServerAction.server.ts +151 -0
  865. package/plugin/helpers/handleServerAction.ts +19 -79
  866. package/plugin/helpers/handleServerActionHelper.ts +270 -0
  867. package/plugin/helpers/headlessStreamReuseHandler.ts +48 -0
  868. package/plugin/helpers/headlessStreamState.ts +122 -0
  869. package/plugin/helpers/hydrateUserOptions.ts +2 -2
  870. package/plugin/helpers/index.ts +32 -5
  871. package/plugin/helpers/logRenderStart.ts +26 -0
  872. package/plugin/helpers/mergeMessageWithDefaults.ts +80 -0
  873. package/plugin/helpers/pipeToResponse.ts +77 -0
  874. package/plugin/helpers/requestInfo.ts +9 -3
  875. package/plugin/helpers/resolveComponents.client.ts +183 -0
  876. package/plugin/helpers/resolveModuleFromManifest.ts +99 -0
  877. package/plugin/helpers/resolvePageAndProps.ts +237 -50
  878. package/plugin/helpers/resolveRenderUrl.ts +26 -0
  879. package/plugin/helpers/resolveStreamElements.client.ts +50 -0
  880. package/plugin/helpers/resolveStreamElements.server.ts +43 -0
  881. package/plugin/helpers/resolveStreamElements.ts +13 -0
  882. package/plugin/helpers/resolveStreamElements.types.ts +29 -0
  883. package/plugin/helpers/resolveVirtualAndNodeModules.ts +75 -0
  884. package/plugin/helpers/resolveWithDefaultRootAndHtml.ts +25 -0
  885. package/plugin/helpers/serializeUserOptions.ts +37 -15
  886. package/plugin/helpers/tryManifest.ts +15 -6
  887. package/plugin/helpers/validateRscRenderMessage.ts +13 -0
  888. package/plugin/helpers/workerCleanup.ts +85 -0
  889. package/plugin/helpers/workerManager.ts +16 -0
  890. package/plugin/index.ts +6 -2
  891. package/plugin/loader/createDefaultLoader.ts +0 -21
  892. package/plugin/loader/createTransformer.ts +231 -37
  893. package/plugin/loader/directives/analyzeDirectives.ts +163 -73
  894. package/plugin/loader/directives/analyzeModule.ts +18 -9
  895. package/plugin/loader/env-loader.ts +3 -3
  896. package/plugin/loader/react-loader.ts +133 -86
  897. package/plugin/loader/transformClientModule.ts +85 -23
  898. package/plugin/loader/transformModule.ts +101 -21
  899. package/plugin/loader/transformModuleIfNeeded.ts +20 -23
  900. package/plugin/loader/transformNonServerEnvironment.ts +21 -13
  901. package/plugin/loader/transformServerModule.ts +86 -22
  902. package/plugin/loader/types.ts +22 -7
  903. package/plugin/metrics/collectStreamMetrics.ts +1 -2
  904. package/plugin/metrics/convertStreamMetrics.ts +28 -0
  905. package/plugin/metrics/createModuleResolutionMetrics.ts +38 -0
  906. package/plugin/metrics/createRenderMetrics.ts +46 -13
  907. package/plugin/metrics/createStreamMetrics.ts +16 -6
  908. package/plugin/metrics/createWorkerStartupMetrics.ts +38 -0
  909. package/plugin/metrics/formatMetrics.ts +5 -33
  910. package/plugin/metrics/index.ts +6 -3
  911. package/plugin/metrics/metricWatcher.ts +216 -0
  912. package/plugin/metrics/types.ts +87 -8
  913. package/plugin/orchestrator/createPluginOrchestrator.client.ts +47 -0
  914. package/plugin/orchestrator/createPluginOrchestrator.server.ts +55 -0
  915. package/plugin/orchestrator/createPluginOrchestrator.ts +29 -0
  916. package/plugin/orchestrator/index.ts +1 -0
  917. package/plugin/orchestrator/resolveStrategy.ts +53 -0
  918. package/plugin/orchestrator/types.ts +24 -0
  919. package/plugin/plugin.client.ts +29 -34
  920. package/plugin/plugin.server.ts +36 -42
  921. package/plugin/plugin.ts +8 -2
  922. package/plugin/process-env.ts +3 -0
  923. package/plugin/react-client/createMessageHandlers.ts +9 -34
  924. package/plugin/react-client/index.client.ts +1 -0
  925. package/plugin/react-client/index.server.ts +1 -0
  926. package/plugin/react-client/index.ts +13 -4
  927. package/plugin/react-client/plugin.client.ts +124 -0
  928. package/plugin/react-client/plugin.server.ts +108 -0
  929. package/plugin/react-client/plugin.ts +13 -152
  930. package/plugin/react-client/types.ts +95 -0
  931. package/plugin/react-server/index.client.ts +1 -0
  932. package/plugin/react-server/index.server.ts +1 -0
  933. package/plugin/react-server/index.ts +13 -1
  934. package/plugin/react-server/plugin.client.ts +54 -0
  935. package/plugin/react-server/plugin.server.ts +27 -0
  936. package/plugin/react-server/plugin.ts +8 -183
  937. package/plugin/react-server/types.ts +24 -0
  938. package/plugin/react-static/collectHtmlContent.ts +131 -0
  939. package/plugin/react-static/collectRscContent.ts +92 -49
  940. package/plugin/react-static/configurePreviewServer.ts +8 -18
  941. package/plugin/react-static/createBuildLoader.client.ts +7 -0
  942. package/plugin/react-static/createBuildLoader.server.ts +333 -0
  943. package/plugin/react-static/createBuildLoader.ts +8 -300
  944. package/plugin/react-static/fileWriter.ts +303 -64
  945. package/plugin/react-static/index.client.ts +6 -0
  946. package/plugin/react-static/index.server.ts +6 -0
  947. package/plugin/react-static/index.ts +25 -1
  948. package/plugin/react-static/plugin.client.ts +932 -0
  949. package/plugin/react-static/plugin.server.ts +713 -0
  950. package/plugin/react-static/plugin.ts +8 -446
  951. package/plugin/react-static/processCssFilesForPages.ts +148 -0
  952. package/plugin/react-static/renderPage.client.ts +640 -0
  953. package/plugin/react-static/renderPage.server.ts +655 -0
  954. package/plugin/react-static/renderPage.ts +10 -160
  955. package/plugin/react-static/renderPages.ts +736 -139
  956. package/plugin/react-static/renderPagesBatched.ts +264 -0
  957. package/plugin/react-static/renderStreams.ts +12 -16
  958. package/plugin/react-static/rscToHtmlStream.client.ts +61 -0
  959. package/plugin/react-static/rscToHtmlStream.server.ts +66 -0
  960. package/plugin/react-static/rscToHtmlStream.ts +8 -80
  961. package/plugin/react-static/temporaryReferences.client.ts +1 -0
  962. package/plugin/react-static/temporaryReferences.server.ts +5 -0
  963. package/plugin/react-static/temporaryReferences.ts +11 -2
  964. package/plugin/react-static/types.ts +202 -8
  965. package/plugin/root.ts +1 -3
  966. package/plugin/stream/MessagePortReadable.ts +131 -0
  967. package/plugin/stream/MessagePortWritable.ts +104 -0
  968. package/plugin/stream/createFromNodeStream.client.ts +90 -0
  969. package/plugin/stream/createFromNodeStream.server.ts +30 -0
  970. package/plugin/stream/createFromNodeStream.ts +13 -0
  971. package/plugin/stream/createFromNodeStream.types.ts +53 -0
  972. package/plugin/stream/createHtmlStream.client.ts +47 -0
  973. package/plugin/stream/createHtmlStream.server.ts +312 -0
  974. package/plugin/stream/createHtmlStream.ts +13 -0
  975. package/plugin/stream/createHtmlStream.types.ts +63 -0
  976. package/plugin/stream/createMainThreadHandlers.ts +44 -0
  977. package/plugin/stream/createMessageChannels.ts +52 -0
  978. package/plugin/stream/createRenderToPipeableStreamHandler.client.ts +224 -0
  979. package/plugin/stream/createRenderToPipeableStreamHandler.server.ts +358 -0
  980. package/plugin/stream/createRenderToPipeableStreamHandler.ts +13 -0
  981. package/plugin/stream/createRenderToPipeableStreamHandler.types.ts +69 -0
  982. package/plugin/stream/createRscStream.client.ts +122 -0
  983. package/plugin/stream/createRscStream.server.ts +188 -0
  984. package/plugin/stream/createRscStream.ts +8 -0
  985. package/plugin/stream/createRscStream.types.ts +168 -0
  986. package/plugin/stream/createRscStream.utils.ts +171 -0
  987. package/plugin/stream/createRscWorkerStream.ts +178 -0
  988. package/plugin/stream/handleRscStream.client.ts +214 -0
  989. package/plugin/stream/handleRscStream.server.ts +82 -0
  990. package/plugin/stream/handleRscStream.ts +11 -0
  991. package/plugin/stream/handleRscStream.types.ts +70 -0
  992. package/plugin/stream/index.client.ts +15 -0
  993. package/plugin/stream/index.server.ts +15 -0
  994. package/plugin/stream/index.ts +137 -0
  995. package/plugin/stream/renderRscStream.server.ts +182 -0
  996. package/plugin/stream/renderRscStream.types.ts +43 -0
  997. package/plugin/stream/renderRscStreamHelpers.server.ts +88 -0
  998. package/plugin/stream/setMaxListeners.ts +30 -0
  999. package/plugin/transformer/README.md +2 -381
  1000. package/plugin/transformer/createTransformerPlugin.ts +388 -0
  1001. package/plugin/transformer/plugin.client.ts +6 -141
  1002. package/plugin/transformer/plugin.server.ts +6 -142
  1003. package/plugin/transformer/transformerEnv.ts +49 -0
  1004. package/plugin/types/react-server-dom-esm.d.ts +269 -110
  1005. package/plugin/types/virtual-rsc-hmr.d.ts +21 -0
  1006. package/plugin/types.ts +636 -223
  1007. package/plugin/utils/createCallServer.ts +8 -18
  1008. package/plugin/utils/createReactFetcher.ts +87 -5
  1009. package/plugin/utils/env.ts +1 -1
  1010. package/plugin/utils/index.client.ts +8 -0
  1011. package/plugin/utils/index.server.ts +8 -0
  1012. package/plugin/utils/index.ts +5 -1
  1013. package/plugin/utils/routeToURL.ts +3 -4
  1014. package/plugin/utils/urls.ts +40 -8
  1015. package/plugin/utils/useRscHmr.ts +72 -0
  1016. package/plugin/vendor/vendor.client.ts +9 -7
  1017. package/plugin/vendor/vendor.server.ts +5 -4
  1018. package/plugin/vendor/vendor.static.ts +12 -0
  1019. package/plugin/vendor/vendor.ts +10 -5
  1020. package/plugin/worker/createWorker.ts +283 -41
  1021. package/plugin/worker/html/README.md +2 -65
  1022. package/plugin/worker/html/handleHtmlRender.ts +245 -0
  1023. package/plugin/worker/html/html-worker.development.tsx +5 -17
  1024. package/plugin/worker/html/html-worker.production.tsx +1 -1
  1025. package/plugin/worker/html/html-worker.ts +5 -5
  1026. package/plugin/worker/html/index.ts +6 -6
  1027. package/plugin/worker/html/messageHandler.tsx +317 -98
  1028. package/plugin/worker/html/state.ts +38 -0
  1029. package/plugin/worker/html/types.ts +108 -35
  1030. package/plugin/worker/rsc/README.md +2 -257
  1031. package/plugin/worker/rsc/createBundleLoader.ts +92 -0
  1032. package/plugin/worker/rsc/createRscWorkerLoader.ts +104 -0
  1033. package/plugin/worker/rsc/handleRscRender.ts +510 -0
  1034. package/plugin/worker/rsc/handlers.ts +159 -238
  1035. package/plugin/worker/rsc/hydrateRscRenderMessage.ts +118 -0
  1036. package/plugin/worker/rsc/messageHandler.tsx +1288 -58
  1037. package/plugin/worker/rsc/rsc-worker.development.ts +198 -185
  1038. package/plugin/worker/rsc/rsc-worker.production.ts +302 -64
  1039. package/plugin/worker/rsc/rsc-worker.tsx +3 -5
  1040. package/plugin/worker/rsc/state.ts +54 -2
  1041. package/plugin/worker/rsc/types.ts +110 -32
  1042. package/plugin/worker/rsc/workerUserOptions.ts +63 -0
  1043. package/plugin/worker/sendMessage.ts +33 -53
  1044. package/plugin/worker/types.ts +94 -91
  1045. package/scripts/generate-toc.mjs +311 -0
  1046. package/scripts/remove-toc.mjs +51 -0
  1047. package/scripts/test-both.sh +82 -0
  1048. package/dist/plugin/config/resolveDevServerConfig.d.ts +0 -2
  1049. package/dist/plugin/config/resolveDevServerConfig.d.ts.map +0 -1
  1050. package/dist/plugin/getNodeEnv.d.ts.map +0 -1
  1051. package/dist/plugin/getNodeEnv.js +0 -17
  1052. package/dist/plugin/helpers/collectBundleManifestCss.d.ts +0 -2
  1053. package/dist/plugin/helpers/collectBundleManifestCss.d.ts.map +0 -1
  1054. package/dist/plugin/helpers/collectBundleManifestCss.js +0 -2
  1055. package/dist/plugin/helpers/createEventHandler.d.ts +0 -22
  1056. package/dist/plugin/helpers/createEventHandler.d.ts.map +0 -1
  1057. package/dist/plugin/helpers/createEventHandler.js +0 -36
  1058. package/dist/plugin/helpers/createHandler.d.ts +0 -14
  1059. package/dist/plugin/helpers/createHandler.d.ts.map +0 -1
  1060. package/dist/plugin/helpers/createHandler.js +0 -75
  1061. package/dist/plugin/helpers/createRscStream.d.ts +0 -26
  1062. package/dist/plugin/helpers/createRscStream.d.ts.map +0 -1
  1063. package/dist/plugin/helpers/createRscStream.js +0 -178
  1064. package/dist/plugin/helpers/defaultFileWriter.d.ts +0 -2
  1065. package/dist/plugin/helpers/defaultFileWriter.d.ts.map +0 -1
  1066. package/dist/plugin/helpers/resolveComponents.d.ts +0 -27
  1067. package/dist/plugin/helpers/resolveComponents.d.ts.map +0 -1
  1068. package/dist/plugin/helpers/resolveComponents.js +0 -146
  1069. package/dist/plugin/helpers/resolveUserComponents.d.ts +0 -33
  1070. package/dist/plugin/helpers/resolveUserComponents.d.ts.map +0 -1
  1071. package/dist/plugin/helpers/resolveUserComponents.js +0 -163
  1072. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts +0 -11
  1073. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts.map +0 -1
  1074. package/dist/plugin/react-client/cleanupWorkerServerAction.js +0 -18
  1075. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts +0 -17
  1076. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +0 -1
  1077. package/dist/plugin/react-client/configureWorkerRequestHandler.js +0 -203
  1078. package/dist/plugin/react-client/createWorkerStream.d.ts +0 -26
  1079. package/dist/plugin/react-client/createWorkerStream.d.ts.map +0 -1
  1080. package/dist/plugin/react-client/createWorkerStream.js +0 -163
  1081. package/dist/plugin/react-client/handleWorkerRscStream.d.ts +0 -24
  1082. package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +0 -1
  1083. package/dist/plugin/react-client/handleWorkerRscStream.js +0 -91
  1084. package/dist/plugin/react-client/handleWorkerServerAction.d.ts +0 -13
  1085. package/dist/plugin/react-client/handleWorkerServerAction.d.ts.map +0 -1
  1086. package/dist/plugin/react-client/handleWorkerServerAction.js +0 -62
  1087. package/dist/plugin/react-client/restartWorker.d.ts +0 -12
  1088. package/dist/plugin/react-client/restartWorker.d.ts.map +0 -1
  1089. package/dist/plugin/react-client/restartWorker.js +0 -69
  1090. package/dist/plugin/react-server/configureReactServer.d.ts +0 -10
  1091. package/dist/plugin/react-server/configureReactServer.d.ts.map +0 -1
  1092. package/dist/plugin/react-server/configureReactServer.js +0 -209
  1093. package/dist/plugin/react-server/handleServerAction.d.ts +0 -6
  1094. package/dist/plugin/react-server/handleServerAction.d.ts.map +0 -1
  1095. package/dist/plugin/react-server/handleServerAction.js +0 -159
  1096. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts +0 -25
  1097. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts.map +0 -1
  1098. package/dist/plugin/react-static/collectHtmlWorkerContent.js +0 -94
  1099. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts +0 -12
  1100. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts.map +0 -1
  1101. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js +0 -130
  1102. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts +0 -3
  1103. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts.map +0 -1
  1104. package/dist/plugin/worker/html/sendHtmlWorkerMessage.js +0 -2
  1105. package/dist/plugin/worker/rsc/handleRender.d.ts +0 -6
  1106. package/dist/plugin/worker/rsc/handleRender.d.ts.map +0 -1
  1107. package/dist/plugin/worker/rsc/handleRender.js +0 -137
  1108. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts +0 -3
  1109. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts.map +0 -1
  1110. package/dist/plugin/worker/rsc/sendRscWorkerMessage.js +0 -11
  1111. package/dist/plugin/worker/rsc/userOptions.d.ts +0 -2
  1112. package/dist/plugin/worker/rsc/userOptions.d.ts.map +0 -1
  1113. package/dist/plugin/worker/rsc/userOptions.js +0 -16
  1114. package/plugin/helpers/collectBundleManifestCss.ts +0 -1
  1115. package/plugin/helpers/createEventHandler.ts +0 -44
  1116. package/plugin/helpers/createHandler.ts +0 -97
  1117. package/plugin/helpers/createRscStream.tsx +0 -226
  1118. package/plugin/helpers/defaultFileWriter.ts +0 -0
  1119. package/plugin/helpers/resolveComponents.ts +0 -202
  1120. package/plugin/helpers/resolveUserComponents.ts +0 -190
  1121. package/plugin/react-client/cleanupWorkerServerAction.ts +0 -33
  1122. package/plugin/react-client/configureWorkerRequestHandler.ts +0 -249
  1123. package/plugin/react-client/createWorkerStream.ts +0 -210
  1124. package/plugin/react-client/handleWorkerRscStream.ts +0 -145
  1125. package/plugin/react-client/handleWorkerServerAction.ts +0 -96
  1126. package/plugin/react-client/restartWorker.ts +0 -90
  1127. package/plugin/react-server/configureReactServer.ts +0 -235
  1128. package/plugin/react-server/handleServerAction.ts +0 -192
  1129. package/plugin/react-static/collectHtmlWorkerContent.ts +0 -147
  1130. package/plugin/worker/html/createHtmlWorkerRenderState.tsx +0 -142
  1131. package/plugin/worker/html/sendHtmlWorkerMessage.ts +0 -8
  1132. package/plugin/worker/rsc/handleRender.ts +0 -168
  1133. package/plugin/worker/rsc/sendRscWorkerMessage.ts +0 -7
  1134. package/plugin/worker/rsc/userOptions.ts +0 -7
  1135. /package/dist/plugin/config/{resolveDevServerConfig.js → createHandlerOptions.types.js} +0 -0
  1136. /package/dist/plugin/{helpers/defaultFileWriter.js → dev-server/types.js} +0 -0
  1137. /package/plugin/{config/resolveDevServerConfig.tsx → worker/worker-handlers.server.ts} +0 -0
@@ -0,0 +1,558 @@
1
+ import type { ServerResponse } from "http";
2
+ import { React } from "../vendor/vendor.server.js";
3
+ import { collectViteModuleGraphCss } from "../helpers/collectViteModuleGraphCss.js";
4
+ import { createRscStream } from "../stream/createRscStream.server.js";
5
+ import { createRenderToPipeableStreamHandler } from "../stream/createRenderToPipeableStreamHandler.server.js";
6
+ import { createWorker } from "../worker/createWorker.js";
7
+ import type { Worker } from "node:worker_threads";
8
+ import { serializedOptions } from "../helpers/serializeUserOptions.js";
9
+ import { requestInfo } from "../helpers/requestInfo.js";
10
+ import { getRouteFiles } from "../helpers/getRouteFiles.js";
11
+ import { handleServerAction } from "./handleServerAction.js";
12
+ import type { ConfigureReactServerFn } from "./types.js";
13
+ import { handleError } from "../error/handleError.js";
14
+ import { cleanupWorker } from "../helpers/workerCleanup.js";
15
+ import { mergeConfig, type ResolvedConfig } from "vite";
16
+ import { resolvePageAndProps } from "../helpers/resolvePageAndProps.js";
17
+ import { Root as DefaultRoot } from "../components/root.js";
18
+
19
+ export const configureReactServer: ConfigureReactServerFn =
20
+ function _configureReactServer({
21
+ server,
22
+ autoDiscoveredFiles,
23
+ userOptions: _userOptions,
24
+ serverManifest,
25
+ resolvedConfig,
26
+ }) {
27
+ const activeStreams = new Set<ServerResponse>();
28
+ const activeControllers = new Map<
29
+ ServerResponse,
30
+ { abort: (reason?: unknown) => void }
31
+ >();
32
+ let isRestarting = false;
33
+
34
+
35
+ const logger = server.config.customLogger || server.config.logger;
36
+ const {
37
+ Html: _UserHtmlComponent,
38
+ // loader config isn't important here, since that's used by the transformer
39
+ loader: _loaderConfig,
40
+ verbose,
41
+ // we can use these directly to create the handler
42
+ ...userHandlerOptions
43
+ } = _userOptions;
44
+
45
+ server.config = mergeConfig(
46
+ server.config,
47
+ resolvedConfig
48
+ ) as ResolvedConfig;
49
+
50
+
51
+ // Handle Vite server restarts
52
+ server.ws.on("restart", (path) => {
53
+ logger.info(
54
+ "[vite-plugin-react-server] 🔧 Plugin changed, preparing for restart:",
55
+ path
56
+ );
57
+
58
+ isRestarting = true;
59
+
60
+ // Abort all active streams first, then close responses
61
+ for (const res of activeStreams) {
62
+ const controller = activeControllers.get(res);
63
+ if (controller) {
64
+ try {
65
+ controller.abort("Server restarting");
66
+ } catch (e) {
67
+ // Ignore abort errors
68
+ }
69
+ }
70
+
71
+ res.writeHead(503, {
72
+ "Content-Type": "text/x-component; charset=utf-8",
73
+ "Retry-After": "1",
74
+ });
75
+ res.end(
76
+ `0:E{"digest":"","name":"Error","message":"Server restarting...","stack":"","env":"Server"}`
77
+ );
78
+ }
79
+ activeStreams.clear();
80
+ activeControllers.clear();
81
+ });
82
+
83
+ // Handle restart completion
84
+ server.ws.on("full-reload", () => {
85
+ isRestarting = false;
86
+ logger.info("[vite-plugin-react-server] ✅ Server restart completed");
87
+ });
88
+
89
+ // Fallback: reset restart flag after a timeout
90
+ server.ws.on("restart", () => {
91
+ setTimeout(() => {
92
+ if (isRestarting) {
93
+ isRestarting = false;
94
+ logger.info(
95
+ "[vite-plugin-react-server] ⏰ Restart timeout, resuming normal operation"
96
+ );
97
+ }
98
+ }, 5000); // 5 second timeout
99
+ });
100
+
101
+ const loader = async (id: string) => {
102
+ const [moduleID, exportName] = id.split("#");
103
+
104
+ // Determine the full module path
105
+ let fullModulePath: string;
106
+
107
+ // Check if already an absolute path (from server environment module graph)
108
+ if (moduleID.startsWith(_userOptions.projectRoot)) {
109
+ fullModulePath = moduleID;
110
+ } else {
111
+ // Resolve relative path against project root
112
+ const resolvedModuleID = moduleID.startsWith("/")
113
+ ? moduleID.slice(1)
114
+ : moduleID;
115
+ fullModulePath = `${_userOptions.projectRoot}/${resolvedModuleID}`;
116
+ }
117
+
118
+ // Use server environment runner for proper react-server condition handling
119
+ // This ensures client components are transformed to registerClientReference
120
+ const serverEnv = server.environments['server'];
121
+ let result: Record<string, unknown>;
122
+
123
+ if (serverEnv && 'runner' in serverEnv && serverEnv.runner) {
124
+ // Vite 6 Environment API: use server environment runner for RSC
125
+ result = await (serverEnv.runner as { import: (url: string) => Promise<Record<string, unknown>> }).import(fullModulePath);
126
+ } else {
127
+ // Fallback to ssrLoadModule (should not happen in Vite 6+)
128
+ result = await server.ssrLoadModule(fullModulePath);
129
+ }
130
+ if (result == null)
131
+ throw new Error(`Module \"${moduleID}\" does not have any exports`);
132
+
133
+ if (!Object.keys(result).length && exportName.length)
134
+ throw new Error(
135
+ `Module \"${moduleID}\" is a module, but does not have any exports so it can't find ${exportName}`
136
+ );
137
+
138
+ // Always return the full module - callers will extract the specific export if needed
139
+ // This is consistent with how resolvePage and resolveProps work
140
+ return result;
141
+ };
142
+ server.middlewares.use(async (req, res, next) => {
143
+ if (!req.url) {
144
+ return next();
145
+ }
146
+ const handlerOptions = {
147
+ ...userHandlerOptions,
148
+ moduleBaseURL: server.config.base,
149
+ moduleBasePath: userHandlerOptions.moduleBasePath,
150
+ projectRoot: _userOptions.projectRoot,
151
+ css: userHandlerOptions.css,
152
+ loader: loader,
153
+ verbose,
154
+ logger,
155
+ rscStream: res
156
+ };
157
+ const info = requestInfo(req, handlerOptions, "");
158
+
159
+ // Handle server actions
160
+ if (info.isServerActionRequest) {
161
+ return handleServerAction(req, res, server, handlerOptions);
162
+ }
163
+ if (!info.isRscRequest) {
164
+ return next();
165
+ }
166
+
167
+ // If server is restarting, return 503 immediately
168
+ if (isRestarting) {
169
+ res.writeHead(503, {
170
+ "Content-Type": "text/x-component; charset=utf-8",
171
+ "Retry-After": "1",
172
+ });
173
+ res.end(
174
+ `0:E{"digest":"","name":"Error","message":"Server restarting...","stack":"","env":"Server"}`
175
+ );
176
+ return;
177
+ }
178
+
179
+ // Create RSC worker for consistent RSC stream formats
180
+ let rscWorker: Worker | undefined;
181
+
182
+ try {
183
+ const routeFiles = await getRouteFiles(
184
+ info.route,
185
+ autoDiscoveredFiles,
186
+ _userOptions,
187
+ logger
188
+ );
189
+ if (routeFiles.type === "error") {
190
+ const panicError = handleError({
191
+ error: routeFiles.error,
192
+ logger: logger,
193
+ panicThreshold: userHandlerOptions.panicThreshold,
194
+ critical: false,
195
+ context: "configureReactServer",
196
+ });
197
+ if (panicError != null) {
198
+ return next(panicError);
199
+ }
200
+ return next();
201
+ }
202
+ const pagePath = routeFiles.page;
203
+ const propsPath = routeFiles.props;
204
+ const rootPath = routeFiles.root;
205
+
206
+ // Check if we have a page path - if not, skip this route
207
+ if (!pagePath) {
208
+ if (verbose) {
209
+ logger.info(`No page found for route: ${info.route}, skipping`);
210
+ }
211
+ return next();
212
+ }
213
+
214
+ if (verbose) {
215
+ logger.info(
216
+ `Components resolved successfully for route: ${info.route}`
217
+ );
218
+ }
219
+
220
+ if (verbose) {
221
+ logger.info(
222
+ `PageComponent is valid, creating handler options for route: ${info.route}`
223
+ );
224
+ }
225
+
226
+ const handlerOptions = {
227
+ ...userHandlerOptions,
228
+ route: info.route,
229
+ pagePath,
230
+ propsPath,
231
+ logger: logger,
232
+ manifest: serverManifest,
233
+ server,
234
+ moduleBaseURL: server.config.base,
235
+ projectRoot: _userOptions.projectRoot,
236
+ loader: loader,
237
+ verbose: verbose,
238
+ };
239
+
240
+ // Load actual components first - this registers them in the module graph
241
+ // which is required for CSS collection to work
242
+ let PageComponent: React.ComponentType<any> = React.Fragment;
243
+ let RootComponent: React.ComponentType<any> = DefaultRoot;
244
+ let pageProps: any = {};
245
+
246
+ // Load the Root component
247
+ if (rootPath) {
248
+ try {
249
+ const rootExportName = userHandlerOptions.rootExportName || "Root";
250
+ const rootModule = await loader(rootPath);
251
+
252
+ if (rootModule && rootModule[rootExportName] && typeof rootModule[rootExportName] === 'function') {
253
+ RootComponent = rootModule[rootExportName] as React.ComponentType<any>;
254
+ if (verbose) {
255
+ logger.info(`Loaded Root component for route ${info.route} from ${rootPath}#${rootExportName}`);
256
+ }
257
+ } else if (rootModule && rootModule['default'] && typeof rootModule['default'] === 'function') {
258
+ RootComponent = rootModule['default'] as React.ComponentType<any>;
259
+ if (verbose) {
260
+ logger.info(`Loaded default export as Root component for route ${info.route}`);
261
+ }
262
+ } else {
263
+ if (verbose) {
264
+ logger.warn(`Root component not found in ${rootPath}, using React.Fragment`);
265
+ }
266
+ }
267
+ } catch (error) {
268
+ if (verbose) {
269
+ logger.warn(`Failed to load Root component from ${rootPath}: ${error}`);
270
+ }
271
+ }
272
+ }
273
+
274
+ // Load the page component (registers it in module graph for CSS collection)
275
+ if (pagePath) {
276
+ try {
277
+ const pageExportName = userHandlerOptions.pageExportName || "Page";
278
+ const pageModule = await loader(pagePath);
279
+ if (pageModule && pageModule[pageExportName] && typeof pageModule[pageExportName] === 'function') {
280
+ PageComponent = pageModule[pageExportName] as React.ComponentType<any>;
281
+ if (verbose) {
282
+ logger.info(`Loaded Page component for route ${info.route} from ${pagePath}#${pageExportName}`);
283
+ }
284
+ } else if (pageModule && pageModule['default'] && typeof pageModule['default'] === 'function') {
285
+ PageComponent = pageModule['default'] as React.ComponentType<any>;
286
+ if (verbose) {
287
+ logger.info(`Loaded default export as Page component for route ${info.route}`);
288
+ }
289
+ } else if (pageModule && typeof pageModule === 'function') {
290
+ PageComponent = pageModule as React.ComponentType<any>;
291
+ if (verbose) {
292
+ logger.info(`Loaded module as Page component for route ${info.route}`);
293
+ }
294
+ } else {
295
+ if (verbose) {
296
+ logger.warn(`Page component not found in ${pagePath}, using React.Fragment`);
297
+ }
298
+ }
299
+ } catch (error) {
300
+ if (verbose) {
301
+ logger.warn(`Failed to load page component from ${pagePath}: ${error}`);
302
+ }
303
+ }
304
+ }
305
+
306
+ // NOW collect CSS - page is registered in module graph
307
+ if (verbose) {
308
+ logger.info(`Collecting CSS files for route: ${info.route}`);
309
+ }
310
+
311
+ const serverEnv = server.environments['server'];
312
+ const moduleGraphForCss = serverEnv?.moduleGraph ?? server.moduleGraph;
313
+
314
+ const cssFilesResult = await collectViteModuleGraphCss({
315
+ moduleGraph: moduleGraphForCss,
316
+ parentUrl: pagePath,
317
+ handlerOptions: handlerOptions,
318
+ });
319
+
320
+ if (verbose) {
321
+ logger.info(`CSS collection completed for route: ${info.route}`);
322
+ }
323
+
324
+ if (cssFilesResult.type === "skip") {
325
+ if (verbose) {
326
+ logger.info(`CSS collection skipped for route: ${info.route}, continuing with RSC rendering`);
327
+ }
328
+ }
329
+ if (cssFilesResult.type === "error") {
330
+ return next(cssFilesResult.error);
331
+ }
332
+
333
+ const collectedCssFiles = cssFilesResult.type === "success" ? cssFilesResult.cssFiles : new Map();
334
+
335
+ if (verbose) {
336
+ logger.info(`Creating RSC handler for route: ${info.route}`);
337
+ }
338
+
339
+ // Load props using the resolvePageAndProps helper
340
+ try {
341
+ if (verbose) {
342
+ logger.info(`[configureReactServer] Loading props for route ${info.route}, pagePath: ${pagePath}, propsPath: ${propsPath}, url: ${info.url}`);
343
+ }
344
+
345
+ const propsResult = await resolvePageAndProps({
346
+ pagePath,
347
+ propsPath,
348
+ pageExportName: userHandlerOptions.pageExportName,
349
+ propsExportName: userHandlerOptions.propsExportName,
350
+ url: info.url,
351
+ route: info.route,
352
+ moduleBaseURL: server.config.base,
353
+ loader,
354
+ verbose,
355
+ logger,
356
+ build: {
357
+ rscOutputPath: userHandlerOptions.build?.rscOutputPath || ".rsc",
358
+ },
359
+ });
360
+
361
+ if (verbose) {
362
+ logger.info(`[configureReactServer] Props resolution result type: ${propsResult.type}`);
363
+ }
364
+
365
+ if (propsResult.type === "success") {
366
+ pageProps = propsResult.pageProps || {};
367
+ if (verbose) {
368
+ logger.info(`[configureReactServer] Loaded props for route ${info.route}: ${JSON.stringify(pageProps, null, 2)}`);
369
+ }
370
+ } else if (propsResult.type === "skip") {
371
+ if (verbose) {
372
+ logger.info(`[configureReactServer] Props resolution skipped for route ${info.route}, using empty props`);
373
+ }
374
+ pageProps = {};
375
+ } else {
376
+ if (verbose) {
377
+ logger.warn(`[configureReactServer] Failed to load props for route ${info.route}: ${propsResult.error}`);
378
+ }
379
+ pageProps = {};
380
+ }
381
+ } catch (error) {
382
+ if (verbose) {
383
+ logger.warn(`[configureReactServer] Error loading props for route ${info.route}: ${error}`);
384
+ if (error instanceof Error) {
385
+ logger.warn(`[configureReactServer] Error stack: ${error.stack}`);
386
+ }
387
+ }
388
+ // Continue with empty props if loading fails
389
+ pageProps = {};
390
+ }
391
+
392
+ // DEV MODE OPTIMIZATION: Skip worker, use direct rendering on main thread
393
+ //
394
+ // Why: In dev:rsc mode, the main thread already has react-server condition and
395
+ // loads modules via Vite's environment runner which handles HMR automatically.
396
+ // The worker uses raw import() which bypasses Vite's module graph and HMR.
397
+ //
398
+ // Benefits of direct rendering in dev:
399
+ // - Proper HMR: file changes are picked up immediately via Vite's module graph
400
+ // - No module caching issues: environment runner handles cache invalidation
401
+ // - Simpler debugging: all code runs in main thread
402
+ //
403
+ // The worker is still valuable for:
404
+ // - Production builds (isolation, consistent behavior)
405
+ // - Future: Running RSC in different runtimes (workerd, etc.)
406
+ //
407
+ // Users can opt-in to worker in dev via config if needed for testing production behavior.
408
+ const useWorkerInDev = _userOptions.dev?.useRscWorker === true;
409
+
410
+ if (useWorkerInDev) {
411
+ try {
412
+ if (verbose) {
413
+ logger.info(`Creating RSC worker for route: ${info.route} (useRscWorker=true)`);
414
+ }
415
+
416
+ const workerResult = await createWorker({
417
+ projectRoot: _userOptions.projectRoot || server.config.root,
418
+ workerData: {
419
+ userOptions: serializedOptions(_userOptions, autoDiscoveredFiles),
420
+ resolvedConfig: server.config,
421
+ configEnv: { command: "serve", mode: "development" },
422
+ },
423
+ verbose,
424
+ logger,
425
+ });
426
+
427
+ if (workerResult.type === "success") {
428
+ rscWorker = workerResult.worker;
429
+ if (verbose) {
430
+ logger.info(`RSC worker created successfully for route: ${info.route}`);
431
+ }
432
+ } else {
433
+ if (verbose) {
434
+ logger.warn(`RSC worker creation skipped for route: ${info.route}: ${workerResult.reason}`);
435
+ }
436
+ }
437
+ } catch (error) {
438
+ if (verbose) {
439
+ logger.warn(`Failed to create RSC worker for route: ${info.route}: ${error}`);
440
+ }
441
+ }
442
+ } else {
443
+ if (verbose) {
444
+ logger.info(`[dev:rsc] Using direct rendering (no worker) for proper HMR support`);
445
+ }
446
+ }
447
+
448
+ // Use worker-based RSC stream if worker is available, otherwise fall back to direct rendering
449
+ // CRITICAL: For RSC requests, use htmlPath: "" for headless mode (no Html wrapper)
450
+ // This prevents hydration errors where <html> would be rendered inside #root div
451
+ const rscResult = rscWorker
452
+ ? createRscStream({
453
+ ...handlerOptions,
454
+ url: info.url,
455
+ pagePath,
456
+ propsPath,
457
+ rootPath, // Pass the root path for worker to load
458
+ htmlPath: "", // Empty string = headless RSC (no Html wrapper)
459
+ rscWorker,
460
+ cssFiles: collectedCssFiles,
461
+ globalCss: new Map(),
462
+ })
463
+ : createRenderToPipeableStreamHandler({
464
+ ...handlerOptions,
465
+ url: info.url,
466
+ PageComponent: PageComponent as any,
467
+ RootComponent: RootComponent as any,
468
+ HtmlComponent: React.Fragment, // Headless stream - no Html wrapper
469
+ pageProps: pageProps, // Pass the loaded props
470
+ cssFiles: collectedCssFiles,
471
+ });
472
+
473
+ if (verbose) {
474
+ logger.info(
475
+ `RSC handler created for route: ${
476
+ info.route
477
+ }, result type: ${typeof rscResult}, has pipe: ${typeof rscResult?.pipe}, has abort: ${typeof rscResult?.abort}`
478
+ );
479
+ }
480
+
481
+ if (rscResult && typeof rscResult.pipe === "function") {
482
+ if (verbose) {
483
+ logger.info(`Setting up RSC stream for route: ${info.route}`);
484
+ }
485
+
486
+ // set headers
487
+ res.setHeader("Content-Type", "text/x-component; charset=utf-8");
488
+
489
+ // CRITICAL: Disable caching in development mode
490
+ // Without this, browsers cache RSC streams and don't show updates
491
+ res.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
492
+ res.setHeader("Pragma", "no-cache");
493
+ res.setHeader("Expires", "0");
494
+
495
+ // Add CORS headers for RSC files
496
+ const origin = req.headers.origin;
497
+ if (origin && (origin.includes('localhost') || origin.includes('127.0.0.1'))) {
498
+ res.setHeader("Access-Control-Allow-Origin", origin);
499
+ } else {
500
+ res.setHeader("Access-Control-Allow-Origin", "*");
501
+ }
502
+ res.setHeader("Access-Control-Allow-Methods", "GET, OPTIONS");
503
+ res.setHeader("Access-Control-Allow-Headers", "Accept, Content-Type");
504
+ res.setHeader("Access-Control-Max-Age", "86400");
505
+ rscResult.pipe(res);
506
+
507
+ // Store the controller for potential abort during restart
508
+ activeControllers.set(res, rscResult);
509
+ } else {
510
+ if (verbose) {
511
+ logger.error(
512
+ `RSC handler failed for route: ${
513
+ info.route
514
+ }, invalid result: ${typeof rscResult}`
515
+ );
516
+ }
517
+ // Handle the error case
518
+ res.statusCode = 500;
519
+ res.end("Internal Server Error");
520
+ }
521
+ activeStreams.add(res);
522
+ res.on("close", () => {
523
+ activeStreams.delete(res);
524
+
525
+ // Abort the RSC stream to clean up MessagePorts
526
+ const controller = activeControllers.get(res);
527
+ if (controller && typeof controller.abort === "function") {
528
+ try {
529
+ controller.abort();
530
+ } catch (error) {
531
+ // Ignore cleanup errors
532
+ }
533
+ }
534
+ activeControllers.delete(res);
535
+
536
+ // Clean up worker when request completes
537
+ cleanupWorker(rscWorker);
538
+ });
539
+ } catch (error) {
540
+ const panicError = handleError({
541
+ error,
542
+ logger,
543
+ panicThreshold: handlerOptions.panicThreshold,
544
+ critical: false,
545
+ context: "configureReactServer",
546
+ });
547
+ if (panicError != null) {
548
+ return next(panicError);
549
+ }
550
+
551
+ res.statusCode = 500;
552
+ res.setHeader("Content-Type", "text/x-component; charset=utf-8");
553
+ res.setHeader("Content-Length", "0"); // Will be updated after streaming
554
+
555
+ // Note: Worker cleanup is handled by the response close handler
556
+ }
557
+ });
558
+ };
@@ -0,0 +1,8 @@
1
+ import { getCondition } from "../config/getCondition.js";
2
+
3
+ const dir = new URL("./", import.meta.url).pathname.replace(/\/$/, "");
4
+ const condition = getCondition("");
5
+
6
+ export const { configureReactServer } = (await import(`${dir}/configureReactServer.${condition}.js`)) as {
7
+ configureReactServer: any;
8
+ };