vite-plugin-react-server 1.1.19 → 1.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (783) hide show
  1. package/README.md +102 -395
  2. package/dist/_virtual/dynamic-import-helper.js +1 -1
  3. package/dist/client.d.ts +1 -1
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +5 -2
  6. package/dist/index.js +1 -1
  7. package/dist/package.json +58 -25
  8. package/dist/plugin/components/{css-collector-elements.d.ts → css.d.ts} +2 -2
  9. package/dist/plugin/components/css.d.ts.map +1 -0
  10. package/dist/plugin/components/css.js +33 -0
  11. package/dist/plugin/components/html.d.ts +1 -1
  12. package/dist/plugin/components/html.d.ts.map +1 -1
  13. package/dist/plugin/components/html.js +5 -5
  14. package/dist/plugin/components/index.d.ts +3 -3
  15. package/dist/plugin/components/index.d.ts.map +1 -1
  16. package/dist/plugin/components/index.js +9 -3
  17. package/dist/plugin/components/root.d.ts +7 -0
  18. package/dist/plugin/components/root.d.ts.map +1 -0
  19. package/dist/plugin/components/root.js +18 -0
  20. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js +1 -1
  21. package/dist/plugin/config/autoDiscover/customWorkerFiles.js +1 -1
  22. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js +1 -1
  23. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts +5 -4
  24. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.d.ts.map +1 -1
  25. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js +26 -7
  26. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts +25 -2
  27. package/dist/plugin/config/autoDiscover/resolveBuildPages.d.ts.map +1 -1
  28. package/dist/plugin/config/autoDiscover/resolveBuildPages.js +84 -5
  29. package/dist/plugin/config/createModuleID.d.ts +3 -6
  30. package/dist/plugin/config/createModuleID.d.ts.map +1 -1
  31. package/dist/plugin/config/createModuleID.js +42 -32
  32. package/dist/plugin/config/defaults.d.ts +199 -121
  33. package/dist/plugin/config/defaults.d.ts.map +1 -1
  34. package/dist/plugin/config/defaults.js +155 -89
  35. package/dist/plugin/config/extMap.d.ts +6 -2
  36. package/dist/plugin/config/extMap.d.ts.map +1 -1
  37. package/dist/plugin/config/extMap.js +38 -48
  38. package/dist/plugin/config/flightBindings.d.ts +4 -0
  39. package/dist/plugin/config/flightBindings.d.ts.map +1 -0
  40. package/dist/plugin/config/flightBindings.js +215 -0
  41. package/dist/plugin/config/getCondition.d.ts +2 -0
  42. package/dist/plugin/config/getCondition.d.ts.map +1 -1
  43. package/dist/plugin/config/getCondition.js +4 -2
  44. package/dist/plugin/config/getPaths.js +1 -1
  45. package/dist/plugin/config/index.d.ts +17 -4
  46. package/dist/plugin/config/index.d.ts.map +1 -1
  47. package/dist/plugin/config/index.js +29 -7
  48. package/dist/plugin/config/interpolatePattern.d.ts +13 -0
  49. package/dist/plugin/config/interpolatePattern.d.ts.map +1 -0
  50. package/dist/plugin/config/interpolatePattern.js +13 -0
  51. package/dist/plugin/config/mimeTypes.js +1 -1
  52. package/dist/plugin/config/parsePattern.d.ts +25 -0
  53. package/dist/plugin/config/parsePattern.d.ts.map +1 -0
  54. package/dist/plugin/config/parsePattern.js +30 -0
  55. package/dist/plugin/config/resolveAllowedDirectives.d.ts +26 -0
  56. package/dist/plugin/config/resolveAllowedDirectives.d.ts.map +1 -0
  57. package/dist/plugin/config/resolveAllowedDirectives.js +35 -0
  58. package/dist/plugin/config/resolveDirectiveMatcher.d.ts +25 -0
  59. package/dist/plugin/config/resolveDirectiveMatcher.d.ts.map +1 -0
  60. package/dist/plugin/config/resolveDirectiveMatcher.js +33 -0
  61. package/dist/plugin/config/resolveEnv.d.ts.map +1 -1
  62. package/dist/plugin/config/resolveEnv.js +14 -4
  63. package/dist/plugin/config/resolveOptions.d.ts +13 -3
  64. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  65. package/dist/plugin/config/resolveOptions.js +228 -206
  66. package/dist/plugin/config/resolvePages.js +1 -1
  67. package/dist/plugin/config/resolvePatternWithValues.d.ts +39 -0
  68. package/dist/plugin/config/resolvePatternWithValues.d.ts.map +1 -0
  69. package/dist/plugin/config/resolvePatternWithValues.js +36 -0
  70. package/dist/plugin/config/resolveRegExp.d.ts +29 -0
  71. package/dist/plugin/config/resolveRegExp.d.ts.map +1 -0
  72. package/dist/plugin/config/resolveRegExp.js +39 -0
  73. package/dist/plugin/config/resolveUrlOption.d.ts +37 -6
  74. package/dist/plugin/config/resolveUrlOption.d.ts.map +1 -1
  75. package/dist/plugin/config/resolveUrlOption.js +42 -12
  76. package/dist/plugin/config/resolveUserConfig.d.ts +5 -4
  77. package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
  78. package/dist/plugin/config/resolveUserConfig.js +86 -40
  79. package/dist/plugin/env/plugin.d.ts +6 -0
  80. package/dist/plugin/env/plugin.d.ts.map +1 -1
  81. package/dist/plugin/env/plugin.js +111 -93
  82. package/dist/plugin/error/directiveError.d.ts +13 -0
  83. package/dist/plugin/error/directiveError.d.ts.map +1 -0
  84. package/dist/plugin/error/directiveError.js +21 -0
  85. package/dist/plugin/error/enhanceError.d.ts +14 -0
  86. package/dist/plugin/error/enhanceError.d.ts.map +1 -0
  87. package/dist/plugin/error/enhanceError.js +24 -0
  88. package/dist/plugin/error/index.d.ts +4 -0
  89. package/dist/plugin/error/index.d.ts.map +1 -0
  90. package/dist/plugin/error/index.js +9 -0
  91. package/dist/plugin/error/logError.d.ts +3 -0
  92. package/dist/plugin/error/logError.d.ts.map +1 -0
  93. package/dist/plugin/error/logError.js +47 -0
  94. package/dist/plugin/error/serializeError.d.ts +7 -0
  95. package/dist/plugin/error/serializeError.d.ts.map +1 -0
  96. package/dist/plugin/error/serializeError.js +37 -0
  97. package/dist/plugin/error/toError.d.ts +1 -8
  98. package/dist/plugin/error/toError.d.ts.map +1 -1
  99. package/dist/plugin/error/toError.js +62 -34
  100. package/dist/plugin/file-preserver/plugin.js +93 -105
  101. package/dist/plugin/getNodeEnv.d.ts +11 -0
  102. package/dist/plugin/getNodeEnv.d.ts.map +1 -0
  103. package/dist/plugin/getNodeEnv.js +17 -0
  104. package/dist/plugin/helpers/cleanObject.d.ts.map +1 -1
  105. package/dist/plugin/helpers/cleanObject.js +2 -1
  106. package/dist/plugin/helpers/collectManifestCss.js +1 -1
  107. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +6 -4
  108. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
  109. package/dist/plugin/helpers/collectViteModuleGraphCss.js +15 -9
  110. package/dist/plugin/helpers/createCssProps.d.ts +3 -4
  111. package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
  112. package/dist/plugin/helpers/createCssProps.js +16 -4
  113. package/dist/plugin/helpers/createEventHandler.d.ts +2 -2
  114. package/dist/plugin/helpers/createEventHandler.d.ts.map +1 -1
  115. package/dist/plugin/helpers/createEventHandler.js +1 -1
  116. package/dist/plugin/helpers/createHandler.d.ts +10 -8
  117. package/dist/plugin/helpers/createHandler.d.ts.map +1 -1
  118. package/dist/plugin/helpers/createHandler.js +11 -5
  119. package/dist/plugin/helpers/createRscStream.d.ts +18 -5
  120. package/dist/plugin/helpers/createRscStream.d.ts.map +1 -1
  121. package/dist/plugin/helpers/createRscStream.js +48 -14
  122. package/dist/plugin/helpers/formatMetrics.d.ts +1 -5
  123. package/dist/plugin/helpers/formatMetrics.d.ts.map +1 -1
  124. package/dist/plugin/helpers/formatMetrics.js +2 -39
  125. package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
  126. package/dist/plugin/helpers/getBundleManifest.js +9 -2
  127. package/dist/plugin/helpers/getRouteFiles.d.ts +30 -2
  128. package/dist/plugin/helpers/getRouteFiles.d.ts.map +1 -1
  129. package/dist/plugin/helpers/getRouteFiles.js +70 -7
  130. package/dist/plugin/helpers/handleServerAction.d.ts +8 -7
  131. package/dist/plugin/helpers/handleServerAction.d.ts.map +1 -1
  132. package/dist/plugin/helpers/handleServerAction.js +5 -2
  133. package/dist/plugin/helpers/hydrateUserOptions.d.ts +9 -0
  134. package/dist/plugin/helpers/hydrateUserOptions.d.ts.map +1 -0
  135. package/dist/plugin/helpers/hydrateUserOptions.js +22 -0
  136. package/dist/plugin/helpers/index.d.ts +2 -0
  137. package/dist/plugin/helpers/index.d.ts.map +1 -1
  138. package/dist/plugin/helpers/index.js +31 -31
  139. package/dist/plugin/helpers/inputNormalizer.d.ts +1 -1
  140. package/dist/plugin/helpers/inputNormalizer.d.ts.map +1 -1
  141. package/dist/plugin/helpers/inputNormalizer.js +33 -20
  142. package/dist/plugin/helpers/metrics.d.ts +4 -10
  143. package/dist/plugin/helpers/metrics.d.ts.map +1 -1
  144. package/dist/plugin/helpers/metrics.js +3 -59
  145. package/dist/plugin/helpers/moduleRefs.js +1 -1
  146. package/dist/plugin/helpers/moduleResolver.d.ts +24 -2
  147. package/dist/plugin/helpers/moduleResolver.d.ts.map +1 -1
  148. package/dist/plugin/helpers/moduleResolver.js +61 -22
  149. package/dist/plugin/helpers/requestInfo.d.ts +28 -1
  150. package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
  151. package/dist/plugin/helpers/requestInfo.js +43 -30
  152. package/dist/plugin/helpers/requestToRoute.d.ts +1 -1
  153. package/dist/plugin/helpers/requestToRoute.d.ts.map +1 -1
  154. package/dist/plugin/helpers/requestToRoute.js +17 -9
  155. package/dist/plugin/helpers/resolveComponent.d.ts +57 -0
  156. package/dist/plugin/helpers/resolveComponent.d.ts.map +1 -0
  157. package/dist/plugin/helpers/resolveComponent.js +71 -0
  158. package/dist/plugin/helpers/resolveComponents.d.ts +27 -0
  159. package/dist/plugin/helpers/resolveComponents.d.ts.map +1 -0
  160. package/dist/plugin/helpers/resolveComponents.js +137 -0
  161. package/dist/plugin/helpers/resolvePage.d.ts +15 -11
  162. package/dist/plugin/helpers/resolvePage.d.ts.map +1 -1
  163. package/dist/plugin/helpers/resolvePage.js +11 -7
  164. package/dist/plugin/helpers/resolvePageAndProps.d.ts +3 -10
  165. package/dist/plugin/helpers/resolvePageAndProps.d.ts.map +1 -1
  166. package/dist/plugin/helpers/resolvePageAndProps.js +28 -18
  167. package/dist/plugin/helpers/resolveProps.d.ts +13 -7
  168. package/dist/plugin/helpers/resolveProps.d.ts.map +1 -1
  169. package/dist/plugin/helpers/resolveProps.js +55 -25
  170. package/dist/plugin/helpers/resolveUserComponents.d.ts +33 -0
  171. package/dist/plugin/helpers/resolveUserComponents.d.ts.map +1 -0
  172. package/dist/plugin/helpers/resolveUserComponents.js +163 -0
  173. package/dist/plugin/helpers/serializeUserOptions.d.ts +7 -7
  174. package/dist/plugin/helpers/serializeUserOptions.d.ts.map +1 -1
  175. package/dist/plugin/helpers/serializeUserOptions.js +127 -42
  176. package/dist/plugin/helpers/stashReturnValue.d.ts +2 -1
  177. package/dist/plugin/helpers/stashReturnValue.d.ts.map +1 -1
  178. package/dist/plugin/helpers/stashReturnValue.js +6 -3
  179. package/dist/plugin/helpers/tryManifest.d.ts +1 -2
  180. package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
  181. package/dist/plugin/helpers/tryManifest.js +1 -1
  182. package/dist/plugin/loader/createDefaultLoader.d.ts +19 -8
  183. package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
  184. package/dist/plugin/loader/createDefaultLoader.js +69 -107
  185. package/dist/plugin/loader/createTransformer.d.ts +6 -0
  186. package/dist/plugin/loader/createTransformer.d.ts.map +1 -0
  187. package/dist/plugin/loader/createTransformer.js +97 -0
  188. package/dist/plugin/loader/{css-loader.development.d.ts → css-loader.d.ts} +6 -8
  189. package/dist/plugin/loader/css-loader.d.ts.map +1 -0
  190. package/dist/plugin/loader/css-loader.js +134 -0
  191. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts +4 -0
  192. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts.map +1 -0
  193. package/dist/plugin/loader/directives/addLocalExportedNames.js +57 -0
  194. package/dist/plugin/loader/directives/analyzeDirectives.d.ts +9 -0
  195. package/dist/plugin/loader/directives/analyzeDirectives.d.ts.map +1 -0
  196. package/dist/plugin/loader/directives/analyzeDirectives.js +221 -0
  197. package/dist/plugin/loader/directives/analyzeModule.d.ts +11 -0
  198. package/dist/plugin/loader/directives/analyzeModule.d.ts.map +1 -0
  199. package/dist/plugin/loader/directives/analyzeModule.js +34 -0
  200. package/dist/plugin/loader/directives/collectExports.d.ts +13 -0
  201. package/dist/plugin/loader/directives/collectExports.d.ts.map +1 -0
  202. package/dist/plugin/loader/directives/collectExports.js +116 -0
  203. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts +6 -0
  204. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts.map +1 -0
  205. package/dist/plugin/loader/directives/collectExportsFromModule.js +24 -0
  206. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts +3 -0
  207. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts.map +1 -0
  208. package/dist/plugin/loader/directives/findDirectiveMatches.js +46 -0
  209. package/dist/plugin/loader/directives/getExportedName.d.ts +3 -0
  210. package/dist/plugin/loader/directives/getExportedName.d.ts.map +1 -0
  211. package/dist/plugin/loader/directives/getExportedName.js +59 -0
  212. package/dist/plugin/loader/directives/getExports.d.ts +7 -0
  213. package/dist/plugin/loader/directives/getExports.d.ts.map +1 -0
  214. package/dist/plugin/loader/directives/getExports.js +28 -0
  215. package/dist/plugin/loader/directives/getFunctionBody.d.ts +3 -0
  216. package/dist/plugin/loader/directives/getFunctionBody.d.ts.map +1 -0
  217. package/dist/plugin/loader/directives/getFunctionBody.js +31 -0
  218. package/dist/plugin/loader/directives/getFunctionName.d.ts +10 -0
  219. package/dist/plugin/loader/directives/getFunctionName.d.ts.map +1 -0
  220. package/dist/plugin/loader/directives/getFunctionName.js +42 -0
  221. package/dist/plugin/loader/directives/getQualifiedName.d.ts +3 -0
  222. package/dist/plugin/loader/directives/getQualifiedName.d.ts.map +1 -0
  223. package/dist/plugin/loader/directives/getQualifiedName.js +65 -0
  224. package/dist/plugin/loader/directives/index.d.ts +14 -0
  225. package/dist/plugin/loader/directives/index.d.ts.map +1 -0
  226. package/dist/plugin/loader/directives/index.js +18 -0
  227. package/dist/plugin/loader/directives/processFunctionNode.d.ts +4 -0
  228. package/dist/plugin/loader/directives/processFunctionNode.d.ts.map +1 -0
  229. package/dist/plugin/loader/directives/processFunctionNode.js +86 -0
  230. package/dist/plugin/loader/directives/typeGuards.d.ts +37 -0
  231. package/dist/plugin/loader/directives/typeGuards.d.ts.map +1 -0
  232. package/dist/plugin/loader/directives/typeGuards.js +100 -0
  233. package/dist/plugin/loader/directives/types.d.ts +154 -0
  234. package/dist/plugin/loader/directives/types.d.ts.map +1 -0
  235. package/dist/plugin/loader/directives/utils.d.ts +14 -0
  236. package/dist/plugin/loader/directives/utils.d.ts.map +1 -0
  237. package/dist/plugin/loader/directives/utils.js +21 -0
  238. package/dist/plugin/loader/env-loader.d.ts +11 -0
  239. package/dist/plugin/loader/env-loader.d.ts.map +1 -0
  240. package/dist/plugin/loader/env-loader.js +65 -0
  241. package/dist/plugin/loader/index.d.ts +8 -1
  242. package/dist/plugin/loader/index.d.ts.map +1 -1
  243. package/dist/plugin/loader/index.js +13 -4
  244. package/dist/plugin/loader/parse.d.ts +11 -2
  245. package/dist/plugin/loader/parse.d.ts.map +1 -1
  246. package/dist/plugin/loader/parse.js +29 -6
  247. package/dist/plugin/loader/react-loader.d.ts +22 -1
  248. package/dist/plugin/loader/react-loader.d.ts.map +1 -1
  249. package/dist/plugin/loader/react-loader.js +169 -6
  250. package/dist/plugin/loader/removeDirectives.d.ts +5 -0
  251. package/dist/plugin/loader/removeDirectives.d.ts.map +1 -0
  252. package/dist/plugin/loader/removeDirectives.js +17 -0
  253. package/dist/plugin/loader/removeRanges.d.ts +5 -0
  254. package/dist/plugin/loader/removeRanges.d.ts.map +1 -0
  255. package/dist/plugin/loader/removeRanges.js +20 -0
  256. package/dist/plugin/loader/sourceMap.d.ts +16 -24
  257. package/dist/plugin/loader/sourceMap.d.ts.map +1 -1
  258. package/dist/plugin/loader/sourceMap.js +125 -97
  259. package/dist/plugin/loader/transformClientModule.d.ts +10 -0
  260. package/dist/plugin/loader/transformClientModule.d.ts.map +1 -0
  261. package/dist/plugin/loader/transformClientModule.js +46 -0
  262. package/dist/plugin/loader/transformModule.d.ts +6 -0
  263. package/dist/plugin/loader/transformModule.d.ts.map +1 -0
  264. package/dist/plugin/loader/transformModule.js +33 -0
  265. package/dist/plugin/loader/transformModuleIfNeeded.d.ts +12 -1
  266. package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
  267. package/dist/plugin/loader/transformModuleIfNeeded.js +9 -20
  268. package/dist/plugin/loader/transformServerModule.d.ts +11 -0
  269. package/dist/plugin/loader/transformServerModule.d.ts.map +1 -0
  270. package/dist/plugin/loader/transformServerModule.js +84 -0
  271. package/dist/plugin/loader/transformWithAcornLoose.d.ts +12 -0
  272. package/dist/plugin/loader/transformWithAcornLoose.d.ts.map +1 -0
  273. package/dist/plugin/loader/transformWithAcornLoose.js +18 -0
  274. package/dist/plugin/loader/types.d.ts +59 -12
  275. package/dist/plugin/loader/types.d.ts.map +1 -1
  276. package/dist/plugin/metrics/collectStreamMetrics.d.ts +9 -0
  277. package/dist/plugin/metrics/collectStreamMetrics.d.ts.map +1 -0
  278. package/dist/plugin/metrics/collectStreamMetrics.js +35 -0
  279. package/dist/plugin/metrics/createRenderMetrics.d.ts +3 -0
  280. package/dist/plugin/metrics/createRenderMetrics.d.ts.map +1 -0
  281. package/dist/plugin/metrics/createRenderMetrics.js +24 -0
  282. package/dist/plugin/metrics/createStreamMetrics.d.ts +3 -0
  283. package/dist/plugin/metrics/createStreamMetrics.d.ts.map +1 -0
  284. package/dist/plugin/metrics/createStreamMetrics.js +19 -0
  285. package/dist/plugin/metrics/formatMetrics.d.ts +6 -3
  286. package/dist/plugin/metrics/formatMetrics.d.ts.map +1 -1
  287. package/dist/plugin/metrics/formatMetrics.js +5 -2
  288. package/dist/plugin/metrics/index.d.ts +3 -1
  289. package/dist/plugin/metrics/index.d.ts.map +1 -1
  290. package/dist/plugin/metrics/index.js +9 -1
  291. package/dist/plugin/metrics/types.d.ts +23 -0
  292. package/dist/plugin/metrics/types.d.ts.map +1 -0
  293. package/dist/plugin/metrics/types.js +1 -0
  294. package/dist/plugin/plugin.client.d.ts +23 -2
  295. package/dist/plugin/plugin.client.d.ts.map +1 -1
  296. package/dist/plugin/plugin.client.js +30 -17
  297. package/dist/plugin/plugin.server.d.ts +13 -2
  298. package/dist/plugin/plugin.server.d.ts.map +1 -1
  299. package/dist/plugin/plugin.server.js +7 -4
  300. package/dist/plugin/preserver/plugin.d.ts +2 -2
  301. package/dist/plugin/preserver/plugin.d.ts.map +1 -1
  302. package/dist/plugin/preserver/plugin.js +33 -29
  303. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts +11 -0
  304. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts.map +1 -0
  305. package/dist/plugin/react-client/cleanupWorkerServerAction.js +18 -0
  306. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts +9 -9
  307. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +1 -1
  308. package/dist/plugin/react-client/configureWorkerRequestHandler.js +25 -14
  309. package/dist/plugin/react-client/createMessageHandlers.d.ts +1 -1
  310. package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
  311. package/dist/plugin/react-client/createMessageHandlers.js +15 -3
  312. package/dist/plugin/react-client/createWorkerStream.d.ts +12 -10
  313. package/dist/plugin/react-client/createWorkerStream.d.ts.map +1 -1
  314. package/dist/plugin/react-client/createWorkerStream.js +27 -29
  315. package/dist/plugin/react-client/handleWorkerRscStream.d.ts +13 -8
  316. package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +1 -1
  317. package/dist/plugin/react-client/handleWorkerRscStream.js +59 -24
  318. package/dist/plugin/react-client/handleWorkerServerAction.d.ts +2 -1
  319. package/dist/plugin/react-client/handleWorkerServerAction.d.ts.map +1 -1
  320. package/dist/plugin/react-client/handleWorkerServerAction.js +43 -28
  321. package/dist/plugin/react-client/index.d.ts +4 -1
  322. package/dist/plugin/react-client/index.d.ts.map +1 -1
  323. package/dist/plugin/react-client/index.js +10 -1
  324. package/dist/plugin/react-client/plugin.d.ts +5 -3
  325. package/dist/plugin/react-client/plugin.d.ts.map +1 -1
  326. package/dist/plugin/react-client/plugin.js +9 -11
  327. package/dist/plugin/react-client/restartWorker.d.ts +5 -4
  328. package/dist/plugin/react-client/restartWorker.d.ts.map +1 -1
  329. package/dist/plugin/react-client/restartWorker.js +12 -10
  330. package/dist/plugin/react-server/configureReactServer.d.ts +5 -4
  331. package/dist/plugin/react-server/configureReactServer.d.ts.map +1 -1
  332. package/dist/plugin/react-server/configureReactServer.js +98 -43
  333. package/dist/plugin/react-server/handleServerAction.d.ts +3 -2
  334. package/dist/plugin/react-server/handleServerAction.d.ts.map +1 -1
  335. package/dist/plugin/react-server/handleServerAction.js +14 -20
  336. package/dist/plugin/react-server/plugin.d.ts +3 -4
  337. package/dist/plugin/react-server/plugin.d.ts.map +1 -1
  338. package/dist/plugin/react-server/plugin.js +14 -17
  339. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts +8 -6
  340. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts.map +1 -1
  341. package/dist/plugin/react-static/collectHtmlWorkerContent.js +4 -4
  342. package/dist/plugin/react-static/collectRscContent.d.ts +8 -6
  343. package/dist/plugin/react-static/collectRscContent.d.ts.map +1 -1
  344. package/dist/plugin/react-static/collectRscContent.js +4 -4
  345. package/dist/plugin/react-static/configurePreviewServer.d.ts +6 -4
  346. package/dist/plugin/react-static/configurePreviewServer.d.ts.map +1 -1
  347. package/dist/plugin/react-static/configurePreviewServer.js +38 -31
  348. package/dist/plugin/react-static/createBuildLoader.d.ts +5 -5
  349. package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -1
  350. package/dist/plugin/react-static/createBuildLoader.js +122 -30
  351. package/dist/plugin/react-static/fileWriter.js +1 -1
  352. package/dist/plugin/react-static/plugin.d.ts +3 -4
  353. package/dist/plugin/react-static/plugin.d.ts.map +1 -1
  354. package/dist/plugin/react-static/plugin.js +62 -47
  355. package/dist/plugin/react-static/renderPage.d.ts +4 -2
  356. package/dist/plugin/react-static/renderPage.d.ts.map +1 -1
  357. package/dist/plugin/react-static/renderPage.js +33 -17
  358. package/dist/plugin/react-static/renderPages.d.ts +4 -2
  359. package/dist/plugin/react-static/renderPages.d.ts.map +1 -1
  360. package/dist/plugin/react-static/renderPages.js +7 -6
  361. package/dist/plugin/react-static/renderStreams.d.ts +5 -22
  362. package/dist/plugin/react-static/renderStreams.d.ts.map +1 -1
  363. package/dist/plugin/react-static/renderStreams.js +6 -6
  364. package/dist/plugin/react-static/rscToHtmlStream.d.ts.map +1 -1
  365. package/dist/plugin/react-static/rscToHtmlStream.js +1 -1
  366. package/dist/plugin/react-static/temporaryReferences.js +1 -1
  367. package/dist/plugin/react-static/types.d.ts +0 -1
  368. package/dist/plugin/react-static/types.d.ts.map +1 -1
  369. package/dist/plugin/root.js +1 -1
  370. package/dist/plugin/transformer/plugin.js +1 -1
  371. package/dist/plugin/transformer/plugin.server.d.ts +5 -3
  372. package/dist/plugin/transformer/plugin.server.d.ts.map +1 -1
  373. package/dist/plugin/transformer/plugin.server.js +43 -44
  374. package/dist/plugin/types/css-tracking.d.ts +2 -2
  375. package/dist/plugin/types/css-tracking.d.ts.map +1 -1
  376. package/dist/plugin/types.d.ts +452 -192
  377. package/dist/plugin/types.d.ts.map +1 -1
  378. package/dist/plugin/types.js +2 -1
  379. package/dist/plugin/utils/callServer.js +1 -1
  380. package/dist/plugin/utils/createCallServer.d.ts +1 -1
  381. package/dist/plugin/utils/createCallServer.d.ts.map +1 -1
  382. package/dist/plugin/utils/createCallServer.js +1 -1
  383. package/dist/plugin/utils/createReactFetcher.d.ts +2 -3
  384. package/dist/plugin/utils/createReactFetcher.d.ts.map +1 -1
  385. package/dist/plugin/utils/createReactFetcher.js +1 -1
  386. package/dist/plugin/utils/env.js +1 -1
  387. package/dist/plugin/utils/envUrls.node.js +1 -1
  388. package/dist/plugin/utils/index.d.ts +1 -0
  389. package/dist/plugin/utils/index.d.ts.map +1 -1
  390. package/dist/plugin/utils/index.js +12 -5
  391. package/dist/plugin/utils/routeToURL.d.ts +12 -0
  392. package/dist/plugin/utils/routeToURL.d.ts.map +1 -0
  393. package/dist/plugin/utils/routeToURL.js +26 -0
  394. package/dist/plugin/utils/urls.d.ts.map +1 -1
  395. package/dist/plugin/utils/urls.js +5 -3
  396. package/dist/plugin/vendor/index.js +7 -1
  397. package/dist/plugin/vendor/vendor.client.js +1 -1
  398. package/dist/plugin/vendor/vendor.js +1 -1
  399. package/dist/plugin/vendor/vendor.server.js +1 -1
  400. package/dist/plugin/worker/createWorker.d.ts +31 -17
  401. package/dist/plugin/worker/createWorker.d.ts.map +1 -1
  402. package/dist/plugin/worker/createWorker.js +18 -12
  403. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts +2 -2
  404. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts.map +1 -1
  405. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js +5 -2
  406. package/dist/plugin/worker/html/html-worker.development.js +3 -3
  407. package/dist/plugin/worker/html/html-worker.production.js +1 -1
  408. package/dist/plugin/worker/html/index.d.ts +1 -1
  409. package/dist/plugin/worker/html/index.d.ts.map +1 -1
  410. package/dist/plugin/worker/html/index.js +1 -1
  411. package/dist/plugin/worker/html/messageHandler.d.ts +1 -1
  412. package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
  413. package/dist/plugin/worker/html/messageHandler.js +9 -11
  414. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts +3 -0
  415. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts.map +1 -0
  416. package/dist/plugin/worker/html/sendHtmlWorkerMessage.js +2 -0
  417. package/dist/plugin/worker/html/types.d.ts +20 -2
  418. package/dist/plugin/worker/html/types.d.ts.map +1 -1
  419. package/dist/plugin/worker/index.d.ts +3 -0
  420. package/dist/plugin/worker/index.d.ts.map +1 -0
  421. package/dist/plugin/worker/index.js +7 -0
  422. package/dist/plugin/worker/registerLoaders.js +2 -2
  423. package/dist/plugin/worker/rsc/handleRender.d.ts +4 -3
  424. package/dist/plugin/worker/rsc/handleRender.d.ts.map +1 -1
  425. package/dist/plugin/worker/rsc/handleRender.js +54 -32
  426. package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -1
  427. package/dist/plugin/worker/rsc/handlers.js +19 -15
  428. package/dist/plugin/worker/rsc/index.d.ts +1 -1
  429. package/dist/plugin/worker/rsc/index.d.ts.map +1 -1
  430. package/dist/plugin/worker/rsc/index.js +1 -1
  431. package/dist/plugin/worker/rsc/messageHandler.d.ts +1 -1
  432. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  433. package/dist/plugin/worker/rsc/messageHandler.js +16 -4
  434. package/dist/plugin/worker/rsc/rsc-worker.development.js +77 -11
  435. package/dist/plugin/worker/rsc/rsc-worker.production.js +1 -1
  436. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts +3 -0
  437. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts.map +1 -0
  438. package/dist/plugin/worker/rsc/sendRscWorkerMessage.js +11 -0
  439. package/dist/plugin/worker/rsc/state.js +1 -1
  440. package/dist/plugin/worker/rsc/types.d.ts +95 -0
  441. package/dist/plugin/worker/rsc/types.d.ts.map +1 -0
  442. package/dist/plugin/worker/rsc/types.js +1 -0
  443. package/dist/plugin/worker/rsc/userOptions.d.ts +1 -1
  444. package/dist/plugin/worker/rsc/userOptions.d.ts.map +1 -1
  445. package/dist/plugin/worker/rsc/userOptions.js +3 -4
  446. package/dist/plugin/worker/sendMessage.d.ts +3 -4
  447. package/dist/plugin/worker/sendMessage.d.ts.map +1 -1
  448. package/dist/plugin/worker/sendMessage.js +15 -5
  449. package/dist/plugin/worker/types.d.ts +109 -260
  450. package/dist/plugin/worker/types.d.ts.map +1 -1
  451. package/dist/server.js +1 -1
  452. package/dist/tsconfig.tsbuildinfo +1 -1
  453. package/package.json +58 -25
  454. package/plugin/components/{css-collector-elements.tsx → css.tsx} +3 -3
  455. package/plugin/components/html.tsx +4 -4
  456. package/plugin/components/index.ts +3 -3
  457. package/plugin/components/root.tsx +20 -0
  458. package/plugin/config/autoDiscover/resolveAutoDiscover.ts +173 -134
  459. package/plugin/config/autoDiscover/resolveBuildPages.ts +120 -7
  460. package/plugin/config/createModuleID.ts +60 -39
  461. package/plugin/config/defaults.tsx +184 -95
  462. package/plugin/config/extMap.ts +51 -56
  463. package/plugin/config/flightBindings.ts +221 -0
  464. package/plugin/config/getCondition.ts +6 -0
  465. package/plugin/config/index.ts +17 -4
  466. package/plugin/config/interpolatePattern.ts +19 -0
  467. package/plugin/config/parsePattern.ts +81 -0
  468. package/plugin/config/resolveAllowedDirectives.ts +59 -0
  469. package/plugin/config/resolveDirectiveMatcher.ts +57 -0
  470. package/plugin/config/resolveEnv.ts +5 -10
  471. package/plugin/config/resolveOptions.ts +415 -299
  472. package/plugin/config/resolvePatternWithValues.ts +70 -0
  473. package/plugin/config/resolveRegExp.ts +89 -0
  474. package/plugin/config/resolveUrlOption.ts +92 -20
  475. package/plugin/config/resolveUserConfig.ts +417 -351
  476. package/plugin/env/plugin.ts +71 -7
  477. package/plugin/error/directiveError.ts +29 -0
  478. package/plugin/error/enhanceError.ts +41 -0
  479. package/plugin/error/index.ts +3 -0
  480. package/plugin/error/logError.ts +45 -0
  481. package/plugin/error/serializeError.ts +34 -0
  482. package/plugin/error/toError.ts +75 -45
  483. package/plugin/file-preserver/plugin.ts +3 -3
  484. package/plugin/getNodeEnv.ts +24 -0
  485. package/plugin/helpers/cleanObject.ts +2 -1
  486. package/plugin/helpers/collectViteModuleGraphCss.ts +138 -118
  487. package/plugin/helpers/createCssProps.tsx +41 -20
  488. package/plugin/helpers/createEventHandler.ts +1 -1
  489. package/plugin/helpers/createHandler.ts +40 -12
  490. package/plugin/helpers/createRscStream.tsx +97 -35
  491. package/plugin/helpers/formatMetrics.ts +2 -37
  492. package/plugin/helpers/getBundleManifest.ts +10 -1
  493. package/plugin/helpers/getRouteFiles.ts +112 -8
  494. package/plugin/helpers/handleServerAction.ts +10 -6
  495. package/plugin/helpers/hydrateUserOptions.ts +23 -0
  496. package/plugin/helpers/index.ts +4 -0
  497. package/plugin/helpers/inputNormalizer.ts +44 -24
  498. package/plugin/helpers/metrics.ts +4 -64
  499. package/plugin/helpers/moduleResolver.ts +74 -19
  500. package/plugin/helpers/requestInfo.ts +72 -52
  501. package/plugin/helpers/requestToRoute.ts +38 -12
  502. package/plugin/helpers/resolveComponent.ts +173 -0
  503. package/plugin/helpers/resolveComponents.ts +185 -0
  504. package/plugin/helpers/resolvePage.ts +35 -29
  505. package/plugin/helpers/resolvePageAndProps.ts +82 -61
  506. package/plugin/helpers/resolveProps.ts +100 -37
  507. package/plugin/helpers/resolveUserComponents.ts +190 -0
  508. package/plugin/helpers/serializeUserOptions.ts +190 -69
  509. package/plugin/helpers/stashReturnValue.ts +7 -4
  510. package/plugin/helpers/tryManifest.ts +1 -1
  511. package/plugin/loader/createDefaultLoader.ts +119 -119
  512. package/plugin/loader/createTransformer.ts +118 -0
  513. package/plugin/loader/css-loader.ts +206 -0
  514. package/plugin/loader/directives/addLocalExportedNames.ts +78 -0
  515. package/plugin/loader/directives/analyzeDirectives.ts +298 -0
  516. package/plugin/loader/directives/analyzeModule.ts +39 -0
  517. package/plugin/loader/directives/collectExports.ts +181 -0
  518. package/plugin/loader/directives/collectExportsFromModule.ts +25 -0
  519. package/plugin/loader/directives/findDirectiveMatches.ts +58 -0
  520. package/plugin/loader/directives/getExportedName.ts +73 -0
  521. package/plugin/loader/directives/getExports.ts +27 -0
  522. package/plugin/loader/directives/getFunctionBody.ts +32 -0
  523. package/plugin/loader/directives/getFunctionName.ts +70 -0
  524. package/plugin/loader/directives/getQualifiedName.ts +76 -0
  525. package/plugin/loader/directives/index.ts +13 -0
  526. package/plugin/loader/directives/processFunctionNode.ts +97 -0
  527. package/plugin/loader/directives/typeGuards.ts +160 -0
  528. package/plugin/loader/directives/types.ts +174 -0
  529. package/plugin/loader/directives/utils.ts +35 -0
  530. package/plugin/loader/{env-loader.development.ts → env-loader.ts} +8 -22
  531. package/plugin/loader/index.ts +8 -6
  532. package/plugin/loader/parse.ts +42 -12
  533. package/plugin/loader/react-loader.ts +255 -4
  534. package/plugin/loader/removeDirectives.ts +14 -0
  535. package/plugin/loader/removeRanges.ts +21 -0
  536. package/plugin/loader/sourceMap.ts +174 -84
  537. package/plugin/loader/transformClientModule.ts +64 -0
  538. package/plugin/loader/transformModule.ts +54 -0
  539. package/plugin/loader/transformModuleIfNeeded.ts +40 -40
  540. package/plugin/loader/transformServerModule.ts +136 -0
  541. package/plugin/loader/transformWithAcornLoose.ts +27 -0
  542. package/plugin/loader/types.ts +65 -13
  543. package/plugin/metrics/collectStreamMetrics.ts +38 -0
  544. package/plugin/metrics/createRenderMetrics.ts +17 -0
  545. package/plugin/metrics/createStreamMetrics.ts +14 -0
  546. package/plugin/metrics/formatMetrics.ts +7 -3
  547. package/plugin/metrics/index.ts +3 -1
  548. package/plugin/metrics/types.ts +24 -0
  549. package/plugin/plugin.client.ts +39 -15
  550. package/plugin/plugin.server.ts +39 -18
  551. package/plugin/preserver/plugin.ts +42 -42
  552. package/plugin/react-client/cleanupWorkerServerAction.ts +33 -0
  553. package/plugin/react-client/configureWorkerRequestHandler.ts +212 -201
  554. package/plugin/react-client/createMessageHandlers.ts +17 -3
  555. package/plugin/react-client/createWorkerStream.ts +55 -51
  556. package/plugin/react-client/handleWorkerRscStream.ts +141 -61
  557. package/plugin/react-client/handleWorkerServerAction.ts +59 -37
  558. package/plugin/react-client/index.ts +4 -1
  559. package/plugin/react-client/plugin.ts +17 -18
  560. package/plugin/react-client/restartWorker.ts +75 -70
  561. package/plugin/react-server/configureReactServer.ts +200 -142
  562. package/plugin/react-server/handleServerAction.ts +156 -160
  563. package/plugin/react-server/plugin.ts +18 -25
  564. package/plugin/react-static/collectHtmlWorkerContent.ts +109 -102
  565. package/plugin/react-static/collectRscContent.ts +55 -51
  566. package/plugin/react-static/configurePreviewServer.ts +110 -100
  567. package/plugin/react-static/createBuildLoader.ts +157 -48
  568. package/plugin/react-static/plugin.ts +368 -357
  569. package/plugin/react-static/renderPage.ts +43 -24
  570. package/plugin/react-static/renderPages.ts +21 -14
  571. package/plugin/react-static/renderStreams.ts +13 -15
  572. package/plugin/react-static/rscToHtmlStream.ts +4 -6
  573. package/plugin/react-static/types.ts +0 -3
  574. package/plugin/transformer/README.md +82 -8
  575. package/plugin/transformer/plugin.server.ts +55 -82
  576. package/plugin/types/css-tracking.ts +1 -1
  577. package/plugin/types/global.d.ts +2 -2
  578. package/plugin/types/react-server-dom-esm.d.ts +12 -13
  579. package/plugin/types.ts +685 -309
  580. package/plugin/utils/createCallServer.ts +5 -5
  581. package/plugin/utils/createReactFetcher.ts +4 -6
  582. package/plugin/utils/index.ts +2 -1
  583. package/plugin/utils/routeToURL.ts +34 -0
  584. package/plugin/utils/urls.ts +9 -6
  585. package/plugin/worker/createWorker.ts +67 -34
  586. package/plugin/worker/html/README.md +10 -0
  587. package/plugin/worker/html/createHtmlWorkerRenderState.tsx +7 -4
  588. package/plugin/worker/html/html-worker.development.tsx +4 -3
  589. package/plugin/worker/html/index.ts +3 -1
  590. package/plugin/worker/html/messageHandler.tsx +10 -16
  591. package/plugin/worker/html/sendHtmlWorkerMessage.ts +8 -0
  592. package/plugin/worker/html/types.ts +67 -1
  593. package/plugin/worker/index.ts +2 -0
  594. package/plugin/worker/registerLoaders.ts +3 -3
  595. package/plugin/worker/rsc/README.md +203 -1
  596. package/plugin/worker/rsc/handleRender.ts +76 -39
  597. package/plugin/worker/rsc/handlers.ts +30 -22
  598. package/plugin/worker/rsc/index.ts +2 -0
  599. package/plugin/worker/rsc/messageHandler.tsx +17 -10
  600. package/plugin/worker/rsc/rsc-worker.development.ts +104 -17
  601. package/plugin/worker/rsc/sendRscWorkerMessage.ts +7 -0
  602. package/plugin/worker/rsc/state.ts +1 -1
  603. package/plugin/worker/rsc/types.ts +185 -0
  604. package/plugin/worker/rsc/userOptions.ts +2 -3
  605. package/plugin/worker/sendMessage.ts +23 -14
  606. package/plugin/worker/types.ts +131 -386
  607. package/scripts/check-react-version.mjs +3 -3
  608. package/scripts/fix-unused-imports.mjs +77 -0
  609. package/tsconfig.json +1 -1
  610. package/dist/_virtual/dynamic-import-helper.js.map +0 -1
  611. package/dist/client.js.map +0 -1
  612. package/dist/index.js.map +0 -1
  613. package/dist/plugin/components/css-collector-elements.d.ts.map +0 -1
  614. package/dist/plugin/components/css-collector-elements.js +0 -33
  615. package/dist/plugin/components/css-collector-elements.js.map +0 -1
  616. package/dist/plugin/components/css-collector.d.ts +0 -7
  617. package/dist/plugin/components/css-collector.d.ts.map +0 -1
  618. package/dist/plugin/components/css-collector.js +0 -18
  619. package/dist/plugin/components/css-collector.js.map +0 -1
  620. package/dist/plugin/components/html.js.map +0 -1
  621. package/dist/plugin/components.js +0 -9
  622. package/dist/plugin/components.js.map +0 -1
  623. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js.map +0 -1
  624. package/dist/plugin/config/autoDiscover/customWorkerFiles.js.map +0 -1
  625. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js.map +0 -1
  626. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js.map +0 -1
  627. package/dist/plugin/config/autoDiscover/resolveBuildPages.js.map +0 -1
  628. package/dist/plugin/config/defaults.js.map +0 -1
  629. package/dist/plugin/config/extMap.js.map +0 -1
  630. package/dist/plugin/config/getCondition.js.map +0 -1
  631. package/dist/plugin/config/getPaths.js.map +0 -1
  632. package/dist/plugin/config/mimeTypes.js.map +0 -1
  633. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts +0 -5
  634. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts.map +0 -1
  635. package/dist/plugin/config/resolveAutoDiscoverMatcher.js +0 -25
  636. package/dist/plugin/config/resolveAutoDiscoverMatcher.js.map +0 -1
  637. package/dist/plugin/config/resolveEnv.js.map +0 -1
  638. package/dist/plugin/config/resolveOptions.js.map +0 -1
  639. package/dist/plugin/config/resolvePages.js.map +0 -1
  640. package/dist/plugin/config/resolveUrlOption.js.map +0 -1
  641. package/dist/plugin/config/resolveUserConfig.js.map +0 -1
  642. package/dist/plugin/config.js +0 -17
  643. package/dist/plugin/config.js.map +0 -1
  644. package/dist/plugin/env.js +0 -79
  645. package/dist/plugin/env.js.map +0 -1
  646. package/dist/plugin/error/toError.js.map +0 -1
  647. package/dist/plugin/file-preserver.js +0 -96
  648. package/dist/plugin/file-preserver.js.map +0 -1
  649. package/dist/plugin/helpers/cleanObject.js.map +0 -1
  650. package/dist/plugin/helpers/collectManifestCss.js.map +0 -1
  651. package/dist/plugin/helpers/collectViteModuleGraphCss.js.map +0 -1
  652. package/dist/plugin/helpers/createCssProps.js.map +0 -1
  653. package/dist/plugin/helpers/createEventHandler.js.map +0 -1
  654. package/dist/plugin/helpers/createHandler.js.map +0 -1
  655. package/dist/plugin/helpers/createRscStream.js.map +0 -1
  656. package/dist/plugin/helpers/formatMetrics.js.map +0 -1
  657. package/dist/plugin/helpers/getBundleManifest.js.map +0 -1
  658. package/dist/plugin/helpers/getRouteFiles.js.map +0 -1
  659. package/dist/plugin/helpers/handleServerAction.js.map +0 -1
  660. package/dist/plugin/helpers/inputNormalizer.js.map +0 -1
  661. package/dist/plugin/helpers/metrics.js.map +0 -1
  662. package/dist/plugin/helpers/moduleRefs.js.map +0 -1
  663. package/dist/plugin/helpers/requestInfo.js.map +0 -1
  664. package/dist/plugin/helpers/requestToRoute.js.map +0 -1
  665. package/dist/plugin/helpers/resolvePage.js.map +0 -1
  666. package/dist/plugin/helpers/resolvePageAndProps.js.map +0 -1
  667. package/dist/plugin/helpers/resolveProps.js.map +0 -1
  668. package/dist/plugin/helpers/serializeUserOptions.js.map +0 -1
  669. package/dist/plugin/helpers/sourceMap.d.ts +0 -8
  670. package/dist/plugin/helpers/sourceMap.d.ts.map +0 -1
  671. package/dist/plugin/helpers/sourceMap.js +0 -136
  672. package/dist/plugin/helpers/stashReturnValue.js.map +0 -1
  673. package/dist/plugin/helpers/tryManifest.js.map +0 -1
  674. package/dist/plugin/helpers.js +0 -27
  675. package/dist/plugin/helpers.js.map +0 -1
  676. package/dist/plugin/loader/css-loader.development.d.ts.map +0 -1
  677. package/dist/plugin/loader/css-loader.development.js +0 -76
  678. package/dist/plugin/loader/css-loader.development.js.map +0 -1
  679. package/dist/plugin/loader/css-loader.production.d.ts +0 -31
  680. package/dist/plugin/loader/css-loader.production.d.ts.map +0 -1
  681. package/dist/plugin/loader/css-loader.production.js +0 -45
  682. package/dist/plugin/loader/css-loader.production.js.map +0 -1
  683. package/dist/plugin/loader/env-loader.development.d.ts +0 -13
  684. package/dist/plugin/loader/env-loader.development.d.ts.map +0 -1
  685. package/dist/plugin/loader/env-loader.development.js +0 -68
  686. package/dist/plugin/loader/handleExports.d.ts +0 -40
  687. package/dist/plugin/loader/handleExports.d.ts.map +0 -1
  688. package/dist/plugin/loader/handleExports.js +0 -209
  689. package/dist/plugin/loader/handleExports.js.map +0 -1
  690. package/dist/plugin/loader/parse.js.map +0 -1
  691. package/dist/plugin/loader/react-loader.client.d.ts +0 -2
  692. package/dist/plugin/loader/react-loader.client.d.ts.map +0 -1
  693. package/dist/plugin/loader/react-loader.client.js +0 -2
  694. package/dist/plugin/loader/react-loader.js.map +0 -1
  695. package/dist/plugin/loader/react-loader.server.d.ts +0 -21
  696. package/dist/plugin/loader/react-loader.server.d.ts.map +0 -1
  697. package/dist/plugin/loader/react-loader.server.js +0 -131
  698. package/dist/plugin/loader/transformModuleIfNeeded.js.map +0 -1
  699. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts +0 -48
  700. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts.map +0 -1
  701. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js +0 -431
  702. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js.map +0 -1
  703. package/dist/plugin/metrics/formatMetrics.js.map +0 -1
  704. package/dist/plugin/metrics.js +0 -7
  705. package/dist/plugin/metrics.js.map +0 -1
  706. package/dist/plugin/plugin.client.js.map +0 -1
  707. package/dist/plugin/plugin.server.js.map +0 -1
  708. package/dist/plugin/preserver/plugin.js.map +0 -1
  709. package/dist/plugin/react-client/configureWorkerRequestHandler.js.map +0 -1
  710. package/dist/plugin/react-client/createMessageHandlers.js.map +0 -1
  711. package/dist/plugin/react-client/createWorkerStream.js.map +0 -1
  712. package/dist/plugin/react-client/handleWorkerRscStream.js.map +0 -1
  713. package/dist/plugin/react-client/handleWorkerServerAction.js.map +0 -1
  714. package/dist/plugin/react-client/plugin.js.map +0 -1
  715. package/dist/plugin/react-client/restartWorker.js.map +0 -1
  716. package/dist/plugin/react-server/configureReactServer.js.map +0 -1
  717. package/dist/plugin/react-server/handleServerAction.js.map +0 -1
  718. package/dist/plugin/react-server/plugin.js.map +0 -1
  719. package/dist/plugin/react-static/collectHtmlWorkerContent.js.map +0 -1
  720. package/dist/plugin/react-static/collectRscContent.js.map +0 -1
  721. package/dist/plugin/react-static/configurePreviewServer.js.map +0 -1
  722. package/dist/plugin/react-static/createBuildLoader.js.map +0 -1
  723. package/dist/plugin/react-static/fileWriter.js.map +0 -1
  724. package/dist/plugin/react-static/plugin.js.map +0 -1
  725. package/dist/plugin/react-static/renderPage.js.map +0 -1
  726. package/dist/plugin/react-static/renderPages.js.map +0 -1
  727. package/dist/plugin/react-static/renderStreams.js.map +0 -1
  728. package/dist/plugin/react-static/rscToHtmlStream.js.map +0 -1
  729. package/dist/plugin/react-static/temporaryReferences.js.map +0 -1
  730. package/dist/plugin/root.js.map +0 -1
  731. package/dist/plugin/source-map/createMappingsSerializer.d.ts +0 -2
  732. package/dist/plugin/source-map/createMappingsSerializer.d.ts.map +0 -1
  733. package/dist/plugin/source-map/createMappingsSerializer.js +0 -129
  734. package/dist/plugin/source-map/createMappingsSerializer.js.map +0 -1
  735. package/dist/plugin/source-map/readMappings.d.ts +0 -2
  736. package/dist/plugin/source-map/readMappings.d.ts.map +0 -1
  737. package/dist/plugin/source-map/readMappings.js +0 -200
  738. package/dist/plugin/transformer/plugin.client.d.ts +0 -2
  739. package/dist/plugin/transformer/plugin.client.d.ts.map +0 -1
  740. package/dist/plugin/transformer/plugin.js.map +0 -1
  741. package/dist/plugin/transformer/plugin.server.js.map +0 -1
  742. package/dist/plugin/utils/callServer.js.map +0 -1
  743. package/dist/plugin/utils/createCallServer.js.map +0 -1
  744. package/dist/plugin/utils/createReactFetcher.js.map +0 -1
  745. package/dist/plugin/utils/env.js.map +0 -1
  746. package/dist/plugin/utils/envUrls.node.js.map +0 -1
  747. package/dist/plugin/utils/urls.js.map +0 -1
  748. package/dist/plugin/utils.js +0 -11
  749. package/dist/plugin/utils.js.map +0 -1
  750. package/dist/plugin/vendor/vendor.client.js.map +0 -1
  751. package/dist/plugin/vendor/vendor.js.map +0 -1
  752. package/dist/plugin/vendor/vendor.server.js.map +0 -1
  753. package/dist/plugin/vendor.js +0 -7
  754. package/dist/plugin/vendor.js.map +0 -1
  755. package/dist/plugin/worker/createWorker.js.map +0 -1
  756. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js.map +0 -1
  757. package/dist/plugin/worker/html/html-worker.development.js.map +0 -1
  758. package/dist/plugin/worker/html/html-worker.production.js.map +0 -1
  759. package/dist/plugin/worker/html/index.js.map +0 -1
  760. package/dist/plugin/worker/html/messageHandler.js.map +0 -1
  761. package/dist/plugin/worker/rsc/handleRender.js.map +0 -1
  762. package/dist/plugin/worker/rsc/handlers.js.map +0 -1
  763. package/dist/plugin/worker/rsc/index.js.map +0 -1
  764. package/dist/plugin/worker/rsc/messageHandler.js.map +0 -1
  765. package/dist/plugin/worker/rsc/rsc-worker.development.js.map +0 -1
  766. package/dist/plugin/worker/rsc/rsc-worker.production.js.map +0 -1
  767. package/dist/plugin/worker/rsc/state.js.map +0 -1
  768. package/dist/plugin/worker/rsc/userOptions.js.map +0 -1
  769. package/dist/plugin/worker/sendMessage.js.map +0 -1
  770. package/dist/server.js.map +0 -1
  771. package/plugin/components/css-collector.tsx +0 -20
  772. package/plugin/config/resolveAutoDiscoverMatcher.ts +0 -23
  773. package/plugin/helpers/sourceMap.ts +0 -182
  774. package/plugin/loader/css-loader.development.ts +0 -135
  775. package/plugin/loader/css-loader.production.ts +0 -84
  776. package/plugin/loader/handleExports.ts +0 -309
  777. package/plugin/loader/react-loader.client.ts +0 -1
  778. package/plugin/loader/react-loader.server.ts +0 -185
  779. package/plugin/loader/transformModuleWithPreservedFunctions.ts +0 -596
  780. package/plugin/source-map/createMappingsSerializer.ts +0 -181
  781. package/plugin/source-map/readMappings.ts +0 -194
  782. package/plugin/transformer/plugin.client.ts +0 -0
  783. /package/dist/plugin/{transformer/plugin.client.js → loader/directives/types.js} +0 -0
@@ -1,96 +0,0 @@
1
- /**
2
- * vite-plugin-react-server
3
- * Copyright (c) Nico Brinkkemper
4
- * MIT License
5
- */
6
- import { transformWithEsbuild } from 'vite';
7
- import { writeFile } from 'node:fs/promises';
8
- import { join, sep } from 'node:path';
9
-
10
- function filePreserverPlugin(fileName) {
11
- let sources = [];
12
- let pluginName = typeof fileName === "string" ? fileName : fileName.slice(3).join("-");
13
- let outDir = "dist";
14
- let root = process.cwd();
15
- let esbuildOptions = {
16
- jsxDev: false,
17
- supported: { "import-meta": true },
18
- target: "esnext",
19
- format: "esm"
20
- };
21
- let shouldPreserve = Array.isArray(fileName) ? (id) => fileName.some((f) => id.includes(f)) : (id) => id.includes(fileName);
22
- return [
23
- {
24
- name: `vite:preserver-${pluginName}:post`,
25
- enforce: "post",
26
- apply: "build",
27
- async transform(_code, id) {
28
- if (!shouldPreserve(id)) return;
29
- const normalId = id.replace(root + sep, "");
30
- const found = sources.findIndex((s) => s.id === normalId);
31
- if (found === -1) {
32
- throw new Error(`Source not registered by pre hook for ${id}`);
33
- }
34
- return {
35
- code: sources[found].transformedCode,
36
- map: sources[found].map,
37
- id: sources[found].id
38
- };
39
- },
40
- async writeBundle(_options, bundle) {
41
- if (sources.length === 0) return;
42
- const entries = Object.entries(bundle);
43
- const mapEntries = entries.filter(
44
- (entry) => {
45
- return entry[1].fileName.endsWith(".map") && shouldPreserve(entry[1].fileName);
46
- }
47
- );
48
- if (mapEntries.length === 0) {
49
- return;
50
- }
51
- for (const source of sources) {
52
- for (const [fileName2, outputAsset] of mapEntries) {
53
- const ourMap = source.map;
54
- const path = join(root, outDir, fileName2);
55
- if (outputAsset.source !== ourMap) {
56
- await writeFile(path, ourMap);
57
- }
58
- }
59
- }
60
- }
61
- },
62
- {
63
- name: `vite:preserver-${pluginName}:pre`,
64
- apply: "build",
65
- enforce: "pre",
66
- configResolved(config) {
67
- outDir = config.build.outDir;
68
- root = config.root;
69
- esbuildOptions = config.esbuild || esbuildOptions;
70
- },
71
- async transform(code, id) {
72
- if (!shouldPreserve(id)) return;
73
- const found = sources.find((s) => s.id === id);
74
- if (found) {
75
- throw new Error(`Source already exists for ${id}`);
76
- }
77
- const result = await transformWithEsbuild(code, id, esbuildOptions);
78
- const source = {
79
- id: id.replace(root + sep, ""),
80
- originalCode: code,
81
- transformedCode: result.code,
82
- map: JSON.stringify(result.map)
83
- };
84
- sources.push(source);
85
- return {
86
- id: source.id,
87
- code: source.transformedCode,
88
- map: source.map
89
- };
90
- }
91
- }
92
- ];
93
- }
94
-
95
- export { filePreserverPlugin };
96
- //# sourceMappingURL=file-preserver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-preserver.js","sources":["../../plugin/file-preserver/plugin.ts"],"sourcesContent":["import type { OutputAsset } from \"rollup\";\nimport type { ESBuildOptions, Plugin as VitePlugin } from \"vite\";\nimport { transformWithEsbuild } from \"vite\";\nimport { writeFile } from \"node:fs/promises\";\nimport { join, sep } from \"node:path\";\n/**\n * Bundling with vite may have some side effects, this plugin is a workaround to prevent\n * the side effects from happening to the files we want to preserve. It's used as a plugin\n * to build this plugin, but you can also use it as a standalone plugin for your projects to have\n * the same effect.\n * @example\n * ```tsx\n * import { filePreserverPlugin } from \"vite-plugin-react-server/file-preserver\";\n *\n * export default defineConfig({\n * plugins: [filePreserverPlugin(\"utils/env\")], // don't include the extension\n * });\n * ```\n * The typescript file will not be transformed by vite, only by esbuild, so you can preserve your import.meta.env\n * and use it in your client boundary files.\n */\nexport function filePreserverPlugin(fileName: string | string[]): VitePlugin[] {\n let sources: {\n id: string;\n originalCode: string;\n transformedCode: string;\n map: string;\n }[] = [];\n let pluginName =\n typeof fileName === \"string\" ? fileName : fileName.slice(3).join(\"-\");\n let outDir: string = \"dist\";\n let root: string = process.cwd();\n let esbuildOptions: ESBuildOptions = {\n jsxDev: false,\n supported: { \"import-meta\": true },\n target: \"esnext\",\n format: \"esm\",\n };\n let shouldPreserve = Array.isArray(fileName)\n ? (id: string) => fileName.some((f) => id.includes(f))\n : (id: string) => id.includes(fileName);\n return [\n {\n name: `vite:preserver-${pluginName}:post`,\n enforce: \"post\",\n apply: \"build\",\n async transform(_code: string, id: string) {\n if (!shouldPreserve(id)) return;\n const normalId = id.replace(root + sep, \"\");\n const found = sources.findIndex((s) => s.id === normalId);\n if (found === -1) {\n throw new Error(`Source not registered by pre hook for ${id}`);\n }\n return {\n code: sources[found].transformedCode,\n map: sources[found].map,\n id: sources[found].id,\n };\n },\n async writeBundle(_options, bundle) {\n if (sources.length === 0) return;\n const entries = Object.entries(bundle);\n const mapEntries = entries.filter(\n (entry): entry is [string, OutputAsset] => {\n return (\n entry[1].fileName.endsWith(\".map\") &&\n shouldPreserve(entry[1].fileName)\n );\n }\n );\n if (mapEntries.length === 0) {\n return;\n }\n // even though we're returning the new source map, it might just write ;;;; to the file\n for (const source of sources) {\n for (const [fileName, outputAsset] of mapEntries) {\n const ourMap = source.map;\n const path = join(root, outDir, fileName);\n if (outputAsset.source !== ourMap) {\n await writeFile(path, ourMap);\n }\n }\n }\n },\n },\n {\n name: `vite:preserver-${pluginName}:pre`,\n apply: \"build\",\n enforce: \"pre\",\n configResolved(config) {\n outDir = config.build.outDir;\n root = config.root;\n esbuildOptions = config.esbuild || esbuildOptions;\n },\n async transform(code: string, id: string) {\n if (!shouldPreserve(id)) return;\n const found = sources.find((s) => s.id === id);\n if (found) {\n throw new Error(`Source already exists for ${id}`);\n }\n const result = await transformWithEsbuild(code, id, esbuildOptions);\n const source = {\n id: id.replace(root + sep, \"\"),\n originalCode: code,\n transformedCode: result.code,\n map: JSON.stringify(result.map),\n };\n sources.push(source);\n return {\n id: source.id,\n code: source.transformedCode,\n map: source.map,\n };\n },\n },\n ];\n}\n"],"names":["fileName"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cleanObject.js","sources":["../../../plugin/helpers/cleanObject.ts"],"sourcesContent":["import type { SerializableRecord } from \"../types.js\";\n\n// Helper function to serialize RegExp objects\nfunction serializeRegExp(regex: RegExp): {\n source: string;\n flags: string;\n __isRegExp: boolean;\n} {\n return {\n source: regex.source,\n flags: regex.flags,\n __isRegExp: true,\n };\n}\n\nconst isSerializable = (\n x: unknown\n): x is\n | number\n | bigint\n | boolean\n | string\n | undefined\n | null\n | Uint8Array\n | Uint16Array\n | Uint32Array\n | Int8Array\n | Int16Array\n | Int32Array => {\n return (\n typeof x === \"number\" ||\n typeof x === \"bigint\" ||\n typeof x === \"boolean\" ||\n typeof x === \"string\" ||\n x instanceof Buffer ||\n (Array.isArray(x) &&\n (!x.length ||\n x instanceof Uint8Array ||\n x instanceof Uint16Array ||\n x instanceof Uint32Array ||\n x instanceof Int8Array ||\n x instanceof Int16Array ||\n x instanceof Int32Array))\n );\n};\n\nexport function cleanObject<T>(\n obj: T,\n knownNonSerializableFunctions: Set<string> = new Set(),\n currentPath: string = \"\"\n): SerializableRecord & T {\n if (typeof obj !== \"object\" || obj == null) return obj as Extract<SerializableRecord, T>;\n if (isSerializable(obj)) return obj as Extract<SerializableRecord, T>;\n\n if (Array.isArray(obj)) {\n return obj\n .map((x, i) =>\n cleanObject(x, knownNonSerializableFunctions, `${currentPath}[${i}]`)\n )\n .filter((x) => x !== undefined) as Extract<SerializableRecord, T>;\n }\n if (obj instanceof RegExp)\n return serializeRegExp(obj) as unknown as Extract<SerializableRecord, T>;\n\n const result: Record<string, any> = {};\n for (const [key, value] of Object.entries(obj)) {\n const fullPath = currentPath ? `${currentPath}.${key}` : key;\n const normalizedPath = fullPath.replace(/\\[\\d+\\]/g, \"[]\");\n // Skip if it's a function or known non-serializable property\n if(isSerializable(value)) {\n result[key] = value;\n continue;\n }\n if (\n typeof value === \"function\" ||\n knownNonSerializableFunctions.has(normalizedPath) ||\n knownNonSerializableFunctions.has(key)\n ) {\n continue;\n }\n\n // Handle nested objects\n if (typeof value === \"object\" && value !== null) {\n // Check if the object has any functions\n const hasFunctions = Object.entries(value).some(([k, v]) => {\n const nestedPath = `${normalizedPath}.${k}`;\n return (\n typeof v === \"function\" ||\n knownNonSerializableFunctions.has(nestedPath)\n );\n });\n\n if (hasFunctions) {\n continue;\n }\n\n const cleaned = cleanObject(\n value,\n knownNonSerializableFunctions,\n `${normalizedPath}.${key}`\n );\n if (cleaned !== undefined && Object.keys(cleaned).length > 0) {\n result[key] = cleaned;\n }\n } else {\n result[key] = value;\n }\n }\n return (Object.keys(result).length > 0 ? result : {}) as Extract<\n SerializableRecord,\n T\n >;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"collectManifestCss.js","sources":["../../../plugin/helpers/collectManifestCss.ts"],"sourcesContent":["import type { Manifest } from \"vite\";\n\n/**\n * Collects CSS file paths from a manifest by walking through imports starting from a given file\n */\nexport function collectManifestCss(\n manifest: Manifest,\n startFile: string | string[],\n): Record<string, string> {\n const cssInputs: Record<string, string> = {};\n const visited = new Set<string>();\n \n // Convert startFile to array and ensure we have valid file paths\n const toVisit = Array.isArray(startFile) ? startFile : [startFile];\n\n \n while (toVisit.length > 0) {\n const currentFile = toVisit.pop()!;\n if (visited.has(currentFile)) continue;\n visited.add(currentFile);\n \n const fileInfo = manifest[currentFile];\n if (!fileInfo) {\n continue;\n }\n\n // Add CSS files from the css property\n if (fileInfo.css) {\n for (const cssFile of fileInfo.css) {\n cssInputs[cssFile] = cssFile;\n }\n }\n\n // Add imports to visit\n if (fileInfo.imports) {\n for (const importPath of fileInfo.imports) {\n // Skip if we've already visited this import\n if (visited.has(importPath)) {\n continue;\n }\n \n // Add the import to visit\n toVisit.push(importPath);\n \n // Check if the imported file has CSS\n const importedFile = manifest[importPath];\n if (importedFile?.css) {\n for (const cssFile of importedFile.css) {\n cssInputs[cssFile] = cssFile;\n }\n }\n }\n }\n }\n\n return cssInputs;\n} "],"names":[],"mappings":";;;;;AAKO,SAAS,kBAAA,CACd,UACA,SACwB,EAAA;AACxB,EAAA,MAAM,YAAoC,EAAC;AAC3C,EAAM,MAAA,OAAA,uBAAc,GAAY,EAAA;AAGhC,EAAA,MAAM,UAAU,KAAM,CAAA,OAAA,CAAQ,SAAS,CAAI,GAAA,SAAA,GAAY,CAAC,SAAS,CAAA;AAGjE,EAAO,OAAA,OAAA,CAAQ,SAAS,CAAG,EAAA;AACzB,IAAM,MAAA,WAAA,GAAc,QAAQ,GAAI,EAAA;AAChC,IAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,WAAW,CAAG,EAAA;AAC9B,IAAA,OAAA,CAAQ,IAAI,WAAW,CAAA;AAEvB,IAAM,MAAA,QAAA,GAAW,SAAS,WAAW,CAAA;AACrC,IAAA,IAAI,CAAC,QAAU,EAAA;AACb,MAAA;AAAA;AAIF,IAAA,IAAI,SAAS,GAAK,EAAA;AAChB,MAAW,KAAA,MAAA,OAAA,IAAW,SAAS,GAAK,EAAA;AAClC,QAAA,SAAA,CAAU,OAAO,CAAI,GAAA,OAAA;AAAA;AACvB;AAIF,IAAA,IAAI,SAAS,OAAS,EAAA;AACpB,MAAW,KAAA,MAAA,UAAA,IAAc,SAAS,OAAS,EAAA;AAEzC,QAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAG,EAAA;AAC3B,UAAA;AAAA;AAIF,QAAA,OAAA,CAAQ,KAAK,UAAU,CAAA;AAGvB,QAAM,MAAA,YAAA,GAAe,SAAS,UAAU,CAAA;AACxC,QAAA,IAAI,cAAc,GAAK,EAAA;AACrB,UAAW,KAAA,MAAA,OAAA,IAAW,aAAa,GAAK,EAAA;AACtC,YAAA,SAAA,CAAU,OAAO,CAAI,GAAA,OAAA;AAAA;AACvB;AACF;AACF;AACF;AAGF,EAAO,OAAA,SAAA;AACT;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"collectViteModuleGraphCss.js","sources":["../../../plugin/helpers/collectViteModuleGraphCss.ts"],"sourcesContent":["import type { EnvironmentModuleGraph, ModuleGraph } from \"vite\";\nimport type { CreateHandlerOptions, CssContent, InlineCssOpt, PagePropOpt } from \"../types.js\";\nimport { createCssProps } from \"./createCssProps.js\";\n\ntype CollectViteModuleGraphCssResult =\n | {\n type: \"success\";\n cssFiles: Map<string, CssContent>;\n error?: never;\n metrics: {\n cssFiles: number;\n processing: number;\n };\n }\n | {\n type: \"error\";\n error: Error;\n cssFiles?: never;\n metrics: {\n cssFiles: number;\n processing: number;\n };\n }\n | {\n type: \"skip\";\n cssFiles?: never;\n error?: never;\n metrics?: never;\n };\n\nexport async function collectViteModuleGraphCss<\n T extends PagePropOpt = PagePropOpt,\n InlineCSS extends InlineCssOpt = InlineCssOpt\n>({\n moduleGraph,\n onCss,\n parentUrl,\n handlerOptions,\n}: {\n moduleGraph: ModuleGraph | EnvironmentModuleGraph;\n onCss?: (cssContent: CssContent, parentUrl: string) => void;\n parentUrl?: string;\n handlerOptions: Pick<\n CreateHandlerOptions<T, InlineCSS>,\n | \"pagePath\"\n | \"moduleBaseURL\"\n | \"moduleBasePath\"\n | \"moduleRootPath\"\n | \"projectRoot\"\n | \"css\"\n | \"loader\"\n | \"normalizer\"\n | \"moduleID\"\n | \"publicOrigin\"\n >;\n}): Promise<CollectViteModuleGraphCssResult> {\n const {\n pagePath,\n moduleBaseURL,\n moduleBasePath,\n moduleRootPath,\n projectRoot,\n publicOrigin,\n css,\n loader,\n normalizer,\n moduleID,\n } = handlerOptions;\n if (!pagePath) return { type: \"skip\" };\n\n const cssFiles = new Map<string, CssContent>();\n const pageModule = await moduleGraph.getModuleByUrl(pagePath, true);\n if (!pageModule) {\n return { type: \"skip\" };\n }\n\n const seen = new Set<string>();\n const processing = new Set<string>();\n\n const walkModule = async (mod: any) => {\n if (!mod?.id) {\n // Module has no id\n return;\n }\n\n if (seen.has(mod.id)) {\n // Already processed module\n return;\n }\n\n if (processing.has(mod.id)) {\n // Circular dependency detected for module\n return;\n }\n\n processing.add(mod.id);\n // Processing module\n if (mod.id.endsWith(\".css\")) {\n const string = await loader(mod.id + \"?inline\").then(\n (m) => m?.[\"default\"] ?? \"\"\n );\n if (typeof string !== \"string\") {\n throw new Error(`CSS module ${mod.id}?inline did not return a string`);\n } else if (string === \"\") {\n throw new Error(`CSS module ${mod.id}?inline returned an empty string`);\n }\n const cssContent = createCssProps({\n id: mod?.url,\n code: string,\n userOptions: {\n moduleBaseURL: moduleBaseURL,\n moduleBasePath: moduleBasePath,\n moduleRootPath: moduleRootPath,\n projectRoot: projectRoot,\n css: css,\n normalizer: normalizer,\n moduleID: moduleID,\n publicOrigin: publicOrigin,\n },\n });\n cssFiles.set(mod?.url, cssContent);\n onCss?.(cssContent, parentUrl ?? pagePath);\n }\n\n if (mod.importedModules) {\n // Processing imports for module\n const importedModules = Array.from(mod.importedModules);\n // Found imported modules\n for (const importedMod of importedModules) {\n if (typeof importedMod === \"object\" && importedMod != null) {\n if (\n \"id\" in importedMod &&\n importedMod.id &&\n typeof importedMod.id === \"string\"\n ) {\n await walkModule(importedMod);\n } else {\n throw new Error(`Imported module has no id`);\n }\n } else {\n throw new Error(`Imported module is not an object`);\n }\n }\n }\n\n processing.delete(mod.id);\n seen.add(mod.id);\n };\n\n try {\n await walkModule(pageModule);\n } catch (error) {\n return {\n type: \"error\",\n error: error as Error,\n metrics: {\n cssFiles: cssFiles.size,\n processing: processing.size,\n },\n };\n }\n return {\n type: \"success\",\n cssFiles,\n metrics: {\n cssFiles: cssFiles.size,\n processing: processing.size,\n },\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"createCssProps.js","sources":["../../../plugin/helpers/createCssProps.tsx"],"sourcesContent":["import type { ResolvedUserOptions, CssContent } from \"../types.js\";\nimport type { InlineCssOpt, PagePropOpt } from \"../../server.js\";\nimport { join } from \"node:path\";\nimport { deserializeRegExp } from \"./serializeUserOptions.js\";\n\n/**\n * Creates a CssContent object for a given path and css options\n *\n * Requirements:\n * - path is a string\n * - css is an object with the following properties:\n * - inlineCss: boolean\n * - purgeCss: boolean\n * - inlineThreshold: number\n * - inlinePatterns: RegExp[]\n * - linkPatterns: RegExp[]\n * based on the bundle, we retrieve the css content and check if it should be inlined or linked\n * inlined tags get the as:style and the children are the css content\n * linked tags get the as:link and the href is the path\n *\n * @param path - The path to the css file\n * @param css - The css options\n * @returns A CssContent object\n */\nexport const createCssProps = <\n T extends PagePropOpt = PagePropOpt,\n InlineCSS extends InlineCssOpt = InlineCssOpt\n>({\n id,\n code,\n userOptions,\n}: {\n id: string;\n code: string;\n userOptions: Pick<\n ResolvedUserOptions<T, InlineCSS>,\n | \"css\"\n | \"moduleBaseURL\"\n | \"moduleBasePath\"\n | \"moduleRootPath\"\n | \"projectRoot\"\n | \"normalizer\"\n | \"moduleID\"\n | \"publicOrigin\"\n >;\n}): CssContent<InlineCSS> => {\n const { css, moduleRootPath } = userOptions;\n // If we don't have a bundle entry, create a linked CSS file\n let inline = typeof code === \"string\" && code.length > css.inlineThreshold;\n // Normalize the ID to be relative to src/\n const [, value] = userOptions.normalizer(id);\n const moduleID = userOptions.moduleID(value);\n if (css.inlinePatterns?.length) {\n // Deserialize RegExp patterns if they exist\n const inlinePatterns = css.inlinePatterns;\n if (inlinePatterns.some((pattern) => pattern.test?.(id))) {\n inline = true;\n }\n }\n if (css.linkPatterns?.length) {\n const linkPatterns = css.linkPatterns?.map((pattern) =>\n typeof pattern === \"string\" ? deserializeRegExp(pattern) : pattern\n );\n if (linkPatterns.some((pattern) => pattern.test?.(id))) {\n inline = false;\n }\n }\n if (inline) {\n return {\n type: \"text/css\",\n id: moduleID,\n as: \"style\",\n children: code.trim(),\n ...(process.env[\"NODE_ENV\"] !== \"production\"\n ? {\n \"data-vite-dev-id\": join(moduleRootPath, moduleID),\n }\n : {}),\n } as CssContent<InlineCSS>;\n }\n const processEnv = process.env || {};\n const hasEnv= typeof processEnv.VITE_PUBLIC_ORIGIN === \"string\" &&\n processEnv.VITE_PUBLIC_ORIGIN !== \"\";\n const importMeta = import.meta || {};\n const hasMetaEnv = 'env' in importMeta && typeof importMeta.env.PUBLIC_ORIGIN === \"string\" &&\n importMeta.env.PUBLIC_ORIGIN !== \"\";\n // final public origin check\n if((hasEnv || hasMetaEnv) && userOptions.publicOrigin) {\n // change the public origin to the one from the env\n if(hasEnv && userOptions.publicOrigin !== processEnv.VITE_PUBLIC_ORIGIN) {\n // prefer potentially dynamic process.env\n userOptions.publicOrigin = processEnv.VITE_PUBLIC_ORIGIN;\n } else if(hasMetaEnv && userOptions.publicOrigin !== import.meta.env.PUBLIC_ORIGIN) {\n // static import.meta.env\n userOptions.publicOrigin = import.meta.env.PUBLIC_ORIGIN;\n }\n }\n // Default case\n return {\n id: moduleID,\n as: \"link\",\n rel: \"stylesheet\",\n href:\n userOptions.publicOrigin !== \"\"\n ? new URL(moduleID, userOptions.publicOrigin).href\n : moduleID,\n precedence: \"high\",\n } as CssContent<InlineCSS>;\n};\n"],"names":[],"mappings":";;;;;;;;AAwBO,MAAM,iBAAiB,CAG5B;AAAA,EACA,EAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAc6B,KAAA;AACrB,EAAA,MAAA,EAAE,GAAK,EAAA,cAAA,EAAmB,GAAA,WAAA;AAEhC,EAAA,IAAI,SAAS,OAAO,IAAA,KAAS,QAAY,IAAA,IAAA,CAAK,SAAS,GAAI,CAAA,eAAA;AAE3D,EAAA,MAAM,GAAG,KAAK,CAAI,GAAA,WAAA,CAAY,WAAW,EAAE,CAAA;AACrC,EAAA,MAAA,QAAA,GAAW,WAAY,CAAA,QAAA,CAAS,KAAK,CAAA;AACvC,EAAA,IAAA,GAAA,CAAI,gBAAgB,MAAQ,EAAA;AAE9B,IAAA,MAAM,iBAAiB,GAAI,CAAA,cAAA;AACvB,IAAA,IAAA,cAAA,CAAe,KAAK,CAAC,OAAA,KAAY,QAAQ,IAAO,GAAA,EAAE,CAAC,CAAG,EAAA;AAC/C,MAAA,MAAA,GAAA,IAAA;AAAA;AACX;AAEE,EAAA,IAAA,GAAA,CAAI,cAAc,MAAQ,EAAA;AACtB,IAAA,MAAA,YAAA,GAAe,IAAI,YAAc,EAAA,GAAA;AAAA,MAAI,CAAC,OAC1C,KAAA,OAAO,YAAY,QAAW,GAAA,iBAAA,CAAkB,OAAO,CAAI,GAAA;AAAA,KAC7D;AACI,IAAA,IAAA,YAAA,CAAa,KAAK,CAAC,OAAA,KAAY,QAAQ,IAAO,GAAA,EAAE,CAAC,CAAG,EAAA;AAC7C,MAAA,MAAA,GAAA,KAAA;AAAA;AACX;AAEF,EAAA,IAAI,MAAQ,EAAA;AACH,IAAA,OAAA;AAAA,MACL,IAAM,EAAA,UAAA;AAAA,MACN,EAAI,EAAA,QAAA;AAAA,MACJ,EAAI,EAAA,OAAA;AAAA,MACJ,QAAA,EAAU,KAAK,IAAK,EAAA;AAAA,MACpB,GAAI,OAAA,CAAQ,GAAI,CAAA,UAAU,MAAM,YAC5B,GAAA;AAAA,QACE,kBAAA,EAAoB,IAAK,CAAA,cAAA,EAAgB,QAAQ;AAAA,UAEnD;AAAC,KACP;AAAA;AAEI,EAAA,MAAA,UAAA,GAAa,OAAQ,CAAA,GAAA,IAAO,EAAC;AACnC,EAAA,MAAM,SAAQ,OAAO,UAAA,CAAW,kBAAuB,KAAA,QAAA,IACnD,WAAW,kBAAuB,KAAA,EAAA;AAChC,EAAA,MAAA,UAAA,GAAa,eAAe,EAAC;AAC7B,EAAA,MAAA,UAAA,GAAa,KAAS,IAAA,UAAA,IAAc,OAAO,UAAA,CAAW,IAAI,aAAkB,KAAA,QAAA,IAC9E,UAAW,CAAA,GAAA,CAAI,aAAkB,KAAA,EAAA;AAEjC,EAAA,IAAA,CAAA,MAAA,IAAU,UAAe,KAAA,WAAA,CAAY,YAAc,EAAA;AAErD,IAAA,IAAG,MAAU,IAAA,WAAA,CAAY,YAAiB,KAAA,UAAA,CAAW,kBAAoB,EAAA;AAEvE,MAAA,WAAA,CAAY,eAAe,UAAW,CAAA,kBAAA;AAAA,KAC9B,MAAA,IAAA,UAAA,IAAc,WAAY,CAAA,YAAA,KAAiB,wCAA+B;AAEtE,MAAA,WAAA,CAAA,eAAe,SAAgB;AAAA;AAC7C;AAGK,EAAA,OAAA;AAAA,IACL,EAAI,EAAA,QAAA;AAAA,IACJ,EAAI,EAAA,MAAA;AAAA,IACJ,GAAK,EAAA,YAAA;AAAA,IACL,IAAA,EACA,WAAY,CAAA,YAAA,KAAiB,EACvB,GAAA,IAAI,IAAI,QAAU,EAAA,WAAA,CAAY,YAAY,CAAA,CAAE,IAC5C,GAAA,QAAA;AAAA,IACN,UAAY,EAAA;AAAA,GACd;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"createEventHandler.js","sources":["../../../plugin/helpers/createEventHandler.ts"],"sourcesContent":["import type { PluginEvent } from \"../types.js\";\n\n/**\n * Creates a unified event handler that can be used by both static and server plugins.\n * This handler converts React stream events into plugin events and provides a consistent\n * interface for event handling across the codebase.\n * \n * @param options Options for the event handler\n * @returns A function that handles both React stream events and plugin events\n */\nexport interface EventHandlerOptions {\n onEvent?: (event: PluginEvent) => void | Promise<void>;\n}\n\nexport function createEventHandler(onEvent : EventHandlerOptions['onEvent']) {\n return async function handleEvent(event: PluginEvent) {\n // Call the user's event handler if provided\n if (onEvent) {\n const result = onEvent(event);\n if (!result) {\n return {\n type: \"success\",\n data: undefined,\n };\n }\n if (result instanceof Promise) {\n try {\n const awaited = await result;\n return {\n type: \"success\",\n data: awaited,\n };\n } catch (error) {\n return {\n type: \"error\",\n error: error as Error,\n };\n }\n }\n }\n\n return event;\n };\n} "],"names":[],"mappings":";;;;;AAcO,SAAS,mBAAmB,OAA0C,EAAA;AAC3E,EAAO,OAAA,eAAe,YAAY,KAAoB,EAAA;AAEpD,IAAA,IAAI,OAAS,EAAA;AACX,MAAM,MAAA,MAAA,GAAS,QAAQ,KAAK,CAAA;AAC5B,MAAA,IAAI,CAAC,MAAQ,EAAA;AACX,QAAO,OAAA;AAAA,UACL,IAAM,EAAA,SAAA;AAAA,UACN,IAAM,EAAA;AAAA,SACR;AAAA;AAEF,MAAA,IAAI,kBAAkB,OAAS,EAAA;AAC7B,QAAI,IAAA;AACF,UAAA,MAAM,UAAU,MAAM,MAAA;AACtB,UAAO,OAAA;AAAA,YACL,IAAM,EAAA,SAAA;AAAA,YACN,IAAM,EAAA;AAAA,WACR;AAAA,iBACO,KAAO,EAAA;AACd,UAAO,OAAA;AAAA,YACL,IAAM,EAAA,OAAA;AAAA,YACN;AAAA,WACF;AAAA;AACF;AACF;AAGF,IAAO,OAAA,KAAA;AAAA,GACT;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"createHandler.js","sources":["../../../plugin/helpers/createHandler.ts"],"sourcesContent":["import type { CreateHandlerOptions, InlineCssOpt } from \"../types.js\";\nimport type { PagePropOpt } from \"../../server.js\";\nimport { createRscStream } from \"./createRscStream.js\";\n\nexport function createHandler<\n T extends PagePropOpt = PagePropOpt,\n InlineCSS extends InlineCssOpt = InlineCssOpt\n>(handlerOptions: CreateHandlerOptions<T, InlineCSS>) {\n if (!handlerOptions.PageComponent) {\n throw new Error(\"PageComponent is required\");\n }\n try {\n const adaptedOnEvent = (event: \"error\" | \"postpone\", data: any) => {\n if (event === \"error\") {\n handlerOptions.onEvent?.({\n type: \"route.error\",\n data: {\n route: handlerOptions.route,\n ...data,\n },\n });\n } else if (event === \"postpone\") {\n handlerOptions.onEvent?.({\n type: \"route.postpone\",\n data: {\n route: handlerOptions.route,\n ...data,\n },\n });\n }\n };\n\n const streamResult = createRscStream({\n ...handlerOptions,\n onEvent: adaptedOnEvent,\n cssFiles: handlerOptions.cssFiles,\n PageComponent: handlerOptions.PageComponent as any,\n pageProps: handlerOptions.pageProps,\n });\n\n if (streamResult.type === \"error\") {\n handlerOptions.onEvent?.({\n type: \"route.error\",\n data: {\n route: handlerOptions.route,\n error: streamResult.error,\n },\n });\n throw streamResult.error;\n }\n\n return {\n type: \"success\",\n stream: streamResult.stream,\n };\n } catch (error) {\n handlerOptions.onEvent?.({\n type: \"route.error\",\n data: {\n route: handlerOptions.route,\n error,\n },\n });\n return {\n type: \"error\",\n error: error as Error,\n };\n }\n}\n"],"names":[],"mappings":";;;;;;;AAIO,SAAS,cAGd,cAAoD,EAAA;AACpD,EAAI,IAAA,CAAC,eAAe,aAAe,EAAA;AACjC,IAAM,MAAA,IAAI,MAAM,2BAA2B,CAAA;AAAA;AAE7C,EAAI,IAAA;AACF,IAAM,MAAA,cAAA,GAAiB,CAAC,KAAA,EAA6B,IAAc,KAAA;AACjE,MAAA,IAAI,UAAU,OAAS,EAAA;AACrB,QAAA,cAAA,CAAe,OAAU,GAAA;AAAA,UACvB,IAAM,EAAA,aAAA;AAAA,UACN,IAAM,EAAA;AAAA,YACJ,OAAO,cAAe,CAAA,KAAA;AAAA,YACtB,GAAG;AAAA;AACL,SACD,CAAA;AAAA,OACH,MAAA,IAAW,UAAU,UAAY,EAAA;AAC/B,QAAA,cAAA,CAAe,OAAU,GAAA;AAAA,UACvB,IAAM,EAAA,gBAAA;AAAA,UACN,IAAM,EAAA;AAAA,YACJ,OAAO,cAAe,CAAA,KAAA;AAAA,YACtB,GAAG;AAAA;AACL,SACD,CAAA;AAAA;AACH,KACF;AAEA,IAAA,MAAM,eAAe,eAAgB,CAAA;AAAA,MACnC,GAAG,cAAA;AAAA,MACH,OAAS,EAAA,cAAA;AAAA,MACT,UAAU,cAAe,CAAA,QAAA;AAAA,MACzB,eAAe,cAAe,CAAA,aAAA;AAAA,MAC9B,WAAW,cAAe,CAAA;AAAA,KAC3B,CAAA;AAED,IAAI,IAAA,YAAA,CAAa,SAAS,OAAS,EAAA;AACjC,MAAA,cAAA,CAAe,OAAU,GAAA;AAAA,QACvB,IAAM,EAAA,aAAA;AAAA,QACN,IAAM,EAAA;AAAA,UACJ,OAAO,cAAe,CAAA,KAAA;AAAA,UACtB,OAAO,YAAa,CAAA;AAAA;AACtB,OACD,CAAA;AACD,MAAA,MAAM,YAAa,CAAA,KAAA;AAAA;AAGrB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,SAAA;AAAA,MACN,QAAQ,YAAa,CAAA;AAAA,KACvB;AAAA,WACO,KAAO,EAAA;AACd,IAAA,cAAA,CAAe,OAAU,GAAA;AAAA,MACvB,IAAM,EAAA,aAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACJ,OAAO,cAAe,CAAA,KAAA;AAAA,QACtB;AAAA;AACF,KACD,CAAA;AACD,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN;AAAA,KACF;AAAA;AAEJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"createRscStream.js","sources":["../../../plugin/helpers/createRscStream.tsx"],"sourcesContent":["import { React, ReactDOMServer } from \"../vendor/vendor.server.js\";\nimport type {\n CreateHandlerOptions,\n StreamMetrics,\n PagePropOpt,\n} from \"../types.js\";\nimport { performance } from \"node:perf_hooks\";\n\nexport function createRscStream<T extends PagePropOpt = PagePropOpt>({\n Html = React.Fragment,\n PageComponent,\n pageProps,\n moduleBase,\n moduleRootPath,\n moduleBasePath,\n moduleBaseURL,\n cssFiles = new Map(),\n globalCss = new Map(),\n route,\n pipeableStreamOptions,\n CssCollector,\n manifest,\n onEvent,\n projectRoot,\n}: Pick<\n CreateHandlerOptions<T>,\n | \"Html\"\n | \"PageComponent\"\n | \"pageProps\"\n | \"moduleBase\"\n | \"moduleRootPath\"\n | \"moduleBasePath\"\n | \"moduleBaseURL\"\n | \"cssFiles\"\n | \"route\"\n | \"pipeableStreamOptions\"\n | \"CssCollector\"\n | \"globalCss\"\n | \"manifest\"\n | \"projectRoot\"\n> & {\n onEvent?: (event: \"error\" | \"postpone\", data: any) => void;\n}):\n | { type: \"success\"; stream: any; metrics: StreamMetrics }\n | { type: \"error\"; error: Error; metrics: StreamMetrics } {\n let errorCount = 0;\n let streamError: Error | null = null;\n const startTime = performance.now();\n try {\n const htmlIsFragment = Html === React.Fragment;\n const url = route.startsWith(moduleBaseURL) ? route : moduleBaseURL + route;\n\n if (!PageComponent) {\n return {\n type: \"error\",\n error: new Error(\"PageComponent is required\"),\n metrics: {\n chunks: 0,\n bytes: 0,\n backpressureCount: 0,\n drainCount: 0,\n errorCount: 0,\n duration: 0,\n startTime: 0,\n },\n };\n }\n\n const elements = htmlIsFragment ? (\n <CssCollector\n key={route}\n as={React.Fragment}\n cssFiles={cssFiles}\n pageProps={pageProps}\n Page={PageComponent}\n />\n ) : (\n <Html\n moduleBase={moduleBase}\n moduleBaseURL={moduleBaseURL}\n moduleBasePath={moduleBasePath}\n moduleRootPath={moduleRootPath}\n projectRoot={projectRoot}\n url={url}\n route={route}\n pageProps={pageProps}\n cssFiles={cssFiles}\n globalCss={globalCss}\n CssCollector={CssCollector}\n manifest={manifest}\n Page={PageComponent}\n as={\"div\"}\n />\n );\n const stream = ReactDOMServer.renderToPipeableStream(\n elements,\n moduleBasePath,\n {\n ...pipeableStreamOptions,\n moduleBaseURL: moduleBaseURL,\n onError(error: Error, errorInfo: any) {\n const err = error instanceof Error ? error : new Error(String(error));\n streamError = err;\n onEvent?.(\"error\", { route, error: err, errorInfo });\n errorCount++;\n },\n onPostpone(reason: string) {\n onEvent?.(\"postpone\", { route, reason });\n },\n }\n );\n // If we have a stream error, return it immediately\n if (streamError) {\n return {\n type: \"error\",\n error: streamError,\n metrics: {\n chunks: 0,\n bytes: 0,\n backpressureCount: 0,\n drainCount: 0,\n errorCount,\n duration: Date.now() - startTime,\n startTime: startTime,\n },\n };\n }\n\n return {\n type: \"success\",\n stream,\n metrics: {\n chunks: 0,\n bytes: 0,\n backpressureCount: 0,\n drainCount: 0,\n errorCount,\n duration: Date.now() - startTime,\n startTime: startTime,\n },\n };\n } catch (error) {\n const err = error instanceof Error ? error : new Error(String(error));\n onEvent?.(\"error\", { route, error: err });\n return {\n type: \"error\",\n error: err,\n metrics: {\n chunks: 0,\n bytes: 0,\n backpressureCount: 0,\n drainCount: 0,\n errorCount: errorCount + 1,\n duration: Date.now() - startTime,\n startTime: startTime,\n },\n };\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatMetrics.js","sources":["../../../plugin/helpers/formatMetrics.ts"],"sourcesContent":["import type { RenderMetrics } from \"../types.js\";\n\nexport function formatMetrics(metrics: RenderMetrics): string {\n const {\n route,\n rscSize,\n chunks,\n chunkRate,\n processingTime,\n memoryUsage,\n streamMetrics,\n } = metrics;\n\n // Format memory usage in MB\n const formatMemory = (bytes: number) => `${(bytes / 1024 / 1024).toFixed(2)}MB`;\n\n return `\nRoute: ${route}\nSize: ${(rscSize / 1024).toFixed(2)}KB\nChunks: ${chunks} (${chunkRate.toFixed(2)} chunks/s)\nProcessing Time: ${processingTime.toFixed(2)}ms\nMemory:\n RSS: ${formatMemory(memoryUsage.rss)}\n Heap Total: ${formatMemory(memoryUsage.heapTotal)}\n Heap Used: ${formatMemory(memoryUsage.heapUsed)}\n External: ${formatMemory(memoryUsage.external)}\nStream:\n Duration: ${streamMetrics.duration.toFixed(2)}ms\n Backpressure: ${streamMetrics.backpressureCount}\n Drain: ${streamMetrics.drainCount}\n Errors: ${streamMetrics.errorCount}\n`.trim();\n}\n\nexport function logMetrics(metrics: RenderMetrics, logger: {info: (message: string) => void} = console) {\n logger.info(formatMetrics(metrics));\n} "],"names":[],"mappings":";;;;;AAEO,SAAS,cAAc,OAAgC,EAAA;AAC5D,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,SAAA;AAAA,IACA,cAAA;AAAA,IACA,WAAA;AAAA,IACA;AAAA,GACE,GAAA,OAAA;AAGJ,EAAM,MAAA,YAAA,GAAe,CAAC,KAAkB,KAAA,CAAA,EAAA,CAAI,QAAQ,IAAO,GAAA,IAAA,EAAM,OAAQ,CAAA,CAAC,CAAC,CAAA,EAAA,CAAA;AAE3E,EAAO,OAAA;AAAA,OAAA,EACA,KAAK;AAAA,MAAA,EAAA,CACL,OAAU,GAAA,IAAA,EAAM,OAAQ,CAAA,CAAC,CAAC,CAAA;AAAA,QAAA,EACzB,MAAM,CAAA,EAAA,EAAK,SAAU,CAAA,OAAA,CAAQ,CAAC,CAAC,CAAA;AAAA,iBACtB,EAAA,cAAA,CAAe,OAAQ,CAAA,CAAC,CAAC,CAAA;AAAA;AAAA,OAEnC,EAAA,YAAA,CAAa,WAAY,CAAA,GAAG,CAAC;AAAA,cACtB,EAAA,YAAA,CAAa,WAAY,CAAA,SAAS,CAAC;AAAA,aACpC,EAAA,YAAA,CAAa,WAAY,CAAA,QAAQ,CAAC;AAAA,YACnC,EAAA,YAAA,CAAa,WAAY,CAAA,QAAQ,CAAC;AAAA;AAAA,YAAA,EAElC,aAAc,CAAA,QAAA,CAAS,OAAQ,CAAA,CAAC,CAAC,CAAA;AAAA,gBAAA,EAC7B,cAAc,iBAAiB;AAAA,SAAA,EACtC,cAAc,UAAU;AAAA,UAAA,EACvB,cAAc,UAAU;AAAA,CAAA,CAClC,IAAK,EAAA;AACP;AAEO,SAAS,UAAA,CAAW,OAAwB,EAAA,MAAA,GAA4C,OAAS,EAAA;AACtG,EAAO,MAAA,CAAA,IAAA,CAAK,aAAc,CAAA,OAAO,CAAC,CAAA;AACpC;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBundleManifest.js","sources":["../../../plugin/helpers/getBundleManifest.ts"],"sourcesContent":["import type {\n OutputBundle,\n OutputChunk,\n} from \"rollup\";\nimport type { ManifestChunk } from \"vite\";\nimport type { InputNormalizer } from \"../types.js\";\n\n\n/**\n * Get the bundle manifest from the plugin context. Will only work during production build\n * @param pluginContext - The plugin context\n * @param bundle - The bundle\n * @param preserveModulesRoot - The preserve modules root\n * @returns The bundle manifest\n */\nexport function getBundleManifest<SSR extends boolean>({\n bundle,\n normalizer,\n}: {\n bundle: OutputBundle,\n normalizer: InputNormalizer,\n}): SSR extends true ? Record<string, string[]> : {\n [key: string]: ManifestChunk & {\n source: string,\n }\n} {\n\n if (!bundle) return {};\n\n // Track virtual modules to prevent duplicates\n const virtualModules = new Map<string, string>();\n\n const bundleManifest = Object.fromEntries(\n Object.entries(bundle)\n .map(([originalFileName, chunk]) => {\n if(!originalFileName && 'file' in chunk) {\n return [\n chunk.file,\n {\n file: chunk.file,\n source: 'source' in chunk ? chunk.source : undefined,\n }\n ]\n }\n if (chunk.type === \"asset\") {\n return [\n originalFileName,\n {\n file: chunk.fileName,\n name: chunk.names[0],\n src: originalFileName,\n source: chunk.source,\n isEntry: chunk.needsCodeReference,\n }\n ]\n }\n const chunkWithFacade = chunk as OutputChunk;\n \n // Get the module ID, preferring facadeModuleId\n const moduleId = chunkWithFacade.facadeModuleId || chunkWithFacade.moduleIds[0] || originalFileName;\n \n // Handle commonjs helpers specially - must be done before normalization\n if (moduleId.includes('commonjsHelpers')) {\n return [\n moduleId,\n {\n file: 'commonjs-runtime.js',\n name: 'commonjsHelpers',\n src: moduleId,\n isEntry: false\n }\n ];\n }\n \n // Normalize both paths, removing the root prefix\n let [normalizedId, sourcePath] = normalizer(moduleId);\n\n // For virtual modules, use a consistent naming scheme\n let finalFileName = originalFileName;\n if (moduleId.includes('?')) {\n const [basePath, query] = moduleId.split('?');\n const virtualPath = basePath.includes('node_modules') \n ? basePath.split('node_modules/')[1] \n : basePath;\n \n // Create a unique key for this virtual module\n const virtualKey = `${virtualPath}?${query}`;\n \n if (!virtualModules.has(virtualKey)) {\n // First time seeing this virtual module\n const virtualFileName = query === 'inline' ? virtualPath : `${virtualPath}.${query}.js`;\n virtualModules.set(virtualKey, virtualFileName);\n }\n \n finalFileName = virtualModules.get(virtualKey)!;\n }\n\n // handle preserveModulesRoot\n if(normalizedId.startsWith('\\x00')){\n normalizedId = normalizedId.slice(1);\n }\n if(sourcePath.startsWith('/')){\n sourcePath = sourcePath.slice(1);\n }\n\n \n const withCss = chunk.viteMetadata?.importedCss?.size ? {\n css: Array.from(chunk.viteMetadata.importedCss),\n } : {};\n const bundleManifestEntry = [\n sourcePath,\n {\n file: finalFileName,\n name: normalizedId,\n src: sourcePath,\n isEntry: chunk.isEntry,\n ...(chunk.imports?.length > 0 ? { imports: chunk.imports } : {}),\n ...(chunk.dynamicImports?.length > 0 ? { dynamicImports: chunk.dynamicImports } : {}),\n ...withCss,\n },\n ];\n return bundleManifestEntry;\n })\n .filter(Boolean)\n );\n return bundleManifest;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"getRouteFiles.js","sources":["../../../plugin/helpers/getRouteFiles.ts"],"sourcesContent":["import type { ResolvedUserOptions } from \"../types.js\";\n\nimport { resolveUrlOption } from \"../config/resolveUrlOption.js\";\nimport type { AutoDiscoveredFiles } from \"../types.js\";\n\ntype GetRouteFilesSuccess = {\n type: \"success\";\n page: string;\n props?: string | undefined;\n};\n\ntype GetRouteFilesError = {\n type: \"error\";\n error: Error;\n};\n\nexport const getRouteFiles = async (\n route: string,\n autoDiscoveredFiles: AutoDiscoveredFiles,\n userOptions: Pick<ResolvedUserOptions, \"Page\" | \"props\" | \"moduleBasePath\">\n): Promise<GetRouteFilesSuccess | GetRouteFilesError> => {\n if (autoDiscoveredFiles.urlMap.has(route)) {\n const { page, props } = autoDiscoveredFiles.urlMap.get(route)!;\n return { type: \"success\", page, props };\n }\n const { type, error, Page } = await resolveUrlOption(\n userOptions,\n \"Page\",\n route\n );\n if(type === \"error\") {\n return { type: \"error\", error };\n }\n if (!userOptions.props) {\n autoDiscoveredFiles.urlMap.set(route, { page: Page, props: undefined });\n return { type: \"success\", page: Page, props: undefined };\n }\n const {\n type: propsType,\n error: propsError,\n props,\n } = await resolveUrlOption(userOptions, \"props\", route);\n\n if (propsType === \"error\") {\n return { type: \"error\", error: propsError };\n }\n autoDiscoveredFiles.urlMap.set(route, { page: Page, props });\n return { type: \"success\", page: Page, props };\n};\n"],"names":["props"],"mappings":";;;;;;;AAgBO,MAAM,aAAgB,GAAA,OAC3B,KACA,EAAA,mBAAA,EACA,WACuD,KAAA;AACvD,EAAA,IAAI,mBAAoB,CAAA,MAAA,CAAO,GAAI,CAAA,KAAK,CAAG,EAAA;AACzC,IAAM,MAAA,EAAE,MAAM,KAAAA,EAAAA,MAAAA,KAAU,mBAAoB,CAAA,MAAA,CAAO,IAAI,KAAK,CAAA;AAC5D,IAAA,OAAO,EAAE,IAAA,EAAM,SAAW,EAAA,IAAA,EAAM,OAAAA,MAAM,EAAA;AAAA;AAExC,EAAA,MAAM,EAAE,IAAA,EAAM,KAAO,EAAA,IAAA,KAAS,MAAM,gBAAA;AAAA,IAClC,WAAA;AAAA,IACA,MAAA;AAAA,IACA;AAAA,GACF;AACA,EAAA,IAAG,SAAS,OAAS,EAAA;AACnB,IAAO,OAAA,EAAE,IAAM,EAAA,OAAA,EAAS,KAAM,EAAA;AAAA;AAEhC,EAAI,IAAA,CAAC,YAAY,KAAO,EAAA;AACtB,IAAoB,mBAAA,CAAA,MAAA,CAAO,IAAI,KAAO,EAAA,EAAE,MAAM,IAAM,EAAA,KAAA,EAAO,QAAW,CAAA;AACtE,IAAA,OAAO,EAAE,IAAM,EAAA,SAAA,EAAW,IAAM,EAAA,IAAA,EAAM,OAAO,MAAU,EAAA;AAAA;AAEzD,EAAM,MAAA;AAAA,IACJ,IAAM,EAAA,SAAA;AAAA,IACN,KAAO,EAAA,UAAA;AAAA,IACP;AAAA,GACE,GAAA,MAAM,gBAAiB,CAAA,WAAA,EAAa,SAAS,KAAK,CAAA;AAEtD,EAAA,IAAI,cAAc,OAAS,EAAA;AACzB,IAAA,OAAO,EAAE,IAAA,EAAM,OAAS,EAAA,KAAA,EAAO,UAAW,EAAA;AAAA;AAE5C,EAAA,mBAAA,CAAoB,OAAO,GAAI,CAAA,KAAA,EAAO,EAAE,IAAM,EAAA,IAAA,EAAM,OAAO,CAAA;AAC3D,EAAA,OAAO,EAAE,IAAA,EAAM,SAAW,EAAA,IAAA,EAAM,MAAM,KAAM,EAAA;AAC9C;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handleServerAction.js","sources":["../../../plugin/helpers/handleServerAction.ts"],"sourcesContent":["import type { Logger } from \"vite\";\nimport { toError } from \"../error/toError.js\";\nimport { PassThrough } from \"node:stream\";\n\nexport interface ServerActionRequest {\n id: string;\n args: unknown[];\n}\n\nexport interface ServerActionResponse {\n type: \"server-action-response\";\n returnValue: unknown;\n}\n\n/**\n * Parses a server action request from the request body.\n * Supports two formats:\n * 1. Direct args array: [arg1, arg2, ...]\n * 2. Object with id and args: { id: string, args: unknown[] }\n */\nexport function parseServerActionRequest(body: string, url?: string): ServerActionRequest {\n const parsed = JSON.parse(body);\n \n if (Array.isArray(parsed)) {\n // Format 1: Direct args array\n return {\n args: parsed,\n id: url?.split(\"?\")[0] ?? \"\",\n };\n } else if (parsed && typeof parsed === \"object\" && \"id\" in parsed) {\n // Format 2: Object with id and args\n return {\n id: parsed.id,\n args: parsed.args ?? [],\n };\n }\n \n throw new Error(\"Invalid server action request format\");\n}\n\n/**\n * Creates a server action response with the given result or error.\n */\nexport function createServerActionResponse(result?: unknown, error?: string): ServerActionResponse {\n return {\n type: \"server-action-response\",\n returnValue: error \n ? { success: false, error }\n : result\n };\n}\n\n/**\n * Handles errors in server action processing.\n */\nexport function handleServerActionError(error: unknown, res: any, logger: Logger) {\n const err = toError(error);\n logger.error(err.message + (err.stack ?? \"\"), { error: err });\n res.statusCode = 500;\n res.end(JSON.stringify(createServerActionResponse(undefined, err.message)));\n}\n\n/**\n * Sets up common response headers for server actions.\n */\nexport function setupServerActionHeaders(res: any) {\n res.setHeader(\"Content-Type\", \"text/x-component; charset=utf-8\");\n res.setHeader(\"Transfer-Encoding\", \"chunked\");\n res.setHeader(\"Connection\", \"keep-alive\");\n}\n\n/**\n * Creates a pass-through stream for server action responses.\n */\nexport function createServerActionStream(res: any): PassThrough {\n const passThrough = new PassThrough();\n passThrough.pipe(res);\n return passThrough;\n} "],"names":[],"mappings":";;;;;;;;AAoBO,SAAS,wBAAA,CAAyB,MAAc,GAAmC,EAAA;AACxF,EAAM,MAAA,MAAA,GAAS,IAAK,CAAA,KAAA,CAAM,IAAI,CAAA;AAE9B,EAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,MAAM,CAAG,EAAA;AAEzB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,MAAA;AAAA,MACN,IAAI,GAAK,EAAA,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAK,IAAA;AAAA,KAC5B;AAAA,aACS,MAAU,IAAA,OAAO,MAAW,KAAA,QAAA,IAAY,QAAQ,MAAQ,EAAA;AAEjE,IAAO,OAAA;AAAA,MACL,IAAI,MAAO,CAAA,EAAA;AAAA,MACX,IAAA,EAAM,MAAO,CAAA,IAAA,IAAQ;AAAC,KACxB;AAAA;AAGF,EAAM,MAAA,IAAI,MAAM,sCAAsC,CAAA;AACxD;AAKO,SAAS,0BAAA,CAA2B,QAAkB,KAAsC,EAAA;AACjG,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,wBAAA;AAAA,IACN,aAAa,KACT,GAAA,EAAE,OAAS,EAAA,KAAA,EAAO,OAClB,GAAA;AAAA,GACN;AACF;AAKO,SAAS,uBAAA,CAAwB,KAAgB,EAAA,GAAA,EAAU,MAAgB,EAAA;AAChF,EAAM,MAAA,GAAA,GAAM,QAAQ,KAAK,CAAA;AACzB,EAAO,MAAA,CAAA,KAAA,CAAM,IAAI,OAAW,IAAA,GAAA,CAAI,SAAS,EAAK,CAAA,EAAA,EAAE,KAAO,EAAA,GAAA,EAAK,CAAA;AAC5D,EAAA,GAAA,CAAI,UAAa,GAAA,GAAA;AACjB,EAAI,GAAA,CAAA,GAAA,CAAI,KAAK,SAAU,CAAA,0BAAA,CAA2B,QAAW,GAAI,CAAA,OAAO,CAAC,CAAC,CAAA;AAC5E;AAKO,SAAS,yBAAyB,GAAU,EAAA;AACjD,EAAI,GAAA,CAAA,SAAA,CAAU,gBAAgB,iCAAiC,CAAA;AAC/D,EAAI,GAAA,CAAA,SAAA,CAAU,qBAAqB,SAAS,CAAA;AAC5C,EAAI,GAAA,CAAA,SAAA,CAAU,cAAc,YAAY,CAAA;AAC1C;AAKO,SAAS,yBAAyB,GAAuB,EAAA;AAC9D,EAAM,MAAA,WAAA,GAAc,IAAI,WAAY,EAAA;AACpC,EAAA,WAAA,CAAY,KAAK,GAAG,CAAA;AACpB,EAAO,OAAA,WAAA;AACT;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"inputNormalizer.js","sources":["../../../plugin/helpers/inputNormalizer.ts"],"sourcesContent":["import { normalizePath } from \"vite\";\nimport type {\n CreateInputNormalizerProps,\n InputNormalizer,\n NormalizerInput,\n} from \"../types.js\";\nimport path, { join, sep } from \"path\";\nimport { DEFAULT_CONFIG } from \"../config/defaults.js\";\n\nlet stashedNormalizer: InputNormalizer | null = null;\n\nconst resolveExtensionOptions = (\n removeExtension: CreateInputNormalizerProps[\"removeExtension\"]\n) => {\n if (typeof removeExtension === \"boolean\") {\n if (removeExtension) {\n return (path: string) => {\n // if extension is client or server, don't remove it\n if (path.endsWith(\".client\") || path.endsWith(\".server\")) {\n return path;\n }\n const extensionIndex = path.lastIndexOf(\".\");\n\n return extensionIndex !== -1 ? path.slice(0, extensionIndex) : path;\n };\n }\n return (path: string) => path;\n }\n if (typeof removeExtension === \"string\") {\n return (path: string) => path.replace(removeExtension, \"\");\n }\n if (removeExtension instanceof RegExp) {\n return (path: string) =>\n removeExtension.test(path) ? path.replace(removeExtension, \"\") : path;\n }\n if (typeof removeExtension === \"function\") {\n return (path: string) => {\n if (path.endsWith(\".client\") || path.endsWith(\".server\")) {\n return path;\n }\n const extIndex = path.lastIndexOf(\".\");\n if (extIndex !== -1) {\n const extension = path.slice(extIndex);\n if (removeExtension(extension)) {\n return path.slice(0, extIndex);\n }\n }\n return path;\n };\n }\n return (path: string) => path;\n};\n\nconst resolveRootOption = (\n root: CreateInputNormalizerProps[\"root\"],\n preserveModulesRoot: CreateInputNormalizerProps[\"preserveModulesRoot\"]\n) => {\n if (typeof preserveModulesRoot === \"string\" && typeof root === \"string\") {\n const normalizedPreserveModulesRoot = normalizePath(preserveModulesRoot);\n if (root !== \"\" && normalizedPreserveModulesRoot.startsWith(root)) {\n return normalizedPreserveModulesRoot.slice(root.length + 1);\n }\n return \"\";\n } else if (\n typeof preserveModulesRoot === \"string\" &&\n typeof root !== \"string\"\n ) {\n return normalizePath(preserveModulesRoot);\n }\n return \"\";\n};\n\nconst createKeyNormalizer =\n ({\n root: normalizedRoot,\n preserveModulesRoot,\n handleExtension,\n moduleBasePath,\n }: {\n root: string;\n preserveModulesRoot: string | undefined;\n handleExtension: (path: string) => string;\n moduleBasePath: string | undefined;\n }) =>\n (key: string) => {\n if (key.includes(\"?\")) {\n key = key.split(\"?\")[0];\n }\n\n // Handle virtual modules first\n const virtualPrefix = key.match(/^\\0+/) ?? \"\";\n const actualKey = virtualPrefix ? key.slice(virtualPrefix[0].length) : key;\n\n let moduleId = normalizePath(actualKey);\n\n // Normalize root path to handle both absolute and relative paths\n const normalizedRootPath = normalizePath(normalizedRoot);\n if (moduleId.startsWith(normalizedRootPath)) {\n moduleId = moduleId.slice(normalizedRootPath.length);\n }\n if (\n typeof moduleBasePath === \"string\" &&\n moduleBasePath !== \"\" &&\n moduleBasePath !== \"/\"\n ) {\n moduleId = moduleId.startsWith(\n moduleBasePath.endsWith(sep) ? moduleBasePath : moduleBasePath + sep\n )\n ? moduleId.slice(\n moduleBasePath.length +\n (moduleBasePath.endsWith(sep) ? 0 : sep.length)\n )\n : moduleId;\n }\n\n moduleId = handleExtension(moduleId);\n while (moduleId.startsWith(\"/\") || moduleId.startsWith(\".\")) {\n moduleId = moduleId.slice(1);\n }\n while (moduleId.endsWith(\"/\")) {\n moduleId = moduleId.slice(0, -1);\n }\n if (typeof preserveModulesRoot === \"string\" && preserveModulesRoot !== \"\") {\n moduleId = moduleId.startsWith(preserveModulesRoot)\n ? moduleId.slice(preserveModulesRoot.length + path.sep.length)\n : moduleId;\n }\n\n // Add virtual prefix back\n return virtualPrefix + moduleId;\n };\n\nconst createPathNormalizer =\n ({\n root,\n preserveModulesRoot,\n moduleBasePath,\n }: {\n root: string;\n preserveModulesRoot: string | undefined;\n moduleBasePath: string | undefined;\n }) =>\n (path: string) => {\n if (typeof path !== \"string\") {\n throw new Error(`Invalid path: ${JSON.stringify(path)}`);\n }\n if (path.includes(\"?\")) {\n path = path.split(\"?\")[0];\n }\n let normalPath = normalizePath(path);\n if (normalPath.startsWith(root)) {\n normalPath = normalPath.slice(root.length);\n }\n if (\n typeof moduleBasePath === \"string\" &&\n moduleBasePath !== \"\" &&\n moduleBasePath !== \"/\"\n ) {\n normalPath = normalPath.startsWith(\n moduleBasePath.endsWith(sep) ? moduleBasePath : moduleBasePath + sep\n )\n ? normalPath.slice(\n moduleBasePath.length +\n (moduleBasePath.endsWith(sep) ? 0 : sep.length)\n )\n : normalPath;\n }\n if (typeof preserveModulesRoot === \"string\" && preserveModulesRoot !== \"\") {\n normalPath = normalPath.startsWith(preserveModulesRoot)\n ? normalPath.slice(preserveModulesRoot.length)\n : normalPath;\n }\n while (normalPath.endsWith(\"/\")) {\n normalPath = normalPath.slice(0, -1);\n }\n return normalPath;\n };\n/**\n * @description Create a function that normalizes the input\n * @param root - The root of the project\n * @param preserveModulesRoot - The root of the preserve modules\n * @param removeExtension - Whether to remove the extension of the file\n * @returns A function that normalizes the input\n */\nexport function createInputNormalizer({\n root,\n moduleBasePath = DEFAULT_CONFIG.MODULE_BASE_PATH,\n preserveModulesRoot = undefined,\n removeExtension = DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension,\n}: CreateInputNormalizerProps): InputNormalizer {\n if (stashedNormalizer) {\n return stashedNormalizer;\n }\n const relativeRoot = resolveRootOption(root, preserveModulesRoot);\n const handleExtension = resolveExtensionOptions(removeExtension);\n const normalizeEntryKey = createKeyNormalizer({\n root: root,\n preserveModulesRoot: preserveModulesRoot,\n handleExtension,\n moduleBasePath,\n });\n const normalizeEntryPath = createPathNormalizer({\n root: root,\n preserveModulesRoot: relativeRoot,\n moduleBasePath,\n });\n function normalizeInput(id: NormalizerInput): [string, string] {\n // Normalize both paths to use POSIX separators\n if (Array.isArray(id)) {\n const [key, path] = id;\n if (typeof key === \"string\" && Array.isArray(path) && path.length === 2) {\n const isNumber = !isNaN(Number(key));\n if (isNumber) {\n // ignore it\n return normalizeInput([path[0], path[1]]);\n }\n return normalizeInput([join(key, path[0]), path[1]]);\n }\n if (typeof key !== \"string\" || typeof path !== \"string\") {\n throw new Error(`Invalid input: ${JSON.stringify(id)}`);\n }\n return [normalizeEntryKey(key), normalizeEntryPath(path)];\n } else if (typeof id === \"string\") {\n // Return both the normalized ID and original normalized path\n return [normalizeEntryKey(id), normalizeEntryPath(id)];\n } else if (\n typeof id === \"object\" &&\n id !== null &&\n \"$$typeof\" in id &&\n \"$$id\" in id &&\n typeof id.$$id === \"string\"\n ) {\n const normalized: [string, string] = [\n normalizeEntryKey(id.$$id),\n normalizeEntryPath(id.$$id),\n ];\n return normalized;\n }\n throw new Error(`Invalid input type: ${typeof id}`);\n }\n\n stashedNormalizer = (input: NormalizerInput): [string, string] => {\n const [key, path] = normalizeInput(input);\n let normalizedPath = path.startsWith(moduleBasePath)\n ? path.slice(moduleBasePath.length)\n : path;\n normalizedPath = normalizedPath.startsWith(\"/\")\n ? normalizedPath.slice(1)\n : normalizedPath;\n const virtualPrefix = key.match(/^\\0+/) ?? \"\";\n // If key has virtual prefix, ensure path has it too\n const finalPath = virtualPrefix\n ? virtualPrefix.length && normalizedPath.startsWith(virtualPrefix[0])\n ? normalizedPath\n : virtualPrefix.length\n ? virtualPrefix[0] + normalizedPath\n : normalizedPath\n : normalizedPath;\n return [key, finalPath];\n };\n return stashedNormalizer;\n}\n"],"names":["path"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.js","sources":["../../../plugin/helpers/metrics.ts"],"sourcesContent":["import { Transform } from \"node:stream\";\nimport type { StreamMetrics, RenderMetrics } from \"../types.js\";\nimport type { PipeableStream } from \"react-dom/server\";\n\nexport function createStreamMetrics(): StreamMetrics {\n return {\n chunks: 0,\n bytes: 0,\n backpressureCount: 0,\n drainCount: 0,\n errorCount: 0,\n duration: 0,\n startTime: performance.now()\n };\n}\n\nexport function createRenderMetrics(route: string): RenderMetrics {\n return {\n route,\n htmlSize: 0,\n rscSize: 0,\n processingTime: 0,\n chunks: 0,\n chunkRate: 0,\n memoryUsage: process.memoryUsage(),\n streamMetrics: createStreamMetrics(),\n htmlSizes: new Map(),\n rscSizes: new Map(),\n };\n}\n\n/**\n * Creates a transform stream that collects metrics from the input stream\n * @param stream The stream to collect metrics from\n * @returns A promise that resolves with the metrics when the stream ends\n */\nexport function collectStreamMetrics(stream: PipeableStream | NodeJS.ReadableStream): Promise<StreamMetrics> {\n const metrics = createStreamMetrics();\n const startTime = performance.now()\n\n return new Promise<StreamMetrics>((resolve, reject) => {\n const transform = new Transform({\n transform(chunk, _encoding, callback) {\n metrics.chunks++;\n metrics.bytes += chunk.length;\n callback(null, chunk);\n },\n flush(callback) {\n metrics.duration = Date.now() - startTime;\n callback();\n }\n });\n\n stream.pipe(transform);\n\n transform.on(\"error\", (error) => {\n reject(error);\n });\n\n transform.on(\"end\", () => {\n resolve(metrics);\n });\n });\n} "],"names":[],"mappings":";;;;;;;AAIO,SAAS,mBAAqC,GAAA;AACnD,EAAO,OAAA;AAAA,IACL,MAAQ,EAAA,CAAA;AAAA,IACR,KAAO,EAAA,CAAA;AAAA,IACP,iBAAmB,EAAA,CAAA;AAAA,IACnB,UAAY,EAAA,CAAA;AAAA,IACZ,UAAY,EAAA,CAAA;AAAA,IACZ,QAAU,EAAA,CAAA;AAAA,IACV,SAAA,EAAW,YAAY,GAAI;AAAA,GAC7B;AACF;AAEO,SAAS,oBAAoB,KAA8B,EAAA;AAChE,EAAO,OAAA;AAAA,IACL,KAAA;AAAA,IACA,QAAU,EAAA,CAAA;AAAA,IACV,OAAS,EAAA,CAAA;AAAA,IACT,cAAgB,EAAA,CAAA;AAAA,IAChB,MAAQ,EAAA,CAAA;AAAA,IACR,SAAW,EAAA,CAAA;AAAA,IACX,WAAA,EAAa,QAAQ,WAAY,EAAA;AAAA,IACjC,eAAe,mBAAoB,EAAA;AAAA,IACnC,SAAA,sBAAe,GAAI,EAAA;AAAA,IACnB,QAAA,sBAAc,GAAI;AAAA,GACpB;AACF;AAOO,SAAS,qBAAqB,MAAwE,EAAA;AAC3G,EAAA,MAAM,UAAU,mBAAoB,EAAA;AACpC,EAAM,MAAA,SAAA,GAAY,YAAY,GAAI,EAAA;AAElC,EAAA,OAAO,IAAI,OAAA,CAAuB,CAAC,OAAA,EAAS,MAAW,KAAA;AACrD,IAAM,MAAA,SAAA,GAAY,IAAI,SAAU,CAAA;AAAA,MAC9B,SAAA,CAAU,KAAO,EAAA,SAAA,EAAW,QAAU,EAAA;AACpC,QAAQ,OAAA,CAAA,MAAA,EAAA;AACR,QAAA,OAAA,CAAQ,SAAS,KAAM,CAAA,MAAA;AACvB,QAAA,QAAA,CAAS,MAAM,KAAK,CAAA;AAAA,OACtB;AAAA,MACA,MAAM,QAAU,EAAA;AACd,QAAQ,OAAA,CAAA,QAAA,GAAW,IAAK,CAAA,GAAA,EAAQ,GAAA,SAAA;AAChC,QAAS,QAAA,EAAA;AAAA;AACX,KACD,CAAA;AAED,IAAA,MAAA,CAAO,KAAK,SAAS,CAAA;AAErB,IAAU,SAAA,CAAA,EAAA,CAAG,OAAS,EAAA,CAAC,KAAU,KAAA;AAC/B,MAAA,MAAA,CAAO,KAAK,CAAA;AAAA,KACb,CAAA;AAED,IAAU,SAAA,CAAA,EAAA,CAAG,OAAO,MAAM;AACxB,MAAA,OAAA,CAAQ,OAAO,CAAA;AAAA,KAChB,CAAA;AAAA,GACF,CAAA;AACH;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"moduleRefs.js","sources":["../../../plugin/helpers/moduleRefs.ts"],"sourcesContent":["// Create a shared map to store module references\nexport const moduleRefs = new Map<string, { id: string }>();\n\nexport function getModuleRef(id: string): { id: string } {\n let moduleRef = moduleRefs.get(id);\n if (!moduleRef) {\n moduleRef = { id };\n moduleRefs.set(id, moduleRef);\n }\n return moduleRef;\n} "],"names":[],"mappings":";;;;;AACa,MAAA,UAAA,uBAAiB,GAA4B;AAEnD,SAAS,aAAa,EAA4B,EAAA;AACvD,EAAI,IAAA,SAAA,GAAY,UAAW,CAAA,GAAA,CAAI,EAAE,CAAA;AACjC,EAAA,IAAI,CAAC,SAAW,EAAA;AACd,IAAA,SAAA,GAAY,EAAE,EAAG,EAAA;AACjB,IAAW,UAAA,CAAA,GAAA,CAAI,IAAI,SAAS,CAAA;AAAA;AAE9B,EAAO,OAAA,SAAA;AACT;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"requestInfo.js","sources":["../../../plugin/helpers/requestInfo.ts"],"sourcesContent":["import { join, resolve } from \"node:path\";\nimport type { ResolvedUserOptions } from \"../types.js\";\nimport { createLogger, type Connect, type Logger } from \"vite\";\nimport { MIME_TYPES } from \"../config/mimeTypes.js\";\n\n/**\n * # Request info\n *\n * Does the initial work to check if the request is for html, rsc, json, js, css, server-action, or something else not handled by this plugin.\n *\n * @param req\n * @param userOptions\n * @param hostDir\n * @returns\n */\nexport function requestInfo(\n req: Connect.IncomingMessage,\n userOptions: Pick<\n ResolvedUserOptions,\n \"normalizer\" | \"build\" | \"autoDiscover\" | \"verbose\"\n >,\n hostDir: string,\n logger: Logger = createLogger()\n) {\n const [, value] = userOptions.normalizer(req.url);\n const dotIndex = value.lastIndexOf(\".\");\n const ext = dotIndex === -1 ? \"\" : value.slice(dotIndex);\n // handle index.html\n const isVendor = userOptions.autoDiscover.vendorPattern(value);\n const isVirtual = userOptions.autoDiscover.virtualPattern(value);\n const isJS = userOptions.autoDiscover.modulePattern(value);\n const isHtml = userOptions.autoDiscover.htmlPattern(value);\n const isCss = userOptions.autoDiscover.cssPattern(value);\n const isJson = userOptions.autoDiscover.jsonPattern(value);\n const isRsc = userOptions.autoDiscover.rscPattern(value);\n const hasJsHeader =\n req.headers[\"sec-fetch-dest\"] === \"script\" ||\n req.headers[\"accept\"]?.includes(\"*/*\") ||\n req.headers[\"accept\"]?.includes(\"text/javascript\");\n const hasJsonHeader = req.headers[\"accept\"]?.includes(\"application/json\");\n const hasHtmlHeader = req.headers.accept?.includes(\"text/html\");\n const hasRscHeader = req.headers.accept?.includes(\"text/x-component\");\n const hasCssHeader = req.headers.accept?.includes(\"text/css\");\n const isFolder = !ext;\n const isFormContentType =\n req.headers[\"content-type\"]?.includes(\n \"application/x-www-form-urlencoded\"\n ) || !!req.headers[\"content-type\"]?.includes(\"multipart/form-data\");\n \n // Server action detection\n const hasServerActionHeaders =\n req.method === \"POST\" &&\n (req.headers[\"sec-fetch-dest\"] === \"empty\" ||\n req.headers[\"sec-fetch-dest\"] === \"\") &&\n req.headers[\"sec-fetch-mode\"] === \"cors\";\n const isServerActionRequest = hasServerActionHeaders;\n\n const isFormActionRequest = !isServerActionRequest && (\n req.method === \"POST\" ||\n (isFormContentType &&\n req.headers[\"sec-fetch-dest\"] === \"document\" &&\n req.headers[\"sec-fetch-mode\"] === \"navigate\")\n );\n\n const isJsRequest =\n !isFormActionRequest && !isJson && !isHtml && !isCss && !isRsc && (isJS || hasJsHeader);\n const isJsonRequest = isJson || (hasJsonHeader && !isJsRequest);\n // Form action detection\n \n const isHtmlRequest =\n isHtml ||\n hasHtmlHeader ||\n (isFolder &&\n !hasRscHeader &&\n !isRsc &&\n !isJsRequest &&\n !isFormActionRequest);\n const isRscRequest =\n !isJsRequest && !isHtmlRequest && (isRsc || hasRscHeader);\n const isCssRequest =\n !isHtmlRequest &&\n !isRscRequest &&\n !isJsRequest &&\n !isJsonRequest &&\n (isCss || hasCssHeader);\n\n let filePath = join(hostDir, value);\n let contentType;\n if (isServerActionRequest) {\n // For server actions, we'll get the actual file path from the request body\n // The route is just a placeholder\n filePath = value;\n contentType = \"application/json; charset=utf-8\";\n } else if (isHtmlRequest) {\n if (!isHtml) {\n filePath = join(hostDir, value, userOptions.build.htmlOutputPath);\n }\n contentType = \"text/html; charset=utf-8\";\n } else if (isRscRequest) {\n if (!isRsc) {\n filePath = join(hostDir, value, userOptions.build.rscOutputPath);\n }\n contentType = \"text/x-component; charset=utf-8\";\n } else if (isCssRequest) {\n if (!isCss) {\n filePath = join(hostDir, value + \".css\");\n }\n contentType = \"text/css; charset=utf-8\";\n } else if (isJsRequest) {\n if (!isJS) {\n filePath = resolve(hostDir, value + \".js\");\n }\n contentType = \"application/javascript; charset=utf-8\";\n } else if (isJsonRequest) {\n if (!isJson) {\n filePath = join(hostDir, value + \".json\");\n }\n contentType = \"application/json; charset=utf-8\";\n } else {\n const mimeType = MIME_TYPES[ext];\n if (mimeType) {\n contentType = mimeType + \"; charset=utf-8\";\n } else {\n contentType = \"application/octet-stream\";\n }\n }\n const route = value\n .replace(userOptions.build.rscOutputPath, \"\")\n .replace(userOptions.build.htmlOutputPath, \"\");\n\n const routeWithoutTrailingSlash =\n route === \"\" || route === \"/\"\n ? \"/\"\n : route.endsWith(\"/\")\n ? route.slice(0, -1)\n : route;\n\n const routeWithLeadingSlash = !routeWithoutTrailingSlash\n ? \"/\"\n : routeWithoutTrailingSlash.startsWith(\"/\")\n ? routeWithoutTrailingSlash\n : `/${routeWithoutTrailingSlash}`;\n\n if (userOptions.verbose) {\n if (isFormActionRequest) {\n logger.info(`[react-dev-server] (form-action) ${routeWithLeadingSlash}`);\n } else if (isServerActionRequest) {\n logger.info(\n `[react-dev-server] (server-action) ${routeWithLeadingSlash}`\n );\n } else if (isHtmlRequest) {\n logger.info(`[react-dev-server] (html) ${routeWithLeadingSlash}`);\n } else if (isRscRequest) {\n logger.info(`[react-dev-server] (rsc) ${routeWithLeadingSlash}`);\n } else if (isCssRequest) {\n logger.info(`[react-dev-server] (css) ${routeWithLeadingSlash}`);\n } else if (isJsRequest) {\n logger.info(`[react-dev-server] (js) ${routeWithLeadingSlash}`);\n } else if (isJsonRequest) {\n logger.info(`[react-dev-server] (json) ${routeWithLeadingSlash}`);\n } else {\n logger.info(`[react-dev-server] (other) ${routeWithLeadingSlash}`);\n }\n }\n return {\n route: routeWithLeadingSlash,\n ext,\n isHtmlRequest,\n isRscRequest,\n isCssRequest,\n isCss,\n isHtml,\n isRsc,\n isFolder,\n contentType,\n filePath,\n isJS,\n isVendor,\n isVirtual,\n hasJsHeader,\n isJsRequest,\n isJson,\n isJsonRequest,\n hasCssHeader,\n hasJsonHeader,\n hasHtmlHeader,\n hasRscHeader,\n hasServerActionHeaders,\n isServerActionRequest,\n isFormContentType,\n isFormActionRequest,\n };\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"requestToRoute.js","sources":["../../../plugin/helpers/requestToRoute.ts"],"sourcesContent":["import type { CreateHandlerOptions } from \"../types.js\";\n\nexport function requestToRoute(\n req: {url?: string},\n handlerOptions: Pick<CreateHandlerOptions, \"moduleBasePath\" | \"build\">\n) {\n let route = req.url?.replace(\"/\" + handlerOptions.build.rscOutputPath, \"\");\n if (typeof route !== \"string\") {\n return route;\n }\n if (\n route.startsWith(handlerOptions.moduleBasePath)\n ) {\n route = route.slice(handlerOptions.moduleBasePath.length);\n }\n if (!route || route === \"\") {\n route = \"/\";\n }\n if (!route.startsWith(\"/\")) {\n route = \"/\" + route;\n }\n return route;\n}\n"],"names":[],"mappings":";;;;;AAEO,SAAS,cAAA,CACd,KACA,cACA,EAAA;AACA,EAAI,IAAA,KAAA,GAAQ,IAAI,GAAK,EAAA,OAAA,CAAQ,MAAM,cAAe,CAAA,KAAA,CAAM,eAAe,EAAE,CAAA;AACzE,EAAI,IAAA,OAAO,UAAU,QAAU,EAAA;AAC7B,IAAO,OAAA,KAAA;AAAA;AAET,EAAA,IACE,KAAM,CAAA,UAAA,CAAW,cAAe,CAAA,cAAc,CAC9C,EAAA;AACA,IAAA,KAAA,GAAQ,KAAM,CAAA,KAAA,CAAM,cAAe,CAAA,cAAA,CAAe,MAAM,CAAA;AAAA;AAE1D,EAAI,IAAA,CAAC,KAAS,IAAA,KAAA,KAAU,EAAI,EAAA;AAC1B,IAAQ,KAAA,GAAA,GAAA;AAAA;AAEV,EAAA,IAAI,CAAC,KAAA,CAAM,UAAW,CAAA,GAAG,CAAG,EAAA;AAC1B,IAAA,KAAA,GAAQ,GAAM,GAAA,KAAA;AAAA;AAEhB,EAAO,OAAA,KAAA;AACT;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolvePage.js","sources":["../../../plugin/helpers/resolvePage.ts"],"sourcesContent":["import { toError } from \"../error/toError.js\";\n\ntype ResolvePageOptions<N extends string> = {\n id: string;\n exportName: N;\n loader: (id: string) => Promise<any>;\n};\n\ntype ResolvePageResult<T, N extends string> =\n | { type: \"success\"; Page: T; module: { [key in N]: T } }\n | { type: \"error\"; error: Error }\n | { type: \"skip\" };\n\n/**\n * Resolves a page component from a module.\n *\n * During development (ssrLoadModule):\n * - Real modules have exports available directly on the module object\n * - Virtual modules have exports stored in temporaryReferences\n *\n * @param options.id - The module ID to resolve\n * @param options.exportName - The name of the export to resolve (e.g. 'Page')\n * @param options.loader - The loader function to use for loading the module\n *\n * @returns A result object containing:\n * - type: \"success\" | \"error\" | \"skip\"\n * - Page: The resolved page component if successful\n * - error: Error message if failed\n */\nexport const resolvePage = async <T, N extends string>({\n id,\n exportName,\n loader,\n}: ResolvePageOptions<N>): Promise<ResolvePageResult<T, N>> => {\n // Check if this is a stashed page that needs special handling\n const pageLoadResult = await (async (): Promise<\n | { type: \"success\"; key: string; module: { [key in N]: T } }\n | { type: \"error\"; error: Error; module?: never }\n > => {\n try {\n return {\n type: \"success\",\n key: id,\n module: await loader(id),\n };\n } catch (error) {\n return {\n type: \"error\",\n error: error instanceof Error ? error : new Error(String(error)),\n };\n }\n })();\n\n if (pageLoadResult.type !== \"success\") {\n return pageLoadResult;\n }\n const { module } = pageLoadResult;\n const Page = module[exportName as N];\n if (module instanceof Error) {\n return {\n type: \"error\",\n error: {\n name: module.name,\n message: module.message,\n stack: module.stack,\n },\n };\n } else if (!(exportName in module)) {\n if (\"error\" in module) {\n return {\n type: \"error\",\n error: toError(module.error),\n };\n }\n console.log({ module });\n return {\n type: \"error\",\n error: new Error(`Export \"${exportName}\" not found in module ${id}.`),\n };\n } else if (!Page) {\n return {\n type: \"error\",\n error: new Error(\n `Export \"${exportName}\" is null or undefined in module ${id}.`\n ),\n };\n } else if (Page instanceof Error) {\n return {\n type: \"error\",\n error: Page,\n };\n }\n return {\n type: \"success\",\n Page,\n module: module as { [key in N]: T },\n };\n};\n"],"names":[],"mappings":";;;;;;;AA6BO,MAAM,cAAc,OAA4B;AAAA,EACrD,EAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF,CAA+D,KAAA;AAE7D,EAAM,MAAA,cAAA,GAAiB,OAAO,YAGzB;AACH,IAAI,IAAA;AACF,MAAO,OAAA;AAAA,QACL,IAAM,EAAA,SAAA;AAAA,QACN,GAAK,EAAA,EAAA;AAAA,QACL,MAAA,EAAQ,MAAM,MAAA,CAAO,EAAE;AAAA,OACzB;AAAA,aACO,KAAO,EAAA;AACd,MAAO,OAAA;AAAA,QACL,IAAM,EAAA,OAAA;AAAA,QACN,KAAA,EAAO,iBAAiB,KAAQ,GAAA,KAAA,GAAQ,IAAI,KAAM,CAAA,MAAA,CAAO,KAAK,CAAC;AAAA,OACjE;AAAA;AACF,GACC,GAAA;AAEH,EAAI,IAAA,cAAA,CAAe,SAAS,SAAW,EAAA;AACrC,IAAO,OAAA,cAAA;AAAA;AAET,EAAM,MAAA,EAAE,QAAW,GAAA,cAAA;AACnB,EAAM,MAAA,IAAA,GAAO,OAAO,UAAe,CAAA;AACnC,EAAA,IAAI,kBAAkB,KAAO,EAAA;AAC3B,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,KAAO,EAAA;AAAA,QACL,MAAM,MAAO,CAAA,IAAA;AAAA,QACb,SAAS,MAAO,CAAA,OAAA;AAAA,QAChB,OAAO,MAAO,CAAA;AAAA;AAChB,KACF;AAAA,GACF,MAAA,IAAW,EAAE,UAAA,IAAc,MAAS,CAAA,EAAA;AAClC,IAAA,IAAI,WAAW,MAAQ,EAAA;AACrB,MAAO,OAAA;AAAA,QACL,IAAM,EAAA,OAAA;AAAA,QACN,KAAA,EAAO,OAAQ,CAAA,MAAA,CAAO,KAAK;AAAA,OAC7B;AAAA;AAEF,IAAQ,OAAA,CAAA,GAAA,CAAI,EAAE,MAAA,EAAQ,CAAA;AACtB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAO,IAAI,KAAA,CAAM,WAAW,UAAU,CAAA,sBAAA,EAAyB,EAAE,CAAG,CAAA,CAAA;AAAA,KACtE;AAAA,GACF,MAAA,IAAW,CAAC,IAAM,EAAA;AAChB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAO,IAAI,KAAA;AAAA,QACT,CAAA,QAAA,EAAW,UAAU,CAAA,iCAAA,EAAoC,EAAE,CAAA,CAAA;AAAA;AAC7D,KACF;AAAA,GACF,MAAA,IAAW,gBAAgB,KAAO,EAAA;AAChC,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,KAAO,EAAA;AAAA,KACT;AAAA;AAEF,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,SAAA;AAAA,IACN,IAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolvePageAndProps.js","sources":["../../../plugin/helpers/resolvePageAndProps.ts"],"sourcesContent":["import type { PageComponentType, PagePropOpt } from \"../types.js\";\nimport { resolvePage } from \"./resolvePage.js\";\nimport { resolveProps } from \"./resolveProps.js\";\n\ntype ResolvePageAndPropsOptions<N1 extends string, N2 extends string> = {\n pagePath: string;\n pageExportName: N1;\n propsPath?: string;\n propsExportName?: N2;\n route: string;\n loader: (id: string) => Promise<any>;\n};\n\ntype ResolvePageAndPropsResult<T extends PagePropOpt = PagePropOpt> =\n | {\n type: \"success\";\n error?: never;\n PageComponent: PageComponentType<T>;\n pageProps: T;\n }\n | {\n type: \"error\";\n error: Error;\n PageComponent?: never;\n pageProps?: never;\n }\n | {\n type: \"skip\";\n error?: never;\n PageComponent?: never;\n pageProps?: never;\n };\n\nexport async function resolvePageAndProps<\n T extends PagePropOpt = PagePropOpt,\n N1 extends string = string,\n N2 extends string = string\n>(\n handlerOptions: ResolvePageAndPropsOptions<N1, N2>\n): Promise<ResolvePageAndPropsResult<T>> {\n try {\n // Load the page component\n const resolvePagePromise = resolvePage({\n id: handlerOptions.pagePath,\n exportName: handlerOptions.pageExportName,\n loader: handlerOptions.loader,\n });\n const resolvePropsPromise = resolveProps({\n url: handlerOptions.route,\n id: handlerOptions.propsPath ?? handlerOptions.pagePath,\n exportName: handlerOptions.propsExportName ?? \"default\",\n loader: handlerOptions.propsPath \n ? handlerOptions.loader\n : async () => {\n const resolvePageResult = await resolvePagePromise;\n if (resolvePageResult.type === \"error\") {\n return resolvePageResult.error\n }\n if (resolvePageResult.type === \"skip\") {\n return null;\n }\n return resolvePageResult.module;\n },\n });\n const [resolvePageResult, resolvePropsResult] = await Promise.all([resolvePagePromise, resolvePropsPromise]);\n if (resolvePageResult.type != \"success\") {\n return resolvePageResult;\n }\n if (resolvePropsResult.type != \"success\") {\n return resolvePropsResult;\n }\n const { Page } = resolvePageResult;\n const { props } = resolvePropsResult;\n return {\n type: \"success\",\n PageComponent: Page as PageComponentType<T>,\n pageProps: props as T,\n };\n } catch (error) {\n return {\n type: \"error\",\n error: error instanceof Error ? error : new Error(String(error)),\n };\n }\n}\n"],"names":["resolvePageResult"],"mappings":";;;;;;;;AAiCA,eAAsB,oBAKpB,cACuC,EAAA;AACvC,EAAI,IAAA;AAEF,IAAA,MAAM,qBAAqB,WAAY,CAAA;AAAA,MACrC,IAAI,cAAe,CAAA,QAAA;AAAA,MACnB,YAAY,cAAe,CAAA,cAAA;AAAA,MAC3B,QAAQ,cAAe,CAAA;AAAA,KACxB,CAAA;AACD,IAAA,MAAM,sBAAsB,YAAa,CAAA;AAAA,MACvC,KAAK,cAAe,CAAA,KAAA;AAAA,MACpB,EAAA,EAAI,cAAe,CAAA,SAAA,IAAa,cAAe,CAAA,QAAA;AAAA,MAC/C,UAAA,EAAY,eAAe,eAAmB,IAAA,SAAA;AAAA,MAC9C,MAAQ,EAAA,cAAA,CAAe,SACnB,GAAA,cAAA,CAAe,SACf,YAAY;AACV,QAAA,MAAMA,qBAAoB,MAAM,kBAAA;AAChC,QAAIA,IAAAA,kBAAAA,CAAkB,SAAS,OAAS,EAAA;AACtC,UAAA,OAAOA,kBAAkB,CAAA,KAAA;AAAA;AAE3B,QAAIA,IAAAA,kBAAAA,CAAkB,SAAS,MAAQ,EAAA;AACrC,UAAO,OAAA,IAAA;AAAA;AAET,QAAA,OAAOA,kBAAkB,CAAA,MAAA;AAAA;AAC3B,KACL,CAAA;AACD,IAAM,MAAA,CAAC,iBAAmB,EAAA,kBAAkB,CAAI,GAAA,MAAM,QAAQ,GAAI,CAAA,CAAC,kBAAoB,EAAA,mBAAmB,CAAC,CAAA;AAC3G,IAAI,IAAA,iBAAA,CAAkB,QAAQ,SAAW,EAAA;AACvC,MAAO,OAAA,iBAAA;AAAA;AAET,IAAI,IAAA,kBAAA,CAAmB,QAAQ,SAAW,EAAA;AACxC,MAAO,OAAA,kBAAA;AAAA;AAET,IAAM,MAAA,EAAE,MAAS,GAAA,iBAAA;AACjB,IAAM,MAAA,EAAE,OAAU,GAAA,kBAAA;AAClB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,SAAA;AAAA,MACN,aAAe,EAAA,IAAA;AAAA,MACf,SAAW,EAAA;AAAA,KACb;AAAA,WACO,KAAO,EAAA;AACd,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,KAAA,EAAO,iBAAiB,KAAQ,GAAA,KAAA,GAAQ,IAAI,KAAM,CAAA,MAAA,CAAO,KAAK,CAAC;AAAA,KACjE;AAAA;AAEJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveProps.js","sources":["../../../plugin/helpers/resolveProps.ts"],"sourcesContent":["import { toError } from \"../error/toError.js\";\n\ntype ResolvePropsOptions<N extends string> = {\n id: string;\n url: string;\n exportName: N;\n loader: (id: string) => Promise<any>;\n};\n\ntype ResolvePropsResult<T, N extends string> =\n | { type: \"success\"; key: string; props: T; module?: { [key in N]: T } }\n | { type: \"error\"; error: Error }\n | { type: \"skip\" };\n\n/**\n * Resolves props from a module, handling both real and virtual modules.\n *\n * During development (ssrLoadModule):\n * - Real modules have exports available directly on the module object\n * - Virtual modules have exports stored in temporaryReferences\n *\n * During build (createBuildLoader):\n * - Transformed modules (with ast/code) have exports as direct properties\n * - The exports array contains just the names of those exports\n * - We store the module in temporaryReferences for later use\n * - We access exports directly from the module object\n *\n * Props can be:\n * 1. A function that takes a URL and returns props\n * 2. A direct object of props\n * 3. A renamed export (where the actual export name differs from the expected name)\n *\n * @param options.propsModule - The module object from ssrLoadModule or createBuildLoader\n * @param options.path - The normalized path to the module\n * @param options.url - The URL route this page handles\n * @param options.exportName - The name of the export to resolve (e.g. 'props')\n * @param options.temporaryReferences - WeakMap used to store and retrieve virtual module references\n *\n * @returns A result object containing:\n * - type: \"success\" | \"error\" | \"skip\"\n * - key: The export name if successful\n * - props: The resolved props if successful\n * - error: Error message if failed\n */\nexport const resolveProps = async <T, N extends string>({\n id,\n url,\n exportName,\n loader,\n}: ResolvePropsOptions<N>): Promise<ResolvePropsResult<T, N>> => {\n // Check if this is a stashed page that needs special handling\n const propsLoadResult = await (async (): Promise<\n | { type: \"success\"; key: string; module: { [key in N]: T } }\n | { type: \"error\"; error: Error; module?: never }\n > => {\n try {\n const result = await loader(id);\n return {\n type: \"success\",\n key: id,\n module: result,\n };\n } catch (error) {\n return {\n type: \"error\",\n error: toError(error),\n };\n }\n })();\n\n if (propsLoadResult.type !== \"success\") {\n return propsLoadResult;\n }\n const { module } = propsLoadResult;\n const props = module[exportName as N];\n // handle different props use-cases\n if (module instanceof Error) {\n return {\n type: \"error\",\n error: module,\n };\n } else if (!(exportName in module)) {\n return {\n type: \"success\",\n key: exportName,\n props: { url, ...module } as T,\n module,\n };\n } else if (!props) {\n return {\n type: \"success\",\n key: exportName,\n props: { url } as T,\n module: module as { [key in N]: T },\n };\n } else if (props instanceof Error) {\n return {\n type: \"error\",\n error: props,\n };\n } else if (typeof props === \"function\") {\n // Handle both class constructors and regular functions\n try {\n let propsResult;\n if (props.prototype && props.prototype.constructor) {\n // Class constructor case\n propsResult = new (props as new (url: string) => T)(url);\n } else {\n // Regular function case\n propsResult = props(url);\n }\n \n return {\n type: \"success\",\n key: exportName,\n props: propsResult instanceof Promise ? await propsResult : propsResult,\n module: module as { [key in N]: T },\n };\n } catch (error) {\n return {\n type: \"error\",\n error: toError(error),\n };\n }\n } else if (props instanceof Promise) {\n // object case\n try {\n return {\n type: \"success\",\n key: exportName,\n props: await props,\n module: propsLoadResult.module,\n };\n } catch (error) {\n return {\n type: \"error\",\n error: toError(error),\n };\n }\n } else if (Array.isArray(props)) {\n // array case\n try {\n return {\n type: \"success\",\n key: exportName,\n props: Object.fromEntries(\n props.map((prop) => (typeof prop === \"string\" ? [prop, prop] : prop))\n ) as T,\n module: propsLoadResult.module,\n };\n } catch (error) {\n return {\n type: \"error\",\n error: toError(error),\n };\n }\n } else if (typeof props === \"string\") {\n try {\n return {\n type: \"success\",\n key: exportName,\n props: JSON.parse(props),\n };\n } catch (error) {\n return {\n type: \"error\",\n error: toError(error),\n };\n }\n }\n return {\n type: \"success\",\n key: exportName,\n props: props,\n module: module as { [key in N]: T },\n };\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializeUserOptions.js","sources":["../../../plugin/helpers/serializeUserOptions.ts"],"sourcesContent":["import type { ResolvedConfig, ViteDevServer } from \"vite\";\nimport type {\n AutoDiscoveredFiles,\n ResolvedUserOptions,\n PagePropOpt,\n InlineCssOpt,\n} from \"../types.js\";\nimport { cleanObject } from \"./cleanObject.js\";\n\n// Common non-serializable functions in Vite's resolved config\nconst VITE_NON_SERIALIZABLE_FUNCTIONS = new Set([\n \"renderChunk\",\n \"buildStart\",\n \"buildEnd\",\n \"watchChange\",\n \"resolveId\",\n \"config\",\n \"output[].entryFileNames\",\n \"output[].chunkFileNames\",\n \"output[].assetFileNames\",\n \"transform\",\n \"handler\",\n \"configureServer\",\n \"shouldTransformCachedModule\",\n \"generateBundle\",\n \"renderStart\",\n \"writeBundle\",\n \"hotUpdate\",\n \"configResolved\",\n \"configurePreviewServer\",\n \"handleHotUpdate\",\n \"load\",\n \"augmentChunkHash\",\n \"closeBundle\",\n \"entryFileNames\",\n \"assetFileNames\",\n \"chunkFileNames\",\n \"createEnvironment\",\n \"sourcemapIgnoreList\",\n \"assetsInclude\",\n \"info\",\n \"warn\",\n \"warnOnce\",\n \"error\",\n \"clearScreen\",\n \"hasErrorLogged\",\n \"set\",\n \"plugins\",\n \"getSortedPlugins\",\n \"getSortedPluginHooks\",\n \"createResolver\",\n \"fsDenyGlob\",\n // Nested plugin functions\n \"plugins[].renderChunk\",\n \"plugins[].buildStart\",\n \"plugins[].buildEnd\",\n \"plugins[].watchChange\",\n \"plugins[].resolveId\",\n \"plugins[].config\",\n \"plugins[].transform\",\n \"plugins[].handler\",\n \"plugins[].configureServer\",\n \"plugins[].shouldTransformCachedModule\",\n \"plugins[].generateBundle\",\n \"plugins[].renderStart\",\n \"plugins[].writeBundle\",\n \"plugins[].hotUpdate\",\n \"plugins[].configResolved\",\n \"plugins[].configurePreviewServer\",\n \"plugins[].handleHotUpdate\",\n \"plugins[].load\",\n \"plugins[].augmentChunkHash\",\n \"plugins[].closeBundle\",\n \"plugins[].entryFileNames\",\n \"plugins[].assetFileNames\",\n \"plugins[].chunkFileNames\",\n \"plugins[].createEnvironment\",\n \"plugins[].sourcemapIgnoreList\",\n \"plugins[].assetsInclude\",\n]);\n\n// Common non-serializable functions in our plugin's options\nconst PLUGIN_NON_SERIALIZABLE_FUNCTIONS = new Set([\n \"Page\",\n \"props\",\n \"normalizer\",\n \"CssCollector\",\n \"Html\",\n \"onEvent\",\n \"onMetrics\",\n \"build.entryFile\",\n \"build.chunkFile\",\n \"build.assetFile\",\n \"build.pages\",\n \"autoDiscover\",\n]);\n\n// Helper function to serialize RegExp objects\nfunction serializeRegExp(regex: RegExp) {\n return {\n source: regex.source,\n flags: regex.flags,\n __isRegExp: true\n };\n}\n\n// Helper function to deserialize RegExp objects\nexport function deserializeRegExp(obj: any): any {\n if (obj && obj.__isRegExp) {\n return new RegExp(obj.source, obj.flags);\n }\n if (Array.isArray(obj)) {\n return obj.map(deserializeRegExp);\n }\n if (obj && typeof obj === 'object') {\n const result: any = {};\n for (const [key, value] of Object.entries(obj)) {\n result[key] = deserializeRegExp(value);\n }\n return result;\n }\n return obj;\n}\n\n// Helper function to recursively process objects for serialization\nexport function processForSerialization(obj: any): any {\n if (obj instanceof RegExp) {\n return serializeRegExp(obj);\n }\n if (Array.isArray(obj)) {\n return obj.map(processForSerialization);\n }\n if (obj && typeof obj === 'object') {\n const result: any = {};\n for (const [key, value] of Object.entries(obj)) {\n result[key] = processForSerialization(value);\n }\n return result;\n }\n return obj;\n}\n\nexport function serializeResolvedConfig<T extends ResolvedConfig>(\n config: T,\n knownNonSerializableFunctions: Set<string> = VITE_NON_SERIALIZABLE_FUNCTIONS\n) {\n const {\n getSortedPluginHooks,\n getSortedPlugins,\n assetsInclude,\n // extract known vite function properties\n ...handlerOptions\n } = config;\n\n // Clean the object to remove non-serializable properties and process RegExp objects\n return processForSerialization(cleanObject(handlerOptions, knownNonSerializableFunctions));\n}\n\n// For Vite's config\nexport const serializedDevServerConfig = <T extends ViteDevServer[\"config\"]>(\n config: T,\n customNonSerializableFunctions: Set<string> = PLUGIN_NON_SERIALIZABLE_FUNCTIONS\n) => {\n const {\n getSortedPluginHooks,\n getSortedPlugins,\n assetsInclude,\n build,\n ...handlerOptions\n } = config;\n return processForSerialization(cleanObject(\n handlerOptions,\n customNonSerializableFunctions\n ));\n};\n\n// For your own options (if you need custom non-serializable functions)\nexport const serializedOptions = <T extends PagePropOpt = PagePropOpt, InlineCSS extends InlineCssOpt = InlineCssOpt>(\n userOptions: ResolvedUserOptions<T, InlineCSS>,\n autoDiscoveredFiles: AutoDiscoveredFiles,\n customNonSerializableFunctions: Set<string> = PLUGIN_NON_SERIALIZABLE_FUNCTIONS\n) => {\n const {\n Page,\n props,\n normalizer,\n CssCollector,\n Html,\n onEvent,\n onMetrics,\n build,\n autoDiscover,\n ...handlerOptions\n } = userOptions;\n const { entryFile, chunkFile, assetFile, pages, ...buildOptions } = build ?? {};\n const result = {\n ...handlerOptions,\n build: {\n ...buildOptions,\n pages: autoDiscoveredFiles\n ? Array.from(autoDiscoveredFiles.urlMap.keys())\n : [],\n },\n };\n\n // Clean the object to remove non-serializable properties and process RegExp objects\n return processForSerialization(cleanObject(\n result,\n customNonSerializableFunctions\n ));\n};\n\nexport function hydrateUserOptions(userOptions: any) {\n if (!userOptions) return userOptions;\n \n // Restore RegExp objects\n if (userOptions.autoDiscover) {\n const { autoDiscover } = userOptions;\n for (const key in autoDiscover) {\n if (typeof autoDiscover[key] === 'string' && autoDiscover[key].startsWith('__REGEXP__')) {\n autoDiscover[key] = deserializeRegExp(autoDiscover[key]);\n }\n }\n }\n \n return userOptions;\n}\n"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { SourceMap } from "../types/sourceMap.js";
2
- export declare function encodeVLQ(numbers: number[]): string;
3
- export declare function decodeVLQ(str: string): number[];
4
- export declare function readMappings(mappings: string, callback: (generatedLine: number, generatedColumn: number, sourceIndex: number, originalLine: number, originalColumn: number, nameIndex: number) => void): void;
5
- export declare function createMappingsSerializer(): (generatedLine: number, generatedColumn: number, originalFile: number, originalLine: number, originalColumn: number, nameIndex: number) => string;
6
- export declare function createSourceMap(originalSource: string): SourceMap;
7
- export declare function updateSourceMap(sourceMap: SourceMap, originalSource: string): void;
8
- //# sourceMappingURL=sourceMap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sourceMap.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/sourceMap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAqBnD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB/C;AAED,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,CACR,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,KACd,IAAI,QA4CV;AAED,wBAAgB,wBAAwB,KASpC,eAAe,MAAM,EACrB,iBAAiB,MAAM,EACvB,cAAc,MAAM,EACpB,cAAc,MAAM,EACpB,gBAAgB,MAAM,EACtB,WAAW,MAAM,KAChB,MAAM,CAiCV;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAUjE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,QAI3E"}
@@ -1,136 +0,0 @@
1
- import { basename } from "path";
2
- // VLQ encoding helpers
3
- const VLQ_SHIFT = 5;
4
- const VLQ_CONTINUATION_BIT = 1 << VLQ_SHIFT;
5
- const VLQ_VALUE_MASK = VLQ_CONTINUATION_BIT - 1;
6
- const BASE64_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
7
- export function encodeVLQ(numbers) {
8
- return numbers
9
- .map((num) => {
10
- // Convert to VLQ
11
- const vlq = num < 0 ? (-num << 1) | 1 : num << 1;
12
- let result = "";
13
- let value = vlq;
14
- do {
15
- let digit = value & VLQ_VALUE_MASK;
16
- value >>>= VLQ_SHIFT;
17
- if (value > 0) {
18
- digit |= VLQ_CONTINUATION_BIT;
19
- }
20
- result += BASE64_CHARS[digit];
21
- } while (value > 0);
22
- return result;
23
- })
24
- .join("");
25
- }
26
- export function decodeVLQ(str) {
27
- const numbers = [];
28
- let value = 0;
29
- let shift = 0;
30
- let index = 0;
31
- while (index < str.length && !/[,;]/.test(str[index])) {
32
- const digit = BASE64_CHARS.indexOf(str[index]);
33
- if (digit === -1)
34
- break;
35
- value += (digit & VLQ_VALUE_MASK) << shift;
36
- if ((digit & VLQ_CONTINUATION_BIT) === 0) {
37
- const negate = value & 1;
38
- value >>>= 1;
39
- numbers.push(negate ? -value : value);
40
- value = shift = 0;
41
- }
42
- else {
43
- shift += VLQ_SHIFT;
44
- }
45
- index++;
46
- }
47
- return numbers;
48
- }
49
- export function readMappings(mappings, callback) {
50
- let line = 1;
51
- let column = 0;
52
- let sourceIndex = 0;
53
- let originalLine = 1;
54
- let originalColumn = 0;
55
- let nameIndex = 0;
56
- const segments = mappings.split(";");
57
- for (let i = 0; i < segments.length; i++) {
58
- const segment = segments[i];
59
- if (segment === "") {
60
- line++;
61
- column = 0;
62
- continue;
63
- }
64
- const parts = segment.split(",");
65
- for (let j = 0; j < parts.length; j++) {
66
- const part = parts[j];
67
- if (part === "")
68
- continue;
69
- const numbers = decodeVLQ(part);
70
- column += numbers[0];
71
- if (numbers.length > 1) {
72
- sourceIndex += numbers[1];
73
- originalLine += numbers[2];
74
- originalColumn += numbers[3];
75
- if (numbers.length > 4) {
76
- nameIndex += numbers[4];
77
- }
78
- }
79
- callback(line, column, sourceIndex, originalLine, originalColumn, nameIndex);
80
- }
81
- }
82
- }
83
- export function createMappingsSerializer() {
84
- let previousGeneratedLine = 1;
85
- let previousGeneratedColumn = 0;
86
- let previousOriginalFile = 0;
87
- let previousOriginalLine = 0;
88
- let previousOriginalColumn = 0;
89
- let previousNameIndex = 0;
90
- return function (generatedLine, generatedColumn, originalFile, originalLine, originalColumn, nameIndex) {
91
- // Reset column when moving to a new line
92
- if (generatedLine > previousGeneratedLine) {
93
- previousGeneratedColumn = 0;
94
- let lines = "";
95
- for (let i = previousGeneratedLine; i < generatedLine; i++) {
96
- lines += ";";
97
- }
98
- previousGeneratedLine = generatedLine;
99
- if (lines)
100
- return lines;
101
- }
102
- // Calculate deltas
103
- const segment = [
104
- generatedColumn - previousGeneratedColumn,
105
- originalFile - previousOriginalFile,
106
- originalLine - previousOriginalLine,
107
- originalColumn - previousOriginalColumn,
108
- ];
109
- if (nameIndex >= 0) {
110
- segment.push(nameIndex - previousNameIndex);
111
- }
112
- // Update previous values
113
- previousGeneratedColumn = generatedColumn;
114
- previousOriginalFile = originalFile;
115
- previousOriginalLine = originalLine;
116
- previousOriginalColumn = originalColumn;
117
- previousNameIndex = nameIndex;
118
- return encodeVLQ(segment) + ",";
119
- };
120
- }
121
- export function createSourceMap(originalSource) {
122
- return {
123
- version: 3,
124
- file: basename(originalSource),
125
- sources: [originalSource],
126
- sourcesContent: [originalSource],
127
- names: [],
128
- mappings: "AAAA;", // Simple line mapping
129
- sourceRoot: "",
130
- };
131
- }
132
- export function updateSourceMap(sourceMap, originalSource) {
133
- // Update the source map with the transformed source
134
- sourceMap.sourcesContent = [originalSource];
135
- sourceMap.mappings = "AAAA;"; // Simple line mapping
136
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"stashReturnValue.js","sources":["../../../plugin/helpers/stashReturnValue.ts"],"sourcesContent":["const stashedReturnValue = new Map<string, any>();\nexport const stashReturnValue = <FN extends (...args: any[]) => unknown>(\n fn: FN\n): FN => {\n return ((...args: Parameters<FN>): ReturnType<FN> => {\n const id = args\n .map((arg) =>!arg ? '' : typeof arg === \"string\" ? arg : typeof arg === \"object\" && 'id' in arg ? arg.id : '')\n .join(\"_\");\n if (stashedReturnValue.has(id)) {\n return stashedReturnValue.get(id);\n }\n const result = fn(...args);\n stashedReturnValue.set(id, result);\n return result as never;\n }) as FN;\n};"],"names":[],"mappings":";;;;;AAAA,MAAM,kBAAA,uBAAyB,GAAiB,EAAA;AACnC,MAAA,gBAAA,GAAmB,CAC9B,EACO,KAAA;AACP,EAAA,OAAQ,IAAI,IAAyC,KAAA;AACnD,IAAM,MAAA,EAAA,GAAK,KACR,GAAI,CAAA,CAAC,QAAO,CAAC,GAAA,GAAM,EAAK,GAAA,OAAO,GAAQ,KAAA,QAAA,GAAW,MAAM,OAAO,GAAA,KAAQ,YAAY,IAAQ,IAAA,GAAA,GAAM,IAAI,EAAK,GAAA,EAAE,CAC5G,CAAA,IAAA,CAAK,GAAG,CAAA;AACX,IAAI,IAAA,kBAAA,CAAmB,GAAI,CAAA,EAAE,CAAG,EAAA;AAC9B,MAAO,OAAA,kBAAA,CAAmB,IAAI,EAAE,CAAA;AAAA;AAElC,IAAM,MAAA,MAAA,GAAS,EAAG,CAAA,GAAG,IAAI,CAAA;AACzB,IAAmB,kBAAA,CAAA,GAAA,CAAI,IAAI,MAAM,CAAA;AACjC,IAAO,OAAA,MAAA;AAAA,GACT;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tryManifest.js","sources":["../../../plugin/helpers/tryManifest.ts"],"sourcesContent":["import { join, resolve } from \"node:path\";\n\nimport type { Manifest } from \"vite\";\nimport { readFile } from \"node:fs/promises\";\n\ntype TryManifestOptions<SSR extends boolean = false> = {\n root: string;\n outDir: string;\n ssrManifest?: SSR;\n preserveModulesRoot?: string;\n manifestPath?: string | boolean | undefined;\n};\n\nexport async function tryManifest<SSR extends boolean>(\n options: TryManifestOptions<SSR>\n): Promise<\n | {\n type: \"success\";\n manifest: SSR extends true ? Record<string, string[]> : Manifest;\n error?: never;\n }\n | {\n type: \"error\";\n error: Error;\n manifest?: never;\n }\n | {\n type: \"skip\";\n }\n> {\n let path = options.manifestPath;\n if (path === false) {\n return {\n type: \"skip\",\n };\n }\n if (options.ssrManifest) {\n path = join(\".vite\", \"ssr-manifest.json\");\n } else {\n path = join(\".vite\", \"manifest.json\");\n }\n try {\n const result = JSON.parse(\n await readFile(resolve(options.root, options.outDir, path), \"utf-8\")\n );\n return {\n type: \"success\",\n manifest: result,\n };\n } catch (e) {\n return {\n type: \"error\",\n error: e as Error,\n };\n }\n}\n"],"names":[],"mappings":";;;;;;;;AAaA,eAAsB,YACpB,OAeA,EAAA;AACA,EAAA,IAAI,OAAO,OAAQ,CAAA,YAAA;AACnB,EAAA,IAAI,SAAS,KAAO,EAAA;AAClB,IAAO,OAAA;AAAA,MACL,IAAM,EAAA;AAAA,KACR;AAAA;AAEF,EAAA,IAAI,QAAQ,WAAa,EAAA;AACvB,IAAO,IAAA,GAAA,IAAA,CAAK,SAAS,mBAAmB,CAAA;AAAA,GACnC,MAAA;AACL,IAAO,IAAA,GAAA,IAAA,CAAK,SAAS,eAAe,CAAA;AAAA;AAEtC,EAAI,IAAA;AACF,IAAA,MAAM,SAAS,IAAK,CAAA,KAAA;AAAA,MAClB,MAAM,SAAS,OAAQ,CAAA,OAAA,CAAQ,MAAM,OAAQ,CAAA,MAAA,EAAQ,IAAI,CAAA,EAAG,OAAO;AAAA,KACrE;AACA,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,SAAA;AAAA,MACN,QAAU,EAAA;AAAA,KACZ;AAAA,WACO,CAAG,EAAA;AACV,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,KAAO,EAAA;AAAA,KACT;AAAA;AAEJ;;;;"}