veryfront 0.1.499 → 0.1.501

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 (488) hide show
  1. package/esm/cli/auth/provider-store.d.ts +1 -1
  2. package/esm/cli/auth/provider-store.js +1 -1
  3. package/esm/cli/commands/doctor/ai-checks.js +1 -1
  4. package/esm/cli/commands/init/config-generator.js +1 -1
  5. package/esm/cli/main.js +2 -2
  6. package/esm/cli/shared/ensure-content-transformer.js +1 -1
  7. package/esm/cli/skills/core-skills.js +1 -1
  8. package/esm/deno.d.ts +23 -2
  9. package/esm/deno.js +37 -16
  10. package/esm/extensions/{ext-jwt → ext-auth-jwt}/src/index.d.ts +3 -3
  11. package/esm/extensions/ext-auth-jwt/src/index.d.ts.map +1 -0
  12. package/esm/extensions/{ext-jwt → ext-auth-jwt}/src/index.js +5 -5
  13. package/esm/extensions/ext-bundler-esbuild/src/binary.d.ts.map +1 -0
  14. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/binary.js +3 -3
  15. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/es-module-lexer.d.ts +2 -2
  16. package/esm/extensions/ext-bundler-esbuild/src/es-module-lexer.d.ts.map +1 -0
  17. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/es-module-lexer.js +1 -1
  18. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/esbuild-bundler.d.ts +2 -2
  19. package/esm/extensions/ext-bundler-esbuild/src/esbuild-bundler.d.ts.map +1 -0
  20. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/esbuild-bundler.js +1 -1
  21. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/index.d.ts +3 -3
  22. package/esm/extensions/ext-bundler-esbuild/src/index.d.ts.map +1 -0
  23. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/index.js +5 -5
  24. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/plugin-adapter.d.ts +2 -2
  25. package/esm/extensions/ext-bundler-esbuild/src/plugin-adapter.d.ts.map +1 -0
  26. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/plugin-adapter.js +1 -1
  27. package/esm/extensions/ext-bundler-esbuild/src/runtime.d.ts.map +1 -0
  28. package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/runtime.js +1 -1
  29. package/esm/extensions/{ext-tailwind → ext-css-tailwind}/src/index.d.ts +1 -1
  30. package/esm/extensions/ext-css-tailwind/src/index.d.ts.map +1 -0
  31. package/esm/extensions/{ext-tailwind → ext-css-tailwind}/src/index.js +4 -4
  32. package/esm/extensions/{ext-anthropic → ext-llm-anthropic}/src/anthropic-provider.d.ts +5 -5
  33. package/esm/extensions/ext-llm-anthropic/src/anthropic-provider.d.ts.map +1 -0
  34. package/esm/extensions/{ext-anthropic → ext-llm-anthropic}/src/anthropic-provider.js +2 -2
  35. package/esm/extensions/{ext-anthropic → ext-llm-anthropic}/src/index.d.ts +3 -3
  36. package/esm/extensions/ext-llm-anthropic/src/index.d.ts.map +1 -0
  37. package/esm/extensions/{ext-anthropic → ext-llm-anthropic}/src/index.js +8 -8
  38. package/esm/extensions/{ext-google → ext-llm-google}/src/google-provider.d.ts +6 -6
  39. package/esm/extensions/ext-llm-google/src/google-provider.d.ts.map +1 -0
  40. package/esm/extensions/{ext-google → ext-llm-google}/src/google-provider.js +2 -2
  41. package/esm/extensions/{ext-google → ext-llm-google}/src/index.d.ts +3 -3
  42. package/esm/extensions/ext-llm-google/src/index.d.ts.map +1 -0
  43. package/esm/extensions/ext-llm-google/src/index.js +26 -0
  44. package/esm/extensions/{ext-openai → ext-llm-openai}/src/index.d.ts +3 -3
  45. package/esm/extensions/ext-llm-openai/src/index.d.ts.map +1 -0
  46. package/esm/extensions/ext-llm-openai/src/index.js +28 -0
  47. package/esm/extensions/{ext-openai → ext-llm-openai}/src/openai-provider.d.ts +7 -7
  48. package/esm/extensions/ext-llm-openai/src/openai-provider.d.ts.map +1 -0
  49. package/esm/extensions/{ext-openai → ext-llm-openai}/src/openai-provider.js +2 -2
  50. package/esm/extensions/{ext-node-compat → ext-node-compatibility}/src/index.d.ts +1 -1
  51. package/esm/extensions/ext-node-compatibility/src/index.d.ts.map +1 -0
  52. package/esm/extensions/{ext-node-compat → ext-node-compatibility}/src/index.js +4 -4
  53. package/esm/extensions/{ext-node-compat → ext-node-compatibility}/src/kreuzberg.d.ts +1 -1
  54. package/esm/extensions/ext-node-compatibility/src/kreuzberg.d.ts.map +1 -0
  55. package/esm/extensions/{ext-node-compat → ext-node-compatibility}/src/kreuzberg.js +2 -2
  56. package/esm/extensions/{ext-babel → ext-parser-babel}/src/index.d.ts +3 -3
  57. package/esm/extensions/ext-parser-babel/src/index.d.ts.map +1 -0
  58. package/esm/extensions/{ext-babel → ext-parser-babel}/src/index.js +4 -4
  59. package/esm/extensions/ext-parser-babel/src/inject-node-positions.d.ts.map +1 -0
  60. package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/markdown-compile.d.ts +1 -1
  61. package/esm/extensions/ext-transform-mdx/src/compiler/markdown-compile.d.ts.map +1 -0
  62. package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/mdx-compile.d.ts +1 -1
  63. package/esm/extensions/ext-transform-mdx/src/compiler/mdx-compile.d.ts.map +1 -0
  64. package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/index.d.ts +2 -2
  65. package/esm/extensions/ext-transform-mdx/src/index.d.ts.map +1 -0
  66. package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/index.js +2 -2
  67. package/esm/extensions/ext-transform-mdx/src/plugins/plugin-loader.d.ts.map +1 -0
  68. package/esm/extensions/ext-transform-mdx/src/plugins/rehype-node-positions.d.ts.map +1 -0
  69. package/esm/extensions/ext-transform-mdx/src/plugins/remark-headings.d.ts.map +1 -0
  70. package/esm/extensions/ext-transform-mdx/src/plugins/remark-mdx-utils.d.ts.map +1 -0
  71. package/esm/src/agent/agent-service-server.d.ts +9 -1
  72. package/esm/src/agent/agent-service-server.d.ts.map +1 -1
  73. package/esm/src/agent/agent-service-server.js +14 -1
  74. package/esm/src/agent/default-hosted-chat-runtime.d.ts +1 -0
  75. package/esm/src/agent/default-hosted-chat-runtime.d.ts.map +1 -1
  76. package/esm/src/agent/default-hosted-chat-runtime.js +1 -0
  77. package/esm/src/agent/hosted-agent-service-runtime.d.ts +10 -1
  78. package/esm/src/agent/hosted-agent-service-runtime.d.ts.map +1 -1
  79. package/esm/src/agent/hosted-agent-service-runtime.js +18 -1
  80. package/esm/src/agent/hosted-chat-runtime-tool-assembly.d.ts +1 -0
  81. package/esm/src/agent/hosted-chat-runtime-tool-assembly.d.ts.map +1 -1
  82. package/esm/src/agent/hosted-chat-runtime-tool-assembly.js +1 -0
  83. package/esm/src/agent/hosted-project-remote-tool-source.d.ts +1 -0
  84. package/esm/src/agent/hosted-project-remote-tool-source.d.ts.map +1 -1
  85. package/esm/src/agent/hosted-project-remote-tool-source.js +1 -1
  86. package/esm/src/agent/hosted-stream-terminal-error.js +1 -1
  87. package/esm/src/agent/index.d.ts +3 -3
  88. package/esm/src/agent/index.d.ts.map +1 -1
  89. package/esm/src/agent/index.js +3 -3
  90. package/esm/src/agent/runtime-agent-definition-files.d.ts.map +1 -1
  91. package/esm/src/agent/runtime-agent-definition-files.js +8 -3
  92. package/esm/src/agent/veryfront-cloud-agent-service.d.ts +26 -3
  93. package/esm/src/agent/veryfront-cloud-agent-service.d.ts.map +1 -1
  94. package/esm/src/agent/veryfront-cloud-agent-service.js +39 -12
  95. package/esm/src/build/bundler/code-splitter/build-context.d.ts +1 -1
  96. package/esm/src/build/bundler/code-splitter/build-context.d.ts.map +1 -1
  97. package/esm/src/build/bundler/code-splitter/build-context.js +1 -1
  98. package/esm/src/build/bundler/code-splitter/esbuild-plugin.d.ts +1 -1
  99. package/esm/src/build/bundler/code-splitter/esbuild-plugin.d.ts.map +1 -1
  100. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts +1 -1
  101. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts.map +1 -1
  102. package/esm/src/build/bundler/code-splitter/types.d.ts +1 -1
  103. package/esm/src/build/bundler/code-splitter/types.d.ts.map +1 -1
  104. package/esm/src/build/compiler/mdx-compiler/transpiler.js +1 -1
  105. package/esm/src/build/compiler/mdx-to-js.js +1 -1
  106. package/esm/src/build/embedded/preset.js +1 -1
  107. package/esm/src/build/production-build/client-runtime.js +1 -1
  108. package/esm/src/chat/provider-errors.js +3 -3
  109. package/esm/src/discovery/transpiler.js +1 -1
  110. package/esm/src/embedding/resolve.js +5 -5
  111. package/esm/src/embedding/upload-loader.js +1 -1
  112. package/esm/src/embedding/veryfront-cloud/provider.js +3 -3
  113. package/esm/src/extensions/{interfaces → auth}/auth-provider.d.ts +2 -2
  114. package/esm/src/extensions/auth/auth-provider.d.ts.map +1 -0
  115. package/esm/src/extensions/auth/auth-provider.js +8 -0
  116. package/esm/src/extensions/auth/index.d.ts +8 -0
  117. package/esm/src/extensions/auth/index.d.ts.map +1 -0
  118. package/esm/src/extensions/auth/index.js +6 -0
  119. package/esm/src/extensions/builtin-extensions.d.ts +2 -2
  120. package/esm/src/extensions/builtin-extensions.d.ts.map +1 -1
  121. package/esm/src/extensions/builtin-extensions.js +35 -36
  122. package/esm/src/extensions/{interfaces → bundler}/bundler.d.ts +2 -2
  123. package/esm/src/extensions/bundler/bundler.d.ts.map +1 -0
  124. package/esm/src/extensions/bundler/bundler.js +8 -0
  125. package/esm/src/extensions/{bundler.d.ts → bundler/helper.d.ts} +5 -6
  126. package/esm/src/extensions/bundler/helper.d.ts.map +1 -0
  127. package/esm/src/extensions/{bundler.js → bundler/helper.js} +4 -4
  128. package/esm/src/extensions/bundler/index.d.ts +11 -0
  129. package/esm/src/extensions/bundler/index.d.ts.map +1 -0
  130. package/esm/src/extensions/bundler/index.js +7 -0
  131. package/esm/src/extensions/{interfaces → bundler}/module-lexer.d.ts +2 -2
  132. package/esm/src/extensions/bundler/module-lexer.d.ts.map +1 -0
  133. package/esm/src/extensions/{interfaces → bundler}/module-lexer.js +2 -2
  134. package/esm/src/extensions/{interfaces → cache}/cache-store.d.ts +2 -2
  135. package/esm/src/extensions/cache/cache-store.d.ts.map +1 -0
  136. package/esm/src/extensions/cache/cache-store.js +8 -0
  137. package/esm/src/extensions/cache/index.d.ts +9 -0
  138. package/esm/src/extensions/cache/index.d.ts.map +1 -0
  139. package/esm/src/extensions/cache/index.js +6 -0
  140. package/esm/src/extensions/{interfaces → cache}/token-cache-store.d.ts +2 -2
  141. package/esm/src/extensions/cache/token-cache-store.d.ts.map +1 -0
  142. package/esm/src/extensions/{interfaces → cache}/token-cache-store.js +2 -2
  143. package/esm/src/extensions/compat/index.d.ts +8 -0
  144. package/esm/src/extensions/compat/index.d.ts.map +1 -0
  145. package/esm/src/extensions/compat/index.js +6 -0
  146. package/esm/src/extensions/{interfaces → compat}/node-compat.d.ts +3 -3
  147. package/esm/src/extensions/compat/node-compat.d.ts.map +1 -0
  148. package/esm/src/extensions/compat/node-compat.js +8 -0
  149. package/esm/src/extensions/{interfaces → css}/css-processor.d.ts +2 -2
  150. package/esm/src/extensions/css/css-processor.d.ts.map +1 -0
  151. package/esm/src/extensions/{interfaces → css}/css-processor.js +2 -2
  152. package/esm/src/extensions/css/index.d.ts +8 -0
  153. package/esm/src/extensions/css/index.d.ts.map +1 -0
  154. package/esm/src/extensions/css/index.js +6 -0
  155. package/esm/src/extensions/{interfaces → database}/database-client.d.ts +1 -1
  156. package/esm/src/extensions/database/database-client.d.ts.map +1 -0
  157. package/esm/src/extensions/{interfaces → database}/database-client.js +1 -1
  158. package/esm/src/extensions/database/index.d.ts +8 -0
  159. package/esm/src/extensions/database/index.d.ts.map +1 -0
  160. package/esm/src/extensions/database/index.js +6 -0
  161. package/esm/src/extensions/{interfaces → llm}/embedding-provider.d.ts +1 -1
  162. package/esm/src/extensions/llm/embedding-provider.d.ts.map +1 -0
  163. package/esm/src/extensions/{interfaces → llm}/embedding-provider.js +1 -1
  164. package/esm/src/extensions/llm/index.d.ts +16 -0
  165. package/esm/src/extensions/llm/index.d.ts.map +1 -0
  166. package/esm/src/extensions/llm/index.js +13 -0
  167. package/esm/src/extensions/llm/llm-provider-registry.d.ts +11 -0
  168. package/esm/src/extensions/llm/llm-provider-registry.d.ts.map +1 -0
  169. package/esm/src/extensions/{registries/ai-provider-registry.js → llm/llm-provider-registry.js} +6 -6
  170. package/esm/src/extensions/{interfaces/ai-provider.d.ts → llm/llm-provider.d.ts} +16 -16
  171. package/esm/src/extensions/llm/llm-provider.d.ts.map +1 -0
  172. package/esm/src/extensions/{interfaces/ai-provider.js → llm/llm-provider.js} +4 -4
  173. package/esm/src/extensions/loader.d.ts +1 -1
  174. package/esm/src/extensions/loader.js +1 -1
  175. package/esm/src/extensions/orchestrate.d.ts +1 -1
  176. package/esm/src/extensions/orchestrate.d.ts.map +1 -1
  177. package/esm/src/extensions/{interfaces → parser}/code-parser.d.ts +2 -2
  178. package/esm/src/extensions/parser/code-parser.d.ts.map +1 -0
  179. package/esm/src/extensions/parser/code-parser.js +8 -0
  180. package/esm/src/extensions/parser/index.d.ts +8 -0
  181. package/esm/src/extensions/parser/index.d.ts.map +1 -0
  182. package/esm/src/extensions/parser/index.js +6 -0
  183. package/esm/src/extensions/recommendations.js +15 -15
  184. package/esm/src/extensions/schema/index.d.ts +9 -0
  185. package/esm/src/extensions/schema/index.d.ts.map +1 -0
  186. package/esm/src/extensions/schema/index.js +7 -0
  187. package/esm/src/extensions/{interfaces → schema}/schema-validator.d.ts +1 -1
  188. package/esm/src/extensions/schema/schema-validator.d.ts.map +1 -0
  189. package/esm/src/extensions/{interfaces → schema}/schema-validator.js +1 -1
  190. package/esm/src/extensions/tracing/index.d.ts +8 -0
  191. package/esm/src/extensions/tracing/index.d.ts.map +1 -0
  192. package/esm/src/extensions/tracing/index.js +6 -0
  193. package/esm/src/extensions/{interfaces → tracing}/tracing-exporter.d.ts +2 -2
  194. package/esm/src/extensions/tracing/tracing-exporter.d.ts.map +1 -0
  195. package/esm/src/extensions/tracing/tracing-exporter.js +8 -0
  196. package/esm/src/extensions/{interfaces → transform}/content-transformer.d.ts +3 -3
  197. package/esm/src/extensions/transform/content-transformer.d.ts.map +1 -0
  198. package/esm/src/extensions/{interfaces → transform}/content-transformer.js +3 -3
  199. package/esm/src/extensions/transform/index.d.ts +9 -0
  200. package/esm/src/extensions/transform/index.d.ts.map +1 -0
  201. package/esm/src/extensions/transform/index.js +7 -0
  202. package/esm/src/html/styles-builder/plugin-loader.js +1 -1
  203. package/esm/src/html/styles-builder/tailwind-compiler-cache.d.ts +2 -2
  204. package/esm/src/html/styles-builder/tailwind-compiler-cache.d.ts.map +1 -1
  205. package/esm/src/html/styles-builder/tailwind-compiler-cache.js +3 -3
  206. package/esm/src/observability/metrics/manager.js +1 -1
  207. package/esm/src/observability/simple-metrics/otel-instruments.js +1 -1
  208. package/esm/src/observability/tracing/api-shim.d.ts +4 -4
  209. package/esm/src/observability/tracing/api-shim.js +7 -7
  210. package/esm/src/observability/tracing/manager.js +2 -2
  211. package/esm/src/observability/tracing/otlp-setup.d.ts +1 -1
  212. package/esm/src/observability/tracing/otlp-setup.js +4 -4
  213. package/esm/src/platform/compat/esbuild.d.ts +4 -4
  214. package/esm/src/platform/compat/esbuild.d.ts.map +1 -1
  215. package/esm/src/platform/compat/esbuild.js +2 -2
  216. package/esm/src/platform/compat/kv/factory.js +1 -1
  217. package/esm/src/platform/compat/opaque-deps.d.ts +2 -2
  218. package/esm/src/platform/compat/opaque-deps.js +3 -3
  219. package/esm/src/provider/local/env.d.ts +1 -1
  220. package/esm/src/provider/local/env.js +1 -1
  221. package/esm/src/provider/model-registry.d.ts.map +1 -1
  222. package/esm/src/provider/model-registry.js +9 -9
  223. package/esm/src/provider/shared/index.d.ts +1 -1
  224. package/esm/src/provider/shared/index.js +1 -1
  225. package/esm/src/provider/veryfront-cloud/openai.js +4 -4
  226. package/esm/src/provider/veryfront-cloud/provider.js +2 -2
  227. package/esm/src/proxy/cache/index.js +1 -1
  228. package/esm/src/proxy/cache/tracing-cache.d.ts +1 -1
  229. package/esm/src/proxy/cache/tracing-cache.js +1 -1
  230. package/esm/src/proxy/cache/types.d.ts +1 -1
  231. package/esm/src/proxy/cache/types.js +1 -1
  232. package/esm/src/proxy/handler.js +6 -6
  233. package/esm/src/proxy/main.js +1 -1
  234. package/esm/src/proxy/tracing.d.ts +1 -1
  235. package/esm/src/proxy/tracing.js +2 -2
  236. package/esm/src/rendering/script-page-handling.js +1 -1
  237. package/esm/src/routing/api/module-loader/esbuild-plugin.d.ts +1 -1
  238. package/esm/src/routing/api/module-loader/esbuild-plugin.d.ts.map +1 -1
  239. package/esm/src/routing/api/module-loader/loader.js +1 -1
  240. package/esm/src/schemas/define.d.ts +1 -1
  241. package/esm/src/schemas/define.d.ts.map +1 -1
  242. package/esm/src/schemas/zod-adapter.d.ts +1 -1
  243. package/esm/src/schemas/zod-adapter.d.ts.map +1 -1
  244. package/esm/src/server/bootstrap.d.ts.map +1 -1
  245. package/esm/src/server/bootstrap.js +5 -6
  246. package/esm/src/server/dev-server/middleware.js +1 -1
  247. package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts +1 -1
  248. package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts.map +1 -1
  249. package/esm/src/server/handlers/studio/bridge-modules.handler.js +1 -1
  250. package/esm/src/server/index.d.ts +1 -1
  251. package/esm/src/server/index.d.ts.map +1 -1
  252. package/esm/src/server/index.js +1 -1
  253. package/esm/src/server/service-server.d.ts +18 -0
  254. package/esm/src/server/service-server.d.ts.map +1 -1
  255. package/esm/src/server/service-server.js +318 -0
  256. package/esm/src/server/services/rsc/endpoints/script-handlers.js +1 -1
  257. package/esm/src/server/services/rsc/orchestrators/hydrator-handler.js +1 -1
  258. package/esm/src/server/shared/browser-module-bundler.js +1 -1
  259. package/esm/src/testing/init.js +1 -1
  260. package/esm/src/transforms/esm/http-bundler.d.ts +1 -1
  261. package/esm/src/transforms/esm/http-bundler.d.ts.map +1 -1
  262. package/esm/src/transforms/esm/lexer.d.ts +1 -1
  263. package/esm/src/transforms/esm/lexer.d.ts.map +1 -1
  264. package/esm/src/transforms/esm/transform-utils.d.ts +1 -1
  265. package/esm/src/transforms/esm/transform-utils.d.ts.map +1 -1
  266. package/esm/src/transforms/md/compiler/md-compiler.d.ts +1 -1
  267. package/esm/src/transforms/md/compiler/md-compiler.d.ts.map +1 -1
  268. package/esm/src/transforms/mdx/compiler/import-rewriter.d.ts +1 -1
  269. package/esm/src/transforms/mdx/compiler/import-rewriter.d.ts.map +1 -1
  270. package/esm/src/transforms/mdx/compiler/index.d.ts +2 -2
  271. package/esm/src/transforms/mdx/compiler/index.d.ts.map +1 -1
  272. package/esm/src/transforms/mdx/compiler/mdx-compiler.d.ts +1 -1
  273. package/esm/src/transforms/mdx/compiler/mdx-compiler.d.ts.map +1 -1
  274. package/esm/src/transforms/mdx/esm-module-loader/import-transformer.js +1 -1
  275. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/transform.js +2 -2
  276. package/esm/src/transforms/plugins/babel-node-positions.d.ts +2 -2
  277. package/esm/src/transforms/plugins/babel-node-positions.js +2 -2
  278. package/esm/src/transforms/plugins/plugin-loader.d.ts +2 -2
  279. package/esm/src/transforms/plugins/plugin-loader.js +2 -2
  280. package/esm/src/utils/version-constant.d.ts +1 -1
  281. package/esm/src/utils/version-constant.js +1 -1
  282. package/package.json +45 -4
  283. package/src/cli/auth/provider-store.ts +1 -1
  284. package/src/cli/commands/doctor/ai-checks.ts +1 -1
  285. package/src/cli/commands/init/config-generator.ts +1 -1
  286. package/src/cli/main.ts +2 -2
  287. package/src/cli/shared/ensure-content-transformer.ts +2 -2
  288. package/src/cli/skills/core-skills.ts +1 -1
  289. package/src/deno.js +37 -16
  290. package/src/extensions/{ext-jwt → ext-auth-jwt}/src/index.ts +7 -7
  291. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/binary.ts +3 -3
  292. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/es-module-lexer.ts +2 -2
  293. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/esbuild-bundler.ts +2 -2
  294. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/index.ts +5 -5
  295. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/plugin-adapter.ts +2 -2
  296. package/src/extensions/{ext-esbuild → ext-bundler-esbuild}/src/runtime.ts +1 -1
  297. package/src/extensions/{ext-tailwind → ext-css-tailwind}/src/index.ts +5 -5
  298. package/src/extensions/{ext-anthropic → ext-llm-anthropic}/src/anthropic-provider.ts +5 -5
  299. package/src/extensions/ext-llm-anthropic/src/index.ts +34 -0
  300. package/src/extensions/{ext-google → ext-llm-google}/src/google-provider.ts +6 -6
  301. package/src/extensions/ext-llm-google/src/index.ts +31 -0
  302. package/src/extensions/ext-llm-openai/src/index.ts +33 -0
  303. package/src/extensions/{ext-openai → ext-llm-openai}/src/openai-provider.ts +7 -7
  304. package/src/extensions/{ext-node-compat → ext-node-compatibility}/src/index.ts +5 -5
  305. package/src/extensions/{ext-node-compat → ext-node-compatibility}/src/kreuzberg.ts +3 -3
  306. package/src/extensions/{ext-babel → ext-parser-babel}/src/index.ts +5 -5
  307. package/src/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/markdown-compile.ts +1 -1
  308. package/src/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/mdx-compile.ts +1 -1
  309. package/src/extensions/{ext-mdx → ext-transform-mdx}/src/index.ts +3 -3
  310. package/src/src/agent/agent-service-server.ts +26 -0
  311. package/src/src/agent/default-hosted-chat-runtime.ts +2 -0
  312. package/src/src/agent/hosted-agent-service-runtime.ts +42 -0
  313. package/src/src/agent/hosted-chat-runtime-tool-assembly.ts +2 -0
  314. package/src/src/agent/hosted-project-remote-tool-source.ts +4 -1
  315. package/src/src/agent/hosted-stream-terminal-error.ts +1 -1
  316. package/src/src/agent/index.ts +9 -0
  317. package/src/src/agent/runtime-agent-definition-files.ts +8 -3
  318. package/src/src/agent/veryfront-cloud-agent-service.ts +88 -17
  319. package/src/src/build/bundler/code-splitter/build-context.ts +1 -1
  320. package/src/src/build/bundler/code-splitter/esbuild-plugin.ts +1 -1
  321. package/src/src/build/bundler/code-splitter/manifest-builder.ts +1 -1
  322. package/src/src/build/bundler/code-splitter/splitter.ts +1 -1
  323. package/src/src/build/bundler/code-splitter/types.ts +1 -1
  324. package/src/src/build/compiler/mdx-compiler/transpiler.ts +1 -1
  325. package/src/src/build/compiler/mdx-to-js.ts +1 -1
  326. package/src/src/build/embedded/preset.ts +1 -1
  327. package/src/src/build/production-build/client-runtime.ts +2 -2
  328. package/src/src/chat/provider-errors.ts +3 -3
  329. package/src/src/discovery/transpiler.ts +2 -2
  330. package/src/src/embedding/resolve.ts +6 -6
  331. package/src/src/embedding/upload-loader.ts +2 -2
  332. package/src/src/embedding/veryfront-cloud/provider.ts +4 -4
  333. package/src/src/extensions/{interfaces → auth}/auth-provider.ts +2 -2
  334. package/src/src/extensions/auth/index.ts +15 -0
  335. package/src/src/extensions/builtin-extensions.ts +41 -42
  336. package/src/src/extensions/{interfaces → bundler}/bundler.ts +2 -2
  337. package/src/src/extensions/{bundler.ts → bundler/helper.ts} +5 -32
  338. package/src/src/extensions/bundler/index.ts +49 -0
  339. package/src/src/extensions/{interfaces → bundler}/module-lexer.ts +2 -2
  340. package/src/src/extensions/{interfaces → cache}/cache-store.ts +2 -2
  341. package/src/src/extensions/cache/index.ts +10 -0
  342. package/src/src/extensions/{interfaces → cache}/token-cache-store.ts +2 -2
  343. package/src/src/extensions/compat/index.ts +14 -0
  344. package/src/src/extensions/{interfaces → compat}/node-compat.ts +3 -3
  345. package/src/src/extensions/{interfaces → css}/css-processor.ts +2 -2
  346. package/src/src/extensions/css/index.ts +15 -0
  347. package/src/src/extensions/{interfaces → database}/database-client.ts +1 -1
  348. package/src/src/extensions/database/index.ts +9 -0
  349. package/src/src/extensions/{interfaces → llm}/embedding-provider.ts +1 -1
  350. package/src/src/extensions/llm/index.ts +17 -0
  351. package/src/src/extensions/{registries/ai-provider-registry.ts → llm/llm-provider-registry.ts} +12 -12
  352. package/src/src/extensions/{interfaces/ai-provider.ts → llm/llm-provider.ts} +15 -15
  353. package/src/src/extensions/loader.ts +1 -1
  354. package/src/src/extensions/orchestrate.ts +1 -1
  355. package/src/src/extensions/{interfaces → parser}/code-parser.ts +2 -2
  356. package/src/src/extensions/parser/index.ts +18 -0
  357. package/src/src/extensions/recommendations.ts +15 -15
  358. package/src/src/extensions/schema/index.ts +25 -0
  359. package/src/src/extensions/{interfaces → schema}/schema-validator.ts +1 -1
  360. package/src/src/extensions/tracing/index.ts +9 -0
  361. package/src/src/extensions/{interfaces → tracing}/tracing-exporter.ts +2 -2
  362. package/src/src/extensions/{interfaces → transform}/content-transformer.ts +3 -3
  363. package/src/src/extensions/transform/index.ts +17 -0
  364. package/src/src/html/styles-builder/plugin-loader.ts +1 -1
  365. package/src/src/html/styles-builder/tailwind-compiler-cache.ts +4 -4
  366. package/src/src/observability/metrics/manager.ts +1 -1
  367. package/src/src/observability/simple-metrics/otel-instruments.ts +1 -1
  368. package/src/src/observability/tracing/api-shim.ts +7 -7
  369. package/src/src/observability/tracing/manager.ts +2 -2
  370. package/src/src/observability/tracing/otlp-setup.ts +4 -4
  371. package/src/src/platform/compat/esbuild.ts +4 -4
  372. package/src/src/platform/compat/kv/factory.ts +2 -2
  373. package/src/src/platform/compat/opaque-deps.ts +4 -4
  374. package/src/src/provider/local/env.ts +1 -1
  375. package/src/src/provider/model-registry.ts +11 -10
  376. package/src/src/provider/shared/index.ts +1 -1
  377. package/src/src/provider/veryfront-cloud/openai.ts +4 -4
  378. package/src/src/provider/veryfront-cloud/provider.ts +2 -2
  379. package/src/src/proxy/cache/index.ts +2 -2
  380. package/src/src/proxy/cache/tracing-cache.ts +1 -1
  381. package/src/src/proxy/cache/types.ts +1 -1
  382. package/src/src/proxy/handler.ts +7 -7
  383. package/src/src/proxy/main.ts +1 -1
  384. package/src/src/proxy/tracing.ts +2 -2
  385. package/src/src/rendering/script-page-handling.ts +1 -1
  386. package/src/src/routing/api/module-loader/esbuild-plugin.ts +1 -1
  387. package/src/src/routing/api/module-loader/loader.ts +2 -2
  388. package/src/src/schemas/define.ts +1 -5
  389. package/src/src/schemas/zod-adapter.ts +1 -1
  390. package/src/src/server/bootstrap.ts +9 -7
  391. package/src/src/server/dev-server/middleware.ts +1 -1
  392. package/src/src/server/handlers/dev/files/esbuild-plugins.ts +1 -1
  393. package/src/src/server/handlers/studio/bridge-modules.handler.ts +1 -1
  394. package/src/src/server/index.ts +4 -0
  395. package/src/src/server/service-server.ts +428 -0
  396. package/src/src/server/services/rsc/endpoints/script-handlers.ts +4 -4
  397. package/src/src/server/services/rsc/orchestrators/hydrator-handler.ts +1 -1
  398. package/src/src/server/shared/browser-module-bundler.ts +1 -1
  399. package/src/src/testing/init.ts +1 -1
  400. package/src/src/transforms/esm/http-bundler.ts +1 -1
  401. package/src/src/transforms/esm/lexer.ts +1 -4
  402. package/src/src/transforms/esm/transform-utils.ts +1 -1
  403. package/src/src/transforms/import-rewriter/parse-cache.ts +1 -1
  404. package/src/src/transforms/md/compiler/md-compiler.ts +1 -1
  405. package/src/src/transforms/mdx/compiler/import-rewriter.ts +1 -1
  406. package/src/src/transforms/mdx/compiler/index.ts +2 -2
  407. package/src/src/transforms/mdx/compiler/mdx-compiler.ts +1 -1
  408. package/src/src/transforms/mdx/esm-module-loader/import-transformer.ts +1 -1
  409. package/src/src/transforms/pipeline/stages/ssr-vf-modules/transform.ts +2 -2
  410. package/src/src/transforms/plugins/babel-node-positions.ts +3 -3
  411. package/src/src/transforms/plugins/plugin-loader.ts +3 -3
  412. package/src/src/utils/version-constant.ts +1 -1
  413. package/esm/extensions/ext-anthropic/src/anthropic-provider.d.ts.map +0 -1
  414. package/esm/extensions/ext-anthropic/src/index.d.ts.map +0 -1
  415. package/esm/extensions/ext-babel/src/index.d.ts.map +0 -1
  416. package/esm/extensions/ext-babel/src/inject-node-positions.d.ts.map +0 -1
  417. package/esm/extensions/ext-esbuild/src/binary.d.ts.map +0 -1
  418. package/esm/extensions/ext-esbuild/src/es-module-lexer.d.ts.map +0 -1
  419. package/esm/extensions/ext-esbuild/src/esbuild-bundler.d.ts.map +0 -1
  420. package/esm/extensions/ext-esbuild/src/index.d.ts.map +0 -1
  421. package/esm/extensions/ext-esbuild/src/plugin-adapter.d.ts.map +0 -1
  422. package/esm/extensions/ext-esbuild/src/runtime.d.ts.map +0 -1
  423. package/esm/extensions/ext-google/src/google-provider.d.ts.map +0 -1
  424. package/esm/extensions/ext-google/src/index.d.ts.map +0 -1
  425. package/esm/extensions/ext-google/src/index.js +0 -26
  426. package/esm/extensions/ext-jwt/src/index.d.ts.map +0 -1
  427. package/esm/extensions/ext-mdx/src/compiler/markdown-compile.d.ts.map +0 -1
  428. package/esm/extensions/ext-mdx/src/compiler/mdx-compile.d.ts.map +0 -1
  429. package/esm/extensions/ext-mdx/src/index.d.ts.map +0 -1
  430. package/esm/extensions/ext-mdx/src/plugins/plugin-loader.d.ts.map +0 -1
  431. package/esm/extensions/ext-mdx/src/plugins/rehype-node-positions.d.ts.map +0 -1
  432. package/esm/extensions/ext-mdx/src/plugins/remark-headings.d.ts.map +0 -1
  433. package/esm/extensions/ext-mdx/src/plugins/remark-mdx-utils.d.ts.map +0 -1
  434. package/esm/extensions/ext-node-compat/src/index.d.ts.map +0 -1
  435. package/esm/extensions/ext-node-compat/src/kreuzberg.d.ts.map +0 -1
  436. package/esm/extensions/ext-openai/src/index.d.ts.map +0 -1
  437. package/esm/extensions/ext-openai/src/index.js +0 -28
  438. package/esm/extensions/ext-openai/src/openai-provider.d.ts.map +0 -1
  439. package/esm/extensions/ext-tailwind/src/index.d.ts.map +0 -1
  440. package/esm/src/extensions/bundler.d.ts.map +0 -1
  441. package/esm/src/extensions/interfaces/ai-provider.d.ts.map +0 -1
  442. package/esm/src/extensions/interfaces/auth-provider.d.ts.map +0 -1
  443. package/esm/src/extensions/interfaces/auth-provider.js +0 -8
  444. package/esm/src/extensions/interfaces/bundler.d.ts.map +0 -1
  445. package/esm/src/extensions/interfaces/bundler.js +0 -8
  446. package/esm/src/extensions/interfaces/cache-store.d.ts.map +0 -1
  447. package/esm/src/extensions/interfaces/cache-store.js +0 -8
  448. package/esm/src/extensions/interfaces/code-parser.d.ts.map +0 -1
  449. package/esm/src/extensions/interfaces/code-parser.js +0 -8
  450. package/esm/src/extensions/interfaces/content-transformer.d.ts.map +0 -1
  451. package/esm/src/extensions/interfaces/css-processor.d.ts.map +0 -1
  452. package/esm/src/extensions/interfaces/database-client.d.ts.map +0 -1
  453. package/esm/src/extensions/interfaces/embedding-provider.d.ts.map +0 -1
  454. package/esm/src/extensions/interfaces/index.d.ts +0 -24
  455. package/esm/src/extensions/interfaces/index.d.ts.map +0 -1
  456. package/esm/src/extensions/interfaces/index.js +0 -10
  457. package/esm/src/extensions/interfaces/module-lexer.d.ts.map +0 -1
  458. package/esm/src/extensions/interfaces/node-compat.d.ts.map +0 -1
  459. package/esm/src/extensions/interfaces/node-compat.js +0 -8
  460. package/esm/src/extensions/interfaces/schema-validator.d.ts.map +0 -1
  461. package/esm/src/extensions/interfaces/token-cache-store.d.ts.map +0 -1
  462. package/esm/src/extensions/interfaces/tracing-exporter.d.ts.map +0 -1
  463. package/esm/src/extensions/interfaces/tracing-exporter.js +0 -8
  464. package/esm/src/extensions/registries/ai-provider-registry.d.ts +0 -11
  465. package/esm/src/extensions/registries/ai-provider-registry.d.ts.map +0 -1
  466. package/src/extensions/ext-anthropic/src/index.ts +0 -34
  467. package/src/extensions/ext-google/src/index.ts +0 -31
  468. package/src/extensions/ext-openai/src/index.ts +0 -33
  469. package/src/src/extensions/interfaces/index.ts +0 -118
  470. /package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/binary.d.ts +0 -0
  471. /package/esm/extensions/{ext-esbuild → ext-bundler-esbuild}/src/runtime.d.ts +0 -0
  472. /package/esm/extensions/{ext-babel → ext-parser-babel}/src/inject-node-positions.d.ts +0 -0
  473. /package/esm/extensions/{ext-babel → ext-parser-babel}/src/inject-node-positions.js +0 -0
  474. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/markdown-compile.js +0 -0
  475. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/compiler/mdx-compile.js +0 -0
  476. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/plugin-loader.d.ts +0 -0
  477. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/plugin-loader.js +0 -0
  478. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/rehype-node-positions.d.ts +0 -0
  479. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/rehype-node-positions.js +0 -0
  480. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-headings.d.ts +0 -0
  481. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-headings.js +0 -0
  482. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-mdx-utils.d.ts +0 -0
  483. /package/esm/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-mdx-utils.js +0 -0
  484. /package/src/extensions/{ext-babel → ext-parser-babel}/src/inject-node-positions.ts +0 -0
  485. /package/src/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/plugin-loader.ts +0 -0
  486. /package/src/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/rehype-node-positions.ts +0 -0
  487. /package/src/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-headings.ts +0 -0
  488. /package/src/extensions/{ext-mdx → ext-transform-mdx}/src/plugins/remark-mdx-utils.ts +0 -0
@@ -43,12 +43,80 @@ export type StartNodeVeryfrontServerOptions = {
43
43
  hardShutdownTimeoutMs?: number;
44
44
  };
45
45
 
46
+ export type StartVeryfrontServerOptions = {
47
+ runtime: VeryfrontServiceServerRuntime;
48
+ port: number;
49
+ bindAddress?: string;
50
+ logger?: VeryfrontServiceServerLogger;
51
+ signals?: readonly NodeJS.Signals[];
52
+ hardShutdownTimeoutMs?: number;
53
+ };
54
+
55
+ export type VeryfrontServiceServerRuntimeKind = "node" | "deno" | "bun";
56
+
57
+ export type VeryfrontServiceServer = {
58
+ ready: Promise<void>;
59
+ stop: () => Promise<void>;
60
+ port: number;
61
+ url: string;
62
+ runtime: VeryfrontServiceServerRuntimeKind;
63
+ };
64
+
46
65
  export type NodeVeryfrontServiceServer = {
47
66
  server: import("node:http").Server;
48
67
  ready: Promise<void>;
49
68
  stop: () => Promise<void>;
50
69
  port: number;
51
70
  url: string;
71
+ runtime: "node";
72
+ };
73
+
74
+ type DenoServeOptions = {
75
+ port: number;
76
+ hostname?: string;
77
+ signal?: AbortSignal;
78
+ onListen?: (address: { port: number; hostname: string }) => void;
79
+ };
80
+
81
+ type DenoServeHandler = (request: Request) => Response | Promise<Response>;
82
+
83
+ type DenoHttpServer = {
84
+ addr?: {
85
+ port?: number;
86
+ };
87
+ finished?: Promise<void>;
88
+ shutdown?: () => void | Promise<void>;
89
+ };
90
+
91
+ type DenoServeRuntime = {
92
+ serve: (options: DenoServeOptions, handler: DenoServeHandler) => DenoHttpServer;
93
+ addSignalListener?: (signal: NodeJS.Signals, handler: SignalHandler) => void;
94
+ removeSignalListener?: (signal: NodeJS.Signals, handler: SignalHandler) => void;
95
+ exit?: (code: number) => never | void;
96
+ };
97
+
98
+ type BunServeOptions = {
99
+ port: number;
100
+ hostname?: string;
101
+ fetch: VeryfrontServiceServerFetch;
102
+ };
103
+
104
+ type BunHttpServer = {
105
+ port?: number;
106
+ url?: URL;
107
+ stop?: () => void | Promise<void>;
108
+ };
109
+
110
+ type BunServeRuntime = {
111
+ serve: (options: BunServeOptions) => BunHttpServer;
112
+ };
113
+
114
+ type SignalHandler = () => void;
115
+
116
+ type SignalRuntime = {
117
+ add: (signal: NodeJS.Signals, handler: SignalHandler) => void;
118
+ remove?: (signal: NodeJS.Signals, handler: SignalHandler) => void;
119
+ exit?: (code: number) => never | void;
52
120
  };
53
121
 
54
122
  function defaultNotFound(): Response {
@@ -116,6 +184,365 @@ function closeNodeServer(server: import("node:http").Server): Promise<void> {
116
184
  });
117
185
  }
118
186
 
187
+ function isObject(value: unknown): value is Record<string, unknown> {
188
+ return typeof value === "object" && value !== null;
189
+ }
190
+
191
+ function isDenoHttpServer(value: unknown): value is DenoHttpServer {
192
+ if (!isObject(value)) {
193
+ return false;
194
+ }
195
+ const finished = value.finished;
196
+ const shutdown = value.shutdown;
197
+ const addr = value.addr;
198
+ const port = isObject(addr) ? addr.port : undefined;
199
+ return (addr === undefined || isObject(addr)) &&
200
+ (port === undefined || typeof port === "number") &&
201
+ (finished === undefined || finished instanceof Promise) &&
202
+ (shutdown === undefined || typeof shutdown === "function");
203
+ }
204
+
205
+ function isBunHttpServer(value: unknown): value is BunHttpServer {
206
+ if (!isObject(value)) {
207
+ return false;
208
+ }
209
+ const port = value.port;
210
+ const url = value.url;
211
+ const stop = value.stop;
212
+ return (port === undefined || typeof port === "number") &&
213
+ (url === undefined || url instanceof URL) &&
214
+ (stop === undefined || typeof stop === "function");
215
+ }
216
+
217
+ function getDenoServeRuntime(): DenoServeRuntime | null {
218
+ const denoGlobal: unknown = Reflect.get(dntShim.dntGlobalThis, "Deno");
219
+ if (!isObject(denoGlobal)) {
220
+ return null;
221
+ }
222
+ const serve = denoGlobal.serve;
223
+ const addSignalListener = denoGlobal.addSignalListener;
224
+ const removeSignalListener = denoGlobal.removeSignalListener;
225
+ const exit = denoGlobal.exit;
226
+ if (typeof serve !== "function") {
227
+ return null;
228
+ }
229
+ const runtime: DenoServeRuntime = {
230
+ serve: (options, handler) => {
231
+ const server: unknown = Reflect.apply(serve, denoGlobal, [options, handler]);
232
+ if (!isDenoHttpServer(server)) {
233
+ return {};
234
+ }
235
+ return server;
236
+ },
237
+ };
238
+ if (typeof addSignalListener === "function") {
239
+ runtime.addSignalListener = (signal, handler) => {
240
+ Reflect.apply(addSignalListener, denoGlobal, [signal, handler]);
241
+ };
242
+ }
243
+ if (typeof removeSignalListener === "function") {
244
+ runtime.removeSignalListener = (signal, handler) => {
245
+ Reflect.apply(removeSignalListener, denoGlobal, [signal, handler]);
246
+ };
247
+ }
248
+ if (typeof exit === "function") {
249
+ runtime.exit = (code) => Reflect.apply(exit, denoGlobal, [code]);
250
+ }
251
+ return runtime;
252
+ }
253
+
254
+ function getBunServeRuntime(): BunServeRuntime | null {
255
+ const bunGlobal: unknown = Reflect.get(dntShim.dntGlobalThis, "Bun");
256
+ if (!isObject(bunGlobal)) {
257
+ return null;
258
+ }
259
+ const serve = bunGlobal.serve;
260
+ if (typeof serve !== "function") {
261
+ return null;
262
+ }
263
+ return {
264
+ serve: (options) => {
265
+ const server: unknown = Reflect.apply(serve, bunGlobal, [options]);
266
+ if (!isBunHttpServer(server)) {
267
+ return {};
268
+ }
269
+ return server;
270
+ },
271
+ };
272
+ }
273
+
274
+ function getProcessSignalRuntime(): SignalRuntime | null {
275
+ const processGlobal: unknown = Reflect.get(dntShim.dntGlobalThis, "process");
276
+ if (!isObject(processGlobal)) {
277
+ return null;
278
+ }
279
+ const on = processGlobal.on;
280
+ const off = processGlobal.off;
281
+ const removeListener = processGlobal.removeListener;
282
+ const exit = processGlobal.exit;
283
+ if (typeof on !== "function") {
284
+ return null;
285
+ }
286
+ const runtime: SignalRuntime = {
287
+ add: (signal, handler) => {
288
+ Reflect.apply(on, processGlobal, [signal, handler]);
289
+ },
290
+ };
291
+ if (typeof off === "function") {
292
+ runtime.remove = (signal, handler) => {
293
+ Reflect.apply(off, processGlobal, [signal, handler]);
294
+ };
295
+ } else if (typeof removeListener === "function") {
296
+ runtime.remove = (signal, handler) => {
297
+ Reflect.apply(removeListener, processGlobal, [signal, handler]);
298
+ };
299
+ }
300
+ if (typeof exit === "function") {
301
+ runtime.exit = (code) => Reflect.apply(exit, processGlobal, [code]);
302
+ }
303
+ return runtime;
304
+ }
305
+
306
+ function createDenoSignalRuntime(deno: DenoServeRuntime): SignalRuntime | null {
307
+ if (!deno.addSignalListener) {
308
+ return null;
309
+ }
310
+ return {
311
+ add: deno.addSignalListener,
312
+ remove: deno.removeSignalListener,
313
+ exit: deno.exit,
314
+ };
315
+ }
316
+
317
+ function resolveRuntimeKind(): VeryfrontServiceServerRuntimeKind {
318
+ if (getBunServeRuntime()) {
319
+ return "bun";
320
+ }
321
+ if (getDenoServeRuntime()) {
322
+ return "deno";
323
+ }
324
+ return "node";
325
+ }
326
+
327
+ async function stopRuntime(
328
+ runtime: VeryfrontServiceServerRuntime,
329
+ stopServer: () => void | Promise<void>,
330
+ ): Promise<void> {
331
+ runtime.setShuttingDown();
332
+ await stopServer();
333
+ await runtime.stop();
334
+ }
335
+
336
+ function installSignalHandlers(options: {
337
+ signalRuntime: SignalRuntime | null;
338
+ signals?: readonly NodeJS.Signals[];
339
+ logger: VeryfrontServiceServerLogger;
340
+ stop: () => Promise<void>;
341
+ hardShutdownTimeoutMs?: number;
342
+ runtime: VeryfrontServiceServerRuntimeKind;
343
+ }): () => void {
344
+ if (!options.signalRuntime) {
345
+ return () => undefined;
346
+ }
347
+
348
+ const hardShutdownTimeoutMs = options.hardShutdownTimeoutMs ?? 20_000;
349
+ const installedHandlers: Array<{ signal: NodeJS.Signals; handler: SignalHandler }> = [];
350
+ let signalShutdownStarted = false;
351
+
352
+ for (const signal of options.signals ?? ["SIGTERM"]) {
353
+ const handler = () => {
354
+ if (signalShutdownStarted) {
355
+ return;
356
+ }
357
+
358
+ signalShutdownStarted = true;
359
+ options.logger.info?.("Veryfront service server received shutdown signal", {
360
+ signal,
361
+ runtime: options.runtime,
362
+ });
363
+ const hardTimeout = dntShim.setTimeout(() => {
364
+ options.logger.error?.("Veryfront service server graceful shutdown timed out", {
365
+ signal,
366
+ runtime: options.runtime,
367
+ });
368
+ options.signalRuntime?.exit?.(1);
369
+ }, hardShutdownTimeoutMs);
370
+
371
+ void options.stop()
372
+ .then(() => {
373
+ clearTimeout(hardTimeout);
374
+ options.signalRuntime?.exit?.(0);
375
+ })
376
+ .catch((error: unknown) => {
377
+ clearTimeout(hardTimeout);
378
+ options.logger.error?.("Veryfront service server shutdown failed", {
379
+ signal,
380
+ runtime: options.runtime,
381
+ error: error instanceof Error ? error.message : String(error),
382
+ });
383
+ options.signalRuntime?.exit?.(1);
384
+ });
385
+ };
386
+
387
+ try {
388
+ options.signalRuntime.add(signal, handler);
389
+ installedHandlers.push({ signal, handler });
390
+ } catch (error) {
391
+ options.logger.warn?.("Veryfront service server could not install shutdown signal handler", {
392
+ signal,
393
+ runtime: options.runtime,
394
+ error: error instanceof Error ? error.message : String(error),
395
+ });
396
+ }
397
+ }
398
+
399
+ return () => {
400
+ for (const { signal, handler } of installedHandlers) {
401
+ try {
402
+ options.signalRuntime?.remove?.(signal, handler);
403
+ } catch (error) {
404
+ options.logger.warn?.("Veryfront service server could not remove shutdown signal handler", {
405
+ signal,
406
+ runtime: options.runtime,
407
+ error: error instanceof Error ? error.message : String(error),
408
+ });
409
+ }
410
+ }
411
+ };
412
+ }
413
+
414
+ async function startDenoVeryfrontServer(
415
+ options: StartVeryfrontServerOptions,
416
+ deno: DenoServeRuntime,
417
+ ): Promise<VeryfrontServiceServer> {
418
+ const logger = options.logger ?? serverLogger.component("service-server");
419
+ const bindAddress = options.bindAddress ?? "0.0.0.0";
420
+ const abortController = new AbortController();
421
+ const server = deno.serve({
422
+ port: options.port,
423
+ hostname: bindAddress,
424
+ signal: abortController.signal,
425
+ onListen: () => undefined,
426
+ }, options.runtime.fetch);
427
+ let shutdownStarted = false;
428
+ let removeSignalHandlers: () => void = () => undefined;
429
+
430
+ const stop = async () => {
431
+ if (shutdownStarted) {
432
+ return;
433
+ }
434
+
435
+ shutdownStarted = true;
436
+ try {
437
+ await stopRuntime(options.runtime, async () => {
438
+ if (server.shutdown) {
439
+ await server.shutdown();
440
+ return;
441
+ }
442
+ abortController.abort();
443
+ await server.finished?.catch(() => undefined);
444
+ });
445
+ } finally {
446
+ removeSignalHandlers();
447
+ }
448
+ };
449
+
450
+ removeSignalHandlers = installSignalHandlers({
451
+ signalRuntime: createDenoSignalRuntime(deno),
452
+ signals: options.signals,
453
+ logger,
454
+ stop,
455
+ hardShutdownTimeoutMs: options.hardShutdownTimeoutMs,
456
+ runtime: "deno",
457
+ });
458
+
459
+ logger.info?.("Veryfront service server listening", {
460
+ port: server.addr?.port ?? options.port,
461
+ bindAddress,
462
+ runtime: "deno",
463
+ });
464
+
465
+ return {
466
+ ready: Promise.resolve(),
467
+ stop,
468
+ port: server.addr?.port ?? options.port,
469
+ url: `http://${bindAddress}:${server.addr?.port ?? options.port}`,
470
+ runtime: "deno",
471
+ };
472
+ }
473
+
474
+ async function startBunVeryfrontServer(
475
+ options: StartVeryfrontServerOptions,
476
+ bun: BunServeRuntime,
477
+ ): Promise<VeryfrontServiceServer> {
478
+ const logger = options.logger ?? serverLogger.component("service-server");
479
+ const bindAddress = options.bindAddress ?? "0.0.0.0";
480
+ const server = bun.serve({
481
+ port: options.port,
482
+ hostname: bindAddress,
483
+ fetch: options.runtime.fetch,
484
+ });
485
+ let shutdownStarted = false;
486
+ let removeSignalHandlers: () => void = () => undefined;
487
+
488
+ const stop = async () => {
489
+ if (shutdownStarted) {
490
+ return;
491
+ }
492
+
493
+ shutdownStarted = true;
494
+ try {
495
+ await stopRuntime(options.runtime, async () => {
496
+ await server.stop?.();
497
+ });
498
+ } finally {
499
+ removeSignalHandlers();
500
+ }
501
+ };
502
+
503
+ removeSignalHandlers = installSignalHandlers({
504
+ signalRuntime: getProcessSignalRuntime(),
505
+ signals: options.signals,
506
+ logger,
507
+ stop,
508
+ hardShutdownTimeoutMs: options.hardShutdownTimeoutMs,
509
+ runtime: "bun",
510
+ });
511
+
512
+ logger.info?.("Veryfront service server listening", {
513
+ port: server.port ?? options.port,
514
+ bindAddress,
515
+ runtime: "bun",
516
+ });
517
+
518
+ return {
519
+ ready: Promise.resolve(),
520
+ stop,
521
+ port: server.port ?? options.port,
522
+ url: server.url?.toString() ?? `http://${bindAddress}:${options.port}`,
523
+ runtime: "bun",
524
+ };
525
+ }
526
+
527
+ export async function startVeryfrontServer(
528
+ options: StartVeryfrontServerOptions,
529
+ ): Promise<VeryfrontServiceServer | NodeVeryfrontServiceServer> {
530
+ const runtimeKind = resolveRuntimeKind();
531
+ if (runtimeKind === "bun") {
532
+ const bun = getBunServeRuntime();
533
+ if (bun) {
534
+ return await startBunVeryfrontServer(options, bun);
535
+ }
536
+ }
537
+ if (runtimeKind === "deno") {
538
+ const deno = getDenoServeRuntime();
539
+ if (deno) {
540
+ return await startDenoVeryfrontServer(options, deno);
541
+ }
542
+ }
543
+ return await startNodeVeryfrontServer(options);
544
+ }
545
+
119
546
  export async function startNodeVeryfrontServer(
120
547
  options: StartNodeVeryfrontServerOptions,
121
548
  ): Promise<NodeVeryfrontServiceServer> {
@@ -183,5 +610,6 @@ export async function startNodeVeryfrontServer(
183
610
  stop,
184
611
  port: options.port,
185
612
  url: `http://${bindAddress}:${options.port}`,
613
+ runtime: "node",
186
614
  };
187
615
  }
@@ -19,18 +19,18 @@ async function buildOrServeScript(
19
19
  adapter: RuntimeAdapter,
20
20
  path: string,
21
21
  fallbackBundle: string,
22
- esbuildOptions: Omit<import("../../../../extensions/bundler.js").BuildOptions, "stdin"> & {
23
- stdin: import("../../../../extensions/bundler.js").StdinOptions;
22
+ esbuildOptions: Omit<import("../../../../extensions/bundler/index.js").BuildOptions, "stdin"> & {
23
+ stdin: import("../../../../extensions/bundler/index.js").StdinOptions;
24
24
  },
25
25
  ): Promise<Response> {
26
26
  // If a pre-built bundle was injected at compile time, serve it directly
27
27
  if (fallbackBundle) return jsResponse(fallbackBundle);
28
28
 
29
- let esbuild: typeof import("../../../../extensions/bundler.js") | null = null;
29
+ let esbuild: typeof import("../../../../extensions/bundler/index.js") | null = null;
30
30
 
31
31
  try {
32
32
  const src = await adapter.fs.readFile(path);
33
- esbuild = await import("../../../../extensions/bundler.js");
33
+ esbuild = await import("../../../../extensions/bundler/index.js");
34
34
  const result = await esbuild.build({
35
35
  ...esbuildOptions,
36
36
  stdin: { ...esbuildOptions.stdin, contents: src },
@@ -32,7 +32,7 @@ export class HydratorHandler {
32
32
  }
33
33
 
34
34
  private async bundleHydrator(filePath: string): Promise<string> {
35
- const { build, stop } = await import("../../../../extensions/bundler.js");
35
+ const { build, stop } = await import("../../../../extensions/bundler/index.js");
36
36
 
37
37
  try {
38
38
  const source = await this.readHydratorFile(filePath);
@@ -23,7 +23,7 @@ export function bundleBrowserModule(
23
23
  return withSpan(
24
24
  "server.browser-module.bundle",
25
25
  async () => {
26
- const { build } = await import("../../extensions/bundler.js");
26
+ const { build } = await import("../../extensions/bundler/index.js");
27
27
  const src = await options.adapter.fs.readFile(absPath);
28
28
  const importMapJson = await buildImportMapJson({
29
29
  projectDir: options.projectDir,
@@ -12,7 +12,7 @@
12
12
  import * as dntShim from "../../_dnt.shims.js";
13
13
 
14
14
 
15
- import { EsbuildBundler, EsModuleLexer } from "../../extensions/ext-esbuild/src/index.js";
15
+ import { EsbuildBundler, EsModuleLexer } from "../../extensions/ext-bundler-esbuild/src/index.js";
16
16
  import { register as registerContract } from "../extensions/contracts.js";
17
17
 
18
18
  const g = dntShim.dntGlobalThis as Record<string, unknown>;
@@ -8,7 +8,7 @@ import * as dntShim from "../../../_dnt.shims.js";
8
8
 
9
9
 
10
10
  import { rendererLogger as logger } from "../../utils/index.js";
11
- import type { Plugin } from "../../extensions/bundler.js";
11
+ import type { Plugin } from "../../extensions/bundler/index.js";
12
12
  import { replaceSpecifiers } from "./lexer.js";
13
13
  import { DEFAULT_REACT_VERSION, getReactUrls } from "./package-registry.js";
14
14
  import {
@@ -1,9 +1,6 @@
1
1
  import { logger as baseLogger } from "../../utils/index.js";
2
2
  import { resolve as resolveContract } from "../../extensions/contracts.js";
3
- import type {
4
- ImportSpecifier,
5
- ModuleLexer,
6
- } from "../../extensions/interfaces/module-lexer.js";
3
+ import type { ImportSpecifier, ModuleLexer } from "../../extensions/bundler/module-lexer.js";
7
4
 
8
5
  export type { ImportSpecifier };
9
6
 
@@ -1,4 +1,4 @@
1
- import type { Loader } from "../../extensions/bundler.js";
1
+ import type { Loader } from "../../extensions/bundler/index.js";
2
2
  import { shortHash } from "../../utils/hash-utils.js";
3
3
 
4
4
  /**
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import { resolve as resolveContract } from "../../extensions/contracts.js";
9
- import type { ModuleLexer } from "../../extensions/interfaces/module-lexer.js";
9
+ import type { ModuleLexer } from "../../extensions/bundler/module-lexer.js";
10
10
  import type { ImportSpecifierInfo } from "./types.js";
11
11
  import type { ImportSpecifier } from "../esm/lexer.js";
12
12
 
@@ -5,7 +5,7 @@ import type {
5
5
  CompilationTarget,
6
6
  ContentRuntimeBundle,
7
7
  ContentTransformer,
8
- } from "../../../extensions/interfaces/index.js";
8
+ } from "../../../extensions/transform/index.js";
9
9
  import { createError, toError } from "../../../errors/veryfront-error.js";
10
10
  import { withSpan } from "../../../observability/tracing/otlp-setup.js";
11
11
 
@@ -1,5 +1,5 @@
1
1
  import { dirname, join, resolve as pathResolve } from "../../../platform/compat/path/index.js";
2
- import type { CompilationTarget } from "../../../extensions/interfaces/index.js";
2
+ import type { CompilationTarget } from "../../../extensions/transform/index.js";
3
3
 
4
4
  export interface ImportRewriterConfig {
5
5
  filePath: string;
@@ -11,7 +11,7 @@ export type {
11
11
  CompilationMode,
12
12
  CompilationTarget,
13
13
  ContentRuntimeBundle,
14
- } from "../../../extensions/interfaces/index.js";
14
+ } from "../../../extensions/transform/index.js";
15
15
  export type { FrontmatterExtractionResult } from "./frontmatter-extractor.js";
16
16
  export type { ImportRewriterConfig } from "./import-rewriter.js";
17
17
 
@@ -21,7 +21,7 @@ import type {
21
21
  CompilationMode,
22
22
  CompilationTarget,
23
23
  ContentRuntimeBundle,
24
- } from "../../../extensions/interfaces/index.js";
24
+ } from "../../../extensions/transform/index.js";
25
25
 
26
26
  function isMarkdownFile(filePath?: string): boolean {
27
27
  return filePath?.endsWith(".md") ?? false;
@@ -5,7 +5,7 @@ import type {
5
5
  CompilationTarget,
6
6
  ContentRuntimeBundle,
7
7
  ContentTransformer,
8
- } from "../../../extensions/interfaces/index.js";
8
+ } from "../../../extensions/transform/index.js";
9
9
  import { createError, toError } from "../../../errors/veryfront-error.js";
10
10
  import { withSpan } from "../../../observability/tracing/otlp-setup.js";
11
11
 
@@ -91,7 +91,7 @@ export async function transformJsxImports(
91
91
  adapter: ESMLoaderContext["adapter"],
92
92
  esmCacheDir: string,
93
93
  ): Promise<string> {
94
- const { transform } = await import("../../../extensions/bundler.js");
94
+ const { transform } = await import("../../../extensions/bundler/index.js");
95
95
 
96
96
  const importsToProcess: Array<{
97
97
  fullMatch: string;
@@ -107,7 +107,7 @@ export async function transformFrameworkCode(
107
107
  depth,
108
108
  });
109
109
  // Return minimally transformed code - it will fail at runtime but won't hang
110
- const { transform } = await import("../../../../extensions/bundler.js");
110
+ const { transform } = await import("../../../../extensions/bundler/index.js");
111
111
  const ext = sourcePath.match(/\.(tsx?|jsx?)$/)?.[1] ?? "tsx";
112
112
  let loader: "tsx" | "ts" | "jsx" | "js" = "js";
113
113
  if (ext === "tsx") loader = "tsx";
@@ -151,7 +151,7 @@ export async function transformFrameworkCode(
151
151
  transformingFiles.add(sourcePath);
152
152
 
153
153
  try {
154
- const { transform } = await import("../../../../extensions/bundler.js");
154
+ const { transform } = await import("../../../../extensions/bundler/index.js");
155
155
 
156
156
  const ext = sourcePath.match(/\.(tsx?|jsx?)$/)?.[1] ?? "tsx";
157
157
  let loader: "tsx" | "ts" | "jsx" | "js" = "js";
@@ -1,15 +1,15 @@
1
1
  /**
2
2
  * Shim over the `CodeParser` contract's `injectJsxNodePositions()` method.
3
3
  *
4
- * The actual Babel-based implementation lives in `@veryfront/ext-babel`.
4
+ * The actual Babel-based implementation lives in `@veryfront/ext-parser-babel`.
5
5
  * Core modules continue to import from this path; the shim resolves the
6
6
  * contract at call time. Position injection powers Studio Navigator only —
7
- * if `ext-babel` is not installed we return the source unchanged rather
7
+ * if `ext-parser-babel` is not installed we return the source unchanged rather
8
8
  * than fail the SSR path.
9
9
  */
10
10
 
11
11
  import { tryResolve } from "../../extensions/contracts.js";
12
- import type { CodeParser } from "../../extensions/interfaces/index.js";
12
+ import type { CodeParser } from "../../extensions/parser/index.js";
13
13
 
14
14
  interface TransformOptions {
15
15
  filePath: string;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Shim that routes MDX plugin lookups through the `ContentTransformer`
3
- * extension contract (default implementation: `@veryfront/ext-mdx`).
3
+ * extension contract (default implementation: `@veryfront/ext-transform-mdx`).
4
4
  *
5
5
  * Build-time MDX compilers (`src/build/compiler/mdx-compiler/mdx-processor.ts`,
6
6
  * `src/build/renderer/services/mdx-bundler.ts`, `layout-applicator.ts`)
@@ -9,14 +9,14 @@
9
9
  * `ContentTransformer` implementation is registered.
10
10
  *
11
11
  * When no implementation is registered, the lookup throws with an
12
- * actionable install message pointing at `@veryfront/ext-mdx`.
12
+ * actionable install message pointing at `@veryfront/ext-transform-mdx`.
13
13
  *
14
14
  * @module transforms/plugins/plugin-loader
15
15
  */
16
16
 
17
17
  import type { Pluggable } from "unified";
18
18
  import { resolve as resolveContract } from "../../extensions/contracts.js";
19
- import type { ContentTransformer } from "../../extensions/interfaces/index.js";
19
+ import type { ContentTransformer } from "../../extensions/transform/index.js";
20
20
 
21
21
  export function getRemarkPlugins(): Pluggable[] {
22
22
  const transformer = resolveContract<ContentTransformer>("ContentTransformer");
@@ -1,3 +1,3 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
- export const VERSION = "0.1.499";
3
+ export const VERSION = "0.1.501";
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic-provider.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ext-anthropic/src/anthropic-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EACL,kBAAkB,EAIlB,aAAa,EACb,UAAU,EACV,iBAAiB,EAEjB,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EAMpB,+BAA+B,EAE/B,8BAA8B,EAC/B,MAAM,uCAAuC,CAAC;AAG/C,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,+BAA+B,EAC/B,8BAA8B,GAC/B,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAkjCD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,MAAM,GACd,YAAY,CAyEd;AAED,qBAAa,iBAAkB,YAAW,UAAU;IAClD,QAAQ,CAAC,EAAE,eAAe;IAE1B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,YAAY;CAYrE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ext-anthropic/src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,QAAA,MAAM,YAAY,EAAE,gBAkBnB,CAAC;AAEF,eAAe,YAAY,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,CAAC"}