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
@@ -6,7 +6,7 @@ import * as dntShim from "../../_dnt.shims.js";
6
6
 
7
7
  import { rendererLogger as logger } from "../utils/index.js";
8
8
  import { ErrorCode, VeryfrontError } from "../errors/index.js";
9
- import type * as BundledReact from "react";
9
+ import type * as BundledReact from "../../deps/esm.sh/react@19.1.1.js";
10
10
  import type { RuntimeAdapter } from "../platform/adapters/base.js";
11
11
  import type { EntityInfo, PageBundle } from "../types/index.js";
12
12
  import { createError, getErrorMessage, toError } from "../errors/veryfront-error.js";
@@ -40,6 +40,8 @@ export async function handleComponentPage(
40
40
  studioEmbed?: boolean;
41
41
  /** Content source ID for cache isolation (branch name or release ID) */
42
42
  contentSourceId?: string;
43
+ /** React version for transforms (from project config) */
44
+ reactVersion?: string;
43
45
  },
44
46
  ): Promise<ComponentPageResult> {
45
47
  try {
@@ -59,6 +61,7 @@ export async function handleComponentPage(
59
61
  adapter,
60
62
  options?.moduleServerUrl,
61
63
  options?.projectId,
64
+ options?.reactVersion,
62
65
  )) ??
63
66
  undefined;
64
67
 
@@ -74,6 +77,7 @@ export async function handleComponentPage(
74
77
  moduleServerUrl: options?.moduleServerUrl,
75
78
  ssr: true,
76
79
  contentSourceId: options?.contentSourceId,
80
+ reactVersion: options?.reactVersion,
77
81
  },
78
82
  );
79
83
 
@@ -138,6 +142,7 @@ async function bundleComponentForClient(
138
142
  adapter: RuntimeAdapter,
139
143
  moduleServerUrl?: string,
140
144
  projectId?: string,
145
+ reactVersion?: string,
141
146
  ): Promise<string | null> {
142
147
  try {
143
148
  const contentHash = await generateContentHash(source);
@@ -151,6 +156,7 @@ async function bundleComponentForClient(
151
156
  dev: true,
152
157
  jsxImportSource: "react",
153
158
  moduleServerUrl,
159
+ reactVersion,
154
160
  });
155
161
 
156
162
  componentHydrationCache.set(cacheKey, transformed);
@@ -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 { rendererLogger as logger } from "../../utils/index.js";
3
3
  import type { InvalidObjectDetails } from "./types.js";
4
4
  import { createError, toError } from "../../errors/veryfront-error.js";
@@ -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 { rendererLogger as logger } from "../../utils/index.js";
3
3
  import { ensureError } from "../../errors/veryfront-error.js";
4
4
  import { normalizeChild } from "../utils/index.js";
@@ -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
 
3
3
  export function isValidPrimitive(value: unknown): boolean {
4
4
  return (
@@ -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 { ValidationOptions } from "./types.js";
3
3
  import { deepInspectElement, type InspectionOptions } from "./element-inspector.js";
4
4
  import { ensureValidReactElement, type NormalizationOptions } from "./element-normalizer.js";
@@ -1,6 +1,6 @@
1
1
  import { dirname, join } from "../../platform/compat/path-helper.js";
2
2
  import { rendererLogger as logger } from "../../utils/index.js";
3
- import * as BundledReact from "react";
3
+ import * as BundledReact from "../../../deps/esm.sh/react@19.1.1.js";
4
4
  import type { RuntimeAdapter } from "../../platform/adapters/base.js";
5
5
  import type { LayoutItem, MdxBundle, MDXComponents } from "../../types/index.js";
6
6
  import type { EntityInfo } from "../../types/index.js";
@@ -230,7 +230,8 @@ export class LayoutApplicator {
230
230
  const appSource = await this.adapter.fs.readFile(appPath);
231
231
  const isMdx = appPath.endsWith(".mdx") || appPath.endsWith(".md");
232
232
 
233
- let App: React.ComponentType<Record<string, unknown>> | null;
233
+ // deno-lint-ignore no-explicit-any
234
+ let App: any;
234
235
 
235
236
  if (isMdx) {
236
237
  App = await this.loadMdxAppComponent(appSource, appPath);
@@ -268,10 +269,8 @@ export class LayoutApplicator {
268
269
  );
269
270
  }
270
271
 
271
- private async loadMdxAppComponent(
272
- source: string,
273
- appPath: string,
274
- ): Promise<React.ComponentType<Record<string, unknown>> | null> {
272
+ // deno-lint-ignore no-explicit-any
273
+ private async loadMdxAppComponent(source: string, appPath: string): Promise<any> {
275
274
  try {
276
275
  const { compile } = await import("@mdx-js/mdx");
277
276
  const { getRehypePlugins, getRemarkPlugins } = await import(
@@ -1,5 +1,5 @@
1
1
  import { rendererLogger as logger } from "../../../utils/index.js";
2
- import * as BundledReact from "react";
2
+ import * as BundledReact from "../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import type { RuntimeAdapter } from "../../../platform/adapters/base.js";
4
4
  import type { LayoutItem, MdxBundle, MDXComponents } from "../../../types/index.js";
5
5
  import type { ImportMapConfig } from "../../../modules/import-map/types.js";
@@ -1,5 +1,5 @@
1
1
  import { computeHash, rendererLogger as logger, TSX_LAYOUT_MAX_ENTRIES } from "../../../utils/index.js";
2
- import * as BundledReact from "react";
2
+ import * as BundledReact from "../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import type { RuntimeAdapter } from "../../../platform/adapters/base.js";
4
4
  import type { LayoutItem, MdxBundle, MDXComponents, MDXModule } from "../../../types/index.js";
5
5
  import type { ImportMapConfig } from "../../../modules/import-map/types.js";
@@ -1,5 +1,5 @@
1
1
  import { rendererLogger as logger } from "../../../utils/index.js";
2
- import * as BundledReact from "react";
2
+ import * as BundledReact from "../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import {
4
4
  getElementDebugInfo,
5
5
  getElementTypeName,
@@ -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 { EntityInfo, LayoutItem, MdxBundle, MDXComponents } from "../../types/index.js";
3
3
  import type { RuntimeAdapter } from "../../platform/adapters/base.js";
4
4
  import type { VeryfrontConfig } from "../../config/index.js";
@@ -9,8 +9,7 @@
9
9
  import { parallelMap, rendererLogger as logger } from "../../../utils/index.js";
10
10
  import type { RuntimeAdapter } from "../../../platform/adapters/base.js";
11
11
  import { getLocalAdapter } from "../../../platform/adapters/registry.js";
12
- import { generateHash } from "./cache.js";
13
- import { findLocalLibFile, findSourceFile } from "../file-resolver/index.js";
12
+ import { findSourceFile } from "../file-resolver/index.js";
14
13
  import { transformToESM } from "../../../transforms/esm-transform.js";
15
14
  import { getProjectTmpDir } from "../../../modules/react-loader/index.js";
16
15
  import {
@@ -19,10 +18,17 @@ import {
19
18
  initializeTransformCache,
20
19
  setCachedTransformAsync,
21
20
  } from "../../../transforms/esm/transform-cache.js";
22
- import { hashString } from "../../../cache/hash.js";
23
21
  import { TRANSFORM_DISTRIBUTED_TTL_SEC } from "../../../utils/constants/cache.js";
24
22
  import { ensureHttpBundlesExist } from "../../../transforms/esm/http-cache.js";
25
- import { getHttpBundleCacheDir } from "../../../utils/cache-dir.js";
23
+ import { getHttpBundleCacheDir, getMdxEsmCacheDir } from "../../../utils/cache-dir.js";
24
+ import { join } from "../../../platform/compat/path/index.js";
25
+ import { hashCodeHex } from "../../../utils/hash-utils.js";
26
+ import { TRANSFORM_CACHE_VERSION } from "../../../transforms/esm/package-registry.js";
27
+ import {
28
+ getModulePathCache,
29
+ lookupMdxEsmCache,
30
+ saveModulePathCache,
31
+ } from "../../../transforms/mdx/esm-module-loader/cache/index.js";
26
32
 
27
33
  // Re-export utilities
28
34
  export { createEsmCache, createModuleCache, generateHash } from "./cache.js";
@@ -57,10 +63,13 @@ const TRANSFORM_CACHE_TTL_SECONDS = TRANSFORM_DISTRIBUTED_TTL_SEC;
57
63
  export interface ModuleLoaderConfig {
58
64
  projectDir: string;
59
65
  projectId?: string;
66
+ contentSourceId?: string;
60
67
  adapter: RuntimeAdapter;
61
68
  mode: "development" | "production";
62
69
  moduleCache: Map<string, string>;
63
70
  esmCache: Map<string, string>;
71
+ /** React version for transforms (from project config) */
72
+ reactVersion?: string;
64
73
  }
65
74
 
66
75
  function getModuleCacheKey(filePath: string, projectId?: string, projectDir?: string): string {
@@ -97,19 +106,14 @@ async function resolveAliasImport(
97
106
  imp: AliasImport,
98
107
  projectDir: string,
99
108
  adapter: RuntimeAdapter,
100
- localAdapter: RuntimeAdapter,
109
+ _localAdapter: RuntimeAdapter,
101
110
  ): Promise<ResolvedDep> {
102
111
  const relativePath = imp.path.substring(2); // Remove @/ prefix
103
112
 
104
- if (relativePath.startsWith("lib/")) {
105
- const depFilePath = await findLocalLibFile(relativePath, localAdapter);
106
- return { ...imp, relativePath, depFilePath, isLocalLib: true };
107
- }
108
-
109
- let depFilePath = await findSourceFile(relativePath, projectDir, adapter);
110
- if (!depFilePath) {
111
- depFilePath = await findSourceFile(`components/${relativePath}`, projectDir, adapter);
112
- }
113
+ // @/ alias always resolves to project directory
114
+ // Try exact path first, then components/ subdirectory
115
+ const depFilePath = await findSourceFile(relativePath, projectDir, adapter) ??
116
+ await findSourceFile(`components/${relativePath}`, projectDir, adapter);
113
117
 
114
118
  return { ...imp, relativePath, depFilePath, isLocalLib: false };
115
119
  }
@@ -131,12 +135,26 @@ export async function transformModuleWithDeps(
131
135
  config: ModuleLoaderConfig,
132
136
  useLocalAdapter = false,
133
137
  ): Promise<string> {
134
- const { moduleCache, projectDir, projectId, adapter, mode } = config;
138
+ const { moduleCache, projectDir, projectId, contentSourceId, adapter, mode } = config;
135
139
  const cacheKey = getModuleCacheKey(filePath, projectId, projectDir);
136
140
 
137
141
  const cachedPath = moduleCache.get(cacheKey);
138
142
  if (cachedPath) return cachedPath;
139
143
 
144
+ // Check MDX-ESM cache to share modules with SSR loader (prevents duplicate React contexts)
145
+ if (projectId && contentSourceId) {
146
+ const baseCacheDir = getMdxEsmCacheDir();
147
+ const projectKey = encodeURIComponent(projectId);
148
+ const sourceKey = encodeURIComponent(contentSourceId);
149
+ const mdxCacheDir = join(baseCacheDir, projectKey, sourceKey);
150
+
151
+ const mdxCachedPath = await lookupMdxEsmCache(filePath, mdxCacheDir, projectDir);
152
+ if (mdxCachedPath) {
153
+ moduleCache.set(cacheKey, mdxCachedPath);
154
+ return mdxCachedPath;
155
+ }
156
+ }
157
+
140
158
  const readAdapter = useLocalAdapter ? localAdapter : adapter;
141
159
  let fileContent = decodeFileContent(await readAdapter.fs.readFile(filePath));
142
160
 
@@ -193,7 +211,7 @@ export async function transformModuleWithDeps(
193
211
  });
194
212
  }
195
213
 
196
- const contentHash = hashString(fileContent);
214
+ const contentHash = hashCodeHex(fileContent);
197
215
  const effectiveProjectId = projectId ?? projectDir;
198
216
  const scopedPath = `${effectiveProjectId}:${filePath}`;
199
217
  const transformCacheKey = generateTransformCacheKey(scopedPath, contentHash, true); // ssr=true
@@ -210,6 +228,7 @@ export async function transformModuleWithDeps(
210
228
  projectId: effectiveProjectId,
211
229
  dev: mode === "development",
212
230
  ssr: true,
231
+ reactVersion: config.reactVersion,
213
232
  });
214
233
  },
215
234
  TRANSFORM_CACHE_TTL_SECONDS,
@@ -231,6 +250,7 @@ export async function transformModuleWithDeps(
231
250
  projectId: effectiveProjectId,
232
251
  dev: mode === "development",
233
252
  ssr: true,
253
+ reactVersion: config.reactVersion,
234
254
  });
235
255
  setCachedTransformAsync(
236
256
  transformCacheKey,
@@ -246,10 +266,19 @@ export async function transformModuleWithDeps(
246
266
  }
247
267
  }
248
268
 
249
- const hash = await generateHash(filePath);
250
- const tempFilePath = `${tmpDir}/mod-${hash}.js`;
269
+ // Use TRANSFORMED hash for filename (matches SSR loader behavior)
270
+ const transformedHash = hashCodeHex(transformedCode).slice(0, 8);
271
+
272
+ const relativePath = filePath.startsWith(projectDir)
273
+ ? filePath.slice(projectDir.length).replace(/^\/+/, "")
274
+ : filePath.replace(/^\/+/, "");
251
275
 
252
- await ensureDir(localAdapter, tmpDir);
276
+ const jsPath = relativePath.replace(/\.(tsx?|jsx|mdx)$/, `.${transformedHash}.js`);
277
+ const tempFilePath = join(tmpDir, jsPath);
278
+
279
+ // Ensure directory exists (might be nested like lib/ or components/)
280
+ const tempDir = tempFilePath.substring(0, tempFilePath.lastIndexOf("/"));
281
+ await ensureDir(localAdapter, tempDir);
253
282
 
254
283
  try {
255
284
  await localAdapter.fs.writeFile(tempFilePath, transformedCode);
@@ -262,10 +291,52 @@ export async function transformModuleWithDeps(
262
291
  throw error;
263
292
  }
264
293
 
294
+ // Register in MDX-ESM cache index so other loaders can find this module
295
+ if (contentSourceId) {
296
+ const normalizedPath = `_vf_modules/${relativePath.replace(/\.(tsx?|jsx|mdx)$/, ".js")}`;
297
+ const mdxCacheKey = `v${TRANSFORM_CACHE_VERSION}:${normalizedPath}`;
298
+ const cache = await getModulePathCache(tmpDir);
299
+ cache.set(mdxCacheKey, tempFilePath);
300
+ // Persist to disk so MDX loader can find it
301
+ saveModulePathCache(tmpDir).catch((err) => {
302
+ logger.debug("[ModuleLoader] Failed to save module cache", { error: String(err) });
303
+ });
304
+ logger.debug("[ModuleLoader] Registered module in MDX-ESM cache", {
305
+ file: filePath.slice(-40),
306
+ mdxCacheKey,
307
+ tempFilePath: tempFilePath.slice(-60),
308
+ });
309
+ }
310
+
265
311
  moduleCache.set(cacheKey, tempFilePath);
266
312
  return tempFilePath;
267
313
  }
268
314
 
315
+ /**
316
+ * Get the cache directory for module transforms.
317
+ * Uses MDX-ESM cache when contentSourceId is available, otherwise falls back to project tmp dir.
318
+ * This ensures modules are shared between orchestrator and MDX loader to prevent duplicate contexts.
319
+ */
320
+ async function getModuleCacheDir(config: ModuleLoaderConfig): Promise<string> {
321
+ const { projectId, contentSourceId, projectDir } = config;
322
+
323
+ if (projectId && contentSourceId) {
324
+ const baseCacheDir = getMdxEsmCacheDir();
325
+ const projectKey = encodeURIComponent(projectId);
326
+ const sourceKey = encodeURIComponent(contentSourceId);
327
+ const cacheDir = join(baseCacheDir, projectKey, sourceKey);
328
+
329
+ // Ensure directory exists
330
+ const { createFileSystem } = await import("../../../platform/compat/fs.js");
331
+ await createFileSystem().mkdir(cacheDir, { recursive: true });
332
+
333
+ return cacheDir;
334
+ }
335
+
336
+ // Fallback for cases without contentSourceId
337
+ return getProjectTmpDir(projectId ?? projectDir);
338
+ }
339
+
269
340
  /**
270
341
  * Load a module by path, transforming it and its dependencies.
271
342
  *
@@ -274,7 +345,7 @@ export async function transformModuleWithDeps(
274
345
  * @returns The loaded module
275
346
  */
276
347
  export async function loadModule(filePath: string, config: ModuleLoaderConfig): Promise<any> {
277
- const tmpDir = await getProjectTmpDir(config.projectId ?? config.projectDir);
348
+ const tmpDir = await getModuleCacheDir(config);
278
349
  const localAdapter = await getLocalAdapter();
279
350
 
280
351
  const tempFilePath = await transformModuleWithDeps(filePath, tmpDir, localAdapter, config);
@@ -253,6 +253,7 @@ export class RenderPipeline {
253
253
  setupSSRGlobals();
254
254
 
255
255
  this.moduleLoaderConfig.projectId = projectId;
256
+ this.moduleLoaderConfig.contentSourceId = options?.contentSourceId;
256
257
 
257
258
  if (this.config.mode === "development") {
258
259
  clearSSRModuleCacheForProject(projectId);
@@ -523,6 +524,7 @@ export class RenderPipeline {
523
524
 
524
525
  const projectId = options?.projectId ?? this.config.projectDir;
525
526
  this.moduleLoaderConfig.projectId = projectId;
527
+ this.moduleLoaderConfig.contentSourceId = options?.contentSourceId;
526
528
 
527
529
  if (this.config.mode === "development") {
528
530
  clearSSRModuleCacheForProject(projectId);
@@ -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 type * as React from "react";
3
+ import type * as React from "../../../deps/esm.sh/react@19.1.1.js";
4
4
  import { createError, toError } from "../../errors/veryfront-error.js";
5
5
  import { withSpan } from "../../observability/tracing/otlp-setup.js";
6
6
  import { SpanNames } from "../../observability/tracing/span-names.js";
@@ -47,7 +47,7 @@ export class SSROrchestrator {
47
47
  ): Promise<SSRRenderingResult> {
48
48
  logger.debug("[SSROrchestrator] performSSRRendering called", {
49
49
  elementType: getElementTypeName(pageElement),
50
- hasChildren: !!pageElement?.props?.children,
50
+ hasChildren: !!(pageElement?.props as Record<string, unknown>)?.children,
51
51
  });
52
52
 
53
53
  const validatedElement = this.config.elementValidator.ensureValidReactElement(
@@ -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 { rendererLogger as logger } from "../utils/index.js";
3
3
  import { ErrorCode, VeryfrontError } from "../errors/index.js";
4
4
  import { createDefaultMDXComponents } from "./utils/index.js";
@@ -1,6 +1,6 @@
1
1
  import { rendererLogger as logger } from "../utils/index.js";
2
2
  import { ErrorCode, VeryfrontError } from "../errors/index.js";
3
- import type * as BundledReact from "react";
3
+ import type * as BundledReact from "../../deps/esm.sh/react@19.1.1.js";
4
4
  import type { RuntimeAdapter } from "../platform/adapters/base.js";
5
5
  import type { EntityInfo, MdxBundle, MDXComponents, MDXModule, PageBundle } from "../types/index.js";
6
6
  import { mdxRenderer } from "../transforms/mdx/index.js";
@@ -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 { ClientComponentMeta } from "../types.js";
3
3
 
4
4
  export type RSCComponent = React.ComponentType<any> & {
@@ -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 { serverLogger as logger } from "../../../utils/index.js";
3
3
  import { withSpan } from "../../../observability/tracing/otlp-setup.js";
4
4
  import type { ClientComponentMeta, RSCPayload, RSCRendererOptions } from "../types.js";
@@ -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 { serverLogger as logger } from "../../../utils/index.js";
3
3
  import { renderToStringAdapter } from "../../../react/index.js";
4
4
  import type { ClientComponentMeta, RSCNode } from "../types.js";
@@ -64,15 +64,25 @@ export async function processElement(
64
64
  clientManifest: Map<string, ClientComponentMeta>,
65
65
  clientRefs: Map<string, string>,
66
66
  ): Promise<RSCNode> {
67
- const { type, props } = element;
67
+ const { type } = element;
68
+ // Cast props for React 19 compatibility (props is unknown in R19 types)
69
+ const props = element.props as Record<string, unknown>;
68
70
 
69
71
  if (type === React.Fragment) {
70
- const children = await renderChildren(props.children, clientManifest, clientRefs);
72
+ const children = await renderChildren(
73
+ props.children as React.ReactNode,
74
+ clientManifest,
75
+ clientRefs,
76
+ );
71
77
  return { type: "fragment", children };
72
78
  }
73
79
 
74
80
  if (typeof type === "string") {
75
- const processedChildren = await renderChildren(props.children, clientManifest, clientRefs);
81
+ const processedChildren = await renderChildren(
82
+ props.children as React.ReactNode,
83
+ clientManifest,
84
+ clientRefs,
85
+ );
76
86
 
77
87
  if (processedChildren.every((child) => child.type === "html")) {
78
88
  const html = await renderToStringAdapter(element);
@@ -247,8 +247,8 @@ export function renderSnippet(
247
247
  }
248
248
 
249
249
  const [{ renderToString }, React] = await Promise.all([
250
- import("react-dom/server"),
251
- import("react"),
250
+ import("../../deps/esm.sh/react-dom@19.1.1/server.js"),
251
+ import("../../deps/esm.sh/react@19.1.1.js"),
252
252
  ]);
253
253
 
254
254
  const element = React.createElement(MDXContent, {
@@ -5,7 +5,7 @@
5
5
 
6
6
  import { dirname, join } from "../../platform/compat/path-helper.js";
7
7
  import { DEFAULT_DASHBOARD_PORT, rendererLogger as logger } from "../../utils/index.js";
8
- import * as React from "react";
8
+ import * as React from "../../../deps/esm.sh/react@19.1.1.js";
9
9
  import type { RuntimeAdapter } from "../../platform/adapters/base.js";
10
10
  import { VirtualModuleSystem } from "../virtual-module-system.js";
11
11
  import { loadComponentFromSource } from "../../modules/react-loader/component-loader.js";
@@ -15,7 +15,7 @@ import {
15
15
  import { isCompiledBinary, rendererLogger as logger } from "../utils/index.js";
16
16
  import { withSpan } from "../observability/tracing/otlp-setup.js";
17
17
  import { SpanNames } from "../observability/tracing/span-names.js";
18
- import type * as React from "react";
18
+ import type * as React from "../../deps/esm.sh/react@19.1.1.js";
19
19
  import { streamToString } from "./utils/index.js";
20
20
  import { setupSSRGlobals } from "./ssr-globals.js";
21
21
 
@@ -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 { MDXComponents } from "../../types/index.js";
3
3
 
4
4
  export const normalizeChild = (() => {
@@ -9,7 +9,7 @@ import { getProjectReact, renderToStringAdapter } from "../react/index.js";
9
9
  import { loadComponentFromSource } from "../modules/react-loader/index.js";
10
10
  import { CompilationError } from "../errors/index.js";
11
11
 
12
- type ReactComponentLike = import("react").ComponentType<{ children?: import("react").ReactNode }>;
12
+ type ReactComponentLike = import("../../deps/esm.sh/react@19.1.1.js").ComponentType<{ children?: import("react").ReactNode }>;
13
13
 
14
14
  async function fileExists(adapter: RuntimeAdapter, filePath: string): Promise<boolean> {
15
15
  try {
@@ -70,7 +70,7 @@ export async function renderAppRouteToHTML(args: {
70
70
  throw new CompilationError("Invalid page component", { pageFile, type: typeof Page });
71
71
  }
72
72
 
73
- let element: import("react").ReactNode = React.createElement(Page as ReactComponentLike);
73
+ let element: import("../../deps/esm.sh/react@19.1.1.js").ReactNode = React.createElement(Page as ReactComponentLike);
74
74
 
75
75
  for (let i = layouts.length - 1; i >= 0; i--) {
76
76
  const layoutPath = layouts[i];
@@ -1,5 +1,5 @@
1
1
  import * as dntShim from "../../../../../../_dnt.shims.js";
2
- import type * as React from "react";
2
+ import type * as React from "../../../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import { serverLogger as logger } from "../../../../../utils/index.js";
4
4
  import { RSCProductionOptimizer } from "../../../../../rendering/rsc/production-optimizer.js";
5
5
  import type { RSCRenderer } from "../../../../../rendering/rsc/server-renderer/index.js";
@@ -1,5 +1,5 @@
1
1
  import * as dntShim from "../../../../../_dnt.shims.js";
2
- import type * as React from "react";
2
+ import type * as React from "../../../../../deps/esm.sh/react@19.1.1.js";
3
3
  import type { HandlerContext } from "../../types.js";
4
4
  import type { ResponseBuilder } from "../../../../security/index.js";
5
5
  import { join as joinPath } from "../../../../platform/compat/path/index.js";
@@ -181,7 +181,7 @@ async function renderErrorPage(
181
181
  error?: Error,
182
182
  pathname?: string,
183
183
  ): Promise<dntShim.Response> {
184
- const React = await import("react");
184
+ const React = await import("../../../../../deps/esm.sh/react@19.1.1.js");
185
185
  const { renderToStringAdapter } = await import(
186
186
  "../../../../react/compat/ssr-adapter/index.js"
187
187
  );
@@ -46,7 +46,7 @@ export async function tryNotFoundFallback(
46
46
 
47
47
  if (!NotFoundComp) return null;
48
48
 
49
- const React = await import("react");
49
+ const React = await import("../../../../../deps/esm.sh/react@19.1.1.js");
50
50
  const { renderToStringAdapter } = await import(
51
51
  "../../../../react/compat/ssr-adapter/index.js"
52
52
  );