veryfront 0.0.84 → 0.0.88

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 (442) hide show
  1. package/README.md +18 -44
  2. package/esm/deno.d.ts +0 -1
  3. package/esm/deno.js +8 -9
  4. package/esm/deps/esm.sh/react-dom@19.1.1/client.d.ts +2 -0
  5. package/esm/deps/esm.sh/react-dom@19.1.1/client.d.ts.map +1 -0
  6. package/esm/deps/esm.sh/react-dom@19.1.1/client.js +5 -0
  7. package/esm/deps/esm.sh/react-dom@19.1.1/server.d.ts +2 -0
  8. package/esm/deps/esm.sh/react-dom@19.1.1/server.d.ts.map +1 -0
  9. package/esm/deps/esm.sh/react-dom@19.1.1/server.js +5 -0
  10. package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts +2 -0
  11. package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts.map +1 -0
  12. package/esm/deps/esm.sh/react@19.1.1/jsx-runtime.js +3 -0
  13. package/esm/deps/esm.sh/react@19.1.1.d.ts +2 -0
  14. package/esm/deps/esm.sh/react@19.1.1.d.ts.map +1 -0
  15. package/esm/deps/esm.sh/react@19.1.1.js +3 -0
  16. package/esm/deps/esm.sh/scheduler@^0.26.0.d.ts +2 -0
  17. package/esm/deps/esm.sh/scheduler@^0.26.0.d.ts.map +1 -0
  18. package/esm/deps/esm.sh/scheduler@^0.26.0.js +3 -0
  19. package/esm/proxy/main.d.ts +2 -0
  20. package/esm/proxy/main.d.ts.map +1 -0
  21. package/esm/proxy/main.js +400 -0
  22. package/esm/src/agent/react/use-agent.js +1 -1
  23. package/esm/src/agent/react/use-chat/use-chat.js +1 -1
  24. package/esm/src/agent/react/use-completion.js +1 -1
  25. package/esm/src/agent/react/use-streaming.js +1 -1
  26. package/esm/src/agent/react/use-voice-input.js +1 -1
  27. package/esm/src/cli/app/components/list-select.js +2 -2
  28. package/esm/src/cli/app/index.d.ts +1 -1
  29. package/esm/src/cli/app/index.d.ts.map +1 -1
  30. package/esm/src/cli/app/index.js +26 -33
  31. package/esm/src/cli/app/state.d.ts +3 -0
  32. package/esm/src/cli/app/state.d.ts.map +1 -1
  33. package/esm/src/cli/app/state.js +4 -0
  34. package/esm/src/cli/app/views/dashboard.d.ts.map +1 -1
  35. package/esm/src/cli/app/views/dashboard.js +45 -57
  36. package/esm/src/cli/app/views/startup.d.ts +39 -0
  37. package/esm/src/cli/app/views/startup.d.ts.map +1 -0
  38. package/esm/src/cli/app/views/startup.js +103 -0
  39. package/esm/src/cli/commands/init/config-generator.js +1 -1
  40. package/esm/src/cli/index/arg-parser.d.ts.map +1 -1
  41. package/esm/src/cli/index/arg-parser.js +1 -0
  42. package/esm/src/cli/index/command-router.d.ts.map +1 -1
  43. package/esm/src/cli/index/command-router.js +54 -39
  44. package/esm/src/cli/index/types.d.ts +4 -0
  45. package/esm/src/cli/index/types.d.ts.map +1 -1
  46. package/esm/src/cli/mcp/advanced-tools.d.ts +2 -2
  47. package/esm/src/cli/ui/colors.d.ts +8 -0
  48. package/esm/src/cli/ui/colors.d.ts.map +1 -1
  49. package/esm/src/cli/ui/colors.js +34 -0
  50. package/esm/src/cli/ui/dot-matrix.d.ts +8 -0
  51. package/esm/src/cli/ui/dot-matrix.d.ts.map +1 -1
  52. package/esm/src/cli/ui/dot-matrix.js +67 -2
  53. package/esm/src/config/loader.d.ts.map +1 -1
  54. package/esm/src/config/loader.js +5 -4
  55. package/esm/src/html/utils.js +2 -2
  56. package/esm/src/modules/component-registry/registry.d.ts +1 -1
  57. package/esm/src/modules/component-registry/registry.d.ts.map +1 -1
  58. package/esm/src/modules/import-map/default-import-map.d.ts +1 -11
  59. package/esm/src/modules/import-map/default-import-map.d.ts.map +1 -1
  60. package/esm/src/modules/import-map/default-import-map.js +3 -20
  61. package/esm/src/modules/import-map/loader.d.ts.map +1 -1
  62. package/esm/src/modules/import-map/loader.js +7 -22
  63. package/esm/src/modules/import-map/resolver.d.ts.map +1 -1
  64. package/esm/src/modules/import-map/resolver.js +12 -8
  65. package/esm/src/modules/react-loader/component-loader.d.ts +1 -1
  66. package/esm/src/modules/react-loader/component-loader.d.ts.map +1 -1
  67. package/esm/src/modules/react-loader/component-loader.js +2 -0
  68. package/esm/src/modules/react-loader/extract-component.d.ts +1 -1
  69. package/esm/src/modules/react-loader/extract-component.d.ts.map +1 -1
  70. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts +2 -7
  71. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
  72. package/esm/src/modules/react-loader/ssr-module-loader/loader.js +68 -38
  73. package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts +2 -0
  74. package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts.map +1 -1
  75. package/esm/src/modules/react-loader/types.d.ts +3 -1
  76. package/esm/src/modules/react-loader/types.d.ts.map +1 -1
  77. package/esm/src/modules/react-loader/unified-loader.d.ts.map +1 -1
  78. package/esm/src/modules/react-loader/unified-loader.js +7 -4
  79. package/esm/src/modules/server/module-batch-handler.d.ts +2 -0
  80. package/esm/src/modules/server/module-batch-handler.d.ts.map +1 -1
  81. package/esm/src/modules/server/module-batch-handler.js +3 -1
  82. package/esm/src/modules/server/module-server.d.ts +2 -0
  83. package/esm/src/modules/server/module-server.d.ts.map +1 -1
  84. package/esm/src/modules/server/module-server.js +4 -2
  85. package/esm/src/modules/server/ssr-import-rewriter.d.ts.map +1 -1
  86. package/esm/src/modules/server/ssr-import-rewriter.js +9 -17
  87. package/esm/src/react/compat/hooks-adapter.d.ts +1 -1
  88. package/esm/src/react/compat/hooks-adapter.d.ts.map +1 -1
  89. package/esm/src/react/compat/hooks-adapter.js +1 -1
  90. package/esm/src/react/compat/ssr-adapter/response-builder.d.ts +1 -1
  91. package/esm/src/react/compat/ssr-adapter/response-builder.d.ts.map +1 -1
  92. package/esm/src/react/compat/ssr-adapter/server-loader.d.ts +5 -5
  93. package/esm/src/react/compat/ssr-adapter/server-loader.d.ts.map +1 -1
  94. package/esm/src/react/compat/ssr-adapter/server-loader.js +2 -2
  95. package/esm/src/react/compat/ssr-adapter/stream-renderer.d.ts +1 -1
  96. package/esm/src/react/compat/ssr-adapter/stream-renderer.d.ts.map +1 -1
  97. package/esm/src/react/compat/ssr-adapter/string-renderer.d.ts +1 -1
  98. package/esm/src/react/compat/ssr-adapter/string-renderer.d.ts.map +1 -1
  99. package/esm/src/react/compat/ssr-adapter/string-renderer.js +1 -1
  100. package/esm/src/react/compat/version-detector/feature-detector.js +1 -1
  101. package/esm/src/react/components/AppWrapper.d.ts +1 -1
  102. package/esm/src/react/components/AppWrapper.d.ts.map +1 -1
  103. package/esm/src/react/components/AppWrapper.js +1 -1
  104. package/esm/src/react/components/Head.d.ts +1 -1
  105. package/esm/src/react/components/Head.d.ts.map +1 -1
  106. package/esm/src/react/components/Head.js +7 -3
  107. package/esm/src/react/components/LayoutComponent.d.ts +1 -1
  108. package/esm/src/react/components/LayoutComponent.d.ts.map +1 -1
  109. package/esm/src/react/components/LayoutComponent.js +1 -1
  110. package/esm/src/react/components/Link.d.ts +1 -1
  111. package/esm/src/react/components/Link.d.ts.map +1 -1
  112. package/esm/src/react/components/Link.js +1 -1
  113. package/esm/src/react/components/MDXProvider.d.ts +1 -1
  114. package/esm/src/react/components/MDXProvider.d.ts.map +1 -1
  115. package/esm/src/react/components/MDXProvider.js +2 -2
  116. package/esm/src/react/components/ProviderComponent.d.ts +1 -1
  117. package/esm/src/react/components/ProviderComponent.d.ts.map +1 -1
  118. package/esm/src/react/components/ProviderComponent.js +1 -1
  119. package/esm/src/react/components/ai/agent-card.d.ts +2 -2
  120. package/esm/src/react/components/ai/agent-card.d.ts.map +1 -1
  121. package/esm/src/react/components/ai/agent-card.js +1 -1
  122. package/esm/src/react/components/ai/chat/components/animations.d.ts +1 -1
  123. package/esm/src/react/components/ai/chat/components/animations.d.ts.map +1 -1
  124. package/esm/src/react/components/ai/chat/components/animations.js +1 -1
  125. package/esm/src/react/components/ai/chat/components/empty-state.d.ts +1 -1
  126. package/esm/src/react/components/ai/chat/components/empty-state.d.ts.map +1 -1
  127. package/esm/src/react/components/ai/chat/components/empty-state.js +1 -1
  128. package/esm/src/react/components/ai/chat/components/message-actions.d.ts +1 -1
  129. package/esm/src/react/components/ai/chat/components/message-actions.d.ts.map +1 -1
  130. package/esm/src/react/components/ai/chat/components/message-actions.js +1 -1
  131. package/esm/src/react/components/ai/chat/components/reasoning.d.ts +1 -1
  132. package/esm/src/react/components/ai/chat/components/reasoning.d.ts.map +1 -1
  133. package/esm/src/react/components/ai/chat/components/reasoning.js +1 -1
  134. package/esm/src/react/components/ai/chat/components/tool-ui.d.ts +1 -1
  135. package/esm/src/react/components/ai/chat/components/tool-ui.d.ts.map +1 -1
  136. package/esm/src/react/components/ai/chat/components/tool-ui.js +1 -1
  137. package/esm/src/react/components/ai/chat/composition/api.d.ts +5 -4
  138. package/esm/src/react/components/ai/chat/composition/api.d.ts.map +1 -1
  139. package/esm/src/react/components/ai/chat/composition/api.js +1 -1
  140. package/esm/src/react/components/ai/chat/index.d.ts +8 -3
  141. package/esm/src/react/components/ai/chat/index.d.ts.map +1 -1
  142. package/esm/src/react/components/ai/chat/index.js +1 -1
  143. package/esm/src/react/components/ai/error-boundary.d.ts +1 -1
  144. package/esm/src/react/components/ai/error-boundary.d.ts.map +1 -1
  145. package/esm/src/react/components/ai/error-boundary.js +1 -1
  146. package/esm/src/react/components/ai/icons/index.d.ts +1 -1
  147. package/esm/src/react/components/ai/icons/index.d.ts.map +1 -1
  148. package/esm/src/react/components/ai/icons/index.js +1 -1
  149. package/esm/src/react/components/ai/markdown.d.ts +1 -1
  150. package/esm/src/react/components/ai/markdown.d.ts.map +1 -1
  151. package/esm/src/react/components/ai/markdown.js +1 -1
  152. package/esm/src/react/components/ai/message.d.ts +3 -3
  153. package/esm/src/react/components/ai/message.d.ts.map +1 -1
  154. package/esm/src/react/components/ai/message.js +1 -1
  155. package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.d.ts +1 -1
  156. package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.d.ts.map +1 -1
  157. package/esm/src/react/components/optimized-image/OptimizedBackgroundImage.js +1 -1
  158. package/esm/src/react/components/optimized-image/OptimizedImage.d.ts +1 -1
  159. package/esm/src/react/components/optimized-image/OptimizedImage.d.ts.map +1 -1
  160. package/esm/src/react/components/optimized-image/OptimizedImage.js +1 -1
  161. package/esm/src/react/components/optimized-image/SimpleOptimizedImage.d.ts +1 -1
  162. package/esm/src/react/components/optimized-image/SimpleOptimizedImage.d.ts.map +1 -1
  163. package/esm/src/react/components/optimized-image/utils.d.ts +1 -1
  164. package/esm/src/react/components/optimized-image/utils.d.ts.map +1 -1
  165. package/esm/src/react/components/optimized-image/utils.js +1 -1
  166. package/esm/src/react/context/index.d.ts +1 -1
  167. package/esm/src/react/context/index.d.ts.map +1 -1
  168. package/esm/src/react/context/index.js +1 -1
  169. package/esm/src/react/fonts/index.d.ts +1 -1
  170. package/esm/src/react/fonts/index.d.ts.map +1 -1
  171. package/esm/src/react/fonts/index.js +1 -1
  172. package/esm/src/react/primitives/agent-primitives.d.ts +4 -4
  173. package/esm/src/react/primitives/agent-primitives.d.ts.map +1 -1
  174. package/esm/src/react/primitives/agent-primitives.js +1 -1
  175. package/esm/src/react/primitives/chat-container.d.ts +2 -2
  176. package/esm/src/react/primitives/chat-container.d.ts.map +1 -1
  177. package/esm/src/react/primitives/chat-container.js +1 -1
  178. package/esm/src/react/primitives/input-box.d.ts +4 -4
  179. package/esm/src/react/primitives/input-box.d.ts.map +1 -1
  180. package/esm/src/react/primitives/input-box.js +7 -3
  181. package/esm/src/react/primitives/message-list.d.ts +5 -5
  182. package/esm/src/react/primitives/message-list.d.ts.map +1 -1
  183. package/esm/src/react/primitives/message-list.js +1 -1
  184. package/esm/src/react/primitives/tool-primitives.d.ts +4 -4
  185. package/esm/src/react/primitives/tool-primitives.d.ts.map +1 -1
  186. package/esm/src/react/primitives/tool-primitives.js +1 -1
  187. package/esm/src/react/router/index.d.ts +1 -1
  188. package/esm/src/react/router/index.d.ts.map +1 -1
  189. package/esm/src/react/router/index.js +1 -1
  190. package/esm/src/rendering/app-reserved.d.ts +1 -1
  191. package/esm/src/rendering/app-reserved.d.ts.map +1 -1
  192. package/esm/src/rendering/app-reserved.js +1 -1
  193. package/esm/src/rendering/client/router.js +1 -1
  194. package/esm/src/rendering/client/state-bridge.d.ts +1 -1
  195. package/esm/src/rendering/client/state-bridge.d.ts.map +1 -1
  196. package/esm/src/rendering/client/state-bridge.js +1 -1
  197. package/esm/src/rendering/component-handling.d.ts +3 -1
  198. package/esm/src/rendering/component-handling.d.ts.map +1 -1
  199. package/esm/src/rendering/component-handling.js +4 -2
  200. package/esm/src/rendering/element-validator/element-normalizer.d.ts +1 -1
  201. package/esm/src/rendering/element-validator/element-normalizer.d.ts.map +1 -1
  202. package/esm/src/rendering/element-validator/element-normalizer.js +1 -1
  203. package/esm/src/rendering/element-validator/primitive-checks.d.ts +1 -1
  204. package/esm/src/rendering/element-validator/primitive-checks.d.ts.map +1 -1
  205. package/esm/src/rendering/element-validator/primitive-checks.js +1 -1
  206. package/esm/src/rendering/element-validator/validator-core.d.ts +1 -1
  207. package/esm/src/rendering/element-validator/validator-core.d.ts.map +1 -1
  208. package/esm/src/rendering/layouts/layout-applicator.d.ts +1 -1
  209. package/esm/src/rendering/layouts/layout-applicator.d.ts.map +1 -1
  210. package/esm/src/rendering/layouts/layout-applicator.js +2 -0
  211. package/esm/src/rendering/layouts/utils/applicator.d.ts +1 -1
  212. package/esm/src/rendering/layouts/utils/applicator.d.ts.map +1 -1
  213. package/esm/src/rendering/layouts/utils/component-loader.d.ts +1 -1
  214. package/esm/src/rendering/layouts/utils/component-loader.d.ts.map +1 -1
  215. package/esm/src/rendering/layouts/utils/ensure-valid-child.d.ts +1 -1
  216. package/esm/src/rendering/layouts/utils/ensure-valid-child.d.ts.map +1 -1
  217. package/esm/src/rendering/orchestrator/layout.d.ts +1 -1
  218. package/esm/src/rendering/orchestrator/layout.d.ts.map +1 -1
  219. package/esm/src/rendering/orchestrator/module-loader/index.d.ts +3 -0
  220. package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
  221. package/esm/src/rendering/orchestrator/module-loader/index.js +74 -19
  222. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  223. package/esm/src/rendering/orchestrator/pipeline.js +2 -0
  224. package/esm/src/rendering/orchestrator/ssr-orchestrator.d.ts +1 -1
  225. package/esm/src/rendering/orchestrator/ssr-orchestrator.d.ts.map +1 -1
  226. package/esm/src/rendering/page-renderer.d.ts +1 -1
  227. package/esm/src/rendering/page-renderer.d.ts.map +1 -1
  228. package/esm/src/rendering/page-rendering.d.ts +1 -1
  229. package/esm/src/rendering/page-rendering.d.ts.map +1 -1
  230. package/esm/src/rendering/rsc/server-renderer/component-detector.d.ts +1 -1
  231. package/esm/src/rendering/rsc/server-renderer/component-detector.d.ts.map +1 -1
  232. package/esm/src/rendering/rsc/server-renderer/rsc-renderer.d.ts +1 -1
  233. package/esm/src/rendering/rsc/server-renderer/rsc-renderer.d.ts.map +1 -1
  234. package/esm/src/rendering/rsc/server-renderer/tree-processor.d.ts +1 -1
  235. package/esm/src/rendering/rsc/server-renderer/tree-processor.d.ts.map +1 -1
  236. package/esm/src/rendering/rsc/server-renderer/tree-processor.js +4 -2
  237. package/esm/src/rendering/snippet-renderer.js +2 -2
  238. package/esm/src/rendering/ssr/component-registry.d.ts +1 -1
  239. package/esm/src/rendering/ssr/component-registry.d.ts.map +1 -1
  240. package/esm/src/rendering/ssr/component-registry.js +1 -1
  241. package/esm/src/rendering/ssr-renderer.d.ts +1 -1
  242. package/esm/src/rendering/ssr-renderer.d.ts.map +1 -1
  243. package/esm/src/rendering/utils/react-helpers.d.ts +1 -1
  244. package/esm/src/rendering/utils/react-helpers.d.ts.map +1 -1
  245. package/esm/src/rendering/utils/react-helpers.js +1 -1
  246. package/esm/src/server/handlers/request/ssr/error-page-fallback.js +1 -1
  247. package/esm/src/server/handlers/request/ssr/not-found-fallback.js +1 -1
  248. package/esm/src/transforms/esm/http-bundler.d.ts +15 -4
  249. package/esm/src/transforms/esm/http-bundler.d.ts.map +1 -1
  250. package/esm/src/transforms/esm/http-bundler.js +105 -12
  251. package/esm/src/transforms/esm/http-cache.d.ts.map +1 -1
  252. package/esm/src/transforms/esm/http-cache.js +51 -44
  253. package/esm/src/transforms/esm/import-rewriter.d.ts.map +1 -1
  254. package/esm/src/transforms/esm/import-rewriter.js +3 -3
  255. package/esm/src/transforms/esm/package-registry.d.ts +15 -13
  256. package/esm/src/transforms/esm/package-registry.d.ts.map +1 -1
  257. package/esm/src/transforms/esm/package-registry.js +45 -32
  258. package/esm/src/transforms/esm/react-imports.d.ts.map +1 -1
  259. package/esm/src/transforms/esm/react-imports.js +3 -7
  260. package/esm/src/transforms/esm/types.d.ts +2 -0
  261. package/esm/src/transforms/esm/types.d.ts.map +1 -1
  262. package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts +14 -0
  263. package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts.map +1 -1
  264. package/esm/src/transforms/mdx/esm-module-loader/cache/index.js +67 -0
  265. package/esm/src/transforms/mdx/esm-module-loader/loader.d.ts.map +1 -1
  266. package/esm/src/transforms/mdx/esm-module-loader/loader.js +1 -1
  267. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.d.ts +1 -0
  268. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.d.ts.map +1 -1
  269. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.js +1 -0
  270. package/esm/src/transforms/mdx/esm-module-loader/types.d.ts +4 -0
  271. package/esm/src/transforms/mdx/esm-module-loader/types.d.ts.map +1 -1
  272. package/esm/src/transforms/mdx/index.d.ts +1 -1
  273. package/esm/src/transforms/mdx/index.d.ts.map +1 -1
  274. package/esm/src/transforms/mdx/index.js +1 -1
  275. package/esm/src/transforms/mdx/mdx-cache-adapter.js +1 -1
  276. package/esm/src/transforms/mdx/module-loader/types.d.ts +1 -1
  277. package/esm/src/transforms/mdx/module-loader/types.d.ts.map +1 -1
  278. package/esm/src/transforms/mdx/types.d.ts +2 -2
  279. package/esm/src/transforms/mdx/types.d.ts.map +1 -1
  280. package/esm/src/transforms/pipeline/context.d.ts.map +1 -1
  281. package/esm/src/transforms/pipeline/context.js +7 -15
  282. package/esm/src/transforms/pipeline/stages/finalize.d.ts.map +1 -1
  283. package/esm/src/transforms/pipeline/stages/finalize.js +1 -1
  284. package/esm/src/types/app.d.ts +1 -1
  285. package/esm/src/types/app.d.ts.map +1 -1
  286. package/esm/src/types/global-guards.d.ts +1 -1
  287. package/esm/src/types/global-guards.d.ts.map +1 -1
  288. package/esm/src/types/index.d.ts +1 -1
  289. package/esm/src/types/index.d.ts.map +1 -1
  290. package/esm/src/utils/constants/cdn.d.ts.map +1 -1
  291. package/esm/src/utils/constants/cdn.js +22 -11
  292. package/esm/src/utils/hash-utils.d.ts +2 -0
  293. package/esm/src/utils/hash-utils.d.ts.map +1 -1
  294. package/esm/src/utils/hash-utils.js +4 -0
  295. package/esm/src/workflow/react/use-approval.js +1 -1
  296. package/esm/src/workflow/react/use-workflow-list.js +1 -1
  297. package/esm/src/workflow/react/use-workflow-start.js +1 -1
  298. package/esm/src/workflow/react/use-workflow.js +1 -1
  299. package/package.json +2 -1
  300. package/src/deno.js +8 -9
  301. package/src/deps/esm.sh/@types/react-dom@19.1.11/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/client.d.ts +105 -0
  302. package/src/deps/esm.sh/@types/react-dom@19.1.11/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/server.d.ts +162 -0
  303. package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjM/global.d.ts +165 -0
  304. package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjM/index.d.ts +4267 -0
  305. package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/global.d.ts +165 -0
  306. package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/index.d.ts +4267 -0
  307. package/src/deps/esm.sh/@types/react@19.1.17/X-ZGNzc3R5cGVAMy4yLjMKZXJlYWN0/jsx-runtime.d.ts +36 -0
  308. package/src/deps/esm.sh/@types/scheduler@0.26.0/index.d.ts +30 -0
  309. package/src/deps/esm.sh/csstype@3.2.3/index.d.ts +22569 -0
  310. package/src/deps/esm.sh/react-dom@19.1.1/client.d.ts +105 -0
  311. package/src/deps/esm.sh/react-dom@19.1.1/client.js +5 -0
  312. package/src/deps/esm.sh/react-dom@19.1.1/server.d.ts +162 -0
  313. package/src/deps/esm.sh/react-dom@19.1.1/server.js +5 -0
  314. package/src/deps/esm.sh/react@19.1.1/jsx-runtime.d.ts +36 -0
  315. package/src/deps/esm.sh/react@19.1.1/jsx-runtime.js +3 -0
  316. package/src/deps/esm.sh/react@19.1.1.d.ts +4267 -0
  317. package/src/deps/esm.sh/react@19.1.1.js +3 -0
  318. package/src/deps/esm.sh/scheduler@^0.26.0.d.ts +30 -0
  319. package/src/deps/esm.sh/scheduler@^0.26.0.js +3 -0
  320. package/src/proxy/main.ts +471 -0
  321. package/src/src/agent/react/use-agent.ts +1 -1
  322. package/src/src/agent/react/use-chat/use-chat.ts +1 -1
  323. package/src/src/agent/react/use-completion.ts +1 -1
  324. package/src/src/agent/react/use-streaming.ts +1 -1
  325. package/src/src/agent/react/use-voice-input.ts +1 -1
  326. package/src/src/cli/app/components/list-select.ts +2 -2
  327. package/src/src/cli/app/index.ts +34 -35
  328. package/src/src/cli/app/state.ts +7 -0
  329. package/src/src/cli/app/views/dashboard.ts +46 -60
  330. package/src/src/cli/app/views/startup.ts +132 -0
  331. package/src/src/cli/commands/init/config-generator.ts +1 -1
  332. package/src/src/cli/index/arg-parser.ts +1 -0
  333. package/src/src/cli/index/command-router.ts +57 -40
  334. package/src/src/cli/index/types.ts +5 -0
  335. package/src/src/cli/ui/colors.ts +37 -0
  336. package/src/src/cli/ui/dot-matrix.ts +77 -1
  337. package/src/src/config/loader.ts +5 -4
  338. package/src/src/html/utils.ts +2 -2
  339. package/src/src/modules/component-registry/registry.ts +1 -1
  340. package/src/src/modules/import-map/default-import-map.ts +3 -25
  341. package/src/src/modules/import-map/loader.ts +7 -23
  342. package/src/src/modules/import-map/resolver.ts +13 -8
  343. package/src/src/modules/react-loader/component-loader.ts +3 -1
  344. package/src/src/modules/react-loader/extract-component.ts +1 -1
  345. package/src/src/modules/react-loader/ssr-module-loader/loader.ts +95 -68
  346. package/src/src/modules/react-loader/ssr-module-loader/types.ts +2 -0
  347. package/src/src/modules/react-loader/types.ts +3 -1
  348. package/src/src/modules/react-loader/unified-loader.ts +7 -4
  349. package/src/src/modules/server/module-batch-handler.ts +7 -0
  350. package/src/src/modules/server/module-server.ts +6 -1
  351. package/src/src/modules/server/ssr-import-rewriter.ts +9 -17
  352. package/src/src/react/compat/hooks-adapter.ts +1 -1
  353. package/src/src/react/compat/ssr-adapter/response-builder.ts +1 -1
  354. package/src/src/react/compat/ssr-adapter/server-loader.ts +10 -10
  355. package/src/src/react/compat/ssr-adapter/stream-renderer.ts +2 -2
  356. package/src/src/react/compat/ssr-adapter/string-renderer.ts +3 -3
  357. package/src/src/react/compat/version-detector/feature-detector.ts +1 -1
  358. package/src/src/react/components/AppWrapper.tsx +1 -1
  359. package/src/src/react/components/Head.tsx +7 -3
  360. package/src/src/react/components/LayoutComponent.tsx +2 -2
  361. package/src/src/react/components/Link.tsx +1 -1
  362. package/src/src/react/components/MDXProvider.tsx +2 -2
  363. package/src/src/react/components/ProviderComponent.tsx +2 -2
  364. package/src/src/react/components/ai/agent-card.tsx +1 -1
  365. package/src/src/react/components/ai/chat/components/animations.tsx +1 -1
  366. package/src/src/react/components/ai/chat/components/empty-state.tsx +1 -1
  367. package/src/src/react/components/ai/chat/components/message-actions.tsx +1 -1
  368. package/src/src/react/components/ai/chat/components/reasoning.tsx +1 -1
  369. package/src/src/react/components/ai/chat/components/tool-ui.tsx +1 -1
  370. package/src/src/react/components/ai/chat/composition/api.tsx +1 -1
  371. package/src/src/react/components/ai/chat/index.tsx +1 -1
  372. package/src/src/react/components/ai/error-boundary.tsx +1 -1
  373. package/src/src/react/components/ai/icons/index.ts +1 -1
  374. package/src/src/react/components/ai/markdown.tsx +1 -1
  375. package/src/src/react/components/ai/message.tsx +1 -1
  376. package/src/src/react/components/optimized-image/OptimizedBackgroundImage.tsx +1 -1
  377. package/src/src/react/components/optimized-image/OptimizedImage.tsx +1 -1
  378. package/src/src/react/components/optimized-image/SimpleOptimizedImage.tsx +1 -1
  379. package/src/src/react/components/optimized-image/utils.tsx +1 -1
  380. package/src/src/react/context/index.ts +1 -1
  381. package/src/src/react/fonts/index.ts +1 -1
  382. package/src/src/react/primitives/agent-primitives.tsx +1 -1
  383. package/src/src/react/primitives/chat-container.tsx +1 -1
  384. package/src/src/react/primitives/input-box.tsx +5 -3
  385. package/src/src/react/primitives/message-list.tsx +1 -1
  386. package/src/src/react/primitives/tool-primitives.tsx +1 -1
  387. package/src/src/react/router/index.ts +1 -1
  388. package/src/src/rendering/app-reserved.ts +1 -1
  389. package/src/src/rendering/client/router.ts +2 -2
  390. package/src/src/rendering/client/state-bridge.ts +2 -2
  391. package/src/src/rendering/component-handling.ts +7 -1
  392. package/src/src/rendering/element-validator/element-inspector.ts +1 -1
  393. package/src/src/rendering/element-validator/element-normalizer.ts +1 -1
  394. package/src/src/rendering/element-validator/primitive-checks.ts +1 -1
  395. package/src/src/rendering/element-validator/validator-core.ts +1 -1
  396. package/src/src/rendering/layouts/layout-applicator.ts +5 -6
  397. package/src/src/rendering/layouts/utils/applicator.ts +1 -1
  398. package/src/src/rendering/layouts/utils/component-loader.ts +1 -1
  399. package/src/src/rendering/layouts/utils/ensure-valid-child.ts +1 -1
  400. package/src/src/rendering/orchestrator/layout.ts +1 -1
  401. package/src/src/rendering/orchestrator/module-loader/index.ts +91 -20
  402. package/src/src/rendering/orchestrator/pipeline.ts +2 -0
  403. package/src/src/rendering/orchestrator/ssr-orchestrator.ts +2 -2
  404. package/src/src/rendering/page-renderer.ts +1 -1
  405. package/src/src/rendering/page-rendering.ts +1 -1
  406. package/src/src/rendering/rsc/server-renderer/component-detector.ts +1 -1
  407. package/src/src/rendering/rsc/server-renderer/rsc-renderer.ts +1 -1
  408. package/src/src/rendering/rsc/server-renderer/tree-processor.ts +14 -4
  409. package/src/src/rendering/snippet-renderer.ts +2 -2
  410. package/src/src/rendering/ssr/component-registry.ts +1 -1
  411. package/src/src/rendering/ssr-renderer.ts +1 -1
  412. package/src/src/rendering/utils/react-helpers.ts +1 -1
  413. package/src/src/server/build-app-route-renderer.ts +2 -2
  414. package/src/src/server/handlers/request/rsc/handlers/render-handler.ts +1 -1
  415. package/src/src/server/handlers/request/ssr/error-page-fallback.ts +2 -2
  416. package/src/src/server/handlers/request/ssr/not-found-fallback.ts +1 -1
  417. package/src/src/transforms/esm/http-bundler.ts +101 -11
  418. package/src/src/transforms/esm/http-cache.ts +53 -45
  419. package/src/src/transforms/esm/import-rewriter.ts +5 -3
  420. package/src/src/transforms/esm/package-registry.ts +46 -32
  421. package/src/src/transforms/esm/react-imports.ts +3 -7
  422. package/src/src/transforms/esm/types.ts +2 -0
  423. package/src/src/transforms/mdx/esm-module-loader/cache/index.ts +84 -0
  424. package/src/src/transforms/mdx/esm-module-loader/loader.ts +2 -1
  425. package/src/src/transforms/mdx/esm-module-loader/module-fetcher/index.ts +2 -1
  426. package/src/src/transforms/mdx/esm-module-loader/types.ts +4 -0
  427. package/src/src/transforms/mdx/index.ts +1 -1
  428. package/src/src/transforms/mdx/mdx-cache-adapter.ts +1 -1
  429. package/src/src/transforms/mdx/module-loader/types.ts +1 -1
  430. package/src/src/transforms/mdx/types.ts +2 -2
  431. package/src/src/transforms/pipeline/context.ts +7 -18
  432. package/src/src/transforms/pipeline/stages/finalize.ts +6 -1
  433. package/src/src/transforms/plugins/babel-node-positions.ts +2 -2
  434. package/src/src/types/app.ts +1 -1
  435. package/src/src/types/global-guards.ts +1 -1
  436. package/src/src/types/index.ts +1 -1
  437. package/src/src/utils/constants/cdn.ts +21 -12
  438. package/src/src/utils/hash-utils.ts +5 -0
  439. package/src/src/workflow/react/use-approval.ts +1 -1
  440. package/src/src/workflow/react/use-workflow-list.ts +1 -1
  441. package/src/src/workflow/react/use-workflow-start.ts +1 -1
  442. package/src/src/workflow/react/use-workflow.ts +1 -1
@@ -1,4 +1,4 @@
1
- import type * as React from "react";
1
+ import type * as React from "../../../../deps/esm.sh/react@19.1.1.js";
2
2
  import type { SSRModuleLoaderOptions } from "./types.js";
3
3
  /**
4
4
  * SSR Module Loader with Redis Support.
@@ -53,14 +53,9 @@ export declare class SSRModuleLoader {
53
53
  */
54
54
  private toJsExtension;
55
55
  private ensureDependenciesExist;
56
- /**
57
- * Fast sync hash for small strings (project IDs, etc.)
58
- * Use hashContentAsync for large file content.
59
- */
60
- private hashCode;
61
56
  /**
62
57
  * Async hash for large content using Web Crypto API.
63
- * Doesn't block event loop for large files.
58
+ * Falls back to sync hash for small files.
64
59
  */
65
60
  private hashContentAsync;
66
61
  private getTempPath;
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../src/src/modules/react-loader/ssr-module-loader/loader.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAsCpC,OAAO,KAAK,EAAoB,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAgC3E;;;;;GAKG;AACH,qBAAa,eAAe;IAId,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,EAAE,CAAsB;IAChC,OAAO,CAAC,mBAAmB,CAAuB;gBAE9B,OAAO,EAAE,sBAAsB;IAEnD;;OAEG;IACH,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAyFxD,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,kBAAkB;IAK1B;;OAEG;YACW,2BAA2B;IAkGzC,OAAO,CAAC,yBAAyB;YAiBnB,2BAA2B;IA6RzC;;;OAGG;YACW,mBAAmB;IA2CjC,OAAO,CAAC,yBAAyB;IAYjC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,2BAA2B;IAiBnC,OAAO,CAAC,2BAA2B;IAWnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;OAEG;IACH,OAAO,CAAC,aAAa;YAIP,uBAAuB;IAyCrC;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAUhB;;;OAGG;YACW,gBAAgB;YAgBhB,WAAW;YAeX,YAAY;CAiC3B"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../src/src/modules/react-loader/ssr-module-loader/loader.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAuCtE,OAAO,KAAK,EAAoB,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAiC3E;;;;;GAKG;AACH,qBAAa,eAAe;IAId,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,EAAE,CAAsB;IAChC,OAAO,CAAC,mBAAmB,CAAuB;gBAE9B,OAAO,EAAE,sBAAsB;IAEnD;;OAEG;IACH,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAsGxD,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,kBAAkB;IAK1B;;OAEG;YACW,2BAA2B;IAmGzC,OAAO,CAAC,yBAAyB;YAiBnB,2BAA2B;IA0TzC;;;OAGG;YACW,mBAAmB;IA2CjC,OAAO,CAAC,yBAAyB;IAYjC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,wBAAwB;IAehC,OAAO,CAAC,2BAA2B;IAiBnC,OAAO,CAAC,2BAA2B;IAWnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;OAEG;IACH,OAAO,CAAC,aAAa;YAIP,uBAAuB;IAyCrC;;;OAGG;YACW,gBAAgB;YAgBhB,WAAW;YAeX,YAAY;CA4B3B"}
@@ -6,15 +6,15 @@
6
6
  * @module module-system/react-loader/ssr-module-loader/loader
7
7
  */
8
8
  import * as dntShim from "../../../../_dnt.shims.js";
9
- import { isAbsolute, join } from "../../../platform/compat/path/index.js";
10
- import { cwd } from "../../../platform/compat/process.js";
9
+ import { join } from "../../../platform/compat/path/index.js";
11
10
  import { transformToESM } from "../../../transforms/esm/index.js";
12
11
  import { TRANSFORM_CACHE_VERSION } from "../../../transforms/esm/package-registry.js";
13
- import { buildSSRModuleCacheKey, buildSSRModuleProjectKey } from "../../../cache/keys.js";
12
+ import { buildSSRModuleCacheKey } from "../../../cache/keys.js";
14
13
  import { parseLocalImports, } from "../../../transforms/esm/import-parser.js";
15
14
  import { createFileSystem } from "../../../platform/compat/fs.js";
16
15
  import { createError, toError } from "../../../errors/veryfront-error.js";
17
16
  import { rendererLogger as logger } from "../../../utils/index.js";
17
+ import { hashCodeHex } from "../../../utils/hash-utils.js";
18
18
  import { getApiBaseUrlEnv } from "../../../config/env.js";
19
19
  import { injectContext, withSpan } from "../../../observability/tracing/otlp-setup.js";
20
20
  import { SpanNames } from "../../../observability/tracing/span-names.js";
@@ -22,7 +22,8 @@ import { extractComponent } from "../extract-component.js";
22
22
  import { CIRCUIT_BREAKER_RESET_MS, CIRCUIT_BREAKER_THRESHOLD, IN_PROGRESS_WAIT_TIMEOUT_MS, MAX_CONCURRENT_TRANSFORMS, MAX_TRANSFORM_DEPTH, TRANSFORM_ACQUIRE_TIMEOUT_MS, TRANSFORM_BATCH_SIZE, } from "./constants.js";
23
23
  import { withTimeoutThrow } from "../../../rendering/utils/stream-utils.js";
24
24
  import { failedComponents, getFromRedis, globalCrossProjectCache, globalInProgress, globalModuleCache, globalTmpDirs, isSSRDistributedCacheEnabled, setInRedis, transformSemaphore, } from "./cache/index.js";
25
- import { getCacheBaseDir, getHttpBundleCacheDir } from "../../../utils/cache-dir.js";
25
+ import { getHttpBundleCacheDir, getMdxEsmCacheDir } from "../../../utils/cache-dir.js";
26
+ import { lookupMdxEsmCache } from "../../../transforms/mdx/esm-module-loader/cache/index.js";
26
27
  import { ensureHttpBundlesExist } from "../../../transforms/esm/http-cache.js";
27
28
  import { LRUCache } from "../../../utils/lru-wrapper.js";
28
29
  /** Pattern to match HTTP bundle file:// paths in transformed code */
@@ -97,18 +98,31 @@ export class SSRModuleLoader {
97
98
  const bundleMatch = errorMsg.match(/veryfront-http-bundle\/http-([a-f0-9]+)\.mjs/);
98
99
  if (bundleMatch) {
99
100
  const hash = bundleMatch[1];
100
- logger.warn("[SSR-MODULE-LOADER] Import failed due to missing HTTP bundle, attempting recovery", {
101
+ const cacheDir = getHttpBundleCacheDir();
102
+ logger.error("[SSR-MODULE-LOADER] Missing HTTP bundle after ensureHttpBundlesExist", {
101
103
  file: filePath.slice(-40),
102
104
  hash,
105
+ tempPath: cacheEntry.tempPath,
106
+ contentHash: cacheEntry.contentHash,
107
+ cacheDir,
108
+ expectedPath: `${cacheDir}/http-${hash}.mjs`,
103
109
  });
104
110
  const { recoverHttpBundleByHash } = await import("../../../transforms/esm/http-cache.js");
105
- const cacheDir = getHttpBundleCacheDir();
106
111
  const recovered = await recoverHttpBundleByHash(hash, cacheDir);
107
112
  if (recovered) {
108
- logger.info("[SSR-MODULE-LOADER] HTTP bundle recovered, retrying import", { hash });
113
+ logger.info("[SSR-MODULE-LOADER] HTTP bundle recovered, retrying import", {
114
+ hash,
115
+ file: filePath.slice(-40),
116
+ });
109
117
  mod = await import(`file://${cacheEntry.tempPath}?v=${cacheEntry.contentHash}&retry=1`);
110
118
  }
111
119
  else {
120
+ logger.error("[SSR-MODULE-LOADER] HTTP bundle recovery failed", {
121
+ hash,
122
+ file: filePath.slice(-40),
123
+ cacheDir,
124
+ hint: "Bundle may have expired from Redis (24h TTL) while transform was still cached",
125
+ });
112
126
  throw importError;
113
127
  }
114
128
  }
@@ -177,7 +191,9 @@ export class SSRModuleLoader {
177
191
  if (!this.options.contentSourceId) {
178
192
  throw new Error(`Missing contentSourceId for SSR module cache (project: ${this.options.projectId}, file: ${filePath})`);
179
193
  }
180
- return buildSSRModuleCacheKey(TRANSFORM_CACHE_VERSION, this.options.projectId, `${this.options.contentSourceId}:${filePath}`);
194
+ // Include reactVersion in cache key to ensure different versions don't share cached modules
195
+ const reactVersion = this.options.reactVersion ?? "default";
196
+ return buildSSRModuleCacheKey(TRANSFORM_CACHE_VERSION, this.options.projectId, `${this.options.contentSourceId}:${reactVersion}:${filePath}`);
181
197
  }
182
198
  isProductionContentSource() {
183
199
  const sourceId = this.options.contentSourceId;
@@ -246,6 +262,7 @@ export class SSRModuleLoader {
246
262
  dev: this.options.dev,
247
263
  ssr: true,
248
264
  apiBaseUrl: this.options.apiBaseUrl,
265
+ reactVersion: this.options.reactVersion,
249
266
  };
250
267
  const filePathWithExt = syntheticFilePath.endsWith(ext)
251
268
  ? syntheticFilePath
@@ -313,9 +330,12 @@ export class SSRModuleLoader {
313
330
  const cacheDir = getHttpBundleCacheDir();
314
331
  const failed = await ensureHttpBundlesExist(bundlePaths, cacheDir);
315
332
  if (failed.length > 0) {
316
- logger.warn("[SSR-MODULE-LOADER] In-memory cached module has unrecoverable HTTP bundles, re-transforming", {
333
+ logger.warn("[SSR-MODULE-LOADER] Unrecoverable HTTP bundles, re-transforming", {
317
334
  file: filePath.slice(-40),
318
335
  failed,
336
+ totalBundles: bundlePaths.length,
337
+ cacheDir,
338
+ source: "memory-cache",
319
339
  });
320
340
  globalModuleCache.delete(contentCacheKey);
321
341
  globalModuleCache.delete(filePathCacheKey);
@@ -354,9 +374,12 @@ export class SSRModuleLoader {
354
374
  const cacheDir = getHttpBundleCacheDir();
355
375
  const failed = await ensureHttpBundlesExist(bundlePaths, cacheDir);
356
376
  if (failed.length > 0) {
357
- logger.warn("[SSR-MODULE-LOADER] Redis cached code has unrecoverable HTTP bundles, re-transforming", {
377
+ logger.warn("[SSR-MODULE-LOADER] Unrecoverable HTTP bundles, re-transforming", {
358
378
  file: filePath.slice(-40),
359
379
  failed,
380
+ totalBundles: bundlePaths.length,
381
+ cacheDir,
382
+ source: "redis-cache",
360
383
  });
361
384
  httpBundlesOk = false;
362
385
  }
@@ -378,6 +401,25 @@ export class SSRModuleLoader {
378
401
  // Fall through to re-transform, which will create HTTP bundles locally
379
402
  }
380
403
  }
404
+ // Check MDX-ESM cache to share modules with MDX loader and avoid duplicate React contexts
405
+ if (this.options.projectId && this.options.contentSourceId) {
406
+ const baseCacheDir = getMdxEsmCacheDir();
407
+ const projectKey = hashCodeHex(this.options.projectId);
408
+ const sourceKey = hashCodeHex(this.options.contentSourceId);
409
+ const mdxCacheDir = join(baseCacheDir, projectKey, sourceKey);
410
+ const mdxCachedPath = await lookupMdxEsmCache(filePath, mdxCacheDir, this.options.projectDir, contentHash);
411
+ if (mdxCachedPath) {
412
+ const entry = { tempPath: mdxCachedPath, contentHash };
413
+ globalModuleCache.set(contentCacheKey, entry);
414
+ globalModuleCache.set(filePathCacheKey, entry);
415
+ logger.debug("[SSR-MODULE-LOADER] Reusing MDX-ESM cache", {
416
+ file: filePath.slice(-40),
417
+ cachedPath: mdxCachedPath.slice(-60),
418
+ });
419
+ await this.ensureDependenciesExist(code, filePath, depth);
420
+ return;
421
+ }
422
+ }
381
423
  const existingTransform = globalInProgress.get(inProgressKey);
382
424
  if (existingTransform) {
383
425
  try {
@@ -440,6 +482,7 @@ export class SSRModuleLoader {
440
482
  dev: this.options.dev,
441
483
  ssr: true,
442
484
  apiBaseUrl: this.options.apiBaseUrl,
485
+ reactVersion: this.options.reactVersion,
443
486
  };
444
487
  let transformed = await withSpan(SpanNames.SSR_TRANSFORM_SINGLE, () => transformToESM(code, filePath, this.options.projectDir, this.options.adapter, transformOpts), { "ssr.file": filePath.split("/").pop() || filePath });
445
488
  for (const [specifier, tempPath] of crossProjectPaths.entries()) {
@@ -454,9 +497,12 @@ export class SSRModuleLoader {
454
497
  const cacheDir = getHttpBundleCacheDir();
455
498
  const failed = await ensureHttpBundlesExist(bundlePaths, cacheDir);
456
499
  if (failed.length > 0) {
457
- logger.warn("[SSR-MODULE-LOADER] Some HTTP bundles could not be recovered", {
500
+ logger.warn("[SSR-MODULE-LOADER] Unrecoverable HTTP bundles", {
458
501
  file: filePath.slice(-40),
459
502
  failed,
503
+ totalBundles: bundlePaths.length,
504
+ cacheDir,
505
+ source: "fresh-transform",
460
506
  });
461
507
  }
462
508
  }
@@ -661,26 +707,13 @@ export class SSRModuleLoader {
661
707
  }));
662
708
  }
663
709
  }
664
- /**
665
- * Fast sync hash for small strings (project IDs, etc.)
666
- * Use hashContentAsync for large file content.
667
- */
668
- hashCode(str) {
669
- let hash = 0;
670
- for (let i = 0; i < str.length; i++) {
671
- const char = str.charCodeAt(i);
672
- hash = (hash << 5) - hash + char;
673
- hash = hash & hash;
674
- }
675
- return Math.abs(hash).toString(16);
676
- }
677
710
  /**
678
711
  * Async hash for large content using Web Crypto API.
679
- * Doesn't block event loop for large files.
712
+ * Falls back to sync hash for small files.
680
713
  */
681
714
  async hashContentAsync(content) {
682
715
  if (content.length < 10000)
683
- return this.hashCode(content);
716
+ return hashCodeHex(content);
684
717
  try {
685
718
  const data = new TextEncoder().encode(content);
686
719
  const hashBuffer = await dntShim.crypto.subtle.digest("SHA-256", data);
@@ -691,7 +724,7 @@ export class SSRModuleLoader {
691
724
  .join("");
692
725
  }
693
726
  catch {
694
- return this.hashCode(content);
727
+ return hashCodeHex(content);
695
728
  }
696
729
  }
697
730
  async getTempPath(filePath, contentHash) {
@@ -707,26 +740,23 @@ export class SSRModuleLoader {
707
740
  return join(tmpDir, jsPath);
708
741
  }
709
742
  async ensureTmpDir() {
710
- let projectDir = this.options.projectDir;
711
743
  const { projectId, contentSourceId } = this.options;
712
744
  if (!projectId) {
713
- throw new Error(`Missing projectId for SSR temp directory (projectDir: ${projectDir})`);
745
+ throw new Error(`Missing projectId for SSR temp directory (projectDir: ${this.options.projectDir})`);
714
746
  }
715
747
  if (!contentSourceId) {
716
748
  throw new Error(`Missing contentSourceId for SSR temp directory (project: ${projectId})`);
717
749
  }
718
- if (!projectDir.startsWith("/")) {
719
- projectDir = join(cwd(), projectDir);
720
- }
721
- const cacheBaseDir = getCacheBaseDir();
722
- const baseDir = isAbsolute(cacheBaseDir) ? cacheBaseDir : join(cwd(), cacheBaseDir);
723
- const cacheKey = `${baseDir}|${buildSSRModuleProjectKey(projectDir, projectId)}|${contentSourceId}`;
750
+ // Use the same cache directory as MDX-ESM loader to share module instances.
751
+ // This prevents issues like React context being created twice in separate files.
752
+ const baseCacheDir = getMdxEsmCacheDir();
753
+ const projectKey = hashCodeHex(projectId);
754
+ const sourceKey = hashCodeHex(contentSourceId);
755
+ const cacheKey = `${baseCacheDir}|${projectKey}|${sourceKey}`;
724
756
  const existingDir = globalTmpDirs.get(cacheKey);
725
757
  if (existingDir)
726
758
  return existingDir;
727
- const projectKey = this.hashCode(projectId);
728
- const sourceKey = this.hashCode(contentSourceId);
729
- const tmpDir = join(baseDir, "veryfront-ssr", projectKey, sourceKey);
759
+ const tmpDir = join(baseCacheDir, projectKey, sourceKey);
730
760
  await this.fs.mkdir(tmpDir, { recursive: true });
731
761
  globalTmpDirs.set(cacheKey, tmpDir);
732
762
  return tmpDir;
@@ -14,6 +14,8 @@ export interface SSRModuleLoaderOptions {
14
14
  apiBaseUrl?: string;
15
15
  /** Content source ID for cache isolation (branch name or release ID) */
16
16
  contentSourceId?: string;
17
+ /** React version for transforms (defaults to DEFAULT_REACT_VERSION) */
18
+ reactVersion?: string;
17
19
  }
18
20
  export interface ModuleCacheEntry {
19
21
  tempPath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/src/modules/react-loader/ssr-module-loader/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/src/modules/react-loader/ssr-module-loader/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;CACvB"}
@@ -1,4 +1,4 @@
1
- import type * as React from "react";
1
+ import type * as React from "../../../deps/esm.sh/react@19.1.1.js";
2
2
  export interface LoadComponentOptions {
3
3
  projectId?: string;
4
4
  dev?: boolean;
@@ -8,6 +8,8 @@ export interface LoadComponentOptions {
8
8
  ssr?: boolean;
9
9
  /** Content source ID for cache isolation (branch name or release ID) */
10
10
  contentSourceId?: string;
11
+ /** React version for transforms (from project config) */
12
+ reactVersion?: string;
11
13
  }
12
14
  export interface ComponentSource {
13
15
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/react-loader/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/react-loader/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,sCAAsC,CAAC;AAEnE,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"unified-loader.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/react-loader/unified-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAItF,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,EAAE,EAC7B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAkCvB"}
1
+ {"version":3,"file":"unified-loader.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/react-loader/unified-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKtF,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,EAAE,EAC7B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAmCvB"}
@@ -3,12 +3,14 @@ import { transformToESM } from "../../transforms/esm/index.js";
3
3
  import { rendererLogger as logger } from "../../utils/index.js";
4
4
  import { withSpan } from "../../observability/tracing/otlp-setup.js";
5
5
  import { getProjectTmpDir } from "./temp-directory.js";
6
+ import { DEFAULT_REACT_VERSION } from "../../transforms/esm/package-registry.js";
6
7
  export function loadComponentsUnified(components, projectDir, adapter, options) {
7
8
  return withSpan("modules.loadComponentsUnified", async () => {
8
9
  const projectId = options?.projectId ?? projectDir;
9
10
  const dev = options?.dev ?? true;
10
11
  const moduleServerUrl = options?.moduleServerUrl;
11
- const transformOpts = { projectId, dev, moduleServerUrl };
12
+ const reactVersion = options?.reactVersion;
13
+ const transformOpts = { projectId, dev, moduleServerUrl, reactVersion };
12
14
  const transformedComponents = await transformAllComponents(components, projectDir, adapter, transformOpts);
13
15
  const baseTmp = await getProjectTmpDir(projectId);
14
16
  const uniqueTmp = `unified-${Date.now()}-${Math.random().toString(16).slice(2)}`;
@@ -16,7 +18,7 @@ export function loadComponentsUnified(components, projectDir, adapter, options)
16
18
  await adapter.fs.mkdir(tmpDir, { recursive: true });
17
19
  try {
18
20
  await writeComponentFiles(tmpDir, transformedComponents, adapter);
19
- const entryCode = generateEntryPoint(transformedComponents);
21
+ const entryCode = generateEntryPoint(transformedComponents, reactVersion);
20
22
  await adapter.fs.writeFile(join(tmpDir, "entry.js"), entryCode);
21
23
  return await importUnifiedComponents(tmpDir, transformedComponents);
22
24
  }
@@ -34,13 +36,14 @@ function transformAllComponents(components, projectDir, adapter, transformOpts)
34
36
  async function writeComponentFiles(tmpDir, components, adapter) {
35
37
  await Promise.all(components.map((comp) => adapter.fs.writeFile(join(tmpDir, `${comp.name}.js`), comp.code)));
36
38
  }
37
- function generateEntryPoint(components) {
39
+ function generateEntryPoint(components, reactVersion) {
40
+ const version = reactVersion ?? DEFAULT_REACT_VERSION;
38
41
  const imports = components
39
42
  .map((comp) => `import { default as ${comp.name} } from './${comp.name}.js'`)
40
43
  .join("\n");
41
44
  const exports = components.map((comp) => comp.name).join(", ");
42
45
  return `
43
- import * as React from 'https://esm.sh/react@18.3.1?target=es2022'
46
+ import * as React from 'https://esm.sh/react@${version}?target=es2022'
44
47
  ${imports}
45
48
 
46
49
  export { ${exports} }
@@ -29,6 +29,8 @@ export interface BatchHandlerOptions {
29
29
  * When not set, users can import from any directory in the project.
30
30
  */
31
31
  allowedImportDirs?: string[];
32
+ /** React version for transforms (from project config) */
33
+ reactVersion?: string;
32
34
  }
33
35
  /**
34
36
  * Handle a batch module request
@@ -1 +1 @@
1
- {"version":3,"file":"module-batch-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-batch-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AASlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AActE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAWD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAuK/G;AAkJD;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAY1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAKrE"}
1
+ {"version":3,"file":"module-batch-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-batch-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AASlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AActE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAyK/G;AAqJD;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAY1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAKrE"}
@@ -61,7 +61,7 @@ export function handleModuleBatch(req, options) {
61
61
  headers: { "Content-Type": "text/plain" },
62
62
  });
63
63
  }
64
- const { projectDir, adapter, projectSlug, projectId, branch, dev = false, allowedImportDirs, } = options;
64
+ const { projectDir, adapter, projectSlug, projectId, branch, dev = false, allowedImportDirs, reactVersion, } = options;
65
65
  const projectKey = projectId || projectSlug || "default";
66
66
  const userAgent = req.headers.get("user-agent") ?? "";
67
67
  const isSSR = url.searchParams.get("ssr") === "true" || userAgent.startsWith("Deno/");
@@ -98,6 +98,7 @@ export function handleModuleBatch(req, options) {
98
98
  projectSlug,
99
99
  branch,
100
100
  projectId,
101
+ reactVersion,
101
102
  });
102
103
  const transformDurationMs = performance.now() - moduleStart;
103
104
  if (!code) {
@@ -207,6 +208,7 @@ async function transformModule(source, sourceFile, projectDir, adapter, options)
207
208
  projectId: options.projectId ?? projectDir,
208
209
  dev: options.dev,
209
210
  ssr: options.ssr,
211
+ reactVersion: options.reactVersion,
210
212
  });
211
213
  if (options.ssr) {
212
214
  code = applySSRImportRewrites(code, {
@@ -23,6 +23,8 @@ export interface ModuleServerOptions {
23
23
  * When not set, users can import from any directory in the project.
24
24
  */
25
25
  allowedImportDirs?: string[];
26
+ /** React version for transforms (from project config) */
27
+ reactVersion?: string;
26
28
  }
27
29
  /** Serve transformed module at /_vf_modules/* path */
28
30
  export declare function serveModule(req: dntShim.Request, options: ModuleServerOptions): Promise<dntShim.Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"module-server.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-server.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAIlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAsBtE,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,OAAO,EAAE,cAAc,CAAC;IACxB,uBAAuB;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,sDAAsD;AACtD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAuSzG;AAqJD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAG7D"}
1
+ {"version":3,"file":"module-server.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-server.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAIlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAsBtE,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,OAAO,EAAE,cAAc,CAAC;IACxB,uBAAuB;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,sDAAsD;AACtD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CA0SzG;AAqJD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAG7D"}
@@ -24,7 +24,7 @@ export function serveModule(req, options) {
24
24
  const url = new URL(req.url);
25
25
  return withSpan("modules.serve", async () => {
26
26
  const startTime = performance.now();
27
- const { projectId, projectDir, adapter, dev = true, projectUUID, allowedImportDirs, } = options;
27
+ const { projectId, projectDir, adapter, dev = true, projectUUID, allowedImportDirs, reactVersion, } = options;
28
28
  const effectiveProjectId = projectUUID ?? projectId;
29
29
  const method = req.method.toUpperCase();
30
30
  const isHeadRequest = method === "HEAD";
@@ -83,7 +83,7 @@ export function serveModule(req, options) {
83
83
  codeLength: snippetCode.length,
84
84
  });
85
85
  try {
86
- let transformedCode = await transformToESM(snippetCode, `_snippets/${hash}.tsx`, projectDir, adapter, { projectId: effectiveProjectId, dev, ssr: isSSR });
86
+ let transformedCode = await transformToESM(snippetCode, `_snippets/${hash}.tsx`, projectDir, adapter, { projectId: effectiveProjectId, dev, ssr: isSSR, reactVersion });
87
87
  if (isSSR && transformedCode) {
88
88
  transformedCode = applySSRImportRewrites(transformedCode, {
89
89
  projectSlug: snippetProjectSlug,
@@ -151,6 +151,7 @@ export function serveModule(req, options) {
151
151
  dev,
152
152
  ssr: isSSR,
153
153
  moduleServerUrl: `http://${url.host}`,
154
+ reactVersion,
154
155
  });
155
156
  if (isSSR && code) {
156
157
  code = applySSRImportRewrites(code, { crossProjectRef: projectRef });
@@ -218,6 +219,7 @@ export function serveModule(req, options) {
218
219
  dev,
219
220
  ssr: isSSR,
220
221
  studioEmbed,
222
+ reactVersion,
221
223
  };
222
224
  code = await transformToESM(source, sourceFile, projectDir, adapter, transformOpts);
223
225
  if (isSSR && code) {
@@ -1 +1 @@
1
- {"version":3,"file":"ssr-import-rewriter.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/ssr-import-rewriter.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA4FD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAK5F"}
1
+ {"version":3,"file":"ssr-import-rewriter.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/ssr-import-rewriter.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6BAA6B;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAsFD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAK5F"}
@@ -1,6 +1,4 @@
1
- import { getDenoNpmReactMap, getReactVersion } from "../../transforms/esm/package-registry.js";
2
- import { isDeno } from "../../platform/compat/runtime.js";
3
- import { getLocalReactPaths } from "../../platform/compat/react-paths.js";
1
+ import { getReactImportMap, getReactVersion } from "../../transforms/esm/package-registry.js";
4
2
  function shouldKeepBareSpecifier(specifier) {
5
3
  if (specifier.startsWith("npm:") ||
6
4
  specifier.startsWith("http://") ||
@@ -18,24 +16,21 @@ function shouldKeepBareSpecifier(specifier) {
18
16
  return false;
19
17
  }
20
18
  function resolveReactForRuntime(specifier, version) {
21
- // Always rewrite React imports to explicit specifiers for SSR modules.
22
- // Dynamic imports from temp files don't have access to deno.json import map,
23
- // so we must use explicit specifiers to ensure a single React instance.
24
- // For Deno: use npm: specifiers (auto-deduplicated by Deno's npm cache)
25
- // For Node/Bun: use local node_modules paths
26
- const reactMap = isDeno ? getDenoNpmReactMap(version) : getLocalReactPaths();
19
+ // Always rewrite React imports to esm.sh URLs for SSR modules.
20
+ // NO npm: specifiers - use esm.sh URLs only for consistent React instance.
21
+ const v = version ?? getReactVersion();
22
+ const reactMap = getReactImportMap(v);
27
23
  const mapped = reactMap[specifier];
28
24
  if (mapped)
29
25
  return mapped;
30
26
  // Handle React subpath imports not in the map
31
- const v = version ?? getReactVersion();
32
27
  if (specifier.startsWith("react/")) {
33
28
  const subpath = specifier.slice("react/".length);
34
- return isDeno ? `npm:react@${v}/${subpath}` : `react/${subpath}`;
29
+ return `https://esm.sh/react@${v}/${subpath}?external=react&target=es2022`;
35
30
  }
36
31
  if (specifier.startsWith("react-dom/")) {
37
32
  const subpath = specifier.slice("react-dom/".length);
38
- return isDeno ? `npm:react-dom@${v}/${subpath}` : `react-dom/${subpath}`;
33
+ return `https://esm.sh/react-dom@${v}/${subpath}?external=react&target=es2022`;
39
34
  }
40
35
  return null;
41
36
  }
@@ -47,11 +42,8 @@ function rewriteBareImports(code, version) {
47
42
  return `from "${reactUrl}"`;
48
43
  if (shouldKeepBareSpecifier(specifier))
49
44
  return `from "${specifier}"`;
50
- // For third-party packages: Deno uses npm: specifiers, Node/Bun use esm.sh
51
- if (isDeno) {
52
- return `from "npm:${specifier}"`;
53
- }
54
- return `from "https://esm.sh/${specifier}?deps=react@${v},react-dom@${v}&target=es2022"`;
45
+ // For third-party packages: Use esm.sh with external=react
46
+ return `from "https://esm.sh/${specifier}?external=react&target=es2022"`;
55
47
  });
56
48
  }
57
49
  function rewritePathAliases(code, options) {
@@ -1,5 +1,5 @@
1
1
  import * as dntShim from "../../../_dnt.shims.js";
2
- import * as React from "react";
2
+ import * as React from "../../../deps/esm.sh/react@19.1.1.js";
3
3
  export interface FormStatus {
4
4
  pending: boolean;
5
5
  data: dntShim.FormData | null;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-adapter.d.ts","sourceRoot":"","sources":["../../../../src/src/react/compat/hooks-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAElD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,MAAM,qBAAqB,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,KAAK,KAAK,CAAC,CAAC;AAMpF,wBAAgB,mBAAmB,IAAI,UAAU,CAUhD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,EAChE,KAAK,EAAE,KAAK,EACZ,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,eAAe,KAAK,KAAK,GAC1E,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC,CA2CnE;AAED,wBAAgB,mBAAmB,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,aAAa,CAAC,CAuB5E;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAYrD;AAID,wBAAgB,WAAW,IAAI,MAAM,CAapC;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,GAAG,KAAK,CAAC,YAAY,CAOrB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,gBAAgB,EAAE,OAAO,sBAAsB,CAAC;IAChD,KAAK,EAAE,OAAO,WAAW,CAAC;CAC3B;AAkBD;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED,eAAO,MAAM,kBAAkB;uBACb,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;uBAG3B,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;0BAGxB,MAAM,GAAG,SAAS;CAGtC,CAAC;AAEF,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,GAAG,KAAK,CAAC,YAAY,CAUrB;AAED,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC"}
1
+ {"version":3,"file":"hooks-adapter.d.ts","sourceRoot":"","sources":["../../../../src/src/react/compat/hooks-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAElD,OAAO,KAAK,KAAK,MAAM,sCAAsC,CAAC;AAG9D,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,MAAM,qBAAqB,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,KAAK,KAAK,CAAC,CAAC;AAMpF,wBAAgB,mBAAmB,IAAI,UAAU,CAUhD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,EAChE,KAAK,EAAE,KAAK,EACZ,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,eAAe,KAAK,KAAK,GAC1E,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC,CA2CnE;AAED,wBAAgB,mBAAmB,IAAI,UAAU,CAAC,OAAO,KAAK,CAAC,aAAa,CAAC,CAuB5E;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAYrD;AAID,wBAAgB,WAAW,IAAI,MAAM,CAapC;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,GAAG,KAAK,CAAC,YAAY,CAOrB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,aAAa,EAAE,OAAO,mBAAmB,CAAC;IAC1C,gBAAgB,EAAE,OAAO,sBAAsB,CAAC;IAChD,KAAK,EAAE,OAAO,WAAW,CAAC;CAC3B;AAkBD;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED,eAAO,MAAM,kBAAkB;uBACb,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;uBAG3B,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;0BAGxB,MAAM,GAAG,SAAS;CAGtC,CAAC;AAEF,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,GAAG,KAAK,CAAC,YAAY,CAUrB;AAED,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as dntShim from "../../../_dnt.shims.js";
2
2
  import { rendererLogger as logger } from "../../utils/index.js";
3
- import * as React from "react";
3
+ import * as React from "../../../deps/esm.sh/react@19.1.1.js";
4
4
  import { getReactVersionInfo, hasFeature } from "./version-detector/index.js";
5
5
  function hasReactHook(hookName) {
6
6
  return typeof React[hookName] === "function";
@@ -1,5 +1,5 @@
1
1
  import * as dntShim from "../../../../_dnt.shims.js";
2
- import * as React from "react";
2
+ import * as React from "../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import type { SSRResponseOptions } from "./types.js";
4
4
  export declare function createSSRResponse(element: React.ReactNode, options?: SSRResponseOptions): Promise<dntShim.Response>;
5
5
  //# sourceMappingURL=response-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response-builder.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/response-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAUrD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CA0B3B"}
1
+ {"version":3,"file":"response-builder.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/response-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAIjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAUrD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CA0B3B"}
@@ -1,10 +1,10 @@
1
1
  export interface ReactDOMServer {
2
- renderToString: typeof import("react-dom/server").renderToString;
3
- renderToStaticMarkup: typeof import("react-dom/server").renderToStaticMarkup;
4
- renderToPipeableStream?: typeof import("react-dom/server").renderToPipeableStream;
5
- renderToReadableStream?: typeof import("react-dom/server").renderToReadableStream;
2
+ renderToString: typeof import("../../../../deps/esm.sh/react-dom@19.1.1/server.js").renderToString;
3
+ renderToStaticMarkup: typeof import("../../../../deps/esm.sh/react-dom@19.1.1/server.js").renderToStaticMarkup;
4
+ renderToPipeableStream?: typeof import("../../../../deps/esm.sh/react-dom@19.1.1/server.js").renderToPipeableStream;
5
+ renderToReadableStream?: typeof import("../../../../deps/esm.sh/react-dom@19.1.1/server.js").renderToReadableStream;
6
6
  }
7
7
  export declare function resetReactCache(): void;
8
- export declare function getProjectReact(): Promise<typeof import("react")>;
8
+ export declare function getProjectReact(): Promise<typeof import("../../../../deps/esm.sh/react@19.1.1.js")>;
9
9
  export declare function getReactDOMServer(): Promise<ReactDOMServer>;
10
10
  //# sourceMappingURL=server-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-loader.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/server-loader.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,cAAc,kBAAkB,EAAE,cAAc,CAAC;IACjE,oBAAoB,EAAE,cAAc,kBAAkB,EAAE,oBAAoB,CAAC;IAC7E,sBAAsB,CAAC,EAAE,cAAc,kBAAkB,EAAE,sBAAsB,CAAC;IAClF,sBAAsB,CAAC,EAAE,cAAc,kBAAkB,EAAE,sBAAsB,CAAC;CACnF;AAQD,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,cAAc,OAAO,CAAC,CAAC,CAUjE;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAoB3D"}
1
+ {"version":3,"file":"server-loader.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/server-loader.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,cAAc,oDAAoD,EAAE,cAAc,CAAC;IACnG,oBAAoB,EAAE,cAAc,oDAAoD,EAAE,oBAAoB,CAAC;IAC/G,sBAAsB,CAAC,EAAE,cAAc,oDAAoD,EAAE,sBAAsB,CAAC;IACpH,sBAAsB,CAAC,EAAE,cAAc,oDAAoD,EAAE,sBAAsB,CAAC;CACrH;AAQD,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,cAAc,yCAAyC,CAAC,CAAC,CAUnG;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAoB3D"}
@@ -14,7 +14,7 @@ export function getProjectReact() {
14
14
  return reactLoadFlight.do("react", async () => {
15
15
  if (projectReactCache)
16
16
  return projectReactCache;
17
- const reactModule = await import("react");
17
+ const reactModule = await import("../../../../deps/esm.sh/react@19.1.1.js");
18
18
  projectReactCache = (reactModule.default ?? reactModule);
19
19
  return projectReactCache;
20
20
  });
@@ -26,7 +26,7 @@ export function getReactDOMServer() {
26
26
  if (reactDOMServerCache)
27
27
  return reactDOMServerCache;
28
28
  const versionInfo = getReactVersionInfo();
29
- const serverModule = await import("react-dom/server");
29
+ const serverModule = await import("../../../../deps/esm.sh/react-dom@19.1.1/server.js");
30
30
  const react18Plus = versionInfo.isReact18 || versionInfo.isReact19;
31
31
  reactDOMServerCache = {
32
32
  renderToString: serverModule.renderToString,
@@ -1,4 +1,4 @@
1
- import * as React from "react";
1
+ import * as React from "../../../../deps/esm.sh/react@19.1.1.js";
2
2
  import type { SSROptions, SSRResult } from "./types.js";
3
3
  export declare function renderToStreamAdapter(element: React.ReactNode, options?: SSROptions): Promise<SSRResult>;
4
4
  //# sourceMappingURL=stream-renderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stream-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/stream-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAwMxD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,SAAS,CAAC,CAwBpB"}
1
+ {"version":3,"file":"stream-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/stream-renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAKjE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAwMxD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,SAAS,CAAC,CAwBpB"}
@@ -1,4 +1,4 @@
1
- import * as React from "react";
1
+ import * as React from "../../../../deps/esm.sh/react@19.1.1.js";
2
2
  import type { SSROptions } from "./types.js";
3
3
  export declare function renderToStringAdapter(element: React.ReactNode, options?: SSROptions): Promise<string>;
4
4
  export declare function renderToStaticMarkupAdapter(element: React.ReactNode, options?: SSROptions): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"string-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/string-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAiB7C,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,MAAM,CAAC,CAiCjB;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,MAAM,CAAC,CAUjB"}
1
+ {"version":3,"file":"string-renderer.d.ts","sourceRoot":"","sources":["../../../../../src/src/react/compat/ssr-adapter/string-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,yCAAyC,CAAC;AAKjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAiB7C,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,MAAM,CAAC,CAiCjB;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,OAAO,GAAE,UAAe,GACvB,OAAO,CAAC,MAAM,CAAC,CAUjB"}