veryfront 0.1.47 → 0.1.49

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 (813) hide show
  1. package/esm/cli/app/components/inline-input.d.ts +1 -4
  2. package/esm/cli/app/components/inline-input.d.ts.map +1 -1
  3. package/esm/cli/app/components/inline-input.js +1 -1
  4. package/esm/cli/app/components/list-select.d.ts +0 -8
  5. package/esm/cli/app/components/list-select.d.ts.map +1 -1
  6. package/esm/cli/app/components/list-select.js +0 -13
  7. package/esm/cli/app/operations/project-creation.d.ts +2 -14
  8. package/esm/cli/app/operations/project-creation.d.ts.map +1 -1
  9. package/esm/cli/app/operations/project-creation.js +3 -68
  10. package/esm/cli/app/shell.js +2 -2
  11. package/esm/cli/app/utils.d.ts +1 -2
  12. package/esm/cli/app/utils.d.ts.map +1 -1
  13. package/esm/cli/app/utils.js +1 -17
  14. package/esm/cli/app/views/dashboard.d.ts +0 -4
  15. package/esm/cli/app/views/dashboard.d.ts.map +1 -1
  16. package/esm/cli/app/views/dashboard.js +0 -15
  17. package/esm/cli/app/views/startup.d.ts +0 -4
  18. package/esm/cli/app/views/startup.d.ts.map +1 -1
  19. package/esm/cli/app/views/startup.js +0 -7
  20. package/esm/cli/auth/login.d.ts.map +1 -1
  21. package/esm/cli/auth/login.js +1 -2
  22. package/esm/cli/auth/token-store.js +1 -1
  23. package/esm/cli/auth/utils.d.ts +2 -1
  24. package/esm/cli/auth/utils.d.ts.map +1 -1
  25. package/esm/cli/commands/build/handler.d.ts +1 -1
  26. package/esm/cli/commands/generate/integration-generator.js +1 -1
  27. package/esm/cli/commands/init/catalog.js +3 -3
  28. package/esm/cli/commands/init/command-help.js +2 -2
  29. package/esm/cli/commands/init/config-generator.d.ts.map +1 -1
  30. package/esm/cli/commands/init/config-generator.js +8 -0
  31. package/esm/cli/commands/init/types.d.ts +1 -1
  32. package/esm/cli/commands/init/types.d.ts.map +1 -1
  33. package/esm/cli/commands/install/types.d.ts +2 -2
  34. package/esm/cli/commands/merge/command.d.ts +1 -1
  35. package/esm/cli/help/formatters.d.ts +1 -1
  36. package/esm/cli/help/formatters.d.ts.map +1 -1
  37. package/esm/cli/help/formatters.js +8 -4
  38. package/esm/cli/help/main-help.d.ts.map +1 -1
  39. package/esm/cli/help/main-help.js +2 -2
  40. package/esm/cli/help/tips.js +1 -1
  41. package/esm/cli/mcp/remote-file-tools.js +1 -1
  42. package/esm/cli/mcp/server.d.ts +0 -1
  43. package/esm/cli/mcp/server.d.ts.map +1 -1
  44. package/esm/cli/mcp/server.js +2 -5
  45. package/esm/cli/mcp/tools/catalog-tools.d.ts +3 -3
  46. package/esm/cli/mcp/tools/catalog-tools.js +3 -3
  47. package/esm/cli/mcp/tools/dev-tools.d.ts +1 -1
  48. package/esm/cli/mcp/tools/dev-tools.d.ts.map +1 -1
  49. package/esm/cli/mcp/tools/dev-tools.js +1 -2
  50. package/esm/cli/mcp/tools/scaffold-tools.d.ts +2 -2
  51. package/esm/cli/mcp/tools.d.ts +1 -2
  52. package/esm/cli/mcp/tools.d.ts.map +1 -1
  53. package/esm/cli/mcp/tools.js +1 -2
  54. package/esm/cli/shared/reserve-slug.d.ts.map +1 -1
  55. package/esm/cli/shared/reserve-slug.js +1 -3
  56. package/esm/cli/sync/ignore.d.ts +1 -1
  57. package/esm/cli/sync/ignore.d.ts.map +1 -1
  58. package/esm/cli/sync/ignore.js +22 -18
  59. package/esm/cli/templates/index.js +2 -2
  60. package/esm/cli/templates/manifest.d.ts +10 -8
  61. package/esm/cli/templates/manifest.js +15 -13
  62. package/esm/cli/templates/types.d.ts +1 -1
  63. package/esm/cli/templates/types.d.ts.map +1 -1
  64. package/esm/cli/ui/colors.d.ts +0 -1
  65. package/esm/cli/ui/colors.d.ts.map +1 -1
  66. package/esm/cli/ui/colors.js +0 -10
  67. package/esm/cli/ui/dot-matrix.d.ts.map +1 -1
  68. package/esm/cli/ui/dot-matrix.js +2 -5
  69. package/esm/cli/ui/tui.js +2 -3
  70. package/esm/cli/utils/index.js +1 -2
  71. package/esm/cli/utils/package-manager.d.ts.map +1 -1
  72. package/esm/cli/utils/package-manager.js +3 -4
  73. package/esm/deno.d.ts +10 -0
  74. package/esm/deno.js +30 -20
  75. package/esm/src/agent/chat-handler.d.ts +22 -0
  76. package/esm/src/agent/chat-handler.d.ts.map +1 -1
  77. package/esm/src/agent/chat-handler.js +88 -28
  78. package/esm/src/agent/factory.d.ts +0 -8
  79. package/esm/src/agent/factory.d.ts.map +1 -1
  80. package/esm/src/agent/factory.js +50 -1
  81. package/esm/src/agent/index.d.ts +17 -2
  82. package/esm/src/agent/index.d.ts.map +1 -1
  83. package/esm/src/agent/index.js +17 -2
  84. package/esm/src/agent/memory/memory.d.ts +2 -2
  85. package/esm/src/agent/memory/memory.d.ts.map +1 -1
  86. package/esm/src/agent/memory/memory.js +0 -1
  87. package/esm/src/agent/react/index.d.ts +1 -1
  88. package/esm/src/agent/react/index.d.ts.map +1 -1
  89. package/esm/src/agent/react/use-chat/index.d.ts +1 -1
  90. package/esm/src/agent/react/use-chat/index.d.ts.map +1 -1
  91. package/esm/src/agent/react/use-chat/streaming/handler.d.ts.map +1 -1
  92. package/esm/src/agent/react/use-chat/streaming/handler.js +42 -4
  93. package/esm/src/agent/react/use-chat/streaming/parts-builder.d.ts +2 -2
  94. package/esm/src/agent/react/use-chat/streaming/parts-builder.d.ts.map +1 -1
  95. package/esm/src/agent/react/use-chat/streaming/parts-builder.js +14 -1
  96. package/esm/src/agent/react/use-chat/streaming/types.d.ts +5 -0
  97. package/esm/src/agent/react/use-chat/streaming/types.d.ts.map +1 -1
  98. package/esm/src/agent/react/use-chat/types.d.ts +23 -1
  99. package/esm/src/agent/react/use-chat/types.d.ts.map +1 -1
  100. package/esm/src/agent/react/use-chat/use-chat.d.ts +15 -1
  101. package/esm/src/agent/react/use-chat/use-chat.d.ts.map +1 -1
  102. package/esm/src/agent/react/use-chat/use-chat.js +187 -35
  103. package/esm/src/agent/runtime/index.d.ts +18 -0
  104. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  105. package/esm/src/agent/runtime/index.js +167 -36
  106. package/esm/src/agent/runtime/tool-helpers.d.ts +6 -1
  107. package/esm/src/agent/runtime/tool-helpers.d.ts.map +1 -1
  108. package/esm/src/agent/runtime/tool-helpers.js +10 -1
  109. package/esm/src/agent/schemas/agent.schema.d.ts +4 -4
  110. package/esm/src/agent/types.d.ts +10 -0
  111. package/esm/src/agent/types.d.ts.map +1 -1
  112. package/esm/src/ai/registry-manager.d.ts.map +1 -1
  113. package/esm/src/ai/registry-manager.js +2 -1
  114. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts +0 -2
  115. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts.map +1 -1
  116. package/esm/src/build/bundler/code-splitter/manifest-builder.js +1 -1
  117. package/esm/src/build/compiler/mdx-compiler/validator.d.ts.map +1 -1
  118. package/esm/src/build/compiler/mdx-compiler/validator.js +2 -3
  119. package/esm/src/build/compiler/mdx-to-js.d.ts +0 -2
  120. package/esm/src/build/compiler/mdx-to-js.d.ts.map +1 -1
  121. package/esm/src/build/compiler/mdx-to-js.js +0 -81
  122. package/esm/src/build/index.d.ts +0 -6
  123. package/esm/src/build/index.d.ts.map +1 -1
  124. package/esm/src/build/index.js +0 -1
  125. package/esm/src/build/production-build/build/route-collector.d.ts.map +1 -1
  126. package/esm/src/build/production-build/build/route-collector.js +2 -3
  127. package/esm/src/build/production-build/client-runtime.d.ts +7 -3
  128. package/esm/src/build/production-build/client-runtime.d.ts.map +1 -1
  129. package/esm/src/build/production-build/client-runtime.js +9 -9
  130. package/esm/src/build/production-build/templates.d.ts +5 -9
  131. package/esm/src/build/production-build/templates.d.ts.map +1 -1
  132. package/esm/src/build/production-build/templates.js +6 -18
  133. package/esm/src/build/vendor-cache.d.ts.map +1 -1
  134. package/esm/src/build/vendor-cache.js +0 -5
  135. package/esm/src/cache/tokenizing-gateway.d.ts +0 -2
  136. package/esm/src/cache/tokenizing-gateway.d.ts.map +1 -1
  137. package/esm/src/cache/tokenizing-gateway.js +1 -3
  138. package/esm/src/chat/index.d.ts +33 -24
  139. package/esm/src/chat/index.d.ts.map +1 -1
  140. package/esm/src/chat/index.js +40 -26
  141. package/esm/src/config/define-config.d.ts.map +1 -1
  142. package/esm/src/config/define-config.js +28 -25
  143. package/esm/src/config/loader.d.ts.map +1 -1
  144. package/esm/src/config/loader.js +10 -7
  145. package/esm/src/config/schemas/config.schema.d.ts +58 -12
  146. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  147. package/esm/src/config/schemas/config.schema.js +12 -0
  148. package/esm/src/data/data-fetcher.d.ts +1 -2
  149. package/esm/src/data/data-fetcher.d.ts.map +1 -1
  150. package/esm/src/data/data-fetcher.js +14 -15
  151. package/esm/src/data/server-data-fetcher.d.ts +0 -3
  152. package/esm/src/data/server-data-fetcher.d.ts.map +1 -1
  153. package/esm/src/data/server-data-fetcher.js +1 -8
  154. package/esm/src/data/static-data-fetcher.d.ts +1 -3
  155. package/esm/src/data/static-data-fetcher.d.ts.map +1 -1
  156. package/esm/src/data/static-data-fetcher.js +1 -3
  157. package/esm/src/discovery/discovery-engine.d.ts.map +1 -1
  158. package/esm/src/discovery/discovery-engine.js +19 -1
  159. package/esm/src/discovery/discovery-utils.d.ts +0 -4
  160. package/esm/src/discovery/discovery-utils.d.ts.map +1 -1
  161. package/esm/src/discovery/discovery-utils.js +0 -6
  162. package/esm/src/discovery/file-discovery.d.ts +3 -1
  163. package/esm/src/discovery/file-discovery.d.ts.map +1 -1
  164. package/esm/src/discovery/file-discovery.js +3 -8
  165. package/esm/src/discovery/handlers/index.d.ts +1 -0
  166. package/esm/src/discovery/handlers/index.d.ts.map +1 -1
  167. package/esm/src/discovery/handlers/index.js +1 -0
  168. package/esm/src/discovery/handlers/skill-handler.d.ts +26 -0
  169. package/esm/src/discovery/handlers/skill-handler.d.ts.map +1 -0
  170. package/esm/src/discovery/handlers/skill-handler.js +87 -0
  171. package/esm/src/discovery/handlers/task-handler.d.ts.map +1 -1
  172. package/esm/src/discovery/handlers/task-handler.js +1 -5
  173. package/esm/src/discovery/transpiler.d.ts.map +1 -1
  174. package/esm/src/discovery/transpiler.js +7 -2
  175. package/esm/src/discovery/types.d.ts +3 -0
  176. package/esm/src/discovery/types.d.ts.map +1 -1
  177. package/esm/src/embedding/chunk.d.ts +18 -0
  178. package/esm/src/embedding/chunk.d.ts.map +1 -0
  179. package/esm/src/embedding/chunk.js +48 -0
  180. package/esm/src/embedding/embedding.d.ts +23 -0
  181. package/esm/src/embedding/embedding.d.ts.map +1 -0
  182. package/esm/src/embedding/embedding.js +54 -0
  183. package/esm/src/embedding/index.d.ts +29 -0
  184. package/esm/src/embedding/index.d.ts.map +1 -0
  185. package/esm/src/embedding/index.js +26 -0
  186. package/esm/src/embedding/react/use-uploads.d.ts +31 -0
  187. package/esm/src/embedding/react/use-uploads.d.ts.map +1 -0
  188. package/esm/src/embedding/react/use-uploads.js +71 -0
  189. package/esm/src/embedding/resolve.d.ts +27 -0
  190. package/esm/src/embedding/resolve.d.ts.map +1 -0
  191. package/esm/src/embedding/resolve.js +94 -0
  192. package/esm/src/embedding/types.d.ts +90 -0
  193. package/esm/src/embedding/types.d.ts.map +1 -0
  194. package/esm/src/embedding/types.js +1 -0
  195. package/esm/src/embedding/upload-handler.d.ts +43 -0
  196. package/esm/src/embedding/upload-handler.d.ts.map +1 -0
  197. package/esm/src/embedding/upload-handler.js +144 -0
  198. package/esm/src/embedding/upload-loader.d.ts +14 -0
  199. package/esm/src/embedding/upload-loader.d.ts.map +1 -0
  200. package/esm/src/embedding/upload-loader.js +70 -0
  201. package/esm/src/embedding/upload-store.d.ts +27 -0
  202. package/esm/src/embedding/upload-store.d.ts.map +1 -0
  203. package/esm/src/embedding/upload-store.js +244 -0
  204. package/esm/src/embedding/vector-store.d.ts +33 -0
  205. package/esm/src/embedding/vector-store.d.ts.map +1 -0
  206. package/esm/src/embedding/vector-store.js +215 -0
  207. package/esm/src/errors/error-registry.d.ts +2 -1
  208. package/esm/src/errors/error-registry.d.ts.map +1 -1
  209. package/esm/src/errors/http-error.d.ts +1 -2
  210. package/esm/src/errors/http-error.d.ts.map +1 -1
  211. package/esm/src/errors/http-error.js +2 -2
  212. package/esm/src/errors/middleware/cli-error-boundary.d.ts.map +1 -1
  213. package/esm/src/errors/middleware/cli-error-boundary.js +13 -2
  214. package/esm/src/errors/middleware/wrap-unknown.d.ts +0 -7
  215. package/esm/src/errors/middleware/wrap-unknown.d.ts.map +1 -1
  216. package/esm/src/errors/middleware/wrap-unknown.js +0 -9
  217. package/esm/src/errors/veryfront-error.d.ts +0 -3
  218. package/esm/src/errors/veryfront-error.d.ts.map +1 -1
  219. package/esm/src/errors/veryfront-error.js +0 -5
  220. package/esm/src/html/schemas/html.schema.d.ts +2 -2
  221. package/esm/src/html/styles-builder/css-hash-cache.d.ts.map +1 -1
  222. package/esm/src/html/styles-builder/css-hash-cache.js +1 -2
  223. package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
  224. package/esm/src/html/styles-builder/plugin-loader.js +50 -21
  225. package/esm/src/html/styles-builder/tailwind-compiler-cache.d.ts.map +1 -1
  226. package/esm/src/html/styles-builder/tailwind-compiler-cache.js +12 -4
  227. package/esm/src/html/utils.d.ts +0 -7
  228. package/esm/src/html/utils.d.ts.map +1 -1
  229. package/esm/src/html/utils.js +0 -25
  230. package/esm/src/modules/component-registry/registry.d.ts +0 -3
  231. package/esm/src/modules/component-registry/registry.d.ts.map +1 -1
  232. package/esm/src/modules/component-registry/registry.js +0 -3
  233. package/esm/src/modules/import-map/default-import-map.d.ts.map +1 -1
  234. package/esm/src/modules/import-map/default-import-map.js +8 -0
  235. package/esm/src/modules/react-loader/component-loader.d.ts.map +1 -1
  236. package/esm/src/modules/react-loader/component-loader.js +1 -0
  237. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
  238. package/esm/src/modules/react-loader/ssr-module-loader/loader.js +10 -1
  239. package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts +2 -0
  240. package/esm/src/modules/react-loader/ssr-module-loader/types.d.ts.map +1 -1
  241. package/esm/src/modules/react-loader/types.d.ts +2 -0
  242. package/esm/src/modules/react-loader/types.d.ts.map +1 -1
  243. package/esm/src/modules/server/module-server.d.ts +2 -0
  244. package/esm/src/modules/server/module-server.d.ts.map +1 -1
  245. package/esm/src/modules/server/module-server.js +2 -1
  246. package/esm/src/oauth/handlers/callback-handler.d.ts +2 -0
  247. package/esm/src/oauth/handlers/callback-handler.d.ts.map +1 -1
  248. package/esm/src/oauth/handlers/callback-handler.js +10 -4
  249. package/esm/src/oauth/providers/common.d.ts.map +1 -1
  250. package/esm/src/oauth/providers/common.js +0 -23
  251. package/esm/src/observability/auto-instrument/react-instrumentation.js +2 -1
  252. package/esm/src/observability/instruments/instruments-factory.d.ts +1 -1
  253. package/esm/src/observability/instruments/instruments-factory.d.ts.map +1 -1
  254. package/esm/src/observability/instruments/instruments-factory.js +5 -4
  255. package/esm/src/observability/metrics/config.js +5 -4
  256. package/esm/src/observability/metrics/manager.js +1 -1
  257. package/esm/src/observability/tracing/span-operations.d.ts.map +1 -1
  258. package/esm/src/observability/tracing/span-operations.js +14 -8
  259. package/esm/src/platform/compat/console/node.d.ts +0 -1
  260. package/esm/src/platform/compat/console/node.d.ts.map +1 -1
  261. package/esm/src/platform/compat/console/node.js +4 -11
  262. package/esm/src/platform/compat/fs.d.ts.map +1 -1
  263. package/esm/src/platform/compat/fs.js +4 -2
  264. package/esm/src/platform/compat/opaque-deps.d.ts +18 -2
  265. package/esm/src/platform/compat/opaque-deps.d.ts.map +1 -1
  266. package/esm/src/platform/compat/opaque-deps.js +19 -0
  267. package/esm/src/platform/compat/path/basic-operations.d.ts.map +1 -1
  268. package/esm/src/platform/compat/path/basic-operations.js +17 -10
  269. package/esm/src/platform/compat/path/resolution.d.ts.map +1 -1
  270. package/esm/src/platform/compat/path/resolution.js +65 -20
  271. package/esm/src/platform/compat/path/url-conversion.d.ts.map +1 -1
  272. package/esm/src/platform/compat/path/url-conversion.js +3 -2
  273. package/esm/src/platform/compat/process.d.ts +2 -14
  274. package/esm/src/platform/compat/process.d.ts.map +1 -1
  275. package/esm/src/platform/compat/process.js +92 -70
  276. package/esm/src/provider/index.d.ts +1 -1
  277. package/esm/src/provider/index.d.ts.map +1 -1
  278. package/esm/src/provider/index.js +1 -1
  279. package/esm/src/provider/local/ai-sdk-adapter.d.ts.map +1 -1
  280. package/esm/src/provider/local/ai-sdk-adapter.js +18 -18
  281. package/esm/src/provider/local/env.d.ts.map +1 -1
  282. package/esm/src/provider/local/env.js +2 -1
  283. package/esm/src/provider/local/local-embedding-adapter.d.ts +19 -0
  284. package/esm/src/provider/local/local-embedding-adapter.d.ts.map +1 -0
  285. package/esm/src/provider/local/local-embedding-adapter.js +32 -0
  286. package/esm/src/provider/local/local-embedding-engine.d.ts +17 -0
  287. package/esm/src/provider/local/local-embedding-engine.d.ts.map +1 -0
  288. package/esm/src/provider/local/local-embedding-engine.js +63 -0
  289. package/esm/src/provider/local/local-engine.d.ts +7 -0
  290. package/esm/src/provider/local/local-engine.d.ts.map +1 -1
  291. package/esm/src/provider/local/local-engine.js +1 -1
  292. package/esm/src/provider/local/model-catalog.d.ts +10 -1
  293. package/esm/src/provider/local/model-catalog.d.ts.map +1 -1
  294. package/esm/src/provider/local/model-catalog.js +61 -0
  295. package/esm/src/provider/model-registry.d.ts +10 -0
  296. package/esm/src/provider/model-registry.d.ts.map +1 -1
  297. package/esm/src/provider/model-registry.js +43 -0
  298. package/esm/src/proxy/retry.d.ts +3 -3
  299. package/esm/src/proxy/retry.d.ts.map +1 -1
  300. package/esm/src/proxy/retry.js +0 -7
  301. package/esm/src/proxy/tracing.d.ts +1 -5
  302. package/esm/src/proxy/tracing.d.ts.map +1 -1
  303. package/esm/src/proxy/tracing.js +1 -7
  304. package/esm/src/react/components/ai/agent-card.js +13 -13
  305. package/esm/src/react/components/ai/chat/components/animations.d.ts +5 -0
  306. package/esm/src/react/components/ai/chat/components/animations.d.ts.map +1 -1
  307. package/esm/src/react/components/ai/chat/components/animations.js +13 -1
  308. package/esm/src/react/components/ai/chat/components/attachment-pill.d.ts +15 -0
  309. package/esm/src/react/components/ai/chat/components/attachment-pill.d.ts.map +1 -0
  310. package/esm/src/react/components/ai/chat/components/attachment-pill.js +40 -0
  311. package/esm/src/react/components/ai/chat/components/branch-picker.d.ts +9 -0
  312. package/esm/src/react/components/ai/chat/components/branch-picker.d.ts.map +1 -0
  313. package/esm/src/react/components/ai/chat/components/branch-picker.js +17 -0
  314. package/esm/src/react/components/ai/chat/components/code-block.d.ts +8 -0
  315. package/esm/src/react/components/ai/chat/components/code-block.d.ts.map +1 -0
  316. package/esm/src/react/components/ai/chat/components/code-block.js +38 -0
  317. package/esm/src/react/components/ai/chat/components/drop-zone.d.ts +7 -0
  318. package/esm/src/react/components/ai/chat/components/drop-zone.d.ts.map +1 -0
  319. package/esm/src/react/components/ai/chat/components/drop-zone.js +14 -0
  320. package/esm/src/react/components/ai/chat/components/empty-state.d.ts.map +1 -1
  321. package/esm/src/react/components/ai/chat/components/empty-state.js +10 -8
  322. package/esm/src/react/components/ai/chat/components/inference-badge.js +1 -1
  323. package/esm/src/react/components/ai/chat/components/inline-citation.d.ts +10 -0
  324. package/esm/src/react/components/ai/chat/components/inline-citation.d.ts.map +1 -0
  325. package/esm/src/react/components/ai/chat/components/inline-citation.js +59 -0
  326. package/esm/src/react/components/ai/chat/components/message-actions.d.ts +3 -2
  327. package/esm/src/react/components/ai/chat/components/message-actions.d.ts.map +1 -1
  328. package/esm/src/react/components/ai/chat/components/message-actions.js +10 -10
  329. package/esm/src/react/components/ai/chat/components/message-edit-form.d.ts +8 -0
  330. package/esm/src/react/components/ai/chat/components/message-edit-form.d.ts.map +1 -0
  331. package/esm/src/react/components/ai/chat/components/message-edit-form.js +46 -0
  332. package/esm/src/react/components/ai/chat/components/message-feedback.d.ts +9 -0
  333. package/esm/src/react/components/ai/chat/components/message-feedback.d.ts.map +1 -0
  334. package/esm/src/react/components/ai/chat/components/message-feedback.js +19 -0
  335. package/esm/src/react/components/ai/chat/components/quick-actions.d.ts +14 -0
  336. package/esm/src/react/components/ai/chat/components/quick-actions.d.ts.map +1 -0
  337. package/esm/src/react/components/ai/chat/components/quick-actions.js +7 -0
  338. package/esm/src/react/components/ai/chat/components/reasoning.d.ts +3 -4
  339. package/esm/src/react/components/ai/chat/components/reasoning.d.ts.map +1 -1
  340. package/esm/src/react/components/ai/chat/components/reasoning.js +11 -6
  341. package/esm/src/react/components/ai/chat/components/sidebar.d.ts +14 -0
  342. package/esm/src/react/components/ai/chat/components/sidebar.d.ts.map +1 -0
  343. package/esm/src/react/components/ai/chat/components/sidebar.js +92 -0
  344. package/esm/src/react/components/ai/chat/components/skill-badge.d.ts +12 -0
  345. package/esm/src/react/components/ai/chat/components/skill-badge.d.ts.map +1 -0
  346. package/esm/src/react/components/ai/chat/components/skill-badge.js +34 -0
  347. package/esm/src/react/components/ai/chat/components/sources.d.ts +13 -0
  348. package/esm/src/react/components/ai/chat/components/sources.d.ts.map +1 -0
  349. package/esm/src/react/components/ai/chat/components/sources.js +28 -0
  350. package/esm/src/react/components/ai/chat/components/step-indicator.d.ts +8 -0
  351. package/esm/src/react/components/ai/chat/components/step-indicator.d.ts.map +1 -0
  352. package/esm/src/react/components/ai/chat/components/step-indicator.js +15 -0
  353. package/esm/src/react/components/ai/chat/components/tab-switcher.d.ts +16 -0
  354. package/esm/src/react/components/ai/chat/components/tab-switcher.d.ts.map +1 -0
  355. package/esm/src/react/components/ai/chat/components/tab-switcher.js +28 -0
  356. package/esm/src/react/components/ai/chat/components/tool-ui.d.ts.map +1 -1
  357. package/esm/src/react/components/ai/chat/components/tool-ui.js +23 -21
  358. package/esm/src/react/components/ai/chat/components/upgrade-cta.d.ts.map +1 -1
  359. package/esm/src/react/components/ai/chat/components/upgrade-cta.js +3 -3
  360. package/esm/src/react/components/ai/chat/components/uploads-panel.d.ts +16 -0
  361. package/esm/src/react/components/ai/chat/components/uploads-panel.d.ts.map +1 -0
  362. package/esm/src/react/components/ai/chat/components/uploads-panel.js +46 -0
  363. package/esm/src/react/components/ai/chat/composition/api.d.ts +10 -5
  364. package/esm/src/react/components/ai/chat/composition/api.d.ts.map +1 -1
  365. package/esm/src/react/components/ai/chat/composition/api.js +12 -20
  366. package/esm/src/react/components/ai/chat/composition/chat-composer.d.ts +35 -0
  367. package/esm/src/react/components/ai/chat/composition/chat-composer.d.ts.map +1 -0
  368. package/esm/src/react/components/ai/chat/composition/chat-composer.js +53 -0
  369. package/esm/src/react/components/ai/chat/composition/chat-empty.d.ts +20 -0
  370. package/esm/src/react/components/ai/chat/composition/chat-empty.d.ts.map +1 -0
  371. package/esm/src/react/components/ai/chat/composition/chat-empty.js +23 -0
  372. package/esm/src/react/components/ai/chat/composition/chat-if.d.ts +14 -0
  373. package/esm/src/react/components/ai/chat/composition/chat-if.d.ts.map +1 -0
  374. package/esm/src/react/components/ai/chat/composition/chat-if.js +11 -0
  375. package/esm/src/react/components/ai/chat/composition/chat-message-list.d.ts +36 -0
  376. package/esm/src/react/components/ai/chat/composition/chat-message-list.d.ts.map +1 -0
  377. package/esm/src/react/components/ai/chat/composition/chat-message-list.js +113 -0
  378. package/esm/src/react/components/ai/chat/composition/chat-root.d.ts +43 -0
  379. package/esm/src/react/components/ai/chat/composition/chat-root.d.ts.map +1 -0
  380. package/esm/src/react/components/ai/chat/composition/chat-root.js +78 -0
  381. package/esm/src/react/components/ai/chat/composition/error-banner.d.ts +12 -0
  382. package/esm/src/react/components/ai/chat/composition/error-banner.d.ts.map +1 -0
  383. package/esm/src/react/components/ai/chat/composition/error-banner.js +17 -0
  384. package/esm/src/react/components/ai/chat/composition/message.d.ts +54 -0
  385. package/esm/src/react/components/ai/chat/composition/message.d.ts.map +1 -0
  386. package/esm/src/react/components/ai/chat/composition/message.js +175 -0
  387. package/esm/src/react/components/ai/chat/composition/model-avatar.d.ts +14 -0
  388. package/esm/src/react/components/ai/chat/composition/model-avatar.d.ts.map +1 -0
  389. package/esm/src/react/components/ai/chat/composition/model-avatar.js +60 -0
  390. package/esm/src/react/components/ai/chat/contexts/chat-context.d.ts +45 -0
  391. package/esm/src/react/components/ai/chat/contexts/chat-context.d.ts.map +1 -0
  392. package/esm/src/react/components/ai/chat/contexts/chat-context.js +20 -0
  393. package/esm/src/react/components/ai/chat/contexts/composer-context.d.ts +34 -0
  394. package/esm/src/react/components/ai/chat/contexts/composer-context.d.ts.map +1 -0
  395. package/esm/src/react/components/ai/chat/contexts/composer-context.js +21 -0
  396. package/esm/src/react/components/ai/chat/contexts/index.d.ts +13 -0
  397. package/esm/src/react/components/ai/chat/contexts/index.d.ts.map +1 -0
  398. package/esm/src/react/components/ai/chat/contexts/index.js +12 -0
  399. package/esm/src/react/components/ai/chat/contexts/message-context.d.ts +30 -0
  400. package/esm/src/react/components/ai/chat/contexts/message-context.d.ts.map +1 -0
  401. package/esm/src/react/components/ai/chat/contexts/message-context.js +21 -0
  402. package/esm/src/react/components/ai/chat/contexts/thread-list-context.d.ts +23 -0
  403. package/esm/src/react/components/ai/chat/contexts/thread-list-context.d.ts.map +1 -0
  404. package/esm/src/react/components/ai/chat/contexts/thread-list-context.js +21 -0
  405. package/esm/src/react/components/ai/chat/hooks/use-threads.d.ts +24 -0
  406. package/esm/src/react/components/ai/chat/hooks/use-threads.d.ts.map +1 -0
  407. package/esm/src/react/components/ai/chat/hooks/use-threads.js +151 -0
  408. package/esm/src/react/components/ai/chat/index.d.ts +102 -17
  409. package/esm/src/react/components/ai/chat/index.d.ts.map +1 -1
  410. package/esm/src/react/components/ai/chat/index.js +164 -95
  411. package/esm/src/react/components/ai/chat/utils/export.d.ts +10 -0
  412. package/esm/src/react/components/ai/chat/utils/export.d.ts.map +1 -0
  413. package/esm/src/react/components/ai/chat/utils/export.js +64 -0
  414. package/esm/src/react/components/ai/chat/utils/message-parts.d.ts +12 -0
  415. package/esm/src/react/components/ai/chat/utils/message-parts.d.ts.map +1 -1
  416. package/esm/src/react/components/ai/chat/utils/message-parts.js +55 -0
  417. package/esm/src/react/components/ai/chat-with-sidebar.d.ts +98 -0
  418. package/esm/src/react/components/ai/chat-with-sidebar.d.ts.map +1 -0
  419. package/esm/src/react/components/ai/chat-with-sidebar.js +165 -0
  420. package/esm/src/react/components/ai/chat.d.ts +10 -1
  421. package/esm/src/react/components/ai/chat.d.ts.map +1 -1
  422. package/esm/src/react/components/ai/chat.js +25 -1
  423. package/esm/src/react/components/ai/error-boundary.js +6 -6
  424. package/esm/src/react/components/ai/icons/index.d.ts +9 -0
  425. package/esm/src/react/components/ai/icons/index.d.ts.map +1 -1
  426. package/esm/src/react/components/ai/icons/index.js +82 -0
  427. package/esm/src/react/components/ai/markdown.d.ts.map +1 -1
  428. package/esm/src/react/components/ai/markdown.js +12 -12
  429. package/esm/src/react/components/ai/model-selector.d.ts +10 -2
  430. package/esm/src/react/components/ai/model-selector.d.ts.map +1 -1
  431. package/esm/src/react/components/ai/model-selector.js +138 -4
  432. package/esm/src/react/components/ai/theme.d.ts +96 -13
  433. package/esm/src/react/components/ai/theme.d.ts.map +1 -1
  434. package/esm/src/react/components/ai/theme.js +177 -21
  435. package/esm/src/react/primitives/input-box.d.ts.map +1 -1
  436. package/esm/src/react/primitives/input-box.js +16 -3
  437. package/esm/src/rendering/cache/index.d.ts +1 -5
  438. package/esm/src/rendering/cache/index.d.ts.map +1 -1
  439. package/esm/src/rendering/cache/index.js +1 -5
  440. package/esm/src/rendering/component-handling.d.ts +2 -0
  441. package/esm/src/rendering/component-handling.d.ts.map +1 -1
  442. package/esm/src/rendering/component-handling.js +7 -9
  443. package/esm/src/rendering/orchestrator/pipeline.d.ts +11 -2
  444. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  445. package/esm/src/rendering/page-renderer.d.ts.map +1 -1
  446. package/esm/src/rendering/page-renderer.js +1 -0
  447. package/esm/src/rendering/shared/context-aware-cache.d.ts.map +1 -1
  448. package/esm/src/rendering/shared/context-aware-cache.js +0 -4
  449. package/esm/src/repositories/schemas/index.d.ts +1 -1
  450. package/esm/src/repositories/schemas/index.d.ts.map +1 -1
  451. package/esm/src/repositories/schemas/index.js +1 -1
  452. package/esm/src/repositories/schemas/repository.schema.d.ts +0 -11
  453. package/esm/src/repositories/schemas/repository.schema.d.ts.map +1 -1
  454. package/esm/src/repositories/schemas/repository.schema.js +0 -13
  455. package/esm/src/repositories/types.d.ts +1 -1
  456. package/esm/src/repositories/types.d.ts.map +1 -1
  457. package/esm/src/routing/api/module-loader/esbuild-plugin.d.ts.map +1 -1
  458. package/esm/src/routing/api/module-loader/esbuild-plugin.js +11 -24
  459. package/esm/src/routing/api/module-loader/loader.d.ts +1 -0
  460. package/esm/src/routing/api/module-loader/loader.d.ts.map +1 -1
  461. package/esm/src/routing/api/module-loader/loader.js +347 -27
  462. package/esm/src/routing/api/openapi/path-utils.d.ts +0 -19
  463. package/esm/src/routing/api/openapi/path-utils.d.ts.map +1 -1
  464. package/esm/src/routing/api/openapi/path-utils.js +0 -34
  465. package/esm/src/routing/api/openapi/spec-generator.d.ts.map +1 -1
  466. package/esm/src/routing/api/openapi/spec-generator.js +1 -19
  467. package/esm/src/routing/api/openapi/types.d.ts +1 -0
  468. package/esm/src/routing/api/openapi/types.d.ts.map +1 -1
  469. package/esm/src/routing/api/openapi/types.js +18 -0
  470. package/esm/src/sandbox/sandbox.d.ts +1 -0
  471. package/esm/src/sandbox/sandbox.d.ts.map +1 -1
  472. package/esm/src/sandbox/sandbox.js +7 -8
  473. package/esm/src/security/http/cors/constants.d.ts +0 -2
  474. package/esm/src/security/http/cors/constants.d.ts.map +1 -1
  475. package/esm/src/security/http/cors/constants.js +0 -2
  476. package/esm/src/security/http/response/index.d.ts +3 -4
  477. package/esm/src/security/http/response/index.d.ts.map +1 -1
  478. package/esm/src/security/http/response/index.js +2 -3
  479. package/esm/src/server/context/enriched-context.d.ts +0 -8
  480. package/esm/src/server/context/enriched-context.d.ts.map +1 -1
  481. package/esm/src/server/context/enriched-context.js +1 -12
  482. package/esm/src/server/dev-server/server.d.ts.map +1 -1
  483. package/esm/src/server/dev-server/server.js +11 -4
  484. package/esm/src/server/dev-ui/manifest.d.ts +20 -20
  485. package/esm/src/server/dev-ui/manifest.js +20 -20
  486. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts +9 -0
  487. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -0
  488. package/esm/src/server/handlers/dev/framework-candidates.generated.js +5187 -0
  489. package/esm/src/server/handlers/dev/styles-candidate-scanner.d.ts.map +1 -1
  490. package/esm/src/server/handlers/dev/styles-candidate-scanner.js +3 -190
  491. package/esm/src/server/handlers/request/module/module-server-handler.d.ts.map +1 -1
  492. package/esm/src/server/handlers/request/module/module-server-handler.js +1 -0
  493. package/esm/src/server/runtime-handler/index.d.ts.map +1 -1
  494. package/esm/src/server/runtime-handler/index.js +14 -24
  495. package/esm/src/server/shared/renderer/memory/pressure.d.ts +0 -7
  496. package/esm/src/server/shared/renderer/memory/pressure.d.ts.map +1 -1
  497. package/esm/src/server/shared/renderer/memory/pressure.js +1 -13
  498. package/esm/src/server/utils/domain-lookup.d.ts +0 -4
  499. package/esm/src/server/utils/domain-lookup.d.ts.map +1 -1
  500. package/esm/src/server/utils/domain-lookup.js +0 -3
  501. package/esm/src/skill/allowed-tools.d.ts +54 -0
  502. package/esm/src/skill/allowed-tools.d.ts.map +1 -0
  503. package/esm/src/skill/allowed-tools.js +87 -0
  504. package/esm/src/skill/executor.d.ts +28 -0
  505. package/esm/src/skill/executor.d.ts.map +1 -0
  506. package/esm/src/skill/executor.js +187 -0
  507. package/esm/src/skill/index.d.ts +19 -0
  508. package/esm/src/skill/index.d.ts.map +1 -0
  509. package/esm/src/skill/index.js +24 -0
  510. package/esm/src/skill/parser.d.ts +30 -0
  511. package/esm/src/skill/parser.d.ts.map +1 -0
  512. package/esm/src/skill/parser.js +162 -0
  513. package/esm/src/skill/path-safety.d.ts +22 -0
  514. package/esm/src/skill/path-safety.d.ts.map +1 -0
  515. package/esm/src/skill/path-safety.js +156 -0
  516. package/esm/src/skill/prompt-augmentation.d.ts +19 -0
  517. package/esm/src/skill/prompt-augmentation.d.ts.map +1 -0
  518. package/esm/src/skill/prompt-augmentation.js +36 -0
  519. package/esm/src/skill/registry.d.ts +25 -0
  520. package/esm/src/skill/registry.d.ts.map +1 -0
  521. package/esm/src/skill/registry.js +42 -0
  522. package/esm/src/skill/tools.d.ts +27 -0
  523. package/esm/src/skill/tools.d.ts.map +1 -0
  524. package/esm/src/skill/tools.js +149 -0
  525. package/esm/src/skill/types.d.ts +85 -0
  526. package/esm/src/skill/types.d.ts.map +1 -0
  527. package/esm/src/skill/types.js +27 -0
  528. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts +1 -1
  529. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts.map +1 -1
  530. package/esm/src/studio/bridge/bridge-bundle.generated.js +1 -1
  531. package/esm/src/studio/element-selector-injector.d.ts +0 -2
  532. package/esm/src/studio/element-selector-injector.d.ts.map +1 -1
  533. package/esm/src/task/runner.d.ts +6 -0
  534. package/esm/src/task/runner.d.ts.map +1 -1
  535. package/esm/src/task/runner.js +8 -8
  536. package/esm/src/tool/factory.js +31 -39
  537. package/esm/src/transforms/esm/http-cache-helpers.d.ts +0 -8
  538. package/esm/src/transforms/esm/http-cache-helpers.d.ts.map +1 -1
  539. package/esm/src/transforms/esm/http-cache-helpers.js +0 -20
  540. package/esm/src/transforms/esm/path-resolver.d.ts +0 -14
  541. package/esm/src/transforms/esm/path-resolver.d.ts.map +1 -1
  542. package/esm/src/transforms/esm/path-resolver.js +1 -92
  543. package/esm/src/transforms/esm/source-url-embed.d.ts +0 -14
  544. package/esm/src/transforms/esm/source-url-embed.d.ts.map +1 -1
  545. package/esm/src/transforms/esm/source-url-embed.js +0 -47
  546. package/esm/src/transforms/esm/transform-cache.d.ts.map +1 -1
  547. package/esm/src/transforms/esm/transform-cache.js +2 -6
  548. package/esm/src/transforms/mdx/index.d.ts +0 -1
  549. package/esm/src/transforms/mdx/index.d.ts.map +1 -1
  550. package/esm/src/transforms/mdx/index.js +0 -4
  551. package/esm/src/transforms/pipeline/context.d.ts +0 -1
  552. package/esm/src/transforms/pipeline/context.d.ts.map +1 -1
  553. package/esm/src/transforms/pipeline/context.js +0 -1
  554. package/esm/src/transforms/pipeline/index.d.ts +1 -2
  555. package/esm/src/transforms/pipeline/index.d.ts.map +1 -1
  556. package/esm/src/transforms/pipeline/index.js +0 -3
  557. package/esm/src/transforms/pipeline/stages/ssr-http-cache.d.ts.map +1 -1
  558. package/esm/src/transforms/pipeline/stages/ssr-http-cache.js +0 -1
  559. package/esm/src/transforms/plugins/rehype-node-positions.d.ts.map +1 -1
  560. package/esm/src/transforms/plugins/rehype-node-positions.js +1 -0
  561. package/esm/src/types/entities/getEntityInfo.js +1 -1
  562. package/esm/src/types/index.d.ts +2 -13
  563. package/esm/src/types/index.d.ts.map +1 -1
  564. package/esm/src/types/server.d.ts +2 -1
  565. package/esm/src/types/server.d.ts.map +1 -1
  566. package/esm/src/utils/cache-file-ops.d.ts +1 -1
  567. package/esm/src/utils/cache-file-ops.d.ts.map +1 -1
  568. package/esm/src/utils/cache-file-ops.js +5 -6
  569. package/esm/src/utils/lru-wrapper.d.ts.map +1 -1
  570. package/esm/src/utils/lru-wrapper.js +2 -4
  571. package/esm/src/workflow/claude-code/event-publisher.d.ts +0 -4
  572. package/esm/src/workflow/claude-code/event-publisher.d.ts.map +1 -1
  573. package/esm/src/workflow/claude-code/event-publisher.js +2 -6
  574. package/esm/src/workflow/executor/workflow-executor.d.ts.map +1 -1
  575. package/esm/src/workflow/executor/workflow-executor.js +6 -1
  576. package/esm/src/workflow/react/use-workflow-list.d.ts.map +1 -1
  577. package/esm/src/workflow/react/use-workflow-list.js +2 -1
  578. package/esm/src/workflow/schemas/workflow.schema.d.ts +8 -8
  579. package/package.json +10 -3
  580. package/src/cli/app/components/inline-input.ts +0 -5
  581. package/src/cli/app/components/list-select.ts +0 -21
  582. package/src/cli/app/operations/project-creation.ts +4 -109
  583. package/src/cli/app/shell.ts +2 -2
  584. package/src/cli/app/utils.ts +0 -22
  585. package/src/cli/app/views/dashboard.ts +0 -17
  586. package/src/cli/app/views/startup.ts +0 -13
  587. package/src/cli/auth/login.ts +1 -2
  588. package/src/cli/auth/token-store.ts +1 -1
  589. package/src/cli/auth/utils.ts +2 -1
  590. package/src/cli/commands/generate/integration-generator.ts +1 -1
  591. package/src/cli/commands/init/catalog.ts +3 -3
  592. package/src/cli/commands/init/command-help.ts +2 -2
  593. package/src/cli/commands/init/config-generator.ts +9 -0
  594. package/src/cli/commands/init/types.ts +1 -1
  595. package/src/cli/help/formatters.ts +11 -4
  596. package/src/cli/help/main-help.ts +2 -3
  597. package/src/cli/help/tips.ts +1 -1
  598. package/src/cli/mcp/remote-file-tools.ts +1 -1
  599. package/src/cli/mcp/server.ts +2 -5
  600. package/src/cli/mcp/tools/catalog-tools.ts +3 -3
  601. package/src/cli/mcp/tools/dev-tools.ts +1 -2
  602. package/src/cli/mcp/tools.ts +8 -2
  603. package/src/cli/shared/reserve-slug.ts +1 -4
  604. package/src/cli/sync/ignore.ts +26 -21
  605. package/src/cli/templates/index.ts +2 -2
  606. package/src/cli/templates/manifest.js +15 -13
  607. package/src/cli/templates/types.ts +1 -1
  608. package/src/cli/ui/colors.ts +0 -12
  609. package/src/cli/ui/dot-matrix.ts +3 -6
  610. package/src/cli/ui/tui.ts +3 -3
  611. package/src/cli/utils/index.ts +1 -1
  612. package/src/cli/utils/package-manager.ts +3 -4
  613. package/src/deno.js +30 -20
  614. package/src/src/agent/chat-handler.ts +138 -28
  615. package/src/src/agent/factory.ts +58 -9
  616. package/src/src/agent/index.ts +24 -2
  617. package/src/src/agent/memory/memory.ts +0 -9
  618. package/src/src/agent/react/index.ts +2 -0
  619. package/src/src/agent/react/use-chat/index.ts +2 -0
  620. package/src/src/agent/react/use-chat/streaming/handler.ts +66 -5
  621. package/src/src/agent/react/use-chat/streaming/parts-builder.ts +18 -1
  622. package/src/src/agent/react/use-chat/streaming/types.ts +6 -0
  623. package/src/src/agent/react/use-chat/types.ts +26 -1
  624. package/src/src/agent/react/use-chat/use-chat.ts +245 -36
  625. package/src/src/agent/runtime/index.ts +213 -35
  626. package/src/src/agent/runtime/tool-helpers.ts +9 -0
  627. package/src/src/agent/types.ts +10 -0
  628. package/src/src/ai/registry-manager.ts +2 -1
  629. package/src/src/build/bundler/code-splitter/manifest-builder.ts +1 -1
  630. package/src/src/build/compiler/mdx-compiler/validator.ts +3 -7
  631. package/src/src/build/compiler/mdx-to-js.ts +0 -101
  632. package/src/src/build/index.ts +0 -8
  633. package/src/src/build/production-build/build/route-collector.ts +2 -4
  634. package/src/src/build/production-build/client-runtime.ts +21 -5
  635. package/src/src/build/production-build/templates.ts +9 -18
  636. package/src/src/build/vendor-cache.ts +0 -6
  637. package/src/src/cache/tokenizing-gateway.ts +1 -9
  638. package/src/src/chat/index.ts +169 -34
  639. package/src/src/config/define-config.ts +30 -29
  640. package/src/src/config/loader.ts +10 -9
  641. package/src/src/config/schemas/config.schema.ts +12 -0
  642. package/src/src/data/data-fetcher.ts +15 -21
  643. package/src/src/data/server-data-fetcher.ts +1 -8
  644. package/src/src/data/static-data-fetcher.ts +1 -6
  645. package/src/src/discovery/discovery-engine.ts +27 -0
  646. package/src/src/discovery/discovery-utils.ts +0 -7
  647. package/src/src/discovery/file-discovery.ts +3 -9
  648. package/src/src/discovery/handlers/index.ts +1 -0
  649. package/src/src/discovery/handlers/skill-handler.ts +123 -0
  650. package/src/src/discovery/handlers/task-handler.ts +1 -5
  651. package/src/src/discovery/transpiler.ts +7 -2
  652. package/src/src/discovery/types.ts +3 -0
  653. package/src/src/embedding/chunk.ts +60 -0
  654. package/src/src/embedding/embedding.ts +62 -0
  655. package/src/src/embedding/index.ts +49 -0
  656. package/src/src/embedding/react/use-uploads.ts +101 -0
  657. package/src/src/embedding/resolve.ts +126 -0
  658. package/src/src/embedding/types.ts +103 -0
  659. package/src/src/embedding/upload-handler.ts +180 -0
  660. package/src/src/embedding/upload-loader.ts +76 -0
  661. package/src/src/embedding/upload-store.ts +299 -0
  662. package/src/src/embedding/vector-store.ts +282 -0
  663. package/src/src/errors/error-registry.ts +2 -2
  664. package/src/src/errors/http-error.ts +7 -3
  665. package/src/src/errors/middleware/cli-error-boundary.ts +28 -2
  666. package/src/src/errors/middleware/wrap-unknown.ts +0 -10
  667. package/src/src/errors/veryfront-error.ts +0 -9
  668. package/src/src/html/styles-builder/css-hash-cache.ts +5 -2
  669. package/src/src/html/styles-builder/plugin-loader.ts +58 -21
  670. package/src/src/html/styles-builder/tailwind-compiler-cache.ts +11 -4
  671. package/src/src/html/utils.ts +0 -33
  672. package/src/src/modules/component-registry/registry.ts +0 -3
  673. package/src/src/modules/import-map/default-import-map.ts +10 -0
  674. package/src/src/modules/react-loader/component-loader.ts +1 -0
  675. package/src/src/modules/react-loader/ssr-module-loader/loader.ts +12 -1
  676. package/src/src/modules/react-loader/ssr-module-loader/types.ts +2 -0
  677. package/src/src/modules/react-loader/types.ts +2 -0
  678. package/src/src/modules/server/module-server.ts +4 -1
  679. package/src/src/modules/server/websocket-handler.ts +1 -1
  680. package/src/src/oauth/handlers/callback-handler.ts +17 -5
  681. package/src/src/oauth/providers/base.ts +3 -3
  682. package/src/src/oauth/providers/common.ts +0 -23
  683. package/src/src/observability/auto-instrument/react-instrumentation.ts +2 -2
  684. package/src/src/observability/instruments/instruments-factory.ts +6 -6
  685. package/src/src/observability/metrics/config.ts +5 -5
  686. package/src/src/observability/metrics/manager.ts +1 -1
  687. package/src/src/observability/tracing/span-operations.ts +14 -9
  688. package/src/src/platform/compat/console/node.ts +4 -14
  689. package/src/src/platform/compat/fs.ts +14 -3
  690. package/src/src/platform/compat/opaque-deps.ts +32 -2
  691. package/src/src/platform/compat/path/basic-operations.ts +19 -10
  692. package/src/src/platform/compat/path/resolution.ts +69 -18
  693. package/src/src/platform/compat/path/url-conversion.ts +10 -6
  694. package/src/src/platform/compat/process.ts +133 -76
  695. package/src/src/provider/index.ts +1 -0
  696. package/src/src/provider/local/ai-sdk-adapter.ts +40 -37
  697. package/src/src/provider/local/env.ts +4 -1
  698. package/src/src/provider/local/local-embedding-adapter.ts +37 -0
  699. package/src/src/provider/local/local-embedding-engine.ts +88 -0
  700. package/src/src/provider/local/local-engine.ts +1 -1
  701. package/src/src/provider/local/model-catalog.ts +67 -1
  702. package/src/src/provider/model-registry.ts +47 -0
  703. package/src/src/proxy/retry.ts +0 -9
  704. package/src/src/proxy/tracing.ts +1 -9
  705. package/src/src/react/components/ai/agent-card.tsx +13 -13
  706. package/src/src/react/components/ai/chat/components/animations.tsx +31 -1
  707. package/src/src/react/components/ai/chat/components/attachment-pill.tsx +110 -0
  708. package/src/src/react/components/ai/chat/components/branch-picker.tsx +70 -0
  709. package/src/src/react/components/ai/chat/components/code-block.tsx +82 -0
  710. package/src/src/react/components/ai/chat/components/drop-zone.tsx +49 -0
  711. package/src/src/react/components/ai/chat/components/empty-state.tsx +20 -8
  712. package/src/src/react/components/ai/chat/components/inference-badge.tsx +1 -1
  713. package/src/src/react/components/ai/chat/components/inline-citation.tsx +150 -0
  714. package/src/src/react/components/ai/chat/components/message-actions.tsx +73 -51
  715. package/src/src/react/components/ai/chat/components/message-edit-form.tsx +95 -0
  716. package/src/src/react/components/ai/chat/components/message-feedback.tsx +72 -0
  717. package/src/src/react/components/ai/chat/components/quick-actions.tsx +38 -0
  718. package/src/src/react/components/ai/chat/components/reasoning.tsx +40 -35
  719. package/src/src/react/components/ai/chat/components/sidebar.tsx +204 -0
  720. package/src/src/react/components/ai/chat/components/skill-badge.tsx +51 -0
  721. package/src/src/react/components/ai/chat/components/sources.tsx +99 -0
  722. package/src/src/react/components/ai/chat/components/step-indicator.tsx +33 -0
  723. package/src/src/react/components/ai/chat/components/tab-switcher.tsx +69 -0
  724. package/src/src/react/components/ai/chat/components/tool-ui.tsx +31 -29
  725. package/src/src/react/components/ai/chat/components/upgrade-cta.tsx +3 -4
  726. package/src/src/react/components/ai/chat/components/uploads-panel.tsx +129 -0
  727. package/src/src/react/components/ai/chat/composition/api.tsx +12 -62
  728. package/src/src/react/components/ai/chat/composition/chat-composer.tsx +205 -0
  729. package/src/src/react/components/ai/chat/composition/chat-empty.tsx +77 -0
  730. package/src/src/react/components/ai/chat/composition/chat-if.tsx +25 -0
  731. package/src/src/react/components/ai/chat/composition/chat-message-list.tsx +356 -0
  732. package/src/src/react/components/ai/chat/composition/chat-root.tsx +181 -0
  733. package/src/src/react/components/ai/chat/composition/error-banner.tsx +38 -0
  734. package/src/src/react/components/ai/chat/composition/message.tsx +337 -0
  735. package/src/src/react/components/ai/chat/composition/model-avatar.tsx +103 -0
  736. package/src/src/react/components/ai/chat/contexts/chat-context.tsx +78 -0
  737. package/src/src/react/components/ai/chat/contexts/composer-context.tsx +59 -0
  738. package/src/src/react/components/ai/chat/contexts/index.ts +36 -0
  739. package/src/src/react/components/ai/chat/contexts/message-context.tsx +49 -0
  740. package/src/src/react/components/ai/chat/contexts/thread-list-context.tsx +40 -0
  741. package/src/src/react/components/ai/chat/hooks/use-threads.ts +208 -0
  742. package/src/src/react/components/ai/chat/index.tsx +389 -230
  743. package/src/src/react/components/ai/chat/utils/export.ts +77 -0
  744. package/src/src/react/components/ai/chat/utils/message-parts.ts +63 -1
  745. package/src/src/react/components/ai/chat-with-sidebar.tsx +371 -0
  746. package/src/src/react/components/ai/chat.tsx +122 -7
  747. package/src/src/react/components/ai/error-boundary.tsx +6 -6
  748. package/src/src/react/components/ai/icons/index.ts +100 -0
  749. package/src/src/react/components/ai/markdown.tsx +12 -15
  750. package/src/src/react/components/ai/model-selector.tsx +223 -15
  751. package/src/src/react/components/ai/theme.ts +205 -39
  752. package/src/src/react/primitives/input-box.tsx +27 -4
  753. package/src/src/rendering/cache/index.ts +12 -5
  754. package/src/src/rendering/component-handling.ts +9 -9
  755. package/src/src/rendering/orchestrator/pipeline.ts +12 -2
  756. package/src/src/rendering/page-renderer.ts +1 -0
  757. package/src/src/rendering/renderer.ts +1 -1
  758. package/src/src/rendering/shared/context-aware-cache.ts +0 -5
  759. package/src/src/repositories/schemas/index.ts +0 -2
  760. package/src/src/repositories/schemas/repository.schema.ts +0 -15
  761. package/src/src/repositories/types.ts +1 -6
  762. package/src/src/routing/api/module-loader/esbuild-plugin.ts +11 -25
  763. package/src/src/routing/api/module-loader/loader.ts +421 -17
  764. package/src/src/routing/api/openapi/path-utils.ts +0 -39
  765. package/src/src/routing/api/openapi/spec-generator.ts +1 -20
  766. package/src/src/routing/api/openapi/types.ts +20 -0
  767. package/src/src/sandbox/sandbox.ts +8 -8
  768. package/src/src/security/http/cors/constants.ts +0 -4
  769. package/src/src/security/http/response/index.ts +3 -9
  770. package/src/src/server/context/enriched-context.ts +1 -19
  771. package/src/src/server/dev-server/server.ts +11 -4
  772. package/src/src/server/dev-ui/manifest.js +20 -20
  773. package/src/src/server/handlers/dev/framework-candidates.generated.ts +5188 -0
  774. package/src/src/server/handlers/dev/styles-candidate-scanner.ts +3 -191
  775. package/src/src/server/handlers/request/module/module-server-handler.ts +1 -0
  776. package/src/src/server/runtime-handler/index.ts +17 -28
  777. package/src/src/server/shared/renderer/memory/pressure.ts +2 -15
  778. package/src/src/server/utils/domain-lookup.ts +0 -4
  779. package/src/src/skill/allowed-tools.ts +107 -0
  780. package/src/src/skill/executor.ts +215 -0
  781. package/src/src/skill/index.ts +60 -0
  782. package/src/src/skill/parser.ts +214 -0
  783. package/src/src/skill/path-safety.ts +203 -0
  784. package/src/src/skill/prompt-augmentation.ts +48 -0
  785. package/src/src/skill/registry.ts +51 -0
  786. package/src/src/skill/tools.ts +197 -0
  787. package/src/src/skill/types.ts +107 -0
  788. package/src/src/studio/bridge/bridge-bundle.generated.ts +1 -1
  789. package/src/src/studio/element-selector-injector.ts +0 -2
  790. package/src/src/task/runner.ts +10 -8
  791. package/src/src/tool/factory.ts +54 -54
  792. package/src/src/transforms/esm/http-cache-helpers.ts +0 -20
  793. package/src/src/transforms/esm/path-resolver.ts +1 -140
  794. package/src/src/transforms/esm/source-url-embed.ts +0 -53
  795. package/src/src/transforms/esm/transform-cache.ts +3 -7
  796. package/src/src/transforms/mdx/index.ts +0 -5
  797. package/src/src/transforms/pipeline/context.ts +0 -2
  798. package/src/src/transforms/pipeline/index.ts +0 -4
  799. package/src/src/transforms/pipeline/stages/ssr-http-cache.ts +0 -1
  800. package/src/src/transforms/plugins/rehype-node-positions.ts +1 -0
  801. package/src/src/types/entities/getEntityInfo.ts +1 -1
  802. package/src/src/types/index.ts +1 -20
  803. package/src/src/types/server.ts +1 -1
  804. package/src/src/utils/cache-file-ops.ts +5 -5
  805. package/src/src/utils/logger/logger.ts +2 -2
  806. package/src/src/utils/lru-wrapper.ts +2 -8
  807. package/src/src/workflow/claude-code/event-publisher.ts +13 -4
  808. package/src/src/workflow/executor/workflow-executor.ts +7 -2
  809. package/src/src/workflow/react/use-workflow-list.ts +3 -2
  810. package/esm/src/transforms/mdx/parser.d.ts +0 -4
  811. package/esm/src/transforms/mdx/parser.d.ts.map +0 -1
  812. package/esm/src/transforms/mdx/parser.js +0 -49
  813. package/src/src/transforms/mdx/parser.ts +0 -65
@@ -31,9 +31,70 @@ const MODEL_CATALOG = {
31
31
  sizeMB: 1000,
32
32
  description: "SmolLM2 1.7B — highest quality local model",
33
33
  },
34
+ "qwen3-1.7b": {
35
+ hfId: "onnx-community/Qwen3-1.7B-ONNX",
36
+ dtype: "q4",
37
+ sizeMB: 1200,
38
+ description: "Qwen3 1.7B — strong multilingual reasoning and tool use",
39
+ },
40
+ "gemma3-1b": {
41
+ hfId: "onnx-community/gemma-3-1b-it-ONNX",
42
+ dtype: "q4",
43
+ sizeMB: 700,
44
+ description: "Gemma 3 1B — Google's compact instruction-tuned model",
45
+ },
34
46
  };
35
47
  /** Default model used when no specific model ID is provided */
36
48
  export const DEFAULT_LOCAL_MODEL = "smollm2-135m";
49
+ /**
50
+ * Catalog of supported local embedding models.
51
+ *
52
+ * Uses the same `q4` quantization as language models for consistency.
53
+ */
54
+ const EMBEDDING_MODEL_CATALOG = {
55
+ "all-MiniLM-L6-v2": {
56
+ hfId: "Xenova/all-MiniLM-L6-v2",
57
+ dtype: "q4",
58
+ sizeMB: 23,
59
+ description: "All-MiniLM-L6-v2 — fast 384-dim embeddings",
60
+ },
61
+ "nomic-embed-text-v1.5": {
62
+ hfId: "nomic-ai/nomic-embed-text-v1.5",
63
+ dtype: "q4",
64
+ sizeMB: 130,
65
+ description: "Nomic Embed Text v1.5 — 768-dim, variable-length embeddings",
66
+ },
67
+ "bge-base-en-v1.5": {
68
+ hfId: "Xenova/bge-base-en-v1.5",
69
+ dtype: "q4",
70
+ sizeMB: 110,
71
+ description: "BGE Base EN v1.5 — 768-dim, strong English embeddings",
72
+ },
73
+ "qwen3-embedding-0.6b": {
74
+ hfId: "onnx-community/Qwen3-Embedding-0.6B-ONNX",
75
+ dtype: "q8",
76
+ sizeMB: 620,
77
+ pooling: "last_token",
78
+ description: "Qwen3 Embedding 0.6B — SOTA multilingual embeddings",
79
+ },
80
+ };
81
+ /** Default embedding model used when no specific model ID is provided */
82
+ export const DEFAULT_LOCAL_EMBEDDING_MODEL = "all-MiniLM-L6-v2";
83
+ /**
84
+ * Resolve a friendly embedding model ID to its HuggingFace model info.
85
+ * Falls back to treating the ID as a raw HuggingFace repository ID.
86
+ */
87
+ export function resolveLocalEmbeddingModel(modelId) {
88
+ const catalogEntry = EMBEDDING_MODEL_CATALOG[modelId];
89
+ if (catalogEntry)
90
+ return catalogEntry;
91
+ return {
92
+ hfId: modelId,
93
+ dtype: "q4",
94
+ sizeMB: 0,
95
+ description: `Custom embedding model: ${modelId}`,
96
+ };
97
+ }
37
98
  /**
38
99
  * Resolve a friendly model ID to its HuggingFace model info.
39
100
  * Falls back to treating the ID as a raw HuggingFace repository ID.
@@ -24,6 +24,16 @@ export type ModelProviderFactory = (modelId: string) => LanguageModel;
24
24
  * ```
25
25
  */
26
26
  export declare function registerModelProvider(name: string, factory: ModelProviderFactory): void;
27
+ /**
28
+ * Find the first cloud provider with a valid API key.
29
+ *
30
+ * Returns a "provider/model" string that can be passed to `resolveModel`,
31
+ * or `null` if no cloud provider is available.
32
+ *
33
+ * This is intentionally a **query** — it does NOT resolve the model.
34
+ * The caller (agent runtime) decides whether to use it.
35
+ */
36
+ export declare function findAvailableCloudModel(): string | null;
27
37
  /**
28
38
  * Resolve a "provider/model" string to an AI SDK LanguageModel instance.
29
39
  *
@@ -1 +1 @@
1
- {"version":3,"file":"model-registry.d.ts","sourceRoot":"","sources":["../../../src/src/provider/model-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAmBxC,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,CAAC;AAOtE;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,GAC5B,IAAI,CAEN;AAoFD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CA+D/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,EAAE,CAGtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C"}
1
+ {"version":3,"file":"model-registry.d.ts","sourceRoot":"","sources":["../../../src/src/provider/model-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAmBxC,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,CAAC;AAOtE;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,GAC5B,IAAI,CAEN;AAgHD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAQvD;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CA+D/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,EAAE,CAGtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C"}
@@ -104,6 +104,49 @@ function autoInitializeFromEnv() {
104
104
  });
105
105
  }
106
106
  }
107
+ /**
108
+ * Default cloud models to try when auto-upgrading from a local model.
109
+ * Ordered by preference: Anthropic → OpenAI → Google.
110
+ *
111
+ * NOTE: model IDs are hardcoded — update when default models change.
112
+ */
113
+ const CLOUD_UPGRADE_CANDIDATES = [
114
+ {
115
+ provider: "anthropic",
116
+ model: "claude-sonnet-4-20250514",
117
+ hasKey: () => !!getAnthropicEnvConfig().apiKey,
118
+ },
119
+ {
120
+ provider: "openai",
121
+ model: "gpt-4o-mini",
122
+ hasKey: () => !!getOpenAIEnvConfig().apiKey,
123
+ },
124
+ {
125
+ provider: "google",
126
+ model: "gemini-2.0-flash",
127
+ hasKey: () => !!getGoogleGenAIEnvConfig().apiKey,
128
+ },
129
+ ];
130
+ /**
131
+ * Find the first cloud provider with a valid API key.
132
+ *
133
+ * Returns a "provider/model" string that can be passed to `resolveModel`,
134
+ * or `null` if no cloud provider is available.
135
+ *
136
+ * This is intentionally a **query** — it does NOT resolve the model.
137
+ * The caller (agent runtime) decides whether to use it.
138
+ */
139
+ export function findAvailableCloudModel() {
140
+ autoInitializeFromEnv();
141
+ for (const { provider, model, hasKey } of CLOUD_UPGRADE_CANDIDATES) {
142
+ if (!hasKey())
143
+ continue;
144
+ if (!manager.has(provider))
145
+ continue;
146
+ return `${provider}/${model}`;
147
+ }
148
+ return null;
149
+ }
107
150
  /**
108
151
  * Resolve a "provider/model" string to an AI SDK LanguageModel instance.
109
152
  *
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * Retry utilities for the proxy server.
3
3
  */
4
- export declare function isRetryableConnectionError(error: unknown): boolean;
5
4
  /**
6
- * Sleep for the specified number of milliseconds.
5
+ * Check if a fetch error is a transient connection error worth retrying.
6
+ * These occur when renderer pods are being recycled or temporarily unavailable.
7
7
  */
8
- export declare function sleep(ms: number): Promise<void>;
8
+ export declare function isRetryableConnectionError(error: unknown): boolean;
9
9
  //# sourceMappingURL=retry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/retry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUlE;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/retry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUlE"}
@@ -5,7 +5,6 @@
5
5
  * Check if a fetch error is a transient connection error worth retrying.
6
6
  * These occur when renderer pods are being recycled or temporarily unavailable.
7
7
  */
8
- import * as dntShim from "../../_dnt.shims.js";
9
8
  export function isRetryableConnectionError(error) {
10
9
  if (!(error instanceof Error))
11
10
  return false;
@@ -17,9 +16,3 @@ export function isRetryableConnectionError(error) {
17
16
  msg.includes("os error 111") // ECONNREFUSED
18
17
  );
19
18
  }
20
- /**
21
- * Sleep for the specified number of milliseconds.
22
- */
23
- export function sleep(ms) {
24
- return new Promise((resolve) => dntShim.setTimeout(resolve, ms));
25
- }
@@ -4,9 +4,8 @@
4
4
  */
5
5
  import * as dntShim from "../../_dnt.shims.js";
6
6
  import type { Context, Span } from "@opentelemetry/api";
7
- export declare function initializeOTLP(): Promise<void>;
7
+ export declare function initializeOTLPWithApis(): Promise<void>;
8
8
  export declare function shutdownOTLP(): Promise<void>;
9
- export declare function isOTLPEnabled(): boolean;
10
9
  export declare function extractContext(headers: dntShim.Headers): Context | undefined;
11
10
  export declare function injectContext(headers: dntShim.Headers): void;
12
11
  export declare function startServerSpan(method: string, path: string, parentContext?: Context): {
@@ -23,8 +22,6 @@ export declare function getTraceContext(): {
23
22
  * Span names for proxy tracing.
24
23
  */
25
24
  export declare const ProxySpanNames: {
26
- readonly PROXY_REQUEST: "proxy.request";
27
- readonly PROXY_PROCESS: "proxy.process";
28
25
  readonly PROXY_TOKEN_FETCH: "proxy.token_fetch";
29
26
  readonly PROXY_DOMAIN_LOOKUP: "proxy.domain_lookup";
30
27
  readonly OAUTH_TOKEN_REQUEST: "oauth.token_request";
@@ -35,5 +32,4 @@ export declare const ProxySpanNames: {
35
32
  * If tracing is disabled, executes the function directly.
36
33
  */
37
34
  export declare function withSpan<T>(name: string, fn: () => Promise<T>, attributes?: Record<string, string | number | boolean>): Promise<T>;
38
- export { initializeOTLP as initializeOTLPWithApis };
39
35
  //# sourceMappingURL=tracing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracing.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/tracing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAG/C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAU,MAAM,oBAAoB,CAAC;AAgEhE,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDpD;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CASlD;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAOD,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,GAAG,SAAS,CAgB5E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,IAAI,CAgB5D;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,OAAO,GACtB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAMzC;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAiBvF;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAGrF;AAWD,wBAAgB,eAAe,IAAI;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAIvE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACrD,OAAO,CAAC,CAAC,CAAC,CA0BZ;AAED,OAAO,EAAE,cAAc,IAAI,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"tracing.d.ts","sourceRoot":"","sources":["../../../src/src/proxy/tracing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAG/C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAU,MAAM,oBAAoB,CAAC;AAgEhE,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAyD5D;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CASlD;AAOD,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,GAAG,SAAS,CAgB5E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,IAAI,CAgB5D;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,OAAO,GACtB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAMzC;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAiBvF;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAGrF;AAWD,wBAAgB,eAAe,IAAI;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAIvE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GACrD,OAAO,CAAC,CAAC,CAAC,CA0BZ"}
@@ -49,7 +49,7 @@ async function loadApis() {
49
49
  traceApi = await import("@opentelemetry/api");
50
50
  propagationApi = await import("@opentelemetry/core");
51
51
  }
52
- export async function initializeOTLP() {
52
+ export async function initializeOTLPWithApis() {
53
53
  if (initialized)
54
54
  return;
55
55
  const config = getConfig();
@@ -106,9 +106,6 @@ export async function shutdownOTLP() {
106
106
  console.warn("[otel] Shutdown error", { error });
107
107
  }
108
108
  }
109
- export function isOTLPEnabled() {
110
- return initialized && tracerProvider !== null;
111
- }
112
109
  function getPropagator() {
113
110
  if (!propagationApi)
114
111
  return null;
@@ -181,8 +178,6 @@ export function getTraceContext() {
181
178
  * Span names for proxy tracing.
182
179
  */
183
180
  export const ProxySpanNames = {
184
- PROXY_REQUEST: "proxy.request",
185
- PROXY_PROCESS: "proxy.process",
186
181
  PROXY_TOKEN_FETCH: "proxy.token_fetch",
187
182
  PROXY_DOMAIN_LOOKUP: "proxy.domain_lookup",
188
183
  OAUTH_TOKEN_REQUEST: "oauth.token_request",
@@ -216,4 +211,3 @@ export async function withSpan(name, fn, attributes) {
216
211
  span.end();
217
212
  }
218
213
  }
219
- export { initializeOTLP as initializeOTLPWithApis };
@@ -9,7 +9,7 @@ export const AgentCard = React.forwardRef(({ messages, toolCalls = [], status, t
9
9
  ? React.createElement(ToolResult, { output: tool.result, className: theme.toolResult })
10
10
  : null,
11
11
  tool.error
12
- ? (React.createElement("div", { className: "mt-2 p-3 bg-red-50 dark:bg-red-900/20 text-red-900 dark:text-red-100 rounded-xl text-sm border border-red-200 dark:border-red-800" },
12
+ ? (React.createElement("div", { className: "mt-2 p-3 bg-red-50 text-red-900 rounded-xl text-sm border border-red-200" },
13
13
  "Error: ",
14
14
  tool.error))
15
15
  : null)));
@@ -24,22 +24,22 @@ export const AgentCard = React.forwardRef(({ messages, toolCalls = [], status, t
24
24
  : null,
25
25
  hasToolCalls
26
26
  ? (React.createElement("div", { className: "space-y-3" },
27
- React.createElement("h3", { className: "text-sm font-semibold text-neutral-700 dark:text-neutral-300" }, "Tool Calls"),
27
+ React.createElement("h3", { className: "text-sm font-semibold text-[var(--card-foreground)]" }, "Tool Calls"),
28
28
  React.createElement("div", { className: "space-y-3" }, toolCalls.map((tool) => (React.createElement(React.Fragment, { key: tool.id }, toolRenderer(tool)))))))
29
29
  : null,
30
30
  hasMessages
31
31
  ? (React.createElement("div", { className: "space-y-3" },
32
- React.createElement("h3", { className: "text-sm font-semibold text-neutral-700 dark:text-neutral-300" }, "Messages"),
32
+ React.createElement("h3", { className: "text-sm font-semibold text-[var(--card-foreground)]" }, "Messages"),
33
33
  React.createElement("div", { className: "space-y-2 max-h-96 overflow-y-auto" }, messages.map((msg) => {
34
34
  const text = msg.parts
35
35
  ?.filter((p) => p.type === "text")
36
36
  .map((p) => p.text)
37
37
  .join("") ?? "";
38
- return (React.createElement("div", { key: msg.id, className: "text-sm p-3 rounded-xl bg-neutral-50 dark:bg-neutral-800" },
39
- React.createElement("span", { className: "font-semibold capitalize text-neutral-900 dark:text-neutral-100" },
38
+ return (React.createElement("div", { key: msg.id, className: "text-sm p-3 rounded-xl bg-[var(--accent)]" },
39
+ React.createElement("span", { className: "font-semibold capitalize text-[var(--foreground)]" },
40
40
  msg.role,
41
41
  ":"),
42
- React.createElement("span", { className: "text-neutral-600 dark:text-neutral-400 ml-1" },
42
+ React.createElement("span", { className: "text-[var(--card-foreground)] ml-1" },
43
43
  text.substring(0, 200),
44
44
  text.length > 200 ? "..." : "")));
45
45
  }))))
@@ -49,18 +49,18 @@ AgentCard.displayName = "AgentCard";
49
49
  function getStatusColor(status) {
50
50
  switch (status) {
51
51
  case "idle":
52
- return "bg-neutral-100 text-neutral-700 dark:bg-neutral-800 dark:text-neutral-300";
52
+ return "bg-[var(--accent)] text-[var(--card-foreground)]";
53
53
  case "thinking":
54
- return "bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300";
54
+ return "bg-blue-100 text-blue-700";
55
55
  case "tool_execution":
56
- return "bg-violet-100 text-violet-700 dark:bg-violet-900/30 dark:text-violet-300";
56
+ return "bg-violet-100 text-violet-700";
57
57
  case "streaming":
58
- return "bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-300";
58
+ return "bg-green-100 text-green-700";
59
59
  case "completed":
60
- return "bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300";
60
+ return "bg-emerald-100 text-emerald-700";
61
61
  case "error":
62
- return "bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-300";
62
+ return "bg-red-100 text-red-700";
63
63
  default:
64
- return "bg-neutral-100 text-neutral-700 dark:bg-neutral-800 dark:text-neutral-300";
64
+ return "bg-[var(--accent)] text-[var(--card-foreground)]";
65
65
  }
66
66
  }
@@ -6,4 +6,9 @@ export declare function Loader({ className, size, }: {
6
6
  className?: string;
7
7
  size?: number;
8
8
  }): React.ReactElement;
9
+ export declare function FadeIn({ children, duration, className, }: {
10
+ children: React.ReactNode;
11
+ duration?: number;
12
+ className?: string;
13
+ }): React.ReactElement;
9
14
  //# sourceMappingURL=animations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"animations.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/animations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,GAAG,KAAK,CAAC,YAAY,CAMvF;AAED,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,IAAS,GACV,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,KAAK,CAAC,YAAY,CAcrB"}
1
+ {"version":3,"file":"animations.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/animations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,GAAG,KAAK,CAAC,YAAY,CAMvF;AAED,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,IAAS,GACV,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,KAAK,CAAC,YAAY,CAcrB;AAED,wBAAgB,MAAM,CAAC,EACrB,QAAQ,EACR,QAAc,EACd,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,YAAY,CAoBrB"}
@@ -6,5 +6,17 @@ export function Shimmer({ children }) {
6
6
  }
7
7
  export function Loader({ className, size = 16, }) {
8
8
  const dotSize = size / 4;
9
- return (React.createElement("div", { className: cn("flex items-center gap-1", className) }, ["0ms", "150ms", "300ms"].map((animationDelay) => (React.createElement("span", { key: animationDelay, className: "animate-bounce rounded-full bg-muted-foreground", style: { width: dotSize, height: dotSize, animationDelay } })))));
9
+ return (React.createElement("div", { className: cn("flex items-center gap-1", className) }, ["0ms", "150ms", "300ms"].map((animationDelay) => (React.createElement("span", { key: animationDelay, className: "animate-bounce rounded-full bg-[var(--muted-foreground)]", style: { width: dotSize, height: dotSize, animationDelay } })))));
10
+ }
11
+ export function FadeIn({ children, duration = 300, className, }) {
12
+ const [mounted, setMounted] = React.useState(false);
13
+ React.useEffect(() => {
14
+ const frame = requestAnimationFrame(() => setMounted(true));
15
+ return () => cancelAnimationFrame(frame);
16
+ }, []);
17
+ return (React.createElement("div", { className: className, style: {
18
+ opacity: mounted ? 1 : 0,
19
+ transform: mounted ? "translateY(0)" : "translateY(8px)",
20
+ transition: `opacity ${duration}ms ease-out, transform ${duration}ms ease-out`,
21
+ } }, children));
10
22
  }
@@ -0,0 +1,15 @@
1
+ import * as React from "react";
2
+ export interface AttachmentInfo {
3
+ id: string;
4
+ name: string;
5
+ status?: "uploading" | "ready";
6
+ type?: string;
7
+ size?: number;
8
+ preview?: string;
9
+ }
10
+ export interface AttachmentPillProps {
11
+ attachment: AttachmentInfo;
12
+ onRemove?: (id: string) => void;
13
+ }
14
+ export declare function AttachmentPill({ attachment, onRemove, }: AttachmentPillProps): React.ReactElement;
15
+ //# sourceMappingURL=attachment-pill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment-pill.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/attachment-pill.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,cAAc,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAsBD,wBAAgB,cAAc,CAAC,EAC7B,UAAU,EACV,QAAQ,GACT,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAqE1C"}
@@ -0,0 +1,40 @@
1
+ import * as React from "react";
2
+ import { cn } from "../../theme.js";
3
+ const FILE_TYPE_COLORS = {
4
+ pdf: "text-red-500 bg-red-500/10",
5
+ docx: "text-blue-500 bg-blue-500/10",
6
+ csv: "text-emerald-500 bg-emerald-500/10",
7
+ txt: "text-neutral-500 bg-neutral-500/10",
8
+ md: "text-purple-500 bg-purple-500/10",
9
+ mdx: "text-purple-500 bg-purple-500/10",
10
+ };
11
+ function getExtension(name) {
12
+ const dot = name.lastIndexOf(".");
13
+ return dot >= 0 ? name.slice(dot + 1).toLowerCase() : "";
14
+ }
15
+ function formatSize(bytes) {
16
+ if (bytes < 1024)
17
+ return `${bytes} B`;
18
+ if (bytes < 1024 * 1024)
19
+ return `${(bytes / 1024).toFixed(0)} KB`;
20
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
21
+ }
22
+ export function AttachmentPill({ attachment, onRemove, }) {
23
+ const [showPreview, setShowPreview] = React.useState(false);
24
+ const ext = attachment.type ?? getExtension(attachment.name);
25
+ const colorClass = FILE_TYPE_COLORS[ext] ?? "text-neutral-400 bg-neutral-400/10";
26
+ return (React.createElement("span", { className: "relative inline-flex items-center gap-1.5 pl-2.5 pr-1.5 py-1 rounded-lg bg-[var(--accent)] text-xs text-[var(--card-foreground)]", onMouseEnter: () => setShowPreview(true), onMouseLeave: () => setShowPreview(false) },
27
+ React.createElement("span", { className: cn("inline-flex items-center justify-center rounded px-1 py-0.5 text-[9px] font-bold uppercase leading-none", colorClass) }, ext || "?"),
28
+ React.createElement("span", { className: "truncate max-w-[120px]" }, attachment.name),
29
+ attachment.size != null && (React.createElement("span", { className: "text-[10px] text-[var(--input-placeholder)] shrink-0" }, formatSize(attachment.size))),
30
+ attachment.status === "uploading"
31
+ ? (React.createElement("span", { className: "size-3 shrink-0 rounded-full border-2 border-neutral-400 border-t-transparent animate-spin" }))
32
+ : onRemove && (React.createElement("button", { type: "button", onClick: () => onRemove(attachment.id), "aria-label": `Remove ${attachment.name}`, className: "size-4 shrink-0 flex items-center justify-center rounded-full hover:bg-[var(--accent)] text-[var(--input-placeholder)] hover:text-[var(--foreground)] transition-colors" },
33
+ React.createElement("svg", { className: "size-3", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round" },
34
+ React.createElement("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
35
+ React.createElement("line", { x1: "6", y1: "6", x2: "18", y2: "18" })))),
36
+ showPreview && attachment.preview && (React.createElement("div", { className: "absolute bottom-full left-0 mb-2 z-50 w-64 pointer-events-none" },
37
+ React.createElement("div", { className: "bg-[var(--card)] border border-[var(--border)] rounded-xl shadow-lg p-3 text-left" },
38
+ React.createElement("p", { className: "text-[10px] font-medium text-[var(--muted-foreground)] uppercase mb-1" }, "Preview"),
39
+ React.createElement("p", { className: "text-xs text-[var(--card-foreground)] line-clamp-4 whitespace-pre-wrap" }, attachment.preview))))));
40
+ }
@@ -0,0 +1,9 @@
1
+ import * as React from "react";
2
+ export interface BranchPickerProps {
3
+ current: number;
4
+ total: number;
5
+ onPrev: () => void;
6
+ onNext: () => void;
7
+ }
8
+ export declare function BranchPicker({ current, total, onPrev, onNext, }: BranchPickerProps): React.ReactElement | null;
9
+ //# sourceMappingURL=branch-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch-picker.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/branch-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,MAAM,EACN,MAAM,GACP,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAsD/C"}
@@ -0,0 +1,17 @@
1
+ import * as React from "react";
2
+ import { cn } from "../../theme.js";
3
+ export function BranchPicker({ current, total, onPrev, onNext, }) {
4
+ if (total <= 1)
5
+ return null;
6
+ return (React.createElement("div", { className: "inline-flex items-center gap-1 text-xs text-[var(--input-placeholder)]" },
7
+ React.createElement("button", { type: "button", onClick: onPrev, disabled: current <= 1, className: cn("size-5 flex items-center justify-center rounded-full transition-all", "hover:bg-[var(--foreground)]/5", "disabled:opacity-50 disabled:pointer-events-none"), "aria-label": "Previous variant" },
8
+ React.createElement("svg", { className: "size-3", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round" },
9
+ React.createElement("polyline", { points: "15 18 9 12 15 6" }))),
10
+ React.createElement("span", { className: "tabular-nums min-w-[2ch] text-center" },
11
+ current,
12
+ "/",
13
+ total),
14
+ React.createElement("button", { type: "button", onClick: onNext, disabled: current >= total, className: cn("size-5 flex items-center justify-center rounded-full transition-all", "hover:bg-[var(--foreground)]/5", "disabled:opacity-50 disabled:pointer-events-none"), "aria-label": "Next variant" },
15
+ React.createElement("svg", { className: "size-3", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round" },
16
+ React.createElement("polyline", { points: "9 18 15 12 9 6" })))));
17
+ }
@@ -0,0 +1,8 @@
1
+ export interface CodeBlockProps {
2
+ language?: string;
3
+ code: string;
4
+ inline?: boolean;
5
+ className?: string;
6
+ }
7
+ export declare const RichCodeBlock: any;
8
+ //# sourceMappingURL=code-block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/code-block.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,KAoEzB,CAAC"}
@@ -0,0 +1,38 @@
1
+ import * as dntShim from "../../../../../../_dnt.shims.js";
2
+ import * as React from "react";
3
+ import { cn } from "../../theme.js";
4
+ import { CheckIcon, CopyIcon } from "../../icons/index.js";
5
+ export const RichCodeBlock = React.forwardRef(function RichCodeBlock({ language, code, inline, className }, ref) {
6
+ const [copied, setCopied] = React.useState(false);
7
+ const handleCopy = React.useCallback(async () => {
8
+ try {
9
+ await navigator.clipboard.writeText(code);
10
+ }
11
+ catch {
12
+ const textarea = document.createElement("textarea");
13
+ textarea.value = code;
14
+ document.body.appendChild(textarea);
15
+ textarea.select();
16
+ document.execCommand("copy");
17
+ document.body.removeChild(textarea);
18
+ }
19
+ setCopied(true);
20
+ dntShim.setTimeout(() => setCopied(false), 2000);
21
+ }, [code]);
22
+ if (inline) {
23
+ return (React.createElement("code", { className: cn("bg-[var(--accent)] px-1.5 py-0.5 rounded text-sm font-mono", className) }, code));
24
+ }
25
+ return (React.createElement("div", { ref: ref, className: cn("my-4 rounded-xl overflow-hidden border border-[var(--border)]", className) },
26
+ React.createElement("div", { className: "flex items-center justify-between px-4 py-2 text-[var(--muted-foreground)] text-xs" },
27
+ React.createElement("span", { className: "font-mono font-medium" }, language || "text"),
28
+ React.createElement("button", { type: "button", onClick: handleCopy, className: "inline-flex items-center gap-1.5 text-[var(--input-placeholder)] hover:text-[var(--foreground)] transition-colors" }, copied
29
+ ? (React.createElement(React.Fragment, null,
30
+ React.createElement(CheckIcon, { className: "size-3.5" }),
31
+ React.createElement("span", null, "Copied")))
32
+ : (React.createElement(React.Fragment, null,
33
+ React.createElement(CopyIcon, { className: "size-3.5" }),
34
+ React.createElement("span", null, "Copy"))))),
35
+ React.createElement("pre", { className: "p-4 text-[var(--foreground)] bg-[var(--accent)] overflow-auto text-sm [&_.hljs]:bg-transparent [&_.hljs]:p-0" },
36
+ React.createElement("code", { className: language ? `language-${language}` : undefined }, code))));
37
+ });
38
+ RichCodeBlock.displayName = "RichCodeBlock";
@@ -0,0 +1,7 @@
1
+ import * as React from "react";
2
+ export interface DropZoneOverlayProps {
3
+ visible: boolean;
4
+ accept?: string;
5
+ }
6
+ export declare function DropZoneOverlay({ visible, accept, }: DropZoneOverlayProps): React.ReactElement | null;
7
+ //# sourceMappingURL=drop-zone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drop-zone.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/drop-zone.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,GACP,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAqClD"}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ import { cn } from "../../theme.js";
3
+ export function DropZoneOverlay({ visible, accept, }) {
4
+ if (!visible)
5
+ return null;
6
+ return (React.createElement("div", { className: cn("absolute inset-0 z-50 flex flex-col items-center justify-center gap-3", "bg-[var(--background)]/80 backdrop-blur-sm", "border-2 border-dashed border-[var(--success)] rounded-2xl", "pointer-events-none") },
7
+ React.createElement("svg", { className: "size-10 text-[var(--success)]", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" },
8
+ React.createElement("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }),
9
+ React.createElement("polyline", { points: "17 8 12 3 7 8" }),
10
+ React.createElement("line", { x1: "12", y1: "3", x2: "12", y2: "15" })),
11
+ React.createElement("div", { className: "text-center" },
12
+ React.createElement("p", { className: "text-sm font-medium text-[var(--card-foreground)]" }, "Drop files here"),
13
+ accept && (React.createElement("p", { className: "text-xs text-[var(--muted-foreground)] mt-1" }, accept.replace(/\./g, "").toUpperCase().replace(/,/g, ", "))))));
14
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"empty-state.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,wBAAgB,UAAU,CAAC,EACzB,UAAU,EACV,OAAO,EACP,SAAS,EACT,IAAI,GACL,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CAoBtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,MAAe,GAChB,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAMvC;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,IAAI,EACJ,KAA+B,EAC/B,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,OAAc,EACd,SAAS,GACV,EAAE,6BAA6B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAe3D"}
1
+ {"version":3,"file":"empty-state.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,wBAAgB,UAAU,CAAC,EACzB,UAAU,EACV,OAAO,EACP,SAAS,EACT,IAAI,GACL,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CAoBtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,MAAe,GAChB,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAMvC;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,IAAI,EACJ,KAA+B,EAC/B,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,2BAA2B,GAAG,KAAK,CAAC,YAAY,CAuBlD;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,OAAc,EACd,SAAS,GACV,EAAE,6BAA6B,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAe3D"}
@@ -2,30 +2,32 @@ import * as React from "react";
2
2
  import { cn } from "../../theme.js";
3
3
  import { ArrowDownIcon } from "../../icons/index.js";
4
4
  export function Suggestion({ suggestion, onClick, className, icon, }) {
5
- return (React.createElement("button", { type: "button", onClick: () => onClick?.(suggestion), className: cn("group flex items-start gap-3 rounded-xl border border-border bg-background p-4 text-left text-sm text-foreground transition-all hover:bg-muted hover:border-muted-foreground/20", className) },
5
+ return (React.createElement("button", { type: "button", onClick: () => onClick?.(suggestion), className: cn("group flex items-center gap-2 rounded-full border border-[var(--border)] px-4 py-2 text-left text-sm text-[var(--muted-foreground)] transition-all hover:bg-[var(--accent)] hover:border-[var(--input-border)] hover:text-[var(--foreground)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2", className) },
6
6
  icon
7
- ? (React.createElement("span", { className: "shrink-0 text-muted-foreground transition-colors group-hover:text-foreground" }, icon))
7
+ ? (React.createElement("span", { className: "shrink-0 text-[var(--input-placeholder)] transition-colors group-hover:text-[var(--foreground)]" }, icon))
8
8
  : null,
9
- React.createElement("span", { className: "line-clamp-2" }, suggestion)));
9
+ React.createElement("span", { className: "line-clamp-1" }, suggestion)));
10
10
  }
11
11
  export function Suggestions({ children, className, layout = "grid", }) {
12
12
  const containerClassName = layout === "horizontal"
13
13
  ? "flex gap-2 overflow-x-auto pb-2 scrollbar-hide"
14
- : "grid grid-cols-2 gap-3 max-w-2xl mx-auto";
14
+ : "flex flex-wrap justify-center gap-2 max-w-2xl mx-auto";
15
15
  return React.createElement("div", { className: cn(containerClassName, className) }, children);
16
16
  }
17
17
  export function ConversationEmptyState({ icon, title = "What can I help with?", description, children, className, }) {
18
18
  return (React.createElement("div", { className: cn("flex flex-col items-center justify-center text-center", className) },
19
- icon ? React.createElement("div", { className: "mb-4 text-muted-foreground" }, icon) : null,
20
- React.createElement("h1", { className: "text-3xl font-semibold text-foreground" }, title),
19
+ icon
20
+ ? (React.createElement("div", { className: "mb-4 text-[var(--muted-foreground)]" }, icon))
21
+ : null,
22
+ React.createElement("h1", { className: "text-2xl font-medium text-[var(--foreground)] tracking-tight" }, title),
21
23
  description
22
- ? React.createElement("p", { className: "mt-2 max-w-md text-base text-muted-foreground" }, description)
24
+ ? (React.createElement("p", { className: "mt-2 max-w-sm text-sm text-[var(--muted-foreground)] leading-relaxed" }, description))
23
25
  : null,
24
26
  children));
25
27
  }
26
28
  export function ConversationScrollButton({ onClick, visible = true, className, }) {
27
29
  if (!visible)
28
30
  return null;
29
- return (React.createElement("button", { type: "button", onClick: onClick, className: cn("absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full border border-border bg-background p-2 shadow-lg transition-all hover:bg-muted", className) },
31
+ return (React.createElement("button", { type: "button", onClick: onClick, className: cn("absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full border border-[var(--border)] bg-[var(--card)] p-2 shadow-lg transition-all hover:bg-[var(--accent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2", className) },
30
32
  React.createElement(ArrowDownIcon, { className: "size-4" })));
31
33
  }
@@ -30,7 +30,7 @@ export function InferenceBadge({ inferenceMode, browserStatus, }) {
30
30
  label = "Running locally";
31
31
  dotColor = "bg-green-500";
32
32
  }
33
- return (React.createElement("div", { className: "flex items-center gap-1.5 px-3 py-1 text-xs text-neutral-500 dark:text-neutral-400" },
33
+ return (React.createElement("div", { className: "flex items-center gap-1.5 px-3 py-1 text-xs text-[var(--muted-foreground)]" },
34
34
  React.createElement("span", { className: `size-1.5 rounded-full ${dotColor} ${showProgress ? "animate-pulse" : ""}` }),
35
35
  React.createElement("span", null, label)));
36
36
  }
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ import type { Source } from "./sources.js";
3
+ export interface InlineCitationProps {
4
+ index: number;
5
+ source?: Source;
6
+ className?: string;
7
+ onClick?: (index: number) => void;
8
+ }
9
+ export declare function InlineCitation({ index, source, className, onClick, }: InlineCitationProps): React.ReactElement;
10
+ //# sourceMappingURL=inline-citation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-citation.d.ts","sourceRoot":"","sources":["../../../../../../../src/src/react/components/ai/chat/components/inline-citation.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAoI1C"}