vite-plugin-react-server 1.1.20 → 1.2.0-alpha.1

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 (824) hide show
  1. package/README.md +95 -396
  2. package/dist/_virtual/dynamic-import-helper.js +1 -1
  3. package/dist/client.d.ts +2 -1
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +6 -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 +294 -121
  33. package/dist/plugin/config/defaults.d.ts.map +1 -1
  34. package/dist/plugin/config/defaults.js +156 -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 +1 -1
  62. package/dist/plugin/config/resolveEnv.d.ts.map +1 -1
  63. package/dist/plugin/config/resolveEnv.js +45 -28
  64. package/dist/plugin/config/resolveOptions.d.ts +13 -3
  65. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  66. package/dist/plugin/config/resolveOptions.js +230 -219
  67. package/dist/plugin/config/resolvePages.js +1 -1
  68. package/dist/plugin/config/resolvePatternWithValues.d.ts +39 -0
  69. package/dist/plugin/config/resolvePatternWithValues.d.ts.map +1 -0
  70. package/dist/plugin/config/resolvePatternWithValues.js +36 -0
  71. package/dist/plugin/config/resolveRegExp.d.ts +29 -0
  72. package/dist/plugin/config/resolveRegExp.d.ts.map +1 -0
  73. package/dist/plugin/config/resolveRegExp.js +39 -0
  74. package/dist/plugin/config/resolveUrlOption.d.ts +37 -6
  75. package/dist/plugin/config/resolveUrlOption.d.ts.map +1 -1
  76. package/dist/plugin/config/resolveUrlOption.js +42 -12
  77. package/dist/plugin/config/resolveUserConfig.d.ts +5 -4
  78. package/dist/plugin/config/resolveUserConfig.d.ts.map +1 -1
  79. package/dist/plugin/config/resolveUserConfig.js +98 -47
  80. package/dist/plugin/env/createConfigEnv.d.ts +7 -0
  81. package/dist/plugin/env/createConfigEnv.d.ts.map +1 -0
  82. package/dist/plugin/env/createConfigEnv.js +30 -0
  83. package/dist/plugin/env/getArgValue.d.ts +8 -0
  84. package/dist/plugin/env/getArgValue.d.ts.map +1 -0
  85. package/dist/plugin/env/getArgValue.js +32 -0
  86. package/dist/plugin/env/getEnvKey.d.ts +40 -0
  87. package/dist/plugin/env/getEnvKey.d.ts.map +1 -0
  88. package/dist/plugin/env/getEnvKey.js +24 -0
  89. package/dist/plugin/env/index.d.ts +3 -0
  90. package/dist/plugin/env/index.d.ts.map +1 -1
  91. package/dist/plugin/env/index.js +3 -0
  92. package/dist/plugin/env/plugin.d.ts +6 -0
  93. package/dist/plugin/env/plugin.d.ts.map +1 -1
  94. package/dist/plugin/env/plugin.js +69 -93
  95. package/dist/plugin/env/userConfigEnv.d.ts +2 -0
  96. package/dist/plugin/env/userConfigEnv.d.ts.map +1 -0
  97. package/dist/plugin/env/userConfigEnv.js +21 -0
  98. package/dist/plugin/error/directiveError.d.ts +13 -0
  99. package/dist/plugin/error/directiveError.d.ts.map +1 -0
  100. package/dist/plugin/error/directiveError.js +21 -0
  101. package/dist/plugin/error/enhanceError.d.ts +14 -0
  102. package/dist/plugin/error/enhanceError.d.ts.map +1 -0
  103. package/dist/plugin/error/enhanceError.js +24 -0
  104. package/dist/plugin/error/index.d.ts +4 -0
  105. package/dist/plugin/error/index.d.ts.map +1 -0
  106. package/dist/plugin/error/index.js +9 -0
  107. package/dist/plugin/error/logError.d.ts +3 -0
  108. package/dist/plugin/error/logError.d.ts.map +1 -0
  109. package/dist/plugin/error/logError.js +50 -0
  110. package/dist/plugin/error/serializeError.d.ts +7 -0
  111. package/dist/plugin/error/serializeError.d.ts.map +1 -0
  112. package/dist/plugin/error/serializeError.js +37 -0
  113. package/dist/plugin/error/toError.d.ts +1 -8
  114. package/dist/plugin/error/toError.d.ts.map +1 -1
  115. package/dist/plugin/error/toError.js +62 -34
  116. package/dist/plugin/file-preserver/plugin.js +93 -105
  117. package/dist/plugin/getNodeEnv.d.ts +11 -0
  118. package/dist/plugin/getNodeEnv.d.ts.map +1 -0
  119. package/dist/plugin/getNodeEnv.js +17 -0
  120. package/dist/plugin/helpers/cleanObject.d.ts.map +1 -1
  121. package/dist/plugin/helpers/cleanObject.js +2 -1
  122. package/dist/plugin/helpers/collectManifestCss.js +1 -1
  123. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +6 -4
  124. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
  125. package/dist/plugin/helpers/collectViteModuleGraphCss.js +15 -9
  126. package/dist/plugin/helpers/createCssProps.d.ts +3 -4
  127. package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
  128. package/dist/plugin/helpers/createCssProps.js +16 -15
  129. package/dist/plugin/helpers/createEventHandler.d.ts +2 -2
  130. package/dist/plugin/helpers/createEventHandler.d.ts.map +1 -1
  131. package/dist/plugin/helpers/createEventHandler.js +1 -1
  132. package/dist/plugin/helpers/createHandler.d.ts +10 -8
  133. package/dist/plugin/helpers/createHandler.d.ts.map +1 -1
  134. package/dist/plugin/helpers/createHandler.js +11 -5
  135. package/dist/plugin/helpers/createRscStream.d.ts +18 -5
  136. package/dist/plugin/helpers/createRscStream.d.ts.map +1 -1
  137. package/dist/plugin/helpers/createRscStream.js +53 -15
  138. package/dist/plugin/helpers/formatMetrics.d.ts +1 -5
  139. package/dist/plugin/helpers/formatMetrics.d.ts.map +1 -1
  140. package/dist/plugin/helpers/formatMetrics.js +2 -39
  141. package/dist/plugin/helpers/getBundleManifest.d.ts.map +1 -1
  142. package/dist/plugin/helpers/getBundleManifest.js +9 -2
  143. package/dist/plugin/helpers/getRouteFiles.d.ts +30 -2
  144. package/dist/plugin/helpers/getRouteFiles.d.ts.map +1 -1
  145. package/dist/plugin/helpers/getRouteFiles.js +100 -8
  146. package/dist/plugin/helpers/handleServerAction.d.ts +8 -7
  147. package/dist/plugin/helpers/handleServerAction.d.ts.map +1 -1
  148. package/dist/plugin/helpers/handleServerAction.js +7 -3
  149. package/dist/plugin/helpers/hydrateUserOptions.d.ts +9 -0
  150. package/dist/plugin/helpers/hydrateUserOptions.d.ts.map +1 -0
  151. package/dist/plugin/helpers/hydrateUserOptions.js +22 -0
  152. package/dist/plugin/helpers/index.d.ts +2 -0
  153. package/dist/plugin/helpers/index.d.ts.map +1 -1
  154. package/dist/plugin/helpers/index.js +31 -31
  155. package/dist/plugin/helpers/inputNormalizer.d.ts +1 -1
  156. package/dist/plugin/helpers/inputNormalizer.d.ts.map +1 -1
  157. package/dist/plugin/helpers/inputNormalizer.js +33 -20
  158. package/dist/plugin/helpers/metrics.d.ts +4 -10
  159. package/dist/plugin/helpers/metrics.d.ts.map +1 -1
  160. package/dist/plugin/helpers/metrics.js +3 -59
  161. package/dist/plugin/helpers/moduleRefs.js +1 -1
  162. package/dist/plugin/helpers/moduleResolver.d.ts +24 -2
  163. package/dist/plugin/helpers/moduleResolver.d.ts.map +1 -1
  164. package/dist/plugin/helpers/moduleResolver.js +61 -22
  165. package/dist/plugin/helpers/requestInfo.d.ts +31 -4
  166. package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
  167. package/dist/plugin/helpers/requestInfo.js +62 -35
  168. package/dist/plugin/helpers/requestToRoute.d.ts +1 -1
  169. package/dist/plugin/helpers/requestToRoute.d.ts.map +1 -1
  170. package/dist/plugin/helpers/requestToRoute.js +17 -9
  171. package/dist/plugin/helpers/resolveComponent.d.ts +57 -0
  172. package/dist/plugin/helpers/resolveComponent.d.ts.map +1 -0
  173. package/dist/plugin/helpers/resolveComponent.js +71 -0
  174. package/dist/plugin/helpers/resolveComponents.d.ts +27 -0
  175. package/dist/plugin/helpers/resolveComponents.d.ts.map +1 -0
  176. package/dist/plugin/helpers/resolveComponents.js +146 -0
  177. package/dist/plugin/helpers/resolvePage.d.ts +15 -11
  178. package/dist/plugin/helpers/resolvePage.d.ts.map +1 -1
  179. package/dist/plugin/helpers/resolvePage.js +11 -7
  180. package/dist/plugin/helpers/resolvePageAndProps.d.ts +3 -10
  181. package/dist/plugin/helpers/resolvePageAndProps.d.ts.map +1 -1
  182. package/dist/plugin/helpers/resolvePageAndProps.js +28 -18
  183. package/dist/plugin/helpers/resolveProps.d.ts +13 -7
  184. package/dist/plugin/helpers/resolveProps.d.ts.map +1 -1
  185. package/dist/plugin/helpers/resolveProps.js +55 -25
  186. package/dist/plugin/helpers/resolveUserComponents.d.ts +33 -0
  187. package/dist/plugin/helpers/resolveUserComponents.d.ts.map +1 -0
  188. package/dist/plugin/helpers/resolveUserComponents.js +163 -0
  189. package/dist/plugin/helpers/serializeUserOptions.d.ts +7 -7
  190. package/dist/plugin/helpers/serializeUserOptions.d.ts.map +1 -1
  191. package/dist/plugin/helpers/serializeUserOptions.js +127 -42
  192. package/dist/plugin/helpers/stashReturnValue.d.ts +2 -1
  193. package/dist/plugin/helpers/stashReturnValue.d.ts.map +1 -1
  194. package/dist/plugin/helpers/stashReturnValue.js +6 -3
  195. package/dist/plugin/helpers/tryManifest.d.ts +1 -2
  196. package/dist/plugin/helpers/tryManifest.d.ts.map +1 -1
  197. package/dist/plugin/helpers/tryManifest.js +1 -1
  198. package/dist/plugin/loader/createDefaultLoader.d.ts +19 -8
  199. package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
  200. package/dist/plugin/loader/createDefaultLoader.js +69 -107
  201. package/dist/plugin/loader/createTransformer.d.ts +6 -0
  202. package/dist/plugin/loader/createTransformer.d.ts.map +1 -0
  203. package/dist/plugin/loader/createTransformer.js +92 -0
  204. package/dist/plugin/loader/{css-loader.development.d.ts → css-loader.d.ts} +6 -8
  205. package/dist/plugin/loader/css-loader.d.ts.map +1 -0
  206. package/dist/plugin/loader/css-loader.js +134 -0
  207. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts +4 -0
  208. package/dist/plugin/loader/directives/addLocalExportedNames.d.ts.map +1 -0
  209. package/dist/plugin/loader/directives/addLocalExportedNames.js +57 -0
  210. package/dist/plugin/loader/directives/analyzeDirectives.d.ts +9 -0
  211. package/dist/plugin/loader/directives/analyzeDirectives.d.ts.map +1 -0
  212. package/dist/plugin/loader/directives/analyzeDirectives.js +221 -0
  213. package/dist/plugin/loader/directives/analyzeModule.d.ts +7 -0
  214. package/dist/plugin/loader/directives/analyzeModule.d.ts.map +1 -0
  215. package/dist/plugin/loader/directives/analyzeModule.js +48 -0
  216. package/dist/plugin/loader/directives/collectExports.d.ts +13 -0
  217. package/dist/plugin/loader/directives/collectExports.d.ts.map +1 -0
  218. package/dist/plugin/loader/directives/collectExports.js +116 -0
  219. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts +6 -0
  220. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts.map +1 -0
  221. package/dist/plugin/loader/directives/collectExportsFromModule.js +24 -0
  222. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts +3 -0
  223. package/dist/plugin/loader/directives/findDirectiveMatches.d.ts.map +1 -0
  224. package/dist/plugin/loader/directives/findDirectiveMatches.js +46 -0
  225. package/dist/plugin/loader/directives/getExportedName.d.ts +3 -0
  226. package/dist/plugin/loader/directives/getExportedName.d.ts.map +1 -0
  227. package/dist/plugin/loader/directives/getExportedName.js +59 -0
  228. package/dist/plugin/loader/directives/getExports.d.ts +7 -0
  229. package/dist/plugin/loader/directives/getExports.d.ts.map +1 -0
  230. package/dist/plugin/loader/directives/getExports.js +28 -0
  231. package/dist/plugin/loader/directives/getFunctionBody.d.ts +3 -0
  232. package/dist/plugin/loader/directives/getFunctionBody.d.ts.map +1 -0
  233. package/dist/plugin/loader/directives/getFunctionBody.js +31 -0
  234. package/dist/plugin/loader/directives/getFunctionName.d.ts +10 -0
  235. package/dist/plugin/loader/directives/getFunctionName.d.ts.map +1 -0
  236. package/dist/plugin/loader/directives/getFunctionName.js +42 -0
  237. package/dist/plugin/loader/directives/getQualifiedName.d.ts +3 -0
  238. package/dist/plugin/loader/directives/getQualifiedName.d.ts.map +1 -0
  239. package/dist/plugin/loader/directives/getQualifiedName.js +65 -0
  240. package/dist/plugin/loader/directives/index.d.ts +14 -0
  241. package/dist/plugin/loader/directives/index.d.ts.map +1 -0
  242. package/dist/plugin/loader/directives/index.js +18 -0
  243. package/dist/plugin/loader/directives/processFunctionNode.d.ts +4 -0
  244. package/dist/plugin/loader/directives/processFunctionNode.d.ts.map +1 -0
  245. package/dist/plugin/loader/directives/processFunctionNode.js +86 -0
  246. package/dist/plugin/loader/directives/typeGuards.d.ts +37 -0
  247. package/dist/plugin/loader/directives/typeGuards.d.ts.map +1 -0
  248. package/dist/plugin/loader/directives/typeGuards.js +100 -0
  249. package/dist/plugin/loader/directives/types.d.ts +154 -0
  250. package/dist/plugin/loader/directives/types.d.ts.map +1 -0
  251. package/dist/plugin/loader/directives/utils.d.ts +14 -0
  252. package/dist/plugin/loader/directives/utils.d.ts.map +1 -0
  253. package/dist/plugin/loader/directives/utils.js +21 -0
  254. package/dist/plugin/loader/env-loader.d.ts +12 -0
  255. package/dist/plugin/loader/env-loader.d.ts.map +1 -0
  256. package/dist/plugin/loader/env-loader.js +88 -0
  257. package/dist/plugin/loader/index.d.ts +8 -1
  258. package/dist/plugin/loader/index.d.ts.map +1 -1
  259. package/dist/plugin/loader/index.js +13 -4
  260. package/dist/plugin/loader/parse.d.ts +12 -2
  261. package/dist/plugin/loader/parse.d.ts.map +1 -1
  262. package/dist/plugin/loader/parse.js +28 -5
  263. package/dist/plugin/loader/react-loader.d.ts +22 -1
  264. package/dist/plugin/loader/react-loader.d.ts.map +1 -1
  265. package/dist/plugin/loader/react-loader.js +169 -6
  266. package/dist/plugin/loader/removeDirectives.d.ts +5 -0
  267. package/dist/plugin/loader/removeDirectives.d.ts.map +1 -0
  268. package/dist/plugin/loader/removeDirectives.js +17 -0
  269. package/dist/plugin/loader/removeRanges.d.ts +5 -0
  270. package/dist/plugin/loader/removeRanges.d.ts.map +1 -0
  271. package/dist/plugin/loader/removeRanges.js +20 -0
  272. package/dist/plugin/loader/sourceMap.d.ts +16 -24
  273. package/dist/plugin/loader/sourceMap.d.ts.map +1 -1
  274. package/dist/plugin/loader/sourceMap.js +125 -97
  275. package/dist/plugin/loader/transformClientModule.d.ts +9 -0
  276. package/dist/plugin/loader/transformClientModule.d.ts.map +1 -0
  277. package/dist/plugin/loader/transformClientModule.js +46 -0
  278. package/dist/plugin/loader/transformModule.d.ts +6 -0
  279. package/dist/plugin/loader/transformModule.d.ts.map +1 -0
  280. package/dist/plugin/loader/transformModule.js +37 -0
  281. package/dist/plugin/loader/transformModuleIfNeeded.d.ts +12 -1
  282. package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
  283. package/dist/plugin/loader/transformModuleIfNeeded.js +9 -20
  284. package/dist/plugin/loader/transformNonServerEnvironment.d.ts +10 -0
  285. package/dist/plugin/loader/transformNonServerEnvironment.d.ts.map +1 -0
  286. package/dist/plugin/loader/transformNonServerEnvironment.js +72 -0
  287. package/dist/plugin/loader/transformServerModule.d.ts +10 -0
  288. package/dist/plugin/loader/transformServerModule.d.ts.map +1 -0
  289. package/dist/plugin/loader/transformServerModule.js +103 -0
  290. package/dist/plugin/loader/transformWithAcornLoose.d.ts +12 -0
  291. package/dist/plugin/loader/transformWithAcornLoose.d.ts.map +1 -0
  292. package/dist/plugin/loader/transformWithAcornLoose.js +16 -0
  293. package/dist/plugin/loader/types.d.ts +48 -13
  294. package/dist/plugin/loader/types.d.ts.map +1 -1
  295. package/dist/plugin/metrics/collectStreamMetrics.d.ts +9 -0
  296. package/dist/plugin/metrics/collectStreamMetrics.d.ts.map +1 -0
  297. package/dist/plugin/metrics/collectStreamMetrics.js +35 -0
  298. package/dist/plugin/metrics/createRenderMetrics.d.ts +3 -0
  299. package/dist/plugin/metrics/createRenderMetrics.d.ts.map +1 -0
  300. package/dist/plugin/metrics/createRenderMetrics.js +24 -0
  301. package/dist/plugin/metrics/createStreamMetrics.d.ts +3 -0
  302. package/dist/plugin/metrics/createStreamMetrics.d.ts.map +1 -0
  303. package/dist/plugin/metrics/createStreamMetrics.js +19 -0
  304. package/dist/plugin/metrics/formatMetrics.d.ts +6 -3
  305. package/dist/plugin/metrics/formatMetrics.d.ts.map +1 -1
  306. package/dist/plugin/metrics/formatMetrics.js +5 -2
  307. package/dist/plugin/metrics/index.d.ts +3 -1
  308. package/dist/plugin/metrics/index.d.ts.map +1 -1
  309. package/dist/plugin/metrics/index.js +9 -1
  310. package/dist/plugin/metrics/types.d.ts +23 -0
  311. package/dist/plugin/metrics/types.d.ts.map +1 -0
  312. package/dist/plugin/metrics/types.js +1 -0
  313. package/dist/plugin/plugin.client.d.ts +23 -2
  314. package/dist/plugin/plugin.client.d.ts.map +1 -1
  315. package/dist/plugin/plugin.client.js +14 -9
  316. package/dist/plugin/plugin.server.d.ts +13 -2
  317. package/dist/plugin/plugin.server.d.ts.map +1 -1
  318. package/dist/plugin/plugin.server.js +15 -16
  319. package/dist/plugin/process-env.d.ts +18 -6
  320. package/dist/plugin/process-env.d.ts.map +1 -1
  321. package/dist/plugin/process-env.js +17 -0
  322. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts +11 -0
  323. package/dist/plugin/react-client/cleanupWorkerServerAction.d.ts.map +1 -0
  324. package/dist/plugin/react-client/cleanupWorkerServerAction.js +18 -0
  325. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts +9 -9
  326. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +1 -1
  327. package/dist/plugin/react-client/configureWorkerRequestHandler.js +31 -26
  328. package/dist/plugin/react-client/createMessageHandlers.d.ts +1 -1
  329. package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
  330. package/dist/plugin/react-client/createMessageHandlers.js +15 -3
  331. package/dist/plugin/react-client/createWorkerStream.d.ts +12 -10
  332. package/dist/plugin/react-client/createWorkerStream.d.ts.map +1 -1
  333. package/dist/plugin/react-client/createWorkerStream.js +27 -29
  334. package/dist/plugin/react-client/handleWorkerRscStream.d.ts +13 -8
  335. package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +1 -1
  336. package/dist/plugin/react-client/handleWorkerRscStream.js +51 -24
  337. package/dist/plugin/react-client/handleWorkerServerAction.d.ts +2 -1
  338. package/dist/plugin/react-client/handleWorkerServerAction.d.ts.map +1 -1
  339. package/dist/plugin/react-client/handleWorkerServerAction.js +43 -28
  340. package/dist/plugin/react-client/index.d.ts +4 -1
  341. package/dist/plugin/react-client/index.d.ts.map +1 -1
  342. package/dist/plugin/react-client/index.js +10 -1
  343. package/dist/plugin/react-client/plugin.d.ts +5 -3
  344. package/dist/plugin/react-client/plugin.d.ts.map +1 -1
  345. package/dist/plugin/react-client/plugin.js +9 -11
  346. package/dist/plugin/react-client/restartWorker.d.ts +5 -4
  347. package/dist/plugin/react-client/restartWorker.d.ts.map +1 -1
  348. package/dist/plugin/react-client/restartWorker.js +14 -13
  349. package/dist/plugin/react-server/configureReactServer.d.ts +5 -4
  350. package/dist/plugin/react-server/configureReactServer.d.ts.map +1 -1
  351. package/dist/plugin/react-server/configureReactServer.js +106 -47
  352. package/dist/plugin/react-server/handleServerAction.d.ts +3 -2
  353. package/dist/plugin/react-server/handleServerAction.d.ts.map +1 -1
  354. package/dist/plugin/react-server/handleServerAction.js +14 -20
  355. package/dist/plugin/react-server/plugin.d.ts +3 -4
  356. package/dist/plugin/react-server/plugin.d.ts.map +1 -1
  357. package/dist/plugin/react-server/plugin.js +30 -31
  358. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts +8 -6
  359. package/dist/plugin/react-static/collectHtmlWorkerContent.d.ts.map +1 -1
  360. package/dist/plugin/react-static/collectHtmlWorkerContent.js +4 -4
  361. package/dist/plugin/react-static/collectRscContent.d.ts +8 -6
  362. package/dist/plugin/react-static/collectRscContent.d.ts.map +1 -1
  363. package/dist/plugin/react-static/collectRscContent.js +4 -4
  364. package/dist/plugin/react-static/configurePreviewServer.d.ts +6 -4
  365. package/dist/plugin/react-static/configurePreviewServer.d.ts.map +1 -1
  366. package/dist/plugin/react-static/configurePreviewServer.js +32 -36
  367. package/dist/plugin/react-static/createBuildLoader.d.ts +5 -5
  368. package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -1
  369. package/dist/plugin/react-static/createBuildLoader.js +122 -30
  370. package/dist/plugin/react-static/fileWriter.js +1 -1
  371. package/dist/plugin/react-static/plugin.d.ts +3 -4
  372. package/dist/plugin/react-static/plugin.d.ts.map +1 -1
  373. package/dist/plugin/react-static/plugin.js +62 -47
  374. package/dist/plugin/react-static/renderPage.d.ts +4 -2
  375. package/dist/plugin/react-static/renderPage.d.ts.map +1 -1
  376. package/dist/plugin/react-static/renderPage.js +21 -17
  377. package/dist/plugin/react-static/renderPages.d.ts +4 -2
  378. package/dist/plugin/react-static/renderPages.d.ts.map +1 -1
  379. package/dist/plugin/react-static/renderPages.js +7 -6
  380. package/dist/plugin/react-static/renderStreams.d.ts +5 -22
  381. package/dist/plugin/react-static/renderStreams.d.ts.map +1 -1
  382. package/dist/plugin/react-static/renderStreams.js +6 -6
  383. package/dist/plugin/react-static/rscToHtmlStream.d.ts.map +1 -1
  384. package/dist/plugin/react-static/rscToHtmlStream.js +1 -1
  385. package/dist/plugin/react-static/temporaryReferences.js +1 -1
  386. package/dist/plugin/react-static/types.d.ts +0 -1
  387. package/dist/plugin/react-static/types.d.ts.map +1 -1
  388. package/dist/plugin/root.js +1 -1
  389. package/dist/plugin/transformer/plugin.client.d.ts +29 -1
  390. package/dist/plugin/transformer/plugin.client.d.ts.map +1 -1
  391. package/dist/plugin/transformer/plugin.client.js +96 -1
  392. package/dist/plugin/transformer/plugin.js +1 -1
  393. package/dist/plugin/transformer/plugin.server.d.ts +5 -3
  394. package/dist/plugin/transformer/plugin.server.d.ts.map +1 -1
  395. package/dist/plugin/transformer/plugin.server.js +60 -69
  396. package/dist/plugin/types/css-tracking.d.ts +2 -2
  397. package/dist/plugin/types/css-tracking.d.ts.map +1 -1
  398. package/dist/plugin/types.d.ts +451 -192
  399. package/dist/plugin/types.d.ts.map +1 -1
  400. package/dist/plugin/types.js +2 -1
  401. package/dist/plugin/utils/callServer.js +1 -1
  402. package/dist/plugin/utils/createCallServer.d.ts +1 -1
  403. package/dist/plugin/utils/createCallServer.d.ts.map +1 -1
  404. package/dist/plugin/utils/createCallServer.js +1 -1
  405. package/dist/plugin/utils/createReactFetcher.d.ts +2 -3
  406. package/dist/plugin/utils/createReactFetcher.d.ts.map +1 -1
  407. package/dist/plugin/utils/createReactFetcher.js +1 -1
  408. package/dist/plugin/utils/env.js +1 -1
  409. package/dist/plugin/utils/envUrls.node.d.ts.map +1 -1
  410. package/dist/plugin/utils/envUrls.node.js +3 -2
  411. package/dist/plugin/utils/index.d.ts +1 -0
  412. package/dist/plugin/utils/index.d.ts.map +1 -1
  413. package/dist/plugin/utils/index.js +12 -5
  414. package/dist/plugin/utils/routeToURL.d.ts +12 -0
  415. package/dist/plugin/utils/routeToURL.d.ts.map +1 -0
  416. package/dist/plugin/utils/routeToURL.js +26 -0
  417. package/dist/plugin/utils/urls.d.ts.map +1 -1
  418. package/dist/plugin/utils/urls.js +5 -3
  419. package/dist/plugin/vendor/index.js +7 -1
  420. package/dist/plugin/vendor/vendor.client.js +1 -1
  421. package/dist/plugin/vendor/vendor.js +1 -1
  422. package/dist/plugin/vendor/vendor.server.js +1 -1
  423. package/dist/plugin/worker/createWorker.d.ts +31 -17
  424. package/dist/plugin/worker/createWorker.d.ts.map +1 -1
  425. package/dist/plugin/worker/createWorker.js +18 -12
  426. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts +2 -2
  427. package/dist/plugin/worker/html/createHtmlWorkerRenderState.d.ts.map +1 -1
  428. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js +5 -2
  429. package/dist/plugin/worker/html/html-worker.development.js +3 -3
  430. package/dist/plugin/worker/html/html-worker.production.js +1 -1
  431. package/dist/plugin/worker/html/index.d.ts +1 -1
  432. package/dist/plugin/worker/html/index.d.ts.map +1 -1
  433. package/dist/plugin/worker/html/index.js +1 -1
  434. package/dist/plugin/worker/html/messageHandler.d.ts +1 -1
  435. package/dist/plugin/worker/html/messageHandler.d.ts.map +1 -1
  436. package/dist/plugin/worker/html/messageHandler.js +9 -11
  437. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts +3 -0
  438. package/dist/plugin/worker/html/sendHtmlWorkerMessage.d.ts.map +1 -0
  439. package/dist/plugin/worker/html/sendHtmlWorkerMessage.js +2 -0
  440. package/dist/plugin/worker/html/types.d.ts +20 -2
  441. package/dist/plugin/worker/html/types.d.ts.map +1 -1
  442. package/dist/plugin/worker/index.d.ts +3 -0
  443. package/dist/plugin/worker/index.d.ts.map +1 -0
  444. package/dist/plugin/worker/index.js +7 -0
  445. package/dist/plugin/worker/registerLoaders.js +2 -2
  446. package/dist/plugin/worker/rsc/handleRender.d.ts +5 -3
  447. package/dist/plugin/worker/rsc/handleRender.d.ts.map +1 -1
  448. package/dist/plugin/worker/rsc/handleRender.js +57 -38
  449. package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -1
  450. package/dist/plugin/worker/rsc/handlers.js +19 -15
  451. package/dist/plugin/worker/rsc/index.d.ts +1 -1
  452. package/dist/plugin/worker/rsc/index.d.ts.map +1 -1
  453. package/dist/plugin/worker/rsc/index.js +1 -1
  454. package/dist/plugin/worker/rsc/messageHandler.d.ts +1 -1
  455. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  456. package/dist/plugin/worker/rsc/messageHandler.js +22 -8
  457. package/dist/plugin/worker/rsc/rsc-worker.development.js +77 -11
  458. package/dist/plugin/worker/rsc/rsc-worker.production.js +37 -8
  459. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts +3 -0
  460. package/dist/plugin/worker/rsc/sendRscWorkerMessage.d.ts.map +1 -0
  461. package/dist/plugin/worker/rsc/sendRscWorkerMessage.js +11 -0
  462. package/dist/plugin/worker/rsc/state.js +1 -1
  463. package/dist/plugin/worker/rsc/types.d.ts +95 -0
  464. package/dist/plugin/worker/rsc/types.d.ts.map +1 -0
  465. package/dist/plugin/worker/rsc/types.js +1 -0
  466. package/dist/plugin/worker/rsc/userOptions.d.ts +1 -1
  467. package/dist/plugin/worker/rsc/userOptions.d.ts.map +1 -1
  468. package/dist/plugin/worker/rsc/userOptions.js +3 -4
  469. package/dist/plugin/worker/sendMessage.d.ts +3 -4
  470. package/dist/plugin/worker/sendMessage.d.ts.map +1 -1
  471. package/dist/plugin/worker/sendMessage.js +15 -5
  472. package/dist/plugin/worker/types.d.ts +109 -260
  473. package/dist/plugin/worker/types.d.ts.map +1 -1
  474. package/dist/server.js +1 -1
  475. package/dist/tsconfig.tsbuildinfo +1 -1
  476. package/package.json +59 -26
  477. package/plugin/components/{css-collector-elements.tsx → css.tsx} +3 -3
  478. package/plugin/components/html.tsx +4 -4
  479. package/plugin/components/index.ts +3 -3
  480. package/plugin/components/root.tsx +20 -0
  481. package/plugin/config/autoDiscover/resolveAutoDiscover.ts +173 -134
  482. package/plugin/config/autoDiscover/resolveBuildPages.ts +120 -7
  483. package/plugin/config/createModuleID.ts +60 -39
  484. package/plugin/config/defaults.tsx +189 -96
  485. package/plugin/config/extMap.ts +51 -56
  486. package/plugin/config/flightBindings.ts +221 -0
  487. package/plugin/config/getCondition.ts +6 -0
  488. package/plugin/config/index.ts +17 -4
  489. package/plugin/config/interpolatePattern.ts +19 -0
  490. package/plugin/config/parsePattern.ts +81 -0
  491. package/plugin/config/resolveAllowedDirectives.ts +59 -0
  492. package/plugin/config/resolveDirectiveMatcher.ts +57 -0
  493. package/plugin/config/resolveEnv.ts +41 -37
  494. package/plugin/config/resolveOptions.ts +437 -318
  495. package/plugin/config/resolvePatternWithValues.ts +70 -0
  496. package/plugin/config/resolveRegExp.ts +89 -0
  497. package/plugin/config/resolveUrlOption.ts +92 -20
  498. package/plugin/config/resolveUserConfig.ts +427 -351
  499. package/plugin/env/createConfigEnv.ts +40 -0
  500. package/plugin/env/getArgValue.ts +56 -0
  501. package/plugin/env/getEnvKey.ts +61 -0
  502. package/plugin/env/index.ts +4 -1
  503. package/plugin/env/plugin.ts +13 -18
  504. package/plugin/env/userConfigEnv.ts +22 -0
  505. package/plugin/error/directiveError.ts +29 -0
  506. package/plugin/error/enhanceError.ts +41 -0
  507. package/plugin/error/index.ts +3 -0
  508. package/plugin/error/logError.ts +48 -0
  509. package/plugin/error/serializeError.ts +34 -0
  510. package/plugin/error/toError.ts +75 -45
  511. package/plugin/file-preserver/plugin.ts +3 -3
  512. package/plugin/getNodeEnv.ts +24 -0
  513. package/plugin/helpers/cleanObject.ts +2 -1
  514. package/plugin/helpers/collectViteModuleGraphCss.ts +138 -118
  515. package/plugin/helpers/createCssProps.tsx +29 -30
  516. package/plugin/helpers/createEventHandler.ts +1 -1
  517. package/plugin/helpers/createHandler.ts +40 -12
  518. package/plugin/helpers/createRscStream.tsx +103 -36
  519. package/plugin/helpers/formatMetrics.ts +2 -37
  520. package/plugin/helpers/getBundleManifest.ts +10 -1
  521. package/plugin/helpers/getRouteFiles.ts +154 -9
  522. package/plugin/helpers/handleServerAction.ts +12 -7
  523. package/plugin/helpers/hydrateUserOptions.ts +23 -0
  524. package/plugin/helpers/index.ts +4 -0
  525. package/plugin/helpers/inputNormalizer.ts +44 -24
  526. package/plugin/helpers/metrics.ts +4 -64
  527. package/plugin/helpers/moduleResolver.ts +74 -19
  528. package/plugin/helpers/requestInfo.ts +95 -61
  529. package/plugin/helpers/requestToRoute.ts +38 -12
  530. package/plugin/helpers/resolveComponent.ts +173 -0
  531. package/plugin/helpers/resolveComponents.ts +202 -0
  532. package/plugin/helpers/resolvePage.ts +35 -29
  533. package/plugin/helpers/resolvePageAndProps.ts +82 -61
  534. package/plugin/helpers/resolveProps.ts +100 -37
  535. package/plugin/helpers/resolveUserComponents.ts +190 -0
  536. package/plugin/helpers/serializeUserOptions.ts +190 -69
  537. package/plugin/helpers/stashReturnValue.ts +7 -4
  538. package/plugin/helpers/tryManifest.ts +1 -1
  539. package/plugin/loader/createDefaultLoader.ts +119 -119
  540. package/plugin/loader/createTransformer.ts +110 -0
  541. package/plugin/loader/css-loader.ts +206 -0
  542. package/plugin/loader/directives/addLocalExportedNames.ts +78 -0
  543. package/plugin/loader/directives/analyzeDirectives.ts +298 -0
  544. package/plugin/loader/directives/analyzeModule.ts +57 -0
  545. package/plugin/loader/directives/collectExports.ts +181 -0
  546. package/plugin/loader/directives/collectExportsFromModule.ts +25 -0
  547. package/plugin/loader/directives/findDirectiveMatches.ts +58 -0
  548. package/plugin/loader/directives/getExportedName.ts +73 -0
  549. package/plugin/loader/directives/getExports.ts +27 -0
  550. package/plugin/loader/directives/getFunctionBody.ts +32 -0
  551. package/plugin/loader/directives/getFunctionName.ts +70 -0
  552. package/plugin/loader/directives/getQualifiedName.ts +76 -0
  553. package/plugin/loader/directives/index.ts +13 -0
  554. package/plugin/loader/directives/processFunctionNode.ts +97 -0
  555. package/plugin/loader/directives/typeGuards.ts +160 -0
  556. package/plugin/loader/directives/types.ts +174 -0
  557. package/plugin/loader/directives/utils.ts +35 -0
  558. package/plugin/loader/env-loader.ts +135 -0
  559. package/plugin/loader/index.ts +8 -6
  560. package/plugin/loader/parse.ts +42 -12
  561. package/plugin/loader/react-loader.ts +256 -4
  562. package/plugin/loader/removeDirectives.ts +14 -0
  563. package/plugin/loader/removeRanges.ts +21 -0
  564. package/plugin/loader/sourceMap.ts +174 -84
  565. package/plugin/loader/transformClientModule.ts +60 -0
  566. package/plugin/loader/transformModule.ts +59 -0
  567. package/plugin/loader/transformModuleIfNeeded.ts +40 -40
  568. package/plugin/loader/transformNonServerEnvironment.ts +95 -0
  569. package/plugin/loader/transformServerModule.ts +167 -0
  570. package/plugin/loader/transformWithAcornLoose.ts +27 -0
  571. package/plugin/loader/types.ts +58 -13
  572. package/plugin/metrics/collectStreamMetrics.ts +38 -0
  573. package/plugin/metrics/createRenderMetrics.ts +17 -0
  574. package/plugin/metrics/createStreamMetrics.ts +14 -0
  575. package/plugin/metrics/formatMetrics.ts +7 -3
  576. package/plugin/metrics/index.ts +3 -1
  577. package/plugin/metrics/types.ts +24 -0
  578. package/plugin/plugin.client.ts +43 -16
  579. package/plugin/plugin.server.ts +41 -21
  580. package/plugin/process-env.ts +27 -6
  581. package/plugin/react-client/cleanupWorkerServerAction.ts +33 -0
  582. package/plugin/react-client/configureWorkerRequestHandler.ts +206 -201
  583. package/plugin/react-client/createMessageHandlers.ts +17 -3
  584. package/plugin/react-client/createWorkerStream.ts +55 -51
  585. package/plugin/react-client/handleWorkerRscStream.ts +130 -61
  586. package/plugin/react-client/handleWorkerServerAction.ts +59 -37
  587. package/plugin/react-client/index.ts +4 -1
  588. package/plugin/react-client/plugin.ts +17 -18
  589. package/plugin/react-client/restartWorker.ts +74 -70
  590. package/plugin/react-server/configureReactServer.ts +204 -142
  591. package/plugin/react-server/handleServerAction.ts +156 -160
  592. package/plugin/react-server/plugin.ts +150 -157
  593. package/plugin/react-static/collectHtmlWorkerContent.ts +109 -102
  594. package/plugin/react-static/collectRscContent.ts +55 -51
  595. package/plugin/react-static/configurePreviewServer.ts +99 -100
  596. package/plugin/react-static/createBuildLoader.ts +157 -48
  597. package/plugin/react-static/plugin.ts +368 -357
  598. package/plugin/react-static/renderPage.ts +31 -24
  599. package/plugin/react-static/renderPages.ts +21 -14
  600. package/plugin/react-static/renderStreams.ts +13 -15
  601. package/plugin/react-static/rscToHtmlStream.ts +4 -6
  602. package/plugin/react-static/types.ts +0 -3
  603. package/plugin/transformer/README.md +82 -8
  604. package/plugin/transformer/plugin.client.ts +142 -0
  605. package/plugin/transformer/plugin.server.ts +87 -112
  606. package/plugin/types/css-tracking.ts +1 -1
  607. package/plugin/types/global.d.ts +2 -2
  608. package/plugin/types/react-server-dom-esm.d.ts +12 -13
  609. package/plugin/types.ts +684 -309
  610. package/plugin/utils/createCallServer.ts +5 -5
  611. package/plugin/utils/createReactFetcher.ts +4 -6
  612. package/plugin/utils/envUrls.node.ts +15 -10
  613. package/plugin/utils/index.ts +2 -1
  614. package/plugin/utils/routeToURL.ts +34 -0
  615. package/plugin/utils/urls.ts +10 -7
  616. package/plugin/worker/createWorker.ts +67 -34
  617. package/plugin/worker/html/README.md +10 -0
  618. package/plugin/worker/html/createHtmlWorkerRenderState.tsx +7 -4
  619. package/plugin/worker/html/html-worker.development.tsx +4 -3
  620. package/plugin/worker/html/index.ts +3 -1
  621. package/plugin/worker/html/messageHandler.tsx +10 -16
  622. package/plugin/worker/html/sendHtmlWorkerMessage.ts +8 -0
  623. package/plugin/worker/html/types.ts +67 -1
  624. package/plugin/worker/index.ts +2 -0
  625. package/plugin/worker/registerLoaders.ts +3 -3
  626. package/plugin/worker/rsc/README.md +203 -1
  627. package/plugin/worker/rsc/handleRender.ts +75 -45
  628. package/plugin/worker/rsc/handlers.ts +30 -22
  629. package/plugin/worker/rsc/index.ts +2 -0
  630. package/plugin/worker/rsc/messageHandler.tsx +23 -13
  631. package/plugin/worker/rsc/rsc-worker.development.ts +104 -17
  632. package/plugin/worker/rsc/rsc-worker.production.ts +57 -10
  633. package/plugin/worker/rsc/sendRscWorkerMessage.ts +7 -0
  634. package/plugin/worker/rsc/state.ts +1 -1
  635. package/plugin/worker/rsc/types.ts +185 -0
  636. package/plugin/worker/rsc/userOptions.ts +2 -3
  637. package/plugin/worker/sendMessage.ts +23 -14
  638. package/plugin/worker/types.ts +131 -386
  639. package/scripts/check-react-version.mjs +3 -3
  640. package/scripts/fix-unused-imports.mjs +77 -0
  641. package/tsconfig.json +1 -1
  642. package/dist/_virtual/dynamic-import-helper.js.map +0 -1
  643. package/dist/client.js.map +0 -1
  644. package/dist/index.js.map +0 -1
  645. package/dist/plugin/components/css-collector-elements.d.ts.map +0 -1
  646. package/dist/plugin/components/css-collector-elements.js +0 -33
  647. package/dist/plugin/components/css-collector-elements.js.map +0 -1
  648. package/dist/plugin/components/css-collector.d.ts +0 -7
  649. package/dist/plugin/components/css-collector.d.ts.map +0 -1
  650. package/dist/plugin/components/css-collector.js +0 -18
  651. package/dist/plugin/components/css-collector.js.map +0 -1
  652. package/dist/plugin/components/html.js.map +0 -1
  653. package/dist/plugin/components.js +0 -9
  654. package/dist/plugin/components.js.map +0 -1
  655. package/dist/plugin/config/autoDiscover/createGlobAutoDiscover.js.map +0 -1
  656. package/dist/plugin/config/autoDiscover/customWorkerFiles.js.map +0 -1
  657. package/dist/plugin/config/autoDiscover/pageAndPropFiles.js.map +0 -1
  658. package/dist/plugin/config/autoDiscover/resolveAutoDiscover.js.map +0 -1
  659. package/dist/plugin/config/autoDiscover/resolveBuildPages.js.map +0 -1
  660. package/dist/plugin/config/defaults.js.map +0 -1
  661. package/dist/plugin/config/extMap.js.map +0 -1
  662. package/dist/plugin/config/getCondition.js.map +0 -1
  663. package/dist/plugin/config/getPaths.js.map +0 -1
  664. package/dist/plugin/config/mimeTypes.js.map +0 -1
  665. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts +0 -5
  666. package/dist/plugin/config/resolveAutoDiscoverMatcher.d.ts.map +0 -1
  667. package/dist/plugin/config/resolveAutoDiscoverMatcher.js +0 -25
  668. package/dist/plugin/config/resolveAutoDiscoverMatcher.js.map +0 -1
  669. package/dist/plugin/config/resolveEnv.js.map +0 -1
  670. package/dist/plugin/config/resolveOptions.js.map +0 -1
  671. package/dist/plugin/config/resolvePages.js.map +0 -1
  672. package/dist/plugin/config/resolveUrlOption.js.map +0 -1
  673. package/dist/plugin/config/resolveUserConfig.js.map +0 -1
  674. package/dist/plugin/config.js +0 -17
  675. package/dist/plugin/config.js.map +0 -1
  676. package/dist/plugin/env.js +0 -79
  677. package/dist/plugin/env.js.map +0 -1
  678. package/dist/plugin/error/toError.js.map +0 -1
  679. package/dist/plugin/file-preserver.js +0 -96
  680. package/dist/plugin/file-preserver.js.map +0 -1
  681. package/dist/plugin/helpers/cleanObject.js.map +0 -1
  682. package/dist/plugin/helpers/collectManifestCss.js.map +0 -1
  683. package/dist/plugin/helpers/collectViteModuleGraphCss.js.map +0 -1
  684. package/dist/plugin/helpers/createCssProps.js.map +0 -1
  685. package/dist/plugin/helpers/createEventHandler.js.map +0 -1
  686. package/dist/plugin/helpers/createHandler.js.map +0 -1
  687. package/dist/plugin/helpers/createRscStream.js.map +0 -1
  688. package/dist/plugin/helpers/formatMetrics.js.map +0 -1
  689. package/dist/plugin/helpers/getBundleManifest.js.map +0 -1
  690. package/dist/plugin/helpers/getRouteFiles.js.map +0 -1
  691. package/dist/plugin/helpers/handleServerAction.js.map +0 -1
  692. package/dist/plugin/helpers/inputNormalizer.js.map +0 -1
  693. package/dist/plugin/helpers/metrics.js.map +0 -1
  694. package/dist/plugin/helpers/moduleRefs.js.map +0 -1
  695. package/dist/plugin/helpers/requestInfo.js.map +0 -1
  696. package/dist/plugin/helpers/requestToRoute.js.map +0 -1
  697. package/dist/plugin/helpers/resolvePage.js.map +0 -1
  698. package/dist/plugin/helpers/resolvePageAndProps.js.map +0 -1
  699. package/dist/plugin/helpers/resolveProps.js.map +0 -1
  700. package/dist/plugin/helpers/serializeUserOptions.js.map +0 -1
  701. package/dist/plugin/helpers/sourceMap.d.ts +0 -8
  702. package/dist/plugin/helpers/sourceMap.d.ts.map +0 -1
  703. package/dist/plugin/helpers/sourceMap.js +0 -136
  704. package/dist/plugin/helpers/stashReturnValue.js.map +0 -1
  705. package/dist/plugin/helpers/tryManifest.js.map +0 -1
  706. package/dist/plugin/helpers.js +0 -27
  707. package/dist/plugin/helpers.js.map +0 -1
  708. package/dist/plugin/loader/css-loader.development.d.ts.map +0 -1
  709. package/dist/plugin/loader/css-loader.development.js +0 -76
  710. package/dist/plugin/loader/css-loader.development.js.map +0 -1
  711. package/dist/plugin/loader/css-loader.production.d.ts +0 -31
  712. package/dist/plugin/loader/css-loader.production.d.ts.map +0 -1
  713. package/dist/plugin/loader/css-loader.production.js +0 -45
  714. package/dist/plugin/loader/css-loader.production.js.map +0 -1
  715. package/dist/plugin/loader/env-loader.development.d.ts +0 -13
  716. package/dist/plugin/loader/env-loader.development.d.ts.map +0 -1
  717. package/dist/plugin/loader/env-loader.development.js +0 -68
  718. package/dist/plugin/loader/handleExports.d.ts +0 -40
  719. package/dist/plugin/loader/handleExports.d.ts.map +0 -1
  720. package/dist/plugin/loader/handleExports.js +0 -209
  721. package/dist/plugin/loader/handleExports.js.map +0 -1
  722. package/dist/plugin/loader/parse.js.map +0 -1
  723. package/dist/plugin/loader/react-loader.client.d.ts +0 -2
  724. package/dist/plugin/loader/react-loader.client.d.ts.map +0 -1
  725. package/dist/plugin/loader/react-loader.client.js +0 -2
  726. package/dist/plugin/loader/react-loader.js.map +0 -1
  727. package/dist/plugin/loader/react-loader.server.d.ts +0 -21
  728. package/dist/plugin/loader/react-loader.server.d.ts.map +0 -1
  729. package/dist/plugin/loader/react-loader.server.js +0 -131
  730. package/dist/plugin/loader/transformModuleIfNeeded.js.map +0 -1
  731. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts +0 -48
  732. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts.map +0 -1
  733. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js +0 -428
  734. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js.map +0 -1
  735. package/dist/plugin/metrics/formatMetrics.js.map +0 -1
  736. package/dist/plugin/metrics.js +0 -7
  737. package/dist/plugin/metrics.js.map +0 -1
  738. package/dist/plugin/plugin.client.js.map +0 -1
  739. package/dist/plugin/plugin.server.js.map +0 -1
  740. package/dist/plugin/preserver/index.d.ts +0 -2
  741. package/dist/plugin/preserver/index.d.ts.map +0 -1
  742. package/dist/plugin/preserver/index.js +0 -1
  743. package/dist/plugin/preserver/plugin.d.ts +0 -3
  744. package/dist/plugin/preserver/plugin.d.ts.map +0 -1
  745. package/dist/plugin/preserver/plugin.js +0 -130
  746. package/dist/plugin/preserver/plugin.js.map +0 -1
  747. package/dist/plugin/react-client/configureWorkerRequestHandler.js.map +0 -1
  748. package/dist/plugin/react-client/createMessageHandlers.js.map +0 -1
  749. package/dist/plugin/react-client/createWorkerStream.js.map +0 -1
  750. package/dist/plugin/react-client/handleWorkerRscStream.js.map +0 -1
  751. package/dist/plugin/react-client/handleWorkerServerAction.js.map +0 -1
  752. package/dist/plugin/react-client/plugin.js.map +0 -1
  753. package/dist/plugin/react-client/restartWorker.js.map +0 -1
  754. package/dist/plugin/react-server/configureReactServer.js.map +0 -1
  755. package/dist/plugin/react-server/handleServerAction.js.map +0 -1
  756. package/dist/plugin/react-server/plugin.js.map +0 -1
  757. package/dist/plugin/react-static/collectHtmlWorkerContent.js.map +0 -1
  758. package/dist/plugin/react-static/collectRscContent.js.map +0 -1
  759. package/dist/plugin/react-static/configurePreviewServer.js.map +0 -1
  760. package/dist/plugin/react-static/createBuildLoader.js.map +0 -1
  761. package/dist/plugin/react-static/fileWriter.js.map +0 -1
  762. package/dist/plugin/react-static/plugin.js.map +0 -1
  763. package/dist/plugin/react-static/renderPage.js.map +0 -1
  764. package/dist/plugin/react-static/renderPages.js.map +0 -1
  765. package/dist/plugin/react-static/renderStreams.js.map +0 -1
  766. package/dist/plugin/react-static/rscToHtmlStream.js.map +0 -1
  767. package/dist/plugin/react-static/streamHandler.d.ts +0 -2
  768. package/dist/plugin/react-static/streamHandler.d.ts.map +0 -1
  769. package/dist/plugin/react-static/temporaryReferences.js.map +0 -1
  770. package/dist/plugin/root.js.map +0 -1
  771. package/dist/plugin/source-map/createMappingsSerializer.d.ts +0 -2
  772. package/dist/plugin/source-map/createMappingsSerializer.d.ts.map +0 -1
  773. package/dist/plugin/source-map/createMappingsSerializer.js +0 -129
  774. package/dist/plugin/source-map/createMappingsSerializer.js.map +0 -1
  775. package/dist/plugin/source-map/readMappings.d.ts +0 -2
  776. package/dist/plugin/source-map/readMappings.d.ts.map +0 -1
  777. package/dist/plugin/source-map/readMappings.js +0 -200
  778. package/dist/plugin/transformer/plugin.js.map +0 -1
  779. package/dist/plugin/transformer/plugin.server.js.map +0 -1
  780. package/dist/plugin/utils/callServer.js.map +0 -1
  781. package/dist/plugin/utils/createCallServer.js.map +0 -1
  782. package/dist/plugin/utils/createReactFetcher.js.map +0 -1
  783. package/dist/plugin/utils/env.js.map +0 -1
  784. package/dist/plugin/utils/envUrls.node.js.map +0 -1
  785. package/dist/plugin/utils/urls.js.map +0 -1
  786. package/dist/plugin/utils.js +0 -11
  787. package/dist/plugin/utils.js.map +0 -1
  788. package/dist/plugin/vendor/vendor.client.js.map +0 -1
  789. package/dist/plugin/vendor/vendor.js.map +0 -1
  790. package/dist/plugin/vendor/vendor.server.js.map +0 -1
  791. package/dist/plugin/vendor.js +0 -7
  792. package/dist/plugin/vendor.js.map +0 -1
  793. package/dist/plugin/worker/createWorker.js.map +0 -1
  794. package/dist/plugin/worker/html/createHtmlWorkerRenderState.js.map +0 -1
  795. package/dist/plugin/worker/html/html-worker.development.js.map +0 -1
  796. package/dist/plugin/worker/html/html-worker.production.js.map +0 -1
  797. package/dist/plugin/worker/html/index.js.map +0 -1
  798. package/dist/plugin/worker/html/messageHandler.js.map +0 -1
  799. package/dist/plugin/worker/rsc/handleRender.js.map +0 -1
  800. package/dist/plugin/worker/rsc/handlers.js.map +0 -1
  801. package/dist/plugin/worker/rsc/index.js.map +0 -1
  802. package/dist/plugin/worker/rsc/messageHandler.js.map +0 -1
  803. package/dist/plugin/worker/rsc/rsc-worker.development.js.map +0 -1
  804. package/dist/plugin/worker/rsc/rsc-worker.production.js.map +0 -1
  805. package/dist/plugin/worker/rsc/state.js.map +0 -1
  806. package/dist/plugin/worker/rsc/userOptions.js.map +0 -1
  807. package/dist/plugin/worker/sendMessage.js.map +0 -1
  808. package/dist/server.js.map +0 -1
  809. package/plugin/components/css-collector.tsx +0 -20
  810. package/plugin/config/resolveAutoDiscoverMatcher.ts +0 -23
  811. package/plugin/helpers/sourceMap.ts +0 -182
  812. package/plugin/loader/css-loader.development.ts +0 -135
  813. package/plugin/loader/css-loader.production.ts +0 -84
  814. package/plugin/loader/env-loader.development.ts +0 -107
  815. package/plugin/loader/handleExports.ts +0 -309
  816. package/plugin/loader/react-loader.client.ts +0 -1
  817. package/plugin/loader/react-loader.server.ts +0 -185
  818. package/plugin/loader/transformModuleWithPreservedFunctions.ts +0 -593
  819. package/plugin/preserver/index.ts +0 -1
  820. package/plugin/preserver/plugin.ts +0 -178
  821. package/plugin/react-static/streamHandler.ts +0 -0
  822. package/plugin/source-map/createMappingsSerializer.ts +0 -181
  823. package/plugin/source-map/readMappings.ts +0 -194
  824. /package/dist/plugin/{react-static/streamHandler.js → loader/directives/types.js} +0 -0
@@ -3,11 +3,174 @@
3
3
  * Copyright (c) Nico Brinkkemper
4
4
  * MIT License
5
5
  */
6
- import { getCondition } from '../config/getCondition.js';
6
+ import { MessagePort } from 'node:worker_threads';
7
+ import { fileURLToPath } from 'node:url';
8
+ import { join } from 'node:path';
9
+ import { hydrateUserOptions } from '../helpers/hydrateUserOptions.js';
10
+ import { DEFAULT_LOADER_CONFIG } from '../config/defaults.js';
11
+ import { createTransformer } from './createTransformer.js';
12
+ import { getNodeEnv } from '../getNodeEnv.js';
7
13
 
8
- const condition = getCondition("");
9
- const loader = await import(`react-loader.${condition}.ts`);
10
- const { load, resolve, transformModuleIfNeeded } = loader;
14
+ let initialized = false;
15
+ let userOptions;
16
+ let loaderPort;
17
+ let isServerFunction = DEFAULT_LOADER_CONFIG.isServerFunctionCode;
18
+ let isClientComponent = DEFAULT_LOADER_CONFIG.isClientComponentCode;
19
+ let transformer;
20
+ function initialize(data = {
21
+ id: "react-loader",
22
+ port: new MessagePort(),
23
+ userOptions: null,
24
+ resolvedConfig: null
25
+ }) {
26
+ if (userOptions?.verbose) {
27
+ console.log("[react-loader] Initializing with options:", data.id);
28
+ }
29
+ loaderPort = data.port;
30
+ if (data.userOptions) {
31
+ const resolvedUserOptions = hydrateUserOptions(data.userOptions);
32
+ if (resolvedUserOptions.type === "error") {
33
+ throw new Error(resolvedUserOptions.error.message);
34
+ }
35
+ userOptions = resolvedUserOptions.userOptions;
36
+ isServerFunction = userOptions.loader?.isServerFunctionCode ?? DEFAULT_LOADER_CONFIG.isServerFunctionCode;
37
+ isClientComponent = userOptions.loader?.isClientComponentCode ?? DEFAULT_LOADER_CONFIG.isClientComponentCode;
38
+ transformer = createTransformer({
39
+ options: userOptions
40
+ });
41
+ } else {
42
+ transformer = createTransformer({
43
+ options: {
44
+ loader: {
45
+ ...DEFAULT_LOADER_CONFIG,
46
+ mode: getNodeEnv()
47
+ },
48
+ verbose: false,
49
+ panicThreshold: "none"
50
+ }
51
+ });
52
+ }
53
+ if (!initialized && loaderPort) {
54
+ loaderPort.postMessage({
55
+ type: "INITIALIZED_REACT_LOADER",
56
+ id: data.id
57
+ });
58
+ }
59
+ initialized = true;
60
+ }
61
+ const load = async (url, context, nextLoad) => {
62
+ if (!initialized) {
63
+ initialize(context);
64
+ }
65
+ if (userOptions?.verbose) {
66
+ console.log("[react-loader] Attempting to load:", url);
67
+ console.log("[react-loader] Context:", {
68
+ format: context.format,
69
+ conditions: context.conditions
70
+ });
71
+ }
72
+ const { format } = context;
73
+ if (format === "module" || format === "module-typescript") {
74
+ if (userOptions?.verbose) {
75
+ console.log("[react-loader] Loading module:", url);
76
+ }
77
+ const result = await nextLoad(url, context);
78
+ if (userOptions?.verbose) {
79
+ console.log("[react-loader] Next load result:", {
80
+ format: result.format,
81
+ shortCircuit: result.shortCircuit,
82
+ source: typeof result.source
83
+ });
84
+ }
85
+ const source = typeof result.source === "string" ? result.source : result.source instanceof Uint8Array ? new TextDecoder().decode(result.source) : String(result.source);
86
+ const hasFileLevelServerDirective = source.startsWith('"use server"') || source.startsWith("'use server'");
87
+ const hasFileLevelClientDirective = source.startsWith('"use client"') || source.startsWith("'use client'");
88
+ const isServer = hasFileLevelServerDirective || (typeof isServerFunction === "function" ? isServerFunction(source, url) : false);
89
+ const isClient = hasFileLevelClientDirective || (typeof isClientComponent === "function" ? isClientComponent(source, url) : false);
90
+ if (userOptions?.verbose) {
91
+ let startPreviewIndex = 0;
92
+ let startLine = 0;
93
+ let lines = source.split("\n");
94
+ while (lines[startLine].trim() === "" || lines[startLine].trim() === "\r" || // comment lines
95
+ lines[startLine].trim().startsWith("//") || lines[startLine].trim().startsWith("/**") || lines[startLine].trim().startsWith("*")) {
96
+ startPreviewIndex += lines[startLine].length;
97
+ startLine++;
98
+ }
99
+ console.log("[react-loader] Module analysis:", {
100
+ url,
101
+ isServer,
102
+ isClient,
103
+ hasFileLevelServerDirective,
104
+ hasFileLevelClientDirective,
105
+ sourceLength: source.length,
106
+ sourcePreview: source.slice(startPreviewIndex, startPreviewIndex + 100) + "..."
107
+ });
108
+ }
109
+ if (!isServer && !isClient) {
110
+ if (userOptions?.verbose) {
111
+ console.log(
112
+ "[react-loader] Skipping non-server/non-client module:",
113
+ url
114
+ );
115
+ }
116
+ return result;
117
+ }
118
+ const filePath = url.startsWith("file://") ? fileURLToPath(url) : url;
119
+ if (userOptions?.verbose) {
120
+ console.log("[react-loader] File path:", filePath);
121
+ }
122
+ let moduleID = filePath;
123
+ let finalID = filePath;
124
+ if (userOptions?.normalizer) {
125
+ const [, value] = userOptions.normalizer(filePath);
126
+ moduleID = join(userOptions.moduleBasePath, value);
127
+ finalID = userOptions.moduleID?.(moduleID) || moduleID;
128
+ if (userOptions?.verbose) {
129
+ console.log("[react-loader] Normalized IDs:", { moduleID, finalID });
130
+ }
131
+ }
132
+ const { code: transformed, map } = await transformer(source, finalID);
133
+ if (userOptions?.verbose) {
134
+ console.log("[react-loader] Transformation result:", {
135
+ originalLength: source.length,
136
+ transformedLength: transformed.length,
137
+ wasTransformed: source !== transformed,
138
+ hasSourceMap: !!map
139
+ });
140
+ }
141
+ if (loaderPort) {
142
+ if (userOptions?.verbose) {
143
+ console.log("[react-loader] Sending SERVER_MODULE message");
144
+ }
145
+ loaderPort.postMessage({
146
+ type: "SERVER_MODULE",
147
+ id: finalID,
148
+ url: filePath,
149
+ source: transformed
150
+ });
151
+ }
152
+ return {
153
+ ...result,
154
+ source: transformed,
155
+ map
156
+ };
157
+ }
158
+ if (userOptions?.verbose) {
159
+ console.log("[react-loader] Skipping non-module format:", format);
160
+ }
161
+ return nextLoad(url, context);
162
+ };
163
+ const resolve = async (specifier, context, nextResolve) => {
164
+ if (userOptions?.verbose) {
165
+ console.log("[react-loader] Resolving:", specifier);
166
+ console.log("[react-loader] Resolve context:", context);
167
+ }
168
+ const result = await nextResolve(specifier, context);
169
+ if (userOptions?.verbose) {
170
+ console.log("[react-loader] Resolve result:", result);
171
+ }
172
+ return result;
173
+ };
11
174
 
12
- export { load, resolve, transformModuleIfNeeded };
13
- //# sourceMappingURL=react-loader.js.map
175
+ export { initialize, load, resolve };
176
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3QtbG9hZGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9wbHVnaW4vbG9hZGVyL3JlYWN0LWxvYWRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIFJlc29sdmVkVXNlck9wdGlvbnMsXG4gIFNlcmlhbGl6ZWRSZXNvbHZlZENvbmZpZyxcbiAgU2VyaWFsaXplZFVzZXJPcHRpb25zLFxufSBmcm9tIFwiLi4vdHlwZXMuanNcIjtcbmltcG9ydCB0eXBlIHsgTW9kdWxlSW5mbyB9IGZyb20gXCJyb2xsdXBcIjtcbmltcG9ydCB7IE1lc3NhZ2VQb3J0IH0gZnJvbSBcIm5vZGU6d29ya2VyX3RocmVhZHNcIjtcbmltcG9ydCB0eXBlIHtcbiAgSW5pdGlhbGl6ZWRSZWFjdExvYWRlck1lc3NhZ2UsXG4gIFNlcnZlck1vZHVsZU1lc3NhZ2UsXG59IGZyb20gXCIuLi93b3JrZXIvcnNjL3R5cGVzLmpzXCI7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSBcIm5vZGU6dXJsXCI7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgaHlkcmF0ZVVzZXJPcHRpb25zIH0gZnJvbSBcIi4uL2hlbHBlcnMvaHlkcmF0ZVVzZXJPcHRpb25zLmpzXCI7XG5pbXBvcnQgeyBERUZBVUxUX0xPQURFUl9DT05GSUcgfSBmcm9tIFwiLi4vY29uZmlnL2RlZmF1bHRzLmpzXCI7XG5pbXBvcnQgdHlwZSB7IExvYWRIb29rLCBSZXNvbHZlSG9vayB9IGZyb20gXCJub2RlOm1vZHVsZVwiO1xuaW1wb3J0IHR5cGUgeyBSYXdTb3VyY2VNYXAgfSBmcm9tIFwic291cmNlLW1hcFwiO1xuaW1wb3J0IHsgY3JlYXRlVHJhbnNmb3JtZXIgfSBmcm9tIFwiLi9jcmVhdGVUcmFuc2Zvcm1lci5qc1wiO1xuaW1wb3J0IHsgZ2V0Tm9kZUVudiB9IGZyb20gXCIuLi9nZXROb2RlRW52LmpzXCI7XG5cbmV4cG9ydCB0eXBlIExvYWRlck9wdGlvbnMgPSB7XG4gIGlkOiBzdHJpbmc7XG4gIHJlc29sdmVEZXBlbmRlbmNpZXM/OiBib29sZWFuO1xuICBmb3JtYXQ/OiBzdHJpbmc7XG4gIGNvbmRpdGlvbnM/OiBzdHJpbmdbXTtcbiAgaW1wb3J0QXNzZXJ0aW9ucz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBpbXBvcnRBdHRyaWJ1dGVzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIHNvdXJjZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTG9hZGVyRnVuY3Rpb24gPSAob3B0aW9uczogTG9hZGVyT3B0aW9ucykgPT4gUHJvbWlzZTxNb2R1bGVJbmZvPjtcblxubGV0IGluaXRpYWxpemVkID0gZmFsc2U7XG5sZXQgdXNlck9wdGlvbnM6IFJlc29sdmVkVXNlck9wdGlvbnM7XG5sZXQgbG9hZGVyUG9ydDogTWVzc2FnZVBvcnQgfCB1bmRlZmluZWQ7XG5sZXQgaXNTZXJ2ZXJGdW5jdGlvbjpcbiAgfCBSZWdFeHBNYXRjaEFycmF5XG4gIHwgUmVnRXhwXG4gIHwgKChzb3VyY2U6IHN0cmluZywgdXJsOiBzdHJpbmcpID0+IGJvb2xlYW4pXG4gIHwgbnVsbCA9IERFRkFVTFRfTE9BREVSX0NPTkZJRy5pc1NlcnZlckZ1bmN0aW9uQ29kZTtcblxubGV0IGlzQ2xpZW50Q29tcG9uZW50OlxuICB8IFJlZ0V4cE1hdGNoQXJyYXlcbiAgfCBSZWdFeHBcbiAgfCAoKHNvdXJjZTogc3RyaW5nLCB1cmw6IHN0cmluZykgPT4gYm9vbGVhbilcbiAgfCBudWxsID0gREVGQVVMVF9MT0FERVJfQ09ORklHLmlzQ2xpZW50Q29tcG9uZW50Q29kZTtcblxubGV0IHRyYW5zZm9ybWVyOiAoXG4gIHNvdXJjZTogc3RyaW5nLFxuICBtb2R1bGVJZDogc3RyaW5nXG4pID0+IFByb21pc2U8eyBjb2RlOiBzdHJpbmc7IG1hcDogUmF3U291cmNlTWFwIHwgbnVsbCB9PjtcblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemUoXG4gIGRhdGE6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIHBvcnQ6IE1lc3NhZ2VQb3J0O1xuICAgIHVzZXJPcHRpb25zOiBTZXJpYWxpemVkVXNlck9wdGlvbnMgfCBudWxsO1xuICAgIHJlc29sdmVkQ29uZmlnOiBTZXJpYWxpemVkUmVzb2x2ZWRDb25maWcgfCBudWxsO1xuICB9ID0ge1xuICAgIGlkOiBcInJlYWN0LWxvYWRlclwiLFxuICAgIHBvcnQ6IG5ldyBNZXNzYWdlUG9ydCgpLFxuICAgIHVzZXJPcHRpb25zOiBudWxsLFxuICAgIHJlc29sdmVkQ29uZmlnOiBudWxsLFxuICB9XG4pIHtcbiAgaWYgKHVzZXJPcHRpb25zPy52ZXJib3NlKSB7XG4gICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBJbml0aWFsaXppbmcgd2l0aCBvcHRpb25zOlwiLCBkYXRhLmlkKTtcbiAgfVxuICBsb2FkZXJQb3J0ID0gZGF0YS5wb3J0O1xuICBpZiAoZGF0YS51c2VyT3B0aW9ucykge1xuICAgIC8vIHdoZW4gdXNlciBvcHRpb25zIGFyZSBwcm92aWRlZCwgdXNlIHRoZSB1c2VyIG9wdGlvbnMgdXNpbmcgdGhlIGh5ZHJhdGVVc2VyT3B0aW9ucyBmdW5jdGlvblxuICAgIGNvbnN0IHJlc29sdmVkVXNlck9wdGlvbnMgPSBoeWRyYXRlVXNlck9wdGlvbnMoZGF0YS51c2VyT3B0aW9ucyk7XG4gICAgaWYgKHJlc29sdmVkVXNlck9wdGlvbnMudHlwZSA9PT0gXCJlcnJvclwiKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IocmVzb2x2ZWRVc2VyT3B0aW9ucy5lcnJvci5tZXNzYWdlKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgdGhlIGh5ZHJhdGVkIHVzZXIgb3B0aW9ucyBkaXJlY3RseSAoaW5jbHVkZXMgcmVjcmVhdGVkIGZ1bmN0aW9ucylcbiAgICB1c2VyT3B0aW9ucyA9IHJlc29sdmVkVXNlck9wdGlvbnMudXNlck9wdGlvbnM7XG5cbiAgICBpc1NlcnZlckZ1bmN0aW9uID0gdXNlck9wdGlvbnMubG9hZGVyPy5pc1NlcnZlckZ1bmN0aW9uQ29kZSA/PyBERUZBVUxUX0xPQURFUl9DT05GSUcuaXNTZXJ2ZXJGdW5jdGlvbkNvZGU7XG4gICAgaXNDbGllbnRDb21wb25lbnQgPSB1c2VyT3B0aW9ucy5sb2FkZXI/LmlzQ2xpZW50Q29tcG9uZW50Q29kZSA/PyBERUZBVUxUX0xPQURFUl9DT05GSUcuaXNDbGllbnRDb21wb25lbnRDb2RlO1xuICAgIFxuICAgIHRyYW5zZm9ybWVyID0gY3JlYXRlVHJhbnNmb3JtZXIoe1xuICAgICAgb3B0aW9uczogdXNlck9wdGlvbnMsXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgLy8gd2hlbiBubyB1c2VyIG9wdGlvbnMgYXJlIHByb3ZpZGVkLCB1c2UgdGhlIGRlZmF1bHQgbG9hZGVyIGNvbmZpZ1xuICAgIHRyYW5zZm9ybWVyID0gY3JlYXRlVHJhbnNmb3JtZXIoe1xuICAgICAgb3B0aW9uczoge1xuICAgICAgICBsb2FkZXI6IHtcbiAgICAgICAgICAuLi5ERUZBVUxUX0xPQURFUl9DT05GSUcsXG4gICAgICAgICAgbW9kZTogZ2V0Tm9kZUVudigpLFxuICAgICAgICB9LFxuICAgICAgICB2ZXJib3NlOiBmYWxzZSxcbiAgICAgICAgcGFuaWNUaHJlc2hvbGQ6IFwibm9uZVwiLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBpZiAoIWluaXRpYWxpemVkICYmIGxvYWRlclBvcnQpIHtcbiAgICBsb2FkZXJQb3J0LnBvc3RNZXNzYWdlKHtcbiAgICAgIHR5cGU6IFwiSU5JVElBTElaRURfUkVBQ1RfTE9BREVSXCIsXG4gICAgICBpZDogZGF0YS5pZCxcbiAgICB9IHNhdGlzZmllcyBJbml0aWFsaXplZFJlYWN0TG9hZGVyTWVzc2FnZSk7XG4gIH1cbiAgaW5pdGlhbGl6ZWQgPSB0cnVlO1xufVxuXG5leHBvcnQgY29uc3QgbG9hZDogTG9hZEhvb2sgPSBhc3luYyAodXJsLCBjb250ZXh0LCBuZXh0TG9hZCkgPT4ge1xuICBpZiAoIWluaXRpYWxpemVkKSB7XG4gICAgaW5pdGlhbGl6ZShjb250ZXh0IGFzIG5ldmVyKTtcbiAgfVxuICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICBjb25zb2xlLmxvZyhcIltyZWFjdC1sb2FkZXJdIEF0dGVtcHRpbmcgdG8gbG9hZDpcIiwgdXJsKTtcbiAgICBjb25zb2xlLmxvZyhcIltyZWFjdC1sb2FkZXJdIENvbnRleHQ6XCIsIHtcbiAgICAgIGZvcm1hdDogY29udGV4dC5mb3JtYXQsXG4gICAgICBjb25kaXRpb25zOiBjb250ZXh0LmNvbmRpdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICBjb25zdCB7IGZvcm1hdCB9ID0gY29udGV4dDtcbiAgaWYgKGZvcm1hdCA9PT0gXCJtb2R1bGVcIiB8fCBmb3JtYXQgPT09IFwibW9kdWxlLXR5cGVzY3JpcHRcIikge1xuICAgIGlmICh1c2VyT3B0aW9ucz8udmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBMb2FkaW5nIG1vZHVsZTpcIiwgdXJsKTtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgbmV4dExvYWQodXJsLCBjb250ZXh0KTtcbiAgICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiW3JlYWN0LWxvYWRlcl0gTmV4dCBsb2FkIHJlc3VsdDpcIiwge1xuICAgICAgICBmb3JtYXQ6IHJlc3VsdC5mb3JtYXQsXG4gICAgICAgIHNob3J0Q2lyY3VpdDogcmVzdWx0LnNob3J0Q2lyY3VpdCxcbiAgICAgICAgc291cmNlOiB0eXBlb2YgcmVzdWx0LnNvdXJjZSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHNvdXJjZSA9XG4gICAgICB0eXBlb2YgcmVzdWx0LnNvdXJjZSA9PT0gXCJzdHJpbmdcIlxuICAgICAgICA/IHJlc3VsdC5zb3VyY2VcbiAgICAgICAgOiByZXN1bHQuc291cmNlIGluc3RhbmNlb2YgVWludDhBcnJheVxuICAgICAgICA/IG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShyZXN1bHQuc291cmNlKVxuICAgICAgICA6IFN0cmluZyhyZXN1bHQuc291cmNlKTtcblxuICAgIC8vIENoZWNrIGZvciBmaWxlLWxldmVsIHNlcnZlciBkaXJlY3RpdmUgZmlyc3RcbiAgICBjb25zdCBoYXNGaWxlTGV2ZWxTZXJ2ZXJEaXJlY3RpdmUgPVxuICAgICAgc291cmNlLnN0YXJ0c1dpdGgoJ1widXNlIHNlcnZlclwiJykgfHwgc291cmNlLnN0YXJ0c1dpdGgoXCIndXNlIHNlcnZlcidcIik7XG4gICAgY29uc3QgaGFzRmlsZUxldmVsQ2xpZW50RGlyZWN0aXZlID1cbiAgICAgIHNvdXJjZS5zdGFydHNXaXRoKCdcInVzZSBjbGllbnRcIicpIHx8IHNvdXJjZS5zdGFydHNXaXRoKFwiJ3VzZSBjbGllbnQnXCIpO1xuXG4gICAgY29uc3QgaXNTZXJ2ZXIgPVxuICAgICAgaGFzRmlsZUxldmVsU2VydmVyRGlyZWN0aXZlIHx8XG4gICAgICAodHlwZW9mIGlzU2VydmVyRnVuY3Rpb24gPT09IFwiZnVuY3Rpb25cIlxuICAgICAgICA/IGlzU2VydmVyRnVuY3Rpb24oc291cmNlLCB1cmwpXG4gICAgICAgIDogZmFsc2UpO1xuXG4gICAgY29uc3QgaXNDbGllbnQgPVxuICAgICAgaGFzRmlsZUxldmVsQ2xpZW50RGlyZWN0aXZlIHx8XG4gICAgICAodHlwZW9mIGlzQ2xpZW50Q29tcG9uZW50ID09PSBcImZ1bmN0aW9uXCJcbiAgICAgICAgPyBpc0NsaWVudENvbXBvbmVudChzb3VyY2UsIHVybClcbiAgICAgICAgOiBmYWxzZSk7XG5cbiAgICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICAgIGxldCBzdGFydFByZXZpZXdJbmRleCA9IDA7XG4gICAgICBsZXQgc3RhcnRMaW5lID0gMDtcbiAgICAgIGxldCBsaW5lcyA9IHNvdXJjZS5zcGxpdChcIlxcblwiKTtcbiAgICAgIHdoaWxlIChcbiAgICAgICAgbGluZXNbc3RhcnRMaW5lXS50cmltKCkgPT09IFwiXCIgfHwgbGluZXNbc3RhcnRMaW5lXS50cmltKCkgPT09IFwiXFxyXCIgfHxcbiAgICAgICAgLy8gY29tbWVudCBsaW5lc1xuICAgICAgICBsaW5lc1tzdGFydExpbmVdLnRyaW0oKS5zdGFydHNXaXRoKFwiLy9cIilcbiAgICAgICAgfHwgbGluZXNbc3RhcnRMaW5lXS50cmltKCkuc3RhcnRzV2l0aChcIi8qKlwiKVxuICAgICAgICB8fCBsaW5lc1tzdGFydExpbmVdLnRyaW0oKS5zdGFydHNXaXRoKFwiKlwiKVxuICAgICAgKSB7XG4gICAgICAgIHN0YXJ0UHJldmlld0luZGV4ICs9IGxpbmVzW3N0YXJ0TGluZV0ubGVuZ3RoO1xuICAgICAgICBzdGFydExpbmUrKztcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKFwiW3JlYWN0LWxvYWRlcl0gTW9kdWxlIGFuYWx5c2lzOlwiLCB7XG4gICAgICAgIHVybCxcbiAgICAgICAgaXNTZXJ2ZXIsXG4gICAgICAgIGlzQ2xpZW50LFxuICAgICAgICBoYXNGaWxlTGV2ZWxTZXJ2ZXJEaXJlY3RpdmUsXG4gICAgICAgIGhhc0ZpbGVMZXZlbENsaWVudERpcmVjdGl2ZSxcbiAgICAgICAgc291cmNlTGVuZ3RoOiBzb3VyY2UubGVuZ3RoLFxuICAgICAgICBzb3VyY2VQcmV2aWV3OiBzb3VyY2Uuc2xpY2Uoc3RhcnRQcmV2aWV3SW5kZXgsIHN0YXJ0UHJldmlld0luZGV4ICsgMTAwKSArIFwiLi4uXCIsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoIWlzU2VydmVyICYmICFpc0NsaWVudCkge1xuICAgICAgaWYgKHVzZXJPcHRpb25zPy52ZXJib3NlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIFwiW3JlYWN0LWxvYWRlcl0gU2tpcHBpbmcgbm9uLXNlcnZlci9ub24tY2xpZW50IG1vZHVsZTpcIixcbiAgICAgICAgICB1cmxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIGZpbGUgVVJMc1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdXJsLnN0YXJ0c1dpdGgoXCJmaWxlOi8vXCIpID8gZmlsZVVSTFRvUGF0aCh1cmwpIDogdXJsO1xuICAgIGlmICh1c2VyT3B0aW9ucz8udmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBGaWxlIHBhdGg6XCIsIGZpbGVQYXRoKTtcbiAgICB9XG5cbiAgICAvLyBOb3JtYWxpemUgdGhlIFVSTCB1c2luZyB0aGUgc2FtZSBsb2dpYyBhcyBwbHVnaW4uc2VydmVyLnRzXG4gICAgbGV0IG1vZHVsZUlEID0gZmlsZVBhdGg7XG4gICAgbGV0IGZpbmFsSUQgPSBmaWxlUGF0aDtcbiAgICBpZiAodXNlck9wdGlvbnM/Lm5vcm1hbGl6ZXIpIHtcbiAgICAgIGNvbnN0IFssIHZhbHVlXSA9IHVzZXJPcHRpb25zLm5vcm1hbGl6ZXIoZmlsZVBhdGgpO1xuICAgICAgbW9kdWxlSUQgPSBqb2luKHVzZXJPcHRpb25zLm1vZHVsZUJhc2VQYXRoLCB2YWx1ZSk7XG4gICAgICBmaW5hbElEID0gdXNlck9wdGlvbnMubW9kdWxlSUQ/Lihtb2R1bGVJRCkgfHwgbW9kdWxlSUQ7XG4gICAgICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBOb3JtYWxpemVkIElEczpcIiwgeyBtb2R1bGVJRCwgZmluYWxJRCB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB7IGNvZGU6IHRyYW5zZm9ybWVkLCBtYXAgfSA9IGF3YWl0IHRyYW5zZm9ybWVyKHNvdXJjZSwgZmluYWxJRCk7XG5cbiAgICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICAgIGNvbnNvbGUubG9nKFwiW3JlYWN0LWxvYWRlcl0gVHJhbnNmb3JtYXRpb24gcmVzdWx0OlwiLCB7XG4gICAgICAgIG9yaWdpbmFsTGVuZ3RoOiBzb3VyY2UubGVuZ3RoLFxuICAgICAgICB0cmFuc2Zvcm1lZExlbmd0aDogdHJhbnNmb3JtZWQubGVuZ3RoLFxuICAgICAgICB3YXNUcmFuc2Zvcm1lZDogc291cmNlICE9PSB0cmFuc2Zvcm1lZCxcbiAgICAgICAgaGFzU291cmNlTWFwOiAhIW1hcCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChsb2FkZXJQb3J0KSB7XG4gICAgICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBTZW5kaW5nIFNFUlZFUl9NT0RVTEUgbWVzc2FnZVwiKTtcbiAgICAgIH1cbiAgICAgIGxvYWRlclBvcnQucG9zdE1lc3NhZ2Uoe1xuICAgICAgICB0eXBlOiBcIlNFUlZFUl9NT0RVTEVcIixcbiAgICAgICAgaWQ6IGZpbmFsSUQsXG4gICAgICAgIHVybDogZmlsZVBhdGgsXG4gICAgICAgIHNvdXJjZTogdHJhbnNmb3JtZWQsXG4gICAgICB9IHNhdGlzZmllcyBTZXJ2ZXJNb2R1bGVNZXNzYWdlKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ucmVzdWx0LFxuICAgICAgc291cmNlOiB0cmFuc2Zvcm1lZCxcbiAgICAgIG1hcCxcbiAgICB9O1xuICB9XG5cbiAgaWYgKHVzZXJPcHRpb25zPy52ZXJib3NlKSB7XG4gICAgY29uc29sZS5sb2coXCJbcmVhY3QtbG9hZGVyXSBTa2lwcGluZyBub24tbW9kdWxlIGZvcm1hdDpcIiwgZm9ybWF0KTtcbiAgfVxuICByZXR1cm4gbmV4dExvYWQodXJsLCBjb250ZXh0KTtcbn07XG5cbmV4cG9ydCBjb25zdCByZXNvbHZlOiBSZXNvbHZlSG9vayA9IGFzeW5jIChzcGVjaWZpZXIsIGNvbnRleHQsIG5leHRSZXNvbHZlKSA9PiB7XG4gIGlmICh1c2VyT3B0aW9ucz8udmVyYm9zZSkge1xuICAgIGNvbnNvbGUubG9nKFwiW3JlYWN0LWxvYWRlcl0gUmVzb2x2aW5nOlwiLCBzcGVjaWZpZXIpO1xuICAgIGNvbnNvbGUubG9nKFwiW3JlYWN0LWxvYWRlcl0gUmVzb2x2ZSBjb250ZXh0OlwiLCBjb250ZXh0KTtcbiAgfVxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBuZXh0UmVzb2x2ZShzcGVjaWZpZXIsIGNvbnRleHQpO1xuICBpZiAodXNlck9wdGlvbnM/LnZlcmJvc2UpIHtcbiAgICBjb25zb2xlLmxvZyhcIltyZWFjdC1sb2FkZXJdIFJlc29sdmUgcmVzdWx0OlwiLCByZXN1bHQpO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFnQ0EsSUFBSSxXQUFjLEdBQUEsS0FBQTtBQUNsQixJQUFJLFdBQUE7QUFDSixJQUFJLFVBQUE7QUFDSixJQUFJLG1CQUlPLHFCQUFzQixDQUFBLG9CQUFBO0FBRWpDLElBQUksb0JBSU8scUJBQXNCLENBQUEscUJBQUE7QUFFakMsSUFBSSxXQUFBO0FBS0csU0FBUyxXQUNkLElBS0ksR0FBQTtBQUFBLEVBQ0YsRUFBSSxFQUFBLGNBQUE7QUFBQSxFQUNKLElBQUEsRUFBTSxJQUFJLFdBQVksRUFBQTtBQUFBLEVBQ3RCLFdBQWEsRUFBQSxJQUFBO0FBQUEsRUFDYixjQUFnQixFQUFBO0FBQ2xCLENBQ0EsRUFBQTtBQUNBLEVBQUEsSUFBSSxhQUFhLE9BQVMsRUFBQTtBQUN4QixJQUFRLE9BQUEsQ0FBQSxHQUFBLENBQUksMkNBQTZDLEVBQUEsSUFBQSxDQUFLLEVBQUUsQ0FBQTtBQUFBO0FBRWxFLEVBQUEsVUFBQSxHQUFhLElBQUssQ0FBQSxJQUFBO0FBQ2xCLEVBQUEsSUFBSSxLQUFLLFdBQWEsRUFBQTtBQUVwQixJQUFNLE1BQUEsbUJBQUEsR0FBc0Isa0JBQW1CLENBQUEsSUFBQSxDQUFLLFdBQVcsQ0FBQTtBQUMvRCxJQUFJLElBQUEsbUJBQUEsQ0FBb0IsU0FBUyxPQUFTLEVBQUE7QUFDeEMsTUFBQSxNQUFNLElBQUksS0FBQSxDQUFNLG1CQUFvQixDQUFBLEtBQUEsQ0FBTSxPQUFPLENBQUE7QUFBQTtBQUluRCxJ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
@@ -0,0 +1,5 @@
1
+ export declare function removeDirectives(source: string, directiveRanges: Array<{
2
+ start: number;
3
+ end: number;
4
+ }>): string;
5
+ //# sourceMappingURL=removeDirectives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeDirectives.d.ts","sourceRoot":"","sources":["../../../plugin/loader/removeDirectives.ts"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,CAW/G"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * vite-plugin-react-server
3
+ * Copyright (c) Nico Brinkkemper
4
+ * MIT License
5
+ */
6
+ import { removeRanges } from './removeRanges.js';
7
+
8
+ function removeDirectives(source, directiveRanges) {
9
+ const sortedRanges = directiveRanges.toSorted((a, b) => a.start - b.start);
10
+ if (sortedRanges.length === 0) {
11
+ return source;
12
+ }
13
+ return removeRanges(source, sortedRanges);
14
+ }
15
+
16
+ export { removeDirectives };
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlRGlyZWN0aXZlcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGx1Z2luL2xvYWRlci9yZW1vdmVEaXJlY3RpdmVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbW92ZVJhbmdlcyB9IGZyb20gXCIuL3JlbW92ZVJhbmdlcy5qc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlRGlyZWN0aXZlcyhzb3VyY2U6IHN0cmluZywgZGlyZWN0aXZlUmFuZ2VzOiBBcnJheTx7IHN0YXJ0OiBudW1iZXI7IGVuZDogbnVtYmVyIH0+KTogc3RyaW5nIHtcbiAgLy8gU29ydCByYW5nZXMgYnkgc3RhcnQgcG9zaXRpb25cbiAgY29uc3Qgc29ydGVkUmFuZ2VzID0gZGlyZWN0aXZlUmFuZ2VzLnRvU29ydGVkKChhLCBiKSA9PiBhLnN0YXJ0IC0gYi5zdGFydCk7XG5cbiAgLy8gUmVtb3ZlIHJhbmdlcyBmcm9tIHNvdXJjZVxuICBpZiAoc29ydGVkUmFuZ2VzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBzb3VyY2U7XG4gIH1cblxuICAvLyBSZW1vdmUgZGlyZWN0aXZlcyBmcm9tIHNvdXJjZSB1c2luZyB0aGUgcHJvdmlkZWQgcmFuZ2VzXG4gIHJldHVybiByZW1vdmVSYW5nZXMoc291cmNlLCBzb3J0ZWRSYW5nZXMpO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxTQUFTLGdCQUFBLENBQWlCLFFBQWdCLGVBQWdFLEVBQUE7QUFFL0csRUFBTSxNQUFBLFlBQUEsR0FBZSxnQkFBZ0IsUUFBUyxDQUFBLENBQUMsR0FBRyxDQUFNLEtBQUEsQ0FBQSxDQUFFLEtBQVEsR0FBQSxDQUFBLENBQUUsS0FBSyxDQUFBO0FBR3pFLEVBQUksSUFBQSxZQUFBLENBQWEsV0FBVyxDQUFHLEVBQUE7QUFDN0IsSUFBTyxPQUFBLE1BQUE7QUFBQTtBQUlULEVBQU8sT0FBQSxZQUFBLENBQWEsUUFBUSxZQUFZLENBQUE7QUFDMUM7Ozs7In0=
@@ -0,0 +1,5 @@
1
+ export declare function removeRanges(source: string, ranges: {
2
+ start: number;
3
+ end: number;
4
+ }[]): string;
5
+ //# sourceMappingURL=removeRanges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeRanges.d.ts","sourceRoot":"","sources":["../../../plugin/loader/removeRanges.ts"],"names":[],"mappings":"AACA,wBAAgB,YAAY,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EAAE,GACvC,MAAM,CAgBR"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * vite-plugin-react-server
3
+ * Copyright (c) Nico Brinkkemper
4
+ * MIT License
5
+ */
6
+ function removeRanges(source, ranges) {
7
+ if (!ranges.length) {
8
+ return source;
9
+ }
10
+ ranges.sort((a, b) => a.start - b.start);
11
+ let result = source;
12
+ for (let i = ranges.length - 1; i >= 0; i--) {
13
+ const { start, end } = ranges[i];
14
+ result = result.slice(0, start) + result.slice(end);
15
+ }
16
+ return result;
17
+ }
18
+
19
+ export { removeRanges };
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlUmFuZ2VzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9wbHVnaW4vbG9hZGVyL3JlbW92ZVJhbmdlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVSYW5nZXMoXG4gICAgc291cmNlOiBzdHJpbmcsXG4gICAgcmFuZ2VzOiB7IHN0YXJ0OiBudW1iZXI7IGVuZDogbnVtYmVyIH1bXVxuICApOiBzdHJpbmcge1xuICAgIGlmICghcmFuZ2VzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHNvdXJjZTtcbiAgICB9XG4gIFxuICAgIC8vIFNvcnQgcmFuZ2VzIGJ5IHN0YXJ0IHBvc2l0aW9uXG4gICAgcmFuZ2VzLnNvcnQoKGEsIGIpID0+IGEuc3RhcnQgLSBiLnN0YXJ0KTtcbiAgXG4gICAgLy8gUmVtb3ZlIHJhbmdlcyBmcm9tIGVuZCB0byBzdGFydCB0byBhdm9pZCBwb3NpdGlvbiBzaGlmdHNcbiAgICBsZXQgcmVzdWx0ID0gc291cmNlO1xuICAgIGZvciAobGV0IGkgPSByYW5nZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGNvbnN0IHsgc3RhcnQsIGVuZCB9ID0gcmFuZ2VzW2ldO1xuICAgICAgcmVzdWx0ID0gcmVzdWx0LnNsaWNlKDAsIHN0YXJ0KSArIHJlc3VsdC5zbGljZShlbmQpO1xuICAgIH1cbiAgXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNPLFNBQVMsWUFBQSxDQUNaLFFBQ0EsTUFDUSxFQUFBO0FBQ1IsRUFBSSxJQUFBLENBQUMsT0FBTyxNQUFRLEVBQUE7QUFDbEIsSUFBTyxPQUFBLE1BQUE7QUFBQTtBQUlULEVBQUEsTUFBQSxDQUFPLEtBQUssQ0FBQyxDQUFBLEVBQUcsTUFBTSxDQUFFLENBQUEsS0FBQSxHQUFRLEVBQUUsS0FBSyxDQUFBO0FBR3ZDLEVBQUEsSUFBSSxNQUFTLEdBQUEsTUFBQTtBQUNiLEVBQUEsS0FBQSxJQUFTLElBQUksTUFBTyxDQUFBLE1BQUEsR0FBUyxDQUFHLEVBQUEsQ0FBQSxJQUFLLEdBQUcsQ0FBSyxFQUFBLEVBQUE7QUFDM0MsSUFBQSxNQUFNLEVBQUUsS0FBQSxFQUFPLEdBQUksRUFBQSxHQUFJLE9BQU8sQ0FBQyxDQUFBO0FBQy9CLElBQUEsTUFBQSxHQUFTLE9BQU8sS0FBTSxDQUFBLENBQUEsRUFBRyxLQUFLLENBQUksR0FBQSxNQUFBLENBQU8sTUFBTSxHQUFHLENBQUE7QUFBQTtBQUdwRCxFQUFPLE9BQUEsTUFBQTtBQUNUOzs7OyJ9
@@ -1,35 +1,27 @@
1
- import type { SourceMap } from "../types/sourceMap.js";
1
+ import type { RawSourceMap } from "source-map";
2
2
  /**
3
- * Creates a basic source map for a module
3
+ * Source map handling utilities
4
4
  */
5
- export declare function createBasicSourceMap(url: string, source: string): SourceMap;
6
- /**
7
- * Extends an existing source map with new lines
8
- */
9
- export declare function extendSourceMap(sourceMap: SourceMap, newLines: number, originalSource: string): SourceMap;
5
+ interface RangeToRemove {
6
+ start: number;
7
+ end: number;
8
+ lineShift: number;
9
+ }
10
10
  /**
11
- * Adds a source map as a base64 data URL to the source code
11
+ * Creates a source map for the given source code
12
12
  */
13
- export declare function addSourceMapToSource(source: string, sourceMap: SourceMap): string;
13
+ export declare function createSourceMap(code: string, originalSource: string, moduleId: string, rangesToRemove?: RangeToRemove[]): RawSourceMap;
14
14
  /**
15
- * Detects and extracts source map URL from source code
15
+ * Strips the source map URL from the source string
16
16
  */
17
- export declare function detectSourceMapURL(source: string): {
18
- url: string | null;
19
- start: number;
20
- end: number;
21
- lines: number;
22
- };
17
+ export declare function stripSourceMap(source: string): string;
23
18
  /**
24
- * Strips source map URL comment from source code
19
+ * Adds a source map URL to the source string
25
20
  */
26
- export declare function stripSourceMapURL(source: string, sourceMapInfo: {
27
- start: number;
28
- end: number;
29
- lines: number;
30
- }): string;
21
+ export declare function addSourceMap(source: string, map: RawSourceMap): string;
31
22
  /**
32
- * Creates a source map with the given parameters
23
+ * Parses a source map URL from a source string
33
24
  */
34
- export declare function createSourceMap(id: string, code: string, mappings: string): SourceMap;
25
+ export declare function parseSourceMapUrl(source: string): string | null;
26
+ export {};
35
27
  //# sourceMappingURL=sourceMap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sourceMap.d.ts","sourceRoot":"","sources":["../../../plugin/loader/sourceMap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAuB3E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,SAAS,CAgBzG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAQjF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAqBpH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAOtH;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAUrF"}
1
+ {"version":3,"file":"sourceMap.d.ts","sourceRoot":"","sources":["../../../plugin/loader/sourceMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;GAEG;AAEH,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,cAAc,GAAE,aAAa,EAAO,GACnC,YAAY,CAsFd;AAuED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAKrD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAItE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ/D"}
@@ -1,105 +1,133 @@
1
- import { createMappingsSerializer } from "../source-map/createMappingsSerializer.js";
2
- import { basename } from "path";
3
1
  /**
4
- * Creates a basic source map for a module
2
+ * vite-plugin-react-server
3
+ * Copyright (c) Nico Brinkkemper
4
+ * MIT License
5
5
  */
6
- export function createBasicSourceMap(url, source) {
7
- const createMapping = createMappingsSerializer();
8
- let mappings = '';
9
- let lineCount = 1;
10
- let idx = -1;
11
- // Map each line with VLQ encoding
12
- while ((idx = source.indexOf('\n', idx + 1)) !== -1) {
13
- createMapping(lineCount, 0, 0, lineCount, 0, -1);
14
- lineCount++;
6
+ function createSourceMap(code, originalSource, moduleId, rangesToRemove = []) {
7
+ const codeLines = code.split("\n");
8
+ const originalLines = originalSource.split("\n");
9
+ let currentColumn = 0;
10
+ let sourceLine = 0;
11
+ let sourceColumn = 0;
12
+ const lastSourceIndex = 0;
13
+ const lastNameIndex = -1;
14
+ const mappings = [];
15
+ const createMapping = createMappingsSerializer();
16
+ for (let i = 0; i < originalLines.length; i++) {
17
+ const mapping = createMapping(
18
+ i + 1,
19
+ // generated line
20
+ 0,
21
+ // generated column
22
+ 0,
23
+ // source index
24
+ i + 1,
25
+ // original line
26
+ 0,
27
+ // original column
28
+ -1
29
+ // name index
30
+ );
31
+ mappings.push(mapping);
32
+ }
33
+ for (let i = 0; i < codeLines.length; i++) {
34
+ const lineRanges = rangesToRemove.filter((range) => {
35
+ const rangeStartLine = originalSource.slice(0, range.start).split("\n").length - 1;
36
+ const rangeEndLine = originalSource.slice(0, range.end).split("\n").length - 1;
37
+ return rangeStartLine <= sourceLine && rangeEndLine >= sourceLine;
38
+ });
39
+ if (lineRanges.length > 0) {
40
+ const mapping = createMapping(
41
+ i + 1,
42
+ // generated line
43
+ currentColumn,
44
+ // generated column
45
+ lastSourceIndex,
46
+ // source index
47
+ sourceLine + 1 + (lineRanges[0].lineShift || 0),
48
+ // original line with shift
49
+ sourceColumn,
50
+ // original column
51
+ lastNameIndex
52
+ // name index
53
+ );
54
+ mappings.push(mapping);
55
+ const directiveRange = lineRanges[0];
56
+ const directiveLength = directiveRange.end - directiveRange.start;
57
+ currentColumn += directiveLength;
58
+ } else {
59
+ const mapping = createMapping(
60
+ i + 1,
61
+ // generated line
62
+ currentColumn,
63
+ // generated column
64
+ lastSourceIndex,
65
+ // source index
66
+ sourceLine + 1,
67
+ // original line
68
+ sourceColumn,
69
+ // original column
70
+ lastNameIndex
71
+ // name index
72
+ );
73
+ mappings.push(mapping);
15
74
  }
16
- // Add final line
17
- createMapping(lineCount, 0, 0, lineCount, 0, -1);
18
- return {
19
- version: 3,
20
- file: basename(url),
21
- sources: [url],
22
- sourcesContent: [source],
23
- mappings,
24
- sourceRoot: '',
25
- names: []
26
- };
75
+ currentColumn = 0;
76
+ sourceLine++;
77
+ sourceColumn = 0;
78
+ }
79
+ const mappingsString = mappings.join(";");
80
+ return {
81
+ version: 3,
82
+ file: moduleId,
83
+ sources: [moduleId],
84
+ names: [],
85
+ mappings: mappingsString,
86
+ sourceRoot: "",
87
+ sourcesContent: [originalSource]
88
+ // Keep the original source with directives
89
+ };
27
90
  }
28
- /**
29
- * Extends an existing source map with new lines
30
- */
31
- export function extendSourceMap(sourceMap, newLines, originalSource) {
32
- const createMapping = createMappingsSerializer();
33
- let mappings = sourceMap.mappings || '';
34
- let lineCount = originalSource.split('\n').length;
35
- // Add padding for new lines
36
- for (let i = 0; i < newLines; i++) {
37
- createMapping(lineCount + i, 0, 0, lineCount + i, 0, -1);
38
- }
39
- return {
40
- ...sourceMap,
41
- version: 3,
42
- sourcesContent: [originalSource],
43
- mappings
44
- };
45
- }
46
- /**
47
- * Adds a source map as a base64 data URL to the source code
48
- */
49
- export function addSourceMapToSource(source, sourceMap) {
50
- // Convert version to number for serialization
51
- const serializedMap = {
52
- ...sourceMap,
53
- version: Number(sourceMap.version)
54
- };
55
- return source + '\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,' +
56
- Buffer.from(JSON.stringify(serializedMap)).toString('base64');
57
- }
58
- /**
59
- * Detects and extracts source map URL from source code
60
- */
61
- export function detectSourceMapURL(source) {
62
- let sourceMappingURL = null;
63
- let sourceMappingStart = 0;
64
- let sourceMappingEnd = 0;
65
- let sourceMappingLines = 0;
66
- const lines = source.split('\n');
67
- for (let i = 0; i < lines.length; i++) {
68
- const line = lines[i];
69
- if (line.includes('# sourceMappingURL=') || line.includes('@ sourceMappingURL=')) {
70
- const match = line.match(/(?:#|@) sourceMappingURL=(.+)/);
71
- if (match) {
72
- sourceMappingURL = match[1];
73
- sourceMappingStart = source.indexOf(line);
74
- sourceMappingEnd = sourceMappingStart + line.length;
75
- sourceMappingLines = 1;
76
- }
77
- }
78
- }
79
- return { url: sourceMappingURL, start: sourceMappingStart, end: sourceMappingEnd, lines: sourceMappingLines };
91
+ function createMappingsSerializer() {
92
+ return function createMapping(_generatedLine, generatedColumn, sourceIndex, originalLine, originalColumn, nameIndex) {
93
+ const values = [
94
+ generatedColumn,
95
+ sourceIndex,
96
+ originalLine,
97
+ originalColumn,
98
+ nameIndex
99
+ ];
100
+ return encodeVLQ(values);
101
+ };
80
102
  }
81
- /**
82
- * Strips source map URL comment from source code
83
- */
84
- export function stripSourceMapURL(source, sourceMapInfo) {
85
- if (sourceMapInfo.start === 0 && sourceMapInfo.end === 0) {
86
- return source;
103
+ function encodeVLQ(values) {
104
+ const VLQ_BASE_SHIFT = 5;
105
+ const VLQ_BASE = 1 << VLQ_BASE_SHIFT;
106
+ const VLQ_BASE_MASK = VLQ_BASE - 1;
107
+ const VLQ_CONTINUATION_BIT = VLQ_BASE;
108
+ let result = "";
109
+ for (let i = 0; i < values.length; i++) {
110
+ let value = values[i];
111
+ if (value < 0) {
112
+ value = -value << 1 | 1;
113
+ } else {
114
+ value = value << 1;
87
115
  }
88
- return source.slice(0, sourceMapInfo.start) +
89
- '\n'.repeat(sourceMapInfo.lines) +
90
- source.slice(sourceMapInfo.end);
116
+ do {
117
+ let digit = value & VLQ_BASE_MASK;
118
+ value >>>= VLQ_BASE_SHIFT;
119
+ if (value !== 0) {
120
+ digit |= VLQ_CONTINUATION_BIT;
121
+ }
122
+ result += encodeBase64Digit(digit);
123
+ } while (value !== 0);
124
+ }
125
+ return result;
91
126
  }
92
- /**
93
- * Creates a source map with the given parameters
94
- */
95
- export function createSourceMap(id, code, mappings) {
96
- return {
97
- version: 3,
98
- file: basename(id),
99
- sources: [id],
100
- sourcesContent: [code],
101
- names: [],
102
- mappings,
103
- sourceRoot: "",
104
- };
127
+ function encodeBase64Digit(digit) {
128
+ const BASE64_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
129
+ return BASE64_CHARS[digit];
105
130
  }
131
+
132
+ export { createSourceMap };
133
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlTWFwLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9wbHVnaW4vbG9hZGVyL3NvdXJjZU1hcC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJhd1NvdXJjZU1hcCB9IGZyb20gXCJzb3VyY2UtbWFwXCI7XG5cbi8qKlxuICogU291cmNlIG1hcCBoYW5kbGluZyB1dGlsaXRpZXNcbiAqL1xuXG5pbnRlcmZhY2UgUmFuZ2VUb1JlbW92ZSB7XG4gIHN0YXJ0OiBudW1iZXI7XG4gIGVuZDogbnVtYmVyO1xuICBsaW5lU2hpZnQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgc291cmNlIG1hcCBmb3IgdGhlIGdpdmVuIHNvdXJjZSBjb2RlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTb3VyY2VNYXAoXG4gIGNvZGU6IHN0cmluZyxcbiAgb3JpZ2luYWxTb3VyY2U6IHN0cmluZyxcbiAgbW9kdWxlSWQ6IHN0cmluZyxcbiAgcmFuZ2VzVG9SZW1vdmU6IFJhbmdlVG9SZW1vdmVbXSA9IFtdXG4pOiBSYXdTb3VyY2VNYXAge1xuICAvLyBTcGxpdCBjb2RlIGludG8gbGluZXMgZm9yIGxpbmUtYnktbGluZSBtYXBwaW5nXG4gIGNvbnN0IGNvZGVMaW5lcyA9IGNvZGUuc3BsaXQoXCJcXG5cIik7XG4gIGNvbnN0IG9yaWdpbmFsTGluZXMgPSBvcmlnaW5hbFNvdXJjZS5zcGxpdChcIlxcblwiKTtcblxuICAvLyBUcmFjayBjdXJyZW50IHBvc2l0aW9ucyBpbiBib3RoIG9yaWdpbmFsIGFuZCB0cmFuc2Zvcm1lZCBjb2RlXG4gIGxldCBjdXJyZW50Q29sdW1uID0gMDtcbiAgbGV0IHNvdXJjZUxpbmUgPSAwO1xuICBsZXQgc291cmNlQ29sdW1uID0gMDtcbiAgY29uc3QgbGFzdFNvdXJjZUluZGV4ID0gMDtcbiAgY29uc3QgbGFzdE5hbWVJbmRleCA9IC0xO1xuXG4gIC8vIEdlbmVyYXRlIG1hcHBpbmdzIGxpbmUgYnkgbGluZVxuICBjb25zdCBtYXBwaW5nczogc3RyaW5nW10gPSBbXTtcbiAgY29uc3QgY3JlYXRlTWFwcGluZyA9IGNyZWF0ZU1hcHBpbmdzU2VyaWFsaXplcigpO1xuXG4gIC8vIEZpcnN0LCBjcmVhdGUgYSBtYXBwaW5nIGZvciBlYWNoIGxpbmUgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZVxuICBmb3IgKGxldCBpID0gMDsgaSA8IG9yaWdpbmFsTGluZXMubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBtYXBwaW5nID0gY3JlYXRlTWFwcGluZyhcbiAgICAgIGkgKyAxLCAvLyBnZW5lcmF0ZWQgbGluZVxuICAgICAgMCwgLy8gZ2VuZXJhdGVkIGNvbHVtblxuICAgICAgMCwgLy8gc291cmNlIGluZGV4XG4gICAgICBpICsgMSwgLy8gb3JpZ2luYWwgbGluZVxuICAgICAgMCwgLy8gb3JpZ2luYWwgY29sdW1uXG4gICAgICAtMSAvLyBuYW1lIGluZGV4XG4gICAgKTtcbiAgICBtYXBwaW5ncy5wdXNoKG1hcHBpbmcpO1xuICB9XG5cbiAgLy8gVGhlbiwgY3JlYXRlIG1hcHBpbmdzIGZvciB0aGUgdHJhbnNmb3JtZWQgY29kZVxuICBmb3IgKGxldCBpID0gMDsgaSA8IGNvZGVMaW5lcy5sZW5ndGg7IGkrKykge1xuICAgIC8vIENoZWNrIGlmIHRoaXMgbGluZSBjb250YWlucyBhbnkgcmFuZ2VzIHRvIHJlbW92ZVxuICAgIGNvbnN0IGxpbmVSYW5nZXMgPSByYW5nZXNUb1JlbW92ZS5maWx0ZXIoKHJhbmdlKSA9PiB7XG4gICAgICBjb25zdCByYW5nZVN0YXJ0TGluZSA9IG9yaWdpbmFsU291cmNlLnNsaWNlKDAsIHJhbmdlLnN0YXJ0KS5zcGxpdChcIlxcblwiKS5sZW5ndGggLSAxO1xuICAgICAgY29uc3QgcmFuZ2VFbmRMaW5lID0gb3JpZ2luYWxTb3VyY2Uuc2xpY2UoMCwgcmFuZ2UuZW5kKS5zcGxpdChcIlxcblwiKS5sZW5ndGggLSAxO1xuICAgICAgcmV0dXJuIHJhbmdlU3RhcnRMaW5lIDw9IHNvdXJjZUxpbmUgJiYgcmFuZ2VFbmRMaW5lID49IHNvdXJjZUxpbmU7XG4gICAgfSk7XG5cbiAgICBpZiAobGluZVJhbmdlcy5sZW5ndGggPiAwKSB7XG4gICAgICAvLyBGb3IgbGluZXMgd2l0aCBkaXJlY3RpdmVzLCBtYXAgdG8gdGhlIG9yaWdpbmFsIGxpbmUgaW5jbHVkaW5nIHRoZSBkaXJlY3RpdmVcbiAgICAgIC8vIGJ1dCBza2lwIHRoZSBkaXJlY3RpdmUgcmFuZ2UgaW4gdGhlIGdlbmVyYXRlZCBjb2RlXG4gICAgICBjb25zdCBtYXBwaW5nID0gY3JlYXRlTWFwcGluZyhcbiAgICAgICAgaSArIDEsIC8vIGdlbmVyYXRlZCBsaW5lXG4gICAgICAgIGN1cnJlbnRDb2x1bW4sIC8vIGdlbmVyYXRlZCBjb2x1bW5cbiAgICAgICAgbGFzdFNvdXJjZUluZGV4LCAvLyBzb3VyY2UgaW5kZXhcbiAgICAgICAgc291cmNlTGluZSArIDEgKyAobGluZVJhbmdlc1swXS5saW5lU2hpZnQgfHwgMCksIC8vIG9yaWdpbmFsIGxpbmUgd2l0aCBzaGlmdFxuICAgICAgICBzb3VyY2VDb2x1bW4sIC8vIG9yaWdpbmFsIGNvbHVtblxuICAgICAgICBsYXN0TmFtZUluZGV4IC8vIG5hbWUgaW5kZXhcbiAgICAgICk7XG4gICAgICBtYXBwaW5ncy5wdXNoKG1hcHBpbmcpO1xuXG4gICAgICAvLyBTa2lwIHRoZSBkaXJlY3RpdmUgcmFuZ2UgaW4gdGhlIGdlbmVyYXRlZCBjb2RlXG4gICAgICBjb25zdCBkaXJlY3RpdmVSYW5nZSA9IGxpbmVSYW5nZXNbMF07XG4gICAgICBjb25zdCBkaXJlY3RpdmVMZW5ndGggPSBkaXJlY3RpdmVSYW5nZS5lbmQgLSBkaXJlY3RpdmVSYW5nZS5zdGFydDtcbiAgICAgIGN1cnJlbnRDb2x1bW4gKz0gZGlyZWN0aXZlTGVuZ3RoO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBGb3IgcmVndWxhciBsaW5lcywgbWFwIHRvIHRoZSBvcmlnaW5hbCBsaW5lXG4gICAgICBjb25zdCBtYXBwaW5nID0gY3JlYXRlTWFwcGluZyhcbiAgICAgICAgaSArIDEsIC8vIGdlbmVyYXRlZCBsaW5lXG4gICAgICAgIGN1cnJlbnRDb2x1bW4sIC8vIGdlbmVyYXRlZCBjb2x1bW5cbiAgICAgICAgbGFzdFNvdXJjZUluZGV4LCAvLyBzb3VyY2UgaW5kZXhcbiAgICAgICAgc291cmNlTGluZSArIDEsIC8vIG9yaWdpbmFsIGxpbmVcbiAgICAgICAgc291cmNlQ29sdW1uLCAvLyBvcmlnaW5hbCBjb2x1bW5cbiAgICAgICAgbGFzdE5hbWVJbmRleCAvLyBuYW1lIGluZGV4XG4gICAgICApO1xuICAgICAgbWFwcGluZ3MucHVzaChtYXBwaW5nKTtcbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgcG9zaXRpb25zXG4gICAgY3VycmVudENvbHVtbiA9IDA7XG4gICAgc291cmNlTGluZSsrO1xuICAgIHNvdXJjZUNvbHVtbiA9IDA7XG4gIH1cblxuICAvLyBKb2luIG1hcHBpbmdzIHdpdGggc2VtaWNvbG9ucywgZW5zdXJpbmcgZW1wdHkgbGluZXMgYXJlIHByZXNlcnZlZFxuICBjb25zdCBtYXBwaW5nc1N0cmluZyA9IG1hcHBpbmdzLmpvaW4oXCI7XCIpO1xuXG4gIHJldHVybiB7XG4gICAgdmVyc2lvbjogMyxcbiAgICBmaWxlOiBtb2R1bGVJZCxcbiAgICBzb3VyY2VzOiBbbW9kdWxlSWRdLFxuICAgIG5hbWVzOiBbXSxcbiAgICBtYXBwaW5nczogbWFwcGluZ3NTdHJpbmcsXG4gICAgc291cmNlUm9vdDogXCJcIixcbiAgICBzb3VyY2VzQ29udGVudDogW29yaWdpbmFsU291cmNlXSwgLy8gS2VlcCB0aGUgb3JpZ2luYWwgc291cmNlIHdpdGggZGlyZWN0aXZlc1xuICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyBWTFEgbWFwcGluZ3MgZm9yIHNvdXJjZSBtYXBzXG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZU1hcHBpbmdzU2VyaWFsaXplcigpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGNyZWF0ZU1hcHBpbmcoXG4gICAgX2dlbmVyYXRlZExpbmU6IG51bWJlcixcbiAgICBnZW5lcmF0ZWRDb2x1bW46IG51bWJlcixcbiAgICBzb3VyY2VJbmRleDogbnVtYmVyLFxuICAgIG9yaWdpbmFsTGluZTogbnVtYmVyLFxuICAgIG9yaWdpbmFsQ29sdW1uOiBudW1iZXIsXG4gICAgbmFtZUluZGV4OiBudW1iZXJcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCB2YWx1ZXMgPSBbXG4gICAgICBnZW5lcmF0ZWRDb2x1bW4sXG4gICAgICBzb3VyY2VJbmRleCxcbiAgICAgIG9yaWdpbmFsTGluZSxcbiAgICAgIG9yaWdpbmFsQ29sdW1uLFxuICAgICAgbmFtZUluZGV4LFxuICAgIF07XG4gICAgcmV0dXJuIGVuY29kZVZMUSh2YWx1ZXMpO1xuICB9O1xufVxuXG4vKipcbiAqIEVuY29kZXMgYSBzZXJpZXMgb2YgaW50ZWdlcnMgaW50byBhIFZMUSBzdHJpbmdcbiAqL1xuZnVuY3Rpb24gZW5jb2RlVkxRKHZhbHVlczogbnVtYmVyW10pOiBzdHJpbmcge1xuICBjb25zdCBWTFFfQkFTRV9TSElGVCA9IDU7XG4gIGNvbnN0IFZMUV9CQVNFID0gMSA8PCBWTFFfQkFTRV9TSElGVDtcbiAgY29uc3QgVkxRX0JBU0VfTUFTSyA9IFZMUV9CQVNFIC0gMTtcbiAgY29uc3QgVkxRX0NPTlRJTlVBVElPTl9CSVQgPSBWTFFfQkFTRTtcblxuICBsZXQgcmVzdWx0ID0gXCJcIjtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgIGxldCB2YWx1ZSA9IHZhbHVlc1tpXTtcblxuICAgIC8vIEhhbmRsZSBuZWdhdGl2ZSB2YWx1ZXNcbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICB2YWx1ZSA9ICgtdmFsdWUgPDwgMSkgfCAxO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlIDw8IDE7XG4gICAgfVxuXG4gICAgLy8gRW5jb2RlIHRoZSB2YWx1ZVxuICAgIGRvIHtcbiAgICAgIGxldCBkaWdpdCA9IHZhbHVlICYgVkxRX0JBU0VfTUFTSztcbiAgICAgIHZhbHVlID4+Pj0gVkxRX0JBU0VfU0hJRlQ7XG5cbiAgICAgIGlmICh2YWx1ZSAhPT0gMCkge1xuICAgICAgICBkaWdpdCB8PSBWTFFfQ09OVElOVUFUSU9OX0JJVDtcbiAgICAgIH1cblxuICAgICAgcmVzdWx0ICs9IGVuY29kZUJhc2U2NERpZ2l0KGRpZ2l0KTtcbiAgICB9IHdoaWxlICh2YWx1ZSAhPT0gMCk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIEVuY29kZXMgYSBzaW5nbGUgZGlnaXQgaW50byBiYXNlNjRcbiAqL1xuZnVuY3Rpb24gZW5jb2RlQmFzZTY0RGlnaXQoZGlnaXQ6IG51bWJlcik6IHN0cmluZyB7XG4gIGNvbnN0IEJBU0U2NF9DSEFSUyA9XG4gICAgXCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvXCI7XG4gIHJldHVybiBCQVNFNjRfQ0hBUlNbZGlnaXRdO1xufVxuXG4vKipcbiAqIFN0cmlwcyB0aGUgc291cmNlIG1hcCBVUkwgZnJvbSB0aGUgc291cmNlIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gc3RyaXBTb3VyY2VNYXAoc291cmNlOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc291cmNlLnJlcGxhY2UoXG4gICAgL1xcL1xcLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uXFwvanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxbQS1aYS16MC05Ky89XSskL20sXG4gICAgXCJcIlxuICApO1xufVxuXG4vKipcbiAqIEFkZHMgYSBzb3VyY2UgbWFwIFVSTCB0byB0aGUgc291cmNlIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkU291cmNlTWFwKHNvdXJjZTogc3RyaW5nLCBtYXA6IFJhd1NvdXJjZU1hcCk6IHN0cmluZyB7XG4gIGNvbnN0IHNvdXJjZU1hcFN0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1hcCk7XG4gIGNvbnN0IHNvdXJjZU1hcEJhc2U2NCA9IEJ1ZmZlci5mcm9tKHNvdXJjZU1hcFN0cmluZykudG9TdHJpbmcoXCJiYXNlNjRcIik7XG4gIHJldHVybiBgJHtzb3VyY2V9XFxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCR7c291cmNlTWFwQmFzZTY0fWA7XG59XG5cbi8qKlxuICogUGFyc2VzIGEgc291cmNlIG1hcCBVUkwgZnJvbSBhIHNvdXJjZSBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU291cmNlTWFwVXJsKHNvdXJjZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gIGNvbnN0IG1hdGNoID0gc291cmNlLm1hdGNoKFxuICAgIC9cXC9cXC8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvblxcL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsKFtBLVphLXowLTkrLz1dKykkL21cbiAgKTtcbiAgaWYgKCFtYXRjaCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiBtYXRjaFsxXTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWVPLFNBQVMsZ0JBQ2QsSUFDQSxFQUFBLGNBQUEsRUFDQSxRQUNBLEVBQUEsY0FBQSxHQUFrQyxFQUNwQixFQUFBO0FBRWQsRUFBTSxNQUFBLFNBQUEsR0FBWSxJQUFLLENBQUEsS0FBQSxDQUFNLElBQUksQ0FBQTtBQUNqQyxFQUFNLE1BQUEsYUFBQSxHQUFnQixjQUFlLENBQUEsS0FBQSxDQUFNLElBQUksQ0FBQTtBQUcvQyxFQUFBLElBQUksYUFBZ0IsR0FBQSxDQUFBO0FBQ3BCLEVBQUEsSUFBSSxVQUFhLEdBQUEsQ0FBQTtBQUNqQixFQUFBLElBQUksWUFBZSxHQUFBLENBQUE7QUFDbkIsRUFBQSxNQUFNLGVBQWtCLEdBQUEsQ0FBQTtB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
@@ -0,0 +1,9 @@
1
+ import type { ParseResult } from "./directives/types.js";
2
+ import type { LoaderConfig, TransformResult } from "./types.js";
3
+ /**
4
+ * Transforms a client module by:
5
+ * 1. Removing all original code including imports and directives
6
+ * 2. Registering client components with registerClientReference
7
+ */
8
+ export declare function transformClientModule(source: string, moduleId: string, parseResult: ParseResult, loader?: Pick<LoaderConfig, "registerClientReferenceName" | "importClientPath">, verbose?: boolean): Promise<TransformResult>;
9
+ //# sourceMappingURL=transformClientModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformClientModule.d.ts","sourceRoot":"","sources":["../../../plugin/loader/transformClientModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIhE;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,WAAW,EACxB,MAAM,GAAE,IAAI,CAAC,YAAY,EAAE,6BAA6B,GAAG,kBAAkB,CAA2C,EACxH,OAAO,UAAQ,GACd,OAAO,CAAC,eAAe,CAAC,CA0C1B"}