gemi 0.84.1 → 0.85.0

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 (269) hide show
  1. package/dist/ai/Agent.d.ts +41 -3
  2. package/dist/ai/Agent.d.ts.map +1 -1
  3. package/dist/ai/AgentController.d.ts +238 -0
  4. package/dist/ai/AgentController.d.ts.map +1 -1
  5. package/dist/ai/AgentProvider.d.ts +15 -0
  6. package/dist/ai/AgentProvider.d.ts.map +1 -1
  7. package/dist/ai/client/index.d.ts +2 -2
  8. package/dist/ai/client/index.d.ts.map +1 -1
  9. package/dist/ai/client/index.js +138 -35
  10. package/dist/ai/client/index.js.map +1 -1
  11. package/dist/ai/client/reducer.d.ts +7 -1
  12. package/dist/ai/client/reducer.d.ts.map +1 -1
  13. package/dist/ai/generate.d.ts.map +1 -1
  14. package/dist/ai/index.d.ts +4 -2
  15. package/dist/ai/index.d.ts.map +1 -1
  16. package/dist/ai/index.js +12 -12
  17. package/dist/ai/index.js.map +19 -16
  18. package/dist/ai/providers/call.d.ts +4 -0
  19. package/dist/ai/providers/call.d.ts.map +1 -1
  20. package/dist/ai/providers/fileRejection.d.ts +84 -0
  21. package/dist/ai/providers/fileRejection.d.ts.map +1 -0
  22. package/dist/ai/providers/request.d.ts.map +1 -1
  23. package/dist/ai/redact.d.ts +70 -0
  24. package/dist/ai/redact.d.ts.map +1 -0
  25. package/dist/ai/signing.d.ts +33 -4
  26. package/dist/ai/signing.d.ts.map +1 -1
  27. package/dist/ai/store/Attachments.d.ts +5 -3
  28. package/dist/ai/store/Attachments.d.ts.map +1 -1
  29. package/dist/ai/store/FileOwners.d.ts +59 -0
  30. package/dist/ai/store/FileOwners.d.ts.map +1 -0
  31. package/dist/ai/store/LiveRuns.d.ts +25 -0
  32. package/dist/ai/store/LiveRuns.d.ts.map +1 -1
  33. package/dist/ai/store/MemoryAgentStore.d.ts +1 -0
  34. package/dist/ai/store/MemoryAgentStore.d.ts.map +1 -1
  35. package/dist/ai/store/Nonces.d.ts +109 -0
  36. package/dist/ai/store/Nonces.d.ts.map +1 -0
  37. package/dist/ai/store/index.d.ts +2 -0
  38. package/dist/ai/store/index.d.ts.map +1 -1
  39. package/dist/ai/types.d.ts +30 -1
  40. package/dist/ai/types.d.ts.map +1 -1
  41. package/dist/ai/useChat.d.ts +62 -3
  42. package/dist/ai/useChat.d.ts.map +1 -1
  43. package/dist/app/index.js +1 -1
  44. package/dist/bun/plugin.js +1 -1
  45. package/dist/bun/preload.js +1 -1
  46. package/dist/{chunk-82nn71zs.js → chunk-09sr33ff.js} +2 -2
  47. package/dist/{chunk-82nn71zs.js.map → chunk-09sr33ff.js.map} +1 -1
  48. package/dist/chunk-174jkg6d.js +7 -0
  49. package/dist/{chunk-302mkqeq.js.map → chunk-174jkg6d.js.map} +9 -8
  50. package/dist/{chunk-87x692j7.js → chunk-1b5s4w5f.js} +2 -2
  51. package/dist/{chunk-87x692j7.js.map → chunk-1b5s4w5f.js.map} +1 -1
  52. package/dist/{chunk-rmv1jp9p.js → chunk-1jcp8m8h.js} +2 -2
  53. package/dist/{chunk-rmv1jp9p.js.map → chunk-1jcp8m8h.js.map} +1 -1
  54. package/dist/{chunk-g6qe6wyb.js → chunk-1w5a11cd.js} +2 -2
  55. package/dist/{chunk-g6qe6wyb.js.map → chunk-1w5a11cd.js.map} +1 -1
  56. package/dist/chunk-1wby1sr2.js +5 -0
  57. package/dist/{chunk-e43drft2.js.map → chunk-1wby1sr2.js.map} +3 -3
  58. package/dist/{chunk-vmpzg4z5.js → chunk-1yq1e6sb.js} +3 -3
  59. package/dist/{chunk-vmpzg4z5.js.map → chunk-1yq1e6sb.js.map} +1 -1
  60. package/dist/chunk-1yzdxv2a.js +5 -0
  61. package/dist/{chunk-tmwsvf02.js.map → chunk-1yzdxv2a.js.map} +1 -1
  62. package/dist/{chunk-ah9ajys0.js → chunk-2gdhcswa.js} +1 -1
  63. package/dist/chunk-2k5kyk0h.js +24 -0
  64. package/dist/chunk-2k5kyk0h.js.map +17 -0
  65. package/dist/{chunk-1evk2pma.js → chunk-2yw23zhn.js} +4 -4
  66. package/dist/{chunk-1evk2pma.js.map → chunk-2yw23zhn.js.map} +1 -1
  67. package/dist/{chunk-3z6wkvwj.js → chunk-4ysar3ev.js} +2 -2
  68. package/dist/{chunk-3z6wkvwj.js.map → chunk-4ysar3ev.js.map} +1 -1
  69. package/dist/{chunk-z409rk5j.js → chunk-4zj05vry.js} +2 -2
  70. package/dist/{chunk-z409rk5j.js.map → chunk-4zj05vry.js.map} +1 -1
  71. package/dist/{chunk-1cebv3h8.js → chunk-55x9kkdt.js} +2 -2
  72. package/dist/{chunk-1cebv3h8.js.map → chunk-55x9kkdt.js.map} +1 -1
  73. package/dist/{chunk-0agfx93f.js → chunk-5ktfpty1.js} +2 -2
  74. package/dist/{chunk-0agfx93f.js.map → chunk-5ktfpty1.js.map} +1 -1
  75. package/dist/chunk-6k2czkkh.js +55 -0
  76. package/dist/{chunk-rp5j1mgk.js.map → chunk-6k2czkkh.js.map} +3 -3
  77. package/dist/{chunk-3zb2ycxj.js → chunk-7c33ngqs.js} +2 -2
  78. package/dist/{chunk-3zb2ycxj.js.map → chunk-7c33ngqs.js.map} +1 -1
  79. package/dist/{chunk-en3mtnsg.js → chunk-7n5775qx.js} +2 -2
  80. package/dist/{chunk-en3mtnsg.js.map → chunk-7n5775qx.js.map} +1 -1
  81. package/dist/{chunk-bn9pzgww.js → chunk-7nj2t2gm.js} +2 -2
  82. package/dist/{chunk-bn9pzgww.js.map → chunk-7nj2t2gm.js.map} +1 -1
  83. package/dist/{chunk-kfavcgv2.js → chunk-81k26w39.js} +2 -2
  84. package/dist/{chunk-kfavcgv2.js.map → chunk-81k26w39.js.map} +1 -1
  85. package/dist/{chunk-cg4k40zy.js → chunk-81v4c4b1.js} +2 -2
  86. package/dist/{chunk-cg4k40zy.js.map → chunk-81v4c4b1.js.map} +1 -1
  87. package/dist/{chunk-wh728wd6.js → chunk-8gexb1gt.js} +2 -2
  88. package/dist/{chunk-wh728wd6.js.map → chunk-8gexb1gt.js.map} +1 -1
  89. package/dist/{chunk-zfch4da5.js → chunk-9tsw1bmt.js} +2 -2
  90. package/dist/{chunk-8mmfpqgs.js.map → chunk-9tsw1bmt.js.map} +1 -1
  91. package/dist/{chunk-m0zba09s.js → chunk-9tv5j3b2.js} +3 -3
  92. package/dist/{chunk-m0zba09s.js.map → chunk-9tv5j3b2.js.map} +1 -1
  93. package/dist/{chunk-jg9eqd3r.js → chunk-c3gzpjba.js} +1 -1
  94. package/dist/{chunk-r5e4vpa1.js → chunk-cbycz5z3.js} +2 -2
  95. package/dist/{chunk-r5e4vpa1.js.map → chunk-cbycz5z3.js.map} +1 -1
  96. package/dist/{chunk-cfvq30n4.js → chunk-cfykfnqx.js} +2 -2
  97. package/dist/{chunk-cfvq30n4.js.map → chunk-cfykfnqx.js.map} +1 -1
  98. package/dist/{chunk-eysexnqb.js → chunk-ct7wxm98.js} +2 -2
  99. package/dist/{chunk-eysexnqb.js.map → chunk-ct7wxm98.js.map} +1 -1
  100. package/dist/{chunk-v27a4se1.js → chunk-d3jkypc7.js} +3 -3
  101. package/dist/{chunk-v27a4se1.js.map → chunk-d3jkypc7.js.map} +1 -1
  102. package/dist/{chunk-vfrrzr10.js → chunk-dadygfkf.js} +2 -2
  103. package/dist/{chunk-vfrrzr10.js.map → chunk-dadygfkf.js.map} +1 -1
  104. package/dist/{chunk-m4xw99vm.js → chunk-dwqh79e5.js} +2 -2
  105. package/dist/{chunk-m4xw99vm.js.map → chunk-dwqh79e5.js.map} +1 -1
  106. package/dist/{chunk-ng8pp9k2.js → chunk-fbwe0agk.js} +2 -2
  107. package/dist/{chunk-ng8pp9k2.js.map → chunk-fbwe0agk.js.map} +1 -1
  108. package/dist/{chunk-495qwteq.js → chunk-fc2je244.js} +3 -3
  109. package/dist/{chunk-495qwteq.js.map → chunk-fc2je244.js.map} +1 -1
  110. package/dist/{chunk-gr61ymse.js → chunk-gx0x772p.js} +2 -2
  111. package/dist/{chunk-gr61ymse.js.map → chunk-gx0x772p.js.map} +1 -1
  112. package/dist/{chunk-tdnfhe7x.js → chunk-ha705bcz.js} +3 -3
  113. package/dist/{chunk-tdnfhe7x.js.map → chunk-ha705bcz.js.map} +1 -1
  114. package/dist/chunk-jhe0t7yj.js +5 -0
  115. package/dist/chunk-jhe0t7yj.js.map +11 -0
  116. package/dist/{chunk-d0qwdeza.js → chunk-k5j65f2c.js} +2 -2
  117. package/dist/{chunk-d0qwdeza.js.map → chunk-k5j65f2c.js.map} +1 -1
  118. package/dist/{chunk-pt59xjfc.js → chunk-kmsrzbx1.js} +2 -2
  119. package/dist/{chunk-pt59xjfc.js.map → chunk-kmsrzbx1.js.map} +1 -1
  120. package/dist/{chunk-v1nm4tcq.js → chunk-m7y8d3k7.js} +2 -2
  121. package/dist/{chunk-v1nm4tcq.js.map → chunk-m7y8d3k7.js.map} +1 -1
  122. package/dist/{chunk-k2qh3hvd.js → chunk-mk8m3ffx.js} +2 -2
  123. package/dist/{chunk-k2qh3hvd.js.map → chunk-mk8m3ffx.js.map} +1 -1
  124. package/dist/{chunk-z7442w3q.js → chunk-mszy6cfw.js} +2 -2
  125. package/dist/{chunk-z7442w3q.js.map → chunk-mszy6cfw.js.map} +1 -1
  126. package/dist/{chunk-kb3xk9r8.js → chunk-ndat0nf0.js} +2 -2
  127. package/dist/{chunk-kb3xk9r8.js.map → chunk-ndat0nf0.js.map} +1 -1
  128. package/dist/{chunk-j9wqzemf.js → chunk-p0m3qgs5.js} +2 -2
  129. package/dist/{chunk-j9wqzemf.js.map → chunk-p0m3qgs5.js.map} +1 -1
  130. package/dist/{chunk-8mmfpqgs.js → chunk-p7r3ecpk.js} +2 -2
  131. package/dist/{chunk-zfch4da5.js.map → chunk-p7r3ecpk.js.map} +1 -1
  132. package/dist/{chunk-zp971jp2.js → chunk-pmmrhak1.js} +3 -3
  133. package/dist/{chunk-zp971jp2.js.map → chunk-pmmrhak1.js.map} +1 -1
  134. package/dist/{chunk-nvj1z2rs.js → chunk-pzwyg474.js} +2 -2
  135. package/dist/{chunk-nvj1z2rs.js.map → chunk-pzwyg474.js.map} +1 -1
  136. package/dist/{chunk-73dk6k4p.js → chunk-qje4kdff.js} +3 -3
  137. package/dist/{chunk-73dk6k4p.js.map → chunk-qje4kdff.js.map} +1 -1
  138. package/dist/{chunk-yk8s5egf.js → chunk-rdnm6rem.js} +2 -2
  139. package/dist/{chunk-yk8s5egf.js.map → chunk-rdnm6rem.js.map} +1 -1
  140. package/dist/{chunk-enf9mdac.js → chunk-s046a984.js} +2 -2
  141. package/dist/{chunk-enf9mdac.js.map → chunk-s046a984.js.map} +1 -1
  142. package/dist/{chunk-1s914cdj.js → chunk-saqfc6vp.js} +3 -3
  143. package/dist/{chunk-1s914cdj.js.map → chunk-saqfc6vp.js.map} +1 -1
  144. package/dist/{chunk-pgpqsgzx.js → chunk-sejnmn1q.js} +1 -1
  145. package/dist/{chunk-xhha1gb3.js → chunk-sjckrbr2.js} +2 -2
  146. package/dist/{chunk-xhha1gb3.js.map → chunk-sjckrbr2.js.map} +1 -1
  147. package/dist/{chunk-r8nhndzb.js → chunk-swhyp0yw.js} +2 -2
  148. package/dist/{chunk-r8nhndzb.js.map → chunk-swhyp0yw.js.map} +1 -1
  149. package/dist/{chunk-wkdzz0rx.js → chunk-trdwxm5x.js} +3 -3
  150. package/dist/{chunk-wkdzz0rx.js.map → chunk-trdwxm5x.js.map} +1 -1
  151. package/dist/{chunk-aztkrzvf.js → chunk-v2hvnxsf.js} +2 -2
  152. package/dist/{chunk-aztkrzvf.js.map → chunk-v2hvnxsf.js.map} +1 -1
  153. package/dist/{chunk-57ryyhh3.js → chunk-v4ngf77f.js} +2 -2
  154. package/dist/{chunk-57ryyhh3.js.map → chunk-v4ngf77f.js.map} +1 -1
  155. package/dist/{chunk-159hyeng.js → chunk-v8nf45gt.js} +2 -2
  156. package/dist/{chunk-159hyeng.js.map → chunk-v8nf45gt.js.map} +1 -1
  157. package/dist/{chunk-ys4fejmx.js → chunk-vwp1g8wh.js} +2 -2
  158. package/dist/{chunk-ys4fejmx.js.map → chunk-vwp1g8wh.js.map} +1 -1
  159. package/dist/chunk-w312e9nx.js +5 -0
  160. package/dist/{chunk-ash9e6fn.js.map → chunk-w312e9nx.js.map} +4 -3
  161. package/dist/{chunk-wwdaswxh.js → chunk-wwzg4dmy.js} +3 -3
  162. package/dist/{chunk-wwdaswxh.js.map → chunk-wwzg4dmy.js.map} +1 -1
  163. package/dist/{chunk-wsx3j5ws.js → chunk-xckeyg3v.js} +2 -2
  164. package/dist/{chunk-wsx3j5ws.js.map → chunk-xckeyg3v.js.map} +1 -1
  165. package/dist/chunk-xx2zg6sk.js +17 -0
  166. package/dist/{chunk-49akdtfe.js.map → chunk-xx2zg6sk.js.map} +11 -12
  167. package/dist/{chunk-rqh2wdhb.js → chunk-y7qnx8vm.js} +2 -2
  168. package/dist/{chunk-rqh2wdhb.js.map → chunk-y7qnx8vm.js.map} +1 -1
  169. package/dist/{chunk-rv7da58g.js → chunk-z4k18gnp.js} +2 -2
  170. package/dist/{chunk-rv7da58g.js.map → chunk-z4k18gnp.js.map} +1 -1
  171. package/dist/{chunk-w099t7zj.js → chunk-zf4r4kat.js} +2 -2
  172. package/dist/{chunk-w099t7zj.js.map → chunk-zf4r4kat.js.map} +1 -1
  173. package/dist/{chunk-dvpxkzms.js → chunk-zs90w6ke.js} +2 -2
  174. package/dist/{chunk-dvpxkzms.js.map → chunk-zs90w6ke.js.map} +1 -1
  175. package/dist/chunks/{ThemeProvider-Dn3UREDn.js → ThemeProvider-D1kDfCwY.js} +59 -2
  176. package/dist/chunks/ThemeProvider-D1kDfCwY.js.map +1 -0
  177. package/dist/client/Link.d.ts.map +1 -1
  178. package/dist/client/MutationError.d.ts +60 -50
  179. package/dist/client/MutationError.d.ts.map +1 -1
  180. package/dist/client/ProgressManager.d.ts +1 -1
  181. package/dist/client/QueryResource.d.ts +20 -0
  182. package/dist/client/QueryResource.d.ts.map +1 -1
  183. package/dist/client/index.d.ts +2 -1
  184. package/dist/client/index.d.ts.map +1 -1
  185. package/dist/client/index.js +109 -35
  186. package/dist/client/index.js.map +1 -1
  187. package/dist/client/useMutation.d.ts.map +1 -1
  188. package/dist/client/useQuery.d.ts.map +1 -1
  189. package/dist/config/index.js +1 -1
  190. package/dist/console/run.js +2 -2
  191. package/dist/console/run.js.map +1 -1
  192. package/dist/container/index.js +2 -2
  193. package/dist/container/index.js.map +1 -1
  194. package/dist/database/index.js +2 -2
  195. package/dist/database/index.js.map +1 -1
  196. package/dist/email/Email.d.ts.map +1 -1
  197. package/dist/email/debugEmail.d.ts +40 -0
  198. package/dist/email/debugEmail.d.ts.map +1 -0
  199. package/dist/email/index.js +4 -3
  200. package/dist/email/index.js.map +6 -5
  201. package/dist/facades/index.js +2 -2
  202. package/dist/facades/index.js.map +1 -1
  203. package/dist/foundation/index.js +2 -2
  204. package/dist/foundation/index.js.map +1 -1
  205. package/dist/http/ApiRouter.d.ts +12 -0
  206. package/dist/http/ApiRouter.d.ts.map +1 -1
  207. package/dist/http/CSRFMiddleware.d.ts +1 -1
  208. package/dist/http/CSRFMiddleware.d.ts.map +1 -1
  209. package/dist/http/Error.d.ts +50 -0
  210. package/dist/http/Error.d.ts.map +1 -1
  211. package/dist/http/HttpRequest.d.ts +26 -0
  212. package/dist/http/HttpRequest.d.ts.map +1 -1
  213. package/dist/http/RateLimitMiddleware.d.ts +6 -3
  214. package/dist/http/RateLimitMiddleware.d.ts.map +1 -1
  215. package/dist/http/Router.d.ts.map +1 -1
  216. package/dist/http/errors.d.ts.map +1 -1
  217. package/dist/http/index.d.ts +2 -1
  218. package/dist/http/index.d.ts.map +1 -1
  219. package/dist/http/index.js +2 -2
  220. package/dist/http/index.js.map +1 -1
  221. package/dist/http/mediaType.d.ts +16 -0
  222. package/dist/http/mediaType.d.ts.map +1 -0
  223. package/dist/http/refusal.d.ts +52 -0
  224. package/dist/http/refusal.d.ts.map +1 -0
  225. package/dist/i18n/dictionaryRuntime.js +2 -2
  226. package/dist/i18n/dictionaryRuntime.js.map +1 -1
  227. package/dist/i18n/index.js +2 -2
  228. package/dist/i18n/index.js.map +2 -2
  229. package/dist/kernel/index.js +2 -2
  230. package/dist/kernel/index.js.map +2 -2
  231. package/dist/orm/index.js +2 -2
  232. package/dist/orm/index.js.map +1 -1
  233. package/dist/server/devFetch.d.ts.map +1 -1
  234. package/dist/server/forwardedFor.d.ts +42 -0
  235. package/dist/server/forwardedFor.d.ts.map +1 -0
  236. package/dist/server/httpProd.d.ts.map +1 -1
  237. package/dist/server/index.js +2 -2
  238. package/dist/server/index.js.map +1 -1
  239. package/dist/server/staticFile.d.ts +33 -0
  240. package/dist/server/staticFile.d.ts.map +1 -0
  241. package/dist/server/unhandledError.d.ts.map +1 -1
  242. package/dist/services/index.js +2 -2
  243. package/dist/services/index.js.map +2 -2
  244. package/dist/services/mcp/McpRegistry.d.ts +2 -1
  245. package/dist/services/mcp/McpRegistry.d.ts.map +1 -1
  246. package/dist/services/mcp/toAgentTools.d.ts +1 -1
  247. package/dist/services/mcp/toAgentTools.d.ts.map +1 -1
  248. package/dist/services/queue/work.js +2 -2
  249. package/dist/services/queue/work.js.map +1 -1
  250. package/dist/services/router/notFound.d.ts.map +1 -1
  251. package/dist/services/router/policyDenied.d.ts.map +1 -1
  252. package/dist/services/router/serverQueryFetcher.d.ts.map +1 -1
  253. package/dist/support/index.js +2 -2
  254. package/dist/support/index.js.map +1 -1
  255. package/dist/testing/index.js +1 -1
  256. package/package.json +1 -1
  257. package/skills/gemi-react-best-practices/rules/controller-throw-framework-errors.md +5 -0
  258. package/dist/chunk-302mkqeq.js +0 -7
  259. package/dist/chunk-49akdtfe.js +0 -17
  260. package/dist/chunk-ash9e6fn.js +0 -5
  261. package/dist/chunk-e43drft2.js +0 -5
  262. package/dist/chunk-j5xcfeqx.js +0 -24
  263. package/dist/chunk-j5xcfeqx.js.map +0 -16
  264. package/dist/chunk-rp5j1mgk.js +0 -55
  265. package/dist/chunk-tmwsvf02.js +0 -5
  266. package/dist/chunks/ThemeProvider-Dn3UREDn.js.map +0 -1
  267. /package/dist/{chunk-ah9ajys0.js.map → chunk-2gdhcswa.js.map} +0 -0
  268. /package/dist/{chunk-jg9eqd3r.js.map → chunk-c3gzpjba.js.map} +0 -0
  269. /package/dist/{chunk-pgpqsgzx.js.map → chunk-sejnmn1q.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../ai/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../ai/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { RPC } from "../client/rpc";
2
- import type { AgentError, AgentMessage, ClientTurn, PendingToolCall, ToolProgress, ToolResultPart, ToolShapes } from "./types";
2
+ import type { AgentError, AgentMessage, ClientTurn, PendingToolCall, ToolProgress, ToolResultPart, ToolShapes, Usage } from "./types";
3
3
  /**
4
4
  * The agent routes, picked out of the same `RPC` interface `useQuery` and
5
5
  * `useMutation` read. An agent is not a second kind of thing to register — it is
@@ -228,8 +228,16 @@ export interface UseChatResult<P extends keyof AgentRoutes> {
228
228
  * where it was cut rather than losing text the user already read.
229
229
  */
230
230
  stop(): Promise<void>;
231
- /** Drops the last assistant turn and re-runs from the user turn before it. */
231
+ /**
232
+ * Drops the last assistant turn and re-runs from the user turn before it.
233
+ * On a thread the server replaces its stored answer too (`regenerate: true`
234
+ * on the request), so the model sees the question once, not a repeat.
235
+ */
232
236
  regenerate(): Promise<void>;
237
+ /**
238
+ * Replaces the local transcript. Client-only: on a thread the server keeps
239
+ * its own history, and this does not change what the next turn is run on.
240
+ */
233
241
  setMessages(messages: AgentMessage<ToolsOf<P>, OutputOf<P>>[]): void;
234
242
  /**
235
243
  * Non-empty exactly when `status === "awaiting-input"`.
@@ -249,6 +257,12 @@ export interface UseChatResult<P extends keyof AgentRoutes> {
249
257
  * something to persist beside `messages`.
250
258
  */
251
259
  loadedTools: string[];
260
+ /**
261
+ * The run's total usage so far — every step plus what its tools spent — or
262
+ * `undefined` before the first `usage` frame. Run-scoped like `loadedTools`.
263
+ * Each assistant message carries its own share on `message.usage` (#467).
264
+ */
265
+ usage: Usage | undefined;
252
266
  /**
253
267
  * Sugar over `sendMessage`. The hook carries each pending call's signature —
254
268
  * and its `path`, if the question came from a sub-agent — and hands both back
@@ -284,8 +298,19 @@ export interface UseChatResult<P extends keyof AgentRoutes> {
284
298
  * one makes the request builder throw on every later turn of the thread.
285
299
  * What the optional type does catch, under `strictNullChecks`, is code that
286
300
  * reads `fileId` as a `string` — rendering it, or handing it to a vendor.
301
+ *
302
+ * A FAILED UPLOAD IS THAT FILE'S PROBLEM, NOT THE CONVERSATION'S (#683). The
303
+ * promise rejects with an `AttachError` (`{ code, message, status }`, the
304
+ * server's own code and sentence, e.g. `unsupported_file_type`), and nothing
305
+ * else changes: `error`, `status` and `onError` are the chat's, and a
306
+ * composer marks the one chip. `options.signal` aborts the upload and
307
+ * rejects with a `DOMException` named `AbortError`; nothing is stored.
308
+ * `options.onProgress` reports bytes sent, and is why the upload goes over
309
+ * `XMLHttpRequest` when it is given — `fetch` cannot report upload progress.
310
+ * The hook's `threadId`, once it has one, goes with the upload, so an
311
+ * unauthenticated chat on a thread has a scope to keep the file under.
287
312
  */
288
- attach(file: File): Promise<{
313
+ attach(file: File, options?: AttachOptions): Promise<{
289
314
  fileId?: string;
290
315
  attachmentId?: string;
291
316
  name: string;
@@ -298,6 +323,34 @@ export interface UseChatResult<P extends keyof AgentRoutes> {
298
323
  downgraded?: "no_scope";
299
324
  }>;
300
325
  }
326
+ /** The second argument to `attach()`. */
327
+ export type AttachOptions = {
328
+ /** Aborts the upload. The promise rejects with a `DOMException` named
329
+ * `AbortError`, and the server keeps nothing. */
330
+ signal?: AbortSignal;
331
+ /** Bytes sent so far. `total` is 0 when the browser cannot tell. Giving this
332
+ * sends the upload with `XMLHttpRequest`, which can report it. */
333
+ onProgress?: (progress: {
334
+ loaded: number;
335
+ total: number;
336
+ }) => void;
337
+ };
338
+ /**
339
+ * Why `attach()` rejected, for that file alone.
340
+ *
341
+ * `code` is the server's when it sent one — `unsupported_file_type`,
342
+ * `file_too_large`, `file_rejected` and `invalid_request` from
343
+ * `AgentController.upload`, or a framework refusal's `kind` such as
344
+ * `authentication` — and otherwise `upload_failed` (an answer that was
345
+ * not JSON, `status` says which) or `network_error` (no answer at all). A
346
+ * string rather than a union, because an app's own `attachmentDestination`
347
+ * can throw an error with a code of its own and that has to arrive intact.
348
+ */
349
+ export declare class AttachError extends Error {
350
+ readonly code: string;
351
+ readonly status?: number;
352
+ constructor(code: string, message: string, status?: number);
353
+ }
301
354
  /**
302
355
  * What `POST /api<path>` receives.
303
356
  *
@@ -321,6 +374,12 @@ export type AgentRequestBody = {
321
374
  * server is expected to remember the mapping for as long as the run lives.
322
375
  */
323
376
  clientRunId: string;
377
+ /**
378
+ * Threaded only: replace the thread's last answer instead of answering after
379
+ * it. The server removes the last user turn and everything after it from the
380
+ * store and runs that turn again (#451). Sent by `regenerate()`.
381
+ */
382
+ regenerate?: boolean;
324
383
  } & Record<string, unknown>;
325
384
  /**
326
385
  * What `POST /api<path>/attach` receives: which thread, and how far this client
@@ -1 +1 @@
1
- {"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../ai/useChat.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useChat.d.ts","sourceRoot":"","sources":["../../ai/useChat.tsx"],"names":[],"mappings":"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"}
package/dist/app/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{xa as a}from"../chunk-vfrrzr10.js";import"../chunk-kb3xk9r8.js";import"../chunk-zfch4da5.js";export{a as App};
2
+ import{xa as a}from"../chunk-dadygfkf.js";import"../chunk-ndat0nf0.js";import"../chunk-9tsw1bmt.js";export{a as App};
3
3
 
4
4
  //# debugId=1DF7F2A4406AF3BE64756E2164756E21
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{ca as a}from"../chunk-73dk6k4p.js";import"../chunk-k2qh3hvd.js";import"../chunk-z409rk5j.js";import"../chunk-zfch4da5.js";export{a as gemiPlugin};
2
+ import{ca as a}from"../chunk-qje4kdff.js";import"../chunk-mk8m3ffx.js";import"../chunk-4zj05vry.js";import"../chunk-9tsw1bmt.js";export{a as gemiPlugin};
3
3
 
4
4
  //# debugId=DBAE3729A59FFE4464756E2164756E21
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{ca as k}from"../chunk-73dk6k4p.js";import"../chunk-k2qh3hvd.js";import"../chunk-z409rk5j.js";import{ua as j}from"../chunk-gvkydx8r.js";import"../chunk-zfch4da5.js";var{plugin:q}=globalThis.Bun;q(k());var y=await j(process.cwd());for(let x of y.bun?.plugins??[])q(x);
2
+ import{ca as k}from"../chunk-qje4kdff.js";import"../chunk-mk8m3ffx.js";import"../chunk-4zj05vry.js";import{ua as j}from"../chunk-gvkydx8r.js";import"../chunk-9tsw1bmt.js";var{plugin:q}=globalThis.Bun;q(k());var y=await j(process.cwd());for(let x of y.bun?.plugins??[])q(x);
3
3
 
4
4
  //# debugId=D461962ED718EDF864756E2164756E21
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{Y as M}from"./chunk-yk8s5egf.js";import{Eg as E}from"./chunk-zfch4da5.js";class x{marshaller;serializer;deserializer;serdeContext;defaultContentType;constructor({marshaller:i,serializer:n,deserializer:o,serdeContext:c,defaultContentType:y}){this.marshaller=i,this.serializer=n,this.deserializer=o,this.serdeContext=c,this.defaultContentType=y}async serializeEventStream({eventStream:i,requestSchema:n,initialRequest:o}){let c=this.marshaller,y=n.getEventStreamMember(),p=n.getMemberSchema(y),d=this.serializer,f=this.defaultContentType,h=Symbol("initialRequestMarker"),S={async*[Symbol.asyncIterator](){if(o){let r={":event-type":{type:"string",value:"initial-request"},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:f}};d.write(n,o);let t=d.flush();yield{[h]:!0,headers:r,body:t}}for await(let r of i)yield r}};return c.serialize(S,(r)=>{if(r[h])return{headers:r.headers,body:r.body};let t=Object.keys(r).find((s)=>{return s!=="__type"})??"",{additionalHeaders:e,body:a,eventType:l,explicitPayloadContentType:m}=this.writeEventBody(t,p,r);return{headers:{":event-type":{type:"string",value:l},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:m??f},...e},body:a}})}async deserializeEventStream({response:i,responseSchema:n,initialResponseContainer:o}){let c=this.marshaller,y=n.getEventStreamMember(),d=n.getMemberSchema(y).getMemberSchemas(),f=Symbol("initialResponseMarker"),h=c.deserialize(i.body,async(t)=>{let e=Object.keys(t).find((l)=>{return l!=="__type"})??"",a=t[e].body;if(e==="initial-response"){let l=await this.deserializer.read(n,a);return delete l[y],{[f]:!0,...l}}else if(e in d){let l=d[e];if(l.isStructSchema()){let m={},u=!1;for(let[s,g]of l.structIterator()){let{eventHeader:v,eventPayload:w}=g.getMergedTraits();if(u=u||Boolean(v||w),w){if(g.isBlobSchema())m[s]=a;else if(g.isStringSchema())m[s]=(this.serdeContext?.utf8Encoder??z.toUtf8)(a);else if(g.isStructSchema())m[s]=await this.deserializer.read(g,a)}else if(v){let b=t[e].headers[s]?.value;if(b!=null)if(g.isNumericSchema())if(b&&typeof b==="object"&&"bytes"in b)m[s]=BigInt(b.toString());else m[s]=Number(b);else m[s]=b}}if(u)return{[e]:m};if(a.byteLength===0)return{[e]:{}}}return{[e]:await this.deserializer.read(l,a)}}else return{$unknown:t}}),S=h[Symbol.asyncIterator](),r=await S.next();if(r.done)return h;if(r.value?.[f]){if(!n)throw Error("@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.");for(let[t,e]of Object.entries(r.value))o[t]=e}return{async*[Symbol.asyncIterator](){if(!r?.value?.[f])yield r.value;while(!0){let{done:t,value:e}=await S.next();if(t)break;yield e}}}}writeEventBody(i,n,o){let c=this.serializer,y=i,p=null,d,f=(()=>{return n.getSchema()[4].includes(i)})(),h={};if(!f){let[t,e]=o[i];y=t,c.write(15,e)}else{let t=n.getMemberSchema(i);if(t.isStructSchema()){for(let[e,a]of t.structIterator()){let{eventHeader:l,eventPayload:m}=a.getMergedTraits();if(m)p=e;else if(l){let u=o[i][e],s="binary";if(a.isNumericSchema())if(-2147483648<=u&&u<=2147483647)s="integer";else s="long";else if(a.isTimestampSchema())s="timestamp";else if(a.isStringSchema())s="string";else if(a.isBooleanSchema())s="boolean";if(u!=null)h[e]={type:s,value:u},delete o[i][e]}}if(p!==null){let e=t.getMemberSchema(p);if(e.isBlobSchema())d="application/octet-stream";else if(e.isStringSchema())d="text/plain";c.write(e,o[i][p])}else c.write(t,o[i])}else if(t.isUnitSchema())c.write(t,{});else throw Error("@smithy/core/event-streams - non-struct member not supported in event stream union.")}let S=c.flush()??new Uint8Array;return{body:typeof S==="string"?(this.serdeContext?.utf8Decoder??z.fromUtf8)(S):S,eventType:y,explicitPayloadContentType:d,additionalHeaders:h}}}var z,T;var C=E(()=>{z=M();T=x});C();export{T as EventStreamSerde};export default {get EventStreamSerde(){return T}};
2
+ import{Y as M}from"./chunk-rdnm6rem.js";import{Mg as E}from"./chunk-9tsw1bmt.js";class x{marshaller;serializer;deserializer;serdeContext;defaultContentType;constructor({marshaller:i,serializer:n,deserializer:o,serdeContext:c,defaultContentType:y}){this.marshaller=i,this.serializer=n,this.deserializer=o,this.serdeContext=c,this.defaultContentType=y}async serializeEventStream({eventStream:i,requestSchema:n,initialRequest:o}){let c=this.marshaller,y=n.getEventStreamMember(),p=n.getMemberSchema(y),d=this.serializer,f=this.defaultContentType,h=Symbol("initialRequestMarker"),S={async*[Symbol.asyncIterator](){if(o){let r={":event-type":{type:"string",value:"initial-request"},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:f}};d.write(n,o);let t=d.flush();yield{[h]:!0,headers:r,body:t}}for await(let r of i)yield r}};return c.serialize(S,(r)=>{if(r[h])return{headers:r.headers,body:r.body};let t=Object.keys(r).find((s)=>{return s!=="__type"})??"",{additionalHeaders:e,body:a,eventType:l,explicitPayloadContentType:m}=this.writeEventBody(t,p,r);return{headers:{":event-type":{type:"string",value:l},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:m??f},...e},body:a}})}async deserializeEventStream({response:i,responseSchema:n,initialResponseContainer:o}){let c=this.marshaller,y=n.getEventStreamMember(),d=n.getMemberSchema(y).getMemberSchemas(),f=Symbol("initialResponseMarker"),h=c.deserialize(i.body,async(t)=>{let e=Object.keys(t).find((l)=>{return l!=="__type"})??"",a=t[e].body;if(e==="initial-response"){let l=await this.deserializer.read(n,a);return delete l[y],{[f]:!0,...l}}else if(e in d){let l=d[e];if(l.isStructSchema()){let m={},u=!1;for(let[s,g]of l.structIterator()){let{eventHeader:v,eventPayload:w}=g.getMergedTraits();if(u=u||Boolean(v||w),w){if(g.isBlobSchema())m[s]=a;else if(g.isStringSchema())m[s]=(this.serdeContext?.utf8Encoder??z.toUtf8)(a);else if(g.isStructSchema())m[s]=await this.deserializer.read(g,a)}else if(v){let b=t[e].headers[s]?.value;if(b!=null)if(g.isNumericSchema())if(b&&typeof b==="object"&&"bytes"in b)m[s]=BigInt(b.toString());else m[s]=Number(b);else m[s]=b}}if(u)return{[e]:m};if(a.byteLength===0)return{[e]:{}}}return{[e]:await this.deserializer.read(l,a)}}else return{$unknown:t}}),S=h[Symbol.asyncIterator](),r=await S.next();if(r.done)return h;if(r.value?.[f]){if(!n)throw Error("@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.");for(let[t,e]of Object.entries(r.value))o[t]=e}return{async*[Symbol.asyncIterator](){if(!r?.value?.[f])yield r.value;while(!0){let{done:t,value:e}=await S.next();if(t)break;yield e}}}}writeEventBody(i,n,o){let c=this.serializer,y=i,p=null,d,f=(()=>{return n.getSchema()[4].includes(i)})(),h={};if(!f){let[t,e]=o[i];y=t,c.write(15,e)}else{let t=n.getMemberSchema(i);if(t.isStructSchema()){for(let[e,a]of t.structIterator()){let{eventHeader:l,eventPayload:m}=a.getMergedTraits();if(m)p=e;else if(l){let u=o[i][e],s="binary";if(a.isNumericSchema())if(-2147483648<=u&&u<=2147483647)s="integer";else s="long";else if(a.isTimestampSchema())s="timestamp";else if(a.isStringSchema())s="string";else if(a.isBooleanSchema())s="boolean";if(u!=null)h[e]={type:s,value:u},delete o[i][e]}}if(p!==null){let e=t.getMemberSchema(p);if(e.isBlobSchema())d="application/octet-stream";else if(e.isStringSchema())d="text/plain";c.write(e,o[i][p])}else c.write(t,o[i])}else if(t.isUnitSchema())c.write(t,{});else throw Error("@smithy/core/event-streams - non-struct member not supported in event stream union.")}let S=c.flush()??new Uint8Array;return{body:typeof S==="string"?(this.serdeContext?.utf8Decoder??z.fromUtf8)(S):S,eventType:y,explicitPayloadContentType:d,additionalHeaders:h}}}var z,T;var C=E(()=>{z=M();T=x});C();export{T as EventStreamSerde};export default {get EventStreamSerde(){return T}};
3
3
 
4
- //# debugId=AD371A783EF685E964756E2164756E21
4
+ //# debugId=648CFA343B6053E564756E2164756E21
@@ -5,6 +5,6 @@
5
5
  "'use strict';\n\nvar utilUtf8 = require('@smithy/util-utf8');\n\nclass EventStreamSerde {\n marshaller;\n serializer;\n deserializer;\n serdeContext;\n defaultContentType;\n constructor({ marshaller, serializer, deserializer, serdeContext, defaultContentType, }) {\n this.marshaller = marshaller;\n this.serializer = serializer;\n this.deserializer = deserializer;\n this.serdeContext = serdeContext;\n this.defaultContentType = defaultContentType;\n }\n async serializeEventStream({ eventStream, requestSchema, initialRequest, }) {\n const marshaller = this.marshaller;\n const eventStreamMember = requestSchema.getEventStreamMember();\n const unionSchema = requestSchema.getMemberSchema(eventStreamMember);\n const serializer = this.serializer;\n const defaultContentType = this.defaultContentType;\n const initialRequestMarker = Symbol(\"initialRequestMarker\");\n const eventStreamIterable = {\n async *[Symbol.asyncIterator]() {\n if (initialRequest) {\n const headers = {\n \":event-type\": { type: \"string\", value: \"initial-request\" },\n \":message-type\": { type: \"string\", value: \"event\" },\n \":content-type\": { type: \"string\", value: defaultContentType },\n };\n serializer.write(requestSchema, initialRequest);\n const body = serializer.flush();\n yield {\n [initialRequestMarker]: true,\n headers,\n body,\n };\n }\n for await (const page of eventStream) {\n yield page;\n }\n },\n };\n return marshaller.serialize(eventStreamIterable, (event) => {\n if (event[initialRequestMarker]) {\n return {\n headers: event.headers,\n body: event.body,\n };\n }\n const unionMember = Object.keys(event).find((key) => {\n return key !== \"__type\";\n }) ?? \"\";\n const { additionalHeaders, body, eventType, explicitPayloadContentType } = this.writeEventBody(unionMember, unionSchema, event);\n const headers = {\n \":event-type\": { type: \"string\", value: eventType },\n \":message-type\": { type: \"string\", value: \"event\" },\n \":content-type\": { type: \"string\", value: explicitPayloadContentType ?? defaultContentType },\n ...additionalHeaders,\n };\n return {\n headers,\n body,\n };\n });\n }\n async deserializeEventStream({ response, responseSchema, initialResponseContainer, }) {\n const marshaller = this.marshaller;\n const eventStreamMember = responseSchema.getEventStreamMember();\n const unionSchema = responseSchema.getMemberSchema(eventStreamMember);\n const memberSchemas = unionSchema.getMemberSchemas();\n const initialResponseMarker = Symbol(\"initialResponseMarker\");\n const asyncIterable = marshaller.deserialize(response.body, async (event) => {\n const unionMember = Object.keys(event).find((key) => {\n return key !== \"__type\";\n }) ?? \"\";\n const body = event[unionMember].body;\n if (unionMember === \"initial-response\") {\n const dataObject = await this.deserializer.read(responseSchema, body);\n delete dataObject[eventStreamMember];\n return {\n [initialResponseMarker]: true,\n ...dataObject,\n };\n }\n else if (unionMember in memberSchemas) {\n const eventStreamSchema = memberSchemas[unionMember];\n if (eventStreamSchema.isStructSchema()) {\n const out = {};\n let hasBindings = false;\n for (const [name, member] of eventStreamSchema.structIterator()) {\n const { eventHeader, eventPayload } = member.getMergedTraits();\n hasBindings = hasBindings || Boolean(eventHeader || eventPayload);\n if (eventPayload) {\n if (member.isBlobSchema()) {\n out[name] = body;\n }\n else if (member.isStringSchema()) {\n out[name] = (this.serdeContext?.utf8Encoder ?? utilUtf8.toUtf8)(body);\n }\n else if (member.isStructSchema()) {\n out[name] = await this.deserializer.read(member, body);\n }\n }\n else if (eventHeader) {\n const value = event[unionMember].headers[name]?.value;\n if (value != null) {\n if (member.isNumericSchema()) {\n if (value && typeof value === \"object\" && \"bytes\" in value) {\n out[name] = BigInt(value.toString());\n }\n else {\n out[name] = Number(value);\n }\n }\n else {\n out[name] = value;\n }\n }\n }\n }\n if (hasBindings) {\n return {\n [unionMember]: out,\n };\n }\n if (body.byteLength === 0) {\n return {\n [unionMember]: {},\n };\n }\n }\n return {\n [unionMember]: await this.deserializer.read(eventStreamSchema, body),\n };\n }\n else {\n return {\n $unknown: event,\n };\n }\n });\n const asyncIterator = asyncIterable[Symbol.asyncIterator]();\n const firstEvent = await asyncIterator.next();\n if (firstEvent.done) {\n return asyncIterable;\n }\n if (firstEvent.value?.[initialResponseMarker]) {\n if (!responseSchema) {\n throw new Error(\"@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.\");\n }\n for (const [key, value] of Object.entries(firstEvent.value)) {\n initialResponseContainer[key] = value;\n }\n }\n return {\n async *[Symbol.asyncIterator]() {\n if (!firstEvent?.value?.[initialResponseMarker]) {\n yield firstEvent.value;\n }\n while (true) {\n const { done, value } = await asyncIterator.next();\n if (done) {\n break;\n }\n yield value;\n }\n },\n };\n }\n writeEventBody(unionMember, unionSchema, event) {\n const serializer = this.serializer;\n let eventType = unionMember;\n let explicitPayloadMember = null;\n let explicitPayloadContentType;\n const isKnownSchema = (() => {\n const struct = unionSchema.getSchema();\n return struct[4].includes(unionMember);\n })();\n const additionalHeaders = {};\n if (!isKnownSchema) {\n const [type, value] = event[unionMember];\n eventType = type;\n serializer.write(15, value);\n }\n else {\n const eventSchema = unionSchema.getMemberSchema(unionMember);\n if (eventSchema.isStructSchema()) {\n for (const [memberName, memberSchema] of eventSchema.structIterator()) {\n const { eventHeader, eventPayload } = memberSchema.getMergedTraits();\n if (eventPayload) {\n explicitPayloadMember = memberName;\n }\n else if (eventHeader) {\n const value = event[unionMember][memberName];\n let type = \"binary\";\n if (memberSchema.isNumericSchema()) {\n if ((-2) ** 31 <= value && value <= 2 ** 31 - 1) {\n type = \"integer\";\n }\n else {\n type = \"long\";\n }\n }\n else if (memberSchema.isTimestampSchema()) {\n type = \"timestamp\";\n }\n else if (memberSchema.isStringSchema()) {\n type = \"string\";\n }\n else if (memberSchema.isBooleanSchema()) {\n type = \"boolean\";\n }\n if (value != null) {\n additionalHeaders[memberName] = {\n type,\n value,\n };\n delete event[unionMember][memberName];\n }\n }\n }\n if (explicitPayloadMember !== null) {\n const payloadSchema = eventSchema.getMemberSchema(explicitPayloadMember);\n if (payloadSchema.isBlobSchema()) {\n explicitPayloadContentType = \"application/octet-stream\";\n }\n else if (payloadSchema.isStringSchema()) {\n explicitPayloadContentType = \"text/plain\";\n }\n serializer.write(payloadSchema, event[unionMember][explicitPayloadMember]);\n }\n else {\n serializer.write(eventSchema, event[unionMember]);\n }\n }\n else if (eventSchema.isUnitSchema()) {\n serializer.write(eventSchema, {});\n }\n else {\n throw new Error(\"@smithy/core/event-streams - non-struct member not supported in event stream union.\");\n }\n }\n const messageSerialization = serializer.flush() ?? new Uint8Array();\n const body = typeof messageSerialization === \"string\"\n ? (this.serdeContext?.utf8Decoder ?? utilUtf8.fromUtf8)(messageSerialization)\n : messageSerialization;\n return {\n body,\n eventType,\n explicitPayloadContentType,\n additionalHeaders,\n };\n }\n}\n\nexports.EventStreamSerde = EventStreamSerde;\n"
6
6
  ],
7
7
  "mappings": "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",
8
- "debugId": "AD371A783EF685E964756E2164756E21",
8
+ "debugId": "648CFA343B6053E564756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -0,0 +1,7 @@
1
+ // @bun
2
+ import{sf as O,tf as _,uf as B}from"./chunk-jhe0t7yj.js";import{xf as R}from"./chunk-1jcp8m8h.js";import{tg as s}from"./chunk-d3jkypc7.js";import{Gg as j}from"./chunk-cbycz5z3.js";import{Ng as DH}from"./chunk-9tsw1bmt.js";class f{static kind="controller";constructor(){}}class HH extends f{}function F(H){let K=new Map;if(!H)return K;for(let G of H.split(";")){let W=G.indexOf("=");if(W===-1)continue;let Q=G.slice(0,W).trim();if(!Q)continue;K.set(Q,G.slice(W+1).trim())}return K}function zH(H){return F(H.headers.get("cookie"))}function M(H){if(!/^\d+$/.test(H))return null;let K=Number(H);return Number.isSafeInteger(K)?K:null}function g(H){if(!H)return null;let K=H.trim();if(!/^bytes=/i.test(K))return null;let W=K.slice(6).split(",").map((J)=>J.trim()).filter((J)=>J!=="");if(W.length!==1)return null;let Q=W[0],T=Q.indexOf("-");if(T===-1)return null;let X=Q.slice(0,T),Z=Q.slice(T+1);if(X===""){let J=M(Z);if(J===null)return null;return{kind:"suffix",suffixLength:J}}let Y=M(X);if(Y===null)return null;if(Z==="")return{kind:"offset",start:Y,end:null};let $=M(Z);if($===null||$<Y)return null;return{kind:"offset",start:Y,end:$}}function v(H,K){if(!Number.isFinite(K)||K<=0)return null;let G,W;if(H.kind==="suffix"){if(H.suffixLength<=0)return null;G=Math.max(0,K-H.suffixLength),W=K-1}else{if(H.start>=K)return null;if(G=H.start,W=H.end===null?K-1:Math.min(H.end,K-1),W<G)return null}return{start:G,end:W,length:W-G+1}}function xH(H){if(H.kind==="suffix")return`bytes=-${H.suffixLength}`;return H.end===null?`bytes=${H.start}-`:`bytes=${H.start}-${H.end}`}function FH(H){if(!H)return null;let K=/^bytes\s+(\d+)-(\d+)\/(\d+)$/i.exec(H.trim());if(!K)return null;let G=M(K[1]),W=M(K[2]),Q=M(K[3]);if(G===null||W===null||Q===null||W<G)return null;return{start:G,end:W,total:Q}}function NH(H,K,G){return`bytes ${H}-${K}/${G}`}function h(H){return`bytes */${H}`}class A extends O{errors={};constructor(H){super("Validation error");this.name="ValidationError",this.errors=H,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:H,status:400}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}function KH(H){let[K,G]=H.match(/\d+|\D+/g)??[];if(!K||!G)return 0;let W=Number.parseInt(K);switch(G){case"B":return W;case"KB":return W*1024;case"MB":return W*1024*1024;case"GB":return W*1024*1024*1024;case"TB":return W*1024*1024*1024*1024;default:return 0}}function WH(H){switch(H){case"image":return"image";case"png":return"image/png";case"jpg":return"image/jpeg";case"jpeg":return"image/jpeg";case"ttf":return"font/ttf";case"excel":return"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";case"csv":return"text/csv";case"word":return"application/vnd.openxmlformats-officedocument.wordprocessingml.document";case"pdf":return"application/pdf";case"json":return"application/json";default:return H}}function m(H){if(typeof H==="string"||Array.isArray(H))return H.length;return}function N(H){return typeof H==="number"&&!Number.isNaN(H)}var GH=["required","string","boolean","number","email","password","min","max","gte","lte","file","fileType","fileSize"];class D extends Error{name="InvalidValidationRuleError"}function z(H,K){let G=K===void 0||K.trim()===""?Number.NaN:Number(K);if(Number.isNaN(G))throw new D(`Validation rule "${H}:${K??""}" needs a number, e.g. "${H}:3"`);return G}function d(H){let[K,G]=H.split(":");switch(K){case"required":return(W)=>{if(W instanceof Blob)return W.size>0;if(W===null||W===void 0)return!1;if(typeof W==="string"||Array.isArray(W))return W.length>0;return!0};case"string":return(W)=>typeof W==="string";case"boolean":return(W)=>typeof W==="boolean";case"number":return(W)=>N(W);case"password":return(W)=>{return typeof W==="string"&&/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(W)};case"min":{let W=z(K,G);return(Q)=>{let T=m(Q);return T!==void 0&&T>=W}}case"max":{let W=z(K,G);return(Q)=>{let T=m(Q);return T!==void 0&&T<=W}}case"gte":{let W=z(K,G);return(Q)=>N(Q)&&Q>=W}case"lte":{let W=z(K,G);return(Q)=>N(Q)&&Q<=W}case"email":return(W)=>{return typeof W==="string"&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(W)};case"file":return(W)=>{return W instanceof Blob};case"fileType":{if(!G)throw new D('Validation rule "fileType" needs a type, e.g. "fileType:png" or "fileType:image"');let W=WH(G);return(Q)=>Q instanceof Blob&&Q.type.startsWith(W)}case"fileSize":{let W=KH(G??"");if(W===0&&!/^0+(B|KB|MB|GB|TB)$/.test(G??""))throw new D(`Validation rule "fileSize:${G??""}" needs a whole size in B, KB, MB, GB or TB, e.g. "fileSize:5MB"`);return(Q)=>Q instanceof Blob&&Q.size<=W}default:throw new D(`Unknown validation rule "${H}". Known rules: ${GH.join(", ")}`)}}function p(H){if(typeof H!=="string")return null;let[K]=H.split(";",1),G=K.trim().toLowerCase();return G===""?null:G}function i(H){if(H===null)return!1;if(H==="application/json")return!0;let K=H.indexOf("/");return K>0&&H.endsWith("+json")&&H.length>K+1+5}var V=new WeakMap;function EH(H,K){V.set(H,{clientAddress:K})}function u(H){return V.has(H)}function qH(H){return V.get(H)?.clientAddress}var n=new WeakMap;function yH(H,K){n.set(H,K)}function o(H){return n.get(H)??null}var S=new WeakMap;function bH(H,K){let G=S.get(H)??[];if(!G.includes(K))S.set(H,[...G,K])}function cH(H){return S.get(H)??[]}class L{data;constructor(H){this.data=H}get(H){return this.data[H]}has(H){return this.data[H]!==void 0}toJSON(){return this.data}}class QH{kind;rawRequest;headers;cookies;search;schema={};routePath;params;domain;constructor(H,K,G,W){if(!H){let Y=R.getStore().req;this.params=Y.params,this.rawRequest=Y.rawRequest,this.kind=Y.kind,this.routePath=Y.routePath,this.domain=Y.domain??null}else this.params=K,this.rawRequest=H,this.routePath=W,this.kind=G??"api",this.domain=o(H);this.headers=this.rawRequest.headers;let Q=F(this.rawRequest.headers.get("Cookie")),T=new URL(this.rawRequest.url),X=new Map;for(let[Y,$]of T.searchParams)if(X.has(Y)){let J=X.get(Y);if(Array.isArray(J))J.push($),X.set(Y,J);else X.set(Y,[J,$])}else X.set(Y,$);let Z=Object.fromEntries(X.entries());this.search=new L(Z),this.cookies=Q}locale(){return R.getStore().locale}ctx(){return R.getStore()}isModelOriginated(){return u(this.rawRequest)}get signal(){return this.rawRequest.signal}range(){return g(this.rawRequest.headers.get("Range"))}refine(H){return{}}async parseBody(){let H=p(this.rawRequest.headers.get("Content-Type"));if(i(H))return new L(await this.parseJsonBody());if(H==="application/x-www-form-urlencoded"||H==="multipart/form-data"){let K;try{K=await this.rawRequest.formData()}catch{throw new O("The request body could not be read as a form.")}let G=new Map;for(let[W,Q]of K.entries())if(G.has(W)){let T=G.get(W);if(Array.isArray(T))T.push(Q);else G.set(W,[T,Q])}else G.set(W,Q);return new L(Object.fromEntries(G.entries()))}return new L({})}async parseJsonBody(){if(!this.rawRequest.body)return{};let H;try{H=await this.rawRequest.text()}catch{throw new O("The request body could not be read.")}if(H.trim()==="")return{};let K;try{K=JSON.parse(H)}catch{throw new O("The request body is not valid JSON.")}if(K===null||typeof K!=="object")throw new O("The request body must be a JSON object.");return K}validateInput(H){let K={},G=Object.entries(this.schema).map(([W,Q])=>({key:W,rules:Object.entries(Q).map(([T,X])=>({rule:T,message:X,check:typeof X==="function"?null:this.ruleFor(W,T)}))}));for(let{key:W,rules:Q}of G){let T=H.get(W),X=Q.some(({rule:$})=>$==="required"),Z=T===void 0||T===null||T==="",Y=[];for(let{rule:$,message:J,check:e}of Q){let P=J,x=!1;if(typeof J==="function")P=J(T),x=typeof P>"u";else x=e(T);if(x)continue;if(Z&&!X)continue;if($==="required"){Y.splice(0,Y.length,String(P));break}if(!Y.includes(String(P)))Y.push(String(P))}if(Y.length>0)K[W]=Y}for(let[W,Q]of Object.entries(this.refine(H.toJSON())??{})){let T=K[W]??[];K[W]=T.includes(Q)?T:[...T,Q]}if(Object.keys(K).length>0)throw new A(K);return H}ruleFor(H,K){try{return d(K)}catch(G){if(G instanceof D)throw new D(`${this.constructor.name}.schema.${H}: ${G.message}`);throw G}}async input(){return this.validateInput(await this.parseBody())}async safeInput(){let H=await this.parseBody();try{return this.validateInput(H),{isValid:!0,errors:{},input:H}}catch(K){if(!(K instanceof A))throw K;return{isValid:!1,errors:K.errors,input:H}}}}class TH extends O{error;constructor(H="Not authorized"){super(H);this.name="AuthorizationError",this.error=H,this.payload={api:{status:401,data:{error:B("authorization",this.error,401)}},view:{}}}}class w extends O{static apiStatus=403;error;constructor(H="Insufficient permissions"){super(H);this.name="InsufficientPermissionsError",this.error=H,this.payload={api:{status:w.apiStatus,data:{error:B("permission",this.error,w.apiStatus)}},view:{status:403}}}}class I extends O{total;constructor(H){super("Range not satisfiable");this.total=H;this.name="RangeNotSatisfiableError",this.payload={api:{status:416,data:{error:_("range_not_satisfiable","Range not satisfiable",416)},headers:{"Content-Range":h(H),"Accept-Ranges":"bytes","Cache-Control":"no-store"}},view:{}}}}class U extends O{fileName;constructor(H){super("File not found");this.fileName=H;this.name="FileNotFoundError",this.payload={api:{status:404,data:{error:_("not_found","Not found",404)},headers:{"Cache-Control":"no-store"}},view:{}}}}class XH extends O{constructor(H={}){super("Authentication error");this.name="AuthenticationError";let K=H.redirectTo??"/auth/sign-in";this.payload={api:{status:401,data:{error:B("authentication","Authentication error",401)}},viewData:{status:200,data:{},headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate"},directive:{kind:"Redirect",path:K}},view:{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:K}}}}}class C{static getFacadeAccessor(){throw Error(`Facade [${this.name}] does not implement getFacadeAccessor().`)}static getFacadeRoot(){return s(this.getFacadeAccessor())}}class E{async delete(H){throw Error(`${this.constructor.name} does not implement delete(). Override it to remove objects from this backend.`)}async read(H){let K=typeof H==="string"?{name:H}:H,G=await this.fetch({name:K.name,bucket:K.bucket});if(!G.ok)throw new U(K.name);let W=G.headers.get("Content-Type")??"application/octet-stream",Q=G.headers.get("ETag")??void 0,T=G.headers.get("Last-Modified"),X=T?new Date(T):void 0;if(K.range){let $=await G.blob();return{body:$,start:0,end:$.size-1,total:$.size,partial:!1,type:W,etag:Q,lastModified:X,name:K.name}}let Z=Number(G.headers.get("Content-Length")),Y=Number.isFinite(Z)?Z:0;return{body:G.body,start:0,end:Y-1,total:Y,partial:!1,type:W,etag:Q,lastModified:X,name:K.name}}async size(H){let K=typeof H==="string"?H:H.name,G=typeof H==="string"?void 0:H.bucket,W=await this.fetch({name:K,bucket:G});if(!W.ok)throw new U(K);let Q=Number(W.headers.get("Content-Length"));if(Number.isFinite(Q))return await W.body?.cancel(),Q;return(await W.blob()).size}}function t(H,K){if(!K)return H;let G=H.getReader(),W=!1,Q,T=()=>{if(W=!0,Q)K.removeEventListener("abort",Q)};return new ReadableStream({start(X){if(Q=()=>{if(W)return;T(),X.error(K.reason),G.cancel(K.reason).catch(()=>{})},K.aborted)Q();else K.addEventListener("abort",Q,{once:!0})},async pull(X){let Z;try{Z=await G.read()}catch(Y){if(W)return;T(),X.error(Y);return}if(W)return;if(Z.done){T(),X.close();return}X.enqueue(Z.value)},cancel(X){return T(),G.cancel(X)}},{highWaterMark:0})}import{readdir as YH,unlink as ZH}from"fs/promises";import{isAbsolute as $H,relative as JH,resolve as l,sep as OH}from"path";class q extends E{configured;constructor(H){super();this.configured=H}get folderPath(){return this.configured??`${j()}/storage`}async put(H,{signal:K}={}){K?.throwIfAborted();let G,W;if(H instanceof Blob)G=H,W=`${Bun.randomUUIDv7()}.${H.type.split("/")[1].split(";")[0]}`;else G=H.body,W=H.name;let Q=G instanceof Buffer?G:G instanceof Blob||G instanceof File?Buffer.from(await G.arrayBuffer()):"",T=`${this.folderPath}/${W}`;return K?.throwIfAborted(),await Bun.write(T,Q),W}async fetch(H,{signal:K}={}){K?.throwIfAborted();let G=process.env.BUCKET_NAME,W;if(typeof H==="string")W=H;else G=H.bucket??G,W=H.name;if(!W)throw Error("Object name has to be specified");let Q=`${this.folderPath}/${W}`,T=Bun.file(Q),X=t(Bun.file(Q).stream(),K),Z=new Date(T.lastModified).toUTCString();return new Response(X,{headers:{"Content-Type":T.type,"Content-Length":String(T.size),"Cache-Control":"private, max-age=12000, must-revalidate","Last-Modified":Z}})}async read(H){let K=typeof H==="string"?{name:H}:H,{name:G,range:W=null}=K;if(!G)throw Error("Object name has to be specified");let Q=Bun.file(`${this.folderPath}/${G}`);if(!await Q.exists())throw new U(G);let T=Q.size,X=W?v(W,T):null;if(W&&!X)throw new I(T);let Z=X?.start??0,Y=X?X.end:T-1;return{body:X?Q.slice(Z,Y+1):Q,start:Z,end:Y,total:T,partial:Boolean(X),type:Q.type||"application/octet-stream",lastModified:new Date(Q.lastModified),name:G}}async size(H){let K=typeof H==="string"?H:H.name,G=Bun.file(`${this.folderPath}/${K}`);if(!await G.exists())throw new U(K);return G.size}async delete(H){let K=typeof H==="string"?H:H.name;if(!K)throw Error("Object name has to be specified");let G=l(this.folderPath),W=l(G,K),Q=JH(G,W);if(!Q||Q===".."||Q.startsWith(`..${OH}`)||$H(Q))throw Error(`Refusing to delete "${K}": it is outside the storage folder`);try{await ZH(W)}catch(T){if(T?.code==="ENOENT")return;throw T}}async list(){return await YH(this.folderPath)}}function O0(H){return H}function r(){return{driver:new q}}class k{static token="filesystem";driver;constructor(H={}){this.driver=H.driver??r().driver}}import{Buffer as RH}from"buffer";async function a(H){try{return(await import("sharp")).default}catch(K){throw Error(`${H} requires the 'sharp' package. Install it with \`bun add sharp\`.`,{cause:K})}}class UH extends C{static getFacadeAccessor(){return k}static async put(H,K={}){return this.getFacadeRoot().driver.put(H,K)}static async metadata(H){let K=RH.from(await H.arrayBuffer()),G=await a("Storage.metadata()");try{return await G(K).metadata()}catch{return{}}}static async fetch(H,K={}){return K.signal?.throwIfAborted(),this.getFacadeRoot().driver.fetch(H,K)}static async read(H,K={}){let G=typeof H==="string"?{name:H}:{...H},W="range"in K?K.range??null:G.range!==void 0?G.range:R.getStore()?.rangeRequest??null;return this.getFacadeRoot().driver.read({...G,range:W})}static list(H){return this.getFacadeRoot().driver.list(H)}static async delete(H){return this.getFacadeRoot().driver.delete(H)}}import{mkdir as y,readdir as MH,access as PH}from"fs/promises";async function b(H){try{return await PH(H),!0}catch{return!1}}class c{config;static token="log";writer;isReady=!1;flushTimeout;fileSize=0;writerSize=0;isCreatingFile=!1;bootPromise=null;currentLogFilePath;get logsDirPath(){return`${j()}/storage/logs`}constructor(H){this.config=H}boot(){if(!this.bootPromise)this.bootPromise=this.createStorage().catch((H)=>{console.error("Log storage unavailable, file logging disabled",H)}).then(()=>{this.isReady=!0});return this.bootPromise}async createStorage(){let H=`${j()}/storage`;if(!await b(H))await y(H);if(!await b(this.logsDirPath))await y(this.logsDirPath);await this.newLogFile()}async newLogFile(){if(!await b(this.logsDirPath))await y(this.logsDirPath);if(this.isCreatingFile=!0,this.currentLogFilePath){this.writer.flush(),this.writer.end(),this.writer=null;let G=new File([await Bun.file(this.currentLogFilePath).arrayBuffer()],this.currentLogFilePath.split("/").pop(),{type:"text/plain"});this.config.onLogFileClosed(G),this.fileSize=0,this.writerSize=0}let K=(await MH(this.logsDirPath)).sort().reverse()[0];if(K){let G=Bun.file(`${this.logsDirPath}/${K}`);if(G.size<this.config.maxFileSize)this.currentLogFilePath=`${this.logsDirPath}/${K}`,this.writer=G.writer(),this.writer.write(await G.text()),this.writer.write(`
3
+ `),this.writer.flush(),this.fileSize=G.size}if(!this.writer){let G=`${new Date(Date.now()).toISOString()}.log`.replaceAll(":","-");this.currentLogFilePath=`${this.logsDirPath}/${G}`;let W=Bun.file(`${this.logsDirPath}/${G}`);this.writer=W.writer(),this.fileSize=0,this.writerSize=0}this.isCreatingFile=!1}async log(H,K,G={}){if(!this.isReady)await this.boot();let W=R.getStore(),Q={};if(W)Q={url:W.req.rawRequest.url,method:W.req.rawRequest.method,headers:W.req.rawRequest.headers,body:W.req.rawRequest.body};let T={timestamp:new Date(Date.now()).toISOString(),env:Bun.env.NODE_ENV,level:H,message:K,metadata:{...Q,...G}},X="";try{X=JSON.stringify(T)}catch(Z){console.log("Error parsing log object",Z)}try{let Z=this.config.onLogCreated(T);if(Z instanceof Promise)Z.catch((Y)=>console.error("Error in onLogCreated",Y))}catch(Z){console.error("Error in onLogCreated",Z)}if(!this.writer)return;this.writerSize+=X.length,this.fileSize+=X.length;try{this.writer.write(X),this.writer.write(`
4
+ `),this.tryFlush()}catch(Z){console.error("Error writing log",Z)}}async tryFlush(){if(this.fileSize>this.config.maxFileSize){if(!this.isCreatingFile)await this.newLogFile()}if(this.writerSize>this.config.maxFileSize/2)await this.writer.flush(),this.writerSize=0,await this.newLogFile();else clearTimeout(this.flushTimeout),this.flushTimeout=setTimeout(async()=>{await this.writer.flush(),this.writerSize=0},100)}}class LH extends C{static getFacadeAccessor(){return c}static debug(H,K){this.getFacadeRoot().log("debug",H,K)}static info(H,K){this.getFacadeRoot().log("info",H,K)}static notice(H,K){this.getFacadeRoot().log("notice",H,K)}static warning(H,K){this.getFacadeRoot().log("warning",H,K)}static error(H,K){this.getFacadeRoot().log("error",H,K)}static critical(H,K){this.getFacadeRoot().log("critical",H,K)}static alert(H,K){this.getFacadeRoot().log("alert",H,K)}static emergency(H,K){this.getFacadeRoot().log("emergency",H,K)}}class CH{config;static token="redis";instance=null;constructor(H={}){this.config=H}get client(){return this.instance??=new(jH())(this.config.url,this.config.options)}set client(H){this.instance=H}close(){let H=this.instance;this.instance=null,H?.close()}}function jH(){let H=globalThis.Bun?.RedisClient;if(typeof H!=="function")throw Error("Redis requires Bun's built-in Redis client, which this runtime does not provide. Run the app under Bun, or bind your own client for the 'redis' token.");return H}
5
+ export{f as Ie,HH as Je,zH as Ke,p as Le,EH as Me,qH as Ne,g as Oe,v as Pe,xH as Qe,FH as Re,NH as Se,h as Te,yH as Ue,o as Ve,bH as We,cH as Xe,A as Ye,D as Ze,QH as _e,TH as $e,w as af,I as bf,U as cf,XH as df,C as ef,a as ff,E as gf,t as hf,q as if,O0 as jf,r as kf,k as lf,UH as mf,c as nf,LH as of,CH as pf};
6
+
7
+ //# debugId=A4BAD261A91D5FDC64756E2164756E21