thursday-agent 0.1.2 → 0.2.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 (358) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +1 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +6 -0
  6. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/_not-found.html +1 -1
  16. package/.next/server/app/_not-found.rsc +13 -13
  17. package/.next/server/app/_not-found.segments/_full.segment.rsc +13 -13
  18. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +12 -12
  19. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  20. package/.next/server/app/api/artifact/route.js +1 -1
  21. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/notes/route/app-paths-manifest.json +3 -0
  23. package/.next/server/app/api/bot/notes/route/build-manifest.json +12 -0
  24. package/.next/server/app/api/bot/notes/route/server-reference-manifest.json +4 -0
  25. package/.next/server/app/api/bot/notes/route.js +14 -0
  26. package/.next/server/app/api/bot/notes/route.js.map +5 -0
  27. package/.next/server/app/api/bot/notes/route.js.nft.json +1 -0
  28. package/.next/server/app/api/bot/notes/route_client-reference-manifest.js +3 -0
  29. package/.next/server/app/api/bot/route.js +4 -4
  30. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  31. package/.next/server/app/api/bot/task/[id]/route.js +6 -6
  32. package/.next/server/app/api/bot/task/[id]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/bot/task/route.js +6 -6
  34. package/.next/server/app/api/bot/task/route.js.nft.json +1 -1
  35. package/.next/server/app/api/config/route.js +3 -3
  36. package/.next/server/app/api/config/route.js.nft.json +1 -1
  37. package/.next/server/app/api/events/route.js +1 -1
  38. package/.next/server/app/api/events/route.js.nft.json +1 -1
  39. package/.next/server/app/api/file/[...path]/route.js +1 -1
  40. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  41. package/.next/server/app/api/llm-model/catalog/route.js +6 -6
  42. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  43. package/.next/server/app/api/llm-model/route.js +3 -3
  44. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  45. package/.next/server/app/api/mcp/[name]/route.js +3 -3
  46. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  47. package/.next/server/app/api/mcp/oauth/callback/route.js +5 -5
  48. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  49. package/.next/server/app/api/mcp/route.js +3 -3
  50. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  51. package/.next/server/app/api/mcp/tools/route.js +3 -3
  52. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  53. package/.next/server/app/api/memory/route.js +7 -7
  54. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  55. package/.next/server/app/api/memory/tidy/route.js +10 -11
  56. package/.next/server/app/api/memory/tidy/route.js.nft.json +1 -1
  57. package/.next/server/app/api/skills/[source]/[name]/route.js +1 -1
  58. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  59. package/.next/server/app/api/skills/route.js +1 -1
  60. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  61. package/.next/server/app/api/thursday/call/route.js +8 -8
  62. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  63. package/.next/server/app/api/thursday/skills/route.js +8 -8
  64. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  65. package/.next/server/app/api/thursday/tool-call/route.js +11 -12
  66. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  67. package/.next/server/app/api/workspace/route.js +1 -1
  68. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  69. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
  70. package/.next/server/app/artifact/[...path]/page.js +3 -3
  71. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  72. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  74. package/.next/server/app/page/server-reference-manifest.json +63 -41
  75. package/.next/server/app/page.js +7 -7
  76. package/.next/server/app/page.js.nft.json +1 -1
  77. package/.next/server/app/page_client-reference-manifest.js +1 -1
  78. package/.next/server/app-paths-manifest.json +1 -0
  79. package/.next/server/chunks/0d-b_next_dist_server_app-render_after-task-async-storage_external_0-exn7p.js +3 -0
  80. package/.next/server/chunks/{[root-of-the-server]__0t_dqaj._.js → [root-of-the-server]__0-npkh_._.js} +1 -1
  81. package/.next/server/chunks/[root-of-the-server]__005var5._.js +3 -0
  82. package/.next/server/chunks/[root-of-the-server]__019dx9f._.js +2 -2
  83. package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +3 -0
  84. package/.next/server/chunks/{[root-of-the-server]__1mzp_el._.js → [root-of-the-server]__04_8spk._.js} +2 -2
  85. package/.next/server/chunks/[root-of-the-server]__06t77t4._.js +1 -1
  86. package/.next/server/chunks/[root-of-the-server]__0bed6hu._.js +4 -4
  87. package/.next/server/chunks/[root-of-the-server]__0cro2dz._.js +5 -0
  88. package/.next/server/chunks/[root-of-the-server]__0emr6go._.js +3 -0
  89. package/.next/server/chunks/[root-of-the-server]__0le4d-p._.js +1 -1
  90. package/.next/server/chunks/[root-of-the-server]__0m8ywyo._.js +5 -5
  91. package/.next/server/chunks/{[root-of-the-server]__113fqg5._.js → [root-of-the-server]__0p32jfz._.js} +3 -3
  92. package/.next/server/chunks/[root-of-the-server]__0phdgco._.js +4 -4
  93. package/.next/server/chunks/[root-of-the-server]__0wvgrsl._.js +1 -1
  94. package/.next/server/chunks/[root-of-the-server]__11j52t0._.js +5 -0
  95. package/.next/server/chunks/{[root-of-the-server]__0j_n5l3._.js → [root-of-the-server]__1692zrv._.js} +2 -2
  96. package/.next/server/chunks/[root-of-the-server]__16thabu._.js +1 -1
  97. package/.next/server/chunks/[root-of-the-server]__173nhwf._.js +3 -3
  98. package/.next/server/chunks/[root-of-the-server]__1bn73ih._.js +10 -0
  99. package/.next/server/chunks/[root-of-the-server]__1bqhuh9._.js +4 -4
  100. package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +10 -0
  101. package/.next/server/chunks/[root-of-the-server]__1cqizfq._.js +1 -1
  102. package/.next/server/chunks/{[root-of-the-server]__1u_qvc7._.js → [root-of-the-server]__1fboj2j._.js} +2 -2
  103. package/.next/server/chunks/{[root-of-the-server]__1dow0bz._.js → [root-of-the-server]__1oli73c._.js} +2 -2
  104. package/.next/server/chunks/[root-of-the-server]__1txedx6._.js +4 -4
  105. package/.next/server/chunks/[root-of-the-server]__1untqv8._.js +5 -0
  106. package/.next/server/chunks/_0-73of8._.js +55 -0
  107. package/.next/server/chunks/{_2050gwn._.js → _00_584r._.js} +66 -28
  108. package/.next/server/chunks/{_0y8is-s._.js → _03a0897._.js} +1 -1
  109. package/.next/server/chunks/_05h2cii._.js +1 -1
  110. package/.next/server/chunks/_06mxlgn._.js +1 -1
  111. package/.next/server/chunks/_0a351g7._.js +1 -1
  112. package/.next/server/chunks/{_0hin38_._.js → _0khihjk._.js} +5 -5
  113. package/.next/server/chunks/_0kjjmag._.js +1 -1
  114. package/.next/server/chunks/{_1t8fv7b._.js → _0n74zsf._.js} +5 -5
  115. package/.next/server/chunks/_0nn99o2._.js +3 -0
  116. package/.next/server/chunks/_0pppbb5._.js +10 -6
  117. package/.next/server/chunks/{_1icgbi8._.js → _0rnf-6n._.js} +5 -5
  118. package/.next/server/chunks/_0u10wmw._.js +55 -0
  119. package/.next/server/chunks/{_0kl37zl._.js → _0vnutv9._.js} +1 -1
  120. package/.next/server/chunks/_0wp4le3._.js +1 -1
  121. package/.next/server/chunks/_0y5fg-x._.js +1 -1
  122. package/.next/server/chunks/_106co2o._.js +3 -0
  123. package/.next/server/chunks/_12bbv5i._.js +10 -6
  124. package/.next/server/chunks/_15hq89o._.js +1 -1
  125. package/.next/server/chunks/_15q1pig._.js +1 -1
  126. package/.next/server/chunks/_18-1wcc._.js +55 -0
  127. package/.next/server/chunks/_19wg5yn._.js +138 -0
  128. package/.next/server/chunks/_1_5mnq4._.js +18 -0
  129. package/.next/server/chunks/_1bt95p9._.js +55 -0
  130. package/.next/server/chunks/_1cbk7ms._.js +9 -9
  131. package/.next/server/chunks/_1drgfx4._.js +18 -0
  132. package/.next/server/chunks/_1drv2et._.js +10 -6
  133. package/.next/server/chunks/{_10qam6o._.js → _1e48czp._.js} +5 -5
  134. package/.next/server/chunks/{_1skgy7b._.js → _1kg70wc._.js} +5 -5
  135. package/.next/server/chunks/_1php4eq._.js +1 -1
  136. package/.next/server/chunks/_1rysr-r._.js +10 -0
  137. package/.next/server/chunks/_1u3rwbr._.js +3 -0
  138. package/.next/server/chunks/_1x7p319._.js +1 -1
  139. package/.next/server/chunks/_1yuv4vp._.js +1 -1
  140. package/.next/server/chunks/_next-internal_server_app_api_bot_notes_route_actions_0qcsyu7.js +3 -0
  141. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  142. package/.next/server/chunks/features_bot_task_query_ts_11xuzl3._.js +1 -1
  143. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0228f43._.js → node_modules_consola_dist_chunks_prompt_mjs_02s3hjt._.js} +1 -1
  144. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0ir-vo2._.js → node_modules_consola_dist_chunks_prompt_mjs_06067w6._.js} +1 -1
  145. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0otw8ef._.js → node_modules_consola_dist_chunks_prompt_mjs_096ais_._.js} +1 -1
  146. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0tf290y._.js → node_modules_consola_dist_chunks_prompt_mjs_0a1rd09._.js} +1 -1
  147. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0gzvgfv._.js +3 -0
  148. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0j61-ma._.js +3 -0
  149. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0tvkfgh._.js +3 -0
  150. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_11zjo-1._.js +3 -0
  151. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1pycqsq._.js +3 -0
  152. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1tpvamf._.js +3 -0
  153. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y9-wcr._.js +3 -0
  154. package/.next/server/chunks/ssr/[externals]__0dizgek._.js +3 -0
  155. package/.next/server/chunks/ssr/[root-of-the-server]__0f6s48x._.js +1 -1
  156. package/.next/server/chunks/ssr/[root-of-the-server]__0m1b5ky._.js +3 -0
  157. package/.next/server/chunks/ssr/{[root-of-the-server]__0dfwvr4._.js → [root-of-the-server]__0un-erv._.js} +2 -2
  158. package/.next/server/chunks/ssr/[root-of-the-server]__1-mnhyd._.js +5 -3
  159. package/.next/server/chunks/ssr/[root-of-the-server]__1bww500._.js +3 -0
  160. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
  161. package/.next/server/chunks/ssr/[root-of-the-server]__1qfqvmg._.js +3 -0
  162. package/.next/server/chunks/ssr/[root-of-the-server]__1vcdast._.js +3 -0
  163. package/.next/server/chunks/ssr/[root-of-the-server]__1xwnu-h._.js +3 -0
  164. package/.next/server/chunks/ssr/_03webdr._.js +3 -0
  165. package/.next/server/chunks/ssr/{_0gd4vaa._.js → _040sk32._.js} +71 -29
  166. package/.next/server/chunks/ssr/_077-g6s._.js +1 -1
  167. package/.next/server/chunks/ssr/{_0lc_7c8._.js → _09ja_w1._.js} +2 -2
  168. package/.next/server/chunks/ssr/{_1dcxzqe._.js → _0f_b_9s._.js} +2 -2
  169. package/.next/server/chunks/ssr/_0h7zdni._.js +1 -1
  170. package/.next/server/chunks/ssr/_0lu1n_x._.js +3 -0
  171. package/.next/server/chunks/ssr/_0sf1isi._.js +1 -1
  172. package/.next/server/chunks/ssr/_0su6_08._.js +3 -0
  173. package/.next/server/chunks/ssr/{_0nso8tp._.js → _0w5bgak._.js} +2 -2
  174. package/.next/server/chunks/ssr/{_19_o9d-._.js → _0x_nu5e._.js} +2 -2
  175. package/.next/server/chunks/ssr/_1-teee5._.js +3 -3
  176. package/.next/server/chunks/ssr/_13punpm._.js +1 -1
  177. package/.next/server/chunks/ssr/{_0ay6b01._.js → _1ciyoo3._.js} +2 -2
  178. package/.next/server/chunks/ssr/_1e-dgz0._.js +1 -1
  179. package/.next/server/chunks/ssr/_1fq7zgb._.js +1 -1
  180. package/.next/server/chunks/ssr/{_0cvjbuz._.js → _1g6l4uj._.js} +2 -2
  181. package/.next/server/chunks/ssr/{_0q_2f2x._.js → _1lip4th._.js} +2 -2
  182. package/.next/server/chunks/ssr/_1m3bsfr._.js +3 -0
  183. package/.next/server/chunks/ssr/_1mznrxk._.js +1 -1
  184. package/.next/server/chunks/ssr/_1ruzehw._.js +3 -0
  185. package/.next/server/chunks/ssr/_1vyd1ji._.js +3 -0
  186. package/.next/server/chunks/ssr/features_bot_components_bot-setting_tsx_01ajft6._.js +2 -2
  187. package/.next/server/chunks/ssr/features_config_components_14jqgy4._.js +1 -1
  188. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
  189. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  190. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  191. package/.next/server/chunks/ssr/lib_realtime_12wg_dd._.js +27 -0
  192. package/.next/server/chunks/ssr/lib_realtime_15h_v1v._.js +27 -0
  193. package/.next/server/chunks/ssr/{node_modules_108wd2o._.js → node_modules_004qlr4._.js} +1 -1
  194. package/.next/server/chunks/ssr/{node_modules_1ub40gk._.js → node_modules_01qnv-a._.js} +1 -1
  195. package/.next/server/chunks/ssr/{node_modules_1y8_3vg._.js → node_modules_04n7mjs._.js} +1 -1
  196. package/.next/server/chunks/ssr/{node_modules_0_j7-g4._.js → node_modules_08d8bke._.js} +1 -1
  197. package/.next/server/chunks/ssr/{node_modules_0y2-av4._.js → node_modules_09xhur7._.js} +1 -1
  198. package/.next/server/chunks/ssr/{node_modules_043-236._.js → node_modules_0_n241r._.js} +1 -1
  199. package/.next/server/chunks/ssr/{node_modules_0ls96je._.js → node_modules_0iz1rzd._.js} +1 -1
  200. package/.next/server/chunks/ssr/{node_modules_0xwx4u-._.js → node_modules_0kl7-tn._.js} +1 -1
  201. package/.next/server/chunks/ssr/{node_modules_1jatz7w._.js → node_modules_0kxz4gt._.js} +1 -1
  202. package/.next/server/chunks/ssr/{node_modules_1t0y5jt._.js → node_modules_0lrjk5t._.js} +1 -1
  203. package/.next/server/chunks/ssr/{node_modules_13f2md6._.js → node_modules_0m93zeg._.js} +1 -1
  204. package/.next/server/chunks/ssr/{node_modules_1nhw9qg._.js → node_modules_0n1kj4p._.js} +1 -1
  205. package/.next/server/chunks/ssr/{node_modules_1k29j1j._.js → node_modules_0ndvxub._.js} +1 -1
  206. package/.next/server/chunks/ssr/{node_modules_16i4o_3._.js → node_modules_13r44jq._.js} +1 -1
  207. package/.next/server/chunks/ssr/{node_modules_0fbw5-u._.js → node_modules_17lrt3y._.js} +1 -1
  208. package/.next/server/chunks/ssr/{node_modules_1d-is1o._.js → node_modules_18_dk7_._.js} +1 -1
  209. package/.next/server/chunks/ssr/{node_modules_1hn_sd5._.js → node_modules_19dp7ko._.js} +1 -1
  210. package/.next/server/chunks/ssr/{node_modules_20ynonm._.js → node_modules_1dwguw_._.js} +1 -1
  211. package/.next/server/chunks/ssr/{node_modules_00d6675._.js → node_modules_1hd-5tv._.js} +1 -1
  212. package/.next/server/chunks/ssr/{node_modules_1ee8gav._.js → node_modules_1hn8z1f._.js} +1 -1
  213. package/.next/server/chunks/ssr/{node_modules_0bue6gy._.js → node_modules_1n5ygqe._.js} +1 -1
  214. package/.next/server/chunks/ssr/{node_modules_1_588_4._.js → node_modules_1q0p85z._.js} +1 -1
  215. package/.next/server/chunks/ssr/{node_modules_0ipn1ho._.js → node_modules_1toafc-._.js} +1 -1
  216. package/.next/server/chunks/ssr/{node_modules_0_fvxnt._.js → node_modules_1xyd7ov._.js} +1 -1
  217. package/.next/server/chunks/ssr/{node_modules_1v0077l._.js → node_modules_1zu988w._.js} +1 -1
  218. package/.next/server/chunks/ssr/{node_modules_06kvvuo._.js → node_modules_20yebtj._.js} +1 -1
  219. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_092s8nx._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0m9a4y0._.js} +1 -1
  220. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1nvexgu._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_13w_wy9._.js} +1 -1
  221. package/.next/server/chunks/ssr/node_modules_consola_dist_chunks_prompt_mjs_05cwqv2._.js +47 -0
  222. package/.next/server/middleware-build-manifest.js +3 -3
  223. package/.next/server/pages/404.html +1 -1
  224. package/.next/server/pages/500.html +1 -1
  225. package/.next/server/server-reference-manifest.js +1 -1
  226. package/.next/server/server-reference-manifest.json +64 -42
  227. package/.next/static/chunks/05b6nx_o3_f_n.js +1 -0
  228. package/.next/static/chunks/{3aquirz5h71da.js → 07kl352c-lvcz.js} +1 -1
  229. package/.next/static/chunks/0dmns-gi0raa4.js +1 -0
  230. package/.next/static/chunks/0oc4_xoia77dg.css +1 -0
  231. package/.next/static/chunks/0pheo8m3a-rzi.js +1 -0
  232. package/.next/static/chunks/{2ihkf6l2jowo9.js → 18vhba44l1fc9.js} +3 -3
  233. package/.next/static/chunks/19i8h2t-5evjx.js +1 -0
  234. package/.next/static/chunks/{1gy3bbv7usnjo.js → 1c5fcj473025q.js} +1 -1
  235. package/.next/static/chunks/1pi_hbmjw-f-z.js +1 -0
  236. package/.next/static/chunks/{0tydnn2kybibk.js → 1twt6k09vg4np.js} +1 -1
  237. package/.next/static/chunks/{21rk8w7bda-su.js → 28gotuisldmom.js} +1 -1
  238. package/.next/static/chunks/{3xxa2j56-f3nm.js → 2998p0y7k1c8z.js} +1 -1
  239. package/.next/static/chunks/2l233xfycjpd8.js +1 -0
  240. package/.next/static/chunks/2p5n7pa3c40t-.js +2 -0
  241. package/.next/static/chunks/2ru1q132af7h7.js +1 -0
  242. package/.next/static/chunks/{2fq_86jvq9ymq.js → 2t8wqycwg3y04.js} +2 -2
  243. package/.next/static/chunks/32z_ypgtchw48.js +1 -0
  244. package/.next/static/chunks/{247d-r95j8xs0.js → 33pyjb3xd1iez.js} +1 -1
  245. package/.next/static/chunks/3786h5vayt80-.js +28 -0
  246. package/.next/static/chunks/3_h9txt3tq8t8.js +28 -0
  247. package/.next/static/chunks/{1khakdu_iuedc.js → 3ard_noqapnw1.js} +1 -1
  248. package/.next/static/chunks/{1fr5m75pwtyic.js → 3omud5xunrk1f.js} +1 -1
  249. package/.next/static/chunks/42dnrkbph9e-1.js +1 -0
  250. package/app/api/events/app-event.client.ts +24 -0
  251. package/app/api/events/app-event.server.ts +45 -0
  252. package/app/api/events/app-event.ts +44 -0
  253. package/app/api/llm-model/catalog/route.ts +12 -0
  254. package/app/api/llm-model/route.ts +21 -0
  255. package/app/api/query-key.ts +144 -0
  256. package/app/api/thursday/tool-call/route.ts +67 -0
  257. package/components/ui/button-group.tsx +45 -0
  258. package/components/ui/custom-icon.tsx +259 -0
  259. package/components/ui/dropdown-menu.tsx +271 -0
  260. package/components/ui/folded-text.tsx +68 -0
  261. package/components/ui/input-group.tsx +157 -0
  262. package/components/ui/json-view.tsx +240 -0
  263. package/components/ui/shiny-text.tsx +141 -0
  264. package/components/ui/text-type.tsx +213 -0
  265. package/components/ui/theme-sync.tsx +9 -0
  266. package/database/migrations/{20260908030742_rainy_marvel_zombies → 20260909060813_optimal_sabretooth}/migration.sql +7 -0
  267. package/database/migrations/{20260908030742_rainy_marvel_zombies → 20260909060813_optimal_sabretooth}/snapshot.json +54 -1
  268. package/database/migrations/20260909063821_bitter_tenebrous/migration.sql +1 -0
  269. package/database/migrations/20260909063821_bitter_tenebrous/snapshot.json +1285 -0
  270. package/docs/how-it-works.md +59 -0
  271. package/docs/images/keeps-going.png +0 -0
  272. package/docs/images/task-thread.png +0 -0
  273. package/docs/images/two-minds.png +0 -0
  274. package/features/ai/load-tools.ts +55 -5
  275. package/features/ai/prompts/bot.prompt.ts +121 -26
  276. package/features/ai/prompts/memory-tidy.prompt.ts +7 -1
  277. package/features/ai/prompts/prompt-helper.ts +31 -5
  278. package/features/ai/prompts/thursday.prompt.ts +2 -0
  279. package/features/ai/tools/bot.tool.ts +37 -18
  280. package/features/ai/tools/mcp.tool.ts +5 -5
  281. package/features/ai/tools/memory.tool.ts +17 -10
  282. package/features/ai/tools/studio.tool.ts +5 -5
  283. package/features/ai/tools/tool-name.ts +2 -0
  284. package/features/ai/tools/workspace.tool.ts +33 -5
  285. package/features/bot/bot.action.ts +31 -4
  286. package/features/bot/bot.notes.ts +120 -0
  287. package/features/bot/bot.query.ts +56 -1
  288. package/features/bot/bot.run.ts +43 -3
  289. package/features/bot/bot.runner.ts +94 -20
  290. package/features/bot/bot.schema.ts +17 -0
  291. package/features/bot/components/bot-room.tsx +405 -306
  292. package/features/bot/components/bot-setting.tsx +123 -20
  293. package/features/bot/task.query.ts +18 -5
  294. package/features/memory/components/memory-setting.tsx +11 -2
  295. package/features/memory/memory.query.ts +9 -2
  296. package/features/memory/memory.schema.ts +30 -0
  297. package/features/skills/components/skills-setting.tsx +9 -1
  298. package/features/workspace/workspace.ts +136 -3
  299. package/hooks/use-draft.ts +37 -0
  300. package/hooks/use-hotkey.ts +105 -0
  301. package/hooks/use-object-state.ts +51 -0
  302. package/hooks/use-on-visible.ts +72 -0
  303. package/hooks/use-theme.ts +106 -0
  304. package/hooks/use-wake-word.ts +262 -0
  305. package/lib/realtime/realtime.driver.ts +34 -1
  306. package/lib/realtime/realtime.protocol.ts +6 -0
  307. package/lib/sandbox.ts +9 -1
  308. package/lib/tokens.ts +19 -0
  309. package/package.json +1 -1
  310. package/.next/server/chunks/[root-of-the-server]__02kt8yn._.js +0 -10
  311. package/.next/server/chunks/[root-of-the-server]__0h59di-._.js +0 -5
  312. package/.next/server/chunks/[root-of-the-server]__0qjqtwo._.js +0 -5
  313. package/.next/server/chunks/[root-of-the-server]__0yk6s3w._.js +0 -5
  314. package/.next/server/chunks/[root-of-the-server]__0z3gelv._.js +0 -3
  315. package/.next/server/chunks/[root-of-the-server]__11w_7_3._.js +0 -3
  316. package/.next/server/chunks/[root-of-the-server]__1_0q_9w._.js +0 -3
  317. package/.next/server/chunks/[root-of-the-server]__1gmn1cs._.js +0 -10
  318. package/.next/server/chunks/_0fzqt2y._.js +0 -100
  319. package/.next/server/chunks/_0jgm3b8._.js +0 -55
  320. package/.next/server/chunks/_0ks6_sg._.js +0 -55
  321. package/.next/server/chunks/_0tzfesa._.js +0 -3
  322. package/.next/server/chunks/_0zmestz._.js +0 -55
  323. package/.next/server/chunks/_12nr4xc._.js +0 -3
  324. package/.next/server/chunks/_1hzrsvg._.js +0 -55
  325. package/.next/server/chunks/_1uj4_io._.js +0 -10
  326. package/.next/server/chunks/_1yldgo4._.js +0 -55
  327. package/.next/server/chunks/features_0scmr4i._.js +0 -3
  328. package/.next/server/chunks/features_bot_bot_query_ts_12mgkl2._.js +0 -3
  329. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0ykklj0._.js +0 -3
  330. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1ryg3wh._.js +0 -3
  331. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1vwbnq_._.js +0 -3
  332. package/.next/server/chunks/ssr/[root-of-the-server]__01id-v3._.js +0 -3
  333. package/.next/server/chunks/ssr/[root-of-the-server]__0b-0i32._.js +0 -3
  334. package/.next/server/chunks/ssr/[root-of-the-server]__185grso._.js +0 -3
  335. package/.next/server/chunks/ssr/[root-of-the-server]__1minz8_._.js +0 -3
  336. package/.next/server/chunks/ssr/_0j4v8of._.js +0 -3
  337. package/.next/server/chunks/ssr/_0l81bzy._.js +0 -3
  338. package/.next/server/chunks/ssr/_10uvw3l._.js +0 -3
  339. package/.next/server/chunks/ssr/_1jbv7m1._.js +0 -3
  340. package/.next/server/chunks/ssr/lib_realtime_0aetuyp._.js +0 -24
  341. package/.next/server/chunks/ssr/lib_realtime_18k_aj-._.js +0 -24
  342. package/.next/server/chunks/ssr/node_modules_zod_v4_classic_errors_05xv7vp.js +0 -3
  343. package/.next/static/chunks/0yysv1gzin17t.js +0 -1
  344. package/.next/static/chunks/1keib_gt066gc.js +0 -1
  345. package/.next/static/chunks/28g42tw8tsvhd.js +0 -1
  346. package/.next/static/chunks/2cwjgkt_hoyhj.js +0 -22
  347. package/.next/static/chunks/2rbf1fpd8n80-.js +0 -22
  348. package/.next/static/chunks/2ukj8k69y89um.js +0 -1
  349. package/.next/static/chunks/2wngeetfnzxkp.js +0 -2
  350. package/.next/static/chunks/388-t2v72jh39.css +0 -1
  351. package/.next/static/chunks/3fqvc0cg-atq_.js +0 -1
  352. package/.next/static/chunks/3p4egvfjxpatb.js +0 -1
  353. package/.next/static/chunks/3qe1w1ei-huhl.js +0 -1
  354. package/.next/static/chunks/3y40riycdip-i.js +0 -1
  355. package/.next/static/chunks/45a6zbtkelph9.js +0 -1
  356. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_buildManifest.js +0 -0
  357. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_clientMiddlewareManifest.js +0 -0
  358. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_ssgManifest.js +0 -0
@@ -1,17 +1,17 @@
1
- module.exports=[423620,e=>{"use strict";var t=e.i(912714),r=e.i(691296),a=e.i(749906),n=e.i(51083),o=e.i(375814),i=e.i(871096);let s={name:n.TOOL_NAMES.delegate,description:"Hand a job to a bot. Returns immediately; the job runs in the background and its result is put in front of you later.",parameters:a.object({bot:a.string().describe("A name from the bot list."),request:a.string().describe("The whole job. The bot cannot hear the call, so everything it needs goes here — names, paths, what the user actually asked for — in their own language and their own words: it is the only language the bot has, and whatever it writes comes back to them. **Their request, never your reading of it**: a condition, a caution or a smaller goal they did not say is how a job comes back as the wrong thing. When their words leave a real choice open, ask them on the call and put the answer here."),label:a.string().describe("Two or three words naming the job, in the user's language. Used on screen and said out loud.")})},l={name:n.TOOL_NAMES.ask_bot,description:"Hand one part of the job you are holding to another bot and wait for what they bring back. The job stays yours.",parameters:a.object({bot:a.string().describe("A name from the bot list."),request:a.string().describe("The part they take, as a brief: the outcome you want, the shape to hand it back in (a path, a number, a list), and every name, path, number and limit that bears on it. They see nothing but this and `context` — not the call, not your thread — so write it long rather than short; a brief that leaves them guessing costs a whole run."),context:a.string().describe("The job you were given, quoted, and whatever you have found that bears on this part — exact values, and the paths of files you wrote for them to read. They cannot see your work, your tool output, or the call.")})},u={name:n.TOOL_NAMES.ask_back,description:"Ask the bot that handed you this part. They answer from what they have — the original request, the call it came from, what they found before asking you.",parameters:a.object({question:a.string().describe("One whole question — what you need and why. They cannot take it to the user for you, so ask what they would know.")})},c={name:n.TOOL_NAMES.ask_thursday,description:"Ask Thursday, who handed you this job. The job stops until an answer comes back.",parameters:a.object({question:a.string().describe("One whole question — what you need and why. One or two sentences, in the user's language: she may read it to them out loud, options and all."),options:a.union([a.string().array(),a.string()]).nullable().describe('Only when there really are choices — two or three, each short, as an array: ["Signed in", "Not yet"]. Null for an open question.')})},d={name:n.TOOL_NAMES.report,description:"Hand back what the job produced. Calling this ends the job — nothing after it runs.",parameters:a.object({result:a.string().describe("The result itself, in a few lines what you found or did, not a replay of how. Thursday reads this out loud, so write what a person needs to hear. If you could not do it, say what stopped you."),complete:a.boolean().describe("True when the whole request is done. False when work is left over — the user is then asked whether to keep going, and `result` is what they decide on.")})},f={name:n.TOOL_NAMES.task,description:"Check a job you handed over, answer what it is asking, or cancel it.",parameters:a.object({action:a.enum(["status","answer","cancel"]),task:a.string().nullable().describe("The job, by its label or by the handle a past call's transcript carries. With `status`: null for every job in one line each — that is the list — or name one to get its report in full."),answer:a.string().nullable().describe("With `answer`: what to tell the bot — the answer to its question, a course correction for a job still running, or what to do next on one that finished.")})},p=(0,r.tool)({description:c.description,inputSchema:c.parameters}),m=(0,r.tool)({description:d.description,inputSchema:d.parameters,execute:async({result:e,complete:t})=>{let r=await y(e);return r.length?`${h} these files do not exist — ${r.join(", ")}. Write them first, or take the paths out of the result.`:t?"Handed back. The job is closed; nothing further runs.":"Handed back as unfinished. The user decides whether to continue."}}),h="Not handed back:";async function y(e){let r=[];for(let a of(0,o.pathsIn)(e)){let e=await (0,i.insideWorkspace)(a);e&&(await (0,t.stat)(e).then(e=>e.isFile(),()=>!1)||r.push(a))}return r}e.s(["askBackSpec",0,u,"askBotSpec",0,l,"askThursdayTool",0,p,"delegateSpec",0,s,"reportAccepted",0,e=>"string"!=typeof e||!e.startsWith(h),"reportTool",0,m,"taskSpec",0,f])},51083,e=>{"use strict";e.s(["STUDIO_TOOLS",0,{generate_image:"generate_image",generate_speech:"generate_speech",transcribe:"transcribe",generate_video:"generate_video"},"TOOL_NAMES",0,{memory_recall:"memory_recall",memory_remember:"memory_remember",memory_forget:"memory_forget",memory_show:"memory_show",bash:"bash",write_file:"write_file",tool_search:"tool_search",tool_call:"tool_call",load_skill:"load_skill",web_search:"web_search",delegate:"delegate",task:"task",ask_bot:"ask_bot",ask_thursday:"ask_thursday",ask_back:"ask_back",report:"report",end_call:"end_call",tidy_done:"tidy_done"}])},375814,e=>{"use strict";var t=e.i(333925);let r=e=>`text/${e}; charset=utf-8`,a=Object.entries({md:{kind:"markdown",mime:r("markdown")},markdown:{kind:"markdown",mime:r("markdown")},csv:{kind:"csv",mime:r("csv")},json:{kind:"json",mime:"application/json; charset=utf-8"},txt:{kind:"text",mime:r("plain")},log:{kind:"text",mime:r("plain")},html:{kind:"frame",mime:r("html")},htm:{kind:"frame",mime:r("html")},pdf:{kind:"frame",mime:"application/pdf"},png:{kind:"image",mime:"image/png"},jpg:{kind:"image",mime:"image/jpeg"},jpeg:{kind:"image",mime:"image/jpeg"},gif:{kind:"image",mime:"image/gif"},webp:{kind:"image",mime:"image/webp"},svg:{kind:"image",mime:"image/svg+xml"},mp3:{kind:"audio",mime:"audio/mpeg"},wav:{kind:"audio",mime:"audio/wav"},mp4:{kind:"video",mime:"video/mp4"},webm:{kind:"video",mime:"video/webm"},css:{kind:"none",mime:r("css")},js:{kind:"none",mime:r("javascript")},woff2:{kind:"none",mime:"font/woff2"}}).filter(([,e])=>"none"!==e.kind).map(([e])=>e),n=RegExp(String.raw`(?<![\p{L}\p{N}_/:@%-])(?:[\p{L}\p{N}_.@%-]+/)*[\p{L}\p{N}_@%-]+(?:\.[\p{L}\p{N}_-]+)*\.(?:${a.join("|")})\b`,"giu"),o=`${t.PATHS.workspace}/`;e.s(["pathsIn",0,function(e){let t=e.replace(/\b[a-z][\w+.-]*:\/\/\S+/gi," "),r=new Set;for(let e of t.match(n)??[]){let t=function(e){let t,r,a=(r=(t=e.trim()).indexOf(o))>=0?t.slice(r+o.length)||null:t.startsWith("/")||/^[A-Za-z]:/.test(t)||t.split("/").includes("..")?null:t||null;if(!a)return null;let[n,...i]=a.split("/");return i.length&&n.includes(".")?null:a}(e);t&&r.add(t)}return[...r].slice(0,6)}])},691296,679007,548874,e=>{"use strict";var t,r,a,n,o,i=e.i(296194),s=e.i(59994),l=e.i(404482);class u extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}function c(e){}function d(e,t,r){return 100===r&&97===e.charCodeAt(t+1)&&116===e.charCodeAt(t+2)&&97===e.charCodeAt(t+3)&&58===e.charCodeAt(t+4)}function f(e,t,r){return 101===r&&118===e.charCodeAt(t+1)&&101===e.charCodeAt(t+2)&&110===e.charCodeAt(t+3)&&116===e.charCodeAt(t+4)&&58===e.charCodeAt(t+5)}class p extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:a}={}){let n;super({start(o){n=function(e){if("function"==typeof e)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=c,onError:r=c,onRetry:a=c,onComment:n,maxBufferSize:o}=e,i=[],s=0,l=!0,p,m="",h=0,y,g=!1;function v(){void 0!==o&&(s+m.length<=o||(g=!0,i.length=0,s=0,p=void 0,m="",h=0,y=void 0,r(new u(`Buffered data exceeded max buffer size of ${o} characters`,{type:"max-buffer-size-exceeded"}))))}function b(e){let r=0;if(-1===e.indexOf("\r")){let a=e.indexOf(`
1
+ module.exports=[423620,e=>{"use strict";var t=e.i(912714),r=e.i(691296),a=e.i(749906),n=e.i(51083),o=e.i(375814),i=e.i(871096);let s={name:n.TOOL_NAMES.delegate,description:"Hand a job to a bot. Returns immediately; the job runs in the background and its result is put in front of you later.",parameters:a.object({bot:a.string().describe("A name from the bot list."),request:a.string().describe("The whole job. The bot cannot hear the call, so everything it needs goes here — names, paths, what the user actually asked for — in their own language and their own words: it is the only language the bot has, and whatever it writes comes back to them. **Their request, never your reading of it**: a condition, a caution or a smaller goal they did not say is how a job comes back as the wrong thing. When their words leave a real choice open, ask them on the call and put the answer here."),label:a.string().describe("Two or three words naming the job, in the user's language. Used on screen and said out loud.")})},l={name:n.TOOL_NAMES.ask_bot,description:"Hand one part of the job you are holding to another bot and wait for what they bring back. The job stays yours.",parameters:a.object({bot:a.string().describe("A name from the bot list."),request:a.string().describe("The part they take, as a brief: the outcome you want, the shape to hand it back in (a path, a number, a list), and every name, path, number and limit that bears on it. They see nothing but this and `context` — not the call, not your thread — so write it long rather than short; a brief that leaves them guessing costs a whole run."),context:a.string().describe("The job you were given, quoted, and whatever you have found that bears on this part — exact values, and the paths of files you wrote for them to read. They cannot see your work, your tool output, or the call.")})},u={name:n.TOOL_NAMES.ask_back,description:"Ask the bot that handed you this part. They answer from what they have — the original request, the call it came from, what they found before asking you.",parameters:a.object({question:a.string().describe("One whole question — what you need and why. They cannot take it to the user for you, so ask what they would know.")})},c={name:n.TOOL_NAMES.ask_thursday,description:"Ask Thursday, who handed you this job. The job stops until an answer comes back.",parameters:a.object({question:a.string().describe("One whole question — what you need and why. One or two sentences, in the user's language: she may read it to them out loud, options and all."),options:a.union([a.string().array(),a.string()]).nullish().describe('Only when there really are choices — two or three, each short, as an array: ["Signed in", "Not yet"]. Null for an open question.')})},d=a.string().nullish().describe("What should change in your own instructions before your next job here something to add, something wrong to correct, something to drop. Your own words, any length; someone else writes it in. Nothing to say is the usual answer, and leaving it out costs nothing: they already say what they say."),f={name:n.TOOL_NAMES.task,description:"Check a job you handed over, answer what it is asking, or cancel it.",parameters:a.object({action:a.enum(["status","answer","cancel"]),task:a.string().nullish().describe("The job, by its label or by the handle a past call's transcript carries. With `status`: null for every job in one line each — that is the list — or name one to get its report in full."),answer:a.string().nullish().describe("With `answer`: what to tell the bot — the answer to its question, a course correction for a job still running, or what to do next on one that finished.")})},p=(0,r.tool)({description:c.description,inputSchema:c.parameters}),m="Not handed back:";async function h(e){let r=[];for(let a of(0,o.pathsIn)(e)){let e=await (0,i.insideWorkspace)(a);e&&(await (0,t.stat)(e).then(e=>e.isFile(),()=>!1)||r.push(a))}return r}e.s(["askBackSpec",0,u,"askBotSpec",0,l,"askThursdayTool",0,p,"createReportTool",0,e=>{let t={name:n.TOOL_NAMES.report,description:"Hand back what the job produced. Calling this ends the job — nothing after it runs.",parameters:a.object({result:a.string().describe("The result itself, in a few lines — what you found or did, not a replay of how. Thursday reads this out loud, so write what a person needs to hear. If you could not do it, say what stopped you."),complete:a.boolean().describe("True when the whole request is done. False when work is left over — the user is then asked whether to keep going, and `result` is what they decide on."),...e?{notes:d}:{}})};return(0,r.tool)({description:t.description,inputSchema:t.parameters,execute:async({result:e,complete:t})=>{let r=await h(e);return r.length?`${m} these files do not exist — ${r.join(", ")}. Write them first, or take the paths out of the result.`:t?"Handed back. The job is closed; nothing further runs.":"Handed back as unfinished. The user decides whether to continue."}})},"delegateSpec",0,s,"reportAccepted",0,e=>"string"!=typeof e||!e.startsWith(m),"taskSpec",0,f])},51083,e=>{"use strict";e.s(["STUDIO_TOOLS",0,{generate_image:"generate_image",generate_speech:"generate_speech",transcribe:"transcribe",generate_video:"generate_video"},"TOOL_NAMES",0,{memory_recall:"memory_recall",memory_remember:"memory_remember",memory_forget:"memory_forget",memory_show:"memory_show",bash:"bash",write_file:"write_file",tool_search:"tool_search",tool_call:"tool_call",load_skill:"load_skill",web_search:"web_search",delegate:"delegate",task:"task",ask_bot:"ask_bot",ask_thursday:"ask_thursday",ask_back:"ask_back",report:"report",end_call:"end_call",tidy_done:"tidy_done",update_notes:"update_notes"}])},375814,e=>{"use strict";var t=e.i(333925);let r=e=>`text/${e}; charset=utf-8`,a=Object.entries({md:{kind:"markdown",mime:r("markdown")},markdown:{kind:"markdown",mime:r("markdown")},csv:{kind:"csv",mime:r("csv")},json:{kind:"json",mime:"application/json; charset=utf-8"},txt:{kind:"text",mime:r("plain")},log:{kind:"text",mime:r("plain")},html:{kind:"frame",mime:r("html")},htm:{kind:"frame",mime:r("html")},pdf:{kind:"frame",mime:"application/pdf"},png:{kind:"image",mime:"image/png"},jpg:{kind:"image",mime:"image/jpeg"},jpeg:{kind:"image",mime:"image/jpeg"},gif:{kind:"image",mime:"image/gif"},webp:{kind:"image",mime:"image/webp"},svg:{kind:"image",mime:"image/svg+xml"},mp3:{kind:"audio",mime:"audio/mpeg"},wav:{kind:"audio",mime:"audio/wav"},mp4:{kind:"video",mime:"video/mp4"},webm:{kind:"video",mime:"video/webm"},css:{kind:"none",mime:r("css")},js:{kind:"none",mime:r("javascript")},woff2:{kind:"none",mime:"font/woff2"}}).filter(([,e])=>"none"!==e.kind).map(([e])=>e),n=RegExp(String.raw`(?<![\p{L}\p{N}_/:@%-])(?:[\p{L}\p{N}_.@%-]+/)*[\p{L}\p{N}_@%-]+(?:\.[\p{L}\p{N}_-]+)*\.(?:${a.join("|")})\b`,"giu"),o=`${t.PATHS.workspace}/`;e.s(["pathsIn",0,function(e){let t=e.replace(/\b[a-z][\w+.-]*:\/\/\S+/gi," "),r=new Set;for(let e of t.match(n)??[]){let t=function(e){let t,r,a=(r=(t=e.trim()).indexOf(o))>=0?t.slice(r+o.length)||null:t.startsWith("/")||/^[A-Za-z]:/.test(t)||t.split("/").includes("..")?null:t||null;if(!a)return null;let[n,...i]=a.split("/");return i.length&&n.includes(".")?null:a}(e);t&&r.add(t)}return[...r].slice(0,6)}])},691296,679007,548874,e=>{"use strict";var t,r,a,n,o,i=e.i(296194),s=e.i(59994),l=e.i(404482);class u extends Error{constructor(e,t){super(e),this.name="ParseError",this.type=t.type,this.field=t.field,this.value=t.value,this.line=t.line}}function c(e){}function d(e,t,r){return 100===r&&97===e.charCodeAt(t+1)&&116===e.charCodeAt(t+2)&&97===e.charCodeAt(t+3)&&58===e.charCodeAt(t+4)}function f(e,t,r){return 101===r&&118===e.charCodeAt(t+1)&&101===e.charCodeAt(t+2)&&110===e.charCodeAt(t+3)&&116===e.charCodeAt(t+4)&&58===e.charCodeAt(t+5)}class p extends TransformStream{constructor({onError:e,onRetry:t,onComment:r,maxBufferSize:a}={}){let n;super({start(o){n=function(e){if("function"==typeof e)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:t=c,onError:r=c,onRetry:a=c,onComment:n,maxBufferSize:o}=e,i=[],s=0,l=!0,p,m="",h=0,y,g=!1;function v(){void 0!==o&&(s+m.length<=o||(g=!0,i.length=0,s=0,p=void 0,m="",h=0,y=void 0,r(new u(`Buffered data exceeded max buffer size of ${o} characters`,{type:"max-buffer-size-exceeded"}))))}function w(e){let r=0;if(-1===e.indexOf("\r")){let a=e.indexOf(`
2
2
  `,r);for(;-1!==a;){if(r===a){h>0&&t({id:p,event:y,data:m}),p=void 0,m="",h=0,y=void 0,r=a+1,a=e.indexOf(`
3
3
  `,r);continue}let n=e.charCodeAt(r);if(d(e,r,n)){let n=32===e.charCodeAt(r+5)?r+6:r+5,o=e.slice(n,a);if(0===h&&10===e.charCodeAt(a+1)){t({id:p,event:y,data:o}),p=void 0,m="",y=void 0,r=a+2,a=e.indexOf(`
4
4
  `,r);continue}m=0===h?o:`${m}
5
- ${o}`,h++}else f(e,r,n)?y=e.slice(32===e.charCodeAt(r+6)?r+7:r+6,a)||void 0:w(e,r,a);r=a+1,a=e.indexOf(`
5
+ ${o}`,h++}else f(e,r,n)?y=e.slice(32===e.charCodeAt(r+6)?r+7:r+6,a)||void 0:b(e,r,a);r=a+1,a=e.indexOf(`
6
6
  `,r)}return e.slice(r)}for(;r<e.length;){let t=e.indexOf("\r",r),a=e.indexOf(`
7
- `,r),n=-1;if(-1!==t&&-1!==a?n=t<a?t:a:-1!==t?n=t===e.length-1?-1:t:-1!==a&&(n=a),-1===n)break;w(e,r,n),r=n+1,13===e.charCodeAt(r-1)&&10===e.charCodeAt(r)&&r++}return e.slice(r)}function w(e,r,a){if(r===a)return void(h>0&&t({id:p,event:y,data:m}),p=void 0,m="",h=0,y=void 0);let o=e.charCodeAt(r);if(d(e,r,o)){let t=32===e.charCodeAt(r+5)?r+6:r+5,n=e.slice(t,a);m=0===h?n:`${m}
7
+ `,r),n=-1;if(-1!==t&&-1!==a?n=t<a?t:a:-1!==t?n=t===e.length-1?-1:t:-1!==a&&(n=a),-1===n)break;b(e,r,n),r=n+1,13===e.charCodeAt(r-1)&&10===e.charCodeAt(r)&&r++}return e.slice(r)}function b(e,r,a){if(r===a)return void(h>0&&t({id:p,event:y,data:m}),p=void 0,m="",h=0,y=void 0);let o=e.charCodeAt(r);if(d(e,r,o)){let t=32===e.charCodeAt(r+5)?r+6:r+5,n=e.slice(t,a);m=0===h?n:`${m}
8
8
  ${n}`,h++;return}if(f(e,r,o)){y=e.slice(32===e.charCodeAt(r+6)?r+7:r+6,a)||void 0;return}if(105===o&&100===e.charCodeAt(r+1)&&58===e.charCodeAt(r+2)){let t=e.slice(32===e.charCodeAt(r+3)?r+4:r+3,a);t.includes("\0")||(p=t);return}if(58===o){n&&n(e.slice(r,a).slice(32===e.charCodeAt(r+1)?2:1));return}let i=e.slice(r,a),s=i.indexOf(":");if(-1===s)return void E(i,"",i);let l=i.slice(0,s),u=32===i.charCodeAt(s+1)?2:1;E(l,i.slice(s+u),i)}function E(e,t,n){switch(e){case"event":y=t||void 0;break;case"data":m=0===h?t:`${m}
9
- ${t}`,h++;break;case"id":t.includes("\0")||(p=t);break;case"retry":/^\d+$/.test(t)?a(parseInt(t,10)):r(new u(`Invalid \`retry\` value: "${t}"`,{type:"invalid-retry",value:t,line:n}));break;default:r(new u(`Unknown field "${e.length>20?`${e.slice(0,20)}\u2026`:e}"`,{type:"unknown-field",field:e,value:t,line:n}))}}return{feed:function(e){if(g)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(l&&(l=!1,239===e.charCodeAt(0)&&187===e.charCodeAt(1)&&191===e.charCodeAt(2)&&(e=e.slice(3))),0===i.length){let t=b(e);""!==t&&(i.push(t),s=t.length),v();return}if(-1===e.indexOf(`
10
- `)&&-1===e.indexOf("\r")){i.push(e),s+=e.length,v();return}i.push(e);let t=i.join("");i.length=0,s=0;let r=b(t);""!==r&&(i.push(r),s=r.length),v()},reset:function(e={}){if(e.consume&&i.length>0){let e=i.join("");w(e,0,e.length)}l=!0,p=void 0,m="",h=0,y=void 0,i.length=0,s=0,g=!1}}}({onEvent:e=>{o.enqueue(e)},onError(t){"function"==typeof e&&e(t),("terminate"===e||"max-buffer-size-exceeded"===t.type)&&o.error(t)},onRetry:t,onComment:r,maxBufferSize:a})},transform(e){n.feed(e)}})}}e.s(["EventSourceParserStream",0,p],679007);let m=Symbol.for("workflow-serialize"),h=Symbol.for("workflow-deserialize");async function y(e,t){if(null==e)return Promise.resolve();let r=null==t?void 0:t.abortSignal;return new Promise((t,a)=>{if(null==r?void 0:r.aborted)return void a(g());let n=setTimeout(()=>{o(),t()},e),o=()=>{clearTimeout(n),null==r||r.removeEventListener("abort",i)},i=()=>{o(),a(g())};null==r||r.addEventListener("abort",i)})}function g(){return new DOMException("Delay was aborted","AbortError")}e.s(["WORKFLOW_DESERIALIZE",0,h,"WORKFLOW_SERIALIZE",0,m],548874);var v=new TextDecoder;async function b(e){return"string"==typeof e?e:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?v.decode(e):"u">typeof Blob&&e instanceof Blob?e.text():String(e)}async function w(e,{highWaterMark:t=1048576,pollIntervalMs:r=20,abortSignal:a}={}){for(var n;1===e.readyState&&(null!=(n=e.bufferedAmount)?n:0)>t;){if((null==a?void 0:a.aborted)===!0)return;await y(r)}}function E(e){let t=!1;return new ReadableStream({async pull(r){if(!t)try{let{value:t,done:a}=await e.next();a?r.close():r.enqueue(t)}catch(e){r.error(e)}},async cancel(r){if(t=!0,e.return)try{await e.return(r)}catch(e){}}})}var{btoa:A,atob:T}=globalThis;function x(e){let t=T(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}function P(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return A(t)}var k=Symbol.for("vercel.ai.providerStreamError"),S=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise||(this._promise=new Promise((e,t)=>{"resolved"===this.status.type?e(this.status.value):"rejected"===this.status.type&&t(this.status.error),this._resolve=e,this._reject=t})),this._promise}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&(null==(t=this._resolve)||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&(null==(t=this._reject)||t.call(this,e))}isResolved(){return"resolved"===this.status.type}isRejected(){return"rejected"===this.status.type}isPending(){return"pending"===this.status.type}};function I(e){return Object.fromEntries([...e.headers])}function _(e=globalThis){var t,r,a;return e.window?"runtime/browser":(null==(t=e.navigator)?void 0:t.userAgent)?`runtime/${e.navigator.userAgent.toLowerCase()}`:(null==(a=null==(r=e.process)?void 0:r.versions)?void 0:a.node)?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function $(e){return(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"ResponseAborted"===e.name||"TimeoutError"===e.name)}var O=["fetch failed","failed to fetch"],C=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 j({error:e,url:t,requestBodyValues:r}){if($(e))return e;if(e instanceof TypeError&&O.includes(e.message.toLowerCase())){let a=e.cause;if(null!=a)return new i.APICallError({message:`Cannot connect to API: ${a.message}`,cause:a,url:t,requestBodyValues:r,isRetryable:!0})}let a=function(e){let t=new Set,r=e;for(;r instanceof Error&&!t.has(r);){t.add(r);let e=r;if("string"==typeof e.code&&C.has(e.code))return e;r=r.cause}}(e);return null!=a?new i.APICallError(i.APICallError.isInstance(e)?{message:e.message,cause:e.cause,url:e.url,requestBodyValues:e.requestBodyValues,statusCode:e.statusCode,responseHeaders:e.responseHeaders,responseBody:e.responseBody,data:e.data,isRetryable:!0}:{message:`Cannot connect to API: ${e instanceof Error?e.message:a.message}`,cause:e,url:t,requestBodyValues:r,isRetryable:!0}):e}var N="5.0.36";function R(e){if(null==e)return{};let t={};if(e instanceof Headers)e.forEach((e,r)=>{t[r.toLowerCase()]=e});else for(let[r,a]of(Array.isArray(e)||(e=Object.entries(e)),e))null!=a&&(t[r.toLowerCase()]=a);return t}function L(e,...t){let r=new Headers(R(e)),a=r.get("user-agent")||"";return r.set("user-agent",[a,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}var M=()=>globalThis.fetch,F=async({url:e,headers:t={},failedResponseHandler:r,successfulResponseHandler:a,abortSignal:n,fetch:o=M()})=>{try{let s=await o(e,{method:"DELETE",headers:L(t,`ai-sdk/provider-utils/${N}`,_()),signal:n}),l=I(s);if(!s.ok){let t;try{t=await r({response:s,url:e,requestBodyValues:{}})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:{}})}throw t.value}try{return await a({response:s,url:e,requestBodyValues:{}})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:{}})}}catch(t){throw j({error:t,url:e,requestBodyValues:{}})}},B=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],Z=[{mediaType:"application/pdf",bytesPrefix:[37,80,68,70]}],U=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],D=[{mediaType:"video/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:"video/webm",bytesPrefix:[26,69,223,163]},{mediaType:"video/quicktime",bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:"video/x-msvideo",bytesPrefix:[82,73,70,70]}];function z(e,t){if("string"!=typeof e)return e.length>t?e.subarray(0,t):e;let r=4*Math.ceil(t/3),a=x(e.substring(0,Math.min(e.length,r)));return a.length>t?a.subarray(0,t):a}function V({data:e,signatures:t}){var r,a;let n,o=z(e,18);for(let i of((r=o).length>10&&73===r[0]&&68===r[1]&&51===r[2]&&(n=(127&(a=z(e,131084))[6])<<21|(127&a[7])<<14|(127&a[8])<<7|127&a[9],o=a.subarray(n+10)),t))if(o.length>=i.bytesPrefix.length&&i.bytesPrefix.every((e,t)=>null===e||o[t]===e))return i.mediaType}var q={image:B,audio:[...U,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}],video:D,application:Z};function H({data:e,topLevelType:t}){if(void 0===t)return V({data:e,signatures:[...B,...Z,...U,...D]});let r=q[t];if(void 0!==r)return V({data:e,signatures:r})}function W(e){let t=e.indexOf("/");return -1===t?e:e.substring(0,t)}function J(e){let t=e.indexOf("/");if(-1===t)return!1;let r=e.substring(t+1);return r.length>0&&"*"!==r}async function K(e){var t;try{await (null==(t=e.body)?void 0:t.cancel())}catch(e){}}var G="AI_DownloadError",X=`vercel.ai.error.${G}`,Y=Symbol.for(X),Q=class extends(r=i.AISDKError,t=Y,r){constructor({url:e,statusCode:r,statusText:a,cause:n,message:o=null==n?`Failed to download ${e}: ${r} ${a}`:`Failed to download ${e}: ${n}`}){super({name:G,message:o,cause:n}),this[t]=!0,this.url=e,this.statusCode=r,this.statusText=a}static isInstance(e){return i.AISDKError.hasMarker(e,X)}};function ee(e,t){try{return new URL(e).origin===new URL(t).origin}catch(e){return!1}}function et(e){let t;try{t=new URL(e)}catch(t){throw new Q({url:e,message:`Invalid URL: ${e}`})}if("data:"===t.protocol)return;if("http:"!==t.protocol&&"https:"!==t.protocol)throw new Q({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new Q({url:e,message:"URL must have a hostname"});if("localhost"===r||r.endsWith(".local")||r.endsWith(".localhost"))throw new Q({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){if(en(r.slice(1,-1)))throw new Q({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(er(r)){if(ea(r))throw new Q({url:e,message:`URL with IP address ${r} is not allowed`});return}}function er(e){let t=e.split(".");return 4===t.length&&t.every(e=>{let t=Number(e);return Number.isInteger(t)&&t>=0&&t<=255&&String(t)===e})}function ea(e){let[t,r,a]=e.split(".").map(Number);return 0===t||10===t||100===t&&r>=64&&r<=127||127===t||169===t&&254===r||172===t&&r>=16&&r<=31||192===t&&0===r&&0===a||192===t&&0===r&&2===a||192===t&&168===r||198===t&&(18===r||19===r)||198===t&&51===r&&100===a||203===t&&0===r&&113===a||t>=224||!1}function en(e){let t=function(e){let t=e.toLowerCase(),r=t.indexOf("%");-1!==r&&(t=t.slice(0,r));let a=t.split("::");if(a.length>2)return null;let n=e=>{if(""===e)return[];let t=[],r=e.split(":");for(let e=0;e<r.length;e++){let a=r[e];if(a.includes(".")){if(e!==r.length-1||!er(a))return null;let[n,o,i,s]=a.split(".").map(Number);t.push(n<<8|o,i<<8|s);continue}if(!/^[0-9a-f]{1,4}$/.test(a))return null;t.push(parseInt(a,16))}return t},o=n(a[0]);if(null===o)return null;if(2===a.length){let e=n(a[1]);if(null===e)return null;let t=8-o.length-e.length;return t<0?null:[...o,...Array(t).fill(0),...e]}return 8===o.length?o:null}(e);if(null===t)return!0;let r=e=>t.slice(0,e).every(e=>0===e);if(r(7)&&(0===t[7]||1===t[7])||(65024&t[0])==64512||(65472&t[0])==65152||(65472&t[0])==65216||(65280&t[0])==65280||8193===t[0]&&3512===t[1]||16383===t[0]&&(61440&t[1])==0)return!0;if(r(6)||r(5)&&65535===t[5]||r(4)&&65535===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&1===t[2]){let e=t[6]>>8&255,r=255&t[6],a=t[7]>>8&255,n=255&t[7];return ea(`${e}.${r}.${a}.${n}`)}return!1}var eo=globalThis.fetch,ei=function(e){if("function"!=typeof e)return!1;let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}(eo);async function es(){var e,t;let r;return(null==(e=null==(r=globalThis.process)?void 0:r.release)?void 0:e.name)==="node"&&(null==(t=r.versions)?void 0:t.bun)==null&&ei&&globalThis.fetch===eo?null!=a?a:a=Promise.resolve().then(el):globalThis.fetch}function el(){let{createRequire:e}=eu("node:module"),{lookup:t}=eu("node:dns"),{Agent:r,fetch:a}=e(function e(){let t=Error.prepareStackTrace;try{Error.prepareStackTrace=(e,t)=>t;let t=Error("Capture current module path");Error.captureStackTrace(t,e);let[r]=t.stack,a=null==r?void 0:r.getFileName();if(null==a)throw Error("Unable to determine the current module path");return a}finally{Error.prepareStackTrace=t}}())("undici"),n=new r({connect:{lookup:(e,r,a)=>{t(e,{...r,all:!0},(t,n)=>{if(t)return void a(t);try{let[t]=n;if(null==t)throw Error(`Hostname ${e} did not resolve to an address`);for(let{address:t,family:r}of n)!function({address:e,family:t,hostname:r}){if(4===t?!er(e)||ea(e):6!==t||en(e))throw new Q({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}({address:t,family:r,hostname:e});!0===r.all?a(null,n):a(null,t.address,t.family)}catch(e){a(e instanceof Error?e:Error(String(e)))}})}}});return(e,t)=>a(e,{...t,dispatcher:n})}function eu(e){var t;let r=globalThis.process,a=null==(t=null==r?void 0:r.getBuiltinModule)?void 0:t.call(r,e);if(null==a)throw Error(`Node.js built-in module ${e} is unavailable`);return a}var ec=["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"],ed=new Set([301,302,303,307,308]);async function ef({url:e,headers:t,abortSignal:r,maxRedirects:a=10,fetch:n,trustedOrigin:o}){let i=void 0===t?void 0:function(e){let t=new Headers(e);for(let e of ec)t.delete(e);return t}(t),s=e=>{let t={signal:r,redirect:e};return void 0!==i&&(t.headers=new Headers(i)),t},l=e;for(let t=0;t<=a;t++){let t=void 0!==o&&ee(l,o);t||et(l);let r=null!=n?n:t?globalThis.fetch:await es(),a=await r(l,s("manual"));if("opaqueredirect"===a.type){if(!function(e=globalThis){return null!=e.window}())throw new Q({url:e,message:`Redirect from ${l} could not be validated and was blocked`});return await r(l,s("follow"))}let u=a.headers.get("location");if(ed.has(a.status)&&u){await K(a);let e=new URL(u,l).toString();if(void 0!==i&&!ee(e,l)){let e=i.get("user-agent");i=new Headers(null==e?void 0:{"user-agent":e})}l=e;continue}return a}throw new Q({url:e,message:`Too many redirects (max ${a})`})}async function ep({response:e,url:t,maxBytes:r=0x80000000}){let a=e.headers.get("content-length");if(null!=a){let n=parseInt(a,10);if(!isNaN(n)&&n>r)throw await K(e),new Q({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${n}).`})}let n=e.body;if(null==n)return new Uint8Array(0);let o=n.getReader(),i=[],s=0;try{for(;;){let{done:e,value:a}=await o.read();if(e)break;if((s+=a.length)>r)throw new Q({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});i.push(a)}}finally{try{await o.cancel()}catch(e){}finally{o.releaseLock()}}let l=new Uint8Array(s),u=0;for(let e of i)l.set(e,u),u+=e.length;return l}async function em(e,t){var r,a;try{let n=await ef({url:e,abortSignal:null==t?void 0:t.abortSignal});if(!n.ok)throw await K(n),new Q({url:e,statusCode:n.status,statusText:n.statusText});let o=await ep({response:n,url:e,maxBytes:null!=(r=null==t?void 0:t.maxBytes)?r:0x80000000}),i=null!=(a=n.headers.get("content-type"))?a:void 0;return new Blob([o],i?{type:i}:void 0)}catch(t){if(Q.isInstance(t))throw t;throw new Q({url:e,cause:t})}}var eh=Symbol.for("vercel.ai.embeddingModel.maxInputBytesPerCall"),ey=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:a="-"}={})=>{let n=()=>{let e=r.length,a=Array(t);for(let n=0;n<t;n++)a[n]=r[Math.random()*e|0];return a.join("")};if(null==e)return n;if(r.includes(a))throw new i.InvalidArgumentError({argument:"separator",message:`The separator "${a}" must not be part of the alphabet "${r}".`});return()=>`${e}${a}${n()}`},eg=ey(),ev=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:a,abortSignal:n,fetch:o,validateUrl:s,credentialedOrigin:l,trustedOrigin:u})=>{try{let c=null!=o?o:globalThis.fetch,d=void 0===l||ee(e,l)?t:{},f=L(d,`ai-sdk/provider-utils/${N}`,_()),p=s?await ef({url:e,headers:f,abortSignal:n,fetch:o,trustedOrigin:u}):await c(e,{method:"GET",headers:f,signal:n}),m=I(p);if(!p.ok){let t;try{t=await a({response:p,url:e,requestBodyValues:{}})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:p.status,url:e,responseHeaders:m,requestBodyValues:{}})}throw t.value}try{return await r({response:p,url:e,requestBodyValues:{}})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:p.status,url:e,responseHeaders:m,requestBodyValues:{}})}}catch(t){throw j({error:t,url:e,requestBodyValues:{}})}};function eb(e){var t,r;return null!=(r=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&r}function ew(e){return null!=e&&"object"==typeof e&&!Array.isArray(e)}var eE={minimal:.02,low:.1,medium:.3,high:.6,xhigh:.9};function eA(e){return null!=e&&Number.isSafeInteger(e)&&e>=0}var eT=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ex=/"(?: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 eP(e){let t=JSON.parse(e);return null===t||"object"!=typeof t||!1===eT.test(e)&&!1===ex.test(e)?t:function(e){let t=[e];for(;t.length;){let e=t;for(let r of(t=[],e)){if(Object.prototype.hasOwnProperty.call(r,"__proto__")||Object.prototype.hasOwnProperty.call(r,"constructor")&&null!==r.constructor&&"object"==typeof r.constructor&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let e in r){let a=r[e];a&&"object"==typeof a&&t.push(a)}}}return e}(t)}function ek(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(t){return eP(e)}try{return eP(e)}finally{Error.stackTraceLimit=t}}function eS(e){if("object"===e.type||Array.isArray(e.type)&&e.type.includes("object")){let{additionalProperties:t}=e;e.additionalProperties=null!=t&&"boolean"!=typeof t&&eI(t);let{properties:r}=e;if(null!=r)for(let e of Object.keys(r))r[e]=eI(r[e])}null!=e.items&&(e.items=Array.isArray(e.items)?e.items.map(eI):eI(e.items)),null!=e.anyOf&&(e.anyOf=e.anyOf.map(eI)),null!=e.allOf&&(e.allOf=e.allOf.map(eI)),null!=e.oneOf&&(e.oneOf=e.oneOf.map(eI));let{definitions:t}=e;if(null!=t)for(let e of Object.keys(t))t[e]=eI(t[e]);return e}function eI(e){return"boolean"==typeof e?e:eS(e)}var e_=Symbol("Let zodToJsonSchema decide on which parser to use"),e$={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 eO(e,t){return eY(e.type._def,t)}var eC=void 0,ej=/^[cC][^\s-]{8,}$/,eN=/^[0-9a-z]+$/,eR=/^[0-9A-HJKMNP-TV-Z]{26}$/,eL=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,eM=()=>(void 0===eC&&(eC=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eC),eF=/^(?:(?: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])$/,eB=/^(([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])$/,eZ=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,eU=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,eD=/^[a-zA-Z0-9_-]{21}$/,ez=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function eV(e,t){let r={type:"string"};if(e.checks)for(let a of e.checks)switch(a.kind){case"min":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value;break;case"max":r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"email":switch(t.emailStrategy){case"format:email":eW(r,"email",a.message,t);break;case"format:idn-email":eW(r,"idn-email",a.message,t);break;case"pattern:zod":eJ(r,eL,a.message,t)}break;case"url":eW(r,"uri",a.message,t);break;case"uuid":eW(r,"uuid",a.message,t);break;case"regex":eJ(r,a.regex,a.message,t);break;case"cuid":eJ(r,ej,a.message,t);break;case"cuid2":eJ(r,eN,a.message,t);break;case"startsWith":eJ(r,RegExp(`^${eq(a.value,t)}`),a.message,t);break;case"endsWith":eJ(r,RegExp(`${eq(a.value,t)}$`),a.message,t);break;case"datetime":eW(r,"date-time",a.message,t);break;case"date":eW(r,"date",a.message,t);break;case"time":eW(r,"time",a.message,t);break;case"duration":eW(r,"duration",a.message,t);break;case"length":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value,r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"includes":eJ(r,RegExp(eq(a.value,t)),a.message,t);break;case"ip":"v6"!==a.version&&eW(r,"ipv4",a.message,t),"v4"!==a.version&&eW(r,"ipv6",a.message,t);break;case"base64url":eJ(r,eU,a.message,t);break;case"jwt":eJ(r,ez,a.message,t);break;case"cidr":"v6"!==a.version&&eJ(r,eF,a.message,t),"v4"!==a.version&&eJ(r,eB,a.message,t);break;case"emoji":eJ(r,eM(),a.message,t);break;case"ulid":eJ(r,eR,a.message,t);break;case"base64":switch(t.base64Strategy){case"format:binary":eW(r,"binary",a.message,t);break;case"contentEncoding:base64":r.contentEncoding="base64";break;case"pattern:zod":eJ(r,eZ,a.message,t)}break;case"nanoid":eJ(r,eD,a.message,t)}return r}function eq(e,t){return"escape"===t.patternStrategy?function(e){let t="";for(let r=0;r<e.length;r++)eH.has(e[r])||(t+="\\"),t+=e[r];return t}(e):e}var eH=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function eW(e,t,r,a){var n;e.format||(null==(n=e.anyOf)?void 0:n.some(e=>e.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&a.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function eJ(e,t,r,a){var n;e.pattern||(null==(n=e.allOf)?void 0:n.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:eK(t,a),...r&&a.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=eK(t,a)}function eK(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let a={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=a.i?e.source.toLowerCase():e.source,o="",i=!1,s=!1,l=!1;for(let e=0;e<n.length;e++){if(i){o+=n[e],i=!1;continue}if(a.i){if(s){if(n[e].match(/[a-z]/)){l?(o+=n[e],o+=`${n[e-2]}-${n[e]}`.toUpperCase(),l=!1):"-"===n[e+1]&&(null==(r=n[e+2])?void 0:r.match(/[a-z]/))?(o+=n[e],l=!0):o+=`${n[e]}${n[e].toUpperCase()}`;continue}}else if(n[e].match(/[a-z]/)){o+=`[${n[e]}${n[e].toUpperCase()}]`;continue}}if(a.m){if("^"===n[e]){o+=`(^|(?<=[\r
9
+ ${t}`,h++;break;case"id":t.includes("\0")||(p=t);break;case"retry":/^\d+$/.test(t)?a(parseInt(t,10)):r(new u(`Invalid \`retry\` value: "${t}"`,{type:"invalid-retry",value:t,line:n}));break;default:r(new u(`Unknown field "${e.length>20?`${e.slice(0,20)}\u2026`:e}"`,{type:"unknown-field",field:e,value:t,line:n}))}}return{feed:function(e){if(g)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(l&&(l=!1,239===e.charCodeAt(0)&&187===e.charCodeAt(1)&&191===e.charCodeAt(2)&&(e=e.slice(3))),0===i.length){let t=w(e);""!==t&&(i.push(t),s=t.length),v();return}if(-1===e.indexOf(`
10
+ `)&&-1===e.indexOf("\r")){i.push(e),s+=e.length,v();return}i.push(e);let t=i.join("");i.length=0,s=0;let r=w(t);""!==r&&(i.push(r),s=r.length),v()},reset:function(e={}){if(e.consume&&i.length>0){let e=i.join("");b(e,0,e.length)}l=!0,p=void 0,m="",h=0,y=void 0,i.length=0,s=0,g=!1}}}({onEvent:e=>{o.enqueue(e)},onError(t){"function"==typeof e&&e(t),("terminate"===e||"max-buffer-size-exceeded"===t.type)&&o.error(t)},onRetry:t,onComment:r,maxBufferSize:a})},transform(e){n.feed(e)}})}}e.s(["EventSourceParserStream",0,p],679007);let m=Symbol.for("workflow-serialize"),h=Symbol.for("workflow-deserialize");async function y(e,t){if(null==e)return Promise.resolve();let r=null==t?void 0:t.abortSignal;return new Promise((t,a)=>{if(null==r?void 0:r.aborted)return void a(g());let n=setTimeout(()=>{o(),t()},e),o=()=>{clearTimeout(n),null==r||r.removeEventListener("abort",i)},i=()=>{o(),a(g())};null==r||r.addEventListener("abort",i)})}function g(){return new DOMException("Delay was aborted","AbortError")}e.s(["WORKFLOW_DESERIALIZE",0,h,"WORKFLOW_SERIALIZE",0,m],548874);var v=new TextDecoder;async function w(e){return"string"==typeof e?e:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?v.decode(e):"u">typeof Blob&&e instanceof Blob?e.text():String(e)}async function b(e,{highWaterMark:t=1048576,pollIntervalMs:r=20,abortSignal:a}={}){for(var n;1===e.readyState&&(null!=(n=e.bufferedAmount)?n:0)>t;){if((null==a?void 0:a.aborted)===!0)return;await y(r)}}function E(e){let t=!1;return new ReadableStream({async pull(r){if(!t)try{let{value:t,done:a}=await e.next();a?r.close():r.enqueue(t)}catch(e){r.error(e)}},async cancel(r){if(t=!0,e.return)try{await e.return(r)}catch(e){}}})}var{btoa:A,atob:T}=globalThis;function x(e){let t=T(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}function P(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return A(t)}var k=Symbol.for("vercel.ai.providerStreamError"),S=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise||(this._promise=new Promise((e,t)=>{"resolved"===this.status.type?e(this.status.value):"rejected"===this.status.type&&t(this.status.error),this._resolve=e,this._reject=t})),this._promise}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&(null==(t=this._resolve)||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&(null==(t=this._reject)||t.call(this,e))}isResolved(){return"resolved"===this.status.type}isRejected(){return"rejected"===this.status.type}isPending(){return"pending"===this.status.type}};function I(e){return Object.fromEntries([...e.headers])}function _(e=globalThis){var t,r,a;return e.window?"runtime/browser":(null==(t=e.navigator)?void 0:t.userAgent)?`runtime/${e.navigator.userAgent.toLowerCase()}`:(null==(a=null==(r=e.process)?void 0:r.versions)?void 0:a.node)?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function $(e){return(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"ResponseAborted"===e.name||"TimeoutError"===e.name)}var O=["fetch failed","failed to fetch"],C=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 j({error:e,url:t,requestBodyValues:r}){if($(e))return e;if(e instanceof TypeError&&O.includes(e.message.toLowerCase())){let a=e.cause;if(null!=a)return new i.APICallError({message:`Cannot connect to API: ${a.message}`,cause:a,url:t,requestBodyValues:r,isRetryable:!0})}let a=function(e){let t=new Set,r=e;for(;r instanceof Error&&!t.has(r);){t.add(r);let e=r;if("string"==typeof e.code&&C.has(e.code))return e;r=r.cause}}(e);return null!=a?new i.APICallError(i.APICallError.isInstance(e)?{message:e.message,cause:e.cause,url:e.url,requestBodyValues:e.requestBodyValues,statusCode:e.statusCode,responseHeaders:e.responseHeaders,responseBody:e.responseBody,data:e.data,isRetryable:!0}:{message:`Cannot connect to API: ${e instanceof Error?e.message:a.message}`,cause:e,url:t,requestBodyValues:r,isRetryable:!0}):e}var N="5.0.36";function R(e){if(null==e)return{};let t={};if(e instanceof Headers)e.forEach((e,r)=>{t[r.toLowerCase()]=e});else for(let[r,a]of(Array.isArray(e)||(e=Object.entries(e)),e))null!=a&&(t[r.toLowerCase()]=a);return t}function L(e,...t){let r=new Headers(R(e)),a=r.get("user-agent")||"";return r.set("user-agent",[a,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}var M=()=>globalThis.fetch,F=async({url:e,headers:t={},failedResponseHandler:r,successfulResponseHandler:a,abortSignal:n,fetch:o=M()})=>{try{let s=await o(e,{method:"DELETE",headers:L(t,`ai-sdk/provider-utils/${N}`,_()),signal:n}),l=I(s);if(!s.ok){let t;try{t=await r({response:s,url:e,requestBodyValues:{}})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:{}})}throw t.value}try{return await a({response:s,url:e,requestBodyValues:{}})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:s.status,url:e,responseHeaders:l,requestBodyValues:{}})}}catch(t){throw j({error:t,url:e,requestBodyValues:{}})}},B=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],Z=[{mediaType:"application/pdf",bytesPrefix:[37,80,68,70]}],U=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],D=[{mediaType:"video/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:"video/webm",bytesPrefix:[26,69,223,163]},{mediaType:"video/quicktime",bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:"video/x-msvideo",bytesPrefix:[82,73,70,70]}];function z(e,t){if("string"!=typeof e)return e.length>t?e.subarray(0,t):e;let r=4*Math.ceil(t/3),a=x(e.substring(0,Math.min(e.length,r)));return a.length>t?a.subarray(0,t):a}function V({data:e,signatures:t}){var r,a;let n,o=z(e,18);for(let i of((r=o).length>10&&73===r[0]&&68===r[1]&&51===r[2]&&(n=(127&(a=z(e,131084))[6])<<21|(127&a[7])<<14|(127&a[8])<<7|127&a[9],o=a.subarray(n+10)),t))if(o.length>=i.bytesPrefix.length&&i.bytesPrefix.every((e,t)=>null===e||o[t]===e))return i.mediaType}var q={image:B,audio:[...U,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}],video:D,application:Z};function W({data:e,topLevelType:t}){if(void 0===t)return V({data:e,signatures:[...B,...Z,...U,...D]});let r=q[t];if(void 0!==r)return V({data:e,signatures:r})}function H(e){let t=e.indexOf("/");return -1===t?e:e.substring(0,t)}function J(e){let t=e.indexOf("/");if(-1===t)return!1;let r=e.substring(t+1);return r.length>0&&"*"!==r}async function K(e){var t;try{await (null==(t=e.body)?void 0:t.cancel())}catch(e){}}var G="AI_DownloadError",X=`vercel.ai.error.${G}`,Y=Symbol.for(X),Q=class extends(r=i.AISDKError,t=Y,r){constructor({url:e,statusCode:r,statusText:a,cause:n,message:o=null==n?`Failed to download ${e}: ${r} ${a}`:`Failed to download ${e}: ${n}`}){super({name:G,message:o,cause:n}),this[t]=!0,this.url=e,this.statusCode=r,this.statusText=a}static isInstance(e){return i.AISDKError.hasMarker(e,X)}};function ee(e,t){try{return new URL(e).origin===new URL(t).origin}catch(e){return!1}}function et(e){let t;try{t=new URL(e)}catch(t){throw new Q({url:e,message:`Invalid URL: ${e}`})}if("data:"===t.protocol)return;if("http:"!==t.protocol&&"https:"!==t.protocol)throw new Q({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new Q({url:e,message:"URL must have a hostname"});if("localhost"===r||r.endsWith(".local")||r.endsWith(".localhost"))throw new Q({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){if(en(r.slice(1,-1)))throw new Q({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(er(r)){if(ea(r))throw new Q({url:e,message:`URL with IP address ${r} is not allowed`});return}}function er(e){let t=e.split(".");return 4===t.length&&t.every(e=>{let t=Number(e);return Number.isInteger(t)&&t>=0&&t<=255&&String(t)===e})}function ea(e){let[t,r,a]=e.split(".").map(Number);return 0===t||10===t||100===t&&r>=64&&r<=127||127===t||169===t&&254===r||172===t&&r>=16&&r<=31||192===t&&0===r&&0===a||192===t&&0===r&&2===a||192===t&&168===r||198===t&&(18===r||19===r)||198===t&&51===r&&100===a||203===t&&0===r&&113===a||t>=224||!1}function en(e){let t=function(e){let t=e.toLowerCase(),r=t.indexOf("%");-1!==r&&(t=t.slice(0,r));let a=t.split("::");if(a.length>2)return null;let n=e=>{if(""===e)return[];let t=[],r=e.split(":");for(let e=0;e<r.length;e++){let a=r[e];if(a.includes(".")){if(e!==r.length-1||!er(a))return null;let[n,o,i,s]=a.split(".").map(Number);t.push(n<<8|o,i<<8|s);continue}if(!/^[0-9a-f]{1,4}$/.test(a))return null;t.push(parseInt(a,16))}return t},o=n(a[0]);if(null===o)return null;if(2===a.length){let e=n(a[1]);if(null===e)return null;let t=8-o.length-e.length;return t<0?null:[...o,...Array(t).fill(0),...e]}return 8===o.length?o:null}(e);if(null===t)return!0;let r=e=>t.slice(0,e).every(e=>0===e);if(r(7)&&(0===t[7]||1===t[7])||(65024&t[0])==64512||(65472&t[0])==65152||(65472&t[0])==65216||(65280&t[0])==65280||8193===t[0]&&3512===t[1]||16383===t[0]&&(61440&t[1])==0)return!0;if(r(6)||r(5)&&65535===t[5]||r(4)&&65535===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&0===t[5]||100===t[0]&&65435===t[1]&&1===t[2]){let e=t[6]>>8&255,r=255&t[6],a=t[7]>>8&255,n=255&t[7];return ea(`${e}.${r}.${a}.${n}`)}return!1}var eo=globalThis.fetch,ei=function(e){if("function"!=typeof e)return!1;let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}(eo);async function es(){var e,t;let r;return(null==(e=null==(r=globalThis.process)?void 0:r.release)?void 0:e.name)==="node"&&(null==(t=r.versions)?void 0:t.bun)==null&&ei&&globalThis.fetch===eo?null!=a?a:a=Promise.resolve().then(el):globalThis.fetch}function el(){let{createRequire:e}=eu("node:module"),{lookup:t}=eu("node:dns"),{Agent:r,fetch:a}=e(function e(){let t=Error.prepareStackTrace;try{Error.prepareStackTrace=(e,t)=>t;let t=Error("Capture current module path");Error.captureStackTrace(t,e);let[r]=t.stack,a=null==r?void 0:r.getFileName();if(null==a)throw Error("Unable to determine the current module path");return a}finally{Error.prepareStackTrace=t}}())("undici"),n=new r({connect:{lookup:(e,r,a)=>{t(e,{...r,all:!0},(t,n)=>{if(t)return void a(t);try{let[t]=n;if(null==t)throw Error(`Hostname ${e} did not resolve to an address`);for(let{address:t,family:r}of n)!function({address:e,family:t,hostname:r}){if(4===t?!er(e)||ea(e):6!==t||en(e))throw new Q({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}({address:t,family:r,hostname:e});!0===r.all?a(null,n):a(null,t.address,t.family)}catch(e){a(e instanceof Error?e:Error(String(e)))}})}}});return(e,t)=>a(e,{...t,dispatcher:n})}function eu(e){var t;let r=globalThis.process,a=null==(t=null==r?void 0:r.getBuiltinModule)?void 0:t.call(r,e);if(null==a)throw Error(`Node.js built-in module ${e} is unavailable`);return a}var ec=["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"],ed=new Set([301,302,303,307,308]);async function ef({url:e,headers:t,abortSignal:r,maxRedirects:a=10,fetch:n,trustedOrigin:o}){let i=void 0===t?void 0:function(e){let t=new Headers(e);for(let e of ec)t.delete(e);return t}(t),s=e=>{let t={signal:r,redirect:e};return void 0!==i&&(t.headers=new Headers(i)),t},l=e;for(let t=0;t<=a;t++){let t=void 0!==o&&ee(l,o);t||et(l);let r=null!=n?n:t?globalThis.fetch:await es(),a=await r(l,s("manual"));if("opaqueredirect"===a.type){if(!function(e=globalThis){return null!=e.window}())throw new Q({url:e,message:`Redirect from ${l} could not be validated and was blocked`});return await r(l,s("follow"))}let u=a.headers.get("location");if(ed.has(a.status)&&u){await K(a);let e=new URL(u,l).toString();if(void 0!==i&&!ee(e,l)){let e=i.get("user-agent");i=new Headers(null==e?void 0:{"user-agent":e})}l=e;continue}return a}throw new Q({url:e,message:`Too many redirects (max ${a})`})}async function ep({response:e,url:t,maxBytes:r=0x80000000}){let a=e.headers.get("content-length");if(null!=a){let n=parseInt(a,10);if(!isNaN(n)&&n>r)throw await K(e),new Q({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${n}).`})}let n=e.body;if(null==n)return new Uint8Array(0);let o=n.getReader(),i=[],s=0;try{for(;;){let{done:e,value:a}=await o.read();if(e)break;if((s+=a.length)>r)throw new Q({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});i.push(a)}}finally{try{await o.cancel()}catch(e){}finally{o.releaseLock()}}let l=new Uint8Array(s),u=0;for(let e of i)l.set(e,u),u+=e.length;return l}async function em(e,t){var r,a;try{let n=await ef({url:e,abortSignal:null==t?void 0:t.abortSignal});if(!n.ok)throw await K(n),new Q({url:e,statusCode:n.status,statusText:n.statusText});let o=await ep({response:n,url:e,maxBytes:null!=(r=null==t?void 0:t.maxBytes)?r:0x80000000}),i=null!=(a=n.headers.get("content-type"))?a:void 0;return new Blob([o],i?{type:i}:void 0)}catch(t){if(Q.isInstance(t))throw t;throw new Q({url:e,cause:t})}}var eh=Symbol.for("vercel.ai.embeddingModel.maxInputBytesPerCall"),ey=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:a="-"}={})=>{let n=()=>{let e=r.length,a=Array(t);for(let n=0;n<t;n++)a[n]=r[Math.random()*e|0];return a.join("")};if(null==e)return n;if(r.includes(a))throw new i.InvalidArgumentError({argument:"separator",message:`The separator "${a}" must not be part of the alphabet "${r}".`});return()=>`${e}${a}${n()}`},eg=ey(),ev=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:a,abortSignal:n,fetch:o,validateUrl:s,credentialedOrigin:l,trustedOrigin:u})=>{try{let c=null!=o?o:globalThis.fetch,d=void 0===l||ee(e,l)?t:{},f=L(d,`ai-sdk/provider-utils/${N}`,_()),p=s?await ef({url:e,headers:f,abortSignal:n,fetch:o,trustedOrigin:u}):await c(e,{method:"GET",headers:f,signal:n}),m=I(p);if(!p.ok){let t;try{t=await a({response:p,url:e,requestBodyValues:{}})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:p.status,url:e,responseHeaders:m,requestBodyValues:{}})}throw t.value}try{return await r({response:p,url:e,requestBodyValues:{}})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:p.status,url:e,responseHeaders:m,requestBodyValues:{}})}}catch(t){throw j({error:t,url:e,requestBodyValues:{}})}};function ew(e){var t,r;return null!=(r=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&r}function eb(e){return null!=e&&"object"==typeof e&&!Array.isArray(e)}var eE={minimal:.02,low:.1,medium:.3,high:.6,xhigh:.9};function eA(e){return null!=e&&Number.isSafeInteger(e)&&e>=0}var eT=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ex=/"(?: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 eP(e){let t=JSON.parse(e);return null===t||"object"!=typeof t||!1===eT.test(e)&&!1===ex.test(e)?t:function(e){let t=[e];for(;t.length;){let e=t;for(let r of(t=[],e)){if(Object.prototype.hasOwnProperty.call(r,"__proto__")||Object.prototype.hasOwnProperty.call(r,"constructor")&&null!==r.constructor&&"object"==typeof r.constructor&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let e in r){let a=r[e];a&&"object"==typeof a&&t.push(a)}}}return e}(t)}function ek(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(t){return eP(e)}try{return eP(e)}finally{Error.stackTraceLimit=t}}function eS(e){if("object"===e.type||Array.isArray(e.type)&&e.type.includes("object")){let{additionalProperties:t}=e;e.additionalProperties=null!=t&&"boolean"!=typeof t&&eI(t);let{properties:r}=e;if(null!=r)for(let e of Object.keys(r))r[e]=eI(r[e])}null!=e.items&&(e.items=Array.isArray(e.items)?e.items.map(eI):eI(e.items)),null!=e.anyOf&&(e.anyOf=e.anyOf.map(eI)),null!=e.allOf&&(e.allOf=e.allOf.map(eI)),null!=e.oneOf&&(e.oneOf=e.oneOf.map(eI));let{definitions:t}=e;if(null!=t)for(let e of Object.keys(t))t[e]=eI(t[e]);return e}function eI(e){return"boolean"==typeof e?e:eS(e)}var e_=Symbol("Let zodToJsonSchema decide on which parser to use"),e$={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 eO(e,t){return eY(e.type._def,t)}var eC=void 0,ej=/^[cC][^\s-]{8,}$/,eN=/^[0-9a-z]+$/,eR=/^[0-9A-HJKMNP-TV-Z]{26}$/,eL=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,eM=()=>(void 0===eC&&(eC=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eC),eF=/^(?:(?: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])$/,eB=/^(([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])$/,eZ=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,eU=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,eD=/^[a-zA-Z0-9_-]{21}$/,ez=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function eV(e,t){let r={type:"string"};if(e.checks)for(let a of e.checks)switch(a.kind){case"min":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value;break;case"max":r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"email":switch(t.emailStrategy){case"format:email":eH(r,"email",a.message,t);break;case"format:idn-email":eH(r,"idn-email",a.message,t);break;case"pattern:zod":eJ(r,eL,a.message,t)}break;case"url":eH(r,"uri",a.message,t);break;case"uuid":eH(r,"uuid",a.message,t);break;case"regex":eJ(r,a.regex,a.message,t);break;case"cuid":eJ(r,ej,a.message,t);break;case"cuid2":eJ(r,eN,a.message,t);break;case"startsWith":eJ(r,RegExp(`^${eq(a.value,t)}`),a.message,t);break;case"endsWith":eJ(r,RegExp(`${eq(a.value,t)}$`),a.message,t);break;case"datetime":eH(r,"date-time",a.message,t);break;case"date":eH(r,"date",a.message,t);break;case"time":eH(r,"time",a.message,t);break;case"duration":eH(r,"duration",a.message,t);break;case"length":r.minLength="number"==typeof r.minLength?Math.max(r.minLength,a.value):a.value,r.maxLength="number"==typeof r.maxLength?Math.min(r.maxLength,a.value):a.value;break;case"includes":eJ(r,RegExp(eq(a.value,t)),a.message,t);break;case"ip":"v6"!==a.version&&eH(r,"ipv4",a.message,t),"v4"!==a.version&&eH(r,"ipv6",a.message,t);break;case"base64url":eJ(r,eU,a.message,t);break;case"jwt":eJ(r,ez,a.message,t);break;case"cidr":"v6"!==a.version&&eJ(r,eF,a.message,t),"v4"!==a.version&&eJ(r,eB,a.message,t);break;case"emoji":eJ(r,eM(),a.message,t);break;case"ulid":eJ(r,eR,a.message,t);break;case"base64":switch(t.base64Strategy){case"format:binary":eH(r,"binary",a.message,t);break;case"contentEncoding:base64":r.contentEncoding="base64";break;case"pattern:zod":eJ(r,eZ,a.message,t)}break;case"nanoid":eJ(r,eD,a.message,t)}return r}function eq(e,t){return"escape"===t.patternStrategy?function(e){let t="";for(let r=0;r<e.length;r++)eW.has(e[r])||(t+="\\"),t+=e[r];return t}(e):e}var eW=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function eH(e,t,r,a){var n;e.format||(null==(n=e.anyOf)?void 0:n.some(e=>e.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&a.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function eJ(e,t,r,a){var n;e.pattern||(null==(n=e.allOf)?void 0:n.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:eK(t,a),...r&&a.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=eK(t,a)}function eK(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let a={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=a.i?e.source.toLowerCase():e.source,o="",i=!1,s=!1,l=!1;for(let e=0;e<n.length;e++){if(i){o+=n[e],i=!1;continue}if(a.i){if(s){if(n[e].match(/[a-z]/)){l?(o+=n[e],o+=`${n[e-2]}-${n[e]}`.toUpperCase(),l=!1):"-"===n[e+1]&&(null==(r=n[e+2])?void 0:r.match(/[a-z]/))?(o+=n[e],l=!0):o+=`${n[e]}${n[e].toUpperCase()}`;continue}}else if(n[e].match(/[a-z]/)){o+=`[${n[e]}${n[e].toUpperCase()}]`;continue}}if(a.m){if("^"===n[e]){o+=`(^|(?<=[\r
11
11
  ]))`;continue}else if("$"===n[e]){o+=`($|(?=[\r
12
12
  ]))`;continue}}if(a.s&&"."===n[e]){o+=s?`${n[e]}\r
13
13
  `:`[${n[e]}\r
14
- ]`;continue}o+=n[e],"\\"===n[e]?i=!0:s&&"]"===n[e]?s=!1:s||"["!==n[e]||(s=!0)}try{new RegExp(o)}catch(r){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return o}function eG(e,t){var r,a,n,o,i,s;let l={type:"object",additionalProperties:null!=(r=eY(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))?r:t.allowedAdditionalProperties};if((null==(a=e.keyType)?void 0:a._def.typeName)==="ZodString"&&(null==(n=e.keyType._def.checks)?void 0:n.length)){let{type:r,...a}=eV(e.keyType._def,t);return{...l,propertyNames:a}}if((null==(o=e.keyType)?void 0:o._def.typeName)==="ZodEnum")return{...l,propertyNames:{enum:e.keyType._def.values}};if((null==(i=e.keyType)?void 0:i._def.typeName)==="ZodBranded"&&"ZodString"===e.keyType._def.type._def.typeName&&(null==(s=e.keyType._def.type._def.checks)?void 0:s.length)){let{type:r,...a}=eO(e.keyType._def,t);return{...l,propertyNames:a}}return l}var eX={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function eY(e,t,r=!1){var a;let n=t.seen.get(e);if(t.override){let o=null==(a=t.override)?void 0:a.call(t,e,t,n,r);if(o!==e_)return o}if(n&&!r){let e=eQ(n,t);if(void 0!==e)return e}let o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);let i=((e,t,r)=>{var a,n,o,i,s,l;switch(t){case"ZodString":return eV(e,r);case"ZodNumber":let u={type:"number"};if(!e.checks)return u;for(let t of e.checks)switch(t.kind){case"int":u.type="integer";break;case"min":t.inclusive?u.minimum=t.value:u.exclusiveMinimum=t.value;break;case"max":t.inclusive?u.maximum=t.value:u.exclusiveMaximum=t.value;break;case"multipleOf":u.multipleOf=t.value}return u;case"ZodObject":return function(e,t){let r={type:"object",properties:{}},a=[],n=e.shape();for(let e in n){let o=n[e];if(void 0===o||void 0===o._def)continue;let i=function(e){try{return e.isOptional()}catch(e){return!0}}(o),s=eY(o._def,{...t,currentPath:[...t.currentPath,"properties",e],propertyPath:[...t.currentPath,"properties",e]});void 0!==s&&(r.properties[e]=s,i||a.push(e))}a.length&&(r.required=a);let o=function(e,t){if("ZodNever"!==e.catchall._def.typeName)return eY(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return"strict"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==o&&(r.additionalProperties=o),r}(e,r);case"ZodBigInt":let c={type:"integer",format:"int64"};if(!e.checks)return c;for(let t of e.checks)switch(t.kind){case"min":t.inclusive?c.minimum=t.value:c.exclusiveMinimum=t.value;break;case"max":t.inclusive?c.maximum=t.value:c.exclusiveMaximum=t.value;break;case"multipleOf":c.multipleOf=t.value}return c;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function e(t,r,a){let n=null!=a?a:r.dateStrategy;if(Array.isArray(n))return{anyOf:n.map(a=>e(t,r,a))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var o=t;let i={type:"integer",format:"unix-time"};for(let e of o.checks)switch(e.kind){case"min":i.minimum=e.value;break;case"max":i.maximum=e.value}return i}}(e,r);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let d;return d={type:"array"},(null==(o=e.type)?void 0:o._def)&&(null==(s=null==(i=e.type)?void 0:i._def)?void 0:s.typeName)!=="ZodAny"&&(d.items=eY(e.type._def,{...r,currentPath:[...r.currentPath,"items"]})),e.minLength&&(d.minItems=e.minLength.value),e.maxLength&&(d.maxItems=e.maxLength.value),e.exactLength&&(d.minItems=e.exactLength.value,d.maxItems=e.exactLength.value),d;case"ZodUnion":case"ZodDiscriminatedUnion":let f,p=e.options instanceof Map?Array.from(e.options.values()):e.options;if(p.every(e=>e._def.typeName in eX&&(!e._def.checks||!e._def.checks.length))){let e=p.reduce((e,t)=>{let r=eX[t._def.typeName];return r&&!e.includes(r)?[...e,r]:e},[]);return{type:e.length>1?e:e[0]}}if(p.every(e=>"ZodLiteral"===e._def.typeName&&!e.description)){let e=p.reduce((e,t)=>{let r=typeof t._def.value;switch(r){case"string":case"number":case"boolean":return[...e,r];case"bigint":return[...e,"integer"];case"object":if(null===t._def.value)return[...e,"null"];default:return e}},[]);if(e.length===p.length){let t=e.filter((e,t,r)=>r.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:p.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(p.every(e=>"ZodEnum"===e._def.typeName))return{type:"string",enum:p.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return a=e,n=r,(f=(a.options instanceof Map?Array.from(a.options.values()):a.options).map((e,t)=>eY(e._def,{...n,currentPath:[...n.currentPath,"anyOf",`${t}`]})).filter(e=>!!e&&(!n.strictUnions||"object"==typeof e&&Object.keys(e).length>0))).length?{anyOf:f}:void 0;case"ZodIntersection":let m,h;return m=[eY(e.left._def,{...r,currentPath:[...r.currentPath,"allOf","0"]}),eY(e.right._def,{...r,currentPath:[...r.currentPath,"allOf","1"]})].filter(e=>!!e),h=[],m.forEach(e=>{if((!("type"in e)||"string"!==e.type)&&"allOf"in e)h.push(...e.allOf);else{let t=e;if("additionalProperties"in e&&!1===e.additionalProperties){let{additionalProperties:r,...a}=e;t=a}h.push(t)}}),h.length?{allOf:h}:void 0;case"ZodTuple":return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((e,t)=>eY(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:eY(e.rest._def,{...r,currentPath:[...r.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,t)=>eY(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])};case"ZodRecord":return eG(e,r);case"ZodLiteral":let y;return"bigint"!=(y=typeof e.value)&&"number"!==y&&"boolean"!==y&&"string"!==y?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===y?"integer":y,const:e.value};case"ZodEnum":return{type:"string",enum:Array.from(e.values)};case"ZodNativeEnum":let g,v,b;return g=e.values,{type:1===(b=Array.from(new Set((v=Object.keys(e.values).filter(e=>"number"!=typeof g[g[e]]).map(e=>g[e])).map(e=>typeof e)))).length?"string"===b[0]?"string":"number":["string","number"],enum:v};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[eX[e.innerType._def.typeName],"null"]};let w=eY(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","0"]});return w&&{anyOf:[w,{type:"null"}]};case"ZodOptional":if(r.currentPath.toString()===(null==(l=r.propertyPath)?void 0:l.toString()))return eY(e.innerType._def,r);let E=eY(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","1"]});return E?{anyOf:[{not:{}},E]}:{};case"ZodMap":if("record"===r.mapStrategy)return eG(e,r);return{type:"array",maxItems:125,items:{type:"array",items:[eY(e.keyType._def,{...r,currentPath:[...r.currentPath,"items","items","0"]})||{},eY(e.valueType._def,{...r,currentPath:[...r.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let A;return A={type:"array",uniqueItems:!0,items:eY(e.valueType._def,{...r,currentPath:[...r.currentPath,"items"]})},e.minSize&&(A.minItems=e.minSize.value),e.maxSize&&(A.maxItems=e.maxSize.value),A;case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return eY(e.type._def,r);case"ZodEffects":return"input"===r.effectStrategy?eY(e.schema._def,r):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...eY(e.innerType._def,r),default:e.defaultValue()};case"ZodBranded":return eO(e,r);case"ZodReadonly":case"ZodCatch":return eY(e.innerType._def,r);case"ZodPipeline":if("input"===r.pipeStrategy)return eY(e.in._def,r);if("output"===r.pipeStrategy)return eY(e.out._def,r);let T=eY(e.in._def,{...r,currentPath:[...r.currentPath,"allOf","0"]}),x=eY(e.out._def,{...r,currentPath:[...r.currentPath,"allOf",T?"1":"0"]});return{allOf:[T,x].filter(e=>void 0!==e)};default:return}})(e,e.typeName,t),s="function"==typeof i?eY(i(),t):i;if(s&&e0(e,t,s),t.postProcess){let r=t.postProcess(s,e,t);return o.jsonSchema=s,r}return o.jsonSchema=s,s}var eQ=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:((e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")})(t.currentPath,e.path)};case"none":case"seen":if(e.path.length<t.currentPath.length&&e.path.every((e,r)=>t.currentPath[r]===e))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),{};return"seen"===t.$refStrategy?{}:void 0}},e0=(e,t,r)=>(e.description&&(r.description=e.description),r),e1=Symbol.for("vercel.ai.schema");function e2(e,{validate:t}={}){return{[e1]:!0,_type:void 0,get jsonSchema(){return"function"==typeof e&&(e=e()),e},validate:t}}function e4(e){var t;return null==e?e2({type:"object",properties:{},additionalProperties:!1}):"object"==typeof e&&null!==e&&e1 in e&&!0===e[e1]&&"jsonSchema"in e&&"validate"in e?e:"~standard"in e?"zod"===e["~standard"].vendor?e6(e):(t=e,e2(()=>{if(null==t["~standard"].jsonSchema)throw Error(`Standard schema vendor '${t["~standard"].vendor}' does not support JSON Schema conversion.`);return eS(t["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async e=>{let r=await t["~standard"].validate(e);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new i.TypeValidationError({value:e,cause:r.issues})}}})):e()}function e6(e,t){var r,a;let n;if("_zod"in e){let a;return a=null!=(r=null==t?void 0:t.useReferences)&&r,e2(()=>eS((0,l.toJSONSchema)(e,{target:"draft-7",io:"input",reused:a?"ref":"inline"})),{validate:async t=>{let r=await (0,s.safeParseAsync)(e,t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}return n=null!=(a=null==t?void 0:t.useReferences)&&a,e2(()=>((e,t)=>{var r;let a,n,o=(n=void 0!==(a="string"==typeof t?{...e$,name:t}:{...e$,...t}).name?[...a.basePath,a.definitionPath,a.name]:a.basePath,{...a,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(a.definitions).map(([e,t])=>[t._def,{def:t._def,path:[...a.basePath,a.definitionPath,e],jsonSchema:void 0}]))}),i="object"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>{var a;return{...e,[t]:null!=(a=eY(r._def,{...o,currentPath:[...o.basePath,o.definitionPath,t]},!0))?a:{}}},{}):void 0,s="string"==typeof t?t:(null==t?void 0:t.nameStrategy)==="title"||null==t?void 0:t.name,l=null!=(r=eY(e._def,void 0===s?o:{...o,currentPath:[...o.basePath,o.definitionPath,s]},!1))?r:{},u="object"==typeof t&&void 0!==t.name&&"title"===t.nameStrategy?t.name:void 0;void 0!==u&&(l.title=u);let c=void 0===s?i?{...l,[o.definitionPath]:i}:l:{$ref:[..."relative"===o.$refStrategy?[]:o.basePath,o.definitionPath,s].join("/"),[o.definitionPath]:{...i,[s]:l}};return c.$schema="http://json-schema.org/draft-07/schema#",c})(e,{$refStrategy:n?"root":"none"}),{validate:async t=>{let r=await e.safeParseAsync(t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}async function e9({value:e,schema:t,context:r}){let a=await e5({value:e,schema:t,context:r});if(!a.success)throw i.TypeValidationError.wrap({value:e,cause:a.error,context:r});return a.value}async function e5({value:e,schema:t,context:r}){let a=e4(t);try{if(null==a.validate)return{success:!0,value:e,rawValue:e};let t=await a.validate(e);if(t.success)return{success:!0,value:t.value,rawValue:e};return{success:!1,error:i.TypeValidationError.wrap({value:e,cause:t.error,context:r}),rawValue:e}}catch(t){return{success:!1,error:i.TypeValidationError.wrap({value:e,cause:t,context:r}),rawValue:e}}}async function e7({text:e,schema:t}){try{let r=ek(e);if(null==t)return r;return await e9({value:r,schema:t})}catch(t){if(i.JSONParseError.isInstance(t)||i.TypeValidationError.isInstance(t))throw t;throw new i.JSONParseError({text:e,cause:t})}}async function e3({text:e,schema:t}){try{let r=ek(e);if(null==t)return{success:!0,value:r,rawValue:r};return await e5({value:r,schema:t})}catch(t){return{success:!1,error:i.JSONParseError.isInstance(t)?t:new i.JSONParseError({text:e,cause:t}),rawValue:void 0}}}function e8({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new p).pipeThrough(new TransformStream({async transform({data:e},r){"[DONE]"!==e&&r.enqueue(await e3({text:e,schema:t}))}}))}async function te({provider:e,providerOptions:t,schema:r}){if((null==t?void 0:t[e])==null)return;let a=await e5({value:t[e],schema:r});if(!a.success)throw new i.InvalidArgumentError({argument:"providerOptions",message:`invalid ${e} provider options`,cause:a.error});return a.value}var tt=()=>globalThis.fetch;function tr(e){return e.replace(/[\r\n]/g,"").replace(/\\/g,"\\\\").replace(/"/g,'\\"')}var ta=async({url:e,headers:t={},parts:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:s=tt()})=>{let l,u,c,d,f=`ai-sdk-multipart-${eg()}`,p=Object.fromEntries(r.map(e=>{var t;return[e.name,"field"===e.type?e.value:`<file:${null!=(t=e.filename)?t:e.name}>`]})),m=(u=new TextEncoder,c=!1,d=new Set,{stream:E(async function*(){var e,t;for(let a of r){if(c)return;let r=`--${f}\r
14
+ ]`;continue}o+=n[e],"\\"===n[e]?i=!0:s&&"]"===n[e]?s=!1:s||"["!==n[e]||(s=!0)}try{new RegExp(o)}catch(r){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return o}function eG(e,t){var r,a,n,o,i,s;let l={type:"object",additionalProperties:null!=(r=eY(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))?r:t.allowedAdditionalProperties};if((null==(a=e.keyType)?void 0:a._def.typeName)==="ZodString"&&(null==(n=e.keyType._def.checks)?void 0:n.length)){let{type:r,...a}=eV(e.keyType._def,t);return{...l,propertyNames:a}}if((null==(o=e.keyType)?void 0:o._def.typeName)==="ZodEnum")return{...l,propertyNames:{enum:e.keyType._def.values}};if((null==(i=e.keyType)?void 0:i._def.typeName)==="ZodBranded"&&"ZodString"===e.keyType._def.type._def.typeName&&(null==(s=e.keyType._def.type._def.checks)?void 0:s.length)){let{type:r,...a}=eO(e.keyType._def,t);return{...l,propertyNames:a}}return l}var eX={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function eY(e,t,r=!1){var a;let n=t.seen.get(e);if(t.override){let o=null==(a=t.override)?void 0:a.call(t,e,t,n,r);if(o!==e_)return o}if(n&&!r){let e=eQ(n,t);if(void 0!==e)return e}let o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);let i=((e,t,r)=>{var a,n,o,i,s,l;switch(t){case"ZodString":return eV(e,r);case"ZodNumber":let u={type:"number"};if(!e.checks)return u;for(let t of e.checks)switch(t.kind){case"int":u.type="integer";break;case"min":t.inclusive?u.minimum=t.value:u.exclusiveMinimum=t.value;break;case"max":t.inclusive?u.maximum=t.value:u.exclusiveMaximum=t.value;break;case"multipleOf":u.multipleOf=t.value}return u;case"ZodObject":return function(e,t){let r={type:"object",properties:{}},a=[],n=e.shape();for(let e in n){let o=n[e];if(void 0===o||void 0===o._def)continue;let i=function(e){try{return e.isOptional()}catch(e){return!0}}(o),s=eY(o._def,{...t,currentPath:[...t.currentPath,"properties",e],propertyPath:[...t.currentPath,"properties",e]});void 0!==s&&(r.properties[e]=s,i||a.push(e))}a.length&&(r.required=a);let o=function(e,t){if("ZodNever"!==e.catchall._def.typeName)return eY(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return"strict"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==o&&(r.additionalProperties=o),r}(e,r);case"ZodBigInt":let c={type:"integer",format:"int64"};if(!e.checks)return c;for(let t of e.checks)switch(t.kind){case"min":t.inclusive?c.minimum=t.value:c.exclusiveMinimum=t.value;break;case"max":t.inclusive?c.maximum=t.value:c.exclusiveMaximum=t.value;break;case"multipleOf":c.multipleOf=t.value}return c;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function e(t,r,a){let n=null!=a?a:r.dateStrategy;if(Array.isArray(n))return{anyOf:n.map(a=>e(t,r,a))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var o=t;let i={type:"integer",format:"unix-time"};for(let e of o.checks)switch(e.kind){case"min":i.minimum=e.value;break;case"max":i.maximum=e.value}return i}}(e,r);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let d;return d={type:"array"},(null==(o=e.type)?void 0:o._def)&&(null==(s=null==(i=e.type)?void 0:i._def)?void 0:s.typeName)!=="ZodAny"&&(d.items=eY(e.type._def,{...r,currentPath:[...r.currentPath,"items"]})),e.minLength&&(d.minItems=e.minLength.value),e.maxLength&&(d.maxItems=e.maxLength.value),e.exactLength&&(d.minItems=e.exactLength.value,d.maxItems=e.exactLength.value),d;case"ZodUnion":case"ZodDiscriminatedUnion":let f,p=e.options instanceof Map?Array.from(e.options.values()):e.options;if(p.every(e=>e._def.typeName in eX&&(!e._def.checks||!e._def.checks.length))){let e=p.reduce((e,t)=>{let r=eX[t._def.typeName];return r&&!e.includes(r)?[...e,r]:e},[]);return{type:e.length>1?e:e[0]}}if(p.every(e=>"ZodLiteral"===e._def.typeName&&!e.description)){let e=p.reduce((e,t)=>{let r=typeof t._def.value;switch(r){case"string":case"number":case"boolean":return[...e,r];case"bigint":return[...e,"integer"];case"object":if(null===t._def.value)return[...e,"null"];default:return e}},[]);if(e.length===p.length){let t=e.filter((e,t,r)=>r.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:p.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(p.every(e=>"ZodEnum"===e._def.typeName))return{type:"string",enum:p.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return a=e,n=r,(f=(a.options instanceof Map?Array.from(a.options.values()):a.options).map((e,t)=>eY(e._def,{...n,currentPath:[...n.currentPath,"anyOf",`${t}`]})).filter(e=>!!e&&(!n.strictUnions||"object"==typeof e&&Object.keys(e).length>0))).length?{anyOf:f}:void 0;case"ZodIntersection":let m,h;return m=[eY(e.left._def,{...r,currentPath:[...r.currentPath,"allOf","0"]}),eY(e.right._def,{...r,currentPath:[...r.currentPath,"allOf","1"]})].filter(e=>!!e),h=[],m.forEach(e=>{if((!("type"in e)||"string"!==e.type)&&"allOf"in e)h.push(...e.allOf);else{let t=e;if("additionalProperties"in e&&!1===e.additionalProperties){let{additionalProperties:r,...a}=e;t=a}h.push(t)}}),h.length?{allOf:h}:void 0;case"ZodTuple":return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((e,t)=>eY(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:eY(e.rest._def,{...r,currentPath:[...r.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,t)=>eY(e._def,{...r,currentPath:[...r.currentPath,"items",`${t}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])};case"ZodRecord":return eG(e,r);case"ZodLiteral":let y;return"bigint"!=(y=typeof e.value)&&"number"!==y&&"boolean"!==y&&"string"!==y?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===y?"integer":y,const:e.value};case"ZodEnum":return{type:"string",enum:Array.from(e.values)};case"ZodNativeEnum":let g,v,w;return g=e.values,{type:1===(w=Array.from(new Set((v=Object.keys(e.values).filter(e=>"number"!=typeof g[g[e]]).map(e=>g[e])).map(e=>typeof e)))).length?"string"===w[0]?"string":"number":["string","number"],enum:v};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[eX[e.innerType._def.typeName],"null"]};let b=eY(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","0"]});return b&&{anyOf:[b,{type:"null"}]};case"ZodOptional":if(r.currentPath.toString()===(null==(l=r.propertyPath)?void 0:l.toString()))return eY(e.innerType._def,r);let E=eY(e.innerType._def,{...r,currentPath:[...r.currentPath,"anyOf","1"]});return E?{anyOf:[{not:{}},E]}:{};case"ZodMap":if("record"===r.mapStrategy)return eG(e,r);return{type:"array",maxItems:125,items:{type:"array",items:[eY(e.keyType._def,{...r,currentPath:[...r.currentPath,"items","items","0"]})||{},eY(e.valueType._def,{...r,currentPath:[...r.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let A;return A={type:"array",uniqueItems:!0,items:eY(e.valueType._def,{...r,currentPath:[...r.currentPath,"items"]})},e.minSize&&(A.minItems=e.minSize.value),e.maxSize&&(A.maxItems=e.maxSize.value),A;case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return eY(e.type._def,r);case"ZodEffects":return"input"===r.effectStrategy?eY(e.schema._def,r):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...eY(e.innerType._def,r),default:e.defaultValue()};case"ZodBranded":return eO(e,r);case"ZodReadonly":case"ZodCatch":return eY(e.innerType._def,r);case"ZodPipeline":if("input"===r.pipeStrategy)return eY(e.in._def,r);if("output"===r.pipeStrategy)return eY(e.out._def,r);let T=eY(e.in._def,{...r,currentPath:[...r.currentPath,"allOf","0"]}),x=eY(e.out._def,{...r,currentPath:[...r.currentPath,"allOf",T?"1":"0"]});return{allOf:[T,x].filter(e=>void 0!==e)};default:return}})(e,e.typeName,t),s="function"==typeof i?eY(i(),t):i;if(s&&e0(e,t,s),t.postProcess){let r=t.postProcess(s,e,t);return o.jsonSchema=s,r}return o.jsonSchema=s,s}var eQ=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:((e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")})(t.currentPath,e.path)};case"none":case"seen":if(e.path.length<t.currentPath.length&&e.path.every((e,r)=>t.currentPath[r]===e))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),{};return"seen"===t.$refStrategy?{}:void 0}},e0=(e,t,r)=>(e.description&&(r.description=e.description),r),e1=Symbol.for("vercel.ai.schema");function e2(e,{validate:t}={}){return{[e1]:!0,_type:void 0,get jsonSchema(){return"function"==typeof e&&(e=e()),e},validate:t}}function e4(e){var t;return null==e?e2({type:"object",properties:{},additionalProperties:!1}):"object"==typeof e&&null!==e&&e1 in e&&!0===e[e1]&&"jsonSchema"in e&&"validate"in e?e:"~standard"in e?"zod"===e["~standard"].vendor?e6(e):(t=e,e2(()=>{if(null==t["~standard"].jsonSchema)throw Error(`Standard schema vendor '${t["~standard"].vendor}' does not support JSON Schema conversion.`);return eS(t["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async e=>{let r=await t["~standard"].validate(e);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new i.TypeValidationError({value:e,cause:r.issues})}}})):e()}function e6(e,t){var r,a;let n;if("_zod"in e){let a;return a=null!=(r=null==t?void 0:t.useReferences)&&r,e2(()=>eS((0,l.toJSONSchema)(e,{target:"draft-7",io:"input",reused:a?"ref":"inline"})),{validate:async t=>{let r=await (0,s.safeParseAsync)(e,t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}return n=null!=(a=null==t?void 0:t.useReferences)&&a,e2(()=>((e,t)=>{var r;let a,n,o=(n=void 0!==(a="string"==typeof t?{...e$,name:t}:{...e$,...t}).name?[...a.basePath,a.definitionPath,a.name]:a.basePath,{...a,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(a.definitions).map(([e,t])=>[t._def,{def:t._def,path:[...a.basePath,a.definitionPath,e],jsonSchema:void 0}]))}),i="object"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,r])=>{var a;return{...e,[t]:null!=(a=eY(r._def,{...o,currentPath:[...o.basePath,o.definitionPath,t]},!0))?a:{}}},{}):void 0,s="string"==typeof t?t:(null==t?void 0:t.nameStrategy)==="title"||null==t?void 0:t.name,l=null!=(r=eY(e._def,void 0===s?o:{...o,currentPath:[...o.basePath,o.definitionPath,s]},!1))?r:{},u="object"==typeof t&&void 0!==t.name&&"title"===t.nameStrategy?t.name:void 0;void 0!==u&&(l.title=u);let c=void 0===s?i?{...l,[o.definitionPath]:i}:l:{$ref:[..."relative"===o.$refStrategy?[]:o.basePath,o.definitionPath,s].join("/"),[o.definitionPath]:{...i,[s]:l}};return c.$schema="http://json-schema.org/draft-07/schema#",c})(e,{$refStrategy:n?"root":"none"}),{validate:async t=>{let r=await e.safeParseAsync(t);return r.success?{success:!0,value:r.data}:{success:!1,error:r.error}}})}async function e9({value:e,schema:t,context:r}){let a=await e5({value:e,schema:t,context:r});if(!a.success)throw i.TypeValidationError.wrap({value:e,cause:a.error,context:r});return a.value}async function e5({value:e,schema:t,context:r}){let a=e4(t);try{if(null==a.validate)return{success:!0,value:e,rawValue:e};let t=await a.validate(e);if(t.success)return{success:!0,value:t.value,rawValue:e};return{success:!1,error:i.TypeValidationError.wrap({value:e,cause:t.error,context:r}),rawValue:e}}catch(t){return{success:!1,error:i.TypeValidationError.wrap({value:e,cause:t,context:r}),rawValue:e}}}async function e7({text:e,schema:t}){try{let r=ek(e);if(null==t)return r;return await e9({value:r,schema:t})}catch(t){if(i.JSONParseError.isInstance(t)||i.TypeValidationError.isInstance(t))throw t;throw new i.JSONParseError({text:e,cause:t})}}async function e3({text:e,schema:t}){try{let r=ek(e);if(null==t)return{success:!0,value:r,rawValue:r};return await e5({value:r,schema:t})}catch(t){return{success:!1,error:i.JSONParseError.isInstance(t)?t:new i.JSONParseError({text:e,cause:t}),rawValue:void 0}}}function e8({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new p).pipeThrough(new TransformStream({async transform({data:e},r){"[DONE]"!==e&&r.enqueue(await e3({text:e,schema:t}))}}))}async function te({provider:e,providerOptions:t,schema:r}){if((null==t?void 0:t[e])==null)return;let a=await e5({value:t[e],schema:r});if(!a.success)throw new i.InvalidArgumentError({argument:"providerOptions",message:`invalid ${e} provider options`,cause:a.error});return a.value}var tt=()=>globalThis.fetch;function tr(e){return e.replace(/[\r\n]/g,"").replace(/\\/g,"\\\\").replace(/"/g,'\\"')}var ta=async({url:e,headers:t={},parts:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:s=tt()})=>{let l,u,c,d,f=`ai-sdk-multipart-${eg()}`,p=Object.fromEntries(r.map(e=>{var t;return[e.name,"field"===e.type?e.value:`<file:${null!=(t=e.filename)?t:e.name}>`]})),m=(u=new TextEncoder,c=!1,d=new Set,{stream:E(async function*(){var e,t;for(let a of r){if(c)return;let r=`--${f}\r
15
15
  Content-Disposition: form-data; name="${tr(a.name)}"`;if("field"===a.type){yield u.encode(`${r}\r
16
16
  \r
17
17
  ${a.value}\r
@@ -19,8 +19,8 @@ ${a.value}\r
19
19
  Content-Type: ${o}\r
20
20
  \r
21
21
  `),a.content instanceof Uint8Array)yield a.content;else{let e=a.content.getReader();l=e,d.add(a.content);let t=!1;try{for(;;){let{done:r,value:a}=await e.read();if(r||c){t=r;break}yield a}}finally{l=void 0,t||await e.cancel().catch(()=>{}),e.releaseLock()}if(c)return}yield u.encode("\r\n")}yield u.encode(`--${f}--\r
22
- `)}()),async dispose(e){if(c)return;c=!0;let t=l;for(let a of(null!=t&&await t.cancel(e).catch(()=>{}),r))"file"!==a.type||a.content instanceof Uint8Array||d.has(a.content)||await a.content.cancel(e).catch(()=>{})}});try{let r={method:"POST",headers:L({...t,"Content-Type":`multipart/form-data; boundary=${f}`},`ai-sdk/provider-utils/${N}`,_()),body:m.stream,duplex:"half",signal:o},l=await s(e,r),u=I(l);if(!l.ok){let t;try{t=await a({response:l,url:e,requestBodyValues:p})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:p})}throw t.value}try{return await n({response:l,url:e,requestBodyValues:p})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:p})}}catch(t){throw await m.dispose(t),j({error:t,url:e,requestBodyValues:p})}},tn=()=>globalThis.fetch,to=async({url:e,headers:t,body:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i})=>await ts({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i}),ti=async({url:e,headers:t,formData:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i})=>await ts({url:e,headers:t,body:{content:r,values:Object.fromEntries(r.entries())},failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i}),ts=async({url:e,headers:t={},body:r,successfulResponseHandler:a,failedResponseHandler:n,abortSignal:o,fetch:s=tn()})=>{try{let l=await s(e,{method:"POST",headers:L(t,`ai-sdk/provider-utils/${N}`,_()),body:r.content,signal:o}),u=I(l);if(!l.ok){let t;try{t=await n({response:l,url:e,requestBodyValues:r.values})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:r.values})}throw t.value}try{return await a({response:l,url:e,requestBodyValues:r.values})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:r.values})}}catch(t){throw j({error:t,url:e,requestBodyValues:r.values})}};function tl(e){return e}async function tu(e){return"function"==typeof e&&(e=e()),Promise.resolve(e)}async function tc(e,{maxRetries:t,delayInMs:r,backoffFactor:a,abortSignal:n,shouldRetry:o,getDelayInMs:s,createRetryError:l},u=[]){try{return await e()}catch(p){if($(p)||0===t)throw p;let c=(0,i.getErrorMessage)(p),d=[...u,p],f=d.length;if(f>t)throw l({message:`Failed after ${f} attempts. Last error: ${c}`,reason:"maxRetriesExceeded",errors:d});if(await o(p)&&f<=t)return await y(s({error:p,exponentialBackoffDelay:r}),{abortSignal:n}),tc(e,{maxRetries:t,delayInMs:a*r,backoffFactor:a,abortSignal:n,shouldRetry:o,getDelayInMs:s,createRetryError:l},d);if(1===f)throw p;throw l({message:`Failed after ${f} attempts with non-retryable error: '${c}'`,reason:"errorNotRetryable",errors:d})}}var td=new TextDecoder;function tf({stream:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:n}){let o=e.getReader(),s=!1,l=()=>{s||(o.releaseLock(),s=!0)};return new ReadableStream({async pull(e){try{let{done:t,value:r}=await o.read();t?(l(),e.close()):e.enqueue(r)}catch(o){if(l(),$(o))return void e.error(o);e.error(j({error:new i.APICallError({message:"Failed to process successful response",cause:o,statusCode:a,url:t,responseHeaders:n,requestBodyValues:r}),url:t,requestBodyValues:r}))}},async cancel(e){try{await o.cancel(e)}finally{l()}}})}async function tp({response:e,url:t}){return td.decode(await ep({response:e,url:t}))}async function*tm({stream:e,schema:t}){let r=e.getReader(),a=new TextDecoder,n="",o=!1;try{for(;;){let{done:e,value:i}=await r.read();if(e){o=!0,n+=a.decode();break}let s=(n+=a.decode(i,{stream:!0})).indexOf("\n");for(;-1!==s;){let e=n.slice(0,s).replace(/\r$/,"");n=n.slice(s+1),e.trim().length>0&&(yield await e7({text:e,schema:t})),s=n.indexOf("\n")}}let e=n.replace(/\r$/,"");e.trim().length>0&&(yield await e7({text:e,schema:t}))}finally{o||await r.cancel().catch(()=>{}),r.releaseLock()}}function th(e){if(null==e)return!0;let t=typeof e;return"string"===t||"number"===t||"boolean"===t||"function"!==t&&"symbol"!==t&&"bigint"!==t&&(Array.isArray(e)?e.every(th):Object.getPrototypeOf(e)===Object.prototype&&Object.values(e).every(th))}var ty="AI_SerializationError",tg=`vercel.ai.error.${ty}`,tv=Symbol.for(tg),tb=class extends(o=i.AISDKError,n=tv,o){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:ty,message:e,cause:t}),this[n]=!0}static isInstance(e){return i.AISDKError.hasMarker(e,tg)}},tw=class{constructor(e,t={}){var r,a;this.toolCalls=new Set,this.toolCallsById=new Map,this.toolCallsByIndex=new Map,this.controller=e,this._generateId=null!=(r=t.generateId)?r:eg,this.typeValidation=null!=(a=t.typeValidation)?a:"none",this.extractMetadata=t.extractMetadata,this.buildToolCallProviderMetadata=t.buildToolCallProviderMetadata}processDelta(e){let{id:t,index:r}=e,a=null!=t&&t.length>0?this.toolCallsById.get(t):null!=r?this.toolCallsByIndex.get(r):this.latestToolCall;null==a?a=this.processNewToolCall(e):this.processExistingToolCall(a,e),null!=r&&this.toolCallsByIndex.set(r,a),this.latestToolCall=a}flush(){for(let e of this.toolCalls)e.hasFinished||this.finishToolCall(e)}processNewToolCall(e){var t,r,a;if("required"===this.typeValidation){if("function"!==e.type)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function' type."})}else if("if-present"===this.typeValidation&&null!=e.type&&"function"!==e.type)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function' type."});if(null==e.id)throw new i.InvalidResponseDataError({data:e,message:"Expected 'id' to be a string."});if((null==(t=e.function)?void 0:t.name)==null)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function.name' to be a string."});this.controller.enqueue({type:"tool-input-start",id:e.id,toolName:e.function.name});let n=null==(r=this.extractMetadata)?void 0:r.call(this,e),o={id:e.id,type:"function",function:{name:e.function.name,arguments:null!=(a=e.function.arguments)?a:""},hasFinished:!1,metadata:n};return this.toolCalls.add(o),o.id.length>0&&this.toolCallsById.set(o.id,o),o.function.arguments.length>0&&this.controller.enqueue({type:"tool-input-delta",id:o.id,delta:o.function.arguments}),o}processExistingToolCall(e,t){var r;e.hasFinished||(null==(r=t.function)?void 0:r.arguments)!=null&&(e.function.arguments+=t.function.arguments,this.controller.enqueue({type:"tool-input-delta",id:e.id,delta:t.function.arguments}))}finishToolCall(e){var t,r;this.controller.enqueue({type:"tool-input-end",id:e.id});let a=null==(t=this.buildToolCallProviderMetadata)?void 0:t.call(this,e.metadata);this.controller.enqueue({type:"tool-call",toolCallId:null!=(r=e.id)?r:this._generateId(),toolName:e.function.name,input:e.function.arguments,...a?{providerMetadata:a}:{}}),e.hasFinished=!0}};function tE(e){return"string"==typeof e}function tA(e){return"number"==typeof e}function tT(e,t){return void 0===e||t(e)}function tx(e){return ew(e)&&tE(e.type)}function tP(e){return ew(e)&&tE(e.text)&&tA(e.startSecond)&&tA(e.endSecond)}async function*tk({tool:e,input:t,options:r}){let a=e.execute(t,r);if(null!=a&&"function"==typeof a[Symbol.asyncIterator]){let e;for await(let t of a)e=t,yield{type:"preliminary",output:t};yield{type:"final",output:e}}else yield{type:"final",output:await a}}e.s(["DEFAULT_MAX_DOWNLOAD_SIZE",0,0x80000000,"DelayedPromise",0,S,"DownloadError",0,Q,"EXPERIMENTAL_EMBEDDING_MODEL_MAX_INPUT_BYTES_PER_CALL",0,eh,"EXPERIMENTAL_TRANSCRIPTION_STREAM_AUDIO_DONE_FRAME_TYPE",0,"transcription-stream.audio-done","EXPERIMENTAL_TRANSCRIPTION_STREAM_START_FRAME_TYPE",0,"transcription-stream.start","StreamingToolCallTracker",0,tw,"asArray",0,function(e){return void 0===e?[]:Array.isArray(e)?e:[e]},"asSchema",0,e4,"cancelResponseBody",0,K,"combineHeaders",0,function(...e){return e.reduce((e,t)=>({...e,...null!=t?t:{}}),{})},"connectToWebSocket",0,function({url:e,protocols:t,headers:r,webSocket:a,abortSignal:n,onOpen:o,onMessageText:i,onProcessingError:s,onSocketError:l,onClose:u,onAbort:c}){var d,f;let p,m,h=e=>{null!=m&&(null==n||n.removeEventListener("abort",m),m=void 0);try{null==p||p.close(e)}catch(e){}};if(null==n?void 0:n.aborted)return null==c||c(null!=(d=n.reason)?d:Error("Aborted")),{socket:void 0,close:h};try{p=new(function(e){let t=null!=e?e:globalThis.WebSocket;if(null==t)throw Error("No WebSocket implementation available.");return t}(a))(e,t,{headers:(f=null!=r?r:{},Object.fromEntries(Object.entries(f).filter(([e,t])=>null!=t)))})}catch(e){return s(e),{socket:void 0,close:h}}null!=n&&null!=c&&(m=()=>{var e;return c(null!=(e=n.reason)?e:Error("Aborted"))},n.addEventListener("abort",m,{once:!0}));let y=p;p.onopen=()=>{try{null==o||o(y)}catch(e){s(e)}};let g=Promise.resolve();return p.onmessage=e=>{g=g.then(()=>b(e.data)).then(e=>i(e)).catch(s)},p.onerror=()=>{g=g.then(()=>null==l?void 0:l()).catch(s)},p.onclose=e=>{let t="number"==typeof(null==e?void 0:e.code)?e.code:void 0,r="string"==typeof(null==e?void 0:e.reason)?e.reason:void 0;g=g.then(()=>null==u?void 0:u({code:t,reason:r})).catch(s)},{socket:p,close:h}},"convertAsyncIteratorToReadableStream",0,E,"convertBase64ToUint8Array",0,x,"convertImageModelFileToDataUri",0,function(e){return"url"===e.type?e.url:`data:${e.mediaType};base64,${"string"==typeof e.data?e.data:P(e.data)}`},"convertInlineFileDataToUint8Array",0,function(e){if("stream"===e.type){let t=new i.UnsupportedFunctionalityError({functionality:"streaming file upload"});throw e.stream.cancel(t).catch(()=>{}),t}return"text"===e.type?new TextEncoder().encode(e.text):e.data instanceof Uint8Array?e.data:e.data instanceof ArrayBuffer?new Uint8Array(e.data):x(e.data)},"convertToBase64",0,function(e){return e instanceof Uint8Array?P(e):e},"convertToFormData",0,function(e,t={}){let{useArrayBrackets:r=!0}=t,a=new FormData;for(let[t,n]of Object.entries(e))if(null!=n){if(Array.isArray(n)){if(1===n.length){a.append(t,n[0]);continue}let e=r?`${t}[]`:t;for(let t of n)a.append(e,t);continue}a.append(t,n)}return a},"convertUint8ArrayToBase64",0,P,"createBinaryResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e);if(!e.body)throw new i.APICallError({message:"Response body is empty",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:void 0});try{let t=await e.arrayBuffer();return{responseHeaders:a,value:new Uint8Array(t)}}catch(n){throw new i.APICallError({message:"Failed to read response as array buffer",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:void 0,cause:n})}},"createBinaryStreamResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e);if(null==e.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:a,value:tf({stream:e.body,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a})}},"createEventSourceResponseHandler",0,e=>async({response:t,url:r,requestBodyValues:a})=>{let n=I(t);if(null==t.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:n,value:e8({stream:tf({stream:t.body,url:r,requestBodyValues:a,statusCode:t.status,responseHeaders:n}),schema:e})}},"createIdGenerator",0,ey,"createJsonErrorResponseHandler",0,({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:a,url:n,requestBodyValues:o})=>{let s=await tp({response:a,url:n}),l=I(a);if(""===s.trim())return{responseHeaders:l,value:new i.APICallError({message:a.statusText,url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,isRetryable:null==r?void 0:r(a)})};try{let u=await e7({text:s,schema:e});return{responseHeaders:l,value:new i.APICallError({message:t(u),url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,data:u,isRetryable:null==r?void 0:r(a,u)})}}catch(e){return{responseHeaders:l,value:new i.APICallError({message:a.statusText,url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,isRetryable:null==r?void 0:r(a)})}}},"createJsonLinesResponseHandler",0,e=>async({response:t})=>{let r=I(t);if(null==t.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:r,value:tm({stream:t.body,schema:e})}},"createJsonResponseHandler",0,e=>async({response:t,url:r,requestBodyValues:a})=>{let n=await tp({response:t,url:r}),o=await e3({text:n,schema:e}),s=I(t);if(!o.success)throw new i.APICallError({message:"Invalid JSON response",cause:o.error,statusCode:t.status,responseHeaders:s,responseBody:n,url:r,requestBodyValues:a});return{responseHeaders:s,value:o.value,rawValue:o.rawValue}},"createLanguageModelResponseMetadata",0,function({id:e,model:t,created:r}){return{id:null!=e?e:void 0,modelId:null!=t?t:void 0,timestamp:null!=r?new Date(1e3*r):void 0}},"createNullLanguageModelUsage",0,function(){return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0}},"createProviderDefinedToolFactory",0,function({id:e,inputSchema:t}){return({execute:r,outputSchema:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l,...u})=>tl({type:"provider",isProviderExecuted:!1,id:e,args:u,inputSchema:t,outputSchema:a,execute:r,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l})},"createProviderDefinedToolFactoryWithOutputSchema",0,function({id:e,inputSchema:t,outputSchema:r}){return({execute:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l,...u})=>tl({type:"provider",isProviderExecuted:!1,id:e,args:u,inputSchema:t,outputSchema:r,execute:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l})},"createProviderExecutedToolFactory",0,function({id:e,inputSchema:t,outputSchema:r,supportsDeferredResults:a}){return({onInputStart:n,onInputDelta:o,onInputAvailable:i,...s})=>tl({type:"provider",isProviderExecuted:!0,id:e,args:s,inputSchema:t,outputSchema:r,onInputStart:n,onInputDelta:o,onInputAvailable:i,supportsDeferredResults:a})},"createProviderStreamError",0,function({message:e,type:t,code:r,statusCode:a,isRetryable:n,data:o}){let i={message:e,type:t,code:r,statusCode:a,isRetryable:n,data:o};return Object.defineProperty(i,k,{value:!0}),i},"createStatusCodeErrorResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e),n=await tp({response:e,url:t});return{responseHeaders:a,value:new i.APICallError({message:e.statusText,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:n})}},"createToolNameMapping",0,function({tools:e=[],providerToolNames:t}){let r={},a={};for(let n of e)if("provider"===n.type&&n.id in t){let e=t[n.id];r[n.name]=e,a[e]=n.name}return{toProviderToolName:e=>{var t;return null!=(t=r[e])?t:e},toCustomToolName:e=>{var t;return null!=(t=a[e])?t:e}}},"delay",0,y,"deleteFromApi",0,F,"detectMediaType",0,H,"downloadBlob",0,em,"dynamicTool",0,function(e){return{...e,type:"dynamic"}},"executeTool",0,tk,"experimental_getToolCaller",0,function(e){return null==e?void 0:e.experimental_toolCaller},"experimental_parseTranscriptionStreamPart",0,function(e){let t;try{t=ek(e)}catch(e){return}if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t;switch(r.type){case"stream-start":return Array.isArray(r.warnings)&&r.warnings.every(tx)?r:void 0;case"transcript-delta":return tE(r.delta)&&tT(r.id,tE)&&tT(r.providerMetadata,ew)?r:void 0;case"transcript-partial":return tE(r.text)&&tT(r.id,tE)&&tT(r.startSecond,tA)&&tT(r.durationInSeconds,tA)&&tT(r.channelIndex,tA)&&tT(r.providerMetadata,ew)?r:void 0;case"transcript-final":return tE(r.text)&&tT(r.id,tE)&&tT(r.startSecond,tA)&&tT(r.endSecond,tA)&&tT(r.channelIndex,tA)&&tT(r.providerMetadata,ew)?r:void 0;case"finish":return tE(r.text)&&Array.isArray(r.segments)&&r.segments.every(tP)&&tT(r.language,tE)&&tT(r.durationInSeconds,tA)&&tT(r.providerMetadata,ew)?r:void 0;case"response-metadata":{if(!(tT(r.modelId,tE)&&tT(r.headers,ew)))return;let e=r.timestamp;if(null==e)return{...r,timestamp:void 0};if("string"!=typeof e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:{...r,timestamp:t}}case"raw":return"rawValue"in r?r:void 0;case"error":return"error"in r?r:void 0;default:return}},"experimental_toolCaller",0,function(e,t){return Object.defineProperty({...e},"experimental_toolCaller",{value:t})},"extractResponseHeaders",0,I,"fetchWithValidatedRedirects",0,ef,"filterNullable",0,function(...e){return e.filter(e=>null!=e)},"generateId",0,eg,"getFromApi",0,ev,"getRuntimeEnvironmentUserAgent",0,_,"getTopLevelMediaType",0,W,"isAbortError",0,$,"isBuffer",0,eb,"isCustomReasoning",0,function(e){return void 0!==e&&"provider-default"!==e},"isExecutableTool",0,function(e){return null!=e&&"function"==typeof e.execute},"isFullMediaType",0,J,"isNonNullable",0,function(e){return null!=e},"isProviderReference",0,function(e){return"object"==typeof e&&null!==e&&!(e instanceof Uint8Array)&&!(e instanceof URL)&&!(e instanceof ArrayBuffer)&&!eb(e)&&!("type"in e)},"isProviderStreamError",0,function(e){return"object"==typeof e&&null!=e&&!0===e[k]},"isRecord",0,ew,"isSameOrigin",0,ee,"isUrlSupported",0,function({mediaType:e,url:t,supportedUrls:r}){t=t.toLowerCase();let a=!(e=e.toLowerCase()).includes("/");return Object.entries(r).map(([e,t])=>{let r=e.toLowerCase();return"*"===r||"*/*"===r?{mediaTypePrefix:"",regexes:t}:{mediaTypePrefix:r.replace(/\*/,""),regexes:t}}).filter(({mediaTypePrefix:t})=>""===t||(a?`${e}/`===t:e.startsWith(t))).flatMap(({regexes:e})=>e).some(e=>(function(e,t){if(!e.global&&!e.sticky)return e.test(t);let r=e.lastIndex;e.lastIndex=0;try{return e.test(t)}finally{e.lastIndex=r}})(e,t))},"jsonSchema",0,e2,"lazySchema",0,function(e){let t;return()=>(null==t&&(t=e()),t)},"loadApiKey",0,function({apiKey:e,environmentVariableName:t,apiKeyParameterName:r="apiKey",description:a}){if("string"==typeof e)return e;if(null!=e)throw new i.LoadAPIKeyError({message:`${a} API key must be a string.`});if("u"<typeof process)throw new i.LoadAPIKeyError({message:`${a} API key is missing. Pass it using the '${r}' parameter. Environment variables are not supported in this environment.`});if(null==(e=process.env[t]))throw new i.LoadAPIKeyError({message:`${a} API key is missing. Pass it using the '${r}' parameter or the ${t} environment variable.`});if("string"!=typeof e)throw new i.LoadAPIKeyError({message:`${a} API key must be a string. The value of the ${t} environment variable is not a string.`});return e},"loadOptionalSetting",0,function({settingValue:e,environmentVariableName:t}){return"string"==typeof e?e:null!=e||"u"<typeof process?void 0:null!=(e=process.env[t])&&"string"==typeof e?e:void 0},"mapReasoningToProviderBudget",0,function({reasoning:e,maxOutputTokens:t,maxReasoningBudget:r,minReasoningBudget:a=1024,budgetPercentages:n=eE,warnings:o}){let i=n[e];return null==i?void o.push({type:"unsupported",feature:"reasoning",details:`reasoning "${e}" is not supported by this model.`}):Math.min(r,Math.max(a,Math.round(t*i)))},"mapReasoningToProviderEffort",0,function({reasoning:e,effortMap:t,warnings:r}){let a=t[e];return null==a?void r.push({type:"unsupported",feature:"reasoning",details:`reasoning "${e}" is not supported by this model.`}):(a!==e&&r.push({type:"compatibility",feature:"reasoning",details:`reasoning "${e}" is not directly supported by this model. mapped to effort "${a}".`}),a)},"mediaTypeToExtension",0,function(e){var t;let[r,a=""]=e.toLowerCase().split("/");return null!=(t=({mpeg:"mp3","x-wav":"wav",opus:"ogg",mp4:"m4a","x-m4a":"m4a"})[a])?t:a},"normalizeBatchRequestCounts",0,function({total:e,pending:t,completed:r,failed:a}){if(eA(e)&&eA(t)&&eA(r)&&eA(a)&&t+r+a===e)return{total:e,pending:t,completed:r,failed:a}},"normalizeHeaders",0,R,"parseJSON",0,e7,"parseJsonEventStream",0,e8,"parseProviderOptions",0,te,"postFormDataToApi",0,ti,"postJsonToApi",0,to,"postMultipartStreamToApi",0,ta,"postToApi",0,ts,"readResponseWithSizeLimit",0,ep,"resolve",0,tu,"resolveFullMediaType",0,function({part:e}){if(J(e.mediaType))return e.mediaType;if("data"===e.data.type){let t=H({data:e.data.data,topLevelType:W(e.mediaType)});if(t)return t;throw new i.UnsupportedFunctionalityError({functionality:`file of media type "${e.mediaType}" must specify subtype since it could not be auto-detected`})}throw new i.UnsupportedFunctionalityError({functionality:`file of media type "${e.mediaType}" must specify subtype since it is not passed as inline bytes`})},"resolveProviderReference",0,function({reference:e,provider:t}){let r=e[t];if(null!=r)return r;throw new i.NoSuchProviderReferenceError({provider:t,reference:e})},"retryWithExponentialBackoff",0,({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:a,shouldRetry:n,getDelayInMs:o=({exponentialBackoffDelay:e})=>e,createRetryError:i=({message:e})=>Error(e)})=>async s=>tc(s,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:a,shouldRetry:n,getDelayInMs:o,createRetryError:i}),"safeParseJSON",0,e3,"safeValidateTypes",0,e5,"secureJsonParse",0,ek,"serializeModelOptions",0,function(e){let t={};for(let[r,a]of Object.entries(e.config))if("headers"===r){let e=function(e){let t=e;if("function"==typeof e&&(t=e()),t instanceof Promise)throw new tb({message:"Cannot serialize asynchronous model options."});return t}(a);th(e)&&(t[r]=e)}else th(a)&&(t[r]=a);return{modelId:e.modelId,config:t}},"toWebSocketUrl",0,function(e){let t=new URL(e);return"http:"===t.protocol?t.protocol="ws:":"https:"===t.protocol&&(t.protocol="wss:"),t},"tool",0,tl,"validateBaseURL",0,function(e){if((null==e?void 0:e.trim())==="")throw new i.InvalidArgumentError({argument:"baseURL",message:"baseURL must be a non-empty string."});return e},"validateDownloadUrl",0,et,"validateTypes",0,e9,"waitForWebSocketBufferDrain",0,w,"withUserAgentSuffix",0,L,"withoutTrailingSlash",0,function(e){return null==e?void 0:e.replace(/\/$/,"")},"zodSchema",0,e6],691296)},296194,e=>{"use strict";var t,r,a,n,o,i,s,l,u,c,d,f,p,m,h,y,g,v,b,w,E,A,T,x,P,k,S,I,_,$,O="vercel.ai.error",C=Symbol.for(O),j=class e extends(r=Error,t=C,r){constructor({name:e,message:r,cause:a}){super(r),this[t]=!0,this.name=e,this.cause=a}static isInstance(t){return e.hasMarker(t,O)}static hasMarker(e,t){let r=Symbol.for(t);return null!=e&&"object"==typeof e&&r in e&&"boolean"==typeof e[r]&&!0===e[r]}},N="AI_APICallError",R=`vercel.ai.error.${N}`,L=Symbol.for(R),M=class extends(n=j,a=L,n){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:o,responseBody:i,cause:s,isRetryable:l=null!=n&&(408===n||409===n||429===n||n>=500),data:u}){super({name:N,message:e,cause:s}),this[a]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=o,this.responseBody=i,this.isRetryable=l,this.data=u}static isInstance(e){return j.hasMarker(e,R)}},F="AI_EmptyResponseBodyError",B=`vercel.ai.error.${F}`,Z=Symbol.for(B),U=class extends(i=j,o=Z,i){constructor({message:e="Empty response body"}={}){super({name:F,message:e}),this[o]=!0}static isInstance(e){return j.hasMarker(e,B)}};function D(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.toString():JSON.stringify(e)}var z="AI_InvalidArgumentError",V=`vercel.ai.error.${z}`,q=Symbol.for(V),H=class extends(l=j,s=q,l){constructor({message:e,cause:t,argument:r}){super({name:z,message:e,cause:t}),this[s]=!0,this.argument=r}static isInstance(e){return j.hasMarker(e,V)}},W="AI_InvalidPromptError",J=`vercel.ai.error.${W}`,K=Symbol.for(J),G=class extends(c=j,u=K,c){constructor({prompt:e,message:t,cause:r}){super({name:W,message:`Invalid prompt: ${t}`,cause:r}),this[u]=!0,this.prompt=e}static isInstance(e){return j.hasMarker(e,J)}},X="AI_InvalidResponseDataError",Y=`vercel.ai.error.${X}`,Q=Symbol.for(Y),ee=class extends(f=j,d=Q,f){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:X,message:t}),this[d]=!0,this.data=e}static isInstance(e){return j.hasMarker(e,Y)}},et="AI_JSONParseError",er=`vercel.ai.error.${et}`,ea=Symbol.for(er),en=class extends(m=j,p=ea,m){constructor({text:e,cause:t}){super({name:et,message:`JSON parsing failed: Text: ${e}.
23
- Error message: ${D(t)}`,cause:t}),this[p]=!0,this.text=e}static isInstance(e){return j.hasMarker(e,er)}},eo="AI_LoadAPIKeyError",ei=`vercel.ai.error.${eo}`,es=Symbol.for(ei),el=class extends(y=j,h=es,y){constructor({message:e}){super({name:eo,message:e}),this[h]=!0}static isInstance(e){return j.hasMarker(e,ei)}},eu="AI_LoadSettingError",ec=`vercel.ai.error.${eu}`,ed=Symbol.for(ec),ef=class extends(v=j,g=ed,v){constructor({message:e}){super({name:eu,message:e}),this[g]=!0}static isInstance(e){return j.hasMarker(e,ec)}},ep="AI_NoContentGeneratedError",em=`vercel.ai.error.${ep}`,eh=Symbol.for(em),ey=class extends(w=j,b=eh,w){constructor({message:e="No content generated."}={}){super({name:ep,message:e}),this[b]=!0}static isInstance(e){return j.hasMarker(e,em)}},eg="AI_NoSuchModelError",ev=`vercel.ai.error.${eg}`,eb=Symbol.for(ev),ew=class extends(A=j,E=eb,A){constructor({errorName:e=eg,modelId:t,modelType:r,message:a=`No such ${r}: ${t}`}){super({name:e,message:a}),this[E]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return j.hasMarker(e,ev)}},eE="AI_NoSuchProviderReferenceError",eA=`vercel.ai.error.${eE}`,eT=Symbol.for(eA),ex=class extends(x=j,T=eT,x){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:eE,message:r}),this[T]=!0,this.provider=e,this.reference=t}static isInstance(e){return j.hasMarker(e,eA)}},eP="AI_TooManyEmbeddingValuesForCallError",ek=`vercel.ai.error.${eP}`,eS=Symbol.for(ek),eI=class extends(k=j,P=eS,k){constructor(e){super({name:eP,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`}),this[P]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return j.hasMarker(e,ek)}},e_="AI_TypeValidationError",e$=`vercel.ai.error.${e_}`,eO=Symbol.for(e$),eC=class e extends(I=j,S=eO,I){constructor({value:e,cause:t,context:r}){let a="Type validation failed";if((null==r?void 0:r.field)&&(a+=` for ${r.field}`),(null==r?void 0:r.entityName)||(null==r?void 0:r.entityId)){a+=" (";const e=[];r.entityName&&e.push(r.entityName),r.entityId&&e.push(`id: "${r.entityId}"`),a+=e.join(", "),a+=")"}super({name:e_,message:`${a}: Value: ${JSON.stringify(e)}.
24
- Error message: ${D(t)}`,cause:t}),this[S]=!0,this.value=e,this.context=r}static isInstance(e){return j.hasMarker(e,e$)}static wrap({value:t,cause:r,context:a}){var n,o,i;return e.isInstance(r)&&r.value===t&&(null==(n=r.context)?void 0:n.field)===(null==a?void 0:a.field)&&(null==(o=r.context)?void 0:o.entityName)===(null==a?void 0:a.entityName)&&(null==(i=r.context)?void 0:i.entityId)===(null==a?void 0:a.entityId)?r:new e({value:t,cause:r,context:a})}},ej="AI_UnsupportedFunctionalityError",eN=`vercel.ai.error.${ej}`,eR=Symbol.for(eN),eL=class extends($=j,_=eR,$){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:ej,message:t}),this[_]=!0,this.functionality=e}static isInstance(e){return j.hasMarker(e,eN)}};function eM(e){return null===e||"string"==typeof e||"number"==typeof e||"boolean"==typeof e||(Array.isArray(e)?e.every(eM):"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eM(t))))}e.s(["AISDKError",0,j,"APICallError",0,M,"EmptyResponseBodyError",0,U,"InvalidArgumentError",0,H,"InvalidPromptError",0,G,"InvalidResponseDataError",0,ee,"JSONParseError",0,en,"LoadAPIKeyError",0,el,"LoadSettingError",0,ef,"NoContentGeneratedError",0,ey,"NoSuchModelError",0,ew,"NoSuchProviderReferenceError",0,ex,"TooManyEmbeddingValuesForCallError",0,eI,"TypeValidationError",0,eC,"UnsupportedFunctionalityError",0,eL,"getErrorMessage",0,D,"isJSONArray",0,function(e){return Array.isArray(e)&&e.every(eM)},"isJSONObject",0,function(e){return null!=e&&"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eM(t)))}])}];
22
+ `)}()),async dispose(e){if(c)return;c=!0;let t=l;for(let a of(null!=t&&await t.cancel(e).catch(()=>{}),r))"file"!==a.type||a.content instanceof Uint8Array||d.has(a.content)||await a.content.cancel(e).catch(()=>{})}});try{let r={method:"POST",headers:L({...t,"Content-Type":`multipart/form-data; boundary=${f}`},`ai-sdk/provider-utils/${N}`,_()),body:m.stream,duplex:"half",signal:o},l=await s(e,r),u=I(l);if(!l.ok){let t;try{t=await a({response:l,url:e,requestBodyValues:p})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:p})}throw t.value}try{return await n({response:l,url:e,requestBodyValues:p})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:p})}}catch(t){throw await m.dispose(t),j({error:t,url:e,requestBodyValues:p})}},tn=()=>globalThis.fetch,to=async({url:e,headers:t,body:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i})=>await ts({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i}),ti=async({url:e,headers:t,formData:r,failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i})=>await ts({url:e,headers:t,body:{content:r,values:Object.fromEntries(r.entries())},failedResponseHandler:a,successfulResponseHandler:n,abortSignal:o,fetch:i}),ts=async({url:e,headers:t={},body:r,successfulResponseHandler:a,failedResponseHandler:n,abortSignal:o,fetch:s=tn()})=>{try{let l=await s(e,{method:"POST",headers:L(t,`ai-sdk/provider-utils/${N}`,_()),body:r.content,signal:o}),u=I(l);if(!l.ok){let t;try{t=await n({response:l,url:e,requestBodyValues:r.values})}catch(t){if($(t)||i.APICallError.isInstance(t))throw t;throw new i.APICallError({message:"Failed to process error response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:r.values})}throw t.value}try{return await a({response:l,url:e,requestBodyValues:r.values})}catch(t){if(t instanceof Error&&($(t)||i.APICallError.isInstance(t)))throw t;throw new i.APICallError({message:"Failed to process successful response",cause:t,statusCode:l.status,url:e,responseHeaders:u,requestBodyValues:r.values})}}catch(t){throw j({error:t,url:e,requestBodyValues:r.values})}};function tl(e){return e}async function tu(e){return"function"==typeof e&&(e=e()),Promise.resolve(e)}async function tc(e,{maxRetries:t,delayInMs:r,backoffFactor:a,abortSignal:n,shouldRetry:o,getDelayInMs:s,createRetryError:l},u=[]){try{return await e()}catch(p){if($(p)||0===t)throw p;let c=(0,i.getErrorMessage)(p),d=[...u,p],f=d.length;if(f>t)throw l({message:`Failed after ${f} attempts. Last error: ${c}`,reason:"maxRetriesExceeded",errors:d});if(await o(p)&&f<=t)return await y(s({error:p,exponentialBackoffDelay:r}),{abortSignal:n}),tc(e,{maxRetries:t,delayInMs:a*r,backoffFactor:a,abortSignal:n,shouldRetry:o,getDelayInMs:s,createRetryError:l},d);if(1===f)throw p;throw l({message:`Failed after ${f} attempts with non-retryable error: '${c}'`,reason:"errorNotRetryable",errors:d})}}var td=new TextDecoder;function tf({stream:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:n}){let o=e.getReader(),s=!1,l=()=>{s||(o.releaseLock(),s=!0)};return new ReadableStream({async pull(e){try{let{done:t,value:r}=await o.read();t?(l(),e.close()):e.enqueue(r)}catch(o){if(l(),$(o))return void e.error(o);e.error(j({error:new i.APICallError({message:"Failed to process successful response",cause:o,statusCode:a,url:t,responseHeaders:n,requestBodyValues:r}),url:t,requestBodyValues:r}))}},async cancel(e){try{await o.cancel(e)}finally{l()}}})}async function tp({response:e,url:t}){return td.decode(await ep({response:e,url:t}))}async function*tm({stream:e,schema:t}){let r=e.getReader(),a=new TextDecoder,n="",o=!1;try{for(;;){let{done:e,value:i}=await r.read();if(e){o=!0,n+=a.decode();break}let s=(n+=a.decode(i,{stream:!0})).indexOf("\n");for(;-1!==s;){let e=n.slice(0,s).replace(/\r$/,"");n=n.slice(s+1),e.trim().length>0&&(yield await e7({text:e,schema:t})),s=n.indexOf("\n")}}let e=n.replace(/\r$/,"");e.trim().length>0&&(yield await e7({text:e,schema:t}))}finally{o||await r.cancel().catch(()=>{}),r.releaseLock()}}function th(e){if(null==e)return!0;let t=typeof e;return"string"===t||"number"===t||"boolean"===t||"function"!==t&&"symbol"!==t&&"bigint"!==t&&(Array.isArray(e)?e.every(th):Object.getPrototypeOf(e)===Object.prototype&&Object.values(e).every(th))}var ty="AI_SerializationError",tg=`vercel.ai.error.${ty}`,tv=Symbol.for(tg),tw=class extends(o=i.AISDKError,n=tv,o){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:ty,message:e,cause:t}),this[n]=!0}static isInstance(e){return i.AISDKError.hasMarker(e,tg)}},tb=class{constructor(e,t={}){var r,a;this.toolCalls=new Set,this.toolCallsById=new Map,this.toolCallsByIndex=new Map,this.controller=e,this._generateId=null!=(r=t.generateId)?r:eg,this.typeValidation=null!=(a=t.typeValidation)?a:"none",this.extractMetadata=t.extractMetadata,this.buildToolCallProviderMetadata=t.buildToolCallProviderMetadata}processDelta(e){let{id:t,index:r}=e,a=null!=t&&t.length>0?this.toolCallsById.get(t):null!=r?this.toolCallsByIndex.get(r):this.latestToolCall;null==a?a=this.processNewToolCall(e):this.processExistingToolCall(a,e),null!=r&&this.toolCallsByIndex.set(r,a),this.latestToolCall=a}flush(){for(let e of this.toolCalls)e.hasFinished||this.finishToolCall(e)}processNewToolCall(e){var t,r,a;if("required"===this.typeValidation){if("function"!==e.type)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function' type."})}else if("if-present"===this.typeValidation&&null!=e.type&&"function"!==e.type)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function' type."});if(null==e.id)throw new i.InvalidResponseDataError({data:e,message:"Expected 'id' to be a string."});if((null==(t=e.function)?void 0:t.name)==null)throw new i.InvalidResponseDataError({data:e,message:"Expected 'function.name' to be a string."});this.controller.enqueue({type:"tool-input-start",id:e.id,toolName:e.function.name});let n=null==(r=this.extractMetadata)?void 0:r.call(this,e),o={id:e.id,type:"function",function:{name:e.function.name,arguments:null!=(a=e.function.arguments)?a:""},hasFinished:!1,metadata:n};return this.toolCalls.add(o),o.id.length>0&&this.toolCallsById.set(o.id,o),o.function.arguments.length>0&&this.controller.enqueue({type:"tool-input-delta",id:o.id,delta:o.function.arguments}),o}processExistingToolCall(e,t){var r;e.hasFinished||(null==(r=t.function)?void 0:r.arguments)!=null&&(e.function.arguments+=t.function.arguments,this.controller.enqueue({type:"tool-input-delta",id:e.id,delta:t.function.arguments}))}finishToolCall(e){var t,r;this.controller.enqueue({type:"tool-input-end",id:e.id});let a=null==(t=this.buildToolCallProviderMetadata)?void 0:t.call(this,e.metadata);this.controller.enqueue({type:"tool-call",toolCallId:null!=(r=e.id)?r:this._generateId(),toolName:e.function.name,input:e.function.arguments,...a?{providerMetadata:a}:{}}),e.hasFinished=!0}};function tE(e){return"string"==typeof e}function tA(e){return"number"==typeof e}function tT(e,t){return void 0===e||t(e)}function tx(e){return eb(e)&&tE(e.type)}function tP(e){return eb(e)&&tE(e.text)&&tA(e.startSecond)&&tA(e.endSecond)}async function*tk({tool:e,input:t,options:r}){let a=e.execute(t,r);if(null!=a&&"function"==typeof a[Symbol.asyncIterator]){let e;for await(let t of a)e=t,yield{type:"preliminary",output:t};yield{type:"final",output:e}}else yield{type:"final",output:await a}}e.s(["DEFAULT_MAX_DOWNLOAD_SIZE",0,0x80000000,"DelayedPromise",0,S,"DownloadError",0,Q,"EXPERIMENTAL_EMBEDDING_MODEL_MAX_INPUT_BYTES_PER_CALL",0,eh,"EXPERIMENTAL_TRANSCRIPTION_STREAM_AUDIO_DONE_FRAME_TYPE",0,"transcription-stream.audio-done","EXPERIMENTAL_TRANSCRIPTION_STREAM_START_FRAME_TYPE",0,"transcription-stream.start","StreamingToolCallTracker",0,tb,"asArray",0,function(e){return void 0===e?[]:Array.isArray(e)?e:[e]},"asSchema",0,e4,"cancelResponseBody",0,K,"combineHeaders",0,function(...e){return e.reduce((e,t)=>({...e,...null!=t?t:{}}),{})},"connectToWebSocket",0,function({url:e,protocols:t,headers:r,webSocket:a,abortSignal:n,onOpen:o,onMessageText:i,onProcessingError:s,onSocketError:l,onClose:u,onAbort:c}){var d,f;let p,m,h=e=>{null!=m&&(null==n||n.removeEventListener("abort",m),m=void 0);try{null==p||p.close(e)}catch(e){}};if(null==n?void 0:n.aborted)return null==c||c(null!=(d=n.reason)?d:Error("Aborted")),{socket:void 0,close:h};try{p=new(function(e){let t=null!=e?e:globalThis.WebSocket;if(null==t)throw Error("No WebSocket implementation available.");return t}(a))(e,t,{headers:(f=null!=r?r:{},Object.fromEntries(Object.entries(f).filter(([e,t])=>null!=t)))})}catch(e){return s(e),{socket:void 0,close:h}}null!=n&&null!=c&&(m=()=>{var e;return c(null!=(e=n.reason)?e:Error("Aborted"))},n.addEventListener("abort",m,{once:!0}));let y=p;p.onopen=()=>{try{null==o||o(y)}catch(e){s(e)}};let g=Promise.resolve();return p.onmessage=e=>{g=g.then(()=>w(e.data)).then(e=>i(e)).catch(s)},p.onerror=()=>{g=g.then(()=>null==l?void 0:l()).catch(s)},p.onclose=e=>{let t="number"==typeof(null==e?void 0:e.code)?e.code:void 0,r="string"==typeof(null==e?void 0:e.reason)?e.reason:void 0;g=g.then(()=>null==u?void 0:u({code:t,reason:r})).catch(s)},{socket:p,close:h}},"convertAsyncIteratorToReadableStream",0,E,"convertBase64ToUint8Array",0,x,"convertImageModelFileToDataUri",0,function(e){return"url"===e.type?e.url:`data:${e.mediaType};base64,${"string"==typeof e.data?e.data:P(e.data)}`},"convertInlineFileDataToUint8Array",0,function(e){if("stream"===e.type){let t=new i.UnsupportedFunctionalityError({functionality:"streaming file upload"});throw e.stream.cancel(t).catch(()=>{}),t}return"text"===e.type?new TextEncoder().encode(e.text):e.data instanceof Uint8Array?e.data:e.data instanceof ArrayBuffer?new Uint8Array(e.data):x(e.data)},"convertToBase64",0,function(e){return e instanceof Uint8Array?P(e):e},"convertToFormData",0,function(e,t={}){let{useArrayBrackets:r=!0}=t,a=new FormData;for(let[t,n]of Object.entries(e))if(null!=n){if(Array.isArray(n)){if(1===n.length){a.append(t,n[0]);continue}let e=r?`${t}[]`:t;for(let t of n)a.append(e,t);continue}a.append(t,n)}return a},"convertUint8ArrayToBase64",0,P,"createBinaryResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e);if(!e.body)throw new i.APICallError({message:"Response body is empty",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:void 0});try{let t=await e.arrayBuffer();return{responseHeaders:a,value:new Uint8Array(t)}}catch(n){throw new i.APICallError({message:"Failed to read response as array buffer",url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:void 0,cause:n})}},"createBinaryStreamResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e);if(null==e.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:a,value:tf({stream:e.body,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a})}},"createEventSourceResponseHandler",0,e=>async({response:t,url:r,requestBodyValues:a})=>{let n=I(t);if(null==t.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:n,value:e8({stream:tf({stream:t.body,url:r,requestBodyValues:a,statusCode:t.status,responseHeaders:n}),schema:e})}},"createIdGenerator",0,ey,"createJsonErrorResponseHandler",0,({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:a,url:n,requestBodyValues:o})=>{let s=await tp({response:a,url:n}),l=I(a);if(""===s.trim())return{responseHeaders:l,value:new i.APICallError({message:a.statusText,url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,isRetryable:null==r?void 0:r(a)})};try{let u=await e7({text:s,schema:e});return{responseHeaders:l,value:new i.APICallError({message:t(u),url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,data:u,isRetryable:null==r?void 0:r(a,u)})}}catch(e){return{responseHeaders:l,value:new i.APICallError({message:a.statusText,url:n,requestBodyValues:o,statusCode:a.status,responseHeaders:l,responseBody:s,isRetryable:null==r?void 0:r(a)})}}},"createJsonLinesResponseHandler",0,e=>async({response:t})=>{let r=I(t);if(null==t.body)throw new i.EmptyResponseBodyError({});return{responseHeaders:r,value:tm({stream:t.body,schema:e})}},"createJsonResponseHandler",0,e=>async({response:t,url:r,requestBodyValues:a})=>{let n=await tp({response:t,url:r}),o=await e3({text:n,schema:e}),s=I(t);if(!o.success)throw new i.APICallError({message:"Invalid JSON response",cause:o.error,statusCode:t.status,responseHeaders:s,responseBody:n,url:r,requestBodyValues:a});return{responseHeaders:s,value:o.value,rawValue:o.rawValue}},"createLanguageModelResponseMetadata",0,function({id:e,model:t,created:r}){return{id:null!=e?e:void 0,modelId:null!=t?t:void 0,timestamp:null!=r?new Date(1e3*r):void 0}},"createNullLanguageModelUsage",0,function(){return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0}},"createProviderDefinedToolFactory",0,function({id:e,inputSchema:t}){return({execute:r,outputSchema:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l,...u})=>tl({type:"provider",isProviderExecuted:!1,id:e,args:u,inputSchema:t,outputSchema:a,execute:r,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l})},"createProviderDefinedToolFactoryWithOutputSchema",0,function({id:e,inputSchema:t,outputSchema:r}){return({execute:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l,...u})=>tl({type:"provider",isProviderExecuted:!1,id:e,args:u,inputSchema:t,outputSchema:r,execute:a,needsApproval:n,toModelOutput:o,onInputStart:i,onInputDelta:s,onInputAvailable:l})},"createProviderExecutedToolFactory",0,function({id:e,inputSchema:t,outputSchema:r,supportsDeferredResults:a}){return({onInputStart:n,onInputDelta:o,onInputAvailable:i,...s})=>tl({type:"provider",isProviderExecuted:!0,id:e,args:s,inputSchema:t,outputSchema:r,onInputStart:n,onInputDelta:o,onInputAvailable:i,supportsDeferredResults:a})},"createProviderStreamError",0,function({message:e,type:t,code:r,statusCode:a,isRetryable:n,data:o}){let i={message:e,type:t,code:r,statusCode:a,isRetryable:n,data:o};return Object.defineProperty(i,k,{value:!0}),i},"createStatusCodeErrorResponseHandler",0,()=>async({response:e,url:t,requestBodyValues:r})=>{let a=I(e),n=await tp({response:e,url:t});return{responseHeaders:a,value:new i.APICallError({message:e.statusText,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a,responseBody:n})}},"createToolNameMapping",0,function({tools:e=[],providerToolNames:t}){let r={},a={};for(let n of e)if("provider"===n.type&&n.id in t){let e=t[n.id];r[n.name]=e,a[e]=n.name}return{toProviderToolName:e=>{var t;return null!=(t=r[e])?t:e},toCustomToolName:e=>{var t;return null!=(t=a[e])?t:e}}},"delay",0,y,"deleteFromApi",0,F,"detectMediaType",0,W,"downloadBlob",0,em,"dynamicTool",0,function(e){return{...e,type:"dynamic"}},"executeTool",0,tk,"experimental_getToolCaller",0,function(e){return null==e?void 0:e.experimental_toolCaller},"experimental_parseTranscriptionStreamPart",0,function(e){let t;try{t=ek(e)}catch(e){return}if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t;switch(r.type){case"stream-start":return Array.isArray(r.warnings)&&r.warnings.every(tx)?r:void 0;case"transcript-delta":return tE(r.delta)&&tT(r.id,tE)&&tT(r.providerMetadata,eb)?r:void 0;case"transcript-partial":return tE(r.text)&&tT(r.id,tE)&&tT(r.startSecond,tA)&&tT(r.durationInSeconds,tA)&&tT(r.channelIndex,tA)&&tT(r.providerMetadata,eb)?r:void 0;case"transcript-final":return tE(r.text)&&tT(r.id,tE)&&tT(r.startSecond,tA)&&tT(r.endSecond,tA)&&tT(r.channelIndex,tA)&&tT(r.providerMetadata,eb)?r:void 0;case"finish":return tE(r.text)&&Array.isArray(r.segments)&&r.segments.every(tP)&&tT(r.language,tE)&&tT(r.durationInSeconds,tA)&&tT(r.providerMetadata,eb)?r:void 0;case"response-metadata":{if(!(tT(r.modelId,tE)&&tT(r.headers,eb)))return;let e=r.timestamp;if(null==e)return{...r,timestamp:void 0};if("string"!=typeof e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:{...r,timestamp:t}}case"raw":return"rawValue"in r?r:void 0;case"error":return"error"in r?r:void 0;default:return}},"experimental_toolCaller",0,function(e,t){return Object.defineProperty({...e},"experimental_toolCaller",{value:t})},"extractResponseHeaders",0,I,"fetchWithValidatedRedirects",0,ef,"filterNullable",0,function(...e){return e.filter(e=>null!=e)},"generateId",0,eg,"getFromApi",0,ev,"getRuntimeEnvironmentUserAgent",0,_,"getTopLevelMediaType",0,H,"isAbortError",0,$,"isBuffer",0,ew,"isCustomReasoning",0,function(e){return void 0!==e&&"provider-default"!==e},"isExecutableTool",0,function(e){return null!=e&&"function"==typeof e.execute},"isFullMediaType",0,J,"isNonNullable",0,function(e){return null!=e},"isProviderReference",0,function(e){return"object"==typeof e&&null!==e&&!(e instanceof Uint8Array)&&!(e instanceof URL)&&!(e instanceof ArrayBuffer)&&!ew(e)&&!("type"in e)},"isProviderStreamError",0,function(e){return"object"==typeof e&&null!=e&&!0===e[k]},"isRecord",0,eb,"isSameOrigin",0,ee,"isUrlSupported",0,function({mediaType:e,url:t,supportedUrls:r}){t=t.toLowerCase();let a=!(e=e.toLowerCase()).includes("/");return Object.entries(r).map(([e,t])=>{let r=e.toLowerCase();return"*"===r||"*/*"===r?{mediaTypePrefix:"",regexes:t}:{mediaTypePrefix:r.replace(/\*/,""),regexes:t}}).filter(({mediaTypePrefix:t})=>""===t||(a?`${e}/`===t:e.startsWith(t))).flatMap(({regexes:e})=>e).some(e=>(function(e,t){if(!e.global&&!e.sticky)return e.test(t);let r=e.lastIndex;e.lastIndex=0;try{return e.test(t)}finally{e.lastIndex=r}})(e,t))},"jsonSchema",0,e2,"lazySchema",0,function(e){let t;return()=>(null==t&&(t=e()),t)},"loadApiKey",0,function({apiKey:e,environmentVariableName:t,apiKeyParameterName:r="apiKey",description:a}){if("string"==typeof e)return e;if(null!=e)throw new i.LoadAPIKeyError({message:`${a} API key must be a string.`});if("u"<typeof process)throw new i.LoadAPIKeyError({message:`${a} API key is missing. Pass it using the '${r}' parameter. Environment variables are not supported in this environment.`});if(null==(e=process.env[t]))throw new i.LoadAPIKeyError({message:`${a} API key is missing. Pass it using the '${r}' parameter or the ${t} environment variable.`});if("string"!=typeof e)throw new i.LoadAPIKeyError({message:`${a} API key must be a string. The value of the ${t} environment variable is not a string.`});return e},"loadOptionalSetting",0,function({settingValue:e,environmentVariableName:t}){return"string"==typeof e?e:null!=e||"u"<typeof process?void 0:null!=(e=process.env[t])&&"string"==typeof e?e:void 0},"mapReasoningToProviderBudget",0,function({reasoning:e,maxOutputTokens:t,maxReasoningBudget:r,minReasoningBudget:a=1024,budgetPercentages:n=eE,warnings:o}){let i=n[e];return null==i?void o.push({type:"unsupported",feature:"reasoning",details:`reasoning "${e}" is not supported by this model.`}):Math.min(r,Math.max(a,Math.round(t*i)))},"mapReasoningToProviderEffort",0,function({reasoning:e,effortMap:t,warnings:r}){let a=t[e];return null==a?void r.push({type:"unsupported",feature:"reasoning",details:`reasoning "${e}" is not supported by this model.`}):(a!==e&&r.push({type:"compatibility",feature:"reasoning",details:`reasoning "${e}" is not directly supported by this model. mapped to effort "${a}".`}),a)},"mediaTypeToExtension",0,function(e){var t;let[r,a=""]=e.toLowerCase().split("/");return null!=(t=({mpeg:"mp3","x-wav":"wav",opus:"ogg",mp4:"m4a","x-m4a":"m4a"})[a])?t:a},"normalizeBatchRequestCounts",0,function({total:e,pending:t,completed:r,failed:a}){if(eA(e)&&eA(t)&&eA(r)&&eA(a)&&t+r+a===e)return{total:e,pending:t,completed:r,failed:a}},"normalizeHeaders",0,R,"parseJSON",0,e7,"parseJsonEventStream",0,e8,"parseProviderOptions",0,te,"postFormDataToApi",0,ti,"postJsonToApi",0,to,"postMultipartStreamToApi",0,ta,"postToApi",0,ts,"readResponseWithSizeLimit",0,ep,"resolve",0,tu,"resolveFullMediaType",0,function({part:e}){if(J(e.mediaType))return e.mediaType;if("data"===e.data.type){let t=W({data:e.data.data,topLevelType:H(e.mediaType)});if(t)return t;throw new i.UnsupportedFunctionalityError({functionality:`file of media type "${e.mediaType}" must specify subtype since it could not be auto-detected`})}throw new i.UnsupportedFunctionalityError({functionality:`file of media type "${e.mediaType}" must specify subtype since it is not passed as inline bytes`})},"resolveProviderReference",0,function({reference:e,provider:t}){let r=e[t];if(null!=r)return r;throw new i.NoSuchProviderReferenceError({provider:t,reference:e})},"retryWithExponentialBackoff",0,({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:a,shouldRetry:n,getDelayInMs:o=({exponentialBackoffDelay:e})=>e,createRetryError:i=({message:e})=>Error(e)})=>async s=>tc(s,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:a,shouldRetry:n,getDelayInMs:o,createRetryError:i}),"safeParseJSON",0,e3,"safeValidateTypes",0,e5,"secureJsonParse",0,ek,"serializeModelOptions",0,function(e){let t={};for(let[r,a]of Object.entries(e.config))if("headers"===r){let e=function(e){let t=e;if("function"==typeof e&&(t=e()),t instanceof Promise)throw new tw({message:"Cannot serialize asynchronous model options."});return t}(a);th(e)&&(t[r]=e)}else th(a)&&(t[r]=a);return{modelId:e.modelId,config:t}},"toWebSocketUrl",0,function(e){let t=new URL(e);return"http:"===t.protocol?t.protocol="ws:":"https:"===t.protocol&&(t.protocol="wss:"),t},"tool",0,tl,"validateBaseURL",0,function(e){if((null==e?void 0:e.trim())==="")throw new i.InvalidArgumentError({argument:"baseURL",message:"baseURL must be a non-empty string."});return e},"validateDownloadUrl",0,et,"validateTypes",0,e9,"waitForWebSocketBufferDrain",0,b,"withUserAgentSuffix",0,L,"withoutTrailingSlash",0,function(e){return null==e?void 0:e.replace(/\/$/,"")},"zodSchema",0,e6],691296)},296194,e=>{"use strict";var t,r,a,n,o,i,s,l,u,c,d,f,p,m,h,y,g,v,w,b,E,A,T,x,P,k,S,I,_,$,O="vercel.ai.error",C=Symbol.for(O),j=class e extends(r=Error,t=C,r){constructor({name:e,message:r,cause:a}){super(r),this[t]=!0,this.name=e,this.cause=a}static isInstance(t){return e.hasMarker(t,O)}static hasMarker(e,t){let r=Symbol.for(t);return null!=e&&"object"==typeof e&&r in e&&"boolean"==typeof e[r]&&!0===e[r]}},N="AI_APICallError",R=`vercel.ai.error.${N}`,L=Symbol.for(R),M=class extends(n=j,a=L,n){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:o,responseBody:i,cause:s,isRetryable:l=null!=n&&(408===n||409===n||429===n||n>=500),data:u}){super({name:N,message:e,cause:s}),this[a]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=o,this.responseBody=i,this.isRetryable=l,this.data=u}static isInstance(e){return j.hasMarker(e,R)}},F="AI_EmptyResponseBodyError",B=`vercel.ai.error.${F}`,Z=Symbol.for(B),U=class extends(i=j,o=Z,i){constructor({message:e="Empty response body"}={}){super({name:F,message:e}),this[o]=!0}static isInstance(e){return j.hasMarker(e,B)}};function D(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.toString():JSON.stringify(e)}var z="AI_InvalidArgumentError",V=`vercel.ai.error.${z}`,q=Symbol.for(V),W=class extends(l=j,s=q,l){constructor({message:e,cause:t,argument:r}){super({name:z,message:e,cause:t}),this[s]=!0,this.argument=r}static isInstance(e){return j.hasMarker(e,V)}},H="AI_InvalidPromptError",J=`vercel.ai.error.${H}`,K=Symbol.for(J),G=class extends(c=j,u=K,c){constructor({prompt:e,message:t,cause:r}){super({name:H,message:`Invalid prompt: ${t}`,cause:r}),this[u]=!0,this.prompt=e}static isInstance(e){return j.hasMarker(e,J)}},X="AI_InvalidResponseDataError",Y=`vercel.ai.error.${X}`,Q=Symbol.for(Y),ee=class extends(f=j,d=Q,f){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:X,message:t}),this[d]=!0,this.data=e}static isInstance(e){return j.hasMarker(e,Y)}},et="AI_JSONParseError",er=`vercel.ai.error.${et}`,ea=Symbol.for(er),en=class extends(m=j,p=ea,m){constructor({text:e,cause:t}){super({name:et,message:`JSON parsing failed: Text: ${e}.
23
+ Error message: ${D(t)}`,cause:t}),this[p]=!0,this.text=e}static isInstance(e){return j.hasMarker(e,er)}},eo="AI_LoadAPIKeyError",ei=`vercel.ai.error.${eo}`,es=Symbol.for(ei),el=class extends(y=j,h=es,y){constructor({message:e}){super({name:eo,message:e}),this[h]=!0}static isInstance(e){return j.hasMarker(e,ei)}},eu="AI_LoadSettingError",ec=`vercel.ai.error.${eu}`,ed=Symbol.for(ec),ef=class extends(v=j,g=ed,v){constructor({message:e}){super({name:eu,message:e}),this[g]=!0}static isInstance(e){return j.hasMarker(e,ec)}},ep="AI_NoContentGeneratedError",em=`vercel.ai.error.${ep}`,eh=Symbol.for(em),ey=class extends(b=j,w=eh,b){constructor({message:e="No content generated."}={}){super({name:ep,message:e}),this[w]=!0}static isInstance(e){return j.hasMarker(e,em)}},eg="AI_NoSuchModelError",ev=`vercel.ai.error.${eg}`,ew=Symbol.for(ev),eb=class extends(A=j,E=ew,A){constructor({errorName:e=eg,modelId:t,modelType:r,message:a=`No such ${r}: ${t}`}){super({name:e,message:a}),this[E]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return j.hasMarker(e,ev)}},eE="AI_NoSuchProviderReferenceError",eA=`vercel.ai.error.${eE}`,eT=Symbol.for(eA),ex=class extends(x=j,T=eT,x){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:eE,message:r}),this[T]=!0,this.provider=e,this.reference=t}static isInstance(e){return j.hasMarker(e,eA)}},eP="AI_TooManyEmbeddingValuesForCallError",ek=`vercel.ai.error.${eP}`,eS=Symbol.for(ek),eI=class extends(k=j,P=eS,k){constructor(e){super({name:eP,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`}),this[P]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return j.hasMarker(e,ek)}},e_="AI_TypeValidationError",e$=`vercel.ai.error.${e_}`,eO=Symbol.for(e$),eC=class e extends(I=j,S=eO,I){constructor({value:e,cause:t,context:r}){let a="Type validation failed";if((null==r?void 0:r.field)&&(a+=` for ${r.field}`),(null==r?void 0:r.entityName)||(null==r?void 0:r.entityId)){a+=" (";const e=[];r.entityName&&e.push(r.entityName),r.entityId&&e.push(`id: "${r.entityId}"`),a+=e.join(", "),a+=")"}super({name:e_,message:`${a}: Value: ${JSON.stringify(e)}.
24
+ Error message: ${D(t)}`,cause:t}),this[S]=!0,this.value=e,this.context=r}static isInstance(e){return j.hasMarker(e,e$)}static wrap({value:t,cause:r,context:a}){var n,o,i;return e.isInstance(r)&&r.value===t&&(null==(n=r.context)?void 0:n.field)===(null==a?void 0:a.field)&&(null==(o=r.context)?void 0:o.entityName)===(null==a?void 0:a.entityName)&&(null==(i=r.context)?void 0:i.entityId)===(null==a?void 0:a.entityId)?r:new e({value:t,cause:r,context:a})}},ej="AI_UnsupportedFunctionalityError",eN=`vercel.ai.error.${ej}`,eR=Symbol.for(eN),eL=class extends($=j,_=eR,$){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:ej,message:t}),this[_]=!0,this.functionality=e}static isInstance(e){return j.hasMarker(e,eN)}};function eM(e){return null===e||"string"==typeof e||"number"==typeof e||"boolean"==typeof e||(Array.isArray(e)?e.every(eM):"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eM(t))))}e.s(["AISDKError",0,j,"APICallError",0,M,"EmptyResponseBodyError",0,U,"InvalidArgumentError",0,W,"InvalidPromptError",0,G,"InvalidResponseDataError",0,ee,"JSONParseError",0,en,"LoadAPIKeyError",0,el,"LoadSettingError",0,ef,"NoContentGeneratedError",0,ey,"NoSuchModelError",0,eb,"NoSuchProviderReferenceError",0,ex,"TooManyEmbeddingValuesForCallError",0,eI,"TypeValidationError",0,eC,"UnsupportedFunctionalityError",0,eL,"getErrorMessage",0,D,"isJSONArray",0,function(e){return Array.isArray(e)&&e.every(eM)},"isJSONObject",0,function(e){return null!=e&&"object"==typeof e&&Object.entries(e).every(([e,t])=>"string"==typeof e&&(void 0===t||eM(t)))}])}];
25
25
 
26
26
  //# sourceMappingURL=_1cbk7ms._.js.map