thursday-agent 0.23.0 → 0.24.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 (406) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error.html +1 -1
  5. package/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +2 -2
  13. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  14. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  15. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  16. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  17. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  18. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  19. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -1
  21. package/.next/server/app/api/bot/thread/file/route.js +2 -2
  22. package/.next/server/app/api/bot/thread/file/route.js.nft.json +1 -1
  23. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  24. package/.next/server/app/api/config/route.js.nft.json +1 -1
  25. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  26. package/.next/server/app/api/llm-model/automatic/route.js +2 -2
  27. package/.next/server/app/api/llm-model/automatic/route.js.nft.json +1 -1
  28. package/.next/server/app/api/llm-model/catalog/[provider]/route.js +2 -2
  29. package/.next/server/app/api/llm-model/catalog/[provider]/route.js.nft.json +1 -1
  30. package/.next/server/app/api/llm-model/credits/[provider]/route.js +2 -2
  31. package/.next/server/app/api/llm-model/credits/[provider]/route.js.nft.json +1 -1
  32. package/.next/server/app/api/llm-model/route.js +2 -2
  33. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  34. package/.next/server/app/api/llm-model/subscription/route.js +2 -2
  35. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  36. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  37. package/.next/server/app/api/mcp/oauth/callback/route.js +3 -3
  38. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  39. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  40. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  41. package/.next/server/app/api/memory/edit/route.js +2 -2
  42. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  43. package/.next/server/app/api/reach/route.js +2 -2
  44. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  45. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  46. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  47. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  48. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  49. package/.next/server/app/api/thursday/call/end/route.js.nft.json +1 -1
  50. package/.next/server/app/api/thursday/call/plan/route.js +3 -3
  51. package/.next/server/app/api/thursday/call/plan/route.js.nft.json +1 -1
  52. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  53. package/.next/server/app/api/thursday/settings/route.js.nft.json +1 -1
  54. package/.next/server/app/api/thursday/text/route.js +2 -2
  55. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  56. package/.next/server/app/api/thursday/tool-call/route.js +3 -3
  57. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  58. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  59. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  60. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +11 -11
  61. package/.next/server/app/artifact/[...path]/page.js +2 -2
  62. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  63. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  64. package/.next/server/app/page/react-loadable-manifest.json +1 -1
  65. package/.next/server/app/page/server-reference-manifest.json +63 -63
  66. package/.next/server/app/page.js +2 -2
  67. package/.next/server/app/page.js.nft.json +1 -1
  68. package/.next/server/app/page_client-reference-manifest.js +1 -1
  69. package/.next/server/chunks/[root-of-the-server]__0582p46._.js +1 -1
  70. package/.next/server/chunks/{[root-of-the-server]__0d00o4_._.js → [root-of-the-server]__06_ck92._.js} +1 -1
  71. package/.next/server/chunks/[root-of-the-server]__06kxzw-._.js +1 -1
  72. package/.next/server/chunks/[root-of-the-server]__0d-dfqm._.js +1 -1
  73. package/.next/server/chunks/{[root-of-the-server]__1mowvzz._.js → [root-of-the-server]__0f8quhc._.js} +1 -1
  74. package/.next/server/chunks/[root-of-the-server]__0lg1fok._.js +1 -1
  75. package/.next/server/chunks/[root-of-the-server]__0mh1tgg._.js +1 -1
  76. package/.next/server/chunks/{[root-of-the-server]__0eem_66._.js → [root-of-the-server]__0tsqr_i._.js} +1 -1
  77. package/.next/server/chunks/{[root-of-the-server]__1yiqjfx._.js → [root-of-the-server]__0z8s0g8._.js} +1 -1
  78. package/.next/server/chunks/[root-of-the-server]__11e22s7._.js +1 -1
  79. package/.next/server/chunks/[root-of-the-server]__1478lu3._.js +1 -1
  80. package/.next/server/chunks/[root-of-the-server]__17kdjf6._.js +1 -1
  81. package/.next/server/chunks/[root-of-the-server]__17m7ag9._.js +1 -1
  82. package/.next/server/chunks/[root-of-the-server]__181zc_o._.js +1 -1
  83. package/.next/server/chunks/{[root-of-the-server]__1ivfglf._.js → [root-of-the-server]__1mwe6in._.js} +1 -1
  84. package/.next/server/chunks/{[root-of-the-server]__1r_d-gv._.js → [root-of-the-server]__1nzt9ia._.js} +1 -1
  85. package/.next/server/chunks/[root-of-the-server]__1v5jpk9._.js +1 -1
  86. package/.next/server/chunks/{[root-of-the-server]__0pp2355._.js → [root-of-the-server]__1vz_k4p._.js} +1 -1
  87. package/.next/server/chunks/_008vczq._.js +1 -1
  88. package/.next/server/chunks/_00aztuo._.js +1 -1
  89. package/.next/server/chunks/_021kabv._.js +20 -20
  90. package/.next/server/chunks/_05gl-xy._.js +48 -40
  91. package/.next/server/chunks/_07mczew._.js +1 -1
  92. package/.next/server/chunks/_0la8s6t._.js +1 -1
  93. package/.next/server/chunks/_0rn3c_0._.js +31 -31
  94. package/.next/server/chunks/_0wkhub3._.js +1 -1
  95. package/.next/server/chunks/{_0q2y48v._.js → _0z9l1-a._.js} +1 -1
  96. package/.next/server/chunks/_0zwjr-g._.js +1 -1
  97. package/.next/server/chunks/_12-7atf._.js +1 -1
  98. package/.next/server/chunks/_124q1p2._.js +1 -1
  99. package/.next/server/chunks/_13qoxq9._.js +31 -31
  100. package/.next/server/chunks/_15-_mie._.js +1 -1
  101. package/.next/server/chunks/_18sj4xf._.js +1 -1
  102. package/.next/server/chunks/_19kea1l._.js +46 -38
  103. package/.next/server/chunks/{_0-934yz._.js → _1ao-3d8._.js} +1 -1
  104. package/.next/server/chunks/{_0a09g1e._.js → _1cc2hkg._.js} +1 -1
  105. package/.next/server/chunks/_1chy-lk._.js +1 -1
  106. package/.next/server/chunks/_1cok9lj._.js +76 -0
  107. package/.next/server/chunks/_1d5zmy8._.js +1 -1
  108. package/.next/server/chunks/{_0ocmvv0._.js → _1h7ll0h._.js} +1 -1
  109. package/.next/server/chunks/_1hw1ujv._.js +20 -20
  110. package/.next/server/chunks/_1lg0lsu._.js +24 -24
  111. package/.next/server/chunks/_1mzdpal._.js +76 -0
  112. package/.next/server/chunks/_1q42187._.js +2 -2
  113. package/.next/server/chunks/_1u2plme._.js +3 -0
  114. package/.next/server/chunks/_1ufbxe1._.js +1 -1
  115. package/.next/server/chunks/_1unludv._.js +1 -1
  116. package/.next/server/chunks/_1v4id5q._.js +20 -20
  117. package/.next/server/chunks/_1v5qol2._.js +20 -20
  118. package/.next/server/chunks/_1wg0cqo._.js +1 -1
  119. package/.next/server/chunks/_1x2xiyw._.js +1 -1
  120. package/.next/server/chunks/_1znrlca._.js +1 -1
  121. package/.next/server/chunks/node_modules_09fdt86._.js +26 -0
  122. package/.next/server/chunks/node_modules_0u_q4-b._.js +26 -0
  123. package/.next/server/chunks/node_modules_1oo0z5r._.js +26 -0
  124. package/.next/server/chunks/ssr/[root-of-the-server]__09u-n6y._.js +112 -0
  125. package/.next/server/chunks/ssr/[root-of-the-server]__0glkz9k._.js +3 -0
  126. package/.next/server/chunks/ssr/[root-of-the-server]__0rpmgnt._.js +3 -0
  127. package/.next/server/chunks/ssr/[root-of-the-server]__0tgkj13._.js +3 -0
  128. package/.next/server/chunks/ssr/{[root-of-the-server]__203utm3._.js → [root-of-the-server]__0wrprhy._.js} +1 -1
  129. package/.next/server/chunks/ssr/[root-of-the-server]__17yeveo._.js +1 -1
  130. package/.next/server/chunks/ssr/[root-of-the-server]__1867koj._.js +1 -1
  131. package/.next/server/chunks/ssr/{[root-of-the-server]__0zt_au4._.js → [root-of-the-server]__1ft98nl._.js} +2 -2
  132. package/.next/server/chunks/ssr/[root-of-the-server]__1gv2nbd._.js +3 -0
  133. package/.next/server/chunks/ssr/[root-of-the-server]__1kos36s._.js +6 -0
  134. package/.next/server/chunks/ssr/{[root-of-the-server]__0y03pu0._.js → [root-of-the-server]__1n2hycp._.js} +1 -1
  135. package/.next/server/chunks/ssr/[root-of-the-server]__20floom._.js +2 -2
  136. package/.next/server/chunks/ssr/{_0eprrig._.js → _0-y517w._.js} +2 -2
  137. package/.next/server/chunks/ssr/{_03vw3u5._.js → _02sda-9._.js} +2 -2
  138. package/.next/server/chunks/ssr/_03n27qx._.js +85 -0
  139. package/.next/server/chunks/ssr/_04jb10a._.js +3 -0
  140. package/.next/server/chunks/ssr/_09a6bpd._.js +1 -1
  141. package/.next/server/chunks/ssr/_0akma_h._.js +3 -0
  142. package/.next/server/chunks/ssr/_0cd6g3l._.js +44 -36
  143. package/.next/server/chunks/ssr/_0fx7w0u._.js +3 -0
  144. package/.next/server/chunks/ssr/_0gfa_rb._.js +3 -0
  145. package/.next/server/chunks/ssr/_0ghdb00._.js +3 -0
  146. package/.next/server/chunks/ssr/_0ingto_._.js +3 -0
  147. package/.next/server/chunks/ssr/_0jgsxrg._.js +6 -0
  148. package/.next/server/chunks/ssr/{_0a_pedm._.js → _0ktd2qg._.js} +2 -2
  149. package/.next/server/chunks/ssr/{_0bt2e10._.js → _0kvhn--._.js} +2 -2
  150. package/.next/server/chunks/ssr/_0poypri._.js +3 -0
  151. package/.next/server/chunks/ssr/_0tg3o37._.js +1 -1
  152. package/.next/server/chunks/ssr/_0y0ubpl._.js +85 -0
  153. package/.next/server/chunks/ssr/_11l9kc0._.js +1 -1
  154. package/.next/server/chunks/ssr/_12-hlgn._.js +3 -0
  155. package/.next/server/chunks/ssr/_12_ail7._.js +1 -1
  156. package/.next/server/chunks/ssr/_12n2oxe._.js +3 -0
  157. package/.next/server/chunks/ssr/_16_7zeo._.js +1 -1
  158. package/.next/server/chunks/ssr/_1a_w_du._.js +3 -0
  159. package/.next/server/chunks/ssr/_1bfrntd._.js +2 -2
  160. package/.next/server/chunks/ssr/_1e_9qjr._.js +3 -0
  161. package/.next/server/chunks/ssr/{_0kmldic._.js → _1gqjgsr._.js} +2 -2
  162. package/.next/server/chunks/ssr/_1kyjimg._.js +162 -0
  163. package/.next/server/chunks/ssr/_1l-3enz._.js +5 -5
  164. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  165. package/.next/server/chunks/ssr/{_0x9f717._.js → _1odlery._.js} +2 -2
  166. package/.next/server/chunks/ssr/_1soynbw._.js +2 -2
  167. package/.next/server/chunks/ssr/components_ui_markdown-body_tsx_0eaiq36._.js +3 -0
  168. package/.next/server/chunks/ssr/features_ai_components_model-picker_tsx_0ucb1y9._.js +1 -1
  169. package/.next/server/chunks/ssr/features_bot_components_01ye2wp._.js +3 -0
  170. package/.next/server/chunks/ssr/features_bot_components_bot-setting_tsx_01ajft6._.js +4 -0
  171. package/.next/server/chunks/ssr/features_bot_components_thread-setting_tsx_0yae7zy._.js +3 -0
  172. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +20 -0
  173. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  174. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  175. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  176. package/.next/server/chunks/ssr/features_skills_components_skills-setting_tsx_1wtuuip._.js +3 -0
  177. package/.next/server/chunks/ssr/features_thursday_0tni574._.js +3 -0
  178. package/.next/server/chunks/ssr/features_thursday_components_thursday-setting_tsx_1_6ydrc._.js +3 -0
  179. package/.next/server/chunks/ssr/lib_date-like_ts_02is0pw._.js +3 -0
  180. package/.next/server/chunks/ssr/node_modules_017gqu8._.js +3 -0
  181. package/.next/server/chunks/ssr/node_modules_01alue6._.js +3 -0
  182. package/.next/server/chunks/ssr/node_modules_01htpr-._.js +17 -0
  183. package/.next/server/chunks/ssr/node_modules_01pxb8b._.js +26 -0
  184. package/.next/server/chunks/ssr/node_modules_01tm_tp._.js +3 -0
  185. package/.next/server/chunks/ssr/node_modules_02n9-pb._.js +3 -0
  186. package/.next/server/chunks/ssr/node_modules_02pi0yq._.js +17 -0
  187. package/.next/server/chunks/ssr/node_modules_03-o46i._.js +3 -0
  188. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0ir6p7s._.js → node_modules_04aag9b._.js} +2 -2
  189. package/.next/server/chunks/ssr/node_modules_04si41m._.js +3 -0
  190. package/.next/server/chunks/ssr/{node_modules_d3-scale_src_1tr1qwb._.js → node_modules_05-8wqp._.js} +2 -2
  191. package/.next/server/chunks/ssr/node_modules_063ofsn._.js +64 -0
  192. package/.next/server/chunks/ssr/node_modules_0794bsw._.js +20 -20
  193. package/.next/server/chunks/ssr/node_modules_09zjj0q._.js +3 -0
  194. package/.next/server/chunks/ssr/node_modules_0_aoyhl._.js +24 -0
  195. package/.next/server/chunks/ssr/node_modules_0_nsswh._.js +3 -0
  196. package/.next/server/chunks/ssr/node_modules_0_ps6bu._.js +3 -0
  197. package/.next/server/chunks/ssr/{node_modules_0y_k4h5._.js → node_modules_0bxpl07._.js} +2 -2
  198. package/.next/server/chunks/ssr/node_modules_0bz_arm._.js +3 -0
  199. package/.next/server/chunks/ssr/node_modules_0dxcji9._.js +3 -0
  200. package/.next/server/chunks/ssr/node_modules_0f5_pdq._.js +40 -0
  201. package/.next/server/chunks/ssr/node_modules_0fibdri._.js +3 -0
  202. package/.next/server/chunks/ssr/node_modules_0gtb11b._.js +3 -0
  203. package/.next/server/chunks/ssr/node_modules_0hlr1-8._.js +24 -0
  204. package/.next/server/chunks/ssr/{node_modules_111pp7w._.js → node_modules_0klo3i5._.js} +2 -2
  205. package/.next/server/chunks/ssr/{node_modules_0xht9wg._.js → node_modules_0koo_87._.js} +2 -2
  206. package/.next/server/chunks/ssr/node_modules_0kyd5t1._.js +3 -0
  207. package/.next/server/chunks/ssr/node_modules_0kzqz7r._.js +3 -0
  208. package/.next/server/chunks/ssr/node_modules_0lf6itx._.js +3 -0
  209. package/.next/server/chunks/ssr/node_modules_0pejed0._.js +3 -0
  210. package/.next/server/chunks/ssr/node_modules_0pf0mdn._.js +43 -0
  211. package/.next/server/chunks/ssr/node_modules_0q3wqo6._.js +3 -0
  212. package/.next/server/chunks/ssr/node_modules_0qw862r._.js +3 -0
  213. package/.next/server/chunks/ssr/node_modules_0rr5bhc._.js +3 -0
  214. package/.next/server/chunks/ssr/node_modules_0u1te_7._.js +3 -0
  215. package/.next/server/chunks/ssr/node_modules_0udp97e._.js +3 -0
  216. package/.next/server/chunks/ssr/node_modules_0v47nij._.js +43 -0
  217. package/.next/server/chunks/ssr/node_modules_0x7tjjt._.js +17 -0
  218. package/.next/server/chunks/ssr/node_modules_0xhtcgd._.js +3 -0
  219. package/.next/server/chunks/ssr/{node_modules_0ayoorn._.js → node_modules_0xon57z._.js} +2 -2
  220. package/.next/server/chunks/ssr/node_modules_0z1zutp._.js +17 -0
  221. package/.next/server/chunks/ssr/node_modules_0z7xnqk._.js +17 -0
  222. package/.next/server/chunks/ssr/node_modules_11bryw1._.js +3 -0
  223. package/.next/server/chunks/ssr/{node_modules_00mh9o-._.js → node_modules_13eo1xw._.js} +2 -2
  224. package/.next/server/chunks/ssr/node_modules_13udj58._.js +3 -0
  225. package/.next/server/chunks/ssr/node_modules_15vxln6._.js +17 -0
  226. package/.next/server/chunks/ssr/node_modules_15yal8y._.js +17 -0
  227. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1ejf5ye._.js → node_modules_17q6-cb._.js} +2 -2
  228. package/.next/server/chunks/ssr/node_modules_17sis9w._.js +17 -0
  229. package/.next/server/chunks/ssr/node_modules_19v9p62._.js +17 -0
  230. package/.next/server/chunks/ssr/node_modules_19xlry2._.js +3 -0
  231. package/.next/server/chunks/ssr/node_modules_1afgbir._.js +17 -0
  232. package/.next/server/chunks/ssr/node_modules_1asq18n._.js +29 -0
  233. package/.next/server/chunks/ssr/node_modules_1bo15xl._.js +3 -0
  234. package/.next/server/chunks/ssr/node_modules_1crkt86._.js +3 -0
  235. package/.next/server/chunks/ssr/{node_modules_04f_uw2._.js → node_modules_1fpm85j._.js} +2 -2
  236. package/.next/server/chunks/ssr/node_modules_1gkjtk-._.js +3 -0
  237. package/.next/server/chunks/ssr/node_modules_1hj50tu._.js +3 -0
  238. package/.next/server/chunks/ssr/node_modules_1hv0kyf._.js +3 -0
  239. package/.next/server/chunks/ssr/node_modules_1i5fr0j._.js +3 -0
  240. package/.next/server/chunks/ssr/node_modules_1k3cymo._.js +3 -0
  241. package/.next/server/chunks/ssr/node_modules_1ki78ma._.js +3 -0
  242. package/.next/server/chunks/ssr/{node_modules_07udd3z._.js → node_modules_1lrg_ju._.js} +2 -2
  243. package/.next/server/chunks/ssr/node_modules_1lt565w._.js +3 -0
  244. package/.next/server/chunks/ssr/node_modules_1oxvn1l._.js +3 -0
  245. package/.next/server/chunks/ssr/node_modules_1qgcqvi._.js +3 -0
  246. package/.next/server/chunks/ssr/node_modules_1r_497y._.js +3 -0
  247. package/.next/server/chunks/ssr/node_modules_1thrjjl._.js +3 -0
  248. package/.next/server/chunks/ssr/node_modules_1tsuh_o._.js +17 -0
  249. package/.next/server/chunks/ssr/node_modules_1vhpjvn._.js +3 -0
  250. package/.next/server/chunks/ssr/{node_modules_1b5rxw5._.js → node_modules_1xpa_a4._.js} +2 -2
  251. package/.next/server/chunks/ssr/node_modules_1xtyj97._.js +26 -0
  252. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_0dlpxwr._.js → node_modules_@mermaid-js_parser_dist_066fcep._.js} +1 -1
  253. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_0eji647._.js → node_modules_@mermaid-js_parser_dist_0_301m2._.js} +1 -1
  254. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_0lct0v1._.js → node_modules_@mermaid-js_parser_dist_0it10w8._.js} +1 -1
  255. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_13hksv_._.js → node_modules_@mermaid-js_parser_dist_0m-ahsg._.js} +1 -1
  256. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0n8rqkj._.js +3 -0
  257. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0nb4v-i._.js +3 -0
  258. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_0tdjo9s._.js +3 -0
  259. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_12betp4._.js +3 -0
  260. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1mu01rb._.js +3 -0
  261. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1xda76v._.js +3 -0
  262. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1z2f7i3._.js +3 -0
  263. package/.next/server/chunks/ssr/node_modules_katex_dist_katex_mjs_0gtpcr6._.js +3 -0
  264. package/.next/server/chunks/ssr/node_modules_katex_dist_katex_mjs_0o4db0q._.js +3 -0
  265. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_0e5n4p5._.js +3 -0
  266. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-Y2CYZVJY_mjs_20i4m4_._.js +3 -0
  267. package/.next/server/chunks/ssr/node_modules_streamdown_dist_0lptw6m._.js +3 -0
  268. package/.next/server/chunks/ssr/node_modules_streamdown_dist_1-e49om._.js +3 -0
  269. package/.next/server/middleware-build-manifest.js +3 -3
  270. package/.next/server/pages/404.html +1 -1
  271. package/.next/server/pages/500.html +1 -1
  272. package/.next/server/server-reference-manifest.js +1 -1
  273. package/.next/server/server-reference-manifest.json +64 -64
  274. package/.next/static/chunks/{1ettmta9iet7b.js → 03_uoxripq3nc.js} +1 -1
  275. package/.next/static/chunks/{396enq-m0sss5.js → 0776-hu4_eek7.js} +2 -2
  276. package/.next/static/chunks/0akv-2v88qow0.js +1 -0
  277. package/.next/static/chunks/{1oh4hbusfz97l.js → 0rq_fqeaz_bvd.js} +1 -1
  278. package/.next/static/chunks/0zardk7icrprd.js +4 -0
  279. package/.next/static/chunks/17rnkwd0nvzhn.js +1 -0
  280. package/.next/static/chunks/{0fklfoj8o_msg.js → 1cmwusx1ey_yw.js} +1 -1
  281. package/.next/static/chunks/{1j4rndg17wgfk.js → 1grvc88py7u6u.js} +1 -1
  282. package/.next/static/chunks/1ob3lsnuwfj-n.js +70 -0
  283. package/.next/static/chunks/{411uyd0is9u5s.js → 1qmqv6cr2nr5g.js} +1 -1
  284. package/.next/static/chunks/1yrz0aw09rjij.js +1 -0
  285. package/.next/static/chunks/1z2_9pl3nezly.js +3 -0
  286. package/.next/static/chunks/{1mpz4epyg-7pz.js → 2-zwoj9evpp_d.js} +2 -2
  287. package/.next/static/chunks/{11c3uijgqik4m.js → 20w8bgikzj9nl.js} +1 -1
  288. package/.next/static/chunks/{2sxclirl-c-um.js → 2abjsec0elgbx.js} +1 -1
  289. package/.next/static/chunks/{3_deesw_pbmkd.js → 2fxn-xltgy2un.js} +1 -1
  290. package/.next/static/chunks/2hq0xxr8bwwjx.js +1 -0
  291. package/.next/static/chunks/2jf2ckv1t70es.js +1 -0
  292. package/.next/static/chunks/2k8ou_gpe91k1.js +1 -0
  293. package/.next/static/chunks/{2zhiqxw61qowv.js → 2vk1rx8_abchj.js} +1 -1
  294. package/.next/static/chunks/{22jb4s3-8ckup.js → 2vz587tsy9sw-.js} +1 -1
  295. package/.next/static/chunks/33qtnlc00c9gq.js +1 -0
  296. package/.next/static/chunks/34ih-rod1rypo.js +1 -0
  297. package/.next/static/chunks/{3uf32hp_g9stz.js → 399la1vg4mefu.js} +1 -1
  298. package/.next/static/chunks/3b8uta6_6no_3.css +1 -0
  299. package/.next/static/chunks/3eeapb56_2bu2.js +2 -0
  300. package/.next/static/chunks/{081kl7k8r6f8z.js → 3h29tl1whfjs2.js} +1 -1
  301. package/.next/static/chunks/3l4m3_ojnhbav.js +1 -0
  302. package/.next/static/chunks/3pia1ryvrhyfr.js +1 -0
  303. package/.next/static/chunks/3qzf68zb5zlh8.js +1 -0
  304. package/.next/static/chunks/{3ph9u-51x6jhe.js → 3w6r10nihrl3l.js} +5 -5
  305. package/.next/static/chunks/3xloayc4c096r.js +1 -0
  306. package/README.md +10 -1
  307. package/guide/bots.md +35 -26
  308. package/node_modules/@types/ws/README.md +1 -1
  309. package/node_modules/@types/ws/index.d.mts +4 -0
  310. package/node_modules/@types/ws/index.d.ts +4 -0
  311. package/node_modules/@types/ws/package.json +3 -3
  312. package/package.json +2 -2
  313. package/.next/server/chunks/_1fn6cvh._.js +0 -3
  314. package/.next/server/chunks/_1jtvbp9._.js +0 -76
  315. package/.next/server/chunks/node_modules_@ai-sdk_1o5ydf6._.js +0 -26
  316. package/.next/server/chunks/ssr/[root-of-the-server]__0jjj49d._.js +0 -3
  317. package/.next/server/chunks/ssr/[root-of-the-server]__1qn0axo._.js +0 -6
  318. package/.next/server/chunks/ssr/[root-of-the-server]__1u42eh0._.js +0 -3
  319. package/.next/server/chunks/ssr/_0-s7ria._.js +0 -3
  320. package/.next/server/chunks/ssr/_088qe9a._.js +0 -162
  321. package/.next/server/chunks/ssr/_0ali_i8._.js +0 -3
  322. package/.next/server/chunks/ssr/_0flnog5._.js +0 -3
  323. package/.next/server/chunks/ssr/_0iuvjnw._.js +0 -3
  324. package/.next/server/chunks/ssr/_0k-gl8l._.js +0 -3
  325. package/.next/server/chunks/ssr/_0ks03l-._.js +0 -3
  326. package/.next/server/chunks/ssr/_0mng-y8._.js +0 -6
  327. package/.next/server/chunks/ssr/_0ugzm_0._.js +0 -3
  328. package/.next/server/chunks/ssr/_0wnv6c0._.js +0 -3
  329. package/.next/server/chunks/ssr/_0z9zkd-._.js +0 -3
  330. package/.next/server/chunks/ssr/_123y-ah._.js +0 -3
  331. package/.next/server/chunks/ssr/_14j205q._.js +0 -85
  332. package/.next/server/chunks/ssr/_16wjbs2._.js +0 -3
  333. package/.next/server/chunks/ssr/_18rmqqu._.js +0 -3
  334. package/.next/server/chunks/ssr/_1ckje8g._.js +0 -3
  335. package/.next/server/chunks/ssr/_1h3qetc._.js +0 -3
  336. package/.next/server/chunks/ssr/_1kpvfmn._.js +0 -4
  337. package/.next/server/chunks/ssr/_1pkw8wf._.js +0 -85
  338. package/.next/server/chunks/ssr/_1xwtbdz._.js +0 -3
  339. package/.next/server/chunks/ssr/features_bot_0-7flc-._.js +0 -3
  340. package/.next/server/chunks/ssr/features_config_10xs4l1._.js +0 -20
  341. package/.next/server/chunks/ssr/features_thursday_0cf9y0b._.js +0 -3
  342. package/.next/server/chunks/ssr/node_modules_04f6p6a._.js +0 -24
  343. package/.next/server/chunks/ssr/node_modules_08-pj-2._.js +0 -3
  344. package/.next/server/chunks/ssr/node_modules_098h6h5._.js +0 -29
  345. package/.next/server/chunks/ssr/node_modules_0_7yfem._.js +0 -3
  346. package/.next/server/chunks/ssr/node_modules_0bp3vfu._.js +0 -3
  347. package/.next/server/chunks/ssr/node_modules_0ch5hqr._.js +0 -3
  348. package/.next/server/chunks/ssr/node_modules_0e-hyim._.js +0 -64
  349. package/.next/server/chunks/ssr/node_modules_0ffm9w3._.js +0 -26
  350. package/.next/server/chunks/ssr/node_modules_0il0v7d._.js +0 -3
  351. package/.next/server/chunks/ssr/node_modules_0jzyuwk._.js +0 -3
  352. package/.next/server/chunks/ssr/node_modules_0ln4iwf._.js +0 -3
  353. package/.next/server/chunks/ssr/node_modules_0my2hph._.js +0 -3
  354. package/.next/server/chunks/ssr/node_modules_0ql0igl._.js +0 -17
  355. package/.next/server/chunks/ssr/node_modules_0qwth-_._.js +0 -17
  356. package/.next/server/chunks/ssr/node_modules_0y9byl5._.js +0 -3
  357. package/.next/server/chunks/ssr/node_modules_10bzndo._.js +0 -43
  358. package/.next/server/chunks/ssr/node_modules_19f7b4c._.js +0 -3
  359. package/.next/server/chunks/ssr/node_modules_1b_h09q._.js +0 -3
  360. package/.next/server/chunks/ssr/node_modules_1e83j9e._.js +0 -26
  361. package/.next/server/chunks/ssr/node_modules_1e9ugfy._.js +0 -3
  362. package/.next/server/chunks/ssr/node_modules_1hd66k0._.js +0 -64
  363. package/.next/server/chunks/ssr/node_modules_1inwr2m._.js +0 -43
  364. package/.next/server/chunks/ssr/node_modules_1j9xx1k._.js +0 -3
  365. package/.next/server/chunks/ssr/node_modules_1k8kypa._.js +0 -3
  366. package/.next/server/chunks/ssr/node_modules_1oeu85h._.js +0 -3
  367. package/.next/server/chunks/ssr/node_modules_1r2ghv5._.js +0 -3
  368. package/.next/server/chunks/ssr/node_modules_1rg7lj4._.js +0 -40
  369. package/.next/server/chunks/ssr/node_modules_1ttpnib._.js +0 -29
  370. package/.next/server/chunks/ssr/node_modules_201yvda._.js +0 -17
  371. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_17wxxyr._.js +0 -3
  372. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_18pinup._.js +0 -3
  373. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1feyqvf._.js +0 -3
  374. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1ok0411._.js +0 -3
  375. package/.next/server/chunks/ssr/node_modules_@mermaid-js_parser_dist_1sgfrma._.js +0 -3
  376. package/.next/server/chunks/ssr/node_modules_d3-shape_src_arc_1-w13bo.js +0 -3
  377. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_0jkhu0x._.js +0 -3
  378. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_0thh8pk._.js +0 -17
  379. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_1o1kg4c._.js +0 -3
  380. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_1rxlz7e._.js +0 -3
  381. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_1turj0n._.js +0 -3
  382. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_1v463pe._.js +0 -17
  383. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-5VM5RSS4_mjs_0tg6kya._.js +0 -17
  384. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_chunk-F27PBJKO_mjs_0ms0zmb._.js +0 -3
  385. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_dagre-GXQ25YYZ_mjs_0k_lz8d._.js +0 -3
  386. package/.next/server/chunks/ssr/node_modules_mermaid_dist_chunks_mermaid_core_sizeCapture-INFHLROL_mjs_179zv_p._.js +0 -3
  387. package/.next/server/chunks/ssr/node_modules_streamdown_dist_highlighted-body-KPVGNVTW_1fnf894.js +0 -3
  388. package/.next/server/chunks/ssr/node_modules_streamdown_dist_mermaid-HWGCJPDP_093xi20.js +0 -3
  389. package/.next/static/chunks/02lze_e5sagjn.js +0 -1
  390. package/.next/static/chunks/0ve2gb0hw3wkq.js +0 -1
  391. package/.next/static/chunks/16np6727e61io.js +0 -1
  392. package/.next/static/chunks/18amidjlaqexf.js +0 -1
  393. package/.next/static/chunks/1u4jowlgjgeip.js +0 -70
  394. package/.next/static/chunks/236le5kv_yj6a.css +0 -1
  395. package/.next/static/chunks/24op50z6sqi_5.js +0 -1
  396. package/.next/static/chunks/2eczs-lporqt6.js +0 -1
  397. package/.next/static/chunks/2z4sodeldj_86.js +0 -1
  398. package/.next/static/chunks/3ezjz93yvzmop.js +0 -4
  399. package/.next/static/chunks/3h6rqjx92wva9.js +0 -1
  400. package/.next/static/chunks/3w7zt3xzyjn86.js +0 -3
  401. package/.next/static/chunks/3xkx7vqefm7on.js +0 -2
  402. package/.next/static/chunks/3ygk41pgsw7nv.js +0 -1
  403. package/.next/static/chunks/4384atd5zerir.js +0 -1
  404. /package/.next/static/{6tIYlzfG_5P4sIxxgmucO → WKQCaSVcySHM4bjkWJXEH}/_buildManifest.js +0 -0
  405. /package/.next/static/{6tIYlzfG_5P4sIxxgmucO → WKQCaSVcySHM4bjkWJXEH}/_clientMiddlewareManifest.js +0 -0
  406. /package/.next/static/{6tIYlzfG_5P4sIxxgmucO → WKQCaSVcySHM4bjkWJXEH}/_ssgManifest.js +0 -0
@@ -1,25 +1,25 @@
1
- module.exports=[275086,172654,a=>{"use strict";var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,aA,aB,aC,aD,aE,aF,aG,aH,aI,aJ,aK,aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU,aV,aW,aX,aY,aZ,a$,a_,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,ba,bb,bc,bd,be,bf,bg="vercel.ai.error",bh=Symbol.for(bg),bi=class a extends(c=Error,b=bh,c){constructor({name:a,message:c,cause:d}){super(c),this[b]=!0,this.name=a,this.cause=d}static isInstance(b){return a.hasMarker(b,bg)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}},bj="AI_APICallError",bk=`vercel.ai.error.${bj}`,bl=Symbol.for(bk),bm=class extends(e=bi,d=bl,e){constructor({message:a,url:b,requestBodyValues:c,statusCode:e,responseHeaders:f,responseBody:g,cause:h,isRetryable:i=null!=e&&(408===e||409===e||429===e||e>=500),data:j}){super({name:bj,message:a,cause:h}),this[d]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=e,this.responseHeaders=f,this.responseBody=g,this.isRetryable=i,this.data=j}static isInstance(a){return bi.hasMarker(a,bk)}},bn="AI_EmptyResponseBodyError",bo=`vercel.ai.error.${bn}`,bp=Symbol.for(bo),bq=class extends(g=bi,f=bp,g){constructor({message:a="Empty response body"}={}){super({name:bn,message:a}),this[f]=!0}static isInstance(a){return bi.hasMarker(a,bo)}},br=Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");function bs(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}var bt="AI_InvalidArgumentError",bu=`vercel.ai.error.${bt}`,bv=Symbol.for(bu),bw=class extends(i=bi,h=bv,i){constructor({message:a,cause:b,argument:c}){super({name:bt,message:a,cause:b}),this[h]=!0,this.argument=c}static isInstance(a){return bi.hasMarker(a,bu)}},bx=Symbol.for("vercel.ai.error.AI_InvalidPromptError");Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");var by="AI_JSONParseError",bz=`vercel.ai.error.${by}`,bA=Symbol.for(bz),bB=class extends(k=bi,j=bA,k){constructor({text:a,cause:b}){super({name:by,message:`JSON parsing failed: Text: ${a}.
2
- Error message: ${bs(b)}`,cause:b}),this[j]=!0,this.text=a}static isInstance(a){return bi.hasMarker(a,bz)}},bC=Symbol.for("vercel.ai.error.AI_LoadAPIKeyError");Symbol.for("vercel.ai.error.AI_LoadSettingError");Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");var bD="AI_NoSuchModelError",bE=`vercel.ai.error.${bD}`,bF=Symbol.for(bE),bG=class extends(m=bi,l=bF,m){constructor({errorName:a=bD,modelId:b,modelType:c,message:d=`No such ${c}: ${b}`}){super({name:a,message:d}),this[l]=!0,this.modelId=b,this.modelType=c}static isInstance(a){return bi.hasMarker(a,bE)}},bH=Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError");Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");var bI="AI_TypeValidationError",bJ=`vercel.ai.error.${bI}`,bK=Symbol.for(bJ),bL=class a extends(o=bi,n=bK,o){constructor({value:a,cause:b,context:c}){let d="Type validation failed";if((null==c?void 0:c.field)&&(d+=` for ${c.field}`),(null==c?void 0:c.entityName)||(null==c?void 0:c.entityId)){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:bI,message:`${d}: Value: ${JSON.stringify(a)}.
3
- Error message: ${bs(b)}`,cause:b}),this[n]=!0,this.value=a,this.context=c}static isInstance(a){return bi.hasMarker(a,bJ)}static wrap({value:b,cause:c,context:d}){var e,f,g;return a.isInstance(c)&&c.value===b&&(null==(e=c.context)?void 0:e.field)===(null==d?void 0:d.field)&&(null==(f=c.context)?void 0:f.entityName)===(null==d?void 0:d.entityName)&&(null==(g=c.context)?void 0:g.entityId)===(null==d?void 0:d.entityId)?c:new a({value:b,cause:c,context:d})}},bM="AI_UnsupportedFunctionalityError",bN=`vercel.ai.error.${bM}`,bO=Symbol.for(bN),bP=class extends(q=bi,p=bO,q){constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:bM,message:b}),this[p]=!0,this.functionality=a}static isInstance(a){return bi.hasMarker(a,bN)}},bQ=a.i(950612),bR=a.i(303767);class bS extends Error{constructor(a,b){super(a),this.name="ParseError",this.type=b.type,this.field=b.field,this.value=b.value,this.line=b.line}}function bT(a){}function bU(a,b,c){return 100===c&&97===a.charCodeAt(b+1)&&116===a.charCodeAt(b+2)&&97===a.charCodeAt(b+3)&&58===a.charCodeAt(b+4)}function bV(a,b,c){return 101===c&&118===a.charCodeAt(b+1)&&101===a.charCodeAt(b+2)&&110===a.charCodeAt(b+3)&&116===a.charCodeAt(b+4)&&58===a.charCodeAt(b+5)}class bW extends TransformStream{constructor({onError:a,onRetry:b,onComment:c,maxBufferSize:d}={}){let e;super({start(f){e=function(a){if("function"==typeof a)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:b=bT,onError:c=bT,onRetry:d=bT,onComment:e,maxBufferSize:f}=a,g=[],h=0,i=!0,j,k="",l=0,m,n=!1;function o(){void 0!==f&&(h+k.length<=f||(n=!0,g.length=0,h=0,j=void 0,k="",l=0,m=void 0,c(new bS(`Buffered data exceeded max buffer size of ${f} characters`,{type:"max-buffer-size-exceeded"}))))}function p(a){let c=0;if(-1===a.indexOf("\r")){let d=a.indexOf(`
1
+ module.exports=[275086,172654,a=>{"use strict";let b,c;var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az="vercel.ai.error",aA=Symbol.for(az),aB=class a extends(e=Error,d=aA,e){constructor({name:a,message:b,cause:c}){super(b),this[d]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,az)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}},aC="AI_APICallError",aD=`vercel.ai.error.${aC}`,aE=Symbol.for(aD),aF=class extends(g=aB,f=aE,g){constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:g,cause:h,isRetryable:i=null!=d&&(408===d||409===d||429===d||d>=500),data:j}){super({name:aC,message:a,cause:h}),this[f]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=g,this.isRetryable=i,this.data=j}static isInstance(a){return aB.hasMarker(a,aD)}},aG="AI_EmptyResponseBodyError",aH=`vercel.ai.error.${aG}`,aI=Symbol.for(aH),aJ=class extends(i=aB,h=aI,i){constructor({message:a="Empty response body"}={}){super({name:aG,message:a}),this[h]=!0}static isInstance(a){return aB.hasMarker(a,aH)}},aK=Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");function aL(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}var aM="AI_InvalidArgumentError",aN=`vercel.ai.error.${aM}`,aO=Symbol.for(aN),aP=class extends(k=aB,j=aO,k){constructor({message:a,cause:b,argument:c}){super({name:aM,message:a,cause:b}),this[j]=!0,this.argument=c}static isInstance(a){return aB.hasMarker(a,aN)}},aQ=Symbol.for("vercel.ai.error.AI_InvalidPromptError");Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");var aR="AI_JSONParseError",aS=`vercel.ai.error.${aR}`,aT=Symbol.for(aS),aU=class extends(m=aB,l=aT,m){constructor({text:a,cause:b}){super({name:aR,message:`JSON parsing failed: Text: ${a}.
2
+ Error message: ${aL(b)}`,cause:b}),this[l]=!0,this.text=a}static isInstance(a){return aB.hasMarker(a,aS)}},aV=Symbol.for("vercel.ai.error.AI_LoadAPIKeyError");Symbol.for("vercel.ai.error.AI_LoadSettingError");Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");var aW="AI_NoSuchModelError",aX=`vercel.ai.error.${aW}`,aY=Symbol.for(aX),aZ=class extends(o=aB,n=aY,o){constructor({errorName:a=aW,modelId:b,modelType:c,message:d=`No such ${c}: ${b}`}){super({name:a,message:d}),this[n]=!0,this.modelId=b,this.modelType=c}static isInstance(a){return aB.hasMarker(a,aX)}},a$=Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError");Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");var a_="AI_TypeValidationError",a0=`vercel.ai.error.${a_}`,a1=Symbol.for(a0),a2=class a extends(q=aB,p=a1,q){constructor({value:a,cause:b,context:c}){let d="Type validation failed";if((null==c?void 0:c.field)&&(d+=` for ${c.field}`),(null==c?void 0:c.entityName)||(null==c?void 0:c.entityId)){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:a_,message:`${d}: Value: ${JSON.stringify(a)}.
3
+ Error message: ${aL(b)}`,cause:b}),this[p]=!0,this.value=a,this.context=c}static isInstance(a){return aB.hasMarker(a,a0)}static wrap({value:b,cause:c,context:d}){var e,f,g;return a.isInstance(c)&&c.value===b&&(null==(e=c.context)?void 0:e.field)===(null==d?void 0:d.field)&&(null==(f=c.context)?void 0:f.entityName)===(null==d?void 0:d.entityName)&&(null==(g=c.context)?void 0:g.entityId)===(null==d?void 0:d.entityId)?c:new a({value:b,cause:c,context:d})}},a3="AI_UnsupportedFunctionalityError",a4=`vercel.ai.error.${a3}`,a5=Symbol.for(a4),a6=class extends(s=aB,r=a5,s){constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:a3,message:b}),this[r]=!0,this.functionality=a}static isInstance(a){return aB.hasMarker(a,a4)}},a7=a.i(950612),a8=a.i(303767);class a9 extends Error{constructor(a,b){super(a),this.name="ParseError",this.type=b.type,this.field=b.field,this.value=b.value,this.line=b.line}}function ba(a){}function bb(a,b,c){return 100===c&&97===a.charCodeAt(b+1)&&116===a.charCodeAt(b+2)&&97===a.charCodeAt(b+3)&&58===a.charCodeAt(b+4)}function bc(a,b,c){return 101===c&&118===a.charCodeAt(b+1)&&101===a.charCodeAt(b+2)&&110===a.charCodeAt(b+3)&&116===a.charCodeAt(b+4)&&58===a.charCodeAt(b+5)}class bd extends TransformStream{constructor({onError:a,onRetry:b,onComment:c,maxBufferSize:d}={}){let e;super({start(f){e=function(a){if("function"==typeof a)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:b=ba,onError:c=ba,onRetry:d=ba,onComment:e,maxBufferSize:f}=a,g=[],h=0,i=!0,j,k="",l=0,m,n=!1;function o(){void 0!==f&&(h+k.length<=f||(n=!0,g.length=0,h=0,j=void 0,k="",l=0,m=void 0,c(new a9(`Buffered data exceeded max buffer size of ${f} characters`,{type:"max-buffer-size-exceeded"}))))}function p(a){let c=0;if(-1===a.indexOf("\r")){let d=a.indexOf(`
4
4
  `,c);for(;-1!==d;){if(c===d){l>0&&b({id:j,event:m,data:k}),j=void 0,k="",l=0,m=void 0,c=d+1,d=a.indexOf(`
5
- `,c);continue}let e=a.charCodeAt(c);if(bU(a,c,e)){let e=32===a.charCodeAt(c+5)?c+6:c+5,f=a.slice(e,d);if(0===l&&10===a.charCodeAt(d+1)){b({id:j,event:m,data:f}),j=void 0,k="",m=void 0,c=d+2,d=a.indexOf(`
5
+ `,c);continue}let e=a.charCodeAt(c);if(bb(a,c,e)){let e=32===a.charCodeAt(c+5)?c+6:c+5,f=a.slice(e,d);if(0===l&&10===a.charCodeAt(d+1)){b({id:j,event:m,data:f}),j=void 0,k="",m=void 0,c=d+2,d=a.indexOf(`
6
6
  `,c);continue}k=0===l?f:`${k}
7
- ${f}`,l++}else bV(a,c,e)?m=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0:q(a,c,d);c=d+1,d=a.indexOf(`
7
+ ${f}`,l++}else bc(a,c,e)?m=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0:q(a,c,d);c=d+1,d=a.indexOf(`
8
8
  `,c)}return a.slice(c)}for(;c<a.length;){let b=a.indexOf("\r",c),d=a.indexOf(`
9
- `,c),e=-1;if(-1!==b&&-1!==d?e=b<d?b:d:-1!==b?e=b===a.length-1?-1:b:-1!==d&&(e=d),-1===e)break;q(a,c,e),c=e+1,13===a.charCodeAt(c-1)&&10===a.charCodeAt(c)&&c++}return a.slice(c)}function q(a,c,d){if(c===d)return void(l>0&&b({id:j,event:m,data:k}),j=void 0,k="",l=0,m=void 0);let f=a.charCodeAt(c);if(bU(a,c,f)){let b=32===a.charCodeAt(c+5)?c+6:c+5,e=a.slice(b,d);k=0===l?e:`${k}
10
- ${e}`,l++;return}if(bV(a,c,f)){m=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0;return}if(105===f&&100===a.charCodeAt(c+1)&&58===a.charCodeAt(c+2)){let b=a.slice(32===a.charCodeAt(c+3)?c+4:c+3,d);b.includes("\0")||(j=b);return}if(58===f){e&&e(a.slice(c,d).slice(32===a.charCodeAt(c+1)?2:1));return}let g=a.slice(c,d),h=g.indexOf(":");if(-1===h)return void r(g,"",g);let i=g.slice(0,h),n=32===g.charCodeAt(h+1)?2:1;r(i,g.slice(h+n),g)}function r(a,b,e){switch(a){case"event":m=b||void 0;break;case"data":k=0===l?b:`${k}
11
- ${b}`,l++;break;case"id":b.includes("\0")||(j=b);break;case"retry":/^\d+$/.test(b)?d(parseInt(b,10)):c(new bS(`Invalid \`retry\` value: "${b}"`,{type:"invalid-retry",value:b,line:e}));break;default:c(new bS(`Unknown field "${a.length>20?`${a.slice(0,20)}\u2026`:a}"`,{type:"unknown-field",field:a,value:b,line:e}))}}return{feed:function(a){if(n)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(i&&(i=!1,239===a.charCodeAt(0)&&187===a.charCodeAt(1)&&191===a.charCodeAt(2)&&(a=a.slice(3))),0===g.length){let b=p(a);""!==b&&(g.push(b),h=b.length),o();return}if(-1===a.indexOf(`
12
- `)&&-1===a.indexOf("\r")){g.push(a),h+=a.length,o();return}g.push(a);let b=g.join("");g.length=0,h=0;let c=p(b);""!==c&&(g.push(c),h=c.length),o()},reset:function(a={}){if(a.consume&&g.length>0){let a=g.join("");q(a,0,a.length)}i=!0,j=void 0,k="",l=0,m=void 0,g.length=0,h=0,n=!1}}}({onEvent:a=>{f.enqueue(a)},onError(b){"function"==typeof a&&a(b),("terminate"===a||"max-buffer-size-exceeded"===b.type)&&f.error(b)},onRetry:b,onComment:c,maxBufferSize:d})},transform(a){e.feed(a)}})}}let bX=Symbol.for("workflow-serialize"),bY=Symbol.for("workflow-deserialize");new TextDecoder;var{btoa:bZ,atob:b$}=globalThis;function b_(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}async function b0(a){var b;try{await (null==(b=a.body)?void 0:b.cancel())}catch(a){}}var b1="AI_DownloadError",b2=`vercel.ai.error.${b1}`,b3=Symbol.for(b2),b4=class extends(s=bi,r=b3,s){constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:b1,message:e,cause:d}),this[r]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return bi.hasMarker(a,b2)}};function b5(a,b){try{return new URL(a).origin===new URL(b).origin}catch(a){return!1}}function b6(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function b7(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function b8(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!b6(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);if(c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0)return!0;if(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2]){let a=b[6]>>8&255,c=255&b[6],d=b[7]>>8&255,e=255&b[7];return b7(`${a}.${c}.${d}.${e}`)}return!1}async function b9(){var a,b,c;let d;return(null==(a=null==(d=globalThis.process)?void 0:d.release)?void 0:a.name)!=="node"||(null==(b=d.versions)?void 0:b.bun)!=null||(null==(c=d.versions)?void 0:c.deno)!=null||"workerd"===d.title||null!=globalThis.EdgeRuntime?globalThis.fetch:null!=t?t:t=Promise.resolve().then(ca)}function ca(){let a=cb("node:module"),{lookup:b}=cb("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=null==c?void 0:c.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!b6(a)||b7(a):6!==b||b8(a))throw new b4({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function cb(a){var b;let c=globalThis.process,d=null==(b=null==c?void 0:c.getBuiltinModule)?void 0:b.call(c,a);if(null==d)throw Error(`Node.js built-in module ${a} is unavailable`);return d}var cc=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"],cd=new Set([301,302,303,307,308]);async function ce(a){return null==a||a===globalThis.fetch?await b9():a}async function cf({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){var g;let h=void 0===b?void 0:function(a){let b=new Headers(a);for(let a of cc)b.delete(a);return b}(b),i=a=>{let b={signal:c,redirect:a};return void 0!==h&&(b.headers=new Headers(h)),b},j=a;for(let b=0;b<=d;b++){let b=void 0!==f&&b5(j,f);b||function(a){let b;try{b=new URL(a)}catch(b){throw new b4({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new b4({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new b4({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new b4({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(b8(c.slice(1,-1)))throw new b4({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(b6(c)&&b7(c))throw new b4({url:a,message:`URL with IP address ${c} is not allowed`})}(j);let c=b&&null!=e?e:b?globalThis.fetch:await ce(e),d=await c(j,i("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new b4({url:a,message:`Redirect from ${j} could not be validated and was blocked`});return await c(j,i("follow"))}let k=null==(g=d.headers)?void 0:g.get("location");if(cd.has(d.status)&&k){await b0(d);let a=new URL(k,j).toString();if(void 0!==h&&!b5(a,j)){let a=h.get("user-agent");h=new Headers(null==a?void 0:{"user-agent":a})}j=a;continue}return d}throw new b4({url:a,message:`Too many redirects (max ${d})`})}async function cg({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await b0(a),new b4({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new b4({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch(a){}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}var ch=({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{let e=()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")};if(null==a)return e;if(c.includes(d))throw new bw({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${e()}`},ci=ch(),cj=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ck=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function cl(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===cj.test(a)&&!1===ck.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function cm(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&cn(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=cn(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(cn):cn(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(cn)),null!=a.allOf&&(a.allOf=a.allOf.map(cn)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(cn));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=cn(b[a]);return a}function cn(a){return"boolean"==typeof a?a:cm(a)}var co=Symbol("Let zodToJsonSchema decide on which parser to use"),cp={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function cq(a,b){return cL(a.type._def,b)}var cr=void 0,cs=/^[cC][^\s-]{8,}$/,ct=/^[0-9a-z]+$/,cu=/^[0-9A-HJKMNP-TV-Z]{26}$/,cv=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,cw=()=>(void 0===cr&&(cr=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),cr),cx=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,cy=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,cz=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,cA=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,cB=/^[a-zA-Z0-9_-]{21}$/,cC=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function cD(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":cG(c,"email",d.message,b);break;case"format:idn-email":cG(c,"idn-email",d.message,b);break;case"pattern:zod":cH(c,cv,d.message,b)}break;case"url":cG(c,"uri",d.message,b);break;case"uuid":cG(c,"uuid",d.message,b);break;case"regex":cH(c,d.regex,d.message,b);break;case"cuid":cH(c,cs,d.message,b);break;case"cuid2":cH(c,ct,d.message,b);break;case"startsWith":cH(c,RegExp(`^${cE(d.value,b)}`),d.message,b);break;case"endsWith":cH(c,RegExp(`${cE(d.value,b)}$`),d.message,b);break;case"datetime":cG(c,"date-time",d.message,b);break;case"date":cG(c,"date",d.message,b);break;case"time":cG(c,"time",d.message,b);break;case"duration":cG(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":cH(c,RegExp(cE(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&cG(c,"ipv4",d.message,b),"v4"!==d.version&&cG(c,"ipv6",d.message,b);break;case"base64url":cH(c,cA,d.message,b);break;case"jwt":cH(c,cC,d.message,b);break;case"cidr":"v6"!==d.version&&cH(c,cx,d.message,b),"v4"!==d.version&&cH(c,cy,d.message,b);break;case"emoji":cH(c,cw(),d.message,b);break;case"ulid":cH(c,cu,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":cG(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":cH(c,cz,d.message,b)}break;case"nanoid":cH(c,cB,d.message,b)}return c}function cE(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)cF.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}var cF=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function cG(a,b,c,d){var e;a.format||(null==(e=a.anyOf)?void 0:e.some(a=>a.format))?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function cH(a,b,c,d){var e;a.pattern||(null==(e=a.allOf)?void 0:e.some(a=>a.pattern))?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:cI(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=cI(b,d)}function cI(a,b){var c;if(!b.applyRegexFlags||!a.flags)return a.source;let d={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},e=d.i?a.source.toLowerCase():a.source,f="",g=!1,h=!1,i=!1;for(let a=0;a<e.length;a++){if(g){f+=e[a],g=!1;continue}if(d.i){if(h){if(e[a].match(/[a-z]/)){i?(f+=e[a],f+=`${e[a-2]}-${e[a]}`.toUpperCase(),i=!1):"-"===e[a+1]&&(null==(c=e[a+2])?void 0:c.match(/[a-z]/))?(f+=e[a],i=!0):f+=`${e[a]}${e[a].toUpperCase()}`;continue}}else if(e[a].match(/[a-z]/)){f+=`[${e[a]}${e[a].toUpperCase()}]`;continue}}if(d.m){if("^"===e[a]){f+=`(^|(?<=[\r
9
+ `,c),e=-1;if(-1!==b&&-1!==d?e=b<d?b:d:-1!==b?e=b===a.length-1?-1:b:-1!==d&&(e=d),-1===e)break;q(a,c,e),c=e+1,13===a.charCodeAt(c-1)&&10===a.charCodeAt(c)&&c++}return a.slice(c)}function q(a,c,d){if(c===d)return void(l>0&&b({id:j,event:m,data:k}),j=void 0,k="",l=0,m=void 0);let f=a.charCodeAt(c);if(bb(a,c,f)){let b=32===a.charCodeAt(c+5)?c+6:c+5,e=a.slice(b,d);k=0===l?e:`${k}
10
+ ${e}`,l++;return}if(bc(a,c,f)){m=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0;return}if(105===f&&100===a.charCodeAt(c+1)&&58===a.charCodeAt(c+2)){let b=a.slice(32===a.charCodeAt(c+3)?c+4:c+3,d);b.includes("\0")||(j=b);return}if(58===f){e&&e(a.slice(c,d).slice(32===a.charCodeAt(c+1)?2:1));return}let g=a.slice(c,d),h=g.indexOf(":");if(-1===h)return void r(g,"",g);let i=g.slice(0,h),n=32===g.charCodeAt(h+1)?2:1;r(i,g.slice(h+n),g)}function r(a,b,e){switch(a){case"event":m=b||void 0;break;case"data":k=0===l?b:`${k}
11
+ ${b}`,l++;break;case"id":b.includes("\0")||(j=b);break;case"retry":/^\d+$/.test(b)?d(parseInt(b,10)):c(new a9(`Invalid \`retry\` value: "${b}"`,{type:"invalid-retry",value:b,line:e}));break;default:c(new a9(`Unknown field "${a.length>20?`${a.slice(0,20)}\u2026`:a}"`,{type:"unknown-field",field:a,value:b,line:e}))}}return{feed:function(a){if(n)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(i&&(i=!1,239===a.charCodeAt(0)&&187===a.charCodeAt(1)&&191===a.charCodeAt(2)&&(a=a.slice(3))),0===g.length){let b=p(a);""!==b&&(g.push(b),h=b.length),o();return}if(-1===a.indexOf(`
12
+ `)&&-1===a.indexOf("\r")){g.push(a),h+=a.length,o();return}g.push(a);let b=g.join("");g.length=0,h=0;let c=p(b);""!==c&&(g.push(c),h=c.length),o()},reset:function(a={}){if(a.consume&&g.length>0){let a=g.join("");q(a,0,a.length)}i=!0,j=void 0,k="",l=0,m=void 0,g.length=0,h=0,n=!1}}}({onEvent:a=>{f.enqueue(a)},onError(b){"function"==typeof a&&a(b),("terminate"===a||"max-buffer-size-exceeded"===b.type)&&f.error(b)},onRetry:b,onComment:c,maxBufferSize:d})},transform(a){e.feed(a)}})}}let be=Symbol.for("workflow-serialize"),bf=Symbol.for("workflow-deserialize");new TextDecoder;var{btoa:bg,atob:bh}=globalThis;function bi(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}async function bj(a){var b;try{await (null==(b=a.body)?void 0:b.cancel())}catch(a){}}var bk="AI_DownloadError",bl=`vercel.ai.error.${bk}`,bm=Symbol.for(bl),bn=class extends(u=aB,t=bm,u){constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:bk,message:e,cause:d}),this[t]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return aB.hasMarker(a,bl)}};function bo(a,b){try{return new URL(a).origin===new URL(b).origin}catch(a){return!1}}function bp(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function bq(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function br(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!bp(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);if(c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0)return!0;if(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2]){let a=b[6]>>8&255,c=255&b[6],d=b[7]>>8&255,e=255&b[7];return bq(`${a}.${c}.${d}.${e}`)}return!1}async function bs(){var a,b,c;let d;return(null==(a=null==(d=globalThis.process)?void 0:d.release)?void 0:a.name)!=="node"||(null==(b=d.versions)?void 0:b.bun)!=null||(null==(c=d.versions)?void 0:c.deno)!=null||"workerd"===d.title||null!=globalThis.EdgeRuntime?globalThis.fetch:null!=v?v:v=Promise.resolve().then(bt)}function bt(){let a=bu("node:module"),{lookup:b}=bu("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=null==c?void 0:c.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!bp(a)||bq(a):6!==b||br(a))throw new bn({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function bu(a){var b;let c=globalThis.process,d=null==(b=null==c?void 0:c.getBuiltinModule)?void 0:b.call(c,a);if(null==d)throw Error(`Node.js built-in module ${a} is unavailable`);return d}var bv=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"],bw=new Set([301,302,303,307,308]);async function bx(a){return null==a||a===globalThis.fetch?await bs():a}async function by({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){var g;let h=void 0===b?void 0:function(a){let b=new Headers(a);for(let a of bv)b.delete(a);return b}(b),i=a=>{let b={signal:c,redirect:a};return void 0!==h&&(b.headers=new Headers(h)),b},j=a;for(let b=0;b<=d;b++){let b=void 0!==f&&bo(j,f);b||function(a){let b;try{b=new URL(a)}catch(b){throw new bn({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new bn({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new bn({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new bn({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(br(c.slice(1,-1)))throw new bn({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(bp(c)&&bq(c))throw new bn({url:a,message:`URL with IP address ${c} is not allowed`})}(j);let c=b&&null!=e?e:b?globalThis.fetch:await bx(e),d=await c(j,i("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new bn({url:a,message:`Redirect from ${j} could not be validated and was blocked`});return await c(j,i("follow"))}let k=null==(g=d.headers)?void 0:g.get("location");if(bw.has(d.status)&&k){await bj(d);let a=new URL(k,j).toString();if(void 0!==h&&!bo(a,j)){let a=h.get("user-agent");h=new Headers(null==a?void 0:{"user-agent":a})}j=a;continue}return d}throw new bn({url:a,message:`Too many redirects (max ${d})`})}async function bz({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await bj(a),new bn({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new bn({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch(a){}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}var bA=({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{let e=()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")};if(null==a)return e;if(c.includes(d))throw new aP({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${e()}`},bB=bA(),bC=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,bD=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function bE(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===bC.test(a)&&!1===bD.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function bF(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&bG(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=bG(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(bG):bG(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(bG)),null!=a.allOf&&(a.allOf=a.allOf.map(bG)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(bG));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=bG(b[a]);return a}function bG(a){return"boolean"==typeof a?a:bF(a)}var bH=Symbol("Let zodToJsonSchema decide on which parser to use"),bI={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function bJ(a,b){return b2(a.type._def,b)}var bK=void 0,bL=/^[cC][^\s-]{8,}$/,bM=/^[0-9a-z]+$/,bN=/^[0-9A-HJKMNP-TV-Z]{26}$/,bO=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,bP=()=>(void 0===bK&&(bK=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),bK),bQ=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,bR=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,bS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,bT=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,bU=/^[a-zA-Z0-9_-]{21}$/,bV=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function bW(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":bZ(c,"email",d.message,b);break;case"format:idn-email":bZ(c,"idn-email",d.message,b);break;case"pattern:zod":b$(c,bO,d.message,b)}break;case"url":bZ(c,"uri",d.message,b);break;case"uuid":bZ(c,"uuid",d.message,b);break;case"regex":b$(c,d.regex,d.message,b);break;case"cuid":b$(c,bL,d.message,b);break;case"cuid2":b$(c,bM,d.message,b);break;case"startsWith":b$(c,RegExp(`^${bX(d.value,b)}`),d.message,b);break;case"endsWith":b$(c,RegExp(`${bX(d.value,b)}$`),d.message,b);break;case"datetime":bZ(c,"date-time",d.message,b);break;case"date":bZ(c,"date",d.message,b);break;case"time":bZ(c,"time",d.message,b);break;case"duration":bZ(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":b$(c,RegExp(bX(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&bZ(c,"ipv4",d.message,b),"v4"!==d.version&&bZ(c,"ipv6",d.message,b);break;case"base64url":b$(c,bT,d.message,b);break;case"jwt":b$(c,bV,d.message,b);break;case"cidr":"v6"!==d.version&&b$(c,bQ,d.message,b),"v4"!==d.version&&b$(c,bR,d.message,b);break;case"emoji":b$(c,bP(),d.message,b);break;case"ulid":b$(c,bN,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":bZ(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":b$(c,bS,d.message,b)}break;case"nanoid":b$(c,bU,d.message,b)}return c}function bX(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)bY.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}var bY=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function bZ(a,b,c,d){var e;a.format||(null==(e=a.anyOf)?void 0:e.some(a=>a.format))?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function b$(a,b,c,d){var e;a.pattern||(null==(e=a.allOf)?void 0:e.some(a=>a.pattern))?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:b_(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=b_(b,d)}function b_(a,b){var c;if(!b.applyRegexFlags||!a.flags)return a.source;let d={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},e=d.i?a.source.toLowerCase():a.source,f="",g=!1,h=!1,i=!1;for(let a=0;a<e.length;a++){if(g){f+=e[a],g=!1;continue}if(d.i){if(h){if(e[a].match(/[a-z]/)){i?(f+=e[a],f+=`${e[a-2]}-${e[a]}`.toUpperCase(),i=!1):"-"===e[a+1]&&(null==(c=e[a+2])?void 0:c.match(/[a-z]/))?(f+=e[a],i=!0):f+=`${e[a]}${e[a].toUpperCase()}`;continue}}else if(e[a].match(/[a-z]/)){f+=`[${e[a]}${e[a].toUpperCase()}]`;continue}}if(d.m){if("^"===e[a]){f+=`(^|(?<=[\r
13
13
  ]))`;continue}else if("$"===e[a]){f+=`($|(?=[\r
14
14
  ]))`;continue}}if(d.s&&"."===e[a]){f+=h?`${e[a]}\r
15
15
  `:`[${e[a]}\r
16
- ]`;continue}f+=e[a],"\\"===e[a]?g=!0:h&&"]"===e[a]?h=!1:h||"["!==e[a]||(h=!0)}try{new RegExp(f)}catch(c){return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return f}function cJ(a,b){var c,d,e,f,g,h;let i={type:"object",additionalProperties:null!=(c=cL(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]}))?c:b.allowedAdditionalProperties};if((null==(d=a.keyType)?void 0:d._def.typeName)==="ZodString"&&(null==(e=a.keyType._def.checks)?void 0:e.length)){let{type:c,...d}=cD(a.keyType._def,b);return{...i,propertyNames:d}}if((null==(f=a.keyType)?void 0:f._def.typeName)==="ZodEnum")return{...i,propertyNames:{enum:a.keyType._def.values}};if((null==(g=a.keyType)?void 0:g._def.typeName)==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&(null==(h=a.keyType._def.type._def.checks)?void 0:h.length)){let{type:c,...d}=cq(a.keyType._def,b);return{...i,propertyNames:d}}return i}var cK={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function cL(a,b,c=!1){var d;let e=b.seen.get(a);if(b.override){let f=null==(d=b.override)?void 0:d.call(b,a,b,e,c);if(f!==co)return f}if(e&&!c){let a=cM(e,b);if(void 0!==a)return a}let f={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,f);let g=((a,b,c)=>{var d,e,f,g,h,i;switch(b){case"ZodString":return cD(a,c);case"ZodNumber":let j={type:"number"};if(!a.checks)return j;for(let b of a.checks)switch(b.kind){case"int":j.type="integer";break;case"min":b.inclusive?j.minimum=b.value:j.exclusiveMinimum=b.value;break;case"max":b.inclusive?j.maximum=b.value:j.exclusiveMaximum=b.value;break;case"multipleOf":j.multipleOf=b.value}return j;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch(a){return!0}}(f),h=cL(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return cL(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let k={type:"integer",format:"int64"};if(!a.checks)return k;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?k.minimum=b.value:k.exclusiveMinimum=b.value;break;case"max":b.inclusive?k.maximum=b.value:k.exclusiveMaximum=b.value;break;case"multipleOf":k.multipleOf=b.value}return k;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=null!=d?d:c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let l;return l={type:"array"},(null==(f=a.type)?void 0:f._def)&&(null==(h=null==(g=a.type)?void 0:g._def)?void 0:h.typeName)!=="ZodAny"&&(l.items=cL(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(l.minItems=a.minLength.value),a.maxLength&&(l.maxItems=a.maxLength.value),a.exactLength&&(l.minItems=a.exactLength.value,l.maxItems=a.exactLength.value),l;case"ZodUnion":case"ZodDiscriminatedUnion":let m,n=a.options instanceof Map?Array.from(a.options.values()):a.options;if(n.every(a=>a._def.typeName in cK&&(!a._def.checks||!a._def.checks.length))){let a=n.reduce((a,b)=>{let c=cK[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(n.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=n.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===n.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:n.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(n.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:n.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return d=a,e=c,(m=(d.options instanceof Map?Array.from(d.options.values()):d.options).map((a,b)=>cL(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!e.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:m}:void 0;case"ZodIntersection":let o,p;return o=[cL(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),cL(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),p=[],o.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)p.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}p.push(b)}}),p.length?{allOf:p}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>cL(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:cL(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>cL(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return cJ(a,c);case"ZodLiteral":let q;return"bigint"!=(q=typeof a.value)&&"number"!==q&&"boolean"!==q&&"string"!==q?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===q?"integer":q,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let r,s,t;return r=a.values,{type:1===(t=Array.from(new Set((s=Object.keys(a.values).filter(a=>"number"!=typeof r[r[a]]).map(a=>r[a])).map(a=>typeof a)))).length?"string"===t[0]?"string":"number":["string","number"],enum:s};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[cK[a.innerType._def.typeName],"null"]};let u=cL(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return u&&{anyOf:[u,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===(null==(i=c.propertyPath)?void 0:i.toString()))return cL(a.innerType._def,c);let v=cL(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return v?{anyOf:[{not:{}},v]}:{};case"ZodMap":if("record"===c.mapStrategy)return cJ(a,c);return{type:"array",maxItems:125,items:{type:"array",items:[cL(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},cL(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let w;return w={type:"array",uniqueItems:!0,items:cL(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(w.minItems=a.minSize.value),a.maxSize&&(w.maxItems=a.maxSize.value),w;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return cL(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?cL(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...cL(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return cq(a,c);case"ZodReadonly":case"ZodCatch":return cL(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return cL(a.in._def,c);if("output"===c.pipeStrategy)return cL(a.out._def,c);let x=cL(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),y=cL(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",x?"1":"0"]});return{allOf:[x,y].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),h="function"==typeof g?cL(g(),b):g;if(h&&cN(a,b,h),b.postProcess){let c=b.postProcess(h,a,b);return f.jsonSchema=h,c}return f.jsonSchema=h,h}var cM=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},cN=(a,b,c)=>(a.description&&(c.description=a.description),c),cO=Symbol.for("vercel.ai.schema");function cP(a){let b;return()=>(null==b&&(b=a()),b)}function cQ(a,{validate:b}={}){return{[cO]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function cR(a){var b;return null==a?cQ({type:"object",properties:{},additionalProperties:!1}):"object"==typeof a&&null!==a&&cO in a&&!0===a[cO]&&"jsonSchema"in a&&"validate"in a?a:"~standard"in a?"zod"===a["~standard"].vendor?cS(a):(b=a,cQ(()=>{if(null==b["~standard"].jsonSchema)throw Error(`Standard schema vendor '${b["~standard"].vendor}' does not support JSON Schema conversion.`);return cm(b["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let c=await b["~standard"].validate(a);return"value"in c?{success:!0,value:c.value}:{success:!1,error:new bL({value:a,cause:c.issues})}}})):a()}function cS(a,b){var c,d;let e;if("_zod"in a){let d;return d=null!=(c=null==b?void 0:b.useReferences)&&c,cQ(()=>cm((0,bR.toJSONSchema)(a,{target:"draft-7",io:"input",reused:d?"ref":"inline"})),{validate:async b=>{let c=await (0,bQ.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return e=null!=(d=null==b?void 0:b.useReferences)&&d,cQ(()=>((a,b)=>{var c;let d,e,f=(e=void 0!==(d="string"==typeof b?{...cp,name:b}:{...cp,...b}).name?[...d.basePath,d.definitionPath,d.name]:d.basePath,{...d,currentPath:e,propertyPath:void 0,seen:new Map(Object.entries(d.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...d.basePath,d.definitionPath,a],jsonSchema:void 0}]))}),g="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>{var d;return{...a,[b]:null!=(d=cL(c._def,{...f,currentPath:[...f.basePath,f.definitionPath,b]},!0))?d:{}}},{}):void 0,h="string"==typeof b?b:(null==b?void 0:b.nameStrategy)==="title"||null==b?void 0:b.name,i=null!=(c=cL(a._def,void 0===h?f:{...f,currentPath:[...f.basePath,f.definitionPath,h]},!1))?c:{},j="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==j&&(i.title=j);let k=void 0===h?g?{...i,[f.definitionPath]:g}:i:{$ref:[..."relative"===f.$refStrategy?[]:f.basePath,f.definitionPath,h].join("/"),[f.definitionPath]:{...g,[h]:i}};return k.$schema="http://json-schema.org/draft-07/schema#",k})(a,{$refStrategy:e?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function cT({value:a,schema:b,context:c}){let d=await cU({value:a,schema:b,context:c});if(!d.success)throw bL.wrap({value:a,cause:d.error,context:c});return d.value}async function cU({value:a,schema:b,context:c}){let d=cR(b);try{if(null==d.validate)return{success:!0,value:a,rawValue:a};let b=await d.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:bL.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:bL.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function cV({text:a,schema:b}){try{let c=function(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch(b){return cl(a)}try{return cl(a)}finally{Error.stackTraceLimit=b}}(a);if(null==b)return{success:!0,value:c,rawValue:c};return await cU({value:c,schema:b})}catch(b){return{success:!1,error:bB.isInstance(b)?b:new bB({text:a,cause:b}),rawValue:void 0}}}async function cW(a){return"function"==typeof a&&(a=a()),Promise.resolve(a)}new TextDecoder;Symbol.for("vercel.ai.error.AI_SerializationError");var cX="vercel.ai.error",cY=Symbol.for(cX),cZ=class a extends(v=Error,u=cY,v){constructor({name:a,message:b,cause:c}){super(b),this[u]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,cX)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}},c$="AI_APICallError",c_=`vercel.ai.error.${c$}`,c0=Symbol.for(c_),c1=class extends(x=cZ,w=c0,x){constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:f,cause:g,isRetryable:h=null!=d&&(408===d||409===d||429===d||d>=500),data:i}){super({name:c$,message:a,cause:g}),this[w]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=f,this.isRetryable=h,this.data=i}static isInstance(a){return cZ.hasMarker(a,c_)}},c2="AI_EmptyResponseBodyError",c3=`vercel.ai.error.${c2}`,c4=Symbol.for(c3),c5=class extends(z=cZ,y=c4,z){constructor({message:a="Empty response body"}={}){super({name:c2,message:a}),this[y]=!0}static isInstance(a){return cZ.hasMarker(a,c3)}},c6=Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");function c7(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}var c8="AI_InvalidArgumentError",c9=`vercel.ai.error.${c8}`,da=Symbol.for(c9),db=class extends(B=cZ,A=da,B){constructor({message:a,cause:b,argument:c}){super({name:c8,message:a,cause:b}),this[A]=!0,this.argument=c}static isInstance(a){return cZ.hasMarker(a,c9)}},dc=Symbol.for("vercel.ai.error.AI_InvalidPromptError");Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");var dd="AI_JSONParseError",de=`vercel.ai.error.${dd}`,df=Symbol.for(de),dg=class extends(D=cZ,C=df,D){constructor({text:a,cause:b}){super({name:dd,message:`JSON parsing failed: Text: ${a}.
17
- Error message: ${c7(b)}`,cause:b}),this[C]=!0,this.text=a}static isInstance(a){return cZ.hasMarker(a,de)}},dh=Symbol.for("vercel.ai.error.AI_LoadAPIKeyError");Symbol.for("vercel.ai.error.AI_LoadSettingError");Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchModelError");Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError");Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");var di="AI_TypeValidationError",dj=`vercel.ai.error.${di}`,dk=Symbol.for(dj),dl=class a extends(F=cZ,E=dk,F){constructor({value:a,cause:b,context:c}){let d="Type validation failed";if((null==c?void 0:c.field)&&(d+=` for ${c.field}`),(null==c?void 0:c.entityName)||(null==c?void 0:c.entityId)){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:di,message:`${d}: Value: ${JSON.stringify(a)}.
18
- Error message: ${c7(b)}`,cause:b}),this[E]=!0,this.value=a,this.context=c}static isInstance(a){return cZ.hasMarker(a,dj)}static wrap({value:b,cause:c,context:d}){var e,f,g;return a.isInstance(c)&&c.value===b&&(null==(e=c.context)?void 0:e.field)===(null==d?void 0:d.field)&&(null==(f=c.context)?void 0:f.entityName)===(null==d?void 0:d.entityName)&&(null==(g=c.context)?void 0:g.entityId)===(null==d?void 0:d.entityId)?c:new a({value:b,cause:c,context:d})}},dm="AI_UnsupportedFunctionalityError",dn=`vercel.ai.error.${dm}`,dp=Symbol.for(dn),dq=class extends(H=cZ,G=dp,H){constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:dm,message:b}),this[G]=!0,this.functionality=a}static isInstance(a){return cZ.hasMarker(a,dn)}};function dr(...a){return a.reduce((a,b)=>({...a,...null!=b?b:{}}),{})}async function ds(a,b){if(null==a)return Promise.resolve();let c=null==b?void 0:b.abortSignal;return new Promise((b,d)=>{if(null==c?void 0:c.aborted)return void d(dt());let e=setTimeout(()=>{f(),b()},a),f=()=>{clearTimeout(e),null==c||c.removeEventListener("abort",g)},g=()=>{f(),d(dt())};null==c||c.addEventListener("abort",g)})}function dt(){return new DOMException("Delay was aborted","AbortError")}var du=new TextDecoder;async function dv(a){return"string"==typeof a?a:a instanceof ArrayBuffer||ArrayBuffer.isView(a)?du.decode(a):"u">typeof Blob&&a instanceof Blob?a.text():String(a)}async function dw(a,{highWaterMark:b=1048576,pollIntervalMs:c=20,abortSignal:d}={}){for(var e;1===a.readyState&&(null!=(e=a.bufferedAmount)?e:0)>b;){if((null==d?void 0:d.aborted)===!0)return;await ds(c)}}var{btoa:dx,atob:dy}=globalThis;function dz(a){let b=[];for(let c=0;c<a.length;c+=4096)b.push(String.fromCodePoint(...a.subarray(c,c+4096)));return dx(b.join(""))}function dA(a){return Object.fromEntries([...a.headers])}function dB(a=globalThis){var b,c,d;return a.window?"runtime/browser":(null==(b=a.navigator)?void 0:b.userAgent)?`runtime/${a.navigator.userAgent.toLowerCase()}`:(null==(d=null==(c=a.process)?void 0:c.versions)?void 0:d.node)?`runtime/node.js/${a.process.version.substring(0)}`:a.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function dC(a){return(a instanceof Error||"function"==typeof DOMException&&a instanceof DOMException)&&("AbortError"===a.name||"ResponseAborted"===a.name||"TimeoutError"===a.name)}var dD=["fetch failed","failed to fetch"],dE=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function dF({error:a,url:b,requestBodyValues:c}){if(dC(a))return a;if(a instanceof TypeError&&dD.includes(a.message.toLowerCase())){let d=a.cause;if(null!=d)return new c1({message:`Cannot connect to API: ${d.message}`,cause:d,url:b,requestBodyValues:c,isRetryable:!0})}let d=function(a){let b=new Set,c=a;for(;c instanceof Error&&!b.has(c);){b.add(c);let a=c;if("string"==typeof a.code&&dE.has(a.code))return a;c=c.cause}}(a);return null!=d?new c1(c1.isInstance(a)?{message:a.message,cause:a.cause,url:a.url,requestBodyValues:a.requestBodyValues,statusCode:a.statusCode,responseHeaders:a.responseHeaders,responseBody:a.responseBody,data:a.data,isRetryable:!0}:{message:`Cannot connect to API: ${a instanceof Error?a.message:d.message}`,cause:a,url:b,requestBodyValues:c,isRetryable:!0}):a}var dG="5.0.44";function dH(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}function dI(a,...b){let c=new Headers(dH(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}async function dJ(a){var b;try{await (null==(b=a.body)?void 0:b.cancel())}catch(a){}}var dK="AI_DownloadError",dL=`vercel.ai.error.${dK}`,dM=Symbol.for(dL),dN=class extends(J=cZ,I=dM,J){constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:dK,message:e,cause:d}),this[I]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return cZ.hasMarker(a,dL)}};function dO(a,b){try{return new URL(a).origin===new URL(b).origin}catch(a){return!1}}function dP(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function dQ(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function dR(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!dP(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);if(c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0)return!0;if(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2]){let a=b[6]>>8&255,c=255&b[6],d=b[7]>>8&255,e=255&b[7];return dQ(`${a}.${c}.${d}.${e}`)}return!1}async function dS(){var a,b,c;let d;return(null==(a=null==(d=globalThis.process)?void 0:d.release)?void 0:a.name)!=="node"||(null==(b=d.versions)?void 0:b.bun)!=null||(null==(c=d.versions)?void 0:c.deno)!=null||"workerd"===d.title||null!=globalThis.EdgeRuntime?globalThis.fetch:null!=K?K:K=Promise.resolve().then(dT)}function dT(){let a=dU("node:module"),{lookup:b}=dU("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=null==c?void 0:c.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!dP(a)||dQ(a):6!==b||dR(a))throw new dN({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function dU(a){var b;let c=globalThis.process,d=null==(b=null==c?void 0:c.getBuiltinModule)?void 0:b.call(c,a);if(null==d)throw Error(`Node.js built-in module ${a} is unavailable`);return d}var dV=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"],dW=new Set([301,302,303,307,308]);async function dX(a){return null==a||a===globalThis.fetch?await dS():a}async function dY({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){var g;let h=void 0===b?void 0:function(a){let b=new Headers(a);for(let a of dV)b.delete(a);return b}(b),i=a=>{let b={signal:c,redirect:a};return void 0!==h&&(b.headers=new Headers(h)),b},j=a;for(let b=0;b<=d;b++){let b=void 0!==f&&dO(j,f);b||function(a){let b;try{b=new URL(a)}catch(b){throw new dN({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new dN({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new dN({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new dN({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(dR(c.slice(1,-1)))throw new dN({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(dP(c)&&dQ(c))throw new dN({url:a,message:`URL with IP address ${c} is not allowed`})}(j);let c=b&&null!=e?e:b?globalThis.fetch:await dX(e),d=await c(j,i("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new dN({url:a,message:`Redirect from ${j} could not be validated and was blocked`});return await c(j,i("follow"))}let k=null==(g=d.headers)?void 0:g.get("location");if(dW.has(d.status)&&k){await dJ(d);let a=new URL(k,j).toString();if(void 0!==h&&!dO(a,j)){let a=h.get("user-agent");h=new Headers(null==a?void 0:{"user-agent":a})}j=a;continue}return d}throw new dN({url:a,message:`Too many redirects (max ${d})`})}async function dZ({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await dJ(a),new dN({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new dN({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch(a){}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}(({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{if(null!=a){if(c.includes(d))throw new db({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${(()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")})()}`}})();var d$=async({url:a,headers:b={},successfulResponseHandler:c,failedResponseHandler:d,abortSignal:e,fetch:f,validateUrl:g,credentialedOrigin:h,trustedOrigin:i})=>{try{let j=null!=f?f:globalThis.fetch,k=void 0===h||dO(a,h)?b:{},l=dI(k,`ai-sdk/provider-utils/${dG}`,dB()),m=g?await dY({url:a,headers:l,abortSignal:e,fetch:f,trustedOrigin:i}):await j(a,{method:"GET",headers:l,signal:e}),n=dA(m);if(!m.ok){let b;try{b=await d({response:m,url:a,requestBodyValues:{}})}catch(b){if(dC(b)||c1.isInstance(b))throw b;throw new c1({message:"Failed to process error response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}throw b.value}try{return await c({response:m,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(dC(b)||c1.isInstance(b)))throw b;throw new c1({message:"Failed to process successful response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}}catch(b){throw dF({error:b,url:a,requestBodyValues:{}})}};function d_(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}function d0({settingValue:a,environmentVariableName:b}){return"string"==typeof a?a:null!=a||"u"<typeof process?void 0:null!=(a=process.env[b])&&"string"==typeof a?a:void 0}function d1(a){return null!=a&&Number.isSafeInteger(a)&&a>=0}var d2=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,d3=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function d4(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===d2.test(a)&&!1===d3.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function d5(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch(b){return d4(a)}try{return d4(a)}finally{Error.stackTraceLimit=b}}function d6(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&d7(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=d7(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(d7):d7(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(d7)),null!=a.allOf&&(a.allOf=a.allOf.map(d7)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(d7));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=d7(b[a]);return a}function d7(a){return"boolean"==typeof a?a:d6(a)}var d8=Symbol("Let zodToJsonSchema decide on which parser to use"),d9={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function ea(a,b){return ev(a.type._def,b)}var eb=void 0,ec=/^[cC][^\s-]{8,}$/,ed=/^[0-9a-z]+$/,ee=/^[0-9A-HJKMNP-TV-Z]{26}$/,ef=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,eg=()=>(void 0===eb&&(eb=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eb),eh=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ei=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ej=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ek=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,el=/^[a-zA-Z0-9_-]{21}$/,em=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function en(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":eq(c,"email",d.message,b);break;case"format:idn-email":eq(c,"idn-email",d.message,b);break;case"pattern:zod":er(c,ef,d.message,b)}break;case"url":eq(c,"uri",d.message,b);break;case"uuid":eq(c,"uuid",d.message,b);break;case"regex":er(c,d.regex,d.message,b);break;case"cuid":er(c,ec,d.message,b);break;case"cuid2":er(c,ed,d.message,b);break;case"startsWith":er(c,RegExp(`^${eo(d.value,b)}`),d.message,b);break;case"endsWith":er(c,RegExp(`${eo(d.value,b)}$`),d.message,b);break;case"datetime":eq(c,"date-time",d.message,b);break;case"date":eq(c,"date",d.message,b);break;case"time":eq(c,"time",d.message,b);break;case"duration":eq(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":er(c,RegExp(eo(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&eq(c,"ipv4",d.message,b),"v4"!==d.version&&eq(c,"ipv6",d.message,b);break;case"base64url":er(c,ek,d.message,b);break;case"jwt":er(c,em,d.message,b);break;case"cidr":"v6"!==d.version&&er(c,eh,d.message,b),"v4"!==d.version&&er(c,ei,d.message,b);break;case"emoji":er(c,eg(),d.message,b);break;case"ulid":er(c,ee,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":eq(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":er(c,ej,d.message,b)}break;case"nanoid":er(c,el,d.message,b)}return c}function eo(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)ep.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}var ep=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function eq(a,b,c,d){var e;a.format||(null==(e=a.anyOf)?void 0:e.some(a=>a.format))?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function er(a,b,c,d){var e;a.pattern||(null==(e=a.allOf)?void 0:e.some(a=>a.pattern))?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:es(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=es(b,d)}function es(a,b){var c;if(!b.applyRegexFlags||!a.flags)return a.source;let d={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},e=d.i?a.source.toLowerCase():a.source,f="",g=!1,h=!1,i=!1;for(let a=0;a<e.length;a++){if(g){f+=e[a],g=!1;continue}if(d.i){if(h){if(e[a].match(/[a-z]/)){i?(f+=e[a],f+=`${e[a-2]}-${e[a]}`.toUpperCase(),i=!1):"-"===e[a+1]&&(null==(c=e[a+2])?void 0:c.match(/[a-z]/))?(f+=e[a],i=!0):f+=`${e[a]}${e[a].toUpperCase()}`;continue}}else if(e[a].match(/[a-z]/)){f+=`[${e[a]}${e[a].toUpperCase()}]`;continue}}if(d.m){if("^"===e[a]){f+=`(^|(?<=[\r
16
+ ]`;continue}f+=e[a],"\\"===e[a]?g=!0:h&&"]"===e[a]?h=!1:h||"["!==e[a]||(h=!0)}try{new RegExp(f)}catch(c){return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return f}function b0(a,b){var c,d,e,f,g,h;let i={type:"object",additionalProperties:null!=(c=b2(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]}))?c:b.allowedAdditionalProperties};if((null==(d=a.keyType)?void 0:d._def.typeName)==="ZodString"&&(null==(e=a.keyType._def.checks)?void 0:e.length)){let{type:c,...d}=bW(a.keyType._def,b);return{...i,propertyNames:d}}if((null==(f=a.keyType)?void 0:f._def.typeName)==="ZodEnum")return{...i,propertyNames:{enum:a.keyType._def.values}};if((null==(g=a.keyType)?void 0:g._def.typeName)==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&(null==(h=a.keyType._def.type._def.checks)?void 0:h.length)){let{type:c,...d}=bJ(a.keyType._def,b);return{...i,propertyNames:d}}return i}var b1={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function b2(a,b,c=!1){var d;let e=b.seen.get(a);if(b.override){let f=null==(d=b.override)?void 0:d.call(b,a,b,e,c);if(f!==bH)return f}if(e&&!c){let a=b3(e,b);if(void 0!==a)return a}let f={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,f);let g=((a,b,c)=>{var d,e,f,g,h,i;switch(b){case"ZodString":return bW(a,c);case"ZodNumber":let j={type:"number"};if(!a.checks)return j;for(let b of a.checks)switch(b.kind){case"int":j.type="integer";break;case"min":b.inclusive?j.minimum=b.value:j.exclusiveMinimum=b.value;break;case"max":b.inclusive?j.maximum=b.value:j.exclusiveMaximum=b.value;break;case"multipleOf":j.multipleOf=b.value}return j;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch(a){return!0}}(f),h=b2(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return b2(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let k={type:"integer",format:"int64"};if(!a.checks)return k;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?k.minimum=b.value:k.exclusiveMinimum=b.value;break;case"max":b.inclusive?k.maximum=b.value:k.exclusiveMaximum=b.value;break;case"multipleOf":k.multipleOf=b.value}return k;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=null!=d?d:c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let l;return l={type:"array"},(null==(f=a.type)?void 0:f._def)&&(null==(h=null==(g=a.type)?void 0:g._def)?void 0:h.typeName)!=="ZodAny"&&(l.items=b2(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(l.minItems=a.minLength.value),a.maxLength&&(l.maxItems=a.maxLength.value),a.exactLength&&(l.minItems=a.exactLength.value,l.maxItems=a.exactLength.value),l;case"ZodUnion":case"ZodDiscriminatedUnion":let m,n=a.options instanceof Map?Array.from(a.options.values()):a.options;if(n.every(a=>a._def.typeName in b1&&(!a._def.checks||!a._def.checks.length))){let a=n.reduce((a,b)=>{let c=b1[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(n.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=n.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===n.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:n.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(n.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:n.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return d=a,e=c,(m=(d.options instanceof Map?Array.from(d.options.values()):d.options).map((a,b)=>b2(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!e.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:m}:void 0;case"ZodIntersection":let o,p;return o=[b2(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),b2(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),p=[],o.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)p.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}p.push(b)}}),p.length?{allOf:p}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>b2(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:b2(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>b2(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return b0(a,c);case"ZodLiteral":let q;return"bigint"!=(q=typeof a.value)&&"number"!==q&&"boolean"!==q&&"string"!==q?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===q?"integer":q,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let r,s,t;return r=a.values,{type:1===(t=Array.from(new Set((s=Object.keys(a.values).filter(a=>"number"!=typeof r[r[a]]).map(a=>r[a])).map(a=>typeof a)))).length?"string"===t[0]?"string":"number":["string","number"],enum:s};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[b1[a.innerType._def.typeName],"null"]};let u=b2(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return u&&{anyOf:[u,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===(null==(i=c.propertyPath)?void 0:i.toString()))return b2(a.innerType._def,c);let v=b2(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return v?{anyOf:[{not:{}},v]}:{};case"ZodMap":if("record"===c.mapStrategy)return b0(a,c);return{type:"array",maxItems:125,items:{type:"array",items:[b2(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},b2(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let w;return w={type:"array",uniqueItems:!0,items:b2(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(w.minItems=a.minSize.value),a.maxSize&&(w.maxItems=a.maxSize.value),w;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return b2(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?b2(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...b2(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return bJ(a,c);case"ZodReadonly":case"ZodCatch":return b2(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return b2(a.in._def,c);if("output"===c.pipeStrategy)return b2(a.out._def,c);let x=b2(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),y=b2(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",x?"1":"0"]});return{allOf:[x,y].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),h="function"==typeof g?b2(g(),b):g;if(h&&b4(a,b,h),b.postProcess){let c=b.postProcess(h,a,b);return f.jsonSchema=h,c}return f.jsonSchema=h,h}var b3=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},b4=(a,b,c)=>(a.description&&(c.description=a.description),c),b5=Symbol.for("vercel.ai.schema");function b6(a){let b;return()=>(null==b&&(b=a()),b)}function b7(a,{validate:b}={}){return{[b5]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function b8(a){var b;return null==a?b7({type:"object",properties:{},additionalProperties:!1}):"object"==typeof a&&null!==a&&b5 in a&&!0===a[b5]&&"jsonSchema"in a&&"validate"in a?a:"~standard"in a?"zod"===a["~standard"].vendor?b9(a):(b=a,b7(()=>{if(null==b["~standard"].jsonSchema)throw Error(`Standard schema vendor '${b["~standard"].vendor}' does not support JSON Schema conversion.`);return bF(b["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let c=await b["~standard"].validate(a);return"value"in c?{success:!0,value:c.value}:{success:!1,error:new a2({value:a,cause:c.issues})}}})):a()}function b9(a,b){var c,d;let e;if("_zod"in a){let d;return d=null!=(c=null==b?void 0:b.useReferences)&&c,b7(()=>bF((0,a8.toJSONSchema)(a,{target:"draft-7",io:"input",reused:d?"ref":"inline"})),{validate:async b=>{let c=await (0,a7.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return e=null!=(d=null==b?void 0:b.useReferences)&&d,b7(()=>((a,b)=>{var c;let d,e,f=(e=void 0!==(d="string"==typeof b?{...bI,name:b}:{...bI,...b}).name?[...d.basePath,d.definitionPath,d.name]:d.basePath,{...d,currentPath:e,propertyPath:void 0,seen:new Map(Object.entries(d.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...d.basePath,d.definitionPath,a],jsonSchema:void 0}]))}),g="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>{var d;return{...a,[b]:null!=(d=b2(c._def,{...f,currentPath:[...f.basePath,f.definitionPath,b]},!0))?d:{}}},{}):void 0,h="string"==typeof b?b:(null==b?void 0:b.nameStrategy)==="title"||null==b?void 0:b.name,i=null!=(c=b2(a._def,void 0===h?f:{...f,currentPath:[...f.basePath,f.definitionPath,h]},!1))?c:{},j="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==j&&(i.title=j);let k=void 0===h?g?{...i,[f.definitionPath]:g}:i:{$ref:[..."relative"===f.$refStrategy?[]:f.basePath,f.definitionPath,h].join("/"),[f.definitionPath]:{...g,[h]:i}};return k.$schema="http://json-schema.org/draft-07/schema#",k})(a,{$refStrategy:e?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function ca({value:a,schema:b,context:c}){let d=await cb({value:a,schema:b,context:c});if(!d.success)throw a2.wrap({value:a,cause:d.error,context:c});return d.value}async function cb({value:a,schema:b,context:c}){let d=b8(b);try{if(null==d.validate)return{success:!0,value:a,rawValue:a};let b=await d.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:a2.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:a2.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function cc({text:a,schema:b}){try{let c=function(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch(b){return bE(a)}try{return bE(a)}finally{Error.stackTraceLimit=b}}(a);if(null==b)return{success:!0,value:c,rawValue:c};return await cb({value:c,schema:b})}catch(b){return{success:!1,error:aU.isInstance(b)?b:new aU({text:a,cause:b}),rawValue:void 0}}}async function cd(a){return"function"==typeof a&&(a=a()),Promise.resolve(a)}new TextDecoder;Symbol.for("vercel.ai.error.AI_SerializationError");var ce="vercel.ai.error",cf=Symbol.for(ce),cg=class a extends(x=Error,w=cf,x){constructor({name:a,message:b,cause:c}){super(b),this[w]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,ce)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}},ch="AI_APICallError",ci=`vercel.ai.error.${ch}`,cj=Symbol.for(ci),ck=class extends(z=cg,y=cj,z){constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:f,cause:g,isRetryable:h=null!=d&&(408===d||409===d||429===d||d>=500),data:i}){super({name:ch,message:a,cause:g}),this[y]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=f,this.isRetryable=h,this.data=i}static isInstance(a){return cg.hasMarker(a,ci)}},cl="AI_EmptyResponseBodyError",cm=`vercel.ai.error.${cl}`,cn=Symbol.for(cm),co=class extends(B=cg,A=cn,B){constructor({message:a="Empty response body"}={}){super({name:cl,message:a}),this[A]=!0}static isInstance(a){return cg.hasMarker(a,cm)}},cp=Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");function cq(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}var cr="AI_InvalidArgumentError",cs=`vercel.ai.error.${cr}`,ct=Symbol.for(cs),cu=class extends(D=cg,C=ct,D){constructor({message:a,cause:b,argument:c}){super({name:cr,message:a,cause:b}),this[C]=!0,this.argument=c}static isInstance(a){return cg.hasMarker(a,cs)}},cv=Symbol.for("vercel.ai.error.AI_InvalidPromptError");Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");var cw="AI_JSONParseError",cx=`vercel.ai.error.${cw}`,cy=Symbol.for(cx),cz=class extends(F=cg,E=cy,F){constructor({text:a,cause:b}){super({name:cw,message:`JSON parsing failed: Text: ${a}.
17
+ Error message: ${cq(b)}`,cause:b}),this[E]=!0,this.text=a}static isInstance(a){return cg.hasMarker(a,cx)}},cA=Symbol.for("vercel.ai.error.AI_LoadAPIKeyError");Symbol.for("vercel.ai.error.AI_LoadSettingError");Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchModelError");Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError");Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");var cB="AI_TypeValidationError",cC=`vercel.ai.error.${cB}`,cD=Symbol.for(cC),cE=class a extends(H=cg,G=cD,H){constructor({value:a,cause:b,context:c}){let d="Type validation failed";if((null==c?void 0:c.field)&&(d+=` for ${c.field}`),(null==c?void 0:c.entityName)||(null==c?void 0:c.entityId)){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:cB,message:`${d}: Value: ${JSON.stringify(a)}.
18
+ Error message: ${cq(b)}`,cause:b}),this[G]=!0,this.value=a,this.context=c}static isInstance(a){return cg.hasMarker(a,cC)}static wrap({value:b,cause:c,context:d}){var e,f,g;return a.isInstance(c)&&c.value===b&&(null==(e=c.context)?void 0:e.field)===(null==d?void 0:d.field)&&(null==(f=c.context)?void 0:f.entityName)===(null==d?void 0:d.entityName)&&(null==(g=c.context)?void 0:g.entityId)===(null==d?void 0:d.entityId)?c:new a({value:b,cause:c,context:d})}},cF="AI_UnsupportedFunctionalityError",cG=`vercel.ai.error.${cF}`,cH=Symbol.for(cG),cI=class extends(J=cg,I=cH,J){constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:cF,message:b}),this[I]=!0,this.functionality=a}static isInstance(a){return cg.hasMarker(a,cG)}};function cJ(...a){return a.reduce((a,b)=>({...a,...null!=b?b:{}}),{})}async function cK(a,b){if(null==a)return Promise.resolve();let c=null==b?void 0:b.abortSignal;return new Promise((b,d)=>{if(null==c?void 0:c.aborted)return void d(cL());let e=setTimeout(()=>{f(),b()},a),f=()=>{clearTimeout(e),null==c||c.removeEventListener("abort",g)},g=()=>{f(),d(cL())};null==c||c.addEventListener("abort",g)})}function cL(){return new DOMException("Delay was aborted","AbortError")}var cM=new TextDecoder;async function cN(a){return"string"==typeof a?a:a instanceof ArrayBuffer||ArrayBuffer.isView(a)?cM.decode(a):"u">typeof Blob&&a instanceof Blob?a.text():String(a)}async function cO(a,{highWaterMark:b=1048576,pollIntervalMs:c=20,abortSignal:d}={}){for(var e;1===a.readyState&&(null!=(e=a.bufferedAmount)?e:0)>b;){if((null==d?void 0:d.aborted)===!0)return;await cK(c)}}var{btoa:cP,atob:cQ}=globalThis;function cR(a){let b=[];for(let c=0;c<a.length;c+=4096)b.push(String.fromCodePoint(...a.subarray(c,c+4096)));return cP(b.join(""))}function cS(a){return Object.fromEntries([...a.headers])}function cT(a=globalThis){var b,c,d;return a.window?"runtime/browser":(null==(b=a.navigator)?void 0:b.userAgent)?`runtime/${a.navigator.userAgent.toLowerCase()}`:(null==(d=null==(c=a.process)?void 0:c.versions)?void 0:d.node)?`runtime/node.js/${a.process.version.substring(0)}`:a.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function cU(a){return(a instanceof Error||"function"==typeof DOMException&&a instanceof DOMException)&&("AbortError"===a.name||"ResponseAborted"===a.name||"TimeoutError"===a.name)}var cV=["fetch failed","failed to fetch"],cW=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function cX({error:a,url:b,requestBodyValues:c}){if(cU(a))return a;if(a instanceof TypeError&&cV.includes(a.message.toLowerCase())){let d=a.cause;if(null!=d)return new ck({message:`Cannot connect to API: ${d.message}`,cause:d,url:b,requestBodyValues:c,isRetryable:!0})}let d=function(a){let b=new Set,c=a;for(;c instanceof Error&&!b.has(c);){b.add(c);let a=c;if("string"==typeof a.code&&cW.has(a.code))return a;c=c.cause}}(a);return null!=d?new ck(ck.isInstance(a)?{message:a.message,cause:a.cause,url:a.url,requestBodyValues:a.requestBodyValues,statusCode:a.statusCode,responseHeaders:a.responseHeaders,responseBody:a.responseBody,data:a.data,isRetryable:!0}:{message:`Cannot connect to API: ${a instanceof Error?a.message:d.message}`,cause:a,url:b,requestBodyValues:c,isRetryable:!0}):a}var cY="5.0.44";function cZ(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}function c$(a,...b){let c=new Headers(cZ(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}async function c_(a){var b;try{await (null==(b=a.body)?void 0:b.cancel())}catch(a){}}var c0="AI_DownloadError",c1=`vercel.ai.error.${c0}`,c2=Symbol.for(c1),c3=class extends(L=cg,K=c2,L){constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:c0,message:e,cause:d}),this[K]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return cg.hasMarker(a,c1)}};function c4(a,b){try{return new URL(a).origin===new URL(b).origin}catch(a){return!1}}function c5(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function c6(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function c7(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!c5(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);if(c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0)return!0;if(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2]){let a=b[6]>>8&255,c=255&b[6],d=b[7]>>8&255,e=255&b[7];return c6(`${a}.${c}.${d}.${e}`)}return!1}async function c8(){var a,b,c;let d;return(null==(a=null==(d=globalThis.process)?void 0:d.release)?void 0:a.name)!=="node"||(null==(b=d.versions)?void 0:b.bun)!=null||(null==(c=d.versions)?void 0:c.deno)!=null||"workerd"===d.title||null!=globalThis.EdgeRuntime?globalThis.fetch:null!=M?M:M=Promise.resolve().then(c9)}function c9(){let a=da("node:module"),{lookup:b}=da("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=null==c?void 0:c.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!c5(a)||c6(a):6!==b||c7(a))throw new c3({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function da(a){var b;let c=globalThis.process,d=null==(b=null==c?void 0:c.getBuiltinModule)?void 0:b.call(c,a);if(null==d)throw Error(`Node.js built-in module ${a} is unavailable`);return d}var db=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"],dc=new Set([301,302,303,307,308]);async function dd(a){return null==a||a===globalThis.fetch?await c8():a}async function de({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){var g;let h=void 0===b?void 0:function(a){let b=new Headers(a);for(let a of db)b.delete(a);return b}(b),i=a=>{let b={signal:c,redirect:a};return void 0!==h&&(b.headers=new Headers(h)),b},j=a;for(let b=0;b<=d;b++){let b=void 0!==f&&c4(j,f);b||function(a){let b;try{b=new URL(a)}catch(b){throw new c3({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new c3({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new c3({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new c3({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(c7(c.slice(1,-1)))throw new c3({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(c5(c)&&c6(c))throw new c3({url:a,message:`URL with IP address ${c} is not allowed`})}(j);let c=b&&null!=e?e:b?globalThis.fetch:await dd(e),d=await c(j,i("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new c3({url:a,message:`Redirect from ${j} could not be validated and was blocked`});return await c(j,i("follow"))}let k=null==(g=d.headers)?void 0:g.get("location");if(dc.has(d.status)&&k){await c_(d);let a=new URL(k,j).toString();if(void 0!==h&&!c4(a,j)){let a=h.get("user-agent");h=new Headers(null==a?void 0:{"user-agent":a})}j=a;continue}return d}throw new c3({url:a,message:`Too many redirects (max ${d})`})}async function df({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await c_(a),new c3({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new c3({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch(a){}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}(({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{if(null!=a){if(c.includes(d))throw new cu({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${(()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")})()}`}})();var dg=async({url:a,headers:b={},successfulResponseHandler:c,failedResponseHandler:d,abortSignal:e,fetch:f,validateUrl:g,credentialedOrigin:h,trustedOrigin:i})=>{try{let j=null!=f?f:globalThis.fetch,k=void 0===h||c4(a,h)?b:{},l=c$(k,`ai-sdk/provider-utils/${cY}`,cT()),m=g?await de({url:a,headers:l,abortSignal:e,fetch:f,trustedOrigin:i}):await j(a,{method:"GET",headers:l,signal:e}),n=cS(m);if(!m.ok){let b;try{b=await d({response:m,url:a,requestBodyValues:{}})}catch(b){if(cU(b)||ck.isInstance(b))throw b;throw new ck({message:"Failed to process error response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}throw b.value}try{return await c({response:m,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(cU(b)||ck.isInstance(b)))throw b;throw new ck({message:"Failed to process successful response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}}catch(b){throw cX({error:b,url:a,requestBodyValues:{}})}};function dh(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}function di({settingValue:a,environmentVariableName:b}){return"string"==typeof a?a:null!=a||"u"<typeof process?void 0:null!=(a=process.env[b])&&"string"==typeof a?a:void 0}function dj(a){return null!=a&&Number.isSafeInteger(a)&&a>=0}var dk=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,dl=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function dm(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===dk.test(a)&&!1===dl.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function dn(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch(b){return dm(a)}try{return dm(a)}finally{Error.stackTraceLimit=b}}function dp(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&dq(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=dq(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(dq):dq(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(dq)),null!=a.allOf&&(a.allOf=a.allOf.map(dq)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(dq));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=dq(b[a]);return a}function dq(a){return"boolean"==typeof a?a:dp(a)}var dr=Symbol("Let zodToJsonSchema decide on which parser to use"),ds={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function dt(a,b){return dO(a.type._def,b)}var du=void 0,dv=/^[cC][^\s-]{8,}$/,dw=/^[0-9a-z]+$/,dx=/^[0-9A-HJKMNP-TV-Z]{26}$/,dy=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,dz=()=>(void 0===du&&(du=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),du),dA=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,dB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,dC=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,dD=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dE=/^[a-zA-Z0-9_-]{21}$/,dF=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function dG(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":dJ(c,"email",d.message,b);break;case"format:idn-email":dJ(c,"idn-email",d.message,b);break;case"pattern:zod":dK(c,dy,d.message,b)}break;case"url":dJ(c,"uri",d.message,b);break;case"uuid":dJ(c,"uuid",d.message,b);break;case"regex":dK(c,d.regex,d.message,b);break;case"cuid":dK(c,dv,d.message,b);break;case"cuid2":dK(c,dw,d.message,b);break;case"startsWith":dK(c,RegExp(`^${dH(d.value,b)}`),d.message,b);break;case"endsWith":dK(c,RegExp(`${dH(d.value,b)}$`),d.message,b);break;case"datetime":dJ(c,"date-time",d.message,b);break;case"date":dJ(c,"date",d.message,b);break;case"time":dJ(c,"time",d.message,b);break;case"duration":dJ(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":dK(c,RegExp(dH(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&dJ(c,"ipv4",d.message,b),"v4"!==d.version&&dJ(c,"ipv6",d.message,b);break;case"base64url":dK(c,dD,d.message,b);break;case"jwt":dK(c,dF,d.message,b);break;case"cidr":"v6"!==d.version&&dK(c,dA,d.message,b),"v4"!==d.version&&dK(c,dB,d.message,b);break;case"emoji":dK(c,dz(),d.message,b);break;case"ulid":dK(c,dx,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":dJ(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":dK(c,dC,d.message,b)}break;case"nanoid":dK(c,dE,d.message,b)}return c}function dH(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)dI.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}var dI=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function dJ(a,b,c,d){var e;a.format||(null==(e=a.anyOf)?void 0:e.some(a=>a.format))?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function dK(a,b,c,d){var e;a.pattern||(null==(e=a.allOf)?void 0:e.some(a=>a.pattern))?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:dL(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=dL(b,d)}function dL(a,b){var c;if(!b.applyRegexFlags||!a.flags)return a.source;let d={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},e=d.i?a.source.toLowerCase():a.source,f="",g=!1,h=!1,i=!1;for(let a=0;a<e.length;a++){if(g){f+=e[a],g=!1;continue}if(d.i){if(h){if(e[a].match(/[a-z]/)){i?(f+=e[a],f+=`${e[a-2]}-${e[a]}`.toUpperCase(),i=!1):"-"===e[a+1]&&(null==(c=e[a+2])?void 0:c.match(/[a-z]/))?(f+=e[a],i=!0):f+=`${e[a]}${e[a].toUpperCase()}`;continue}}else if(e[a].match(/[a-z]/)){f+=`[${e[a]}${e[a].toUpperCase()}]`;continue}}if(d.m){if("^"===e[a]){f+=`(^|(?<=[\r
19
19
  ]))`;continue}else if("$"===e[a]){f+=`($|(?=[\r
20
20
  ]))`;continue}}if(d.s&&"."===e[a]){f+=h?`${e[a]}\r
21
21
  `:`[${e[a]}\r
22
- ]`;continue}f+=e[a],"\\"===e[a]?g=!0:h&&"]"===e[a]?h=!1:h||"["!==e[a]||(h=!0)}try{new RegExp(f)}catch(c){return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return f}function et(a,b){var c,d,e,f,g,h;let i={type:"object",additionalProperties:null!=(c=ev(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]}))?c:b.allowedAdditionalProperties};if((null==(d=a.keyType)?void 0:d._def.typeName)==="ZodString"&&(null==(e=a.keyType._def.checks)?void 0:e.length)){let{type:c,...d}=en(a.keyType._def,b);return{...i,propertyNames:d}}if((null==(f=a.keyType)?void 0:f._def.typeName)==="ZodEnum")return{...i,propertyNames:{enum:a.keyType._def.values}};if((null==(g=a.keyType)?void 0:g._def.typeName)==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&(null==(h=a.keyType._def.type._def.checks)?void 0:h.length)){let{type:c,...d}=ea(a.keyType._def,b);return{...i,propertyNames:d}}return i}var eu={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ev(a,b,c=!1){var d;let e=b.seen.get(a);if(b.override){let f=null==(d=b.override)?void 0:d.call(b,a,b,e,c);if(f!==d8)return f}if(e&&!c){let a=ew(e,b);if(void 0!==a)return a}let f={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,f);let g=((a,b,c)=>{var d,e,f,g,h,i;switch(b){case"ZodString":return en(a,c);case"ZodNumber":let j={type:"number"};if(!a.checks)return j;for(let b of a.checks)switch(b.kind){case"int":j.type="integer";break;case"min":b.inclusive?j.minimum=b.value:j.exclusiveMinimum=b.value;break;case"max":b.inclusive?j.maximum=b.value:j.exclusiveMaximum=b.value;break;case"multipleOf":j.multipleOf=b.value}return j;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch(a){return!0}}(f),h=ev(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return ev(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let k={type:"integer",format:"int64"};if(!a.checks)return k;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?k.minimum=b.value:k.exclusiveMinimum=b.value;break;case"max":b.inclusive?k.maximum=b.value:k.exclusiveMaximum=b.value;break;case"multipleOf":k.multipleOf=b.value}return k;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=null!=d?d:c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let l;return l={type:"array"},(null==(f=a.type)?void 0:f._def)&&(null==(h=null==(g=a.type)?void 0:g._def)?void 0:h.typeName)!=="ZodAny"&&(l.items=ev(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(l.minItems=a.minLength.value),a.maxLength&&(l.maxItems=a.maxLength.value),a.exactLength&&(l.minItems=a.exactLength.value,l.maxItems=a.exactLength.value),l;case"ZodUnion":case"ZodDiscriminatedUnion":let m,n=a.options instanceof Map?Array.from(a.options.values()):a.options;if(n.every(a=>a._def.typeName in eu&&(!a._def.checks||!a._def.checks.length))){let a=n.reduce((a,b)=>{let c=eu[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(n.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=n.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===n.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:n.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(n.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:n.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return d=a,e=c,(m=(d.options instanceof Map?Array.from(d.options.values()):d.options).map((a,b)=>ev(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!e.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:m}:void 0;case"ZodIntersection":let o,p;return o=[ev(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),ev(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),p=[],o.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)p.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}p.push(b)}}),p.length?{allOf:p}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>ev(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:ev(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>ev(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return et(a,c);case"ZodLiteral":let q;return"bigint"!=(q=typeof a.value)&&"number"!==q&&"boolean"!==q&&"string"!==q?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===q?"integer":q,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let r,s,t;return r=a.values,{type:1===(t=Array.from(new Set((s=Object.keys(a.values).filter(a=>"number"!=typeof r[r[a]]).map(a=>r[a])).map(a=>typeof a)))).length?"string"===t[0]?"string":"number":["string","number"],enum:s};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[eu[a.innerType._def.typeName],"null"]};let u=ev(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return u&&{anyOf:[u,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===(null==(i=c.propertyPath)?void 0:i.toString()))return ev(a.innerType._def,c);let v=ev(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return v?{anyOf:[{not:{}},v]}:{};case"ZodMap":if("record"===c.mapStrategy)return et(a,c);return{type:"array",maxItems:125,items:{type:"array",items:[ev(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},ev(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let w;return w={type:"array",uniqueItems:!0,items:ev(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(w.minItems=a.minSize.value),a.maxSize&&(w.maxItems=a.maxSize.value),w;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return ev(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?ev(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...ev(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return ea(a,c);case"ZodReadonly":case"ZodCatch":return ev(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return ev(a.in._def,c);if("output"===c.pipeStrategy)return ev(a.out._def,c);let x=ev(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),y=ev(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",x?"1":"0"]});return{allOf:[x,y].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),h="function"==typeof g?ev(g(),b):g;if(h&&ex(a,b,h),b.postProcess){let c=b.postProcess(h,a,b);return f.jsonSchema=h,c}return f.jsonSchema=h,h}var ew=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},ex=(a,b,c)=>(a.description&&(c.description=a.description),c),ey=Symbol.for("vercel.ai.schema");function ez(a){let b;return()=>(null==b&&(b=a()),b)}function eA(a,{validate:b}={}){return{[ey]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function eB(a,b){var c,d;let e;if("_zod"in a){let d;return d=null!=(c=null==b?void 0:b.useReferences)&&c,eA(()=>d6((0,bR.toJSONSchema)(a,{target:"draft-7",io:"input",reused:d?"ref":"inline"})),{validate:async b=>{let c=await (0,bQ.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return e=null!=(d=null==b?void 0:b.useReferences)&&d,eA(()=>((a,b)=>{var c;let d,e,f=(e=void 0!==(d="string"==typeof b?{...d9,name:b}:{...d9,...b}).name?[...d.basePath,d.definitionPath,d.name]:d.basePath,{...d,currentPath:e,propertyPath:void 0,seen:new Map(Object.entries(d.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...d.basePath,d.definitionPath,a],jsonSchema:void 0}]))}),g="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>{var d;return{...a,[b]:null!=(d=ev(c._def,{...f,currentPath:[...f.basePath,f.definitionPath,b]},!0))?d:{}}},{}):void 0,h="string"==typeof b?b:(null==b?void 0:b.nameStrategy)==="title"||null==b?void 0:b.name,i=null!=(c=ev(a._def,void 0===h?f:{...f,currentPath:[...f.basePath,f.definitionPath,h]},!1))?c:{},j="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==j&&(i.title=j);let k=void 0===h?g?{...i,[f.definitionPath]:g}:i:{$ref:[..."relative"===f.$refStrategy?[]:f.basePath,f.definitionPath,h].join("/"),[f.definitionPath]:{...g,[h]:i}};return k.$schema="http://json-schema.org/draft-07/schema#",k})(a,{$refStrategy:e?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function eC({value:a,schema:b,context:c}){let d=await eD({value:a,schema:b,context:c});if(!d.success)throw dl.wrap({value:a,cause:d.error,context:c});return d.value}async function eD({value:a,schema:b,context:c}){var d;let e=null==b?eA({type:"object",properties:{},additionalProperties:!1}):"object"==typeof b&&null!==b&&ey in b&&!0===b[ey]&&"jsonSchema"in b&&"validate"in b?b:"~standard"in b?"zod"===b["~standard"].vendor?eB(b):(d=b,eA(()=>{if(null==d["~standard"].jsonSchema)throw Error(`Standard schema vendor '${d["~standard"].vendor}' does not support JSON Schema conversion.`);return d6(d["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let b=await d["~standard"].validate(a);return"value"in b?{success:!0,value:b.value}:{success:!1,error:new dl({value:a,cause:b.issues})}}})):b();try{if(null==e.validate)return{success:!0,value:a,rawValue:a};let b=await e.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:dl.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:dl.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function eE({text:a,schema:b}){try{let c=d5(a);if(null==b)return c;return await eC({value:c,schema:b})}catch(b){if(dg.isInstance(b)||dl.isInstance(b))throw b;throw new dg({text:a,cause:b})}}async function eF({text:a,schema:b}){try{let c=d5(a);if(null==b)return{success:!0,value:c,rawValue:c};return await eD({value:c,schema:b})}catch(b){return{success:!1,error:dg.isInstance(b)?b:new dg({text:a,cause:b}),rawValue:void 0}}}function eG({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bW).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await eF({text:a,schema:b}))}}))}var eH=()=>globalThis.fetch,eI=async({url:a,headers:b,body:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await eJ({url:a,headers:{"Content-Type":"application/json",...b},body:{content:JSON.stringify(c),values:c},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),eJ=async({url:a,headers:b={},body:c,successfulResponseHandler:d,failedResponseHandler:e,abortSignal:f,fetch:g=eH()})=>{try{let h=await g(a,{method:"POST",headers:dI(b,`ai-sdk/provider-utils/${dG}`,dB()),body:c.content,signal:f}),i=dA(h);if(!h.ok){let b;try{b=await e({response:h,url:a,requestBodyValues:c.values})}catch(b){if(dC(b)||c1.isInstance(b))throw b;throw new c1({message:"Failed to process error response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}throw b.value}try{return await d({response:h,url:a,requestBodyValues:c.values})}catch(b){if(b instanceof Error&&(dC(b)||c1.isInstance(b)))throw b;throw new c1({message:"Failed to process successful response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}}catch(b){throw dF({error:b,url:a,requestBodyValues:c.values})}};function eK({id:a,inputSchema:b,outputSchema:c,supportsDeferredResults:d}){return({onInputStart:e,onInputDelta:f,onInputAvailable:g,...h})=>({type:"provider",isProviderExecuted:!0,id:a,args:h,inputSchema:b,outputSchema:c,onInputStart:e,onInputDelta:f,onInputAvailable:g,supportsDeferredResults:d})}async function eL(a){return"function"==typeof a&&(a=a()),Promise.resolve(a)}var eM=new TextDecoder;async function eN({response:a,url:b}){return eM.decode(await dZ({response:a,url:b}))}var eO=({errorSchema:a,errorToMessage:b,isRetryable:c})=>async({response:d,url:e,requestBodyValues:f})=>{let g=await eN({response:d,url:e}),h=dA(d);if(""===g.trim())return{responseHeaders:h,value:new c1({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:null==c?void 0:c(d)})};try{let i=await eE({text:g,schema:a});return{responseHeaders:h,value:new c1({message:b(i),url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,data:i,isRetryable:null==c?void 0:c(d,i)})}}catch(a){return{responseHeaders:h,value:new c1({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:null==c?void 0:c(d)})}}},eP=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=await eN({response:b,url:c}),f=await eF({text:e,schema:a}),g=dA(b);if(!f.success)throw new c1({message:"Invalid JSON response",cause:f.error,statusCode:b.status,responseHeaders:g,responseBody:e,url:c,requestBodyValues:d});return{responseHeaders:g,value:f.value,rawValue:f.rawValue}};async function*eQ({stream:a,schema:b}){let c=a.getReader(),d=new TextDecoder,e="",f=!1;try{for(;;){let{done:a,value:g}=await c.read();if(a){f=!0,e+=d.decode();break}let h=(e+=d.decode(g,{stream:!0})).indexOf("\n");for(;-1!==h;){let a=e.slice(0,h).replace(/\r$/,"");e=e.slice(h+1),a.trim().length>0&&(yield await eE({text:a,schema:b})),h=e.indexOf("\n")}}let a=e.replace(/\r$/,"");a.trim().length>0&&(yield await eE({text:a,schema:b}))}finally{f||await c.cancel().catch(()=>{}),c.releaseLock()}}function eR(a){if(null==a)return!0;let b=typeof a;return"string"===b||"number"===b||"boolean"===b||"function"!==b&&"symbol"!==b&&"bigint"!==b&&(Array.isArray(a)?a.every(eR):Object.getPrototypeOf(a)===Object.prototype&&Object.values(a).every(eR))}var eS="AI_SerializationError",eT=`vercel.ai.error.${eS}`,eU=Symbol.for(eT),eV=class extends(M=cZ,L=eU,M){constructor({message:a="Failed to serialize value.",cause:b}={}){super({name:eS,message:a,cause:b}),this[L]=!0}static isInstance(a){return cZ.hasMarker(a,eT)}};function eW(a){let b={};for(let[c,d]of Object.entries(a.config))if("headers"===c){let a=function(a){let b=a;if("function"==typeof a&&(b=a()),b instanceof Promise)throw new eV({message:"Cannot serialize asynchronous model options."});return b}(d);eR(a)&&(b[c]=a)}else eR(d)&&(b[c]=d);return{modelId:a.modelId,config:b}}function eX(a){return"string"==typeof a}function eY(a){return"number"==typeof a}function eZ(a,b){return void 0===a||b(a)}function e$(a){return d_(a)&&eX(a.type)}function e_(a){return d_(a)&&eX(a.text)&&eY(a.startSecond)&&eY(a.endSecond)}var e0=a.i(954714),e1=a.i(327673),e2="ai-gateway-transcription.v1";function e3(a,b,c){let d=[a,`ai-gateway-auth.${b}`];return(null==c?void 0:c.teamIdOrSlug)&&d.push(`ai-gateway-team.${function(a){let b=new TextEncoder().encode(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(c.teamIdOrSlug)}`),d}var e4={any:e0.any,array:e0.array,boolean:e0.boolean,discriminatedUnion:e0.discriminatedUnion,enum:e0.enum,literal:e0.literal,number:e0.number,object:e0.object,record:e0.record,string:e0.string,union:e0.union,unknown:e0.unknown},e5=Symbol.for("vercel.ai.gateway.error"),e6=class a extends(O=Error,N=e5,O){constructor({message:a,statusCode:b=500,cause:c,generationId:d,isRetryable:e=null!=b&&(408===b||409===b||429===b||b>=500)}){super(d?`${a} [${d}]`:a),this[N]=!0,this.statusCode=b,this.cause=c,this.generationId=d,this.isRetryable=e}static isInstance(b){return a.hasMarker(b)}static hasMarker(a){return"object"==typeof a&&null!==a&&e5 in a&&!0===a[e5]}},e7="GatewayAuthenticationError",e8=Symbol.for(`vercel.ai.gateway.error.${e7}`),e9=class a extends(Q=e6,P=e8,Q){constructor({message:a="Authentication failed",statusCode:b=401,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[P]=!0,this.name=e7,this.type="authentication_error"}static isInstance(a){return e6.hasMarker(a)&&e8 in a}static createContextualError({apiKeyProvided:b,oidcTokenProvided:c,statusCode:d=401,cause:e,generationId:f}){return new a({message:b?`AI Gateway authentication failed: Invalid API key or token.
22
+ ]`;continue}f+=e[a],"\\"===e[a]?g=!0:h&&"]"===e[a]?h=!1:h||"["!==e[a]||(h=!0)}try{new RegExp(f)}catch(c){return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return f}function dM(a,b){var c,d,e,f,g,h;let i={type:"object",additionalProperties:null!=(c=dO(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]}))?c:b.allowedAdditionalProperties};if((null==(d=a.keyType)?void 0:d._def.typeName)==="ZodString"&&(null==(e=a.keyType._def.checks)?void 0:e.length)){let{type:c,...d}=dG(a.keyType._def,b);return{...i,propertyNames:d}}if((null==(f=a.keyType)?void 0:f._def.typeName)==="ZodEnum")return{...i,propertyNames:{enum:a.keyType._def.values}};if((null==(g=a.keyType)?void 0:g._def.typeName)==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&(null==(h=a.keyType._def.type._def.checks)?void 0:h.length)){let{type:c,...d}=dt(a.keyType._def,b);return{...i,propertyNames:d}}return i}var dN={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function dO(a,b,c=!1){var d;let e=b.seen.get(a);if(b.override){let f=null==(d=b.override)?void 0:d.call(b,a,b,e,c);if(f!==dr)return f}if(e&&!c){let a=dP(e,b);if(void 0!==a)return a}let f={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,f);let g=((a,b,c)=>{var d,e,f,g,h,i;switch(b){case"ZodString":return dG(a,c);case"ZodNumber":let j={type:"number"};if(!a.checks)return j;for(let b of a.checks)switch(b.kind){case"int":j.type="integer";break;case"min":b.inclusive?j.minimum=b.value:j.exclusiveMinimum=b.value;break;case"max":b.inclusive?j.maximum=b.value:j.exclusiveMaximum=b.value;break;case"multipleOf":j.multipleOf=b.value}return j;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch(a){return!0}}(f),h=dO(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return dO(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let k={type:"integer",format:"int64"};if(!a.checks)return k;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?k.minimum=b.value:k.exclusiveMinimum=b.value;break;case"max":b.inclusive?k.maximum=b.value:k.exclusiveMaximum=b.value;break;case"multipleOf":k.multipleOf=b.value}return k;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=null!=d?d:c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let l;return l={type:"array"},(null==(f=a.type)?void 0:f._def)&&(null==(h=null==(g=a.type)?void 0:g._def)?void 0:h.typeName)!=="ZodAny"&&(l.items=dO(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(l.minItems=a.minLength.value),a.maxLength&&(l.maxItems=a.maxLength.value),a.exactLength&&(l.minItems=a.exactLength.value,l.maxItems=a.exactLength.value),l;case"ZodUnion":case"ZodDiscriminatedUnion":let m,n=a.options instanceof Map?Array.from(a.options.values()):a.options;if(n.every(a=>a._def.typeName in dN&&(!a._def.checks||!a._def.checks.length))){let a=n.reduce((a,b)=>{let c=dN[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(n.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=n.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===n.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:n.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(n.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:n.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return d=a,e=c,(m=(d.options instanceof Map?Array.from(d.options.values()):d.options).map((a,b)=>dO(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!e.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:m}:void 0;case"ZodIntersection":let o,p;return o=[dO(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),dO(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),p=[],o.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)p.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}p.push(b)}}),p.length?{allOf:p}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>dO(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:dO(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>dO(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return dM(a,c);case"ZodLiteral":let q;return"bigint"!=(q=typeof a.value)&&"number"!==q&&"boolean"!==q&&"string"!==q?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===q?"integer":q,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let r,s,t;return r=a.values,{type:1===(t=Array.from(new Set((s=Object.keys(a.values).filter(a=>"number"!=typeof r[r[a]]).map(a=>r[a])).map(a=>typeof a)))).length?"string"===t[0]?"string":"number":["string","number"],enum:s};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[dN[a.innerType._def.typeName],"null"]};let u=dO(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return u&&{anyOf:[u,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===(null==(i=c.propertyPath)?void 0:i.toString()))return dO(a.innerType._def,c);let v=dO(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return v?{anyOf:[{not:{}},v]}:{};case"ZodMap":if("record"===c.mapStrategy)return dM(a,c);return{type:"array",maxItems:125,items:{type:"array",items:[dO(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},dO(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let w;return w={type:"array",uniqueItems:!0,items:dO(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(w.minItems=a.minSize.value),a.maxSize&&(w.maxItems=a.maxSize.value),w;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return dO(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?dO(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...dO(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return dt(a,c);case"ZodReadonly":case"ZodCatch":return dO(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return dO(a.in._def,c);if("output"===c.pipeStrategy)return dO(a.out._def,c);let x=dO(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),y=dO(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",x?"1":"0"]});return{allOf:[x,y].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),h="function"==typeof g?dO(g(),b):g;if(h&&dQ(a,b,h),b.postProcess){let c=b.postProcess(h,a,b);return f.jsonSchema=h,c}return f.jsonSchema=h,h}var dP=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},dQ=(a,b,c)=>(a.description&&(c.description=a.description),c),dR=Symbol.for("vercel.ai.schema");function dS(a){let b;return()=>(null==b&&(b=a()),b)}function dT(a,{validate:b}={}){return{[dR]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function dU(a,b){var c,d;let e;if("_zod"in a){let d;return d=null!=(c=null==b?void 0:b.useReferences)&&c,dT(()=>dp((0,a8.toJSONSchema)(a,{target:"draft-7",io:"input",reused:d?"ref":"inline"})),{validate:async b=>{let c=await (0,a7.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return e=null!=(d=null==b?void 0:b.useReferences)&&d,dT(()=>((a,b)=>{var c;let d,e,f=(e=void 0!==(d="string"==typeof b?{...ds,name:b}:{...ds,...b}).name?[...d.basePath,d.definitionPath,d.name]:d.basePath,{...d,currentPath:e,propertyPath:void 0,seen:new Map(Object.entries(d.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...d.basePath,d.definitionPath,a],jsonSchema:void 0}]))}),g="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>{var d;return{...a,[b]:null!=(d=dO(c._def,{...f,currentPath:[...f.basePath,f.definitionPath,b]},!0))?d:{}}},{}):void 0,h="string"==typeof b?b:(null==b?void 0:b.nameStrategy)==="title"||null==b?void 0:b.name,i=null!=(c=dO(a._def,void 0===h?f:{...f,currentPath:[...f.basePath,f.definitionPath,h]},!1))?c:{},j="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==j&&(i.title=j);let k=void 0===h?g?{...i,[f.definitionPath]:g}:i:{$ref:[..."relative"===f.$refStrategy?[]:f.basePath,f.definitionPath,h].join("/"),[f.definitionPath]:{...g,[h]:i}};return k.$schema="http://json-schema.org/draft-07/schema#",k})(a,{$refStrategy:e?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function dV({value:a,schema:b,context:c}){let d=await dW({value:a,schema:b,context:c});if(!d.success)throw cE.wrap({value:a,cause:d.error,context:c});return d.value}async function dW({value:a,schema:b,context:c}){var d;let e=null==b?dT({type:"object",properties:{},additionalProperties:!1}):"object"==typeof b&&null!==b&&dR in b&&!0===b[dR]&&"jsonSchema"in b&&"validate"in b?b:"~standard"in b?"zod"===b["~standard"].vendor?dU(b):(d=b,dT(()=>{if(null==d["~standard"].jsonSchema)throw Error(`Standard schema vendor '${d["~standard"].vendor}' does not support JSON Schema conversion.`);return dp(d["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let b=await d["~standard"].validate(a);return"value"in b?{success:!0,value:b.value}:{success:!1,error:new cE({value:a,cause:b.issues})}}})):b();try{if(null==e.validate)return{success:!0,value:a,rawValue:a};let b=await e.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:cE.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:cE.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function dX({text:a,schema:b}){try{let c=dn(a);if(null==b)return c;return await dV({value:c,schema:b})}catch(b){if(cz.isInstance(b)||cE.isInstance(b))throw b;throw new cz({text:a,cause:b})}}async function dY({text:a,schema:b}){try{let c=dn(a);if(null==b)return{success:!0,value:c,rawValue:c};return await dW({value:c,schema:b})}catch(b){return{success:!1,error:cz.isInstance(b)?b:new cz({text:a,cause:b}),rawValue:void 0}}}function dZ({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bd).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await dY({text:a,schema:b}))}}))}var d$=()=>globalThis.fetch,d_=async({url:a,headers:b,body:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await d0({url:a,headers:{"Content-Type":"application/json",...b},body:{content:JSON.stringify(c),values:c},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),d0=async({url:a,headers:b={},body:c,successfulResponseHandler:d,failedResponseHandler:e,abortSignal:f,fetch:g=d$()})=>{try{let h=await g(a,{method:"POST",headers:c$(b,`ai-sdk/provider-utils/${cY}`,cT()),body:c.content,signal:f}),i=cS(h);if(!h.ok){let b;try{b=await e({response:h,url:a,requestBodyValues:c.values})}catch(b){if(cU(b)||ck.isInstance(b))throw b;throw new ck({message:"Failed to process error response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}throw b.value}try{return await d({response:h,url:a,requestBodyValues:c.values})}catch(b){if(b instanceof Error&&(cU(b)||ck.isInstance(b)))throw b;throw new ck({message:"Failed to process successful response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}}catch(b){throw cX({error:b,url:a,requestBodyValues:c.values})}};function d1({id:a,inputSchema:b,outputSchema:c,supportsDeferredResults:d}){return({onInputStart:e,onInputDelta:f,onInputAvailable:g,...h})=>({type:"provider",isProviderExecuted:!0,id:a,args:h,inputSchema:b,outputSchema:c,onInputStart:e,onInputDelta:f,onInputAvailable:g,supportsDeferredResults:d})}async function d2(a){return"function"==typeof a&&(a=a()),Promise.resolve(a)}var d3=new TextDecoder;async function d4({response:a,url:b}){return d3.decode(await df({response:a,url:b}))}var d5=({errorSchema:a,errorToMessage:b,isRetryable:c})=>async({response:d,url:e,requestBodyValues:f})=>{let g=await d4({response:d,url:e}),h=cS(d);if(""===g.trim())return{responseHeaders:h,value:new ck({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:null==c?void 0:c(d)})};try{let i=await dX({text:g,schema:a});return{responseHeaders:h,value:new ck({message:b(i),url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,data:i,isRetryable:null==c?void 0:c(d,i)})}}catch(a){return{responseHeaders:h,value:new ck({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:null==c?void 0:c(d)})}}},d6=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=await d4({response:b,url:c}),f=await dY({text:e,schema:a}),g=cS(b);if(!f.success)throw new ck({message:"Invalid JSON response",cause:f.error,statusCode:b.status,responseHeaders:g,responseBody:e,url:c,requestBodyValues:d});return{responseHeaders:g,value:f.value,rawValue:f.rawValue}};async function*d7({stream:a,schema:b}){let c=a.getReader(),d=new TextDecoder,e="",f=!1;try{for(;;){let{done:a,value:g}=await c.read();if(a){f=!0,e+=d.decode();break}let h=(e+=d.decode(g,{stream:!0})).indexOf("\n");for(;-1!==h;){let a=e.slice(0,h).replace(/\r$/,"");e=e.slice(h+1),a.trim().length>0&&(yield await dX({text:a,schema:b})),h=e.indexOf("\n")}}let a=e.replace(/\r$/,"");a.trim().length>0&&(yield await dX({text:a,schema:b}))}finally{f||await c.cancel().catch(()=>{}),c.releaseLock()}}function d8(a){if(null==a)return!0;let b=typeof a;return"string"===b||"number"===b||"boolean"===b||"function"!==b&&"symbol"!==b&&"bigint"!==b&&(Array.isArray(a)?a.every(d8):Object.getPrototypeOf(a)===Object.prototype&&Object.values(a).every(d8))}var d9="AI_SerializationError",ea=`vercel.ai.error.${d9}`,eb=Symbol.for(ea),ec=class extends(O=cg,N=eb,O){constructor({message:a="Failed to serialize value.",cause:b}={}){super({name:d9,message:a,cause:b}),this[N]=!0}static isInstance(a){return cg.hasMarker(a,ea)}};function ed(a){let b={};for(let[c,d]of Object.entries(a.config))if("headers"===c){let a=function(a){let b=a;if("function"==typeof a&&(b=a()),b instanceof Promise)throw new ec({message:"Cannot serialize asynchronous model options."});return b}(d);d8(a)&&(b[c]=a)}else d8(d)&&(b[c]=d);return{modelId:a.modelId,config:b}}function ee(a){return"string"==typeof a}function ef(a){return"number"==typeof a}function eg(a,b){return void 0===a||b(a)}function eh(a){return dh(a)&&ee(a.type)}function ei(a){return dh(a)&&ee(a.text)&&ef(a.startSecond)&&ef(a.endSecond)}var ej=a.i(954714),ek=a.i(327673),el="ai-gateway-transcription.v1";function em(a,b,c){let d=[a,`ai-gateway-auth.${b}`];return(null==c?void 0:c.teamIdOrSlug)&&d.push(`ai-gateway-team.${function(a){let b=new TextEncoder().encode(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(c.teamIdOrSlug)}`),d}var en={any:ej.any,array:ej.array,boolean:ej.boolean,discriminatedUnion:ej.discriminatedUnion,enum:ej.enum,literal:ej.literal,number:ej.number,object:ej.object,record:ej.record,string:ej.string,union:ej.union,unknown:ej.unknown},eo=Symbol.for("vercel.ai.gateway.error"),ep=class a extends(Q=Error,P=eo,Q){constructor({message:a,statusCode:b=500,cause:c,generationId:d,isRetryable:e=null!=b&&(408===b||409===b||429===b||b>=500)}){super(d?`${a} [${d}]`:a),this[P]=!0,this.statusCode=b,this.cause=c,this.generationId=d,this.isRetryable=e}static isInstance(b){return a.hasMarker(b)}static hasMarker(a){return"object"==typeof a&&null!==a&&eo in a&&!0===a[eo]}},eq="GatewayAuthenticationError",er=Symbol.for(`vercel.ai.gateway.error.${eq}`),es=class a extends(S=ep,R=er,S){constructor({message:a="Authentication failed",statusCode:b=401,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[R]=!0,this.name=eq,this.type="authentication_error"}static isInstance(a){return ep.hasMarker(a)&&er in a}static createContextualError({apiKeyProvided:b,oidcTokenProvided:c,statusCode:d=401,cause:e,generationId:f}){return new a({message:b?`AI Gateway authentication failed: Invalid API key or token.
23
23
 
24
24
  Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
25
25
 
@@ -38,15 +38,15 @@ Option 2 - Vercel access token:
38
38
  Pass a Vercel personal access token or Vercel app access token via the 'apiKey' option.
39
39
 
40
40
  Option 3 - OIDC token:
41
- Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:d,cause:e,generationId:f})}},fa="GatewayInvalidRequestError",fb=Symbol.for(`vercel.ai.gateway.error.${fa}`),fc=class extends(S=e6,R=fb,S){constructor({message:a="Invalid request",statusCode:b=400,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[R]=!0,this.name=fa,this.type="invalid_request_error"}static isInstance(a){return e6.hasMarker(a)&&fb in a}},fd="GatewayRateLimitError",fe=Symbol.for(`vercel.ai.gateway.error.${fd}`),ff=class extends(U=e6,T=fe,U){constructor({message:a="Rate limit exceeded",statusCode:b=429,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[T]=!0,this.name=fd,this.type="rate_limit_exceeded"}static isInstance(a){return e6.hasMarker(a)&&fe in a}},fg="GatewayModelNotFoundError",fh=Symbol.for(`vercel.ai.gateway.error.${fg}`),fi=ez(()=>eB(e4.object({modelId:e4.string()}))),fj=class extends(W=e6,V=fh,W){constructor({message:a="Model not found",statusCode:b=404,modelId:c,cause:d,generationId:e}={}){super({message:a,statusCode:b,cause:d,generationId:e}),this[V]=!0,this.name=fg,this.type="model_not_found",this.modelId=c}static isInstance(a){return e6.hasMarker(a)&&fh in a}},fk="GatewayNotFoundError",fl=Symbol.for(`vercel.ai.gateway.error.${fk}`),fm=class extends(Y=e6,X=fl,Y){constructor({message:a="Resource not found",statusCode:b=404,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[X]=!0,this.name=fk,this.type="not_found"}static isInstance(a){return e6.hasMarker(a)&&fl in a}},fn="GatewayInternalServerError",fo=Symbol.for(`vercel.ai.gateway.error.${fn}`),fp=class extends($=e6,Z=fo,$){constructor({message:a="Internal server error",statusCode:b=500,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[Z]=!0,this.name=fn,this.type="internal_server_error"}static isInstance(a){return e6.hasMarker(a)&&fo in a}},fq="GatewayFailedDependencyError",fr=Symbol.for(`vercel.ai.gateway.error.${fq}`),fs=class extends(aa=e6,_=fr,aa){constructor({message:a="Failed dependency",statusCode:b=424,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[_]=!0,this.name=fq,this.type="failed_dependency"}static isInstance(a){return e6.hasMarker(a)&&fr in a}},ft="GatewayForbiddenError",fu=Symbol.for(`vercel.ai.gateway.error.${ft}`),fv=ez(()=>eB(e4.object({ruleId:e4.string()}))),fw=class extends(ac=e6,ab=fu,ac){constructor({message:a="Forbidden",statusCode:b=403,cause:c,generationId:d,ruleId:e}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[ab]=!0,this.name=ft,this.type="forbidden",this.ruleId=e}static isInstance(a){return e6.hasMarker(a)&&fu in a}},fx="GatewayResponseError",fy=Symbol.for(`vercel.ai.gateway.error.${fx}`),fz=class extends(ae=e6,ad=fy,ae){constructor({message:a="Invalid response from Gateway",statusCode:b=502,response:c,validationError:d,cause:e,generationId:f,isRetryable:g}={}){super({message:a,statusCode:b,cause:e,generationId:f,isRetryable:g}),this[ad]=!0,this.name=fx,this.type="response_error",this.response=c,this.validationError=d}static isInstance(a){return e6.hasMarker(a)&&fy in a}};async function fA({response:a,statusCode:b,defaultMessage:c="Gateway request failed",cause:d,authMethod:e,isRetryable:f}){var g;let h=await eD({value:a,schema:fB});if(!h.success){let e="object"==typeof a&&null!==a&&"generationId"in a?a.generationId:void 0;return new fz({message:`Invalid error response format: ${c}`,statusCode:b,response:a,validationError:h.error,cause:d,generationId:e,isRetryable:f})}let i=h.value,j=i.error.type,k=i.error.message,l=null!=(g=i.generationId)?g:void 0;switch(j){case"authentication_error":return e9.createContextualError({apiKeyProvided:"api-key"===e,oidcTokenProvided:"oidc"===e,statusCode:b,cause:d,generationId:l});case"invalid_request_error":return new fc({message:k,statusCode:b,cause:d,generationId:l});case"rate_limit_exceeded":return new ff({message:k,statusCode:b,cause:d,generationId:l});case"model_not_found":{let a=await eD({value:i.error.param,schema:fi});return new fj({message:k,statusCode:b,modelId:a.success?a.value.modelId:void 0,cause:d,generationId:l})}case"not_found":return new fm({message:k,statusCode:b,cause:d,generationId:l});case"internal_server_error":default:return new fp({message:k,statusCode:b,cause:d,generationId:l});case"failed_dependency":return new fs({message:k,statusCode:b,cause:d,generationId:l});case"forbidden":{let a=await eD({value:i.error.param,schema:fv});return new fw({message:k,statusCode:b,cause:d,generationId:l,ruleId:a.success?a.value.ruleId:void 0})}}}var fB=ez(()=>eB(e4.object({error:e4.object({message:e4.string(),type:e4.string().nullish(),param:e4.unknown().nullish(),code:e4.union([e4.string(),e4.number()]).nullish()}),generationId:e4.string().nullish()}))),fC="GatewayTimeoutError",fD=Symbol.for(`vercel.ai.gateway.error.${fC}`),fE=class a extends(ag=e6,af=fD,ag){constructor({message:a="Request timed out",statusCode:b=408,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[af]=!0,this.name=fC,this.type="timeout_error"}static isInstance(a){return e6.hasMarker(a)&&fD in a}static createTimeoutError({originalMessage:b,statusCode:c=408,cause:d,generationId:e}){return new a({message:`Gateway request timed out: ${b}
41
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:d,cause:e,generationId:f})}},et="GatewayInvalidRequestError",eu=Symbol.for(`vercel.ai.gateway.error.${et}`),ev=class extends(U=ep,T=eu,U){constructor({message:a="Invalid request",statusCode:b=400,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[T]=!0,this.name=et,this.type="invalid_request_error"}static isInstance(a){return ep.hasMarker(a)&&eu in a}},ew="GatewayRateLimitError",ex=Symbol.for(`vercel.ai.gateway.error.${ew}`),ey=class extends(W=ep,V=ex,W){constructor({message:a="Rate limit exceeded",statusCode:b=429,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[V]=!0,this.name=ew,this.type="rate_limit_exceeded"}static isInstance(a){return ep.hasMarker(a)&&ex in a}},ez="GatewayModelNotFoundError",eA=Symbol.for(`vercel.ai.gateway.error.${ez}`),eB=dS(()=>dU(en.object({modelId:en.string()}))),eC=class extends(Y=ep,X=eA,Y){constructor({message:a="Model not found",statusCode:b=404,modelId:c,cause:d,generationId:e}={}){super({message:a,statusCode:b,cause:d,generationId:e}),this[X]=!0,this.name=ez,this.type="model_not_found",this.modelId=c}static isInstance(a){return ep.hasMarker(a)&&eA in a}},eD="GatewayNotFoundError",eE=Symbol.for(`vercel.ai.gateway.error.${eD}`),eF=class extends($=ep,Z=eE,$){constructor({message:a="Resource not found",statusCode:b=404,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[Z]=!0,this.name=eD,this.type="not_found"}static isInstance(a){return ep.hasMarker(a)&&eE in a}},eG="GatewayInternalServerError",eH=Symbol.for(`vercel.ai.gateway.error.${eG}`),eI=class extends(aa=ep,_=eH,aa){constructor({message:a="Internal server error",statusCode:b=500,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[_]=!0,this.name=eG,this.type="internal_server_error"}static isInstance(a){return ep.hasMarker(a)&&eH in a}},eJ="GatewayFailedDependencyError",eK=Symbol.for(`vercel.ai.gateway.error.${eJ}`),eL=class extends(ac=ep,ab=eK,ac){constructor({message:a="Failed dependency",statusCode:b=424,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[ab]=!0,this.name=eJ,this.type="failed_dependency"}static isInstance(a){return ep.hasMarker(a)&&eK in a}},eM="GatewayForbiddenError",eN=Symbol.for(`vercel.ai.gateway.error.${eM}`),eO=dS(()=>dU(en.object({ruleId:en.string()}))),eP=class extends(ae=ep,ad=eN,ae){constructor({message:a="Forbidden",statusCode:b=403,cause:c,generationId:d,ruleId:e}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[ad]=!0,this.name=eM,this.type="forbidden",this.ruleId=e}static isInstance(a){return ep.hasMarker(a)&&eN in a}},eQ="GatewayResponseError",eR=Symbol.for(`vercel.ai.gateway.error.${eQ}`),eS=class extends(ag=ep,af=eR,ag){constructor({message:a="Invalid response from Gateway",statusCode:b=502,response:c,validationError:d,cause:e,generationId:f,isRetryable:g}={}){super({message:a,statusCode:b,cause:e,generationId:f,isRetryable:g}),this[af]=!0,this.name=eQ,this.type="response_error",this.response=c,this.validationError=d}static isInstance(a){return ep.hasMarker(a)&&eR in a}};async function eT({response:a,statusCode:b,defaultMessage:c="Gateway request failed",cause:d,authMethod:e,isRetryable:f}){var g;let h=await dW({value:a,schema:eU});if(!h.success){let e="object"==typeof a&&null!==a&&"generationId"in a?a.generationId:void 0;return new eS({message:`Invalid error response format: ${c}`,statusCode:b,response:a,validationError:h.error,cause:d,generationId:e,isRetryable:f})}let i=h.value,j=i.error.type,k=i.error.message,l=null!=(g=i.generationId)?g:void 0;switch(j){case"authentication_error":return es.createContextualError({apiKeyProvided:"api-key"===e,oidcTokenProvided:"oidc"===e,statusCode:b,cause:d,generationId:l});case"invalid_request_error":return new ev({message:k,statusCode:b,cause:d,generationId:l});case"rate_limit_exceeded":return new ey({message:k,statusCode:b,cause:d,generationId:l});case"model_not_found":{let a=await dW({value:i.error.param,schema:eB});return new eC({message:k,statusCode:b,modelId:a.success?a.value.modelId:void 0,cause:d,generationId:l})}case"not_found":return new eF({message:k,statusCode:b,cause:d,generationId:l});case"internal_server_error":default:return new eI({message:k,statusCode:b,cause:d,generationId:l});case"failed_dependency":return new eL({message:k,statusCode:b,cause:d,generationId:l});case"forbidden":{let a=await dW({value:i.error.param,schema:eO});return new eP({message:k,statusCode:b,cause:d,generationId:l,ruleId:a.success?a.value.ruleId:void 0})}}}var eU=dS(()=>dU(en.object({error:en.object({message:en.string(),type:en.string().nullish(),param:en.unknown().nullish(),code:en.union([en.string(),en.number()]).nullish()}),generationId:en.string().nullish()}))),eV="GatewayTimeoutError",eW=Symbol.for(`vercel.ai.gateway.error.${eV}`),eX=class a extends(ai=ep,ah=eW,ai){constructor({message:a="Request timed out",statusCode:b=408,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[ah]=!0,this.name=eV,this.type="timeout_error"}static isInstance(a){return ep.hasMarker(a)&&eW in a}static createTimeoutError({originalMessage:b,statusCode:c=408,cause:d,generationId:e}){return new a({message:`Gateway request timed out: ${b}
42
42
 
43
- This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:c,cause:d,generationId:e})}};function fF(a){if(!(a instanceof Error))return!1;let b=a.code;return"string"==typeof b&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(b)}async function fG(a,b){var c;return e6.isInstance(a)?a:fF(a)?fE.createTimeoutError({originalMessage:a instanceof Error?a.message:"Unknown error",cause:a}):c1.isInstance(a)?a.cause&&fF(a.cause)?fE.createTimeoutError({originalMessage:a.message,cause:a}):await fA({response:function(a){if(void 0!==a.data)return a.data;if(null!=a.responseBody)try{return d5(a.responseBody)}catch(b){return a.responseBody}return{}}(a),statusCode:null!=(c=a.statusCode)?c:500,defaultMessage:"Gateway request failed",cause:a,authMethod:b,isRetryable:!!a.isRetryable&&(null==a.statusCode||a.statusCode<400)||void 0}):await fA({response:{},statusCode:500,defaultMessage:a instanceof Error?`Gateway request failed: ${a.message}`:"Unknown Gateway error",cause:a,authMethod:b})}var fH="ai-gateway-auth-method",fI="x-vercel-ai-gateway-team";async function fJ(a){let b=await eD({value:a[fH],schema:fK});return b.success?b.value:void 0}var fK=ez(()=>eB(e4.union([e4.literal("api-key"),e4.literal("oidc")]))),fL=["embedding","evaluation","image","language","realtime","reranking","speech","transcription","video"],fM=class{constructor(a){this.config=a}async getAvailableModels(){try{let{value:a}=await d$({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await eL(this.config.headers):void 0,successfulResponseHandler:eP(fN),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),fetch:this.config.fetch});return a}catch(a){throw await fG(a)}}async getCredits(){try{let a=new URL(this.config.baseURL),{value:b}=await d$({url:`${a.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await eL(this.config.headers):void 0,successfulResponseHandler:eP(fO),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),fetch:this.config.fetch});return b}catch(a){throw await fG(a)}}},fN=ez(()=>eB(e4.object({models:e4.array(e4.object({id:e4.string(),name:e4.string(),description:e4.string().nullish(),pricing:e4.object({input:e4.string(),output:e4.string(),input_cache_read:e4.string().nullish(),input_cache_write:e4.string().nullish()}).transform(({input:a,output:b,input_cache_read:c,input_cache_write:d})=>({input:a,output:b,...c?{cachedInputTokens:c}:{},...d?{cacheCreationInputTokens:d}:{}})).nullish(),specification:e4.object({specificationVersion:e4.literal("v4"),provider:e4.string(),modelId:e4.string()}),modelType:e4.string().nullish()})).transform(a=>a.filter(a=>null==a.modelType||fL.includes(a.modelType)))}))),fO=ez(()=>eB(e4.object({balance:e4.string(),total_used:e4.string()}).transform(({balance:a,total_used:b})=>({balance:a,totalUsed:b})))),fP=class{constructor(a){this.config=a}async getSpendReport(a){try{let b=new URL(this.config.baseURL),c=new URLSearchParams;c.set("start_date",a.startDate),c.set("end_date",a.endDate),a.groupBy&&c.set("group_by",a.groupBy),a.datePart&&c.set("date_part",a.datePart),a.userId&&c.set("user_id",a.userId),a.model&&c.set("model",a.model),a.provider&&c.set("provider",a.provider),a.credentialType&&c.set("credential_type",a.credentialType),a.tags&&a.tags.length>0&&c.set("tags",a.tags.join(","));let{value:d}=await d$({url:`${b.origin}/v1/report?${c.toString()}`,validateUrl:!1,headers:this.config.headers?await eL(this.config.headers):void 0,successfulResponseHandler:eP(fQ),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),fetch:this.config.fetch});return d}catch(a){throw await fG(a)}}},fQ=ez(()=>eB(e4.object({results:e4.array(e4.object({day:e4.string().optional(),hour:e4.string().optional(),user:e4.string().optional(),model:e4.string().optional(),tag:e4.string().optional(),provider:e4.string().optional(),credential_type:e4.enum(["byok","system"]).optional(),total_cost:e4.number(),market_cost:e4.number().optional(),input_tokens:e4.number().optional(),output_tokens:e4.number().optional(),cached_input_tokens:e4.number().optional(),cache_creation_input_tokens:e4.number().optional(),reasoning_tokens:e4.number().optional(),request_count:e4.number().optional()}).transform(({credential_type:a,total_cost:b,market_cost:c,input_tokens:d,output_tokens:e,cached_input_tokens:f,cache_creation_input_tokens:g,reasoning_tokens:h,request_count:i,...j})=>({...j,...void 0!==a?{credentialType:a}:{},totalCost:b,...void 0!==c?{marketCost:c}:{},...void 0!==d?{inputTokens:d}:{},...void 0!==e?{outputTokens:e}:{},...void 0!==f?{cachedInputTokens:f}:{},...void 0!==g?{cacheCreationInputTokens:g}:{},...void 0!==h?{reasoningTokens:h}:{},...void 0!==i?{requestCount:i}:{}})))}))),fR=class{constructor(a){this.config=a}async getGenerationInfo(a){try{let b=new URL(this.config.baseURL),{value:c}=await d$({url:`${b.origin}/v1/generation?id=${encodeURIComponent(a.id)}`,validateUrl:!1,headers:this.config.headers?await eL(this.config.headers):void 0,successfulResponseHandler:eP(fS),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),fetch:this.config.fetch});return c}catch(a){throw await fG(a)}}},fS=ez(()=>eB(e4.object({data:e4.object({id:e4.string(),total_cost:e4.number(),upstream_inference_cost:e4.number(),usage:e4.number(),created_at:e4.string(),model:e4.string(),is_byok:e4.boolean(),provider_name:e4.string(),streamed:e4.boolean(),finish_reason:e4.string(),latency:e4.number(),generation_time:e4.number(),native_tokens_prompt:e4.number(),native_tokens_completion:e4.number(),native_tokens_reasoning:e4.number(),native_tokens_cached:e4.number(),native_tokens_cache_creation:e4.number(),billable_web_search_calls:e4.number()}).transform(({total_cost:a,upstream_inference_cost:b,created_at:c,is_byok:d,provider_name:e,finish_reason:f,generation_time:g,native_tokens_prompt:h,native_tokens_completion:i,native_tokens_reasoning:j,native_tokens_cached:k,native_tokens_cache_creation:l,billable_web_search_calls:m,...n})=>({...n,totalCost:a,upstreamInferenceCost:b,createdAt:c,isByok:d,providerName:e,finishReason:f,generationTime:g,promptTokens:h,completionTokens:i,reasoningTokens:j,cachedTokens:k,cacheCreationTokens:l,billableWebSearchCalls:m}))}).transform(({data:a})=>a))),fT=class{constructor(a){this.config=a,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]},this.provider=`${a.provider}.batch`}async doStartBatch({requests:a,providerOptions:b,headers:c,abortSignal:d,webhookUrl:e}){var f,g=a;for(let a of g){let b=a.type;if("text"!==b)throw new dq({functionality:`batch request type: ${b}`,message:`The AI Gateway Batch API does not support batch requests with type "${b}".`})}let h=function(a){var b;let c=null==(b=a[0])?void 0:b.modelId;if(null==c)throw new db({argument:"requests",message:"The AI Gateway Batch API requires at least one request."});for(let b of a)if(b.modelId!==c)throw new db({argument:"requests",message:`The AI Gateway Batch API requires all requests in a batch to use the same model. Found "${c}" and "${b.modelId}".`});return c}(a),i=this.config.headers?await eL(this.config.headers):void 0,j=function(a){let b=null==a?void 0:a.gateway;if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b.idempotencyKey;return"string"==typeof c&&c.length>0?c:void 0}(b),k=function(a){let b=null==a?void 0:a.gateway;if(null==b||"object"!=typeof b||Array.isArray(b)||!("idempotencyKey"in b))return a;let{idempotencyKey:c,...d}=b,e={...a};if(0===Object.keys(d).length?delete e.gateway:e.gateway=d,0!==Object.keys(e).length)return e}(b);try{let{value:b}=await eI({url:this.getBatchUrl("start"),headers:dr(i,c,{"ai-model-id":h},await eL(this.config.o11yHeaders),null!=j?{"idempotency-key":j}:void 0),body:{...null!=e&&{callbackUrl:e},requests:a.map(a=>({id:a.id,type:a.type,modelId:a.modelId,options:function(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=fU(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=fU(b.data))}return a}(a.options)})),...null!=k&&{providerOptions:k}},successfulResponseHandler:eP(f1),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{batchId:b.batchId,...fW(b),warnings:null!=(f=b.warnings)?f:[]}}catch(a){if(fV(a))throw a;throw await fG(a,await fJ(null!=i?i:{}))}}async doGetBatchStatus({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await eL(this.config.headers):void 0;try{let{value:e}=await eI({url:this.getBatchUrl("status"),headers:dr(d,b,await eL(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:eP(f2),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return fW(e)}catch(a){if(fV(a))throw a;throw await fG(a,await fJ(null!=d?d:{}))}}async doGetBatchResults({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await eL(this.config.headers):void 0;try{var e;let f,{value:g}=await eI({url:this.getBatchUrl("results"),headers:dr(d,b,await eL(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:async({response:a})=>{let b=dA(a);if(null==a.body)throw new c5({});return{responseHeaders:b,value:eQ({stream:a.body,schema:fY})}},failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return e=fX(g),f=!1,new ReadableStream({async pull(a){if(!f)try{let{value:b,done:c}=await e.next();c?a.close():a.enqueue(b)}catch(b){a.error(b)}},async cancel(a){if(f=!0,e.return)try{await e.return(a)}catch(a){}}})}catch(a){if(fV(a))throw a;throw await fG(a,await fJ(null!=d?d:{}))}}getBatchUrl(a){return`${this.config.baseURL}/batch/${a}`}};function fU(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}function fV(a){return!!(a instanceof Error||a instanceof DOMException)&&("AbortError"===a.name||"TimeoutError"===a.name)}function fW(a){var b,c,d,e;let f=function({total:a,pending:b,completed:c,failed:d}){if(d1(a)&&d1(b)&&d1(c)&&d1(d)&&b+c+d===a)return{total:a,pending:b,completed:c,failed:d}}({total:null==(b=a.requestCounts)?void 0:b.total,pending:null==(c=a.requestCounts)?void 0:c.pending,completed:null==(d=a.requestCounts)?void 0:d.completed,failed:null==(e=a.requestCounts)?void 0:e.failed});return{status:a.status,...null!=a.rawStatus&&{rawStatus:a.rawStatus},...null!=f&&{requestCounts:f},...null!=a.error&&{error:{message:a.error.message,...null!=a.error.type&&{type:a.error.type},...null!=a.error.code&&{code:a.error.code},...null!=a.error.statusCode&&{statusCode:a.error.statusCode}}},...null!=a.createdAt&&{createdAt:a.createdAt},...null!=a.expiresAt&&{expiresAt:a.expiresAt},...null!=a.providerMetadata&&{providerMetadata:a.providerMetadata}}}async function*fX(a){var b;for await(let c of a){if("succeeded"===c.status){let a=null==(b=c.result)?void 0:b.response;void 0!==a&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp))}yield c}}var fY=e4.object({type:e4.literal("text"),id:e4.string(),status:e4.enum(["cancelled","expired","failed","succeeded"])}).catchall(e4.unknown()),fZ=e4.object({message:e4.string(),type:e4.string().nullish(),code:e4.string().nullish(),statusCode:e4.number().nullish()}),f$=e4.object({total:e4.number().nullish(),pending:e4.number().nullish(),completed:e4.number().nullish(),failed:e4.number().nullish()}),f_=e4.record(e4.string(),e4.record(e4.string(),e4.unknown())),f0=e4.object({status:e4.enum(["completed","failed","pending"]),rawStatus:e4.string().nullish(),requestCounts:f$.nullish(),error:fZ.nullish(),createdAt:e4.string().nullish(),expiresAt:e4.string().nullish(),providerMetadata:f_.nullish()}),f1=f0.extend({batchId:e4.string(),warnings:e4.array(e4.object({requestId:e4.string().nullish(),warning:e4.unknown()}).catchall(e4.unknown())).nullish()}),f2=f0,f3=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}static[bX](a){return eW({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs(a){let{abortSignal:b,...c}=a;return{args:this.maybeEncodeFileParts(c),warnings:[]}}async doGenerate(a){var b;let{args:c,warnings:d}=await this.getArgs(a),{abortSignal:e}=a,f=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:g,value:h,rawValue:i}=await eI({url:this.getUrl(),headers:dr(f,a.headers,this.getModelConfigHeaders(this.modelId,!1),await eL(this.config.o11yHeaders)),body:c,successfulResponseHandler:eP(e4.any()),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{...h,request:{body:c},response:{headers:g,body:i},warnings:[...null!=(b=h.warnings)?b:[],...d]}}catch(a){throw await fG(a,await fJ(null!=f?f:{}))}}async doStream(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await eL(this.config.headers):void 0;try{let f,{value:g,responseHeaders:h}=await eI({url:this.getUrl(),headers:dr(e,a.headers,this.getModelConfigHeaders(this.modelId,!0),await eL(this.config.o11yHeaders)),body:b,successfulResponseHandler:(f=e4.any(),async({response:a,url:b,requestBodyValues:c})=>{let d=dA(a);if(null==a.body)throw new c5({});return{responseHeaders:d,value:eG({stream:function({stream:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e}){let f=a.getReader(),g=!1,h=()=>{g||(f.releaseLock(),g=!0)};return new ReadableStream({async pull(a){try{let{done:b,value:c}=await f.read();b?(h(),a.close()):a.enqueue(c)}catch(f){if(h(),dC(f))return void a.error(f);a.error(dF({error:new c1({message:"Failed to process successful response",cause:f,statusCode:d,url:b,responseHeaders:e,requestBodyValues:c}),url:b,requestBodyValues:c}))}},async cancel(a){try{await f.cancel(a)}finally{h()}}})}({stream:a.body,url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d}),schema:f})}}),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{stream:g.pipeThrough(new TransformStream({start(a){c.length>0&&a.enqueue({type:"stream-start",warnings:c})},transform(b,c){if(b.success){let d=b.value;("raw"!==d.type||a.includeRawChunks)&&("response-metadata"===d.type&&d.timestamp&&"string"==typeof d.timestamp&&(d.timestamp=new Date(d.timestamp)),c.enqueue(d))}else c.error(b.error)}})),request:{body:b},response:{headers:h}}}catch(a){throw await fG(a,await fJ(null!=e?e:{}))}}maybeEncodeFileParts(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=f4(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=f4(b.data))}return a}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(a,b){return{"ai-language-model-specification-version":"4","ai-language-model-id":a,"ai-language-model-streaming":String(b)}}};function f4(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}var f5=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[bX](a){return eW({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doEmbed({values:a,headers:b,abortSignal:c,providerOptions:d}){var e,f;let g=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await eI({url:this.getUrl(),headers:dr(g,null!=b?b:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{values:a,...d?{providerOptions:d}:{}},successfulResponseHandler:eP(f7),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:null!=(e=i.usage)?e:void 0,providerMetadata:i.providerMetadata,response:{headers:h,body:j},warnings:null!=(f=i.warnings)?f:[]}}catch(a){throw await fG(a,await fJ(null!=g?g:{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}},f6=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),f7=ez(()=>eB(e4.object({embeddings:e4.array(e4.array(e4.number())),usage:e4.object({tokens:e4.number()}).nullish(),warnings:e4.array(f6).optional(),providerMetadata:e4.record(e4.string(),e4.record(e4.string(),e4.unknown())).optional()}))),f8=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}static[bX](a){return eW({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doGenerate({prompt:a,n:b,size:c,aspectRatio:d,seed:e,files:f,mask:g,providerOptions:h,headers:i,abortSignal:j}){var k,l,m,n;let o=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:p,value:q}=await eI({url:this.getUrl(),headers:dr(o,null!=i?i:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{prompt:a,n:b,...c&&{size:c},...d&&{aspectRatio:d},...e&&{seed:e},...h&&{providerOptions:h},...f&&{files:f.map(a=>f9(a))},...g&&{mask:f9(g)}},successfulResponseHandler:eP(gd),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...j&&{abortSignal:j},fetch:this.config.fetch});return{images:q.images,...null!=q.isRetryable&&{isRetryable:q.isRetryable},warnings:null!=(k=q.warnings)?k:[],providerMetadata:q.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:p},...null!=q.usage&&{usage:{inputTokens:null!=(l=q.usage.inputTokens)?l:void 0,outputTokens:null!=(m=q.usage.outputTokens)?m:void 0,totalTokens:null!=(n=q.usage.totalTokens)?n:void 0}}}}catch(a){throw await fG(a,await fJ(null!=o?o:{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function f9(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:dz(a.data)}:a}var ga=e4.object({images:e4.array(e4.unknown()).optional()}).catchall(e4.unknown()),gb=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gc=e4.object({inputTokens:e4.number().nullish(),outputTokens:e4.number().nullish(),totalTokens:e4.number().nullish()}),gd=e4.object({images:e4.array(e4.string()),isRetryable:e4.boolean().optional(),warnings:e4.array(gb).optional(),providerMetadata:e4.record(e4.string(),ga).optional(),usage:gc.optional()}),ge=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(a){var b,c;let{headers:d,abortSignal:e}=a,f=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:g,value:h}=await eI({url:this.getUrl(),headers:dr(f,null!=d?d:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(a),successfulResponseHandler:async({response:a,url:b,requestBodyValues:c})=>{if(null==a.body)throw new c1({message:"SSE response body is empty",url:b,requestBodyValues:c,statusCode:a.status});let d=eG({stream:a.body,schema:gj}).getReader(),{done:e,value:f}=await d.read();if(d.releaseLock(),e||!f)throw new c1({message:"SSE stream ended without a data event",url:b,requestBodyValues:c,statusCode:a.status});if(!f.success)throw new c1({message:"Failed to parse video SSE event",cause:f.error,url:b,requestBodyValues:c,statusCode:a.status});let g=f.value;if("error"===g.type)throw new c1({message:g.message,statusCode:g.statusCode,url:b,requestBodyValues:c,responseHeaders:Object.fromEntries([...a.headers]),responseBody:JSON.stringify(g),data:{error:{message:g.message,type:g.errorType,param:g.param}}});return{value:{videos:g.videos,warnings:g.warnings,providerMetadata:g.providerMetadata},responseHeaders:Object.fromEntries([...a.headers])}},failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{videos:h.videos,warnings:null!=(b=h.warnings)?b:[],providerMetadata:null!=(c=h.providerMetadata)?c:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:g}}}catch(a){throw await fG(a,await fJ(null!=f?f:{}))}}async handleWebhookOption({webhook:a}){let{url:b,received:c}=await a();return{webhookUrl:b,received:c}}async doStart(a){var b,c;let{headers:d,abortSignal:e,webhookUrl:f}=a,g=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:h,value:i}=await eI({url:this.getStartUrl(),headers:dr(g,null!=d?d:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{...this.buildRequestBody(a),...f&&{callbackUrl:f}},successfulResponseHandler:eP(gk),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{operation:i.operation,warnings:null!=(b=i.warnings)?b:[],providerMetadata:null!=(c=i.providerMetadata)?c:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:h}}}catch(a){throw await fG(a,await fJ(null!=g?g:{}))}}async doStatus({operation:a,abortSignal:b,headers:c}){var d,e,f,g,h,i;let j=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:k,value:l}=await eI({url:this.getStatusUrl(),headers:dr(j,null!=c?c:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{operation:a},successfulResponseHandler:eP(gl),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...b&&{abortSignal:b},fetch:this.config.fetch}),m={timestamp:new Date,modelId:this.modelId,headers:k};if("completed"===l.status)return{status:"completed",videos:l.videos,warnings:null!=(d=l.warnings)?d:[],providerMetadata:null!=(e=l.providerMetadata)?e:void 0,response:m};if("error"===l.status)return{status:"error",error:l.error,providerMetadata:null!=(f=l.providerMetadata)?f:void 0,response:m};if("cancelled"===l.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:null!=(g=l.providerMetadata)?g:void 0,response:m};return{status:"pending",warnings:null!=(h=l.warnings)?h:[],providerMetadata:null!=(i=l.providerMetadata)?i:void 0,response:m}}catch(a){throw await fG(a,await fJ(null!=j?j:{}))}}buildRequestBody({prompt:a,n:b,aspectRatio:c,resolution:d,duration:e,fps:f,seed:g,generateAudio:h,image:i,frameImages:j,inputReferences:k,providerOptions:l}){return{prompt:a,n:b,...c&&{aspectRatio:c},...d&&{resolution:d},...e&&{duration:e},...f&&{fps:f},...g&&{seed:g},...void 0!==h&&{generateAudio:h},...l&&{providerOptions:l},...i&&{image:gf(i)},...j&&{frameImages:j.map(a=>({...a,image:gf(a.image)}))},...k&&{inputReferences:k.map(a=>gf(a))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function gf(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:dz(a.data)}:a}var gg=e4.object({videos:e4.array(e4.unknown()).optional()}).catchall(e4.unknown()),gh=e4.union([e4.object({type:e4.literal("url"),url:e4.string(),mediaType:e4.string()}),e4.object({type:e4.literal("base64"),data:e4.string(),mediaType:e4.string()})]),gi=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gj=e4.discriminatedUnion("type",[e4.object({type:e4.literal("result"),videos:e4.array(gh),warnings:e4.array(gi).optional(),providerMetadata:e4.record(e4.string(),gg).optional()}),e4.object({type:e4.literal("error"),message:e4.string(),errorType:e4.string(),statusCode:e4.number(),param:e4.unknown().nullable()})]),gk=e4.object({operation:e4.unknown(),warnings:e4.array(gi).nullish(),providerMetadata:e4.record(e4.string(),gg).nullish()}),gl=e4.discriminatedUnion("status",[e4.object({status:e4.literal("pending"),warnings:e4.array(gi).nullish(),providerMetadata:e4.record(e4.string(),gg).nullish()}),e4.object({status:e4.literal("completed"),videos:e4.array(gh),warnings:e4.array(gi).nullish(),providerMetadata:e4.record(e4.string(),gg).nullish()}),e4.object({status:e4.literal("error"),error:e4.string(),providerMetadata:e4.record(e4.string(),gg).nullish()}),e4.object({status:e4.literal("cancelled"),providerMetadata:e4.record(e4.string(),gg).nullish()})]),gm=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedQuestionTypes=["choice","score","boolean"]}get provider(){return this.config.provider}async doEvaluate({state:a,questions:b,headers:c,abortSignal:d,providerOptions:e}){var f;let g=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await eI({url:this.getUrl(),headers:dr(g,null!=c?c:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{state:a,questions:b,...e?{providerOptions:e}:{}},successfulResponseHandler:eP(gp),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{answers:i.answers,...i.rounding?{rounding:i.rounding}:{},...i.usage?{usage:i.usage}:{},warnings:null!=(f=i.warnings)?f:[],providerMetadata:i.providerMetadata,response:{modelId:this.modelId,headers:h,body:j}}}catch(a){throw await fG(a,await fJ(null!=g?g:{}))}}getUrl(){return`${this.config.baseURL}/evaluation-model`}getModelConfigHeaders(){return{"ai-evaluation-model-specification-version":"4","ai-model-id":this.modelId}}},gn=e4.discriminatedUnion("type",[e4.object({type:e4.literal("choice"),choice:e4.string(),probabilities:e4.record(e4.string(),e4.number()).optional()}),e4.object({type:e4.literal("score"),score:e4.number(),probabilities:e4.record(e4.string(),e4.number()).optional()}),e4.object({type:e4.literal("boolean"),probability:e4.number()})]),go=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gp=ez(()=>eB(e4.object({answers:e4.record(e4.string(),gn),rounding:e4.object({probabilityDecimals:e4.number().optional(),scoreDecimals:e4.number().optional()}).optional(),usage:e4.object({inputTokens:e4.number().optional(),outputTokens:e4.number().optional()}).optional(),warnings:e4.array(go).optional(),providerMetadata:e4.record(e4.string(),e4.record(e4.string(),e4.unknown())).optional()}))),gq=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:a,query:b,topN:c,headers:d,abortSignal:e,providerOptions:f}){var g;let h=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:i,value:j,rawValue:k}=await eI({url:this.getUrl(),headers:dr(h,null!=d?d:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{documents:a,query:b,...null!=c?{topN:c}:{},...f?{providerOptions:f}:{}},successfulResponseHandler:eP(gs),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{ranking:j.ranking,providerMetadata:j.providerMetadata,response:{headers:i,body:k},warnings:null!=(g=j.warnings)?g:[]}}catch(a){throw await fG(a,await fJ(null!=h?h:{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}},gr=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gs=ez(()=>eB(e4.object({ranking:e4.array(e4.object({index:e4.number(),relevanceScore:e4.number()})),warnings:e4.array(gr).optional(),providerMetadata:e4.record(e4.string(),e4.record(e4.string(),e4.unknown())).optional()}))),gt=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:a,voice:b,outputFormat:c,instructions:d,speed:e,language:f,providerOptions:g,headers:h,abortSignal:i}){var j;let k=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:l,value:m,rawValue:n}=await eI({url:this.getUrl(),headers:dr(k,null!=h?h:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{text:a,...b&&{voice:b},...c&&{outputFormat:c},...d&&{instructions:d},...null!=e&&{speed:e},...f&&{language:f},...g&&{providerOptions:g}},successfulResponseHandler:eP(gw),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...i&&{abortSignal:i},fetch:this.config.fetch});return{audio:m.audio,warnings:null!=(j=m.warnings)?j:[],providerMetadata:m.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:l,body:n}}}catch(a){throw await fG(a,await fJ(null!=k?k:{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}},gu=e4.object({}).catchall(e4.unknown()),gv=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gw=e4.object({audio:e4.string(),warnings:e4.array(gv).optional(),providerMetadata:e4.record(e4.string(),gu).optional()}),gx=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:a,mediaType:b,providerOptions:c,headers:d,abortSignal:e}){var f,g,h,i;let j=this.config.headers?await eL(this.config.headers):void 0;try{let{responseHeaders:k,value:l,rawValue:m}=await eI({url:this.getUrl(),headers:dr(j,null!=d?d:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),body:{audio:a instanceof Uint8Array?dz(a):a,mediaType:b,...c&&{providerOptions:c}},successfulResponseHandler:eP(gB),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{text:l.text,segments:null!=(f=l.segments)?f:[],language:null!=(g=l.language)?g:void 0,durationInSeconds:null!=(h=l.durationInSeconds)?h:void 0,warnings:null!=(i=l.warnings)?i:[],providerMetadata:l.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:k,body:m}}}catch(a){throw await fG(a,await fJ(null!=j?j:{}))}}async doStream(a){var b,c,d,e,f;let g,h,i,j=null!=(d=null==(c=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:c.call(b))?d:new Date,k=dr(await eL(null!=(e=this.config.headers)?e:{}),null!=(f=a.headers)?f:{},this.getModelConfigHeaders(),await eL(this.config.o11yHeaders)),l=await fJ(k),m={type:"transcription-stream.start",inputAudioFormat:a.inputAudioFormat,...null!=a.providerOptions&&{providerOptions:a.providerOptions},...null!=a.includeRawChunks&&{includeRawChunks:a.includeRawChunks}};return{stream:function({webSocket:a,url:b,protocols:c,headers:d,startFrame:e,audio:f,abortSignal:g,authMethod:h}){let i=!1,j=()=>{};return new ReadableStream({start:k=>{let l,m,n,o=!1,p=!1;j=a=>{null!=l?l.cancel().catch(()=>{}):f.cancel().catch(()=>{}),null==n||n.close(a)};let q=a=>{i||(i=!0,j(),gC(k,a,h))},r=async a=>{let b=f.getReader();l=b;try{for(;;){let{done:c,value:d}=await b.read();if(c||i)break;let e="string"==typeof d?function(a){let b=dy(a.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(b,a=>a.codePointAt(0))}(d):d;for(let b=0;b<e.length&&!i;b+=65536)a.send(e.subarray(b,b+65536)),await dw(a)}}finally{b.releaseLock(),l===b&&(l=void 0)}i||p||a.send(JSON.stringify({type:"transcription-stream.audio-done"}))};n=function({url:a,protocols:b,headers:c,webSocket:d,abortSignal:e,onOpen:f,onMessageText:g,onProcessingError:h,onSocketError:i,onClose:j,onAbort:k}){var l,m;let n,o,p=a=>{null!=o&&(null==e||e.removeEventListener("abort",o),o=void 0);try{null==n||n.close(a)}catch(a){}};if(null==e?void 0:e.aborted)return null==k||k(null!=(l=e.reason)?l:Error("Aborted")),{socket:void 0,close:p};try{n=new(function(a){let b=null!=a?a:globalThis.WebSocket;if(null==b)throw Error("No WebSocket implementation available.");return b}(d))(a,b,{headers:(m=null!=c?c:{},Object.fromEntries(Object.entries(m).filter(([a,b])=>null!=b)))})}catch(a){return h(a),{socket:void 0,close:p}}null!=e&&null!=k&&(o=()=>{var a;return k(null!=(a=e.reason)?a:Error("Aborted"))},e.addEventListener("abort",o,{once:!0}));let q=n;n.onopen=()=>{try{null==f||f(q)}catch(a){h(a)}};let r=Promise.resolve();return n.onmessage=a=>{r=r.then(()=>dv(a.data)).then(a=>g(a)).catch(h)},n.onerror=()=>{r=r.then(()=>null==i?void 0:i()).catch(h)},n.onclose=a=>{let b="number"==typeof(null==a?void 0:a.code)?a.code:void 0,c="string"==typeof(null==a?void 0:a.reason)?a.reason:void 0;r=r.then(()=>null==j?void 0:j({code:b,reason:c})).catch(h)},{socket:n,close:p}}({url:b,protocols:c,headers:d,webSocket:a,abortSignal:g,onAbort:a=>{i||(i=!0,j(),k.error(a))},onProcessingError:q,onOpen:a=>{a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:a=>{if(i)return;let b=function(a){let b;try{b=d5(a)}catch(a){return}if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b;switch(c.type){case"stream-start":return Array.isArray(c.warnings)&&c.warnings.every(e$)?c:void 0;case"transcript-delta":return eX(c.delta)&&eZ(c.id,eX)&&eZ(c.providerMetadata,d_)?c:void 0;case"transcript-partial":return eX(c.text)&&eZ(c.id,eX)&&eZ(c.startSecond,eY)&&eZ(c.durationInSeconds,eY)&&eZ(c.channelIndex,eY)&&eZ(c.providerMetadata,d_)?c:void 0;case"transcript-final":return eX(c.text)&&eZ(c.id,eX)&&eZ(c.startSecond,eY)&&eZ(c.endSecond,eY)&&eZ(c.channelIndex,eY)&&eZ(c.providerMetadata,d_)?c:void 0;case"finish":return eX(c.text)&&Array.isArray(c.segments)&&c.segments.every(e_)&&eZ(c.language,eX)&&eZ(c.durationInSeconds,eY)&&eZ(c.providerMetadata,d_)?c:void 0;case"response-metadata":{if(!(eZ(c.modelId,eX)&&eZ(c.headers,d_)))return;let a=c.timestamp;if(null==a)return{...c,timestamp:void 0};if("string"!=typeof a)return;let b=new Date(a);return Number.isNaN(b.getTime())?void 0:{...c,timestamp:b}}case"raw":return"rawValue"in c?c:void 0;case"error":return"error"in c?c:void 0;default:return}}(a);if(null!=b){if("finish"===b.type){i=!0,k.enqueue(b),k.close(),j(1e3);return}"error"===b.type&&(o=!0,m=b.error,p=!0,null!=l?(l.cancel().catch(()=>{}),l=void 0):f.cancel().catch(()=>{})),k.enqueue(b)}},onSocketError:()=>{q(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(o){if(i)return;gE(m,h).then(q);return}q(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{i||(i=!0,j())}})}({webSocket:this.config.webSocket,url:gy(this.config.baseURL,this.modelId),protocols:null==(i=(null==(h=(g=dH(k)).authorization)?void 0:h.startsWith("Bearer "))?h.slice(7):void 0)?[e2]:e3(e2,i,{teamIdOrSlug:g[fI]}),headers:k,startFrame:m,audio:a.audio,abortSignal:a.abortSignal,authMethod:l}),request:{body:m},response:{timestamp:j,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function gy(a,b){let c=new URL(`${a.replace(/^http/,"ws")}/transcription-model`);return c.searchParams.set("ai-model-id",b),c.toString()}var gz=e4.object({}).catchall(e4.unknown()),gA=e4.discriminatedUnion("type",[e4.object({type:e4.literal("unsupported"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("compatibility"),feature:e4.string(),details:e4.string().optional()}),e4.object({type:e4.literal("deprecated"),setting:e4.string(),message:e4.string()}),e4.object({type:e4.literal("other"),message:e4.string()})]),gB=e4.object({text:e4.string(),segments:e4.array(e4.object({text:e4.string(),startSecond:e4.number(),endSecond:e4.number()})).optional(),language:e4.string().nullish(),durationInSeconds:e4.number().nullish(),warnings:e4.array(gA).optional(),providerMetadata:e4.record(e4.string(),gz).optional()});async function gC(a,b,c){a.error(await fG(b,c))}var gD={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function gE(a,b){return"object"==typeof a&&null!=a&&"message"in a&&"string"==typeof a.message&&"type"in a&&"string"==typeof a.type&&a.type in gD?fA({response:{error:{message:a.message,type:a.type}},statusCode:gD[a.type],authMethod:b}):Error(`AI Gateway transcription stream failed: ${null!=a&&"object"==typeof a&&"message"in a&&"string"==typeof a.message?a.message:c7(a)}`)}var gF=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=await this.config.createClientSecret({modelId:this.modelId,...(null==a?void 0:a.expiresAfterSeconds)!=null&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:e.token,url:(b=this.config.baseURL,c=this.modelId,(d=new URL(`${b.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",c),d.toString()),...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}getWebSocketConfig(a){return{url:a.url,protocols:e3("ai-gateway-realtime.v1",a.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(a){return a}serializeClientEvent(a){return a}buildSessionConfig(a){return a}},gG=eK({id:"gateway.exa_search",inputSchema:ez(()=>eB(e4.object({query:e4.string().describe("Natural-language web search query. This is required."),type:e4.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:e4.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:e4.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:e4.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:e4.array(e4.string()).optional().describe("Only return results from these domains."),exclude_domains:e4.array(e4.string()).optional().describe("Exclude results from these domains."),start_published_date:e4.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:e4.string().optional().describe("Only return links published before this ISO 8601 date."),contents:e4.object({text:e4.union([e4.boolean(),e4.object({max_characters:e4.number().optional(),include_html_tags:e4.boolean().optional(),verbosity:e4.enum(["compact","standard","full"]).optional(),include_sections:e4.array(e4.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:e4.array(e4.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:e4.union([e4.boolean(),e4.object({query:e4.string().optional(),max_characters:e4.number().optional()})]).optional(),max_age_hours:e4.number().optional(),livecrawl_timeout:e4.number().optional(),subpages:e4.number().optional(),subpage_target:e4.union([e4.string(),e4.array(e4.string())]).optional(),extras:e4.object({links:e4.number().optional(),image_links:e4.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:ez(()=>eB(e4.union([e4.object({requestId:e4.string(),searchType:e4.string().optional(),resolvedSearchType:e4.string().optional(),results:e4.array(e4.object({title:e4.string(),url:e4.string(),id:e4.string(),publishedDate:e4.string().nullable().optional(),author:e4.string().nullable().optional(),image:e4.string().nullable().optional(),favicon:e4.string().nullable().optional(),text:e4.string().optional(),highlights:e4.array(e4.string()).optional(),highlightScores:e4.array(e4.number()).optional(),summary:e4.string().optional(),subpages:e4.array(e4.any()).optional(),extras:e4.object({links:e4.array(e4.string()).optional(),imageLinks:e4.array(e4.string()).optional()}).optional()})),costDollars:e4.object({total:e4.number().optional(),search:e4.record(e4.string(),e4.number()).optional()}).optional()}),e4.object({error:e4.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:e4.number().optional(),message:e4.string()})])))}),gH=eK({id:"gateway.parallel_search",inputSchema:ez(()=>eB(e4.object({objective:e4.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:e4.array(e4.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:e4.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:e4.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:e4.object({include_domains:e4.array(e4.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:e4.array(e4.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:e4.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:e4.object({max_chars_per_result:e4.number().optional().describe("Maximum characters per result."),max_chars_total:e4.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:e4.object({max_age_seconds:e4.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:ez(()=>eB(e4.union([e4.object({searchId:e4.string(),results:e4.array(e4.object({url:e4.string(),title:e4.string(),excerpt:e4.string(),publishDate:e4.string().nullable().optional(),relevanceScore:e4.number().optional()}))}),e4.object({error:e4.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:e4.number().optional(),message:e4.string()})])))}),gI=eK({id:"gateway.perplexity_search",inputSchema:ez(()=>eB(e4.object({query:e4.union([e4.string(),e4.array(e4.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:e4.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:e4.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:e4.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:e4.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:e4.array(e4.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:e4.array(e4.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:e4.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:e4.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:e4.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:e4.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:e4.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:ez(()=>eB(e4.union([e4.object({results:e4.array(e4.object({title:e4.string(),url:e4.string(),snippet:e4.string(),date:e4.string().optional(),lastUpdated:e4.string().optional()})),id:e4.string()}),e4.object({error:e4.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:e4.number().optional(),message:e4.string()})])))}),gJ=e4.object({count:e4.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:e4.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:e4.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:e4.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:e4.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:e4.array(e4.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:e4.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),gK=e4.object({count:e4.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:e4.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:e4.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:e4.array(e4.string()).optional().describe("Only return results from these bare domains."),exclude_domains:e4.array(e4.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:e4.number().optional().describe("Maximum characters in each web-result snippet."),highlights:e4.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:e4.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:e4.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:e4.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),gL=ez(()=>eB(e4.object({query:e4.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:e4.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:e4.object({data:gJ.optional(),web:gK.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:e4.object({latitude:e4.number().describe("Latitude between -90 and 90."),longitude:e4.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:e4.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:e4.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:e4.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:e4.object({image_dark_mode:e4.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:e4.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:e4.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),gM=e4.union([e4.boolean(),e4.number(),e4.string()]).nullable(),gN=e4.object({content_format:e4.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:e4.number().optional(),data:e4.string().nullish(),records:e4.array(e4.record(e4.string(),gM)).nullish(),dataset:e4.object({columns:e4.array(e4.object({name:e4.string(),type:e4.enum(["boolean","date","datetime","number","string"]),unit:e4.string().nullish()})),rows:e4.array(e4.array(gM)),total_rows:e4.number(),truncated:e4.boolean(),ref:e4.string(),sources:e4.array(e4.object({name:e4.string(),index:e4.enum(["data","web"]).optional()})),provenance:e4.enum(["query","web_extraction"]).optional()}).nullish(),card_data:e4.object({}).passthrough().nullish(),card_data_schema:e4.object({}).passthrough().nullish(),url:e4.string().nullish(),expires_at:e4.string().nullish(),total_rows:e4.number().nullish(),truncated:e4.boolean().optional(),export_pricing:e4.object({baseline_usd:e4.number(),free_rows:e4.number(),max_rows_ceiling:e4.number(),row_cpm_usd:e4.number()}).nullish(),manifest:e4.array(e4.object({dtype:e4.enum(["boolean","date","datetime","number","string"]).nullish(),entity:e4.string().nullish(),metric:e4.string().nullish(),name:e4.string().nullish(),unit:e4.string().nullish()})).nullish()}).passthrough(),gO=e4.object({card_id:e4.string().nullish(),title:e4.string().nullish(),description:e4.string().nullish(),semantic_description:e4.string().nullish(),webpage_url:e4.string().nullish(),image_url:e4.string().nullish(),embed_url:e4.string().nullish(),sources:e4.array(e4.object({source_name:e4.string().nullish(),source_description:e4.string().nullish(),source_index:e4.enum(["data","web"]),source_text:e4.string().nullish(),url:e4.string().nullish()})).nullish(),methodologies:e4.array(e4.object({methodology_name:e4.string().nullable(),methodology_description:e4.string().nullable()})).nullish(),source_indexes:e4.array(e4.enum(["data","web"])).nullish(),card_type:e4.string().nullish(),relevance:e4.enum(["High","Low","Medium"]).nullish(),content:gN.nullish(),exportable:e4.boolean().optional(),nodes:e4.array(e4.object({id:e4.string(),type:e4.enum(["entity","metric"]),name:e4.string(),description:e4.string().nullish()})).nullish(),metric_definitions:e4.array(e4.object({name:e4.string(),definition:e4.string()})).nullish(),data_freshness:e4.object({coverage_end:e4.string().nullish(),data_as_of:e4.string().nullish(),last_updated:e4.string().nullish()}).nullish()}).passthrough(),gP=e4.object({title:e4.string(),url:e4.string(),snippet:e4.string().nullish(),source_name:e4.string().nullish(),publish_date:e4.string().nullish(),content:gN.nullish()}).passthrough(),gQ=eK({id:"gateway.tako_search",inputSchema:gL,outputSchema:ez(()=>eB(e4.union([e4.object({request_id:e4.string(),cards:e4.array(gO).optional(),web_results:e4.array(gP).optional(),usage:e4.object({total_cost_usd:e4.number(),compute:e4.object({cost_usd:e4.number()}).nullish(),data:e4.object({cost_usd:e4.number(),datasets:e4.number()}).nullish()}).nullish(),related:e4.array(e4.object({}).passthrough()).nullish()}).passthrough(),e4.object({error:e4.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:e4.number().optional(),message:e4.string()})])))}),gR={exaSearch:(a={})=>gG(a),parallelSearch:(a={})=>gH(a),perplexitySearch:(a={})=>gI(a),takoSearch:(a={})=>gQ(a)};async function gS(){var a;return null==(a=(0,e1.getContext)().headers)?void 0:a["x-vercel-id"]}var gT=e4.object({token:e4.string(),expiresAt:e4.number().nullish()});async function gU(a){let b=d0({settingValue:a.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return b?{token:b,authMethod:"api-key"}:{token:await (0,e1.getVercelOidcToken)(),authMethod:"oidc"}}!function(a={}){var b,c,d;let e=null,f=null,g=null!=(b=a.metadataCacheRefreshMillis)?b:3e5,h=0,i=null!=(c=null==(d=a.baseURL)?void 0:d.replace(/\/$/,""))?c:"https://ai-gateway.vercel.sh/v4/ai",j=b=>dI({Authorization:`Bearer ${b.token}`,"ai-gateway-protocol-version":"0.0.1",[fH]:b.authMethod,...null!=a.teamIdOrSlug?{[fI]:a.teamIdOrSlug}:{},...a.headers},"ai-sdk/gateway/4.0.86"),k=async()=>{try{return j(await gU(a))}catch(a){throw e9.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},l=async()=>{try{return await gU(a)}catch(a){throw e9.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},m=async b=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let c=j(await l()),d=new URL("/v1/realtime/client-secrets",i).toString();try{let{value:e}=await eI({url:d,headers:c,body:{model:b.modelId,...null!=b.routeKind&&{routeKind:b.routeKind},...null!=b.expiresAfterSeconds&&{expiresIn:b.expiresAfterSeconds}},successfulResponseHandler:eP(gT),failedResponseHandler:eO({errorSchema:e4.any(),errorToMessage:a=>{var b;return null!=(b=c7(a))?b:"unknown error"}}),fetch:a.fetch});return{token:e.token,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}catch(a){throw await fG(a,await fJ(c))}},n=()=>{let a=d0({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),b=d0({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),c=d0({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),d=d0({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let e=await gS();return{...a&&{"ai-o11y-deployment-id":a},...b&&{"ai-o11y-environment":b},...c&&{"ai-o11y-region":c},...e&&{"ai-o11y-request-id":e},...d&&{"ai-o11y-project-id":d}}}},o=b=>new f3(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()}),p=async()=>{var b,c,d;let j=null!=(d=null==(c=null==(b=a._internal)?void 0:b.currentDate)?void 0:c.call(b).getTime())?d:Date.now();return(!e||j-h>g)&&(h=j,e=new fM({baseURL:i,headers:k,fetch:a.fetch}).getAvailableModels().then(a=>(f=a,a)).catch(async a=>{throw await fG(a,await fJ(await k()))})),f?Promise.resolve(f):e},q=async()=>new fM({baseURL:i,headers:k,fetch:a.fetch}).getCredits().catch(async a=>{throw await fG(a,await fJ(await k()))}),r=async b=>new fP({baseURL:i,headers:k,fetch:a.fetch}).getSpendReport(b).catch(async a=>{throw await fG(a,await fJ(await k()))}),s=async b=>new fR({baseURL:i,headers:k,fetch:a.fetch}).getGenerationInfo(b).catch(async a=>{throw await fG(a,await fJ(await k()))}),t=function(a){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return o(a)};t.specificationVersion="v4",t.getAvailableModels=p,t.getCredits=q,t.getSpendReport=r,t.getGenerationInfo=s,t.imageModel=b=>new f8(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()}),t.languageModel=o,t.experimental_batch=()=>new fT({provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});let u=b=>new f5(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.embeddingModel=u,t.textEmbeddingModel=u,t.videoModel=b=>new ge(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});let v=b=>new gq(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.rerankingModel=v,t.reranking=v;let w=b=>new gm(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.evaluationModel=w,t.evaluation=w;let x=b=>new gt(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.speechModel=x,t.speech=x;let y=b=>new gx(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n(),webSocket:a.webSocket});t.transcriptionModel=y,t.transcription=y,t.experimental_transcription=Object.assign(a=>y(a),{getToken:async a=>{let b=await m({modelId:a.model,routeKind:"transcription",...null!=a.expiresAfterSeconds&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:b.token,url:gy(i,a.model),...null!=b.expiresAt&&{expiresAt:b.expiresAt}}}});let z=b=>new gF(b,{provider:"gateway.realtime",baseURL:i,teamIdOrSlug:a.teamIdOrSlug,createClientSecret:m});t.experimental_realtime=Object.assign(a=>z(a),{getToken:async a=>{let{model:b,...c}=a,d=z(b),e=await d.doCreateClientSecret(c);return{token:e.token,url:e.url,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}}),t.chat=t.languageModel,t.embedding=t.embeddingModel,t.image=t.imageModel,t.video=t.videoModel,t.tools=gR}();var gV=Object.defineProperty,gW="AI_InvalidArgumentError",gX=`vercel.ai.error.${gW}`,gY=Symbol.for(gX),gZ=class extends(ai=bi,ah=gY,ai){constructor({parameter:a,value:b,message:c}){super({name:gW,message:`Invalid argument for parameter ${a}: ${c}`}),this[ah]=!0,this.parameter=a,this.value=b}static isInstance(a){return bi.hasMarker(a,gX)}},g$=Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError");Symbol.for("vercel.ai.error.AI_InvalidToolInputError");Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");Symbol.for("vercel.ai.error.AI_MissingToolResultsError");Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");var g_="AI_NoObjectGeneratedError",g0=`vercel.ai.error.${g_}`,g1=Symbol.for(g0),g2=class extends(ak=bi,aj=g1,ak){constructor({message:a="No object generated.",cause:b,text:c,response:d,usage:e,finishReason:f}){super({name:g_,message:a,cause:b}),this[aj]=!0,this.text=c,this.response=d,this.usage=e,this.finishReason=f}static isInstance(a){return bi.hasMarker(a,g0)}},g3=Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError");Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchToolError");Symbol.for("vercel.ai.error.AI_StreamProviderError");Symbol.for("vercel.ai.error.AI_ToolCallRepairError");Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError");var g4="AI_UIMessageStreamError",g5=`vercel.ai.error.${g4}`,g6=Symbol.for(g5),g7=class extends(am=bi,al=g6,am){constructor({chunkType:a,chunkId:b,message:c}){super({name:g4,message:c}),this[al]=!0,this.chunkType=a,this.chunkId=b}static isInstance(a){return bi.hasMarker(a,g5)}},g8=Symbol.for("vercel.ai.error.AI_InvalidDataContentError");Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");Symbol.for("vercel.ai.error.AI_MessageConversionError");Symbol.for("vercel.ai.error.AI_RetryError");var g9=!1;function ha({message:a,type:b}){"u">typeof process&&"function"==typeof process.emitWarning?process.emitWarning(a,{type:b}):console.warn(a)}var hb=async({url:a,maxBytes:b,abortSignal:c})=>{var d;let e=a.toString();try{let a=function(a,...b){let c=new Headers(b_(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}({},"ai-sdk/7.0.106",function(a=globalThis){var b,c,d;return a.window?"runtime/browser":(null==(b=a.navigator)?void 0:b.userAgent)?`runtime/${a.navigator.userAgent.toLowerCase()}`:(null==(d=null==(c=a.process)?void 0:c.versions)?void 0:d.node)?`runtime/node.js/${a.process.version.substring(0)}`:a.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}()),f=await cf({url:e,headers:a,abortSignal:c});if(!f.ok)throw await b0(f),new b4({url:e,statusCode:f.status,statusText:f.statusText});return{data:await cg({response:f,url:e,maxBytes:null!=b?b:0x80000000}),mediaType:null!=(d=f.headers.get("content-type"))?d:void 0}}catch(a){if(b4.isInstance(a))throw a;throw new b4({url:e,cause:a})}},hc={array:e0.array,boolean:e0.boolean,custom:e0.custom,discriminatedUnion:e0.discriminatedUnion,enum:e0.enum,instanceof:e0.instanceof,lazy:e0.lazy,literal:e0.literal,looseObject:e0.looseObject,never:e0.never,null:e0.null,number:e0.number,object:e0.object,record:e0.record,string:e0.string,union:e0.union,unknown:e0.unknown},hd=hc.lazy(()=>hc.union([hc.null(),hc.string(),hc.number(),hc.boolean(),hc.record(hc.string(),hd.optional()),hc.array(hd)])),he=hc.record(hc.string(),hc.record(hc.string(),hd.optional())),hf=hc.union([hc.string(),hc.instanceof(Uint8Array),hc.instanceof(ArrayBuffer),hc.custom(function(a){var b,c;return null!=(c=null==(b=globalThis.Buffer)?void 0:b.isBuffer(a))&&c},{message:"Must be a Buffer"})]),hg=hc.record(hc.string(),hc.string()),hh=hc.object({type:hc.literal("text"),text:hc.string(),providerOptions:he.optional()}),hi=hc.object({type:hc.literal("image"),image:hc.union([hf,hc.instanceof(URL),hg]),mediaType:hc.string().optional(),providerOptions:he.optional()}),hj=hc.discriminatedUnion("type",[hc.object({type:hc.literal("data"),data:hf}),hc.object({type:hc.literal("url"),url:hc.instanceof(URL)}),hc.object({type:hc.literal("reference"),reference:hg}),hc.object({type:hc.literal("text"),text:hc.string()})]),hk=hc.discriminatedUnion("type",[hc.object({type:hc.literal("data"),data:hf}),hc.object({type:hc.literal("url"),url:hc.instanceof(URL)})]),hl=hc.object({type:hc.literal("file"),data:hc.union([hj,hf,hc.instanceof(URL),hg]),filename:hc.string().optional(),mediaType:hc.string(),providerOptions:he.optional()}),hm=hc.object({type:hc.literal("reasoning"),text:hc.string(),providerOptions:he.optional()}),hn=hc.object({type:hc.literal("custom"),kind:hc.string().transform(a=>a),providerOptions:he.optional()}),ho=hc.object({type:hc.literal("reasoning-file"),data:hc.union([hk,hf,hc.instanceof(URL)]),mediaType:hc.string(),providerOptions:he.optional()}),hp=hc.object({type:hc.literal("tool-call"),toolCallId:hc.string(),toolName:hc.string(),input:hc.unknown(),providerOptions:he.optional(),providerExecuted:hc.boolean().optional()}),hq=hc.discriminatedUnion("type",[hc.object({type:hc.literal("text"),value:hc.string(),providerOptions:he.optional()}),hc.object({type:hc.literal("json"),value:hd,providerOptions:he.optional()}),hc.object({type:hc.literal("execution-denied"),reason:hc.string().optional(),providerOptions:he.optional()}),hc.object({type:hc.literal("error-text"),value:hc.string(),providerOptions:he.optional()}),hc.object({type:hc.literal("error-json"),value:hd,providerOptions:he.optional()}),hc.object({type:hc.literal("content"),value:hc.array(hc.union([hc.object({type:hc.literal("text"),text:hc.string(),providerOptions:he.optional()}),hc.object({type:hc.literal("file"),data:hj,mediaType:hc.string(),filename:hc.string().optional(),providerOptions:he.optional()}),hc.object({type:hc.literal("file-data"),data:hc.string(),mediaType:hc.string(),filename:hc.string().optional(),providerOptions:he.optional()}),hc.object({type:hc.literal("file-url"),url:hc.string(),mediaType:hc.string().optional(),providerOptions:he.optional()}),hc.object({type:hc.literal("file-id"),fileId:hc.union([hc.string(),hc.record(hc.string(),hc.string())]),providerOptions:he.optional()}),hc.object({type:hc.literal("file-reference"),providerReference:hc.record(hc.string(),hc.string()),providerOptions:he.optional()}),hc.object({type:hc.literal("image-data"),data:hc.string(),mediaType:hc.string(),providerOptions:he.optional()}),hc.object({type:hc.literal("image-url"),url:hc.string(),providerOptions:he.optional()}),hc.object({type:hc.literal("image-file-id"),fileId:hc.union([hc.string(),hc.record(hc.string(),hc.string())]),providerOptions:he.optional()}),hc.object({type:hc.literal("image-file-reference"),providerReference:hc.record(hc.string(),hc.string()),providerOptions:he.optional()}),hc.object({type:hc.literal("custom"),providerOptions:he.optional()})]))})]),hr=hc.object({type:hc.literal("tool-result"),toolCallId:hc.string(),toolName:hc.string(),output:hq,providerOptions:he.optional()}),hs=hc.object({type:hc.literal("tool-approval-request"),approvalId:hc.string(),toolCallId:hc.string(),reason:hc.string().optional()}),ht=hc.object({type:hc.literal("tool-approval-response"),approvalId:hc.string(),approved:hc.boolean(),reason:hc.string().optional()}),hu=hc.object({role:hc.literal("system"),content:hc.string(),providerOptions:he.optional()}),hv=hc.object({role:hc.literal("user"),content:hc.union([hc.string(),hc.array(hc.union([hh,hi,hl]))]),providerOptions:he.optional()}),hw=hc.object({role:hc.literal("assistant"),content:hc.union([hc.string(),hc.array(hc.union([hh,hn,hl,hm,ho,hp,hr,hs]))]),providerOptions:he.optional()}),hx=hc.object({role:hc.literal("tool"),content:hc.array(hc.union([hr,ht])),providerOptions:he.optional()});hc.union([hu,hv,hw,hx]);var hy={},hz={array:()=>hE,choice:()=>hH,json:()=>hI,object:()=>hD,text:()=>hC};for(var hA in hz)gV(hy,hA,{get:hz[hA],enumerable:!0});async function hB(a){if(void 0===a)return{value:void 0,state:"undefined-input"};let b=await cV({text:a});return b.success?{value:b.value,state:"successful-parse"}:(b=await cV({text:function(a){let b=["ROOT"],c=-1,d=null,e=0;function f(a,e,f){switch(a){case'"':c=e,b.pop(),b.push(f),b.push("INSIDE_STRING");break;case"f":case"t":case"n":c=e,d=e,b.pop(),b.push(f),b.push("INSIDE_LITERAL");break;case"-":b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=e,b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"{":c=e,b.pop(),b.push(f),b.push("INSIDE_OBJECT_START");break;case"[":c=e,b.pop(),b.push(f),b.push("INSIDE_ARRAY_START")}}function g(a,d){switch(a){case",":b.pop(),b.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":c=d,b.pop()}}function h(a,d){switch(a){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=d,b.pop()}}for(let i=0;i<a.length;i++){let j=a[i];switch(b[b.length-1]){case"ROOT":f(j,i,"FINISH");break;case"INSIDE_OBJECT_START":switch(j){case'"':b.pop(),b.push("INSIDE_OBJECT_KEY");break;case"}":c=i,b.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===j&&(b.pop(),b.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":f(j,i,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":g(j,i);break;case"INSIDE_STRING":switch(j){case'"':b.pop(),c=i;break;case"\\":b.push("INSIDE_STRING_ESCAPE");break;default:c=i}break;case"INSIDE_ARRAY_START":"]"===j?(c=i,b.pop()):(c=i,f(j,i,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(j){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=i,b.pop();break;default:c=i}break;case"INSIDE_ARRAY_AFTER_COMMA":f(j,i,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":b.pop(),"u"===j?(e=0,b.push("INSIDE_STRING_UNICODE_ESCAPE")):c=i;break;case"INSIDE_STRING_UNICODE_ESCAPE":(j>="0"&&j<="9"||j>="A"&&j<="F"||j>="a"&&j<="f")&&4==++e&&(b.pop(),c=i);break;case"INSIDE_NUMBER":switch(j){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=i;break;case"e":case"E":case"-":case".":break;case",":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"}":b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"]":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i);break;default:b.pop()}break;case"INSIDE_LITERAL":{let e=a.substring(d,i+1);"false".startsWith(e)||"true".startsWith(e)||"null".startsWith(e)?c=i:(b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]?g(j,i):"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i))}}}let i=a.slice(0,c+1);for(let c=b.length-1;c>=0;c--)switch(b[c]){case"INSIDE_STRING":i+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":i+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":i+="]";break;case"INSIDE_LITERAL":{let b=a.substring(d,a.length);"true".startsWith(b)?i+="true".slice(b.length):"false".startsWith(b)?i+="false".slice(b.length):"null".startsWith(b)&&(i+="null".slice(b.length))}}return i}(a)})).success?{value:b.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var hC=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:a})=>a,parsePartialOutput:async({text:a})=>({partial:a}),createElementStreamTransform(){}}),hD=({schema:a,name:b,description:c})=>{let d=cR(a);return{name:"object",responseFormat:cW(d.jsonSchema).then(a=>({type:"json",schema:a,...null!=b&&{name:b},...null!=c&&{description:c}})),async parseCompleteOutput({text:a},b){let c=await cV({text:a});if(!c.success)throw new g2({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});let e=await cU({value:c.value,schema:d});if(!e.success)throw new g2({message:"No object generated: response did not match schema.",cause:e.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return e.value},async parsePartialOutput({text:a}){let b=await hB(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:b.value}}},createElementStreamTransform(){}}},hE=({element:a,minItems:b,maxItems:c,name:d,description:e})=>{if(hF({name:"minItems",value:b}),hF({name:"maxItems",value:c}),null!=b&&null!=c&&b>c)throw new gZ({parameter:"minItems",value:b,message:"minItems must be less than or equal to maxItems"});let f=cR(a);return{name:"array",responseFormat:cW(f.jsonSchema).then(a=>{let{$schema:f,definitions:g,$defs:h,...i}=a;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...null!=g&&{definitions:g},...null!=h&&{$defs:h},type:"object",properties:{elements:{type:"array",items:i,...null!=b&&{minItems:b},...null!=c&&{maxItems:c}}},required:["elements"],additionalProperties:!1},...null!=d&&{name:d},...null!=e&&{description:e}}}),async parseCompleteOutput({text:a},d){let e=await cV({text:a});if(!e.success)throw new g2({message:"No object generated: could not parse the response.",cause:e.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let g=e.value;if(null==g||"object"!=typeof g||!("elements"in g)||!Array.isArray(g.elements))throw new g2({message:"No object generated: response did not match schema.",cause:new bL({value:g,cause:"response must be an object with an elements array"}),text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let h=hG({value:g.elements,minItems:b,maxItems:c});if(null!=h)throw new g2({message:"No object generated: response did not match schema.",cause:h,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let i=[];for(let b of g.elements){let c=await cU({value:b,schema:f});if(!c.success)throw new g2({message:"No object generated: response did not match schema.",cause:c.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});i.push(c.value)}return i},async parsePartialOutput({text:a}){let b=await hB(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=b.value;if(null==a||"object"!=typeof a||!("elements"in a)||!Array.isArray(a.elements))return;let c="repaired-parse"===b.state&&a.elements.length>0?a.elements.slice(0,-1):a.elements,d=[];for(let a of c){let b=await cU({value:a,schema:f});b.success&&d.push(b.value)}return{partial:d}}}},createElementStreamTransform(){let a=0;return new TransformStream({transform({partialOutput:b},d){if(null!=b)for(;a<b.length;a++){if(null!=c&&a>=c)return void d.error(hG({value:b,maxItems:c}));d.enqueue(b[a])}}})}}};function hF({name:a,value:b}){if(null!=b){if(!Number.isInteger(b))throw new gZ({parameter:a,value:b,message:`${a} must be an integer`});if(b<0)throw new gZ({parameter:a,value:b,message:`${a} must be greater than or equal to 0`})}}function hG({value:a,minItems:b,maxItems:c}){return null!=b&&a.length<b?new bL({value:a,cause:`elements array must contain at least ${b} items`}):null!=c&&a.length>c?new bL({value:a,cause:`elements array must contain at most ${c} items`}):void 0}var hH=({options:a,name:b,description:c})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:a}},required:["result"],additionalProperties:!1},...null!=b&&{name:b},...null!=c&&{description:c}}),async parseCompleteOutput({text:b},c){let d=await cV({text:b});if(!d.success)throw new g2({message:"No object generated: could not parse the response.",cause:d.error,text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});let e=d.value;if(null==e||"object"!=typeof e||!("result"in e)||"string"!=typeof e.result||!a.includes(e.result))throw new g2({message:"No object generated: response did not match schema.",cause:new bL({value:e,cause:"response must be an object that contains a choice value."}),text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});return e.result},async parsePartialOutput({text:b}){let c=await hB(b);switch(c.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let b=c.value;if(null==b||"object"!=typeof b||!("result"in b)||"string"!=typeof b.result)return;let d=a.filter(a=>a.startsWith(b.result));if("successful-parse"===c.state)return d.includes(b.result)?{partial:b.result}:void 0;return 1===d.length?{partial:d[0]}:void 0}}},createElementStreamTransform(){}}),hI=({name:a,description:b}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=a&&{name:a},...null!=b&&{description:b}}),async parseCompleteOutput({text:a},b){let c=await cV({text:a});if(!c.success)throw new g2({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return c.value},async parsePartialOutput({text:a}){let b=await hB(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===b.value?void 0:{partial:b.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,ch({prefix:"aitxt",size:24}),ch({prefix:"call",size:24}),TransformStream;var hJ=hc.record(hc.string(),hd.optional()),hK=cP(()=>cS(hc.union([hc.looseObject({type:hc.literal("text-start"),id:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("text-delta"),id:hc.string(),delta:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("text-end"),id:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("error"),errorText:hc.string()}),hc.looseObject({type:hc.literal("tool-input-start"),toolCallId:hc.string(),toolName:hc.string(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional(),toolMetadata:hJ.optional(),dynamic:hc.boolean().optional(),title:hc.string().optional()}),hc.looseObject({type:hc.literal("tool-input-delta"),toolCallId:hc.string(),inputTextDelta:hc.string()}),hc.looseObject({type:hc.literal("tool-input-available"),toolCallId:hc.string(),toolName:hc.string(),input:hc.unknown(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional(),toolMetadata:hJ.optional(),dynamic:hc.boolean().optional(),title:hc.string().optional()}),hc.looseObject({type:hc.literal("tool-input-error"),toolCallId:hc.string(),toolName:hc.string(),input:hc.unknown(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional(),toolMetadata:hJ.optional(),dynamic:hc.boolean().optional(),errorText:hc.string(),title:hc.string().optional()}),hc.looseObject({type:hc.literal("tool-approval-request"),approvalId:hc.string(),toolCallId:hc.string(),approvalDescriptor:hc.unknown().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()}),hc.looseObject({type:hc.literal("tool-approval-response"),approvalId:hc.string(),approved:hc.boolean(),reason:hc.string().optional(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("tool-output-available"),toolCallId:hc.string(),output:hc.unknown(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional(),toolMetadata:hJ.optional(),dynamic:hc.boolean().optional(),preliminary:hc.boolean().optional()}),hc.looseObject({type:hc.literal("tool-output-error"),toolCallId:hc.string(),errorText:hc.string(),providerExecuted:hc.boolean().optional(),providerMetadata:he.optional(),toolMetadata:hJ.optional(),dynamic:hc.boolean().optional()}),hc.looseObject({type:hc.literal("tool-output-denied"),toolCallId:hc.string()}),hc.looseObject({type:hc.literal("reasoning-start"),id:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("reasoning-delta"),id:hc.string(),delta:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("reasoning-end"),id:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("custom"),kind:hc.string().transform(a=>a),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("source-url"),sourceId:hc.string(),url:hc.string(),title:hc.string().optional(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("source-document"),sourceId:hc.string(),mediaType:hc.string(),title:hc.string(),filename:hc.string().optional(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("file"),url:hc.string(),mediaType:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.literal("reasoning-file"),url:hc.string(),mediaType:hc.string(),providerMetadata:he.optional()}),hc.looseObject({type:hc.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:hc.string().optional(),data:hc.unknown(),transient:hc.boolean().optional()}),hc.looseObject({type:hc.literal("start-step")}),hc.looseObject({type:hc.literal("finish-step")}),hc.looseObject({type:hc.literal("reset-step")}),hc.looseObject({type:hc.literal("start"),messageId:hc.string().optional(),messageMetadata:hc.unknown().optional()}),hc.looseObject({type:hc.literal("finish"),finishReason:hc.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:hc.unknown().optional()}),hc.looseObject({type:hc.literal("abort"),reason:hc.string().optional()}),hc.looseObject({type:hc.literal("message-metadata"),messageMetadata:hc.unknown()})])));function hL(){return Object.create(null)}function hM(a){return a.type.startsWith("tool-")}function hN(a){return hM(a)||"dynamic-tool"===a.type}function hO(a){return a.type.split("-").slice(1).join("-")}var hP={type:"deprecated",setting:"rawInput in output-error UI message parts",message:'Use the "input" field instead. The "rawInput" field will be removed in the next major version.'};async function hQ({stream:a,onError:b,abortSignal:c}){let d=a.getReader(),e=()=>{d.cancel().catch(()=>{})};(null==c?void 0:c.aborted)?e():null==c||c.addEventListener("abort",e,{once:!0});try{for(;;){let{done:a}=await d.read();if(a)break}}catch(a){null==b||b(a)}finally{null==c||c.removeEventListener("abort",e),d.releaseLock()}}ch({prefix:"aitxt",size:24}),ch({prefix:"call",size:24}),ch({prefix:"aitxt",size:24}),ch({prefix:"call",size:24});var hR=hc.record(hc.string(),hd.optional()),hS=hc.record(hc.string(),hc.string());function hT(a){return({url:b,abortSignal:c})=>hb({url:b,maxBytes:null==a?void 0:a.maxBytes,abortSignal:c})}cP(()=>cS(hc.array(hc.object({id:hc.string(),role:hc.enum(["system","user","assistant"]),metadata:hc.unknown().optional(),parts:hc.array(hc.union([hc.object({type:hc.literal("text"),text:hc.string(),state:hc.enum(["streaming","done"]).optional(),providerMetadata:he.optional()}),hc.object({type:hc.literal("reasoning"),id:hc.string().optional(),text:hc.string(),state:hc.enum(["streaming","done"]).optional(),providerMetadata:he.optional()}),hc.object({type:hc.literal("custom"),kind:hc.string(),providerMetadata:he.optional()}),hc.object({type:hc.literal("source-url"),sourceId:hc.string(),url:hc.string(),title:hc.string().optional(),providerMetadata:he.optional()}),hc.object({type:hc.literal("source-document"),sourceId:hc.string(),mediaType:hc.string(),title:hc.string(),filename:hc.string().optional(),providerMetadata:he.optional()}),hc.object({type:hc.literal("file"),mediaType:hc.string(),filename:hc.string().optional(),url:hc.string(),providerReference:hS.optional(),providerMetadata:he.optional()}),hc.object({type:hc.literal("reasoning-file"),mediaType:hc.string(),url:hc.string(),providerMetadata:he.optional()}),hc.object({type:hc.literal("step-start")}),hc.object({type:hc.string().startsWith("data-"),id:hc.string().optional(),data:hc.unknown()}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("input-streaming"),input:hc.unknown().optional(),providerExecuted:hc.boolean().optional(),callProviderMetadata:he.optional(),output:hc.never().optional(),errorText:hc.never().optional(),approval:hc.never().optional()}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("input-available"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.never().optional()}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("approval-requested"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.never().optional(),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.never().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("approval-responded"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.boolean(),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-available"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.unknown(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),resultProviderMetadata:he.optional(),preliminary:hc.boolean().optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!0),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()}).optional()}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-error"),input:hc.unknown().optional(),rawInput:hc.unknown().optional(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.string(),callProviderMetadata:he.optional(),resultProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!0),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()}).optional()}),hc.object({type:hc.literal("dynamic-tool"),toolName:hc.string(),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-denied"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!1),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("input-streaming"),providerExecuted:hc.boolean().optional(),callProviderMetadata:he.optional(),input:hc.unknown().optional(),output:hc.never().optional(),errorText:hc.never().optional(),approval:hc.never().optional()}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("input-available"),providerExecuted:hc.boolean().optional(),input:hc.unknown(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.never().optional()}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("approval-requested"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.never().optional(),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.never().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("approval-responded"),input:hc.unknown(),providerExecuted:hc.boolean().optional(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.boolean(),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-available"),providerExecuted:hc.boolean().optional(),input:hc.unknown(),output:hc.unknown(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),resultProviderMetadata:he.optional(),preliminary:hc.boolean().optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!0),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()}).optional()}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-error"),providerExecuted:hc.boolean().optional(),input:hc.unknown().optional(),rawInput:hc.unknown().optional(),output:hc.never().optional(),errorText:hc.string(),callProviderMetadata:he.optional(),resultProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!0),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()}).optional()}),hc.object({type:hc.string().startsWith("tool-"),toolCallId:hc.string(),title:hc.string().optional(),toolMetadata:hR.optional(),state:hc.literal("output-denied"),providerExecuted:hc.boolean().optional(),input:hc.unknown(),output:hc.never().optional(),errorText:hc.never().optional(),callProviderMetadata:he.optional(),approval:hc.object({id:hc.string(),approved:hc.literal(!1),descriptor:hc.unknown().optional(),requestReason:hc.string().optional(),reason:hc.string().optional(),isAutomatic:hc.boolean().optional(),signature:hc.string().optional()})})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),ch({prefix:"call",size:24}),ch({prefix:"call",size:24}),new TextEncoder,ch({prefix:"aiobj",size:24});var{atob:hU}=globalThis,hV=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(a){return new Promise((b,c)=>{this.queue.push(async()=>{try{await a(),b()}catch(a){c(a)}}),this.processQueue()})}};ch({prefix:"aiobj",size:24}),hT();hc.object({token:hc.string().refine(a=>a.trim().length>0),url:hc.string().refine(a=>{try{let b=new URL(a);return("ws:"===b.protocol||"wss:"===b.protocol)&&""!==b.hostname}catch(a){return!1}}),expiresAt:hc.number().positive().max(Number.MAX_SAFE_INTEGER).optional(),tools:hc.array(hc.object({type:hc.literal("function"),name:hc.string().min(1),description:hc.string().optional(),parameters:hc.record(hc.string(),hc.unknown())})).optional()});Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function hW({response:a,url:b,fallbackMessage:c}){let d=await a.text();return new bm({message:d||c,url:b,requestBodyValues:void 0,statusCode:a.status,responseBody:d})}async function hX(a){if(null==a)return[];if(!globalThis.FileList||!(a instanceof globalThis.FileList))throw new bP({functionality:"FileList",message:"FileList is not supported in the current environment"});return Promise.all(Array.from(a).map(async a=>{let{name:b,type:c}=a;return{type:"file",mediaType:c,filename:b,url:await new Promise((b,c)=>{let d=new FileReader;d.onload=a=>{var c;b(null==(c=a.target)?void 0:c.result)},d.onerror=a=>c(a),d.readAsDataURL(a)})}}))}ch({prefix:"call",size:24}),hT();var hY=class{constructor({api:a="/api/chat",credentials:b,headers:c,body:d,fetch:e,prepareSendMessagesRequest:f,prepareReconnectToStreamRequest:g}){this.api=a,this.credentials=b,this.headers=c,this.body=d,this.fetch=e,this.prepareSendMessagesRequest=f,this.prepareReconnectToStreamRequest=g}async sendMessages({abortSignal:a,...b}){var c,d,e,f;let g=await cW(this.body),h=await cW(this.headers),i=await cW(this.credentials),j={...b_(h),...b_(b.headers)},k=await (null==(c=this.prepareSendMessagesRequest)?void 0:c.call(this,{api:this.api,id:b.chatId,messages:b.messages,body:{...g,...b.body},headers:j,credentials:i,requestMetadata:b.metadata,trigger:b.trigger,messageId:b.messageId})),l=null!=(d=null==k?void 0:k.api)?d:this.api,m=(null==k?void 0:k.headers)!==void 0?b_(k.headers):j,n=(null==k?void 0:k.body)!==void 0?k.body:{...g,...b.body,id:b.chatId,messages:b.messages,trigger:b.trigger,messageId:b.messageId},o=null!=(e=null==k?void 0:k.credentials)?e:i,p=null!=(f=this.fetch)?f:globalThis.fetch,q=await p(l,{method:"POST",headers:{"Content-Type":"application/json",...m},body:JSON.stringify(n),credentials:o,signal:a});if(!q.ok)throw await hW({response:q,url:l,fallbackMessage:"Failed to fetch the chat response."});if(!q.body)throw new bq({message:"The response body is empty."});return this.processResponseStream(q.body)}async reconnectToStream(a){var b,c,d,e;let f=await cW(this.body),g=await cW(this.headers),h=await cW(this.credentials),i={...b_(g),...b_(a.headers)},j=await (null==(b=this.prepareReconnectToStreamRequest)?void 0:b.call(this,{api:this.api,id:a.chatId,body:{...f,...a.body},headers:i,credentials:h,requestMetadata:a.metadata})),k=null!=(c=null==j?void 0:j.api)?c:`${this.api}/${a.chatId}/stream`,l=(null==j?void 0:j.headers)!==void 0?b_(j.headers):i,m=null!=(d=null==j?void 0:j.credentials)?d:h,n=null!=(e=this.fetch)?e:globalThis.fetch,o=await n(k,{method:"GET",headers:l,credentials:m,signal:a.abortSignal});if(204===o.status)return null;if(!o.ok)throw await hW({response:o,url:k,fallbackMessage:"Failed to fetch the chat response."});if(!o.body)throw new bq({message:"The response body is empty."});return this.processResponseStream(o.body)}},hZ=class extends hY{constructor(a={}){super(a)}processResponseStream(a){return(function({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bW).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await cV({text:a,schema:b}))}}))})({stream:a,schema:hK}).pipeThrough(new TransformStream({async transform(a,b){if(!a.success)throw a.error;b.enqueue(a.value)}}))}},h$=class{constructor({generateId:a=ci,id:b=a(),transport:c=new hZ,messageMetadataSchema:d,dataPartSchemas:e,state:f,onError:g,onToolCall:h,onFinish:i,onData:j,sendAutomaticallyWhen:k}){this.pendingMessagePreparations=new Set,this.activeResponse=void 0,this.activeResumeRequest=void 0,this.jobExecutor=new hV,this.sendMessage=async(a,b)=>{var c,d,e,f;let g;if(null==a)return void await this.makeRequest({trigger:"submit-message",messageId:null==(c=this.lastMessage)?void 0:c.id,...b});if("text"in a||"files"in a){let b,c=new AbortController;this.pendingMessagePreparations.add(c);try{b=Array.isArray(a.files)?a.files:await hX(a.files)}finally{this.pendingMessagePreparations.delete(c)}if(c.signal.aborted)return;g={parts:[...b,..."text"in a&&null!=a.text?[{type:"text",text:a.text}]:[]]}}else g=a;if(null!=a.messageId){let b=this.state.messages.findIndex(b=>b.id===a.messageId);if(-1===b)throw new gZ({parameter:"message.messageId",value:a.messageId,message:`message with id ${a.messageId} not found`});if("user"!==this.state.messages[b].role)throw new gZ({parameter:"message.messageId",value:a.messageId,message:`message with id ${a.messageId} is not a user message`});this.state.messages=this.state.messages.slice(0,b+1),this.state.replaceMessage(b,{id:a.messageId,...g,role:null!=(d=g.role)?d:"user",metadata:a.metadata})}else this.state.pushMessage({...g,id:null!=(e=g.id)?e:this.generateId(),role:null!=(f=g.role)?f:"user",metadata:a.metadata});await this.makeRequest({trigger:"submit-message",messageId:a.messageId,...b})},this.regenerate=async({messageId:a,...b}={})=>{let c=null==a?this.state.messages.length-1:this.state.messages.findIndex(b=>b.id===a);if(-1===c)throw new gZ({parameter:"messageId",value:a,message:`message ${a} not found`});this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[c].role?c:c+1),await this.makeRequest({trigger:"regenerate-message",messageId:a,...b})},this.resumeStream=async(a={})=>{await this.makeRequest({trigger:"resume-stream",...a})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:a,approved:b,reason:c,options:d})=>this.jobExecutor.run(async()=>{let e=this.state.messages,f=e[e.length-1],g=d=>hN(d)&&"approval-requested"===d.state&&d.approval.id===a?{...d,state:"approval-responded",approval:{...d.approval,id:a,approved:b,reason:c}}:d;this.state.replaceMessage(e.length-1,{...f,parts:f.parts.map(g)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(g)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(a=>{var b;a&&this.makeRequest({trigger:"submit-message",messageId:null==(b=this.lastMessage)?void 0:b.id,...d})})}),this.addToolOutput=async({state:a="output-available",toolCallId:b,output:c,errorText:d,options:e})=>this.jobExecutor.run(async()=>{let f=this.state.messages,g=f[f.length-1],h=e=>hN(e)&&e.toolCallId===b?{...e,state:a,output:c,errorText:d}:e;this.state.replaceMessage(f.length-1,{...g,parts:g.parts.map(h)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(h)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(a=>{var b;a&&this.makeRequest({trigger:"submit-message",messageId:null==(b=this.lastMessage)?void 0:b.id,...e})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var a,b;for(let a of this.pendingMessagePreparations)a.abort();null==(a=this.activeResumeRequest)||a.abortController.abort(),null==(b=this.activeResponse)||b.abortController.abort()},this.id=b,this.transport=c,this.generateId=a,this.messageMetadataSchema=d,this.dataPartSchemas=e,this.state=f,this.onError=g,this.onToolCall=h,this.onFinish=i,this.onData=j,this.sendAutomaticallyWhen=k}get status(){return this.state.status}setStatus({status:a,error:b}){this.status!==a&&(this.state.status=a,this.state.error=b)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(a){this.state.messages=a}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let a=this.sendAutomaticallyWhen({messages:this.state.messages});return a&&"object"==typeof a&&"then"in a?await a:a}async makeRequest({trigger:a,metadata:b,headers:c,body:d,messageId:e}){var f,g,h;let i,j,k=new AbortController,l="resume-stream"===a?{abortController:k}:void 0;l&&(null==(f=this.activeResumeRequest)||f.abortController.abort(),this.activeResumeRequest=l);let m=()=>null==l||this.activeResumeRequest===l,n=()=>{this.activeResumeRequest===l&&(this.activeResumeRequest=void 0)};if("resume-stream"===a)try{let a=await this.transport.reconnectToStream({chatId:this.id,abortSignal:k.signal,metadata:b,headers:c,body:d});if(k.signal.aborted||!m()){await (null==a?void 0:a.cancel().catch(()=>{})),m()&&this.setStatus({status:"ready"}),n();return}if(null==a){this.setStatus({status:"ready"}),n();return}i=a}catch(a){if(k.signal.aborted||"AbortError"===a.name){m()&&this.setStatus({status:"ready"}),n();return}if(!m())return;this.onError&&a instanceof Error&&this.onError(a),this.setStatus({status:"error",error:a}),n();return}this.setStatus({status:"submitted",error:void 0});let o=this.lastMessage,p=!1,q=!1,r=!1;try{let f,g={state:function({lastMessage:a,messageId:b}){return{message:(null==a?void 0:a.role)==="assistant"?a:{id:b,metadata:void 0,role:"assistant",parts:[]},activeTextParts:hL(),activeReasoningParts:hL(),partialToolCalls:hL()}}({lastMessage:"resume-stream"===a||"regenerate-message"===a?void 0:this.state.snapshot(o),messageId:this.generateId()}),abortController:k};j=g,g.abortController.signal.addEventListener("abort",()=>{p=!0}),this.activeResponse=g,f="resume-stream"===a?i:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:g.abortController.signal,metadata:b,headers:c,body:d,trigger:a,messageId:e});let h=a=>this.jobExecutor.run(()=>g.abortController.signal.aborted?Promise.resolve():a({state:g.state,write:({updateStatus:a=!0}={})=>{var b;g.abortController.signal.aborted||(a&&this.setStatus({status:"streaming"}),g.state.message.id===(null==(b=this.lastMessage)?void 0:b.id)?this.state.replaceMessage(this.state.messages.length-1,g.state.message):this.state.pushMessage(g.state.message))}}));if(await hQ({stream:function({stream:a,messageMetadataSchema:b,dataPartSchemas:c,runUpdateMessageJob:d,onError:e,onToolCall:f,onData:g}){return a.pipeThrough(new TransformStream({async transform(a,h){await d(async({state:d,write:i})=>{var j,k,l,m;function n(){let a=d.message.parts,b=a.length-1;for(;b>=0&&"step-start"!==a[b].type;)b--;return a.slice(b+1)}function o(a){let b=n().filter(hN).find(b=>b.toolCallId===a);if(null==b){let c=d.message.parts;for(let d=c.length-1;d>=0;d--){let e=c[d];if(hN(e)&&e.toolCallId===a){b=e;break}}}if(null==b)throw new g7({chunkType:"tool-invocation",chunkId:a,message:`No tool invocation found for tool call ID "${a}".`});return b}function p(a,b){var c;let e=null!=b?b:n().find(b=>hM(b)&&b.toolCallId===a.toolCallId);if(null!=e){e.state=a.state,e.input=a.input,e.output=a.output,e.errorText=a.errorText,e.rawInput=a.rawInput,e.preliminary=a.preliminary,void 0!==a.title&&(e.title=a.title),void 0!==a.toolMetadata&&(e.toolMetadata=a.toolMetadata),e.providerExecuted=null!=(c=a.providerExecuted)?c:e.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?e.resultProviderMetadata=b:e.callProviderMetadata=b)}else d.message.parts.push({type:`tool-${a.toolName}`,toolCallId:a.toolCallId,state:a.state,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},input:a.input,output:a.output,rawInput:a.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,preliminary:a.preliminary,...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}function q(a,b){var c,e;let f=null!=b?b:n().find(b=>"dynamic-tool"===b.type&&b.toolCallId===a.toolCallId);if(null!=f){f.state=a.state,f.toolName=a.toolName,f.input=a.input,f.output=a.output,f.errorText=a.errorText,f.rawInput=null!=(c=a.rawInput)?c:f.rawInput,f.preliminary=a.preliminary,void 0!==a.title&&(f.title=a.title),void 0!==a.toolMetadata&&(f.toolMetadata=a.toolMetadata),f.providerExecuted=null!=(e=a.providerExecuted)?e:f.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?f.resultProviderMetadata=b:f.callProviderMetadata=b)}else d.message.parts.push({type:"dynamic-tool",toolName:a.toolName,toolCallId:a.toolCallId,state:a.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}async function r(a){if(null!=a){let c=null!=d.message.metadata?function a(b,c){if(void 0===b&&void 0===c)return;if(void 0===b)return c;if(void 0===c)return b;let d={...b};for(let e in c)if("__proto__"!==e&&"constructor"!==e&&"prototype"!==e&&Object.prototype.hasOwnProperty.call(c,e)){let f=c[e];if(void 0===f)continue;let g=e in b?b[e]:void 0,h=null!==f&&"object"==typeof f&&!Array.isArray(f)&&!(f instanceof Date)&&!(f instanceof RegExp),i=null!=g&&"object"==typeof g&&!Array.isArray(g)&&!(g instanceof Date)&&!(g instanceof RegExp);h&&i?d[e]=a(g,f):d[e]=f}return d}(d.message.metadata,a):a;null!=b&&await cT({value:c,schema:b,context:{field:"message.metadata",entityId:d.message.id}}),d.message.metadata=c}}switch(a.type){case"text-start":{let b={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeTextParts[a.id]=b,d.message.parts.push(b),i();break}case"text-delta":{let b=d.activeTextParts[a.id];if(null==b)throw new g7({chunkType:"text-delta",chunkId:a.id,message:`Received text-delta for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(j=a.providerMetadata)?j:b.providerMetadata,i();break}case"text-end":{let b=d.activeTextParts[a.id];if(null==b)throw new g7({chunkType:"text-end",chunkId:a.id,message:`Received text-end for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});b.state="done",b.providerMetadata=null!=(k=a.providerMetadata)?k:b.providerMetadata,delete d.activeTextParts[a.id],i();break}case"custom":{let b={type:"custom",kind:a.kind,providerMetadata:a.providerMetadata};d.message.parts.push(b),i();break}case"reasoning-start":{let b={type:"reasoning",id:a.id,text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeReasoningParts[a.id]=b,d.message.parts.push(b),i();break}case"reasoning-delta":{let b=d.activeReasoningParts[a.id];if(null==b)throw new g7({chunkType:"reasoning-delta",chunkId:a.id,message:`Received reasoning-delta for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(l=a.providerMetadata)?l:b.providerMetadata,i();break}case"reasoning-end":{let b=d.activeReasoningParts[a.id];if(null==b)throw new g7({chunkType:"reasoning-end",chunkId:a.id,message:`Received reasoning-end for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});b.providerMetadata=null!=(m=a.providerMetadata)?m:b.providerMetadata,b.state="done",delete d.activeReasoningParts[a.id],i();break}case"file":case"reasoning-file":d.message.parts.push({type:a.type,mediaType:a.mediaType,url:a.url,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}}),i();break;case"source-url":d.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),i();break;case"source-document":d.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),i();break;case"tool-input-start":{let b=n().filter(hM);d.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:b.length,dynamic:a.dynamic,title:a.title,toolMetadata:a.toolMetadata},a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}),i();break}case"tool-input-delta":{let b=d.partialToolCalls[a.toolCallId];if(null==b)throw new g7({chunkType:"tool-input-delta",chunkId:a.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${a.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});b.text+=a.inputTextDelta;let{value:c}=await hB(b.text);b.dynamic?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}):p({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}),i();break}case"tool-input-available":a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}),i(),f&&!a.providerExecuted&&await f({toolCall:a});break;case"tool-input-error":{let b=n().filter(hN).find(b=>b.toolCallId===a.toolCallId);(null!=b?"dynamic-tool"===b.type:a.dynamic)?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}):(p({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}),[d.message].some(a=>a.parts.some(a=>null!=a&&"object"==typeof a&&"type"in a&&"string"==typeof a.type&&("dynamic-tool"===a.type||a.type.startsWith("tool-"))&&"state"in a&&"output-error"===a.state&&Object.prototype.hasOwnProperty.call(a,"rawInput")&&"rawInput"in a&&void 0!==a.rawInput))&&(a=>{if(0===a.warnings.length)return;let b=globalThis.AI_SDK_LOG_WARNINGS;if(!1!==b){if("function"==typeof b)return b(a);for(let b of(g9||(g9=!0,ha({message:"AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",type:"Warning"})),a.warnings))ha({message:function({warning:a,provider:b,model:c}){let d=null!=b&&null!=c?` (${b} / ${c})`:"",e=`AI SDK Warning${d}:`;switch(a.type){case"unsupported":{let b=`${e} The feature "${a.feature}" is not supported.`;return a.details&&(b+=` ${a.details}`),b}case"compatibility":{let b=`${e} The feature "${a.feature}" is used in a compatibility mode.`;return a.details&&(b+=` ${a.details}`),b}case"deprecated":return`${e} Deprecated: "${a.setting}". ${a.message}`;case"other":return`${e} ${a.message}`;default:return`${e} ${JSON.stringify(a,null,2)}`}}({warning:b,provider:a.provider,model:a.model}),type:"deprecated"===b.type?"DeprecationWarning":"Warning"})}})({warnings:[hP]})),i();break}case"tool-approval-request":{let b=o(a.toolCallId);b.state="approval-requested",b.approval={id:a.approvalId,...null!=a.approvalDescriptor?{descriptor:a.approvalDescriptor}:{},...null!=a.reason?{requestReason:a.reason}:{},...!0===a.isAutomatic?{isAutomatic:!0}:{},...null!=a.signature?{signature:a.signature}:{}},i();break}case"tool-approval-response":{let b=function(a){let b=d.message.parts.filter(hN).find(b=>{var c;return(null==(c=b.approval)?void 0:c.id)===a});if(null==b)throw new g7({chunkType:"tool-approval-response",chunkId:a,message:`No tool invocation found for approval ID "${a}".`});return b}(a.approvalId),c=null==b.approval?{id:a.approvalId}:b.approval;b.state="approval-responded",b.approval={...c,id:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{}},null!=a.providerExecuted&&(b.providerExecuted=a.providerExecuted),null!=a.providerMetadata&&(b.callProviderMetadata=a.providerMetadata),i();break}case"tool-output-denied":o(a.toolCallId).state="output-denied",i();break;case"tool-output-available":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-available",input:b.input,output:a.output,preliminary:a.preliminary,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:hO(b),state:"output-available",input:b.input,output:a.output,providerExecuted:a.providerExecuted,preliminary:a.preliminary,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"tool-output-error":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-error",input:b.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:hO(b),state:"output-error",input:b.input,rawInput:b.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"start-step":d.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let a=n();d.activeTextParts=hL(),d.activeReasoningParts=hL(),d.partialToolCalls=hL(),a.length>0&&(d.message.parts.splice(d.message.parts.length-a.length,a.length),i());break}case"start":null!=a.messageId&&(d.message.id=a.messageId),await r(a.messageMetadata),(null!=a.messageId||null!=a.messageMetadata)&&i({updateStatus:!1});break;case"finish":null!=a.finishReason&&(d.finishReason=a.finishReason),await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"message-metadata":await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"error":null==e||e(Error(a.errorText));break;default:if(a.type.startsWith("data-")){if((null==c?void 0:c[a.type])!=null){let b=d.message.parts.findIndex(b=>"id"in b&&"data"in b&&b.id===a.id&&b.type===a.type),e=b>=0?b:d.message.parts.length;await cT({value:a.data,schema:c[a.type],context:{field:`message.parts[${e}].data`,entityName:a.type,entityId:a.id}})}if(a.transient){null==g||g(a);break}let b=null!=a.id?d.message.parts.find(b=>a.type===b.type&&a.id===b.id):void 0;null!=b?b.data=a.data:d.message.parts.push(a),null==g||g(a),i()}}h.enqueue(a)})}}))}({stream:f,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:h,onError:a=>{throw a}}),abortSignal:g.abortController.signal,onError:a=>{throw a}}),p)return m()&&this.setStatus({status:"ready"}),null;m()&&this.setStatus({status:"ready"})}catch(a){if(p||"AbortError"===a.name)return p=!0,m()&&this.setStatus({status:"ready"}),null;if(!m())return null;r=!0,a instanceof TypeError&&(a.message.toLowerCase().includes("fetch")||a.message.toLowerCase().includes("network"))&&(q=!0),this.onError&&a instanceof Error&&this.onError(a),this.setStatus({status:"error",error:a})}finally{try{j&&(null==(g=this.onFinish)||g.call(this,{message:j.state.message,messages:this.state.messages,isAbort:p,isDisconnect:q,isError:r,finishReason:j.state.finishReason}))}finally{this.activeResponse===j&&(this.activeResponse=void 0),n()}}!r&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(h=this.lastMessage)?void 0:h.id,metadata:b,headers:c,body:d})}},h_=a.i(572131);a.i(393931);var h0=a.i(313350);a.i(187924);var h1=(a,b,c)=>{if(!b.has(a))throw TypeError("Cannot "+c)},h2=(a,b,c)=>(h1(a,b,"read from private field"),c?c.call(a):b.get(a)),h3=(a,b,c)=>{if(b.has(a))throw TypeError("Cannot add the same private member more than once");b instanceof WeakSet?b.add(a):b.set(a,c)},h4=(a,b,c,d)=>(h1(a,b,"write to private field"),d?d.call(a,c):b.set(a,c),c),h5=class{constructor(a=[]){h3(this,an,void 0),h3(this,ao,"ready"),h3(this,ap,void 0),h3(this,aq,new Set),h3(this,ar,new Set),h3(this,as,new Set),this.pushMessage=a=>{h4(this,an,h2(this,an).concat(a)),h2(this,at).call(this)},this.popMessage=()=>{h4(this,an,h2(this,an).slice(0,-1)),h2(this,at).call(this)},this.replaceMessage=(a,b)=>{h4(this,an,[...h2(this,an).slice(0,a),this.snapshot(b),...h2(this,an).slice(a+1)]),h2(this,at).call(this)},this.snapshot=a=>{var b;if(null==a||"object"!=typeof a||!("parts"in a)||!Array.isArray(a.parts))return a;let c={...a,parts:a.parts.map(a=>({...a}))};return"metadata"in a&&(c.metadata=Array.isArray(b=a.metadata)?[...b]:null!=b&&"object"==typeof b&&(Object.getPrototypeOf(b)===Object.prototype||null===Object.getPrototypeOf(b))?{...b}:b),c},this["~registerMessagesCallback"]=(a,b)=>{let c=b?null!=b?(0,h0.default)(a,b):a:a;return h2(this,aq).add(c),()=>{h2(this,aq).delete(c)}},this["~registerStatusCallback"]=a=>(h2(this,ar).add(a),()=>{h2(this,ar).delete(a)}),this["~registerErrorCallback"]=a=>(h2(this,as).add(a),()=>{h2(this,as).delete(a)}),h3(this,at,()=>{h2(this,aq).forEach(a=>a())}),h3(this,au,()=>{h2(this,ar).forEach(a=>a())}),h3(this,av,()=>{h2(this,as).forEach(a=>a())}),h4(this,an,a)}get status(){return h2(this,ao)}set status(a){h4(this,ao,a),h2(this,au).call(this)}get error(){return h2(this,ap)}set error(a){h4(this,ap,a),h2(this,av).call(this)}get messages(){return h2(this,an)}set messages(a){h4(this,an,[...a]),h2(this,at).call(this)}};an=new WeakMap,ao=new WeakMap,ap=new WeakMap,aq=new WeakMap,ar=new WeakMap,as=new WeakMap,at=new WeakMap,au=new WeakMap,av=new WeakMap;var h6=class extends h${constructor({messages:a,...b}){const c=new h5(a);super({...b,state:c}),h3(this,aw,void 0),this["~registerMessagesCallback"]=(a,b)=>h2(this,aw)["~registerMessagesCallback"](a,b),this["~registerStatusCallback"]=a=>h2(this,aw)["~registerStatusCallback"](a),this["~registerErrorCallback"]=a=>h2(this,aw)["~registerErrorCallback"](a),h4(this,aw,c)}};aw=new WeakMap,h_.useEffect,a.s(["useChat",0,function({throttle:a,experimental_throttle:b,resume:c=!1,...d}={}){let e,f=null!=a?a:b,g=(0,h_.useRef)({});"chat"in d||(g.current={onToolCall:d.onToolCall,onData:d.onData,onFinish:d.onFinish,onError:d.onError,sendAutomaticallyWhen:d.sendAutomaticallyWhen,transport:d.transport});let h=()=>{var a;return null!=(a=g.current.transport)?a:null!=e?e:e=new hZ},i={...d,transport:{sendMessages:a=>h().sendMessages(a),reconnectToStream:a=>h().reconnectToStream(a)},onToolCall:a=>{var b,c;return null==(c=(b=g.current).onToolCall)?void 0:c.call(b,a)},onData:a=>{var b,c;return null==(c=(b=g.current).onData)?void 0:c.call(b,a)},onFinish:a=>{var b,c;return null==(c=(b=g.current).onFinish)?void 0:c.call(b,a)},onError:a=>{var b,c;return null==(c=(b=g.current).onError)?void 0:c.call(b,a)},sendAutomaticallyWhen:a=>{var b,c,d;return null!=(d=null==(c=(b=g.current).sendAutomaticallyWhen)?void 0:c.call(b,a))&&d}},j="chat"in d?d.chat:d.id,{chat:k,isExternallyManaged:l}=(0,h_.useMemo)(()=>({chat:"chat"in d?d.chat:new h6(i),isExternallyManaged:"chat"in d}),[j]);(0,h_.useEffect)(()=>{if(!l)return()=>{k.stop()}},[k,l]);let m=(0,h_.useMemo)(()=>({messages:k.messages}),[k]),n=(0,h_.useCallback)(a=>{let b=!0,c=k["~registerMessagesCallback"](()=>{b&&(m.messages=k.messages,a())},f);return m.messages=k.messages,()=>{b=!1,c()}},[k,m,f]),o=(0,h_.useCallback)(()=>m.messages,[m]),p=(0,h_.useSyncExternalStore)(n,o,o),q=(0,h_.useCallback)(a=>k["~registerStatusCallback"](()=>{("ready"===k.status||"error"===k.status)&&(m.messages=k.messages),a()}),[k,m]),r=(0,h_.useCallback)(()=>k.status,[k]),s=(0,h_.useSyncExternalStore)(q,r,r),t=(0,h_.useSyncExternalStore)(k["~registerErrorCallback"],()=>k.error,()=>k.error),u=(0,h_.useCallback)(a=>{"function"==typeof a&&(a=a(k.messages)),k.messages=a},[k]);return(0,h_.useEffect)(()=>{c&&k.resumeStream()},[c,k]),{id:k.id,messages:p,setMessages:u,sendMessage:k.sendMessage,regenerate:k.regenerate,clearError:k.clearError,stop:k.stop,error:t,resumeStream:k.resumeStream,status:s,addToolResult:k.addToolOutput,addToolOutput:k.addToolOutput,addToolApprovalResponse:k.addToolApprovalResponse}}],275086);var h7="vercel.ai.error",h8=Symbol.for(h7),h9=class a extends(ay=Error,ax=h8,ay){constructor({name:a,message:b,cause:c}){super(b),this[ax]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,h7)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}},ia="AI_APICallError",ib=`vercel.ai.error.${ia}`,ic=Symbol.for(ib),id=class extends(aA=h9,az=ic,aA){constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:f,cause:g,isRetryable:h=null!=d&&(408===d||409===d||429===d||d>=500),data:i}){super({name:ia,message:a,cause:g}),this[az]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=f,this.isRetryable=h,this.data=i}static isInstance(a){return h9.hasMarker(a,ib)}},ie="AI_EmptyResponseBodyError",ig=`vercel.ai.error.${ie}`,ih=Symbol.for(ig),ii=class extends(aC=h9,aB=ih,aC){constructor({message:a="Empty response body"}={}){super({name:ie,message:a}),this[aB]=!0}static isInstance(a){return h9.hasMarker(a,ig)}},ij=Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");function ik(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}var il="AI_InvalidArgumentError",im=`vercel.ai.error.${il}`,io=Symbol.for(im),ip=class extends(aE=h9,aD=io,aE){constructor({message:a,cause:b,argument:c}){super({name:il,message:a,cause:b}),this[aD]=!0,this.argument=c}static isInstance(a){return h9.hasMarker(a,im)}},iq=Symbol.for("vercel.ai.error.AI_InvalidPromptError");Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");var ir="AI_JSONParseError",is=`vercel.ai.error.${ir}`,it=Symbol.for(is),iu=class extends(aG=h9,aF=it,aG){constructor({text:a,cause:b}){super({name:ir,message:`JSON parsing failed: Text: ${a}.
44
- Error message: ${ik(b)}`,cause:b}),this[aF]=!0,this.text=a}static isInstance(a){return h9.hasMarker(a,is)}},iv=Symbol.for("vercel.ai.error.AI_LoadAPIKeyError");Symbol.for("vercel.ai.error.AI_LoadSettingError");Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");var iw="AI_NoSuchModelError",ix=`vercel.ai.error.${iw}`,iy=Symbol.for(ix),iz=class extends(aI=h9,aH=iy,aI){constructor({errorName:a=iw,modelId:b,modelType:c,message:d=`No such ${c}: ${b}`}){super({name:a,message:d}),this[aH]=!0,this.modelId=b,this.modelType=c}static isInstance(a){return h9.hasMarker(a,ix)}},iA=Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError");Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");var iB="AI_TypeValidationError",iC=`vercel.ai.error.${iB}`,iD=Symbol.for(iC),iE=class a extends(aK=h9,aJ=iD,aK){constructor({value:a,cause:b,context:c}){let d="Type validation failed";if((null==c?void 0:c.field)&&(d+=` for ${c.field}`),(null==c?void 0:c.entityName)||(null==c?void 0:c.entityId)){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:iB,message:`${d}: Value: ${JSON.stringify(a)}.
45
- Error message: ${ik(b)}`,cause:b}),this[aJ]=!0,this.value=a,this.context=c}static isInstance(a){return h9.hasMarker(a,iC)}static wrap({value:b,cause:c,context:d}){var e,f,g;return a.isInstance(c)&&c.value===b&&(null==(e=c.context)?void 0:e.field)===(null==d?void 0:d.field)&&(null==(f=c.context)?void 0:f.entityName)===(null==d?void 0:d.entityName)&&(null==(g=c.context)?void 0:g.entityId)===(null==d?void 0:d.entityId)?c:new a({value:b,cause:c,context:d})}},iF="AI_UnsupportedFunctionalityError",iG=`vercel.ai.error.${iF}`,iH=Symbol.for(iG),iI=class extends(aM=h9,aL=iH,aM){constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:iF,message:b}),this[aL]=!0,this.functionality=a}static isInstance(a){return h9.hasMarker(a,iG)}};function iJ(...a){return a.reduce((a,b)=>({...a,...b}),{})}async function iK(a,b){if(null==a)return;let c=b?.abortSignal;return new Promise((b,d)=>{if(c?.aborted)return void d(iL());let e=setTimeout(()=>{f(),b()},a),f=()=>{clearTimeout(e),c?.removeEventListener("abort",g)},g=()=>{f(),d(iL())};c?.addEventListener("abort",g)})}function iL(){return new DOMException("Delay was aborted","AbortError")}var iM=new TextDecoder;async function iN(a){return"string"==typeof a?a:a instanceof ArrayBuffer||ArrayBuffer.isView(a)?iM.decode(a):"u">typeof Blob&&a instanceof Blob?a.text():String(a)}async function iO(a,{highWaterMark:b=1048576,pollIntervalMs:c=20,abortSignal:d}={}){for(;1===a.readyState&&(a.bufferedAmount??0)>b;){if(d?.aborted===!0)return;await iK(c)}}var{btoa:iP,atob:iQ}=globalThis;function iR(a){let b=[];for(let c=0;c<a.length;c+=4096)b.push(String.fromCodePoint(...a.subarray(c,c+4096)));return iP(b.join(""))}function iS(a){return Object.fromEntries([...a.headers])}function iT(a=globalThis){return a.window?"runtime/browser":a.navigator?.userAgent?`runtime/${a.navigator.userAgent.toLowerCase()}`:a.process?.versions?.node?`runtime/node.js/${a.process.version.substring(0)}`:a.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function iU(a){return(a instanceof Error||"function"==typeof DOMException&&a instanceof DOMException)&&("AbortError"===a.name||"ResponseAborted"===a.name||"TimeoutError"===a.name)}var iV=["fetch failed","failed to fetch"],iW=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function iX({error:a,url:b,requestBodyValues:c}){if(iU(a))return a;if(a instanceof TypeError&&iV.includes(a.message.toLowerCase())){let d=a.cause;if(null!=d)return new id({message:`Cannot connect to API: ${d.message}`,cause:d,url:b,requestBodyValues:c,isRetryable:!0})}let d=function(a){let b=new Set,c=a;for(;c instanceof Error&&!b.has(c);){b.add(c);let a=c;if("string"==typeof a.code&&iW.has(a.code))return a;c=c.cause}}(a);return null!=d?new id(id.isInstance(a)?{message:a.message,cause:a.cause,url:a.url,requestBodyValues:a.requestBodyValues,statusCode:a.statusCode,responseHeaders:a.responseHeaders,responseBody:a.responseBody,data:a.data,isRetryable:!0}:{message:`Cannot connect to API: ${a instanceof Error?a.message:d.message}`,cause:a,url:b,requestBodyValues:c,isRetryable:!0}):a}var iY="5.0.49";function iZ(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}function i$(a,...b){let c=new Headers(iZ(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}async function i_(a){try{await a.body?.cancel()}catch{}}var i0="AI_DownloadError",i1=`vercel.ai.error.${i0}`,i2=Symbol.for(i1),i3=class extends(aO=h9,aN=i2,aO){constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:i0,message:e,cause:d}),this[aN]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return h9.hasMarker(a,i1)}};function i4(a,b){try{return new URL(a).origin===new URL(b).origin}catch{return!1}}function i5(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function i6(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function i7(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!i5(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);if(c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0)return!0;if(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2]){let a=b[6]>>8&255,c=255&b[6],d=b[7]>>8&255,e=255&b[7];return i6(`${a}.${c}.${d}.${e}`)}return!1}async function i8(){let a;return(a=globalThis.process,a?.release?.name!=="node"||a.versions?.bun!=null||a.versions?.deno!=null||"workerd"===a.title||null!=globalThis.EdgeRuntime)?globalThis.fetch:aP??=Promise.resolve().then(i9)}function i9(){let a=ja("node:module"),{lookup:b}=ja("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=c?.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!i5(a)||i6(a):6!==b||i7(a))throw new i3({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function ja(a){let b=globalThis.process,c=b?.getBuiltinModule?.(a);if(null==c)throw Error(`Node.js built-in module ${a} is unavailable`);return c}var jb=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function jc(a){let b=new Headers(a);for(let a of jb)b.delete(a);return b}var jd=new Set([301,302,303,307,308]);async function je(a){return null==a||a===globalThis.fetch?await i8():a}async function jf({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){let g=void 0===b?void 0:jc(b),h=a=>{let b={signal:c,redirect:a};return void 0!==g&&(b.headers=new Headers(g)),b},i=a;for(let b=0;b<=d;b++){let b=void 0!==f&&i4(i,f);b||function(a){let b;try{b=new URL(a)}catch{throw new i3({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new i3({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new i3({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new i3({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(i7(c.slice(1,-1)))throw new i3({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(i5(c)&&i6(c))throw new i3({url:a,message:`URL with IP address ${c} is not allowed`})}(i);let c=b&&null!=e?e:b?globalThis.fetch:await je(e),d=await c(i,h("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new i3({url:a,message:`Redirect from ${i} could not be validated and was blocked`});return await c(i,h("follow"))}let j=d.headers?.get("location");if(jd.has(d.status)&&j){i_(d);let a=new URL(j,i).toString();if(void 0!==g&&!i4(a,i)){let a=g.get("user-agent");g=new Headers(null==a?void 0:{"user-agent":a})}i=a;continue}return d}throw new i3({url:a,message:`Too many redirects (max ${d})`})}var jg=new Set(["accept","accept-language","baggage","cache-control","idempotency-key","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","pragma","range","traceparent","tracestate","user-agent","x-correlation-id","x-request-id"]);async function jh({headers:a,credentialedOrigin:b,untrustedFirstHopHeaders:c,...d}){let e;if(void 0!==a){e=jc(a);let f=b??d.trustedOrigin;if(void 0===f||!i4(d.url,f)){let a=new Set([...jg,...(c??[]).map(a=>a.toLowerCase())]);e=new Headers([...e].filter(([b])=>a.has(b)))}}return jf({...d,headers:e})}async function ji({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await i_(a),new i3({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new i3({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch{}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}var jj=({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{let e=()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")};if(null==a)return e;if(c.includes(d))throw new ip({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${e()}`};jj();var jk=async({url:a,headers:b={},successfulResponseHandler:c,failedResponseHandler:d,abortSignal:e,fetch:f,validateUrl:g,credentialedOrigin:h,trustedOrigin:i})=>{try{let j=f??globalThis.fetch,k=void 0===h||i4(a,h)?b:{},l=i$(k,`ai-sdk/provider-utils/${iY}`,iT()),m=g?await jf({url:a,headers:l,abortSignal:e,fetch:f,trustedOrigin:i}):await j(a,{method:"GET",headers:l,signal:e}),n=iS(m);if(!m.ok){let b;try{b=await d({response:m,url:a,requestBodyValues:{}})}catch(b){if(iU(b)||id.isInstance(b))throw b;throw new id({message:"Failed to process error response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}throw b.value}try{return await c({response:m,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(iU(b)||id.isInstance(b)))throw b;throw new id({message:"Failed to process successful response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}}catch(b){throw iX({error:b,url:a,requestBodyValues:{}})}};function jl(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}function jm({settingValue:a,environmentVariableName:b}){return"string"==typeof a?a:null!=a||"u"<typeof process?void 0:null!=(a=process.env[b])&&"string"==typeof a?a:void 0}function jn(a){return null!=a&&Number.isSafeInteger(a)&&a>=0}var jo=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,jp=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function jq(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===jo.test(a)&&!1===jp.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function jr(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch{return jq(a)}try{return jq(a)}finally{Error.stackTraceLimit=b}}function js(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&jt(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=jt(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(jt):jt(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(jt)),null!=a.allOf&&(a.allOf=a.allOf.map(jt)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(jt));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=jt(b[a]);return a}function jt(a){return"boolean"==typeof a?a:js(a)}var ju=Symbol("Let zodToJsonSchema decide on which parser to use"),jv={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function jw(a,b){return jR(a.type._def,b)}var jx=void 0,jy=/^[cC][^\s-]{8,}$/,jz=/^[0-9a-z]+$/,jA=/^[0-9A-HJKMNP-TV-Z]{26}$/,jB=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9-]*\.)+[a-zA-Z]{2,}$/,jC=()=>(void 0===jx&&(jx=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),jx),jD=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,jE=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jF=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,jG=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,jH=/^[a-zA-Z0-9_-]{21}$/,jI=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function jJ(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":jM(c,"email",d.message,b);break;case"format:idn-email":jM(c,"idn-email",d.message,b);break;case"pattern:zod":jN(c,jB,d.message,b)}break;case"url":jM(c,"uri",d.message,b);break;case"uuid":jM(c,"uuid",d.message,b);break;case"regex":jN(c,d.regex,d.message,b);break;case"cuid":jN(c,jy,d.message,b);break;case"cuid2":jN(c,jz,d.message,b);break;case"startsWith":jN(c,RegExp(`^${jK(d.value,b)}`),d.message,b);break;case"endsWith":jN(c,RegExp(`${jK(d.value,b)}$`),d.message,b);break;case"datetime":jM(c,"date-time",d.message,b);break;case"date":jM(c,"date",d.message,b);break;case"time":jM(c,"time",d.message,b);break;case"duration":jM(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":jN(c,RegExp(jK(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&jM(c,"ipv4",d.message,b),"v4"!==d.version&&jM(c,"ipv6",d.message,b);break;case"base64url":jN(c,jG,d.message,b);break;case"jwt":jN(c,jI,d.message,b);break;case"cidr":"v6"!==d.version&&jN(c,jD,d.message,b),"v4"!==d.version&&jN(c,jE,d.message,b);break;case"emoji":jN(c,jC(),d.message,b);break;case"ulid":jN(c,jA,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":jM(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":jN(c,jF,d.message,b)}break;case"nanoid":jN(c,jH,d.message,b)}return c}function jK(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)jL.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}var jL=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function jM(a,b,c,d){a.format||a.anyOf?.some(a=>a.format)?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function jN(a,b,c,d){a.pattern||a.allOf?.some(a=>a.pattern)?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:jO(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=jO(b,d)}function jO(a,b){if(!b.applyRegexFlags||!a.flags)return a.source;let c={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},d=c.i?a.source.toLowerCase():a.source,e="",f=!1,g=!1,h=!1;for(let a=0;a<d.length;a++){if(f){e+=d[a],f=!1;continue}if(c.i){if(g){if(d[a].match(/[a-z]/)){h?(e+=d[a],e+=`${d[a-2]}-${d[a]}`.toUpperCase(),h=!1):"-"===d[a+1]&&d[a+2]?.match(/[a-z]/)?(e+=d[a],h=!0):e+=`${d[a]}${d[a].toUpperCase()}`;continue}}else if(d[a].match(/[a-z]/)){e+=`[${d[a]}${d[a].toUpperCase()}]`;continue}}if(c.m){if("^"===d[a]){e+=`(^|(?<=[\r
43
+ This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:c,cause:d,generationId:e})}};function eY(a){if(!(a instanceof Error))return!1;let b=a.code;return"string"==typeof b&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(b)}async function eZ(a,b){var c;return ep.isInstance(a)?a:eY(a)?eX.createTimeoutError({originalMessage:a instanceof Error?a.message:"Unknown error",cause:a}):ck.isInstance(a)?a.cause&&eY(a.cause)?eX.createTimeoutError({originalMessage:a.message,cause:a}):await eT({response:function(a){if(void 0!==a.data)return a.data;if(null!=a.responseBody)try{return dn(a.responseBody)}catch(b){return a.responseBody}return{}}(a),statusCode:null!=(c=a.statusCode)?c:500,defaultMessage:"Gateway request failed",cause:a,authMethod:b,isRetryable:!!a.isRetryable&&(null==a.statusCode||a.statusCode<400)||void 0}):await eT({response:{},statusCode:500,defaultMessage:a instanceof Error?`Gateway request failed: ${a.message}`:"Unknown Gateway error",cause:a,authMethod:b})}var e$="ai-gateway-auth-method",e_="x-vercel-ai-gateway-team";async function e0(a){let b=await dW({value:a[e$],schema:e1});return b.success?b.value:void 0}var e1=dS(()=>dU(en.union([en.literal("api-key"),en.literal("oidc")]))),e2=["embedding","evaluation","image","language","realtime","reranking","speech","transcription","video"],e3=class{constructor(a){this.config=a}async getAvailableModels(){try{let{value:a}=await dg({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await d2(this.config.headers):void 0,successfulResponseHandler:d6(e4),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),fetch:this.config.fetch});return a}catch(a){throw await eZ(a)}}async getCredits(){try{let a=new URL(this.config.baseURL),{value:b}=await dg({url:`${a.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await d2(this.config.headers):void 0,successfulResponseHandler:d6(e5),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),fetch:this.config.fetch});return b}catch(a){throw await eZ(a)}}},e4=dS(()=>dU(en.object({models:en.array(en.object({id:en.string(),name:en.string(),description:en.string().nullish(),pricing:en.object({input:en.string(),output:en.string(),input_cache_read:en.string().nullish(),input_cache_write:en.string().nullish()}).transform(({input:a,output:b,input_cache_read:c,input_cache_write:d})=>({input:a,output:b,...c?{cachedInputTokens:c}:{},...d?{cacheCreationInputTokens:d}:{}})).nullish(),specification:en.object({specificationVersion:en.literal("v4"),provider:en.string(),modelId:en.string()}),modelType:en.string().nullish()})).transform(a=>a.filter(a=>null==a.modelType||e2.includes(a.modelType)))}))),e5=dS(()=>dU(en.object({balance:en.string(),total_used:en.string()}).transform(({balance:a,total_used:b})=>({balance:a,totalUsed:b})))),e6=class{constructor(a){this.config=a}async getSpendReport(a){try{let b=new URL(this.config.baseURL),c=new URLSearchParams;c.set("start_date",a.startDate),c.set("end_date",a.endDate),a.groupBy&&c.set("group_by",a.groupBy),a.datePart&&c.set("date_part",a.datePart),a.userId&&c.set("user_id",a.userId),a.model&&c.set("model",a.model),a.provider&&c.set("provider",a.provider),a.credentialType&&c.set("credential_type",a.credentialType),a.tags&&a.tags.length>0&&c.set("tags",a.tags.join(","));let{value:d}=await dg({url:`${b.origin}/v1/report?${c.toString()}`,validateUrl:!1,headers:this.config.headers?await d2(this.config.headers):void 0,successfulResponseHandler:d6(e7),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),fetch:this.config.fetch});return d}catch(a){throw await eZ(a)}}},e7=dS(()=>dU(en.object({results:en.array(en.object({day:en.string().optional(),hour:en.string().optional(),user:en.string().optional(),model:en.string().optional(),tag:en.string().optional(),provider:en.string().optional(),credential_type:en.enum(["byok","system"]).optional(),total_cost:en.number(),market_cost:en.number().optional(),input_tokens:en.number().optional(),output_tokens:en.number().optional(),cached_input_tokens:en.number().optional(),cache_creation_input_tokens:en.number().optional(),reasoning_tokens:en.number().optional(),request_count:en.number().optional()}).transform(({credential_type:a,total_cost:b,market_cost:c,input_tokens:d,output_tokens:e,cached_input_tokens:f,cache_creation_input_tokens:g,reasoning_tokens:h,request_count:i,...j})=>({...j,...void 0!==a?{credentialType:a}:{},totalCost:b,...void 0!==c?{marketCost:c}:{},...void 0!==d?{inputTokens:d}:{},...void 0!==e?{outputTokens:e}:{},...void 0!==f?{cachedInputTokens:f}:{},...void 0!==g?{cacheCreationInputTokens:g}:{},...void 0!==h?{reasoningTokens:h}:{},...void 0!==i?{requestCount:i}:{}})))}))),e8=class{constructor(a){this.config=a}async getGenerationInfo(a){try{let b=new URL(this.config.baseURL),{value:c}=await dg({url:`${b.origin}/v1/generation?id=${encodeURIComponent(a.id)}`,validateUrl:!1,headers:this.config.headers?await d2(this.config.headers):void 0,successfulResponseHandler:d6(e9),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),fetch:this.config.fetch});return c}catch(a){throw await eZ(a)}}},e9=dS(()=>dU(en.object({data:en.object({id:en.string(),total_cost:en.number(),upstream_inference_cost:en.number(),usage:en.number(),created_at:en.string(),model:en.string(),is_byok:en.boolean(),provider_name:en.string(),streamed:en.boolean(),finish_reason:en.string(),latency:en.number(),generation_time:en.number(),native_tokens_prompt:en.number(),native_tokens_completion:en.number(),native_tokens_reasoning:en.number(),native_tokens_cached:en.number(),native_tokens_cache_creation:en.number(),billable_web_search_calls:en.number()}).transform(({total_cost:a,upstream_inference_cost:b,created_at:c,is_byok:d,provider_name:e,finish_reason:f,generation_time:g,native_tokens_prompt:h,native_tokens_completion:i,native_tokens_reasoning:j,native_tokens_cached:k,native_tokens_cache_creation:l,billable_web_search_calls:m,...n})=>({...n,totalCost:a,upstreamInferenceCost:b,createdAt:c,isByok:d,providerName:e,finishReason:f,generationTime:g,promptTokens:h,completionTokens:i,reasoningTokens:j,cachedTokens:k,cacheCreationTokens:l,billableWebSearchCalls:m}))}).transform(({data:a})=>a))),fa=class{constructor(a){this.config=a,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]},this.provider=`${a.provider}.batch`}async doStartBatch({requests:a,providerOptions:b,headers:c,abortSignal:d,webhookUrl:e}){var f,g=a;for(let a of g){let b=a.type;if("text"!==b)throw new cI({functionality:`batch request type: ${b}`,message:`The AI Gateway Batch API does not support batch requests with type "${b}".`})}let h=function(a){var b;let c=null==(b=a[0])?void 0:b.modelId;if(null==c)throw new cu({argument:"requests",message:"The AI Gateway Batch API requires at least one request."});for(let b of a)if(b.modelId!==c)throw new cu({argument:"requests",message:`The AI Gateway Batch API requires all requests in a batch to use the same model. Found "${c}" and "${b.modelId}".`});return c}(a),i=this.config.headers?await d2(this.config.headers):void 0,j=function(a){let b=null==a?void 0:a.gateway;if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b.idempotencyKey;return"string"==typeof c&&c.length>0?c:void 0}(b),k=function(a){let b=null==a?void 0:a.gateway;if(null==b||"object"!=typeof b||Array.isArray(b)||!("idempotencyKey"in b))return a;let{idempotencyKey:c,...d}=b,e={...a};if(0===Object.keys(d).length?delete e.gateway:e.gateway=d,0!==Object.keys(e).length)return e}(b);try{let{value:b}=await d_({url:this.getBatchUrl("start"),headers:cJ(i,c,{"ai-model-id":h},await d2(this.config.o11yHeaders),null!=j?{"idempotency-key":j}:void 0),body:{...null!=e&&{callbackUrl:e},requests:a.map(a=>({id:a.id,type:a.type,modelId:a.modelId,options:function(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=fb(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=fb(b.data))}return a}(a.options)})),...null!=k&&{providerOptions:k}},successfulResponseHandler:d6(fk),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{batchId:b.batchId,...fd(b),warnings:null!=(f=b.warnings)?f:[]}}catch(a){if(fc(a))throw a;throw await eZ(a,await e0(null!=i?i:{}))}}async doGetBatchStatus({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await d2(this.config.headers):void 0;try{let{value:e}=await d_({url:this.getBatchUrl("status"),headers:cJ(d,b,await d2(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:d6(fl),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return fd(e)}catch(a){if(fc(a))throw a;throw await eZ(a,await e0(null!=d?d:{}))}}async doGetBatchResults({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await d2(this.config.headers):void 0;try{var e;let f,{value:g}=await d_({url:this.getBatchUrl("results"),headers:cJ(d,b,await d2(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:async({response:a})=>{let b=cS(a);if(null==a.body)throw new co({});return{responseHeaders:b,value:d7({stream:a.body,schema:ff})}},failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return e=fe(g),f=!1,new ReadableStream({async pull(a){if(!f)try{let{value:b,done:c}=await e.next();c?a.close():a.enqueue(b)}catch(b){a.error(b)}},async cancel(a){if(f=!0,e.return)try{await e.return(a)}catch(a){}}})}catch(a){if(fc(a))throw a;throw await eZ(a,await e0(null!=d?d:{}))}}getBatchUrl(a){return`${this.config.baseURL}/batch/${a}`}};function fb(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}function fc(a){return!!(a instanceof Error||a instanceof DOMException)&&("AbortError"===a.name||"TimeoutError"===a.name)}function fd(a){var b,c,d,e;let f=function({total:a,pending:b,completed:c,failed:d}){if(dj(a)&&dj(b)&&dj(c)&&dj(d)&&b+c+d===a)return{total:a,pending:b,completed:c,failed:d}}({total:null==(b=a.requestCounts)?void 0:b.total,pending:null==(c=a.requestCounts)?void 0:c.pending,completed:null==(d=a.requestCounts)?void 0:d.completed,failed:null==(e=a.requestCounts)?void 0:e.failed});return{status:a.status,...null!=a.rawStatus&&{rawStatus:a.rawStatus},...null!=f&&{requestCounts:f},...null!=a.error&&{error:{message:a.error.message,...null!=a.error.type&&{type:a.error.type},...null!=a.error.code&&{code:a.error.code},...null!=a.error.statusCode&&{statusCode:a.error.statusCode}}},...null!=a.createdAt&&{createdAt:a.createdAt},...null!=a.expiresAt&&{expiresAt:a.expiresAt},...null!=a.providerMetadata&&{providerMetadata:a.providerMetadata}}}async function*fe(a){var b;for await(let c of a){if("succeeded"===c.status){let a=null==(b=c.result)?void 0:b.response;void 0!==a&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp))}yield c}}var ff=en.object({type:en.literal("text"),id:en.string(),status:en.enum(["cancelled","expired","failed","succeeded"])}).catchall(en.unknown()),fg=en.object({message:en.string(),type:en.string().nullish(),code:en.string().nullish(),statusCode:en.number().nullish()}),fh=en.object({total:en.number().nullish(),pending:en.number().nullish(),completed:en.number().nullish(),failed:en.number().nullish()}),fi=en.record(en.string(),en.record(en.string(),en.unknown())),fj=en.object({status:en.enum(["completed","failed","pending"]),rawStatus:en.string().nullish(),requestCounts:fh.nullish(),error:fg.nullish(),createdAt:en.string().nullish(),expiresAt:en.string().nullish(),providerMetadata:fi.nullish()}),fk=fj.extend({batchId:en.string(),warnings:en.array(en.object({requestId:en.string().nullish(),warning:en.unknown()}).catchall(en.unknown())).nullish()}),fl=fj,fm=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}static[be](a){return ed({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs(a){let{abortSignal:b,...c}=a;return{args:this.maybeEncodeFileParts(c),warnings:[]}}async doGenerate(a){var b;let{args:c,warnings:d}=await this.getArgs(a),{abortSignal:e}=a,f=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:g,value:h,rawValue:i}=await d_({url:this.getUrl(),headers:cJ(f,a.headers,this.getModelConfigHeaders(this.modelId,!1),await d2(this.config.o11yHeaders)),body:c,successfulResponseHandler:d6(en.any()),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{...h,request:{body:c},response:{headers:g,body:i},warnings:[...null!=(b=h.warnings)?b:[],...d]}}catch(a){throw await eZ(a,await e0(null!=f?f:{}))}}async doStream(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await d2(this.config.headers):void 0;try{let f,{value:g,responseHeaders:h}=await d_({url:this.getUrl(),headers:cJ(e,a.headers,this.getModelConfigHeaders(this.modelId,!0),await d2(this.config.o11yHeaders)),body:b,successfulResponseHandler:(f=en.any(),async({response:a,url:b,requestBodyValues:c})=>{let d=cS(a);if(null==a.body)throw new co({});return{responseHeaders:d,value:dZ({stream:function({stream:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e}){let f=a.getReader(),g=!1,h=()=>{g||(f.releaseLock(),g=!0)};return new ReadableStream({async pull(a){try{let{done:b,value:c}=await f.read();b?(h(),a.close()):a.enqueue(c)}catch(f){if(h(),cU(f))return void a.error(f);a.error(cX({error:new ck({message:"Failed to process successful response",cause:f,statusCode:d,url:b,responseHeaders:e,requestBodyValues:c}),url:b,requestBodyValues:c}))}},async cancel(a){try{await f.cancel(a)}finally{h()}}})}({stream:a.body,url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d}),schema:f})}}),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{stream:g.pipeThrough(new TransformStream({start(a){c.length>0&&a.enqueue({type:"stream-start",warnings:c})},transform(b,c){if(b.success){let d=b.value;("raw"!==d.type||a.includeRawChunks)&&("response-metadata"===d.type&&d.timestamp&&"string"==typeof d.timestamp&&(d.timestamp=new Date(d.timestamp)),c.enqueue(d))}else c.error(b.error)}})),request:{body:b},response:{headers:h}}}catch(a){throw await eZ(a,await e0(null!=e?e:{}))}}maybeEncodeFileParts(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=fn(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=fn(b.data))}return a}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(a,b){return{"ai-language-model-specification-version":"4","ai-language-model-id":a,"ai-language-model-streaming":String(b)}}};function fn(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}var fo=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[be](a){return ed({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doEmbed({values:a,headers:b,abortSignal:c,providerOptions:d}){var e,f;let g=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await d_({url:this.getUrl(),headers:cJ(g,null!=b?b:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{values:a,...d?{providerOptions:d}:{}},successfulResponseHandler:d6(fq),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...c&&{abortSignal:c},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:null!=(e=i.usage)?e:void 0,providerMetadata:i.providerMetadata,response:{headers:h,body:j},warnings:null!=(f=i.warnings)?f:[]}}catch(a){throw await eZ(a,await e0(null!=g?g:{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}},fp=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fq=dS(()=>dU(en.object({embeddings:en.array(en.array(en.number())),usage:en.object({tokens:en.number()}).nullish(),warnings:en.array(fp).optional(),providerMetadata:en.record(en.string(),en.record(en.string(),en.unknown())).optional()}))),fr=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}static[be](a){return ed({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doGenerate({prompt:a,n:b,size:c,aspectRatio:d,seed:e,files:f,mask:g,providerOptions:h,headers:i,abortSignal:j}){var k,l,m,n;let o=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:p,value:q}=await d_({url:this.getUrl(),headers:cJ(o,null!=i?i:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{prompt:a,n:b,...c&&{size:c},...d&&{aspectRatio:d},...e&&{seed:e},...h&&{providerOptions:h},...f&&{files:f.map(a=>fs(a))},...g&&{mask:fs(g)}},successfulResponseHandler:d6(fw),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...j&&{abortSignal:j},fetch:this.config.fetch});return{images:q.images,...null!=q.isRetryable&&{isRetryable:q.isRetryable},warnings:null!=(k=q.warnings)?k:[],providerMetadata:q.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:p},...null!=q.usage&&{usage:{inputTokens:null!=(l=q.usage.inputTokens)?l:void 0,outputTokens:null!=(m=q.usage.outputTokens)?m:void 0,totalTokens:null!=(n=q.usage.totalTokens)?n:void 0}}}}catch(a){throw await eZ(a,await e0(null!=o?o:{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function fs(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:cR(a.data)}:a}var ft=en.object({images:en.array(en.unknown()).optional()}).catchall(en.unknown()),fu=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fv=en.object({inputTokens:en.number().nullish(),outputTokens:en.number().nullish(),totalTokens:en.number().nullish()}),fw=en.object({images:en.array(en.string()),isRetryable:en.boolean().optional(),warnings:en.array(fu).optional(),providerMetadata:en.record(en.string(),ft).optional(),usage:fv.optional()}),fx=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(a){var b,c;let{headers:d,abortSignal:e}=a,f=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:g,value:h}=await d_({url:this.getUrl(),headers:cJ(f,null!=d?d:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(a),successfulResponseHandler:async({response:a,url:b,requestBodyValues:c})=>{if(null==a.body)throw new ck({message:"SSE response body is empty",url:b,requestBodyValues:c,statusCode:a.status});let d=dZ({stream:a.body,schema:fC}).getReader(),{done:e,value:f}=await d.read();if(d.releaseLock(),e||!f)throw new ck({message:"SSE stream ended without a data event",url:b,requestBodyValues:c,statusCode:a.status});if(!f.success)throw new ck({message:"Failed to parse video SSE event",cause:f.error,url:b,requestBodyValues:c,statusCode:a.status});let g=f.value;if("error"===g.type)throw new ck({message:g.message,statusCode:g.statusCode,url:b,requestBodyValues:c,responseHeaders:Object.fromEntries([...a.headers]),responseBody:JSON.stringify(g),data:{error:{message:g.message,type:g.errorType,param:g.param}}});return{value:{videos:g.videos,warnings:g.warnings,providerMetadata:g.providerMetadata},responseHeaders:Object.fromEntries([...a.headers])}},failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{videos:h.videos,warnings:null!=(b=h.warnings)?b:[],providerMetadata:null!=(c=h.providerMetadata)?c:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:g}}}catch(a){throw await eZ(a,await e0(null!=f?f:{}))}}async handleWebhookOption({webhook:a}){let{url:b,received:c}=await a();return{webhookUrl:b,received:c}}async doStart(a){var b,c;let{headers:d,abortSignal:e,webhookUrl:f}=a,g=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:h,value:i}=await d_({url:this.getStartUrl(),headers:cJ(g,null!=d?d:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{...this.buildRequestBody(a),...f&&{callbackUrl:f}},successfulResponseHandler:d6(fD),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{operation:i.operation,warnings:null!=(b=i.warnings)?b:[],providerMetadata:null!=(c=i.providerMetadata)?c:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:h}}}catch(a){throw await eZ(a,await e0(null!=g?g:{}))}}async doStatus({operation:a,abortSignal:b,headers:c}){var d,e,f,g,h,i;let j=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:k,value:l}=await d_({url:this.getStatusUrl(),headers:cJ(j,null!=c?c:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{operation:a},successfulResponseHandler:d6(fE),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...b&&{abortSignal:b},fetch:this.config.fetch}),m={timestamp:new Date,modelId:this.modelId,headers:k};if("completed"===l.status)return{status:"completed",videos:l.videos,warnings:null!=(d=l.warnings)?d:[],providerMetadata:null!=(e=l.providerMetadata)?e:void 0,response:m};if("error"===l.status)return{status:"error",error:l.error,providerMetadata:null!=(f=l.providerMetadata)?f:void 0,response:m};if("cancelled"===l.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:null!=(g=l.providerMetadata)?g:void 0,response:m};return{status:"pending",warnings:null!=(h=l.warnings)?h:[],providerMetadata:null!=(i=l.providerMetadata)?i:void 0,response:m}}catch(a){throw await eZ(a,await e0(null!=j?j:{}))}}buildRequestBody({prompt:a,n:b,aspectRatio:c,resolution:d,duration:e,fps:f,seed:g,generateAudio:h,image:i,frameImages:j,inputReferences:k,providerOptions:l}){return{prompt:a,n:b,...c&&{aspectRatio:c},...d&&{resolution:d},...e&&{duration:e},...f&&{fps:f},...g&&{seed:g},...void 0!==h&&{generateAudio:h},...l&&{providerOptions:l},...i&&{image:fy(i)},...j&&{frameImages:j.map(a=>({...a,image:fy(a.image)}))},...k&&{inputReferences:k.map(a=>fy(a))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function fy(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:cR(a.data)}:a}var fz=en.object({videos:en.array(en.unknown()).optional()}).catchall(en.unknown()),fA=en.union([en.object({type:en.literal("url"),url:en.string(),mediaType:en.string()}),en.object({type:en.literal("base64"),data:en.string(),mediaType:en.string()})]),fB=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fC=en.discriminatedUnion("type",[en.object({type:en.literal("result"),videos:en.array(fA),warnings:en.array(fB).optional(),providerMetadata:en.record(en.string(),fz).optional()}),en.object({type:en.literal("error"),message:en.string(),errorType:en.string(),statusCode:en.number(),param:en.unknown().nullable()})]),fD=en.object({operation:en.unknown(),warnings:en.array(fB).nullish(),providerMetadata:en.record(en.string(),fz).nullish()}),fE=en.discriminatedUnion("status",[en.object({status:en.literal("pending"),warnings:en.array(fB).nullish(),providerMetadata:en.record(en.string(),fz).nullish()}),en.object({status:en.literal("completed"),videos:en.array(fA),warnings:en.array(fB).nullish(),providerMetadata:en.record(en.string(),fz).nullish()}),en.object({status:en.literal("error"),error:en.string(),providerMetadata:en.record(en.string(),fz).nullish()}),en.object({status:en.literal("cancelled"),providerMetadata:en.record(en.string(),fz).nullish()})]),fF=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedQuestionTypes=["choice","score","boolean"]}get provider(){return this.config.provider}async doEvaluate({state:a,questions:b,headers:c,abortSignal:d,providerOptions:e}){var f;let g=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await d_({url:this.getUrl(),headers:cJ(g,null!=c?c:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{state:a,questions:b,...e?{providerOptions:e}:{}},successfulResponseHandler:d6(fI),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...d&&{abortSignal:d},fetch:this.config.fetch});return{answers:i.answers,...i.rounding?{rounding:i.rounding}:{},...i.usage?{usage:i.usage}:{},warnings:null!=(f=i.warnings)?f:[],providerMetadata:i.providerMetadata,response:{modelId:this.modelId,headers:h,body:j}}}catch(a){throw await eZ(a,await e0(null!=g?g:{}))}}getUrl(){return`${this.config.baseURL}/evaluation-model`}getModelConfigHeaders(){return{"ai-evaluation-model-specification-version":"4","ai-model-id":this.modelId}}},fG=en.discriminatedUnion("type",[en.object({type:en.literal("choice"),choice:en.string(),probabilities:en.record(en.string(),en.number()).optional()}),en.object({type:en.literal("score"),score:en.number(),probabilities:en.record(en.string(),en.number()).optional()}),en.object({type:en.literal("boolean"),probability:en.number()})]),fH=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fI=dS(()=>dU(en.object({answers:en.record(en.string(),fG),rounding:en.object({probabilityDecimals:en.number().optional(),scoreDecimals:en.number().optional()}).optional(),usage:en.object({inputTokens:en.number().optional(),outputTokens:en.number().optional()}).optional(),warnings:en.array(fH).optional(),providerMetadata:en.record(en.string(),en.record(en.string(),en.unknown())).optional()}))),fJ=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:a,query:b,topN:c,headers:d,abortSignal:e,providerOptions:f}){var g;let h=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:i,value:j,rawValue:k}=await d_({url:this.getUrl(),headers:cJ(h,null!=d?d:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{documents:a,query:b,...null!=c?{topN:c}:{},...f?{providerOptions:f}:{}},successfulResponseHandler:d6(fL),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{ranking:j.ranking,providerMetadata:j.providerMetadata,response:{headers:i,body:k},warnings:null!=(g=j.warnings)?g:[]}}catch(a){throw await eZ(a,await e0(null!=h?h:{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}},fK=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fL=dS(()=>dU(en.object({ranking:en.array(en.object({index:en.number(),relevanceScore:en.number()})),warnings:en.array(fK).optional(),providerMetadata:en.record(en.string(),en.record(en.string(),en.unknown())).optional()}))),fM=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:a,voice:b,outputFormat:c,instructions:d,speed:e,language:f,providerOptions:g,headers:h,abortSignal:i}){var j;let k=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:l,value:m,rawValue:n}=await d_({url:this.getUrl(),headers:cJ(k,null!=h?h:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{text:a,...b&&{voice:b},...c&&{outputFormat:c},...d&&{instructions:d},...null!=e&&{speed:e},...f&&{language:f},...g&&{providerOptions:g}},successfulResponseHandler:d6(fP),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...i&&{abortSignal:i},fetch:this.config.fetch});return{audio:m.audio,warnings:null!=(j=m.warnings)?j:[],providerMetadata:m.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:l,body:n}}}catch(a){throw await eZ(a,await e0(null!=k?k:{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}},fN=en.object({}).catchall(en.unknown()),fO=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fP=en.object({audio:en.string(),warnings:en.array(fO).optional(),providerMetadata:en.record(en.string(),fN).optional()}),fQ=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:a,mediaType:b,providerOptions:c,headers:d,abortSignal:e}){var f,g,h,i;let j=this.config.headers?await d2(this.config.headers):void 0;try{let{responseHeaders:k,value:l,rawValue:m}=await d_({url:this.getUrl(),headers:cJ(j,null!=d?d:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),body:{audio:a instanceof Uint8Array?cR(a):a,mediaType:b,...c&&{providerOptions:c}},successfulResponseHandler:d6(fU),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),...e&&{abortSignal:e},fetch:this.config.fetch});return{text:l.text,segments:null!=(f=l.segments)?f:[],language:null!=(g=l.language)?g:void 0,durationInSeconds:null!=(h=l.durationInSeconds)?h:void 0,warnings:null!=(i=l.warnings)?i:[],providerMetadata:l.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:k,body:m}}}catch(a){throw await eZ(a,await e0(null!=j?j:{}))}}async doStream(a){var b,c,d,e,f;let g,h,i,j=null!=(d=null==(c=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:c.call(b))?d:new Date,k=cJ(await d2(null!=(e=this.config.headers)?e:{}),null!=(f=a.headers)?f:{},this.getModelConfigHeaders(),await d2(this.config.o11yHeaders)),l=await e0(k),m={type:"transcription-stream.start",inputAudioFormat:a.inputAudioFormat,...null!=a.providerOptions&&{providerOptions:a.providerOptions},...null!=a.includeRawChunks&&{includeRawChunks:a.includeRawChunks}};return{stream:function({webSocket:a,url:b,protocols:c,headers:d,startFrame:e,audio:f,abortSignal:g,authMethod:h}){let i=!1,j=()=>{};return new ReadableStream({start:k=>{let l,m,n,o=!1,p=!1;j=a=>{null!=l?l.cancel().catch(()=>{}):f.cancel().catch(()=>{}),null==n||n.close(a)};let q=a=>{i||(i=!0,j(),fV(k,a,h))},r=async a=>{let b=f.getReader();l=b;try{for(;;){let{done:c,value:d}=await b.read();if(c||i)break;let e="string"==typeof d?function(a){let b=cQ(a.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(b,a=>a.codePointAt(0))}(d):d;for(let b=0;b<e.length&&!i;b+=65536)a.send(e.subarray(b,b+65536)),await cO(a)}}finally{b.releaseLock(),l===b&&(l=void 0)}i||p||a.send(JSON.stringify({type:"transcription-stream.audio-done"}))};n=function({url:a,protocols:b,headers:c,webSocket:d,abortSignal:e,onOpen:f,onMessageText:g,onProcessingError:h,onSocketError:i,onClose:j,onAbort:k}){var l,m;let n,o,p=a=>{null!=o&&(null==e||e.removeEventListener("abort",o),o=void 0);try{null==n||n.close(a)}catch(a){}};if(null==e?void 0:e.aborted)return null==k||k(null!=(l=e.reason)?l:Error("Aborted")),{socket:void 0,close:p};try{n=new(function(a){let b=null!=a?a:globalThis.WebSocket;if(null==b)throw Error("No WebSocket implementation available.");return b}(d))(a,b,{headers:(m=null!=c?c:{},Object.fromEntries(Object.entries(m).filter(([a,b])=>null!=b)))})}catch(a){return h(a),{socket:void 0,close:p}}null!=e&&null!=k&&(o=()=>{var a;return k(null!=(a=e.reason)?a:Error("Aborted"))},e.addEventListener("abort",o,{once:!0}));let q=n;n.onopen=()=>{try{null==f||f(q)}catch(a){h(a)}};let r=Promise.resolve();return n.onmessage=a=>{r=r.then(()=>cN(a.data)).then(a=>g(a)).catch(h)},n.onerror=()=>{r=r.then(()=>null==i?void 0:i()).catch(h)},n.onclose=a=>{let b="number"==typeof(null==a?void 0:a.code)?a.code:void 0,c="string"==typeof(null==a?void 0:a.reason)?a.reason:void 0;r=r.then(()=>null==j?void 0:j({code:b,reason:c})).catch(h)},{socket:n,close:p}}({url:b,protocols:c,headers:d,webSocket:a,abortSignal:g,onAbort:a=>{i||(i=!0,j(),k.error(a))},onProcessingError:q,onOpen:a=>{a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:a=>{if(i)return;let b=function(a){let b;try{b=dn(a)}catch(a){return}if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b;switch(c.type){case"stream-start":return Array.isArray(c.warnings)&&c.warnings.every(eh)?c:void 0;case"transcript-delta":return ee(c.delta)&&eg(c.id,ee)&&eg(c.providerMetadata,dh)?c:void 0;case"transcript-partial":return ee(c.text)&&eg(c.id,ee)&&eg(c.startSecond,ef)&&eg(c.durationInSeconds,ef)&&eg(c.channelIndex,ef)&&eg(c.providerMetadata,dh)?c:void 0;case"transcript-final":return ee(c.text)&&eg(c.id,ee)&&eg(c.startSecond,ef)&&eg(c.endSecond,ef)&&eg(c.channelIndex,ef)&&eg(c.providerMetadata,dh)?c:void 0;case"finish":return ee(c.text)&&Array.isArray(c.segments)&&c.segments.every(ei)&&eg(c.language,ee)&&eg(c.durationInSeconds,ef)&&eg(c.providerMetadata,dh)?c:void 0;case"response-metadata":{if(!(eg(c.modelId,ee)&&eg(c.headers,dh)))return;let a=c.timestamp;if(null==a)return{...c,timestamp:void 0};if("string"!=typeof a)return;let b=new Date(a);return Number.isNaN(b.getTime())?void 0:{...c,timestamp:b}}case"raw":return"rawValue"in c?c:void 0;case"error":return"error"in c?c:void 0;default:return}}(a);if(null!=b){if("finish"===b.type){i=!0,k.enqueue(b),k.close(),j(1e3);return}"error"===b.type&&(o=!0,m=b.error,p=!0,null!=l?(l.cancel().catch(()=>{}),l=void 0):f.cancel().catch(()=>{})),k.enqueue(b)}},onSocketError:()=>{q(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(o){if(i)return;fX(m,h).then(q);return}q(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{i||(i=!0,j())}})}({webSocket:this.config.webSocket,url:fR(this.config.baseURL,this.modelId),protocols:null==(i=(null==(h=(g=cZ(k)).authorization)?void 0:h.startsWith("Bearer "))?h.slice(7):void 0)?[el]:em(el,i,{teamIdOrSlug:g[e_]}),headers:k,startFrame:m,audio:a.audio,abortSignal:a.abortSignal,authMethod:l}),request:{body:m},response:{timestamp:j,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function fR(a,b){let c=new URL(`${a.replace(/^http/,"ws")}/transcription-model`);return c.searchParams.set("ai-model-id",b),c.toString()}var fS=en.object({}).catchall(en.unknown()),fT=en.discriminatedUnion("type",[en.object({type:en.literal("unsupported"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("compatibility"),feature:en.string(),details:en.string().optional()}),en.object({type:en.literal("deprecated"),setting:en.string(),message:en.string()}),en.object({type:en.literal("other"),message:en.string()})]),fU=en.object({text:en.string(),segments:en.array(en.object({text:en.string(),startSecond:en.number(),endSecond:en.number()})).optional(),language:en.string().nullish(),durationInSeconds:en.number().nullish(),warnings:en.array(fT).optional(),providerMetadata:en.record(en.string(),fS).optional()});async function fV(a,b,c){a.error(await eZ(b,c))}var fW={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function fX(a,b){return"object"==typeof a&&null!=a&&"message"in a&&"string"==typeof a.message&&"type"in a&&"string"==typeof a.type&&a.type in fW?eT({response:{error:{message:a.message,type:a.type}},statusCode:fW[a.type],authMethod:b}):Error(`AI Gateway transcription stream failed: ${null!=a&&"object"==typeof a&&"message"in a&&"string"==typeof a.message?a.message:cq(a)}`)}var fY=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=await this.config.createClientSecret({modelId:this.modelId,...(null==a?void 0:a.expiresAfterSeconds)!=null&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:e.token,url:(b=this.config.baseURL,c=this.modelId,(d=new URL(`${b.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",c),d.toString()),...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}getWebSocketConfig(a){return{url:a.url,protocols:em("ai-gateway-realtime.v1",a.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(a){return a}serializeClientEvent(a){return a}buildSessionConfig(a){return a}},fZ=d1({id:"gateway.exa_search",inputSchema:dS(()=>dU(en.object({query:en.string().describe("Natural-language web search query. This is required."),type:en.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:en.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:en.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:en.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:en.array(en.string()).optional().describe("Only return results from these domains."),exclude_domains:en.array(en.string()).optional().describe("Exclude results from these domains."),start_published_date:en.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:en.string().optional().describe("Only return links published before this ISO 8601 date."),contents:en.object({text:en.union([en.boolean(),en.object({max_characters:en.number().optional(),include_html_tags:en.boolean().optional(),verbosity:en.enum(["compact","standard","full"]).optional(),include_sections:en.array(en.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:en.array(en.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:en.union([en.boolean(),en.object({query:en.string().optional(),max_characters:en.number().optional()})]).optional(),max_age_hours:en.number().optional(),livecrawl_timeout:en.number().optional(),subpages:en.number().optional(),subpage_target:en.union([en.string(),en.array(en.string())]).optional(),extras:en.object({links:en.number().optional(),image_links:en.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:dS(()=>dU(en.union([en.object({requestId:en.string(),searchType:en.string().optional(),resolvedSearchType:en.string().optional(),results:en.array(en.object({title:en.string(),url:en.string(),id:en.string(),publishedDate:en.string().nullable().optional(),author:en.string().nullable().optional(),image:en.string().nullable().optional(),favicon:en.string().nullable().optional(),text:en.string().optional(),highlights:en.array(en.string()).optional(),highlightScores:en.array(en.number()).optional(),summary:en.string().optional(),subpages:en.array(en.any()).optional(),extras:en.object({links:en.array(en.string()).optional(),imageLinks:en.array(en.string()).optional()}).optional()})),costDollars:en.object({total:en.number().optional(),search:en.record(en.string(),en.number()).optional()}).optional()}),en.object({error:en.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:en.number().optional(),message:en.string()})])))}),f$=d1({id:"gateway.parallel_search",inputSchema:dS(()=>dU(en.object({objective:en.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:en.array(en.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:en.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:en.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:en.object({include_domains:en.array(en.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:en.array(en.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:en.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:en.object({max_chars_per_result:en.number().optional().describe("Maximum characters per result."),max_chars_total:en.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:en.object({max_age_seconds:en.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:dS(()=>dU(en.union([en.object({searchId:en.string(),results:en.array(en.object({url:en.string(),title:en.string(),excerpt:en.string(),publishDate:en.string().nullable().optional(),relevanceScore:en.number().optional()}))}),en.object({error:en.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:en.number().optional(),message:en.string()})])))}),f_=d1({id:"gateway.perplexity_search",inputSchema:dS(()=>dU(en.object({query:en.union([en.string(),en.array(en.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:en.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:en.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:en.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:en.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:en.array(en.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:en.array(en.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:en.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:en.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:en.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:en.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:en.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:dS(()=>dU(en.union([en.object({results:en.array(en.object({title:en.string(),url:en.string(),snippet:en.string(),date:en.string().optional(),lastUpdated:en.string().optional()})),id:en.string()}),en.object({error:en.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:en.number().optional(),message:en.string()})])))}),f0=en.object({count:en.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:en.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:en.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:en.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:en.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:en.array(en.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:en.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),f1=en.object({count:en.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:en.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:en.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:en.array(en.string()).optional().describe("Only return results from these bare domains."),exclude_domains:en.array(en.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:en.number().optional().describe("Maximum characters in each web-result snippet."),highlights:en.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:en.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:en.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:en.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),f2=dS(()=>dU(en.object({query:en.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:en.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:en.object({data:f0.optional(),web:f1.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:en.object({latitude:en.number().describe("Latitude between -90 and 90."),longitude:en.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:en.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:en.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:en.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:en.object({image_dark_mode:en.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:en.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:en.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),f3=en.union([en.boolean(),en.number(),en.string()]).nullable(),f4=en.object({content_format:en.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:en.number().optional(),data:en.string().nullish(),records:en.array(en.record(en.string(),f3)).nullish(),dataset:en.object({columns:en.array(en.object({name:en.string(),type:en.enum(["boolean","date","datetime","number","string"]),unit:en.string().nullish()})),rows:en.array(en.array(f3)),total_rows:en.number(),truncated:en.boolean(),ref:en.string(),sources:en.array(en.object({name:en.string(),index:en.enum(["data","web"]).optional()})),provenance:en.enum(["query","web_extraction"]).optional()}).nullish(),card_data:en.object({}).passthrough().nullish(),card_data_schema:en.object({}).passthrough().nullish(),url:en.string().nullish(),expires_at:en.string().nullish(),total_rows:en.number().nullish(),truncated:en.boolean().optional(),export_pricing:en.object({baseline_usd:en.number(),free_rows:en.number(),max_rows_ceiling:en.number(),row_cpm_usd:en.number()}).nullish(),manifest:en.array(en.object({dtype:en.enum(["boolean","date","datetime","number","string"]).nullish(),entity:en.string().nullish(),metric:en.string().nullish(),name:en.string().nullish(),unit:en.string().nullish()})).nullish()}).passthrough(),f5=en.object({card_id:en.string().nullish(),title:en.string().nullish(),description:en.string().nullish(),semantic_description:en.string().nullish(),webpage_url:en.string().nullish(),image_url:en.string().nullish(),embed_url:en.string().nullish(),sources:en.array(en.object({source_name:en.string().nullish(),source_description:en.string().nullish(),source_index:en.enum(["data","web"]),source_text:en.string().nullish(),url:en.string().nullish()})).nullish(),methodologies:en.array(en.object({methodology_name:en.string().nullable(),methodology_description:en.string().nullable()})).nullish(),source_indexes:en.array(en.enum(["data","web"])).nullish(),card_type:en.string().nullish(),relevance:en.enum(["High","Low","Medium"]).nullish(),content:f4.nullish(),exportable:en.boolean().optional(),nodes:en.array(en.object({id:en.string(),type:en.enum(["entity","metric"]),name:en.string(),description:en.string().nullish()})).nullish(),metric_definitions:en.array(en.object({name:en.string(),definition:en.string()})).nullish(),data_freshness:en.object({coverage_end:en.string().nullish(),data_as_of:en.string().nullish(),last_updated:en.string().nullish()}).nullish()}).passthrough(),f6=en.object({title:en.string(),url:en.string(),snippet:en.string().nullish(),source_name:en.string().nullish(),publish_date:en.string().nullish(),content:f4.nullish()}).passthrough(),f7=d1({id:"gateway.tako_search",inputSchema:f2,outputSchema:dS(()=>dU(en.union([en.object({request_id:en.string(),cards:en.array(f5).optional(),web_results:en.array(f6).optional(),usage:en.object({total_cost_usd:en.number(),compute:en.object({cost_usd:en.number()}).nullish(),data:en.object({cost_usd:en.number(),datasets:en.number()}).nullish()}).nullish(),related:en.array(en.object({}).passthrough()).nullish()}).passthrough(),en.object({error:en.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:en.number().optional(),message:en.string()})])))}),f8={exaSearch:(a={})=>fZ(a),parallelSearch:(a={})=>f$(a),perplexitySearch:(a={})=>f_(a),takoSearch:(a={})=>f7(a)};async function f9(){var a;return null==(a=(0,ek.getContext)().headers)?void 0:a["x-vercel-id"]}var ga=en.object({token:en.string(),expiresAt:en.number().nullish()});async function gb(a){let b=di({settingValue:a.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return b?{token:b,authMethod:"api-key"}:{token:await (0,ek.getVercelOidcToken)(),authMethod:"oidc"}}!function(a={}){var b,c,d;let e=null,f=null,g=null!=(b=a.metadataCacheRefreshMillis)?b:3e5,h=0,i=null!=(c=null==(d=a.baseURL)?void 0:d.replace(/\/$/,""))?c:"https://ai-gateway.vercel.sh/v4/ai",j=b=>c$({Authorization:`Bearer ${b.token}`,"ai-gateway-protocol-version":"0.0.1",[e$]:b.authMethod,...null!=a.teamIdOrSlug?{[e_]:a.teamIdOrSlug}:{},...a.headers},"ai-sdk/gateway/4.0.86"),k=async()=>{try{return j(await gb(a))}catch(a){throw es.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},l=async()=>{try{return await gb(a)}catch(a){throw es.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},m=async b=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let c=j(await l()),d=new URL("/v1/realtime/client-secrets",i).toString();try{let{value:e}=await d_({url:d,headers:c,body:{model:b.modelId,...null!=b.routeKind&&{routeKind:b.routeKind},...null!=b.expiresAfterSeconds&&{expiresIn:b.expiresAfterSeconds}},successfulResponseHandler:d6(ga),failedResponseHandler:d5({errorSchema:en.any(),errorToMessage:a=>{var b;return null!=(b=cq(a))?b:"unknown error"}}),fetch:a.fetch});return{token:e.token,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}catch(a){throw await eZ(a,await e0(c))}},n=()=>{let a=di({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),b=di({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),c=di({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),d=di({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let e=await f9();return{...a&&{"ai-o11y-deployment-id":a},...b&&{"ai-o11y-environment":b},...c&&{"ai-o11y-region":c},...e&&{"ai-o11y-request-id":e},...d&&{"ai-o11y-project-id":d}}}},o=b=>new fm(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()}),p=async()=>{var b,c,d;let j=null!=(d=null==(c=null==(b=a._internal)?void 0:b.currentDate)?void 0:c.call(b).getTime())?d:Date.now();return(!e||j-h>g)&&(h=j,e=new e3({baseURL:i,headers:k,fetch:a.fetch}).getAvailableModels().then(a=>(f=a,a)).catch(async a=>{throw await eZ(a,await e0(await k()))})),f?Promise.resolve(f):e},q=async()=>new e3({baseURL:i,headers:k,fetch:a.fetch}).getCredits().catch(async a=>{throw await eZ(a,await e0(await k()))}),r=async b=>new e6({baseURL:i,headers:k,fetch:a.fetch}).getSpendReport(b).catch(async a=>{throw await eZ(a,await e0(await k()))}),s=async b=>new e8({baseURL:i,headers:k,fetch:a.fetch}).getGenerationInfo(b).catch(async a=>{throw await eZ(a,await e0(await k()))}),t=function(a){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return o(a)};t.specificationVersion="v4",t.getAvailableModels=p,t.getCredits=q,t.getSpendReport=r,t.getGenerationInfo=s,t.imageModel=b=>new fr(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()}),t.languageModel=o,t.experimental_batch=()=>new fa({provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});let u=b=>new fo(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.embeddingModel=u,t.textEmbeddingModel=u,t.videoModel=b=>new fx(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});let v=b=>new fJ(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.rerankingModel=v,t.reranking=v;let w=b=>new fF(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.evaluationModel=w,t.evaluation=w;let x=b=>new fM(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n()});t.speechModel=x,t.speech=x;let y=b=>new fQ(b,{provider:"gateway",baseURL:i,headers:k,fetch:a.fetch,o11yHeaders:n(),webSocket:a.webSocket});t.transcriptionModel=y,t.transcription=y,t.experimental_transcription=Object.assign(a=>y(a),{getToken:async a=>{let b=await m({modelId:a.model,routeKind:"transcription",...null!=a.expiresAfterSeconds&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:b.token,url:fR(i,a.model),...null!=b.expiresAt&&{expiresAt:b.expiresAt}}}});let z=b=>new fY(b,{provider:"gateway.realtime",baseURL:i,teamIdOrSlug:a.teamIdOrSlug,createClientSecret:m});t.experimental_realtime=Object.assign(a=>z(a),{getToken:async a=>{let{model:b,...c}=a,d=z(b),e=await d.doCreateClientSecret(c);return{token:e.token,url:e.url,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}}),t.chat=t.languageModel,t.embedding=t.embeddingModel,t.image=t.imageModel,t.video=t.videoModel,t.tools=f8}();var gc=Object.defineProperty,gd="AI_InvalidArgumentError",ge=`vercel.ai.error.${gd}`,gf=Symbol.for(ge),gg=class extends(ak=aB,aj=gf,ak){constructor({parameter:a,value:b,message:c}){super({name:gd,message:`Invalid argument for parameter ${a}: ${c}`}),this[aj]=!0,this.parameter=a,this.value=b}static isInstance(a){return aB.hasMarker(a,ge)}},gh=Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError");Symbol.for("vercel.ai.error.AI_InvalidToolInputError");Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");Symbol.for("vercel.ai.error.AI_MissingToolResultsError");Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");var gi="AI_NoObjectGeneratedError",gj=`vercel.ai.error.${gi}`,gk=Symbol.for(gj),gl=class extends(am=aB,al=gk,am){constructor({message:a="No object generated.",cause:b,text:c,response:d,usage:e,finishReason:f}){super({name:gi,message:a,cause:b}),this[al]=!0,this.text=c,this.response=d,this.usage=e,this.finishReason=f}static isInstance(a){return aB.hasMarker(a,gj)}},gm=Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError");Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchToolError");Symbol.for("vercel.ai.error.AI_StreamProviderError");Symbol.for("vercel.ai.error.AI_ToolCallRepairError");Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError");var gn="AI_UIMessageStreamError",go=`vercel.ai.error.${gn}`,gp=Symbol.for(go),gq=class extends(ao=aB,an=gp,ao){constructor({chunkType:a,chunkId:b,message:c}){super({name:gn,message:c}),this[an]=!0,this.chunkType=a,this.chunkId=b}static isInstance(a){return aB.hasMarker(a,go)}},gr=Symbol.for("vercel.ai.error.AI_InvalidDataContentError");Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");Symbol.for("vercel.ai.error.AI_MessageConversionError");Symbol.for("vercel.ai.error.AI_RetryError");var gs=!1;function gt({message:a,type:b}){"u">typeof process&&"function"==typeof process.emitWarning?process.emitWarning(a,{type:b}):console.warn(a)}var gu=async({url:a,maxBytes:b,abortSignal:c})=>{var d;let e=a.toString();try{let a=function(a,...b){let c=new Headers(bi(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}({},"ai-sdk/7.0.106",function(a=globalThis){var b,c,d;return a.window?"runtime/browser":(null==(b=a.navigator)?void 0:b.userAgent)?`runtime/${a.navigator.userAgent.toLowerCase()}`:(null==(d=null==(c=a.process)?void 0:c.versions)?void 0:d.node)?`runtime/node.js/${a.process.version.substring(0)}`:a.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}()),f=await by({url:e,headers:a,abortSignal:c});if(!f.ok)throw await bj(f),new bn({url:e,statusCode:f.status,statusText:f.statusText});return{data:await bz({response:f,url:e,maxBytes:null!=b?b:0x80000000}),mediaType:null!=(d=f.headers.get("content-type"))?d:void 0}}catch(a){if(bn.isInstance(a))throw a;throw new bn({url:e,cause:a})}},gv={array:ej.array,boolean:ej.boolean,custom:ej.custom,discriminatedUnion:ej.discriminatedUnion,enum:ej.enum,instanceof:ej.instanceof,lazy:ej.lazy,literal:ej.literal,looseObject:ej.looseObject,never:ej.never,null:ej.null,number:ej.number,object:ej.object,record:ej.record,string:ej.string,union:ej.union,unknown:ej.unknown},gw=gv.lazy(()=>gv.union([gv.null(),gv.string(),gv.number(),gv.boolean(),gv.record(gv.string(),gw.optional()),gv.array(gw)])),gx=gv.record(gv.string(),gv.record(gv.string(),gw.optional())),gy=gv.union([gv.string(),gv.instanceof(Uint8Array),gv.instanceof(ArrayBuffer),gv.custom(function(a){var b,c;return null!=(c=null==(b=globalThis.Buffer)?void 0:b.isBuffer(a))&&c},{message:"Must be a Buffer"})]),gz=gv.record(gv.string(),gv.string()),gA=gv.object({type:gv.literal("text"),text:gv.string(),providerOptions:gx.optional()}),gB=gv.object({type:gv.literal("image"),image:gv.union([gy,gv.instanceof(URL),gz]),mediaType:gv.string().optional(),providerOptions:gx.optional()}),gC=gv.discriminatedUnion("type",[gv.object({type:gv.literal("data"),data:gy}),gv.object({type:gv.literal("url"),url:gv.instanceof(URL)}),gv.object({type:gv.literal("reference"),reference:gz}),gv.object({type:gv.literal("text"),text:gv.string()})]),gD=gv.discriminatedUnion("type",[gv.object({type:gv.literal("data"),data:gy}),gv.object({type:gv.literal("url"),url:gv.instanceof(URL)})]),gE=gv.object({type:gv.literal("file"),data:gv.union([gC,gy,gv.instanceof(URL),gz]),filename:gv.string().optional(),mediaType:gv.string(),providerOptions:gx.optional()}),gF=gv.object({type:gv.literal("reasoning"),text:gv.string(),providerOptions:gx.optional()}),gG=gv.object({type:gv.literal("custom"),kind:gv.string().transform(a=>a),providerOptions:gx.optional()}),gH=gv.object({type:gv.literal("reasoning-file"),data:gv.union([gD,gy,gv.instanceof(URL)]),mediaType:gv.string(),providerOptions:gx.optional()}),gI=gv.object({type:gv.literal("tool-call"),toolCallId:gv.string(),toolName:gv.string(),input:gv.unknown(),providerOptions:gx.optional(),providerExecuted:gv.boolean().optional()}),gJ=gv.discriminatedUnion("type",[gv.object({type:gv.literal("text"),value:gv.string(),providerOptions:gx.optional()}),gv.object({type:gv.literal("json"),value:gw,providerOptions:gx.optional()}),gv.object({type:gv.literal("execution-denied"),reason:gv.string().optional(),providerOptions:gx.optional()}),gv.object({type:gv.literal("error-text"),value:gv.string(),providerOptions:gx.optional()}),gv.object({type:gv.literal("error-json"),value:gw,providerOptions:gx.optional()}),gv.object({type:gv.literal("content"),value:gv.array(gv.union([gv.object({type:gv.literal("text"),text:gv.string(),providerOptions:gx.optional()}),gv.object({type:gv.literal("file"),data:gC,mediaType:gv.string(),filename:gv.string().optional(),providerOptions:gx.optional()}),gv.object({type:gv.literal("file-data"),data:gv.string(),mediaType:gv.string(),filename:gv.string().optional(),providerOptions:gx.optional()}),gv.object({type:gv.literal("file-url"),url:gv.string(),mediaType:gv.string().optional(),providerOptions:gx.optional()}),gv.object({type:gv.literal("file-id"),fileId:gv.union([gv.string(),gv.record(gv.string(),gv.string())]),providerOptions:gx.optional()}),gv.object({type:gv.literal("file-reference"),providerReference:gv.record(gv.string(),gv.string()),providerOptions:gx.optional()}),gv.object({type:gv.literal("image-data"),data:gv.string(),mediaType:gv.string(),providerOptions:gx.optional()}),gv.object({type:gv.literal("image-url"),url:gv.string(),providerOptions:gx.optional()}),gv.object({type:gv.literal("image-file-id"),fileId:gv.union([gv.string(),gv.record(gv.string(),gv.string())]),providerOptions:gx.optional()}),gv.object({type:gv.literal("image-file-reference"),providerReference:gv.record(gv.string(),gv.string()),providerOptions:gx.optional()}),gv.object({type:gv.literal("custom"),providerOptions:gx.optional()})]))})]),gK=gv.object({type:gv.literal("tool-result"),toolCallId:gv.string(),toolName:gv.string(),output:gJ,providerOptions:gx.optional()}),gL=gv.object({type:gv.literal("tool-approval-request"),approvalId:gv.string(),toolCallId:gv.string(),reason:gv.string().optional()}),gM=gv.object({type:gv.literal("tool-approval-response"),approvalId:gv.string(),approved:gv.boolean(),reason:gv.string().optional()}),gN=gv.object({role:gv.literal("system"),content:gv.string(),providerOptions:gx.optional()}),gO=gv.object({role:gv.literal("user"),content:gv.union([gv.string(),gv.array(gv.union([gA,gB,gE]))]),providerOptions:gx.optional()}),gP=gv.object({role:gv.literal("assistant"),content:gv.union([gv.string(),gv.array(gv.union([gA,gG,gE,gF,gH,gI,gK,gL]))]),providerOptions:gx.optional()}),gQ=gv.object({role:gv.literal("tool"),content:gv.array(gv.union([gK,gM])),providerOptions:gx.optional()});gv.union([gN,gO,gP,gQ]);var gR={},gS={array:()=>gX,choice:()=>g$,json:()=>g_,object:()=>gW,text:()=>gV};for(var gT in gS)gc(gR,gT,{get:gS[gT],enumerable:!0});async function gU(a){if(void 0===a)return{value:void 0,state:"undefined-input"};let b=await cc({text:a});return b.success?{value:b.value,state:"successful-parse"}:(b=await cc({text:function(a){let b=["ROOT"],c=-1,d=null,e=0;function f(a,e,f){switch(a){case'"':c=e,b.pop(),b.push(f),b.push("INSIDE_STRING");break;case"f":case"t":case"n":c=e,d=e,b.pop(),b.push(f),b.push("INSIDE_LITERAL");break;case"-":b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=e,b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"{":c=e,b.pop(),b.push(f),b.push("INSIDE_OBJECT_START");break;case"[":c=e,b.pop(),b.push(f),b.push("INSIDE_ARRAY_START")}}function g(a,d){switch(a){case",":b.pop(),b.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":c=d,b.pop()}}function h(a,d){switch(a){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=d,b.pop()}}for(let i=0;i<a.length;i++){let j=a[i];switch(b[b.length-1]){case"ROOT":f(j,i,"FINISH");break;case"INSIDE_OBJECT_START":switch(j){case'"':b.pop(),b.push("INSIDE_OBJECT_KEY");break;case"}":c=i,b.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===j&&(b.pop(),b.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":f(j,i,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":g(j,i);break;case"INSIDE_STRING":switch(j){case'"':b.pop(),c=i;break;case"\\":b.push("INSIDE_STRING_ESCAPE");break;default:c=i}break;case"INSIDE_ARRAY_START":"]"===j?(c=i,b.pop()):(c=i,f(j,i,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(j){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=i,b.pop();break;default:c=i}break;case"INSIDE_ARRAY_AFTER_COMMA":f(j,i,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":b.pop(),"u"===j?(e=0,b.push("INSIDE_STRING_UNICODE_ESCAPE")):c=i;break;case"INSIDE_STRING_UNICODE_ESCAPE":(j>="0"&&j<="9"||j>="A"&&j<="F"||j>="a"&&j<="f")&&4==++e&&(b.pop(),c=i);break;case"INSIDE_NUMBER":switch(j){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=i;break;case"e":case"E":case"-":case".":break;case",":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"}":b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"]":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i);break;default:b.pop()}break;case"INSIDE_LITERAL":{let e=a.substring(d,i+1);"false".startsWith(e)||"true".startsWith(e)||"null".startsWith(e)?c=i:(b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]?g(j,i):"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i))}}}let i=a.slice(0,c+1);for(let c=b.length-1;c>=0;c--)switch(b[c]){case"INSIDE_STRING":i+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":i+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":i+="]";break;case"INSIDE_LITERAL":{let b=a.substring(d,a.length);"true".startsWith(b)?i+="true".slice(b.length):"false".startsWith(b)?i+="false".slice(b.length):"null".startsWith(b)&&(i+="null".slice(b.length))}}return i}(a)})).success?{value:b.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var gV=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:a})=>a,parsePartialOutput:async({text:a})=>({partial:a}),createElementStreamTransform(){}}),gW=({schema:a,name:b,description:c})=>{let d=b8(a);return{name:"object",responseFormat:cd(d.jsonSchema).then(a=>({type:"json",schema:a,...null!=b&&{name:b},...null!=c&&{description:c}})),async parseCompleteOutput({text:a},b){let c=await cc({text:a});if(!c.success)throw new gl({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});let e=await cb({value:c.value,schema:d});if(!e.success)throw new gl({message:"No object generated: response did not match schema.",cause:e.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return e.value},async parsePartialOutput({text:a}){let b=await gU(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:b.value}}},createElementStreamTransform(){}}},gX=({element:a,minItems:b,maxItems:c,name:d,description:e})=>{if(gY({name:"minItems",value:b}),gY({name:"maxItems",value:c}),null!=b&&null!=c&&b>c)throw new gg({parameter:"minItems",value:b,message:"minItems must be less than or equal to maxItems"});let f=b8(a);return{name:"array",responseFormat:cd(f.jsonSchema).then(a=>{let{$schema:f,definitions:g,$defs:h,...i}=a;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...null!=g&&{definitions:g},...null!=h&&{$defs:h},type:"object",properties:{elements:{type:"array",items:i,...null!=b&&{minItems:b},...null!=c&&{maxItems:c}}},required:["elements"],additionalProperties:!1},...null!=d&&{name:d},...null!=e&&{description:e}}}),async parseCompleteOutput({text:a},d){let e=await cc({text:a});if(!e.success)throw new gl({message:"No object generated: could not parse the response.",cause:e.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let g=e.value;if(null==g||"object"!=typeof g||!("elements"in g)||!Array.isArray(g.elements))throw new gl({message:"No object generated: response did not match schema.",cause:new a2({value:g,cause:"response must be an object with an elements array"}),text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let h=gZ({value:g.elements,minItems:b,maxItems:c});if(null!=h)throw new gl({message:"No object generated: response did not match schema.",cause:h,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let i=[];for(let b of g.elements){let c=await cb({value:b,schema:f});if(!c.success)throw new gl({message:"No object generated: response did not match schema.",cause:c.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});i.push(c.value)}return i},async parsePartialOutput({text:a}){let b=await gU(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=b.value;if(null==a||"object"!=typeof a||!("elements"in a)||!Array.isArray(a.elements))return;let c="repaired-parse"===b.state&&a.elements.length>0?a.elements.slice(0,-1):a.elements,d=[];for(let a of c){let b=await cb({value:a,schema:f});b.success&&d.push(b.value)}return{partial:d}}}},createElementStreamTransform(){let a=0;return new TransformStream({transform({partialOutput:b},d){if(null!=b)for(;a<b.length;a++){if(null!=c&&a>=c)return void d.error(gZ({value:b,maxItems:c}));d.enqueue(b[a])}}})}}};function gY({name:a,value:b}){if(null!=b){if(!Number.isInteger(b))throw new gg({parameter:a,value:b,message:`${a} must be an integer`});if(b<0)throw new gg({parameter:a,value:b,message:`${a} must be greater than or equal to 0`})}}function gZ({value:a,minItems:b,maxItems:c}){return null!=b&&a.length<b?new a2({value:a,cause:`elements array must contain at least ${b} items`}):null!=c&&a.length>c?new a2({value:a,cause:`elements array must contain at most ${c} items`}):void 0}var g$=({options:a,name:b,description:c})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:a}},required:["result"],additionalProperties:!1},...null!=b&&{name:b},...null!=c&&{description:c}}),async parseCompleteOutput({text:b},c){let d=await cc({text:b});if(!d.success)throw new gl({message:"No object generated: could not parse the response.",cause:d.error,text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});let e=d.value;if(null==e||"object"!=typeof e||!("result"in e)||"string"!=typeof e.result||!a.includes(e.result))throw new gl({message:"No object generated: response did not match schema.",cause:new a2({value:e,cause:"response must be an object that contains a choice value."}),text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});return e.result},async parsePartialOutput({text:b}){let c=await gU(b);switch(c.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let b=c.value;if(null==b||"object"!=typeof b||!("result"in b)||"string"!=typeof b.result)return;let d=a.filter(a=>a.startsWith(b.result));if("successful-parse"===c.state)return d.includes(b.result)?{partial:b.result}:void 0;return 1===d.length?{partial:d[0]}:void 0}}},createElementStreamTransform(){}}),g_=({name:a,description:b}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=a&&{name:a},...null!=b&&{description:b}}),async parseCompleteOutput({text:a},b){let c=await cc({text:a});if(!c.success)throw new gl({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return c.value},async parsePartialOutput({text:a}){let b=await gU(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===b.value?void 0:{partial:b.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,bA({prefix:"aitxt",size:24}),bA({prefix:"call",size:24}),TransformStream;var g0=gv.record(gv.string(),gw.optional()),g1=b6(()=>b9(gv.union([gv.looseObject({type:gv.literal("text-start"),id:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("text-delta"),id:gv.string(),delta:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("text-end"),id:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("error"),errorText:gv.string()}),gv.looseObject({type:gv.literal("tool-input-start"),toolCallId:gv.string(),toolName:gv.string(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional(),toolMetadata:g0.optional(),dynamic:gv.boolean().optional(),title:gv.string().optional()}),gv.looseObject({type:gv.literal("tool-input-delta"),toolCallId:gv.string(),inputTextDelta:gv.string()}),gv.looseObject({type:gv.literal("tool-input-available"),toolCallId:gv.string(),toolName:gv.string(),input:gv.unknown(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional(),toolMetadata:g0.optional(),dynamic:gv.boolean().optional(),title:gv.string().optional()}),gv.looseObject({type:gv.literal("tool-input-error"),toolCallId:gv.string(),toolName:gv.string(),input:gv.unknown(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional(),toolMetadata:g0.optional(),dynamic:gv.boolean().optional(),errorText:gv.string(),title:gv.string().optional()}),gv.looseObject({type:gv.literal("tool-approval-request"),approvalId:gv.string(),toolCallId:gv.string(),approvalDescriptor:gv.unknown().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()}),gv.looseObject({type:gv.literal("tool-approval-response"),approvalId:gv.string(),approved:gv.boolean(),reason:gv.string().optional(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("tool-output-available"),toolCallId:gv.string(),output:gv.unknown(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional(),toolMetadata:g0.optional(),dynamic:gv.boolean().optional(),preliminary:gv.boolean().optional()}),gv.looseObject({type:gv.literal("tool-output-error"),toolCallId:gv.string(),errorText:gv.string(),providerExecuted:gv.boolean().optional(),providerMetadata:gx.optional(),toolMetadata:g0.optional(),dynamic:gv.boolean().optional()}),gv.looseObject({type:gv.literal("tool-output-denied"),toolCallId:gv.string()}),gv.looseObject({type:gv.literal("reasoning-start"),id:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("reasoning-delta"),id:gv.string(),delta:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("reasoning-end"),id:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("custom"),kind:gv.string().transform(a=>a),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("source-url"),sourceId:gv.string(),url:gv.string(),title:gv.string().optional(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("source-document"),sourceId:gv.string(),mediaType:gv.string(),title:gv.string(),filename:gv.string().optional(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("file"),url:gv.string(),mediaType:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.literal("reasoning-file"),url:gv.string(),mediaType:gv.string(),providerMetadata:gx.optional()}),gv.looseObject({type:gv.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:gv.string().optional(),data:gv.unknown(),transient:gv.boolean().optional()}),gv.looseObject({type:gv.literal("start-step")}),gv.looseObject({type:gv.literal("finish-step")}),gv.looseObject({type:gv.literal("reset-step")}),gv.looseObject({type:gv.literal("start"),messageId:gv.string().optional(),messageMetadata:gv.unknown().optional()}),gv.looseObject({type:gv.literal("finish"),finishReason:gv.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:gv.unknown().optional()}),gv.looseObject({type:gv.literal("abort"),reason:gv.string().optional()}),gv.looseObject({type:gv.literal("message-metadata"),messageMetadata:gv.unknown()})])));function g2(){return Object.create(null)}function g3(a){return a.type.startsWith("tool-")}function g4(a){return g3(a)||"dynamic-tool"===a.type}function g5(a){return a.type.split("-").slice(1).join("-")}var g6={type:"deprecated",setting:"rawInput in output-error UI message parts",message:'Use the "input" field instead. The "rawInput" field will be removed in the next major version.'};async function g7({stream:a,onError:b,abortSignal:c}){let d=a.getReader(),e=()=>{d.cancel().catch(()=>{})};(null==c?void 0:c.aborted)?e():null==c||c.addEventListener("abort",e,{once:!0});try{for(;;){let{done:a}=await d.read();if(a)break}}catch(a){null==b||b(a)}finally{null==c||c.removeEventListener("abort",e),d.releaseLock()}}bA({prefix:"aitxt",size:24}),bA({prefix:"call",size:24}),bA({prefix:"aitxt",size:24}),bA({prefix:"call",size:24});var g8=gv.record(gv.string(),gw.optional()),g9=gv.record(gv.string(),gv.string());function ha(a){return({url:b,abortSignal:c})=>gu({url:b,maxBytes:null==a?void 0:a.maxBytes,abortSignal:c})}b6(()=>b9(gv.array(gv.object({id:gv.string(),role:gv.enum(["system","user","assistant"]),metadata:gv.unknown().optional(),parts:gv.array(gv.union([gv.object({type:gv.literal("text"),text:gv.string(),state:gv.enum(["streaming","done"]).optional(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("reasoning"),id:gv.string().optional(),text:gv.string(),state:gv.enum(["streaming","done"]).optional(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("custom"),kind:gv.string(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("source-url"),sourceId:gv.string(),url:gv.string(),title:gv.string().optional(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("source-document"),sourceId:gv.string(),mediaType:gv.string(),title:gv.string(),filename:gv.string().optional(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("file"),mediaType:gv.string(),filename:gv.string().optional(),url:gv.string(),providerReference:g9.optional(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("reasoning-file"),mediaType:gv.string(),url:gv.string(),providerMetadata:gx.optional()}),gv.object({type:gv.literal("step-start")}),gv.object({type:gv.string().startsWith("data-"),id:gv.string().optional(),data:gv.unknown()}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("input-streaming"),input:gv.unknown().optional(),providerExecuted:gv.boolean().optional(),callProviderMetadata:gx.optional(),output:gv.never().optional(),errorText:gv.never().optional(),approval:gv.never().optional()}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("input-available"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.never().optional()}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("approval-requested"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.never().optional(),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.never().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("approval-responded"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.boolean(),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-available"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.unknown(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),resultProviderMetadata:gx.optional(),preliminary:gv.boolean().optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!0),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()}).optional()}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-error"),input:gv.unknown().optional(),rawInput:gv.unknown().optional(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.string(),callProviderMetadata:gx.optional(),resultProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!0),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()}).optional()}),gv.object({type:gv.literal("dynamic-tool"),toolName:gv.string(),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-denied"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!1),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("input-streaming"),providerExecuted:gv.boolean().optional(),callProviderMetadata:gx.optional(),input:gv.unknown().optional(),output:gv.never().optional(),errorText:gv.never().optional(),approval:gv.never().optional()}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("input-available"),providerExecuted:gv.boolean().optional(),input:gv.unknown(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.never().optional()}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("approval-requested"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.never().optional(),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.never().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("approval-responded"),input:gv.unknown(),providerExecuted:gv.boolean().optional(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.boolean(),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-available"),providerExecuted:gv.boolean().optional(),input:gv.unknown(),output:gv.unknown(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),resultProviderMetadata:gx.optional(),preliminary:gv.boolean().optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!0),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()}).optional()}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-error"),providerExecuted:gv.boolean().optional(),input:gv.unknown().optional(),rawInput:gv.unknown().optional(),output:gv.never().optional(),errorText:gv.string(),callProviderMetadata:gx.optional(),resultProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!0),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()}).optional()}),gv.object({type:gv.string().startsWith("tool-"),toolCallId:gv.string(),title:gv.string().optional(),toolMetadata:g8.optional(),state:gv.literal("output-denied"),providerExecuted:gv.boolean().optional(),input:gv.unknown(),output:gv.never().optional(),errorText:gv.never().optional(),callProviderMetadata:gx.optional(),approval:gv.object({id:gv.string(),approved:gv.literal(!1),descriptor:gv.unknown().optional(),requestReason:gv.string().optional(),reason:gv.string().optional(),isAutomatic:gv.boolean().optional(),signature:gv.string().optional()})})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),bA({prefix:"call",size:24}),bA({prefix:"call",size:24}),new TextEncoder,bA({prefix:"aiobj",size:24});var{atob:hb}=globalThis,hc=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(a){return new Promise((b,c)=>{this.queue.push(async()=>{try{await a(),b()}catch(a){c(a)}}),this.processQueue()})}};bA({prefix:"aiobj",size:24}),ha();gv.object({token:gv.string().refine(a=>a.trim().length>0),url:gv.string().refine(a=>{try{let b=new URL(a);return("ws:"===b.protocol||"wss:"===b.protocol)&&""!==b.hostname}catch(a){return!1}}),expiresAt:gv.number().positive().max(Number.MAX_SAFE_INTEGER).optional(),tools:gv.array(gv.object({type:gv.literal("function"),name:gv.string().min(1),description:gv.string().optional(),parameters:gv.record(gv.string(),gv.unknown())})).optional()});Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function hd({response:a,url:b,fallbackMessage:c}){let d=await a.text();return new aF({message:d||c,url:b,requestBodyValues:void 0,statusCode:a.status,responseBody:d})}async function he(a){if(null==a)return[];if(!globalThis.FileList||!(a instanceof globalThis.FileList))throw new a6({functionality:"FileList",message:"FileList is not supported in the current environment"});return Promise.all(Array.from(a).map(async a=>{let{name:b,type:c}=a;return{type:"file",mediaType:c,filename:b,url:await new Promise((b,c)=>{let d=new FileReader;d.onload=a=>{var c;b(null==(c=a.target)?void 0:c.result)},d.onerror=a=>c(a),d.readAsDataURL(a)})}}))}bA({prefix:"call",size:24}),ha();var hf=class{constructor({api:a="/api/chat",credentials:b,headers:c,body:d,fetch:e,prepareSendMessagesRequest:f,prepareReconnectToStreamRequest:g}){this.api=a,this.credentials=b,this.headers=c,this.body=d,this.fetch=e,this.prepareSendMessagesRequest=f,this.prepareReconnectToStreamRequest=g}async sendMessages({abortSignal:a,...b}){var c,d,e,f;let g=await cd(this.body),h=await cd(this.headers),i=await cd(this.credentials),j={...bi(h),...bi(b.headers)},k=await (null==(c=this.prepareSendMessagesRequest)?void 0:c.call(this,{api:this.api,id:b.chatId,messages:b.messages,body:{...g,...b.body},headers:j,credentials:i,requestMetadata:b.metadata,trigger:b.trigger,messageId:b.messageId})),l=null!=(d=null==k?void 0:k.api)?d:this.api,m=(null==k?void 0:k.headers)!==void 0?bi(k.headers):j,n=(null==k?void 0:k.body)!==void 0?k.body:{...g,...b.body,id:b.chatId,messages:b.messages,trigger:b.trigger,messageId:b.messageId},o=null!=(e=null==k?void 0:k.credentials)?e:i,p=null!=(f=this.fetch)?f:globalThis.fetch,q=await p(l,{method:"POST",headers:{"Content-Type":"application/json",...m},body:JSON.stringify(n),credentials:o,signal:a});if(!q.ok)throw await hd({response:q,url:l,fallbackMessage:"Failed to fetch the chat response."});if(!q.body)throw new aJ({message:"The response body is empty."});return this.processResponseStream(q.body)}async reconnectToStream(a){var b,c,d,e;let f=await cd(this.body),g=await cd(this.headers),h=await cd(this.credentials),i={...bi(g),...bi(a.headers)},j=await (null==(b=this.prepareReconnectToStreamRequest)?void 0:b.call(this,{api:this.api,id:a.chatId,body:{...f,...a.body},headers:i,credentials:h,requestMetadata:a.metadata})),k=null!=(c=null==j?void 0:j.api)?c:`${this.api}/${a.chatId}/stream`,l=(null==j?void 0:j.headers)!==void 0?bi(j.headers):i,m=null!=(d=null==j?void 0:j.credentials)?d:h,n=null!=(e=this.fetch)?e:globalThis.fetch,o=await n(k,{method:"GET",headers:l,credentials:m,signal:a.abortSignal});if(204===o.status)return null;if(!o.ok)throw await hd({response:o,url:k,fallbackMessage:"Failed to fetch the chat response."});if(!o.body)throw new aJ({message:"The response body is empty."});return this.processResponseStream(o.body)}},hg=class extends hf{constructor(a={}){super(a)}processResponseStream(a){return(function({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bd).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await cc({text:a,schema:b}))}}))})({stream:a,schema:g1}).pipeThrough(new TransformStream({async transform(a,b){if(!a.success)throw a.error;b.enqueue(a.value)}}))}},hh=class{constructor({generateId:a=bB,id:b=a(),transport:c=new hg,messageMetadataSchema:d,dataPartSchemas:e,state:f,onError:g,onToolCall:h,onFinish:i,onData:j,sendAutomaticallyWhen:k}){this.pendingMessagePreparations=new Set,this.activeResponse=void 0,this.activeResumeRequest=void 0,this.jobExecutor=new hc,this.sendMessage=async(a,b)=>{var c,d,e,f;let g;if(null==a)return void await this.makeRequest({trigger:"submit-message",messageId:null==(c=this.lastMessage)?void 0:c.id,...b});if("text"in a||"files"in a){let b,c=new AbortController;this.pendingMessagePreparations.add(c);try{b=Array.isArray(a.files)?a.files:await he(a.files)}finally{this.pendingMessagePreparations.delete(c)}if(c.signal.aborted)return;g={parts:[...b,..."text"in a&&null!=a.text?[{type:"text",text:a.text}]:[]]}}else g=a;if(null!=a.messageId){let b=this.state.messages.findIndex(b=>b.id===a.messageId);if(-1===b)throw new gg({parameter:"message.messageId",value:a.messageId,message:`message with id ${a.messageId} not found`});if("user"!==this.state.messages[b].role)throw new gg({parameter:"message.messageId",value:a.messageId,message:`message with id ${a.messageId} is not a user message`});this.state.messages=this.state.messages.slice(0,b+1),this.state.replaceMessage(b,{id:a.messageId,...g,role:null!=(d=g.role)?d:"user",metadata:a.metadata})}else this.state.pushMessage({...g,id:null!=(e=g.id)?e:this.generateId(),role:null!=(f=g.role)?f:"user",metadata:a.metadata});await this.makeRequest({trigger:"submit-message",messageId:a.messageId,...b})},this.regenerate=async({messageId:a,...b}={})=>{let c=null==a?this.state.messages.length-1:this.state.messages.findIndex(b=>b.id===a);if(-1===c)throw new gg({parameter:"messageId",value:a,message:`message ${a} not found`});this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[c].role?c:c+1),await this.makeRequest({trigger:"regenerate-message",messageId:a,...b})},this.resumeStream=async(a={})=>{await this.makeRequest({trigger:"resume-stream",...a})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:a,approved:b,reason:c,options:d})=>this.jobExecutor.run(async()=>{let e=this.state.messages,f=e[e.length-1],g=d=>g4(d)&&"approval-requested"===d.state&&d.approval.id===a?{...d,state:"approval-responded",approval:{...d.approval,id:a,approved:b,reason:c}}:d;this.state.replaceMessage(e.length-1,{...f,parts:f.parts.map(g)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(g)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(a=>{var b;a&&this.makeRequest({trigger:"submit-message",messageId:null==(b=this.lastMessage)?void 0:b.id,...d})})}),this.addToolOutput=async({state:a="output-available",toolCallId:b,output:c,errorText:d,options:e})=>this.jobExecutor.run(async()=>{let f=this.state.messages,g=f[f.length-1],h=e=>g4(e)&&e.toolCallId===b?{...e,state:a,output:c,errorText:d}:e;this.state.replaceMessage(f.length-1,{...g,parts:g.parts.map(h)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(h)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(a=>{var b;a&&this.makeRequest({trigger:"submit-message",messageId:null==(b=this.lastMessage)?void 0:b.id,...e})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var a,b;for(let a of this.pendingMessagePreparations)a.abort();null==(a=this.activeResumeRequest)||a.abortController.abort(),null==(b=this.activeResponse)||b.abortController.abort()},this.id=b,this.transport=c,this.generateId=a,this.messageMetadataSchema=d,this.dataPartSchemas=e,this.state=f,this.onError=g,this.onToolCall=h,this.onFinish=i,this.onData=j,this.sendAutomaticallyWhen=k}get status(){return this.state.status}setStatus({status:a,error:b}){this.status!==a&&(this.state.status=a,this.state.error=b)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(a){this.state.messages=a}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let a=this.sendAutomaticallyWhen({messages:this.state.messages});return a&&"object"==typeof a&&"then"in a?await a:a}async makeRequest({trigger:a,metadata:b,headers:c,body:d,messageId:e}){var f,g,h;let i,j,k=new AbortController,l="resume-stream"===a?{abortController:k}:void 0;l&&(null==(f=this.activeResumeRequest)||f.abortController.abort(),this.activeResumeRequest=l);let m=()=>null==l||this.activeResumeRequest===l,n=()=>{this.activeResumeRequest===l&&(this.activeResumeRequest=void 0)};if("resume-stream"===a)try{let a=await this.transport.reconnectToStream({chatId:this.id,abortSignal:k.signal,metadata:b,headers:c,body:d});if(k.signal.aborted||!m()){await (null==a?void 0:a.cancel().catch(()=>{})),m()&&this.setStatus({status:"ready"}),n();return}if(null==a){this.setStatus({status:"ready"}),n();return}i=a}catch(a){if(k.signal.aborted||"AbortError"===a.name){m()&&this.setStatus({status:"ready"}),n();return}if(!m())return;this.onError&&a instanceof Error&&this.onError(a),this.setStatus({status:"error",error:a}),n();return}this.setStatus({status:"submitted",error:void 0});let o=this.lastMessage,p=!1,q=!1,r=!1;try{let f,g={state:function({lastMessage:a,messageId:b}){return{message:(null==a?void 0:a.role)==="assistant"?a:{id:b,metadata:void 0,role:"assistant",parts:[]},activeTextParts:g2(),activeReasoningParts:g2(),partialToolCalls:g2()}}({lastMessage:"resume-stream"===a||"regenerate-message"===a?void 0:this.state.snapshot(o),messageId:this.generateId()}),abortController:k};j=g,g.abortController.signal.addEventListener("abort",()=>{p=!0}),this.activeResponse=g,f="resume-stream"===a?i:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:g.abortController.signal,metadata:b,headers:c,body:d,trigger:a,messageId:e});let h=a=>this.jobExecutor.run(()=>g.abortController.signal.aborted?Promise.resolve():a({state:g.state,write:({updateStatus:a=!0}={})=>{var b;g.abortController.signal.aborted||(a&&this.setStatus({status:"streaming"}),g.state.message.id===(null==(b=this.lastMessage)?void 0:b.id)?this.state.replaceMessage(this.state.messages.length-1,g.state.message):this.state.pushMessage(g.state.message))}}));if(await g7({stream:function({stream:a,messageMetadataSchema:b,dataPartSchemas:c,runUpdateMessageJob:d,onError:e,onToolCall:f,onData:g}){return a.pipeThrough(new TransformStream({async transform(a,h){await d(async({state:d,write:i})=>{var j,k,l,m;function n(){let a=d.message.parts,b=a.length-1;for(;b>=0&&"step-start"!==a[b].type;)b--;return a.slice(b+1)}function o(a){let b=n().filter(g4).find(b=>b.toolCallId===a);if(null==b){let c=d.message.parts;for(let d=c.length-1;d>=0;d--){let e=c[d];if(g4(e)&&e.toolCallId===a){b=e;break}}}if(null==b)throw new gq({chunkType:"tool-invocation",chunkId:a,message:`No tool invocation found for tool call ID "${a}".`});return b}function p(a,b){var c;let e=null!=b?b:n().find(b=>g3(b)&&b.toolCallId===a.toolCallId);if(null!=e){e.state=a.state,e.input=a.input,e.output=a.output,e.errorText=a.errorText,e.rawInput=a.rawInput,e.preliminary=a.preliminary,void 0!==a.title&&(e.title=a.title),void 0!==a.toolMetadata&&(e.toolMetadata=a.toolMetadata),e.providerExecuted=null!=(c=a.providerExecuted)?c:e.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?e.resultProviderMetadata=b:e.callProviderMetadata=b)}else d.message.parts.push({type:`tool-${a.toolName}`,toolCallId:a.toolCallId,state:a.state,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},input:a.input,output:a.output,rawInput:a.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,preliminary:a.preliminary,...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}function q(a,b){var c,e;let f=null!=b?b:n().find(b=>"dynamic-tool"===b.type&&b.toolCallId===a.toolCallId);if(null!=f){f.state=a.state,f.toolName=a.toolName,f.input=a.input,f.output=a.output,f.errorText=a.errorText,f.rawInput=null!=(c=a.rawInput)?c:f.rawInput,f.preliminary=a.preliminary,void 0!==a.title&&(f.title=a.title),void 0!==a.toolMetadata&&(f.toolMetadata=a.toolMetadata),f.providerExecuted=null!=(e=a.providerExecuted)?e:f.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?f.resultProviderMetadata=b:f.callProviderMetadata=b)}else d.message.parts.push({type:"dynamic-tool",toolName:a.toolName,toolCallId:a.toolCallId,state:a.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}async function r(a){if(null!=a){let c=null!=d.message.metadata?function a(b,c){if(void 0===b&&void 0===c)return;if(void 0===b)return c;if(void 0===c)return b;let d={...b};for(let e in c)if("__proto__"!==e&&"constructor"!==e&&"prototype"!==e&&Object.prototype.hasOwnProperty.call(c,e)){let f=c[e];if(void 0===f)continue;let g=e in b?b[e]:void 0,h=null!==f&&"object"==typeof f&&!Array.isArray(f)&&!(f instanceof Date)&&!(f instanceof RegExp),i=null!=g&&"object"==typeof g&&!Array.isArray(g)&&!(g instanceof Date)&&!(g instanceof RegExp);h&&i?d[e]=a(g,f):d[e]=f}return d}(d.message.metadata,a):a;null!=b&&await ca({value:c,schema:b,context:{field:"message.metadata",entityId:d.message.id}}),d.message.metadata=c}}switch(a.type){case"text-start":{let b={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeTextParts[a.id]=b,d.message.parts.push(b),i();break}case"text-delta":{let b=d.activeTextParts[a.id];if(null==b)throw new gq({chunkType:"text-delta",chunkId:a.id,message:`Received text-delta for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(j=a.providerMetadata)?j:b.providerMetadata,i();break}case"text-end":{let b=d.activeTextParts[a.id];if(null==b)throw new gq({chunkType:"text-end",chunkId:a.id,message:`Received text-end for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});b.state="done",b.providerMetadata=null!=(k=a.providerMetadata)?k:b.providerMetadata,delete d.activeTextParts[a.id],i();break}case"custom":{let b={type:"custom",kind:a.kind,providerMetadata:a.providerMetadata};d.message.parts.push(b),i();break}case"reasoning-start":{let b={type:"reasoning",id:a.id,text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeReasoningParts[a.id]=b,d.message.parts.push(b),i();break}case"reasoning-delta":{let b=d.activeReasoningParts[a.id];if(null==b)throw new gq({chunkType:"reasoning-delta",chunkId:a.id,message:`Received reasoning-delta for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(l=a.providerMetadata)?l:b.providerMetadata,i();break}case"reasoning-end":{let b=d.activeReasoningParts[a.id];if(null==b)throw new gq({chunkType:"reasoning-end",chunkId:a.id,message:`Received reasoning-end for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});b.providerMetadata=null!=(m=a.providerMetadata)?m:b.providerMetadata,b.state="done",delete d.activeReasoningParts[a.id],i();break}case"file":case"reasoning-file":d.message.parts.push({type:a.type,mediaType:a.mediaType,url:a.url,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}}),i();break;case"source-url":d.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),i();break;case"source-document":d.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),i();break;case"tool-input-start":{let b=n().filter(g3);d.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:b.length,dynamic:a.dynamic,title:a.title,toolMetadata:a.toolMetadata},a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}),i();break}case"tool-input-delta":{let b=d.partialToolCalls[a.toolCallId];if(null==b)throw new gq({chunkType:"tool-input-delta",chunkId:a.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${a.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});b.text+=a.inputTextDelta;let{value:c}=await gU(b.text);b.dynamic?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}):p({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}),i();break}case"tool-input-available":a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}),i(),f&&!a.providerExecuted&&await f({toolCall:a});break;case"tool-input-error":{let b=n().filter(g4).find(b=>b.toolCallId===a.toolCallId);(null!=b?"dynamic-tool"===b.type:a.dynamic)?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}):(p({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}),[d.message].some(a=>a.parts.some(a=>null!=a&&"object"==typeof a&&"type"in a&&"string"==typeof a.type&&("dynamic-tool"===a.type||a.type.startsWith("tool-"))&&"state"in a&&"output-error"===a.state&&Object.prototype.hasOwnProperty.call(a,"rawInput")&&"rawInput"in a&&void 0!==a.rawInput))&&(a=>{if(0===a.warnings.length)return;let b=globalThis.AI_SDK_LOG_WARNINGS;if(!1!==b){if("function"==typeof b)return b(a);for(let b of(gs||(gs=!0,gt({message:"AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",type:"Warning"})),a.warnings))gt({message:function({warning:a,provider:b,model:c}){let d=null!=b&&null!=c?` (${b} / ${c})`:"",e=`AI SDK Warning${d}:`;switch(a.type){case"unsupported":{let b=`${e} The feature "${a.feature}" is not supported.`;return a.details&&(b+=` ${a.details}`),b}case"compatibility":{let b=`${e} The feature "${a.feature}" is used in a compatibility mode.`;return a.details&&(b+=` ${a.details}`),b}case"deprecated":return`${e} Deprecated: "${a.setting}". ${a.message}`;case"other":return`${e} ${a.message}`;default:return`${e} ${JSON.stringify(a,null,2)}`}}({warning:b,provider:a.provider,model:a.model}),type:"deprecated"===b.type?"DeprecationWarning":"Warning"})}})({warnings:[g6]})),i();break}case"tool-approval-request":{let b=o(a.toolCallId);b.state="approval-requested",b.approval={id:a.approvalId,...null!=a.approvalDescriptor?{descriptor:a.approvalDescriptor}:{},...null!=a.reason?{requestReason:a.reason}:{},...!0===a.isAutomatic?{isAutomatic:!0}:{},...null!=a.signature?{signature:a.signature}:{}},i();break}case"tool-approval-response":{let b=function(a){let b=d.message.parts.filter(g4).find(b=>{var c;return(null==(c=b.approval)?void 0:c.id)===a});if(null==b)throw new gq({chunkType:"tool-approval-response",chunkId:a,message:`No tool invocation found for approval ID "${a}".`});return b}(a.approvalId),c=null==b.approval?{id:a.approvalId}:b.approval;b.state="approval-responded",b.approval={...c,id:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{}},null!=a.providerExecuted&&(b.providerExecuted=a.providerExecuted),null!=a.providerMetadata&&(b.callProviderMetadata=a.providerMetadata),i();break}case"tool-output-denied":o(a.toolCallId).state="output-denied",i();break;case"tool-output-available":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-available",input:b.input,output:a.output,preliminary:a.preliminary,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:g5(b),state:"output-available",input:b.input,output:a.output,providerExecuted:a.providerExecuted,preliminary:a.preliminary,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"tool-output-error":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-error",input:b.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:g5(b),state:"output-error",input:b.input,rawInput:b.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"start-step":d.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let a=n();d.activeTextParts=g2(),d.activeReasoningParts=g2(),d.partialToolCalls=g2(),a.length>0&&(d.message.parts.splice(d.message.parts.length-a.length,a.length),i());break}case"start":null!=a.messageId&&(d.message.id=a.messageId),await r(a.messageMetadata),(null!=a.messageId||null!=a.messageMetadata)&&i({updateStatus:!1});break;case"finish":null!=a.finishReason&&(d.finishReason=a.finishReason),await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"message-metadata":await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"error":null==e||e(Error(a.errorText));break;default:if(a.type.startsWith("data-")){if((null==c?void 0:c[a.type])!=null){let b=d.message.parts.findIndex(b=>"id"in b&&"data"in b&&b.id===a.id&&b.type===a.type),e=b>=0?b:d.message.parts.length;await ca({value:a.data,schema:c[a.type],context:{field:`message.parts[${e}].data`,entityName:a.type,entityId:a.id}})}if(a.transient){null==g||g(a);break}let b=null!=a.id?d.message.parts.find(b=>a.type===b.type&&a.id===b.id):void 0;null!=b?b.data=a.data:d.message.parts.push(a),null==g||g(a),i()}}h.enqueue(a)})}}))}({stream:f,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:h,onError:a=>{throw a}}),abortSignal:g.abortController.signal,onError:a=>{throw a}}),p)return m()&&this.setStatus({status:"ready"}),null;m()&&this.setStatus({status:"ready"})}catch(a){if(p||"AbortError"===a.name)return p=!0,m()&&this.setStatus({status:"ready"}),null;if(!m())return null;r=!0,a instanceof TypeError&&(a.message.toLowerCase().includes("fetch")||a.message.toLowerCase().includes("network"))&&(q=!0),this.onError&&a instanceof Error&&this.onError(a),this.setStatus({status:"error",error:a})}finally{try{j&&(null==(g=this.onFinish)||g.call(this,{message:j.state.message,messages:this.state.messages,isAbort:p,isDisconnect:q,isError:r,finishReason:j.state.finishReason}))}finally{this.activeResponse===j&&(this.activeResponse=void 0),n()}}!r&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(h=this.lastMessage)?void 0:h.id,metadata:b,headers:c,body:d})}},hi=a.i(572131);a.i(393931);var hj=a.i(313350);a.i(187924);var hk=(a,b,c)=>{if(!b.has(a))throw TypeError("Cannot "+c)},hl=(a,b,c)=>(hk(a,b,"read from private field"),c?c.call(a):b.get(a)),hm=(a,b,c)=>{if(b.has(a))throw TypeError("Cannot add the same private member more than once");b instanceof WeakSet?b.add(a):b.set(a,c)},hn=(a,b,c,d)=>(hk(a,b,"write to private field"),d?d.call(a,c):b.set(a,c),c),ho=class{constructor(a=[]){hm(this,ap,void 0),hm(this,aq,"ready"),hm(this,ar,void 0),hm(this,as,new Set),hm(this,at,new Set),hm(this,au,new Set),this.pushMessage=a=>{hn(this,ap,hl(this,ap).concat(a)),hl(this,av).call(this)},this.popMessage=()=>{hn(this,ap,hl(this,ap).slice(0,-1)),hl(this,av).call(this)},this.replaceMessage=(a,b)=>{hn(this,ap,[...hl(this,ap).slice(0,a),this.snapshot(b),...hl(this,ap).slice(a+1)]),hl(this,av).call(this)},this.snapshot=a=>{var b;if(null==a||"object"!=typeof a||!("parts"in a)||!Array.isArray(a.parts))return a;let c={...a,parts:a.parts.map(a=>({...a}))};return"metadata"in a&&(c.metadata=Array.isArray(b=a.metadata)?[...b]:null!=b&&"object"==typeof b&&(Object.getPrototypeOf(b)===Object.prototype||null===Object.getPrototypeOf(b))?{...b}:b),c},this["~registerMessagesCallback"]=(a,b)=>{let c=b?null!=b?(0,hj.default)(a,b):a:a;return hl(this,as).add(c),()=>{hl(this,as).delete(c)}},this["~registerStatusCallback"]=a=>(hl(this,at).add(a),()=>{hl(this,at).delete(a)}),this["~registerErrorCallback"]=a=>(hl(this,au).add(a),()=>{hl(this,au).delete(a)}),hm(this,av,()=>{hl(this,as).forEach(a=>a())}),hm(this,aw,()=>{hl(this,at).forEach(a=>a())}),hm(this,ax,()=>{hl(this,au).forEach(a=>a())}),hn(this,ap,a)}get status(){return hl(this,aq)}set status(a){hn(this,aq,a),hl(this,aw).call(this)}get error(){return hl(this,ar)}set error(a){hn(this,ar,a),hl(this,ax).call(this)}get messages(){return hl(this,ap)}set messages(a){hn(this,ap,[...a]),hl(this,av).call(this)}};ap=new WeakMap,aq=new WeakMap,ar=new WeakMap,as=new WeakMap,at=new WeakMap,au=new WeakMap,av=new WeakMap,aw=new WeakMap,ax=new WeakMap;var hp=class extends hh{constructor({messages:a,...b}){const c=new ho(a);super({...b,state:c}),hm(this,ay,void 0),this["~registerMessagesCallback"]=(a,b)=>hl(this,ay)["~registerMessagesCallback"](a,b),this["~registerStatusCallback"]=a=>hl(this,ay)["~registerStatusCallback"](a),this["~registerErrorCallback"]=a=>hl(this,ay)["~registerErrorCallback"](a),hn(this,ay,c)}};ay=new WeakMap,hi.useEffect,a.s(["useChat",0,function({throttle:a,experimental_throttle:b,resume:c=!1,...d}={}){let e,f=null!=a?a:b,g=(0,hi.useRef)({});"chat"in d||(g.current={onToolCall:d.onToolCall,onData:d.onData,onFinish:d.onFinish,onError:d.onError,sendAutomaticallyWhen:d.sendAutomaticallyWhen,transport:d.transport});let h=()=>{var a;return null!=(a=g.current.transport)?a:null!=e?e:e=new hg},i={...d,transport:{sendMessages:a=>h().sendMessages(a),reconnectToStream:a=>h().reconnectToStream(a)},onToolCall:a=>{var b,c;return null==(c=(b=g.current).onToolCall)?void 0:c.call(b,a)},onData:a=>{var b,c;return null==(c=(b=g.current).onData)?void 0:c.call(b,a)},onFinish:a=>{var b,c;return null==(c=(b=g.current).onFinish)?void 0:c.call(b,a)},onError:a=>{var b,c;return null==(c=(b=g.current).onError)?void 0:c.call(b,a)},sendAutomaticallyWhen:a=>{var b,c,d;return null!=(d=null==(c=(b=g.current).sendAutomaticallyWhen)?void 0:c.call(b,a))&&d}},j="chat"in d?d.chat:d.id,{chat:k,isExternallyManaged:l}=(0,hi.useMemo)(()=>({chat:"chat"in d?d.chat:new hp(i),isExternallyManaged:"chat"in d}),[j]);(0,hi.useEffect)(()=>{if(!l)return()=>{k.stop()}},[k,l]);let m=(0,hi.useMemo)(()=>({messages:k.messages}),[k]),n=(0,hi.useCallback)(a=>{let b=!0,c=k["~registerMessagesCallback"](()=>{b&&(m.messages=k.messages,a())},f);return m.messages=k.messages,()=>{b=!1,c()}},[k,m,f]),o=(0,hi.useCallback)(()=>m.messages,[m]),p=(0,hi.useSyncExternalStore)(n,o,o),q=(0,hi.useCallback)(a=>k["~registerStatusCallback"](()=>{("ready"===k.status||"error"===k.status)&&(m.messages=k.messages),a()}),[k,m]),r=(0,hi.useCallback)(()=>k.status,[k]),s=(0,hi.useSyncExternalStore)(q,r,r),t=(0,hi.useSyncExternalStore)(k["~registerErrorCallback"],()=>k.error,()=>k.error),u=(0,hi.useCallback)(a=>{"function"==typeof a&&(a=a(k.messages)),k.messages=a},[k]);return(0,hi.useEffect)(()=>{c&&k.resumeStream()},[c,k]),{id:k.id,messages:p,setMessages:u,sendMessage:k.sendMessage,regenerate:k.regenerate,clearError:k.clearError,stop:k.stop,error:t,resumeStream:k.resumeStream,status:s,addToolResult:k.addToolOutput,addToolOutput:k.addToolOutput,addToolApprovalResponse:k.addToolApprovalResponse}}],275086);let hq="vercel.ai.error",hr=Symbol.for(hq);var hs=class a extends Error{constructor({name:a,message:b,cause:c}){super(b),this[hr]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,hq)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}};let ht="AI_APICallError",hu=`vercel.ai.error.${ht}`,hv=Symbol.for(hu);var hw=class extends hs{constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:f,cause:g,isRetryable:h=null!=d&&(408===d||409===d||429===d||d>=500),data:i}){super({name:ht,message:a,cause:g}),this[hv]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=f,this.isRetryable=h,this.data=i}static isInstance(a){return hs.hasMarker(a,hu)}};let hx="AI_EmptyResponseBodyError",hy=`vercel.ai.error.${hx}`,hz=Symbol.for(hy);var hA=class extends hs{constructor({message:a="Empty response body"}={}){super({name:hx,message:a}),this[hz]=!0}static isInstance(a){return hs.hasMarker(a,hy)}};function hB(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}Symbol.for("vercel.ai.error.AI_EvaluationUnsupportedQuestionTypeError");let hC="AI_InvalidArgumentError",hD=`vercel.ai.error.${hC}`,hE=Symbol.for(hD);var hF=class extends hs{constructor({message:a,cause:b,argument:c}){super({name:hC,message:a,cause:b}),this[hE]=!0,this.argument=c}static isInstance(a){return hs.hasMarker(a,hD)}};Symbol.for("vercel.ai.error.AI_InvalidPromptError"),Symbol.for("vercel.ai.error.AI_InvalidResponseDataError");let hG="AI_JSONParseError",hH=`vercel.ai.error.${hG}`,hI=Symbol.for(hH);var hJ=class extends hs{constructor({text:a,cause:b}){super({name:hG,message:`JSON parsing failed: Text: ${a}.
44
+ Error message: ${hB(b)}`,cause:b}),this[hI]=!0,this.text=a}static isInstance(a){return hs.hasMarker(a,hH)}};Symbol.for("vercel.ai.error.AI_LoadAPIKeyError"),Symbol.for("vercel.ai.error.AI_LoadSettingError"),Symbol.for("vercel.ai.error.AI_NoContentGeneratedError"),Symbol.for("vercel.ai.error.AI_NoSuchModelError"),Symbol.for("vercel.ai.error.AI_NoSuchProviderReferenceError"),Symbol.for("vercel.ai.error.AI_TooManyEmbeddingValuesForCallError");let hK="AI_TypeValidationError",hL=`vercel.ai.error.${hK}`,hM=Symbol.for(hL);var hN=class a extends hs{constructor({value:a,cause:b,context:c}){let d="Type validation failed";if(c?.field&&(d+=` for ${c.field}`),c?.entityName||c?.entityId){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:hK,message:`${d}: Value: ${JSON.stringify(a)}.
45
+ Error message: ${hB(b)}`,cause:b}),this[hM]=!0,this.value=a,this.context=c}static isInstance(a){return hs.hasMarker(a,hL)}static wrap({value:b,cause:c,context:d}){return a.isInstance(c)&&c.value===b&&c.context?.field===d?.field&&c.context?.entityName===d?.entityName&&c.context?.entityId===d?.entityId?c:new a({value:b,cause:c,context:d})}};let hO="AI_UnsupportedFunctionalityError",hP=`vercel.ai.error.${hO}`,hQ=Symbol.for(hP);var hR=class extends hs{constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:hO,message:b}),this[hQ]=!0,this.functionality=a}static isInstance(a){return hs.hasMarker(a,hP)}};function hS(...a){return a.reduce((a,b)=>({...a,...b}),{})}async function hT(a,b){if(null==a)return;let c=b?.abortSignal;return new Promise((b,d)=>{if(c?.aborted)return void d(hU());let e=setTimeout(()=>{f(),b()},a),f=()=>{clearTimeout(e),c?.removeEventListener("abort",g)},g=()=>{f(),d(hU())};c?.addEventListener("abort",g)})}function hU(){return new DOMException("Delay was aborted","AbortError")}let hV=new TextDecoder;async function hW(a){return"string"==typeof a?a:a instanceof ArrayBuffer||ArrayBuffer.isView(a)?hV.decode(a):"u">typeof Blob&&a instanceof Blob?a.text():String(a)}async function hX(a,{highWaterMark:b=1048576,pollIntervalMs:c=20,abortSignal:d}={}){for(;1===a.readyState&&(a.bufferedAmount??0)>b;){if(d?.aborted===!0)return;await hT(c)}}let{btoa:hY,atob:hZ}=globalThis;function h$(a){let b=[];for(let c=0;c<a.length;c+=4096)b.push(String.fromCodePoint(...a.subarray(c,c+4096)));return hY(b.join(""))}function h_(a){return Object.fromEntries([...a.headers])}function h0(a=globalThis){return a.navigator?.userAgent?a.navigator.userAgent.toLowerCase():a.process?.versions?.node?`node.js/${a.process.version}`:a.EdgeRuntime?"vercel-edge":""}function h1(a){return(a instanceof Error||"function"==typeof DOMException&&a instanceof DOMException)&&("AbortError"===a.name||"ResponseAborted"===a.name||"TimeoutError"===a.name)}Symbol.for("vercel.ai.providerStreamError");let h2=["fetch failed","failed to fetch"],h3=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function h4({error:a,url:b,requestBodyValues:c}){if(h1(a))return a;if(a instanceof TypeError&&h2.includes(a.message.toLowerCase())){let d=a.cause;if(null!=d)return new hw({message:`Cannot connect to API: ${d.message}`,cause:d,url:b,requestBodyValues:c,isRetryable:!0})}let d=function(a){let b=new Set,c=a;for(;c instanceof Error&&!b.has(c);){b.add(c);let a=c;if("string"==typeof a.code&&h3.has(a.code))return a;c=c.cause}}(a);return null!=d?new hw(hw.isInstance(a)?{message:a.message,cause:a.cause,url:a.url,requestBodyValues:a.requestBodyValues,statusCode:a.statusCode,responseHeaders:a.responseHeaders,responseBody:a.responseBody,data:a.data,isRetryable:!0}:{message:`Cannot connect to API: ${a instanceof Error?a.message:d.message}`,cause:a,url:b,requestBodyValues:c,isRetryable:!0}):a}let h5="5.0.52";function h6(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}function h7(a,...b){let c=new Headers(h6(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}async function h8(a){try{await a.body?.cancel()}catch{}}let h9="AI_DownloadError",ia=`vercel.ai.error.${h9}`,ib=Symbol.for(ia);var ic=class extends hs{constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:h9,message:e,cause:d}),this[ib]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return hs.hasMarker(a,ia)}};function id(a,b){try{return new URL(a).origin===new URL(b).origin}catch{return!1}}function ie(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function ig(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function ih(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!ie(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);return!!c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0||(!!(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5])||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2])&&ig(`${b[6]>>8&255}.${255&b[6]}.${b[7]>>8&255}.${255&b[7]}`)}async function ii(){let a;return(a=globalThis.process,a?.release?.name!=="node"||a.versions?.bun!=null||a.versions?.deno!=null||"workerd"===a.title||null!=globalThis.EdgeRuntime)?globalThis.fetch:b??=Promise.resolve().then(ij)}function ij(){let a=ik("node:module"),{lookup:b}=ik("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=c?.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!ie(a)||ig(a):6!==b||ih(a))throw new ic({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function ik(a){let b=globalThis.process?.getBuiltinModule?.(a);if(null==b)throw Error(`Node.js built-in module ${a} is unavailable`);return b}let il=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function im(a){let b=new Headers(a);for(let a of il)b.delete(a);return b}let io=new Set([301,302,303,307,308]);async function ip(a){return null==a||a===globalThis.fetch?await ii():a}async function iq({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){let g=void 0===b?void 0:im(b),h=a=>{let b={signal:c,redirect:a};return void 0!==g&&(b.headers=new Headers(g)),b},i=a;for(let b=0;b<=d;b++){let b=void 0!==f&&id(i,f);b||function(a){let b;try{b=new URL(a)}catch{throw new ic({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new ic({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new ic({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new ic({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(ih(c.slice(1,-1)))throw new ic({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(ie(c)&&ig(c))throw new ic({url:a,message:`URL with IP address ${c} is not allowed`})}(i);let c=b&&null!=e?e:b?globalThis.fetch:await ip(e),d=await c(i,h("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new ic({url:a,message:`Redirect from ${i} could not be validated and was blocked`});return await c(i,h("follow"))}let j=d.headers?.get("location");if(io.has(d.status)&&j){h8(d);let a=new URL(j,i).toString();if(void 0!==g&&!id(a,i)){let a=g.get("user-agent");g=new Headers(null==a?void 0:{"user-agent":a})}i=a;continue}return d}throw new ic({url:a,message:`Too many redirects (max ${d})`})}let ir=new Set(["accept","accept-language","baggage","cache-control","idempotency-key","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","pragma","range","traceparent","tracestate","user-agent","x-correlation-id","x-request-id"]);async function is({headers:a,credentialedOrigin:b,untrustedFirstHopHeaders:c,...d}){let e;if(void 0!==a){e=im(a);let f=b??d.trustedOrigin;if(void 0===f||!id(d.url,f)){let a=new Set([...ir,...(c??[]).map(a=>a.toLowerCase())]);e=new Headers([...e].filter(([b])=>a.has(b)))}}return iq({...d,headers:e})}async function it({response:a,url:b,maxBytes:c=0x80000000}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await h8(a),new ic({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new ic({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch{}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}Symbol.for("vercel.ai.embeddingModel.maxInputBytesPerCall"),Symbol.for("vercel.ai.embeddingModel.providerOptionsTransformer");let iu=({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{let e=()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")};if(null==a)return e;if(c.includes(d))throw new hF({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${e()}`};iu();let iv=async({url:a,headers:b={},successfulResponseHandler:c,failedResponseHandler:d,abortSignal:e,fetch:f,validateUrl:g,credentialedOrigin:h,trustedOrigin:i})=>{try{let j=f??globalThis.fetch,k=h7(void 0===h||id(a,h)?b:{},`ai-sdk-provider-utils/${h5}`,h0()),l=g?await iq({url:a,headers:k,abortSignal:e,fetch:f,trustedOrigin:i}):await j(a,{method:"GET",headers:k,signal:e}),m=h_(l);if(!l.ok){let b;try{b=await d({response:l,url:a,requestBodyValues:{}})}catch(b){if(h1(b)||hw.isInstance(b))throw b;throw new hw({message:"Failed to process error response",cause:b,statusCode:l.status,url:a,responseHeaders:m,requestBodyValues:{}})}throw b.value}try{return await c({response:l,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(h1(b)||hw.isInstance(b)))throw b;throw new hw({message:"Failed to process successful response",cause:b,statusCode:l.status,url:a,responseHeaders:m,requestBodyValues:{}})}}catch(b){throw h4({error:b,url:a,requestBodyValues:{}})}};function iw(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}function ix({settingValue:a,environmentVariableName:b}){return"string"==typeof a?a:null!=a||"u"<typeof process?void 0:null!=(a=process.env[b])&&"string"==typeof a?a:void 0}function iy(a){return null!=a&&Number.isSafeInteger(a)&&a>=0}let iz=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,iA=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function iB(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===iz.test(a)&&!1===iA.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function iC(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch{return iB(a)}try{return iB(a)}finally{Error.stackTraceLimit=b}}function iD(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&iE(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=iE(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(iE):iE(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(iE)),null!=a.allOf&&(a.allOf=a.allOf.map(iE)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(iE));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=iE(b[a]);return a}function iE(a){return"boolean"==typeof a?a:iD(a)}let iF=Symbol("Let zodToJsonSchema decide on which parser to use"),iG={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function iH(a,b){return i_(a.type._def,b)}let iI=/^[cC][^\s-]{8,}$/,iJ=/^[0-9a-z]+$/,iK=/^[0-9A-HJKMNP-TV-Z]{26}$/,iL=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9-]*\.)+[a-zA-Z]{2,}$/,iM=()=>(void 0===c&&(c=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),c),iN=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,iO=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,iP=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,iQ=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,iR=/^[a-zA-Z0-9_-]{21}$/,iS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function iT(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":iW(c,"email",d.message,b);break;case"format:idn-email":iW(c,"idn-email",d.message,b);break;case"pattern:zod":iX(c,iL,d.message,b)}break;case"url":iW(c,"uri",d.message,b);break;case"uuid":iW(c,"uuid",d.message,b);break;case"regex":iX(c,d.regex,d.message,b);break;case"cuid":iX(c,iI,d.message,b);break;case"cuid2":iX(c,iJ,d.message,b);break;case"startsWith":iX(c,RegExp(`^${iU(d.value,b)}`),d.message,b);break;case"endsWith":iX(c,RegExp(`${iU(d.value,b)}$`),d.message,b);break;case"datetime":iW(c,"date-time",d.message,b);break;case"date":iW(c,"date",d.message,b);break;case"time":iW(c,"time",d.message,b);break;case"duration":iW(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":iX(c,RegExp(iU(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&iW(c,"ipv4",d.message,b),"v4"!==d.version&&iW(c,"ipv6",d.message,b);break;case"base64url":iX(c,iQ,d.message,b);break;case"jwt":iX(c,iS,d.message,b);break;case"cidr":"v6"!==d.version&&iX(c,iN,d.message,b),"v4"!==d.version&&iX(c,iO,d.message,b);break;case"emoji":iX(c,iM(),d.message,b);break;case"ulid":iX(c,iK,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":iW(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":iX(c,iP,d.message,b)}break;case"nanoid":iX(c,iR,d.message,b)}return c}function iU(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)iV.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}let iV=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function iW(a,b,c,d){a.format||a.anyOf?.some(a=>a.format)?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function iX(a,b,c,d){a.pattern||a.allOf?.some(a=>a.pattern)?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:iY(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=iY(b,d)}function iY(a,b){if(!b.applyRegexFlags||!a.flags)return a.source;let c={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},d=c.i?a.source.toLowerCase():a.source,e="",f=!1,g=!1,h=!1;for(let a=0;a<d.length;a++){if(f){e+=d[a],f=!1;continue}if(c.i){if(g){if(d[a].match(/[a-z]/)){h?(e+=d[a],e+=`${d[a-2]}-${d[a]}`.toUpperCase(),h=!1):"-"===d[a+1]&&d[a+2]?.match(/[a-z]/)?(e+=d[a],h=!0):e+=`${d[a]}${d[a].toUpperCase()}`;continue}}else if(d[a].match(/[a-z]/)){e+=`[${d[a]}${d[a].toUpperCase()}]`;continue}}if(c.m){if("^"===d[a]){e+=`(^|(?<=[\r
46
46
  ]))`;continue}else if("$"===d[a]){e+=`($|(?=[\r
47
47
  ]))`;continue}}if(c.s&&"."===d[a]){e+=g?`${d[a]}\r
48
48
  `:`[${d[a]}\r
49
- ]`;continue}e+=d[a],"\\"===d[a]?f=!0:g&&"]"===d[a]?g=!1:g||"["!==d[a]||(g=!0)}try{new RegExp(e)}catch{return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return e}function jP(a,b){let c={type:"object",additionalProperties:jR(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]})??b.allowedAdditionalProperties};if(a.keyType?._def.typeName==="ZodString"&&a.keyType._def.checks?.length){let{type:d,...e}=jJ(a.keyType._def,b);return{...c,propertyNames:e}}if(a.keyType?._def.typeName==="ZodEnum")return{...c,propertyNames:{enum:a.keyType._def.values}};if(a.keyType?._def.typeName==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&a.keyType._def.type._def.checks?.length){let{type:d,...e}=jw(a.keyType._def,b);return{...c,propertyNames:e}}return c}var jQ={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function jR(a,b,c=!1){let d=b.seen.get(a);if(b.override){let e=b.override?.(a,b,d,c);if(e!==ju)return e}if(d&&!c){let a=jS(d,b);if(void 0!==a)return a}let e={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,e);let f=((a,b,c)=>{switch(b){case"ZodString":return jJ(a,c);case"ZodNumber":let d={type:"number"};if(!a.checks)return d;for(let b of a.checks)switch(b.kind){case"int":d.type="integer";break;case"min":b.inclusive?d.minimum=b.value:d.exclusiveMinimum=b.value;break;case"max":b.inclusive?d.maximum=b.value:d.exclusiveMaximum=b.value;break;case"multipleOf":d.multipleOf=b.value}return d;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch{return!0}}(f),h=jR(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return jR(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let e={type:"integer",format:"int64"};if(!a.checks)return e;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?e.minimum=b.value:e.exclusiveMinimum=b.value;break;case"max":b.inclusive?e.maximum=b.value:e.exclusiveMaximum=b.value;break;case"multipleOf":e.multipleOf=b.value}return e;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=d??c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let f;return f={type:"array"},a.type?._def&&a.type?._def?.typeName!=="ZodAny"&&(f.items=jR(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(f.minItems=a.minLength.value),a.maxLength&&(f.maxItems=a.maxLength.value),a.exactLength&&(f.minItems=a.exactLength.value,f.maxItems=a.exactLength.value),f;case"ZodUnion":case"ZodDiscriminatedUnion":var g,h;let i,j=a.options instanceof Map?Array.from(a.options.values()):a.options;if(j.every(a=>a._def.typeName in jQ&&(!a._def.checks||!a._def.checks.length))){let a=j.reduce((a,b)=>{let c=jQ[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(j.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=j.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===j.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:j.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(j.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:j.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return g=a,h=c,(i=(g.options instanceof Map?Array.from(g.options.values()):g.options).map((a,b)=>jR(a._def,{...h,currentPath:[...h.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!h.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:i}:void 0;case"ZodIntersection":let k,l;return k=[jR(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),jR(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),l=[],k.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)l.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}l.push(b)}}),l.length?{allOf:l}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>jR(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:jR(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>jR(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return jP(a,c);case"ZodLiteral":let m;return"bigint"!=(m=typeof a.value)&&"number"!==m&&"boolean"!==m&&"string"!==m?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===m?"integer":m,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let n,o,p;return n=a.values,{type:1===(p=Array.from(new Set((o=Object.keys(a.values).filter(a=>"number"!=typeof n[n[a]]).map(a=>n[a])).map(a=>typeof a)))).length?"string"===p[0]?"string":"number":["string","number"],enum:o};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[jQ[a.innerType._def.typeName],"null"]};let q=jR(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return q&&{anyOf:[q,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===c.propertyPath?.toString())return jR(a.innerType._def,c);let r=jR(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{};case"ZodMap":if("record"===c.mapStrategy)return jP(a,c);return{type:"array",maxItems:125,items:{type:"array",items:[jR(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},jR(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let s;return s={type:"array",uniqueItems:!0,items:jR(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(s.minItems=a.minSize.value),a.maxSize&&(s.maxItems=a.maxSize.value),s;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return jR(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?jR(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...jR(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return jw(a,c);case"ZodReadonly":case"ZodCatch":return jR(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return jR(a.in._def,c);if("output"===c.pipeStrategy)return jR(a.out._def,c);let t=jR(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),u=jR(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",t?"1":"0"]});return{allOf:[t,u].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),g="function"==typeof f?jR(f(),b):f;if(g&&jT(a,b,g),b.postProcess){let c=b.postProcess(g,a,b);return e.jsonSchema=g,c}return e.jsonSchema=g,g}var jS=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},jT=(a,b,c)=>(a.description&&(c.description=a.description),c),jU=Symbol.for("vercel.ai.schema");function jV(a){let b;return()=>(null==b&&(b=a()),b)}function jW(a,{validate:b}={}){return{[jU]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function jX(a){var b;return null==a?jW({type:"object",properties:{},additionalProperties:!1}):"object"==typeof a&&null!==a&&jU in a&&!0===a[jU]&&"jsonSchema"in a&&"validate"in a?a:"~standard"in a?"zod"===a["~standard"].vendor?jY(a):(b=a,jW(()=>{if(null==b["~standard"].jsonSchema)throw Error(`Standard schema vendor '${b["~standard"].vendor}' does not support JSON Schema conversion.`);return js(b["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let c=await b["~standard"].validate(a);return"value"in c?{success:!0,value:c.value}:{success:!1,error:new iE({value:a,cause:c.issues})}}})):a()}function jY(a,b){let c;if("_zod"in a){let c;return c=b?.useReferences??!1,jW(()=>js((0,bR.toJSONSchema)(a,{target:"draft-7",io:"input",reused:c?"ref":"inline"})),{validate:async b=>{let c=await (0,bQ.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return c=b?.useReferences??!1,jW(()=>((a,b)=>{let c,d,e=(d=void 0!==(c="string"==typeof b?{...jv,name:b}:{...jv,...b}).name?[...c.basePath,c.definitionPath,c.name]:c.basePath,{...c,currentPath:d,propertyPath:void 0,seen:new Map(Object.entries(c.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...c.basePath,c.definitionPath,a],jsonSchema:void 0}]))}),f="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>({...a,[b]:jR(c._def,{...e,currentPath:[...e.basePath,e.definitionPath,b]},!0)??{}}),{}):void 0,g="string"==typeof b?b:b?.nameStrategy==="title"?void 0:b?.name,h=jR(a._def,void 0===g?e:{...e,currentPath:[...e.basePath,e.definitionPath,g]},!1)??{},i="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==i&&(h.title=i);let j=void 0===g?f?{...h,[e.definitionPath]:f}:h:{$ref:[..."relative"===e.$refStrategy?[]:e.basePath,e.definitionPath,g].join("/"),[e.definitionPath]:{...f,[g]:h}};return j.$schema="http://json-schema.org/draft-07/schema#",j})(a,{$refStrategy:c?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function jZ({value:a,schema:b,context:c}){let d=await j$({value:a,schema:b,context:c});if(!d.success)throw iE.wrap({value:a,cause:d.error,context:c});return d.value}async function j$({value:a,schema:b,context:c}){let d=jX(b);try{if(null==d.validate)return{success:!0,value:a,rawValue:a};let b=await d.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:iE.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:iE.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function j_({text:a,schema:b}){try{let c=jr(a);if(null==b)return c;return await jZ({value:c,schema:b})}catch(b){if(iu.isInstance(b)||iE.isInstance(b))throw b;throw new iu({text:a,cause:b})}}async function j0({text:a,schema:b}){try{let c=jr(a);if(null==b)return{success:!0,value:c,rawValue:c};return await j$({value:c,schema:b})}catch(b){return{success:!1,error:iu.isInstance(b)?b:new iu({text:a,cause:b}),rawValue:void 0}}}function j1({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bW).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await j0({text:a,schema:b}))}}))}async function j2({provider:a,providerOptions:b,schema:c}){if(b?.[a]==null)return;let d=await j$({value:b[a],schema:c});if(!d.success)throw new ip({argument:"providerOptions",message:`invalid ${a} provider options`,cause:d.error});return d.value}var j3=()=>globalThis.fetch,j4=async({url:a,headers:b,body:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await j5({url:a,headers:{"Content-Type":"application/json",...b},body:{content:JSON.stringify(c),values:c},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),j5=async({url:a,headers:b={},body:c,successfulResponseHandler:d,failedResponseHandler:e,abortSignal:f,fetch:g=j3()})=>{try{let h=await g(a,{method:"POST",headers:i$(b,`ai-sdk/provider-utils/${iY}`,iT()),body:c.content,signal:f}),i=iS(h);if(!h.ok){let b;try{b=await e({response:h,url:a,requestBodyValues:c.values})}catch(b){if(iU(b)||id.isInstance(b))throw b;throw new id({message:"Failed to process error response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}throw b.value}try{return await d({response:h,url:a,requestBodyValues:c.values})}catch(b){if(b instanceof Error&&(iU(b)||id.isInstance(b)))throw b;throw new id({message:"Failed to process successful response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}}catch(b){throw iX({error:b,url:a,requestBodyValues:c.values})}};function j6({id:a,inputSchema:b,outputSchema:c,supportsDeferredResults:d}){return({onInputStart:e,onInputDelta:f,onInputAvailable:g,...h})=>({type:"provider",isProviderExecuted:!0,id:a,args:h,inputSchema:b,outputSchema:c,onInputStart:e,onInputDelta:f,onInputAvailable:g,supportsDeferredResults:d})}async function j7(a){return"function"==typeof a&&(a=a()),a}var j8=new TextDecoder;async function j9({response:a,url:b}){return j8.decode(await ji({response:a,url:b}))}var ka=({errorSchema:a,errorToMessage:b,isRetryable:c})=>async({response:d,url:e,requestBodyValues:f})=>{let g=await j9({response:d,url:e}),h=iS(d);if(""===g.trim())return{responseHeaders:h,value:new id({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:c?.(d)})};try{let i=await j_({text:g,schema:a});return{responseHeaders:h,value:new id({message:b(i),url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,data:i,isRetryable:c?.(d,i)})}}catch{return{responseHeaders:h,value:new id({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:c?.(d)})}}},kb=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=await j9({response:b,url:c}),f=await j0({text:e,schema:a}),g=iS(b);if(!f.success)throw new id({message:"Invalid JSON response",cause:f.error,statusCode:b.status,responseHeaders:g,responseBody:e,url:c,requestBodyValues:d});return{responseHeaders:g,value:f.value,rawValue:f.rawValue}};async function*kc({stream:a,schema:b}){let c=a.getReader(),d=new TextDecoder,e="",f=!1;try{for(;;){let{done:a,value:g}=await c.read();if(a){f=!0,e+=d.decode();break}let h=(e+=d.decode(g,{stream:!0})).indexOf("\n");for(;-1!==h;){let a=e.slice(0,h).replace(/\r$/,"");e=e.slice(h+1),a.trim().length>0&&(yield await j_({text:a,schema:b})),h=e.indexOf("\n")}}let a=e.replace(/\r$/,"");a.trim().length>0&&(yield await j_({text:a,schema:b}))}finally{f||await c.cancel().catch(()=>{}),c.releaseLock()}}function kd(a){if(null==a)return!0;let b=typeof a;return"string"===b||"number"===b||"boolean"===b||"function"!==b&&"symbol"!==b&&"bigint"!==b&&(Array.isArray(a)?a.every(kd):Object.getPrototypeOf(a)===Object.prototype&&Object.values(a).every(kd))}var ke="AI_SerializationError",kf=`vercel.ai.error.${ke}`,kg=Symbol.for(kf),kh=class extends(aR=h9,aQ=kg,aR){constructor({message:a="Failed to serialize value.",cause:b}={}){super({name:ke,message:a,cause:b}),this[aQ]=!0}static isInstance(a){return h9.hasMarker(a,kf)}};function ki(a){let b={};for(let[c,d]of Object.entries(a.config))if("headers"===c){let a=function(a){let b=a;if("function"==typeof a&&(b=a()),b instanceof Promise)throw new kh({message:"Cannot serialize asynchronous model options."});return b}(d);kd(a)&&(b[c]=a)}else kd(d)&&(b[c]=d);return{modelId:a.modelId,config:b}}function kj(a){return"string"==typeof a}function kk(a){return"number"==typeof a}function kl(a,b){return void 0===a||b(a)}function km(a){return jl(a)&&kj(a.type)}function kn(a){return jl(a)&&kj(a.text)&&kk(a.startSecond)&&kk(a.endSecond)}var ko="ai-gateway-transcription.v1";function kp(a,b,c){let d=[a,`ai-gateway-auth.${b}`];return c?.teamIdOrSlug&&d.push(`ai-gateway-team.${function(a){let b=new TextEncoder().encode(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(c.teamIdOrSlug)}`),d}var kq={any:e0.any,array:e0.array,boolean:e0.boolean,discriminatedUnion:e0.discriminatedUnion,enum:e0.enum,literal:e0.literal,number:e0.number,object:e0.object,record:e0.record,string:e0.string,union:e0.union,unknown:e0.unknown},kr=Symbol.for("vercel.ai.gateway.error"),ks=class a extends(aT=Error,aS=kr,aT){constructor({message:a,statusCode:b=500,cause:c,generationId:d,isRetryable:e=null!=b&&(408===b||409===b||429===b||b>=500)}){super(d?`${a} [${d}]`:a),this[aS]=!0,this.statusCode=b,this.cause=c,this.generationId=d,this.isRetryable=e}static isInstance(b){return a.hasMarker(b)}static hasMarker(a){return"object"==typeof a&&null!==a&&kr in a&&!0===a[kr]}},kt="GatewayAuthenticationError",ku=Symbol.for(`vercel.ai.gateway.error.${kt}`),kv=class a extends(aV=ks,aU=ku,aV){constructor({message:a="Authentication failed",statusCode:b=401,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[aU]=!0,this.name=kt,this.type="authentication_error"}static isInstance(a){return ks.hasMarker(a)&&ku in a}static createContextualError({apiKeyProvided:b,oidcTokenProvided:c,statusCode:d=401,cause:e,generationId:f}){return new a({message:b?`AI Gateway authentication failed: Invalid API key or token.
49
+ ]`;continue}e+=d[a],"\\"===d[a]?f=!0:g&&"]"===d[a]?g=!1:g||"["!==d[a]||(g=!0)}try{new RegExp(e)}catch{return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return e}function iZ(a,b){let c={type:"object",additionalProperties:i_(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]})??b.allowedAdditionalProperties};if(a.keyType?._def.typeName==="ZodString"&&a.keyType._def.checks?.length){let{type:d,...e}=iT(a.keyType._def,b);return{...c,propertyNames:e}}if(a.keyType?._def.typeName==="ZodEnum")return{...c,propertyNames:{enum:a.keyType._def.values}};if(a.keyType?._def.typeName==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&a.keyType._def.type._def.checks?.length){let{type:d,...e}=iH(a.keyType._def,b);return{...c,propertyNames:e}}return c}let i$={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function i_(a,b,c=!1){let d=b.seen.get(a);if(b.override){let e=b.override?.(a,b,d,c);if(e!==iF)return e}if(d&&!c){let a=i0(d,b);if(void 0!==a)return a}let e={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,e);let f=((a,b,c)=>{switch(b){case"ZodString":return iT(a,c);case"ZodNumber":let d={type:"number"};if(!a.checks)return d;for(let b of a.checks)switch(b.kind){case"int":d.type="integer";break;case"min":b.inclusive?d.minimum=b.value:d.exclusiveMinimum=b.value;break;case"max":b.inclusive?d.maximum=b.value:d.exclusiveMaximum=b.value;break;case"multipleOf":d.multipleOf=b.value}return d;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch{return!0}}(f),h=i_(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return i_(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let e={type:"integer",format:"int64"};if(!a.checks)return e;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?e.minimum=b.value:e.exclusiveMinimum=b.value;break;case"max":b.inclusive?e.maximum=b.value:e.exclusiveMaximum=b.value;break;case"multipleOf":e.multipleOf=b.value}return e;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=d??c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let f;return f={type:"array"},a.type?._def&&a.type?._def?.typeName!=="ZodAny"&&(f.items=i_(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(f.minItems=a.minLength.value),a.maxLength&&(f.maxItems=a.maxLength.value),a.exactLength&&(f.minItems=a.exactLength.value,f.maxItems=a.exactLength.value),f;case"ZodUnion":case"ZodDiscriminatedUnion":var g,h;let i,j=a.options instanceof Map?Array.from(a.options.values()):a.options;if(j.every(a=>a._def.typeName in i$&&(!a._def.checks||!a._def.checks.length))){let a=j.reduce((a,b)=>{let c=i$[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(j.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=j.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===j.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:j.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(j.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:j.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return g=a,h=c,(i=(g.options instanceof Map?Array.from(g.options.values()):g.options).map((a,b)=>i_(a._def,{...h,currentPath:[...h.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!h.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:i}:void 0;case"ZodIntersection":let k,l;return k=[i_(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),i_(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),l=[],k.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)l.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}l.push(b)}}),l.length?{allOf:l}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>i_(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:i_(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>i_(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return iZ(a,c);case"ZodLiteral":let m;return"bigint"!=(m=typeof a.value)&&"number"!==m&&"boolean"!==m&&"string"!==m?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===m?"integer":m,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let n,o,p;return n=a.values,{type:1===(p=Array.from(new Set((o=Object.keys(a.values).filter(a=>"number"!=typeof n[n[a]]).map(a=>n[a])).map(a=>typeof a)))).length?"string"===p[0]?"string":"number":["string","number"],enum:o};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[i$[a.innerType._def.typeName],"null"]};let q=i_(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return q&&{anyOf:[q,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===c.propertyPath?.toString())return i_(a.innerType._def,c);let r=i_(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{};case"ZodMap":return"record"===c.mapStrategy?iZ(a,c):{type:"array",maxItems:125,items:{type:"array",items:[i_(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},i_(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let s;return s={type:"array",uniqueItems:!0,items:i_(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(s.minItems=a.minSize.value),a.maxSize&&(s.maxItems=a.maxSize.value),s;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return i_(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?i_(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...i_(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return iH(a,c);case"ZodReadonly":case"ZodCatch":return i_(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return i_(a.in._def,c);if("output"===c.pipeStrategy)return i_(a.out._def,c);let t=i_(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]});return{allOf:[t,i_(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",t?"1":"0"]})].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),g="function"==typeof f?i_(f(),b):f;if(g&&i1(a,b,g),b.postProcess){let c=b.postProcess(g,a,b);return e.jsonSchema=g,c}return e.jsonSchema=g,g}let i0=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},i1=(a,b,c)=>(a.description&&(c.description=a.description),c),i2=Symbol.for("vercel.ai.schema");function i3(a){let b;return()=>(null==b&&(b=a()),b)}function i4(a,{validate:b}={}){return{[i2]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function i5(a,b){let c;if("_zod"in a){let c;return c=b?.useReferences??!1,i4(()=>iD((0,a8.toJSONSchema)(a,{target:"draft-7",io:"input",reused:c?"ref":"inline"})),{validate:async b=>{let c=await (0,a7.safeParseAsync)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return c=b?.useReferences??!1,i4(()=>((a,b)=>{let c,d,e=(d=void 0!==(c="string"==typeof b?{...iG,name:b}:{...iG,...b}).name?[...c.basePath,c.definitionPath,c.name]:c.basePath,{...c,currentPath:d,propertyPath:void 0,seen:new Map(Object.entries(c.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...c.basePath,c.definitionPath,a],jsonSchema:void 0}]))}),f="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>({...a,[b]:i_(c._def,{...e,currentPath:[...e.basePath,e.definitionPath,b]},!0)??{}}),{}):void 0,g="string"==typeof b?b:b?.nameStrategy==="title"?void 0:b?.name,h=i_(a._def,void 0===g?e:{...e,currentPath:[...e.basePath,e.definitionPath,g]},!1)??{},i="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==i&&(h.title=i);let j=void 0===g?f?{...h,[e.definitionPath]:f}:h:{$ref:[..."relative"===e.$refStrategy?[]:e.basePath,e.definitionPath,g].join("/"),[e.definitionPath]:{...f,[g]:h}};return j.$schema="http://json-schema.org/draft-07/schema#",j})(a,{$refStrategy:c?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function i6({value:a,schema:b,context:c}){let d=await i7({value:a,schema:b,context:c});if(!d.success)throw hN.wrap({value:a,cause:d.error,context:c});return d.value}async function i7({value:a,schema:b,context:c}){let d=function(a){var b;return null==a?i4({type:"object",properties:{},additionalProperties:!1}):"object"==typeof a&&null!==a&&i2 in a&&!0===a[i2]&&"jsonSchema"in a&&"validate"in a?a:"~standard"in a?"zod"===a["~standard"].vendor?i5(a):(b=a,i4(()=>{if(null==b["~standard"].jsonSchema)throw Error(`Standard schema vendor '${b["~standard"].vendor}' does not support JSON Schema conversion.`);return iD(b["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let c=await b["~standard"].validate(a);return"value"in c?{success:!0,value:c.value}:{success:!1,error:new hN({value:a,cause:c.issues})}}})):a()}(b);try{if(null==d.validate)return{success:!0,value:a,rawValue:a};let b=await d.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:hN.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:hN.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function i8({text:a,schema:b}){try{let c=iC(a);if(null==b)return c;return await i6({value:c,schema:b})}catch(b){if(hJ.isInstance(b)||hN.isInstance(b))throw b;throw new hJ({text:a,cause:b})}}async function i9({text:a,schema:b}){try{let c=iC(a);if(null==b)return{success:!0,value:c,rawValue:c};return await i7({value:c,schema:b})}catch(b){return{success:!1,error:hJ.isInstance(b)?b:new hJ({text:a,cause:b}),rawValue:void 0}}}function ja({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new bd).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await i9({text:a,schema:b}))}}))}async function jb({provider:a,providerOptions:b,schema:c}){if(b?.[a]==null)return;let d=await i7({value:b[a],schema:c});if(!d.success)throw new hF({argument:"providerOptions",message:`invalid ${a} provider options`,cause:d.error});return d.value}let jc=()=>globalThis.fetch,jd=async({url:a,headers:b,body:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await je({url:a,headers:{"Content-Type":"application/json",...b},body:{content:JSON.stringify(c),values:c},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),je=async({url:a,headers:b={},body:c,successfulResponseHandler:d,failedResponseHandler:e,abortSignal:f,fetch:g=jc()})=>{try{let h=await g(a,{method:"POST",headers:h7(b,`ai-sdk-provider-utils/${h5}`,h0()),body:c.content,signal:f}),i=h_(h);if(!h.ok){let b;try{b=await e({response:h,url:a,requestBodyValues:c.values})}catch(b){if(h1(b)||hw.isInstance(b))throw b;throw new hw({message:"Failed to process error response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}throw b.value}try{return await d({response:h,url:a,requestBodyValues:c.values})}catch(b){if(b instanceof Error&&(h1(b)||hw.isInstance(b)))throw b;throw new hw({message:"Failed to process successful response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:c.values})}}catch(b){throw h4({error:b,url:a,requestBodyValues:c.values})}};function jf({id:a,inputSchema:b,outputSchema:c,supportsDeferredResults:d}){return({onInputStart:e,onInputDelta:f,onInputAvailable:g,...h})=>({type:"provider",isProviderExecuted:!0,id:a,args:h,inputSchema:b,outputSchema:c,onInputStart:e,onInputDelta:f,onInputAvailable:g,supportsDeferredResults:d})}async function jg(a){return"function"==typeof a&&(a=a()),a}let jh=new TextDecoder;async function ji({response:a,url:b}){return jh.decode(await it({response:a,url:b}))}let jj=({errorSchema:a,errorToMessage:b,isRetryable:c})=>async({response:d,url:e,requestBodyValues:f})=>{let g=await ji({response:d,url:e}),h=h_(d);if(""===g.trim())return{responseHeaders:h,value:new hw({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:c?.(d)})};try{let i=await i8({text:g,schema:a});return{responseHeaders:h,value:new hw({message:b(i),url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,data:i,isRetryable:c?.(d,i)})}}catch{return{responseHeaders:h,value:new hw({message:d.statusText,url:e,requestBodyValues:f,statusCode:d.status,responseHeaders:h,responseBody:g,isRetryable:c?.(d)})}}},jk=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=await ji({response:b,url:c}),f=await i9({text:e,schema:a}),g=h_(b);if(!f.success)throw new hw({message:"Invalid JSON response",cause:f.error,statusCode:b.status,responseHeaders:g,responseBody:e,url:c,requestBodyValues:d});return{responseHeaders:g,value:f.value,rawValue:f.rawValue}};async function*jl({stream:a,schema:b}){let c=a.getReader(),d=new TextDecoder,e="",f=!1;try{for(;;){let{done:a,value:g}=await c.read();if(a){f=!0,e+=d.decode();break}let h=(e+=d.decode(g,{stream:!0})).indexOf("\n");for(;-1!==h;){let a=e.slice(0,h).replace(/\r$/,"");e=e.slice(h+1),a.trim().length>0&&(yield await i8({text:a,schema:b})),h=e.indexOf("\n")}}let a=e.replace(/\r$/,"");a.trim().length>0&&(yield await i8({text:a,schema:b}))}finally{f||await c.cancel().catch(()=>{}),c.releaseLock()}}function jm(a){if(null==a)return!0;let b=typeof a;return"string"===b||"number"===b||"boolean"===b||"function"!==b&&"symbol"!==b&&"bigint"!==b&&(Array.isArray(a)?a.every(jm):Object.getPrototypeOf(a)===Object.prototype&&Object.values(a).every(jm))}let jn="AI_SerializationError",jo=`vercel.ai.error.${jn}`,jp=Symbol.for(jo);var jq=class extends hs{constructor({message:a="Failed to serialize value.",cause:b}={}){super({name:jn,message:a,cause:b}),this[jp]=!0}static isInstance(a){return hs.hasMarker(a,jo)}};function jr(a){let b={};for(let[c,d]of Object.entries(a.config))if("headers"===c){let a=function(a){let b=a;if("function"==typeof a&&(b=a()),b instanceof Promise)throw new jq({message:"Cannot serialize asynchronous model options."});return b}(d);jm(a)&&(b[c]=a)}else jm(d)&&(b[c]=d);return{modelId:a.modelId,config:b}}function js(a){return"string"==typeof a}function jt(a){return"number"==typeof a}function ju(a,b){return void 0===a||b(a)}function jv(a){return iw(a)&&js(a.type)}function jw(a){return iw(a)&&js(a.text)&&jt(a.startSecond)&&jt(a.endSecond)}let jx="ai-gateway-transcription.v1";function jy(a,b,c){let d=[a,`ai-gateway-auth.${b}`];return c?.teamIdOrSlug&&d.push(`ai-gateway-team.${function(a){let b=new TextEncoder().encode(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(c.teamIdOrSlug)}`),d}let jz={any:ej.any,array:ej.array,boolean:ej.boolean,discriminatedUnion:ej.discriminatedUnion,enum:ej.enum,literal:ej.literal,number:ej.number,object:ej.object,record:ej.record,string:ej.string,union:ej.union,unknown:ej.unknown},jA=Symbol.for("vercel.ai.gateway.error");var jB=class a extends Error{constructor({message:a,statusCode:b=500,cause:c,generationId:d,isRetryable:e=null!=b&&(408===b||409===b||429===b||b>=500)}){super(d?`${a} [${d}]`:a),this[jA]=!0,this.statusCode=b,this.cause=c,this.generationId=d,this.isRetryable=e}static isInstance(b){return a.hasMarker(b)}static hasMarker(a){return"object"==typeof a&&null!==a&&jA in a&&!0===a[jA]}};let jC="GatewayAuthenticationError",jD=Symbol.for(`vercel.ai.gateway.error.${jC}`);var jE=class a extends jB{constructor({message:a="Authentication failed",statusCode:b=401,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jD]=!0,this.name=jC,this.type="authentication_error"}static isInstance(a){return jB.hasMarker(a)&&jD in a}static createContextualError({apiKeyProvided:b,oidcTokenProvided:c,statusCode:d=401,cause:e,generationId:f}){return new a({message:b?`AI Gateway authentication failed: Invalid API key or token.
50
50
 
51
51
  Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
52
52
 
@@ -65,9 +65,9 @@ Option 2 - Vercel access token:
65
65
  Pass a Vercel personal access token or Vercel app access token via the 'apiKey' option.
66
66
 
67
67
  Option 3 - OIDC token:
68
- Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:d,cause:e,generationId:f})}},kw="GatewayInvalidRequestError",kx=Symbol.for(`vercel.ai.gateway.error.${kw}`),ky=class extends(aX=ks,aW=kx,aX){constructor({message:a="Invalid request",statusCode:b=400,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[aW]=!0,this.name=kw,this.type="invalid_request_error"}static isInstance(a){return ks.hasMarker(a)&&kx in a}},kz="GatewayRateLimitError",kA=Symbol.for(`vercel.ai.gateway.error.${kz}`),kB=class extends(aZ=ks,aY=kA,aZ){constructor({message:a="Rate limit exceeded",statusCode:b=429,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[aY]=!0,this.name=kz,this.type="rate_limit_exceeded"}static isInstance(a){return ks.hasMarker(a)&&kA in a}},kC="GatewayModelNotFoundError",kD=Symbol.for(`vercel.ai.gateway.error.${kC}`),kE=jV(()=>jY(kq.object({modelId:kq.string()}))),kF=class extends(a_=ks,a$=kD,a_){constructor({message:a="Model not found",statusCode:b=404,modelId:c,cause:d,generationId:e}={}){super({message:a,statusCode:b,cause:d,generationId:e}),this[a$]=!0,this.name=kC,this.type="model_not_found",this.modelId=c}static isInstance(a){return ks.hasMarker(a)&&kD in a}},kG="GatewayNotFoundError",kH=Symbol.for(`vercel.ai.gateway.error.${kG}`),kI=class extends(a1=ks,a0=kH,a1){constructor({message:a="Resource not found",statusCode:b=404,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[a0]=!0,this.name=kG,this.type="not_found"}static isInstance(a){return ks.hasMarker(a)&&kH in a}},kJ="GatewayInternalServerError",kK=Symbol.for(`vercel.ai.gateway.error.${kJ}`),kL=class extends(a3=ks,a2=kK,a3){constructor({message:a="Internal server error",statusCode:b=500,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[a2]=!0,this.name=kJ,this.type="internal_server_error"}static isInstance(a){return ks.hasMarker(a)&&kK in a}},kM="GatewayFailedDependencyError",kN=Symbol.for(`vercel.ai.gateway.error.${kM}`),kO=class extends(a5=ks,a4=kN,a5){constructor({message:a="Failed dependency",statusCode:b=424,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[a4]=!0,this.name=kM,this.type="failed_dependency"}static isInstance(a){return ks.hasMarker(a)&&kN in a}},kP="GatewayForbiddenError",kQ=Symbol.for(`vercel.ai.gateway.error.${kP}`),kR=jV(()=>jY(kq.object({ruleId:kq.string()}))),kS=class extends(a7=ks,a6=kQ,a7){constructor({message:a="Forbidden",statusCode:b=403,cause:c,generationId:d,ruleId:e}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[a6]=!0,this.name=kP,this.type="forbidden",this.ruleId=e}static isInstance(a){return ks.hasMarker(a)&&kQ in a}},kT="GatewayResponseError",kU=Symbol.for(`vercel.ai.gateway.error.${kT}`),kV=class extends(a9=ks,a8=kU,a9){constructor({message:a="Invalid response from Gateway",statusCode:b=502,response:c,validationError:d,cause:e,generationId:f,isRetryable:g}={}){super({message:a,statusCode:b,cause:e,generationId:f,isRetryable:g}),this[a8]=!0,this.name=kT,this.type="response_error",this.response=c,this.validationError=d}static isInstance(a){return ks.hasMarker(a)&&kU in a}};async function kW({response:a,statusCode:b,defaultMessage:c="Gateway request failed",cause:d,authMethod:e,isRetryable:f}){let g=await j$({value:a,schema:kX});if(!g.success){let e="object"==typeof a&&null!==a&&"generationId"in a?a.generationId:void 0;return new kV({message:`Invalid error response format: ${c}`,statusCode:b,response:a,validationError:g.error,cause:d,generationId:e,isRetryable:f})}let h=g.value,i=h.error.type,j=h.error.message,k=h.generationId??void 0;switch(i){case"authentication_error":return kv.createContextualError({apiKeyProvided:"api-key"===e,oidcTokenProvided:"oidc"===e,statusCode:b,cause:d,generationId:k});case"invalid_request_error":return new ky({message:j,statusCode:b,cause:d,generationId:k});case"rate_limit_exceeded":return new kB({message:j,statusCode:b,cause:d,generationId:k});case"model_not_found":{let a=await j$({value:h.error.param,schema:kE});return new kF({message:j,statusCode:b,modelId:a.success?a.value.modelId:void 0,cause:d,generationId:k})}case"not_found":return new kI({message:j,statusCode:b,cause:d,generationId:k});case"internal_server_error":default:return new kL({message:j,statusCode:b,cause:d,generationId:k});case"failed_dependency":return new kO({message:j,statusCode:b,cause:d,generationId:k});case"forbidden":{let a=await j$({value:h.error.param,schema:kR});return new kS({message:j,statusCode:b,cause:d,generationId:k,ruleId:a.success?a.value.ruleId:void 0})}}}var kX=jV(()=>jY(kq.object({error:kq.object({message:kq.string(),type:kq.string().nullish(),param:kq.unknown().nullish(),code:kq.union([kq.string(),kq.number()]).nullish()}),generationId:kq.string().nullish()}))),kY="GatewayTimeoutError",kZ=Symbol.for(`vercel.ai.gateway.error.${kY}`),k$=class a extends(bb=ks,ba=kZ,bb){constructor({message:a="Request timed out",statusCode:b=408,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[ba]=!0,this.name=kY,this.type="timeout_error"}static isInstance(a){return ks.hasMarker(a)&&kZ in a}static createTimeoutError({originalMessage:b,statusCode:c=408,cause:d,generationId:e}){return new a({message:`Gateway request timed out: ${b}
68
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:d,cause:e,generationId:f})}};let jF="GatewayInvalidRequestError",jG=Symbol.for(`vercel.ai.gateway.error.${jF}`);var jH=class extends jB{constructor({message:a="Invalid request",statusCode:b=400,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jG]=!0,this.name=jF,this.type="invalid_request_error"}static isInstance(a){return jB.hasMarker(a)&&jG in a}};let jI="GatewayRateLimitError",jJ=Symbol.for(`vercel.ai.gateway.error.${jI}`);var jK=class extends jB{constructor({message:a="Rate limit exceeded",statusCode:b=429,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jJ]=!0,this.name=jI,this.type="rate_limit_exceeded"}static isInstance(a){return jB.hasMarker(a)&&jJ in a}};let jL="GatewayModelNotFoundError",jM=Symbol.for(`vercel.ai.gateway.error.${jL}`),jN=i3(()=>i5(jz.object({modelId:jz.string()})));var jO=class extends jB{constructor({message:a="Model not found",statusCode:b=404,modelId:c,cause:d,generationId:e}={}){super({message:a,statusCode:b,cause:d,generationId:e}),this[jM]=!0,this.name=jL,this.type="model_not_found",this.modelId=c}static isInstance(a){return jB.hasMarker(a)&&jM in a}};let jP="GatewayNotFoundError",jQ=Symbol.for(`vercel.ai.gateway.error.${jP}`);var jR=class extends jB{constructor({message:a="Resource not found",statusCode:b=404,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jQ]=!0,this.name=jP,this.type="not_found"}static isInstance(a){return jB.hasMarker(a)&&jQ in a}};let jS="GatewayInternalServerError",jT=Symbol.for(`vercel.ai.gateway.error.${jS}`);var jU=class extends jB{constructor({message:a="Internal server error",statusCode:b=500,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jT]=!0,this.name=jS,this.type="internal_server_error"}static isInstance(a){return jB.hasMarker(a)&&jT in a}};let jV="GatewayFailedDependencyError",jW=Symbol.for(`vercel.ai.gateway.error.${jV}`);var jX=class extends jB{constructor({message:a="Failed dependency",statusCode:b=424,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jW]=!0,this.name=jV,this.type="failed_dependency"}static isInstance(a){return jB.hasMarker(a)&&jW in a}};let jY="GatewayForbiddenError",jZ=Symbol.for(`vercel.ai.gateway.error.${jY}`),j$=i3(()=>i5(jz.object({ruleId:jz.string()})));var j_=class extends jB{constructor({message:a="Forbidden",statusCode:b=403,cause:c,generationId:d,ruleId:e}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[jZ]=!0,this.name=jY,this.type="forbidden",this.ruleId=e}static isInstance(a){return jB.hasMarker(a)&&jZ in a}};let j0="GatewayResponseError",j1=Symbol.for(`vercel.ai.gateway.error.${j0}`);var j2=class extends jB{constructor({message:a="Invalid response from Gateway",statusCode:b=502,response:c,validationError:d,cause:e,generationId:f,isRetryable:g}={}){super({message:a,statusCode:b,cause:e,generationId:f,isRetryable:g}),this[j1]=!0,this.name=j0,this.type="response_error",this.response=c,this.validationError=d}static isInstance(a){return jB.hasMarker(a)&&j1 in a}};async function j3({response:a,statusCode:b,defaultMessage:c="Gateway request failed",cause:d,authMethod:e,isRetryable:f}){let g=await i7({value:a,schema:j4});if(!g.success){let e="object"==typeof a&&null!==a&&"generationId"in a?a.generationId:void 0;return new j2({message:`Invalid error response format: ${c}`,statusCode:b,response:a,validationError:g.error,cause:d,generationId:e,isRetryable:f})}let h=g.value,i=h.error.type,j=h.error.message,k=h.generationId??void 0;switch(i){case"authentication_error":return jE.createContextualError({apiKeyProvided:"api-key"===e,oidcTokenProvided:"oidc"===e,statusCode:b,cause:d,generationId:k});case"invalid_request_error":return new jH({message:j,statusCode:b,cause:d,generationId:k});case"rate_limit_exceeded":return new jK({message:j,statusCode:b,cause:d,generationId:k});case"model_not_found":{let a=await i7({value:h.error.param,schema:jN});return new jO({message:j,statusCode:b,modelId:a.success?a.value.modelId:void 0,cause:d,generationId:k})}case"not_found":return new jR({message:j,statusCode:b,cause:d,generationId:k});case"internal_server_error":default:return new jU({message:j,statusCode:b,cause:d,generationId:k});case"failed_dependency":return new jX({message:j,statusCode:b,cause:d,generationId:k});case"forbidden":{let a=await i7({value:h.error.param,schema:j$});return new j_({message:j,statusCode:b,cause:d,generationId:k,ruleId:a.success?a.value.ruleId:void 0})}}}let j4=i3(()=>i5(jz.object({error:jz.object({message:jz.string(),type:jz.string().nullish(),param:jz.unknown().nullish(),code:jz.union([jz.string(),jz.number()]).nullish()}),generationId:jz.string().nullish()}))),j5="GatewayTimeoutError",j6=Symbol.for(`vercel.ai.gateway.error.${j5}`);var j7=class a extends jB{constructor({message:a="Request timed out",statusCode:b=408,cause:c,generationId:d}={}){super({message:a,statusCode:b,cause:c,generationId:d}),this[j6]=!0,this.name=j5,this.type="timeout_error"}static isInstance(a){return jB.hasMarker(a)&&j6 in a}static createTimeoutError({originalMessage:b,statusCode:c=408,cause:d,generationId:e}){return new a({message:`Gateway request timed out: ${b}
69
69
 
70
- This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:c,cause:d,generationId:e})}};function k_(a){if(!(a instanceof Error))return!1;let b=a.code;return"string"==typeof b&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(b)}async function k0(a,b){return ks.isInstance(a)?a:k_(a)?k$.createTimeoutError({originalMessage:a instanceof Error?a.message:"Unknown error",cause:a}):id.isInstance(a)?a.cause&&k_(a.cause)?k$.createTimeoutError({originalMessage:a.message,cause:a}):await kW({response:function(a){if(void 0!==a.data)return a.data;if(null!=a.responseBody)try{return jr(a.responseBody)}catch{return a.responseBody}return{}}(a),statusCode:a.statusCode??500,defaultMessage:"Gateway request failed",cause:a,authMethod:b,isRetryable:!!a.isRetryable&&(null==a.statusCode||a.statusCode<400)||void 0}):await kW({response:{},statusCode:500,defaultMessage:a instanceof Error?`Gateway request failed: ${a.message}`:"Unknown Gateway error",cause:a,authMethod:b})}var k1="ai-gateway-auth-method",k2="x-vercel-ai-gateway-team";async function k3(a){let b=await j$({value:a[k1],schema:k4});return b.success?b.value:void 0}var k4=jV(()=>jY(kq.union([kq.literal("api-key"),kq.literal("oidc")]))),k5=["embedding","evaluation","image","language","realtime","reranking","speech","transcription","video"],k6=class{constructor(a){this.config=a}async getAvailableModels(){try{let{value:a}=await jk({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await j7(this.config.headers):void 0,successfulResponseHandler:kb(k7),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),fetch:this.config.fetch});return a}catch(a){throw await k0(a)}}async getCredits(){try{let a=new URL(this.config.baseURL),{value:b}=await jk({url:`${a.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await j7(this.config.headers):void 0,successfulResponseHandler:kb(k8),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),fetch:this.config.fetch});return b}catch(a){throw await k0(a)}}},k7=jV(()=>jY(kq.object({models:kq.array(kq.object({id:kq.string(),name:kq.string(),description:kq.string().nullish(),pricing:kq.object({input:kq.string(),output:kq.string(),input_cache_read:kq.string().nullish(),input_cache_write:kq.string().nullish()}).transform(({input:a,output:b,input_cache_read:c,input_cache_write:d})=>({input:a,output:b,...c?{cachedInputTokens:c}:{},...d?{cacheCreationInputTokens:d}:{}})).nullish(),specification:kq.object({specificationVersion:kq.literal("v4"),provider:kq.string(),modelId:kq.string()}),modelType:kq.string().nullish()})).transform(a=>a.filter(a=>null==a.modelType||k5.includes(a.modelType)))}))),k8=jV(()=>jY(kq.object({balance:kq.string(),total_used:kq.string()}).transform(({balance:a,total_used:b})=>({balance:a,totalUsed:b})))),k9=class{constructor(a){this.config=a}async getSpendReport(a){try{let b=new URL(this.config.baseURL),c=new URLSearchParams;c.set("start_date",a.startDate),c.set("end_date",a.endDate),a.groupBy&&c.set("group_by",a.groupBy),a.datePart&&c.set("date_part",a.datePart),a.userId&&c.set("user_id",a.userId),a.model&&c.set("model",a.model),a.provider&&c.set("provider",a.provider),a.credentialType&&c.set("credential_type",a.credentialType),a.tags&&a.tags.length>0&&c.set("tags",a.tags.join(","));let{value:d}=await jk({url:`${b.origin}/v1/report?${c.toString()}`,validateUrl:!1,headers:this.config.headers?await j7(this.config.headers):void 0,successfulResponseHandler:kb(la),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),fetch:this.config.fetch});return d}catch(a){throw await k0(a)}}},la=jV(()=>jY(kq.object({results:kq.array(kq.object({day:kq.string().optional(),hour:kq.string().optional(),user:kq.string().optional(),model:kq.string().optional(),tag:kq.string().optional(),provider:kq.string().optional(),credential_type:kq.enum(["byok","system"]).optional(),total_cost:kq.number(),market_cost:kq.number().optional(),input_tokens:kq.number().optional(),output_tokens:kq.number().optional(),cached_input_tokens:kq.number().optional(),cache_creation_input_tokens:kq.number().optional(),reasoning_tokens:kq.number().optional(),request_count:kq.number().optional()}).transform(({credential_type:a,total_cost:b,market_cost:c,input_tokens:d,output_tokens:e,cached_input_tokens:f,cache_creation_input_tokens:g,reasoning_tokens:h,request_count:i,...j})=>({...j,...void 0!==a?{credentialType:a}:{},totalCost:b,...void 0!==c?{marketCost:c}:{},...void 0!==d?{inputTokens:d}:{},...void 0!==e?{outputTokens:e}:{},...void 0!==f?{cachedInputTokens:f}:{},...void 0!==g?{cacheCreationInputTokens:g}:{},...void 0!==h?{reasoningTokens:h}:{},...void 0!==i?{requestCount:i}:{}})))}))),lb=class{constructor(a){this.config=a}async getGenerationInfo(a){try{let b=new URL(this.config.baseURL),{value:c}=await jk({url:`${b.origin}/v1/generation?id=${encodeURIComponent(a.id)}`,validateUrl:!1,headers:this.config.headers?await j7(this.config.headers):void 0,successfulResponseHandler:kb(lc),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),fetch:this.config.fetch});return c}catch(a){throw await k0(a)}}},lc=jV(()=>jY(kq.object({data:kq.object({id:kq.string(),total_cost:kq.number(),upstream_inference_cost:kq.number(),usage:kq.number(),created_at:kq.string(),model:kq.string(),is_byok:kq.boolean(),provider_name:kq.string(),streamed:kq.boolean(),finish_reason:kq.string(),latency:kq.number(),generation_time:kq.number(),native_tokens_prompt:kq.number(),native_tokens_completion:kq.number(),native_tokens_reasoning:kq.number(),native_tokens_cached:kq.number(),native_tokens_cache_creation:kq.number(),billable_web_search_calls:kq.number()}).transform(({total_cost:a,upstream_inference_cost:b,created_at:c,is_byok:d,provider_name:e,finish_reason:f,generation_time:g,native_tokens_prompt:h,native_tokens_completion:i,native_tokens_reasoning:j,native_tokens_cached:k,native_tokens_cache_creation:l,billable_web_search_calls:m,...n})=>({...n,totalCost:a,upstreamInferenceCost:b,createdAt:c,isByok:d,providerName:e,finishReason:f,generationTime:g,promptTokens:h,completionTokens:i,reasoningTokens:j,cachedTokens:k,cacheCreationTokens:l,billableWebSearchCalls:m}))}).transform(({data:a})=>a))),ld=class{constructor(a){this.config=a,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]},this.provider=`${a.provider}.batch`}async doStartBatch({requests:a,providerOptions:b,headers:c,abortSignal:d,webhookUrl:e}){var f=a;for(let a of f){let b=a.type;if("text"!==b)throw new iI({functionality:`batch request type: ${b}`,message:`The AI Gateway Batch API does not support batch requests with type "${b}".`})}let g=function(a){let b=a[0]?.modelId;if(null==b)throw new ip({argument:"requests",message:"The AI Gateway Batch API requires at least one request."});for(let c of a)if(c.modelId!==b)throw new ip({argument:"requests",message:`The AI Gateway Batch API requires all requests in a batch to use the same model. Found "${b}" and "${c.modelId}".`});return b}(a),h=this.config.headers?await j7(this.config.headers):void 0,i=function(a){let b=a?.gateway;if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b.idempotencyKey;return"string"==typeof c&&c.length>0?c:void 0}(b),j=function(a){let b=a?.gateway;if(null==b||"object"!=typeof b||Array.isArray(b)||!("idempotencyKey"in b))return a;let{idempotencyKey:c,...d}=b,e={...a};if(0===Object.keys(d).length?delete e.gateway:e.gateway=d,0!==Object.keys(e).length)return e}(b);try{let{value:b}=await j4({url:this.getBatchUrl("start"),headers:iJ(h,c,{"ai-model-id":g},await j7(this.config.o11yHeaders),null!=i?{"idempotency-key":i}:void 0),body:{...null!=e&&{callbackUrl:e},requests:a.map(a=>({id:a.id,type:a.type,modelId:a.modelId,options:function(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=le(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=le(b.data))}return a}(a.options)})),...null!=j&&{providerOptions:j}},successfulResponseHandler:kb(ln),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{batchId:b.batchId,...lg(b),warnings:b.warnings??[]}}catch(a){if(lf(a))throw a;throw await k0(a,await k3(h??{}))}}async doGetBatchStatus({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await j7(this.config.headers):void 0;try{let{value:e}=await j4({url:this.getBatchUrl("status"),headers:iJ(d,b,await j7(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:kb(lo),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return lg(e)}catch(a){if(lf(a))throw a;throw await k0(a,await k3(d??{}))}}async doGetBatchResults({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await j7(this.config.headers):void 0;try{var e;let f,{value:g}=await j4({url:this.getBatchUrl("results"),headers:iJ(d,b,await j7(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:async({response:a})=>{let b=iS(a);if(null==a.body)throw new ii({});return{responseHeaders:b,value:kc({stream:a.body,schema:li})}},failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return e=lh(g),f=!1,new ReadableStream({async pull(a){if(!f)try{let{value:b,done:c}=await e.next();c?a.close():a.enqueue(b)}catch(b){a.error(b)}},async cancel(a){if(f=!0,e.return)try{await e.return(a)}catch{}}})}catch(a){if(lf(a))throw a;throw await k0(a,await k3(d??{}))}}async doCancelBatch({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await j7(this.config.headers):void 0;try{let{value:e}=await j4({url:this.getBatchUrl("cancel"),headers:iJ(d,b,await j7(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:kb(lo),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{...null!=e.providerMetadata&&{providerMetadata:e.providerMetadata}}}catch(a){if(lf(a))throw a;throw await k0(a,await k3(d??{}))}}getBatchUrl(a){return`${this.config.baseURL}/batch/${a}`}};function le(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}function lf(a){return!!(a instanceof Error||a instanceof DOMException)&&("AbortError"===a.name||"TimeoutError"===a.name)}function lg(a){let b=function({total:a,pending:b,completed:c,failed:d}){if(jn(a)&&jn(b)&&jn(c)&&jn(d)&&b+c+d===a)return{total:a,pending:b,completed:c,failed:d}}({total:a.requestCounts?.total,pending:a.requestCounts?.pending,completed:a.requestCounts?.completed,failed:a.requestCounts?.failed});return{status:a.status,...null!=a.rawStatus&&{rawStatus:a.rawStatus},...null!=b&&{requestCounts:b},...null!=a.error&&{error:{message:a.error.message,...null!=a.error.type&&{type:a.error.type},...null!=a.error.code&&{code:a.error.code},...null!=a.error.statusCode&&{statusCode:a.error.statusCode}}},...null!=a.createdAt&&{createdAt:a.createdAt},...null!=a.expiresAt&&{expiresAt:a.expiresAt},...null!=a.providerMetadata&&{providerMetadata:a.providerMetadata}}}async function*lh(a){for await(let b of a){if("succeeded"===b.status){let a=b.result?.response;void 0!==a&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp))}yield b}}var li=kq.object({type:kq.literal("text"),id:kq.string(),status:kq.enum(["cancelled","expired","failed","succeeded"])}).catchall(kq.unknown()),lj=kq.object({message:kq.string(),type:kq.string().nullish(),code:kq.string().nullish(),statusCode:kq.number().nullish()}),lk=kq.object({total:kq.number().nullish(),pending:kq.number().nullish(),completed:kq.number().nullish(),failed:kq.number().nullish()}),ll=kq.record(kq.string(),kq.record(kq.string(),kq.unknown())),lm=kq.object({status:kq.enum(["completed","failed","pending"]),rawStatus:kq.string().nullish(),requestCounts:lk.nullish(),error:lj.nullish(),createdAt:kq.string().nullish(),expiresAt:kq.string().nullish(),providerMetadata:ll.nullish()}),ln=lm.extend({batchId:kq.string(),warnings:kq.array(kq.object({requestId:kq.string().nullish(),warning:kq.unknown()}).catchall(kq.unknown())).nullish()}),lo=lm,lp=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}static[bX](a){return ki({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs(a){let{abortSignal:b,...c}=a;return{args:this.maybeEncodeFileParts(c),warnings:[]}}async doGenerate(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:f,value:g,rawValue:h}=await j4({url:this.getUrl(),headers:iJ(e,a.headers,this.getModelConfigHeaders(this.modelId,!1),await j7(this.config.o11yHeaders)),body:b,successfulResponseHandler:kb(kq.any()),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{...g,request:{body:b},response:{headers:f,body:h},warnings:[...g.warnings??[],...c]}}catch(a){throw await k0(a,await k3(e??{}))}}async doStream(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await j7(this.config.headers):void 0;try{let f,{value:g,responseHeaders:h}=await j4({url:this.getUrl(),headers:iJ(e,a.headers,this.getModelConfigHeaders(this.modelId,!0),await j7(this.config.o11yHeaders)),body:b,successfulResponseHandler:(f=kq.any(),async({response:a,url:b,requestBodyValues:c})=>{let d=iS(a);if(null==a.body)throw new ii({});return{responseHeaders:d,value:j1({stream:function({stream:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e}){let f=a.getReader(),g=!1,h=()=>{g||(f.releaseLock(),g=!0)};return new ReadableStream({async pull(a){try{let{done:b,value:c}=await f.read();b?(h(),a.close()):a.enqueue(c)}catch(f){if(h(),iU(f))return void a.error(f);a.error(iX({error:new id({message:"Failed to process successful response",cause:f,statusCode:d,url:b,responseHeaders:e,requestBodyValues:c}),url:b,requestBodyValues:c}))}},async cancel(a){try{await f.cancel(a)}finally{h()}}})}({stream:a.body,url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d}),schema:f})}}),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{stream:g.pipeThrough(new TransformStream({start(a){c.length>0&&a.enqueue({type:"stream-start",warnings:c})},transform(b,c){if(b.success){let d=b.value;("raw"!==d.type||a.includeRawChunks)&&("response-metadata"===d.type&&d.timestamp&&"string"==typeof d.timestamp&&(d.timestamp=new Date(d.timestamp)),c.enqueue(d))}else c.error(b.error)}})),request:{body:b},response:{headers:h}}}catch(a){throw await k0(a,await k3(e??{}))}}maybeEncodeFileParts(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=lq(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=lq(b.data))}return a}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(a,b){return{"ai-language-model-specification-version":"4","ai-language-model-id":a,"ai-language-model-streaming":String(b)}}};function lq(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}var lr=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[bX](a){return ki({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doEmbed({values:a,headers:b,abortSignal:c,providerOptions:d}){let e=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:f,value:g,rawValue:h}=await j4({url:this.getUrl(),headers:iJ(e,b??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{values:a,...d?{providerOptions:d}:{}},successfulResponseHandler:kb(lt),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{embeddings:g.embeddings,usage:g.usage??void 0,providerMetadata:g.providerMetadata,response:{headers:f,body:h},warnings:g.warnings??[]}}catch(a){throw await k0(a,await k3(e??{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}},ls=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),lt=jV(()=>jY(kq.object({embeddings:kq.array(kq.array(kq.number())),usage:kq.object({tokens:kq.number()}).nullish(),warnings:kq.array(ls).optional(),providerMetadata:kq.record(kq.string(),kq.record(kq.string(),kq.unknown())).optional()}))),lu=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}static[bX](a){return ki({modelId:a.modelId,config:a.config})}static[bY](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doGenerate({prompt:a,n:b,size:c,aspectRatio:d,seed:e,files:f,mask:g,providerOptions:h,headers:i,abortSignal:j}){let k=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:l,value:m}=await j4({url:this.getUrl(),headers:iJ(k,i??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{prompt:a,n:b,...c&&{size:c},...d&&{aspectRatio:d},...e&&{seed:e},...h&&{providerOptions:h},...f&&{files:f.map(a=>lv(a))},...g&&{mask:lv(g)}},successfulResponseHandler:kb(lz),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...j&&{abortSignal:j},fetch:this.config.fetch});return{images:m.images,...null!=m.isRetryable&&{isRetryable:m.isRetryable},warnings:m.warnings??[],providerMetadata:m.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:l},...null!=m.usage&&{usage:{inputTokens:m.usage.inputTokens??void 0,outputTokens:m.usage.outputTokens??void 0,totalTokens:m.usage.totalTokens??void 0}}}}catch(a){throw await k0(a,await k3(k??{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function lv(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:iR(a.data)}:a}var lw=kq.object({images:kq.array(kq.unknown()).optional()}).catchall(kq.unknown()),lx=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),ly=kq.object({inputTokens:kq.number().nullish(),outputTokens:kq.number().nullish(),totalTokens:kq.number().nullish()}),lz=kq.object({images:kq.array(kq.string()),isRetryable:kq.boolean().optional(),warnings:kq.array(lx).optional(),providerMetadata:kq.record(kq.string(),lw).optional(),usage:ly.optional()}),lA=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(a){let{headers:b,abortSignal:c}=a,d=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:e,value:f}=await j4({url:this.getUrl(),headers:iJ(d,b??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(a),successfulResponseHandler:async({response:a,url:b,requestBodyValues:c})=>{if(null==a.body)throw new id({message:"SSE response body is empty",url:b,requestBodyValues:c,statusCode:a.status});let d=j1({stream:a.body,schema:lF}).getReader(),{done:e,value:f}=await d.read();if(d.releaseLock(),e||!f)throw new id({message:"SSE stream ended without a data event",url:b,requestBodyValues:c,statusCode:a.status});if(!f.success)throw new id({message:"Failed to parse video SSE event",cause:f.error,url:b,requestBodyValues:c,statusCode:a.status});let g=f.value;if("error"===g.type)throw new id({message:g.message,statusCode:g.statusCode,url:b,requestBodyValues:c,responseHeaders:Object.fromEntries([...a.headers]),responseBody:JSON.stringify(g),data:{error:{message:g.message,type:g.errorType,param:g.param}}});return{value:{videos:g.videos,warnings:g.warnings,providerMetadata:g.providerMetadata},responseHeaders:Object.fromEntries([...a.headers])}},failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{videos:f.videos,warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:e}}}catch(a){throw await k0(a,await k3(d??{}))}}async handleWebhookOption({webhook:a}){let{url:b,received:c}=await a();return{webhookUrl:b,received:c}}async doStart(a){let{headers:b,abortSignal:c,webhookUrl:d}=a,e=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:f,value:g}=await j4({url:this.getStartUrl(),headers:iJ(e,b??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{...this.buildRequestBody(a),...d&&{callbackUrl:d}},successfulResponseHandler:kb(lG),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{operation:g.operation,warnings:g.warnings??[],providerMetadata:g.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:f}}}catch(a){throw await k0(a,await k3(e??{}))}}async doStatus({operation:a,abortSignal:b,headers:c}){let d=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:e,value:f}=await j4({url:this.getStatusUrl(),headers:iJ(d,c??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{operation:a},successfulResponseHandler:kb(lH),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...b&&{abortSignal:b},fetch:this.config.fetch}),g={timestamp:new Date,modelId:this.modelId,headers:e};if("completed"===f.status)return{status:"completed",videos:f.videos,warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:g};if("error"===f.status)return{status:"error",error:f.error,providerMetadata:f.providerMetadata??void 0,response:g};if("cancelled"===f.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:f.providerMetadata??void 0,response:g};return{status:"pending",warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:g}}catch(a){throw await k0(a,await k3(d??{}))}}buildRequestBody({prompt:a,n:b,aspectRatio:c,resolution:d,duration:e,fps:f,seed:g,generateAudio:h,image:i,frameImages:j,inputReferences:k,providerOptions:l}){return{prompt:a,n:b,...c&&{aspectRatio:c},...d&&{resolution:d},...e&&{duration:e},...f&&{fps:f},...g&&{seed:g},...void 0!==h&&{generateAudio:h},...l&&{providerOptions:l},...i&&{image:lB(i)},...j&&{frameImages:j.map(a=>({...a,image:lB(a.image)}))},...k&&{inputReferences:k.map(a=>lB(a))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function lB(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:iR(a.data)}:a}var lC=kq.object({videos:kq.array(kq.unknown()).optional()}).catchall(kq.unknown()),lD=kq.union([kq.object({type:kq.literal("url"),url:kq.string(),mediaType:kq.string()}),kq.object({type:kq.literal("base64"),data:kq.string(),mediaType:kq.string()})]),lE=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),lF=kq.discriminatedUnion("type",[kq.object({type:kq.literal("result"),videos:kq.array(lD),warnings:kq.array(lE).optional(),providerMetadata:kq.record(kq.string(),lC).optional()}),kq.object({type:kq.literal("error"),message:kq.string(),errorType:kq.string(),statusCode:kq.number(),param:kq.unknown().nullable()})]),lG=kq.object({operation:kq.unknown(),warnings:kq.array(lE).nullish(),providerMetadata:kq.record(kq.string(),lC).nullish()}),lH=kq.discriminatedUnion("status",[kq.object({status:kq.literal("pending"),warnings:kq.array(lE).nullish(),providerMetadata:kq.record(kq.string(),lC).nullish()}),kq.object({status:kq.literal("completed"),videos:kq.array(lD),warnings:kq.array(lE).nullish(),providerMetadata:kq.record(kq.string(),lC).nullish()}),kq.object({status:kq.literal("error"),error:kq.string(),providerMetadata:kq.record(kq.string(),lC).nullish()}),kq.object({status:kq.literal("cancelled"),providerMetadata:kq.record(kq.string(),lC).nullish()})]),lI=jV(()=>jY(kq.object({models:lO.optional()}).catchall(kq.unknown()))),lJ=kq.number().finite().min(0).max(1),lK=kq.string().min(1).max(256),lL=kq.union([kq.object({question:lK,confidenceBelow:lJ}).strict(),kq.object({question:lK,probabilityBetween:kq.array(lJ).length(2).refine(([a,b])=>a<=b,{message:"probabilityBetween minimum must be less than or equal to maximum"})}).strict()]),lM=kq.union([kq.object({any:kq.unknown()}),kq.object({all:kq.unknown()}),kq.object({atLeast:kq.unknown()})]).superRefine((a,b)=>{b.addIssue({code:"custom",message:"conditions can be nested at most 5 levels deep"})}),lN=kq.object({model:kq.string().min(1),when:function a(b){if(5===b)return kq.union([lL,lM]);let c=a(b+1),d=kq.array(c).min(1).max(20);return kq.union([lL,kq.object({any:d}).strict(),kq.object({all:d}).strict(),kq.object({atLeast:kq.object({count:kq.number().int().min(1),conditions:d}).strict().refine(({count:a,conditions:b})=>a<=b.length,{message:"atLeast count cannot exceed the number of conditions",path:["count"]})}).strict()])}(1)}).strict(),lO=kq.array(kq.union([kq.string(),lN])).superRefine((a,b)=>{let c=a.flatMap((a,b)=>"string"==typeof a?[]:[b]);c.length>1&&b.addIssue({code:"custom",message:"models supports at most one conditional evaluation fallback"}),void 0!==c[0]&&0!==c[0]&&b.addIssue({code:"custom",message:"a conditional evaluation fallback must be the first models entry",path:[c[0]]})}),lP=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedQuestionTypes=["choice","score","boolean"]}get provider(){return this.config.provider}async doEvaluate({state:a,questions:b,headers:c,abortSignal:d,providerOptions:e}){let f=await j2({provider:"gateway",providerOptions:e,schema:lI}),g=null==f?e:{...e,gateway:f},h=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:e,value:f,rawValue:i}=await j4({url:this.getUrl(),headers:iJ(h,c??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{state:a,questions:b,...g?{providerOptions:g}:{}},successfulResponseHandler:kb(lS),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{answers:f.answers,...f.rounding?{rounding:f.rounding}:{},...f.usage?{usage:f.usage}:{},warnings:f.warnings??[],providerMetadata:f.providerMetadata,response:{modelId:f.model??this.modelId,headers:e,body:i}}}catch(a){throw await k0(a,await k3(h??{}))}}getUrl(){return`${this.config.baseURL}/evaluation-model`}getModelConfigHeaders(){return{"ai-evaluation-model-specification-version":"4","ai-model-id":this.modelId}}},lQ=kq.discriminatedUnion("type",[kq.object({type:kq.literal("choice"),choice:kq.string(),probabilities:kq.record(kq.string(),kq.number()).optional()}),kq.object({type:kq.literal("score"),score:kq.number(),probabilities:kq.record(kq.string(),kq.number()).optional()}),kq.object({type:kq.literal("boolean"),probability:kq.number()})]),lR=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),lS=jV(()=>jY(kq.object({answers:kq.record(kq.string(),lQ),model:kq.string().optional(),rounding:kq.object({probabilityDecimals:kq.number().optional(),scoreDecimals:kq.number().optional()}).optional(),usage:kq.object({inputTokens:kq.number().optional(),outputTokens:kq.number().optional()}).optional(),warnings:kq.array(lR).optional(),providerMetadata:kq.record(kq.string(),kq.record(kq.string(),kq.unknown())).optional()}))),lT=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:a,query:b,topN:c,headers:d,abortSignal:e,providerOptions:f}){let g=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await j4({url:this.getUrl(),headers:iJ(g,d??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{documents:a,query:b,...null!=c?{topN:c}:{},...f?{providerOptions:f}:{}},successfulResponseHandler:kb(lV),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...e&&{abortSignal:e},fetch:this.config.fetch});return{ranking:i.ranking,providerMetadata:i.providerMetadata,response:{headers:h,body:j},warnings:i.warnings??[]}}catch(a){throw await k0(a,await k3(g??{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}},lU=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),lV=jV(()=>jY(kq.object({ranking:kq.array(kq.object({index:kq.number(),relevanceScore:kq.number()})),warnings:kq.array(lU).optional(),providerMetadata:kq.record(kq.string(),kq.record(kq.string(),kq.unknown())).optional()}))),lW=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:a,voice:b,outputFormat:c,instructions:d,speed:e,language:f,providerOptions:g,headers:h,abortSignal:i}){let j=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:k,value:l,rawValue:m}=await j4({url:this.getUrl(),headers:iJ(j,h??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{text:a,...b&&{voice:b},...c&&{outputFormat:c},...d&&{instructions:d},...null!=e&&{speed:e},...f&&{language:f},...g&&{providerOptions:g}},successfulResponseHandler:kb(lZ),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...i&&{abortSignal:i},fetch:this.config.fetch});return{audio:l.audio,warnings:l.warnings??[],providerMetadata:l.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:k,body:m}}}catch(a){throw await k0(a,await k3(j??{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}},lX=kq.object({}).catchall(kq.unknown()),lY=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),lZ=kq.object({audio:kq.string(),warnings:kq.array(lY).optional(),providerMetadata:kq.record(kq.string(),lX).optional()}),l$=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:a,mediaType:b,providerOptions:c,headers:d,abortSignal:e}){let f=this.config.headers?await j7(this.config.headers):void 0;try{let{responseHeaders:g,value:h,rawValue:i}=await j4({url:this.getUrl(),headers:iJ(f,d??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),body:{audio:a instanceof Uint8Array?iR(a):a,mediaType:b,...c&&{providerOptions:c}},successfulResponseHandler:kb(l2),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),...e&&{abortSignal:e},fetch:this.config.fetch});return{text:h.text,segments:h.segments??[],language:h.language??void 0,durationInSeconds:h.durationInSeconds??void 0,warnings:h.warnings??[],providerMetadata:h.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:g,body:i}}}catch(a){throw await k0(a,await k3(f??{}))}}async doStream(a){let b,c,d,e=this.config._internal?.currentDate?.()??new Date,f=iJ(await j7(this.config.headers??{}),a.headers??{},this.getModelConfigHeaders(),await j7(this.config.o11yHeaders)),g=await k3(f),h={type:"transcription-stream.start",inputAudioFormat:a.inputAudioFormat,...null!=a.providerOptions&&{providerOptions:a.providerOptions},...null!=a.includeRawChunks&&{includeRawChunks:a.includeRawChunks}};return{stream:function({webSocket:a,url:b,protocols:c,headers:d,startFrame:e,audio:f,abortSignal:g,authMethod:h}){let i=!1,j=()=>{};return new ReadableStream({start:k=>{let l,m,n,o=!1,p=!1;j=a=>{null!=l?l.cancel().catch(()=>{}):f.cancel().catch(()=>{}),n?.close(a)};let q=a=>{i||(i=!0,j(),l3(k,a,h))},r=async a=>{let b=f.getReader();l=b;try{for(;;){let{done:c,value:d}=await b.read();if(c||i)break;let e="string"==typeof d?function(a){let b=iQ(a.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(b,a=>a.codePointAt(0))}(d):d;for(let b=0;b<e.length&&!i;b+=65536)a.send(e.subarray(b,b+65536)),await iO(a)}}finally{b.releaseLock(),l===b&&(l=void 0)}i||p||a.send(JSON.stringify({type:"transcription-stream.audio-done"}))};n=function({url:a,protocols:b,headers:c,webSocket:d,abortSignal:e,onOpen:f,onMessageText:g,onProcessingError:h,onSocketError:i,onClose:j,onAbort:k}){let l,m,n=a=>{null!=m&&(e?.removeEventListener("abort",m),m=void 0);try{l?.close(a)}catch{}};if(e?.aborted)return k?.(e.reason??Error("Aborted")),{socket:void 0,close:n};try{var o;l=new(function(a){let b=a??globalThis.WebSocket;if(null==b)throw Error("No WebSocket implementation available.");return b}(d))(a,b,{headers:(o=c??{},Object.fromEntries(Object.entries(o).filter(([a,b])=>null!=b)))})}catch(a){return h(a),{socket:void 0,close:n}}null!=e&&null!=k&&(m=()=>k(e.reason??Error("Aborted")),e.addEventListener("abort",m,{once:!0}));let p=l;l.onopen=()=>{try{f?.(p)}catch(a){h(a)}};let q=Promise.resolve();return l.onmessage=a=>{q=q.then(()=>iN(a.data)).then(a=>g(a)).catch(h)},l.onerror=()=>{q=q.then(()=>i?.()).catch(h)},l.onclose=a=>{let b="number"==typeof a?.code?a.code:void 0,c="string"==typeof a?.reason?a.reason:void 0;q=q.then(()=>j?.({code:b,reason:c})).catch(h)},{socket:l,close:n}}({url:b,protocols:c,headers:d,webSocket:a,abortSignal:g,onAbort:a=>{i||(i=!0,j(),k.error(a))},onProcessingError:q,onOpen:a=>{a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:a=>{if(i)return;let b=function(a){let b;try{b=jr(a)}catch{return}if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b;switch(c.type){case"stream-start":return Array.isArray(c.warnings)&&c.warnings.every(km)?c:void 0;case"transcript-delta":return kj(c.delta)&&kl(c.id,kj)&&kl(c.providerMetadata,jl)?c:void 0;case"transcript-partial":return kj(c.text)&&kl(c.id,kj)&&kl(c.startSecond,kk)&&kl(c.durationInSeconds,kk)&&kl(c.channelIndex,kk)&&kl(c.providerMetadata,jl)?c:void 0;case"transcript-final":return kj(c.text)&&kl(c.id,kj)&&kl(c.startSecond,kk)&&kl(c.endSecond,kk)&&kl(c.channelIndex,kk)&&kl(c.providerMetadata,jl)?c:void 0;case"finish":return kj(c.text)&&Array.isArray(c.segments)&&c.segments.every(kn)&&kl(c.language,kj)&&kl(c.durationInSeconds,kk)&&kl(c.providerMetadata,jl)?c:void 0;case"response-metadata":{if(!(kl(c.modelId,kj)&&kl(c.headers,jl)))return;let a=c.timestamp;if(null==a)return{...c,timestamp:void 0};if("string"!=typeof a)return;let b=new Date(a);return Number.isNaN(b.getTime())?void 0:{...c,timestamp:b}}case"raw":return"rawValue"in c?c:void 0;case"error":return"error"in c?c:void 0;default:return}}(a);if(null!=b){if("finish"===b.type){i=!0,k.enqueue(b),k.close(),j(1e3);return}"error"===b.type&&(o=!0,m=b.error,p=!0,null!=l?(l.cancel().catch(()=>{}),l=void 0):f.cancel().catch(()=>{})),k.enqueue(b)}},onSocketError:()=>{q(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(o){if(i)return;l5(m,h).then(q);return}q(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{i||(i=!0,j())}})}({webSocket:this.config.webSocket,url:l_(this.config.baseURL,this.modelId),protocols:(c=(b=iZ(f)).authorization,null==(d=c?.startsWith("Bearer ")?c.slice(7):void 0)?[ko]:kp(ko,d,{teamIdOrSlug:b[k2]})),headers:f,startFrame:h,audio:a.audio,abortSignal:a.abortSignal,authMethod:g}),request:{body:h},response:{timestamp:e,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function l_(a,b){let c=new URL(`${a.replace(/^http/,"ws")}/transcription-model`);return c.searchParams.set("ai-model-id",b),c.toString()}var l0=kq.object({}).catchall(kq.unknown()),l1=kq.discriminatedUnion("type",[kq.object({type:kq.literal("unsupported"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("compatibility"),feature:kq.string(),details:kq.string().optional()}),kq.object({type:kq.literal("deprecated"),setting:kq.string(),message:kq.string()}),kq.object({type:kq.literal("other"),message:kq.string()})]),l2=kq.object({text:kq.string(),segments:kq.array(kq.object({text:kq.string(),startSecond:kq.number(),endSecond:kq.number()})).optional(),language:kq.string().nullish(),durationInSeconds:kq.number().nullish(),warnings:kq.array(l1).optional(),providerMetadata:kq.record(kq.string(),l0).optional()});async function l3(a,b,c){a.error(await k0(b,c))}var l4={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function l5(a,b){return"object"==typeof a&&null!=a&&"message"in a&&"string"==typeof a.message&&"type"in a&&"string"==typeof a.type&&a.type in l4?kW({response:{error:{message:a.message,type:a.type}},statusCode:l4[a.type],authMethod:b}):Error(`AI Gateway transcription stream failed: ${null!=a&&"object"==typeof a&&"message"in a&&"string"==typeof a.message?a.message:ik(a)}`)}var l6=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=await this.config.createClientSecret({modelId:this.modelId,...a?.expiresAfterSeconds!=null&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:e.token,url:(b=this.config.baseURL,c=this.modelId,(d=new URL(`${b.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",c),d.toString()),...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}getWebSocketConfig(a){return{url:a.url,protocols:kp("ai-gateway-realtime.v1",a.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(a){return a}serializeClientEvent(a){return a}buildSessionConfig(a){return a}},l7=kq.record(kq.string(),kq.unknown()),l8=j6({id:"gateway.browserbase_fetch",inputSchema:jV(()=>jY(kq.object({url:kq.string().url().describe("URL of the page to fetch."),allow_redirects:kq.boolean().optional().describe("Whether to follow HTTP redirects (default: false)."),allow_insecure_ssl:kq.boolean().optional().describe("Whether to bypass TLS certificate verification (default: false). Only use for trusted hosts."),proxies:kq.boolean().optional().describe("Whether to route the request through Browserbase proxies (default: false)."),format:kq.enum(["raw","json","markdown"]).optional().describe("Output format. raw returns the response body unchanged, markdown returns page content as Markdown, and json returns structured content using schema."),schema:l7.optional().describe("JSON Schema for structured extraction. Only use with format set to json.")}))),outputSchema:jV(()=>jY(kq.union([kq.object({id:kq.string(),content:kq.union([kq.string(),l7]),contentType:kq.string(),encoding:kq.string(),headers:kq.record(kq.string(),kq.string()),statusCode:kq.number()}),kq.object({error:kq.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:kq.number().optional(),message:kq.string()})])))}),l9=j6({id:"gateway.browserbase_search",inputSchema:jV(()=>jY(kq.object({query:kq.string().min(1).max(200).describe("Web search query. Must be between 1 and 200 characters."),num_results:kq.number().int().min(1).max(25).optional().describe("Maximum number of results to return (1-25, default: 10).")}))),outputSchema:jV(()=>jY(kq.union([kq.object({query:kq.string(),requestId:kq.string(),results:kq.array(kq.object({id:kq.string(),title:kq.string(),url:kq.string(),author:kq.string().optional(),favicon:kq.string().optional(),image:kq.string().optional(),publishedDate:kq.string().optional()}))}),kq.object({error:kq.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:kq.number().optional(),message:kq.string()})])))}),ma=j6({id:"gateway.exa_search",inputSchema:jV(()=>jY(kq.object({query:kq.string().describe("Natural-language web search query. This is required."),type:kq.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:kq.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:kq.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:kq.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:kq.array(kq.string()).optional().describe("Only return results from these domains."),exclude_domains:kq.array(kq.string()).optional().describe("Exclude results from these domains."),start_published_date:kq.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:kq.string().optional().describe("Only return links published before this ISO 8601 date."),contents:kq.object({text:kq.union([kq.boolean(),kq.object({max_characters:kq.number().optional(),include_html_tags:kq.boolean().optional(),verbosity:kq.enum(["compact","standard","full"]).optional(),include_sections:kq.array(kq.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:kq.array(kq.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:kq.union([kq.boolean(),kq.object({query:kq.string().optional(),max_characters:kq.number().optional()})]).optional(),max_age_hours:kq.number().optional(),livecrawl_timeout:kq.number().optional(),subpages:kq.number().optional(),subpage_target:kq.union([kq.string(),kq.array(kq.string())]).optional(),extras:kq.object({links:kq.number().optional(),image_links:kq.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:jV(()=>jY(kq.union([kq.object({requestId:kq.string(),searchType:kq.string().optional(),resolvedSearchType:kq.string().optional(),results:kq.array(kq.object({title:kq.string(),url:kq.string(),id:kq.string(),publishedDate:kq.string().nullable().optional(),author:kq.string().nullable().optional(),image:kq.string().nullable().optional(),favicon:kq.string().nullable().optional(),text:kq.string().optional(),highlights:kq.array(kq.string()).optional(),highlightScores:kq.array(kq.number()).optional(),summary:kq.string().optional(),subpages:kq.array(kq.any()).optional(),extras:kq.object({links:kq.array(kq.string()).optional(),imageLinks:kq.array(kq.string()).optional()}).optional()})),costDollars:kq.object({total:kq.number().optional(),search:kq.record(kq.string(),kq.number()).optional()}).optional()}),kq.object({error:kq.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:kq.number().optional(),message:kq.string()})])))}),mb=j6({id:"gateway.parallel_search",inputSchema:jV(()=>jY(kq.object({objective:kq.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:kq.array(kq.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:kq.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:kq.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:kq.object({include_domains:kq.array(kq.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:kq.array(kq.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:kq.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:kq.object({max_chars_per_result:kq.number().optional().describe("Maximum characters per result."),max_chars_total:kq.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:kq.object({max_age_seconds:kq.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:jV(()=>jY(kq.union([kq.object({searchId:kq.string(),results:kq.array(kq.object({url:kq.string(),title:kq.string(),excerpt:kq.string(),publishDate:kq.string().nullable().optional(),relevanceScore:kq.number().optional()}))}),kq.object({error:kq.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:kq.number().optional(),message:kq.string()})])))}),mc=j6({id:"gateway.perplexity_search",inputSchema:jV(()=>jY(kq.object({query:kq.union([kq.string(),kq.array(kq.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:kq.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:kq.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:kq.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:kq.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:kq.array(kq.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:kq.array(kq.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:kq.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:kq.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:kq.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:kq.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:kq.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:jV(()=>jY(kq.union([kq.object({results:kq.array(kq.object({title:kq.string(),url:kq.string(),snippet:kq.string(),date:kq.string().optional(),lastUpdated:kq.string().optional()})),id:kq.string()}),kq.object({error:kq.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:kq.number().optional(),message:kq.string()})])))}),md=kq.object({count:kq.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:kq.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:kq.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:kq.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:kq.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:kq.array(kq.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:kq.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),me=kq.object({count:kq.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:kq.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:kq.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:kq.array(kq.string()).optional().describe("Only return results from these bare domains."),exclude_domains:kq.array(kq.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:kq.number().optional().describe("Maximum characters in each web-result snippet."),highlights:kq.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:kq.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:kq.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:kq.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),mf=jV(()=>jY(kq.object({query:kq.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:kq.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:kq.object({data:md.optional(),web:me.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:kq.object({latitude:kq.number().describe("Latitude between -90 and 90."),longitude:kq.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:kq.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:kq.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:kq.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:kq.object({image_dark_mode:kq.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:kq.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:kq.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),mg=kq.union([kq.boolean(),kq.number(),kq.string()]).nullable(),mh=kq.object({content_format:kq.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:kq.number().optional(),data:kq.string().nullish(),records:kq.array(kq.record(kq.string(),mg)).nullish(),dataset:kq.object({columns:kq.array(kq.object({name:kq.string(),type:kq.enum(["boolean","date","datetime","number","string"]),unit:kq.string().nullish()})),rows:kq.array(kq.array(mg)),total_rows:kq.number(),truncated:kq.boolean(),ref:kq.string(),sources:kq.array(kq.object({name:kq.string(),index:kq.enum(["data","web"]).optional()})),provenance:kq.enum(["query","web_extraction"]).optional()}).nullish(),card_data:kq.object({}).passthrough().nullish(),card_data_schema:kq.object({}).passthrough().nullish(),url:kq.string().nullish(),expires_at:kq.string().nullish(),total_rows:kq.number().nullish(),truncated:kq.boolean().optional(),export_pricing:kq.object({baseline_usd:kq.number(),free_rows:kq.number(),max_rows_ceiling:kq.number(),row_cpm_usd:kq.number()}).nullish(),manifest:kq.array(kq.object({dtype:kq.enum(["boolean","date","datetime","number","string"]).nullish(),entity:kq.string().nullish(),metric:kq.string().nullish(),name:kq.string().nullish(),unit:kq.string().nullish()})).nullish()}).passthrough(),mi=kq.object({card_id:kq.string().nullish(),title:kq.string().nullish(),description:kq.string().nullish(),semantic_description:kq.string().nullish(),webpage_url:kq.string().nullish(),image_url:kq.string().nullish(),embed_url:kq.string().nullish(),sources:kq.array(kq.object({source_name:kq.string().nullish(),source_description:kq.string().nullish(),source_index:kq.enum(["data","web"]),source_text:kq.string().nullish(),url:kq.string().nullish()})).nullish(),methodologies:kq.array(kq.object({methodology_name:kq.string().nullable(),methodology_description:kq.string().nullable()})).nullish(),source_indexes:kq.array(kq.enum(["data","web"])).nullish(),card_type:kq.string().nullish(),relevance:kq.enum(["High","Low","Medium"]).nullish(),content:mh.nullish(),exportable:kq.boolean().optional(),nodes:kq.array(kq.object({id:kq.string(),type:kq.enum(["entity","metric"]),name:kq.string(),description:kq.string().nullish()})).nullish(),metric_definitions:kq.array(kq.object({name:kq.string(),definition:kq.string()})).nullish(),data_freshness:kq.object({coverage_end:kq.string().nullish(),data_as_of:kq.string().nullish(),last_updated:kq.string().nullish()}).nullish()}).passthrough(),mj=kq.object({title:kq.string(),url:kq.string(),snippet:kq.string().nullish(),source_name:kq.string().nullish(),publish_date:kq.string().nullish(),content:mh.nullish()}).passthrough(),mk=j6({id:"gateway.tako_search",inputSchema:mf,outputSchema:jV(()=>jY(kq.union([kq.object({request_id:kq.string(),cards:kq.array(mi).optional(),web_results:kq.array(mj).optional(),usage:kq.object({total_cost_usd:kq.number(),compute:kq.object({cost_usd:kq.number()}).nullish(),data:kq.object({cost_usd:kq.number(),datasets:kq.number()}).nullish()}).nullish(),related:kq.array(kq.object({}).passthrough()).nullish()}).passthrough(),kq.object({error:kq.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:kq.number().optional(),message:kq.string()})])))}),ml={browserbaseFetch:(a={})=>l8(a),browserbaseSearch:(a={})=>l9(a),exaSearch:(a={})=>ma(a),parallelSearch:(a={})=>mb(a),perplexitySearch:(a={})=>mc(a),takoSearch:(a={})=>mk(a)};async function mm(){return(0,e1.getContext)().headers?.["x-vercel-id"]}var mn=kq.object({token:kq.string(),expiresAt:kq.number().nullish()});async function mo(a){let b=jm({settingValue:a.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return b?{token:b,authMethod:"api-key"}:{token:await (0,e1.getVercelOidcToken)(),authMethod:"oidc"}}!function(a={}){var b;let c=null,d=null,e=a.metadataCacheRefreshMillis??3e5,f=0,g=(b=a.baseURL,b?.replace(/\/$/,"")??"https://ai-gateway.vercel.sh/v4/ai"),h=b=>i$({Authorization:`Bearer ${b.token}`,"ai-gateway-protocol-version":"0.0.1",[k1]:b.authMethod,...null!=a.teamIdOrSlug?{[k2]:a.teamIdOrSlug}:{},...a.headers},"ai-sdk/gateway/4.0.96"),i=async()=>{try{return h(await mo(a))}catch(a){throw kv.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},j=async()=>{try{return await mo(a)}catch(a){throw kv.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},k=async b=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let c=h(await j()),d=new URL("/v1/realtime/client-secrets",g).toString();try{let{value:e}=await j4({url:d,headers:c,body:{model:b.modelId,...null!=b.routeKind&&{routeKind:b.routeKind},...null!=b.expiresAfterSeconds&&{expiresIn:b.expiresAfterSeconds}},successfulResponseHandler:kb(mn),failedResponseHandler:ka({errorSchema:kq.any(),errorToMessage:a=>ik(a)??"unknown error"}),fetch:a.fetch});return{token:e.token,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}catch(a){throw await k0(a,await k3(c))}},l=()=>{let a=jm({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),b=jm({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),c=jm({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),d=jm({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let e=await mm();return{...a&&{"ai-o11y-deployment-id":a},...b&&{"ai-o11y-environment":b},...c&&{"ai-o11y-region":c},...e&&{"ai-o11y-request-id":e},...d&&{"ai-o11y-project-id":d}}}},m=b=>new lp(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()}),n=async()=>{let b=a._internal?.currentDate?.().getTime()??Date.now();return(!c||b-f>e)&&(f=b,c=new k6({baseURL:g,headers:i,fetch:a.fetch}).getAvailableModels().then(a=>(d=a,a)).catch(async a=>{throw await k0(a,await k3(await i()))})),d?Promise.resolve(d):c},o=async()=>new k6({baseURL:g,headers:i,fetch:a.fetch}).getCredits().catch(async a=>{throw await k0(a,await k3(await i()))}),p=async b=>new k9({baseURL:g,headers:i,fetch:a.fetch}).getSpendReport(b).catch(async a=>{throw await k0(a,await k3(await i()))}),q=async b=>new lb({baseURL:g,headers:i,fetch:a.fetch}).getGenerationInfo(b).catch(async a=>{throw await k0(a,await k3(await i()))}),r=function(a){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return m(a)};r.specificationVersion="v4",r.getAvailableModels=n,r.getCredits=o,r.getSpendReport=p,r.getGenerationInfo=q,r.imageModel=b=>new lu(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()}),r.languageModel=m,r.experimental_batch=()=>new ld({provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});let s=b=>new lr(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.embeddingModel=s,r.textEmbeddingModel=s,r.videoModel=b=>new lA(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});let t=b=>new lT(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.rerankingModel=t,r.reranking=t;let u=b=>new lP(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.evaluationModel=u,r.evaluation=u;let v=b=>new lW(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.speechModel=v,r.speech=v;let w=b=>new l$(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l(),webSocket:a.webSocket});r.transcriptionModel=w,r.transcription=w,r.experimental_transcription=Object.assign(a=>w(a),{getToken:async a=>{let b=await k({modelId:a.model,routeKind:"transcription",...null!=a.expiresAfterSeconds&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:b.token,url:l_(g,a.model),...null!=b.expiresAt&&{expiresAt:b.expiresAt}}}});let x=b=>new l6(b,{provider:"gateway.realtime",baseURL:g,teamIdOrSlug:a.teamIdOrSlug,createClientSecret:k});r.experimental_realtime=Object.assign(a=>x(a),{getToken:async a=>{let{model:b,...c}=a,d=x(b),e=await d.doCreateClientSecret(c);return{token:e.token,url:e.url,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}}),r.chat=r.languageModel,r.embedding=r.embeddingModel,r.image=r.imageModel,r.video=r.videoModel,r.tools=ml}();var mp=Object.defineProperty,mq="AI_InvalidArgumentError",mr=`vercel.ai.error.${mq}`,ms=Symbol.for(mr),mt=class extends(bd=h9,bc=ms,bd){constructor({parameter:a,value:b,message:c}){super({name:mq,message:`Invalid argument for parameter ${a}: ${c}`}),this[bc]=!0,this.parameter=a,this.value=b}static isInstance(a){return h9.hasMarker(a,mr)}},mu=Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError");Symbol.for("vercel.ai.error.AI_InvalidToolInputError");Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");Symbol.for("vercel.ai.error.AI_MissingToolResultsError");Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");var mv="AI_NoObjectGeneratedError",mw=`vercel.ai.error.${mv}`,mx=Symbol.for(mw),my=class extends(bf=h9,be=mx,bf){constructor({message:a="No object generated.",cause:b,text:c,response:d,usage:e,finishReason:f}){super({name:mv,message:a,cause:b}),this[be]=!0,this.text=c,this.response=d,this.usage=e,this.finishReason=f}static isInstance(a){return h9.hasMarker(a,mw)}},mz=Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError");Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchToolError");Symbol.for("vercel.ai.error.AI_StreamProviderError");Symbol.for("vercel.ai.error.AI_ToolCallRepairError");Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError");Symbol.for("vercel.ai.error.AI_UIMessageStreamError");Symbol.for("vercel.ai.error.AI_InvalidDataContentError");Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");Symbol.for("vercel.ai.error.AI_MessageConversionError");Symbol.for("vercel.ai.error.AI_RetryError");var mA=async({url:a,maxBytes:b,abortSignal:c})=>{let d=a.toString();try{let a=i$({},"ai-sdk/7.0.118",iT()),e=await jh({url:d,headers:a,abortSignal:c});if(!e.ok)throw await i_(e),new i3({url:d,statusCode:e.status,statusText:e.statusText});return{data:await ji({response:e,url:d,maxBytes:b??0x80000000}),mediaType:e.headers.get("content-type")??void 0}}catch(a){if(i3.isInstance(a))throw a;throw new i3({url:d,cause:a})}},mB={array:e0.array,boolean:e0.boolean,custom:e0.custom,discriminatedUnion:e0.discriminatedUnion,enum:e0.enum,instanceof:e0.instanceof,lazy:e0.lazy,literal:e0.literal,looseObject:e0.looseObject,never:e0.never,null:e0.null,number:e0.number,object:e0.object,record:e0.record,string:e0.string,union:e0.union,unknown:e0.unknown},mC=mB.lazy(()=>mB.union([mB.null(),mB.string(),mB.number(),mB.boolean(),mB.record(mB.string(),mC.optional()),mB.array(mC)])),mD=mB.record(mB.string(),mB.record(mB.string(),mC.optional())),mE=mB.union([mB.string(),mB.instanceof(Uint8Array),mB.instanceof(ArrayBuffer),mB.custom(function(a){return globalThis.Buffer?.isBuffer(a)??!1},{message:"Must be a Buffer"})]),mF=mB.record(mB.string(),mB.string()),mG=mB.object({type:mB.literal("text"),text:mB.string(),providerOptions:mD.optional()}),mH=mB.object({type:mB.literal("image"),image:mB.union([mE,mB.instanceof(URL),mF]),mediaType:mB.string().optional(),providerOptions:mD.optional()}),mI=mB.discriminatedUnion("type",[mB.object({type:mB.literal("data"),data:mE}),mB.object({type:mB.literal("url"),url:mB.instanceof(URL)}),mB.object({type:mB.literal("reference"),reference:mF}),mB.object({type:mB.literal("text"),text:mB.string()})]),mJ=mB.discriminatedUnion("type",[mB.object({type:mB.literal("data"),data:mE}),mB.object({type:mB.literal("url"),url:mB.instanceof(URL)})]),mK=mB.object({type:mB.literal("file"),data:mB.union([mI,mE,mB.instanceof(URL),mF]),filename:mB.string().optional(),mediaType:mB.string(),providerOptions:mD.optional()}),mL=mB.object({type:mB.literal("reasoning"),text:mB.string(),providerOptions:mD.optional()}),mM=mB.object({type:mB.literal("custom"),kind:mB.string().transform(a=>a),providerOptions:mD.optional()}),mN=mB.object({type:mB.literal("reasoning-file"),data:mB.union([mJ,mE,mB.instanceof(URL)]),mediaType:mB.string(),providerOptions:mD.optional()}),mO=mB.object({type:mB.literal("tool-call"),toolCallId:mB.string(),toolName:mB.string(),input:mB.unknown(),providerOptions:mD.optional(),providerExecuted:mB.boolean().optional()}),mP=mB.discriminatedUnion("type",[mB.object({type:mB.literal("text"),value:mB.string(),providerOptions:mD.optional()}),mB.object({type:mB.literal("json"),value:mC,providerOptions:mD.optional()}),mB.object({type:mB.literal("execution-denied"),reason:mB.string().optional(),providerOptions:mD.optional()}),mB.object({type:mB.literal("error-text"),value:mB.string(),providerOptions:mD.optional()}),mB.object({type:mB.literal("error-json"),value:mC,providerOptions:mD.optional()}),mB.object({type:mB.literal("content"),value:mB.array(mB.union([mB.object({type:mB.literal("text"),text:mB.string(),providerOptions:mD.optional()}),mB.object({type:mB.literal("file"),data:mI,mediaType:mB.string(),filename:mB.string().optional(),providerOptions:mD.optional()}),mB.object({type:mB.literal("file-data"),data:mB.string(),mediaType:mB.string(),filename:mB.string().optional(),providerOptions:mD.optional()}),mB.object({type:mB.literal("file-url"),url:mB.string(),mediaType:mB.string().optional(),providerOptions:mD.optional()}),mB.object({type:mB.literal("file-id"),fileId:mB.union([mB.string(),mB.record(mB.string(),mB.string())]),providerOptions:mD.optional()}),mB.object({type:mB.literal("file-reference"),providerReference:mB.record(mB.string(),mB.string()),providerOptions:mD.optional()}),mB.object({type:mB.literal("image-data"),data:mB.string(),mediaType:mB.string(),providerOptions:mD.optional()}),mB.object({type:mB.literal("image-url"),url:mB.string(),providerOptions:mD.optional()}),mB.object({type:mB.literal("image-file-id"),fileId:mB.union([mB.string(),mB.record(mB.string(),mB.string())]),providerOptions:mD.optional()}),mB.object({type:mB.literal("image-file-reference"),providerReference:mB.record(mB.string(),mB.string()),providerOptions:mD.optional()}),mB.object({type:mB.literal("custom"),providerOptions:mD.optional()})]))})]),mQ=mB.object({type:mB.literal("tool-result"),toolCallId:mB.string(),toolName:mB.string(),output:mP,providerOptions:mD.optional()}),mR=mB.object({type:mB.literal("tool-approval-request"),approvalId:mB.string(),toolCallId:mB.string(),reason:mB.string().optional(),isAutomatic:mB.boolean().optional(),signature:mB.string().optional(),inputSchemaInput:mB.unknown().optional()}),mS=mB.object({type:mB.literal("tool-approval-response"),approvalId:mB.string(),approved:mB.boolean(),reason:mB.string().optional()}),mT=mB.object({role:mB.literal("system"),content:mB.string(),providerOptions:mD.optional()}),mU=mB.object({role:mB.literal("user"),content:mB.union([mB.string(),mB.array(mB.union([mG,mH,mK]))]),providerOptions:mD.optional()}),mV=mB.object({role:mB.literal("assistant"),content:mB.union([mB.string(),mB.array(mB.union([mG,mM,mK,mL,mN,mO,mQ,mR]))]),providerOptions:mD.optional()}),mW=mB.object({role:mB.literal("tool"),content:mB.array(mB.union([mQ,mS])),providerOptions:mD.optional()});mB.union([mT,mU,mV,mW]);var mX={},mY={array:()=>m1,choice:()=>m4,json:()=>m5,object:()=>m0,text:()=>m_};for(var mZ in mY)mp(mX,mZ,{get:mY[mZ],enumerable:!0});async function m$(a){if(void 0===a)return{value:void 0,state:"undefined-input"};let b=await j0({text:a});return b.success?{value:b.value,state:"successful-parse"}:(b=await j0({text:function(a){let b=["ROOT"],c=-1,d=null,e=0;function f(a,e,f){switch(a){case'"':c=e,b.pop(),b.push(f),b.push("INSIDE_STRING");break;case"f":case"t":case"n":c=e,d=e,b.pop(),b.push(f),b.push("INSIDE_LITERAL");break;case"-":b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=e,b.pop(),b.push(f),b.push("INSIDE_NUMBER");break;case"{":c=e,b.pop(),b.push(f),b.push("INSIDE_OBJECT_START");break;case"[":c=e,b.pop(),b.push(f),b.push("INSIDE_ARRAY_START")}}function g(a,d){switch(a){case",":b.pop(),b.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":c=d,b.pop()}}function h(a,d){switch(a){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=d,b.pop()}}for(let i=0;i<a.length;i++){let j=a[i];switch(b[b.length-1]){case"ROOT":f(j,i,"FINISH");break;case"INSIDE_OBJECT_START":switch(j){case'"':b.pop(),b.push("INSIDE_OBJECT_KEY");break;case"}":c=i,b.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===j&&(b.pop(),b.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===j&&(b.pop(),b.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":f(j,i,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":g(j,i);break;case"INSIDE_STRING":switch(j){case'"':b.pop(),c=i;break;case"\\":b.push("INSIDE_STRING_ESCAPE");break;default:c=i}break;case"INSIDE_ARRAY_START":"]"===j?(c=i,b.pop()):(c=i,f(j,i,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(j){case",":b.pop(),b.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":c=i,b.pop();break;default:c=i}break;case"INSIDE_ARRAY_AFTER_COMMA":f(j,i,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":b.pop(),"u"===j?(e=0,b.push("INSIDE_STRING_UNICODE_ESCAPE")):c=i;break;case"INSIDE_STRING_UNICODE_ESCAPE":(j>="0"&&j<="9"||j>="A"&&j<="F"||j>="a"&&j<="f")&&4==++e&&(b.pop(),c=i);break;case"INSIDE_NUMBER":switch(j){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":c=i;break;case"e":case"E":case"-":case".":break;case",":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"}":b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]&&g(j,i);break;case"]":b.pop(),"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i);break;default:b.pop()}break;case"INSIDE_LITERAL":{let e=a.substring(d,i+1);"false".startsWith(e)||"true".startsWith(e)||"null".startsWith(e)?c=i:(b.pop(),"INSIDE_OBJECT_AFTER_VALUE"===b[b.length-1]?g(j,i):"INSIDE_ARRAY_AFTER_VALUE"===b[b.length-1]&&h(j,i))}}}let i=a.slice(0,c+1);for(let c=b.length-1;c>=0;c--)switch(b[c]){case"INSIDE_STRING":i+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":i+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":i+="]";break;case"INSIDE_LITERAL":{let b=a.substring(d,a.length);"true".startsWith(b)?i+="true".slice(b.length):"false".startsWith(b)?i+="false".slice(b.length):"null".startsWith(b)&&(i+="null".slice(b.length))}}return i}(a)})).success?{value:b.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var m_=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:a})=>a,parsePartialOutput:async({text:a})=>({partial:a}),createElementStreamTransform(){}}),m0=({schema:a,name:b,description:c})=>{let d=jX(a);return{name:"object",responseFormat:j7(d.jsonSchema).then(a=>({type:"json",schema:a,...null!=b&&{name:b},...null!=c&&{description:c}})),async parseCompleteOutput({text:a},b){let c=await j0({text:a});if(!c.success)throw new my({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});let e=await j$({value:c.value,schema:d});if(!e.success)throw new my({message:"No object generated: response did not match schema.",cause:e.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return e.value},async parsePartialOutput({text:a}){let b=await m$(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:b.value}}},createElementStreamTransform(){}}},m1=({element:a,minItems:b,maxItems:c,name:d,description:e})=>{if(m2({name:"minItems",value:b}),m2({name:"maxItems",value:c}),null!=b&&null!=c&&b>c)throw new mt({parameter:"minItems",value:b,message:"minItems must be less than or equal to maxItems"});let f=jX(a);return{name:"array",responseFormat:j7(f.jsonSchema).then(a=>{let{$schema:f,definitions:g,$defs:h,...i}=a;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...null!=g&&{definitions:g},...null!=h&&{$defs:h},type:"object",properties:{elements:{type:"array",items:i,...null!=b&&{minItems:b},...null!=c&&{maxItems:c}}},required:["elements"],additionalProperties:!1},...null!=d&&{name:d},...null!=e&&{description:e}}}),async parseCompleteOutput({text:a},d){let e=await j0({text:a});if(!e.success)throw new my({message:"No object generated: could not parse the response.",cause:e.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let g=e.value;if(null==g||"object"!=typeof g||!("elements"in g)||!Array.isArray(g.elements))throw new my({message:"No object generated: response did not match schema.",cause:new iE({value:g,cause:"response must be an object with an elements array"}),text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let h=m3({value:g.elements,minItems:b,maxItems:c});if(null!=h)throw new my({message:"No object generated: response did not match schema.",cause:h,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});let i=[];for(let b of g.elements){let c=await j$({value:b,schema:f});if(!c.success)throw new my({message:"No object generated: response did not match schema.",cause:c.error,text:a,response:d.response,usage:d.usage,finishReason:d.finishReason});i.push(c.value)}return i},async parsePartialOutput({text:a}){let b=await m$(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=b.value;if(null==a||"object"!=typeof a||!("elements"in a)||!Array.isArray(a.elements))return;let c="repaired-parse"===b.state&&a.elements.length>0?a.elements.slice(0,-1):a.elements,d=[];for(let a of c){let b=await j$({value:a,schema:f});b.success&&d.push(b.value)}return{partial:d}}}},createElementStreamTransform(){let a=0;return new TransformStream({transform({partialOutput:b},d){if(null!=b)for(;a<b.length;a++){if(null!=c&&a>=c)return void d.error(m3({value:b,maxItems:c}));d.enqueue(b[a])}}})}}};function m2({name:a,value:b}){if(null!=b){if(!Number.isInteger(b))throw new mt({parameter:a,value:b,message:`${a} must be an integer`});if(b<0)throw new mt({parameter:a,value:b,message:`${a} must be greater than or equal to 0`})}}function m3({value:a,minItems:b,maxItems:c}){return null!=b&&a.length<b?new iE({value:a,cause:`elements array must contain at least ${b} items`}):null!=c&&a.length>c?new iE({value:a,cause:`elements array must contain at most ${c} items`}):void 0}var m4=({options:a,name:b,description:c})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:a}},required:["result"],additionalProperties:!1},...null!=b&&{name:b},...null!=c&&{description:c}}),async parseCompleteOutput({text:b},c){let d=await j0({text:b});if(!d.success)throw new my({message:"No object generated: could not parse the response.",cause:d.error,text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});let e=d.value;if(null==e||"object"!=typeof e||!("result"in e)||"string"!=typeof e.result||!a.includes(e.result))throw new my({message:"No object generated: response did not match schema.",cause:new iE({value:e,cause:"response must be an object that contains a choice value."}),text:b,response:c.response,usage:c.usage,finishReason:c.finishReason});return e.result},async parsePartialOutput({text:b}){let c=await m$(b);switch(c.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let b=c.value;if(null==b||"object"!=typeof b||!("result"in b)||"string"!=typeof b.result)return;let d=a.filter(a=>a.startsWith(b.result));if("successful-parse"===c.state)return d.includes(b.result)?{partial:b.result}:void 0;return 1===d.length?{partial:d[0]}:void 0}}},createElementStreamTransform(){}}),m5=({name:a,description:b}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=a&&{name:a},...null!=b&&{description:b}}),async parseCompleteOutput({text:a},b){let c=await j0({text:a});if(!c.success)throw new my({message:"No object generated: could not parse the response.",cause:c.error,text:a,response:b.response,usage:b.usage,finishReason:b.finishReason});return c.value},async parsePartialOutput({text:a}){let b=await m$(a);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===b.value?void 0:{partial:b.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,jj({prefix:"aitxt",size:24}),jj({prefix:"call",size:24}),TransformStream;var m6=mB.record(mB.string(),mC.optional()),m7=jV(()=>jY(mB.union([mB.looseObject({type:mB.literal("text-start"),id:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("text-delta"),id:mB.string(),delta:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("text-end"),id:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("error"),errorText:mB.string()}),mB.looseObject({type:mB.literal("tool-input-start"),toolCallId:mB.string(),toolName:mB.string(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional(),toolMetadata:m6.optional(),dynamic:mB.boolean().optional(),title:mB.string().optional()}),mB.looseObject({type:mB.literal("tool-input-delta"),toolCallId:mB.string(),inputTextDelta:mB.string()}),mB.looseObject({type:mB.literal("tool-input-available"),toolCallId:mB.string(),toolName:mB.string(),input:mB.unknown(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional(),toolMetadata:m6.optional(),dynamic:mB.boolean().optional(),title:mB.string().optional()}),mB.looseObject({type:mB.literal("tool-input-error"),toolCallId:mB.string(),toolName:mB.string(),input:mB.unknown(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional(),toolMetadata:m6.optional(),dynamic:mB.boolean().optional(),errorText:mB.string(),title:mB.string().optional()}),mB.looseObject({type:mB.literal("tool-approval-request"),approvalId:mB.string(),toolCallId:mB.string(),approvalDescriptor:mB.unknown().optional(),inputSchemaInput:mB.unknown().optional(),reason:mB.string().optional(),isAutomatic:mB.boolean().optional(),signature:mB.string().optional()}),mB.looseObject({type:mB.literal("tool-approval-response"),approvalId:mB.string(),approved:mB.boolean(),reason:mB.string().optional(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("tool-output-available"),toolCallId:mB.string(),output:mB.unknown(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional(),toolMetadata:m6.optional(),dynamic:mB.boolean().optional(),preliminary:mB.boolean().optional()}),mB.looseObject({type:mB.literal("tool-output-error"),toolCallId:mB.string(),errorText:mB.string(),providerExecuted:mB.boolean().optional(),providerMetadata:mD.optional(),toolMetadata:m6.optional(),dynamic:mB.boolean().optional()}),mB.looseObject({type:mB.literal("tool-output-denied"),toolCallId:mB.string()}),mB.looseObject({type:mB.literal("reasoning-start"),id:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("reasoning-delta"),id:mB.string(),delta:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("reasoning-end"),id:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("custom"),kind:mB.string().transform(a=>a),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("source-url"),sourceId:mB.string(),url:mB.string(),title:mB.string().optional(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("source-document"),sourceId:mB.string(),mediaType:mB.string(),title:mB.string(),filename:mB.string().optional(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("file"),url:mB.string(),mediaType:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.literal("reasoning-file"),url:mB.string(),mediaType:mB.string(),providerMetadata:mD.optional()}),mB.looseObject({type:mB.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:mB.string().optional(),data:mB.unknown(),transient:mB.boolean().optional()}),mB.looseObject({type:mB.literal("start-step")}),mB.looseObject({type:mB.literal("finish-step")}),mB.looseObject({type:mB.literal("reset-step")}),mB.looseObject({type:mB.literal("start"),messageId:mB.string().optional(),messageMetadata:mB.unknown().optional()}),mB.looseObject({type:mB.literal("finish"),finishReason:mB.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:mB.unknown().optional()}),mB.looseObject({type:mB.literal("abort"),reason:mB.string().optional()}),mB.looseObject({type:mB.literal("message-metadata"),messageMetadata:mB.unknown()})])));function m8(a){return"dynamic-tool"===a.type}jj({prefix:"aitxt",size:24}),jj({prefix:"call",size:24}),jj({prefix:"aitxt",size:24}),jj({prefix:"call",size:24});var m9=mB.record(mB.string(),mC.optional()),na=mB.record(mB.string(),mB.string());function nb(a){return({url:b,abortSignal:c})=>mA({url:b,maxBytes:a?.maxBytes,abortSignal:c})}jV(()=>{let a=mB.object({id:mB.string(),approved:mB.never().optional(),descriptor:mB.unknown().optional(),requestReason:mB.string().optional(),reason:mB.never().optional(),isAutomatic:mB.boolean().optional(),signature:mB.string().optional(),inputSchemaInput:mB.unknown().optional()}),b=a.extend({approved:mB.boolean(),reason:mB.string().optional()}),c=b.extend({approved:mB.literal(!0)}),d=b.extend({approved:mB.literal(!1)});return jY(mB.array(mB.object({id:mB.string(),role:mB.enum(["system","user","assistant"]),metadata:mB.unknown().optional(),parts:mB.array(mB.union([mB.object({type:mB.literal("text"),text:mB.string(),state:mB.enum(["streaming","done"]).optional(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("reasoning"),id:mB.string().optional(),text:mB.string(),state:mB.enum(["streaming","done"]).optional(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("custom"),kind:mB.string(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("source-url"),sourceId:mB.string(),url:mB.string(),title:mB.string().optional(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("source-document"),sourceId:mB.string(),mediaType:mB.string(),title:mB.string(),filename:mB.string().optional(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("file"),mediaType:mB.string(),filename:mB.string().optional(),url:mB.string(),providerReference:na.optional(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("reasoning-file"),mediaType:mB.string(),url:mB.string(),providerMetadata:mD.optional()}),mB.object({type:mB.literal("step-start")}),mB.object({type:mB.string().startsWith("data-"),id:mB.string().optional(),data:mB.unknown()}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("input-streaming"),input:mB.unknown().optional(),providerExecuted:mB.boolean().optional(),callProviderMetadata:mD.optional(),output:mB.never().optional(),errorText:mB.never().optional(),approval:mB.never().optional()}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("input-available"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:mB.never().optional()}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("approval-requested"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:a}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("approval-responded"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:b}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-available"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.unknown(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),resultProviderMetadata:mD.optional(),preliminary:mB.boolean().optional(),approval:c.optional()}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-error"),input:mB.unknown().optional(),rawInput:mB.unknown().optional(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.string(),callProviderMetadata:mD.optional(),resultProviderMetadata:mD.optional(),approval:c.optional()}),mB.object({type:mB.literal("dynamic-tool"),toolName:mB.string(),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-denied"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:d}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("input-streaming"),providerExecuted:mB.boolean().optional(),callProviderMetadata:mD.optional(),input:mB.unknown().optional(),output:mB.never().optional(),errorText:mB.never().optional(),approval:mB.never().optional()}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("input-available"),providerExecuted:mB.boolean().optional(),input:mB.unknown(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:mB.never().optional()}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("approval-requested"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:a}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("approval-responded"),input:mB.unknown(),providerExecuted:mB.boolean().optional(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:b}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-available"),providerExecuted:mB.boolean().optional(),input:mB.unknown(),output:mB.unknown(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),resultProviderMetadata:mD.optional(),preliminary:mB.boolean().optional(),approval:c.optional()}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-error"),providerExecuted:mB.boolean().optional(),input:mB.unknown().optional(),rawInput:mB.unknown().optional(),output:mB.never().optional(),errorText:mB.string(),callProviderMetadata:mD.optional(),resultProviderMetadata:mD.optional(),approval:c.optional()}),mB.object({type:mB.string().startsWith("tool-"),toolCallId:mB.string(),title:mB.string().optional(),toolMetadata:m9.optional(),state:mB.literal("output-denied"),providerExecuted:mB.boolean().optional(),input:mB.unknown(),output:mB.never().optional(),errorText:mB.never().optional(),callProviderMetadata:mD.optional(),approval:d})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))}),jj({prefix:"call",size:24}),jj({prefix:"call",size:24}),new TextEncoder,jj({prefix:"call",size:24}),jj({prefix:"aiobj",size:24});var{atob:nc}=globalThis;jj({prefix:"aiobj",size:24}),nb(),mB.object({token:mB.string().refine(a=>a.trim().length>0),url:mB.string().refine(a=>{try{let b=new URL(a);return("ws:"===b.protocol||"wss:"===b.protocol)&&""!==b.hostname}catch{return!1}}),expiresAt:mB.number().positive().max(Number.MAX_SAFE_INTEGER).optional(),tools:mB.array(mB.object({type:mB.literal("function"),name:mB.string().min(1),description:mB.string().optional(),parameters:mB.record(mB.string(),mB.unknown())})).optional()});Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function nd({response:a,url:b,fallbackMessage:c}){let d=await a.text();return new id({message:d||c,url:b,requestBodyValues:void 0,statusCode:a.status,responseBody:d})}jj({prefix:"call",size:24}),nb();var ne=class{constructor({api:a="/api/chat",credentials:b,headers:c,body:d,fetch:e,prepareSendMessagesRequest:f,prepareReconnectToStreamRequest:g}){this.api=a,this.credentials=b,this.headers=c,this.body=d,this.fetch=e,this.prepareSendMessagesRequest=f,this.prepareReconnectToStreamRequest=g}async sendMessages({abortSignal:a,...b}){let c=await j7(this.body),d=await j7(this.headers),e=await j7(this.credentials),f={...iZ(d),...iZ(b.headers)},g=await this.prepareSendMessagesRequest?.({api:this.api,id:b.chatId,messages:b.messages,body:{...c,...b.body},headers:f,credentials:e,requestMetadata:b.metadata,trigger:b.trigger,messageId:b.messageId}),h=g?.api??this.api,i=g?.headers!==void 0?iZ(g.headers):f,j=g?.body!==void 0?g.body:{...c,...b.body,id:b.chatId,messages:b.messages,trigger:b.trigger,messageId:b.messageId},k=g?.credentials??e,l=this.fetch??globalThis.fetch,m=await l(h,{method:"POST",headers:{"content-type":"application/json",...i},body:JSON.stringify(j),credentials:k,signal:a});if(!m.ok)throw await nd({response:m,url:h,fallbackMessage:"Failed to fetch the chat response."});if(!m.body)throw new ii({message:"The response body is empty."});return this.processResponseStream(m.body)}async reconnectToStream(a){var b,c;let d,e=await j7(this.body),f=await j7(this.headers),g=await j7(this.credentials),h={...iZ(f),...iZ(a.headers)},i=await this.prepareReconnectToStreamRequest?.({api:this.api,id:a.chatId,body:{...e,...a.body},headers:h,credentials:g,requestMetadata:a.metadata}),j=i?.api??(b=this.api,c=`/${a.chatId}/stream`,-1===(d=b.search(/[?#]/))?`${b}${c}`:`${b.slice(0,d)}${c}${b.slice(d)}`),k=i?.headers!==void 0?iZ(i.headers):h,l=i?.credentials??g,m=this.fetch??globalThis.fetch,n=await m(j,{method:"GET",headers:k,credentials:l,signal:a.abortSignal});if(204===n.status)return null;if(!n.ok)throw await nd({response:n,url:j,fallbackMessage:"Failed to fetch the chat response."});if(!n.body)throw new ii({message:"The response body is empty."});return this.processResponseStream(n.body)}},nf=class extends ne{constructor(a={}){super(a)}processResponseStream(a){return j1({stream:a,schema:m7}).pipeThrough(new TransformStream({async transform(a,b){if(!a.success)throw a.error;b.enqueue(a.value)}}))}};a.s(["DefaultChatTransport",0,nf,"getToolName",0,function(a){return m8(a)?a.toolName:a.type.split("-").slice(1).join("-")},"isToolUIPart",0,function(a){return a.type.startsWith("tool-")||m8(a)}],172654)},951991,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={SYMBOL_FOR_REQ_CONTEXT:()=>k,getContext:()=>l};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);let k=Symbol.for("@vercel/request-context");function l(){let a=globalThis;return a[k]?.get?.()??{}}},599708,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={getVercelOidcToken:()=>m,getVercelOidcTokenSync:()=>n};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(951991),l=a.r(325279);async function m(b){let c,d="";try{d=n()}catch(a){c=a}try{let[{getTokenPayload:c,isExpired:e},{refreshToken:f}]=await Promise.all([await a.A(72597),await a.A(628472)]);(!d||e(c(d),b?.expirationBufferMs))&&(await f(b),d=n())}catch(b){let a=c instanceof Error?c.message:"";if(b instanceof Error&&(a=`${a}
70
+ This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:c,cause:d,generationId:e})}};function j8(a){if(!(a instanceof Error))return!1;let b=a.code;return"string"==typeof b&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(b)}async function j9(a,b){return jB.isInstance(a)?a:j8(a)?j7.createTimeoutError({originalMessage:a instanceof Error?a.message:"Unknown error",cause:a}):hw.isInstance(a)?a.cause&&j8(a.cause)?j7.createTimeoutError({originalMessage:a.message,cause:a}):await j3({response:function(a){if(void 0!==a.data)return a.data;if(null!=a.responseBody)try{return iC(a.responseBody)}catch{return a.responseBody}return{}}(a),statusCode:a.statusCode??500,defaultMessage:"Gateway request failed",cause:a,authMethod:b,isRetryable:!!a.isRetryable&&(null==a.statusCode||a.statusCode<400)||void 0}):await j3({response:{},statusCode:500,defaultMessage:a instanceof Error?`Gateway request failed: ${a.message}`:"Unknown Gateway error",cause:a,authMethod:b})}let ka="ai-gateway-auth-method",kb="x-vercel-ai-gateway-team";async function kc(a){let b=await i7({value:a[ka],schema:kd});return b.success?b.value:void 0}let kd=i3(()=>i5(jz.union([jz.literal("api-key"),jz.literal("oidc")]))),ke=["embedding","evaluation","image","language","realtime","reranking","speech","transcription","video"];var kf=class{constructor(a){this.config=a}async getAvailableModels(){try{let{value:a}=await iv({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await jg(this.config.headers):void 0,successfulResponseHandler:jk(kg),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),fetch:this.config.fetch});return a}catch(a){throw await j9(a)}}async getCredits(){try{let a=new URL(this.config.baseURL),{value:b}=await iv({url:`${a.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await jg(this.config.headers):void 0,successfulResponseHandler:jk(kh),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),fetch:this.config.fetch});return b}catch(a){throw await j9(a)}}};let kg=i3(()=>i5(jz.object({models:jz.array(jz.object({id:jz.string(),name:jz.string(),description:jz.string().nullish(),pricing:jz.object({input:jz.string(),output:jz.string(),input_cache_read:jz.string().nullish(),input_cache_write:jz.string().nullish()}).transform(({input:a,output:b,input_cache_read:c,input_cache_write:d})=>({input:a,output:b,...c?{cachedInputTokens:c}:{},...d?{cacheCreationInputTokens:d}:{}})).nullish(),specification:jz.object({specificationVersion:jz.literal("v4"),provider:jz.string(),modelId:jz.string()}),modelType:jz.string().nullish()})).transform(a=>a.filter(a=>null==a.modelType||ke.includes(a.modelType)))}))),kh=i3(()=>i5(jz.object({balance:jz.string(),total_used:jz.string()}).transform(({balance:a,total_used:b})=>({balance:a,totalUsed:b}))));var ki=class{constructor(a){this.config=a}async getSpendReport(a){try{let b=new URL(this.config.baseURL),c=new URLSearchParams;c.set("start_date",a.startDate),c.set("end_date",a.endDate),a.groupBy&&c.set("group_by",a.groupBy),a.datePart&&c.set("date_part",a.datePart),a.userId&&c.set("user_id",a.userId),a.model&&c.set("model",a.model),a.provider&&c.set("provider",a.provider),a.credentialType&&c.set("credential_type",a.credentialType),a.tags&&a.tags.length>0&&c.set("tags",a.tags.join(","));let{value:d}=await iv({url:`${b.origin}/v1/report?${c.toString()}`,validateUrl:!1,headers:this.config.headers?await jg(this.config.headers):void 0,successfulResponseHandler:jk(kj),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),fetch:this.config.fetch});return d}catch(a){throw await j9(a)}}};let kj=i3(()=>i5(jz.object({results:jz.array(jz.object({day:jz.string().optional(),hour:jz.string().optional(),user:jz.string().optional(),model:jz.string().optional(),tag:jz.string().optional(),provider:jz.string().optional(),credential_type:jz.enum(["byok","system"]).optional(),total_cost:jz.number(),market_cost:jz.number().optional(),input_tokens:jz.number().optional(),output_tokens:jz.number().optional(),cached_input_tokens:jz.number().optional(),cache_creation_input_tokens:jz.number().optional(),reasoning_tokens:jz.number().optional(),request_count:jz.number().optional()}).transform(({credential_type:a,total_cost:b,market_cost:c,input_tokens:d,output_tokens:e,cached_input_tokens:f,cache_creation_input_tokens:g,reasoning_tokens:h,request_count:i,...j})=>({...j,...void 0!==a?{credentialType:a}:{},totalCost:b,...void 0!==c?{marketCost:c}:{},...void 0!==d?{inputTokens:d}:{},...void 0!==e?{outputTokens:e}:{},...void 0!==f?{cachedInputTokens:f}:{},...void 0!==g?{cacheCreationInputTokens:g}:{},...void 0!==h?{reasoningTokens:h}:{},...void 0!==i?{requestCount:i}:{}})))})));var kk=class{constructor(a){this.config=a}async getGenerationInfo(a){try{let b=new URL(this.config.baseURL),{value:c}=await iv({url:`${b.origin}/v1/generation?id=${encodeURIComponent(a.id)}`,validateUrl:!1,headers:this.config.headers?await jg(this.config.headers):void 0,successfulResponseHandler:jk(kl),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),fetch:this.config.fetch});return c}catch(a){throw await j9(a)}}};let kl=i3(()=>i5(jz.object({data:jz.object({id:jz.string(),total_cost:jz.number(),upstream_inference_cost:jz.number(),usage:jz.number(),created_at:jz.string(),model:jz.string(),is_byok:jz.boolean(),provider_name:jz.string(),streamed:jz.boolean(),finish_reason:jz.string(),latency:jz.number(),generation_time:jz.number(),native_tokens_prompt:jz.number(),native_tokens_completion:jz.number(),native_tokens_reasoning:jz.number(),native_tokens_cached:jz.number(),native_tokens_cache_creation:jz.number(),billable_web_search_calls:jz.number()}).transform(({total_cost:a,upstream_inference_cost:b,created_at:c,is_byok:d,provider_name:e,finish_reason:f,generation_time:g,native_tokens_prompt:h,native_tokens_completion:i,native_tokens_reasoning:j,native_tokens_cached:k,native_tokens_cache_creation:l,billable_web_search_calls:m,...n})=>({...n,totalCost:a,upstreamInferenceCost:b,createdAt:c,isByok:d,providerName:e,finishReason:f,generationTime:g,promptTokens:h,completionTokens:i,reasoningTokens:j,cachedTokens:k,cacheCreationTokens:l,billableWebSearchCalls:m}))}).transform(({data:a})=>a)));var km=class{constructor(a){this.config=a,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]},this.provider=`${a.provider}.batch`}async doStartBatch({requests:a,providerOptions:b,headers:c,abortSignal:d,webhookUrl:e}){var f=a;for(let a of f){let b=a.type;if("text"!==b)throw new hR({functionality:`batch request type: ${b}`,message:`The AI Gateway Batch API does not support batch requests with type "${b}".`})}let g=function(a){let b=a[0]?.modelId;if(null==b)throw new hF({argument:"requests",message:"The AI Gateway Batch API requires at least one request."});for(let c of a)if(c.modelId!==b)throw new hF({argument:"requests",message:`The AI Gateway Batch API requires all requests in a batch to use the same model. Found "${b}" and "${c.modelId}".`});return b}(a),h=this.config.headers?await jg(this.config.headers):void 0,i=function(a){let b=a?.gateway;if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b.idempotencyKey;return"string"==typeof c&&c.length>0?c:void 0}(b),j=function(a){let b=a?.gateway;if(null==b||"object"!=typeof b||Array.isArray(b)||!("idempotencyKey"in b))return a;let{idempotencyKey:c,...d}=b,e={...a};if(0===Object.keys(d).length?delete e.gateway:e.gateway=d,0!==Object.keys(e).length)return e}(b);try{let{value:b}=await jd({url:this.getBatchUrl("start"),headers:hS(h,c,{"ai-model-id":g},await jg(this.config.o11yHeaders),null!=i?{"idempotency-key":i}:void 0),body:{...null!=e&&{callbackUrl:e},requests:a.map(a=>({id:a.id,type:a.type,modelId:a.modelId,options:function(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=kn(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=kn(b.data))}return a}(a.options)})),...null!=j&&{providerOptions:j}},successfulResponseHandler:jk(kw),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{batchId:b.batchId,...kp(b),warnings:b.warnings??[]}}catch(a){if(ko(a))throw a;throw await j9(a,await kc(h??{}))}}async doGetBatchStatus({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await jg(this.config.headers):void 0;try{let{value:e}=await jd({url:this.getBatchUrl("status"),headers:hS(d,b,await jg(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:jk(kx),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return kp(e)}catch(a){if(ko(a))throw a;throw await j9(a,await kc(d??{}))}}async doGetBatchResults({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await jg(this.config.headers):void 0;try{var e;let f,{value:g}=await jd({url:this.getBatchUrl("results"),headers:hS(d,b,await jg(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:async({response:a})=>{let b=h_(a);if(null==a.body)throw new hA({});return{responseHeaders:b,value:jl({stream:a.body,schema:kr})}},failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return e=kq(g),f=!1,new ReadableStream({async pull(a){if(!f)try{let{value:b,done:c}=await e.next();c?a.close():a.enqueue(b)}catch(b){a.error(b)}},async cancel(a){if(f=!0,e.return)try{await e.return(a)}catch{}}})}catch(a){if(ko(a))throw a;throw await j9(a,await kc(d??{}))}}async doCancelBatch({batchId:a,headers:b,abortSignal:c}){let d=this.config.headers?await jg(this.config.headers):void 0;try{let{value:e}=await jd({url:this.getBatchUrl("cancel"),headers:hS(d,b,await jg(this.config.o11yHeaders)),body:{batchId:a},successfulResponseHandler:jk(kx),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{...null!=e.providerMetadata&&{providerMetadata:e.providerMetadata}}}catch(a){if(ko(a))throw a;throw await j9(a,await kc(d??{}))}}getBatchUrl(a){return`${this.config.baseURL}/batch/${a}`}};function kn(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}function ko(a){return!!(a instanceof Error||a instanceof DOMException)&&("AbortError"===a.name||"TimeoutError"===a.name)}function kp(a){let b=function({total:a,pending:b,completed:c,failed:d}){if(iy(a)&&iy(b)&&iy(c)&&iy(d)&&b+c+d===a)return{total:a,pending:b,completed:c,failed:d}}({total:a.requestCounts?.total,pending:a.requestCounts?.pending,completed:a.requestCounts?.completed,failed:a.requestCounts?.failed});return{status:a.status,...null!=a.rawStatus&&{rawStatus:a.rawStatus},...null!=b&&{requestCounts:b},...null!=a.error&&{error:{message:a.error.message,...null!=a.error.type&&{type:a.error.type},...null!=a.error.code&&{code:a.error.code},...null!=a.error.statusCode&&{statusCode:a.error.statusCode}}},...null!=a.createdAt&&{createdAt:a.createdAt},...null!=a.expiresAt&&{expiresAt:a.expiresAt},...null!=a.providerMetadata&&{providerMetadata:a.providerMetadata}}}async function*kq(a){for await(let b of a){if("succeeded"===b.status){let a=b.result?.response;void 0!==a&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp))}yield b}}let kr=jz.object({type:jz.literal("text"),id:jz.string(),status:jz.enum(["cancelled","expired","failed","succeeded"])}).catchall(jz.unknown()),ks=jz.object({message:jz.string(),type:jz.string().nullish(),code:jz.string().nullish(),statusCode:jz.number().nullish()}),kt=jz.object({total:jz.number().nullish(),pending:jz.number().nullish(),completed:jz.number().nullish(),failed:jz.number().nullish()}),ku=jz.record(jz.string(),jz.record(jz.string(),jz.unknown())),kv=jz.object({status:jz.enum(["completed","failed","pending"]),rawStatus:jz.string().nullish(),requestCounts:kt.nullish(),error:ks.nullish(),createdAt:jz.string().nullish(),expiresAt:jz.string().nullish(),providerMetadata:ku.nullish()}),kw=kv.extend({batchId:jz.string(),warnings:jz.array(jz.object({requestId:jz.string().nullish(),warning:jz.unknown()}).catchall(jz.unknown())).nullish()}),kx=kv;var ky=class a{static[be](a){return jr({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(a){let{abortSignal:b,...c}=a;return{args:this.maybeEncodeFileParts(c),warnings:[]}}async doGenerate(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:f,value:g,rawValue:h}=await jd({url:this.getUrl(),headers:hS(e,a.headers,this.getModelConfigHeaders(this.modelId,!1),await jg(this.config.o11yHeaders)),body:b,successfulResponseHandler:jk(jz.any()),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{...g,request:{body:b},response:{headers:f,body:h},warnings:[...g.warnings??[],...c]}}catch(a){throw await j9(a,await kc(e??{}))}}async doStream(a){let{args:b,warnings:c}=await this.getArgs(a),{abortSignal:d}=a,e=this.config.headers?await jg(this.config.headers):void 0;try{let f,{value:g,responseHeaders:h}=await jd({url:this.getUrl(),headers:hS(e,a.headers,this.getModelConfigHeaders(this.modelId,!0),await jg(this.config.o11yHeaders)),body:b,successfulResponseHandler:(f=jz.any(),async({response:a,url:b,requestBodyValues:c})=>{let d=h_(a);if(null==a.body)throw new hA({});return{responseHeaders:d,value:ja({stream:function({stream:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e}){let f=a.getReader(),g=!1,h=()=>{g||(f.releaseLock(),g=!0)};return new ReadableStream({async pull(a){try{let{done:b,value:c}=await f.read();b?(h(),a.close()):a.enqueue(c)}catch(f){if(h(),h1(f))return void a.error(f);a.error(h4({error:new hw({message:"Failed to process successful response",cause:f,statusCode:d,url:b,responseHeaders:e,requestBodyValues:c}),url:b,requestBodyValues:c}))}},async cancel(a){try{await f.cancel(a)}finally{h()}}})}({stream:a.body,url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d}),schema:f})}}),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{stream:g.pipeThrough(new TransformStream({start(a){c.length>0&&a.enqueue({type:"stream-start",warnings:c})},transform(b,c){if(b.success){let d=b.value;("raw"!==d.type||a.includeRawChunks)&&("response-metadata"===d.type&&d.timestamp&&"string"==typeof d.timestamp&&(d.timestamp=new Date(d.timestamp)),c.enqueue(d))}else c.error(b.error)}})),request:{body:b},response:{headers:h}}}catch(a){throw await j9(a,await kc(e??{}))}}maybeEncodeFileParts(a){for(let b of a.prompt)if(Array.isArray(b.content)){for(let a of b.content)if("file"===a.type||"reasoning-file"===a.type)a.data=kz(a.data);else if("tool-result"===a.type&&"content"===a.output.type)for(let b of a.output.value)"file"===b.type&&(b.data=kz(b.data))}return a}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(a,b){return{"ai-language-model-specification-version":"4","ai-language-model-id":a,"ai-language-model-streaming":String(b)}}};function kz(a){if("data"===a.type){let b=a.data;if(b instanceof Uint8Array)return{...a,data:Buffer.from(b).toString("base64")}}return a}var kA=class a{static[be](a){return jr({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:a,headers:b,abortSignal:c,providerOptions:d}){let e=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:f,value:g,rawValue:h}=await jd({url:this.getUrl(),headers:hS(e,b??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{values:a,...d?{providerOptions:d}:{}},successfulResponseHandler:jk(kC),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{embeddings:g.embeddings,usage:g.usage??void 0,providerMetadata:g.providerMetadata,response:{headers:f,body:h},warnings:g.warnings??[]}}catch(a){throw await j9(a,await kc(e??{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}};let kB=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),kC=i3(()=>i5(jz.object({embeddings:jz.array(jz.array(jz.number())),usage:jz.object({tokens:jz.number()}).nullish(),warnings:jz.array(kB).optional(),providerMetadata:jz.record(jz.string(),jz.record(jz.string(),jz.unknown())).optional()})));var kD=class a{static[be](a){return jr({modelId:a.modelId,config:a.config})}static[bf](b){return new a(b.modelId,b.config)}constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:a,n:b,size:c,aspectRatio:d,seed:e,files:f,mask:g,providerOptions:h,headers:i,abortSignal:j}){let k=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:l,value:m}=await jd({url:this.getUrl(),headers:hS(k,i??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{prompt:a,n:b,...c&&{size:c},...d&&{aspectRatio:d},...e&&{seed:e},...h&&{providerOptions:h},...f&&{files:f.map(a=>kE(a))},...g&&{mask:kE(g)}},successfulResponseHandler:jk(kI),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...j&&{abortSignal:j},fetch:this.config.fetch});return{images:m.images,...null!=m.isRetryable&&{isRetryable:m.isRetryable},warnings:m.warnings??[],providerMetadata:m.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:l},...null!=m.usage&&{usage:{inputTokens:m.usage.inputTokens??void 0,outputTokens:m.usage.outputTokens??void 0,totalTokens:m.usage.totalTokens??void 0}}}}catch(a){throw await j9(a,await kc(k??{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function kE(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:h$(a.data)}:a}let kF=jz.object({images:jz.array(jz.unknown()).optional()}).catchall(jz.unknown()),kG=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),kH=jz.object({inputTokens:jz.number().nullish(),outputTokens:jz.number().nullish(),totalTokens:jz.number().nullish()}),kI=jz.object({images:jz.array(jz.string()),isRetryable:jz.boolean().optional(),warnings:jz.array(kG).optional(),providerMetadata:jz.record(jz.string(),kF).optional(),usage:kH.optional()});var kJ=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(a){let{headers:b,abortSignal:c}=a,d=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:e,value:f}=await jd({url:this.getUrl(),headers:hS(d,b??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(a),successfulResponseHandler:async({response:a,url:b,requestBodyValues:c})=>{if(null==a.body)throw new hw({message:"SSE response body is empty",url:b,requestBodyValues:c,statusCode:a.status});let d=ja({stream:a.body,schema:kO}).getReader(),{done:e,value:f}=await d.read();if(d.releaseLock(),e||!f)throw new hw({message:"SSE stream ended without a data event",url:b,requestBodyValues:c,statusCode:a.status});if(!f.success)throw new hw({message:"Failed to parse video SSE event",cause:f.error,url:b,requestBodyValues:c,statusCode:a.status});let g=f.value;if("error"===g.type)throw new hw({message:g.message,statusCode:g.statusCode,url:b,requestBodyValues:c,responseHeaders:Object.fromEntries([...a.headers]),responseBody:JSON.stringify(g),data:{error:{message:g.message,type:g.errorType,param:g.param}}});return{value:{videos:g.videos,warnings:g.warnings,providerMetadata:g.providerMetadata},responseHeaders:Object.fromEntries([...a.headers])}},failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{videos:f.videos,warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:e}}}catch(a){throw await j9(a,await kc(d??{}))}}async handleWebhookOption({webhook:a}){let{url:b,received:c}=await a();return{webhookUrl:b,received:c}}async doStart(a){let{headers:b,abortSignal:c,webhookUrl:d}=a,e=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:f,value:g}=await jd({url:this.getStartUrl(),headers:hS(e,b??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{...this.buildRequestBody(a),...d&&{callbackUrl:d}},successfulResponseHandler:jk(kP),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...c&&{abortSignal:c},fetch:this.config.fetch});return{operation:g.operation,warnings:g.warnings??[],providerMetadata:g.providerMetadata??void 0,response:{timestamp:new Date,modelId:this.modelId,headers:f}}}catch(a){throw await j9(a,await kc(e??{}))}}async doStatus({operation:a,abortSignal:b,headers:c}){let d=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:e,value:f}=await jd({url:this.getStatusUrl(),headers:hS(d,c??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{operation:a},successfulResponseHandler:jk(kQ),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...b&&{abortSignal:b},fetch:this.config.fetch}),g={timestamp:new Date,modelId:this.modelId,headers:e};if("completed"===f.status)return{status:"completed",videos:f.videos,warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:g};if("error"===f.status)return{status:"error",error:f.error,providerMetadata:f.providerMetadata??void 0,response:g};if("cancelled"===f.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:f.providerMetadata??void 0,response:g};return{status:"pending",warnings:f.warnings??[],providerMetadata:f.providerMetadata??void 0,response:g}}catch(a){throw await j9(a,await kc(d??{}))}}buildRequestBody({prompt:a,n:b,aspectRatio:c,resolution:d,duration:e,fps:f,seed:g,generateAudio:h,image:i,frameImages:j,inputReferences:k,providerOptions:l}){return{prompt:a,n:b,...c&&{aspectRatio:c},...d&&{resolution:d},...e&&{duration:e},...f&&{fps:f},...g&&{seed:g},...void 0!==h&&{generateAudio:h},...l&&{providerOptions:l},...i&&{image:kK(i)},...j&&{frameImages:j.map(a=>({...a,image:kK(a.image)}))},...k&&{inputReferences:k.map(a=>kK(a))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function kK(a){return"file"===a.type&&a.data instanceof Uint8Array?{...a,data:h$(a.data)}:a}let kL=jz.object({videos:jz.array(jz.unknown()).optional()}).catchall(jz.unknown()),kM=jz.union([jz.object({type:jz.literal("url"),url:jz.string(),mediaType:jz.string()}),jz.object({type:jz.literal("base64"),data:jz.string(),mediaType:jz.string()})]),kN=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),kO=jz.discriminatedUnion("type",[jz.object({type:jz.literal("result"),videos:jz.array(kM),warnings:jz.array(kN).optional(),providerMetadata:jz.record(jz.string(),kL).optional()}),jz.object({type:jz.literal("error"),message:jz.string(),errorType:jz.string(),statusCode:jz.number(),param:jz.unknown().nullable()})]),kP=jz.object({operation:jz.unknown(),warnings:jz.array(kN).nullish(),providerMetadata:jz.record(jz.string(),kL).nullish()}),kQ=jz.discriminatedUnion("status",[jz.object({status:jz.literal("pending"),warnings:jz.array(kN).nullish(),providerMetadata:jz.record(jz.string(),kL).nullish()}),jz.object({status:jz.literal("completed"),videos:jz.array(kM),warnings:jz.array(kN).nullish(),providerMetadata:jz.record(jz.string(),kL).nullish()}),jz.object({status:jz.literal("error"),error:jz.string(),providerMetadata:jz.record(jz.string(),kL).nullish()}),jz.object({status:jz.literal("cancelled"),providerMetadata:jz.record(jz.string(),kL).nullish()})]),kR=i3(()=>i5(jz.object({models:kX.optional()}).catchall(jz.unknown()))),kS=jz.number().finite().min(0).max(1),kT=jz.string().min(1).max(256),kU=jz.union([jz.object({question:kT.optional(),confidenceBelow:kS}).strict(),jz.object({question:kT.optional(),probabilityBetween:jz.array(kS).length(2).refine(([a,b])=>a<=b,{message:"probabilityBetween minimum must be less than or equal to maximum"})}).strict()]),kV=jz.union([jz.object({any:jz.unknown()}),jz.object({all:jz.unknown()}),jz.object({atLeast:jz.unknown()})]).superRefine((a,b)=>{b.addIssue({code:"custom",message:"conditions can be nested at most 5 levels deep"})}),kW=jz.object({model:jz.string().min(1),when:function a(b){if(5===b)return jz.union([kU,kV]);let c=a(b+1),d=jz.array(c).min(1).max(20);return jz.union([kU,jz.object({any:d}).strict(),jz.object({all:d}).strict(),jz.object({atLeast:jz.object({count:jz.number().int().min(1),conditions:d}).strict().refine(({count:a,conditions:b})=>a<=b.length,{message:"atLeast count cannot exceed the number of conditions",path:["count"]})}).strict()])}(1)}).strict(),kX=jz.array(jz.union([jz.string(),kW])).superRefine((a,b)=>{let c=a.flatMap((a,b)=>"string"==typeof a?[]:[b]);c.length>1&&b.addIssue({code:"custom",message:"models supports at most one conditional evaluation fallback"}),void 0!==c[0]&&0!==c[0]&&b.addIssue({code:"custom",message:"a conditional evaluation fallback must be the first models entry",path:[c[0]]})});var kY=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.supportedQuestionTypes=["choice","score","boolean"]}get provider(){return this.config.provider}async doEvaluate({state:a,questions:b,headers:c,abortSignal:d,providerOptions:e}){let f=await jb({provider:"gateway",providerOptions:e,schema:kR}),g=null==f?e:{...e,gateway:f},h=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:e,value:f,rawValue:i}=await jd({url:this.getUrl(),headers:hS(h,c??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{state:a,questions:b,...g?{providerOptions:g}:{}},successfulResponseHandler:jk(k_),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...d&&{abortSignal:d},fetch:this.config.fetch});return{answers:f.answers,...f.rounding?{rounding:f.rounding}:{},...f.usage?{usage:f.usage}:{},warnings:f.warnings??[],providerMetadata:f.providerMetadata,response:{modelId:f.model??this.modelId,headers:e,body:i}}}catch(a){throw await j9(a,await kc(h??{}))}}getUrl(){return`${this.config.baseURL}/evaluation-model`}getModelConfigHeaders(){return{"ai-evaluation-model-specification-version":"4","ai-model-id":this.modelId}}};let kZ=jz.discriminatedUnion("type",[jz.object({type:jz.literal("choice"),choice:jz.string(),probabilities:jz.record(jz.string(),jz.number()).optional()}),jz.object({type:jz.literal("score"),score:jz.number(),probabilities:jz.record(jz.string(),jz.number()).optional()}),jz.object({type:jz.literal("boolean"),probability:jz.number()})]),k$=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),k_=i3(()=>i5(jz.object({answers:jz.record(jz.string(),kZ),model:jz.string().optional(),rounding:jz.object({probabilityDecimals:jz.number().optional(),scoreDecimals:jz.number().optional()}).optional(),usage:jz.object({inputTokens:jz.number().optional(),outputTokens:jz.number().optional()}).optional(),warnings:jz.array(k$).optional(),providerMetadata:jz.record(jz.string(),jz.record(jz.string(),jz.unknown())).optional()})));var k0=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:a,query:b,topN:c,headers:d,abortSignal:e,providerOptions:f}){let g=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:h,value:i,rawValue:j}=await jd({url:this.getUrl(),headers:hS(g,d??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{documents:a,query:b,...null!=c?{topN:c}:{},...f?{providerOptions:f}:{}},successfulResponseHandler:jk(k2),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...e&&{abortSignal:e},fetch:this.config.fetch});return{ranking:i.ranking,providerMetadata:i.providerMetadata,response:{headers:h,body:j},warnings:i.warnings??[]}}catch(a){throw await j9(a,await kc(g??{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}};let k1=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),k2=i3(()=>i5(jz.object({ranking:jz.array(jz.object({index:jz.number(),relevanceScore:jz.number()})),warnings:jz.array(k1).optional(),providerMetadata:jz.record(jz.string(),jz.record(jz.string(),jz.unknown())).optional()})));var k3=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:a,voice:b,outputFormat:c,instructions:d,speed:e,language:f,providerOptions:g,headers:h,abortSignal:i}){let j=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:k,value:l,rawValue:m}=await jd({url:this.getUrl(),headers:hS(j,h??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{text:a,...b&&{voice:b},...c&&{outputFormat:c},...d&&{instructions:d},...null!=e&&{speed:e},...f&&{language:f},...g&&{providerOptions:g}},successfulResponseHandler:jk(k6),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...i&&{abortSignal:i},fetch:this.config.fetch});return{audio:l.audio,warnings:l.warnings??[],providerMetadata:l.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:k,body:m}}}catch(a){throw await j9(a,await kc(j??{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}};let k4=jz.object({}).catchall(jz.unknown()),k5=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),k6=jz.object({audio:jz.string(),warnings:jz.array(k5).optional(),providerMetadata:jz.record(jz.string(),k4).optional()});var k7=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:a,mediaType:b,providerOptions:c,headers:d,abortSignal:e}){let f=this.config.headers?await jg(this.config.headers):void 0;try{let{responseHeaders:g,value:h,rawValue:i}=await jd({url:this.getUrl(),headers:hS(f,d??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),body:{audio:a instanceof Uint8Array?h$(a):a,mediaType:b,...c&&{providerOptions:c}},successfulResponseHandler:jk(lb),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),...e&&{abortSignal:e},fetch:this.config.fetch});return{text:h.text,segments:h.segments??[],language:h.language??void 0,durationInSeconds:h.durationInSeconds??void 0,warnings:h.warnings??[],providerMetadata:h.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:g,body:i}}}catch(a){throw await j9(a,await kc(f??{}))}}async doStream(a){let b,c,d,e=this.config._internal?.currentDate?.()??new Date,f=hS(await jg(this.config.headers??{}),a.headers??{},this.getModelConfigHeaders(),await jg(this.config.o11yHeaders)),g=await kc(f),h={type:"transcription-stream.start",inputAudioFormat:a.inputAudioFormat,...null!=a.providerOptions&&{providerOptions:a.providerOptions},...null!=a.includeRawChunks&&{includeRawChunks:a.includeRawChunks}};return{stream:function({webSocket:a,url:b,protocols:c,headers:d,startFrame:e,audio:f,abortSignal:g,authMethod:h}){let i=!1,j=()=>{};return new ReadableStream({start:k=>{let l,m,n,o=!1,p=!1;j=a=>{null!=l?l.cancel().catch(()=>{}):f.cancel().catch(()=>{}),n?.close(a)};let q=a=>{i||(i=!0,j(),lc(k,a,h))},r=async a=>{let b=f.getReader();l=b;try{for(;;){let{done:c,value:d}=await b.read();if(c||i)break;let e="string"==typeof d?function(a){let b=hZ(a.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(b,a=>a.codePointAt(0))}(d):d;for(let b=0;b<e.length&&!i;b+=65536)a.send(e.subarray(b,b+65536)),await hX(a)}}finally{b.releaseLock(),l===b&&(l=void 0)}i||p||a.send(JSON.stringify({type:"transcription-stream.audio-done"}))};n=function({url:a,protocols:b,headers:c,webSocket:d,abortSignal:e,onOpen:f,onMessageText:g,onProcessingError:h,onSocketError:i,onClose:j,onAbort:k}){let l,m,n=a=>{null!=m&&(e?.removeEventListener("abort",m),m=void 0);try{l?.close(a)}catch{}};if(e?.aborted)return k?.(e.reason??Error("Aborted")),{socket:void 0,close:n};try{var o;l=new(function(a){let b=a??globalThis.WebSocket;if(null==b)throw Error("No WebSocket implementation available.");return b}(d))(a,b,{headers:(o=c??{},Object.fromEntries(Object.entries(o).filter(([a,b])=>null!=b)))})}catch(a){return h(a),{socket:void 0,close:n}}null!=e&&null!=k&&(m=()=>k(e.reason??Error("Aborted")),e.addEventListener("abort",m,{once:!0}));let p=l;l.onopen=()=>{try{f?.(p)}catch(a){h(a)}};let q=Promise.resolve();return l.onmessage=a=>{q=q.then(()=>hW(a.data)).then(a=>g(a)).catch(h)},l.onerror=()=>{q=q.then(()=>i?.()).catch(h)},l.onclose=a=>{let b="number"==typeof a?.code?a.code:void 0,c="string"==typeof a?.reason?a.reason:void 0;q=q.then(()=>j?.({code:b,reason:c})).catch(h)},{socket:l,close:n}}({url:b,protocols:c,headers:d,webSocket:a,abortSignal:g,onAbort:a=>{i||(i=!0,j(),k.error(a))},onProcessingError:q,onOpen:a=>{a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:a=>{if(i)return;let b=function(a){let b;try{b=iC(a)}catch{return}if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b;switch(c.type){case"stream-start":return Array.isArray(c.warnings)&&c.warnings.every(jv)?c:void 0;case"transcript-delta":return js(c.delta)&&ju(c.id,js)&&ju(c.providerMetadata,iw)?c:void 0;case"transcript-partial":return js(c.text)&&ju(c.id,js)&&ju(c.startSecond,jt)&&ju(c.durationInSeconds,jt)&&ju(c.channelIndex,jt)&&ju(c.providerMetadata,iw)?c:void 0;case"transcript-final":return js(c.text)&&ju(c.id,js)&&ju(c.startSecond,jt)&&ju(c.endSecond,jt)&&ju(c.channelIndex,jt)&&ju(c.providerMetadata,iw)?c:void 0;case"finish":return js(c.text)&&Array.isArray(c.segments)&&c.segments.every(jw)&&ju(c.language,js)&&ju(c.durationInSeconds,jt)&&ju(c.providerMetadata,iw)?c:void 0;case"response-metadata":{if(!(ju(c.modelId,js)&&ju(c.headers,iw)))return;let a=c.timestamp;if(null==a)return{...c,timestamp:void 0};if("string"!=typeof a)return;let b=new Date(a);return Number.isNaN(b.getTime())?void 0:{...c,timestamp:b}}case"raw":return"rawValue"in c?c:void 0;case"error":return"error"in c?c:void 0;default:return}}(a);if(null!=b){if("finish"===b.type){i=!0,k.enqueue(b),k.close(),j(1e3);return}"error"===b.type&&(o=!0,m=b.error,p=!0,null!=l?(l.cancel().catch(()=>{}),l=void 0):f.cancel().catch(()=>{})),k.enqueue(b)}},onSocketError:()=>{q(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(o){if(i)return;le(m,h).then(q);return}q(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{i||(i=!0,j())}})}({webSocket:this.config.webSocket,url:k8(this.config.baseURL,this.modelId),protocols:(c=(b=h6(f)).authorization,null==(d=c?.startsWith("Bearer ")?c.slice(7):void 0)?[jx]:jy(jx,d,{teamIdOrSlug:b[kb]})),headers:f,startFrame:h,audio:a.audio,abortSignal:a.abortSignal,authMethod:g}),request:{body:h},response:{timestamp:e,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function k8(a,b){let c=new URL(`${a.replace(/^http/,"ws")}/transcription-model`);return c.searchParams.set("ai-model-id",b),c.toString()}let k9=jz.object({}).catchall(jz.unknown()),la=jz.discriminatedUnion("type",[jz.object({type:jz.literal("unsupported"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("compatibility"),feature:jz.string(),details:jz.string().optional()}),jz.object({type:jz.literal("deprecated"),setting:jz.string(),message:jz.string()}),jz.object({type:jz.literal("other"),message:jz.string()})]),lb=jz.object({text:jz.string(),segments:jz.array(jz.object({text:jz.string(),startSecond:jz.number(),endSecond:jz.number()})).optional(),language:jz.string().nullish(),durationInSeconds:jz.number().nullish(),warnings:jz.array(la).optional(),providerMetadata:jz.record(jz.string(),k9).optional()});async function lc(a,b,c){a.error(await j9(b,c))}let ld={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function le(a,b){return"object"==typeof a&&null!=a&&"message"in a&&"string"==typeof a.message&&"type"in a&&"string"==typeof a.type&&a.type in ld?j3({response:{error:{message:a.message,type:a.type}},statusCode:ld[a.type],authMethod:b}):Error(`AI Gateway transcription stream failed: ${null!=a&&"object"==typeof a&&"message"in a&&"string"==typeof a.message?a.message:hB(a)}`)}var lf=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=await this.config.createClientSecret({modelId:this.modelId,...a?.expiresAfterSeconds!=null&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:e.token,url:(b=this.config.baseURL,c=this.modelId,(d=new URL(`${b.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",c),d.toString()),...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}getWebSocketConfig(a){return{url:a.url,protocols:jy("ai-gateway-realtime.v1",a.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(a){return a}serializeClientEvent(a){return a}buildSessionConfig(a){return a}};let lg=jz.record(jz.string(),jz.unknown()),lh=jf({id:"gateway.browserbase_fetch",inputSchema:i3(()=>i5(jz.object({url:jz.string().url().describe("URL of the page to fetch."),allow_redirects:jz.boolean().optional().describe("Whether to follow HTTP redirects (default: false)."),allow_insecure_ssl:jz.boolean().optional().describe("Whether to bypass TLS certificate verification (default: false). Only use for trusted hosts."),proxies:jz.boolean().optional().describe("Whether to route the request through Browserbase proxies (default: false)."),format:jz.enum(["raw","json","markdown"]).optional().describe("Output format. raw returns the response body unchanged, markdown returns page content as Markdown, and json returns structured content using schema."),schema:lg.optional().describe("JSON Schema for structured extraction. Only use with format set to json.")}))),outputSchema:i3(()=>i5(jz.union([jz.object({id:jz.string(),content:jz.union([jz.string(),lg]),contentType:jz.string(),encoding:jz.string(),headers:jz.record(jz.string(),jz.string()),statusCode:jz.number()}),jz.object({error:jz.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:jz.number().optional(),message:jz.string()})])))}),li=jf({id:"gateway.browserbase_search",inputSchema:i3(()=>i5(jz.object({query:jz.string().min(1).max(200).describe("Web search query. Must be between 1 and 200 characters."),num_results:jz.number().int().min(1).max(25).optional().describe("Maximum number of results to return (1-25, default: 10).")}))),outputSchema:i3(()=>i5(jz.union([jz.object({query:jz.string(),requestId:jz.string(),results:jz.array(jz.object({id:jz.string(),title:jz.string(),url:jz.string(),author:jz.string().optional(),favicon:jz.string().optional(),image:jz.string().optional(),publishedDate:jz.string().optional()}))}),jz.object({error:jz.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown"]),statusCode:jz.number().optional(),message:jz.string()})])))}),lj=jf({id:"gateway.exa_search",inputSchema:i3(()=>i5(jz.object({query:jz.string().describe("Natural-language web search query. This is required."),type:jz.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:jz.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:jz.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:jz.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:jz.array(jz.string()).optional().describe("Only return results from these domains."),exclude_domains:jz.array(jz.string()).optional().describe("Exclude results from these domains."),start_published_date:jz.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:jz.string().optional().describe("Only return links published before this ISO 8601 date."),contents:jz.object({text:jz.union([jz.boolean(),jz.object({max_characters:jz.number().optional(),include_html_tags:jz.boolean().optional(),verbosity:jz.enum(["compact","standard","full"]).optional(),include_sections:jz.array(jz.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:jz.array(jz.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:jz.union([jz.boolean(),jz.object({query:jz.string().optional(),max_characters:jz.number().optional()})]).optional(),max_age_hours:jz.number().optional(),livecrawl_timeout:jz.number().optional(),subpages:jz.number().optional(),subpage_target:jz.union([jz.string(),jz.array(jz.string())]).optional(),extras:jz.object({links:jz.number().optional(),image_links:jz.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:i3(()=>i5(jz.union([jz.object({requestId:jz.string(),searchType:jz.string().optional(),resolvedSearchType:jz.string().optional(),results:jz.array(jz.object({title:jz.string(),url:jz.string(),id:jz.string(),publishedDate:jz.string().nullable().optional(),author:jz.string().nullable().optional(),image:jz.string().nullable().optional(),favicon:jz.string().nullable().optional(),text:jz.string().optional(),highlights:jz.array(jz.string()).optional(),highlightScores:jz.array(jz.number()).optional(),summary:jz.string().optional(),subpages:jz.array(jz.any()).optional(),extras:jz.object({links:jz.array(jz.string()).optional(),imageLinks:jz.array(jz.string()).optional()}).optional()})),costDollars:jz.object({total:jz.number().optional(),search:jz.record(jz.string(),jz.number()).optional()}).optional()}),jz.object({error:jz.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:jz.number().optional(),message:jz.string()})])))}),lk=jf({id:"gateway.parallel_search",inputSchema:i3(()=>i5(jz.object({objective:jz.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:jz.array(jz.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:jz.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:jz.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:jz.object({include_domains:jz.array(jz.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:jz.array(jz.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:jz.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:jz.object({max_chars_per_result:jz.number().optional().describe("Maximum characters per result."),max_chars_total:jz.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:jz.object({max_age_seconds:jz.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:i3(()=>i5(jz.union([jz.object({searchId:jz.string(),results:jz.array(jz.object({url:jz.string(),title:jz.string(),excerpt:jz.string(),publishDate:jz.string().nullable().optional(),relevanceScore:jz.number().optional()}))}),jz.object({error:jz.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:jz.number().optional(),message:jz.string()})])))}),ll=jf({id:"gateway.perplexity_search",inputSchema:i3(()=>i5(jz.object({query:jz.union([jz.string(),jz.array(jz.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:jz.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:jz.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:jz.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:jz.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:jz.array(jz.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:jz.array(jz.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:jz.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:jz.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:jz.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:jz.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:jz.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:i3(()=>i5(jz.union([jz.object({results:jz.array(jz.object({title:jz.string(),url:jz.string(),snippet:jz.string(),date:jz.string().optional(),lastUpdated:jz.string().optional()})),id:jz.string()}),jz.object({error:jz.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:jz.number().optional(),message:jz.string()})])))}),lm=jz.object({count:jz.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:jz.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:jz.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:jz.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:jz.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:jz.array(jz.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:jz.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),ln=jz.object({count:jz.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:jz.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:jz.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:jz.array(jz.string()).optional().describe("Only return results from these bare domains."),exclude_domains:jz.array(jz.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:jz.number().optional().describe("Maximum characters in each web-result snippet."),highlights:jz.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:jz.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:jz.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:jz.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),lo=i3(()=>i5(jz.object({query:jz.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:jz.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:jz.object({data:lm.optional(),web:ln.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:jz.object({latitude:jz.number().describe("Latitude between -90 and 90."),longitude:jz.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:jz.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:jz.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:jz.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:jz.object({image_dark_mode:jz.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:jz.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:jz.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),lp=jz.union([jz.boolean(),jz.number(),jz.string()]).nullable(),lq=jz.object({content_format:jz.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:jz.number().optional(),data:jz.string().nullish(),records:jz.array(jz.record(jz.string(),lp)).nullish(),dataset:jz.object({columns:jz.array(jz.object({name:jz.string(),type:jz.enum(["boolean","date","datetime","number","string"]),unit:jz.string().nullish()})),rows:jz.array(jz.array(lp)),total_rows:jz.number(),truncated:jz.boolean(),ref:jz.string(),sources:jz.array(jz.object({name:jz.string(),index:jz.enum(["data","web"]).optional()})),provenance:jz.enum(["query","web_extraction"]).optional()}).nullish(),card_data:jz.object({}).passthrough().nullish(),card_data_schema:jz.object({}).passthrough().nullish(),url:jz.string().nullish(),expires_at:jz.string().nullish(),total_rows:jz.number().nullish(),truncated:jz.boolean().optional(),export_pricing:jz.object({baseline_usd:jz.number(),free_rows:jz.number(),max_rows_ceiling:jz.number(),row_cpm_usd:jz.number()}).nullish(),manifest:jz.array(jz.object({dtype:jz.enum(["boolean","date","datetime","number","string"]).nullish(),entity:jz.string().nullish(),metric:jz.string().nullish(),name:jz.string().nullish(),unit:jz.string().nullish()})).nullish()}).passthrough(),lr=jz.object({card_id:jz.string().nullish(),title:jz.string().nullish(),description:jz.string().nullish(),semantic_description:jz.string().nullish(),webpage_url:jz.string().nullish(),image_url:jz.string().nullish(),embed_url:jz.string().nullish(),sources:jz.array(jz.object({source_name:jz.string().nullish(),source_description:jz.string().nullish(),source_index:jz.enum(["data","web"]),source_text:jz.string().nullish(),url:jz.string().nullish()})).nullish(),methodologies:jz.array(jz.object({methodology_name:jz.string().nullable(),methodology_description:jz.string().nullable()})).nullish(),source_indexes:jz.array(jz.enum(["data","web"])).nullish(),card_type:jz.string().nullish(),relevance:jz.enum(["High","Low","Medium"]).nullish(),content:lq.nullish(),exportable:jz.boolean().optional(),nodes:jz.array(jz.object({id:jz.string(),type:jz.enum(["entity","metric"]),name:jz.string(),description:jz.string().nullish()})).nullish(),metric_definitions:jz.array(jz.object({name:jz.string(),definition:jz.string()})).nullish(),data_freshness:jz.object({coverage_end:jz.string().nullish(),data_as_of:jz.string().nullish(),last_updated:jz.string().nullish()}).nullish()}).passthrough(),ls=jz.object({title:jz.string(),url:jz.string(),snippet:jz.string().nullish(),source_name:jz.string().nullish(),publish_date:jz.string().nullish(),content:lq.nullish()}).passthrough(),lt=jf({id:"gateway.tako_search",inputSchema:lo,outputSchema:i3(()=>i5(jz.union([jz.object({request_id:jz.string(),cards:jz.array(lr).optional(),web_results:jz.array(ls).optional(),usage:jz.object({total_cost_usd:jz.number(),compute:jz.object({cost_usd:jz.number()}).nullish(),data:jz.object({cost_usd:jz.number(),datasets:jz.number()}).nullish()}).nullish(),related:jz.array(jz.object({}).passthrough()).nullish()}).passthrough(),jz.object({error:jz.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:jz.number().optional(),message:jz.string()})])))}),lu={browserbaseFetch:(a={})=>lh(a),browserbaseSearch:(a={})=>li(a),exaSearch:(a={})=>lj(a),parallelSearch:(a={})=>lk(a),perplexitySearch:(a={})=>ll(a),takoSearch:(a={})=>lt(a)};async function lv(){return(0,ek.getContext)().headers?.["x-vercel-id"]}let lw=jz.object({token:jz.string(),expiresAt:jz.number().nullish()});async function lx(a){let b=ix({settingValue:a.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return b?{token:b,authMethod:"api-key"}:{token:await (0,ek.getVercelOidcToken)(),authMethod:"oidc"}}!function(a={}){var b;let c=null,d=null,e=a.metadataCacheRefreshMillis??3e5,f=0,g=(b=a.baseURL,b?.replace(/\/$/,"")??"https://ai-gateway.vercel.sh/v4/ai"),h=b=>h7({Authorization:`Bearer ${b.token}`,"ai-gateway-protocol-version":"0.0.1",[ka]:b.authMethod,...null!=a.teamIdOrSlug?{[kb]:a.teamIdOrSlug}:{},...a.headers},"ai-sdk-gateway/4.0.101"),i=async()=>{try{return h(await lx(a))}catch(a){throw jE.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},j=async()=>{try{return await lx(a)}catch(a){throw jE.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:a})}},k=async b=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let c=h(await j()),d=new URL("/v1/realtime/client-secrets",g).toString();try{let{value:e}=await jd({url:d,headers:c,body:{model:b.modelId,...null!=b.routeKind&&{routeKind:b.routeKind},...null!=b.expiresAfterSeconds&&{expiresIn:b.expiresAfterSeconds}},successfulResponseHandler:jk(lw),failedResponseHandler:jj({errorSchema:jz.any(),errorToMessage:a=>hB(a)??"unknown error"}),fetch:a.fetch});return{token:e.token,...null!=e.expiresAt&&{expiresAt:e.expiresAt}}}catch(a){throw await j9(a,await kc(c))}},l=()=>{let a=ix({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),b=ix({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),c=ix({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),d=ix({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let e=await lv();return{...a&&{"ai-o11y-deployment-id":a},...b&&{"ai-o11y-environment":b},...c&&{"ai-o11y-region":c},...e&&{"ai-o11y-request-id":e},...d&&{"ai-o11y-project-id":d}}}},m=b=>new ky(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()}),n=async()=>{let b=a._internal?.currentDate?.().getTime()??Date.now();return(!c||b-f>e)&&(f=b,c=new kf({baseURL:g,headers:i,fetch:a.fetch}).getAvailableModels().then(a=>(d=a,a)).catch(async a=>{throw await j9(a,await kc(await i()))})),d?Promise.resolve(d):c},o=async()=>new kf({baseURL:g,headers:i,fetch:a.fetch}).getCredits().catch(async a=>{throw await j9(a,await kc(await i()))}),p=async b=>new ki({baseURL:g,headers:i,fetch:a.fetch}).getSpendReport(b).catch(async a=>{throw await j9(a,await kc(await i()))}),q=async b=>new kk({baseURL:g,headers:i,fetch:a.fetch}).getGenerationInfo(b).catch(async a=>{throw await j9(a,await kc(await i()))}),r=function(a){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return m(a)};r.specificationVersion="v4",r.getAvailableModels=n,r.getCredits=o,r.getSpendReport=p,r.getGenerationInfo=q,r.imageModel=b=>new kD(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()}),r.languageModel=m,r.experimental_batch=()=>new km({provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});let s=b=>new kA(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.embeddingModel=s,r.textEmbeddingModel=s,r.videoModel=b=>new kJ(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});let t=b=>new k0(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.rerankingModel=t,r.reranking=t;let u=b=>new kY(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.evaluationModel=u,r.evaluation=u;let v=b=>new k3(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l()});r.speechModel=v,r.speech=v;let w=b=>new k7(b,{provider:"gateway",baseURL:g,headers:i,fetch:a.fetch,o11yHeaders:l(),webSocket:a.webSocket});r.transcriptionModel=w,r.transcription=w,r.experimental_transcription=Object.assign(a=>w(a),{getToken:async a=>{let b=await k({modelId:a.model,routeKind:"transcription",...null!=a.expiresAfterSeconds&&{expiresAfterSeconds:a.expiresAfterSeconds}});return{token:b.token,url:k8(g,a.model),...null!=b.expiresAt&&{expiresAt:b.expiresAt}}}});let x=b=>new lf(b,{provider:"gateway.realtime",baseURL:g,teamIdOrSlug:a.teamIdOrSlug,createClientSecret:k});r.experimental_realtime=Object.assign(a=>x(a),{getToken:async a=>{let{model:b,...c}=a,d=await x(b).doCreateClientSecret(c);return{token:d.token,url:d.url,...null!=d.expiresAt&&{expiresAt:d.expiresAt}}}}),r.chat=r.languageModel,r.embedding=r.embeddingModel,r.image=r.imageModel,r.video=r.videoModel,r.tools=lu}();let ly="AI_InvalidArgumentError",lz=`vercel.ai.error.${ly}`,lA=Symbol.for(lz);var lB=class extends hs{constructor({parameter:a,value:b,message:c}){super({name:ly,message:`Invalid argument for parameter ${a}: ${c}`}),this[lA]=!0,this.parameter=a,this.value=b}static isInstance(a){return hs.hasMarker(a,lz)}};Symbol.for("vercel.ai.error.AI_InvalidStreamPartError"),Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError"),Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError"),Symbol.for("vercel.ai.error.AI_InvalidToolInputError"),Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError"),Symbol.for("vercel.ai.error.AI_MissingToolResultsError"),Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");let lC="AI_NoObjectGeneratedError",lD=`vercel.ai.error.${lC}`,lE=Symbol.for(lD);Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError"),Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError"),Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError"),Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError"),Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError"),Symbol.for("vercel.ai.error.AI_NoSuchToolError"),Symbol.for("vercel.ai.error.AI_StreamProviderError"),Symbol.for("vercel.ai.error.AI_ToolCallRepairError"),Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError"),Symbol.for("vercel.ai.error.AI_UIMessageStreamError"),Symbol.for("vercel.ai.error.AI_InvalidDataContentError"),Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError"),Symbol.for("vercel.ai.error.AI_MessageConversionError"),Symbol.for("vercel.ai.error.AI_RetryError");let lF=async({url:a,maxBytes:b,abortSignal:c})=>{let d=a.toString();try{let a=h7({},"ai-sdk/7.0.123",h0()),e=await is({url:d,headers:a,abortSignal:c});if(!e.ok)throw await h8(e),new ic({url:d,statusCode:e.status,statusText:e.statusText});return{data:await it({response:e,url:d,maxBytes:b??0x80000000}),mediaType:e.headers.get("content-type")??void 0}}catch(a){if(ic.isInstance(a))throw a;throw new ic({url:d,cause:a})}},lG={array:ej.array,boolean:ej.boolean,custom:ej.custom,discriminatedUnion:ej.discriminatedUnion,enum:ej.enum,instanceof:ej.instanceof,lazy:ej.lazy,literal:ej.literal,looseObject:ej.looseObject,never:ej.never,null:ej.null,number:ej.number,object:ej.object,record:ej.record,string:ej.string,union:ej.union,unknown:ej.unknown},lH=lG.lazy(()=>lG.union([lG.null(),lG.string(),lG.number(),lG.boolean(),lG.record(lG.string(),lH.optional()),lG.array(lH)])),lI=lG.record(lG.string(),lG.record(lG.string(),lH.optional())),lJ=lG.union([lG.string(),lG.instanceof(Uint8Array),lG.instanceof(ArrayBuffer),lG.custom(function(a){return globalThis.Buffer?.isBuffer(a)??!1},{message:"Must be a Buffer"})]),lK=lG.record(lG.string(),lG.string()),lL=lG.object({type:lG.literal("text"),text:lG.string(),providerOptions:lI.optional()}),lM=lG.object({type:lG.literal("image"),image:lG.union([lJ,lG.instanceof(URL),lK]),mediaType:lG.string().optional(),providerOptions:lI.optional()}),lN=lG.discriminatedUnion("type",[lG.object({type:lG.literal("data"),data:lJ}),lG.object({type:lG.literal("url"),url:lG.instanceof(URL)}),lG.object({type:lG.literal("reference"),reference:lK}),lG.object({type:lG.literal("text"),text:lG.string()})]),lO=lG.discriminatedUnion("type",[lG.object({type:lG.literal("data"),data:lJ}),lG.object({type:lG.literal("url"),url:lG.instanceof(URL)})]),lP=lG.object({type:lG.literal("file"),data:lG.union([lN,lJ,lG.instanceof(URL),lK]),filename:lG.string().optional(),mediaType:lG.string(),providerOptions:lI.optional()}),lQ=lG.object({type:lG.literal("reasoning"),text:lG.string(),providerOptions:lI.optional()}),lR=lG.object({type:lG.literal("custom"),kind:lG.string().transform(a=>a),providerOptions:lI.optional()}),lS=lG.object({type:lG.literal("reasoning-file"),data:lG.union([lO,lJ,lG.instanceof(URL)]),mediaType:lG.string(),providerOptions:lI.optional()}),lT=lG.object({type:lG.literal("tool-call"),toolCallId:lG.string(),toolName:lG.string(),input:lG.unknown(),providerOptions:lI.optional(),providerExecuted:lG.boolean().optional()}),lU=lG.discriminatedUnion("type",[lG.object({type:lG.literal("text"),value:lG.string(),providerOptions:lI.optional()}),lG.object({type:lG.literal("json"),value:lH,providerOptions:lI.optional()}),lG.object({type:lG.literal("execution-denied"),reason:lG.string().optional(),providerOptions:lI.optional()}),lG.object({type:lG.literal("error-text"),value:lG.string(),providerOptions:lI.optional()}),lG.object({type:lG.literal("error-json"),value:lH,providerOptions:lI.optional()}),lG.object({type:lG.literal("content"),value:lG.array(lG.union([lG.object({type:lG.literal("text"),text:lG.string(),providerOptions:lI.optional()}),lG.object({type:lG.literal("file"),data:lN,mediaType:lG.string(),filename:lG.string().optional(),providerOptions:lI.optional()}),lG.object({type:lG.literal("file-data"),data:lG.string(),mediaType:lG.string(),filename:lG.string().optional(),providerOptions:lI.optional()}),lG.object({type:lG.literal("file-url"),url:lG.string(),mediaType:lG.string().optional(),providerOptions:lI.optional()}),lG.object({type:lG.literal("file-id"),fileId:lG.union([lG.string(),lG.record(lG.string(),lG.string())]),providerOptions:lI.optional()}),lG.object({type:lG.literal("file-reference"),providerReference:lG.record(lG.string(),lG.string()),providerOptions:lI.optional()}),lG.object({type:lG.literal("image-data"),data:lG.string(),mediaType:lG.string(),providerOptions:lI.optional()}),lG.object({type:lG.literal("image-url"),url:lG.string(),providerOptions:lI.optional()}),lG.object({type:lG.literal("image-file-id"),fileId:lG.union([lG.string(),lG.record(lG.string(),lG.string())]),providerOptions:lI.optional()}),lG.object({type:lG.literal("image-file-reference"),providerReference:lG.record(lG.string(),lG.string()),providerOptions:lI.optional()}),lG.object({type:lG.literal("custom"),providerOptions:lI.optional()})]))})]),lV=lG.object({type:lG.literal("tool-result"),toolCallId:lG.string(),toolName:lG.string(),output:lU,providerOptions:lI.optional()}),lW=lG.object({type:lG.literal("tool-approval-request"),approvalId:lG.string(),toolCallId:lG.string(),reason:lG.string().optional(),isAutomatic:lG.boolean().optional(),signature:lG.string().optional(),inputSchemaInput:lG.unknown().optional()}),lX=lG.object({type:lG.literal("tool-approval-response"),approvalId:lG.string(),approved:lG.boolean(),reason:lG.string().optional()}),lY=lG.object({role:lG.literal("system"),content:lG.string(),providerOptions:lI.optional()}),lZ=lG.object({role:lG.literal("user"),content:lG.union([lG.string(),lG.array(lG.union([lL,lM,lP]))]),providerOptions:lI.optional()}),l$=lG.object({role:lG.literal("assistant"),content:lG.union([lG.string(),lG.array(lG.union([lL,lR,lP,lQ,lS,lT,lV,lW]))]),providerOptions:lI.optional()}),l_=lG.object({role:lG.literal("tool"),content:lG.array(lG.union([lV,lX])),providerOptions:lI.optional()});lG.union([lY,lZ,l$,l_]),Symbol.for("vercel.ai.toolSearch");Symbol("ai-sdk-tool-call-input-schema-input"),new TextEncoder,new TextEncoder,iu({prefix:"aitxt",size:24}),iu({prefix:"call",size:24}),TransformStream;let l0=lG.record(lG.string(),lH.optional()),l1=i3(()=>i5(lG.union([lG.looseObject({type:lG.literal("text-start"),id:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("text-delta"),id:lG.string(),delta:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("text-end"),id:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("error"),errorText:lG.string()}),lG.looseObject({type:lG.literal("tool-input-start"),toolCallId:lG.string(),toolName:lG.string(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional(),toolMetadata:l0.optional(),dynamic:lG.boolean().optional(),title:lG.string().optional()}),lG.looseObject({type:lG.literal("tool-input-delta"),toolCallId:lG.string(),inputTextDelta:lG.string()}),lG.looseObject({type:lG.literal("tool-input-available"),toolCallId:lG.string(),toolName:lG.string(),input:lG.unknown(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional(),toolMetadata:l0.optional(),dynamic:lG.boolean().optional(),title:lG.string().optional()}),lG.looseObject({type:lG.literal("tool-input-error"),toolCallId:lG.string(),toolName:lG.string(),input:lG.unknown(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional(),toolMetadata:l0.optional(),dynamic:lG.boolean().optional(),errorText:lG.string(),title:lG.string().optional()}),lG.looseObject({type:lG.literal("tool-approval-request"),approvalId:lG.string(),toolCallId:lG.string(),approvalDescriptor:lG.unknown().optional(),inputSchemaInput:lG.unknown().optional(),reason:lG.string().optional(),isAutomatic:lG.boolean().optional(),signature:lG.string().optional()}),lG.looseObject({type:lG.literal("tool-approval-response"),approvalId:lG.string(),approved:lG.boolean(),reason:lG.string().optional(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("tool-output-available"),toolCallId:lG.string(),output:lG.unknown(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional(),toolMetadata:l0.optional(),dynamic:lG.boolean().optional(),preliminary:lG.boolean().optional()}),lG.looseObject({type:lG.literal("tool-output-error"),toolCallId:lG.string(),errorText:lG.string(),providerExecuted:lG.boolean().optional(),providerMetadata:lI.optional(),toolMetadata:l0.optional(),dynamic:lG.boolean().optional()}),lG.looseObject({type:lG.literal("tool-output-denied"),toolCallId:lG.string()}),lG.looseObject({type:lG.literal("reasoning-start"),id:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("reasoning-delta"),id:lG.string(),delta:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("reasoning-end"),id:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("custom"),kind:lG.string().transform(a=>a),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("source-url"),sourceId:lG.string(),url:lG.string(),title:lG.string().optional(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("source-document"),sourceId:lG.string(),mediaType:lG.string(),title:lG.string(),filename:lG.string().optional(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("file"),url:lG.string(),mediaType:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.literal("reasoning-file"),url:lG.string(),mediaType:lG.string(),providerMetadata:lI.optional()}),lG.looseObject({type:lG.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:lG.string().optional(),data:lG.unknown(),transient:lG.boolean().optional()}),lG.looseObject({type:lG.literal("start-step")}),lG.looseObject({type:lG.literal("finish-step")}),lG.looseObject({type:lG.literal("reset-step")}),lG.looseObject({type:lG.literal("start"),messageId:lG.string().optional(),messageMetadata:lG.unknown().optional()}),lG.looseObject({type:lG.literal("finish"),finishReason:lG.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:lG.unknown().optional()}),lG.looseObject({type:lG.literal("abort"),reason:lG.string().optional()}),lG.looseObject({type:lG.literal("message-metadata"),messageMetadata:lG.unknown()})])));function l2(a){return"dynamic-tool"===a.type}Symbol("streamRetryAttemptBoundary"),iu({prefix:"aitxt",size:24}),iu({prefix:"call",size:24}),iu({prefix:"aitxt",size:24}),iu({prefix:"call",size:24}),Symbol("streamRetryBoundary");let l3=lG.record(lG.string(),lH.optional()),l4=lG.record(lG.string(),lG.string());function l5(a){return({url:b,abortSignal:c})=>lF({url:b,maxBytes:a?.maxBytes,abortSignal:c})}i3(()=>{let a=lG.object({id:lG.string(),approved:lG.never().optional(),descriptor:lG.unknown().optional(),requestReason:lG.string().optional(),reason:lG.never().optional(),isAutomatic:lG.boolean().optional(),signature:lG.string().optional(),inputSchemaInput:lG.unknown().optional()}),b=a.extend({approved:lG.boolean(),reason:lG.string().optional()}),c=b.extend({approved:lG.literal(!0)}),d=b.extend({approved:lG.literal(!1)});return i5(lG.array(lG.object({id:lG.string(),role:lG.enum(["system","user","assistant"]),metadata:lG.unknown().optional(),parts:lG.array(lG.union([lG.object({type:lG.literal("text"),text:lG.string(),state:lG.enum(["streaming","done"]).optional(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("reasoning"),id:lG.string().optional(),text:lG.string(),state:lG.enum(["streaming","done"]).optional(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("custom"),kind:lG.string(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("source-url"),sourceId:lG.string(),url:lG.string(),title:lG.string().optional(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("source-document"),sourceId:lG.string(),mediaType:lG.string(),title:lG.string(),filename:lG.string().optional(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("file"),mediaType:lG.string(),filename:lG.string().optional(),url:lG.string(),providerReference:l4.optional(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("reasoning-file"),mediaType:lG.string(),url:lG.string(),providerMetadata:lI.optional()}),lG.object({type:lG.literal("step-start")}),lG.object({type:lG.string().startsWith("data-"),id:lG.string().optional(),data:lG.unknown()}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("input-streaming"),input:lG.unknown().optional(),rawInput:lG.string().optional(),providerExecuted:lG.boolean().optional(),callProviderMetadata:lI.optional(),output:lG.never().optional(),errorText:lG.never().optional(),approval:lG.never().optional()}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("input-available"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:lG.never().optional()}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("approval-requested"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:a}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("approval-responded"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:b}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-available"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.unknown(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),resultProviderMetadata:lI.optional(),preliminary:lG.boolean().optional(),approval:c.optional()}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-error"),input:lG.unknown().optional(),rawInput:lG.unknown().optional(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.string(),callProviderMetadata:lI.optional(),resultProviderMetadata:lI.optional(),approval:c.optional()}),lG.object({type:lG.literal("dynamic-tool"),toolName:lG.string(),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-denied"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:d}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("input-streaming"),providerExecuted:lG.boolean().optional(),callProviderMetadata:lI.optional(),input:lG.unknown().optional(),rawInput:lG.string().optional(),output:lG.never().optional(),errorText:lG.never().optional(),approval:lG.never().optional()}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("input-available"),providerExecuted:lG.boolean().optional(),input:lG.unknown(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:lG.never().optional()}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("approval-requested"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:a}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("approval-responded"),input:lG.unknown(),providerExecuted:lG.boolean().optional(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:b}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-available"),providerExecuted:lG.boolean().optional(),input:lG.unknown(),output:lG.unknown(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),resultProviderMetadata:lI.optional(),preliminary:lG.boolean().optional(),approval:c.optional()}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-error"),providerExecuted:lG.boolean().optional(),input:lG.unknown().optional(),rawInput:lG.unknown().optional(),output:lG.never().optional(),errorText:lG.string(),callProviderMetadata:lI.optional(),resultProviderMetadata:lI.optional(),approval:c.optional()}),lG.object({type:lG.string().startsWith("tool-"),toolCallId:lG.string(),title:lG.string().optional(),toolMetadata:l3.optional(),state:lG.literal("output-denied"),providerExecuted:lG.boolean().optional(),input:lG.unknown(),output:lG.never().optional(),errorText:lG.never().optional(),callProviderMetadata:lI.optional(),approval:d})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))}),iu({prefix:"call",size:24}),iu({prefix:"call",size:24}),new TextEncoder,iu({prefix:"call",size:24}),iu({prefix:"aiobj",size:24});let{atob:l6}=globalThis;async function l7({response:a,url:b,fallbackMessage:c}){let d=await a.text();return new hw({message:d||c,url:b,requestBodyValues:void 0,statusCode:a.status,responseBody:d})}iu({prefix:"aiobj",size:24}),l5(),lG.object({token:lG.string().refine(a=>a.trim().length>0),url:lG.string().refine(a=>{try{let b=new URL(a);return("ws:"===b.protocol||"wss:"===b.protocol)&&""!==b.hostname}catch{return!1}}),expiresAt:lG.number().positive().max(Number.MAX_SAFE_INTEGER).optional(),tools:lG.array(lG.object({type:lG.literal("function"),name:lG.string().min(1),description:lG.string().optional(),parameters:lG.record(lG.string(),lG.unknown())})).optional()}),Symbol.for("vercel.ai.error.AI_NoSuchProviderError"),iu({prefix:"call",size:24}),l5();var l8=class{constructor({api:a="/api/chat",credentials:b,headers:c,body:d,fetch:e,prepareSendMessagesRequest:f,prepareReconnectToStreamRequest:g}){this.api=a,this.credentials=b,this.headers=c,this.body=d,this.fetch=e,this.prepareSendMessagesRequest=f,this.prepareReconnectToStreamRequest=g}async sendMessages({abortSignal:a,...b}){let c=await jg(this.body),d=await jg(this.headers),e=await jg(this.credentials),f={...h6(d),...h6(b.headers)},g=await this.prepareSendMessagesRequest?.({api:this.api,id:b.chatId,messages:b.messages,body:{...c,...b.body},headers:f,credentials:e,requestMetadata:b.metadata,trigger:b.trigger,messageId:b.messageId}),h=g?.api??this.api,i=g?.headers!==void 0?h6(g.headers):f,j=g?.body!==void 0?g.body:{...c,...b.body,id:b.chatId,messages:b.messages,trigger:b.trigger,messageId:b.messageId},k=g?.credentials??e,l=await (this.fetch??globalThis.fetch)(h,{method:"POST",headers:{"content-type":"application/json",...i},body:JSON.stringify(j),credentials:k,signal:a});if(!l.ok)throw await l7({response:l,url:h,fallbackMessage:"Failed to fetch the chat response."});if(!l.body)throw new hA({message:"The response body is empty."});return this.processResponseStream(l.body)}async reconnectToStream(a){let b=await jg(this.body),c=await jg(this.headers),d=await jg(this.credentials),e={...h6(c),...h6(a.headers)},f=await this.prepareReconnectToStreamRequest?.({api:this.api,id:a.chatId,body:{...b,...a.body},headers:e,credentials:d,requestMetadata:a.metadata}),g=f?.api;if(null==g){var h,i;let b;if("."===a.chatId||".."===a.chatId)throw new lB({parameter:"chatId",value:a.chatId,message:'Chat IDs must not be "." or ".." when using the default reconnect URL.'});h=this.api,i=`/${encodeURIComponent(a.chatId)}/stream`,g=-1===(b=h.search(/[?#]/))?`${h}${i}`:`${h.slice(0,b)}${i}${h.slice(b)}`}let j=f?.headers!==void 0?h6(f.headers):e,k=f?.credentials??d,l=await (this.fetch??globalThis.fetch)(g,{method:"GET",headers:j,credentials:k,signal:a.abortSignal});if(204===l.status)return null;if(!l.ok)throw await l7({response:l,url:g,fallbackMessage:"Failed to fetch the chat response."});if(!l.body)throw new hA({message:"The response body is empty."});return this.processResponseStream(l.body)}},l9=class extends l8{constructor(a={}){super(a)}processResponseStream(a){return ja({stream:a,schema:l1}).pipeThrough(new TransformStream({async transform(a,b){if(!a.success)throw a.error;b.enqueue(a.value)}}))}};a.s(["DefaultChatTransport",0,l9,"getToolName",0,function(a){return l2(a)?a.toolName:a.type.split("-").slice(1).join("-")},"isToolUIPart",0,function(a){return a.type.startsWith("tool-")||l2(a)}],172654)},951991,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={SYMBOL_FOR_REQ_CONTEXT:()=>k,getContext:()=>l};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);let k=Symbol.for("@vercel/request-context");function l(){let a=globalThis;return a[k]?.get?.()??{}}},599708,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={getVercelOidcToken:()=>m,getVercelOidcTokenSync:()=>n};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(951991),l=a.r(325279);async function m(b){let c,d="";try{d=n()}catch(a){c=a}try{let[{getTokenPayload:c,isExpired:e},{refreshToken:f}]=await Promise.all([await a.A(72597),await a.A(628472)]);(!d||e(c(d),b?.expirationBufferMs))&&(await f(b),d=n())}catch(b){let a=c instanceof Error?c.message:"";if(b instanceof Error&&(a=`${a}
71
71
  ${b.message}`),a)throw new l.VercelOidcTokenError(a);throw b}return d}function n(){let a=(0,k.getContext)().headers?.["x-vercel-oidc-token"]??process.env.VERCEL_OIDC_TOKEN;if(!a)throw Error("The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?");return a}},327673,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={AccessTokenMissingError:()=>m.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>m.RefreshAccessTokenFailedError,getContext:()=>l.getContext,getVercelOidcToken:()=>k.getVercelOidcToken,getVercelOidcTokenSync:()=>k.getVercelOidcTokenSync,getVercelToken:()=>n.getVercelToken};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(599708),l=a.r(951991),m=a.r(69845),n=a.r(809750)},313350,(a,b,c)=>{b.exports=function(a,b){let c;if("function"!=typeof a)throw TypeError(`Expected the first argument to be a \`function\`, got \`${typeof a}\`.`);let d=0;return function(...e){clearTimeout(c);let f=Date.now(),g=b-(f-d);g<=0?(d=f,a.apply(this,e)):c=setTimeout(()=>{d=Date.now(),a.apply(this,e)},g)}}}];
72
72
 
73
73
  //# sourceMappingURL=node_modules_0794bsw._.js.map