@mastra/server 0.0.0-toolOptionTypes-20250917085558 → 0.0.0-top-level-fix-20251211111608

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 (448) hide show
  1. package/CHANGELOG.md +1684 -3
  2. package/README.md +2 -2
  3. package/dist/{chunk-PPYGWINI.cjs → chunk-2PLXW4ZX.cjs} +74 -74
  4. package/dist/{chunk-PPYGWINI.cjs.map → chunk-2PLXW4ZX.cjs.map} +1 -1
  5. package/dist/chunk-3SFLFUKY.js +116 -0
  6. package/dist/chunk-3SFLFUKY.js.map +1 -0
  7. package/dist/chunk-3XI22UQR.cjs +148 -0
  8. package/dist/chunk-3XI22UQR.cjs.map +1 -0
  9. package/dist/chunk-4W2SM6CG.js +294 -0
  10. package/dist/chunk-4W2SM6CG.js.map +1 -0
  11. package/dist/chunk-5W4RPVTK.cjs +49 -0
  12. package/dist/chunk-5W4RPVTK.cjs.map +1 -0
  13. package/dist/{chunk-7NADHFD2.cjs → chunk-64ITUOXI.cjs} +2 -2
  14. package/dist/chunk-64ITUOXI.cjs.map +1 -0
  15. package/dist/{chunk-MMROOK5J.js → chunk-6QWQZI4Q.js} +2 -2
  16. package/dist/{chunk-7NADHFD2.cjs.map → chunk-6QWQZI4Q.js.map} +1 -1
  17. package/dist/{chunk-3THIIWWW.cjs → chunk-7O3KPUJ4.cjs} +230 -34
  18. package/dist/chunk-7O3KPUJ4.cjs.map +1 -0
  19. package/dist/chunk-C3UIIRAT.cjs +920 -0
  20. package/dist/chunk-C3UIIRAT.cjs.map +1 -0
  21. package/dist/chunk-CDRVS35Y.js +23226 -0
  22. package/dist/chunk-CDRVS35Y.js.map +1 -0
  23. package/dist/chunk-DRUNNM4C.js +328 -0
  24. package/dist/chunk-DRUNNM4C.js.map +1 -0
  25. package/dist/chunk-EBWTF2DH.cjs +810 -0
  26. package/dist/chunk-EBWTF2DH.cjs.map +1 -0
  27. package/dist/chunk-ER3QM7DD.js +46 -0
  28. package/dist/chunk-ER3QM7DD.js.map +1 -0
  29. package/dist/chunk-FPCGLPLJ.cjs +297 -0
  30. package/dist/chunk-FPCGLPLJ.cjs.map +1 -0
  31. package/dist/chunk-FYY54HZC.js +310 -0
  32. package/dist/chunk-FYY54HZC.js.map +1 -0
  33. package/dist/chunk-GFF2I6UD.js +354 -0
  34. package/dist/chunk-GFF2I6UD.js.map +1 -0
  35. package/dist/chunk-GN2LFMET.cjs +23268 -0
  36. package/dist/chunk-GN2LFMET.cjs.map +1 -0
  37. package/dist/chunk-H2RMXG2Q.cjs +167 -0
  38. package/dist/chunk-H2RMXG2Q.cjs.map +1 -0
  39. package/dist/chunk-HAJOEDNB.js +274 -0
  40. package/dist/chunk-HAJOEDNB.js.map +1 -0
  41. package/dist/chunk-HT4LP3BO.js +75 -0
  42. package/dist/chunk-HT4LP3BO.js.map +1 -0
  43. package/dist/chunk-I6LR6CPC.cjs +125 -0
  44. package/dist/chunk-I6LR6CPC.cjs.map +1 -0
  45. package/dist/chunk-IEYXQTUW.cjs +284 -0
  46. package/dist/chunk-IEYXQTUW.cjs.map +1 -0
  47. package/dist/chunk-K3ELPJS3.js +1063 -0
  48. package/dist/chunk-K3ELPJS3.js.map +1 -0
  49. package/dist/{chunk-5QUKZCEF.js → chunk-KEXR53KI.js} +224 -34
  50. package/dist/chunk-KEXR53KI.js.map +1 -0
  51. package/dist/{chunk-SIGXR3JT.cjs → chunk-LPM6BBAX.cjs} +5 -5
  52. package/dist/{chunk-SIGXR3JT.cjs.map → chunk-LPM6BBAX.cjs.map} +1 -1
  53. package/dist/chunk-MCYD5LW7.cjs +90 -0
  54. package/dist/chunk-MCYD5LW7.cjs.map +1 -0
  55. package/dist/chunk-MQLS6Z7A.js +891 -0
  56. package/dist/chunk-MQLS6Z7A.js.map +1 -0
  57. package/dist/{chunk-EMMSS5I5.cjs → chunk-O7I5CWRX.cjs} +10 -3
  58. package/dist/{chunk-EMMSS5I5.cjs.map → chunk-O7I5CWRX.cjs.map} +1 -1
  59. package/dist/{chunk-G3PMV62Z.js → chunk-PR4QN5HX.js} +10 -4
  60. package/dist/{chunk-G3PMV62Z.js.map → chunk-PR4QN5HX.js.map} +1 -1
  61. package/dist/chunk-PUFCKXFW.cjs +312 -0
  62. package/dist/chunk-PUFCKXFW.cjs.map +1 -0
  63. package/dist/{chunk-NG5IVLEZ.js → chunk-RQK4FQUD.js} +3 -3
  64. package/dist/{chunk-NG5IVLEZ.js.map → chunk-RQK4FQUD.js.map} +1 -1
  65. package/dist/chunk-S3TIWWQL.cjs +322 -0
  66. package/dist/chunk-S3TIWWQL.cjs.map +1 -0
  67. package/dist/chunk-SXVANU23.js +164 -0
  68. package/dist/chunk-SXVANU23.js.map +1 -0
  69. package/dist/chunk-TGIVGCBJ.cjs +211 -0
  70. package/dist/chunk-TGIVGCBJ.cjs.map +1 -0
  71. package/dist/chunk-TYZ6ZISQ.cjs +368 -0
  72. package/dist/chunk-TYZ6ZISQ.cjs.map +1 -0
  73. package/dist/{chunk-CY4TP3FK.js → chunk-UXGQZUYZ.js} +3 -3
  74. package/dist/{chunk-CY4TP3FK.js.map → chunk-UXGQZUYZ.js.map} +1 -1
  75. package/dist/chunk-UY2D2LVC.cjs +205 -0
  76. package/dist/chunk-UY2D2LVC.cjs.map +1 -0
  77. package/dist/chunk-V272B7RM.cjs +255 -0
  78. package/dist/chunk-V272B7RM.cjs.map +1 -0
  79. package/dist/{chunk-RE4RPXT2.cjs → chunk-V5WWQN7P.cjs} +4 -4
  80. package/dist/{chunk-RE4RPXT2.cjs.map → chunk-V5WWQN7P.cjs.map} +1 -1
  81. package/dist/chunk-VIDXWHJQ.js +204 -0
  82. package/dist/chunk-VIDXWHJQ.js.map +1 -0
  83. package/dist/chunk-W36USBM5.js +196 -0
  84. package/dist/chunk-W36USBM5.js.map +1 -0
  85. package/dist/chunk-WBLT2HL3.js +144 -0
  86. package/dist/chunk-WBLT2HL3.js.map +1 -0
  87. package/dist/chunk-WE4USCF3.js +226 -0
  88. package/dist/chunk-WE4USCF3.js.map +1 -0
  89. package/dist/chunk-X43DWDXB.cjs +346 -0
  90. package/dist/chunk-X43DWDXB.cjs.map +1 -0
  91. package/dist/chunk-X4QMPCTP.cjs +259 -0
  92. package/dist/chunk-X4QMPCTP.cjs.map +1 -0
  93. package/dist/chunk-XQPJ63ZD.cjs +48 -0
  94. package/dist/chunk-XQPJ63ZD.cjs.map +1 -0
  95. package/dist/chunk-XW2HXQDO.js +302 -0
  96. package/dist/chunk-XW2HXQDO.js.map +1 -0
  97. package/dist/chunk-XWGAT2DA.js +44 -0
  98. package/dist/chunk-XWGAT2DA.js.map +1 -0
  99. package/dist/chunk-YHNJY33C.js +786 -0
  100. package/dist/chunk-YHNJY33C.js.map +1 -0
  101. package/dist/chunk-YP34EWWK.js +253 -0
  102. package/dist/chunk-YP34EWWK.js.map +1 -0
  103. package/dist/chunk-ZN5R6OZB.cjs +1107 -0
  104. package/dist/chunk-ZN5R6OZB.cjs.map +1 -0
  105. package/dist/{chunk-6GMFZ5LK.js → chunk-ZULZ2752.js} +3 -3
  106. package/dist/{chunk-6GMFZ5LK.js.map → chunk-ZULZ2752.js.map} +1 -1
  107. package/dist/{chunk-IGFMAZZ5.cjs → dist-4MVGNSRL.cjs} +20 -20
  108. package/dist/dist-4MVGNSRL.cjs.map +1 -0
  109. package/dist/{chunk-TVSIG4JE.cjs → dist-FZYCV3VB.cjs} +26 -26
  110. package/dist/dist-FZYCV3VB.cjs.map +1 -0
  111. package/dist/{chunk-5DP5XZH6.cjs → dist-G2BYZJOC.cjs} +28 -28
  112. package/dist/dist-G2BYZJOC.cjs.map +1 -0
  113. package/dist/dist-P4MXBQ3U.cjs +16 -0
  114. package/dist/{dist-3A5DXB37.cjs.map → dist-P4MXBQ3U.cjs.map} +1 -1
  115. package/dist/{chunk-FQNT7PI4.js → dist-PQZUVLPC.js} +3 -3
  116. package/dist/dist-PQZUVLPC.js.map +1 -0
  117. package/dist/{chunk-P7CIEIJ3.js → dist-R7WYX6LC.js} +3 -3
  118. package/dist/dist-R7WYX6LC.js.map +1 -0
  119. package/dist/{chunk-HJQKWRKQ.cjs → dist-RFMYFILX.cjs} +30 -30
  120. package/dist/dist-RFMYFILX.cjs.map +1 -0
  121. package/dist/{chunk-LYPU75T6.js → dist-X7XR3M3Z.js} +3 -3
  122. package/dist/dist-X7XR3M3Z.js.map +1 -0
  123. package/dist/{chunk-66YYHFGF.js → dist-XVBSOGFK.js} +3 -3
  124. package/dist/dist-XVBSOGFK.js.map +1 -0
  125. package/dist/dist-YREX2TJT.js +3 -0
  126. package/dist/{dist-26HWEQY6.js.map → dist-YREX2TJT.js.map} +1 -1
  127. package/dist/server/auth/defaults.d.ts +3 -0
  128. package/dist/server/auth/defaults.d.ts.map +1 -0
  129. package/dist/server/auth/helpers.d.ts +14 -0
  130. package/dist/server/auth/helpers.d.ts.map +1 -0
  131. package/dist/server/auth/index.cjs +137 -0
  132. package/dist/server/auth/index.cjs.map +1 -0
  133. package/dist/server/auth/index.d.ts +3 -0
  134. package/dist/server/auth/index.d.ts.map +1 -0
  135. package/dist/server/auth/index.js +127 -0
  136. package/dist/server/auth/index.js.map +1 -0
  137. package/dist/server/handlers/a2a.cjs +15 -7
  138. package/dist/server/handlers/a2a.d.ts +492 -10
  139. package/dist/server/handlers/a2a.d.ts.map +1 -1
  140. package/dist/server/handlers/a2a.js +1 -1
  141. package/dist/server/handlers/agent-builder.cjs +43 -31
  142. package/dist/server/handlers/agent-builder.d.ts +599 -77
  143. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  144. package/dist/server/handlers/agent-builder.js +1 -1
  145. package/dist/server/handlers/agents.cjs +61 -29
  146. package/dist/server/handlers/agents.d.ts +3329 -129
  147. package/dist/server/handlers/agents.d.ts.map +1 -1
  148. package/dist/server/handlers/agents.js +1 -1
  149. package/dist/server/handlers/error.cjs +2 -2
  150. package/dist/server/handlers/error.js +1 -1
  151. package/dist/server/handlers/logs.cjs +7 -7
  152. package/dist/server/handlers/logs.d.ts +135 -27
  153. package/dist/server/handlers/logs.d.ts.map +1 -1
  154. package/dist/server/handlers/logs.js +1 -1
  155. package/dist/server/handlers/mcp.cjs +40 -0
  156. package/dist/server/handlers/mcp.cjs.map +1 -0
  157. package/dist/server/handlers/mcp.d.ts +110 -0
  158. package/dist/server/handlers/mcp.d.ts.map +1 -0
  159. package/dist/server/handlers/mcp.js +3 -0
  160. package/dist/server/handlers/mcp.js.map +1 -0
  161. package/dist/server/handlers/memory.cjs +63 -31
  162. package/dist/server/handlers/memory.d.ts +934 -103
  163. package/dist/server/handlers/memory.d.ts.map +1 -1
  164. package/dist/server/handlers/memory.js +1 -1
  165. package/dist/server/handlers/observability.cjs +29 -5
  166. package/dist/server/handlers/observability.d.ts +142 -9
  167. package/dist/server/handlers/observability.d.ts.map +1 -1
  168. package/dist/server/handlers/observability.js +1 -1
  169. package/dist/server/handlers/scores.cjs +13 -13
  170. package/dist/server/handlers/scores.d.ts +112 -40
  171. package/dist/server/handlers/scores.d.ts.map +1 -1
  172. package/dist/server/handlers/scores.js +1 -1
  173. package/dist/server/handlers/stored-agents.cjs +28 -0
  174. package/dist/server/handlers/stored-agents.cjs.map +1 -0
  175. package/dist/server/handlers/stored-agents.d.ts +289 -0
  176. package/dist/server/handlers/stored-agents.d.ts.map +1 -0
  177. package/dist/server/handlers/stored-agents.js +3 -0
  178. package/dist/server/handlers/stored-agents.js.map +1 -0
  179. package/dist/server/handlers/test-utils.cjs +15 -0
  180. package/dist/server/handlers/test-utils.cjs.map +1 -0
  181. package/dist/server/handlers/test-utils.d.ts +6 -0
  182. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  183. package/dist/server/handlers/test-utils.js +13 -0
  184. package/dist/server/handlers/test-utils.js.map +1 -0
  185. package/dist/server/handlers/tools.cjs +11 -11
  186. package/dist/server/handlers/tools.d.ts +69 -23
  187. package/dist/server/handlers/tools.d.ts.map +1 -1
  188. package/dist/server/handlers/tools.js +1 -1
  189. package/dist/server/handlers/utils.cjs +11 -3
  190. package/dist/server/handlers/utils.d.ts +5 -0
  191. package/dist/server/handlers/utils.d.ts.map +1 -1
  192. package/dist/server/handlers/utils.js +1 -1
  193. package/dist/server/handlers/vector.cjs +31 -7
  194. package/dist/server/handlers/vector.d.ts +93 -9
  195. package/dist/server/handlers/vector.d.ts.map +1 -1
  196. package/dist/server/handlers/vector.js +1 -1
  197. package/dist/server/handlers/voice.cjs +21 -9
  198. package/dist/server/handlers/voice.d.ts +81 -40
  199. package/dist/server/handlers/voice.d.ts.map +1 -1
  200. package/dist/server/handlers/voice.js +1 -1
  201. package/dist/server/handlers/workflows.cjs +75 -31
  202. package/dist/server/handlers/workflows.d.ts +925 -60
  203. package/dist/server/handlers/workflows.d.ts.map +1 -1
  204. package/dist/server/handlers/workflows.js +1 -1
  205. package/dist/server/handlers.cjs +26 -36
  206. package/dist/server/handlers.d.ts +1 -3
  207. package/dist/server/handlers.d.ts.map +1 -1
  208. package/dist/server/handlers.js +12 -14
  209. package/dist/server/http-exception.d.ts +0 -5
  210. package/dist/server/http-exception.d.ts.map +1 -1
  211. package/dist/server/schemas/a2a.d.ts +786 -0
  212. package/dist/server/schemas/a2a.d.ts.map +1 -0
  213. package/dist/server/schemas/agent-builder.d.ts +204 -0
  214. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  215. package/dist/server/schemas/agents.d.ts +1375 -0
  216. package/dist/server/schemas/agents.d.ts.map +1 -0
  217. package/dist/server/schemas/common.d.ts +179 -0
  218. package/dist/server/schemas/common.d.ts.map +1 -0
  219. package/dist/server/schemas/logs.d.ts +124 -0
  220. package/dist/server/schemas/logs.d.ts.map +1 -0
  221. package/dist/server/schemas/mcp.d.ts +299 -0
  222. package/dist/server/schemas/mcp.d.ts.map +1 -0
  223. package/dist/server/schemas/memory.d.ts +998 -0
  224. package/dist/server/schemas/memory.d.ts.map +1 -0
  225. package/dist/server/schemas/observability.d.ts +402 -0
  226. package/dist/server/schemas/observability.d.ts.map +1 -0
  227. package/dist/server/schemas/scores.d.ts +259 -0
  228. package/dist/server/schemas/scores.d.ts.map +1 -0
  229. package/dist/server/schemas/stored-agents.d.ts +792 -0
  230. package/dist/server/schemas/stored-agents.d.ts.map +1 -0
  231. package/dist/server/schemas/vectors.d.ts +107 -0
  232. package/dist/server/schemas/vectors.d.ts.map +1 -0
  233. package/dist/server/schemas/workflows.d.ts +608 -0
  234. package/dist/server/schemas/workflows.d.ts.map +1 -0
  235. package/dist/server/server-adapter/index.cjs +481 -0
  236. package/dist/server/server-adapter/index.cjs.map +1 -0
  237. package/dist/server/server-adapter/index.d.ts +91 -0
  238. package/dist/server/server-adapter/index.d.ts.map +1 -0
  239. package/dist/server/server-adapter/index.js +466 -0
  240. package/dist/server/server-adapter/index.js.map +1 -0
  241. package/dist/server/server-adapter/openapi-utils.d.ts +59 -0
  242. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  243. package/dist/server/server-adapter/redact.d.ts +26 -0
  244. package/dist/server/server-adapter/redact.d.ts.map +1 -0
  245. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  246. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  247. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  248. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  249. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  250. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  251. package/dist/server/server-adapter/routes/index.d.ts +50 -0
  252. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  253. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  254. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  255. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  256. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  257. package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
  258. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
  259. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  260. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  261. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  262. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  263. package/dist/server/server-adapter/routes/route-builder.d.ts +52 -0
  264. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  265. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  266. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  267. package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
  268. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
  269. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  270. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  271. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  272. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  273. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  274. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  275. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  276. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  277. package/dist/server/utils.d.ts +5 -2
  278. package/dist/server/utils.d.ts.map +1 -1
  279. package/dist/token-GVZ7HRD7.js +62 -0
  280. package/dist/token-GVZ7HRD7.js.map +1 -0
  281. package/dist/token-JGA3ZWAN.js +61 -0
  282. package/dist/token-JGA3ZWAN.js.map +1 -0
  283. package/dist/token-VFONFWVS.cjs +64 -0
  284. package/dist/token-VFONFWVS.cjs.map +1 -0
  285. package/dist/token-ZOD6YIQ3.cjs +63 -0
  286. package/dist/token-ZOD6YIQ3.cjs.map +1 -0
  287. package/dist/token-util-7R2ZFIXO.js +7 -0
  288. package/dist/token-util-7R2ZFIXO.js.map +1 -0
  289. package/dist/token-util-BLJZJDBZ.cjs +9 -0
  290. package/dist/token-util-BLJZJDBZ.cjs.map +1 -0
  291. package/dist/token-util-VGZUWSNR.cjs +9 -0
  292. package/dist/token-util-VGZUWSNR.cjs.map +1 -0
  293. package/dist/token-util-VKTPZLSE.js +7 -0
  294. package/dist/token-util-VKTPZLSE.js.map +1 -0
  295. package/package.json +39 -19
  296. package/dist/chunk-3THIIWWW.cjs.map +0 -1
  297. package/dist/chunk-4QCXUEAT.js +0 -25
  298. package/dist/chunk-4QCXUEAT.js.map +0 -1
  299. package/dist/chunk-4RRMWXQ2.js +0 -3522
  300. package/dist/chunk-4RRMWXQ2.js.map +0 -1
  301. package/dist/chunk-5DP5XZH6.cjs.map +0 -1
  302. package/dist/chunk-5QUKZCEF.js.map +0 -1
  303. package/dist/chunk-5VTTUNVK.cjs +0 -540
  304. package/dist/chunk-5VTTUNVK.cjs.map +0 -1
  305. package/dist/chunk-66YYHFGF.js.map +0 -1
  306. package/dist/chunk-6LUKYSWE.cjs +0 -610
  307. package/dist/chunk-6LUKYSWE.cjs.map +0 -1
  308. package/dist/chunk-743UIDHI.cjs +0 -2013
  309. package/dist/chunk-743UIDHI.cjs.map +0 -1
  310. package/dist/chunk-7QEJ5QG5.js +0 -151
  311. package/dist/chunk-7QEJ5QG5.js.map +0 -1
  312. package/dist/chunk-A3AL7EWJ.js +0 -83
  313. package/dist/chunk-A3AL7EWJ.js.map +0 -1
  314. package/dist/chunk-AK2FXLLB.cjs +0 -849
  315. package/dist/chunk-AK2FXLLB.cjs.map +0 -1
  316. package/dist/chunk-B2V3PUB7.js +0 -591
  317. package/dist/chunk-B2V3PUB7.js.map +0 -1
  318. package/dist/chunk-EMNGA4R4.js +0 -845
  319. package/dist/chunk-EMNGA4R4.js.map +0 -1
  320. package/dist/chunk-FALVL2VV.cjs +0 -3525
  321. package/dist/chunk-FALVL2VV.cjs.map +0 -1
  322. package/dist/chunk-FQNT7PI4.js.map +0 -1
  323. package/dist/chunk-G4PUALCE.cjs +0 -28
  324. package/dist/chunk-G4PUALCE.cjs.map +0 -1
  325. package/dist/chunk-GUI3CROV.cjs +0 -159
  326. package/dist/chunk-GUI3CROV.cjs.map +0 -1
  327. package/dist/chunk-HJQKWRKQ.cjs.map +0 -1
  328. package/dist/chunk-HVBBFCDH.cjs +0 -2321
  329. package/dist/chunk-HVBBFCDH.cjs.map +0 -1
  330. package/dist/chunk-HZJRQ5L3.cjs +0 -1411
  331. package/dist/chunk-HZJRQ5L3.cjs.map +0 -1
  332. package/dist/chunk-IGFMAZZ5.cjs.map +0 -1
  333. package/dist/chunk-IOQGI4ML.js +0 -931
  334. package/dist/chunk-IOQGI4ML.js.map +0 -1
  335. package/dist/chunk-IQ4NTMIJ.cjs +0 -15753
  336. package/dist/chunk-IQ4NTMIJ.cjs.map +0 -1
  337. package/dist/chunk-IY34NOLA.cjs +0 -150
  338. package/dist/chunk-IY34NOLA.cjs.map +0 -1
  339. package/dist/chunk-J7BPKKOG.cjs +0 -163
  340. package/dist/chunk-J7BPKKOG.cjs.map +0 -1
  341. package/dist/chunk-JRDEOHAJ.js +0 -122
  342. package/dist/chunk-JRDEOHAJ.js.map +0 -1
  343. package/dist/chunk-KNGXRN26.cjs +0 -335
  344. package/dist/chunk-KNGXRN26.cjs.map +0 -1
  345. package/dist/chunk-KV6VHX4V.js +0 -160
  346. package/dist/chunk-KV6VHX4V.js.map +0 -1
  347. package/dist/chunk-L265APUD.cjs +0 -69
  348. package/dist/chunk-L265APUD.cjs.map +0 -1
  349. package/dist/chunk-LYPU75T6.js.map +0 -1
  350. package/dist/chunk-MMROOK5J.js.map +0 -1
  351. package/dist/chunk-N7F33WAD.js +0 -2290
  352. package/dist/chunk-N7F33WAD.js.map +0 -1
  353. package/dist/chunk-NLWACBE7.cjs +0 -128
  354. package/dist/chunk-NLWACBE7.cjs.map +0 -1
  355. package/dist/chunk-OGW6HHVI.js +0 -1408
  356. package/dist/chunk-OGW6HHVI.js.map +0 -1
  357. package/dist/chunk-OZLRIVC4.cjs +0 -588
  358. package/dist/chunk-OZLRIVC4.cjs.map +0 -1
  359. package/dist/chunk-P7CIEIJ3.js.map +0 -1
  360. package/dist/chunk-P7RBMCBE.cjs +0 -934
  361. package/dist/chunk-P7RBMCBE.cjs.map +0 -1
  362. package/dist/chunk-PWTXZZTR.cjs +0 -165
  363. package/dist/chunk-PWTXZZTR.cjs.map +0 -1
  364. package/dist/chunk-R7NOGUZG.js +0 -65
  365. package/dist/chunk-R7NOGUZG.js.map +0 -1
  366. package/dist/chunk-RCHEPTZZ.js +0 -2006
  367. package/dist/chunk-RCHEPTZZ.js.map +0 -1
  368. package/dist/chunk-SPLSYTYW.cjs +0 -88
  369. package/dist/chunk-SPLSYTYW.cjs.map +0 -1
  370. package/dist/chunk-SQY4T6EJ.js +0 -571
  371. package/dist/chunk-SQY4T6EJ.js.map +0 -1
  372. package/dist/chunk-SYRRSBGL.js +0 -156
  373. package/dist/chunk-SYRRSBGL.js.map +0 -1
  374. package/dist/chunk-T3TIA3O6.cjs +0 -131
  375. package/dist/chunk-T3TIA3O6.cjs.map +0 -1
  376. package/dist/chunk-TTHEEIZ3.js +0 -323
  377. package/dist/chunk-TTHEEIZ3.js.map +0 -1
  378. package/dist/chunk-TVSIG4JE.cjs.map +0 -1
  379. package/dist/chunk-U46VIX2V.js +0 -144
  380. package/dist/chunk-U46VIX2V.js.map +0 -1
  381. package/dist/chunk-WHN4VX55.js +0 -123
  382. package/dist/chunk-WHN4VX55.js.map +0 -1
  383. package/dist/chunk-YRMJCAH4.js +0 -15717
  384. package/dist/chunk-YRMJCAH4.js.map +0 -1
  385. package/dist/chunk-ZSAOHEZK.js +0 -524
  386. package/dist/chunk-ZSAOHEZK.js.map +0 -1
  387. package/dist/dist-26HWEQY6.js +0 -3
  388. package/dist/dist-3A5DXB37.cjs +0 -20
  389. package/dist/dist-3SJKQJGY.cjs +0 -16
  390. package/dist/dist-3SJKQJGY.cjs.map +0 -1
  391. package/dist/dist-4ZQSPE5K.js +0 -3
  392. package/dist/dist-4ZQSPE5K.js.map +0 -1
  393. package/dist/dist-5W5QNRTD.js +0 -3
  394. package/dist/dist-5W5QNRTD.js.map +0 -1
  395. package/dist/dist-653SRMPL.js +0 -3
  396. package/dist/dist-653SRMPL.js.map +0 -1
  397. package/dist/dist-6U6EFC5C.cjs +0 -16
  398. package/dist/dist-6U6EFC5C.cjs.map +0 -1
  399. package/dist/dist-7IHNNYMF.cjs +0 -16
  400. package/dist/dist-7IHNNYMF.cjs.map +0 -1
  401. package/dist/dist-B5IPRF6W.js +0 -3
  402. package/dist/dist-B5IPRF6W.js.map +0 -1
  403. package/dist/dist-EOMYFT4Y.cjs +0 -16
  404. package/dist/dist-EOMYFT4Y.cjs.map +0 -1
  405. package/dist/dist-EZZMMMNT.cjs +0 -16
  406. package/dist/dist-EZZMMMNT.cjs.map +0 -1
  407. package/dist/dist-F2ET4MNO.cjs +0 -16
  408. package/dist/dist-F2ET4MNO.cjs.map +0 -1
  409. package/dist/dist-H64VX6DE.js +0 -3
  410. package/dist/dist-H64VX6DE.js.map +0 -1
  411. package/dist/dist-HY7RMLJQ.cjs +0 -16
  412. package/dist/dist-HY7RMLJQ.cjs.map +0 -1
  413. package/dist/dist-M6S4P3FJ.js +0 -3
  414. package/dist/dist-M6S4P3FJ.js.map +0 -1
  415. package/dist/dist-NR7QSCQT.js +0 -3
  416. package/dist/dist-NR7QSCQT.js.map +0 -1
  417. package/dist/dist-QLFMCMCX.js +0 -3
  418. package/dist/dist-QLFMCMCX.js.map +0 -1
  419. package/dist/dist-UY46BFRP.js +0 -3
  420. package/dist/dist-UY46BFRP.js.map +0 -1
  421. package/dist/dist-WCQDRTIV.cjs +0 -16
  422. package/dist/dist-WCQDRTIV.cjs.map +0 -1
  423. package/dist/dist-WKYB3LTJ.cjs +0 -16
  424. package/dist/dist-WKYB3LTJ.cjs.map +0 -1
  425. package/dist/server/handlers/legacyWorkflows.cjs +0 -48
  426. package/dist/server/handlers/legacyWorkflows.cjs.map +0 -1
  427. package/dist/server/handlers/legacyWorkflows.d.ts +0 -59
  428. package/dist/server/handlers/legacyWorkflows.d.ts.map +0 -1
  429. package/dist/server/handlers/legacyWorkflows.js +0 -3
  430. package/dist/server/handlers/legacyWorkflows.js.map +0 -1
  431. package/dist/server/handlers/network.cjs +0 -24
  432. package/dist/server/handlers/network.cjs.map +0 -1
  433. package/dist/server/handlers/network.d.ts +0 -50
  434. package/dist/server/handlers/network.d.ts.map +0 -1
  435. package/dist/server/handlers/network.js +0 -3
  436. package/dist/server/handlers/network.js.map +0 -1
  437. package/dist/server/handlers/telemetry.cjs +0 -20
  438. package/dist/server/handlers/telemetry.cjs.map +0 -1
  439. package/dist/server/handlers/telemetry.d.ts +0 -33
  440. package/dist/server/handlers/telemetry.d.ts.map +0 -1
  441. package/dist/server/handlers/telemetry.js +0 -3
  442. package/dist/server/handlers/telemetry.js.map +0 -1
  443. package/dist/server/handlers/vNextNetwork.cjs +0 -220
  444. package/dist/server/handlers/vNextNetwork.cjs.map +0 -1
  445. package/dist/server/handlers/vNextNetwork.d.ts +0 -179
  446. package/dist/server/handlers/vNextNetwork.d.ts.map +0 -1
  447. package/dist/server/handlers/vNextNetwork.js +0 -213
  448. package/dist/server/handlers/vNextNetwork.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkSIGXR3JT_cjs = require('./chunk-SIGXR3JT.cjs');
3
+ var chunkLPM6BBAX_cjs = require('./chunk-LPM6BBAX.cjs');
4
4
  var zod = require('zod');
5
5
 
6
6
  var anthropicErrorDataSchema = zod.z.object({
@@ -10,7 +10,7 @@ var anthropicErrorDataSchema = zod.z.object({
10
10
  message: zod.z.string()
11
11
  })
12
12
  });
13
- var anthropicFailedResponseHandler = chunkSIGXR3JT_cjs.createJsonErrorResponseHandler({
13
+ var anthropicFailedResponseHandler = chunkLPM6BBAX_cjs.createJsonErrorResponseHandler({
14
14
  errorSchema: anthropicErrorDataSchema,
15
15
  errorToMessage: (data) => data.error.message
16
16
  });
@@ -128,7 +128,7 @@ function prepareTools(mode) {
128
128
  };
129
129
  default: {
130
130
  const _exhaustiveCheck = type;
131
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
131
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
132
132
  functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`
133
133
  });
134
134
  }
@@ -157,7 +157,7 @@ function convertToAnthropicMessagesPrompt({
157
157
  switch (type) {
158
158
  case "system": {
159
159
  if (system != null) {
160
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
160
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
161
161
  functionality: "Multiple system messages that are separated by user/assistant messages"
162
162
  });
163
163
  }
@@ -196,7 +196,7 @@ function convertToAnthropicMessagesPrompt({
196
196
  } : {
197
197
  type: "base64",
198
198
  media_type: (_b = part.mimeType) != null ? _b : "image/jpeg",
199
- data: chunkSIGXR3JT_cjs.convertUint8ArrayToBase64(part.image)
199
+ data: chunkLPM6BBAX_cjs.convertUint8ArrayToBase64(part.image)
200
200
  },
201
201
  cache_control: cacheControl
202
202
  });
@@ -204,7 +204,7 @@ function convertToAnthropicMessagesPrompt({
204
204
  }
205
205
  case "file": {
206
206
  if (part.mimeType !== "application/pdf") {
207
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
207
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
208
208
  functionality: "Non-PDF files in user messages"
209
209
  });
210
210
  }
@@ -471,7 +471,7 @@ var AnthropicMessagesLanguageModel = class {
471
471
  sendReasoning: (_a = this.settings.sendReasoning) != null ? _a : true,
472
472
  warnings
473
473
  });
474
- const anthropicOptions = chunkSIGXR3JT_cjs.parseProviderOptions({
474
+ const anthropicOptions = chunkLPM6BBAX_cjs.parseProviderOptions({
475
475
  provider: "anthropic",
476
476
  providerOptions,
477
477
  schema: anthropicProviderOptionsSchema
@@ -497,7 +497,7 @@ var AnthropicMessagesLanguageModel = class {
497
497
  };
498
498
  if (isThinking) {
499
499
  if (thinkingBudget == null) {
500
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
500
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
501
501
  functionality: "thinking requires a budget"
502
502
  });
503
503
  }
@@ -542,7 +542,7 @@ var AnthropicMessagesLanguageModel = class {
542
542
  };
543
543
  }
544
544
  case "object-json": {
545
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
545
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
546
546
  functionality: "json-mode object generation"
547
547
  });
548
548
  }
@@ -568,8 +568,8 @@ var AnthropicMessagesLanguageModel = class {
568
568
  betas,
569
569
  headers
570
570
  }) {
571
- return chunkSIGXR3JT_cjs.combineHeaders(
572
- await chunkSIGXR3JT_cjs.resolve(this.config.headers),
571
+ return chunkLPM6BBAX_cjs.combineHeaders(
572
+ await chunkLPM6BBAX_cjs.resolve(this.config.headers),
573
573
  betas.size > 0 ? { "anthropic-beta": Array.from(betas).join(",") } : {},
574
574
  headers
575
575
  );
@@ -589,12 +589,12 @@ var AnthropicMessagesLanguageModel = class {
589
589
  responseHeaders,
590
590
  value: response,
591
591
  rawValue: rawResponse
592
- } = await chunkSIGXR3JT_cjs.postJsonToApi({
592
+ } = await chunkLPM6BBAX_cjs.postJsonToApi({
593
593
  url: this.buildRequestUrl(false),
594
594
  headers: await this.getHeaders({ betas, headers: options.headers }),
595
595
  body: this.transformRequestBody(args),
596
596
  failedResponseHandler: anthropicFailedResponseHandler,
597
- successfulResponseHandler: chunkSIGXR3JT_cjs.createJsonResponseHandler(
597
+ successfulResponseHandler: chunkLPM6BBAX_cjs.createJsonResponseHandler(
598
598
  anthropicMessagesResponseSchema
599
599
  ),
600
600
  abortSignal: options.abortSignal,
@@ -664,12 +664,12 @@ var AnthropicMessagesLanguageModel = class {
664
664
  async doStream(options) {
665
665
  const { args, warnings, betas } = await this.getArgs(options);
666
666
  const body = { ...args, stream: true };
667
- const { responseHeaders, value: response } = await chunkSIGXR3JT_cjs.postJsonToApi({
667
+ const { responseHeaders, value: response } = await chunkLPM6BBAX_cjs.postJsonToApi({
668
668
  url: this.buildRequestUrl(true),
669
669
  headers: await this.getHeaders({ betas, headers: options.headers }),
670
670
  body: this.transformRequestBody(body),
671
671
  failedResponseHandler: anthropicFailedResponseHandler,
672
- successfulResponseHandler: chunkSIGXR3JT_cjs.createEventSourceResponseHandler(
672
+ successfulResponseHandler: chunkLPM6BBAX_cjs.createEventSourceResponseHandler(
673
673
  anthropicMessagesChunkSchema
674
674
  ),
675
675
  abortSignal: options.abortSignal,
@@ -1108,10 +1108,10 @@ var anthropicTools = {
1108
1108
  };
1109
1109
  function createAnthropic(options = {}) {
1110
1110
  var _a;
1111
- const baseURL = (_a = chunkSIGXR3JT_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.anthropic.com/v1";
1111
+ const baseURL = (_a = chunkLPM6BBAX_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.anthropic.com/v1";
1112
1112
  const getHeaders = () => ({
1113
1113
  "anthropic-version": "2023-06-01",
1114
- "x-api-key": chunkSIGXR3JT_cjs.loadApiKey({
1114
+ "x-api-key": chunkLPM6BBAX_cjs.loadApiKey({
1115
1115
  apiKey: options.apiKey,
1116
1116
  environmentVariableName: "ANTHROPIC_API_KEY",
1117
1117
  description: "Anthropic"
@@ -1137,7 +1137,7 @@ function createAnthropic(options = {}) {
1137
1137
  provider.chat = createChatModel;
1138
1138
  provider.messages = createChatModel;
1139
1139
  provider.textEmbeddingModel = (modelId) => {
1140
- throw new chunkSIGXR3JT_cjs.NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
1140
+ throw new chunkLPM6BBAX_cjs.NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
1141
1141
  };
1142
1142
  provider.tools = anthropicTools;
1143
1143
  return provider;
@@ -1146,5 +1146,5 @@ var anthropic = createAnthropic();
1146
1146
 
1147
1147
  exports.anthropic = anthropic;
1148
1148
  exports.createAnthropic = createAnthropic;
1149
- //# sourceMappingURL=chunk-IGFMAZZ5.cjs.map
1150
- //# sourceMappingURL=chunk-IGFMAZZ5.cjs.map
1149
+ //# sourceMappingURL=dist-4MVGNSRL.cjs.map
1150
+ //# sourceMappingURL=dist-4MVGNSRL.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/anthropic-error.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/anthropic-prepare-tools.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/convert-to-anthropic-messages-prompt.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/map-anthropic-stop-reason.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/anthropic-tools.ts","../../../node_modules/.pnpm/@ai-sdk+anthropic@1.2.12_zod@3.25.76/node_modules/@ai-sdk/anthropic/src/anthropic-provider.ts"],"names":["z","createJsonErrorResponseHandler","anthropicTools","UnsupportedFunctionalityError","_a","anthropic","convertUint8ArrayToBase64","i","part","parseProviderOptions","combineHeaders","resolve","postJsonToApi","createJsonResponseHandler","createEventSourceResponseHandler","withoutTrailingSlash","loadApiKey","NoSuchModelError"],"mappings":"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","file":"dist-4MVGNSRL.cjs","sourcesContent":["import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\n\nconst anthropicErrorDataSchema = z.object({\n type: z.literal('error'),\n error: z.object({\n type: z.string(),\n message: z.string(),\n }),\n});\n\nexport type AnthropicErrorData = z.infer<typeof anthropicErrorDataSchema>;\n\nexport const anthropicFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: anthropicErrorDataSchema,\n errorToMessage: data => data.error.message,\n});\n","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { AnthropicTool, AnthropicToolChoice } from './anthropic-api-types';\n\nexport function prepareTools(\n mode: Parameters<LanguageModelV1['doGenerate']>[0]['mode'] & {\n type: 'regular';\n },\n): {\n tools: Array<AnthropicTool> | undefined;\n tool_choice: AnthropicToolChoice | undefined;\n toolWarnings: LanguageModelV1CallWarning[];\n betas: Set<string>;\n} {\n // when the tools array is empty, change it to undefined to prevent errors:\n const tools = mode.tools?.length ? mode.tools : undefined;\n\n const toolWarnings: LanguageModelV1CallWarning[] = [];\n const betas = new Set<string>();\n\n if (tools == null) {\n return { tools: undefined, tool_choice: undefined, toolWarnings, betas };\n }\n\n const anthropicTools: AnthropicTool[] = [];\n\n for (const tool of tools) {\n switch (tool.type) {\n case 'function':\n anthropicTools.push({\n name: tool.name,\n description: tool.description,\n input_schema: tool.parameters,\n });\n break;\n case 'provider-defined':\n switch (tool.id) {\n case 'anthropic.computer_20250124':\n betas.add('computer-use-2025-01-24');\n anthropicTools.push({\n name: tool.name,\n type: 'computer_20250124',\n display_width_px: tool.args.displayWidthPx as number,\n display_height_px: tool.args.displayHeightPx as number,\n display_number: tool.args.displayNumber as number,\n });\n break;\n case 'anthropic.computer_20241022':\n betas.add('computer-use-2024-10-22');\n anthropicTools.push({\n name: tool.name,\n type: 'computer_20241022',\n display_width_px: tool.args.displayWidthPx as number,\n display_height_px: tool.args.displayHeightPx as number,\n display_number: tool.args.displayNumber as number,\n });\n break;\n case 'anthropic.text_editor_20250124':\n betas.add('computer-use-2025-01-24');\n anthropicTools.push({\n name: tool.name,\n type: 'text_editor_20250124',\n });\n break;\n case 'anthropic.text_editor_20241022':\n betas.add('computer-use-2024-10-22');\n anthropicTools.push({\n name: tool.name,\n type: 'text_editor_20241022',\n });\n break;\n case 'anthropic.bash_20250124':\n betas.add('computer-use-2025-01-24');\n anthropicTools.push({\n name: tool.name,\n type: 'bash_20250124',\n });\n break;\n case 'anthropic.bash_20241022':\n betas.add('computer-use-2024-10-22');\n anthropicTools.push({\n name: tool.name,\n type: 'bash_20241022',\n });\n break;\n default:\n toolWarnings.push({ type: 'unsupported-tool', tool });\n break;\n }\n break;\n default:\n toolWarnings.push({ type: 'unsupported-tool', tool });\n break;\n }\n }\n\n const toolChoice = mode.toolChoice;\n\n if (toolChoice == null) {\n return {\n tools: anthropicTools,\n tool_choice: undefined,\n toolWarnings,\n betas,\n };\n }\n\n const type = toolChoice.type;\n\n switch (type) {\n case 'auto':\n return {\n tools: anthropicTools,\n tool_choice: { type: 'auto' },\n toolWarnings,\n betas,\n };\n case 'required':\n return {\n tools: anthropicTools,\n tool_choice: { type: 'any' },\n toolWarnings,\n betas,\n };\n case 'none':\n // Anthropic does not support 'none' tool choice, so we remove the tools:\n return { tools: undefined, tool_choice: undefined, toolWarnings, betas };\n case 'tool':\n return {\n tools: anthropicTools,\n tool_choice: { type: 'tool', name: toolChoice.toolName },\n toolWarnings,\n betas,\n };\n default: {\n const _exhaustiveCheck: never = type;\n throw new UnsupportedFunctionalityError({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`,\n });\n }\n }\n}\n","import {\n LanguageModelV1CallWarning,\n LanguageModelV1Message,\n LanguageModelV1Prompt,\n LanguageModelV1ProviderMetadata,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport { convertUint8ArrayToBase64 } from '@ai-sdk/provider-utils';\nimport {\n AnthropicAssistantMessage,\n AnthropicCacheControl,\n AnthropicMessagesPrompt,\n AnthropicUserMessage,\n} from './anthropic-api-types';\n\nexport function convertToAnthropicMessagesPrompt({\n prompt,\n sendReasoning,\n warnings,\n}: {\n prompt: LanguageModelV1Prompt;\n sendReasoning: boolean;\n warnings: LanguageModelV1CallWarning[];\n}): {\n prompt: AnthropicMessagesPrompt;\n betas: Set<string>;\n} {\n const betas = new Set<string>();\n const blocks = groupIntoBlocks(prompt);\n\n let system: AnthropicMessagesPrompt['system'] = undefined;\n const messages: AnthropicMessagesPrompt['messages'] = [];\n\n function getCacheControl(\n providerMetadata: LanguageModelV1ProviderMetadata | undefined,\n ): AnthropicCacheControl | undefined {\n const anthropic = providerMetadata?.anthropic;\n\n // allow both cacheControl and cache_control:\n const cacheControlValue =\n anthropic?.cacheControl ?? anthropic?.cache_control;\n\n // Pass through value assuming it is of the correct type.\n // The Anthropic API will validate the value.\n return cacheControlValue as AnthropicCacheControl | undefined;\n }\n\n for (let i = 0; i < blocks.length; i++) {\n const block = blocks[i];\n const isLastBlock = i === blocks.length - 1;\n const type = block.type;\n\n switch (type) {\n case 'system': {\n if (system != null) {\n throw new UnsupportedFunctionalityError({\n functionality:\n 'Multiple system messages that are separated by user/assistant messages',\n });\n }\n\n system = block.messages.map(({ content, providerMetadata }) => ({\n type: 'text',\n text: content,\n cache_control: getCacheControl(providerMetadata),\n }));\n\n break;\n }\n\n case 'user': {\n // combines all user and tool messages in this block into a single message:\n const anthropicContent: AnthropicUserMessage['content'] = [];\n\n for (const message of block.messages) {\n const { role, content } = message;\n switch (role) {\n case 'user': {\n for (let j = 0; j < content.length; j++) {\n const part = content[j];\n\n // cache control: first add cache control from part.\n // for the last part of a message,\n // check also if the message has cache control.\n const isLastPart = j === content.length - 1;\n\n const cacheControl =\n getCacheControl(part.providerMetadata) ??\n (isLastPart\n ? getCacheControl(message.providerMetadata)\n : undefined);\n\n switch (part.type) {\n case 'text': {\n anthropicContent.push({\n type: 'text',\n text: part.text,\n cache_control: cacheControl,\n });\n break;\n }\n\n case 'image': {\n anthropicContent.push({\n type: 'image',\n source:\n part.image instanceof URL\n ? {\n type: 'url',\n url: part.image.toString(),\n }\n : {\n type: 'base64',\n media_type: part.mimeType ?? 'image/jpeg',\n data: convertUint8ArrayToBase64(part.image),\n },\n cache_control: cacheControl,\n });\n\n break;\n }\n\n case 'file': {\n if (part.mimeType !== 'application/pdf') {\n throw new UnsupportedFunctionalityError({\n functionality: 'Non-PDF files in user messages',\n });\n }\n\n betas.add('pdfs-2024-09-25');\n\n anthropicContent.push({\n type: 'document',\n source:\n part.data instanceof URL\n ? {\n type: 'url',\n url: part.data.toString(),\n }\n : {\n type: 'base64',\n media_type: 'application/pdf',\n data: part.data,\n },\n cache_control: cacheControl,\n });\n\n break;\n }\n }\n }\n\n break;\n }\n case 'tool': {\n for (let i = 0; i < content.length; i++) {\n const part = content[i];\n\n // cache control: first add cache control from part.\n // for the last part of a message,\n // check also if the message has cache control.\n const isLastPart = i === content.length - 1;\n\n const cacheControl =\n getCacheControl(part.providerMetadata) ??\n (isLastPart\n ? getCacheControl(message.providerMetadata)\n : undefined);\n\n const toolResultContent =\n part.content != null\n ? part.content.map(part => {\n switch (part.type) {\n case 'text':\n return {\n type: 'text' as const,\n text: part.text,\n cache_control: undefined,\n };\n case 'image':\n return {\n type: 'image' as const,\n source: {\n type: 'base64' as const,\n media_type: part.mimeType ?? 'image/jpeg',\n data: part.data,\n },\n cache_control: undefined,\n };\n }\n })\n : JSON.stringify(part.result);\n\n anthropicContent.push({\n type: 'tool_result',\n tool_use_id: part.toolCallId,\n content: toolResultContent,\n is_error: part.isError,\n cache_control: cacheControl,\n });\n }\n\n break;\n }\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n messages.push({ role: 'user', content: anthropicContent });\n\n break;\n }\n\n case 'assistant': {\n // combines multiple assistant messages in this block into a single message:\n const anthropicContent: AnthropicAssistantMessage['content'] = [];\n\n for (let j = 0; j < block.messages.length; j++) {\n const message = block.messages[j];\n const isLastMessage = j === block.messages.length - 1;\n const { content } = message;\n\n for (let k = 0; k < content.length; k++) {\n const part = content[k];\n const isLastContentPart = k === content.length - 1;\n\n // cache control: first add cache control from part.\n // for the last part of a message,\n // check also if the message has cache control.\n const cacheControl =\n getCacheControl(part.providerMetadata) ??\n (isLastContentPart\n ? getCacheControl(message.providerMetadata)\n : undefined);\n\n switch (part.type) {\n case 'text': {\n anthropicContent.push({\n type: 'text',\n text:\n // trim the last text part if it's the last message in the block\n // because Anthropic does not allow trailing whitespace\n // in pre-filled assistant responses\n isLastBlock && isLastMessage && isLastContentPart\n ? part.text.trim()\n : part.text,\n\n cache_control: cacheControl,\n });\n break;\n }\n\n case 'reasoning': {\n if (sendReasoning) {\n anthropicContent.push({\n type: 'thinking',\n thinking: part.text,\n signature: part.signature!,\n cache_control: cacheControl,\n });\n } else {\n warnings.push({\n type: 'other',\n message:\n 'sending reasoning content is disabled for this model',\n });\n }\n break;\n }\n\n case 'redacted-reasoning': {\n anthropicContent.push({\n type: 'redacted_thinking',\n data: part.data,\n cache_control: cacheControl,\n });\n break;\n }\n\n case 'tool-call': {\n anthropicContent.push({\n type: 'tool_use',\n id: part.toolCallId,\n name: part.toolName,\n input: part.args,\n cache_control: cacheControl,\n });\n break;\n }\n }\n }\n }\n\n messages.push({ role: 'assistant', content: anthropicContent });\n\n break;\n }\n\n default: {\n const _exhaustiveCheck: never = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return {\n prompt: { system, messages },\n betas,\n };\n}\n\ntype SystemBlock = {\n type: 'system';\n messages: Array<LanguageModelV1Message & { role: 'system' }>;\n};\ntype AssistantBlock = {\n type: 'assistant';\n messages: Array<LanguageModelV1Message & { role: 'assistant' }>;\n};\ntype UserBlock = {\n type: 'user';\n messages: Array<LanguageModelV1Message & { role: 'user' | 'tool' }>;\n};\n\nfunction groupIntoBlocks(\n prompt: LanguageModelV1Prompt,\n): Array<SystemBlock | AssistantBlock | UserBlock> {\n const blocks: Array<SystemBlock | AssistantBlock | UserBlock> = [];\n let currentBlock: SystemBlock | AssistantBlock | UserBlock | undefined =\n undefined;\n\n for (const message of prompt) {\n const { role } = message;\n switch (role) {\n case 'system': {\n if (currentBlock?.type !== 'system') {\n currentBlock = { type: 'system', messages: [] };\n blocks.push(currentBlock);\n }\n\n currentBlock.messages.push(message);\n break;\n }\n case 'assistant': {\n if (currentBlock?.type !== 'assistant') {\n currentBlock = { type: 'assistant', messages: [] };\n blocks.push(currentBlock);\n }\n\n currentBlock.messages.push(message);\n break;\n }\n case 'user': {\n if (currentBlock?.type !== 'user') {\n currentBlock = { type: 'user', messages: [] };\n blocks.push(currentBlock);\n }\n\n currentBlock.messages.push(message);\n break;\n }\n case 'tool': {\n if (currentBlock?.type !== 'user') {\n currentBlock = { type: 'user', messages: [] };\n blocks.push(currentBlock);\n }\n\n currentBlock.messages.push(message);\n break;\n }\n default: {\n const _exhaustiveCheck: never = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n\n return blocks;\n}\n","import { LanguageModelV1FinishReason } from '@ai-sdk/provider';\n\nexport function mapAnthropicStopReason(\n finishReason: string | null | undefined,\n): LanguageModelV1FinishReason {\n switch (finishReason) {\n case 'end_turn':\n case 'stop_sequence':\n return 'stop';\n case 'tool_use':\n return 'tool-calls';\n case 'max_tokens':\n return 'length';\n default:\n return 'unknown';\n }\n}\n","import {\n LanguageModelV1,\n LanguageModelV1CallWarning,\n LanguageModelV1FinishReason,\n LanguageModelV1FunctionToolCall,\n LanguageModelV1ProviderMetadata,\n LanguageModelV1StreamPart,\n UnsupportedFunctionalityError,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n ParseResult,\n Resolvable,\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n resolve,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod';\nimport { anthropicFailedResponseHandler } from './anthropic-error';\nimport {\n AnthropicMessagesModelId,\n AnthropicMessagesSettings,\n} from './anthropic-messages-settings';\nimport { prepareTools } from './anthropic-prepare-tools';\nimport { convertToAnthropicMessagesPrompt } from './convert-to-anthropic-messages-prompt';\nimport { mapAnthropicStopReason } from './map-anthropic-stop-reason';\n\ntype AnthropicMessagesConfig = {\n provider: string;\n baseURL: string;\n headers: Resolvable<Record<string, string | undefined>>;\n supportsImageUrls: boolean;\n fetch?: FetchFunction;\n buildRequestUrl?: (baseURL: string, isStreaming: boolean) => string;\n transformRequestBody?: (args: Record<string, any>) => Record<string, any>;\n};\n\nexport class AnthropicMessagesLanguageModel implements LanguageModelV1 {\n readonly specificationVersion = 'v1';\n readonly defaultObjectGenerationMode = 'tool';\n\n readonly modelId: AnthropicMessagesModelId;\n readonly settings: AnthropicMessagesSettings;\n\n private readonly config: AnthropicMessagesConfig;\n\n constructor(\n modelId: AnthropicMessagesModelId,\n settings: AnthropicMessagesSettings,\n config: AnthropicMessagesConfig,\n ) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n\n supportsUrl(url: URL): boolean {\n return url.protocol === 'https:';\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n get supportsImageUrls(): boolean {\n return this.config.supportsImageUrls;\n }\n\n private async getArgs({\n mode,\n prompt,\n maxTokens = 4096, // 4096: max model output tokens TODO update default in v5\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n responseFormat,\n seed,\n providerMetadata: providerOptions,\n }: Parameters<LanguageModelV1['doGenerate']>[0]) {\n const type = mode.type;\n\n const warnings: LanguageModelV1CallWarning[] = [];\n\n if (frequencyPenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'frequencyPenalty',\n });\n }\n\n if (presencePenalty != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'presencePenalty',\n });\n }\n\n if (seed != null) {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'seed',\n });\n }\n\n if (responseFormat != null && responseFormat.type !== 'text') {\n warnings.push({\n type: 'unsupported-setting',\n setting: 'responseFormat',\n details: 'JSON response format is not supported.',\n });\n }\n\n const { prompt: messagesPrompt, betas: messagesBetas } =\n convertToAnthropicMessagesPrompt({\n prompt,\n sendReasoning: this.settings.sendReasoning ?? true,\n warnings,\n });\n\n const anthropicOptions = parseProviderOptions({\n provider: 'anthropic',\n providerOptions,\n schema: anthropicProviderOptionsSchema,\n });\n\n const isThinking = anthropicOptions?.thinking?.type === 'enabled';\n const thinkingBudget = anthropicOptions?.thinking?.budgetTokens;\n\n const baseArgs = {\n // model id:\n model: this.modelId,\n\n // standardized settings:\n max_tokens: maxTokens,\n temperature,\n top_k: topK,\n top_p: topP,\n stop_sequences: stopSequences,\n\n // provider specific settings:\n ...(isThinking && {\n thinking: { type: 'enabled', budget_tokens: thinkingBudget },\n }),\n\n // prompt:\n system: messagesPrompt.system,\n messages: messagesPrompt.messages,\n };\n\n if (isThinking) {\n if (thinkingBudget == null) {\n throw new UnsupportedFunctionalityError({\n functionality: 'thinking requires a budget',\n });\n }\n\n if (baseArgs.temperature != null) {\n baseArgs.temperature = undefined;\n warnings.push({\n type: 'unsupported-setting',\n setting: 'temperature',\n details: 'temperature is not supported when thinking is enabled',\n });\n }\n\n if (topK != null) {\n baseArgs.top_k = undefined;\n warnings.push({\n type: 'unsupported-setting',\n setting: 'topK',\n details: 'topK is not supported when thinking is enabled',\n });\n }\n\n if (topP != null) {\n baseArgs.top_p = undefined;\n warnings.push({\n type: 'unsupported-setting',\n setting: 'topP',\n details: 'topP is not supported when thinking is enabled',\n });\n }\n\n // adjust max tokens to account for thinking:\n baseArgs.max_tokens = maxTokens + thinkingBudget;\n }\n\n switch (type) {\n case 'regular': {\n const {\n tools,\n tool_choice,\n toolWarnings,\n betas: toolsBetas,\n } = prepareTools(mode);\n\n return {\n args: { ...baseArgs, tools, tool_choice },\n warnings: [...warnings, ...toolWarnings],\n betas: new Set([...messagesBetas, ...toolsBetas]),\n };\n }\n\n case 'object-json': {\n throw new UnsupportedFunctionalityError({\n functionality: 'json-mode object generation',\n });\n }\n\n case 'object-tool': {\n const { name, description, parameters } = mode.tool;\n\n return {\n args: {\n ...baseArgs,\n tools: [{ name, description, input_schema: parameters }],\n tool_choice: { type: 'tool', name },\n },\n warnings,\n betas: messagesBetas,\n };\n }\n\n default: {\n const _exhaustiveCheck: never = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n\n private async getHeaders({\n betas,\n headers,\n }: {\n betas: Set<string>;\n headers: Record<string, string | undefined> | undefined;\n }) {\n return combineHeaders(\n await resolve(this.config.headers),\n betas.size > 0 ? { 'anthropic-beta': Array.from(betas).join(',') } : {},\n headers,\n );\n }\n\n private buildRequestUrl(isStreaming: boolean): string {\n return (\n this.config.buildRequestUrl?.(this.config.baseURL, isStreaming) ??\n `${this.config.baseURL}/messages`\n );\n }\n\n private transformRequestBody(args: Record<string, any>): Record<string, any> {\n return this.config.transformRequestBody?.(args) ?? args;\n }\n\n async doGenerate(\n options: Parameters<LanguageModelV1['doGenerate']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>> {\n const { args, warnings, betas } = await this.getArgs(options);\n\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse,\n } = await postJsonToApi({\n url: this.buildRequestUrl(false),\n headers: await this.getHeaders({ betas, headers: options.headers }),\n body: this.transformRequestBody(args),\n failedResponseHandler: anthropicFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n anthropicMessagesResponseSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n const { messages: rawPrompt, ...rawSettings } = args;\n\n // extract text\n let text = '';\n for (const content of response.content) {\n if (content.type === 'text') {\n text += content.text;\n }\n }\n\n // extract tool calls\n let toolCalls: LanguageModelV1FunctionToolCall[] | undefined = undefined;\n if (response.content.some(content => content.type === 'tool_use')) {\n toolCalls = [];\n for (const content of response.content) {\n if (content.type === 'tool_use') {\n toolCalls.push({\n toolCallType: 'function',\n toolCallId: content.id,\n toolName: content.name,\n args: JSON.stringify(content.input),\n });\n }\n }\n }\n\n const reasoning = response.content\n .filter(\n content =>\n content.type === 'redacted_thinking' || content.type === 'thinking',\n )\n .map(content =>\n content.type === 'thinking'\n ? {\n type: 'text' as const,\n text: content.thinking,\n signature: content.signature,\n }\n : {\n type: 'redacted' as const,\n data: content.data,\n },\n );\n\n return {\n text,\n reasoning: reasoning.length > 0 ? reasoning : undefined,\n toolCalls,\n finishReason: mapAnthropicStopReason(response.stop_reason),\n usage: {\n promptTokens: response.usage.input_tokens,\n completionTokens: response.usage.output_tokens,\n },\n rawCall: { rawPrompt, rawSettings },\n rawResponse: {\n headers: responseHeaders,\n body: rawResponse,\n },\n response: {\n id: response.id ?? undefined,\n modelId: response.model ?? undefined,\n },\n warnings,\n providerMetadata: {\n anthropic: {\n cacheCreationInputTokens:\n response.usage.cache_creation_input_tokens ?? null,\n cacheReadInputTokens: response.usage.cache_read_input_tokens ?? null,\n },\n },\n request: { body: JSON.stringify(args) },\n };\n }\n\n async doStream(\n options: Parameters<LanguageModelV1['doStream']>[0],\n ): Promise<Awaited<ReturnType<LanguageModelV1['doStream']>>> {\n const { args, warnings, betas } = await this.getArgs(options);\n const body = { ...args, stream: true };\n\n const { responseHeaders, value: response } = await postJsonToApi({\n url: this.buildRequestUrl(true),\n headers: await this.getHeaders({ betas, headers: options.headers }),\n body: this.transformRequestBody(body),\n failedResponseHandler: anthropicFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n anthropicMessagesChunkSchema,\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch,\n });\n\n const { messages: rawPrompt, ...rawSettings } = args;\n\n let finishReason: LanguageModelV1FinishReason = 'unknown';\n const usage: { promptTokens: number; completionTokens: number } = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN,\n };\n\n const toolCallContentBlocks: Record<\n number,\n {\n toolCallId: string;\n toolName: string;\n jsonText: string;\n }\n > = {};\n\n let providerMetadata: LanguageModelV1ProviderMetadata | undefined =\n undefined;\n\n let blockType:\n | 'text'\n | 'thinking'\n | 'tool_use'\n | 'redacted_thinking'\n | undefined = undefined;\n\n return {\n stream: response.pipeThrough(\n new TransformStream<\n ParseResult<z.infer<typeof anthropicMessagesChunkSchema>>,\n LanguageModelV1StreamPart\n >({\n transform(chunk, controller) {\n if (!chunk.success) {\n controller.enqueue({ type: 'error', error: chunk.error });\n return;\n }\n\n const value = chunk.value;\n\n switch (value.type) {\n case 'ping': {\n return; // ignored\n }\n\n case 'content_block_start': {\n const contentBlockType = value.content_block.type;\n\n blockType = contentBlockType;\n\n switch (contentBlockType) {\n case 'text':\n case 'thinking': {\n return; // ignored\n }\n\n case 'redacted_thinking': {\n controller.enqueue({\n type: 'redacted-reasoning',\n data: value.content_block.data,\n });\n return;\n }\n\n case 'tool_use': {\n toolCallContentBlocks[value.index] = {\n toolCallId: value.content_block.id,\n toolName: value.content_block.name,\n jsonText: '',\n };\n return;\n }\n\n default: {\n const _exhaustiveCheck: never = contentBlockType;\n throw new Error(\n `Unsupported content block type: ${_exhaustiveCheck}`,\n );\n }\n }\n }\n\n case 'content_block_stop': {\n // when finishing a tool call block, send the full tool call:\n if (toolCallContentBlocks[value.index] != null) {\n const contentBlock = toolCallContentBlocks[value.index];\n\n controller.enqueue({\n type: 'tool-call',\n toolCallType: 'function',\n toolCallId: contentBlock.toolCallId,\n toolName: contentBlock.toolName,\n args: contentBlock.jsonText,\n });\n\n delete toolCallContentBlocks[value.index];\n }\n\n blockType = undefined; // reset block type\n\n return;\n }\n\n case 'content_block_delta': {\n const deltaType = value.delta.type;\n switch (deltaType) {\n case 'text_delta': {\n controller.enqueue({\n type: 'text-delta',\n textDelta: value.delta.text,\n });\n\n return;\n }\n\n case 'thinking_delta': {\n controller.enqueue({\n type: 'reasoning',\n textDelta: value.delta.thinking,\n });\n\n return;\n }\n\n case 'signature_delta': {\n // signature are only supported on thinking blocks:\n if (blockType === 'thinking') {\n controller.enqueue({\n type: 'reasoning-signature',\n signature: value.delta.signature,\n });\n }\n\n return;\n }\n\n case 'input_json_delta': {\n const contentBlock = toolCallContentBlocks[value.index];\n\n controller.enqueue({\n type: 'tool-call-delta',\n toolCallType: 'function',\n toolCallId: contentBlock.toolCallId,\n toolName: contentBlock.toolName,\n argsTextDelta: value.delta.partial_json,\n });\n\n contentBlock.jsonText += value.delta.partial_json;\n\n return;\n }\n\n default: {\n const _exhaustiveCheck: never = deltaType;\n throw new Error(\n `Unsupported delta type: ${_exhaustiveCheck}`,\n );\n }\n }\n }\n\n case 'message_start': {\n usage.promptTokens = value.message.usage.input_tokens;\n usage.completionTokens = value.message.usage.output_tokens;\n\n providerMetadata = {\n anthropic: {\n cacheCreationInputTokens:\n value.message.usage.cache_creation_input_tokens ?? null,\n cacheReadInputTokens:\n value.message.usage.cache_read_input_tokens ?? null,\n },\n };\n\n controller.enqueue({\n type: 'response-metadata',\n id: value.message.id ?? undefined,\n modelId: value.message.model ?? undefined,\n });\n\n return;\n }\n\n case 'message_delta': {\n usage.completionTokens = value.usage.output_tokens;\n finishReason = mapAnthropicStopReason(value.delta.stop_reason);\n return;\n }\n\n case 'message_stop': {\n controller.enqueue({\n type: 'finish',\n finishReason,\n usage,\n providerMetadata,\n });\n return;\n }\n\n case 'error': {\n controller.enqueue({ type: 'error', error: value.error });\n return;\n }\n\n default: {\n const _exhaustiveCheck: never = value;\n throw new Error(`Unsupported chunk type: ${_exhaustiveCheck}`);\n }\n }\n },\n }),\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body: JSON.stringify(body) },\n };\n }\n}\n\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst anthropicMessagesResponseSchema = z.object({\n type: z.literal('message'),\n id: z.string().nullish(),\n model: z.string().nullish(),\n content: z.array(\n z.discriminatedUnion('type', [\n z.object({\n type: z.literal('text'),\n text: z.string(),\n }),\n z.object({\n type: z.literal('thinking'),\n thinking: z.string(),\n signature: z.string(),\n }),\n z.object({\n type: z.literal('redacted_thinking'),\n data: z.string(),\n }),\n z.object({\n type: z.literal('tool_use'),\n id: z.string(),\n name: z.string(),\n input: z.unknown(),\n }),\n ]),\n ),\n stop_reason: z.string().nullish(),\n usage: z.object({\n input_tokens: z.number(),\n output_tokens: z.number(),\n cache_creation_input_tokens: z.number().nullish(),\n cache_read_input_tokens: z.number().nullish(),\n }),\n});\n\n// limited version of the schema, focussed on what is needed for the implementation\n// this approach limits breakages when the API changes and increases efficiency\nconst anthropicMessagesChunkSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('message_start'),\n message: z.object({\n id: z.string().nullish(),\n model: z.string().nullish(),\n usage: z.object({\n input_tokens: z.number(),\n output_tokens: z.number(),\n cache_creation_input_tokens: z.number().nullish(),\n cache_read_input_tokens: z.number().nullish(),\n }),\n }),\n }),\n z.object({\n type: z.literal('content_block_start'),\n index: z.number(),\n content_block: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('text'),\n text: z.string(),\n }),\n z.object({\n type: z.literal('thinking'),\n thinking: z.string(),\n }),\n z.object({\n type: z.literal('tool_use'),\n id: z.string(),\n name: z.string(),\n }),\n z.object({\n type: z.literal('redacted_thinking'),\n data: z.string(),\n }),\n ]),\n }),\n z.object({\n type: z.literal('content_block_delta'),\n index: z.number(),\n delta: z.discriminatedUnion('type', [\n z.object({\n type: z.literal('input_json_delta'),\n partial_json: z.string(),\n }),\n z.object({\n type: z.literal('text_delta'),\n text: z.string(),\n }),\n z.object({\n type: z.literal('thinking_delta'),\n thinking: z.string(),\n }),\n z.object({\n type: z.literal('signature_delta'),\n signature: z.string(),\n }),\n ]),\n }),\n z.object({\n type: z.literal('content_block_stop'),\n index: z.number(),\n }),\n z.object({\n type: z.literal('error'),\n error: z.object({\n type: z.string(),\n message: z.string(),\n }),\n }),\n z.object({\n type: z.literal('message_delta'),\n delta: z.object({ stop_reason: z.string().nullish() }),\n usage: z.object({ output_tokens: z.number() }),\n }),\n z.object({\n type: z.literal('message_stop'),\n }),\n z.object({\n type: z.literal('ping'),\n }),\n]);\n\nconst anthropicProviderOptionsSchema = z.object({\n thinking: z\n .object({\n type: z.union([z.literal('enabled'), z.literal('disabled')]),\n budgetTokens: z.number().optional(),\n })\n .optional(),\n});\n\nexport type AnthropicProviderOptions = z.infer<\n typeof anthropicProviderOptionsSchema\n>;\n","import { z } from 'zod';\n\n// Copied from ai package\ntype ExecuteFunction<PARAMETERS, RESULT> =\n | undefined\n | ((\n args: PARAMETERS,\n options: { abortSignal?: AbortSignal },\n ) => Promise<RESULT>);\n\n// Copied from ai package\nexport type ToolResultContent = Array<\n | {\n type: 'text';\n text: string;\n }\n | {\n type: 'image';\n data: string; // base64 encoded png image, e.g. screenshot\n mimeType?: string; // e.g. 'image/png';\n }\n>;\n\nconst Bash20241022Parameters = z.object({\n command: z.string(),\n restart: z.boolean().optional(),\n});\n\n/**\n * Creates a tool for running a bash command. Must have name \"bash\".\n *\n * Image results are supported.\n *\n * @param execute - The function to execute the tool. Optional.\n */\nfunction bashTool_20241022<RESULT>(\n options: {\n execute?: ExecuteFunction<\n {\n /**\n * The bash command to run. Required unless the tool is being restarted.\n */\n command: string;\n\n /**\n * Specifying true will restart this tool. Otherwise, leave this unspecified.\n */\n restart?: boolean;\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n } = {},\n): {\n type: 'provider-defined';\n id: 'anthropic.bash_20241022';\n args: {};\n parameters: typeof Bash20241022Parameters;\n execute: ExecuteFunction<z.infer<typeof Bash20241022Parameters>, RESULT>;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.bash_20241022',\n args: {},\n parameters: Bash20241022Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nconst Bash20250124Parameters = z.object({\n command: z.string(),\n restart: z.boolean().optional(),\n});\n\n/**\n * Creates a tool for running a bash command. Must have name \"bash\".\n *\n * Image results are supported.\n *\n * @param execute - The function to execute the tool. Optional.\n */\nfunction bashTool_20250124<RESULT>(\n options: {\n execute?: ExecuteFunction<\n {\n /**\n * The bash command to run. Required unless the tool is being restarted.\n */\n command: string;\n\n /**\n * Specifying true will restart this tool. Otherwise, leave this unspecified.\n */\n restart?: boolean;\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n } = {},\n): {\n type: 'provider-defined';\n id: 'anthropic.bash_20250124';\n args: {};\n parameters: typeof Bash20250124Parameters;\n execute: ExecuteFunction<z.infer<typeof Bash20250124Parameters>, RESULT>;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.bash_20250124',\n args: {},\n parameters: Bash20250124Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nconst TextEditor20241022Parameters = z.object({\n command: z.enum(['view', 'create', 'str_replace', 'insert', 'undo_edit']),\n path: z.string(),\n file_text: z.string().optional(),\n insert_line: z.number().int().optional(),\n new_str: z.string().optional(),\n old_str: z.string().optional(),\n view_range: z.array(z.number().int()).optional(),\n});\n\n/**\n * Creates a tool for editing text. Must have name \"str_replace_editor\".\n *\n * Image results are supported.\n *\n * @param execute - The function to execute the tool. Optional.\n */\nfunction textEditorTool_20241022<RESULT>(\n options: {\n execute?: ExecuteFunction<\n {\n /**\n * The commands to run. Allowed options are: `view`, `create`, `str_replace`, `insert`, `undo_edit`.\n */\n command: 'view' | 'create' | 'str_replace' | 'insert' | 'undo_edit';\n\n /**\n * Absolute path to file or directory, e.g. `/repo/file.py` or `/repo`.\n */\n path: string;\n\n /**\n * Required parameter of `create` command, with the content of the file to be created.\n */\n file_text?: string;\n\n /**\n * Required parameter of `insert` command. The `new_str` will be inserted AFTER the line `insert_line` of `path`.\n */\n insert_line?: number;\n\n /**\n * Optional parameter of `str_replace` command containing the new string (if not given, no string will be added). Required parameter of `insert` command containing the string to insert.\n */\n new_str?: string;\n\n /**\n * Required parameter of `str_replace` command containing the string in `path` to replace.\n */\n old_str?: string;\n\n /**\n * Optional parameter of `view` command when `path` points to a file. If none is given, the full file is shown. If provided, the file will be shown in the indicated line number range, e.g. [11, 12] will show lines 11 and 12. Indexing at 1 to start. Setting `[start_line, -1]` shows all lines from `start_line` to the end of the file.\n */\n view_range?: number[];\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n } = {},\n): {\n type: 'provider-defined';\n id: 'anthropic.text_editor_20241022';\n args: {};\n parameters: typeof TextEditor20241022Parameters;\n execute: ExecuteFunction<\n z.infer<typeof TextEditor20241022Parameters>,\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.text_editor_20241022',\n args: {},\n parameters: TextEditor20241022Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nconst TextEditor20250124Parameters = z.object({\n command: z.enum(['view', 'create', 'str_replace', 'insert', 'undo_edit']),\n path: z.string(),\n file_text: z.string().optional(),\n insert_line: z.number().int().optional(),\n new_str: z.string().optional(),\n old_str: z.string().optional(),\n view_range: z.array(z.number().int()).optional(),\n});\n\n/**\n * Creates a tool for editing text. Must have name \"str_replace_editor\".\n *\n * Image results are supported.\n *\n * @param execute - The function to execute the tool. Optional.\n */\nfunction textEditorTool_20250124<RESULT>(\n options: {\n execute?: ExecuteFunction<\n {\n /**\n * The commands to run. Allowed options are: `view`, `create`, `str_replace`, `insert`, `undo_edit`.\n */\n command: 'view' | 'create' | 'str_replace' | 'insert' | 'undo_edit';\n\n /**\n * Absolute path to file or directory, e.g. `/repo/file.py` or `/repo`.\n */\n path: string;\n\n /**\n * Required parameter of `create` command, with the content of the file to be created.\n */\n file_text?: string;\n\n /**\n * Required parameter of `insert` command. The `new_str` will be inserted AFTER the line `insert_line` of `path`.\n */\n insert_line?: number;\n\n /**\n * Optional parameter of `str_replace` command containing the new string (if not given, no string will be added). Required parameter of `insert` command containing the string to insert.\n */\n new_str?: string;\n\n /**\n * Required parameter of `str_replace` command containing the string in `path` to replace.\n */\n old_str?: string;\n\n /**\n * Optional parameter of `view` command when `path` points to a file. If none is given, the full file is shown. If provided, the file will be shown in the indicated line number range, e.g. [11, 12] will show lines 11 and 12. Indexing at 1 to start. Setting `[start_line, -1]` shows all lines from `start_line` to the end of the file.\n */\n view_range?: number[];\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n } = {},\n): {\n type: 'provider-defined';\n id: 'anthropic.text_editor_20250124';\n args: {};\n parameters: typeof TextEditor20250124Parameters;\n execute: ExecuteFunction<\n z.infer<typeof TextEditor20250124Parameters>,\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.text_editor_20250124',\n args: {},\n parameters: TextEditor20250124Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nconst Computer20241022Parameters = z.object({\n action: z.enum([\n 'key',\n 'type',\n 'mouse_move',\n 'left_click',\n 'left_click_drag',\n 'right_click',\n 'middle_click',\n 'double_click',\n 'screenshot',\n 'cursor_position',\n ]),\n coordinate: z.array(z.number().int()).optional(),\n text: z.string().optional(),\n});\n\n/**\n * Creates a tool for executing actions on a computer. Must have name \"computer\".\n *\n * Image results are supported.\n *\n * @param displayWidthPx - The width of the display being controlled by the model in pixels.\n * @param displayHeightPx - The height of the display being controlled by the model in pixels.\n * @param displayNumber - The display number to control (only relevant for X11 environments). If specified, the tool will be provided a display number in the tool definition.\n * @param execute - The function to execute the tool. Optional.\n */\nfunction computerTool_20241022<RESULT>(options: {\n displayWidthPx: number;\n displayHeightPx: number;\n displayNumber?: number;\n execute?: ExecuteFunction<\n {\n /**\n * The action to perform. The available actions are:\n * - `key`: Press a key or key-combination on the keyboard.\n * - This supports xdotool's `key` syntax.\n * - Examples: \"a\", \"Return\", \"alt+Tab\", \"ctrl+s\", \"Up\", \"KP_0\" (for the numpad 0 key).\n * - `type`: Type a string of text on the keyboard.\n * - `cursor_position`: Get the current (x, y) pixel coordinate of the cursor on the screen.\n * - `mouse_move`: Move the cursor to a specified (x, y) pixel coordinate on the screen.\n * - `left_click`: Click the left mouse button.\n * - `left_click_drag`: Click and drag the cursor to a specified (x, y) pixel coordinate on the screen.\n * - `right_click`: Click the right mouse button.\n * - `middle_click`: Click the middle mouse button.\n * - `double_click`: Double-click the left mouse button.\n * - `screenshot`: Take a screenshot of the screen.\n */\n action:\n | 'key'\n | 'type'\n | 'mouse_move'\n | 'left_click'\n | 'left_click_drag'\n | 'right_click'\n | 'middle_click'\n | 'double_click'\n | 'screenshot'\n | 'cursor_position';\n\n /**\n * (x, y): The x (pixels from the left edge) and y (pixels from the top edge) coordinates to move the mouse to. Required only by `action=mouse_move` and `action=left_click_drag`.\n */\n coordinate?: number[];\n\n /**\n * Required only by `action=type` and `action=key`.\n */\n text?: string;\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n}): {\n type: 'provider-defined';\n id: 'anthropic.computer_20241022';\n args: {};\n parameters: typeof Computer20241022Parameters;\n execute: ExecuteFunction<z.infer<typeof Computer20241022Parameters>, RESULT>;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.computer_20241022',\n args: {\n displayWidthPx: options.displayWidthPx,\n displayHeightPx: options.displayHeightPx,\n displayNumber: options.displayNumber,\n },\n parameters: Computer20241022Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nconst Computer20250124Parameters = z.object({\n action: z.enum([\n 'key',\n 'hold_key',\n 'type',\n 'cursor_position',\n 'mouse_move',\n 'left_mouse_down',\n 'left_mouse_up',\n 'left_click',\n 'left_click_drag',\n 'right_click',\n 'middle_click',\n 'double_click',\n 'triple_click',\n 'scroll',\n 'wait',\n 'screenshot',\n ]),\n coordinate: z.tuple([z.number().int(), z.number().int()]).optional(),\n duration: z.number().optional(),\n scroll_amount: z.number().optional(),\n scroll_direction: z.enum(['up', 'down', 'left', 'right']).optional(),\n start_coordinate: z.tuple([z.number().int(), z.number().int()]).optional(),\n text: z.string().optional(),\n});\n\n/**\n * Creates a tool for executing actions on a computer. Must have name \"computer\".\n *\n * Image results are supported.\n *\n * @param displayWidthPx - The width of the display being controlled by the model in pixels.\n * @param displayHeightPx - The height of the display being controlled by the model in pixels.\n * @param displayNumber - The display number to control (only relevant for X11 environments). If specified, the tool will be provided a display number in the tool definition.\n * @param execute - The function to execute the tool. Optional.\n */\nfunction computerTool_20250124<RESULT>(options: {\n displayWidthPx: number;\n displayHeightPx: number;\n displayNumber?: number;\n execute?: ExecuteFunction<\n {\n /**\n * - `key`: Press a key or key-combination on the keyboard.\n * - This supports xdotool's `key` syntax.\n * - Examples: \"a\", \"Return\", \"alt+Tab\", \"ctrl+s\", \"Up\", \"KP_0\" (for the numpad 0 key).\n * - `hold_key`: Hold down a key or multiple keys for a specified duration (in seconds). Supports the same syntax as `key`.\n * - `type`: Type a string of text on the keyboard.\n * - `cursor_position`: Get the current (x, y) pixel coordinate of the cursor on the screen.\n * - `mouse_move`: Move the cursor to a specified (x, y) pixel coordinate on the screen.\n * - `left_mouse_down`: Press the left mouse button.\n * - `left_mouse_up`: Release the left mouse button.\n * - `left_click`: Click the left mouse button at the specified (x, y) pixel coordinate on the screen. You can also include a key combination to hold down while clicking using the `text` parameter.\n * - `left_click_drag`: Click and drag the cursor from `start_coordinate` to a specified (x, y) pixel coordinate on the screen.\n * - `right_click`: Click the right mouse button at the specified (x, y) pixel coordinate on the screen.\n * - `middle_click`: Click the middle mouse button at the specified (x, y) pixel coordinate on the screen.\n * - `double_click`: Double-click the left mouse button at the specified (x, y) pixel coordinate on the screen.\n * - `triple_click`: Triple-click the left mouse button at the specified (x, y) pixel coordinate on the screen.\n * - `scroll`: Scroll the screen in a specified direction by a specified amount of clicks of the scroll wheel, at the specified (x, y) pixel coordinate. DO NOT use PageUp/PageDown to scroll.\n * - `wait`: Wait for a specified duration (in seconds).\n * - `screenshot`: Take a screenshot of the screen.\n */\n action:\n | 'key'\n | 'hold_key'\n | 'type'\n | 'cursor_position'\n | 'mouse_move'\n | 'left_mouse_down'\n | 'left_mouse_up'\n | 'left_click'\n | 'left_click_drag'\n | 'right_click'\n | 'middle_click'\n | 'double_click'\n | 'triple_click'\n | 'scroll'\n | 'wait'\n | 'screenshot';\n\n /**\n * (x, y): The x (pixels from the left edge) and y (pixels from the top edge) coordinates to move the mouse to. Required only by `action=mouse_move` and `action=left_click_drag`.\n */\n coordinate?: [number, number];\n\n /**\n * The duration to hold the key down for. Required only by `action=hold_key` and `action=wait`.\n */\n duration?: number;\n\n /**\n * The number of 'clicks' to scroll. Required only by `action=scroll`.\n */\n scroll_amount?: number;\n\n /**\n * The direction to scroll the screen. Required only by `action=scroll`.\n */\n scroll_direction?: 'up' | 'down' | 'left' | 'right';\n\n /**\n * (x, y): The x (pixels from the left edge) and y (pixels from the top edge) coordinates to start the drag from. Required only by `action=left_click_drag`.\n */\n start_coordinate?: [number, number];\n\n /**\n * Required only by `action=type`, `action=key`, and `action=hold_key`. Can also be used by click or scroll actions to hold down keys while clicking or scrolling.\n */\n text?: string;\n },\n RESULT\n >;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n}): {\n type: 'provider-defined';\n id: 'anthropic.computer_20250124';\n args: {};\n parameters: typeof Computer20250124Parameters;\n execute: ExecuteFunction<z.infer<typeof Computer20250124Parameters>, RESULT>;\n experimental_toToolResultContent?: (result: RESULT) => ToolResultContent;\n} {\n return {\n type: 'provider-defined',\n id: 'anthropic.computer_20250124',\n args: {\n displayWidthPx: options.displayWidthPx,\n displayHeightPx: options.displayHeightPx,\n displayNumber: options.displayNumber,\n },\n parameters: Computer20250124Parameters,\n execute: options.execute,\n experimental_toToolResultContent: options.experimental_toToolResultContent,\n };\n}\n\nexport const anthropicTools = {\n bash_20241022: bashTool_20241022,\n bash_20250124: bashTool_20250124,\n textEditor_20241022: textEditorTool_20241022,\n textEditor_20250124: textEditorTool_20250124,\n computer_20241022: computerTool_20241022,\n computer_20250124: computerTool_20250124,\n};\n","import {\n LanguageModelV1,\n NoSuchModelError,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { AnthropicMessagesLanguageModel } from './anthropic-messages-language-model';\nimport {\n AnthropicMessagesModelId,\n AnthropicMessagesSettings,\n} from './anthropic-messages-settings';\nimport { anthropicTools } from './anthropic-tools';\n\nexport interface AnthropicProvider extends ProviderV1 {\n /**\nCreates a model for text generation.\n*/\n (\n modelId: AnthropicMessagesModelId,\n settings?: AnthropicMessagesSettings,\n ): LanguageModelV1;\n\n /**\nCreates a model for text generation.\n*/\n languageModel(\n modelId: AnthropicMessagesModelId,\n settings?: AnthropicMessagesSettings,\n ): LanguageModelV1;\n\n /**\n@deprecated Use `.languageModel()` instead.\n*/\n chat(\n modelId: AnthropicMessagesModelId,\n settings?: AnthropicMessagesSettings,\n ): LanguageModelV1;\n\n /**\n@deprecated Use `.languageModel()` instead.\n */\n messages(\n modelId: AnthropicMessagesModelId,\n settings?: AnthropicMessagesSettings,\n ): LanguageModelV1;\n\n /**\nAnthropic-specific computer use tool.\n */\n tools: typeof anthropicTools;\n}\n\nexport interface AnthropicProviderSettings {\n /**\nUse a different URL prefix for API calls, e.g. to use proxy servers.\nThe default prefix is `https://api.anthropic.com/v1`.\n */\n baseURL?: string;\n\n /**\nAPI key that is being send using the `x-api-key` header.\nIt defaults to the `ANTHROPIC_API_KEY` environment variable.\n */\n apiKey?: string;\n\n /**\nCustom headers to include in the requests.\n */\n headers?: Record<string, string>;\n\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n */\n fetch?: FetchFunction;\n\n generateId?: () => string;\n}\n\n/**\nCreate an Anthropic provider instance.\n */\nexport function createAnthropic(\n options: AnthropicProviderSettings = {},\n): AnthropicProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://api.anthropic.com/v1';\n\n const getHeaders = () => ({\n 'anthropic-version': '2023-06-01',\n 'x-api-key': loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'ANTHROPIC_API_KEY',\n description: 'Anthropic',\n }),\n ...options.headers,\n });\n\n const createChatModel = (\n modelId: AnthropicMessagesModelId,\n settings: AnthropicMessagesSettings = {},\n ) =>\n new AnthropicMessagesLanguageModel(modelId, settings, {\n provider: 'anthropic.messages',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n supportsImageUrls: true,\n });\n\n const provider = function (\n modelId: AnthropicMessagesModelId,\n settings?: AnthropicMessagesSettings,\n ) {\n if (new.target) {\n throw new Error(\n 'The Anthropic model function cannot be called with the new keyword.',\n );\n }\n\n return createChatModel(modelId, settings);\n };\n\n provider.languageModel = createChatModel;\n provider.chat = createChatModel;\n provider.messages = createChatModel;\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n\n provider.tools = anthropicTools;\n\n return provider;\n}\n\n/**\nDefault Anthropic provider instance.\n */\nexport const anthropic = createAnthropic();\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkSIGXR3JT_cjs = require('./chunk-SIGXR3JT.cjs');
3
+ var chunkLPM6BBAX_cjs = require('./chunk-LPM6BBAX.cjs');
4
4
  var zod = require('zod');
5
5
 
6
6
  function convertJSONSchemaToOpenAPISchema(jsonSchema) {
@@ -107,7 +107,7 @@ function convertToGoogleGenerativeAIMessages(prompt) {
107
107
  switch (role) {
108
108
  case "system": {
109
109
  if (!systemMessagesAllowed) {
110
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
110
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
111
111
  functionality: "system messages are only supported at the beginning of the conversation"
112
112
  });
113
113
  }
@@ -133,7 +133,7 @@ function convertToGoogleGenerativeAIMessages(prompt) {
133
133
  } : {
134
134
  inlineData: {
135
135
  mimeType: (_b = part.mimeType) != null ? _b : "image/jpeg",
136
- data: chunkSIGXR3JT_cjs.convertUint8ArrayToBase64(part.image)
136
+ data: chunkLPM6BBAX_cjs.convertUint8ArrayToBase64(part.image)
137
137
  }
138
138
  }
139
139
  );
@@ -171,12 +171,12 @@ function convertToGoogleGenerativeAIMessages(prompt) {
171
171
  }
172
172
  case "file": {
173
173
  if (part.mimeType !== "image/png") {
174
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
174
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
175
175
  functionality: "Only PNG images are supported in assistant messages"
176
176
  });
177
177
  }
178
178
  if (part.data instanceof URL) {
179
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
179
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
180
180
  functionality: "File data URLs in assistant messages are not supported"
181
181
  });
182
182
  }
@@ -233,7 +233,7 @@ var googleErrorDataSchema = zod.z.object({
233
233
  status: zod.z.string()
234
234
  })
235
235
  });
236
- var googleFailedResponseHandler = chunkSIGXR3JT_cjs.createJsonErrorResponseHandler({
236
+ var googleFailedResponseHandler = chunkLPM6BBAX_cjs.createJsonErrorResponseHandler({
237
237
  errorSchema: googleErrorDataSchema,
238
238
  errorToMessage: (data) => data.error.message
239
239
  });
@@ -308,7 +308,7 @@ function prepareTools(mode, useSearchGrounding, dynamicRetrievalConfig, modelId)
308
308
  };
309
309
  default: {
310
310
  const _exhaustiveCheck = type;
311
- throw new chunkSIGXR3JT_cjs.UnsupportedFunctionalityError({
311
+ throw new chunkLPM6BBAX_cjs.UnsupportedFunctionalityError({
312
312
  functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`
313
313
  });
314
314
  }
@@ -372,7 +372,7 @@ var GoogleGenerativeAILanguageModel = class {
372
372
  var _a, _b, _c;
373
373
  const type = mode.type;
374
374
  const warnings = [];
375
- const googleOptions = chunkSIGXR3JT_cjs.parseProviderOptions({
375
+ const googleOptions = chunkLPM6BBAX_cjs.parseProviderOptions({
376
376
  provider: "google",
377
377
  providerOptions: providerMetadata,
378
378
  schema: googleGenerativeAIProviderOptionsSchema
@@ -482,22 +482,22 @@ var GoogleGenerativeAILanguageModel = class {
482
482
  var _a, _b, _c, _d, _e;
483
483
  const { args, warnings } = await this.getArgs(options);
484
484
  const body = JSON.stringify(args);
485
- const mergedHeaders = chunkSIGXR3JT_cjs.combineHeaders(
486
- await chunkSIGXR3JT_cjs.resolve(this.config.headers),
485
+ const mergedHeaders = chunkLPM6BBAX_cjs.combineHeaders(
486
+ await chunkLPM6BBAX_cjs.resolve(this.config.headers),
487
487
  options.headers
488
488
  );
489
489
  const {
490
490
  responseHeaders,
491
491
  value: response,
492
492
  rawValue: rawResponse
493
- } = await chunkSIGXR3JT_cjs.postJsonToApi({
493
+ } = await chunkLPM6BBAX_cjs.postJsonToApi({
494
494
  url: `${this.config.baseURL}/${getModelPath(
495
495
  this.modelId
496
496
  )}:generateContent`,
497
497
  headers: mergedHeaders,
498
498
  body: args,
499
499
  failedResponseHandler: googleFailedResponseHandler,
500
- successfulResponseHandler: chunkSIGXR3JT_cjs.createJsonResponseHandler(responseSchema),
500
+ successfulResponseHandler: chunkLPM6BBAX_cjs.createJsonResponseHandler(responseSchema),
501
501
  abortSignal: options.abortSignal,
502
502
  fetch: this.config.fetch
503
503
  });
@@ -545,18 +545,18 @@ var GoogleGenerativeAILanguageModel = class {
545
545
  async doStream(options) {
546
546
  const { args, warnings } = await this.getArgs(options);
547
547
  const body = JSON.stringify(args);
548
- const headers = chunkSIGXR3JT_cjs.combineHeaders(
549
- await chunkSIGXR3JT_cjs.resolve(this.config.headers),
548
+ const headers = chunkLPM6BBAX_cjs.combineHeaders(
549
+ await chunkLPM6BBAX_cjs.resolve(this.config.headers),
550
550
  options.headers
551
551
  );
552
- const { responseHeaders, value: response } = await chunkSIGXR3JT_cjs.postJsonToApi({
552
+ const { responseHeaders, value: response } = await chunkLPM6BBAX_cjs.postJsonToApi({
553
553
  url: `${this.config.baseURL}/${getModelPath(
554
554
  this.modelId
555
555
  )}:streamGenerateContent?alt=sse`,
556
556
  headers,
557
557
  body: args,
558
558
  failedResponseHandler: googleFailedResponseHandler,
559
- successfulResponseHandler: chunkSIGXR3JT_cjs.createEventSourceResponseHandler(chunkSchema),
559
+ successfulResponseHandler: chunkLPM6BBAX_cjs.createEventSourceResponseHandler(chunkSchema),
560
560
  abortSignal: options.abortSignal,
561
561
  fetch: this.config.fetch
562
562
  });
@@ -846,18 +846,18 @@ var GoogleGenerativeAIEmbeddingModel = class {
846
846
  abortSignal
847
847
  }) {
848
848
  if (values.length > this.maxEmbeddingsPerCall) {
849
- throw new chunkSIGXR3JT_cjs.TooManyEmbeddingValuesForCallError({
849
+ throw new chunkLPM6BBAX_cjs.TooManyEmbeddingValuesForCallError({
850
850
  provider: this.provider,
851
851
  modelId: this.modelId,
852
852
  maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,
853
853
  values
854
854
  });
855
855
  }
856
- const mergedHeaders = chunkSIGXR3JT_cjs.combineHeaders(
857
- await chunkSIGXR3JT_cjs.resolve(this.config.headers),
856
+ const mergedHeaders = chunkLPM6BBAX_cjs.combineHeaders(
857
+ await chunkLPM6BBAX_cjs.resolve(this.config.headers),
858
858
  headers
859
859
  );
860
- const { responseHeaders, value: response } = await chunkSIGXR3JT_cjs.postJsonToApi({
860
+ const { responseHeaders, value: response } = await chunkLPM6BBAX_cjs.postJsonToApi({
861
861
  url: `${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,
862
862
  headers: mergedHeaders,
863
863
  body: {
@@ -869,7 +869,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
869
869
  }))
870
870
  },
871
871
  failedResponseHandler: googleFailedResponseHandler,
872
- successfulResponseHandler: chunkSIGXR3JT_cjs.createJsonResponseHandler(
872
+ successfulResponseHandler: chunkLPM6BBAX_cjs.createJsonResponseHandler(
873
873
  googleGenerativeAITextEmbeddingResponseSchema
874
874
  ),
875
875
  abortSignal,
@@ -890,9 +890,9 @@ function isSupportedFileUrl(url) {
890
890
  }
891
891
  function createGoogleGenerativeAI(options = {}) {
892
892
  var _a;
893
- const baseURL = (_a = chunkSIGXR3JT_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://generativelanguage.googleapis.com/v1beta";
893
+ const baseURL = (_a = chunkLPM6BBAX_cjs.withoutTrailingSlash(options.baseURL)) != null ? _a : "https://generativelanguage.googleapis.com/v1beta";
894
894
  const getHeaders = () => ({
895
- "x-goog-api-key": chunkSIGXR3JT_cjs.loadApiKey({
895
+ "x-goog-api-key": chunkLPM6BBAX_cjs.loadApiKey({
896
896
  apiKey: options.apiKey,
897
897
  environmentVariableName: "GOOGLE_GENERATIVE_AI_API_KEY",
898
898
  description: "Google Generative AI"
@@ -905,7 +905,7 @@ function createGoogleGenerativeAI(options = {}) {
905
905
  provider: "google.generative-ai",
906
906
  baseURL,
907
907
  headers: getHeaders,
908
- generateId: (_a2 = options.generateId) != null ? _a2 : chunkSIGXR3JT_cjs.generateId,
908
+ generateId: (_a2 = options.generateId) != null ? _a2 : chunkLPM6BBAX_cjs.generateId,
909
909
  isSupportedUrl: isSupportedFileUrl,
910
910
  fetch: options.fetch
911
911
  });
@@ -936,5 +936,5 @@ var google = createGoogleGenerativeAI();
936
936
 
937
937
  exports.createGoogleGenerativeAI = createGoogleGenerativeAI;
938
938
  exports.google = google;
939
- //# sourceMappingURL=chunk-TVSIG4JE.cjs.map
940
- //# sourceMappingURL=chunk-TVSIG4JE.cjs.map
939
+ //# sourceMappingURL=dist-FZYCV3VB.cjs.map
940
+ //# sourceMappingURL=dist-FZYCV3VB.cjs.map