thursday-agent 0.2.0 → 0.3.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.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +5 -2
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +5 -5
- package/.next/routes-manifest.json +24 -6
- package/.next/server/app/_global-error/page.js +2 -2
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +2 -2
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +14 -14
- package/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +12 -12
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/artifact/route.js +3 -3
- package/.next/server/app/api/artifact/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/files/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/memory/files/route.js +10 -0
- package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -0
- package/.next/server/app/api/bot/memory/files/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/bot/memory/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/memory/route.js +14 -0
- package/.next/server/app/api/bot/{notes → memory}/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/bot/route.js +6 -6
- package/.next/server/app/api/bot/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/task/[id]/route.js +8 -8
- package/.next/server/app/api/bot/task/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/task/route.js +8 -8
- package/.next/server/app/api/bot/task/route.js.nft.json +1 -1
- package/.next/server/app/api/config/route.js +5 -5
- package/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/server/app/api/events/route.js +4 -5
- package/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/server/app/api/file/[...path]/route.js +3 -3
- package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/catalog/route.js +9 -8
- package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/credits/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/llm-model/credits/route/build-manifest.json +12 -0
- package/.next/server/app/api/llm-model/credits/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/llm-model/credits/route.js +16 -0
- package/.next/server/app/api/llm-model/credits/route.js.map +5 -0
- package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -0
- package/.next/server/app/api/llm-model/credits/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/llm-model/route.js +10 -8
- package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/subscription/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/llm-model/subscription/route/build-manifest.json +12 -0
- package/.next/server/app/api/llm-model/subscription/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/llm-model/subscription/route.js +15 -0
- package/.next/server/app/api/llm-model/subscription/route.js.map +5 -0
- package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -0
- package/.next/server/app/api/llm-model/subscription/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/mcp/[name]/route.js +4 -4
- package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/oauth/callback/route.js +5 -5
- package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +4 -4
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/tools/route.js +4 -4
- package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/edit/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/memory/edit/route/build-manifest.json +12 -0
- package/.next/server/app/api/memory/edit/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/memory/edit/route.js +24 -0
- package/.next/server/app/api/memory/edit/route.js.map +5 -0
- package/.next/server/app/api/memory/edit/route.js.nft.json +1 -0
- package/.next/server/app/api/memory/{tidy → edit}/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/memory/route.js +6 -7
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[source]/[name]/route.js +3 -3
- package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route.js +3 -3
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/call/route.js +9 -7
- package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/skills/route.js +9 -7
- package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/tool-call/route.js +17 -15
- package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
- package/.next/server/app/api/workspace/route.js +4 -5
- package/.next/server/app/api/workspace/route.js.nft.json +1 -1
- package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
- package/.next/server/app/artifact/[...path]/page.js +5 -6
- package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
- package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/favicon.ico/route.js +3 -4
- package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/.next/server/app/favicon.ico.body +0 -0
- package/.next/server/app/page/server-reference-manifest.json +57 -90
- package/.next/server/app/page.js +10 -10
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +5 -2
- package/.next/server/chunks/[externals]__0dzuk6_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__01dkp4a._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__02xjoto._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__04q--0f._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0bl-e63._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0ce8nf8._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__0ffbg85._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0j7z0r3._.js +12 -0
- package/.next/server/chunks/[root-of-the-server]__0jq4ohy._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0ls6_8y._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0pa2n68._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0q0vvt2._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__11n256_._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__12cabg9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1339jnv._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__15bjnu5._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__18_teo8._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1anc1p9._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +5 -5
- package/.next/server/chunks/[root-of-the-server]__1fizn31._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1llj3-b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +11 -0
- package/.next/server/chunks/[root-of-the-server]__1p8m3f4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1wa1k7r._.js +8 -0
- package/.next/server/chunks/_0-73of8._.js +5 -5
- package/.next/server/chunks/_0-fjql4._.js +26 -0
- package/.next/server/chunks/_00xh_q0._.js +27 -0
- package/.next/server/chunks/{_0pppbb5._.js → _03kp0jp._.js} +163 -36
- package/.next/server/chunks/_051qh8u._.js +3 -0
- package/.next/server/chunks/{node_modules_next_04q-o58._.js → _05dla15._.js} +2 -2
- package/.next/server/chunks/_05h2cii._.js +1 -1
- package/.next/server/chunks/_0c9j6rb._.js +49 -0
- package/.next/server/chunks/_0fzqt2y._.js +130 -0
- package/.next/server/chunks/{_0vnutv9._.js → _0ioz3nd._.js} +1 -1
- package/.next/server/chunks/_0iwfby5._.js +3 -0
- package/.next/server/chunks/_0mecv0f._.js +26 -0
- package/.next/server/chunks/_0mh8j4m._.js +3 -0
- package/.next/server/chunks/_0n74zsf._.js +4 -4
- package/.next/server/chunks/_0obojvv._.js +3 -0
- package/.next/server/chunks/_0recufk._.js +49 -0
- package/.next/server/chunks/_0rnf-6n._.js +4 -4
- package/.next/server/chunks/_0sb7tlz._.js +3 -0
- package/.next/server/chunks/_0u10wmw._.js +5 -5
- package/.next/server/chunks/_0u4aiy2._.js +3 -0
- package/.next/server/chunks/_0wp4le3._.js +1 -1
- package/.next/server/chunks/_0y5fg-x._.js +1 -1
- package/.next/server/chunks/_1230wbx._.js +10 -0
- package/.next/server/chunks/_12nheja._.js +3 -0
- package/.next/server/chunks/_13510xh._.js +3 -0
- package/.next/server/chunks/_15hq89o._.js +1 -1
- package/.next/server/chunks/_17l5ygt._.js +49 -0
- package/.next/server/chunks/_18-1wcc._.js +5 -5
- package/.next/server/chunks/_1_5mnq4._.js +4 -4
- package/.next/server/chunks/_1_9mjx-._.js +3 -0
- package/.next/server/chunks/_1d0j961._.js +6 -0
- package/.next/server/chunks/_1d5zmy8._.js +1 -1
- package/.next/server/chunks/_1drgfx4._.js +4 -4
- package/.next/server/chunks/_1f46eie._.js +3 -0
- package/.next/server/chunks/_1h5_8sk._.js +3 -0
- package/.next/server/chunks/_1hdnxb7._.js +3 -0
- package/.next/server/chunks/_1j8k_j5._.js +3 -0
- package/.next/server/chunks/_1krd9rf._.js +3 -0
- package/.next/server/chunks/_1nc0eui._.js +11 -0
- package/.next/server/chunks/_1nula3v._.js +3 -0
- package/.next/server/chunks/_1pf4qe-._.js +3 -0
- package/.next/server/chunks/_1php4eq._.js +1 -1
- package/.next/server/chunks/_1qxheoa._.js +3 -0
- package/.next/server/chunks/_1x6kd1r._.js +3 -0
- package/.next/server/chunks/_1yuv4vp._.js +1 -1
- package/.next/server/chunks/_1zjrdag._.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_memory_files_route_actions_1_xd_8f.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_memory_route_actions_1a8xfr7.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_llm-model_credits_route_actions_0v424pb.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_llm-model_subscription_route_actions_0-udcm5.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_memory_edit_route_actions_02sfnmr.js +3 -0
- package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
- package/.next/server/chunks/features_0rpfxbk._.js +3 -0
- package/.next/server/chunks/features_1qf3cei._.js +3 -0
- package/.next/server/chunks/features_bot_0zt92oh._.js +3 -0
- package/.next/server/chunks/features_bot_bot_query_ts_12mgkl2._.js +3 -0
- package/.next/server/chunks/features_memory_1uqvksn._.js +6 -0
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0a1rd09._.js → node_modules_consola_dist_chunks_prompt_mjs_0i7cvml._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_06067w6._.js → node_modules_consola_dist_chunks_prompt_mjs_0icqaqw._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_096ais_._.js → node_modules_consola_dist_chunks_prompt_mjs_0r28-sm._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_02s3hjt._.js → node_modules_consola_dist_chunks_prompt_mjs_0v_7drq._.js} +1 -1
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1xoq2rl._.js +3 -0
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0tvkfgh._.js → node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__09q9med._.js +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__1qfqvmg._.js → [root-of-the-server]__0_69wqr._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__0hg5gib._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0i8ie7f._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__0jsmmb-._.js → [root-of-the-server]__0mz33a7._.js} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0tbkdlx._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0vnmv-s._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__0f6s48x._.js → [root-of-the-server]__0xpcv9w._.js} +3 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0xtssj3._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0zkv7z_._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__10-dz5o._.js +57 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__15_uhip._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__16jc196._.js +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__0m1b5ky._.js → [root-of-the-server]__1cyjywu._.js} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1eh7hid._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1gtlw6v._.js +43 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1ox7hbk._.js +4 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1pduf5n._.js +3 -0
- package/.next/server/chunks/ssr/{_1mznrxk._.js → _001_ms1._.js} +3 -3
- package/.next/server/chunks/ssr/_01_6m32._.js +3 -0
- package/.next/server/chunks/ssr/_01n3o0m._.js +3 -0
- package/.next/server/chunks/ssr/_07uchnc._.js +3 -0
- package/.next/server/chunks/ssr/_0ap2fzn._.js +3 -0
- package/.next/server/chunks/ssr/_0c-ql2m._.js +3 -0
- package/.next/server/chunks/ssr/_0h42fze._.js +3 -0
- package/.next/server/chunks/ssr/_0h7zdni._.js +1 -1
- package/.next/server/chunks/ssr/_0i_6q1w._.js +41 -0
- package/.next/server/chunks/ssr/_0kbkmar._.js +3 -0
- package/.next/server/chunks/ssr/{_077-g6s._.js → _0mb8zc8._.js} +3 -3
- package/.next/server/chunks/ssr/_0mo2w06._.js +3 -0
- package/.next/server/chunks/ssr/{_13punpm._.js → _0q0zan6._.js} +2 -2
- package/.next/server/chunks/ssr/{_040sk32._.js → _0u2jv_x._.js} +76 -82
- package/.next/server/chunks/ssr/_0y0tiht._.js +4 -0
- package/.next/server/chunks/ssr/_0zhoc3r._.js +3 -0
- package/.next/server/chunks/ssr/_1-teee5._.js +3 -3
- package/.next/server/chunks/ssr/_13fke0x._.js +3 -0
- package/.next/server/chunks/ssr/{_1lip4th._.js → _13z3f85._.js} +2 -2
- package/.next/server/chunks/ssr/_14_lw10._.js +3 -0
- package/.next/server/chunks/ssr/_15j2_8f._.js +3 -0
- package/.next/server/chunks/ssr/{_09ja_w1._.js → _1eoqg_g._.js} +2 -2
- package/.next/server/chunks/ssr/_1sji22n._.js +3 -0
- package/.next/server/chunks/ssr/_1spzm8z._.js +3 -0
- package/.next/server/chunks/ssr/{_0x_nu5e._.js → _1vi_uo7._.js} +2 -2
- package/.next/server/chunks/ssr/_1vyd1ji._.js +1 -1
- package/.next/server/chunks/ssr/{_1m3bsfr._.js → _1xvgn77._.js} +2 -2
- package/.next/server/chunks/ssr/_20kd_n0._.js +42 -0
- package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +3 -0
- package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
- package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
- package/.next/server/chunks/ssr/lib_date-like_ts_02is0pw._.js +3 -0
- package/.next/server/chunks/ssr/{node_modules_18_dk7_._.js → node_modules_063xwpp._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_01qnv-a._.js → node_modules_0bvraul._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0n1kj4p._.js → node_modules_0eu1va6._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0kl7-tn._.js → node_modules_0h50b8n._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0_n241r._.js → node_modules_0h5hnr1._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0lrjk5t._.js → node_modules_0h7u60n._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0ndvxub._.js → node_modules_0lm7_vm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_13r44jq._.js → node_modules_0mwym0g._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_17lrt3y._.js → node_modules_0rjg6t1._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules_0x3-ply._.js +3 -0
- package/.next/server/chunks/ssr/{node_modules_004qlr4._.js → node_modules_0y_cded._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0kxz4gt._.js → node_modules_0z5tsu8._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0iz1rzd._.js → node_modules_0zp9r92._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_19dp7ko._.js → node_modules_1-hc6uv._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1q0p85z._.js → node_modules_113tz0l._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1toafc-._.js → node_modules_124bue5._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules_17bwo43._.js +55 -0
- package/.next/server/chunks/ssr/{node_modules_08d8bke._.js → node_modules_1_n3ztw._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1dwguw_._.js → node_modules_1bc7gu8._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_20yebtj._.js → node_modules_1bgb6-f._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1n5ygqe._.js → node_modules_1h4a4pp._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_04n7mjs._.js → node_modules_1i7u1ia._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1hn8z1f._.js → node_modules_1juq3hs._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1xyd7ov._.js → node_modules_1l0qtdu._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0m93zeg._.js → node_modules_1t9cyee._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_09xhur7._.js → node_modules_1uuj9x1._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1hd-5tv._.js → node_modules_1vqb6po._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1zu988w._.js → node_modules_1xx28h1._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0m9a4y0._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0d3skpl._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_13w_wy9._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0i44kk5._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules_@vercel_oidc_dist_0qe30a_._.js +3 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_0w6mzq5._.js → node_modules_next_dist_0drixxt._.js} +4 -4
- package/.next/server/chunks/ssr/node_modules_next_dist_1n3w9lb._.js +2 -2
- package/.next/server/instrumentation.js +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +58 -91
- package/.next/static/chunks/{31ttnjt6g35a0.js → 0ev4hyghq0mbb.js} +1 -1
- package/.next/static/chunks/0r5qcctujhxli.js +1 -0
- package/.next/static/chunks/0tmgrnlje14-s.js +3 -0
- package/.next/static/chunks/0x79tx04dxbpp.js +1 -0
- package/.next/static/chunks/0xzgvc0fkdb6t.js +1 -0
- package/.next/static/chunks/10teww7wt-f6h.js +1 -0
- package/.next/static/chunks/14hgtsjg-kael.css +1 -0
- package/.next/static/chunks/17donp69y4do7.js +40 -0
- package/.next/static/chunks/{3_h9txt3tq8t8.js → 1dkjg87pxk0n9.js} +1 -1
- package/.next/static/chunks/1ekc7ul556kbl.js +1 -0
- package/.next/static/chunks/{3ard_noqapnw1.js → 1grhjo7a5a0_-.js} +1 -1
- package/.next/static/chunks/1kq8h8wi_e0bc.js +53 -0
- package/.next/static/chunks/1okqiww3pnwka.js +1 -0
- package/.next/static/chunks/26-pr2c9ro222.js +1 -0
- package/.next/static/chunks/{18vhba44l1fc9.js → 280t0_e99i276.js} +1 -1
- package/.next/static/chunks/28cizcdaabd4h.js +1 -0
- package/.next/static/chunks/2a0k6jlq0_v1u.js +2 -0
- package/.next/static/chunks/2fzs9fm8yarvq.js +1 -0
- package/.next/static/chunks/2h0sd2vumhb15.js +1 -0
- package/.next/static/chunks/2hw2f6zmt7fmt.js +1 -0
- package/.next/static/chunks/2t4vhi3m8ahya.js +1 -0
- package/.next/static/chunks/2tigdtz3dpcy8.js +1 -0
- package/.next/static/chunks/3111pj5wnjgos.js +1 -0
- package/.next/static/chunks/{07kl352c-lvcz.js → 3agpgkwaa321p.js} +1 -1
- package/.next/static/chunks/3cfi_q6d_wtci.js +1 -0
- package/.next/static/chunks/3ok9_x74rip3v.js +1 -0
- package/.next/static/chunks/3xk7yqgomx7yq.js +1 -0
- package/.next/static/chunks/3xpbkl66ssib5.js +38 -0
- package/.next/static/media/favicon.37o1pjldwi2uc.ico +0 -0
- package/README.md +6 -4
- package/app/api/bot/memory/files/route.ts +14 -0
- package/app/api/bot/memory/route.ts +5 -0
- package/app/api/events/app-event.ts +3 -5
- package/app/api/llm-model/credits/route.ts +11 -0
- package/app/api/llm-model/route.ts +6 -1
- package/app/api/llm-model/subscription/route.ts +11 -0
- package/app/api/memory/edit/route.ts +7 -0
- package/app/api/memory/route.ts +21 -0
- package/app/api/query-key.ts +19 -4
- package/bin/thursday.mjs +3 -0
- package/components/ui/shiny-text.tsx +48 -134
- package/database/migrations/{20260909060813_optimal_sabretooth → 20260910173049_numerous_spirit}/migration.sql +24 -34
- package/database/migrations/{20260909060813_optimal_sabretooth → 20260910173049_numerous_spirit}/snapshot.json +71 -145
- package/database/migrations/20260911030320_opposite_jack_power/migration.sql +1 -0
- package/database/migrations/{20260909063821_bitter_tenebrous → 20260911030320_opposite_jack_power}/snapshot.json +57 -184
- package/features/ai/chatgpt.ts +617 -0
- package/features/ai/components/chatgpt-sign-in.tsx +66 -0
- package/features/ai/components/model-picker.tsx +17 -1
- package/features/ai/components/provider-icon.tsx +1 -0
- package/features/ai/load-tools.ts +58 -42
- package/features/ai/model.schema.ts +232 -34
- package/features/ai/model.ts +169 -24
- package/features/ai/prompts/bot.prompt.ts +156 -65
- package/features/ai/prompts/memory-edit.prompt.ts +33 -0
- package/features/ai/prompts/prompt-helper.ts +45 -26
- package/features/ai/prompts/thursday.prompt.ts +40 -17
- package/features/ai/tools/bot.tool.ts +35 -52
- package/features/ai/tools/connected.ts +17 -4
- package/features/ai/tools/memory.tool.ts +133 -72
- package/features/ai/tools/search.tool.ts +136 -47
- package/features/ai/tools/tool-name.ts +2 -5
- package/features/ai/tools/workspace.tool.ts +2 -1
- package/features/bot/bot.action.ts +8 -18
- package/features/bot/bot.memory.ts +89 -0
- package/features/bot/bot.query.ts +37 -57
- package/features/bot/bot.run.ts +507 -241
- package/features/bot/bot.runner.ts +410 -114
- package/features/bot/bot.schema.ts +79 -19
- package/features/bot/bot.seed.ts +89 -16
- package/features/bot/components/bot-mark.tsx +122 -20
- package/features/bot/components/bot-room.tsx +159 -130
- package/features/bot/components/bot-setting.tsx +790 -402
- package/features/bot/components/bot-tool.tsx +2 -6
- package/features/bot/components/mark-palette.tsx +54 -0
- package/features/bot/components/path-chips.tsx +1 -1
- package/features/bot/components/task-badge.tsx +26 -6
- package/features/bot/components/task-reply.tsx +22 -33
- package/features/bot/components/task-setting.tsx +20 -17
- package/features/bot/task.query.ts +215 -28
- package/features/bot/task.store.ts +53 -9
- package/features/config/components/config-setting.tsx +265 -34
- package/features/config/components/models-badge.tsx +42 -0
- package/features/config/config.action.ts +12 -0
- package/features/config/config.const.ts +38 -2
- package/features/connectors/mcp.manager.ts +10 -2
- package/features/intro/components/intro.tsx +47 -46
- package/features/memory/components/memory-edit.tsx +338 -0
- package/features/memory/components/memory-setting.tsx +75 -77
- package/features/memory/memory.action.ts +3 -43
- package/features/memory/memory.edit.ts +87 -0
- package/features/memory/memory.query.ts +24 -42
- package/features/memory/memory.schema.ts +29 -106
- package/features/settings/components/settings.tsx +2 -0
- package/features/settings/settings.alert.ts +3 -1
- package/features/thursday/components/ascii-orb.tsx +106 -90
- package/features/thursday/components/boot.tsx +7 -0
- package/features/thursday/components/call-log.tsx +219 -92
- package/features/thursday/components/face.tsx +6 -4
- package/features/thursday/components/tab-state.tsx +97 -0
- package/features/thursday/components/thursday-mark.tsx +4 -1
- package/features/thursday/components/thursday-setting.tsx +17 -47
- package/features/thursday/components/thursday.tsx +208 -95
- package/features/thursday/thursday.action.ts +12 -17
- package/features/thursday/thursday.query.ts +61 -70
- package/features/thursday/thursday.schema.ts +20 -7
- package/features/thursday/tool-line.ts +85 -11
- package/features/thursday/use-thursday.ts +86 -59
- package/features/workspace/components/file-view.tsx +4 -2
- package/features/workspace/workspace.ts +110 -26
- package/lib/limits.ts +1 -1
- package/lib/oauth-page.ts +27 -0
- package/lib/realtime/openai.ts +2 -2
- package/lib/realtime/realtime.protocol.ts +1 -1
- package/lib/realtime/realtime.tap.ts +122 -0
- package/lib/sandbox.ts +59 -36
- package/package.json +1 -1
- package/skills/browser/SKILL.md +55 -34
- package/.next/server/app/api/bot/notes/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/bot/notes/route.js +0 -14
- package/.next/server/app/api/bot/notes/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/memory/tidy/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/memory/tidy/route.js +0 -22
- package/.next/server/app/api/memory/tidy/route.js.nft.json +0 -1
- package/.next/server/chunks/0d-b_next_dist_server_app-render_after-task-async-storage_external_0-exn7p.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0-npkh_._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__005var5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__019dx9f._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__02_2sm-._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__04_8spk._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__05luceg._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__06t77t4._.js +0 -11
- package/.next/server/chunks/[root-of-the-server]__0bed6hu._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0cro2dz._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__0dupqt7._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__0emr6go._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0le4d-p._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0m8ywyo._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__0nfuugi._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__0p32jfz._.js +0 -12
- package/.next/server/chunks/[root-of-the-server]__0phdgco._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0wvgrsl._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__10qshki._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__11j52t0._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1692zrv._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__16thabu._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__173nhwf._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__1_aoyr9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1bn73ih._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__1bqhuh9._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__1cqizfq._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1e-ci13._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1fboj2j._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1lr7j9t._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1oli73c._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1txedx6._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__1untqv8._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1zgpz1w._.js +0 -3
- package/.next/server/chunks/_00_584r._.js +0 -293
- package/.next/server/chunks/_012yhfm._.js +0 -39
- package/.next/server/chunks/_06mxlgn._.js +0 -3
- package/.next/server/chunks/_07rtlxv._.js +0 -3
- package/.next/server/chunks/_0a351g7._.js +0 -6
- package/.next/server/chunks/_0kjjmag._.js +0 -3
- package/.next/server/chunks/_0nn99o2._.js +0 -3
- package/.next/server/chunks/_0zuzmt_._.js +0 -39
- package/.next/server/chunks/_106co2o._.js +0 -3
- package/.next/server/chunks/_12bbv5i._.js +0 -100
- package/.next/server/chunks/_15q1pig._.js +0 -3
- package/.next/server/chunks/_19wg5yn._.js +0 -138
- package/.next/server/chunks/_1bt95p9._.js +0 -55
- package/.next/server/chunks/_1cbk7ms._.js +0 -26
- package/.next/server/chunks/_1drv2et._.js +0 -40
- package/.next/server/chunks/_1ic3bew._.js +0 -5
- package/.next/server/chunks/_1mxn_lb._.js +0 -3
- package/.next/server/chunks/_1rysr-r._.js +0 -10
- package/.next/server/chunks/_1u3rwbr._.js +0 -3
- package/.next/server/chunks/_1x7p319._.js +0 -6
- package/.next/server/chunks/_next-internal_server_app_api_bot_notes_route_actions_0qcsyu7.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_memory_tidy_route_actions_0_cfuom.js +0 -3
- package/.next/server/chunks/features_bot_task_query_ts_11xuzl3._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0gzvgfv._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0vorg6w._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1tpvamf._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1vmaq9f._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y9-wcr._.js +0 -3
- package/.next/server/chunks/ssr/[externals]_node_crypto_1kn79-7._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0iuoa-r._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0un-erv._.js +0 -4
- package/.next/server/chunks/ssr/[root-of-the-server]__1-mnhyd._.js +0 -92
- package/.next/server/chunks/ssr/[root-of-the-server]__1bww500._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1vcdast._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1xwnu-h._.js +0 -3
- package/.next/server/chunks/ssr/_0-mc7ro._.js +0 -3
- package/.next/server/chunks/ssr/_01p5r6-._.js +0 -3
- package/.next/server/chunks/ssr/_03webdr._.js +0 -3
- package/.next/server/chunks/ssr/_09-0k3z._.js +0 -3
- package/.next/server/chunks/ssr/_0f_b_9s._.js +0 -3
- package/.next/server/chunks/ssr/_0fafgvl._.js +0 -3
- package/.next/server/chunks/ssr/_0sf1isi._.js +0 -3
- package/.next/server/chunks/ssr/_0su6_08._.js +0 -3
- package/.next/server/chunks/ssr/_0ti51xc._.js +0 -3
- package/.next/server/chunks/ssr/_0w5bgak._.js +0 -3
- package/.next/server/chunks/ssr/_0y84qo6._.js +0 -3
- package/.next/server/chunks/ssr/_1ciyoo3._.js +0 -3
- package/.next/server/chunks/ssr/_1e-dgz0._.js +0 -4
- package/.next/server/chunks/ssr/_1fq7zgb._.js +0 -3
- package/.next/server/chunks/ssr/_1g6l4uj._.js +0 -3
- package/.next/server/chunks/ssr/_1ruzehw._.js +0 -3
- package/.next/server/chunks/ssr/features_bot_components_bot-setting_tsx_01ajft6._.js +0 -4
- package/.next/server/chunks/ssr/features_config_components_14jqgy4._.js +0 -3
- package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +0 -4
- package/.next/server/chunks/ssr/node_modules_zod_v4_classic_external_15fmmz3.js +0 -55
- package/.next/static/chunks/05b6nx_o3_f_n.js +0 -1
- package/.next/static/chunks/0dmns-gi0raa4.js +0 -1
- package/.next/static/chunks/0f9sq-7q_yxyl.js +0 -1
- package/.next/static/chunks/0oc4_xoia77dg.css +0 -1
- package/.next/static/chunks/0pheo8m3a-rzi.js +0 -1
- package/.next/static/chunks/19i8h2t-5evjx.js +0 -1
- package/.next/static/chunks/1c5fcj473025q.js +0 -1
- package/.next/static/chunks/1pi_hbmjw-f-z.js +0 -1
- package/.next/static/chunks/1twt6k09vg4np.js +0 -1
- package/.next/static/chunks/1ytnip8wdng93.js +0 -1
- package/.next/static/chunks/28gotuisldmom.js +0 -1
- package/.next/static/chunks/2998p0y7k1c8z.js +0 -3
- package/.next/static/chunks/29gyb3nubj51j.js +0 -53
- package/.next/static/chunks/2l233xfycjpd8.js +0 -1
- package/.next/static/chunks/2p5n7pa3c40t-.js +0 -2
- package/.next/static/chunks/2ru1q132af7h7.js +0 -1
- package/.next/static/chunks/2t8wqycwg3y04.js +0 -2
- package/.next/static/chunks/2uxum7qbyeyxd.js +0 -1
- package/.next/static/chunks/32z_ypgtchw48.js +0 -1
- package/.next/static/chunks/33pyjb3xd1iez.js +0 -1
- package/.next/static/chunks/3omud5xunrk1f.js +0 -1
- package/.next/static/chunks/42dnrkbph9e-1.js +0 -1
- package/.next/static/media/favicon.2vob68tjqpejf.ico +0 -0
- package/database/migrations/20260909063821_bitter_tenebrous/migration.sql +0 -1
- package/features/ai/prompts/memory-tidy.prompt.ts +0 -129
- package/features/ai/tools/tidy.tool.ts +0 -22
- package/features/bot/bot.notes.ts +0 -120
- package/features/memory/components/memory-tidy.tsx +0 -395
- package/features/memory/memory.tidy.ts +0 -332
- package/features/memory/tidy.query.ts +0 -135
- package/features/thursday/use-call-title.ts +0 -31
- /package/.next/server/app/api/bot/{notes → memory/files}/route/build-manifest.json +0 -0
- /package/.next/server/app/api/bot/{notes → memory/files}/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/bot/{notes → memory/files}/route.js.map +0 -0
- /package/.next/server/app/api/{memory/tidy → bot/memory}/route/build-manifest.json +0 -0
- /package/.next/server/app/api/{memory/tidy → bot/memory}/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/{memory/tidy → bot/memory}/route.js.map +0 -0
- /package/.next/static/{YR4NWcDDuzwLbTTU7U7Vr → x1cCqY0kWpR_VcYx_lWO5}/_buildManifest.js +0 -0
- /package/.next/static/{YR4NWcDDuzwLbTTU7U7Vr → x1cCqY0kWpR_VcYx_lWO5}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{YR4NWcDDuzwLbTTU7U7Vr → x1cCqY0kWpR_VcYx_lWO5}/_ssgManifest.js +0 -0
|
@@ -1,43 +1,41 @@
|
|
|
1
|
-
module.exports=[738131,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(868468),f=a.i(569572),g=a.i(938934),h=a.i(978876),i=a.i(375827),j=a.i(138902),k=a.i(345846),l=a.i(622547),m=a.i(451017),n=a.i(705881),o=a.i(762008),p=a.i(547613),q=a.i(221214),r=a.i(446957),s=a.i(986743),t=a.i(138100),u=a.i(569549),v=a.i(821415),w=a.i(706210),x=a.i(176668),y=a.i(987674),z=a.i(182248),A=a.i(875931),B=b([j,k,q,s,u,A]);async function C(b){let{listTaskHistory:c}=await a.A(242808),d=await c({limit:5});if(!d.length)return"No jobs have been handed over yet.";let e=d.map(a=>`"${a.label}" (${a.bot}, ${a.status})`).join(", ");return`There is no job called "${b}". The latest are: ${e}. Call again with one of those names.`}async function D(a,b){let c=[];for(let[a,e]of Object.entries(b)){let b=await (0,d.asSchema)(e.inputSchema).jsonSchema,f="string"==typeof e.description?e.description:"";c.push({name:a,tokens:(0,y.estimateTokens)(f)+(0,y.estimateTokens)(JSON.stringify(b))})}c.sort((a,b)=>b.tokens-a.tokens);let e=c.reduce((a,b)=>a+b.tokens,0);x.logger.debug(`${a} tools ${e} tokens over ${c.length} — ${c.map(a=>`${a.name} ${a.tokens}`).join(", ")}`)}async function E(a){let b=await F(a);return f.IS_DEV&&await D(a.target,b),b}async function F(b){let c=(0,k.createMemoryTools)("tidy"===b.target?"tidy":"call");if("tidy"===b.target){let{[o.TOOL_NAMES.memory_show]:a,...b}=c;return{...b,[o.TOOL_NAMES.tidy_done]:n.tidyDoneTool}}let f=await (0,v.openWorkspace)();if("thursday"===b.target){var x;let{[o.TOOL_NAMES.memory_show]:j,...k}=c,{crowded:l,heavy:n}=(0,g.tidying)(await (0,s.listNoteIndex)()),q=await (0,u.readCallSkillsOn)()?(0,m.createSkillTools)({sandbox:f,skills:await (0,t.loadSkills)(f)}):{};return{...k,...l||n.length?{[o.TOOL_NAMES.memory_show]:j}:{},...q,...(0,p.createWorkspaceTools)(f,{write:!1}),...(x=b.callId,{[o.TOOL_NAMES.delegate]:(0,d.tool)({description:h.delegateSpec.description,inputSchema:h.delegateSpec.parameters,execute:async({bot:b,request:c,label:d})=>{let{findJobBot:e,listJobBots:f}=await a.A(276307),g=await e(b);if(!g){let a=(await f()).map(a=>a.name);return`There is no bot called "${b}". The bots are: ${a.join(", ")}. Nothing was handed over — call again with one of those.`}let{startTask:h}=await a.A(763543);return{taskId:await h({bot:g.name,request:c,label:d,callId:x}),note:`${g.name} has "${d}". Say so and keep talking — the result is put in front of you later. Everything further about it — an answer, a correction, carrying it on after it reports — is \`${o.TOOL_NAMES.task}\` with "${d}".`}}}),[o.TOOL_NAMES.task]:(0,d.tool)({description:h.taskSpec.description,inputSchema:h.taskSpec.parameters,execute:async({action:b,task:c,answer:d})=>{let{listTaskHistory:f,resolveTask:h}=await a.A(242808);if("status"===b){let a=d?.trim()?{note:"The text in `answer` was not passed on — `status` only reads. Send it again as `answer` if the bot is meant to hear it."}:{},b={now:(0,g.clockNow)()};if(c){let d=await h(c);return d?{...b,...a,label:d.label,bot:d.bot,status:d.status,since:(0,e.formatDistanceToNowStrict)((0,w.toDate)(d.updatedAt),{addSuffix:!0}),outcome:d.outcome,..."waiting"===d.status&&d.pending?.options.length?{options:d.pending.options}:{}}:await C(c)}let i=await f({limit:8});return{...b,...a,tasks:i.map(a=>({label:a.label,bot:a.bot,status:a.status,since:(0,e.formatDistanceToNowStrict)((0,w.toDate)(a.updatedAt),{addSuffix:!0}),...a.ask?{asking:a.ask.question,options:a.ask.options}:{},..."running"===a.status?{now:(0,r.taskActivity)(a.lines)}:{},...a.outcome&&"waiting"!==a.status?{outcome:(0,z.clip)(a.outcome,200)}:{}}))}}if(!c)return"Say which job — by its label. Call `status` with no job named to see them.";let i=await h(c);if(!i)return await C(c);let{answerTask:j,cancelTask:k}=await a.A(763543);return"cancel"===b?(await k(i.id),{label:i.label,status:"cancelled"}):d?.trim()?(await j(i.id,d.trim()),{label:i.label,status:"running",note:"running"===i.status?"The bot reads it before its next step.":"The bot picks the job back up from there."}):"Say what to pass on."}})}),...i.CALL_TOOLS}}let y=await (0,t.loadSkills)(f);return{[o.TOOL_NAMES.memory_recall]:c[o.TOOL_NAMES.memory_recall],[o.TOOL_NAMES.memory_remember]:k.botRememberTool,...(0,l.createSearchTool)(await (0,A.resolveSearchModel)(b.model),f),...(0,p.createWorkspaceTools)(f,{write:!0,env:(0,v.jobShellEnv)(b.taskId),guide:!0}),...await (0,j.createMcpTools)(b.bot,f),...(0,m.createSkillTools)({sandbox:f,skills:y}),[o.TOOL_NAMES.ask_thursday]:h.askThursdayTool,[o.TOOL_NAMES.report]:(0,h.createReportTool)(await (0,q.readBotNotesOn)())}}[j,k,q,s,u,A]=B.then?(await B)():B,a.s(["loadTools",0,E]),c()}catch(a){c(a)}},!1),875931,a=>a.a(async(b,c)=>{try{var d=a.i(938537),e=a.i(140358),f=a.i(345364),g=a.i(655819),h=a.i(652685),i=a.i(438766),j=a.i(688034),k=a.i(725466),l=a.i(176668),m=a.i(293480),n=a.i(182248),o=a.i(689656),p=b([k]);function q(a,b){switch(a.provider){case"openai":{let c=(0,f.createOpenAI)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch()}}}case"anthropic":{let c=(0,d.createAnthropic)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch_20260209()}}}case"google":{let c=(0,e.createGoogleGenerativeAI)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.googleSearch({})}}}case"xai":{let c=(0,g.createXai)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch()}}}case"vercel-ai-gateway":{let c=(0,i.createGateway)({apiKey:b});return{ref:a,model:c(a.model),searchTools:null}}default:(0,m.publicError)(`Not supported provider: ${String(a.provider)}`)}}[k]=p.then?(await p)():p;let z=null;function r(a){if(null==a||""===a)return null;let b=Number(a);return Number.isFinite(b)?Math.round(1e6*b*1e4)/1e4:null}async function s(){if(z&&Date.now()-z.at<6e5)return z.models;let a=await fetch("https://ai-gateway.vercel.sh/v1/models",{headers:{accept:"application/json"}}).catch(a=>{l.logger.warn({cause:a},"gateway catalog unreachable"),(0,m.publicError)("Could not reach the gateway")});a.ok||(0,m.publicError)(`The gateway answered ${a.status}`);let b=((await a.json()).data??[]).filter(a=>!!a.id).map(a=>{let b;return{id:a.id,label:a.name||a.id,owner:a.owned_by||a.id.slice(0,a.id.indexOf("/")),type:(b=a.type??null)===o.GATEWAY_TEXT&&(a.modalities?.output??[]).includes("image")?"image":b,tags:a.tags??[],price:function(a){let b=a.pricing??{},c=r(b.input),d=r(b.output);if((a.tags??[]).includes("free")||0===c)return{in:0,out:0,note:null,free:!0};let e=b.transcription_duration_cost_per_second??b.realtime_session_duration_cost_per_second;if(e)return{in:null,out:null,note:`$${e}/s`,free:!1};if(b.speech_input_character_cost)return{in:null,out:null,note:"per character",free:!1};let f=Array.isArray(b.video_duration_pricing)?b.video_duration_pricing[0]:null;if(f)return{in:null,out:null,note:`$${f.cost_per_second}/s ${f.resolution}`,free:!1};let g=b.image?`$${b.image}/image`:b.image_dimension_quality_pricing?"per image, by size":null;return null===c&&null===d?{in:null,out:null,note:g,free:!1}:{in:c,out:d,note:b.input_tiers?"tiered":b.varies_by_provider?"varies":g&&"+ per image",free:!1}}(a),retiring:!!a.deprecated_at}}).sort((a,b)=>a.id.localeCompare(b.id));return z={at:Date.now(),models:b},b}async function t(){return await s().then(a=>new Set(a.map(a=>a.id))).catch(()=>null)}async function u(a,b){if("vercel-ai-gateway"!==a)return b;let c=await t();if(!c)return b;let d=b.filter(a=>c.has(a.id));return d.length>0?d:b}async function v(a){let{label:b,apiKeyName:c}=o.TEXT_MODEL_PROVIDERS[a.provider],d=await (0,k.readConfig)(c);return d||(0,m.publicError)(`No ${b} key — add one in Config.`),q(a,d)}async function w(a){let b=async a=>(0,o.defaultModelOf)({suggestModels:await u(a.id,a.suggestModels)}),c=a?o.TEXT_MODEL_PROVIDER_LIST.find(b=>b.id===a):void 0,d=o.SPEACH_MODEL_PROVIDER_LIST.map(a=>({...o.TEXT_MODEL_PROVIDERS[a.id],id:a.id}));if(c){let a=await b(c);if(a)return{provider:c.id,model:a}}let e=(0,o.parseTextModel)(await (0,k.readConfig)(j.DEFAULT_MODEL_KEY)??void 0);if(e&&await (0,k.readConfig)(o.TEXT_MODEL_PROVIDERS[e.provider].apiKeyName))return e;for(let a of[...d,...o.TEXT_MODEL_PROVIDER_LIST]){if(!await (0,k.readConfig)(a.apiKeyName))continue;let c=await b(a);if(c)return l.logger.info(`no model set, falling back to ${a.id}/${c}`),{provider:a.id,model:c}}(0,m.publicError)("No model key is set — add one in Config")}async function x(a){if(a?.searchTools)return a;for(let a of o.TEXT_MODEL_PROVIDER_LIST){let b=await (0,k.readConfig)(a.apiKeyName),c=(0,o.cheapestModelOf)(a);if(!b||!c)continue;let d=q({provider:a.id,model:c},b);if(d.searchTools)return d}return null}async function y(a){let b=(0,o.parseMediaModel)(await (0,k.readConfig)(j.MEDIA_MODEL_KEYS[a]));if(!b||!(0,o.canMakeKind)(b.provider,a))return null;let c=await (0,k.readConfig)(o.MEDIA_MODEL_PROVIDERS[b.provider].apiKeyName);return c?{ref:b,apiKey:c}:null}a.s(["buildImageModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).image(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).image(a.model);case"xai":return(0,g.createXai)({apiKey:b}).image(a.model);case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).image(a.model);default:(0,m.publicError)(`Not supported image provider: ${String(a.provider)}`)}},"buildSpeechModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).speech(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).speech(a.model);case"xai":return(0,g.createXai)({apiKey:b}).speech();case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).speech(a.model);default:(0,m.publicError)(`Not supported speech provider: ${String(a.provider)}`)}},"buildTranscriptionModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).transcription(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).transcription(a.model);case"xai":return(0,g.createXai)({apiKey:b}).transcription();case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).transcription(a.model);default:(0,m.publicError)(`Not supported transcription provider: ${String(a.provider)}`)}},"buildVideoModel",0,function(a,b){switch(a.provider){case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).video(a.model);case"xai":return(0,g.createXai)({apiKey:b}).video(a.model);case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).video(a.model);default:(0,m.publicError)(`${a.provider} has no video model`)}},"getTextModel",0,v,"modelErrorToString",0,function(a){if(!h.APICallError.isInstance(a))return(0,n.errorToString)(a);let b=a.statusCode?` (${a.statusCode})`:"",c=a.responseBody?.trim(),d=c&&!c.includes(a.message)?` ${(0,n.clip)(c,300)}`:"";return`${a.message}${b}${d}`},"resolveDefaultModel",0,w,"resolveMediaRef",0,y,"resolveSearchModel",0,x]),c()}catch(a){c(a)}},!1),735502,a=>a.a(async(b,c)=>{try{var d=a.i(569572),e=a.i(762008),f=a.i(221214),g=a.i(947950),h=a.i(986743),i=a.i(138100),j=a.i(821415),k=a.i(176668),l=a.i(182248),m=a.i(644468),n=a.i(938934),o=b([f,g,h,m]);async function p(a,b,c,l){var o,p,w,z,A,B,C,D;let E,F,G,H=await (0,j.openWorkspace)(),I=a.trim(),[J,K,L,M,N,O,P,Q,R]=await Promise.all([(0,i.loadSkills)(H),(0,h.listNoteIndex)(),(0,h.listAlwaysLoaded)(),(0,m.listConnectedToolNames)(),(0,g.findPinnedTools)(I),(0,f.listJobBots)(),(0,f.readBotNote)(I),(0,f.readBotNotesOn)(),(0,j.readMachineTools)(H)]),S=c?[]:O.filter(a=>a.name!==I),T=[c?(o=I,p=c,[`You are ${o}, a worker. ${p} is holding a job Thursday handed them and has handed one part of it to you. The user speaks to Thursday and to nobody else; you never address them, and what you hand back goes into ${p}'s report as-is. This thread is drawn on their screen while you work: not written to them, but not private either. ${(0,n.nowLine)()}`,q,r].join("\n\n")):(w=I,[`You are ${w}, a worker. Thursday handed you a job while she keeps talking to the user — they speak to her and to nobody else, and what she reads them out of your report is the only part of this that reaches them. You are not in that conversation and never address the user. This thread is drawn on their screen while you work, though: not written to them, but not private either. ${(0,n.nowLine)()}`,q,r].join("\n\n")),(z=K,A=L,E=`## Memory
|
|
1
|
+
module.exports=[652619,a=>a.a(async(b,c)=>{try{var d=a.i(666680),e=a.i(347299),f=a.i(345364),g=a.i(47919),h=a.i(868468),i=a.i(53112),j=a.i(203469),k=a.i(569572),l=a.i(725466),m=a.i(176668),n=a.i(523095),o=a.i(293480),p=a.i(8412),q=a.i(182248),r=a.i(689656),s=b([l]);[l]=s.then?(await s)():s;let C="app_EMoamEEZ73f0CkXaXp7hrann",D="http://localhost:1455/auth/callback",E="thursday",{apiKeyName:F,label:G}=r.TEXT_MODEL_PROVIDERS.chatgpt,H=`${G} is not signed in — sign in from Config.`,I=i.z.object({access:i.z.string().min(1),refresh:i.z.string().min(1),expires:i.z.number(),accountId:i.z.string().min(1),plan:i.z.string().nullable()}),J=globalThis,K=J.__chatgptRenewal??=(0,p.createKeyedLock)();async function t(){u();let a=(0,d.randomBytes)(32).toString("base64url"),b=(0,d.randomBytes)(16).toString("hex"),c=(0,e.createServer)((d,e)=>{v(d.url??"/",{state:b,verifier:a}).then(a=>{e.writeHead(a.status,{"content-type":"text/html; charset=utf-8"}),e.end((0,n.oauthPage)(a.title,a.detail,{autoClose:200===a.status}),()=>{a.last&&J.__chatgptListener===c&&u()})})});await new Promise((a,b)=>{c.once("error",b),c.listen(1455,"127.0.0.1",()=>a())}).catch(a=>{(0,o.publicError)("EADDRINUSE"===a.code?"Port 1455 is in use — another ChatGPT or Codex sign-in is waiting. Finish or close it, then try again.":`Could not wait for the sign-in: ${(0,q.errorToString)(a)}`)}),J.__chatgptListener=c,setTimeout(()=>{J.__chatgptListener===c&&u()},k.CHATGPT_SIGN_IN.waitMs).unref();let f=new URL("https://auth.openai.com/oauth/authorize");return f.search=new URLSearchParams({response_type:"code",client_id:C,redirect_uri:D,scope:"openid profile email offline_access",code_challenge:(0,d.createHash)("sha256").update(a).digest("base64url"),code_challenge_method:"S256",state:b,id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:E}).toString(),f.toString()}function u(){let a=J.__chatgptListener;J.__chatgptListener=null,a?.close(),a?.closeIdleConnections()}async function v(a,b){let c=new URL(a,D);if("/auth/callback"!==c.pathname)return{status:404,title:"Not found",detail:"",last:!1};let d=c.searchParams.get("error");if(d){let a=c.searchParams.get("error_description");return{status:400,title:"Sign-in failed",detail:a?`${d}: ${a}`:d,last:!0}}let e=c.searchParams.get("code");if(!e||c.searchParams.get("state")!==b.state)return{status:400,title:"Sign-in failed",detail:"This is not the sign-in that was started. Start again from Config.",last:!1};try{let a=await w({grant_type:"authorization_code",code:e,code_verifier:b.verifier,redirect_uri:D});return await (0,l.writeConfig)(F,JSON.stringify(a)),j.appEvents.emit({type:"config"}),{status:200,title:"Signed in to ChatGPT",detail:"Bots can run on your plan now. This window closes itself.",last:!0}}catch(a){return m.logger.warn({cause:a},"chatgpt sign-in failed"),{status:502,title:"Sign-in failed",detail:(0,q.errorToString)(a),last:!0}}}async function w(a){let b=await fetch("https://auth.openai.com/oauth/token",{method:"POST",headers:{accept:"application/json","content-type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:C,...a})}).catch(a=>{m.logger.warn({cause:a},"chatgpt token endpoint unreachable"),(0,o.publicError)("Could not reach ChatGPT's sign-in")}),c=await b.json().catch(()=>null),d=c?.access_token;if(!b.ok||!d){let a=c?.error,d="string"==typeof a?[a,c?.error_description].filter(Boolean).join(": "):a?.message??a?.code??"";(0,o.publicError)(`ChatGPT's sign-in answered ${b.status}${d?`: ${d}`:""}`)}let e=function(a){try{let b=JSON.parse(Buffer.from(a.split(".")[1]??"","base64url").toString("utf8")),c=b["https://api.openai.com/auth"]??{};return{accountId:"string"==typeof c.chatgpt_account_id?c.chatgpt_account_id:null,plan:"string"==typeof c.chatgpt_plan_type?c.chatgpt_plan_type:null,expires:"number"==typeof b.exp?1e3*b.exp:null}}catch{return{accountId:null,plan:null,expires:null}}}(d),f=c?.refresh_token??a.refresh_token;e.accountId&&f||(0,o.publicError)("ChatGPT's sign-in came back without an account");let g=c?.expires_in;return{access:d,refresh:f,expires:"number"==typeof g?Date.now()+1e3*g:e.expires??Date.now(),accountId:e.accountId,plan:e.plan}}async function x(){let a=await (0,l.readConfig)(F);if(!a)return null;try{return I.parse(JSON.parse(a))}catch{return null}}let L=a=>a.expires-k.CHATGPT_SIGN_IN.renewBeforeMs<=Date.now();async function y(){let a=await x();return(a||(0,o.publicError)(H),L(a))?K(F,async()=>{let a=await x();if(a||(0,o.publicError)(H),!L(a))return a;try{let b=await w({grant_type:"refresh_token",refresh_token:a.refresh});return await (0,l.writeConfig)(F,JSON.stringify(b)),b}catch(a){(0,o.publicError)(`Could not renew the ${G} sign-in (${(0,q.errorToString)(a)}). If it keeps failing, sign in again from Config.`)}}):a}async function z(a,b){let c=await y(),d=new Headers(b?.headers);if(d.set("authorization",`Bearer ${c.access}`),d.set("chatgpt-account-id",c.accountId),d.set("originator",E),b?.method!=="POST"||"string"!=typeof b.body||!String(a).endsWith("/responses"))return fetch(a,{...b,headers:d});let e=JSON.parse(b.body),f=!0===e.stream,g=[];e.input=(e.input??[]).filter(a=>"system"!==a.role&&"developer"!==a.role||(g.push("string"==typeof a.content?a.content:(a.content??[]).map(a=>a.text??"").join("\n")),!1)),e.instructions=[e.instructions,...g].filter(Boolean).join("\n\n")||"You are a helpful assistant.",e.store=!1,e.stream=!0,e.max_output_tokens=void 0,d.set("accept","text/event-stream");let h=await fetch(a,{...b,headers:d,body:JSON.stringify(e)});return 429===h.status?A(h):f||!h.ok?h:B(h)}async function A(a){let b=await a.text(),c={};try{c=JSON.parse(b).error??{}}catch{}if(!/usage_limit_reached|usage_not_included/.test(`${c.code} ${c.type}`)){let c=a.headers.get("retry-after");return new Response(b,{status:429,headers:{"content-type":"application/json",...c?{"retry-after":c}:{}}})}let d=c.resets_at?1e3*c.resets_at:c.resets_in_seconds?Date.now()+1e3*c.resets_in_seconds:null,e=c.plan_type?` on the ${c.plan_type} plan`:"",f=d?` It resets in ${(0,h.formatDistanceToNowStrict)(d)}.`:"";return Response.json({error:{message:`${G} usage limit reached${e}.${f}`,code:c.code??c.type}},{status:402})}async function B(a){let b=[],c=null,d=null;for(let e of(await a.text()).replaceAll("\r\n","\n").split("\n\n")){let a,f=e.split("\n").filter(a=>a.startsWith("data:")).map(a=>a.slice(5).trimStart()).join("\n");if(f&&"[DONE]"!==f){try{a=JSON.parse(f)}catch{continue}"response.output_item.done"===a.type?b.push(a.item):"response.completed"===a.type||"response.incomplete"===a.type?c=a.response??{}:"response.failed"===a.type?d=a.response?.error??{message:"The response failed"}:"error"===a.type&&(d={code:a.code,message:a.message})}}return d||!c?Response.json({error:{message:d?.message??"The stream ended before the response finished",code:d?.code}},{status:d?.code==="context_length_exceeded"?400:500}):Response.json({...c,output:c.output?.length?c.output:b})}a.s(["chatGptModel",0,function(a){let b=(0,f.createOpenAI)({baseURL:"https://chatgpt.com/backend-api/codex",apiKey:"signed-in",headers:{"OpenAI-Beta":"responses=experimental"},fetch:z}),c=(0,d.randomUUID)();return(0,g.wrapLanguageModel)({model:b.responses(a),middleware:{transformParams:async({params:a})=>({...a,providerOptions:{...a.providerOptions,openai:{promptCacheKey:c,...a.providerOptions?.openai,store:!1}}})}})},"startChatGptSignIn",0,t]),c()}catch(a){c(a)}},!1),738131,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(868468),f=a.i(569572),g=a.i(938934),h=a.i(978876),i=a.i(375827),j=a.i(138902),k=a.i(345846),l=a.i(622547),m=a.i(451017),n=a.i(762008),o=a.i(547613),p=a.i(446957),q=a.i(986743),r=a.i(138100),s=a.i(569549),t=a.i(821415),u=a.i(706210),v=a.i(176668),w=a.i(987674),x=a.i(182248),y=b([j,k,l,q,s]);async function z(b){let{listTaskHistory:c}=await a.A(242808),d=await c({limit:5});if(!d.length)return"No jobs have been handed over yet.";let e=d.map(a=>`"${a.label}" (${a.bot}, ${a.status})`).join(", ");return`There is no job called "${b}". The latest are: ${e}. Call again with one of those names.`}async function A(a,b){let c=[];for(let[a,e]of Object.entries(b)){let b=await (0,d.asSchema)(e.inputSchema).jsonSchema,f="string"==typeof e.description?e.description:"";c.push({name:a,tokens:(0,w.estimateTokens)(f)+(0,w.estimateTokens)(JSON.stringify(b))})}c.sort((a,b)=>b.tokens-a.tokens);let e=c.reduce((a,b)=>a+b.tokens,0);v.logger.debug(`${a} tools ${e} tokens over ${c.length} — ${c.map(a=>`${a.name} ${a.tokens}`).join(", ")}`)}async function B(a){let b=await C(a);return f.IS_DEV&&await A(a.target,b),b}async function C(b){if("memory-edit"===b.target){let a=(0,k.createMemoryTools)("user",null,{countReads:!1});return{[n.TOOL_NAMES.memory_recall]:a[n.TOOL_NAMES.memory_recall],[n.TOOL_NAMES.memory_remember]:a[n.TOOL_NAMES.memory_remember],[n.TOOL_NAMES.memory_forget]:a[n.TOOL_NAMES.memory_forget]}}let c=(0,k.createMemoryTools)("call","thursday"===b.target?b.callId??null:null),f=await (0,t.openWorkspace)();if("thursday"===b.target){var v;let{[n.TOOL_NAMES.memory_show]:j,...k}=c,{crowded:l,heavy:t}=(0,g.tidying)(await (0,q.listNoteIndex)()),w=await (0,s.readCallSkillsOn)()?(0,m.createSkillTools)({sandbox:f,skills:await (0,r.loadSkills)(f)}):{};return{...k,...l||t.length?{[n.TOOL_NAMES.memory_show]:j}:{},...w,...(0,o.createWorkspaceTools)(f,{write:!1}),...(v=b.callId,{[n.TOOL_NAMES.delegate]:(0,d.tool)({description:h.delegateSpec.description,inputSchema:h.delegateSpec.parameters,execute:async({bot:b,request:c,label:d})=>{let{findJobBot:e,listJobBots:f}=await a.A(276307),g=await e(b);if(!g||g.disabled){let a=(await f()).map(a=>a.name);return`There is no bot called "${b}". The bots are: ${a.join(", ")}. Nothing was handed over — call again with one of those.`}let{startTask:h}=await a.A(763543);return{taskId:await h({bot:g.name,request:c,label:d,callId:v}),note:`${g.name} has "${d}". Say so and keep talking — the result is put in front of you later. Everything further about it — an answer, a correction, carrying it on after it answers — is \`${n.TOOL_NAMES.task}\` with "${d}".`}}}),[n.TOOL_NAMES.task]:(0,d.tool)({description:h.taskSpec.description,inputSchema:h.taskSpec.parameters,execute:async({action:b,task:c,answer:d})=>{let{listTaskHistory:f,resolveTask:h}=await a.A(242808);if("status"===b){let a=d?.trim()?{note:"The text in `answer` was not passed on — `status` only reads. Send it again as `answer` if the bot is meant to hear it."}:{},b={now:(0,g.clockNow)()};if(c){let d=await h(c);return d?{...b,...a,label:d.label,bot:d.bot,status:d.status,since:(0,e.formatDistanceToNowStrict)((0,u.toDate)(d.updatedAt),{addSuffix:!0}),outcome:d.outcome,..."waiting"===d.status&&d.pending?.options.length?{options:d.pending.options}:{}}:await z(c)}let i=await f({limit:8});return{...b,...a,tasks:i.map(a=>({label:a.label,bot:a.bot,status:a.status,since:(0,e.formatDistanceToNowStrict)((0,u.toDate)(a.updatedAt),{addSuffix:!0}),...a.ask?{asking:a.ask.question,options:a.ask.options}:{},..."running"===a.status?{now:(0,p.taskActivity)(a.lines)}:{},...a.outcome&&"waiting"!==a.status?{outcome:(0,x.clip)(a.outcome,200)}:{}}))}}let{listInboxTasks:i}=await a.A(242808),j=c?await h(c):"answer"===b?(await i())[0]??null:null;if(!j)return c?await z(c):"answer"===b?"No job has moved yet — say which one, or check `status` first.":"Say which job — by its label. Call `status` with no job named to see them.";let{answerTask:k,cancelTask:l}=await a.A(763543);return"cancel"===b?(await l(j.id),{label:j.label,status:"cancelled"}):d?.trim()?(await k(j.id,d.trim()),{label:j.label,bot:j.bot,status:"running",note:"running"===j.status?"The bot reads it before its next step.":"The bot picks the job back up from there."}):"Say what to pass on."}})}),...i.CALL_TOOLS}}let w=await (0,r.loadSkills)(f);return{[n.TOOL_NAMES.memory_recall]:c[n.TOOL_NAMES.memory_recall],[n.TOOL_NAMES.memory_conversation]:c[n.TOOL_NAMES.memory_conversation],...await (0,l.createSearchTool)(b.model,f),...(0,o.createWorkspaceTools)(f,{write:!0,env:(0,t.jobShellEnv)(b.session),guide:!0}),...await (0,j.createMcpTools)(b.bot,f),...(0,m.createSkillTools)({sandbox:f,skills:w}),[n.TOOL_NAMES.ask_thursday]:h.askThursdayTool,[n.TOOL_NAMES.answer]:h.answerTool}}[j,k,l,q,s]=y.then?(await y)():y,a.s(["loadTools",0,B]),c()}catch(a){c(a)}},!1),875931,a=>a.a(async(b,c)=>{try{var d=a.i(938537),e=a.i(140358),f=a.i(345364),g=a.i(655819),h=a.i(652685),i=a.i(438766),j=a.i(47919);a.i(569572);var k=a.i(688034),l=a.i(725466),m=a.i(176668),n=a.i(293480),o=a.i(182248),p=a.i(652619),q=a.i(689656),r=b([l,p]);[l,p]=r.then?(await r)():r;let A=new Set(["ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","ENOTFOUND","EAI_AGAIN","ENETUNREACH","EHOSTUNREACH","UND_ERR_SOCKET","UND_ERR_CLOSED","UND_ERR_CONNECT_TIMEOUT","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT"]),B=/context[ _-]?(length|window)|maximum context|prompt is too long|too many (input )?tokens|input token count|exceeds? the (maximum|model'?s?) (context|input|prompt|number of tokens)|maximum prompt length|request (entity )?too large/i,C=null;function s(a){if(null==a||""===a)return null;let b=Number(a);return Number.isFinite(b)?Math.round(1e6*b*1e4)/1e4:null}async function t(){if(C&&Date.now()-C.at<6e5)return C.models;let a=await fetch("https://ai-gateway.vercel.sh/v1/models",{headers:{accept:"application/json"}}).catch(a=>{m.logger.warn({cause:a},"gateway catalog unreachable"),(0,n.publicError)("Could not reach the gateway")});a.ok||(0,n.publicError)(`The gateway answered ${a.status}`);let b=((await a.json()).data??[]).filter(a=>!!a.id).map(a=>{let b;return{id:a.id,label:a.name||a.id,owner:a.owned_by||a.id.slice(0,a.id.indexOf("/")),type:(b=a.type??null)===q.GATEWAY_TEXT&&(a.modalities?.output??[]).includes("image")?"image":b,tags:a.tags??[],price:function(a){let b=a.pricing??{},c=s(b.input),d=s(b.output);if((a.tags??[]).includes("free")||0===c)return{in:0,out:0,note:null,free:!0};let e=b.transcription_duration_cost_per_second??b.realtime_session_duration_cost_per_second;if(e)return{in:null,out:null,note:`$${e}/s`,free:!1};if(b.speech_input_character_cost)return{in:null,out:null,note:"per character",free:!1};let f=Array.isArray(b.video_duration_pricing)?b.video_duration_pricing[0]:null;if(f)return{in:null,out:null,note:`$${f.cost_per_second}/s ${f.resolution}`,free:!1};let g=b.image?`$${b.image}/image`:b.image_dimension_quality_pricing?"per image, by size":null;return null===c&&null===d?{in:null,out:null,note:g,free:!1}:{in:c,out:d,note:b.input_tiers?"tiered":b.varies_by_provider?"varies":g&&"+ per image",free:!1}}(a),retiring:!!a.deprecated_at,contextWindow:"number"==typeof a.context_window&&a.context_window>0?a.context_window:null}}).sort((a,b)=>a.id.localeCompare(b.id));return C={at:Date.now(),models:b},b}async function u(a,b){if(b&&b>0)return b;let c="vercel-ai-gateway"===a.provider?await t().catch(()=>[]):[];return(0,q.compactAtFor)((0,q.contextWindowOf)(a.provider,a.model,c))}async function v(){return await t().then(a=>new Set(a.map(a=>a.id))).catch(()=>null)}async function w(a,b){if("vercel-ai-gateway"!==a)return b;let c=await v();if(!c)return b;let d=b.filter(a=>c.has(a.id));return d.length>0?d:b}async function x(a){let{label:b,apiKeyName:c,signIn:h}=q.TEXT_MODEL_PROVIDERS[a.provider],j=await (0,l.readConfig)(c);return j||(0,n.publicError)(h?`${b} is not signed in — sign in from Config.`:`No ${b} key — add one in Config.`),function(a,b){switch(a.provider){case"openai":{let c=(0,f.createOpenAI)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch()}}}case"chatgpt":return{ref:a,model:(0,p.chatGptModel)(a.model),searchTools:null};case"anthropic":{let c=(0,d.createAnthropic)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch_20260209()}}}case"google":{let c=(0,e.createGoogleGenerativeAI)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.googleSearch({})}}}case"xai":{let c=(0,g.createXai)({apiKey:b});return{ref:a,model:c(a.model),searchTools:{search:c.tools.webSearch()}}}case"vercel-ai-gateway":{let c=(0,i.createGateway)({apiKey:b});return{ref:a,model:c(a.model),searchTools:null}}default:(0,n.publicError)(`Not supported provider: ${String(a.provider)}`)}}(a,j)}async function y(a){let b=async a=>(0,q.defaultModelOf)({suggestModels:await w(a.id,a.suggestModels)}),c=a?q.TEXT_MODEL_PROVIDER_LIST.find(b=>b.id===a):void 0,d=q.SPEACH_MODEL_PROVIDER_LIST.map(a=>({...q.TEXT_MODEL_PROVIDERS[a.id],id:a.id}));if(c){let a=await b(c);if(a)return{provider:c.id,model:a}}let e=(0,q.parseTextModel)(await (0,l.readConfig)(k.DEFAULT_MODEL_KEY)??void 0);if(e&&await (0,l.readConfig)(q.TEXT_MODEL_PROVIDERS[e.provider].apiKeyName))return e;for(let a of[...d,...q.TEXT_MODEL_PROVIDER_LIST]){if(!await (0,l.readConfig)(a.apiKeyName))continue;let c=await b(a);if(c)return m.logger.info(`no model set, falling back to ${a.id}/${c}`),{provider:a.id,model:c}}(0,n.publicError)("No model key is set — add one in Config")}async function z(a){let b=(0,q.parseMediaModel)(await (0,l.readConfig)(k.MEDIA_MODEL_KEYS[a]));if(!b||!(0,q.canMakeKind)(b.provider,a))return null;let c=await (0,l.readConfig)(q.MEDIA_MODEL_PROVIDERS[b.provider].apiKeyName);return c?{ref:b,apiKey:c}:null}a.s(["buildImageModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).image(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).image(a.model);case"xai":return(0,g.createXai)({apiKey:b}).image(a.model);case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).image(a.model);default:(0,n.publicError)(`Not supported image provider: ${String(a.provider)}`)}},"buildSpeechModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).speech(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).speech(a.model);case"xai":return(0,g.createXai)({apiKey:b}).speech();case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).speech(a.model);default:(0,n.publicError)(`Not supported speech provider: ${String(a.provider)}`)}},"buildTranscriptionModel",0,function(a,b){switch(a.provider){case"openai":return(0,f.createOpenAI)({apiKey:b}).transcription(a.model);case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).transcription(a.model);case"xai":return(0,g.createXai)({apiKey:b}).transcription();case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).transcription(a.model);default:(0,n.publicError)(`Not supported transcription provider: ${String(a.provider)}`)}},"buildVideoModel",0,function(a,b){switch(a.provider){case"google":return(0,e.createGoogleGenerativeAI)({apiKey:b}).video(a.model);case"xai":return(0,g.createXai)({apiKey:b}).video(a.model);case"vercel-ai-gateway":return(0,i.createGateway)({apiKey:b}).video(a.model);default:(0,n.publicError)(`${a.provider} has no video model`)}},"compactBudget",0,u,"getTextModel",0,x,"modelErrorToString",0,function(a){if(!h.APICallError.isInstance(a))return(0,o.errorToString)(a);let b=a.statusCode?` (${a.statusCode})`:"",c=a.responseBody?.trim(),d=c&&!c.includes(a.message)?` ${(0,o.clip)(c,300)}`:"";return`${a.message}${b}${d}`},"modelFailureOf",0,function(a){let b=!1;for(let c of function(a){let b=[],c=[a];for(;c.length&&b.length<12;){let a=c.shift();!("object"!=typeof a||null===a||b.includes(a))&&(b.push(a),j.RetryError.isInstance(a)&&c.push(...a.errors),"cause"in a&&c.push(a.cause))}return b}(a)){let{statusCode:a,isRetryable:d,code:e,name:f,message:g}=c,i=h.APICallError.isInstance(c)?c.responseBody??"":"";if((void 0===a||400===a||413===a)&&B.test(`${String(g??"")} ${i}`))return"overflow";(!0===d||"TimeoutError"===f||j.NoOutputGeneratedError.isInstance(c)||"number"==typeof a&&(408===a||409===a||429===a||a>=500)||"string"==typeof e&&A.has(e))&&(b=!0)}return b?"transient":"fatal"},"resolveDefaultModel",0,y,"resolveMediaRef",0,z]),c()}catch(a){c(a)}},!1),735502,a=>a.a(async(b,c)=>{try{var d=a.i(569572),e=a.i(762008),f=a.i(641301),g=a.i(221214),h=a.i(947950),i=a.i(986743),j=a.i(138100),k=a.i(821415),l=a.i(176668),m=a.i(182248),n=a.i(644468),o=a.i(938934),p=b([g,h,i,n]);async function q(a,b,c,p){var q,r,A,B,C,D,E,F,G;let H,I,J,K,L,M=await (0,k.openWorkspace)(),N=a.trim(),O=c?.askedBy??null,[P,Q,R,S,T,U,V,W,X]=await Promise.all([(0,j.loadSkills)(M),(0,i.listNoteIndex)(),(0,i.listAlwaysLoaded)(),(0,n.listConnectedToolNames)(),(0,h.findPinnedTools)(N),(0,g.listJobBots)(),(0,f.listBotMemory)(N),(0,g.readBotMemoryOn)(),(0,k.readMachineTools)(M)]),Y=c&&!c.canBorrow?[]:U.filter(a=>a.name!==N&&!c?.above.includes(a.name)),Z=[O?(q=N,r=O,[`You are ${q}, a worker. ${r} has handed you one part of a job Thursday handed over; your first message says who holds it and how it reached you. The user speaks to Thursday and to nobody else; you never address them, and what you hand back goes into ${r}'s answer as-is. This thread is drawn on their screen while you work: not written to them, but not private either. ${(0,o.nowLine)()}`,s,t].join("\n\n")):(A=N,[`You are ${A}, a worker. Thursday handed you a job while she keeps talking to the user — they speak to her and to nobody else, and what she says out of your answer is the only part of this that reaches them. You are not in that conversation and never address the user. This thread is drawn on their screen while you work, though: not written to them, but not private either. ${(0,o.nowLine)()}`,s,t].join("\n\n")),(B=Q,C=R,H=`## The user's memory
|
|
2
2
|
|
|
3
|
-
What the user
|
|
3
|
+
What Thursday knows about the user, kept as she talks with them. Every bot reads it; none writes to it. Open a note with \`${e.TOOL_NAMES.memory_recall}\` when the job needs something about them — the address they sign in with, the name to book under — and put what you find out about them in your answer; she decides what to keep. It describes them, not you: how they are named and spoken to is hers to use. What you learn about the work goes in your own memory, below.`,I=C.length?`Already known:
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
${(0,o.carriedLines)(C)}`:"",J=`path — what is under it (facts) "what the user calls it"
|
|
6
6
|
|
|
7
|
-
${(0,
|
|
7
|
+
${(0,o.noteLines)(B)}
|
|
8
8
|
|
|
9
|
-
${(0,
|
|
9
|
+
A topic not listed is one nobody knows anything about.`,[H,I,J].filter(Boolean).join("\n\n")),W?(D=(0,f.botMemoryFolder)(N),K=(E=V).entries.length?E.entries.map(({file:a,line:b})=>b?`- ${a} — ${(0,m.clip)(b,d.PROMPT_LINE.botMemory)}`:`- ${a}`).join("\n"):"Empty.",L=E.total>E.entries.length?`
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
The newest ${E.entries.length} of ${E.total}; \`ls ${D}\` for the rest.`:"",`## Your memory
|
|
12
12
|
|
|
13
|
-
What you
|
|
13
|
+
What you kept from your own earlier jobs, in \`${D}/\`: one topic per file, its first line saying what it holds, read by no other bot. Keep what a later job would otherwise have to find out again — how a site signs in, the way through its screens, a command that turned out right — and fix or delete a file that proved wrong. No passwords, keys or codes.
|
|
14
14
|
|
|
15
|
-
${
|
|
15
|
+
${K}${L}`):"",function(a,b){let c=new Set(b.map(a=>`${a.server}/${a.name}`)),d=a.filter(a=>!c.has(`${a.server}/${a.name}`));if(0===d.length)return"";let f=c.size?" What is not listed above you are already holding — it is in your tools.":"";return`## Connected tools
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
${(0,o.mcpToolLines)(d)}
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
Names only: \`${e.TOOL_NAMES.tool_search}\` returns what each one takes, \`${e.TOOL_NAMES.tool_call}\` runs one.${f}`}(M,N),(C=J,0===C.length?"":`## Skills
|
|
19
|
+
Names only: \`${e.TOOL_NAMES.tool_search}\` returns what each one takes, \`${e.TOOL_NAMES.tool_call}\` runs one.${f}`}(S,T),(F=P,0===F.length?"":`## Skills
|
|
22
20
|
|
|
23
21
|
Written-down methods. When the job is one of these, read it with \`${e.TOOL_NAMES.load_skill}\` before starting.
|
|
24
22
|
|
|
25
|
-
${(0,
|
|
23
|
+
${(0,o.skillLines)(F)}`),v(M.cwd,X,p),(G=Y,0===G.length?"":`## Bots
|
|
26
24
|
|
|
27
|
-
${
|
|
25
|
+
${G.map(a=>`- **${a.name}** — ${a.description}`).join("\n")}
|
|
28
26
|
|
|
29
27
|
These lines were written for the user, who reads them on their own screen: where one says "you" it means them, not you.
|
|
30
28
|
|
|
31
|
-
A part of your job another bot is for goes to \`${e.TOOL_NAMES.ask_bot}\`, because their tools and their practice are the reason they exist. What you build is made of what they bring back, so send for it before you build. A part you could finish in a couple of commands is yours; one that would take a run of its own is theirs.
|
|
32
|
-
${
|
|
29
|
+
A part of your job another bot is for goes to \`${e.TOOL_NAMES.ask_bot}\`, because their tools and their practice are the reason they exist. What you build is made of what they bring back, so send for it before you build. A part you could finish in a couple of commands is yours; one that would take a run of its own is theirs. What you were handed stays yours and you answer for it. They get the job, the call it came from and what you write them — not this thread.`),O?x(O):w,O?z(O):y,u(b)].filter(Boolean).join("\n\n");return(0,o.logPromptSize)("bot",Z),l.logger.debug(`bot prompt
|
|
30
|
+
${Z}`),{text:Z,peers:Y.map(a=>a.name),opening:null}}[g,h,i,n]=p.then?(await p)():p;let s=`**You are on a real computer — the user's own.** You have a shell and a filesystem, and the job is done, not described: where there is no tool for something, write one — in \`node\` unless they asked for another language, the runtime this app itself runs on. Reach for \`${e.TOOL_NAMES.bash}\` before concluding that something cannot be done, but after the roster, not instead of it: a script you write to do another bot's job is the long way round.
|
|
33
31
|
|
|
34
32
|
**What is missing gets installed**, onto the machine once they say yes. What is already there is nobody's question — Environment says what this machine has.
|
|
35
33
|
|
|
36
|
-
**Bring back the thing itself** — their own machine, their own accounts, their own copy of whatever they sent you for — not a smaller safer version of it, and not a note on why you did not.`,
|
|
34
|
+
**Bring back the thing itself** — their own machine, their own accounts, their own copy of whatever they sent you for — not a smaller safer version of it, and not a note on why you did not.`,t="**Never present a guess as a result.** She says it out loud as fact. Say which part is unverified and why.",u=a=>a?.trim()?`## Owner's instructions
|
|
37
35
|
|
|
38
36
|
Written by the person this bot works for. Where these and anything above disagree, these win.
|
|
39
37
|
|
|
40
|
-
${a.trim()}`:"",
|
|
38
|
+
${a.trim()}`:"",v=(a,b,c)=>{var f;let g,h;return`## Environment
|
|
41
39
|
|
|
42
40
|
Current Cwd: ${a}
|
|
43
41
|
Platform: ${process.platform}
|
|
@@ -49,38 +47,46 @@ Your workspace — \`${e.TOOL_NAMES.bash}\` runs here. Everything you write goes
|
|
|
49
47
|
|
|
50
48
|
- \`${d.PATHS.artifacts}/\` — finished work the user opens, one entry per result. Theirs, and it stays.
|
|
51
49
|
- \`${d.PATHS.projects}/\` — code you build, one folder each. It outlives this job, and a project's dependencies install inside it, never at the workspace root.
|
|
52
|
-
- \`${c?.scratch??d.PATHS.scratch}/\` — this job's working material. It
|
|
53
|
-
- \`${c?.own??d.PATHS.bots}/\` — yours, across every job you run here
|
|
50
|
+
- \`${c?.scratch??d.PATHS.scratch}/\` — this job's working material, one folder for every bot on the job: what another bot on it wrote is here too. It is cleared ${Math.round(d.WORKSPACE_KEEP.forMs/864e5)} days after the job ends, so nothing here is worth keeping.
|
|
51
|
+
- \`${c?.own??d.PATHS.bots}/\` — yours, across every job you run here: your memory, a script you wrote once and will want again, a table you built.
|
|
54
52
|
|
|
55
|
-
Never the directory above — that is the app you run in; outside the workspace, only where the user pointed you.`},
|
|
53
|
+
Never the directory above — that is the app you run in; outside the workspace, only where the user pointed you.`},w=`## Asking
|
|
56
54
|
|
|
57
55
|
What you cannot get for yourself — a decision between real options, a detail only the conversation has, a go-ahead before deleting or sending — goes to \`${e.TOOL_NAMES.ask_thursday}\`, once, with everything in it. Ask before you start, not after an hour; never ask what one command would tell you.
|
|
58
56
|
|
|
59
57
|
A job that arrives without its shape — several ways to do it, no telling what it is for, a scale nobody named — is planned before it is built: put the plan up in two or three lines with what you need decided. A job asked for as one thing is built, not proposed.
|
|
60
58
|
|
|
61
|
-
|
|
59
|
+
Only what is theirs alone stops the job: a password, a one-time code, a passkey, a permission on their machine. Set it up one action away, ask, and carry on when the answer comes back.`,x=a=>`## Asking
|
|
60
|
+
|
|
61
|
+
What you cannot get for yourself goes to \`${e.TOOL_NAMES.ask_back}\`: ${a} handed you this part and answers from what they have. They cannot take a question to the user, so for what is the user's alone take the safer reading and say so in what you hand back. Ask before you start, once, whole.`,y=`## Answering
|
|
62
|
+
|
|
63
|
+
Every job ends with \`${e.TOOL_NAMES.answer}\`. **Answer what was asked, at the size it was asked**: a question ends in its answer — one number is one line — and a thing to make comes back made, an action done, photos in a page, a comparison in a table. Once you have what they asked for the job is done; the next thing you would go and check is theirs to ask for.
|
|
64
|
+
|
|
65
|
+
You are answering Thursday, not the user: she is on the call and picks what to say out of this. Write it plainly, in the user's language — the thread is on their screen as you write it. Anything past a few lines is a file under \`${d.PATHS.artifacts}/\`, and the answer names its path — it becomes a link on their screen. In a \`.md\`, images only by absolute route (\`/api/file/${d.PATHS.artifacts}/…\`).`,z=a=>`## Answering
|
|
62
66
|
|
|
63
|
-
|
|
67
|
+
Every part ends with \`${e.TOOL_NAMES.answer}\`; what you hand back goes into ${a}'s own answer. Hand back what the brief asked for, in the shape it asked for, with everything you learned that bears on it — exact values, the paths of files you wrote, what did not work. They cannot see your thread, so long is right here.`;function r(a){let b=a.length-1,c=a.map((c,d)=>{if(0===d)return d===b?`- **${c} (you)** — Thursday handed you this job. You answer to Thursday, and your answer is the only part of it that reaches the user.`:`- **${c}** — holds the job Thursday handed over, and answers for it.`;let e=a[d-1];return d===b?`- **${c} (you)** — ${e} handed you one part of it: the last section below. You answer to ${e}; nobody else hears from you.`:`- **${c}** — ${e} handed them one part of it.`});return`## Who is who on this job
|
|
64
68
|
|
|
65
|
-
|
|
69
|
+
- **The user** — talks only to Thursday, on a voice call. No bot addresses them.
|
|
70
|
+
- **Thursday** — the user's assistant on that call. Hands jobs to bots and tells the user what comes back.
|
|
71
|
+
${c.join("\n")}`}a.s(["OPENING_TURNS",0,10,"buildHandoff",0,function(a){let b=a.bots.at(-1)??"",c=a.bots.at(-2)??"",d=a.did?.trim()?`## ${c} → ${b}: what ${c} has done, and why this part is ${b}'s
|
|
66
72
|
|
|
67
|
-
|
|
73
|
+
${a.did.trim()}`:"",e=`## ${c} → ${b}: the part
|
|
68
74
|
|
|
69
|
-
|
|
75
|
+
${a.part.trim()}`;return[{type:"text",text:r(a.bots)},{type:"text",text:[a.chain,d,e].filter(Boolean).join("\n\n")}]},"buildTaskOpening",0,function(a){let b=a.conversation.filter(a=>a.text.trim()),c=`## Thursday → ${a.bot}: the job
|
|
70
76
|
|
|
71
|
-
|
|
77
|
+
${a.request.trim()}`,e=b.length?`## The call the job came from — its last ${b.length} turns, verbatim
|
|
72
78
|
|
|
73
|
-
A detail
|
|
79
|
+
A detail missing from the job may be here — a name, a number, which of two. Where the two disagree the job wins, unless they asked out loud for something to be done and the job only asks about it: then the doing is the job.
|
|
74
80
|
|
|
75
|
-
${c.join("\n")}
|
|
81
|
+
${b.map(a=>`${"user"===a.role?"user":"thursday"}: ${(0,m.clip)(a.text,d.PROMPT_LINE.callTurn)}`).join("\n")}`:"";return[{type:"text",text:r([a.bot])},{type:"text",text:[c,e].filter(Boolean).join("\n\n")}]},"chainOf",0,function(a){return a?.role!=="user"?"":"string"==typeof a.content?a.content:a.content.flatMap(a=>"text"===a.type?[a.text]:[]).at(-1)??""},"loadBotPrompt",0,q]),c()}catch(a){c(a)}},!1),938934,a=>{"use strict";var b=a.i(12208),c=a.i(868468),d=a.i(569572),e=a.i(762008);e.TOOL_NAMES.memory_recall,e.TOOL_NAMES.memory_remember,e.TOOL_NAMES.memory_forget,e.TOOL_NAMES.memory_show,e.TOOL_NAMES.bash,e.TOOL_NAMES.web_search,e.TOOL_NAMES.load_skill,e.TOOL_NAMES.end_call;var f=a.i(706210),g=a.i(176668),h=a.i(987674),i=a.i(182248);let j=(a=new Date)=>`${(0,b.format)(a,"yyyy-MM-dd (EEE) HH:mm")} ${Intl.DateTimeFormat().resolvedOptions().timeZone}`,k=a=>`${(0,b.format)(a,"yyyy-MM-dd (EEE) HH:mm")} (${(0,c.formatDistanceToNowStrict)(a,{addSuffix:!0})})`;a.s(["callStamp",0,k,"carriedLines",0,a=>a.map(a=>`- ${a.text} \xb7 ${a.path} #${a.id}`).join("\n"),"clockNow",0,j,"conversationLines",0,a=>a.map(a=>"tool"===a.role?`you → ${a.tool??"tool"}`:`${"user"===a.role?"user":"you"}: ${a.text}`).join("\n"),"logPromptSize",0,function(a,b){let c=(0,h.sectionTokens)(b),e=c.reduce((a,b)=>a+b.tokens,0);g.logger.debug(`${a} prompt ${e} tokens — ${c.map(a=>`${a.name} ${a.tokens}`).join(", ")}`);let f=c[0];e>d.PROMPT_BUDGET&&f&&g.logger.warn(`${a} prompt is ${e} tokens, over ${d.PROMPT_BUDGET}: ${f.name} carries ${f.tokens} of it. Every call and every job pays this.`)},"mcpServerLines",0,function(a){let b=new Map;for(let c of a)b.set(c.server,(b.get(c.server)??0)+1);return[...b].map(([a,b])=>`- **${a}**: ${b} tool${1===b?"":"s"}`).join("\n")},"mcpToolLines",0,function(a){let b=new Map;for(let c of a){let a=b.get(c.server);a?a.push(c.name):b.set(c.server,[c.name])}return[...b].map(([a,b])=>`- **${a}**: ${b.join(", ")}`).join("\n")},"noteLines",0,function(a,b=!1){return a.length?a.map(a=>{var c;let d,e=a.aliases?.length?` ${a.aliases.map(a=>`"${a}"`).join(" ")}`:"",g=b?` \xb7 ${c=a.lastSeenAt,(d=Math.floor((Date.now()-(0,f.toDate)(c).getTime())/864e5))>=365?`${Math.floor(d/365)}y`:d>=30?`${Math.floor(d/30)}mo`:`${Math.max(d,0)}d`}`:"";return`- ${a.path} — ${a.description?.trim()} (${a.factCount})${e}${g}`}).join("\n"):"(nothing saved yet)"},"nowLine",0,(a=new Date)=>`**Now**: ${j(a)}`,"recentCallLines",0,function(a,b){let c=[],f=0;a:for(let g=a.length-1;g>=0;g--){let j=a[g];for(let a=j.turns.length-1;a>=0;a--){let g=function(a,b){if("tool"!==a.role)return`${"user"===a.role?"user":"you"}: ${a.text}`;let c=`you → ${a.tool??"tool"} ${(0,i.clip)(a.text,d.PROMPT_LINE.toolArgs)}`;if(a.tool!==e.TOOL_NAMES.delegate)return c;let f=function(a,b){if(a!==e.TOOL_NAMES.delegate)return null;try{let a=JSON.parse(b);return"string"==typeof a.label?a.label:null}catch{return null}}(a.tool,a.text),g=f?b.jobs?.find(a=>a.label===f):void 0;if(!g)return c;let h=g.outcome?`: ${(0,i.clip)(g.outcome,d.PROMPT_LINE.jobOutcome)}`:"";return`you → ${a.tool} "${g.label}" (${g.id}) — ${g.status}${h}`}(j.turns[a],j),k=(0,h.estimateTokens)(g)+3;if(f+k>b&&c.length)break a;f+=k,c.push({call:j,line:g})}}c.reverse();let g=[],j=null;for(let{call:a,line:b}of c)a!==j&&(j=a,g.push(`### ${k(a.startedAt)}`)),g.push(b);return g.join("\n")},"saidStamp",0,a=>(0,b.format)(a,"yyyy-MM-dd (EEE) HH:mm"),"skillLines",0,(a,b={})=>a.map(a=>{var c;let e,f;return`- **${a.name}**: ${b.short?(c=a.description,e=d.PROMPT_LINE.skill,(f=c.trim().split(/(?<=[.。])\s|\n/)[0].trim()).length>e?`${f.slice(0,e).trim()}…`:f):a.description}`}).join("\n"),"tidying",0,a=>({crowded:a.reduce((a,b)=>a+b.factCount,0)>d.MEMORY_LIMITS.facts,heavy:a.filter(a=>a.factCount>d.MEMORY_LIMITS.factsPerNote)})],938934)},375827,a=>{"use strict";var b=a.i(527990),c=a.i(794219),d=a.i(762008);let e={name:d.TOOL_NAMES.end_call,description:`End the call.
|
|
76
82
|
|
|
77
|
-
Say goodbye first — nothing said after this reaches the user.`,parameters:c.object({})},f=(0,b.tool)({description:e.description,inputSchema:e.parameters}),g={[d.TOOL_NAMES.end_call]:f};a.s(["CALL_TOOLS",0,g])},138902,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(794219),f=a.i(762008),g=a.i(947950),h=a.i(644468),i=b([g,h]);[g,h]=i.then?(await i)():i;let l={[f.TOOL_NAMES.tool_search]:{name:f.TOOL_NAMES.tool_search,description:`Return the description and exact inputSchema of tools on a connected server, so they can be called with \`${f.TOOL_NAMES.tool_call}\`.`,parameters:e.object({server:e.string().describe("A server name, exactly as the Connected tools section writes it."),tools:e.string().array().describe("Tool names listed under that server. Only the ones you may actually call — schemas are large, and at most 8 come back.")})},[f.TOOL_NAMES.tool_call]:{name:f.TOOL_NAMES.tool_call,description:`Run one tool whose definition came back from \`${f.TOOL_NAMES.tool_search}\`.`,parameters:e.object({server:e.string().describe("The server the tool lives on."),tool:e.string().describe("Its name, as search returned it."),args:e.record(e.string(),e.unknown()).nullish().describe("Arguments matching the inputSchema search returned — do not guess. Null when it takes none."),description:e.string().nullish().describe("One short line for the user: what this call is for. Shown on their screen while it runs.")})}},m=(a,b)=>`${a.replace(/[^a-zA-Z0-9]+/g,"_")}__${b.replace(/[^a-zA-Z0-9_-]+/g,"_")}`.slice(0,64);async function j(a,b){let[c,e]=await Promise.all([(0,h.listConnectedToolNames)(),(0,g.findPinnedTools)(a)]),f={};for(let a of e){let c=m(a.server,a.name);f[c]||(f[c]=(0,d.tool)({description:a.description??`${a.name} on the ${a.server} server.`,inputSchema:(0,d.jsonSchema)(a.inputSchema??{type:"object",properties:{}}),execute:(c,{abortSignal:d})=>(0,h.callConnectedTool)(b,a.server,a.name,c??void 0,d)}))}return c.length>e.length&&Object.assign(f,n(b)),f}async function k(a){let b=(await (0,h.listConnectedToolNames)(a)).map(a=>a.name);if(b.length)return`Tools on "${a}": ${b.join(", ")}.`;let c=await (0,h.listConnectedServerNames)();return c.length?`There is no server called "${a}". Connected: ${c.join(", ")}.`:"Nothing is connected."}let n=a=>({[f.TOOL_NAMES.tool_search]:(0,d.tool)({description:l[f.TOOL_NAMES.tool_search].description,inputSchema:l[f.TOOL_NAMES.tool_search].parameters,execute:async({server:a,tools:b})=>{let c=[...new Set(b.map(a=>a.trim()).filter(Boolean))],d=c.slice(0,8),e=await (0,h.findConnectedSchemas)(a.trim(),d);if(!e.length)return{tools:[],note:await k(a)};let f=d.filter(a=>!e.some(b=>b.name===a)),g=c.slice(8),i=[f.length?`Not on "${a}": ${f.join(", ")}.`:"",g.length?`Only 8 at a time — ask again for: ${g.join(", ")}.`:""].filter(Boolean);return{tools:e,...i.length?{note:i.join(" ")}:{}}}}),[f.TOOL_NAMES.tool_call]:(0,d.tool)({description:l[f.TOOL_NAMES.tool_call].description,inputSchema:l[f.TOOL_NAMES.tool_call].parameters,execute:async({server:b,tool:c,args:d},{abortSignal:e})=>(await (0,h.listConnectedToolNames)(b.trim())).some(a=>a.name===c.trim())?(0,h.callConnectedTool)(a,b.trim(),c.trim(),d??void 0,e):{status:"error",text:await k(b)}})});a.s(["createMcpTools",0,j]),c()}catch(a){c(a)}},!1),345846,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(794219),f=a.i(203469),g=a.i(
|
|
83
|
+
Say goodbye first — nothing said after this reaches the user.`,parameters:c.object({})},f=(0,b.tool)({description:e.description,inputSchema:e.parameters}),g={[d.TOOL_NAMES.end_call]:f};a.s(["CALL_TOOLS",0,g])},138902,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(794219),f=a.i(762008),g=a.i(947950),h=a.i(644468),i=b([g,h]);[g,h]=i.then?(await i)():i;let l={[f.TOOL_NAMES.tool_search]:{name:f.TOOL_NAMES.tool_search,description:`Return the description and exact inputSchema of tools on a connected server, so they can be called with \`${f.TOOL_NAMES.tool_call}\`.`,parameters:e.object({server:e.string().describe("A server name, exactly as the Connected tools section writes it."),tools:e.string().array().describe("Tool names listed under that server. Only the ones you may actually call — schemas are large, and at most 8 come back.")})},[f.TOOL_NAMES.tool_call]:{name:f.TOOL_NAMES.tool_call,description:`Run one tool whose definition came back from \`${f.TOOL_NAMES.tool_search}\`.`,parameters:e.object({server:e.string().describe("The server the tool lives on."),tool:e.string().describe("Its name, as search returned it."),args:e.record(e.string(),e.unknown()).nullish().describe("Arguments matching the inputSchema search returned — do not guess. Null when it takes none."),description:e.string().nullish().describe("One short line for the user: what this call is for. Shown on their screen while it runs.")})}},m=(a,b)=>`${a.replace(/[^a-zA-Z0-9]+/g,"_")}__${b.replace(/[^a-zA-Z0-9_-]+/g,"_")}`.slice(0,64);async function j(a,b){let[c,e]=await Promise.all([(0,h.listConnectedToolNames)(),(0,g.findPinnedTools)(a)]),f={};for(let a of e){let c=m(a.server,a.name);f[c]||(f[c]=(0,d.tool)({description:a.description??`${a.name} on the ${a.server} server.`,inputSchema:(0,d.jsonSchema)(a.inputSchema??{type:"object",properties:{}}),execute:(c,{abortSignal:d})=>(0,h.callConnectedTool)(b,a.server,a.name,c??void 0,d)}))}return c.length>e.length&&Object.assign(f,n(b)),f}async function k(a){let b=(await (0,h.listConnectedToolNames)(a)).map(a=>a.name);if(b.length)return`Tools on "${a}": ${b.join(", ")}.`;let c=await (0,h.listConnectedServerNames)();return c.length?`There is no server called "${a}". Connected: ${c.join(", ")}.`:"Nothing is connected."}let n=a=>({[f.TOOL_NAMES.tool_search]:(0,d.tool)({description:l[f.TOOL_NAMES.tool_search].description,inputSchema:l[f.TOOL_NAMES.tool_search].parameters,execute:async({server:a,tools:b})=>{let c=[...new Set(b.map(a=>a.trim()).filter(Boolean))],d=c.slice(0,8),e=await (0,h.findConnectedSchemas)(a.trim(),d);if(!e.length)return{tools:[],note:await k(a)};let f=d.filter(a=>!e.some(b=>b.name===a)),g=c.slice(8),i=[f.length?`Not on "${a}": ${f.join(", ")}.`:"",g.length?`Only 8 at a time — ask again for: ${g.join(", ")}.`:""].filter(Boolean);return{tools:e,...i.length?{note:i.join(" ")}:{}}}}),[f.TOOL_NAMES.tool_call]:(0,d.tool)({description:l[f.TOOL_NAMES.tool_call].description,inputSchema:l[f.TOOL_NAMES.tool_call].parameters,execute:async({server:b,tool:c,args:d},{abortSignal:e})=>(await (0,h.listConnectedToolNames)(b.trim())).some(a=>a.name===c.trim())?(0,h.callConnectedTool)(a,b.trim(),c.trim(),d??void 0,e):{status:"error",text:await k(b)}})});a.s(["createMcpTools",0,j]),c()}catch(a){c(a)}},!1),345846,a=>a.a(async(b,c)=>{try{var d=a.i(527990),e=a.i(794219),f=a.i(203469),g=a.i(569572),h=a.i(938934),i=a.i(762008),j=a.i(986743),k=a.i(661210),l=a.i(569549),m=b([j,l]);[j,l]=m.then?(await m)():m;let n="Deleted for good. The listing in your instructions is from when this session opened and still shows it that way until the next one.",o=a=>({...a,facts:a.facts.map(({saidAt:a,...b})=>a?{...b,said:(0,h.saidStamp)(a)}:b),factCount:a.facts.length}),p=a=>"user"===a?"Typed on the screen — there is no conversation behind it.":"bot"===a?"Saved by a bot during a job — there is no conversation behind it.":"The conversation it was saved in is not kept.",q=a=>a>g.MEMORY_LIMITS.factsPerNote?` This note now holds ${a} facts, past the ${g.MEMORY_LIMITS.factsPerNote} one note holds well. Ask the user which of it is no longer true and delete what they name.`:"";a.s(["createMemoryTools",0,(a,b=null,{countReads:c=!0}={})=>({[i.TOOL_NAMES.memory_recall]:(0,d.tool)({description:"Open one note from the listing, whole.",inputSchema:e.object({path:e.string().describe("Exactly as the listing writes it — the path, or one of the names in quotes after it.")}),execute:async({path:a})=>{let{notes:b}=await (0,j.readNotes)([a],{touch:c}),d=b[0];if(!d)return{note:`Nothing on the listing called ${a.trim()}.`};let e=q(d.facts.length);return e?{...o(d),note:e.trim()}:o(d)}}),[i.TOOL_NAMES.memory_remember]:(0,d.tool)({description:"Write to one note: facts, and the line the listing shows for it. The path is the key — a path not on the listing is created (with at least one fact), one that is gets amended.",inputSchema:e.object({path:e.string().describe("Exactly as the listing writes it, or a new path following the same convention."),facts:e.object({text:e.string().describe("One statement that stands on its own later."),replaces:e.number().int().nullish().describe("The id of the fact this replaces — from this note as handed back here or by `memory_recall`. Null if this is new. A fact that stopped being true is replaced rather than deleted, and so is a note saying the same thing twice: replacing keeps what changed on the record, deleting does not."),alwaysLoad:e.boolean().nullish().describe(`True carries this line into every call's instructions without opening its note — for what to call them, their language and register, a standing rule. At most ${g.MEMORY_LIMITS.carried}. Null leaves it; false makes a carried line an ordinary fact.`)}).array().nullish().describe("What to write under this note. Send everything that came up at once: one call is one pause in the conversation, three calls are three. Null when only naming it."),description:e.string().nullish().describe(`One line saying what this note is about, not what it currently says. Give it for a new note, or when the line no longer fits. Null leaves it; ${k.APP_NAMED_NOTES.join(", ")} keep their own line.`),aliases:e.string().array().nullish().describe('What the user calls this note out loud, in the language they say it — the words they would use to ask for it, not the facts inside. A note at people/yuri might be "Yuri" and "my wife". Replaces the set it has, so send the whole set. Null leaves it.')}),execute:async c=>{let d=c.path.trim(),e=await (0,j.resolveNotePath)(d),f=c.aliases??null,h=e??d,i=(0,k.isAppNamed)(h)?(0,k.appNoteLine)(h):c.description?.trim()||null,l=c.facts??[];if(!l.length&&!i&&!f)return{note:"Nothing to write: send facts, a line, names, or any of them."};if(!e&&!l.length)return{note:`Nothing on the listing called ${d}. A note comes into being with a fact — send at least one.`};let m=e||(0,k.isMemoryPath)(d)?{path:h,description:i,aliases:f,facts:l}:{path:k.MEMORY_INBOX,description:(0,k.appNoteLine)(k.MEMORY_INBOX),facts:l},n=await (0,j.writeNotes)([m],a,b),p=m.path!==d?` Filed under ${m.path}: "${d}" is not a path this listing can carry. If that is not where it belongs, write it again under one that is.`:"",r=n.unnamed.length?` ${n.unnamed[0]} is new and has no line yet — the listing shows its first fact instead. Call again with \`description\` (one line about what it is) and \`aliases\` (the names they say for it).`:"",s=n.notLoaded.length?` All ${g.MEMORY_LIMITS.carried} carried lines are taken, so ${n.notLoaded.map(a=>`"${a}"`).join(", ")} saved as an ordinary fact. Say which carried line you would drop for it and let them choose.`:"",t=o(n.notes[0]);return{...t,note:`Saved. The listing in your instructions is from when this session opened and will not show this until the next one — the note below is current.${p}${r}${s}${q(t.factCount)}`}}}),[i.TOOL_NAMES.memory_conversation]:(0,d.tool)({description:"Open the conversation a fact was saved in, whole: what each side said, and which tools were used.",inputSchema:e.object({factId:e.number().int().describe("The id that came with the fact when its note was opened."),page:e.number().int().min(1).nullish().describe(`${g.MEMORY_CONVERSATION_PAGE} turns a page, oldest first. Null for the first.`)}),execute:async({factId:a,page:c})=>{let d=await (0,j.findFactCall)(a);if(!d)return{note:`No fact with id ${a}.`};if(!d.callId)return{note:p(d.source)};if(d.callId===b)return{note:"Said in this call — it is the conversation you are in."};let e=c??1,f=await (0,l.readCallConversation)(d.callId,e,g.MEMORY_CONVERSATION_PAGE);if(!f)return{note:p(d.source)};let i=Math.max(1,Math.ceil(f.total/g.MEMORY_CONVERSATION_PAGE));return e>i?{note:`That conversation has ${i} page${i>1?"s":""}.`}:{when:(0,h.callStamp)(f.startedAt),page:e,pages:i,conversation:(0,h.conversationLines)(f.turns)}}}),[i.TOOL_NAMES.memory_show]:(0,d.tool)({description:`Put a note on the user's screen so they can see it while you
|
|
78
84
|
talk about it, and take it away again. They cannot edit it there — they say
|
|
79
|
-
what to drop and you drop it.`,inputSchema:e.object({path:e.string().nullable().describe("The note to put on screen, exactly as the listing writes it. Null takes it away.")}),execute:async({path:a})=>{if(!a?.trim())return f.appEvents.emit({type:"memory-view",path:null}),{note:"Taken off the screen."};let{notes:b}=await (0,
|
|
85
|
+
what to drop and you drop it.`,inputSchema:e.object({path:e.string().nullable().describe("The note to put on screen, exactly as the listing writes it. Null takes it away.")}),execute:async({path:a})=>{if(!a?.trim())return f.appEvents.emit({type:"memory-view",path:null}),{note:"Taken off the screen."};let{notes:b}=await (0,j.readNotes)([a],{touch:!1}),c=b[0];return c?(f.appEvents.emit({type:"memory-view",path:c.path}),{...c,note:"It is on their screen now, in this order. Ask what they no longer need, and forget only what they name."}):{note:`Nothing on the listing called ${a.trim()}.`}}}),[i.TOOL_NAMES.memory_forget]:(0,d.tool)({description:"Delete one fact for good.",inputSchema:e.object({factId:e.number().int().describe("The id that came with the fact when the note was opened.")}),execute:async({factId:a})=>{let b=await (0,j.forgetFactById)(a);if(!b)return{note:`No fact with id ${a}. Nothing was deleted.`};if(b.noteGone)return{note:`${n} That was the last fact under ${b.path}, so the note went with it.`};let{notes:c}=await (0,j.readNotes)([b.path],{touch:!1});return{...c[0],note:n}}})})]),c()}catch(a){c(a)}},!1),622547,a=>a.a(async(b,c)=>{try{var d=a.i(47919),e=a.i(527990),f=a.i(723885),g=a.i(569572),h=a.i(762008),i=a.i(688034),j=a.i(725466),k=a.i(182248),l=b([j]);[j]=l.then?(await l)():l;let o=`Answer the question from the web. Lead with the answer, then
|
|
80
86
|
what supports it. Say plainly what you could not find or confirm — do not fill
|
|
81
87
|
the gap with a guess. Every number carries the date you saw it. Be brief: this
|
|
82
|
-
is read by another model, not by a person
|
|
83
|
-
${
|
|
88
|
+
is read by another model, not by a person.`,p=f.default.string().describe("What you want to know, as one full question. Put the place and the time in when they matter — the searcher sees nothing but this line.");async function m(a,b,c){let d=await fetch("https://api.exa.ai/search",{method:"POST",signal:c,headers:{"content-type":"application/json","x-api-key":a},body:JSON.stringify({query:b,type:"auto",numResults:g.SEARCH.sources,contents:{text:{maxCharacters:g.SEARCH.excerptChars},livecrawl:"fallback",livecrawlTimeout:5e3}})});if(!d.ok)return`Exa answered ${d.status}: ${(0,k.clip)((await d.text()).trim(),200)}`;let e=(await d.json()).results??[];return e.length?e.map(a=>{let b=[a.title?.trim(),a.url?.trim()].filter(Boolean).join(" — "),c=a.publishedDate?.slice(0,10);return[c?`${b} \xb7 ${c}`:b,a.text?.trim()].filter(Boolean).join("\n")}).join("\n\n"):"Nothing came back for that. Try other words, or open a page in the browser."}async function n(a,b,c){let{text:e,sources:f}=await (0,d.generateText)({model:a.model,tools:a.tools,system:o,prompt:b,abortSignal:c}),h=[...new Set(f.flatMap(a=>"url"===a.sourceType?[a.title?`${a.title} — ${a.url}`:a.url]:[]))].slice(0,g.SEARCH.sources);return[e.trim(),h.length?`Sources:
|
|
89
|
+
${h.join("\n")}`:""].filter(Boolean).join("\n\n")}let q=async(a,b)=>{let c=await (0,j.readConfig)(i.EXA_API_KEY),d=a?.searchTools?{model:a.model,tools:a.searchTools}:null,l=c?(a,b)=>m(c,a,b):d?(a,b)=>n(d,a,b):null;return l?{[h.TOOL_NAMES.web_search]:(0,e.tool)({description:"Search the web and get back what the pages say, with their links. For a fact, a price, a date, what a page says. Not for a page that has to be clicked, filled, or signed into — that is the browser.",inputSchema:f.default.object({query:p}),execute:async({query:a},{abortSignal:c})=>{let d=AbortSignal.timeout(g.SEARCH.timeoutMs),e=c?AbortSignal.any([c,d]):d,f=await l(a,e).catch(a=>{if(c?.aborted)throw a;return d.aborted?`The search did not come back in ${g.SEARCH.timeoutMs/1e3}s. Ask something narrower, or open the page in the browser.`:`Search failed: ${(0,k.errorToString)(a)}. The browser is the other way in.`});return b.fold(f,"web-search")}})}:{}};a.s(["createSearchTool",0,q]),c()}catch(a){c(a)}},!1),451017,a=>{"use strict";var b=a.i(527990),c=a.i(723885),d=a.i(762008),e=a.i(762805);a.s(["createSkillTools",0,({skills:a,sandbox:f})=>{let g=new Set;return{[d.TOOL_NAMES.load_skill]:(0,b.tool)({description:"Load one skill: its instructions, and the files that ship with it.",inputSchema:c.default.object({name:c.default.string().describe("Exact name from the Skills list. Do not guess names that are not on it.")}),execute:async({name:b})=>{let c=a.find(a=>a.name.toLowerCase()===b.toLowerCase());if(!c)return{error:`No skill named '${b}'.`,available:a.map(a=>a.name)};let d=`${c.path}/SKILL.md`;if(g.has(c.path))return{skillDirectory:c.path,note:`You already loaded '${c.name}' in this run — its instructions are above, unchanged. Scroll back to that result rather than reading it again; if you need the file itself, read ${d} with the shell.`};let h=await f.readFile(d,"utf-8"),{body:i}=(0,e.splitFrontmatter)(h),j=await f.glob("**/*",{path:c.path,limit:50});return g.add(c.path),{skillDirectory:c.path,files:j,content:i}}})}}])},500777,a=>a.a(async(b,c)=>{try{var d=a.i(912714),e=a.i(750227),f=a.i(47919),g=a.i(12208),h=a.i(723885),i=a.i(569572),j=a.i(875931),k=a.i(762008),l=a.i(176668),m=a.i(182248),n=b([j]);function o(a){return{...a,execute:(b,c)=>{let d=a.inputSchema.safeParse(b);if(!d.success)throw Error(h.default.prettifyError(d.error));return a.execute(d.data,c)}}}[j]=n.then?(await n)():n;let t={images:`${i.PATHS.artifacts}/images`,audio:`${i.PATHS.artifacts}/audio`,transcripts:`${i.PATHS.artifacts}/transcripts`,videos:`${i.PATHS.artifacts}/videos`};function p(a,b){let c=a.toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,40),d=(0,g.format)(new Date,"yyyyMMdd-HHmmss");return`${d}${c?`-${c}`:""}.${b}`}async function q(a,b,c,d){let e=`${b}/${c}`;return await a.exec(`mkdir -p ${b}`),await a.writeFile(e,Buffer.from(d)),e}let u=a=>`${a}
|
|
84
90
|
Saved. Give the user this path — the file opens from the task row. Do not describe it back to them; they can open it.`,v=(a,b)=>a?.split("/")[1]?.split(";")[0]||b,w=["1:1","16:9","9:16","4:3","3:4"],x=async()=>{let a=await (0,j.resolveMediaRef)("image");if(!a)return null;let b=(0,j.buildImageModel)(a.ref,a.apiKey);return o({name:k.STUDIO_TOOLS.generate_image,description:"Draw an image and save it as a file in the workspace. What comes back is its path.",inputSchema:h.default.object({prompt:h.default.string().describe("What to draw, described: subject, style, mood, what is in frame. The image model does not see the job or the conversation, so nothing can be left implied."),aspectRatio:h.default.enum(w).nullish().describe("Aspect ratio. Null for square.")}),execute:async({prompt:a,aspectRatio:c},{sandbox:d,abortSignal:e})=>{let{image:g}=await (0,f.generateImage)({model:b,prompt:a,aspectRatio:c??"1:1",abortSignal:e}),h=await q(d,t.images,p(a,v(g.mediaType,"png")),g.uint8Array);return u(h)}})},y=async()=>{let a=await (0,j.resolveMediaRef)("speech");if(!a)return null;let b=(0,j.buildSpeechModel)(a.ref,a.apiKey);return o({name:k.STUDIO_TOOLS.generate_speech,description:"Read text aloud into an audio file in the workspace — something the user listens to or sends, not Thursday's voice. What comes back is its path.",inputSchema:h.default.object({text:h.default.string().min(1).max(4e3).describe("The words to read, up to 4000 characters. Longer pieces are read in parts, one call each."),voice:h.default.string().nullish().describe("A voice name the provider knows. Null for its default."),instructions:h.default.string().nullish().describe('How to read it — "slowly", "warm", "like a news anchor". Null for plain.')}),execute:async({text:a,voice:c,instructions:d},{sandbox:e,abortSignal:g})=>{let{audio:h}=await (0,f.generateSpeech)({model:b,text:a,voice:c??void 0,instructions:d??void 0,outputFormat:"mp3",abortSignal:g}),i=await q(e,t.audio,p(a.slice(0,60),h.format||"mp3"),h.uint8Array);return u(i)}})},z=async()=>{let a=await (0,j.resolveMediaRef)("transcription");if(!a)return null;let b=(0,j.buildTranscriptionModel)(a.ref,a.apiKey);return o({name:k.STUDIO_TOOLS.transcribe,description:"Turn an audio file — a recording, a voice memo, a meeting — into text. The transcript is saved as a file in the workspace; what comes back is its path and the text.",inputSchema:h.default.object({path:h.default.string().min(1).describe("The audio file: a path relative to the workspace, or an absolute one anywhere on this machine.")}),execute:async({path:a},{sandbox:c,abortSignal:g})=>{let h=await (0,d.readFile)(c.resolve(a)),i=await (0,f.transcribe)({model:b,audio:h,abortSignal:g}),j=i.segments.length?`
|
|
85
91
|
|
|
86
92
|
## Timeline
|
|
@@ -90,51 +96,35 @@ ${i.segments.map(a=>{var b;let c,d;return`- ${b=a.startSecond,c=Math.floor(b/60)
|
|
|
90
96
|
${i.text.trim()}${j}
|
|
91
97
|
`));return`${l}
|
|
92
98
|
|
|
93
|
-
${await c.fold(i.text,"transcript")}`}})},A=async()=>{let a=await (0,j.resolveMediaRef)("video");if(!a)return null;let b=(0,j.buildVideoModel)(a.ref,a.apiKey);return o({name:k.STUDIO_TOOLS.generate_video,description:"Make a short video and save it as a file in the workspace. Takes minutes. What comes back is its path.",inputSchema:h.default.object({prompt:h.default.string().describe("What happens: the scene, the motion, the camera, the mood. The video model does not see the job or the conversation, so nothing can be left implied."),aspectRatio:h.default.enum(["16:9","9:16"]).nullish().describe("Aspect ratio. Null for 16:9."),seconds:h.default.number().int().min(2).max(10).nullish().describe("Length in seconds, 2 to 10. Null for the provider's default.")}),execute:async({prompt:a,aspectRatio:c,seconds:d},{sandbox:e,abortSignal:g})=>{let{video:h}=await (0,f.experimental_generateVideo)({model:b,prompt:a,aspectRatio:c??"16:9",duration:d??void 0,abortSignal:g}),i=await q(e,t.videos,p(a,v(h.mediaType,"mp4")),h.uint8Array);return u(i)}})};async function r(){return(await Promise.all([s(x),s(y),s(z),s(A)])).filter(a=>null!==a)}async function s(a){try{return await a()}catch(a){return l.logger.warn(`studio: a tool could not be built — ${(0,m.errorToString)(a)}`),null}}a.s(["loadStudio",0,r]),c()}catch(a){c(a)}},!1),644468,a=>a.a(async(b,c)=>{try{var d=a.i(723885),e=a.i(569572),f=a.i(317844),g=a.i(947950),h=a.i(182248),i=a.i(500777),j=b([f,g,i]);async function k(a){let[b,c]=await Promise.all([!a||a===e.STUDIO_SERVER?(0,i.loadStudio)():[],a===e.STUDIO_SERVER?[]:(0,g.listToolNames)(a)]);return[...b.map(a=>({server:e.STUDIO_SERVER,name:a.name})),...c]}[f,g,i]=j.then?(await j)():j;let p=async()=>{let[a,b]=await Promise.all([(0,i.loadStudio)(),(0,g.listServerNames)()]);return[...a.length?[e.STUDIO_SERVER]:[],...b.map(a=>a.name)]};async function l(a,b){if(a===e.STUDIO_SERVER){let a=new Set(b);return(await (0,i.loadStudio)()).filter(b=>a.has(b.name)).map(a=>({name:a.name,description:a.description,inputSchema:d.default.toJSONSchema(a.inputSchema)}))}return(await (0,g.findToolSchemas)(a,b)).map(a=>({name:a.name,description:a.description??null,inputSchema:a.inputSchema??null}))}async function m(a,b,c,d,g){try{let f=b===e.STUDIO_SERVER?await n(a,c,d,
|
|
99
|
+
${await c.fold(i.text,"transcript")}`}})},A=async()=>{let a=await (0,j.resolveMediaRef)("video");if(!a)return null;let b=(0,j.buildVideoModel)(a.ref,a.apiKey);return o({name:k.STUDIO_TOOLS.generate_video,description:"Make a short video and save it as a file in the workspace. Takes minutes. What comes back is its path.",inputSchema:h.default.object({prompt:h.default.string().describe("What happens: the scene, the motion, the camera, the mood. The video model does not see the job or the conversation, so nothing can be left implied."),aspectRatio:h.default.enum(["16:9","9:16"]).nullish().describe("Aspect ratio. Null for 16:9."),seconds:h.default.number().int().min(2).max(10).nullish().describe("Length in seconds, 2 to 10. Null for the provider's default.")}),execute:async({prompt:a,aspectRatio:c,seconds:d},{sandbox:e,abortSignal:g})=>{let{video:h}=await (0,f.experimental_generateVideo)({model:b,prompt:a,aspectRatio:c??"16:9",duration:d??void 0,abortSignal:g}),i=await q(e,t.videos,p(a,v(h.mediaType,"mp4")),h.uint8Array);return u(i)}})};async function r(){return(await Promise.all([s(x),s(y),s(z),s(A)])).filter(a=>null!==a)}async function s(a){try{return await a()}catch(a){return l.logger.warn(`studio: a tool could not be built — ${(0,m.errorToString)(a)}`),null}}a.s(["loadStudio",0,r]),c()}catch(a){c(a)}},!1),644468,a=>a.a(async(b,c)=>{try{var d=a.i(723885),e=a.i(569572),f=a.i(317844),g=a.i(947950),h=a.i(182248),i=a.i(500777),j=b([f,g,i]);async function k(a){let[b,c]=await Promise.all([!a||a===e.STUDIO_SERVER?(0,i.loadStudio)():[],a===e.STUDIO_SERVER?[]:(0,g.listToolNames)(a)]);return[...b.map(a=>({server:e.STUDIO_SERVER,name:a.name})),...c]}[f,g,i]=j.then?(await j)():j;let p=async()=>{let[a,b]=await Promise.all([(0,i.loadStudio)(),(0,g.listServerNames)()]);return[...a.length?[e.STUDIO_SERVER]:[],...b.map(a=>a.name)]};async function l(a,b){if(a===e.STUDIO_SERVER){let a=new Set(b);return(await (0,i.loadStudio)()).filter(b=>a.has(b.name)).map(a=>({name:a.name,description:a.description,inputSchema:d.default.toJSONSchema(a.inputSchema)}))}return(await (0,g.findToolSchemas)(a,b)).map(a=>({name:a.name,description:a.description??null,inputSchema:a.inputSchema??null}))}async function m(a,b,c,d,g){let i=AbortSignal.timeout(e.CONNECTED_TOOL_TIMEOUT_MS),j=g?AbortSignal.any([g,i]):i;try{let f=b===e.STUDIO_SERVER?await n(a,c,d,j):await o(b,c,d,j);if("string"!=typeof f)return f;return{status:"ok",text:await a.fold(f,`${b}-${c}`)}}catch(a){if(a instanceof f.McpAuthRequiredError)return{status:"auth_required",server:b,authorizationUrl:a.authorizationUrl};if(i.aborted&&!g?.aborted)return{status:"error",text:`${c} on ${b} gave no answer in ${e.CONNECTED_TOOL_TIMEOUT_MS/6e4} minutes and was given up on.`};return{status:"error",text:(0,h.errorToString)(a)}}}async function n(a,b,c,d){let f=(await (0,i.loadStudio)()).find(a=>a.name===b);if(!f)throw Error(`"${b}" is not in the ${e.STUDIO_SERVER} right now — the key that runs it is gone.`);return f.execute(c??{},{sandbox:a,abortSignal:d})}async function o(a,b,c,d){let e=function(a){let b=a??{},c=!0===b.isError;if(!Array.isArray(b.content)){let a=void 0===b.toolResult?"":"string"==typeof b.toolResult?b.toolResult:JSON.stringify(b.toolResult);return{status:c?"error":"ok",text:a||q(c)}}let d=b.content.map(a=>"text"===a.type&&"string"==typeof a.text?a.text:`[${a.type}${a.mimeType?` ${a.mimeType}`:""} — not shown]`).join("\n").trim();return{status:c?"error":"ok",text:d||q(c)}}(await f.mcpManager.callTool(a,b,c,d));return"ok"===e.status?e.text:e}let q=a=>a?"The tool failed without a message.":"Done.";a.s(["callConnectedTool",0,m,"findConnectedSchemas",0,l,"listConnectedServerNames",0,p,"listConnectedToolNames",0,k]),c()}catch(a){c(a)}},!1),547613,a=>{"use strict";var b=a.i(750227),c=a.i(527990),d=a.i(723885),e=a.i(569572),f=a.i(762008),g=a.i(821415);let h=`## The shell here
|
|
94
100
|
|
|
95
101
|
Every command is a new shell: \`cd\`, exported variables and an activated venv are gone by the next one — chain what depends on the last step into a single command.
|
|
96
102
|
|
|
97
|
-
Nothing is watching it. A command that stops to ask never gets an answer and is killed after ${
|
|
98
|
-
|
|
99
|
-
Keys are not in the environment: every variable named like a key, a token or a secret is removed before the shell starts. An empty one is not an unset one — say which it was, and ask for what a command needs.`;a.s(["createWorkspaceTools",0,(a,g)=>{let i=!0===g.guide,j=(0,c.tool)({description:"Run a bash command.",inputSchema:d.default.object({command:d.default.string(),description:d.default.string().nullish().describe("One short line for the user: what this command does and why. Shown on their screen while it runs — not a restatement of the command.")}),execute:async({command:b},{abortSignal:c})=>{let d=await a.exec(b,{signal:c,env:g.env});return i?(i=!1,{...d,guide:h}):d}});if(!g.write)return{[e.TOOL_NAMES.bash]:j};let k=(0,c.tool)({description:"Write a whole file — what was there is gone. Parent directories are created.",inputSchema:d.default.object({path:d.default.string().describe("Relative to the working directory — under one of its folders — or absolute"),content:d.default.string(),description:d.default.string().nullish().describe("One short line for the user: what this file is. Shown on their screen next to the path.")}),execute:async({path:c,content:d})=>{let e,g=a.resolve(c),h=(0,f.writeRefusal)(g);return h?h:(await a.writeFile(c,d),`Wrote ${(e=(0,b.relative)(a.cwd,g))&&!e.startsWith("..")?e:g} (${d.split("\n").length} lines)`)}});return{[e.TOOL_NAMES.bash]:j,[e.TOOL_NAMES.write_file]:k}}])},992497,a=>a.a(async(b,c)=>{try{var d=a.i(47919),e=a.i(527990),f=a.i(794219),g=a.i(569572),h=a.i(762008),i=a.i(176668),j=a.i(8412),k=a.i(221214),l=b([k]);[k]=l.then?(await l)():l;let n=(0,j.createKeyedLock)();async function m(a){return n(a.bot,async()=>{let b=await (0,k.readBotNote)(a.bot),c=b;try{var j,l;await (0,d.generateText)({model:a.model,messages:[{role:"user",content:(j=b,l=a.want,`You keep one worker's notes. It is an agent with a shell on this machine; the notes are its own, read at the start of every job it runs and by nobody else. They hold what this machine has taught it — the command that works here, the flag without which something fails, the tool this platform does not have. Write what the worker found, never what it proposed.
|
|
100
|
-
|
|
101
|
-
Four things do not belong, however true today: what is in a folder right now, what a job produced, anything about the person the work is for, and how to satisfy the worker's own tools (\`report\`, \`write_file\`, \`bash\` — those belong to the app it runs inside and change with it). A program *on the machine* is the opposite and does belong.
|
|
102
|
-
|
|
103
|
-
Nor does how the worker should behave. Whoever owns it writes that separately and it outranks these, so a note about manner or language is either already said or about to be overruled.
|
|
103
|
+
Nothing is watching it. A command that stops to ask never gets an answer and is killed after ${e.EXEC_TIMEOUT_MS/1e3}s, so pass the flag that skips the question (\`-y\`, \`--yes\`, \`--no-input\`), and send anything genuinely long to the background with its output redirected to a file.
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
Keys are not in the environment: every variable named like a key, a token or a secret is removed before the shell starts. An empty one is not an unset one — say which it was, and ask for what a command needs.`;a.s(["createWorkspaceTools",0,(a,e)=>{let i=!0===e.guide,j=(0,c.tool)({description:"Run a bash command.",inputSchema:d.default.object({command:d.default.string(),description:d.default.string().nullish().describe("One short line for the user: what this command does and why. Shown on their screen while it runs — not a restatement of the command.")}),execute:async({command:b},{abortSignal:c})=>{let d=await a.exec(b,{signal:c,env:e.env});return i?(i=!1,{...d,guide:h}):d}});if(!e.write)return{[f.TOOL_NAMES.bash]:j};let k=(0,c.tool)({description:"Write a whole file — what was there is gone. Parent directories are created.",inputSchema:d.default.object({path:d.default.string().describe("Relative to the working directory — under one of its folders — or absolute"),content:d.default.string(),description:d.default.string().nullish().describe("One short line for the user: what this file is. Shown on their screen next to the path.")}),execute:async({path:c,content:d})=>{let e,f=a.resolve(c),h=(0,g.writeRefusal)(f);return h?h:(await a.writeFile(c,d),`Wrote ${(e=(0,b.relative)(a.cwd,f))&&!e.startsWith("..")?e:f} (${d.split("\n").length} lines)`)}});return{[f.TOOL_NAMES.bash]:j,[f.TOOL_NAMES.write_file]:k}}])},641301,a=>{"use strict";var b=a.i(912714),c=a.i(750227),d=a.i(569572),e=a.i(821415);let f=a=>`${(0,e.botFolder)(a)}/memory`;async function g(a,i=d.BOT_MEMORY_LISTED){let j=f(a),k=(0,c.join)(e.WORKSPACE,j),l=await (0,b.readdir)(k).catch(()=>[]),m=(await Promise.all(l.filter(a=>!a.startsWith(".")).map(async a=>{let d=await (0,b.stat)((0,c.join)(k,a)).catch(()=>null);return d?.isFile()?{name:a,changed:d.mtimeMs,bytes:d.size}:null}))).filter(a=>null!==a).sort((a,b)=>b.changed-a.changed),n=await Promise.all(m.slice(0,i).map(async({name:a,changed:b,bytes:d})=>({file:a,path:`${j}/${a}`,line:await h((0,c.join)(k,a)),at:new Date(b),bytes:d})));return{folder:j,entries:n,total:m.length}}async function h(a){let c=await (0,b.open)(a,"r").catch(()=>null);if(!c)return"";try{let a=Buffer.alloc(1024),{bytesRead:b}=await c.read(a,0,1024,0),d=a.toString("utf8",0,b).split("\n").map(a=>a.trim()).filter(Boolean);if("---"===d[0]){let a=d.find(a=>a.startsWith("description:"));if(a)return a.slice(12).trim().replace(/^["']|["']$/g,"");let b=d.indexOf("---",1);return b>0?(d[b+1]??"").replace(/^#+\s*/,""):""}return(d[0]??"").replace(/^#+\s*/,"")}finally{await c.close()}}a.s(["botMemoryFolder",0,f,"listBotMemory",0,g])},654034,a=>a.a(async(b,c)=>{try{var d=a.i(47919),e=a.i(527990),f=a.i(569572),g=a.i(738131),h=a.i(875931),i=a.i(735502),j=a.i(978876),k=a.i(762008),l=a.i(446957),m=a.i(821415),n=a.i(176668),o=a.i(293480),p=a.i(987674),q=a.i(221214),r=a.i(84929),s=b([g,h,i,q,r]);[g,h,i,q,r]=s.then?(await s)():s;let z=f.BOT_RUN.steps;async function t(a,b){var c,o,s;let t,w,C,D,E,F,G,H,I=b.depth??0,J=b.parent??null,K=a.bot.trim(),L=a=>b.emit({...a,bot:K,parent:J}),M=await (0,q.findJobBot)(K);if(!M)return void await L({type:"error",message:`No bot named "${a.bot}". Use a name from the list.`,failure:"fatal"});if(M.disabled&&"request"in a)return void await L({type:"error",message:`${M.name} is switched off. Use a name from the list.`,failure:"fatal"});let N=await ((c=M).provider&&c.model?(0,h.getTextModel)({provider:c.provider,model:c.model}):(0,h.resolveDefaultModel)().then(h.getTextModel)),O=b.taskId?await (0,r.findTask)(b.taskId):null,[P,Q]=await Promise.all([b.taskId?(0,m.openJobScratch)(b.taskId,O?.label??"job"):null,(0,m.openBotFolder)(K)]),[R,S]=await Promise.all([(0,i.loadBotPrompt)(K,M.systemPrompt,"askedBy"in a?{askedBy:a.askedBy,above:a.above,canBorrow:I<f.BOT_RUN.depth}:null,{scratch:P,own:Q}),(0,g.loadTools)({target:"bot",bot:K,session:b.session??b.taskId,model:N})]),T=Math.min(await (0,h.compactBudget)(N.ref,M.compactAt),("askedBy"in a?0:O?.contextBudget)||1/0),U="messages"in a?a.messages:[{role:"user",content:(0,i.buildHandoff)({chain:a.chain,bots:[...a.above,K],did:a.context??null,part:a.request})}],V={left:f.BOT_RUN.askBack},W="askedBy"in a?function(a,b,c){let d={...a};delete d[k.TOOL_NAMES.ask_thursday];let{answer:f}=c;return f?{...d,[k.TOOL_NAMES.ask_back]:(0,e.tool)({description:j.askBackSpec.description,inputSchema:j.askBackSpec.parameters,execute:async({question:a})=>(b.left-=1,f(a))})}:d}(S,V,b):S,X=I<f.BOT_RUN.depth?function(a,b){if(0===b.peers.length)return a;let c={...a,[k.TOOL_NAMES.ask_bot]:(0,e.tool)({description:j.askBotSpec.description,inputSchema:j.askBotSpec.parameters,execute:async({bot:a,request:d,context:e},f)=>{if(a===b.name||b.above.includes(a))return`${a} is already on this job, above you and waiting on your part. Pick another bot, or do it yourself.`;let g=b.options.taskId?`${b.options.session??b.options.taskId}-${f.toolCallId.slice(0,8)}`:null,h=[],i=async e=>{let g=await y({model:b.model,instructions:b.instructions,tools:c,messages:f.messages,asked:{bot:a,request:d},question:e,signal:b.options.signal});return await b.emit({type:"answered",question:e,...g}),h.push({question:e,answer:g.text}),g.text};try{var j;let c=await x({bot:a,request:d,context:e,askedBy:b.name,chain:b.chain,above:[...b.above,b.name]},{...b.options,signal:f.abortSignal??b.options.signal,depth:b.depth+1,parent:f.toolCallId,session:g,answer:i});return h.length?`${c}
|
|
106
106
|
|
|
107
|
-
${j?
|
|
107
|
+
${j=a,h.map(({question:a,answer:b})=>`(On the way ${j} asked you: "${a}" — you answered: "${b}")`).join("\n")}`:c}finally{g&&(0,m.closeHiddenBrowser)(g)}}})};return c}(W,{name:K,model:N.model,instructions:R.text,peers:R.peers,depth:I,chain:(0,i.chainOf)(U[0]),above:"askedBy"in a?a.above:[],options:b,emit:L}):W,Y={compact:null,interjections:[]},Z=(o=f.BOT_RUN.silenceMs,w=new AbortController,C=0,D=!1,E=()=>{clearTimeout(t),t=void 0,D||C>0||(t=setTimeout(()=>{w.abort(new DOMException(`The model sent nothing for ${Math.round(o/6e4)} minutes.`,"TimeoutError"))},o))},{signal:w.signal,touch:E,hold:()=>{C+=1,E()},release:()=>{C=Math.max(0,C-1),E()},end:()=>{D=!0,E()}}),$=0,_=new d.ToolLoopAgent({model:N.model,instructions:R.text,tools:X,stopWhen:[(0,d.stepCountIs)(z),A,(0,d.hasToolCall)(k.TOOL_NAMES.ask_thursday)],prepareStep:async({stepNumber:a,steps:c,messages:d})=>{let e=a<z-1?{}:{activeTools:[k.TOOL_NAMES.answer],toolChoice:{type:"tool",toolName:k.TOOL_NAMES.answer}};!e.activeTools&&V.left<=0&&(e={...e,activeTools:Object.keys(X).filter(a=>a!==k.TOOL_NAMES.ask_back)});let f=c.at(-1)?.usage.inputTokens??0,g=Math.max(f,d.reduce((a,b)=>a+(0,p.estimateTokens)("string"==typeof b.content?b.content:JSON.stringify(b.content))+4,0));$=g;let h=d;if(g>T&&d.length>2){Z.hold();let a=await v(N.model,X,d,{signal:b.signal,budget:T}).finally(Z.release);n.logger.debug(`compacted ${d.length} messages at ${g} tokens (budget ${T})`);let c=`${a.text}${await u(O?.id??null,d,P)}`;Y.compact={type:"compact",text:c,usage:a.usage,messages:d.length,tokens:g},h=[d[0],{role:"user",content:c}]}let i=a>0?b.notes?.()??[]:[];return(i.length&&(Y.interjections.push(...i),h=[...h,...i.map(a=>({role:"user",content:a}))]),h===d)?e:{...e,messages:h}}}),aa=(F=[],G=[],H=!1,{push(a){let b=G.shift();b?b(a):F.push(a)},take(){let a=F.shift();return a?Promise.resolve(a):H?Promise.resolve(null):new Promise(a=>G.push(a))},end(){for(let a of(H=!0,G.splice(0)))a(null)}}),ab=b.signal?AbortSignal.any([b.signal,Z.signal]):Z.signal;Z.touch();let ac=await _.stream({messages:U,abortSignal:ab,onStepEnd:a=>aa.push({messages:a.response.messages,usage:B(a.usage)})}),ad="",ae=null,af=null,ag=null,ah=-1,ai=null,aj=new Set,ak=a=>{let b=(0,h.modelFailureOf)(a),c=(0,h.modelErrorToString)(a);if("overflow"!==b)return{type:"error",message:c,failure:b};let d=Math.floor(Math.min(T,$||T)*f.BOT_RUN.overflowShrink);return{type:"error",message:c,failure:b,budget:Math.max(l.COMPACT_AT_MIN,d)}};ab.addEventListener("abort",()=>aa.end(),{once:!0});try{for await(let a of ac.fullStream)switch(Z.touch(),a.type){case"start-step":for(let a of(ah+=1,Y.compact&&(await L(Y.compact),Y.compact=null),Y.interjections.splice(0)))await L({type:"interjection",text:a});break;case"text-delta":ad+=a.text;break;case"text-end":{let a=ad.trim();if(ad="",!a)break;ae=a,await L({type:"text",text:a});break}case"tool-call":if(a.toolName===k.TOOL_NAMES.ask_thursday){let b=a.input;af={id:a.toolCallId,question:String(b.question??""),options:(0,r.optionsOf)(b.options)}}else if(a.toolName===k.TOOL_NAMES.answer){let b=a.input;ag={text:String(b.result??"").trim(),stopped:ah>=z-1}}a.providerExecuted||a.toolName===k.TOOL_NAMES.ask_thursday||(aj.add(a.toolCallId),Z.hold()),await L({type:"tool",id:a.toolCallId,name:a.toolName,input:a.input});break;case"tool-result":aj.delete(a.toolCallId)&&Z.release(),a.toolName===k.TOOL_NAMES.answer&&ag&&!(0,j.answerAccepted)(a.output)&&(ag={text:`${ag.text}
|
|
108
108
|
|
|
109
|
-
|
|
110
|
-
${j??""}
|
|
111
|
-
\`\`\`
|
|
109
|
+
${s=a.output,"string"==typeof s?s:s&&"object"==typeof s&&"value"in s?"string"==typeof s.value?s.value:JSON.stringify(s.value??""):JSON.stringify(s??"")}`,stopped:!0}),await L({type:"tool-result",id:a.toolCallId,name:a.toolName,output:a.output});break;case"tool-error":aj.delete(a.toolCallId)&&Z.release(),await L({type:"tool-result",id:a.toolCallId,name:a.toolName,output:(0,h.modelErrorToString)(a.error),error:!0});break;case"finish-step":{ai=a.finishReason;let b=await aa.take();b&&await L({type:"step",...b,budget:T});break}case"abort":if(b.signal?.aborted)return;await L({type:"error",message:a.reason??"The model stopped sending.",failure:"transient"});return;case"error":await L(ak(a.error));return}}finally{aa.end(),Z.end()}try{await ac.response}catch(a){if(b.signal?.aborted)return;await L(ak(a));return}af?await L({type:"waiting",...af}):ag?await L({type:"answer",...ag}):"content-filter"===ai?await L({type:"error",message:"The provider's content filter stopped the response.",failure:"fatal"}):await L({type:"answer",text:ae??"Stopped without handing anything back.",stopped:null===ae||"length"===ai||ah>=z-1})}let A=({steps:a})=>a.at(-1)?.toolResults.some(a=>a.toolName===k.TOOL_NAMES.answer&&(0,j.answerAccepted)(a.output))??!1;async function u(a,b,c){try{let d=a?await (0,r.listWrittenPaths)(a):(0,r.writtenPathsIn)(b.map(a=>a.content)),e=await (0,m.filesOnDisk)(d,c);if(!e.length)return"";let g=e.slice(-f.BOT_RUN.compactFiles),h=e.length-g.length,i=g.map(a=>`- ${a}`);return h&&i.unshift(`- …and ${h} older ones`),`
|
|
112
110
|
|
|
113
|
-
|
|
111
|
+
Files this job has on disk now — open one rather than fetching again what is in it:
|
|
112
|
+
${i.join("\n")}`}catch(a){return n.logger.warn("files under the summary could not be listed",a),""}}async function v(a,b,c,e){let f;try{return await w(a,b,c,e)}catch(a){if(e.signal?.aborted)throw a;f=a}if("overflow"===(0,h.modelFailureOf)(f)){let g=(0,d.pruneMessages)({messages:c,toolCalls:"before-last-4-messages",emptyMessages:"remove"});try{return await w(a,b,g,e)}catch(a){if(e.signal?.aborted)throw a;f=a}}throw Error(`Could not compact the context (${(0,h.modelErrorToString)(f)}).`,{cause:f})}async function w(a,b,c,e){let g,{text:h,usage:i}=await (0,d.generateText)({model:a,tools:b,toolChoice:"none",messages:[...c,{role:"user",content:(g=(a=>{let{min:b,max:c,perTokens:d}=f.BOT_RUN.summaryWords;return Math.min(c,Math.max(b,Math.round(a/d)))})(e.budget),`Compact your context. The first message above — the job, the call it came from, and anything handed over with it — stays exactly as it is. Everything after it is replaced by what you write now, and you carry on from that first message and this alone; nothing else above can be read again. Write it for a fresh copy of you that has your tools, your instructions and that first message, but has seen none of the rest.
|
|
114
113
|
|
|
115
|
-
|
|
114
|
+
Cover all of it, and prefer a fact over a description of a fact:
|
|
116
115
|
|
|
117
|
-
|
|
116
|
+
- **Where the job stands against that first message.** Do not restate the job or the call; say what has changed since — a choice made, a detail settled, an answer that came back, a correction, anything you are still waiting on.
|
|
117
|
+
- **What is already true.** Every value you have — numbers, names, dates, ids, urls, prices, times — written out, not referred to. A value you leave out is one the next steps go and fetch again.
|
|
118
|
+
- **Where you are.** Which page the browser is on by url, whether you are signed in and to what, what is running, what you were in the middle of. Element refs do not survive this: name what to look for, never a ref.
|
|
119
|
+
- **Files.** Every path you wrote or read, and one line on what each holds.
|
|
120
|
+
- **What did not work**, and why: the url that 404s, the endpoint that needs POST not GET, the selector that is not there, the site that refuses a headless browser, the argument a tool rejected. This is the part that stops the next steps repeating an hour of yours.
|
|
121
|
+
- **What is left**, in the order you would do it.
|
|
118
122
|
|
|
119
|
-
|
|
123
|
+
Plain text, under ${g} words. No preamble, no headings about the summary itself, no account of how you have been going.`)}],abortSignal:e.signal,timeout:f.BOT_RUN.silenceMs}),j=h.trim();if(!j)throw Object.assign(Error("The summary of the context came back empty, so there is nothing to carry on from."),{isRetryable:!0});return{text:`Everything between the first message and here was compacted. Below is your own summary of it; carry on from the first message and this.
|
|
120
124
|
|
|
121
|
-
${
|
|
125
|
+
${j}`,usage:B(i)}}let B=a=>({input:a.inputTokens??0,output:a.outputTokens??0});async function x(a,b){let c="",d=null;return await t(a,{...b,emit:async a=>{"answer"===a.type&&(c=a.stopped?`${a.text}
|
|
122
126
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
${z(a.output)}`,complete:!1}),await H({type:"tool-result",id:a.toolCallId,name:a.toolName,output:a.output});break;case"finish-step":{let a=await T.take();a&&await H({type:"step",...a,budget:B});break}case"error":await H({type:"error",message:(0,h.modelErrorToString)(a.error)});return}}finally{T.end()}try{await U.response}catch(a){await H({type:"error",message:(0,h.modelErrorToString)(a)});return}if(X)return void await H({type:"waiting",...X});if(Y){await H({type:"report",...Y}),(0,r.hasNotesRequest)(Z)&&await (0,s.readBotNotesOn)()&&await (0,r.keepNotes)({bot:G,model:J.model,want:Z,signal:b.signal});return}await H({type:"report",text:W??"Stopped without handing anything back.",complete:!1})}let C=({steps:a})=>a.at(-1)?.toolResults.some(a=>a.toolName===k.TOOL_NAMES.report&&(0,j.reportAccepted)(a.output))??!1,D=new Set(["null","none","n/a","-","없음"]);async function w(a,b,c,e){try{let g,{text:h,usage:i}=await (0,d.generateText)({model:a,tools:b,toolChoice:"none",messages:[...c,{role:"user",content:(g=(a=>{let{min:b,max:c,perTokens:d}=f.BOT_RUN.summaryWords;return Math.min(c,Math.max(b,Math.round(a/d)))})(e.budget),`Compact your context. Everything above is your own work on this job so far; after this message it is replaced by what you write now, and you carry on from that alone. Write what a fresh copy of you needs to continue without re-reading anything:
|
|
126
|
-
|
|
127
|
-
- The job as it was given — the request, quoted, and the details from the call that matter.
|
|
128
|
-
- What you have done and what you found, with the exact values: numbers, names, urls, dates, ids, error messages.
|
|
129
|
-
- Files you wrote or read, by path, and what each holds.
|
|
130
|
-
- What is still left to do, in order, and any decision or answer you are waiting on.
|
|
131
|
-
- What did not work, so it is not tried again.
|
|
132
|
-
|
|
133
|
-
Plain text, under ${g} words. No preamble and no headings about the summary itself — start with the job.`)}],abortSignal:e.signal}),j=h.trim();if(j)return{text:`The context was compacted here. Below is your own summary of the job up to this point; continue from it.
|
|
134
|
-
|
|
135
|
-
${j}`,usage:E(i)}}catch(a){if(e.signal?.aborted)throw a;throw Error(`Could not compact the context (${(0,h.modelErrorToString)(a)}).`)}throw Error("The summary of the context came back empty, so there is nothing to carry on from.")}let E=a=>({input:a.inputTokens??0,output:a.outputTokens??0});async function x(a,b){let c="",d=null;return await v(a,{...b,emit:async a=>{"report"===a.type&&(c=a.complete?a.text:`${a.text}
|
|
136
|
-
|
|
137
|
-
(As far as they got — they ran out of steps.)`),"error"===a.type&&(d=a.message),await b.emit(a)}}),d&&(0,o.publicError)(d),c}async function y(a){try{let b,c,{text:e,usage:f}=await (0,d.generateText)({model:a.model,system:a.instructions,tools:a.tools,toolChoice:"none",messages:[...a.messages,{role:"user",content:(b=a.asked,c=a.question,`You handed one part of your job to ${b.bot}:
|
|
127
|
+
(As far as they got — they stopped before finishing.)`:a.text),"error"===a.type&&(d=a.message),await b.emit(a)}}),d&&(0,o.publicError)(d),c}async function y(a){try{let b,c,{text:e,usage:g}=await (0,d.generateText)({model:a.model,system:a.instructions,tools:a.tools,toolChoice:"none",messages:[...a.messages,{role:"user",content:(b=a.asked,c=a.question,`You handed one part of your job to ${b.bot}:
|
|
138
128
|
|
|
139
129
|
> ${b.request.trim()}
|
|
140
130
|
|
|
@@ -142,16 +132,18 @@ Before going on, they ask you:
|
|
|
142
132
|
|
|
143
133
|
> ${c.trim()}
|
|
144
134
|
|
|
145
|
-
Answer from what you already have — the request as it reached you, the call it came out of, what you found before asking them. A few lines, plain text, and nothing else: no tools run here. If it is not in what you have, say so rather than guess, and say which way to go without it.`)}],abortSignal:a.signal});return{text:e.trim()||"They had nothing to add. Go on with your best reading, and say what you assumed in what you hand back.",usage:
|
|
135
|
+
Answer from what you already have — the request as it reached you, the call it came out of, what you found before asking them. A few lines, plain text, and nothing else: no tools run here. If it is not in what you have, say so rather than guess, and say which way to go without it.`)}],abortSignal:a.signal,timeout:f.BOT_RUN.silenceMs});return{text:e.trim()||"They had nothing to add. Go on with your best reading, and say what you assumed in what you hand back.",usage:B(g)}}catch(b){if(a.signal?.aborted)throw b;return n.logger.warn(`ask_back: ${(0,h.modelErrorToString)(b)}`),{text:`No answer came back (${(0,h.modelErrorToString)(b)}). Go on with your best reading, and say what you assumed in what you hand back.`,usage:l.NO_TOKENS}}}a.s(["resumeThread",0,function(a,b=new Map){let c=new Set;for(let b of a)if(("tool"===b.role||"assistant"===b.role)&&"string"!=typeof b.content)for(let a of b.content)"tool-result"===a.type&&c.add(a.toolCallId);let d=[],e=[];for(let f of a){if(e.length&&"tool"===f.role){d.push({...f,content:[...e,...f.content]}),e=[];continue}e.length&&(d.push({role:"tool",content:e}),e=[]),d.push(f),"assistant"===f.role&&"string"!=typeof f.content&&(e=f.content.flatMap(a=>"tool-call"!==a.type||c.has(a.toolCallId)?[]:[{type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:{type:"text",value:function(a,b){let c=a.toolName===k.TOOL_NAMES.ask_bot?b.get(a.toolCallId):void 0;return c?`No result: the run was stopped before ${c.bot} answered, and they are not working on it any more. What they had written by then:
|
|
136
|
+
|
|
137
|
+
${c.tail}
|
|
146
138
|
|
|
147
|
-
|
|
139
|
+
Check what they did before relying on it, then finish the part yourself or hand them what is left.`:"No result: the run was stopped before this call returned. Check what it did before relying on it."}(a,b)}}]))}return e.length&&d.push({role:"tool",content:e}),d},"runBot",0,t]),c()}catch(a){c(a)}},!1),674986,a=>a.a(async(b,c)=>{try{var d=a.i(203469),e=a.i(569572),f=a.i(875931),g=a.i(735502),h=a.i(762008),i=a.i(569549),j=a.i(684321),k=a.i(821415),l=a.i(956802),m=a.i(176668),n=a.i(293480),o=a.i(8412),p=a.i(654034),q=a.i(446957),r=a.i(84929),s=b([f,g,i,p,r]);[f,g,i,p,r]=s.then?(await s)():s;let H=globalThis.__botRuns??=new Map,I=globalThis.__botTaskLock??=(0,o.createKeyedLock)(),J=globalThis.__botResumes??=new Map;async function t(a){let b=a.callId?await (0,i.listCallTurns)(a.callId,g.OPENING_TURNS):[],c=(0,g.buildTaskOpening)({bot:a.bot,request:a.request,conversation:b}),d=await (0,r.insertTask)({...a,opening:c});return D(d.id,{bot:a.bot,messages:[{role:"user",content:c}]}),d.id}async function u(a,b){return I(a,async()=>{let c=await (0,r.findTask)(a);c||(0,n.publicError)("No such job.");let d=H.get(a);if(d&&"running"===c.status&&d.note(b))return void m.logger.debug(`task ${a}: interjection queued`);d&&(d.stop.abort(),await d.done),y(a);let e=await (0,r.listThread)(a),{reply:f,as:g}=function(a,b,c){var d;let e,f,g="waiting"===a.status?a.pending:null,i=g?.toolCallId?(d=g.toolCallId,e=new Set(c.flatMap(a=>"tool"===a.role?a.content.flatMap(a=>"tool-result"===a.type?[a.toolCallId]:[]):[])),f=c.findLast(a=>"assistant"===a.role&&"string"!=typeof a.content&&a.content.some(a=>"tool-call"===a.type&&a.toolCallId===d)),(f?.role==="assistant"&&"string"!=typeof f.content?f.content.flatMap(a=>"tool-call"===a.type&&a.toolName===h.TOOL_NAMES.ask_thursday?[a.toolCallId]:[]):[d]).filter(a=>!e.has(a))):[];return i.length?{as:"answer",reply:{role:"tool",content:i.map(a=>({type:"tool-result",toolCallId:a,toolName:h.TOOL_NAMES.ask_thursday,output:{type:"text",value:b}}))}}:{as:"running"===a.status?"interruption":"waiting"===a.status?"answer":"follow-up",reply:{role:"user",content:b}}}(c,b,e);m.logger.debug(`task ${a}: ${g}`),await (0,r.upsertMessage)(a,await (0,r.lastSeq)(a)+1,{bot:null,parent:null,...f}),await (0,r.updateTask)(a,{status:"running",outcome:null,pending:null,seen:!1,endedAt:null}),D(a,{bot:c.bot,messages:(0,p.resumeThread)([...e,f],await (0,r.listBorrowedTails)(a))})})}async function v(a){return I(a,async()=>{let b=await (0,r.findTask)(a);b||(0,n.publicError)("No such job."),b.endedAt&&(0,n.publicError)("That job has already ended."),y(a),H.get(a)?.stop.abort(),await (0,r.updateTask)(a,{status:"failed",outcome:"Cancelled.",pending:null,seen:!0,endedAt:new Date}),(0,k.closeJobShell)(a)})}async function w(a){return I(a,async()=>{let b=await (0,r.findTask)(a);y(a),H.get(a)?.stop.abort(),H.delete(a),(0,k.closeJobShell)(a);let c=await (0,r.deleteTask)(a);return c&&b&&await (0,k.removeJobScratch)(a,b.label),c})}async function x(){let a=await (0,r.deleteFinishedTasks)();for(let b of a)await (0,k.removeJobScratch)(b.id,b.label);return a.length}function y(a){clearTimeout(J.get(a)),J.delete(a)}async function z(a){d.presence.watching&&await I(a,async()=>{let b=await (0,r.findTask)(a);if(!b||"waiting"!==b.status||!b.pending?.auto||H.has(a))return;m.logger.debug(`task ${a}: picking back up`);let c=await (0,r.listThread)(a);await (0,r.updateTask)(a,{status:"running",outcome:null,pending:null,seen:!1,endedAt:null}),D(a,{bot:b.bot,messages:(0,p.resumeThread)(c,await (0,r.listBorrowedTails)(a))})})}async function A(a,b){let c=await (0,r.countStopsSinceSpoken)(a),d=c<e.BOT_RUN.autoResumes,f=e.BOT_RUN.retryAfterMs,g=d&&b.retry?f[Math.min(c,f.length-1)]:0;await B(a,`${b.why} ${K}`).catch(b=>m.logger.warn(`task ${a}: stop not written`,b)),await C(a,{status:"waiting",outcome:d?`${b.why} ${g?`It tries again in ${L(g)}.`:"It picks back up by itself."}`:`${b.why} It has stopped ${c+1} times in a row, so it waits for you. Everything it had done is still here.`,pending:{toolCallId:null,options:[q.TASK_CONTINUE],...d?{auto:!0,retryAt:Date.now()+g}:{}},...b.budget?{contextBudget:b.budget}:{},seen:!1,endedAt:null}),d&&(y(a),J.set(a,setTimeout(()=>{J.delete(a),z(a).catch(b=>m.logger.error(`task ${a}: resume`,b))},Math.max(0,g))))}globalThis.__botPausing??={current:Promise.resolve()};let K="Anything that was under way — a command, a page loading, a download — may not have finished: check before relying on it, then carry on.",L=a=>a<6e4?`${Math.round(a/1e3)} seconds`:`${Math.round(a/6e4)} minutes`;async function B(a,b){await (0,r.upsertMessage)(a,await (0,r.lastSeq)(a)+1,{bot:null,parent:null,role:"user",content:b,note:!0})}async function C(a,b){for(let c of[1e3,3e3,null])try{await (0,r.updateTask)(a,b);return}catch(b){if(null===c)throw b;m.logger.warn(`task ${a}: ending not written, trying again`,b),await new Promise(a=>setTimeout(a,c))}}function D(a,b){let c=new AbortController,d=()=>{},e=new Promise(a=>{d=a}),f=[];H.set(a,{stop:c,done:e,note:b=>!!H.has(a)&&(f.push(b),!0)}),E(a,b,c.signal,f).catch(b=>{m.logger.error(`task ${a}`,b)}).finally(d)}class M{taskId;seq;steps;closed;constructor(a,b){this.taskId=a,this.steps=new Map,this.closed=!1,this.seq=b}close(){this.closed=!0}async note(a){await (0,r.upsertMessage)(this.taskId,++this.seq,{bot:null,parent:null,role:"user",content:a,note:!0})}step(a){let b=`${a.bot} ${a.parent??""}`,c=this.steps.get(b);return c||(c={assistant:null,tool:null,parts:{assistant:[],tool:[]}},this.steps.set(b,c)),c}write(a,b,c,d={}){let e={bot:b.bot,parent:b.parent,role:c.role,content:c.content,compact:d.compact??!1,note:d.note??!1};return(0,r.upsertMessage)(this.taskId,a,e)}async on(a){if(this.closed)return;let b=this.step(a);switch(a.type){case"text":return b.assistant??=++this.seq,b.parts.assistant.push({type:"text",text:a.text}),this.write(b.assistant,a,{role:"assistant",content:b.parts.assistant});case"tool":return b.assistant??=++this.seq,b.parts.assistant.push({type:"tool-call",toolCallId:a.id,toolName:a.name,input:a.input}),this.write(b.assistant,a,{role:"assistant",content:b.parts.assistant});case"tool-result":return b.assistant??=++this.seq,b.tool??=++this.seq,b.parts.tool.push({type:"tool-result",toolCallId:a.id,toolName:a.name,output:a.error?{type:"error-text",value:String(a.output)}:"string"==typeof a.output?{type:"text",value:a.output}:{type:"json",value:a.output}}),this.write(b.tool,a,{role:"tool",content:b.parts.tool});case"step":{let c=[b.assistant,b.tool];this.steps.delete(`${a.bot} ${a.parent??""}`);let d=new Set;for(let[b,e]of a.messages.entries()){let f=c[b]??++this.seq;d.add(f),await this.write(f,a,e)}let e=c.filter(a=>null!==a&&!d.has(a));e.length&&await (0,r.deleteMessages)(this.taskId,e);return}case"compact":return this.write(++this.seq,a,{role:"user",content:a.text},{compact:!0,note:!0});case"interjection":return this.write(++this.seq,a,{role:"user",content:a.text});default:return}}}async function E(a,b,c,g){let h=new M(a,await (0,r.lastSeq)(a)),i=null,l=null;try{await (0,p.runBot)(b,{signal:c,taskId:a,notes:()=>g.splice(0),emit:async b=>{await h.on(b),"step"===b.type&&await (0,r.addTaskUsage)(a,b.usage,b.parent?null:{tokens:b.usage.input,budget:b.budget}),("compact"===b.type||"answered"===b.type)&&await (0,r.addTaskUsage)(a,b.usage),b.parent||("waiting"===b.type?i={status:"waiting",outcome:b.question,pending:{toolCallId:b.id,options:b.options}}:"answer"===b.type?i=b.stopped?{status:"waiting",outcome:b.text,pending:{toolCallId:null,options:[q.TASK_CONTINUE]}}:{status:"done",outcome:b.text,pending:null}:"error"===b.type&&(l={message:b.message,failure:b.failure,budget:b.budget},i={status:"failed",outcome:F(b.message),pending:null}))}})}catch(a){l={message:(0,f.modelErrorToString)(a),failure:(0,f.modelFailureOf)(a)},i={status:"failed",outcome:F(l.message),pending:null}}finally{h.close(),H.delete(a)}if(c.aborted)return;let n=i??{status:"failed",outcome:"Stopped without handing anything back.",pending:null},o=l&&"fatal"!==l.failure?l:null;try{o?await A(a,{why:"overflow"===o.failure?`The model refused the context as too long (${o.message}); it is compacted before going on.`:`The model call failed (${o.message}).`,retry:"transient"===o.failure,budget:o.budget}):("failed"===n.status&&await h.note(`The run stopped here: ${l?.message??n.outcome}`).catch(b=>m.logger.warn(`task ${a}: break not written`,b)),await C(a,{...n,seen:!1,endedAt:"waiting"===n.status?null:new Date}))}catch(b){m.logger.error(`task ${a}: could not record how it ended`,b);return}o||"waiting"===n.status?(0,k.pruneJobFiles)():(0,k.closeHiddenBrowser)(a);let s=await (0,r.findTask)(a);if(s){if(g.length){let b=g.splice(0).join("\n\n");m.logger.debug(`task ${a}: interjection after the run ended — resuming`),u(a,b).catch(b=>{m.logger.error(`task ${a}: late interjection`,b)});return}if(!o&&(await G(s.label,n),"done"===n.status)){var t;let b,c=(t=n.outcome,(b=(0,j.pathsIn)(t)).find(a=>a.startsWith(`${e.PATHS.artifacts}/`))??b[0]??null);c&&d.appEvents.emit({type:"artifact",taskId:a,label:s.label,path:c})}}}function F(a){return`The run broke: ${a}
|
|
148
140
|
|
|
149
|
-
Everything it had done is still here — answer to pick it back up.`}async function C(a,b){if(0!==e.appEventStream.watchers&&await (0,j.isAnyCallLive)())return;let c="waiting"===b.status?`${a} — needs you`:a;(0,m.desktopNotify)(c,b.outcome)}a.s(["answerTask",0,v,"cancelTask",0,w,"removeFinishedTasks",0,y,"removeTask",0,x,"startTask",0,u]),c()}catch(a){c(a)}},!1),317844,a=>a.a(async(b,c)=>{try{var d,e=a.i(106450),f=a.i(64203),g=a.i(569572),h=a.i(176668),i=a.i(182248),j=a.i(947950),k=a.i(899284),l=b([j]);[j]=l.then?(await l)():l;class m extends Error{serverName;authorizationUrl;constructor(a,b){super(`MCP server "${a}" requires authorization`),this.serverName=a,this.authorizationUrl=b,this.name="McpAuthRequiredError"}}class n{store;serverName;oauth;callbackUrl;clientName;staticClient;lastAuthorizationUrl;constructor(a,b,c,d,e,f){this.store=a,this.serverName=b,this.oauth=c,this.callbackUrl=d,this.clientName=e,this.staticClient=f}get redirectUrl(){return this.callbackUrl}get clientMetadata(){return{client_name:this.clientName,redirect_uris:[this.callbackUrl],grant_types:["authorization_code","refresh_token"],response_types:["code"],token_endpoint_auth_method:"client_secret_post"}}async persist(a){this.oauth={...this.oauth,...a},await this.store.saveOAuth(this.serverName,this.oauth)}clientInformation(){return this.staticClient??this.oauth.clientInformation}async saveClientInformation(a){await this.persist({clientInformation:a})}tokens(){return this.oauth.tokens}async saveTokens(a){await this.persist({tokens:a})}authorizationServerInformation(){return this.oauth.authorizationServer}async saveAuthorizationServerInformation(a){await this.persist({authorizationServer:a})}codeVerifier(){if(!this.oauth.codeVerifier)throw Error("No code verifier saved");return this.oauth.codeVerifier}async saveCodeVerifier(a){await this.persist({codeVerifier:a})}state(){return crypto.randomUUID()}async saveState(a){await this.persist({state:a})}storedState(){return this.oauth.state}redirectToAuthorization(a){this.lastAuthorizationUrl=a}async invalidateCredentials(a){let b={...this.oauth};("all"===a||"client"===a)&&(b.clientInformation=void 0),("all"===a||"tokens"===a)&&(b.tokens=void 0),("all"===a||"verifier"===a)&&(b.codeVerifier=void 0),this.oauth=b,await this.store.saveOAuth(this.serverName,b)}}let o=globalThis;o.__thursdayMcpManager&&o.__thursdayMcpManager.dispose(),d={callbackUrl:new URL("/api/mcp/oauth/callback",g.APP_URL).href,clientName:g.APP_NAME},o.__thursdayMcpManager=new class a{store;sessions;connecting;idleTtlMs;callbackUrl;clientName;constructor(a,b){this.store=a,this.sessions=new Map,this.connecting=new Map,this.callbackUrl=b.callbackUrl,this.idleTtlMs=b.idleTtlMs??18e5,this.clientName=b.clientName??g.APP_NAME}async connect(a){let b=this.connecting.get(a);if(b)return b;let c=this.doConnect(a).finally(()=>this.connecting.delete(a));return this.connecting.set(a,c),c}async callTool(a,b,c){let d=await this.ensureClient(a);try{let e=await d.callTool({name:b,arguments:c});return this.touch(a),e}catch(b){if(b instanceof e.UnauthorizedError)throw await this.closeSession(a),new m(a);throw b}}async finishAuthorization(a){let b=a.get("state"),c=a.get("code");if(!b||!c)throw Error("OAuth callback is missing code or state");let d=await this.store.findByOAuthState(b);if(!d||!(0,k.isRemoteConfig)(d.config))throw Error("No server is waiting for this authorization");let f=this.providerFor(d),g=await (0,e.auth)(f,{serverUrl:d.config.url,authorizationCode:c,callbackState:b});if("AUTHORIZED"!==g)throw Error(`Token exchange ended in "${g}"`);return await f.invalidateCredentials("verifier"),await this.connect(d.name),d.name}async disconnect(a){await this.closeSession(a)}async dispose(){await Promise.all([...this.sessions.keys()].map(a=>this.closeSession(a)))}async doConnect(a){await this.closeSession(a);let b=await this.store.load(a);if(!b)throw Error(`Unknown MCP server "${a}"`);let c={};try{let d=await this.openClient(b,c),e=(await d.listTools()).tools.map(a=>({name:a.name,description:a.description,inputSchema:a.inputSchema,outputSchema:a.outputSchema}));return this.adopt(a,d),await this.store.saveConnectionResult(a,{toolInfo:e,lastError:null}),h.logger.info(`mcp "${a}" connected — ${e.length} tools`),{status:"connected",tools:e}}catch(l){var d,f;let g;if(l instanceof e.UnauthorizedError||l?.cause instanceof e.UnauthorizedError){let b=c.href;if(b)return await this.store.saveConnectionResult(a,{toolInfo:[],lastError:"Authorization required — finish sign-in in the opened tab"}),{status:"auth_required",authorizationUrl:b}}let j=(d=l,f=b,g=(0,i.errorToString)(d),/\b40[13]\b/.test(g)&&/OAuth|register/i.test(g)&&(0,k.isRemoteConfig)(f.config)&&!f.config.oauthClient?"This server does not allow automatic client registration. Register an OAuth app with the provider and add its client ID and secret.":g);throw await this.store.saveConnectionResult(a,{toolInfo:[],lastError:j}),h.logger.warn(`mcp "${a}" failed — ${j}`),Error(j,{cause:l})}}async openClient(a,b={}){if((0,k.isRemoteConfig)(a.config)){let c=this.providerFor(a);try{return await (0,e.createMCPClient)({name:this.clientName,transport:{type:"http",url:a.config.url,headers:a.config.headers,authProvider:c,redirect:"follow"}})}finally{b.href=c.lastAuthorizationUrl?.href}}return(0,e.createMCPClient)({name:this.clientName,transport:new f.Experimental_StdioMCPTransport({command:a.config.command,args:a.config.args,env:a.config.env})})}providerFor(a){let b=(0,k.isRemoteConfig)(a.config)?a.config.oauthClient:void 0;return new n(this.store,a.name,a.oauth??{},this.callbackUrl,this.clientName,b&&{client_id:b.clientId,client_secret:b.clientSecret})}async ensureClient(a){let b=this.sessions.get(a);if(b)return b.client;let c=await this.connect(a);if("auth_required"===c.status)throw new m(a,c.authorizationUrl);let d=this.sessions.get(a);if(!d)throw Error(`Session for "${a}" vanished mid-connect`);return d.client}adopt(a,b){this.sessions.set(a,{client:b,idleTimer:this.armIdleTimer(a)})}touch(a){let b=this.sessions.get(a);b&&(clearTimeout(b.idleTimer),b.idleTimer=this.armIdleTimer(a))}armIdleTimer(a){let b=setTimeout(()=>{this.closeSession(a)},this.idleTtlMs);return b.unref?.(),b}async closeSession(a){let b=this.sessions.get(a);b&&(this.sessions.delete(a),clearTimeout(b.idleTimer),await b.client.close().catch(()=>{}))}}({load:a=>(0,j.findServer)(a),saveOAuth:(a,b)=>(0,j.saveOAuthData)(a,b),saveConnectionResult:(a,b)=>null===b.lastError?(0,j.syncServerTools)(a,b.toolInfo):(0,j.saveConnectionError)(a,b.lastError),findByOAuthState:a=>(0,j.findServerByOAuthState)(a)},d);let p=o.__thursdayMcpManager;a.s(["McpAuthRequiredError",0,m,"mcpManager",0,p]),c()}catch(a){c(a)}},!1),947950,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(351674),f=a.i(203469),g=a.i(184838),h=a.i(714428),i=a.i(899284),j=b([g]);async function k(a){var b;let[c]=await g.database.select({name:h.mcpServerTable.name,config:h.mcpServerTable.config,lastError:h.mcpServerTable.lastError,toolsSyncedAt:h.mcpServerTable.toolsSyncedAt}).from(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a));return c?{...c,config:(b=c.config,(0,i.isRemoteConfig)(b)?{url:b.url}:{command:b.command,args:b.args}),tools:await l(a)}:null}async function l(a){return g.database.select({id:h.mcpToolTable.id,name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema,outputSchema:h.mcpToolTable.outputSchema}).from(h.mcpToolTable).where((0,d.eq)(h.mcpToolTable.serverName,a)).orderBy(h.mcpToolTable.name)}async function m(a){let[b]=await g.database.select().from(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a));return b??null}[g]=j.then?(await j)():j;let u=()=>f.appEvents.emit({type:"mcp"});async function n(a){let[b]=await g.database.insert(h.mcpServerTable).values({...a,lastError:null}).onConflictDoUpdate({target:h.mcpServerTable.name,set:{config:a.config,lastError:null}}).returning();return u(),b}async function o(a,b){await g.database.transaction(async c=>{b.length&&await c.insert(h.mcpToolTable).values(b.map(b=>({...b,serverName:a}))).onConflictDoUpdate({target:[h.mcpToolTable.serverName,h.mcpToolTable.name],set:{description:p(h.mcpToolTable.description),inputSchema:p(h.mcpToolTable.inputSchema),outputSchema:p(h.mcpToolTable.outputSchema)}}),await c.delete(h.mcpToolTable).where(b.length?(0,d.and)((0,d.eq)(h.mcpToolTable.serverName,a),(0,d.notInArray)(h.mcpToolTable.name,b.map(a=>a.name))):(0,d.eq)(h.mcpToolTable.serverName,a)),await c.update(h.mcpServerTable).set({lastError:null,toolsSyncedAt:new Date}).where((0,d.eq)(h.mcpServerTable.name,a))}),u()}function p(a){return e.sql.raw(`excluded."${a.name}"`)}async function q(a,b){await g.database.update(h.mcpServerTable).set({lastError:b}).where((0,d.eq)(h.mcpServerTable.name,a)),u()}async function r(a,b){await g.database.update(h.mcpServerTable).set({oauth:b}).where((0,d.eq)(h.mcpServerTable.name,a)),u()}async function s(a){let[b]=await g.database.select().from(h.mcpServerTable).where(e.sql`json_extract(${h.mcpServerTable.oauth}, '$.state') = ${a}`);return b??null}async function t(a){let b=await g.database.delete(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a)).returning();return b.length>0&&u(),b.length>0}a.s(["deleteServer",0,t,"findPinnedTools",0,function(a){return g.database.select({server:h.mcpToolTable.serverName,name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema}).from(h.botMcpToolTable).innerJoin(h.mcpToolTable,(0,d.eq)(h.botMcpToolTable.toolId,h.mcpToolTable.id)).where((0,d.eq)(h.botMcpToolTable.botName,a)).orderBy(h.mcpToolTable.serverName,h.mcpToolTable.name)},"findServer",0,m,"findServerByOAuthState",0,s,"findServerDetail",0,k,"findToolSchemas",0,function(a,b){return b.length?g.database.select({name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema}).from(h.mcpToolTable).where((0,d.and)((0,d.eq)(h.mcpToolTable.serverName,a),(0,d.inArray)(h.mcpToolTable.name,b))).orderBy(h.mcpToolTable.name):Promise.resolve([])},"listServerNames",0,function(){return g.database.select({name:h.mcpServerTable.name}).from(h.mcpServerTable).orderBy(h.mcpServerTable.name)},"listToolNames",0,function(a){let b=g.database.select({server:h.mcpToolTable.serverName,name:h.mcpToolTable.name}).from(h.mcpToolTable);return a?b.where((0,d.eq)(h.mcpToolTable.serverName,a)).orderBy(h.mcpToolTable.name):b.orderBy(h.mcpToolTable.serverName,h.mcpToolTable.name)},"saveConnectionError",0,q,"saveOAuthData",0,r,"syncServerTools",0,o,"upsertServer",0,n]),c()}catch(a){c(a)}},!1),899284,a=>{"use strict";var b=a.i(53112),c=a.i(706210);let d=b.z.object({url:b.z.url(),headers:b.z.record(b.z.string(),b.z.string()).optional(),oauthClient:b.z.object({clientId:b.z.string().min(1),clientSecret:b.z.string().optional()}).optional()}),e=b.z.object({command:b.z.string().min(1),args:b.z.array(b.z.string()).optional(),env:b.z.record(b.z.string(),b.z.string()).optional()}),f=b.z.union([d,e]),g=b.z.object({name:b.z.string(),description:b.z.string().optional(),inputSchema:b.z.looseObject({}).optional(),outputSchema:b.z.looseObject({}).optional()});b.z.object({clientInformation:b.z.looseObject({}).optional(),tokens:b.z.looseObject({}).optional(),authorizationServer:b.z.looseObject({}).optional(),codeVerifier:b.z.string().optional(),state:b.z.string().optional()});let h=b.z.object({name:b.z.string().min(1).max(40),config:f,toolCount:b.z.number().int(),lastError:b.z.string().nullish()}),i=g.extend({id:b.z.number().int(),description:b.z.string().nullish()});h.omit({toolCount:!0}).extend({tools:i.array().default([]),toolsSyncedAt:c.DateLikeSchema});let j=b.z.object({name:b.z.string().min(1,"Name is required").max(40).regex(/^[a-zA-Z0-9_-]+$/,"Only letters, numbers, - and _ are allowed"),config:f});b.z.union([b.z.object({mcpServers:b.z.record(b.z.string(),f)}),b.z.record(b.z.string(),f)]),a.s(["MCPServerFormSchema",0,j,"isRemoteConfig",0,function(a){return"url"in a}])},986743,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(530385),f=a.i(351674),g=a.i(203469);a.i(569572);var h=a.i(184838),i=a.i(714428),j=a.i(8412),k=a.i(661210),l=b([h]);[h]=l.then?(await l)():l;let F=(0,j.createKeyedLock)(),G=()=>g.appEvents.emit({type:"memory"});function m(a){return h.database.select({id:i.memoryFactTable.id,noteId:i.memoryFactTable.noteId,text:i.memoryFactTable.text,alwaysLoad:i.memoryFactTable.alwaysLoad,source:i.memoryFactTable.source,createdAt:i.memoryFactTable.createdAt}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.isLatest,!0),(0,d.inArray)(i.memoryFactTable.noteId,a))).orderBy((0,e.asc)(i.memoryFactTable.id))}async function n(a,b,c={}){let[d]=await h.database.insert(i.memoryNoteTable).values({path:a,description:b,ownedByUser:c.ownedByUser??!1}).onConflictDoNothing({target:i.memoryNoteTable.path}).returning();return d&&G(),d??null}async function o(a){let[b]=await h.database.select().from(i.memoryNoteTable).where((0,d.eq)(i.memoryNoteTable.path,a.trim()));if(!b)return null;let c=await m([b.id]);return{...b,factCount:c.length,facts:c}}async function p(a,b){let[c]=await h.database.update(i.memoryNoteTable).set({...b,updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,a)).returning();return c&&G(),c??null}async function q(a){let b=await h.database.delete(i.memoryNoteTable).where((0,d.eq)(i.memoryNoteTable.id,a)).returning({id:i.memoryNoteTable.id});return b.length>0&&G(),b.length>0}async function r(a,b){let[c]=await h.database.insert(i.memoryFactTable).values({noteId:a,text:b,source:"user"}).returning();return await u(a),G(),c}async function s(a,b,c){let e,f=await (e=()=>h.database.transaction(async e=>{let f=await e.update(i.memoryFactTable).set({isLatest:!1}).where((0,d.and)((0,d.eq)(i.memoryFactTable.id,b),(0,d.eq)(i.memoryFactTable.noteId,a),(0,d.eq)(i.memoryFactTable.isLatest,!0))).returning({id:i.memoryFactTable.id});if(0===f.length)return null;let[g]=await e.insert(i.memoryFactTable).values({noteId:a,text:c,source:"user"}).returning();return await e.update(i.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,a)),g}),F("memory",e));return f&&G(),f}async function t(a,b){let c=await h.database.delete(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.id,b),(0,d.eq)(i.memoryFactTable.noteId,a))).returning({id:i.memoryFactTable.id});return c.length>0&&(await u(a),G()),c.length>0}function u(a){return h.database.update(i.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,a))}async function v(){for(let a of k.MEMORY_ALWAYS_LISTED){let b=k.MEMORY_PATHS.find(b=>b.path===a)?.of??a;await h.database.insert(i.memoryNoteTable).values({path:a,description:b}).onConflictDoUpdate({target:i.memoryNoteTable.path,set:{description:b}})}}async function w(a){let b=a.map(a=>a.trim()).filter(Boolean),c=[],e=[];if(!b.length)return{found:c,missing:e};let f={id:i.memoryNoteTable.id,path:i.memoryNoteTable.path,description:i.memoryNoteTable.description},g=await h.database.select(f).from(i.memoryNoteTable).where((0,d.inArray)(i.memoryNoteTable.path,b)),j=new Map(g.map(a=>[a.path.toLowerCase(),a]));if(b.some(a=>!j.has(a.toLowerCase()))){let a=await h.database.select({...f,aliases:i.memoryNoteTable.aliases}).from(i.memoryNoteTable),b=(a,b)=>{let c=a.trim().toLowerCase();c&&!j.has(c)&&j.set(c,b)};for(let c of a)b(c.path,c);for(let c of a)for(let a of(b(c.path.slice(c.path.indexOf("/")+1),c),c.aliases??[]))b(a,c)}let k=new Set;for(let a of b){let b=j.get(a.toLowerCase());if(!b){e.push(a);continue}k.has(b.id)||(k.add(b.id),c.push(b))}return{found:c,missing:e}}async function x(a){let{found:b}=await w([a]);return b[0]?.path??null}async function y(a,b={}){let{found:c,missing:e}=await w(a);if(!c.length)return{notes:[],missing:e};let g=c.map(a=>a.id),j=await m(g);return!1!==b.touch&&await h.database.update(i.memoryNoteTable).set({hits:f.sql`${i.memoryNoteTable.hits} + 1`,lastReadAt:new Date}).where((0,d.inArray)(i.memoryNoteTable.id,g)),{notes:c.map(a=>({path:a.path,description:a.description,facts:j.filter(b=>b.noteId===a.id).map(a=>({id:a.id,text:a.text}))})),missing:e}}(0,d.inArray)(i.memoryNoteTable.path,k.MEMORY_ALWAYS_LISTED);let H=a=>a.toLowerCase().replace(/[\s.,!?…·'"`]/g,"");async function z(a,b){let c,e=[],g=[],j=[];await (c=()=>h.database.transaction(async c=>{let[h]=await c.select({count:f.sql`count(*)`}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.alwaysLoad,!0),(0,d.eq)(i.memoryFactTable.isLatest,!0))),l=k.ALWAYS_LOADED_MAX-Number(h?.count??0),m=(a,b)=>!!a&&(l>0?(l-=1,!0):(j.push(b),!1));for(let f of a){let a,h=f.path.trim();if(!h)continue;g.push(h);let j=f.description?.trim(),k=f.aliases?.map(a=>a.trim()).filter(Boolean),n=(f.facts??[]).map(a=>({...a,text:a.text.trim()})).filter(a=>a.text),[o]=await c.select({id:i.memoryNoteTable.id}).from(i.memoryNoteTable).where((0,d.eq)(i.memoryNoteTable.path,h));if(o)a=o.id,(j||k)&&await c.update(i.memoryNoteTable).set({...j?{description:j}:{},...k?{aliases:k}:{},updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,a));else{let[b]=await c.insert(i.memoryNoteTable).values({path:h,description:j??n[0]?.text.slice(0,80)??h,...k?{aliases:k}:{}}).returning({id:i.memoryNoteTable.id});a=b.id,j||e.push(h)}if(!n.length)continue;let p=await c.select({id:i.memoryFactTable.id,text:i.memoryFactTable.text,alwaysLoad:i.memoryFactTable.alwaysLoad}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.noteId,a),(0,d.eq)(i.memoryFactTable.isLatest,!0))),q=new Map(p.map(a=>[H(a.text),a])),r=async(a,b,e)=>{if(b===a.alwaysLoad)return;let f=b?m(!0,e):(l+=1,!1);f!==a.alwaysLoad&&(await c.update(i.memoryFactTable).set({alwaysLoad:f}).where((0,d.eq)(i.memoryFactTable.id,a.id)),a.alwaysLoad=f)};for(let e of n){if(null!=e.replaces){let[f]=await c.select({id:i.memoryFactTable.id,text:i.memoryFactTable.text,alwaysLoad:i.memoryFactTable.alwaysLoad}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.id,e.replaces),(0,d.eq)(i.memoryFactTable.noteId,a),(0,d.eq)(i.memoryFactTable.isLatest,!0)));if(f){if(H(f.text)===H(e.text)){await r(f,e.alwaysLoad??f.alwaysLoad,e.text),q.set(H(f.text),f);continue}await c.update(i.memoryFactTable).set({isLatest:!1}).where((0,d.eq)(i.memoryFactTable.id,f.id)),q.delete(H(f.text)),f.alwaysLoad&&(l+=1);let[g]=await c.insert(i.memoryFactTable).values({noteId:a,text:e.text,source:b,alwaysLoad:m(e.alwaysLoad??f.alwaysLoad,e.text)}).returning({id:i.memoryFactTable.id,alwaysLoad:i.memoryFactTable.alwaysLoad});q.set(H(e.text),{...g,text:e.text});continue}}let f=q.get(H(e.text));if(f){null!=e.alwaysLoad&&await r(f,e.alwaysLoad,e.text);continue}let[g]=await c.insert(i.memoryFactTable).values({noteId:a,text:e.text,source:b,alwaysLoad:m(!0===e.alwaysLoad,e.text)}).returning({id:i.memoryFactTable.id,alwaysLoad:i.memoryFactTable.alwaysLoad});q.set(H(e.text),{...g,text:e.text})}await c.update(i.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,a))}}),F("memory",c));let{notes:l}=await y(g,{touch:!1});return G(),{notes:l,unnamed:e,notLoaded:j}}async function A(a,b,c){let e,g=await (e=()=>h.database.transaction(async e=>{if(c){let[a]=await e.select({count:f.sql`count(*)`}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.alwaysLoad,!0),(0,d.eq)(i.memoryFactTable.isLatest,!0)));if(Number(a?.count??0)>=k.ALWAYS_LOADED_MAX)return"full"}let[g]=await e.update(i.memoryFactTable).set({alwaysLoad:c}).where((0,d.and)((0,d.eq)(i.memoryFactTable.id,b),(0,d.eq)(i.memoryFactTable.noteId,a),(0,d.eq)(i.memoryFactTable.isLatest,!0))).returning({id:i.memoryFactTable.id});return g?"ok":"missing"}),F("memory",e));return"ok"===g&&G(),g}async function B(){let[a,b]=await Promise.all([h.database.select({id:i.memoryNoteTable.id,path:i.memoryNoteTable.path,description:i.memoryNoteTable.description,aliases:i.memoryNoteTable.aliases,hits:i.memoryNoteTable.hits,lastReadAt:i.memoryNoteTable.lastReadAt,createdAt:i.memoryNoteTable.createdAt}).from(i.memoryNoteTable),h.database.select({noteId:i.memoryFactTable.noteId,count:f.sql`count(*)`}).from(i.memoryFactTable).where((0,d.eq)(i.memoryFactTable.isLatest,!0)).groupBy(i.memoryFactTable.noteId)]),c=new Map(b.map(a=>[a.noteId,a.count]));return a.filter(a=>(0,k.isAlwaysListed)(a.path)||(c.get(a.id)??0)>0).sort((a,b)=>Number((0,k.isAlwaysListed)(b.path))-Number((0,k.isAlwaysListed)(a.path))||(0,k.recallScore)(b)-(0,k.recallScore)(a)).map(a=>({path:a.path,description:a.description,aliases:a.aliases,factCount:c.get(a.id)??0,lastSeenAt:a.lastReadAt??a.createdAt}))}async function C(a){let b,c=await (b=()=>h.database.transaction(async b=>{let c=await b.delete(i.memoryFactTable).where((0,d.eq)(i.memoryFactTable.id,a)).returning({noteId:i.memoryFactTable.noteId});if(0===c.length)return null;let e=c[0].noteId,[g]=await b.select({path:i.memoryNoteTable.path,ownedByUser:i.memoryNoteTable.ownedByUser}).from(i.memoryNoteTable).where((0,d.eq)(i.memoryNoteTable.id,e)),[h]=await b.select({count:f.sql`count(*)`}).from(i.memoryFactTable).where((0,d.and)((0,d.eq)(i.memoryFactTable.noteId,e),(0,d.eq)(i.memoryFactTable.isLatest,!0)));return h?.count!==0||!g||g.ownedByUser||(0,k.isAlwaysListed)(g.path)?(await b.update(i.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(i.memoryNoteTable.id,e)),{path:g?.path??"",noteGone:!1}):(await b.delete(i.memoryNoteTable).where((0,d.eq)(i.memoryNoteTable.id,e)),{path:g.path,noteGone:!0})}),F("memory",b));return c&&G(),c}async function D(a){let[b]=await h.database.select({id:i.memoryFactTable.id,path:i.memoryNoteTable.path,text:i.memoryFactTable.text}).from(i.memoryFactTable).innerJoin(i.memoryNoteTable,(0,d.eq)(i.memoryFactTable.noteId,i.memoryNoteTable.id)).where((0,d.and)((0,d.eq)(i.memoryFactTable.id,a),(0,d.eq)(i.memoryFactTable.isLatest,!0)));return b??null}async function E(){let a=await h.database.delete(i.memoryNoteTable).returning({id:i.memoryNoteTable.id});return await v(),a.length>0&&G(),a.length}a.s(["addFact",0,r,"createNote",0,n,"deleteAllNotes",0,E,"deleteNote",0,q,"findFactById",0,D,"findNoteByPath",0,o,"forgetFact",0,t,"forgetFactById",0,C,"listAlwaysLoaded",0,function(){return h.database.select({id:i.memoryFactTable.id,path:i.memoryNoteTable.path,text:i.memoryFactTable.text}).from(i.memoryFactTable).innerJoin(i.memoryNoteTable,(0,d.eq)(i.memoryFactTable.noteId,i.memoryNoteTable.id)).where((0,d.and)((0,d.eq)(i.memoryFactTable.alwaysLoad,!0),(0,d.eq)(i.memoryFactTable.isLatest,!0))).orderBy((0,e.asc)(i.memoryNoteTable.path),(0,e.asc)(i.memoryFactTable.id)).limit(k.ALWAYS_LOADED_MAX)},"listFactsWrittenBetween",0,function(a,b){return h.database.select({id:i.memoryFactTable.id,path:i.memoryNoteTable.path,text:i.memoryFactTable.text}).from(i.memoryFactTable).innerJoin(i.memoryNoteTable,(0,d.eq)(i.memoryFactTable.noteId,i.memoryNoteTable.id)).where((0,d.and)((0,d.eq)(i.memoryFactTable.isLatest,!0),(0,d.between)(i.memoryFactTable.createdAt,a,b))).orderBy((0,e.asc)(i.memoryFactTable.id))},"listNoteIndex",0,B,"readNotes",0,y,"resolveNotePath",0,x,"reviseFact",0,s,"sameFact",0,H,"setFactAlwaysLoad",0,A,"updateNote",0,p,"writeNotes",0,z]),c()}catch(a){c(a)}},!1),661210,a=>{"use strict";var b=a.i(53112),c=a.i(706210);let d=b.z.enum(["user","call","bot","tidy"]),e=b.z.object({id:b.z.number(),text:b.z.string(),alwaysLoad:b.z.boolean(),source:d.nullish(),createdAt:c.DateLikeSchema});b.z.object({id:b.z.number(),path:b.z.string(),description:b.z.string(),aliases:b.z.string().array().nullish(),ownedByUser:b.z.boolean(),hits:b.z.number(),lastReadAt:c.DateLikeSchema.nullable(),createdAt:c.DateLikeSchema,updatedAt:c.DateLikeSchema,factCount:b.z.number(),facts:e.array()});let f=[{path:"profile",of:"The user themselves — who they are, what they do, where, how they live"},{path:"preferences",of:"How they like things done, and said"},{path:"people/",of:"Who someone is to them, and what matters about them"},{path:"projects/",of:"Something they are building or running"},{path:"plans/",of:"A trip, an appointment, a purchase, a deadline"},{path:"topics/",of:"Anything else worth its own note"},{path:"inbox",of:"Nowhere obvious to go"}],g=f.filter(a=>!a.path.endsWith("/")).map(a=>a.path),h=f.filter(a=>a.path.endsWith("/")).map(a=>a.path.slice(0,-1)),i=RegExp(`^(?:${g.join("|")}|(?:${h.join("|")})/.+)$`),j=["profile","preferences"],k=b.z.object({op:b.z.enum(["add","replace","forget","carry","uncarry"]),path:b.z.string(),text:b.z.string()});b.z.object({id:b.z.string(),status:b.z.enum(["running","done","stopped","failed"]),provider:b.z.string(),model:b.z.string(),callIds:b.z.string().array(),messages:b.z.number(),changes:k.array(),error:b.z.string().nullable(),inputTokens:b.z.number(),outputTokens:b.z.number(),startedAt:c.DateLikeSchema,endedAt:c.DateLikeSchema.nullable()}),a.s(["ALWAYS_LOADED_MAX",0,14,"MANY_FACTS",0,100,"MEMORY_ALWAYS_LISTED",0,j,"MEMORY_INBOX",0,"inbox","MEMORY_PATHS",0,f,"MEMORY_TIDY_KEYS",0,{on:"MEMORY_TIDY",model:"MEMORY_TIDY_MODEL"},"isAlwaysListed",0,a=>j.includes(a),"isMemoryPath",0,a=>i.test(a),"isTidyOn",0,a=>a?.trim()==="on","recallScore",0,function(a){let b=(0,c.toDate)(a.lastReadAt??a.createdAt),d=Math.max(0,(Date.now()-b.getTime())/864e5);return(a.hits+1)/(1+d)},"tidyTally",0,function(a){let b=b=>a.filter(a=>a.op===b).length,c=[[b("add"),"added"],[b("replace"),"revised"],[b("forget"),"dropped"],[b("carry"),"carried"],[b("uncarry"),"uncarried"]].filter(([a])=>a>0).map(([a,b])=>`${a} ${b}`);return c.length?c.join(", "):"nothing to change"}])},138100,a=>{"use strict";var b=a.i(750227),c=a.i(569572),d=a.i(176668),e=a.i(182248),f=a.i(762805);let g=[(0,b.join)(c.APP_DIR,c.PATHS.skills.default),(0,b.join)(c.DATA_DIR,c.PATHS.skills.custom)];async function h(a,b){let c=[],g=new Set;for(let h of b){let b;try{b=await a.readdir(h,{withFileTypes:!0})}catch{continue}for(let i of b){let b,j;if(!i.isDirectory())continue;let k=`${h}/${i.name}`,l=`${k}/SKILL.md`;try{b=await a.readFile(l,"utf-8")}catch{continue}try{j=(0,f.parseFrontmatter)(b)}catch(a){d.logger.warn(`skill ${k}: SKILL.md front matter did not load — ${(0,e.errorToString)(a)}`);continue}!g.has(j.name)&&(g.add(j.name),j.disabled||c.push({name:j.name,description:j.description,path:k}))}}return c}a.s(["loadSkills",0,a=>h(a,g)])},762805,951941,a=>{"use strict";var b=a.i(912714),c=a.i(750227),d=a.i(622650),e=a.i(569572),f=a.i(53112);let g=f.z.enum(["custom","default"]),h=f.z.string().trim().min(1,"Skill name is required").max(64,"Skill name is too long").regex(/^[a-z0-9][a-z0-9_-]*$/i,"Use letters, numbers, dashes and underscores only"),i=f.z.object({name:h,description:f.z.string().trim().min(1,"Description is required"),disabled:f.z.boolean().optional()}),j=i.extend({content:f.z.string().trim().min(1,"Content is required")}),k=f.z.object({fileName:f.z.string().trim().min(1),base64:f.z.string().min(1)});a.s(["SkillDraftSchema",0,j,"SkillFrontmatterSchema",0,i,"SkillNameSchema",0,h,"SkillSourceSchema",0,g,"SkillUploadSchema",0,k],951941);var l=a.i(293480);let m={default:(0,c.resolve)(e.APP_DIR,e.PATHS.skills.default),custom:(0,c.resolve)(e.DATA_DIR,e.PATHS.skills.custom)};function n(a,b){let d=m[a],e=(0,c.resolve)(d,b),f=(0,c.relative)(d,e);return(!f||f.startsWith("..")||f.includes(c.sep)||"."===f)&&(0,l.publicError)("Skill not found"),e}function o(a){let b=a.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?/);if(!b)return{head:null,body:a.trim(),rest:a,fence:""};let c=a.slice(b[0].length);return{head:b[1]??null,body:c.trim(),rest:c,fence:b[0]}}function p(a){let b,{head:c}=o(a);c||(0,l.publicError)("SKILL.md needs a YAML block with name and description");try{b=(0,d.parse)(c)}catch{(0,l.publicError)("SKILL.md frontmatter is not valid YAML")}let e=i.safeParse(b);return e.success||(0,l.publicError)(`SKILL.md frontmatter: ${e.error.issues[0]?.message??"invalid"}`),e.data}let q=/^disabled[ \t]*:[^\n]*(\r?\n|$)/m;async function r(a,e,f){let g,h,i=(0,c.join)(n(a,e),"SKILL.md");try{g=await (0,b.readFile)(i,"utf-8")}catch{(0,l.publicError)("Skill not found")}let{head:j,rest:k,fence:m}=o(g);j||(0,l.publicError)("This SKILL.md has no frontmatter to write to");try{h=(0,d.parse)(j)}catch{(0,l.publicError)("SKILL.md frontmatter is not valid YAML")}(!h||"object"!=typeof h||Array.isArray(h))&&(0,l.publicError)("SKILL.md frontmatter is not a YAML mapping");let p=m.includes("\r\n")?"\r\n":"\n",r=f?q.test(j)?j.replace(q,"disabled: true$1"):`${j.replace(/\s+$/,"")}${p}disabled: true`:j.replace(q,"").replace(/\s+$/,"");await (0,b.writeFile)(i,`---${p}${r}${p}---${p}${k}`)}async function s(a,d){try{let e=await (0,b.readFile)((0,c.join)(m[a],d,"SKILL.md"),"utf-8");return{...p(e),source:a,dir:d}}catch{return null}}async function t(a,d){let e=n("custom",a),f=async a=>(0,b.stat)(a).then(()=>!0,()=>!1);await f(e)&&(0,l.publicError)(`A skill named "${a}" already exists`),await f(n("default",a))&&(0,l.publicError)(`"${a}" is a built-in skill — pick another name`),await (0,b.mkdir)(e,{recursive:!0});try{for(let[a,f]of d){let d=function(a,b){let d=(0,c.resolve)(a,b);return((0,c.relative)(a,d).startsWith("..")||(0,c.resolve)(d)!==d)&&(0,l.publicError)("File not found"),d}(e,a);await (0,b.mkdir)((0,c.resolve)(d,".."),{recursive:!0}),await (0,b.writeFile)(d,f)}}catch(a){throw await (0,b.rm)(e,{recursive:!0,force:!0}),a}let g=await s("custom",a);return g||(await (0,b.rm)(e,{recursive:!0,force:!0}),(0,l.publicError)("SKILL.md could not be read back")),g}async function u(a){let c=n("custom",a);await (0,b.stat)(c).then(()=>!0,()=>!1)||(0,l.publicError)("Skill not found"),await (0,b.rm)(c,{recursive:!0,force:!0})}a.s(["deleteCustomSkill",0,u,"parseFrontmatter",0,p,"renderSkillMarkdown",0,function(a,b){return`---
|
|
141
|
+
Everything it had done is still here — answer to pick it back up.`}async function G(a,b){if(0!==d.appEventStream.watchers&&await (0,i.isAnyCallLive)())return;let c="waiting"===b.status?`${a} — needs you`:a;(0,l.desktopNotify)(c,b.outcome)}a.s(["answerTask",0,u,"cancelTask",0,v,"removeFinishedTasks",0,x,"removeTask",0,w,"startTask",0,t]),c()}catch(a){c(a)}},!1),317844,a=>a.a(async(b,c)=>{try{var d,e=a.i(106450),f=a.i(64203),g=a.i(569572),h=a.i(176668),i=a.i(182248),j=a.i(947950),k=a.i(899284),l=b([j]);[j]=l.then?(await l)():l;class m extends Error{serverName;authorizationUrl;constructor(a,b){super(`MCP server "${a}" requires authorization`),this.serverName=a,this.authorizationUrl=b,this.name="McpAuthRequiredError"}}class n{store;serverName;oauth;callbackUrl;clientName;staticClient;lastAuthorizationUrl;constructor(a,b,c,d,e,f){this.store=a,this.serverName=b,this.oauth=c,this.callbackUrl=d,this.clientName=e,this.staticClient=f}get redirectUrl(){return this.callbackUrl}get clientMetadata(){return{client_name:this.clientName,redirect_uris:[this.callbackUrl],grant_types:["authorization_code","refresh_token"],response_types:["code"],token_endpoint_auth_method:"client_secret_post"}}async persist(a){this.oauth={...this.oauth,...a},await this.store.saveOAuth(this.serverName,this.oauth)}clientInformation(){return this.staticClient??this.oauth.clientInformation}async saveClientInformation(a){await this.persist({clientInformation:a})}tokens(){return this.oauth.tokens}async saveTokens(a){await this.persist({tokens:a})}authorizationServerInformation(){return this.oauth.authorizationServer}async saveAuthorizationServerInformation(a){await this.persist({authorizationServer:a})}codeVerifier(){if(!this.oauth.codeVerifier)throw Error("No code verifier saved");return this.oauth.codeVerifier}async saveCodeVerifier(a){await this.persist({codeVerifier:a})}state(){return crypto.randomUUID()}async saveState(a){await this.persist({state:a})}storedState(){return this.oauth.state}redirectToAuthorization(a){this.lastAuthorizationUrl=a}async invalidateCredentials(a){let b={...this.oauth};("all"===a||"client"===a)&&(b.clientInformation=void 0),("all"===a||"tokens"===a)&&(b.tokens=void 0),("all"===a||"verifier"===a)&&(b.codeVerifier=void 0),this.oauth=b,await this.store.saveOAuth(this.serverName,b)}}let o=globalThis;o.__thursdayMcpManager&&o.__thursdayMcpManager.dispose(),d={callbackUrl:new URL("/api/mcp/oauth/callback",g.APP_URL).href,clientName:g.APP_NAME},o.__thursdayMcpManager=new class a{store;sessions;connecting;idleTtlMs;callbackUrl;clientName;constructor(a,b){this.store=a,this.sessions=new Map,this.connecting=new Map,this.callbackUrl=b.callbackUrl,this.idleTtlMs=b.idleTtlMs??18e5,this.clientName=b.clientName??g.APP_NAME}async connect(a){let b=this.connecting.get(a);if(b)return b;let c=this.doConnect(a).finally(()=>this.connecting.delete(a));return this.connecting.set(a,c),c}async callTool(a,b,c,d){let f=await this.ensureClient(a);try{let e=await f.callTool({name:b,arguments:c,options:d?{signal:d}:void 0});return this.touch(a),e}catch(b){if(b instanceof e.UnauthorizedError)throw await this.closeSession(a),new m(a);throw b}}async finishAuthorization(a){let b=a.get("state"),c=a.get("code");if(!b||!c)throw Error("OAuth callback is missing code or state");let d=await this.store.findByOAuthState(b);if(!d||!(0,k.isRemoteConfig)(d.config))throw Error("No server is waiting for this authorization");let f=this.providerFor(d),g=await (0,e.auth)(f,{serverUrl:d.config.url,authorizationCode:c,callbackState:b});if("AUTHORIZED"!==g)throw Error(`Token exchange ended in "${g}"`);return await f.invalidateCredentials("verifier"),await this.connect(d.name),d.name}async disconnect(a){await this.closeSession(a)}async dispose(){await Promise.all([...this.sessions.keys()].map(a=>this.closeSession(a)))}async doConnect(a){await this.closeSession(a);let b=await this.store.load(a);if(!b)throw Error(`Unknown MCP server "${a}"`);let c={};try{let d=await this.openClient(b,c),e=(await d.listTools()).tools.map(a=>({name:a.name,description:a.description,inputSchema:a.inputSchema,outputSchema:a.outputSchema}));return this.adopt(a,d),await this.store.saveConnectionResult(a,{toolInfo:e,lastError:null}),h.logger.info(`mcp "${a}" connected — ${e.length} tools`),{status:"connected",tools:e}}catch(l){var d,f;let g;if(l instanceof e.UnauthorizedError||l?.cause instanceof e.UnauthorizedError){let b=c.href;if(b)return await this.store.saveConnectionResult(a,{toolInfo:[],lastError:"Authorization required — finish sign-in in the opened tab"}),{status:"auth_required",authorizationUrl:b}}let j=(d=l,f=b,g=(0,i.errorToString)(d),/\b40[13]\b/.test(g)&&/OAuth|register/i.test(g)&&(0,k.isRemoteConfig)(f.config)&&!f.config.oauthClient?"This server does not allow automatic client registration. Register an OAuth app with the provider and add its client ID and secret.":g);throw await this.store.saveConnectionResult(a,{toolInfo:[],lastError:j}),h.logger.warn(`mcp "${a}" failed — ${j}`),Error(j,{cause:l})}}async openClient(a,b={}){if((0,k.isRemoteConfig)(a.config)){let c=this.providerFor(a);try{return await (0,e.createMCPClient)({name:this.clientName,transport:{type:"http",url:a.config.url,headers:a.config.headers,authProvider:c,redirect:"follow"}})}finally{b.href=c.lastAuthorizationUrl?.href}}return(0,e.createMCPClient)({name:this.clientName,transport:new f.Experimental_StdioMCPTransport({command:a.config.command,args:a.config.args,env:a.config.env})})}providerFor(a){let b=(0,k.isRemoteConfig)(a.config)?a.config.oauthClient:void 0;return new n(this.store,a.name,a.oauth??{},this.callbackUrl,this.clientName,b&&{client_id:b.clientId,client_secret:b.clientSecret})}async ensureClient(a){let b=this.sessions.get(a);if(b)return b.client;let c=await this.connect(a);if("auth_required"===c.status)throw new m(a,c.authorizationUrl);let d=this.sessions.get(a);if(!d)throw Error(`Session for "${a}" vanished mid-connect`);return d.client}adopt(a,b){this.sessions.set(a,{client:b,idleTimer:this.armIdleTimer(a)})}touch(a){let b=this.sessions.get(a);b&&(clearTimeout(b.idleTimer),b.idleTimer=this.armIdleTimer(a))}armIdleTimer(a){let b=setTimeout(()=>{this.closeSession(a)},this.idleTtlMs);return b.unref?.(),b}async closeSession(a){let b=this.sessions.get(a);b&&(this.sessions.delete(a),clearTimeout(b.idleTimer),await b.client.close().catch(()=>{}))}}({load:a=>(0,j.findServer)(a),saveOAuth:(a,b)=>(0,j.saveOAuthData)(a,b),saveConnectionResult:(a,b)=>null===b.lastError?(0,j.syncServerTools)(a,b.toolInfo):(0,j.saveConnectionError)(a,b.lastError),findByOAuthState:a=>(0,j.findServerByOAuthState)(a)},d);let p=o.__thursdayMcpManager;a.s(["McpAuthRequiredError",0,m,"mcpManager",0,p]),c()}catch(a){c(a)}},!1),947950,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(351674),f=a.i(203469),g=a.i(184838),h=a.i(714428),i=a.i(899284),j=b([g]);async function k(a){var b;let[c]=await g.database.select({name:h.mcpServerTable.name,config:h.mcpServerTable.config,lastError:h.mcpServerTable.lastError,toolsSyncedAt:h.mcpServerTable.toolsSyncedAt}).from(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a));return c?{...c,config:(b=c.config,(0,i.isRemoteConfig)(b)?{url:b.url}:{command:b.command,args:b.args}),tools:await l(a)}:null}async function l(a){return g.database.select({id:h.mcpToolTable.id,name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema,outputSchema:h.mcpToolTable.outputSchema}).from(h.mcpToolTable).where((0,d.eq)(h.mcpToolTable.serverName,a)).orderBy(h.mcpToolTable.name)}async function m(a){let[b]=await g.database.select().from(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a));return b??null}[g]=j.then?(await j)():j;let u=()=>f.appEvents.emit({type:"mcp"});async function n(a){let[b]=await g.database.insert(h.mcpServerTable).values({...a,lastError:null}).onConflictDoUpdate({target:h.mcpServerTable.name,set:{config:a.config,lastError:null}}).returning();return u(),b}async function o(a,b){await g.database.transaction(async c=>{b.length&&await c.insert(h.mcpToolTable).values(b.map(b=>({...b,serverName:a}))).onConflictDoUpdate({target:[h.mcpToolTable.serverName,h.mcpToolTable.name],set:{description:p(h.mcpToolTable.description),inputSchema:p(h.mcpToolTable.inputSchema),outputSchema:p(h.mcpToolTable.outputSchema)}}),await c.delete(h.mcpToolTable).where(b.length?(0,d.and)((0,d.eq)(h.mcpToolTable.serverName,a),(0,d.notInArray)(h.mcpToolTable.name,b.map(a=>a.name))):(0,d.eq)(h.mcpToolTable.serverName,a)),await c.update(h.mcpServerTable).set({lastError:null,toolsSyncedAt:new Date}).where((0,d.eq)(h.mcpServerTable.name,a))}),u()}function p(a){return e.sql.raw(`excluded."${a.name}"`)}async function q(a,b){await g.database.update(h.mcpServerTable).set({lastError:b}).where((0,d.eq)(h.mcpServerTable.name,a)),u()}async function r(a,b){await g.database.update(h.mcpServerTable).set({oauth:b}).where((0,d.eq)(h.mcpServerTable.name,a)),u()}async function s(a){let[b]=await g.database.select().from(h.mcpServerTable).where(e.sql`json_extract(${h.mcpServerTable.oauth}, '$.state') = ${a}`);return b??null}async function t(a){let b=await g.database.delete(h.mcpServerTable).where((0,d.eq)(h.mcpServerTable.name,a)).returning();return b.length>0&&u(),b.length>0}a.s(["deleteServer",0,t,"findPinnedTools",0,function(a){return g.database.select({server:h.mcpToolTable.serverName,name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema}).from(h.botMcpToolTable).innerJoin(h.mcpToolTable,(0,d.eq)(h.botMcpToolTable.toolId,h.mcpToolTable.id)).where((0,d.eq)(h.botMcpToolTable.botName,a)).orderBy(h.mcpToolTable.serverName,h.mcpToolTable.name)},"findServer",0,m,"findServerByOAuthState",0,s,"findServerDetail",0,k,"findToolSchemas",0,function(a,b){return b.length?g.database.select({name:h.mcpToolTable.name,description:h.mcpToolTable.description,inputSchema:h.mcpToolTable.inputSchema}).from(h.mcpToolTable).where((0,d.and)((0,d.eq)(h.mcpToolTable.serverName,a),(0,d.inArray)(h.mcpToolTable.name,b))).orderBy(h.mcpToolTable.name):Promise.resolve([])},"listServerNames",0,function(){return g.database.select({name:h.mcpServerTable.name}).from(h.mcpServerTable).orderBy(h.mcpServerTable.name)},"listToolNames",0,function(a){let b=g.database.select({server:h.mcpToolTable.serverName,name:h.mcpToolTable.name}).from(h.mcpToolTable);return a?b.where((0,d.eq)(h.mcpToolTable.serverName,a)).orderBy(h.mcpToolTable.name):b.orderBy(h.mcpToolTable.serverName,h.mcpToolTable.name)},"saveConnectionError",0,q,"saveOAuthData",0,r,"syncServerTools",0,o,"upsertServer",0,n]),c()}catch(a){c(a)}},!1),899284,a=>{"use strict";var b=a.i(53112),c=a.i(706210);let d=b.z.object({url:b.z.url(),headers:b.z.record(b.z.string(),b.z.string()).optional(),oauthClient:b.z.object({clientId:b.z.string().min(1),clientSecret:b.z.string().optional()}).optional()}),e=b.z.object({command:b.z.string().min(1),args:b.z.array(b.z.string()).optional(),env:b.z.record(b.z.string(),b.z.string()).optional()}),f=b.z.union([d,e]),g=b.z.object({name:b.z.string(),description:b.z.string().optional(),inputSchema:b.z.looseObject({}).optional(),outputSchema:b.z.looseObject({}).optional()});b.z.object({clientInformation:b.z.looseObject({}).optional(),tokens:b.z.looseObject({}).optional(),authorizationServer:b.z.looseObject({}).optional(),codeVerifier:b.z.string().optional(),state:b.z.string().optional()});let h=b.z.object({name:b.z.string().min(1).max(40),config:f,toolCount:b.z.number().int(),lastError:b.z.string().nullish()}),i=g.extend({id:b.z.number().int(),description:b.z.string().nullish()});h.omit({toolCount:!0}).extend({tools:i.array().default([]),toolsSyncedAt:c.DateLikeSchema});let j=b.z.object({name:b.z.string().min(1,"Name is required").max(40).regex(/^[a-zA-Z0-9_-]+$/,"Only letters, numbers, - and _ are allowed"),config:f});b.z.union([b.z.object({mcpServers:b.z.record(b.z.string(),f)}),b.z.record(b.z.string(),f)]),a.s(["MCPServerFormSchema",0,j,"isRemoteConfig",0,function(a){return"url"in a}])},986743,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(530385),f=a.i(351674),g=a.i(203469),h=a.i(569572),i=a.i(184838),j=a.i(714428),k=a.i(8412),l=a.i(661210),m=b([i]);[i]=m.then?(await m)():m;let E=(0,k.createKeyedLock)(),F=()=>g.appEvents.emit({type:"memory"});async function n(a,b,c={}){let[d]=await i.database.insert(j.memoryNoteTable).values({path:a,description:b,ownedByUser:c.ownedByUser??!1}).onConflictDoNothing({target:j.memoryNoteTable.path}).returning();return d&&F(),d??null}async function o(a,b){let[c]=await i.database.update(j.memoryNoteTable).set({...b,updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,a)).returning();return c&&F(),c??null}async function p(a){let b=await i.database.delete(j.memoryNoteTable).where((0,d.eq)(j.memoryNoteTable.id,a)).returning({id:j.memoryNoteTable.id});return b.length>0&&F(),b.length>0}async function q(a,b){let[c]=await i.database.insert(j.memoryFactTable).values({noteId:a,text:b,source:"user"}).returning();return await t(a),F(),c}async function r(a,b,c){let e,f=await (e=()=>i.database.transaction(async e=>{let f=await e.update(j.memoryFactTable).set({isLatest:!1}).where((0,d.and)((0,d.eq)(j.memoryFactTable.id,b),(0,d.eq)(j.memoryFactTable.noteId,a),(0,d.eq)(j.memoryFactTable.isLatest,!0))).returning({id:j.memoryFactTable.id});if(0===f.length)return null;let[g]=await e.insert(j.memoryFactTable).values({noteId:a,text:c,source:"user"}).returning();return await e.update(j.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,a)),g}),E("memory",e));return f&&F(),f}async function s(a,b){let c=await i.database.delete(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.id,b),(0,d.eq)(j.memoryFactTable.noteId,a))).returning({id:j.memoryFactTable.id});return c.length>0&&(await t(a),F()),c.length>0}function t(a){return i.database.update(j.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,a))}async function u(){for(let a of l.MEMORY_ALWAYS_LISTED){let b=l.MEMORY_PATHS.find(b=>b.path===a)?.of??a;await i.database.insert(j.memoryNoteTable).values({path:a,description:b}).onConflictDoUpdate({target:j.memoryNoteTable.path,set:{description:b}})}}async function v(a){let b=a.map(a=>a.trim()).filter(Boolean),c=[],e=[];if(!b.length)return{found:c,missing:e};let f={id:j.memoryNoteTable.id,path:j.memoryNoteTable.path,description:j.memoryNoteTable.description},g=await i.database.select(f).from(j.memoryNoteTable).where((0,d.inArray)(j.memoryNoteTable.path,b)),h=new Map(g.map(a=>[a.path.toLowerCase(),a]));if(b.some(a=>!h.has(a.toLowerCase()))){let a=await i.database.select({...f,aliases:j.memoryNoteTable.aliases}).from(j.memoryNoteTable),b=(a,b)=>{let c=a.trim().toLowerCase();c&&!h.has(c)&&h.set(c,b)};for(let c of a)b(c.path,c);for(let c of a)for(let a of(b(c.path.slice(c.path.indexOf("/")+1),c),c.aliases??[]))b(a,c)}let k=new Set;for(let a of b){let b=h.get(a.toLowerCase());if(!b){e.push(a);continue}k.has(b.id)||(k.add(b.id),c.push(b))}return{found:c,missing:e}}async function w(a){let{found:b}=await v([a]);return b[0]?.path??null}async function x(a,b={}){let{found:c,missing:g}=await v(a);if(!c.length)return{notes:[],missing:g};let h=c.map(a=>a.id),k=await i.database.select({id:j.memoryFactTable.id,noteId:j.memoryFactTable.noteId,text:j.memoryFactTable.text,alwaysLoad:j.memoryFactTable.alwaysLoad,source:j.memoryFactTable.source,createdAt:j.memoryFactTable.createdAt,saidAt:j.callTable.startedAt}).from(j.memoryFactTable).leftJoin(j.callTable,(0,d.eq)(j.memoryFactTable.callId,j.callTable.id)).where((0,d.and)((0,d.eq)(j.memoryFactTable.isLatest,!0),(0,d.inArray)(j.memoryFactTable.noteId,h))).orderBy((0,e.asc)(j.memoryFactTable.id));return!1!==b.touch&&await i.database.update(j.memoryNoteTable).set({hits:f.sql`${j.memoryNoteTable.hits} + 1`,lastReadAt:new Date}).where((0,d.inArray)(j.memoryNoteTable.id,h)),{notes:c.map(a=>({path:a.path,description:a.description,facts:k.filter(b=>b.noteId===a.id).map(a=>({id:a.id,text:a.text,...a.saidAt?{saidAt:a.saidAt}:{}}))})),missing:g}}(0,d.inArray)(j.memoryNoteTable.path,l.MEMORY_ALWAYS_LISTED);let G=a=>a.toLowerCase().replace(/[\s.,!?…·'"`]/g,"");async function y(a,b,c=null){let e,g=[],k=[],l=[];await (e=()=>i.database.transaction(async e=>{let[i]=await e.select({count:f.sql`count(*)`}).from(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.alwaysLoad,!0),(0,d.eq)(j.memoryFactTable.isLatest,!0))),m=h.MEMORY_LIMITS.carried-Number(i?.count??0),n=(a,b)=>!!a&&(m>0?(m-=1,!0):(l.push(b),!1));for(let f of a){let a,h=f.path.trim();if(!h)continue;k.push(h);let i=f.description?.trim(),l=f.aliases?.map(a=>a.trim()).filter(Boolean),o=(f.facts??[]).map(a=>({...a,text:a.text.trim()})).filter(a=>a.text),[p]=await e.select({id:j.memoryNoteTable.id}).from(j.memoryNoteTable).where((0,d.eq)(j.memoryNoteTable.path,h));if(p)a=p.id,(i||l)&&await e.update(j.memoryNoteTable).set({...i?{description:i}:{},...l?{aliases:l}:{},updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,a));else{let[b]=await e.insert(j.memoryNoteTable).values({path:h,description:i??o[0]?.text.slice(0,80)??h,...l?{aliases:l}:{}}).returning({id:j.memoryNoteTable.id});a=b.id,i||g.push(h)}if(!o.length)continue;let q=await e.select({id:j.memoryFactTable.id,text:j.memoryFactTable.text,alwaysLoad:j.memoryFactTable.alwaysLoad}).from(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.noteId,a),(0,d.eq)(j.memoryFactTable.isLatest,!0))),r=new Map(q.map(a=>[G(a.text),a])),s=async(a,b,c)=>{if(b===a.alwaysLoad)return;let f=b?n(!0,c):(m+=1,!1);f!==a.alwaysLoad&&(await e.update(j.memoryFactTable).set({alwaysLoad:f}).where((0,d.eq)(j.memoryFactTable.id,a.id)),a.alwaysLoad=f)};for(let f of o){if(null!=f.replaces){let[g]=await e.select({id:j.memoryFactTable.id,text:j.memoryFactTable.text,alwaysLoad:j.memoryFactTable.alwaysLoad}).from(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.id,f.replaces),(0,d.eq)(j.memoryFactTable.noteId,a),(0,d.eq)(j.memoryFactTable.isLatest,!0)));if(g){if(G(g.text)===G(f.text)){await s(g,f.alwaysLoad??g.alwaysLoad,f.text),r.set(G(g.text),g);continue}await e.update(j.memoryFactTable).set({isLatest:!1}).where((0,d.eq)(j.memoryFactTable.id,g.id)),r.delete(G(g.text)),g.alwaysLoad&&(m+=1);let[h]=await e.insert(j.memoryFactTable).values({noteId:a,text:f.text,source:b,callId:c,alwaysLoad:n(f.alwaysLoad??g.alwaysLoad,f.text)}).returning({id:j.memoryFactTable.id,alwaysLoad:j.memoryFactTable.alwaysLoad});r.set(G(f.text),{...h,text:f.text});continue}}let g=r.get(G(f.text));if(g){null!=f.alwaysLoad&&await s(g,f.alwaysLoad,f.text);continue}let[h]=await e.insert(j.memoryFactTable).values({noteId:a,text:f.text,source:b,callId:c,alwaysLoad:n(!0===f.alwaysLoad,f.text)}).returning({id:j.memoryFactTable.id,alwaysLoad:j.memoryFactTable.alwaysLoad});r.set(G(f.text),{...h,text:f.text})}await e.update(j.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,a))}}),E("memory",e));let{notes:m}=await x(k,{touch:!1});return F(),{notes:m,unnamed:g,notLoaded:l}}async function z(a,b,c){let e,g=await (e=()=>i.database.transaction(async e=>{if(c){let[a]=await e.select({count:f.sql`count(*)`}).from(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.alwaysLoad,!0),(0,d.eq)(j.memoryFactTable.isLatest,!0)));if(Number(a?.count??0)>=h.MEMORY_LIMITS.carried)return"full"}let[g]=await e.update(j.memoryFactTable).set({alwaysLoad:c}).where((0,d.and)((0,d.eq)(j.memoryFactTable.id,b),(0,d.eq)(j.memoryFactTable.noteId,a),(0,d.eq)(j.memoryFactTable.isLatest,!0))).returning({id:j.memoryFactTable.id});return g?"ok":"missing"}),E("memory",e));return"ok"===g&&F(),g}async function A(){let[a,b]=await Promise.all([i.database.select({id:j.memoryNoteTable.id,path:j.memoryNoteTable.path,description:j.memoryNoteTable.description,aliases:j.memoryNoteTable.aliases,hits:j.memoryNoteTable.hits,lastReadAt:j.memoryNoteTable.lastReadAt,createdAt:j.memoryNoteTable.createdAt}).from(j.memoryNoteTable),i.database.select({noteId:j.memoryFactTable.noteId,count:f.sql`count(*)`}).from(j.memoryFactTable).where((0,d.eq)(j.memoryFactTable.isLatest,!0)).groupBy(j.memoryFactTable.noteId)]),c=new Map(b.map(a=>[a.noteId,a.count]));return a.filter(a=>(0,l.isAlwaysListed)(a.path)||(c.get(a.id)??0)>0).sort((a,b)=>Number((0,l.isAlwaysListed)(b.path))-Number((0,l.isAlwaysListed)(a.path))||(0,l.recallScore)(b)-(0,l.recallScore)(a)).map(a=>({path:a.path,description:a.description,aliases:a.aliases,factCount:c.get(a.id)??0,lastSeenAt:a.lastReadAt??a.createdAt}))}async function B(a){let b,c=await (b=()=>i.database.transaction(async b=>{let c=await b.delete(j.memoryFactTable).where((0,d.eq)(j.memoryFactTable.id,a)).returning({noteId:j.memoryFactTable.noteId});if(0===c.length)return null;let e=c[0].noteId,[g]=await b.select({path:j.memoryNoteTable.path,ownedByUser:j.memoryNoteTable.ownedByUser}).from(j.memoryNoteTable).where((0,d.eq)(j.memoryNoteTable.id,e)),[h]=await b.select({count:f.sql`count(*)`}).from(j.memoryFactTable).where((0,d.and)((0,d.eq)(j.memoryFactTable.noteId,e),(0,d.eq)(j.memoryFactTable.isLatest,!0)));return h?.count!==0||!g||g.ownedByUser||(0,l.isAlwaysListed)(g.path)?(await b.update(j.memoryNoteTable).set({updatedAt:new Date}).where((0,d.eq)(j.memoryNoteTable.id,e)),{path:g?.path??"",noteGone:!1}):(await b.delete(j.memoryNoteTable).where((0,d.eq)(j.memoryNoteTable.id,e)),{path:g.path,noteGone:!0})}),E("memory",b));return c&&F(),c}async function C(a){let[b]=await i.database.select({source:j.memoryFactTable.source,callId:j.memoryFactTable.callId}).from(j.memoryFactTable).where((0,d.eq)(j.memoryFactTable.id,a));return b??null}async function D(){let a=await i.database.delete(j.memoryNoteTable).returning({id:j.memoryNoteTable.id});return await u(),a.length>0&&F(),a.length}a.s(["addFact",0,q,"createNote",0,n,"deleteAllNotes",0,D,"deleteNote",0,p,"findFactCall",0,C,"forgetFact",0,s,"forgetFactById",0,B,"listAlwaysLoaded",0,function(){return i.database.select({id:j.memoryFactTable.id,path:j.memoryNoteTable.path,text:j.memoryFactTable.text}).from(j.memoryFactTable).innerJoin(j.memoryNoteTable,(0,d.eq)(j.memoryFactTable.noteId,j.memoryNoteTable.id)).where((0,d.and)((0,d.eq)(j.memoryFactTable.alwaysLoad,!0),(0,d.eq)(j.memoryFactTable.isLatest,!0))).orderBy((0,e.asc)(j.memoryNoteTable.path),(0,e.asc)(j.memoryFactTable.id)).limit(h.MEMORY_LIMITS.carried)},"listNoteIndex",0,A,"readNotes",0,x,"resolveNotePath",0,w,"reviseFact",0,r,"setFactAlwaysLoad",0,z,"updateNote",0,o,"writeNotes",0,y]),c()}catch(a){c(a)}},!1),661210,a=>{"use strict";var b=a.i(53112),c=a.i(706210);let d=b.z.enum(["user","call","bot"]),e=b.z.object({id:b.z.number(),text:b.z.string(),alwaysLoad:b.z.boolean(),source:d.nullish(),createdAt:c.DateLikeSchema});b.z.object({id:b.z.number(),path:b.z.string(),description:b.z.string(),aliases:b.z.string().array().nullish(),ownedByUser:b.z.boolean(),hits:b.z.number(),lastReadAt:c.DateLikeSchema.nullable(),createdAt:c.DateLikeSchema,updatedAt:c.DateLikeSchema,factCount:b.z.number(),facts:e.array()});let f=[{path:"profile",of:"The user themselves — their name, age, what they do, where they live, and whatever else says who they are"},{path:"preferences",of:"How they want things done, and said"},{path:"people/",of:"Someone in their life, and what matters about them"},{path:"projects/",of:"Something with an end — a trip, a purchase, a deadline, a thing being built"},{path:"topics/",of:"Something ongoing that keeps coming back"},{path:"inbox",of:"Nowhere obvious yet"}],g="inbox",h=f.filter(a=>!a.path.endsWith("/")).map(a=>a.path),i=f.filter(a=>a.path.endsWith("/")).map(a=>a.path.slice(0,-1)),j=RegExp(`^(?:${h.join("|")}|(?:${i.join("|")})/.+)$`),k=["profile","preferences"],l=[...k,g];a.s(["APP_NAMED_NOTES",0,l,"MEMORY_ALWAYS_LISTED",0,k,"MEMORY_INBOX",0,g,"MEMORY_PATHS",0,f,"appNoteLine",0,a=>f.find(b=>b.path===a)?.of??null,"isAlwaysListed",0,a=>k.includes(a),"isAppNamed",0,a=>l.includes(a),"isMemoryPath",0,a=>j.test(a),"recallScore",0,function(a){let b=(0,c.toDate)(a.lastReadAt??a.createdAt),d=Math.max(0,(Date.now()-b.getTime())/864e5);return(a.hits+1)/(1+d)}])},138100,a=>{"use strict";var b=a.i(750227),c=a.i(569572),d=a.i(176668),e=a.i(182248),f=a.i(762805);let g=[(0,b.join)(c.APP_DIR,c.PATHS.skills.default),(0,b.join)(c.DATA_DIR,c.PATHS.skills.custom)];async function h(a,b){let c=[],g=new Set;for(let h of b){let b;try{b=await a.readdir(h,{withFileTypes:!0})}catch{continue}for(let i of b){let b,j;if(!i.isDirectory())continue;let k=`${h}/${i.name}`,l=`${k}/SKILL.md`;try{b=await a.readFile(l,"utf-8")}catch{continue}try{j=(0,f.parseFrontmatter)(b)}catch(a){d.logger.warn(`skill ${k}: SKILL.md front matter did not load — ${(0,e.errorToString)(a)}`);continue}!g.has(j.name)&&(g.add(j.name),j.disabled||c.push({name:j.name,description:j.description,path:k}))}}return c}a.s(["loadSkills",0,a=>h(a,g)])},762805,951941,a=>{"use strict";var b=a.i(912714),c=a.i(750227),d=a.i(622650),e=a.i(569572),f=a.i(53112);let g=f.z.enum(["custom","default"]),h=f.z.string().trim().min(1,"Skill name is required").max(64,"Skill name is too long").regex(/^[a-z0-9][a-z0-9_-]*$/i,"Use letters, numbers, dashes and underscores only"),i=f.z.object({name:h,description:f.z.string().trim().min(1,"Description is required"),disabled:f.z.boolean().optional()}),j=i.extend({content:f.z.string().trim().min(1,"Content is required")}),k=f.z.object({fileName:f.z.string().trim().min(1),base64:f.z.string().min(1)});a.s(["SkillDraftSchema",0,j,"SkillFrontmatterSchema",0,i,"SkillNameSchema",0,h,"SkillSourceSchema",0,g,"SkillUploadSchema",0,k],951941);var l=a.i(293480);let m={default:(0,c.resolve)(e.APP_DIR,e.PATHS.skills.default),custom:(0,c.resolve)(e.DATA_DIR,e.PATHS.skills.custom)};function n(a,b){let d=m[a],e=(0,c.resolve)(d,b),f=(0,c.relative)(d,e);return(!f||f.startsWith("..")||f.includes(c.sep)||"."===f)&&(0,l.publicError)("Skill not found"),e}function o(a){let b=a.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?/);if(!b)return{head:null,body:a.trim(),rest:a,fence:""};let c=a.slice(b[0].length);return{head:b[1]??null,body:c.trim(),rest:c,fence:b[0]}}function p(a){let b,{head:c}=o(a);c||(0,l.publicError)("SKILL.md needs a YAML block with name and description");try{b=(0,d.parse)(c)}catch{(0,l.publicError)("SKILL.md frontmatter is not valid YAML")}let e=i.safeParse(b);return e.success||(0,l.publicError)(`SKILL.md frontmatter: ${e.error.issues[0]?.message??"invalid"}`),e.data}let q=/^disabled[ \t]*:[^\n]*(\r?\n|$)/m;async function r(a,e,f){let g,h,i=(0,c.join)(n(a,e),"SKILL.md");try{g=await (0,b.readFile)(i,"utf-8")}catch{(0,l.publicError)("Skill not found")}let{head:j,rest:k,fence:m}=o(g);j||(0,l.publicError)("This SKILL.md has no frontmatter to write to");try{h=(0,d.parse)(j)}catch{(0,l.publicError)("SKILL.md frontmatter is not valid YAML")}(!h||"object"!=typeof h||Array.isArray(h))&&(0,l.publicError)("SKILL.md frontmatter is not a YAML mapping");let p=m.includes("\r\n")?"\r\n":"\n",r=f?q.test(j)?j.replace(q,"disabled: true$1"):`${j.replace(/\s+$/,"")}${p}disabled: true`:j.replace(q,"").replace(/\s+$/,"");await (0,b.writeFile)(i,`---${p}${r}${p}---${p}${k}`)}async function s(a,d){try{let e=await (0,b.readFile)((0,c.join)(m[a],d,"SKILL.md"),"utf-8");return{...p(e),source:a,dir:d}}catch{return null}}async function t(a,d){let e=n("custom",a),f=async a=>(0,b.stat)(a).then(()=>!0,()=>!1);await f(e)&&(0,l.publicError)(`A skill named "${a}" already exists`),await f(n("default",a))&&(0,l.publicError)(`"${a}" is a built-in skill — pick another name`),await (0,b.mkdir)(e,{recursive:!0});try{for(let[a,f]of d){let d=function(a,b){let d=(0,c.resolve)(a,b);return((0,c.relative)(a,d).startsWith("..")||(0,c.resolve)(d)!==d)&&(0,l.publicError)("File not found"),d}(e,a);await (0,b.mkdir)((0,c.resolve)(d,".."),{recursive:!0}),await (0,b.writeFile)(d,f)}}catch(a){throw await (0,b.rm)(e,{recursive:!0,force:!0}),a}let g=await s("custom",a);return g||(await (0,b.rm)(e,{recursive:!0,force:!0}),(0,l.publicError)("SKILL.md could not be read back")),g}async function u(a){let c=n("custom",a);await (0,b.stat)(c).then(()=>!0,()=>!1)||(0,l.publicError)("Skill not found"),await (0,b.rm)(c,{recursive:!0,force:!0})}a.s(["deleteCustomSkill",0,u,"parseFrontmatter",0,p,"renderSkillMarkdown",0,function(a,b){return`---
|
|
150
142
|
${(0,d.stringify)(a).trim()}
|
|
151
143
|
---
|
|
152
144
|
|
|
153
145
|
${b.trim()}
|
|
154
|
-
`},"setSkillDisabled",0,r,"splitFrontmatter",0,o,"writeCustomSkill",0,t],762805)},569549,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(530385),f=a.i(184838),
|
|
146
|
+
`},"setSkillDisabled",0,r,"splitFrontmatter",0,o,"writeCustomSkill",0,t],762805)},569549,a=>a.a(async(b,c)=>{try{var d=a.i(93321),e=a.i(530385),f=a.i(351674);a.i(569572);var g=a.i(184838),h=a.i(714428),i=a.i(84929),j=a.i(725466),k=a.i(3894),l=b([g,i,j]);async function m(){return(0,k.isSkillsOn)(await (0,j.readConfig)(k.THURSDAY_KEYS.skills))}async function n(a){await (0,j.writeConfig)(k.THURSDAY_KEYS.skills,a?"on":"off")}async function o(a){let[b]=await g.database.insert(h.callTable).values({id:crypto.randomUUID(),...a}).returning({id:h.callTable.id});return b.id}async function p(a){return(await g.database.update(h.callTable).set({endedAt:new Date}).where((0,d.and)((0,d.eq)(h.callTable.id,a),(0,d.isNull)(h.callTable.endedAt))).returning({id:h.callTable.id})).length>0}async function q(a,b){for(let c of b)await g.database.insert(h.callMessageTable).values({callId:a,...c}).onConflictDoUpdate({target:[h.callMessageTable.callId,h.callMessageTable.id],set:{text:c.text,role:c.role,tool:c.tool??null}})}async function r(a){let b=await g.database.select({callId:h.callMessageTable.callId,startedAt:h.callTable.startedAt,role:h.callMessageTable.role,tool:h.callMessageTable.tool,text:h.callMessageTable.text,seq:h.callMessageTable.seq}).from(h.callMessageTable).innerJoin(h.callTable,(0,d.eq)(h.callMessageTable.callId,h.callTable.id)).orderBy((0,e.desc)(h.callTable.startedAt),(0,e.desc)(h.callMessageTable.seq)).limit(a),c=new Map;for(let a of b){let b=c.get(a.callId)??{callId:a.callId,startedAt:a.startedAt,turns:[]};b.turns.push({role:a.role,tool:a.tool,text:a.text,seq:a.seq}),c.set(a.callId,b)}return[...c.values()].reverse().map(a=>({...a,turns:a.turns.reverse()}))}async function s(a,b){return(await g.database.select({role:h.callMessageTable.role,text:h.callMessageTable.text}).from(h.callMessageTable).where((0,d.and)((0,d.eq)(h.callMessageTable.callId,a),(0,d.inArray)(h.callMessageTable.role,["user","assistant"]))).orderBy((0,e.desc)(h.callMessageTable.seq)).limit(b)).reverse().map(a=>({role:a.role,text:a.text}))}async function t(a,b,c){let[i]=await g.database.select({startedAt:h.callTable.startedAt}).from(h.callTable).where((0,d.eq)(h.callTable.id,a));if(!i)return null;let[j]=await g.database.select({total:f.sql`count(*)`}).from(h.callMessageTable).where((0,d.eq)(h.callMessageTable.callId,a)),k=await g.database.select({role:h.callMessageTable.role,tool:h.callMessageTable.tool,text:h.callMessageTable.text}).from(h.callMessageTable).where((0,d.eq)(h.callMessageTable.callId,a)).orderBy((0,e.asc)(h.callMessageTable.seq)).limit(c).offset((b-1)*c);return{startedAt:i.startedAt,total:Number(j?.total??0),turns:k}}async function u(){return(await g.database.select({id:h.callTable.id}).from(h.callTable).where((0,d.isNull)(h.callTable.endedAt)).limit(1)).length>0}async function v(a){return(await g.database.delete(h.callTable).where((0,d.and)((0,d.eq)(h.callTable.id,a),(0,d.isNotNull)(h.callTable.endedAt))).returning({id:h.callTable.id})).length>0}async function w(){return(await g.database.delete(h.callTable).where((0,d.isNotNull)(h.callTable.endedAt)).returning({id:h.callTable.id})).length}[g,i,j]=l.then?(await l)():l,a.s(["deleteCall",0,v,"deleteEndedCalls",0,w,"endCall",0,p,"insertCall",0,o,"isAnyCallLive",0,u,"listCallTurns",0,s,"listRecentTurns",0,r,"readCallConversation",0,t,"readCallSkillsOn",0,m,"saveTurns",0,q,"writeCallSkillsOn",0,n]),c()}catch(a){c(a)}},!1),3894,a=>{"use strict";var b=a.i(723885),c=a.i(569572),d=a.i(689656),e=a.i(446957),f=a.i(60756);let g=b.default.object({systemPrompt:b.default.string().max(f.COMMON_VALIDATE.prompt.max).nullish(),model:d.speachModelRefSchema.nullish(),locale:b.default.string().max(35).nullish()});e.botIconSchema.extend({kind:b.default.enum(["mark","ascii"]).default("ascii"),charset:b.default.enum(["ascii","emoji","emojiOnly"]).default(c.ASCII_FACE.charset),fontSize:b.default.number().min(c.ASCII_FACE.fontSize.min).max(c.ASCII_FACE.fontSize.max).default(c.ASCII_FACE.fontSize.default),density:b.default.number().min(c.ASCII_FACE.density.min).max(c.ASCII_FACE.density.max).default(c.ASCII_FACE.density.default)}).parse({});b.default.object({enabled:b.default.boolean(),phrase:b.default.string().trim().min(3).max(32)}),b.default.object({enabled:b.default.boolean(),combo:b.default.string().trim().min(1).max(64)}),b.default.enum(["off","waiting","any"]),b.default.enum(["center","sides"]);let h=b.default.object({id:b.default.string().min(1),role:b.default.enum(["user","assistant","tool"]),tool:b.default.string().nullish(),text:b.default.string(),seq:b.default.number().int().min(0)});a.s(["CallTurnSchema",0,h,"THURSDAY_KEYS",0,{skills:"THURSDAY_SKILLS"},"ThursdaySettingsSchema",0,g,"isSkillsOn",0,a=>a?.trim()==="on"],3894)},956802,a=>{"use strict";var b=a.i(874533),c=a.i(569572);let d=`on run argv
|
|
155
147
|
display notification (item 2 of argv) with title (item 1 of argv)
|
|
156
148
|
end run`,e=`
|
|
157
149
|
$ErrorActionPreference = 'Stop'
|
|
@@ -162,10 +154,19 @@ $text = $xml.GetElementsByTagName('text')
|
|
|
162
154
|
[void]$text.Item(1).AppendChild($xml.CreateTextNode($env:NOTIFY_BODY))
|
|
163
155
|
$id = '{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\\WindowsPowerShell\\v1.0\\powershell.exe'
|
|
164
156
|
[Windows.UI.Notifications.ToastNotificationManager]::CreateToastNotifier($id).Show([Windows.UI.Notifications.ToastNotification]::new($xml))
|
|
165
|
-
`,f={darwin:(a,b)=>["osascript",["-e",d,"--",a,b]],win32:()=>["powershell.exe",["-NoProfile","-NonInteractive","-Command",e]],linux:(a,b)=>["notify-send",["--app-name",c.APP_NAME,"--",a,b]]};a.s(["desktopNotify",0,function(a,c){let d=a.slice(0,80),e=c.slice(0,200),g=f[process.platform]?.(d,e);if(!g)return;let[h,i]=g;(0,b.execFile)(h,i,{env:{...process.env,NOTIFY_TITLE:d,NOTIFY_BODY:e},timeout:1e4,windowsHide:!0},()=>{})}])},8412,a=>{"use strict";var b=a.i(182248);a.s(["createKeyedLock",0,function(){let a=new Map,c=new Map;return function(d,e){let f=a.get(d);f||(f=(0,b.PromiseChain)(),a.set(d,f)),c.set(d,(c.get(d)??0)+1);let g=()=>{let b=(c.get(d)??1)-1;b>0?c.set(d,b):(c.delete(d),a.delete(d))};return f(e).then(a=>(g(),a),a=>{throw g(),a})}}])},987674,a=>{"use strict";let b=/[\u1100-\u11ff\u3040-\u30ff\u3130-\u318f\u4e00-\u9fff\uac00-\ud7af]/;function c(a){let c=0,d=0;for(let e of a)b.test(e)?c+=1:d+=1;return Math.ceil(c/1.3+d/4)}a.s(["estimateTokens",0,c,"sectionTokens",0,function(a){return a.split(/\n(?=## )/).map(a=>({name:a.startsWith("## ")?a.slice(3,a.indexOf("\n")):"identity",tokens:c(a)})).sort((a,b)=>b.tokens-a.tokens)}])},938537,a=>{"use strict";var b=a.i(652685),c=a.i(527990),d=a.i(53112),e=a.i(912735),f=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("error"),error:d.z.object({type:d.z.string(),message:d.z.string()})}))),g=(0,c.createJsonErrorResponseHandler)({errorSchema:f,errorToMessage:a=>a.error.message}),h=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({id:d.z.string(),type:d.z.literal("file"),filename:d.z.string(),mime_type:d.z.string(),size_bytes:d.z.number(),created_at:d.z.string(),downloadable:d.z.boolean().nullish()}))),i=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async uploadFile({data:a,mediaType:b,filename:d,abortSignal:e,headers:f}){var i,j;let k=new Blob([(0,c.convertInlineFileDataToUint8Array)(a)],{type:b}),l=new FormData;null!=d?l.append("file",k,d):l.append("file",k);let{value:m}=await (0,c.postFormDataToApi)({url:`${this.config.baseURL}/files`,headers:(0,c.combineHeaders)(this.config.headers(),{"anthropic-beta":"files-api-2025-04-14"},f),formData:l,failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(h),abortSignal:e,fetch:this.config.fetch});return{warnings:[],providerReference:{anthropic:m.id},mediaType:null!=(i=m.mime_type)?i:b,filename:null!=(j=m.filename)?j:d,providerMetadata:{anthropic:{filename:m.filename,mimeType:m.mime_type,sizeBytes:m.size_bytes,createdAt:m.created_at,...null!=m.downloadable?{downloadable:m.downloadable}:{}}}}}},j=d.z.object({type:d.z.string(),category:d.z.string().nullish(),explanation:d.z.string().nullish(),recommended_model:d.z.string().nullish()}),k=d.z.union([d.z.object({type:d.z.literal("code_execution_20250825"),tool_id:d.z.string()}),d.z.object({type:d.z.literal("code_execution_20260120"),tool_id:d.z.string()}),d.z.object({type:d.z.literal("direct")})]),l=d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("web_search_result_location"),cited_text:d.z.string(),url:d.z.string(),title:d.z.string().nullable(),encrypted_index:d.z.string()}),d.z.object({type:d.z.literal("page_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_page_number:d.z.number(),end_page_number:d.z.number(),file_id:d.z.string().nullish()}),d.z.object({type:d.z.literal("char_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_char_index:d.z.number(),end_char_index:d.z.number(),file_id:d.z.string().nullish()}),d.z.object({type:d.z.literal("content_block_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_block_index:d.z.number(),end_block_index:d.z.number(),file_id:d.z.string().nullable()}),d.z.object({type:d.z.literal("search_result_location"),cited_text:d.z.string(),search_result_index:d.z.number(),source:d.z.string(),title:d.z.string().nullable(),start_block_index:d.z.number(),end_block_index:d.z.number()})]),m=d.z.union([d.z.string(),d.z.array(d.z.union([d.z.string(),d.z.object({type:d.z.literal("text"),text:d.z.string(),citations:d.z.array(d.z.json()).nullable().optional()})]))]),n=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("message"),id:d.z.string().nullish(),model:d.z.string().nullish(),content:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text"),text:d.z.string(),citations:d.z.array(l).nullable().optional()}),d.z.object({type:d.z.literal("thinking"),thinking:d.z.string(),signature:d.z.string()}),d.z.object({type:d.z.literal("redacted_thinking"),data:d.z.string()}),d.z.object({type:d.z.literal("compaction"),content:d.z.string()}),d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),caller:k.optional()}),d.z.object({type:d.z.literal("server_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).nullish(),caller:k.optional()}),d.z.object({type:d.z.literal("mcp_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),server_name:d.z.string()}),d.z.object({type:d.z.literal("mcp_tool_result"),tool_use_id:d.z.string(),is_error:d.z.boolean(),content:m}),d.z.object({type:d.z.literal("web_fetch_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),retrieved_at:d.z.string().nullable(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),media_type:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),media_type:d.z.literal("text/plain"),data:d.z.string()})])})}),d.z.object({type:d.z.literal("web_fetch_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("web_search_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.array(d.z.object({type:d.z.literal("web_search_result"),url:d.z.string(),title:d.z.string().nullable(),encrypted_content:d.z.string(),page_age:d.z.string().nullish()})),d.z.object({type:d.z.literal("web_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("bash_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})])}),d.z.object({type:d.z.literal("tool_search_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("tool_search_tool_search_result"),tool_references:d.z.array(d.z.object({type:d.z.literal("tool_reference"),tool_name:d.z.string()}))}),d.z.object({type:d.z.literal("tool_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("container_upload"),file_id:d.z.string()}),d.z.object({type:d.z.literal("advisor_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encrypted_content:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("fallback")})])),stop_reason:d.z.string().nullish(),stop_sequence:d.z.string().nullish(),stop_details:j.nullish(),usage:d.z.looseObject({input_tokens:d.z.number(),output_tokens:d.z.number(),output_tokens_details:d.z.object({thinking_tokens:d.z.number().nullish()}).nullish(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish(),iterations:d.z.array(d.z.object({type:d.z.union([d.z.literal("compaction"),d.z.literal("message"),d.z.literal("advisor_message"),d.z.literal("fallback_message")]),model:d.z.string().nullish(),input_tokens:d.z.number(),output_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()})).nullish()}),container:d.z.object({expires_at:d.z.string(),id:d.z.string(),skills:d.z.array(d.z.object({type:d.z.union([d.z.literal("anthropic"),d.z.literal("custom")]),skill_id:d.z.string(),version:d.z.string()})).nullish()}).nullish(),context_management:d.z.object({applied_edits:d.z.array(d.z.union([d.z.object({type:d.z.literal("clear_tool_uses_20250919"),cleared_tool_uses:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),cleared_thinking_turns:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("compact_20260112")})]))}).nullish()}))),o=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("message_start"),message:d.z.object({id:d.z.string().nullish(),model:d.z.string().nullish(),role:d.z.string().nullish(),usage:d.z.looseObject({input_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()}),content:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),caller:k.optional()})])).nullish(),stop_reason:d.z.string().nullish(),container:d.z.object({expires_at:d.z.string(),id:d.z.string()}).nullish()})}),d.z.object({type:d.z.literal("content_block_start"),index:d.z.number(),content_block:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text"),text:d.z.string()}),d.z.object({type:d.z.literal("thinking"),thinking:d.z.string()}),d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).optional(),caller:k.optional()}),d.z.object({type:d.z.literal("redacted_thinking"),data:d.z.string()}),d.z.object({type:d.z.literal("compaction"),content:d.z.string().nullish()}),d.z.object({type:d.z.literal("server_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).nullish(),caller:k.optional()}),d.z.object({type:d.z.literal("mcp_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),server_name:d.z.string()}),d.z.object({type:d.z.literal("mcp_tool_result"),tool_use_id:d.z.string(),is_error:d.z.boolean(),content:m}),d.z.object({type:d.z.literal("web_fetch_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),retrieved_at:d.z.string().nullable(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),media_type:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),media_type:d.z.literal("text/plain"),data:d.z.string()})])})}),d.z.object({type:d.z.literal("web_fetch_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("web_search_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.array(d.z.object({type:d.z.literal("web_search_result"),url:d.z.string(),title:d.z.string().nullable(),encrypted_content:d.z.string(),page_age:d.z.string().nullish()})),d.z.object({type:d.z.literal("web_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("bash_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})])}),d.z.object({type:d.z.literal("tool_search_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("tool_search_tool_search_result"),tool_references:d.z.array(d.z.object({type:d.z.literal("tool_reference"),tool_name:d.z.string()}))}),d.z.object({type:d.z.literal("tool_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("advisor_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encrypted_content:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("fallback")})])}),d.z.object({type:d.z.literal("content_block_delta"),index:d.z.number(),delta:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("input_json_delta"),partial_json:d.z.string()}),d.z.object({type:d.z.literal("text_delta"),text:d.z.string()}),d.z.object({type:d.z.literal("thinking_delta"),thinking:d.z.string()}),d.z.object({type:d.z.literal("signature_delta"),signature:d.z.string()}),d.z.object({type:d.z.literal("compaction_delta"),content:d.z.string().nullish()}),d.z.object({type:d.z.literal("citations_delta"),citation:l})])}),d.z.object({type:d.z.literal("content_block_stop"),index:d.z.number()}),d.z.object({type:d.z.literal("error"),error:d.z.object({type:d.z.string(),message:d.z.string(),code:d.z.union([d.z.string(),d.z.number()]).nullish(),statusCode:d.z.number().nullish(),isRetryable:d.z.boolean().nullish(),data:d.z.unknown().nullish()})}),d.z.object({type:d.z.literal("message_delta"),delta:d.z.object({stop_reason:d.z.string().nullish(),stop_sequence:d.z.string().nullish(),stop_details:j.nullish(),container:d.z.object({expires_at:d.z.string(),id:d.z.string(),skills:d.z.array(d.z.object({type:d.z.union([d.z.literal("anthropic"),d.z.literal("custom")]),skill_id:d.z.string(),version:d.z.string()})).nullish()}).nullish()}),usage:d.z.looseObject({input_tokens:d.z.number().nullish(),output_tokens:d.z.number(),output_tokens_details:d.z.object({thinking_tokens:d.z.number().nullish()}).nullish(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish(),iterations:d.z.array(d.z.object({type:d.z.union([d.z.literal("compaction"),d.z.literal("message"),d.z.literal("advisor_message"),d.z.literal("fallback_message")]),model:d.z.string().nullish(),input_tokens:d.z.number(),output_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()})).nullish()}),context_management:d.z.object({applied_edits:d.z.array(d.z.union([d.z.object({type:d.z.literal("clear_tool_uses_20250919"),cleared_tool_uses:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),cleared_thinking_turns:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("compact_20260112")})]))}).nullish()}),d.z.object({type:d.z.literal("message_stop")}),d.z.object({type:d.z.literal("ping")})]))),p=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({signature:d.z.string().optional(),redactedData:d.z.string().optional()}))),q=d.z.object({containerUpload:d.z.boolean().optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),title:d.z.string().optional(),context:d.z.string().optional()}),r=d.z.object({clearAt:d.z.literal("next_user_message").optional(),effort:d.z.enum(["low","medium","high","xhigh","max"]).optional(),toolChanges:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("tool_addition"),toolName:d.z.string()}),d.z.object({type:d.z.literal("tool_removal"),toolName:d.z.string()})])).optional()}),s=d.z.object({sendReasoning:d.z.boolean().optional(),structuredOutputMode:d.z.enum(["outputFormat","jsonTool","auto"]).optional(),thinking:d.z.union([d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("adaptive"),display:d.z.enum(["omitted","summarized","updates"]).optional(),blockBinding:d.z.object({prefixMismatchBehavior:d.z.literal("drop_block")}).optional()}),d.z.object({type:d.z.literal("enabled"),budgetTokens:d.z.number().optional()}),d.z.object({type:d.z.literal("disabled")})]),d.z.object({type:d.z.never().optional(),blockBinding:d.z.object({prefixMismatchBehavior:d.z.literal("drop_block")})})]).optional(),disableParallelToolUse:d.z.boolean().optional(),cacheControl:d.z.object({type:d.z.literal("ephemeral"),ttl:d.z.union([d.z.literal("5m"),d.z.literal("1h")]).optional()}).optional(),metadata:d.z.object({userId:d.z.string().optional()}).optional(),mcpServers:d.z.array(d.z.object({type:d.z.literal("url"),name:d.z.string(),url:d.z.string(),authorizationToken:d.z.string().nullish(),toolConfiguration:d.z.object({enabled:d.z.boolean().nullish(),allowedTools:d.z.array(d.z.string()).nullish()}).nullish()})).optional(),container:d.z.object({id:d.z.string().optional(),skills:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("anthropic"),skillId:d.z.string(),version:d.z.string().optional()}),d.z.object({type:d.z.literal("custom"),providerReference:d.z.record(d.z.string(),d.z.string()),version:d.z.string().optional()})])).optional()}).optional(),toolStreaming:d.z.boolean().optional(),effort:d.z.enum(["low","medium","high","xhigh","max"]).optional(),taskBudget:d.z.object({type:d.z.literal("tokens"),total:d.z.number().int().min(2e4),remaining:d.z.number().int().min(0).optional()}).optional(),speed:d.z.enum(["fast","standard"]).optional(),serviceTier:d.z.enum(["auto","standard_only"]).optional(),inferenceGeo:d.z.enum(["us","global"]).optional(),fallbacks:d.z.union([d.z.literal("default"),d.z.array(d.z.object({model:d.z.string(),max_tokens:d.z.number().int().optional(),thinking:d.z.record(d.z.string(),d.z.unknown()).optional(),output_config:d.z.record(d.z.string(),d.z.unknown()).optional(),speed:d.z.enum(["fast","standard"]).optional()}))]).optional(),anthropicBeta:d.z.array(d.z.string()).optional(),contextManagement:d.z.object({edits:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("clear_tool_uses_20250919"),trigger:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}),d.z.object({type:d.z.literal("tool_uses"),value:d.z.number()})]).optional(),keep:d.z.object({type:d.z.literal("tool_uses"),value:d.z.number()}).optional(),clearAtLeast:d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}).optional(),clearToolInputs:d.z.boolean().optional(),excludeTools:d.z.array(d.z.string()).optional()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),keep:d.z.union([d.z.literal("all"),d.z.object({type:d.z.literal("thinking_turns"),value:d.z.number()})]).optional()}),d.z.object({type:d.z.literal("compact_20260112"),trigger:d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}).optional(),pauseAfterCompaction:d.z.boolean().optional(),instructions:d.z.string().optional()})]))}).optional()}),t=class{constructor(){this.breakpointCount=0,this.warnings=[]}getCacheControl(a,b){var c;let d,e=null!=(c=null==(d=null==a?void 0:a.anthropic)?void 0:d.cacheControl)?c:null==d?void 0:d.cache_control;if(e)return b.canCache?(this.breakpointCount++,this.breakpointCount>4)?void this.warnings.push({type:"unsupported",feature:"cacheControl breakpoint limit",details:`Maximum 4 cache breakpoints exceeded (found ${this.breakpointCount}). This breakpoint will be ignored.`}):e:void this.warnings.push({type:"unsupported",feature:"cache_control on non-cacheable context",details:`cache_control cannot be set on ${b.type}. It will be ignored.`})}getWarnings(){return this.warnings}},u=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({model:d.z.string(),maxUses:d.z.number().optional(),maxTokens:d.z.number().int().min(1024).optional(),caching:d.z.object({type:d.z.literal("ephemeral"),ttl:d.z.union([d.z.literal("5m"),d.z.literal("1h")])}).optional()}))),v=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stopReason:d.z.string().optional()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encryptedContent:d.z.string(),stopReason:d.z.string().optional()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),errorCode:d.z.string()})]))),w=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({}).strict())),x=(0,c.createProviderExecutedToolFactory)({id:"anthropic.advisor_20260301",inputSchema:w,outputSchema:v,supportsDeferredResults:!0}),y=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxCharacters:d.z.number().optional()}))),z=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.enum(["view","create","str_replace","insert"]),path:d.z.string(),file_text:d.z.string().optional(),insert_line:d.z.number().int().optional(),new_str:d.z.string().optional(),insert_text:d.z.string().optional(),old_str:d.z.string().optional(),view_range:d.z.array(d.z.number().int()).optional()}))),A=(0,c.createProviderDefinedToolFactory)({id:"anthropic.text_editor_20250728",inputSchema:z}),B=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),userLocation:d.z.object({type:d.z.literal("approximate"),city:d.z.string().optional(),region:d.z.string().optional(),country:d.z.string().optional(),timezone:d.z.string().optional()}).optional()}))),C=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({url:d.z.string(),title:d.z.string().nullable(),pageAge:d.z.string().nullable(),encryptedContent:d.z.string(),type:d.z.literal("web_search_result")})))),D=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({query:d.z.string()}))),E=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_search_20260209",inputSchema:D,outputSchema:C,supportsDeferredResults:!0}),F=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),userLocation:d.z.object({type:d.z.literal("approximate"),city:d.z.string().optional(),region:d.z.string().optional(),country:d.z.string().optional(),timezone:d.z.string().optional()}).optional()}))),G=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({url:d.z.string(),title:d.z.string().nullable(),pageAge:d.z.string().nullable(),encryptedContent:d.z.string(),type:d.z.literal("web_search_result")})))),H=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({query:d.z.string()}))),I=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_search_20250305",inputSchema:H,outputSchema:G,supportsDeferredResults:!0}),J=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),maxContentTokens:d.z.number().optional()}))),K=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),mediaType:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),mediaType:d.z.literal("text/plain"),data:d.z.string()})])}),retrievedAt:d.z.string().nullable()}))),L=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({url:d.z.string()}))),M=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_fetch_20260209",inputSchema:L,outputSchema:K,supportsDeferredResults:!0}),N=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),maxContentTokens:d.z.number().optional()}))),O=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),mediaType:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),mediaType:d.z.literal("text/plain"),data:d.z.string()})])}),retrievedAt:d.z.string().nullable()}))),P=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({url:d.z.string()}))),Q=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_fetch_20250910",inputSchema:P,outputSchema:O,supportsDeferredResults:!0});async function R({tools:a,toolChoice:d,disableParallelToolUse:e,cacheControlValidator:f,supportsStructuredOutput:g,supportsStrictTools:h,defaultEagerInputStreaming:i=!1}){var j,k;a=(null==a?void 0:a.length)?a:void 0;let l=[],m=new Set,n=f||new t;if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:l,betas:m};let o=[];for(let b of a)switch(b.type){case"function":{let a=n.getCacheControl(b.providerOptions,{type:"tool definition",canCache:!0}),c=null==(j=b.providerOptions)?void 0:j.anthropic,d=null!=(k=null==c?void 0:c.eagerInputStreaming)?k:i,e=null==c?void 0:c.deferLoading,f=null==c?void 0:c.allowedCallers;h||null==b.strict||l.push({type:"unsupported",feature:"strict",details:`Tool '${b.name}' has strict: ${b.strict}, but strict mode is not supported by this provider. The strict property will be ignored.`}),o.push({name:b.name,description:b.description,input_schema:b.inputSchema,cache_control:a,...d?{eager_input_streaming:!0}:{},...!0===h&&null!=b.strict?{strict:b.strict}:{},...null!=e?{defer_loading:e}:{},...null!=f?{allowed_callers:f}:{},...null!=b.inputExamples?{input_examples:b.inputExamples.map(a=>a.input)}:{}}),!0===g&&m.add("structured-outputs-2025-11-13"),(null!=b.inputExamples||null!=f)&&m.add("advanced-tool-use-2025-11-20");break}case"provider":switch(b.id){case"anthropic.code_execution_20250522":m.add("code-execution-2025-05-22"),o.push({type:"code_execution_20250522",name:"code_execution",cache_control:void 0});break;case"anthropic.code_execution_20250825":m.add("code-execution-2025-08-25"),o.push({type:"code_execution_20250825",name:"code_execution"});break;case"anthropic.code_execution_20260120":o.push({type:"code_execution_20260120",name:"code_execution"});break;case"anthropic.computer_20250124":m.add("computer-use-2025-01-24"),o.push({name:"computer",type:"computer_20250124",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,cache_control:void 0});break;case"anthropic.computer_20251124":m.add("computer-use-2025-11-24"),o.push({name:"computer",type:"computer_20251124",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,enable_zoom:b.args.enableZoom,cache_control:void 0});break;case"anthropic.computer_20241022":m.add("computer-use-2024-10-22"),o.push({name:"computer",type:"computer_20241022",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,cache_control:void 0});break;case"anthropic.text_editor_20250124":m.add("computer-use-2025-01-24"),o.push({name:"str_replace_editor",type:"text_editor_20250124",cache_control:void 0});break;case"anthropic.text_editor_20241022":m.add("computer-use-2024-10-22"),o.push({name:"str_replace_editor",type:"text_editor_20241022",cache_control:void 0});break;case"anthropic.text_editor_20250429":m.add("computer-use-2025-01-24"),o.push({name:"str_replace_based_edit_tool",type:"text_editor_20250429",cache_control:void 0});break;case"anthropic.text_editor_20250728":{let a=await (0,c.validateTypes)({value:b.args,schema:y});o.push({name:"str_replace_based_edit_tool",type:"text_editor_20250728",max_characters:a.maxCharacters,cache_control:void 0});break}case"anthropic.bash_20250124":m.add("computer-use-2025-01-24"),o.push({name:"bash",type:"bash_20250124",cache_control:void 0});break;case"anthropic.bash_20241022":m.add("computer-use-2024-10-22"),o.push({name:"bash",type:"bash_20241022",cache_control:void 0});break;case"anthropic.memory_20250818":m.add("context-management-2025-06-27"),o.push({name:"memory",type:"memory_20250818"});break;case"anthropic.web_fetch_20250910":{m.add("web-fetch-2025-09-10");let a=await (0,c.validateTypes)({value:b.args,schema:N});o.push({type:"web_fetch_20250910",name:"web_fetch",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,citations:a.citations,max_content_tokens:a.maxContentTokens,cache_control:void 0});break}case"anthropic.web_fetch_20260209":{m.add("code-execution-web-tools-2026-02-09");let a=await (0,c.validateTypes)({value:b.args,schema:J});o.push({type:"web_fetch_20260209",name:"web_fetch",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,citations:a.citations,max_content_tokens:a.maxContentTokens,cache_control:void 0});break}case"anthropic.web_search_20250305":{let a=await (0,c.validateTypes)({value:b.args,schema:F});o.push({type:"web_search_20250305",name:"web_search",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,user_location:a.userLocation,cache_control:void 0});break}case"anthropic.web_search_20260209":{m.add("code-execution-web-tools-2026-02-09");let a=await (0,c.validateTypes)({value:b.args,schema:B});o.push({type:"web_search_20260209",name:"web_search",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,user_location:a.userLocation,cache_control:void 0});break}case"anthropic.tool_search_regex_20251119":o.push({type:"tool_search_tool_regex_20251119",name:"tool_search_tool_regex"});break;case"anthropic.tool_search_bm25_20251119":o.push({type:"tool_search_tool_bm25_20251119",name:"tool_search_tool_bm25"});break;case"anthropic.advisor_20260301":{m.add("advisor-tool-2026-03-01");let a=await (0,c.validateTypes)({value:b.args,schema:u});o.push({type:"advisor_20260301",name:"advisor",model:a.model,...void 0!==a.maxUses&&{max_uses:a.maxUses},...void 0!==a.maxTokens&&{max_tokens:a.maxTokens},...void 0!==a.caching&&{caching:a.caching}});break}default:l.push({type:"unsupported",feature:`provider-defined tool ${b.id}`})}break;default:l.push({type:"unsupported",feature:`tool ${b}`})}if(null==d)return{tools:o,toolChoice:e?{type:"auto",disable_parallel_tool_use:e}:void 0,toolWarnings:l,betas:m};let p=d.type;switch(p){case"auto":return{tools:o,toolChoice:{type:"auto",disable_parallel_tool_use:e},toolWarnings:l,betas:m};case"required":return{tools:o,toolChoice:{type:"any",disable_parallel_tool_use:e},toolWarnings:l,betas:m};case"none":return{tools:void 0,toolChoice:void 0,toolWarnings:l,betas:m};case"tool":return{tools:o,toolChoice:{type:"tool",name:d.toolName,disable_parallel_tool_use:e},toolWarnings:l,betas:m};default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${p}`})}}function S({usage:a,rawUsage:b}){var c,d,e,f,g;let h,i,j=null!=(c=a.cache_creation_input_tokens)?c:0,k=null!=(d=a.cache_read_input_tokens)?d:0,l=null!=(f=null==(e=a.output_tokens_details)?void 0:e.thinking_tokens)?f:void 0,m=null==(g=a.iterations)?void 0:g.some(a=>"fallback_message"===a.type);if(a.iterations&&a.iterations.length>0&&!m){let b=a.iterations.filter(a=>"compaction"===a.type||"message"===a.type);if(b.length>0){let a=b.reduce((a,b)=>({input:a.input+b.input_tokens,output:a.output+b.output_tokens}),{input:0,output:0});h=a.input,i=a.output}else h=a.input_tokens,i=a.output_tokens}else h=a.input_tokens,i=a.output_tokens;return{inputTokens:{total:h+j+k,noCache:h,cacheRead:k,cacheWrite:j},outputTokens:{total:i,text:null==l?void 0:i-l,reasoning:l},raw:null!=b?b:a}}var T=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}))),U=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({code:d.z.string()}))),V=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20250522",inputSchema:U,outputSchema:T}),W=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})]))),X=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("programmatic-tool-call"),code:d.z.string()}),d.z.object({type:d.z.literal("bash_code_execution"),command:d.z.string()}),d.z.discriminatedUnion("command",[d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("view"),path:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("create"),path:d.z.string(),file_text:d.z.string().nullish()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("str_replace"),path:d.z.string(),old_str:d.z.string(),new_str:d.z.string()})])]))),Y=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20250825",inputSchema:X,outputSchema:W,supportsDeferredResults:!0}),Z=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})]))),$=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("programmatic-tool-call"),code:d.z.string()}),d.z.object({type:d.z.literal("bash_code_execution"),command:d.z.string()}),d.z.discriminatedUnion("command",[d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("view"),path:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("create"),path:d.z.string(),file_text:d.z.string().nullish()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("str_replace"),path:d.z.string(),old_str:d.z.string(),new_str:d.z.string()})])]))),_=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20260120",inputSchema:$,outputSchema:Z,supportsDeferredResults:!0}),aa=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({type:d.z.literal("tool_reference"),toolName:d.z.string()})))),ab=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({pattern:d.z.string(),limit:d.z.number().optional()}))),ac=(0,c.createProviderExecutedToolFactory)({id:"anthropic.tool_search_regex_20251119",inputSchema:ab,outputSchema:aa,supportsDeferredResults:!0});function ad(a){try{if("string"==typeof a)return(0,c.secureJsonParse)(a);if("object"==typeof a&&null!==a)return a}catch(c){let b=null==a?void 0:a.errorCode;return{errorCode:"string"==typeof b?b:"unavailable"}}return{}}async function ae({prompt:a,sendReasoning:d,warnings:e,cacheControlValidator:f,toolNameMapping:g}){var h,i,j,k,l,m,n,o,s,u,w,x,y,z,A,B,C,D,E,F,H,I,J,K;let L,M=new Set,N=function(a){let b,c=[];for(let d of a){let{role:a}=d;switch(a){case"system":(null==b?void 0:b.type)!=="system"&&(b={type:"system",messages:[]},c.push(b)),b.messages.push(d);break;case"assistant":(null==b?void 0:b.type)!=="assistant"&&(b={type:"assistant",messages:[]},c.push(b)),b.messages.push(d);break;case"user":case"tool":(null==b?void 0:b.type)!=="user"&&(b={type:"user",messages:[]},c.push(b)),b.messages.push(d);break;default:throw Error(`Unsupported role: ${a}`)}}return c}(a),P=f||new t,Q=[];async function R(a){var b,d;let e=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return null!=(d=null==(b=null==e?void 0:e.citations)?void 0:b.enabled)&&d}async function S(a){var b;let d=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return null!=(b=null==d?void 0:d.containerUpload)&&b}async function U(a){let b=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return{title:null==b?void 0:b.title,context:null==b?void 0:b.context}}for(let a=0;a<N.length;a++){let f=N[a],q=a===N.length-1,t=f.type;switch(t){case"system":{let b=[];for(let{content:a,providerOptions:d}of f.messages){let e=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:d,schema:r}),f=null!=(h=null==e?void 0:e.toolChanges)?h:[],i=[];for(let b of((""!==a||0===f.length&&(null==e?void 0:e.clearAt)==null&&(null==e?void 0:e.effort)==null)&&i.push({type:"text",text:a,cache_control:P.getCacheControl(d,{type:"system message",canCache:!0})}),f))i.push({type:b.type,tool:{type:"tool_reference",name:g.toProviderToolName(b.toolName)}});b.push({content:i,clearAt:null==e?void 0:e.clearAt,effort:null==e?void 0:e.effort,toolChangeCount:f.length})}let d=b.reduce((a,b)=>a+b.toolChangeCount,0),i=b.some(a=>null!=a.clearAt||null!=a.effort);if(0!==a&&(null!=L||0!==d||i))for(let a of(M.add("mid-conversation-system-2026-04-07"),b))Q.push({role:"system",content:a.content,...null!=a.clearAt&&{clear_at:a.clearAt},...null!=a.effort&&{output_config:{effort:a.effort}}}),a.toolChangeCount>0&&M.add("mid-conversation-tool-changes-2026-07-01"),null!=a.clearAt&&M.add("mid-conversation-system-clear-at-2026-08-21"),null!=a.effort&&M.add("mid-conversation-effort-2026-08-01");else{for(let a of(d>0&&e.push({type:"other",message:"tool changes on the initial system message are not supported by Anthropic. Configure the initial tool set via the tools option instead. The tool changes have been ignored."}),b))(null!=a.clearAt||null!=a.effort)&&e.push({type:"other",message:"clearAt and effort on the initial system message are not supported by Anthropic. These options have been ignored."});L=b.flatMap(a=>a.content.filter(a=>"text"===a.type))}break}case"user":{let a=[];for(let d of f.messages){let{role:f,content:g}=d;switch(f){case"user":for(let e=0;e<g.length;e++){let f=g[e],h=e===g.length-1,m=null!=(i=P.getCacheControl(f.providerOptions,{type:"user message part",canCache:!0}))?i:h?P.getCacheControl(d.providerOptions,{type:"user message",canCache:!0}):void 0;switch(f.type){case"text":a.push({type:"text",text:f.text,cache_control:m});break;case"file":switch(f.data.type){case"reference":{let b=(0,c.resolveProviderReference)({reference:f.data.reference,provider:"anthropic"});M.add("files-api-2025-04-14"),await S(f.providerOptions)?a.push({type:"container_upload",file_id:b}):"image"===(0,c.getTopLevelMediaType)(f.mediaType)?a.push({type:"image",source:{type:"file",file_id:b},cache_control:m}):a.push({type:"document",source:{type:"file",file_id:b},cache_control:m});break}case"text":{let b=await R(f.providerOptions),c=await U(f.providerOptions);a.push({type:"document",source:{type:"text",media_type:"text/plain",data:f.data.text},title:null!=(j=c.title)?j:f.filename,...c.context&&{context:c.context},...b&&{citations:{enabled:!0}},cache_control:m});break}case"url":case"data":{let d=(0,c.getTopLevelMediaType)(f.mediaType);if("image"===d)a.push({type:"image",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"base64",media_type:(0,c.resolveFullMediaType)({part:f}),data:(0,c.convertToBase64)(f.data.data)},cache_control:m});else if("application"===d&&("url"===f.data.type?"application/pdf"===f.mediaType:"application/pdf"===(0,c.resolveFullMediaType)({part:f}))){M.add("pdfs-2024-09-25");let b=await R(f.providerOptions),d=await U(f.providerOptions);a.push({type:"document",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"base64",media_type:"application/pdf",data:(0,c.convertToBase64)(f.data.data)},title:null!=(k=d.title)?k:f.filename,...d.context&&{context:d.context},...b&&{citations:{enabled:!0}},cache_control:m})}else if("text/plain"===f.mediaType){let b=await R(f.providerOptions),d=await U(f.providerOptions);a.push({type:"document",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"text",media_type:"text/plain",data:"string"==typeof(J=f.data.data)?new TextDecoder().decode((0,c.convertBase64ToUint8Array)(J)):new TextDecoder().decode(J)},title:null!=(l=d.title)?l:f.filename,...d.context&&{context:d.context},...b&&{citations:{enabled:!0}},cache_control:m})}else throw new b.UnsupportedFunctionalityError({functionality:`media type: ${f.mediaType}`})}}}}break;case"tool":for(let b=0;b<g.length;b++){let f,h=g[b];if("tool-approval-response"===h.type)continue;let i=h.output,j="providerOptions"in i?i.providerOptions:"content"===i.type?null==(m=i.value.find(a=>null!=a.providerOptions))?void 0:m.providerOptions:void 0,k=b===g.length-1,l=null!=(o=null!=(n=P.getCacheControl(h.providerOptions,{type:"tool result part",canCache:!0}))?n:P.getCacheControl(j,{type:"tool result output",canCache:!0}))?o:k?P.getCacheControl(d.providerOptions,{type:"tool result message",canCache:!0}):void 0;switch(i.type){case"content":f=i.value.map(a=>{var b;switch(a.type){case"text":return{type:"text",text:a.text};case"file":{let b=(0,c.getTopLevelMediaType)(a.mediaType);if("url"===a.data.type){if("image"===b)return{type:"image",source:{type:"url",url:a.data.url.toString()}};return{type:"document",source:{type:"url",url:a.data.url.toString()}}}if("data"===a.data.type){if("image"===b)return{type:"image",source:{type:"base64",media_type:(0,c.resolveFullMediaType)({part:a}),data:(0,c.convertToBase64)(a.data.data)}};if("application/pdf"===(0,c.resolveFullMediaType)({part:a}))return M.add("pdfs-2024-09-25"),{type:"document",source:{type:"base64",media_type:"application/pdf",data:(0,c.convertToBase64)(a.data.data)}};e.push({type:"other",message:`unsupported tool content part type: ${a.type} with media type: ${a.mediaType}`});return}e.push({type:"other",message:`unsupported tool content part type: ${a.type} with data type: ${a.data.type}`});return}case"custom":{let c=null==(b=a.providerOptions)?void 0:b.anthropic;if((null==c?void 0:c.type)==="tool-reference")return{type:"tool_reference",tool_name:c.toolName};e.push({type:"other",message:"unsupported custom tool content part"});return}default:return void e.push({type:"other",message:`unsupported tool content part type: ${a.type}`})}}).filter(c.isNonNullable);break;case"text":case"error-text":f=i.value;break;case"execution-denied":f=null!=(s=i.reason)?s:"Tool call execution denied.";break;default:f=JSON.stringify(i.value)}a.push({type:"tool_result",tool_use_id:h.toolCallId,content:f,is_error:"error-text"===i.type||"error-json"===i.type||void 0,cache_control:l})}break;default:throw Error(`Unsupported role: ${f}`)}}Q.push({role:"user",content:a});break}case"assistant":{let a=[],b=new Set;for(let h=0;h<f.messages.length;h++){let i=f.messages[h],j=h===f.messages.length-1,{content:k}=i;for(let f=0;f<k.length;f++){let h=k[f],l=f===k.length-1,m=null!=(u=P.getCacheControl(h.providerOptions,{type:"assistant message part",canCache:!0}))?u:l?P.getCacheControl(i.providerOptions,{type:"assistant message",canCache:!0}):void 0;switch(h.type){case"text":{let b=null==(w=h.providerOptions)?void 0:w.anthropic;(null==b?void 0:b.type)==="compaction"?a.push({type:"compaction",content:h.text,cache_control:m}):a.push({type:"text",text:q&&j&&l?h.text.trim():h.text,...(null==b?void 0:b.citations)!=null&&{citations:b.citations},cache_control:m});break}case"reasoning":if(d){let b=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:h.providerOptions,schema:p});null!=b?null!=b.signature?(P.getCacheControl(h.providerOptions,{type:"thinking block",canCache:!1}),a.push({type:"thinking",thinking:h.text,signature:b.signature})):null!=b.redactedData?(P.getCacheControl(h.providerOptions,{type:"redacted thinking block",canCache:!1}),a.push({type:"redacted_thinking",data:b.redactedData})):e.push({type:"other",message:"unsupported reasoning metadata"}):e.push({type:"other",message:"unsupported reasoning metadata"})}else e.push({type:"other",message:"sending reasoning content is disabled for this model"});break;case"tool-call":{let c=af(h.providerOptions);if(h.providerExecuted){let d=g.toProviderToolName(h.toolName);if((null==(y=null==(x=h.providerOptions)?void 0:x.anthropic)?void 0:y.type)==="mcp-tool-use"){b.add(h.toolCallId);let c=null==(A=null==(z=h.providerOptions)?void 0:z.anthropic)?void 0:A.serverName;if(null==c||"string"!=typeof c){e.push({type:"other",message:"mcp tool use server name is required and must be a string"});break}a.push({type:"mcp_tool_use",id:h.toolCallId,name:h.toolName,input:h.input,server_name:c,cache_control:m})}else if("code_execution"===d&&null!=h.input&&"object"==typeof h.input&&"type"in h.input&&"string"==typeof h.input.type&&("bash_code_execution"===h.input.type||"text_editor_code_execution"===h.input.type)){let{type:b,...d}=h.input;a.push({type:"server_tool_use",id:h.toolCallId,name:b,input:d,...c&&{caller:c},cache_control:m})}else if("code_execution"===d&&null!=h.input&&"object"==typeof h.input&&"type"in h.input&&"programmatic-tool-call"===h.input.type){let{type:b,...d}=h.input;a.push({type:"server_tool_use",id:h.toolCallId,name:"code_execution",input:d,...c&&{caller:c},cache_control:m})}else"code_execution"===d||"web_fetch"===d||"web_search"===d||"tool_search_tool_regex"===d||"tool_search_tool_bm25"===d?a.push({type:"server_tool_use",id:h.toolCallId,name:d,input:h.input,...c&&{caller:c},cache_control:m}):"advisor"===d?a.push({type:"server_tool_use",id:h.toolCallId,name:"advisor",input:{},...c&&{caller:c},cache_control:m}):e.push({type:"other",message:`provider executed tool call for tool ${h.toolName} is not supported`});break}a.push({type:"tool_use",id:h.toolCallId,name:h.toolName,input:"object"!=typeof(K=h.input)||null===K||Array.isArray(K)?{rawInvalidInput:K}:K,...c&&{caller:c},cache_control:m});break}case"tool-result":{let d=g.toProviderToolName(h.toolName),f=af(h.providerOptions);if(b.has(h.toolCallId)){let b=h.output;if("json"!==b.type&&"error-json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}a.push({type:"mcp_tool_result",tool_use_id:h.toolCallId,is_error:"error-json"===b.type,content:b.value,cache_control:m})}else if("code_execution"===d){let b=h.output;if("error-text"===b.type||"error-json"===b.type){let d={};try{"string"==typeof b.value?d=(0,c.secureJsonParse)(b.value):"object"==typeof b.value&&null!==b.value&&(d=b.value)}catch(a){}"code_execution_tool_result_error"===d.type?a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:"code_execution_tool_result_error",error_code:null!=(B=d.errorCode)?B:"unknown"},cache_control:m}):a.push({type:"bash_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:{type:"bash_code_execution_tool_result_error",error_code:null!=(C=d.errorCode)?C:"unknown"}});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}if(null==b.value||"object"!=typeof b.value||!("type"in b.value)||"string"!=typeof b.value.type){e.push({type:"other",message:`provider executed tool result output value is not a valid code execution result for tool ${h.toolName}`});break}if("code_execution_result"===b.value.type){let d=await (0,c.validateTypes)({value:b.value,schema:T});a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(D=d.content)?D:[]},cache_control:m})}else if("encrypted_code_execution_result"===b.value.type){let d=await (0,c.validateTypes)({value:b.value,schema:Z});"encrypted_code_execution_result"===d.type&&a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,encrypted_stdout:d.encrypted_stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(E=d.content)?E:[]},cache_control:m})}else{let d=await (0,c.validateTypes)({value:b.value,schema:W});"code_execution_result"===d.type?a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(F=d.content)?F:[]},cache_control:m}):"bash_code_execution_result"===d.type||"bash_code_execution_tool_result_error"===d.type?a.push({type:"bash_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:"bash_code_execution_result"===d.type?{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:d.content}:d}):a.push({type:"text_editor_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:d})}break}if("web_fetch"===d){let b=h.output;if("error-json"===b.type){a.push({type:"web_fetch_tool_result",tool_use_id:h.toolCallId,content:{type:"web_fetch_tool_result_error",error_code:null!=(H=ad(b.value).errorCode)?H:"unavailable"},...f&&{caller:f},cache_control:m});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:O});a.push({type:"web_fetch_tool_result",tool_use_id:h.toolCallId,content:{type:"web_fetch_result",url:d.url,retrieved_at:d.retrievedAt,content:{type:"document",title:d.content.title,citations:d.content.citations,source:{type:d.content.source.type,media_type:d.content.source.mediaType,data:d.content.source.data}}},...f&&{caller:f},cache_control:m});break}if("web_search"===d){let b=h.output;if("error-json"===b.type){a.push({type:"web_search_tool_result",tool_use_id:h.toolCallId,content:{type:"web_search_tool_result_error",error_code:null!=(I=ad(b.value).errorCode)?I:"unavailable"},...f&&{caller:f},cache_control:m});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:G});a.push({type:"web_search_tool_result",tool_use_id:h.toolCallId,content:d.map(a=>({url:a.url,title:a.title,page_age:a.pageAge,encrypted_content:a.encryptedContent,type:a.type})),...f&&{caller:f},cache_control:m});break}if("tool_search_tool_regex"===d||"tool_search_tool_bm25"===d){let b=h.output;if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=(await (0,c.validateTypes)({value:b.value,schema:aa})).map(a=>({type:"tool_reference",tool_name:a.toolName}));a.push({type:"tool_search_tool_result",tool_use_id:h.toolCallId,content:{type:"tool_search_tool_search_result",tool_references:d},cache_control:m});break}if("advisor"===d){let b=h.output;if("json"!==b.type&&"error-json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:v});"advisor_result"===d.type?a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_result",text:d.text,...void 0!==d.stopReason&&{stop_reason:d.stopReason}},cache_control:m}):"advisor_redacted_result"===d.type?a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_redacted_result",encrypted_content:d.encryptedContent,...void 0!==d.stopReason&&{stop_reason:d.stopReason}},cache_control:m}):a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_tool_result_error",error_code:d.errorCode},cache_control:m});break}e.push({type:"other",message:`provider executed tool result for tool ${h.toolName} is not supported`})}}}}Q.push({role:"assistant",content:function(a){let b=[],c=[];function d(){b.push(...c.filter(a=>"tool_use"!==a.type),...c.filter(a=>"tool_use"===a.type)),c=[]}for(let e of a)"thinking"===e.type||"redacted_thinking"===e.type?(d(),b.push(e)):c.push(e);return d(),b}(a)});break}default:throw Error(`content type: ${t}`)}}return{prompt:{system:L,messages:Q},betas:M}}function af(a){var b;let c=null==(b=null==a?void 0:a.anthropic)?void 0:b.caller;return((null==c?void 0:c.type)==="code_execution_20250825"||(null==c?void 0:c.type)==="code_execution_20260120")&&c.toolId?{type:c.type,tool_id:c.toolId}:(null==c?void 0:c.type)==="direct"?{type:"direct"}:void 0}function ag({finishReason:a,isJsonResponseFromTool:b}){switch(a){case"pause_turn":case"end_turn":case"stop_sequence":return"stop";case"refusal":return"content-filter";case"tool_use":return b?"stop":"tool-calls";case"max_tokens":case"model_context_window_exceeded":return"length";default:return"other"}}var ah=new Set(["date-time","time","date","duration","email","hostname","uri","ipv4","ipv6","uuid"]),ai=["minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","minLength","maxLength","pattern","minItems","maxItems","uniqueItems","minProperties","maxProperties","not"];function aj(a){return"boolean"!=typeof a&&(0,c.isRecord)(a)?ak(a):a}function ak(a){var b;let c,d={};if(null!=a.$ref)return{$ref:a.$ref};null!=a.$schema&&(d.$schema=a.$schema),null!=a.$id&&(d.$id=a.$id),null!=a.title&&(d.title=a.title),null!=a.description&&(d.description=a.description),void 0!==a.default&&(d.default=a.default),void 0!==a.const&&(d.const=a.const),null!=a.enum&&(d.enum=a.enum),null!=a.type&&(d.type=a.type),null!=a.anyOf?d.anyOf=a.anyOf.map(aj):null!=a.oneOf&&(d.anyOf=a.oneOf.map(aj)),null!=a.allOf&&(d.allOf=a.allOf.map(aj)),null!=a.definitions&&(d.definitions=Object.fromEntries(Object.entries(a.definitions).map(([a,b])=>[a,aj(b)]))),null!=a.$defs&&(d.$defs=Object.fromEntries(Object.entries(a.$defs).map(([a,b])=>[a,aj(b)]))),("object"===a.type||null!=a.properties)&&(null!=a.properties&&(d.properties=Object.fromEntries(Object.entries(a.properties).map(([a,b])=>[a,aj(b)]))),d.additionalProperties=!1,null!=a.required&&(d.required=a.required)),null!=a.items&&(d.items=Array.isArray(a.items)?a.items.map(aj):aj(a.items)),"string"==typeof a.format&&ah.has(a.format)&&(d.format=a.format);let e=(b=a,c=ai.flatMap(a=>{var c;let d=b[a];return null==d||!1===d?[]:`${a.replace(/[A-Z]/g,a=>` ${a.toLowerCase()}`)}: ${"string"==typeof(c=d)?c:JSON.stringify(c)}`}),"string"!=typeof b.format||ah.has(b.format)||c.push(`format: ${b.format}`),0===c.length?void 0:`${c.join("; ")}.`);return null!=e&&(d.description=null==d.description?e:`${d.description}
|
|
157
|
+
`,f={darwin:(a,b)=>["osascript",["-e",d,"--",a,b]],win32:()=>["powershell.exe",["-NoProfile","-NonInteractive","-Command",e]],linux:(a,b)=>["notify-send",["--app-name",c.APP_NAME,"--",a,b]]};a.s(["desktopNotify",0,function(a,c){let d=a.slice(0,80),e=c.slice(0,200),g=f[process.platform]?.(d,e);if(!g)return;let[h,i]=g;(0,b.execFile)(h,i,{env:{...process.env,NOTIFY_TITLE:d,NOTIFY_BODY:e},timeout:1e4,windowsHide:!0},()=>{})}])},523095,a=>{"use strict";function b(a){return a.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">")}a.s(["oauthPage",0,function(a,c,{autoClose:d=!1}={}){return`<!doctype html>
|
|
158
|
+
<meta charset="utf-8">
|
|
159
|
+
<title>${b(a)}</title>
|
|
160
|
+
<body style="font-family: ui-monospace, monospace; display: grid; place-items: center; min-height: 100dvh; margin: 0">
|
|
161
|
+
<div style="text-align: center; max-width: 28rem; padding: 1.5rem">
|
|
162
|
+
<p style="font-size: 1.125rem; margin: 0 0 .5rem">${b(a)}</p>
|
|
163
|
+
<p style="color: #666; font-size: .875rem; margin: 0">${b(c)}</p>
|
|
164
|
+
</div>
|
|
165
|
+
${d?"<script>setTimeout(() => window.close(), 900)</script>":""}
|
|
166
|
+
</body>`}])},8412,a=>{"use strict";var b=a.i(182248);a.s(["createKeyedLock",0,function(){let a=new Map,c=new Map;return function(d,e){let f=a.get(d);f||(f=(0,b.PromiseChain)(),a.set(d,f)),c.set(d,(c.get(d)??0)+1);let g=()=>{let b=(c.get(d)??1)-1;b>0?c.set(d,b):(c.delete(d),a.delete(d))};return f(e).then(a=>(g(),a),a=>{throw g(),a})}}])},987674,a=>{"use strict";let b=/[\u1100-\u11ff\u3040-\u30ff\u3130-\u318f\u4e00-\u9fff\uac00-\ud7af]/;function c(a){let c=0,d=0;for(let e of a)b.test(e)?c+=1:d+=1;return Math.ceil(c/1.3+d/4)}a.s(["estimateTokens",0,c,"sectionTokens",0,function(a){return a.split(/\n(?=## )/).map(a=>({name:a.startsWith("## ")?a.slice(3,a.indexOf("\n")):"identity",tokens:c(a)})).sort((a,b)=>b.tokens-a.tokens)}])},938537,a=>{"use strict";var b=a.i(652685),c=a.i(527990),d=a.i(53112),e=a.i(912735),f=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("error"),error:d.z.object({type:d.z.string(),message:d.z.string()})}))),g=(0,c.createJsonErrorResponseHandler)({errorSchema:f,errorToMessage:a=>a.error.message}),h=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({id:d.z.string(),type:d.z.literal("file"),filename:d.z.string(),mime_type:d.z.string(),size_bytes:d.z.number(),created_at:d.z.string(),downloadable:d.z.boolean().nullish()}))),i=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async uploadFile({data:a,mediaType:b,filename:d,abortSignal:e,headers:f}){var i,j;let k=new Blob([(0,c.convertInlineFileDataToUint8Array)(a)],{type:b}),l=new FormData;null!=d?l.append("file",k,d):l.append("file",k);let{value:m}=await (0,c.postFormDataToApi)({url:`${this.config.baseURL}/files`,headers:(0,c.combineHeaders)(this.config.headers(),{"anthropic-beta":"files-api-2025-04-14"},f),formData:l,failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(h),abortSignal:e,fetch:this.config.fetch});return{warnings:[],providerReference:{anthropic:m.id},mediaType:null!=(i=m.mime_type)?i:b,filename:null!=(j=m.filename)?j:d,providerMetadata:{anthropic:{filename:m.filename,mimeType:m.mime_type,sizeBytes:m.size_bytes,createdAt:m.created_at,...null!=m.downloadable?{downloadable:m.downloadable}:{}}}}}},j=d.z.object({type:d.z.string(),category:d.z.string().nullish(),explanation:d.z.string().nullish(),recommended_model:d.z.string().nullish()}),k=d.z.union([d.z.object({type:d.z.literal("code_execution_20250825"),tool_id:d.z.string()}),d.z.object({type:d.z.literal("code_execution_20260120"),tool_id:d.z.string()}),d.z.object({type:d.z.literal("direct")})]),l=d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("web_search_result_location"),cited_text:d.z.string(),url:d.z.string(),title:d.z.string().nullable(),encrypted_index:d.z.string()}),d.z.object({type:d.z.literal("page_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_page_number:d.z.number(),end_page_number:d.z.number(),file_id:d.z.string().nullish()}),d.z.object({type:d.z.literal("char_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_char_index:d.z.number(),end_char_index:d.z.number(),file_id:d.z.string().nullish()}),d.z.object({type:d.z.literal("content_block_location"),cited_text:d.z.string(),document_index:d.z.number(),document_title:d.z.string().nullable(),start_block_index:d.z.number(),end_block_index:d.z.number(),file_id:d.z.string().nullable()}),d.z.object({type:d.z.literal("search_result_location"),cited_text:d.z.string(),search_result_index:d.z.number(),source:d.z.string(),title:d.z.string().nullable(),start_block_index:d.z.number(),end_block_index:d.z.number()})]),m=d.z.union([d.z.string(),d.z.array(d.z.union([d.z.string(),d.z.object({type:d.z.literal("text"),text:d.z.string(),citations:d.z.array(d.z.json()).nullable().optional()})]))]),n=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("message"),id:d.z.string().nullish(),model:d.z.string().nullish(),content:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text"),text:d.z.string(),citations:d.z.array(l).nullable().optional()}),d.z.object({type:d.z.literal("thinking"),thinking:d.z.string(),signature:d.z.string()}),d.z.object({type:d.z.literal("redacted_thinking"),data:d.z.string()}),d.z.object({type:d.z.literal("compaction"),content:d.z.string()}),d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),caller:k.optional()}),d.z.object({type:d.z.literal("server_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).nullish(),caller:k.optional()}),d.z.object({type:d.z.literal("mcp_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),server_name:d.z.string()}),d.z.object({type:d.z.literal("mcp_tool_result"),tool_use_id:d.z.string(),is_error:d.z.boolean(),content:m}),d.z.object({type:d.z.literal("web_fetch_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),retrieved_at:d.z.string().nullable(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),media_type:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),media_type:d.z.literal("text/plain"),data:d.z.string()})])})}),d.z.object({type:d.z.literal("web_fetch_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("web_search_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.array(d.z.object({type:d.z.literal("web_search_result"),url:d.z.string(),title:d.z.string().nullable(),encrypted_content:d.z.string(),page_age:d.z.string().nullish()})),d.z.object({type:d.z.literal("web_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("bash_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})])}),d.z.object({type:d.z.literal("tool_search_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("tool_search_tool_search_result"),tool_references:d.z.array(d.z.object({type:d.z.literal("tool_reference"),tool_name:d.z.string()}))}),d.z.object({type:d.z.literal("tool_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("container_upload"),file_id:d.z.string()}),d.z.object({type:d.z.literal("advisor_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encrypted_content:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("fallback")})])),stop_reason:d.z.string().nullish(),stop_sequence:d.z.string().nullish(),stop_details:j.nullish(),usage:d.z.looseObject({input_tokens:d.z.number(),output_tokens:d.z.number(),output_tokens_details:d.z.object({thinking_tokens:d.z.number().nullish()}).nullish(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish(),iterations:d.z.array(d.z.object({type:d.z.union([d.z.literal("compaction"),d.z.literal("message"),d.z.literal("advisor_message"),d.z.literal("fallback_message")]),model:d.z.string().nullish(),input_tokens:d.z.number(),output_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()})).nullish()}),container:d.z.object({expires_at:d.z.string(),id:d.z.string(),skills:d.z.array(d.z.object({type:d.z.union([d.z.literal("anthropic"),d.z.literal("custom")]),skill_id:d.z.string(),version:d.z.string()})).nullish()}).nullish(),context_management:d.z.object({applied_edits:d.z.array(d.z.union([d.z.object({type:d.z.literal("clear_tool_uses_20250919"),cleared_tool_uses:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),cleared_thinking_turns:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("compact_20260112")})]))}).nullish()}))),o=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("message_start"),message:d.z.object({id:d.z.string().nullish(),model:d.z.string().nullish(),role:d.z.string().nullish(),usage:d.z.looseObject({input_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()}),content:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),caller:k.optional()})])).nullish(),stop_reason:d.z.string().nullish(),container:d.z.object({expires_at:d.z.string(),id:d.z.string()}).nullish()})}),d.z.object({type:d.z.literal("content_block_start"),index:d.z.number(),content_block:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text"),text:d.z.string()}),d.z.object({type:d.z.literal("thinking"),thinking:d.z.string()}),d.z.object({type:d.z.literal("tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).optional(),caller:k.optional()}),d.z.object({type:d.z.literal("redacted_thinking"),data:d.z.string()}),d.z.object({type:d.z.literal("compaction"),content:d.z.string().nullish()}),d.z.object({type:d.z.literal("server_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.record(d.z.string(),d.z.unknown()).nullish(),caller:k.optional()}),d.z.object({type:d.z.literal("mcp_tool_use"),id:d.z.string(),name:d.z.string(),input:d.z.unknown(),server_name:d.z.string()}),d.z.object({type:d.z.literal("mcp_tool_result"),tool_use_id:d.z.string(),is_error:d.z.boolean(),content:m}),d.z.object({type:d.z.literal("web_fetch_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),retrieved_at:d.z.string().nullable(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),media_type:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),media_type:d.z.literal("text/plain"),data:d.z.string()})])})}),d.z.object({type:d.z.literal("web_fetch_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("web_search_tool_result"),tool_use_id:d.z.string(),caller:k.optional(),content:d.z.union([d.z.array(d.z.object({type:d.z.literal("web_search_result"),url:d.z.string(),title:d.z.string().nullable(),encrypted_content:d.z.string(),page_age:d.z.string().nullish()})),d.z.object({type:d.z.literal("web_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("bash_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})])}),d.z.object({type:d.z.literal("tool_search_tool_result"),tool_use_id:d.z.string(),content:d.z.union([d.z.object({type:d.z.literal("tool_search_tool_search_result"),tool_references:d.z.array(d.z.object({type:d.z.literal("tool_reference"),tool_name:d.z.string()}))}),d.z.object({type:d.z.literal("tool_search_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("advisor_tool_result"),tool_use_id:d.z.string(),content:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encrypted_content:d.z.string(),stop_reason:d.z.string().nullish()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),error_code:d.z.string()})])}),d.z.object({type:d.z.literal("fallback")})])}),d.z.object({type:d.z.literal("content_block_delta"),index:d.z.number(),delta:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("input_json_delta"),partial_json:d.z.string()}),d.z.object({type:d.z.literal("text_delta"),text:d.z.string()}),d.z.object({type:d.z.literal("thinking_delta"),thinking:d.z.string()}),d.z.object({type:d.z.literal("signature_delta"),signature:d.z.string()}),d.z.object({type:d.z.literal("compaction_delta"),content:d.z.string().nullish()}),d.z.object({type:d.z.literal("citations_delta"),citation:l})])}),d.z.object({type:d.z.literal("content_block_stop"),index:d.z.number()}),d.z.object({type:d.z.literal("error"),error:d.z.object({type:d.z.string(),message:d.z.string(),code:d.z.union([d.z.string(),d.z.number()]).nullish(),statusCode:d.z.number().nullish(),isRetryable:d.z.boolean().nullish(),data:d.z.unknown().nullish()})}),d.z.object({type:d.z.literal("message_delta"),delta:d.z.object({stop_reason:d.z.string().nullish(),stop_sequence:d.z.string().nullish(),stop_details:j.nullish(),container:d.z.object({expires_at:d.z.string(),id:d.z.string(),skills:d.z.array(d.z.object({type:d.z.union([d.z.literal("anthropic"),d.z.literal("custom")]),skill_id:d.z.string(),version:d.z.string()})).nullish()}).nullish()}),usage:d.z.looseObject({input_tokens:d.z.number().nullish(),output_tokens:d.z.number(),output_tokens_details:d.z.object({thinking_tokens:d.z.number().nullish()}).nullish(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish(),iterations:d.z.array(d.z.object({type:d.z.union([d.z.literal("compaction"),d.z.literal("message"),d.z.literal("advisor_message"),d.z.literal("fallback_message")]),model:d.z.string().nullish(),input_tokens:d.z.number(),output_tokens:d.z.number(),cache_creation_input_tokens:d.z.number().nullish(),cache_read_input_tokens:d.z.number().nullish()})).nullish()}),context_management:d.z.object({applied_edits:d.z.array(d.z.union([d.z.object({type:d.z.literal("clear_tool_uses_20250919"),cleared_tool_uses:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),cleared_thinking_turns:d.z.number(),cleared_input_tokens:d.z.number()}),d.z.object({type:d.z.literal("compact_20260112")})]))}).nullish()}),d.z.object({type:d.z.literal("message_stop")}),d.z.object({type:d.z.literal("ping")})]))),p=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({signature:d.z.string().optional(),redactedData:d.z.string().optional()}))),q=d.z.object({containerUpload:d.z.boolean().optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),title:d.z.string().optional(),context:d.z.string().optional()}),r=d.z.object({clearAt:d.z.literal("next_user_message").optional(),effort:d.z.enum(["low","medium","high","xhigh","max"]).optional(),toolChanges:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("tool_addition"),toolName:d.z.string()}),d.z.object({type:d.z.literal("tool_removal"),toolName:d.z.string()})])).optional()}),s=d.z.object({sendReasoning:d.z.boolean().optional(),structuredOutputMode:d.z.enum(["outputFormat","jsonTool","auto"]).optional(),thinking:d.z.union([d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("adaptive"),display:d.z.enum(["omitted","summarized","updates"]).optional(),blockBinding:d.z.object({prefixMismatchBehavior:d.z.literal("drop_block")}).optional()}),d.z.object({type:d.z.literal("enabled"),budgetTokens:d.z.number().optional()}),d.z.object({type:d.z.literal("disabled")})]),d.z.object({type:d.z.never().optional(),blockBinding:d.z.object({prefixMismatchBehavior:d.z.literal("drop_block")})})]).optional(),disableParallelToolUse:d.z.boolean().optional(),cacheControl:d.z.object({type:d.z.literal("ephemeral"),ttl:d.z.union([d.z.literal("5m"),d.z.literal("1h")]).optional()}).optional(),metadata:d.z.object({userId:d.z.string().optional()}).optional(),mcpServers:d.z.array(d.z.object({type:d.z.literal("url"),name:d.z.string(),url:d.z.string(),authorizationToken:d.z.string().nullish(),toolConfiguration:d.z.object({enabled:d.z.boolean().nullish(),allowedTools:d.z.array(d.z.string()).nullish()}).nullish()})).optional(),container:d.z.object({id:d.z.string().optional(),skills:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("anthropic"),skillId:d.z.string(),version:d.z.string().optional()}),d.z.object({type:d.z.literal("custom"),providerReference:d.z.record(d.z.string(),d.z.string()),version:d.z.string().optional()})])).optional()}).optional(),toolStreaming:d.z.boolean().optional(),effort:d.z.enum(["low","medium","high","xhigh","max"]).optional(),taskBudget:d.z.object({type:d.z.literal("tokens"),total:d.z.number().int().min(2e4),remaining:d.z.number().int().min(0).optional()}).optional(),speed:d.z.enum(["fast","standard"]).optional(),serviceTier:d.z.enum(["auto","standard_only"]).optional(),inferenceGeo:d.z.enum(["us","global"]).optional(),fallbacks:d.z.union([d.z.literal("default"),d.z.array(d.z.object({model:d.z.string(),max_tokens:d.z.number().int().optional(),thinking:d.z.record(d.z.string(),d.z.unknown()).optional(),output_config:d.z.record(d.z.string(),d.z.unknown()).optional(),speed:d.z.enum(["fast","standard"]).optional()}))]).optional(),anthropicBeta:d.z.array(d.z.string()).optional(),contextManagement:d.z.object({edits:d.z.array(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("clear_tool_uses_20250919"),trigger:d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}),d.z.object({type:d.z.literal("tool_uses"),value:d.z.number()})]).optional(),keep:d.z.object({type:d.z.literal("tool_uses"),value:d.z.number()}).optional(),clearAtLeast:d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}).optional(),clearToolInputs:d.z.boolean().optional(),excludeTools:d.z.array(d.z.string()).optional()}),d.z.object({type:d.z.literal("clear_thinking_20251015"),keep:d.z.union([d.z.literal("all"),d.z.object({type:d.z.literal("thinking_turns"),value:d.z.number()})]).optional()}),d.z.object({type:d.z.literal("compact_20260112"),trigger:d.z.object({type:d.z.literal("input_tokens"),value:d.z.number()}).optional(),pauseAfterCompaction:d.z.boolean().optional(),instructions:d.z.string().optional()})]))}).optional()}),t=class{constructor(){this.breakpointCount=0,this.warnings=[]}getCacheControl(a,b){var c;let d,e=null!=(c=null==(d=null==a?void 0:a.anthropic)?void 0:d.cacheControl)?c:null==d?void 0:d.cache_control;if(e)return b.canCache?(this.breakpointCount++,this.breakpointCount>4)?void this.warnings.push({type:"unsupported",feature:"cacheControl breakpoint limit",details:`Maximum 4 cache breakpoints exceeded (found ${this.breakpointCount}). This breakpoint will be ignored.`}):e:void this.warnings.push({type:"unsupported",feature:"cache_control on non-cacheable context",details:`cache_control cannot be set on ${b.type}. It will be ignored.`})}getWarnings(){return this.warnings}},u=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({model:d.z.string(),maxUses:d.z.number().optional(),maxTokens:d.z.number().int().min(1024).optional(),caching:d.z.object({type:d.z.literal("ephemeral"),ttl:d.z.union([d.z.literal("5m"),d.z.literal("1h")])}).optional()}))),v=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("advisor_result"),text:d.z.string(),stopReason:d.z.string().optional()}),d.z.object({type:d.z.literal("advisor_redacted_result"),encryptedContent:d.z.string(),stopReason:d.z.string().optional()}),d.z.object({type:d.z.literal("advisor_tool_result_error"),errorCode:d.z.string()})]))),w=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({}).strict())),x=(0,c.createProviderExecutedToolFactory)({id:"anthropic.advisor_20260301",inputSchema:w,outputSchema:v,supportsDeferredResults:!0}),y=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxCharacters:d.z.number().optional()}))),z=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.enum(["view","create","str_replace","insert"]),path:d.z.string(),file_text:d.z.string().optional(),insert_line:d.z.number().int().optional(),new_str:d.z.string().optional(),insert_text:d.z.string().optional(),old_str:d.z.string().optional(),view_range:d.z.array(d.z.number().int()).optional()}))),A=(0,c.createProviderDefinedToolFactory)({id:"anthropic.text_editor_20250728",inputSchema:z}),B=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),userLocation:d.z.object({type:d.z.literal("approximate"),city:d.z.string().optional(),region:d.z.string().optional(),country:d.z.string().optional(),timezone:d.z.string().optional()}).optional()}))),C=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({url:d.z.string(),title:d.z.string().nullable(),pageAge:d.z.string().nullable(),encryptedContent:d.z.string(),type:d.z.literal("web_search_result")})))),D=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({query:d.z.string()}))),E=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_search_20260209",inputSchema:D,outputSchema:C,supportsDeferredResults:!0}),F=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),userLocation:d.z.object({type:d.z.literal("approximate"),city:d.z.string().optional(),region:d.z.string().optional(),country:d.z.string().optional(),timezone:d.z.string().optional()}).optional()}))),G=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({url:d.z.string(),title:d.z.string().nullable(),pageAge:d.z.string().nullable(),encryptedContent:d.z.string(),type:d.z.literal("web_search_result")})))),H=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({query:d.z.string()}))),I=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_search_20250305",inputSchema:H,outputSchema:G,supportsDeferredResults:!0}),J=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),maxContentTokens:d.z.number().optional()}))),K=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),mediaType:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),mediaType:d.z.literal("text/plain"),data:d.z.string()})])}),retrievedAt:d.z.string().nullable()}))),L=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({url:d.z.string()}))),M=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_fetch_20260209",inputSchema:L,outputSchema:K,supportsDeferredResults:!0}),N=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({maxUses:d.z.number().optional(),allowedDomains:d.z.array(d.z.string()).optional(),blockedDomains:d.z.array(d.z.string()).optional(),citations:d.z.object({enabled:d.z.boolean()}).optional(),maxContentTokens:d.z.number().optional()}))),O=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("web_fetch_result"),url:d.z.string(),content:d.z.object({type:d.z.literal("document"),title:d.z.string().nullable(),citations:d.z.object({enabled:d.z.boolean()}).optional(),source:d.z.union([d.z.object({type:d.z.literal("base64"),mediaType:d.z.literal("application/pdf"),data:d.z.string()}),d.z.object({type:d.z.literal("text"),mediaType:d.z.literal("text/plain"),data:d.z.string()})])}),retrievedAt:d.z.string().nullable()}))),P=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({url:d.z.string()}))),Q=(0,c.createProviderExecutedToolFactory)({id:"anthropic.web_fetch_20250910",inputSchema:P,outputSchema:O,supportsDeferredResults:!0});async function R({tools:a,toolChoice:d,disableParallelToolUse:e,cacheControlValidator:f,supportsStructuredOutput:g,supportsStrictTools:h,defaultEagerInputStreaming:i=!1}){var j,k;a=(null==a?void 0:a.length)?a:void 0;let l=[],m=new Set,n=f||new t;if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:l,betas:m};let o=[];for(let b of a)switch(b.type){case"function":{let a=n.getCacheControl(b.providerOptions,{type:"tool definition",canCache:!0}),c=null==(j=b.providerOptions)?void 0:j.anthropic,d=null!=(k=null==c?void 0:c.eagerInputStreaming)?k:i,e=null==c?void 0:c.deferLoading,f=null==c?void 0:c.allowedCallers;h||null==b.strict||l.push({type:"unsupported",feature:"strict",details:`Tool '${b.name}' has strict: ${b.strict}, but strict mode is not supported by this provider. The strict property will be ignored.`}),o.push({name:b.name,description:b.description,input_schema:b.inputSchema,cache_control:a,...d?{eager_input_streaming:!0}:{},...!0===h&&null!=b.strict?{strict:b.strict}:{},...null!=e?{defer_loading:e}:{},...null!=f?{allowed_callers:f}:{},...null!=b.inputExamples?{input_examples:b.inputExamples.map(a=>a.input)}:{}}),!0===g&&m.add("structured-outputs-2025-11-13"),(null!=b.inputExamples||null!=f)&&m.add("advanced-tool-use-2025-11-20");break}case"provider":switch(b.id){case"anthropic.code_execution_20250522":m.add("code-execution-2025-05-22"),o.push({type:"code_execution_20250522",name:"code_execution",cache_control:void 0});break;case"anthropic.code_execution_20250825":m.add("code-execution-2025-08-25"),o.push({type:"code_execution_20250825",name:"code_execution"});break;case"anthropic.code_execution_20260120":o.push({type:"code_execution_20260120",name:"code_execution"});break;case"anthropic.computer_20250124":m.add("computer-use-2025-01-24"),o.push({name:"computer",type:"computer_20250124",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,cache_control:void 0});break;case"anthropic.computer_20251124":m.add("computer-use-2025-11-24"),o.push({name:"computer",type:"computer_20251124",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,enable_zoom:b.args.enableZoom,cache_control:void 0});break;case"anthropic.computer_20241022":m.add("computer-use-2024-10-22"),o.push({name:"computer",type:"computer_20241022",display_width_px:b.args.displayWidthPx,display_height_px:b.args.displayHeightPx,display_number:b.args.displayNumber,cache_control:void 0});break;case"anthropic.text_editor_20250124":m.add("computer-use-2025-01-24"),o.push({name:"str_replace_editor",type:"text_editor_20250124",cache_control:void 0});break;case"anthropic.text_editor_20241022":m.add("computer-use-2024-10-22"),o.push({name:"str_replace_editor",type:"text_editor_20241022",cache_control:void 0});break;case"anthropic.text_editor_20250429":m.add("computer-use-2025-01-24"),o.push({name:"str_replace_based_edit_tool",type:"text_editor_20250429",cache_control:void 0});break;case"anthropic.text_editor_20250728":{let a=await (0,c.validateTypes)({value:b.args,schema:y});o.push({name:"str_replace_based_edit_tool",type:"text_editor_20250728",max_characters:a.maxCharacters,cache_control:void 0});break}case"anthropic.bash_20250124":m.add("computer-use-2025-01-24"),o.push({name:"bash",type:"bash_20250124",cache_control:void 0});break;case"anthropic.bash_20241022":m.add("computer-use-2024-10-22"),o.push({name:"bash",type:"bash_20241022",cache_control:void 0});break;case"anthropic.memory_20250818":m.add("context-management-2025-06-27"),o.push({name:"memory",type:"memory_20250818"});break;case"anthropic.web_fetch_20250910":{m.add("web-fetch-2025-09-10");let a=await (0,c.validateTypes)({value:b.args,schema:N});o.push({type:"web_fetch_20250910",name:"web_fetch",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,citations:a.citations,max_content_tokens:a.maxContentTokens,cache_control:void 0});break}case"anthropic.web_fetch_20260209":{m.add("code-execution-web-tools-2026-02-09");let a=await (0,c.validateTypes)({value:b.args,schema:J});o.push({type:"web_fetch_20260209",name:"web_fetch",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,citations:a.citations,max_content_tokens:a.maxContentTokens,cache_control:void 0});break}case"anthropic.web_search_20250305":{let a=await (0,c.validateTypes)({value:b.args,schema:F});o.push({type:"web_search_20250305",name:"web_search",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,user_location:a.userLocation,cache_control:void 0});break}case"anthropic.web_search_20260209":{m.add("code-execution-web-tools-2026-02-09");let a=await (0,c.validateTypes)({value:b.args,schema:B});o.push({type:"web_search_20260209",name:"web_search",max_uses:a.maxUses,allowed_domains:a.allowedDomains,blocked_domains:a.blockedDomains,user_location:a.userLocation,cache_control:void 0});break}case"anthropic.tool_search_regex_20251119":o.push({type:"tool_search_tool_regex_20251119",name:"tool_search_tool_regex"});break;case"anthropic.tool_search_bm25_20251119":o.push({type:"tool_search_tool_bm25_20251119",name:"tool_search_tool_bm25"});break;case"anthropic.advisor_20260301":{m.add("advisor-tool-2026-03-01");let a=await (0,c.validateTypes)({value:b.args,schema:u});o.push({type:"advisor_20260301",name:"advisor",model:a.model,...void 0!==a.maxUses&&{max_uses:a.maxUses},...void 0!==a.maxTokens&&{max_tokens:a.maxTokens},...void 0!==a.caching&&{caching:a.caching}});break}default:l.push({type:"unsupported",feature:`provider-defined tool ${b.id}`})}break;default:l.push({type:"unsupported",feature:`tool ${b}`})}if(null==d)return{tools:o,toolChoice:e?{type:"auto",disable_parallel_tool_use:e}:void 0,toolWarnings:l,betas:m};let p=d.type;switch(p){case"auto":return{tools:o,toolChoice:{type:"auto",disable_parallel_tool_use:e},toolWarnings:l,betas:m};case"required":return{tools:o,toolChoice:{type:"any",disable_parallel_tool_use:e},toolWarnings:l,betas:m};case"none":return{tools:void 0,toolChoice:void 0,toolWarnings:l,betas:m};case"tool":return{tools:o,toolChoice:{type:"tool",name:d.toolName,disable_parallel_tool_use:e},toolWarnings:l,betas:m};default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${p}`})}}function S({usage:a,rawUsage:b}){var c,d,e,f,g;let h,i,j=null!=(c=a.cache_creation_input_tokens)?c:0,k=null!=(d=a.cache_read_input_tokens)?d:0,l=null!=(f=null==(e=a.output_tokens_details)?void 0:e.thinking_tokens)?f:void 0,m=null==(g=a.iterations)?void 0:g.some(a=>"fallback_message"===a.type);if(a.iterations&&a.iterations.length>0&&!m){let b=a.iterations.filter(a=>"compaction"===a.type||"message"===a.type);if(b.length>0){let a=b.reduce((a,b)=>({input:a.input+b.input_tokens,output:a.output+b.output_tokens}),{input:0,output:0});h=a.input,i=a.output}else h=a.input_tokens,i=a.output_tokens}else h=a.input_tokens,i=a.output_tokens;return{inputTokens:{total:h+j+k,noCache:h,cacheRead:k,cacheWrite:j},outputTokens:{total:i,text:null==l?void 0:i-l,reasoning:l},raw:null!=b?b:a}}var T=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}))),U=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({code:d.z.string()}))),V=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20250522",inputSchema:U,outputSchema:T}),W=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})]))),X=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("programmatic-tool-call"),code:d.z.string()}),d.z.object({type:d.z.literal("bash_code_execution"),command:d.z.string()}),d.z.discriminatedUnion("command",[d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("view"),path:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("create"),path:d.z.string(),file_text:d.z.string().nullish()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("str_replace"),path:d.z.string(),old_str:d.z.string(),new_str:d.z.string()})])]))),Y=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20250825",inputSchema:X,outputSchema:W,supportsDeferredResults:!0}),Z=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("code_execution_result"),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("encrypted_code_execution_result"),encrypted_stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number(),content:d.z.array(d.z.object({type:d.z.literal("code_execution_output"),file_id:d.z.string()})).optional().default([])}),d.z.object({type:d.z.literal("bash_code_execution_result"),content:d.z.array(d.z.object({type:d.z.literal("bash_code_execution_output"),file_id:d.z.string()})),stdout:d.z.string(),stderr:d.z.string(),return_code:d.z.number()}),d.z.object({type:d.z.literal("bash_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_tool_result_error"),error_code:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution_view_result"),content:d.z.string(),file_type:d.z.string(),num_lines:d.z.number().nullable(),start_line:d.z.number().nullable(),total_lines:d.z.number().nullable()}),d.z.object({type:d.z.literal("text_editor_code_execution_create_result"),is_file_update:d.z.boolean()}),d.z.object({type:d.z.literal("text_editor_code_execution_str_replace_result"),lines:d.z.array(d.z.string()).nullable(),new_lines:d.z.number().nullable(),new_start:d.z.number().nullable(),old_lines:d.z.number().nullable(),old_start:d.z.number().nullable()})]))),$=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("programmatic-tool-call"),code:d.z.string()}),d.z.object({type:d.z.literal("bash_code_execution"),command:d.z.string()}),d.z.discriminatedUnion("command",[d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("view"),path:d.z.string()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("create"),path:d.z.string(),file_text:d.z.string().nullish()}),d.z.object({type:d.z.literal("text_editor_code_execution"),command:d.z.literal("str_replace"),path:d.z.string(),old_str:d.z.string(),new_str:d.z.string()})])]))),_=(0,c.createProviderExecutedToolFactory)({id:"anthropic.code_execution_20260120",inputSchema:$,outputSchema:Z,supportsDeferredResults:!0}),aa=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({type:d.z.literal("tool_reference"),toolName:d.z.string()})))),ab=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({pattern:d.z.string(),limit:d.z.number().optional()}))),ac=(0,c.createProviderExecutedToolFactory)({id:"anthropic.tool_search_regex_20251119",inputSchema:ab,outputSchema:aa,supportsDeferredResults:!0});function ad(a){try{if("string"==typeof a)return(0,c.secureJsonParse)(a);if("object"==typeof a&&null!==a)return a}catch(c){let b=null==a?void 0:a.errorCode;return{errorCode:"string"==typeof b?b:"unavailable"}}return{}}async function ae({prompt:a,sendReasoning:d,warnings:e,cacheControlValidator:f,toolNameMapping:g}){var h,i,j,k,l,m,n,o,s,u,w,x,y,z,A,B,C,D,E,F,H,I,J,K;let L,M=new Set,N=function(a){let b,c=[];for(let d of a){let{role:a}=d;switch(a){case"system":(null==b?void 0:b.type)!=="system"&&(b={type:"system",messages:[]},c.push(b)),b.messages.push(d);break;case"assistant":(null==b?void 0:b.type)!=="assistant"&&(b={type:"assistant",messages:[]},c.push(b)),b.messages.push(d);break;case"user":case"tool":(null==b?void 0:b.type)!=="user"&&(b={type:"user",messages:[]},c.push(b)),b.messages.push(d);break;default:throw Error(`Unsupported role: ${a}`)}}return c}(a),P=f||new t,Q=[];async function R(a){var b,d;let e=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return null!=(d=null==(b=null==e?void 0:e.citations)?void 0:b.enabled)&&d}async function S(a){var b;let d=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return null!=(b=null==d?void 0:d.containerUpload)&&b}async function U(a){let b=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:a,schema:q});return{title:null==b?void 0:b.title,context:null==b?void 0:b.context}}for(let a=0;a<N.length;a++){let f=N[a],q=a===N.length-1,t=f.type;switch(t){case"system":{let b=[];for(let{content:a,providerOptions:d}of f.messages){let e=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:d,schema:r}),f=null!=(h=null==e?void 0:e.toolChanges)?h:[],i=[];for(let b of((""!==a||0===f.length&&(null==e?void 0:e.clearAt)==null&&(null==e?void 0:e.effort)==null)&&i.push({type:"text",text:a,cache_control:P.getCacheControl(d,{type:"system message",canCache:!0})}),f))i.push({type:b.type,tool:{type:"tool_reference",name:g.toProviderToolName(b.toolName)}});b.push({content:i,clearAt:null==e?void 0:e.clearAt,effort:null==e?void 0:e.effort,toolChangeCount:f.length})}let d=b.reduce((a,b)=>a+b.toolChangeCount,0),i=b.some(a=>null!=a.clearAt||null!=a.effort);if(0!==a&&(null!=L||0!==d||i))for(let a of(M.add("mid-conversation-system-2026-04-07"),b))Q.push({role:"system",content:a.content,...null!=a.clearAt&&{clear_at:a.clearAt},...null!=a.effort&&{output_config:{effort:a.effort}}}),a.toolChangeCount>0&&M.add("mid-conversation-tool-changes-2026-07-01"),null!=a.clearAt&&M.add("mid-conversation-system-clear-at-2026-08-21"),null!=a.effort&&M.add("mid-conversation-effort-2026-08-01");else{for(let a of(d>0&&e.push({type:"other",message:"tool changes on the initial system message are not supported by Anthropic. Configure the initial tool set via the tools option instead. The tool changes have been ignored."}),b))(null!=a.clearAt||null!=a.effort)&&e.push({type:"other",message:"clearAt and effort on the initial system message are not supported by Anthropic. These options have been ignored."});L=b.flatMap(a=>a.content.filter(a=>"text"===a.type))}break}case"user":{let a=[];for(let d of f.messages){let{role:f,content:g}=d;switch(f){case"user":for(let e=0;e<g.length;e++){let f=g[e],h=e===g.length-1,m=null!=(i=P.getCacheControl(f.providerOptions,{type:"user message part",canCache:!0}))?i:h?P.getCacheControl(d.providerOptions,{type:"user message",canCache:!0}):void 0;switch(f.type){case"text":a.push({type:"text",text:f.text,cache_control:m});break;case"file":switch(f.data.type){case"reference":{let b=(0,c.resolveProviderReference)({reference:f.data.reference,provider:"anthropic"});M.add("files-api-2025-04-14"),await S(f.providerOptions)?a.push({type:"container_upload",file_id:b}):"image"===(0,c.getTopLevelMediaType)(f.mediaType)?a.push({type:"image",source:{type:"file",file_id:b},cache_control:m}):a.push({type:"document",source:{type:"file",file_id:b},cache_control:m});break}case"text":{let b=await R(f.providerOptions),c=await U(f.providerOptions);a.push({type:"document",source:{type:"text",media_type:"text/plain",data:f.data.text},title:null!=(j=c.title)?j:f.filename,...c.context&&{context:c.context},...b&&{citations:{enabled:!0}},cache_control:m});break}case"url":case"data":{let d=(0,c.getTopLevelMediaType)(f.mediaType);if("image"===d)a.push({type:"image",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"base64",media_type:(0,c.resolveFullMediaType)({part:f}),data:(0,c.convertToBase64)(f.data.data)},cache_control:m});else if("application"===d&&("url"===f.data.type?"application/pdf"===f.mediaType:"application/pdf"===(0,c.resolveFullMediaType)({part:f}))){M.add("pdfs-2024-09-25");let b=await R(f.providerOptions),d=await U(f.providerOptions);a.push({type:"document",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"base64",media_type:"application/pdf",data:(0,c.convertToBase64)(f.data.data)},title:null!=(k=d.title)?k:f.filename,...d.context&&{context:d.context},...b&&{citations:{enabled:!0}},cache_control:m})}else if("text/plain"===f.mediaType){let b=await R(f.providerOptions),d=await U(f.providerOptions);a.push({type:"document",source:"url"===f.data.type?{type:"url",url:f.data.url.toString()}:{type:"text",media_type:"text/plain",data:"string"==typeof(J=f.data.data)?new TextDecoder().decode((0,c.convertBase64ToUint8Array)(J)):new TextDecoder().decode(J)},title:null!=(l=d.title)?l:f.filename,...d.context&&{context:d.context},...b&&{citations:{enabled:!0}},cache_control:m})}else throw new b.UnsupportedFunctionalityError({functionality:`media type: ${f.mediaType}`})}}}}break;case"tool":for(let b=0;b<g.length;b++){let f,h=g[b];if("tool-approval-response"===h.type)continue;let i=h.output,j="providerOptions"in i?i.providerOptions:"content"===i.type?null==(m=i.value.find(a=>null!=a.providerOptions))?void 0:m.providerOptions:void 0,k=b===g.length-1,l=null!=(o=null!=(n=P.getCacheControl(h.providerOptions,{type:"tool result part",canCache:!0}))?n:P.getCacheControl(j,{type:"tool result output",canCache:!0}))?o:k?P.getCacheControl(d.providerOptions,{type:"tool result message",canCache:!0}):void 0;switch(i.type){case"content":f=i.value.map(a=>{var b;switch(a.type){case"text":return{type:"text",text:a.text};case"file":{let b=(0,c.getTopLevelMediaType)(a.mediaType);if("url"===a.data.type){if("image"===b)return{type:"image",source:{type:"url",url:a.data.url.toString()}};return{type:"document",source:{type:"url",url:a.data.url.toString()}}}if("data"===a.data.type){if("image"===b)return{type:"image",source:{type:"base64",media_type:(0,c.resolveFullMediaType)({part:a}),data:(0,c.convertToBase64)(a.data.data)}};if("application/pdf"===(0,c.resolveFullMediaType)({part:a}))return M.add("pdfs-2024-09-25"),{type:"document",source:{type:"base64",media_type:"application/pdf",data:(0,c.convertToBase64)(a.data.data)}};e.push({type:"other",message:`unsupported tool content part type: ${a.type} with media type: ${a.mediaType}`});return}e.push({type:"other",message:`unsupported tool content part type: ${a.type} with data type: ${a.data.type}`});return}case"custom":{let c=null==(b=a.providerOptions)?void 0:b.anthropic;if((null==c?void 0:c.type)==="tool-reference")return{type:"tool_reference",tool_name:c.toolName};e.push({type:"other",message:"unsupported custom tool content part"});return}default:return void e.push({type:"other",message:`unsupported tool content part type: ${a.type}`})}}).filter(c.isNonNullable);break;case"text":case"error-text":f=i.value;break;case"execution-denied":f=null!=(s=i.reason)?s:"Tool call execution denied.";break;default:f=JSON.stringify(i.value)}a.push({type:"tool_result",tool_use_id:h.toolCallId,content:f,is_error:"error-text"===i.type||"error-json"===i.type||void 0,cache_control:l})}break;default:throw Error(`Unsupported role: ${f}`)}}Q.push({role:"user",content:a});break}case"assistant":{let a=[],b=new Set;for(let h=0;h<f.messages.length;h++){let i=f.messages[h],j=h===f.messages.length-1,{content:k}=i;for(let f=0;f<k.length;f++){let h=k[f],l=f===k.length-1,m=null!=(u=P.getCacheControl(h.providerOptions,{type:"assistant message part",canCache:!0}))?u:l?P.getCacheControl(i.providerOptions,{type:"assistant message",canCache:!0}):void 0;switch(h.type){case"text":{let b=null==(w=h.providerOptions)?void 0:w.anthropic;(null==b?void 0:b.type)==="compaction"?a.push({type:"compaction",content:h.text,cache_control:m}):a.push({type:"text",text:q&&j&&l?h.text.trim():h.text,...(null==b?void 0:b.citations)!=null&&{citations:b.citations},cache_control:m});break}case"reasoning":if(d){let b=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:h.providerOptions,schema:p});null!=b?null!=b.signature?(P.getCacheControl(h.providerOptions,{type:"thinking block",canCache:!1}),a.push({type:"thinking",thinking:h.text,signature:b.signature})):null!=b.redactedData?(P.getCacheControl(h.providerOptions,{type:"redacted thinking block",canCache:!1}),a.push({type:"redacted_thinking",data:b.redactedData})):e.push({type:"other",message:"unsupported reasoning metadata"}):e.push({type:"other",message:"unsupported reasoning metadata"})}else e.push({type:"other",message:"sending reasoning content is disabled for this model"});break;case"tool-call":{let c=af(h.providerOptions);if(h.providerExecuted){let d=g.toProviderToolName(h.toolName);if((null==(y=null==(x=h.providerOptions)?void 0:x.anthropic)?void 0:y.type)==="mcp-tool-use"){b.add(h.toolCallId);let c=null==(A=null==(z=h.providerOptions)?void 0:z.anthropic)?void 0:A.serverName;if(null==c||"string"!=typeof c){e.push({type:"other",message:"mcp tool use server name is required and must be a string"});break}a.push({type:"mcp_tool_use",id:h.toolCallId,name:h.toolName,input:h.input,server_name:c,cache_control:m})}else if("code_execution"===d&&null!=h.input&&"object"==typeof h.input&&"type"in h.input&&"string"==typeof h.input.type&&("bash_code_execution"===h.input.type||"text_editor_code_execution"===h.input.type)){let{type:b,...d}=h.input;a.push({type:"server_tool_use",id:h.toolCallId,name:b,input:d,...c&&{caller:c},cache_control:m})}else if("code_execution"===d&&null!=h.input&&"object"==typeof h.input&&"type"in h.input&&"programmatic-tool-call"===h.input.type){let{type:b,...d}=h.input;a.push({type:"server_tool_use",id:h.toolCallId,name:"code_execution",input:d,...c&&{caller:c},cache_control:m})}else"code_execution"===d||"web_fetch"===d||"web_search"===d||"tool_search_tool_regex"===d||"tool_search_tool_bm25"===d?a.push({type:"server_tool_use",id:h.toolCallId,name:d,input:h.input,...c&&{caller:c},cache_control:m}):"advisor"===d?a.push({type:"server_tool_use",id:h.toolCallId,name:"advisor",input:{},...c&&{caller:c},cache_control:m}):e.push({type:"other",message:`provider executed tool call for tool ${h.toolName} is not supported`});break}a.push({type:"tool_use",id:h.toolCallId,name:h.toolName,input:"object"!=typeof(K=h.input)||null===K||Array.isArray(K)?{rawInvalidInput:K}:K,...c&&{caller:c},cache_control:m});break}case"tool-result":{let d=g.toProviderToolName(h.toolName),f=af(h.providerOptions);if(b.has(h.toolCallId)){let b=h.output;if("json"!==b.type&&"error-json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}a.push({type:"mcp_tool_result",tool_use_id:h.toolCallId,is_error:"error-json"===b.type,content:b.value,cache_control:m})}else if("code_execution"===d){let b=h.output;if("error-text"===b.type||"error-json"===b.type){let d={};try{"string"==typeof b.value?d=(0,c.secureJsonParse)(b.value):"object"==typeof b.value&&null!==b.value&&(d=b.value)}catch(a){}"code_execution_tool_result_error"===d.type?a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:"code_execution_tool_result_error",error_code:null!=(B=d.errorCode)?B:"unknown"},cache_control:m}):a.push({type:"bash_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:{type:"bash_code_execution_tool_result_error",error_code:null!=(C=d.errorCode)?C:"unknown"}});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}if(null==b.value||"object"!=typeof b.value||!("type"in b.value)||"string"!=typeof b.value.type){e.push({type:"other",message:`provider executed tool result output value is not a valid code execution result for tool ${h.toolName}`});break}if("code_execution_result"===b.value.type){let d=await (0,c.validateTypes)({value:b.value,schema:T});a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(D=d.content)?D:[]},cache_control:m})}else if("encrypted_code_execution_result"===b.value.type){let d=await (0,c.validateTypes)({value:b.value,schema:Z});"encrypted_code_execution_result"===d.type&&a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,encrypted_stdout:d.encrypted_stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(E=d.content)?E:[]},cache_control:m})}else{let d=await (0,c.validateTypes)({value:b.value,schema:W});"code_execution_result"===d.type?a.push({type:"code_execution_tool_result",tool_use_id:h.toolCallId,content:{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:null!=(F=d.content)?F:[]},cache_control:m}):"bash_code_execution_result"===d.type||"bash_code_execution_tool_result_error"===d.type?a.push({type:"bash_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:"bash_code_execution_result"===d.type?{type:d.type,stdout:d.stdout,stderr:d.stderr,return_code:d.return_code,content:d.content}:d}):a.push({type:"text_editor_code_execution_tool_result",tool_use_id:h.toolCallId,cache_control:m,content:d})}break}if("web_fetch"===d){let b=h.output;if("error-json"===b.type){a.push({type:"web_fetch_tool_result",tool_use_id:h.toolCallId,content:{type:"web_fetch_tool_result_error",error_code:null!=(H=ad(b.value).errorCode)?H:"unavailable"},...f&&{caller:f},cache_control:m});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:O});a.push({type:"web_fetch_tool_result",tool_use_id:h.toolCallId,content:{type:"web_fetch_result",url:d.url,retrieved_at:d.retrievedAt,content:{type:"document",title:d.content.title,citations:d.content.citations,source:{type:d.content.source.type,media_type:d.content.source.mediaType,data:d.content.source.data}}},...f&&{caller:f},cache_control:m});break}if("web_search"===d){let b=h.output;if("error-json"===b.type){a.push({type:"web_search_tool_result",tool_use_id:h.toolCallId,content:{type:"web_search_tool_result_error",error_code:null!=(I=ad(b.value).errorCode)?I:"unavailable"},...f&&{caller:f},cache_control:m});break}if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:G});a.push({type:"web_search_tool_result",tool_use_id:h.toolCallId,content:d.map(a=>({url:a.url,title:a.title,page_age:a.pageAge,encrypted_content:a.encryptedContent,type:a.type})),...f&&{caller:f},cache_control:m});break}if("tool_search_tool_regex"===d||"tool_search_tool_bm25"===d){let b=h.output;if("json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=(await (0,c.validateTypes)({value:b.value,schema:aa})).map(a=>({type:"tool_reference",tool_name:a.toolName}));a.push({type:"tool_search_tool_result",tool_use_id:h.toolCallId,content:{type:"tool_search_tool_search_result",tool_references:d},cache_control:m});break}if("advisor"===d){let b=h.output;if("json"!==b.type&&"error-json"!==b.type){e.push({type:"other",message:`provider executed tool result output type ${b.type} for tool ${h.toolName} is not supported`});break}let d=await (0,c.validateTypes)({value:b.value,schema:v});"advisor_result"===d.type?a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_result",text:d.text,...void 0!==d.stopReason&&{stop_reason:d.stopReason}},cache_control:m}):"advisor_redacted_result"===d.type?a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_redacted_result",encrypted_content:d.encryptedContent,...void 0!==d.stopReason&&{stop_reason:d.stopReason}},cache_control:m}):a.push({type:"advisor_tool_result",tool_use_id:h.toolCallId,content:{type:"advisor_tool_result_error",error_code:d.errorCode},cache_control:m});break}e.push({type:"other",message:`provider executed tool result for tool ${h.toolName} is not supported`})}}}}Q.push({role:"assistant",content:function(a){let b=[],c=[];function d(){b.push(...c.filter(a=>"tool_use"!==a.type),...c.filter(a=>"tool_use"===a.type)),c=[]}for(let e of a)"thinking"===e.type||"redacted_thinking"===e.type?(d(),b.push(e)):c.push(e);return d(),b}(a)});break}default:throw Error(`content type: ${t}`)}}return{prompt:{system:L,messages:Q},betas:M}}function af(a){var b;let c=null==(b=null==a?void 0:a.anthropic)?void 0:b.caller;return((null==c?void 0:c.type)==="code_execution_20250825"||(null==c?void 0:c.type)==="code_execution_20260120")&&c.toolId?{type:c.type,tool_id:c.toolId}:(null==c?void 0:c.type)==="direct"?{type:"direct"}:void 0}function ag({finishReason:a,isJsonResponseFromTool:b}){switch(a){case"pause_turn":case"end_turn":case"stop_sequence":return"stop";case"refusal":return"content-filter";case"tool_use":return b?"stop":"tool-calls";case"max_tokens":case"model_context_window_exceeded":return"length";default:return"other"}}var ah=new Set(["date-time","time","date","duration","email","hostname","uri","ipv4","ipv6","uuid"]),ai=["minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","minLength","maxLength","pattern","minItems","maxItems","uniqueItems","minProperties","maxProperties","not"];function aj(a){return"boolean"!=typeof a&&(0,c.isRecord)(a)?ak(a):a}function ak(a){var b;let c,d={};if(null!=a.$ref)return{$ref:a.$ref};null!=a.$schema&&(d.$schema=a.$schema),null!=a.$id&&(d.$id=a.$id),null!=a.title&&(d.title=a.title),null!=a.description&&(d.description=a.description),void 0!==a.default&&(d.default=a.default),void 0!==a.const&&(d.const=a.const),null!=a.enum&&(d.enum=a.enum),null!=a.type&&(d.type=a.type),null!=a.anyOf?d.anyOf=a.anyOf.map(aj):null!=a.oneOf&&(d.anyOf=a.oneOf.map(aj)),null!=a.allOf&&(d.allOf=a.allOf.map(aj)),null!=a.definitions&&(d.definitions=Object.fromEntries(Object.entries(a.definitions).map(([a,b])=>[a,aj(b)]))),null!=a.$defs&&(d.$defs=Object.fromEntries(Object.entries(a.$defs).map(([a,b])=>[a,aj(b)]))),("object"===a.type||null!=a.properties)&&(null!=a.properties&&(d.properties=Object.fromEntries(Object.entries(a.properties).map(([a,b])=>[a,aj(b)]))),d.additionalProperties=!1,null!=a.required&&(d.required=a.required)),null!=a.items&&(d.items=Array.isArray(a.items)?a.items.map(aj):aj(a.items)),"string"==typeof a.format&&ah.has(a.format)&&(d.format=a.format);let e=(b=a,c=ai.flatMap(a=>{var c;let d=b[a];return null==d||!1===d?[]:`${a.replace(/[A-Z]/g,a=>` ${a.toLowerCase()}`)}: ${"string"==typeof(c=d)?c:JSON.stringify(c)}`}),"string"!=typeof b.format||ah.has(b.format)||c.push(`format: ${b.format}`),0===c.length?void 0:`${c.join("; ")}.`);return null!=e&&(d.description=null==d.description?e:`${d.description}
|
|
166
167
|
${e}`),d}function al(a,b,c){var d,e;if("web_search_result_location"===a.type)return{type:"source",sourceType:"url",id:c(),url:a.url,title:null!=(d=a.title)?d:void 0,providerMetadata:{anthropic:{citedText:a.cited_text,encryptedIndex:a.encrypted_index}}};if("page_location"!==a.type&&"char_location"!==a.type)return;let f=b[a.document_index];if(f)return{type:"source",sourceType:"document",id:c(),mediaType:f.mediaType,title:null!=(e=a.document_title)?e:f.title,filename:f.filename,providerMetadata:{anthropic:"page_location"===a.type?{citedText:a.cited_text,startPageNumber:a.start_page_number,endPageNumber:a.end_page_number}:{citedText:a.cited_text,startCharIndex:a.start_char_index,endCharIndex:a.end_char_index}}}}function am(a){return null==a?void 0:{type:a.type,toolId:"tool_id"in a?a.tool_id:void 0}}function an(a){let b=am(a);return null==b?{}:{providerMetadata:{anthropic:{caller:b}}}}var ao=class a{constructor(a,b){var d;this.specificationVersion="v4",this.modelId=a,this.config=b,this.generateId=null!=(d=b.generateId)?d:c.generateId}static[e.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[e.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}supportsUrl(a){return"https:"===a.protocol}get provider(){return this.config.provider}get providerOptionsName(){let a=this.config.provider,b=a.indexOf(".");return -1===b?a:a.substring(0,b)}get supportedUrls(){var a,b,c;return null!=(c=null==(b=(a=this.config).supportedUrls)?void 0:b.call(a))?c:{}}async getArgs({userSuppliedBetas:a,prompt:b,maxOutputTokens:d,temperature:e,topP:f,topK:g,frequencyPenalty:h,presencePenalty:i,stopSequences:j,responseFormat:k,seed:l,tools:m,toolChoice:n,reasoning:o,providerOptions:p,stream:q}){var r,u,v,w,x,y,z,A,B,C,D,E;let F=[];null!=h&&F.push({type:"unsupported",feature:"frequencyPenalty"}),null!=i&&F.push({type:"unsupported",feature:"presencePenalty"}),null!=l&&F.push({type:"unsupported",feature:"seed"}),null!=e&&e>1?(F.push({type:"unsupported",feature:"temperature",details:`${e} exceeds anthropic maximum of 1.0. clamped to 1.0`}),e=1):null!=e&&e<0&&(F.push({type:"unsupported",feature:"temperature",details:`${e} is below anthropic minimum of 0. clamped to 0`}),e=0),(null==k?void 0:k.type)==="json"&&null==k.schema&&F.push({type:"unsupported",feature:"responseFormat",details:"JSON response format requires a schema. The response format is ignored."});let G=this.providerOptionsName,H=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:p,schema:s}),I="anthropic"!==G?await (0,c.parseProviderOptions)({provider:G,providerOptions:p,schema:s}):null,J=null!=I,K=Object.assign({},null!=H?H:{},null!=I?I:{}),{maxOutputTokens:L,supportsStructuredOutput:M,supportsAdaptiveThinking:N,rejectsSamplingParameters:O,supportsXhighEffort:P,rejectsThinkingDisabledAboveHighEffort:Q,isKnownModel:S}=function(a){if(a.includes("claude-opus-5"))return{maxOutputTokens:128e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!0,rejectsSamplingParameters:!0,supportsXhighEffort:!0,rejectsThinkingDisabledAboveHighEffort:!0,isKnownModel:!0};if(a.includes("claude-opus-4-8")||a.includes("claude-opus-4-7")||a.includes("claude-fable-5")||a.includes("claude-sonnet-5"))return{maxOutputTokens:128e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!0,rejectsSamplingParameters:!0,supportsXhighEffort:!0,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};if(a.includes("claude-sonnet-4-6")||a.includes("claude-opus-4-6"))return{maxOutputTokens:128e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!0,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};if(a.includes("claude-sonnet-4-5")||a.includes("claude-opus-4-5")||a.includes("claude-haiku-4-5"))return{maxOutputTokens:64e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};if(a.includes("claude-opus-4-1"))return{maxOutputTokens:32e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};else if(/claude-sonnet-4(?:-|@)/.test(a))return{maxOutputTokens:64e3,supportsStructuredOutput:!1,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};else if(/claude-opus-4(?:-|@)/.test(a))return{maxOutputTokens:32e3,supportsStructuredOutput:!1,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};else if(a.includes("claude-3-haiku"))return{maxOutputTokens:4096,supportsStructuredOutput:!1,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!0};else if(/claude-(?:instant(?:-|$)|v?2(?=$|[-.:])|3(?=$|[-.]))/.test(a))return{maxOutputTokens:4096,supportsStructuredOutput:!1,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!1};else if(a.includes("claude-"))return{maxOutputTokens:128e3,supportsStructuredOutput:!0,supportsAdaptiveThinking:!0,rejectsSamplingParameters:!0,supportsXhighEffort:!0,rejectsThinkingDisabledAboveHighEffort:!0,isKnownModel:!1};else return{maxOutputTokens:4096,supportsStructuredOutput:!1,supportsAdaptiveThinking:!1,rejectsSamplingParameters:!1,supportsXhighEffort:!1,rejectsThinkingDisabledAboveHighEffort:!1,isKnownModel:!1}}(this.modelId);S||null!=d||F.push({type:"compatibility",feature:"maxOutputTokens",details:`The model "${this.modelId}" is unknown. The max output tokens have been limited to ${L}. Set maxOutputTokens explicitly to override this limit.`}),O&&(null!=e&&(F.push({type:"unsupported",feature:"temperature",details:`temperature is not supported by ${this.modelId} and will be ignored`}),e=void 0),null!=g&&(F.push({type:"unsupported",feature:"topK",details:`topK is not supported by ${this.modelId} and will be ignored`}),g=void 0),null!=f&&(F.push({type:"unsupported",feature:"topP",details:`topP is not supported by ${this.modelId} and will be ignored`}),f=void 0));let T=S||this.modelId.includes("claude-"),U=(null==(r=this.config.supportsNativeStructuredOutput)||r)&&M,V=(null==(u=this.config.supportsStrictTools)||u)&&M,W=null!=(v=null==K?void 0:K.structuredOutputMode)?v:"auto",X="outputFormat"===W||"auto"===W&&U,Y=(null==k?void 0:k.type)!=="json"||null==k.schema||X?void 0:{type:"function",name:"json",description:"Respond with a JSON object.",inputSchema:k.schema};null!=Y&&(null==K?void 0:K.disableParallelToolUse)===!1&&F.push({type:"unsupported",feature:"providerOptions.anthropic.disableParallelToolUse",details:"`disableParallelToolUse: false` is ignored when using the JSON response tool. Parallel tool use is disabled to ensure a single coherent JSON tool call."});let Z=null==K?void 0:K.contextManagement,$=new t,_=(0,c.createToolNameMapping)({tools:m,providerToolNames:{"anthropic.code_execution_20250522":"code_execution","anthropic.code_execution_20250825":"code_execution","anthropic.code_execution_20260120":"code_execution","anthropic.computer_20241022":"computer","anthropic.computer_20250124":"computer","anthropic.text_editor_20241022":"str_replace_editor","anthropic.text_editor_20250124":"str_replace_editor","anthropic.text_editor_20250429":"str_replace_based_edit_tool","anthropic.text_editor_20250728":"str_replace_based_edit_tool","anthropic.bash_20241022":"bash","anthropic.bash_20250124":"bash","anthropic.memory_20250818":"memory","anthropic.web_search_20250305":"web_search","anthropic.web_search_20260209":"web_search","anthropic.web_fetch_20250910":"web_fetch","anthropic.web_fetch_20260209":"web_fetch","anthropic.tool_search_regex_20251119":"tool_search_tool_regex","anthropic.tool_search_bm25_20251119":"tool_search_tool_bm25","anthropic.advisor_20260301":"advisor"}}),{prompt:aa,betas:ab}=await ae({prompt:b,sendReasoning:null==(w=null==K?void 0:K.sendReasoning)||w,warnings:F,cacheControlValidator:$,toolNameMapping:_});if((0,c.isCustomReasoning)(o)&&(null==K?void 0:K.effort)==null){let a=function({reasoning:a,supportsAdaptiveThinking:b,supportsXhighEffort:d,maxOutputTokensForModel:e,warnings:f}){if(!(0,c.isCustomReasoning)(a))return;if("none"===a)return{thinking:{type:"disabled"}};if(b)return{thinking:{type:"adaptive",display:"summarized"},effort:(0,c.mapReasoningToProviderEffort)({reasoning:a,effortMap:{minimal:"low",low:"low",medium:"medium",high:"high",xhigh:d?"xhigh":"max"},warnings:f})};let g=(0,c.mapReasoningToProviderBudget)({reasoning:a,maxOutputTokens:e,maxReasoningBudget:e,warnings:f});if(null!=g)return{thinking:{type:"enabled",budgetTokens:g}}}({reasoning:o,supportsAdaptiveThinking:N,supportsXhighEffort:P,maxOutputTokensForModel:L,warnings:F});null!=a&&(null==K.thinking&&(K.thinking=a.thinking),null!=a.effort&&(null==(x=K.thinking)?void 0:x.type)!=="disabled"&&(K.effort=a.effort))}Q&&(null==(y=null==K?void 0:K.thinking)?void 0:y.type)==="disabled"&&("xhigh"===K.effort||"max"===K.effort)&&(F.push({type:"unsupported",feature:"providerOptions.anthropic.effort",details:`effort '${K.effort}' is not supported by ${this.modelId} when thinking is disabled. The effort has been lowered to 'high'.`}),K.effort="high");let ac=null==(z=null==K?void 0:K.thinking)?void 0:z.type,ad="enabled"===ac||"adaptive"===ac,af=(null==K?void 0:K.thinking)!=null&&"blockBinding"in K.thinking?K.thinking.blockBinding:void 0,ag=ad||"disabled"===ac||null!=af,ah="enabled"===ac?null==(A=null==K?void 0:K.thinking)?void 0:A.budgetTokens:void 0,ai="adaptive"===ac?null==(B=null==K?void 0:K.thinking)?void 0:B.display:void 0,aj=null!=d?d:L,al={model:this.modelId,max_tokens:aj,temperature:e,top_k:g,top_p:f,stop_sequences:j,...ag&&{thinking:{...null!=ac&&{type:ac},...null!=ah&&{budget_tokens:ah},...null!=ai&&{display:ai},...null!=af&&{block_binding:{prefix_mismatch_behavior:af.prefixMismatchBehavior}}}},...((null==K?void 0:K.effort)||(null==K?void 0:K.taskBudget)||X&&(null==k?void 0:k.type)==="json"&&null!=k.schema)&&{output_config:{...(null==K?void 0:K.effort)&&{effort:K.effort},...(null==K?void 0:K.taskBudget)&&{task_budget:{type:K.taskBudget.type,total:K.taskBudget.total,...null!=K.taskBudget.remaining&&{remaining:K.taskBudget.remaining}}},...X&&(null==k?void 0:k.type)==="json"&&null!=k.schema&&{format:{type:"json_schema",schema:ak(k.schema)}}}},...(null==K?void 0:K.speed)&&{speed:K.speed},...(null==K?void 0:K.serviceTier)&&{service_tier:K.serviceTier},...(null==K?void 0:K.inferenceGeo)&&{inference_geo:K.inferenceGeo},...(null==K?void 0:K.fallbacks)!=null&&("default"===K.fallbacks||K.fallbacks.length>0)&&{fallbacks:K.fallbacks},...(null==K?void 0:K.cacheControl)&&{cache_control:K.cacheControl},...(null==(C=null==K?void 0:K.metadata)?void 0:C.userId)!=null&&{metadata:{user_id:K.metadata.userId}},...(null==K?void 0:K.mcpServers)&&K.mcpServers.length>0&&{mcp_servers:K.mcpServers.map(a=>({type:a.type,name:a.name,url:a.url,authorization_token:a.authorizationToken,tool_configuration:a.toolConfiguration?{allowed_tools:a.toolConfiguration.allowedTools,enabled:a.toolConfiguration.enabled}:void 0}))},...(null==K?void 0:K.container)&&{container:K.container.skills&&K.container.skills.length>0?{id:K.container.id,skills:K.container.skills.map(a=>({type:a.type,skill_id:"custom"===a.type?(0,c.resolveProviderReference)({reference:a.providerReference,provider:"anthropic"}):a.skillId,version:a.version}))}:K.container.id},system:aa.system,messages:aa.messages,...Z&&{context_management:{edits:Z.edits.map(a=>{let b=a.type;switch(b){case"clear_tool_uses_20250919":return{type:a.type,...void 0!==a.trigger&&{trigger:a.trigger},...void 0!==a.keep&&{keep:a.keep},...void 0!==a.clearAtLeast&&{clear_at_least:a.clearAtLeast},...void 0!==a.clearToolInputs&&{clear_tool_inputs:a.clearToolInputs},...void 0!==a.excludeTools&&{exclude_tools:a.excludeTools}};case"clear_thinking_20251015":return{type:a.type,...void 0!==a.keep&&{keep:a.keep}};case"compact_20260112":return{type:a.type,...void 0!==a.trigger&&{trigger:a.trigger},...void 0!==a.pauseAfterCompaction&&{pause_after_compaction:a.pauseAfterCompaction},...void 0!==a.instructions&&{instructions:a.instructions}};default:F.push({type:"other",message:`Unknown context management strategy: ${b}`});return}}).filter(a=>void 0!==a)}}};ad?("enabled"===ac&&null==ah&&(F.push({type:"compatibility",feature:"extended thinking",details:"thinking budget is required when thinking is enabled. using default budget of 1024 tokens."}),al.thinking={type:"enabled",budget_tokens:1024},ah=1024),null!=al.temperature&&(al.temperature=void 0,F.push({type:"unsupported",feature:"temperature",details:"temperature is not supported when thinking is enabled"})),null!=g&&(al.top_k=void 0,F.push({type:"unsupported",feature:"topK",details:"topK is not supported when thinking is enabled"})),null!=f&&(al.top_p=void 0,F.push({type:"unsupported",feature:"topP",details:"topP is not supported when thinking is enabled"})),al.max_tokens=aj+(null!=ah?ah:0)):T&&null!=f&&null!=e&&(F.push({type:"unsupported",feature:"topP",details:"topP is not supported when temperature is set. topP is ignored."}),al.top_p=void 0),S&&al.max_tokens>L&&(null!=d&&F.push({type:"unsupported",feature:"maxOutputTokens",details:`${al.max_tokens} (maxOutputTokens + thinkingBudget) is greater than ${this.modelId} ${L} max output tokens. The max output tokens have been limited to ${L}.`}),al.max_tokens=L),(null==K?void 0:K.mcpServers)&&K.mcpServers.length>0&&ab.add("mcp-client-2025-04-04"),Z&&(ab.add("context-management-2025-06-27"),Z.edits.some(a=>"compact_20260112"===a.type)&&ab.add("compact-2026-01-12")),(null==K?void 0:K.container)&&K.container.skills&&K.container.skills.length>0&&(ab.add("code-execution-2025-08-25"),ab.add("skills-2025-10-02"),ab.add("files-api-2025-04-14"),(null==m?void 0:m.some(a=>"provider"===a.type&&("anthropic.code_execution_20250825"===a.id||"anthropic.code_execution_20260120"===a.id)))||F.push({type:"other",message:"code execution tool is required when using skills"})),(null==K?void 0:K.taskBudget)&&ab.add("task-budgets-2026-03-13"),(null==K?void 0:K.speed)==="fast"&&ab.add("fast-mode-2026-02-01"),"updates"===ai&&ab.add("thinking-display-updates-2026-08-18"),null!=af&&ab.add("thinking-binding-controls-2026-08-01"),(null==K?void 0:K.fallbacks)==="default"?ab.add("server-side-fallback-2026-07-01"):(null==K?void 0:K.fallbacks)&&K.fallbacks.length>0&&ab.add("server-side-fallback-2026-06-01");let am=q&&(null==(D=null==K?void 0:K.toolStreaming)||D),{tools:an,toolChoice:ao,toolWarnings:ap,betas:aq}=await R(null!=Y?{tools:[...null!=m?m:[],Y],toolChoice:{type:"required"},disableParallelToolUse:!0,cacheControlValidator:$,supportsStructuredOutput:!1,supportsStrictTools:V,defaultEagerInputStreaming:am}:{tools:null!=m?m:[],toolChoice:n,disableParallelToolUse:null==K?void 0:K.disableParallelToolUse,cacheControlValidator:$,supportsStructuredOutput:U,supportsStrictTools:V,defaultEagerInputStreaming:am}),ar=$.getWarnings();return{args:{...al,tools:an,tool_choice:ao,stream:!0===q||void 0},warnings:[...F,...ap,...ar],betas:new Set([...ab,...aq,...a,...null!=(E=null==K?void 0:K.anthropicBeta)?E:[]]),usesJsonResponseTool:null!=Y,toolNameMapping:_,providerOptionsName:G,usedCustomProviderKey:J}}async getHeaders({betas:a,headers:b}){return(0,c.combineHeaders)(this.config.headers?await (0,c.resolve)(this.config.headers):void 0,b,a.size>0?{"anthropic-beta":Array.from(a).join(",")}:{})}async getBetasFromHeaders(a){var b,d;let e=this.config.headers?await (0,c.resolve)(this.config.headers):void 0,f=null!=(b=null==e?void 0:e["anthropic-beta"])?b:"",g=null!=(d=null==a?void 0:a["anthropic-beta"])?d:"";return new Set([...f.toLowerCase().split(","),...g.toLowerCase().split(",")].map(a=>a.trim()).filter(a=>""!==a))}buildRequestUrl(a){var b,c,d;return null!=(d=null==(c=(b=this.config).buildRequestUrl)?void 0:c.call(b,this.config.baseURL,a))?d:`${this.config.baseURL}/messages`}transformRequestBody(a,b){var c,d,e;return null!=(e=null==(d=(c=this.config).transformRequestBody)?void 0:d.call(c,a,b))?e:a}extractCitationDocuments(a){return a.filter(a=>"user"===a.role).flatMap(a=>a.content).filter(a=>{var b,c;if("file"!==a.type||"application/pdf"!==a.mediaType&&"text/plain"!==a.mediaType)return!1;let d=null==(b=a.providerOptions)?void 0:b.anthropic,e=null==d?void 0:d.citations;return null!=(c=null==e?void 0:e.enabled)&&c}).map(a=>{var b;return{title:null!=(b=a.filename)?b:"Untitled Document",filename:a.filename,mediaType:a.mediaType}})}async doGenerate(a){var b,d,e,f,h,i,j,k,l,m,o,p;let q,r,s,{args:t,warnings:u,betas:v,usesJsonResponseTool:w,toolNameMapping:x,providerOptionsName:y,usedCustomProviderKey:z}=await this.getArgs({...a,stream:!1,userSuppliedBetas:await this.getBetasFromHeaders(a.headers)}),A=[...this.extractCitationDocuments(a.prompt)],B=ap(t.tools),{responseHeaders:C,value:D,rawValue:E}=await (0,c.postJsonToApi)({url:this.buildRequestUrl(!1),headers:await this.getHeaders({betas:v,headers:a.headers}),body:this.transformRequestBody(t,v),failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(n),abortSignal:a.abortSignal,fetch:this.config.fetch}),F=[],G={},H={},I=!1;for(let a of D.content)switch(a.type){case"text":if(!w){let c=null==(b=a.citations)?void 0:b.filter(a=>"web_search_result_location"===a.type);if(F.push({type:"text",text:a.text,...null!=c&&c.length>0&&{providerMetadata:{anthropic:{citations:c}}}}),a.citations)for(let b of a.citations){let a=al(b,A,this.generateId);a&&F.push(a)}}break;case"thinking":F.push({type:"reasoning",text:a.thinking,providerMetadata:{anthropic:{signature:a.signature}}});break;case"redacted_thinking":F.push({type:"reasoning",text:"",providerMetadata:{anthropic:{redactedData:a.data}}});break;case"container_upload":F.push({type:"custom",kind:"anthropic.container_upload",providerMetadata:{anthropic:{fileId:a.file_id}}});break;case"compaction":F.push({type:"text",text:a.content,providerMetadata:{anthropic:{type:"compaction"}}});break;case"tool_use":w&&"json"===a.name?(I=!0,F.push({type:"text",text:JSON.stringify(a.input)})):F.push({type:"tool-call",toolCallId:a.id,toolName:a.name,input:JSON.stringify(a.input),...an(a.caller)});break;case"server_tool_use":if("text_editor_code_execution"===a.name||"bash_code_execution"===a.name)F.push({type:"tool-call",toolCallId:a.id,toolName:x.toCustomToolName("code_execution"),input:JSON.stringify({type:a.name,...a.input}),providerExecuted:!0,...B&&1?{dynamic:!0}:{},...an(a.caller)});else if("web_search"===a.name||"code_execution"===a.name||"web_fetch"===a.name){let b="code_execution"===a.name&&null!=a.input&&"object"==typeof a.input&&"code"in a.input&&!("type"in a.input)?{type:"programmatic-tool-call",...a.input}:a.input;F.push({type:"tool-call",toolCallId:a.id,toolName:x.toCustomToolName(a.name),input:JSON.stringify(b),providerExecuted:!0,...B&&"code_execution"===a.name?{dynamic:!0}:{},...an(a.caller)})}else"tool_search_tool_regex"===a.name||"tool_search_tool_bm25"===a.name?(H[a.id]=a.name,F.push({type:"tool-call",toolCallId:a.id,toolName:x.toCustomToolName(a.name),input:JSON.stringify(a.input),providerExecuted:!0,...an(a.caller)})):"advisor"===a.name&&F.push({type:"tool-call",toolCallId:a.id,toolName:x.toCustomToolName("advisor"),input:JSON.stringify(a.input),providerExecuted:!0,...an(a.caller)});break;case"mcp_tool_use":G[a.id]={type:"tool-call",toolCallId:a.id,toolName:a.name,input:JSON.stringify(a.input),providerExecuted:!0,dynamic:!0,providerMetadata:{anthropic:{type:"mcp-tool-use",serverName:a.server_name}}},F.push(G[a.id]);break;case"mcp_tool_result":F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:G[a.tool_use_id].toolName,isError:a.is_error,result:a.content,dynamic:!0,providerMetadata:G[a.tool_use_id].providerMetadata});break;case"web_fetch_tool_result":"web_fetch_result"===a.content.type?(A.push({title:null!=(d=a.content.content.title)?d:a.content.url,mediaType:a.content.content.source.media_type}),F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("web_fetch"),result:{type:"web_fetch_result",url:a.content.url,retrievedAt:a.content.retrieved_at,content:{type:a.content.content.type,title:a.content.content.title,citations:a.content.content.citations,source:{type:a.content.content.source.type,mediaType:a.content.content.source.media_type,data:a.content.content.source.data}}},...an(a.caller)})):"web_fetch_tool_result_error"===a.content.type&&F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("web_fetch"),isError:!0,result:{type:"web_fetch_tool_result_error",errorCode:a.content.error_code},...an(a.caller)});break;case"web_search_tool_result":if(Array.isArray(a.content))for(let b of(F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("web_search"),result:a.content.map(a=>{var b;return{url:a.url,...null!=a.title?{title:a.title}:{},pageAge:null!=(b=a.page_age)?b:null,encryptedContent:a.encrypted_content,type:a.type}}),...an(a.caller)}),a.content))F.push({type:"source",sourceType:"url",id:this.generateId(),url:b.url,...null!=b.title?{title:b.title}:{},providerMetadata:{anthropic:{pageAge:null!=(e=b.page_age)?e:null}}});else F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("web_search"),isError:!0,result:{type:"web_search_tool_result_error",errorCode:a.content.error_code},...an(a.caller)});break;case"code_execution_tool_result":"code_execution_result"===a.content.type?F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("code_execution"),result:{type:a.content.type,stdout:a.content.stdout,stderr:a.content.stderr,return_code:a.content.return_code,content:null!=(f=a.content.content)?f:[]}}):"encrypted_code_execution_result"===a.content.type?F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("code_execution"),result:{type:a.content.type,encrypted_stdout:a.content.encrypted_stdout,stderr:a.content.stderr,return_code:a.content.return_code,content:null!=(h=a.content.content)?h:[]}}):"code_execution_tool_result_error"===a.content.type&&F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("code_execution"),isError:!0,result:{type:"code_execution_tool_result_error",errorCode:a.content.error_code}});break;case"bash_code_execution_tool_result":case"text_editor_code_execution_tool_result":F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName("code_execution"),result:a.content});break;case"tool_search_tool_result":{let b=H[a.tool_use_id];if(null==b){let a=x.toCustomToolName("tool_search_tool_bm25");x.toCustomToolName("tool_search_tool_regex"),b="tool_search_tool_bm25"!==a?"tool_search_tool_bm25":"tool_search_tool_regex"}"tool_search_tool_search_result"===a.content.type?F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName(b),result:a.content.tool_references.map(a=>({type:a.type,toolName:a.tool_name}))}):F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:x.toCustomToolName(b),isError:!0,result:{type:"tool_search_tool_result_error",errorCode:a.content.error_code}});break}case"advisor_tool_result":{let b=x.toCustomToolName("advisor");"advisor_result"===a.content.type?F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,result:{type:"advisor_result",text:a.content.text,...null!=a.content.stop_reason&&{stopReason:a.content.stop_reason}}}):"advisor_redacted_result"===a.content.type?F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,result:{type:"advisor_redacted_result",encryptedContent:a.content.encrypted_content,...null!=a.content.stop_reason&&{stopReason:a.content.stop_reason}}}):F.push({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,isError:!0,result:{type:"advisor_tool_result_error",errorCode:a.content.error_code}})}}return{content:F,finishReason:{unified:ag({finishReason:D.stop_reason,isJsonResponseFromTool:I}),raw:null!=(i=D.stop_reason)?i:void 0},usage:S({usage:D.usage}),request:{body:t},response:{id:null!=(j=D.id)?j:void 0,modelId:null!=(k=D.model)?k:void 0,headers:C,body:E},warnings:u,providerMetadata:(q=ar(D.stop_details),s={anthropic:r={usage:D.usage,stopSequence:null!=(l=D.stop_sequence)?l:null,...null!=q?{stopDetails:q}:{},iterations:D.usage.iterations?D.usage.iterations.map(a=>({type:a.type,...null!=a.model?{model:a.model}:{},inputTokens:a.input_tokens,outputTokens:a.output_tokens,...a.cache_creation_input_tokens?{cacheCreationInputTokens:a.cache_creation_input_tokens}:{},...a.cache_read_input_tokens?{cacheReadInputTokens:a.cache_read_input_tokens}:{}})):null,container:D.container?{expiresAt:D.container.expires_at,id:D.container.id,skills:null!=(o=null==(m=D.container.skills)?void 0:m.map(a=>({type:a.type,skillId:a.skill_id,version:a.version})))?o:null}:null,contextManagement:null!=(p=aq(D.context_management))?p:null}},z&&"anthropic"!==y&&(s[y]=r),s)}}async doStream(a){var d,e,f,h;let i,j,k,l,{args:m,warnings:n,betas:p,usesJsonResponseTool:q,toolNameMapping:r,providerOptionsName:s,usedCustomProviderKey:t}=await this.getArgs({...a,stream:!0,userSuppliedBetas:await this.getBetasFromHeaders(a.headers)}),u=[...this.extractCitationDocuments(a.prompt)],v=ap(m.tools),w=this.buildRequestUrl(!0),{responseHeaders:x,value:y}=await (0,c.postJsonToApi)({url:w,headers:await this.getHeaders({betas:p,headers:a.headers}),body:this.transformRequestBody(m,p),failedResponseHandler:g,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(o),abortSignal:a.abortSignal,fetch:this.config.fetch}),z={unified:"other",raw:void 0},A={input_tokens:0,output_tokens:0,cache_creation_input_tokens:0,cache_read_input_tokens:0,iterations:null},B={},C={},D={},E=null,F=null,G=null,H=!1,I=!1,J=!1,K=this.generateId,[L,M]=y.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:n})},transform(d,e){var f,g,h,m,n,o,p,w,x,y,L,M,N,O,P,Q,R;if(J)return;if(a.includeRawChunks&&e.enqueue({type:"raw",rawValue:d.rawValue}),!d.success)return void e.enqueue({type:"error",error:d.error});let T=d.value;switch(T.type){case"ping":return;case"content_block_start":{let a=T.content_block,b=a.type;if("fallback"===b)return;switch(l=b,b){case"text":if(q)return;B[T.index]={type:"text",citations:[]},e.enqueue({type:"text-start",id:String(T.index)});return;case"thinking":B[T.index]={type:"reasoning"},e.enqueue({type:"reasoning-start",id:String(T.index)});return;case"redacted_thinking":B[T.index]={type:"reasoning"},e.enqueue({type:"reasoning-start",id:String(T.index),providerMetadata:{anthropic:{redactedData:a.data}}});return;case"compaction":B[T.index]={type:"text",citations:[]},e.enqueue({type:"text-start",id:String(T.index),providerMetadata:{anthropic:{type:"compaction"}}});return;case"tool_use":if(q&&"json"===a.name)H=!0,B[T.index]={type:"text",citations:[]},e.enqueue({type:"text-start",id:String(T.index)});else{let b=am(a.caller),c=a.input&&Object.keys(a.input).length>0?JSON.stringify(a.input):"";B[T.index]={type:"tool-call",toolCallId:a.id,toolName:a.name,input:c,firstDelta:0===c.length,...b&&{caller:b}},e.enqueue({type:"tool-input-start",id:a.id,toolName:a.name})}return;case"server_tool_use":{let b=am(a.caller);if(["web_fetch","web_search","code_execution","text_editor_code_execution","bash_code_execution"].includes(a.name)){let c="text_editor_code_execution"===a.name||"bash_code_execution"===a.name?"code_execution":a.name,d="text_editor_code_execution"===a.name||"bash_code_execution"===a.name?a.name:"code_execution"===a.name?"programmatic-tool-call":void 0,f=r.toCustomToolName(c),g=null!=a.input&&"object"==typeof a.input&&Object.keys(a.input).length>0?JSON.stringify(a.input):"";B[T.index]={type:"tool-call",toolCallId:a.id,toolName:f,input:g,providerExecuted:!0,...v&&"code_execution"===c?{dynamic:!0}:{},firstDelta:0===g.length,providerToolName:c,providerToolInputType:d,...b&&{caller:b}},e.enqueue({type:"tool-input-start",id:a.id,toolName:f,providerExecuted:!0,...v&&"code_execution"===c?{dynamic:!0}:{}})}else if("tool_search_tool_regex"===a.name||"tool_search_tool_bm25"===a.name){D[a.id]=a.name;let c=r.toCustomToolName(a.name);B[T.index]={type:"tool-call",toolCallId:a.id,toolName:c,input:"",providerExecuted:!0,firstDelta:!0,providerToolName:a.name,...b&&{caller:b}},e.enqueue({type:"tool-input-start",id:a.id,toolName:c,providerExecuted:!0})}else if("advisor"===a.name){let c=r.toCustomToolName("advisor");B[T.index]={type:"tool-call",toolCallId:a.id,toolName:c,input:"{}",providerExecuted:!0,firstDelta:!0,providerToolName:a.name,...b&&{caller:b}},e.enqueue({type:"tool-input-start",id:a.id,toolName:c,providerExecuted:!0})}return}case"web_fetch_tool_result":"web_fetch_result"===a.content.type?(u.push({title:null!=(f=a.content.content.title)?f:a.content.url,mediaType:a.content.content.source.media_type}),e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("web_fetch"),result:{type:"web_fetch_result",url:a.content.url,retrievedAt:a.content.retrieved_at,content:{type:a.content.content.type,title:a.content.content.title,citations:a.content.content.citations,source:{type:a.content.content.source.type,mediaType:a.content.content.source.media_type,data:a.content.content.source.data}}},...an(a.caller)})):"web_fetch_tool_result_error"===a.content.type&&e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("web_fetch"),isError:!0,result:{type:"web_fetch_tool_result_error",errorCode:a.content.error_code},...an(a.caller)});return;case"web_search_tool_result":if(Array.isArray(a.content))for(let b of(e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("web_search"),result:a.content.map(a=>{var b;return{url:a.url,...null!=a.title?{title:a.title}:{},pageAge:null!=(b=a.page_age)?b:null,encryptedContent:a.encrypted_content,type:a.type}}),...an(a.caller)}),a.content))e.enqueue({type:"source",sourceType:"url",id:K(),url:b.url,...null!=b.title?{title:b.title}:{},providerMetadata:{anthropic:{pageAge:null!=(g=b.page_age)?g:null}}});else e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("web_search"),isError:!0,result:{type:"web_search_tool_result_error",errorCode:a.content.error_code},...an(a.caller)});return;case"code_execution_tool_result":"code_execution_result"===a.content.type?e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("code_execution"),result:{type:a.content.type,stdout:a.content.stdout,stderr:a.content.stderr,return_code:a.content.return_code,content:null!=(h=a.content.content)?h:[]}}):"encrypted_code_execution_result"===a.content.type?e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("code_execution"),result:{type:a.content.type,encrypted_stdout:a.content.encrypted_stdout,stderr:a.content.stderr,return_code:a.content.return_code,content:null!=(m=a.content.content)?m:[]}}):"code_execution_tool_result_error"===a.content.type&&e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("code_execution"),isError:!0,result:{type:"code_execution_tool_result_error",errorCode:a.content.error_code}});return;case"bash_code_execution_tool_result":case"text_editor_code_execution_tool_result":return void e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName("code_execution"),result:a.content});case"tool_search_tool_result":{let b=D[a.tool_use_id];if(null==b){let a=r.toCustomToolName("tool_search_tool_bm25");r.toCustomToolName("tool_search_tool_regex"),b="tool_search_tool_bm25"!==a?"tool_search_tool_bm25":"tool_search_tool_regex"}"tool_search_tool_search_result"===a.content.type?e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName(b),result:a.content.tool_references.map(a=>({type:a.type,toolName:a.tool_name}))}):e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:r.toCustomToolName(b),isError:!0,result:{type:"tool_search_tool_result_error",errorCode:a.content.error_code}});return}case"advisor_tool_result":{let b=r.toCustomToolName("advisor");"advisor_result"===a.content.type?e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,result:{type:"advisor_result",text:a.content.text,...null!=a.content.stop_reason&&{stopReason:a.content.stop_reason}}}):"advisor_redacted_result"===a.content.type?e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,result:{type:"advisor_redacted_result",encryptedContent:a.content.encrypted_content,...null!=a.content.stop_reason&&{stopReason:a.content.stop_reason}}}):e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:b,isError:!0,result:{type:"advisor_tool_result_error",errorCode:a.content.error_code}});return}case"mcp_tool_use":C[a.id]={type:"tool-call",toolCallId:a.id,toolName:a.name,input:JSON.stringify(a.input),providerExecuted:!0,dynamic:!0,providerMetadata:{anthropic:{type:"mcp-tool-use",serverName:a.server_name}}},e.enqueue(C[a.id]);return;case"mcp_tool_result":return void e.enqueue({type:"tool-result",toolCallId:a.tool_use_id,toolName:C[a.tool_use_id].toolName,isError:a.is_error,result:a.content,dynamic:!0,providerMetadata:C[a.tool_use_id].providerMetadata});default:throw Error(`Unsupported content block type: ${b}`)}}case"content_block_stop":if(null!=B[T.index]){let a=B[T.index];switch(a.type){case"text":e.enqueue({type:"text-end",id:String(T.index),...a.citations.length>0&&{providerMetadata:{anthropic:{citations:a.citations}}}});break;case"reasoning":e.enqueue({type:"reasoning-end",id:String(T.index)});break;case"tool-call":if(!(q&&"json"===a.toolName)){e.enqueue({type:"tool-input-end",id:a.toolCallId});let b=""===a.input?"{}":a.input;if("code_execution"===a.providerToolName)try{let a=(0,c.secureJsonParse)(b);null!=a&&"object"==typeof a&&"code"in a&&!("type"in a)&&(b=JSON.stringify({type:"programmatic-tool-call",...a}))}catch(a){}e.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:b,providerExecuted:a.providerExecuted,...v&&"code_execution"===a.providerToolName?{dynamic:!0}:{},...a.caller&&{providerMetadata:{anthropic:{caller:a.caller}}}})}}delete B[T.index]}l=void 0;return;case"content_block_delta":{let a=T.delta.type;switch(a){case"text_delta":if(q)return;e.enqueue({type:"text-delta",id:String(T.index),delta:T.delta.text});return;case"thinking_delta":return void e.enqueue({type:"reasoning-delta",id:String(T.index),delta:T.delta.thinking});case"signature_delta":"thinking"===l&&e.enqueue({type:"reasoning-delta",id:String(T.index),delta:"",providerMetadata:{anthropic:{signature:T.delta.signature}}});return;case"compaction_delta":null!=T.delta.content&&e.enqueue({type:"text-delta",id:String(T.index),delta:T.delta.content});return;case"input_json_delta":{let a=B[T.index],b=T.delta.partial_json;if(0===b.length)return;if(H){if((null==a?void 0:a.type)!=="text")return;e.enqueue({type:"text-delta",id:String(T.index),delta:b})}else{if((null==a?void 0:a.type)!=="tool-call")return;a.firstDelta&&null!=a.providerToolInputType&&(b=`{"type": "${a.providerToolInputType}",${b.substring(1)}`),e.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:b}),a.input+=b,a.firstDelta=!1}return}case"citations_delta":{let a=T.delta.citation,b=B[T.index];(null==b?void 0:b.type)==="text"&&"web_search_result_location"===a.type&&b.citations.push(a);let c=al(a,u,K);c&&e.enqueue(c);return}default:throw Error(`Unsupported delta type: ${a}`)}}case"message_start":if(I){if(i===T.message.id)return;J=!0,e.enqueue({type:"error",error:new b.InvalidResponseDataError({data:T,message:`Received message_start for message ${JSON.stringify(T.message.id)} while message ${JSON.stringify(i)} is still open.`})});return}if(I=!0,i=T.message.id,A.input_tokens=T.message.usage.input_tokens,A.cache_read_input_tokens=null!=(n=T.message.usage.cache_read_input_tokens)?n:0,A.cache_creation_input_tokens=null!=(o=T.message.usage.cache_creation_input_tokens)?o:0,j={...T.message.usage},null!=T.message.container&&(G={expiresAt:T.message.container.expires_at,id:T.message.container.id,skills:null}),null!=T.message.stop_reason&&(z={unified:ag({finishReason:T.message.stop_reason,isJsonResponseFromTool:H}),raw:T.message.stop_reason}),e.enqueue({type:"response-metadata",id:null!=(p=T.message.id)?p:void 0,modelId:null!=(w=T.message.model)?w:void 0}),null!=T.message.content)for(let a=0;a<T.message.content.length;a++){let b=T.message.content[a];if("tool_use"===b.type){let a=am(b.caller);e.enqueue({type:"tool-input-start",id:b.id,toolName:b.name});let c=JSON.stringify(null!=(x=b.input)?x:{});e.enqueue({type:"tool-input-delta",id:b.id,delta:c}),e.enqueue({type:"tool-input-end",id:b.id}),e.enqueue({type:"tool-call",toolCallId:b.id,toolName:b.name,input:c,...a&&{providerMetadata:{anthropic:{caller:a}}}})}}return;case"message_delta":null!=T.usage.input_tokens&&A.input_tokens!==T.usage.input_tokens&&(A.input_tokens=T.usage.input_tokens),A.output_tokens=T.usage.output_tokens,null!=T.usage.output_tokens_details&&(A.output_tokens_details=T.usage.output_tokens_details),null!=T.usage.cache_read_input_tokens&&(A.cache_read_input_tokens=T.usage.cache_read_input_tokens),null!=T.usage.cache_creation_input_tokens&&(A.cache_creation_input_tokens=T.usage.cache_creation_input_tokens),null!=T.usage.iterations&&(A.iterations=T.usage.iterations),z={unified:ag({finishReason:T.delta.stop_reason,isJsonResponseFromTool:H}),raw:null!=(y=T.delta.stop_reason)?y:void 0},F=null!=(L=T.delta.stop_sequence)?L:null,k=ar(T.delta.stop_details),G=null!=T.delta.container?{expiresAt:T.delta.container.expires_at,id:T.delta.container.id,skills:null!=(N=null==(M=T.delta.container.skills)?void 0:M.map(a=>({type:a.type,skillId:a.skill_id,version:a.version})))?N:null}:null,T.context_management&&(E=aq(T.context_management)),j={...j,...T.usage};return;case"message_stop":{I=!1,i=void 0;let a={usage:null!=j?j:null,stopSequence:F,...null!=k?{stopDetails:k}:{},iterations:A.iterations?A.iterations.map(a=>({type:a.type,...null!=a.model?{model:a.model}:{},inputTokens:a.input_tokens,outputTokens:a.output_tokens,...a.cache_creation_input_tokens?{cacheCreationInputTokens:a.cache_creation_input_tokens}:{},...a.cache_read_input_tokens?{cacheReadInputTokens:a.cache_read_input_tokens}:{}})):null,container:G,contextManagement:E},b={anthropic:a};t&&"anthropic"!==s&&(b[s]=a),e.enqueue({type:"finish",finishReason:z,usage:S({usage:A,rawUsage:j}),providerMetadata:b});return}case"error":let U;return void e.enqueue({type:"error",error:(U=function(a){switch(a){case"api_error":return{statusCode:500,isRetryable:!0};case"overloaded_error":return{statusCode:529,isRetryable:!0};case"rate_limit_error":return{statusCode:429,isRetryable:!0};case"request_too_large":return{statusCode:413,isRetryable:!1};case"authentication_error":return{statusCode:401,isRetryable:!1};case"permission_error":return{statusCode:403,isRetryable:!1};case"not_found_error":return{statusCode:404,isRetryable:!1};case"billing_error":case"invalid_request_error":return{statusCode:400,isRetryable:!1};default:return{}}}((O=T.error).type),(0,c.createProviderStreamError)({message:O.message,type:O.type,code:null!=(P=O.code)?P:void 0,statusCode:null!=(Q=O.statusCode)?Q:U.statusCode,isRetryable:null!=(R=O.isRetryable)?R:U.isRetryable,data:"data"in O?O.data:O}))});default:throw Error(`Unsupported chunk type: ${T}`)}}})).tee(),N=L.getReader();try{await N.read();let a=await N.read();if((null==(d=a.value)?void 0:d.type)==="raw"&&(a=await N.read()),(null==(e=a.value)?void 0:e.type)==="error"){let d=a.value.error;if(!(0,c.isProviderStreamError)(d))throw Error("Expected a normalized Anthropic stream error");throw new b.APICallError({message:d.message,url:w,requestBodyValues:m,statusCode:null!=(f=d.statusCode)?f:500,responseHeaders:x,responseBody:JSON.stringify(d.data),isRetryable:null!=(h=d.isRetryable)&&h})}}finally{N.cancel().catch(()=>{}),N.releaseLock()}return{stream:M,request:{body:m},response:{headers:x}}}};function ap(a){if(!a)return!1;let b=!1,c=!1;for(let d of a){if("type"in d&&("web_fetch_20260209"===d.type||"web_search_20260209"===d.type)){b=!0;continue}if("type"in d&&("code_execution_20250522"===d.type||"code_execution_20250825"===d.type||"code_execution_20260120"===d.type)){c=!0;break}}return b&&!c}function aq(a){return a?{appliedEdits:a.applied_edits.map(a=>{switch(a.type){case"clear_tool_uses_20250919":return{type:a.type,clearedToolUses:a.cleared_tool_uses,clearedInputTokens:a.cleared_input_tokens};case"clear_thinking_20251015":return{type:a.type,clearedThinkingTurns:a.cleared_thinking_turns,clearedInputTokens:a.cleared_input_tokens};case"compact_20260112":return{type:a.type}}}).filter(a=>void 0!==a)}:null}function ar(a){if(null!=a)return{type:a.type,...null!=a.category?{category:a.category}:{},...null!=a.explanation?{explanation:a.explanation}:{},...null!=a.recommended_model?{recommendedModel:a.recommended_model}:{}}}var as=/^[A-Za-z0-9_-]{1,64}$/,at=s.pick({anthropicBeta:!0}),au=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({id:d.z.string(),type:d.z.literal("message_batch"),processing_status:d.z.string(),request_counts:d.z.object({processing:d.z.number(),succeeded:d.z.number(),errored:d.z.number(),canceled:d.z.number(),expired:d.z.number()}),created_at:d.z.string(),expires_at:d.z.string(),archived_at:d.z.string().nullish(),cancel_initiated_at:d.z.string().nullish(),ended_at:d.z.string().nullish(),results_url:d.z.string().nullish()}))),av=new Set(["advisor_tool_result","bash_code_execution_tool_result","code_execution_tool_result","compaction","container_upload","fallback","mcp_tool_result","mcp_tool_use","redacted_thinking","server_tool_use","text","text_editor_code_execution_tool_result","thinking","tool_search_tool_result","tool_use","web_fetch_tool_result","web_search_tool_result"]),aw=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("succeeded"),message:d.z.unknown()}),d.z.object({type:d.z.literal("errored"),error:d.z.object({type:d.z.literal("error"),error:d.z.object({type:d.z.string(),message:d.z.string()}),request_id:d.z.string().nullish()})}),d.z.object({type:d.z.literal("canceled")}),d.z.object({type:d.z.literal("expired")})]))),ax=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({custom_id:d.z.string(),result:d.z.unknown()}))),ay=class a extends ao{static[e.WORKFLOW_SERIALIZE](a){return ao[e.WORKFLOW_SERIALIZE](a)}static[e.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}constructor(a,b){super(a,b)}async experimental_doStartBatch({requests:a,providerOptions:d,headers:e,abortSignal:f,webhookUrl:h}){var i,j=a;let k=new Set;for(let a of j){if(!as.test(a.id))throw new b.InvalidArgumentError({argument:"requests",message:`Anthropic batch request ID "${a.id}" must match ^[A-Za-z0-9_-]{1,64}$.`});if(k.has(a.id))throw new b.InvalidArgumentError({argument:"requests",message:`Anthropic batch request IDs must be unique; duplicate ID "${a.id}".`});k.add(a.id)}let l=new Set(await az({provider:this.config.provider,providerOptions:d})),m=new Set(l),n=[],o=null==h?[]:[{warning:{type:"unsupported",feature:"webhookUrl",details:"The Anthropic Message Batches API does not support completion webhooks."}}];for(let c of a){if((await az({provider:this.config.provider,providerOptions:c.options.providerOptions})).length>0)throw new b.UnsupportedFunctionalityError({functionality:"per-request providerOptions.anthropic.anthropicBeta",message:`Anthropic Message Batches do not support per-request betas (request "${c.id}"). Set providerOptions.anthropic.anthropicBeta on startTextBatch instead.`});let a=await this.getArgs({...c.options,stream:!1,userSuppliedBetas:new Set(l)});if(a.usesJsonResponseTool)throw new b.UnsupportedFunctionalityError({functionality:"batch responseFormat JSON-tool fallback",message:`Anthropic Message Batches cannot decode the JSON-tool structured-output fallback (request "${c.id}") because batch results are retrieved independently of the start call. Use a model that supports native output_format structured outputs.`});let d=null==(i=c.options.tools)?void 0:i.find(b=>"provider"===b.type&&a.toolNameMapping.toProviderToolName(b.name)!==b.name);if(null!=d)throw new b.UnsupportedFunctionalityError({functionality:"aliased provider tool names in batches",message:`Anthropic Message Batches cannot restore the custom provider-tool name "${d.name}" when results are retrieved independently of the start call (request "${c.id}"). Use the provider's canonical tool name.`});let e=this.transformRequestBody(a.args,a.betas);for(let d of(function({body:a,requestId:c}){if(null!=a.speed)throw new b.UnsupportedFunctionalityError({functionality:"providerOptions.anthropic.speed",message:`Anthropic Message Batches do not support speed (request "${c}").`});if(Array.isArray(a.fallbacks)&&a.fallbacks.some(a=>null!=a&&"object"==typeof a&&"speed"in a&&null!=a.speed))throw new b.UnsupportedFunctionalityError({functionality:"providerOptions.anthropic.fallbacks[].speed",message:`Anthropic Message Batches do not support fallback speed (request "${c}").`})}({body:e,requestId:c.id}),n.push({custom_id:c.id,params:e}),a.betas))m.add(d);for(let b of a.warnings)o.push({requestId:c.id,warning:b})}let{value:p}=await (0,c.postJsonToApi)({url:this.getBatchUrl(""),headers:await this.getStartBatchHeaders({betas:m,headers:e}),body:{requests:n},failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(au),abortSignal:f,fetch:this.config.fetch});return{batchId:p.id,...aA(p),warnings:o}}async experimental_doGetBatchStatus(a){return aA(await this.retrieveBatch(a))}async experimental_doGetBatchResults(a){let d=await this.retrieveBatch(a);if("pending"===aA(d).status)throw new b.InvalidArgumentError({argument:"batchId",message:`Anthropic batch "${a.batchId}" is not complete.`});if(null!=d.archived_at)throw new b.InvalidArgumentError({argument:"batchId",message:`Anthropic batch "${a.batchId}" results are no longer available.`});if(null==d.results_url)throw new b.InvalidResponseDataError({data:d,message:`Anthropic batch "${a.batchId}" completed without batch output.`});let{value:e}=await (0,c.getFromApi)({url:d.results_url,validateUrl:!0,credentialedOrigin:this.config.baseURL,trustedOrigin:this.config.baseURL,headers:await this.getBatchHeaders(a.headers),failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonLinesResponseHandler)(ax),abortSignal:a.abortSignal,fetch:this.config.fetch});return(0,c.convertAsyncIteratorToReadableStream)(this.iterateBatchResults(e))}async retrieveBatch(a){let{value:b}=await (0,c.getFromApi)({url:this.getBatchUrl(`/${encodeURIComponent(a.batchId)}`),validateUrl:!1,headers:await this.getBatchHeaders(a.headers),failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(au),abortSignal:a.abortSignal,fetch:this.config.fetch});return b}async *iterateBatchResults(a){for await(let b of a)yield await aB(b,this.generateId)}getBatchUrl(a){return`${this.config.baseURL}/messages/batches${a}`}async getStartBatchHeaders({betas:a,headers:b}){return(0,c.combineHeaders)((0,c.normalizeHeaders)(await this.getBatchHeaders(b)),{"anthropic-beta":a.size>0?Array.from(a).join(","):void 0})}async getBatchHeaders(a){return(0,c.combineHeaders)(this.config.headers?await (0,c.resolve)(this.config.headers):void 0,a)}};async function az({provider:a,providerOptions:b}){var d;let e=a.split(".")[0],f=await (0,c.parseProviderOptions)({provider:"anthropic",providerOptions:b,schema:at}),g="anthropic"!==e?await (0,c.parseProviderOptions)({provider:e,providerOptions:b,schema:at}):void 0;return null!=(d=Object.assign({},null!=f?f:{},null!=g?g:{}).anthropicBeta)?d:[]}function aA(a){var b,d,e,f,g;let h=(g=a.request_counts,(0,c.normalizeBatchRequestCounts)({total:g.processing+g.succeeded+g.errored+g.canceled+g.expired,pending:g.processing,completed:g.succeeded,failed:g.errored+g.canceled+g.expired}));return{status:"ended"===a.processing_status?"completed":"pending",rawStatus:a.processing_status,...null!=h?{requestCounts:h}:{},createdAt:a.created_at,expiresAt:a.expires_at,providerMetadata:{anthropic:{archivedAt:null!=(b=a.archived_at)?b:null,cancelInitiatedAt:null!=(d=a.cancel_initiated_at)?d:null,endedAt:null!=(e=a.ended_at)?e:null,requestCounts:a.request_counts,resultsUrl:null!=(f=a.results_url)?f:null}}}}async function aB(a,b){let d=await (0,c.safeValidateTypes)({value:a.result,schema:aw});if(!d.success)return aC(a.custom_id);let e=d.value;switch(e.type){case"canceled":return{id:a.custom_id,status:"cancelled"};case"expired":return{id:a.custom_id,status:"expired"};case"errored":{let b=e.error.request_id;return{id:a.custom_id,status:"failed",error:{message:e.error.error.message,type:e.error.error.type},...null!=b?{providerMetadata:{anthropic:{requestId:b}}}:{}}}case"succeeded":{let c=await aD(e.message);if(null==c)return aC(a.custom_id);return{id:a.custom_id,status:"succeeded",result:function(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;let p,q=[],r={},s={};for(let h of a.content)switch(h.type){case"text":let a=h.citations;for(let d of(q.push({type:"text",text:h.text,...null!=a&&a.length>0&&{providerMetadata:{anthropic:{citations:a}}}}),null!=(c=h.citations)?c:[])){let a=al(d,[],b);null!=a&&q.push(a)}break;case"thinking":q.push({type:"reasoning",text:h.thinking,providerMetadata:{anthropic:{signature:h.signature}}});break;case"redacted_thinking":q.push({type:"reasoning",text:"",providerMetadata:{anthropic:{redactedData:h.data}}});break;case"container_upload":q.push({type:"custom",kind:"anthropic.container_upload",providerMetadata:{anthropic:{fileId:h.file_id}}});break;case"compaction":q.push({type:"text",text:h.content,providerMetadata:{anthropic:{type:"compaction"}}});break;case"tool_use":q.push({type:"tool-call",toolCallId:h.id,toolName:h.name,input:JSON.stringify(h.input),...aE(h.caller)});break;case"server_tool_use":{let a="bash_code_execution"===h.name||"text_editor_code_execution"===h.name,b=a||"code_execution"===h.name,c=a?"code_execution":h.name;("tool_search_tool_bm25"===h.name||"tool_search_tool_regex"===h.name)&&(s[h.id]=h.name),q.push({type:"tool-call",toolCallId:h.id,toolName:c,input:JSON.stringify(a?{type:h.name,...null!=(d=h.input)?d:{}}:"code_execution"===h.name&&null!=h.input&&"code"in h.input&&!("type"in h.input)?{type:"programmatic-tool-call",...h.input}:h.input),providerExecuted:!0,...b?{dynamic:!0}:{},...aE(h.caller)});break}case"mcp_tool_use":{let a={type:"tool-call",toolCallId:h.id,toolName:h.name,input:JSON.stringify(h.input),providerExecuted:!0,dynamic:!0,providerMetadata:{anthropic:{serverName:h.server_name,type:"mcp-tool-use"}}};r[h.id]=a,q.push(a);break}case"mcp_tool_result":{let a=r[h.tool_use_id];q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:null!=(e=null==a?void 0:a.toolName)?e:"mcp",isError:h.is_error,result:h.content,dynamic:!0,...(null==a?void 0:a.providerMetadata)!=null&&{providerMetadata:a.providerMetadata}});break}case"web_fetch_tool_result":q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"web_fetch",..."web_fetch_tool_result_error"===h.content.type?{isError:!0,result:{errorCode:h.content.error_code,type:h.content.type}}:{result:{content:{citations:h.content.content.citations,source:{data:h.content.content.source.data,mediaType:h.content.content.source.media_type,type:h.content.content.source.type},title:h.content.content.title,type:h.content.content.type},retrievedAt:h.content.retrieved_at,type:h.content.type,url:h.content.url}},...aE(h.caller)});break;case"web_search_tool_result":if(q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"web_search",...Array.isArray(h.content)?{result:h.content.map(a=>{var b;return{encryptedContent:a.encrypted_content,pageAge:null!=(b=a.page_age)?b:null,...null!=a.title?{title:a.title}:{},type:a.type,url:a.url}})}:{isError:!0,result:{errorCode:h.content.error_code,type:h.content.type}},...aE(h.caller)}),Array.isArray(h.content))for(let a of h.content)q.push({type:"source",sourceType:"url",id:b(),url:a.url,...null!=a.title?{title:a.title}:{},providerMetadata:{anthropic:{pageAge:null!=(f=a.page_age)?f:null}}});break;case"code_execution_tool_result":q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"code_execution",..."code_execution_tool_result_error"===h.content.type?{isError:!0,result:{errorCode:h.content.error_code,type:h.content.type}}:{result:h.content}});break;case"bash_code_execution_tool_result":case"text_editor_code_execution_tool_result":q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"code_execution",result:h.content});break;case"tool_search_tool_result":{let a=null!=(g=s[h.tool_use_id])?g:"tool_search_tool_regex";q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:a,..."tool_search_tool_result_error"===h.content.type?{isError:!0,result:{errorCode:h.content.error_code,type:h.content.type}}:{result:h.content.tool_references.map(a=>({toolName:a.tool_name,type:a.type}))}});break}case"advisor_tool_result":"advisor_result"===h.content.type?q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"advisor",result:{type:h.content.type,text:h.content.text,...null!=h.content.stop_reason?{stopReason:h.content.stop_reason}:{}}}):"advisor_redacted_result"===h.content.type?q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"advisor",result:{type:h.content.type,encryptedContent:h.content.encrypted_content,...null!=h.content.stop_reason?{stopReason:h.content.stop_reason}:{}}}):q.push({type:"tool-result",toolCallId:h.tool_use_id,toolName:"advisor",isError:!0,result:{errorCode:h.content.error_code,type:h.content.type}})}return{content:q,finishReason:{unified:ag({finishReason:a.stop_reason}),raw:null!=(h=a.stop_reason)?h:void 0},usage:S({usage:a.usage}),response:{id:null!=(i=a.id)?i:void 0,modelId:null!=(j=a.model)?j:void 0},warnings:[],providerMetadata:{anthropic:(p=function(a){if(null!=a)return{type:a.type,...null!=a.category?{category:a.category}:{},...null!=a.explanation?{explanation:a.explanation}:{},...null!=a.recommended_model?{recommendedModel:a.recommended_model}:{}}}((k=a).stop_details),{usage:k.usage,stopSequence:null!=(l=k.stop_sequence)?l:null,...null!=p?{stopDetails:p}:{},iterations:k.usage.iterations?k.usage.iterations.map(a=>({type:a.type,...null!=a.model?{model:a.model}:{},inputTokens:a.input_tokens,outputTokens:a.output_tokens,...a.cache_creation_input_tokens?{cacheCreationInputTokens:a.cache_creation_input_tokens}:{},...a.cache_read_input_tokens?{cacheReadInputTokens:a.cache_read_input_tokens}:{}})):null,container:k.container?{expiresAt:k.container.expires_at,id:k.container.id,skills:null!=(n=null==(m=k.container.skills)?void 0:m.map(a=>({type:a.type,skillId:a.skill_id,version:a.version})))?n:null}:null,contextManagement:(o=k.context_management)?{appliedEdits:o.applied_edits.map(a=>{switch(a.type){case"clear_tool_uses_20250919":return{type:a.type,clearedToolUses:a.cleared_tool_uses,clearedInputTokens:a.cleared_input_tokens};case"clear_thinking_20251015":return{type:a.type,clearedThinkingTurns:a.cleared_thinking_turns,clearedInputTokens:a.cleared_input_tokens};case"compact_20260112":return{type:a.type}}})}:null})}}}(c,b)}}}}function aC(a){return{id:a,status:"failed",error:{message:"Anthropic returned an invalid Message batch result.",code:"invalid_response"}}}async function aD(a){let b=await (0,c.safeValidateTypes)({value:a,schema:n});if(b.success)return b.value;if(!(0,c.isRecord)(a)||!Array.isArray(a.content))return;let d=[];for(let b of a.content){let e=await (0,c.safeValidateTypes)({value:{...a,content:[b]},schema:n});if(e.success){let[a]=e.value.content;null!=a&&d.push(a)}else if(!(0,c.isRecord)(b)||"string"!=typeof b.type||av.has(b.type))return}let e=await (0,c.safeValidateTypes)({value:{...a,content:d},schema:n});return e.success?e.value:void 0}function aE(a){return null==a?{}:{providerMetadata:{anthropic:{caller:{type:a.type,toolId:a.tool_id}}}}}var aF=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.string(),restart:d.z.boolean().optional()}))),aG=(0,c.createProviderDefinedToolFactory)({id:"anthropic.bash_20241022",inputSchema:aF}),aH=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.string(),restart:d.z.boolean().optional()}))),aI=(0,c.createProviderDefinedToolFactory)({id:"anthropic.bash_20250124",inputSchema:aH}),aJ=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({action:d.z.enum(["key","type","mouse_move","left_click","left_click_drag","right_click","middle_click","double_click","screenshot","cursor_position"]),coordinate:d.z.array(d.z.number().int()).optional(),text:d.z.string().optional()}))),aK=(0,c.createProviderDefinedToolFactory)({id:"anthropic.computer_20241022",inputSchema:aJ}),aL=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({action:d.z.enum(["key","hold_key","type","cursor_position","mouse_move","left_mouse_down","left_mouse_up","left_click","left_click_drag","right_click","middle_click","double_click","triple_click","scroll","wait","screenshot"]),coordinate:d.z.tuple([d.z.number().int(),d.z.number().int()]).optional(),duration:d.z.number().optional(),scroll_amount:d.z.number().optional(),scroll_direction:d.z.enum(["up","down","left","right"]).optional(),start_coordinate:d.z.tuple([d.z.number().int(),d.z.number().int()]).optional(),text:d.z.string().optional()}))),aM=(0,c.createProviderDefinedToolFactory)({id:"anthropic.computer_20250124",inputSchema:aL}),aN=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({action:d.z.enum(["key","hold_key","type","cursor_position","mouse_move","left_mouse_down","left_mouse_up","left_click","left_click_drag","right_click","middle_click","double_click","triple_click","scroll","wait","screenshot","zoom"]),coordinate:d.z.tuple([d.z.number().int(),d.z.number().int()]).optional(),duration:d.z.number().optional(),region:d.z.tuple([d.z.number().int(),d.z.number().int(),d.z.number().int(),d.z.number().int()]).optional(),scroll_amount:d.z.number().optional(),scroll_direction:d.z.enum(["up","down","left","right"]).optional(),start_coordinate:d.z.tuple([d.z.number().int(),d.z.number().int()]).optional(),text:d.z.string().optional()}))),aO=(0,c.createProviderDefinedToolFactory)({id:"anthropic.computer_20251124",inputSchema:aN}),aP=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.discriminatedUnion("command",[d.z.object({command:d.z.literal("view"),path:d.z.string(),view_range:d.z.tuple([d.z.number(),d.z.number()]).optional()}),d.z.object({command:d.z.literal("create"),path:d.z.string(),file_text:d.z.string()}),d.z.object({command:d.z.literal("str_replace"),path:d.z.string(),old_str:d.z.string(),new_str:d.z.string()}),d.z.object({command:d.z.literal("insert"),path:d.z.string(),insert_line:d.z.number(),insert_text:d.z.string()}),d.z.object({command:d.z.literal("delete"),path:d.z.string()}),d.z.object({command:d.z.literal("rename"),old_path:d.z.string(),new_path:d.z.string()})]))),aQ=(0,c.createProviderDefinedToolFactory)({id:"anthropic.memory_20250818",inputSchema:aP}),aR=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.enum(["view","create","str_replace","insert","undo_edit"]),path:d.z.string(),file_text:d.z.string().optional(),insert_line:d.z.number().int().optional(),new_str:d.z.string().optional(),insert_text:d.z.string().optional(),old_str:d.z.string().optional(),view_range:d.z.array(d.z.number().int()).optional()}))),aS=(0,c.createProviderDefinedToolFactory)({id:"anthropic.text_editor_20241022",inputSchema:aR}),aT=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.enum(["view","create","str_replace","insert","undo_edit"]),path:d.z.string(),file_text:d.z.string().optional(),insert_line:d.z.number().int().optional(),new_str:d.z.string().optional(),insert_text:d.z.string().optional(),old_str:d.z.string().optional(),view_range:d.z.array(d.z.number().int()).optional()}))),aU=(0,c.createProviderDefinedToolFactory)({id:"anthropic.text_editor_20250124",inputSchema:aT}),aV=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({command:d.z.enum(["view","create","str_replace","insert"]),path:d.z.string(),file_text:d.z.string().optional(),insert_line:d.z.number().int().optional(),new_str:d.z.string().optional(),insert_text:d.z.string().optional(),old_str:d.z.string().optional(),view_range:d.z.array(d.z.number().int()).optional()}))),aW=(0,c.createProviderDefinedToolFactory)({id:"anthropic.text_editor_20250429",inputSchema:aV}),aX=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.array(d.z.object({type:d.z.literal("tool_reference"),toolName:d.z.string()})))),aY=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({query:d.z.string(),limit:d.z.number().optional()}))),aZ=(0,c.createProviderExecutedToolFactory)({id:"anthropic.tool_search_bm25_20251119",inputSchema:aY,outputSchema:aX,supportsDeferredResults:!0}),a$={advisor_20260301:a=>x(a),bash_20241022:function(a={}){let{execute:b,...c}=a;return void 0===b?aG({...c,execute:async({command:a},{abortSignal:b,experimental_sandbox:c})=>{if(!c)throw Error("Sandbox session is not available");return await c.run({command:a,abortSignal:b})}}):aG({...c,...null===b?{}:{execute:b}})},bash_20250124:function(a={}){let{execute:b,...c}=a;return void 0===b?aI({...c,execute:async({command:a},{abortSignal:b,experimental_sandbox:c})=>{if(!c)throw Error("Sandbox session is not available");return await c.run({command:a,abortSignal:b})}}):aI({...c,...null===b?{}:{execute:b}})},codeExecution_20250522:(a={})=>V(a),codeExecution_20250825:(a={})=>(0,c.experimental_toolCaller)(Y(a),{type:"provider",prepareProviderOptions:a=>{var b;let c=null==a?void 0:a.anthropic;return{...a,anthropic:{...c,allowedCallers:[...new Set([...null!=(b=null==c?void 0:c.allowedCallers)?b:[],"code_execution_20250825"])]}}}}),codeExecution_20260120:(a={})=>(0,c.experimental_toolCaller)(_(a),{type:"provider",prepareProviderOptions:a=>{var b;let c=null==a?void 0:a.anthropic;return{...a,anthropic:{...c,allowedCallers:[...new Set([...null!=(b=null==c?void 0:c.allowedCallers)?b:[],"code_execution_20260120"])]}}}}),computer_20241022:aK,computer_20250124:aM,computer_20251124:aO,memory_20250818:aQ,textEditor_20241022:aS,textEditor_20250124:aU,textEditor_20250429:aW,textEditor_20250728:(a={})=>A(a),webFetch_20250910:(a={})=>Q(a),webFetch_20260209:(a={})=>M(a),webSearch_20250305:(a={})=>I(a),webSearch_20260209:(a={})=>E(a),toolSearchRegex_20251119:(a={})=>ac(a),toolSearchBm25_20251119:(a={})=>aZ(a)},a_=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({id:d.z.string(),display_title:d.z.string().nullish(),name:d.z.string().nullish(),description:d.z.string().nullish(),latest_version:d.z.string().nullish(),source:d.z.string(),created_at:d.z.string(),updated_at:d.z.string()})));(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({data:d.z.array(d.z.object({version:d.z.string()}))})));var a0=(0,c.lazySchema)(()=>(0,c.zodSchema)(d.z.object({type:d.z.string(),skill_id:d.z.string(),name:d.z.string().nullish(),description:d.z.string().nullish()})));function a1(a){let b=encodeURIComponent(a);return"."===b?"%252E":".."===b?"%252E%252E":b}var a2=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async getHeaders(){return(0,c.combineHeaders)(await (0,c.resolve)(this.config.headers),{"anthropic-beta":"skills-2025-10-02"})}async fetchVersionMetadata({skillId:a,version:b,headers:d}){let{value:e}=await (0,c.getFromApi)({url:`${this.config.baseURL}/skills/${a1(a)}/versions/${a1(b)}`,validateUrl:!1,headers:d,failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(a0),fetch:this.config.fetch});return{...null!=e.name?{name:e.name}:{},...null!=e.description?{description:e.description}:{}}}async uploadSkill(a){var b,d;let e=new FormData;for(let b of(null!=a.displayTitle&&e.append("display_title",a.displayTitle),a.files)){let a=(0,c.convertInlineFileDataToUint8Array)(b.data);e.append("files[]",new Blob([a]),b.path)}let f=await this.getHeaders(),{value:h}=await (0,c.postFormDataToApi)({url:`${this.config.baseURL}/skills`,headers:f,formData:e,failedResponseHandler:g,successfulResponseHandler:(0,c.createJsonResponseHandler)(a_),fetch:this.config.fetch}),i=null!=h.latest_version?await this.fetchVersionMetadata({skillId:h.id,version:h.latest_version,headers:f}):{},j=null!=(b=i.name)?b:h.name,k=null!=(d=i.description)?d:h.description;return{providerReference:{anthropic:h.id},...null!=h.display_title?{displayTitle:h.display_title}:{},...null!=j?{name:j}:{},...null!=k?{description:k}:{},...null!=h.latest_version?{latestVersion:h.latest_version}:{},providerMetadata:{anthropic:{...null!=h.source?{source:h.source}:{},...null!=h.created_at?{createdAt:h.created_at}:{},...null!=h.updated_at?{updatedAt:h.updated_at}:{}}},warnings:[]}}},a3="https://api.anthropic.com",a4=`${a3}/v1`;function a5(a={}){var d,e,f;let g,h=null!=(f=(0,c.loadOptionalSetting)({settingValue:a.baseURL,environmentVariableName:"ANTHROPIC_BASE_URL"}),d=(g=(0,c.withoutTrailingSlash)((0,c.validateBaseURL)(f)))===a3?a4:g)?d:a4,j=null!=(e=a.name)?e:"anthropic.messages";if(a.apiKey&&a.authToken)throw new b.InvalidArgumentError({argument:"apiKey/authToken",message:"Both apiKey and authToken were provided. Please use only one authentication method."});let k=()=>{let b=a.authToken?{Authorization:`Bearer ${a.authToken}`}:{"x-api-key":(0,c.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"ANTHROPIC_API_KEY",description:"Anthropic"})};return(0,c.withUserAgentSuffix)({"anthropic-version":"2023-06-01",...b,...a.headers},"ai-sdk/anthropic/4.0.49")},l=b=>{var d;return new ay(b,{provider:j,baseURL:h,headers:k,fetch:a.fetch,generateId:null!=(d=a.generateId)?d:c.generateId,supportedUrls:()=>({"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]})})},m=function(a){if(new.target)throw Error("The Anthropic model function cannot be called with the new keyword.");return l(a)};return m.specificationVersion="v4",m.languageModel=l,m.chat=l,m.messages=l,m.embeddingModel=a=>{throw new b.NoSuchModelError({modelId:a,modelType:"embeddingModel"})},m.textEmbeddingModel=m.embeddingModel,m.imageModel=a=>{throw new b.NoSuchModelError({modelId:a,modelType:"imageModel"})},m.files=()=>new i({provider:j,baseURL:h,headers:k,fetch:a.fetch}),m.skills=()=>new a2({provider:`${j.replace(".messages","")}.skills`,baseURL:h,headers:k,fetch:a.fetch}),m.tools=a$,m}a5(),a.s(["createAnthropic",0,a5])},140358,a=>{"use strict";var b=a.i(527990),c=a.i(652685),d=a.i(912735),e=a.i(53112),f=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({error:e.z.object({code:e.z.number().nullable(),message:e.z.string(),status:e.z.string(),details:e.z.array(e.z.unknown()).nullish()})}))),g=(0,b.createJsonErrorResponseHandler)({errorSchema:f,errorToMessage:a=>a.error.message}),h=e.z.union([e.z.object({text:e.z.string()}),e.z.object({inlineData:e.z.object({mimeType:e.z.string(),data:e.z.string()})}),e.z.object({fileData:e.z.object({fileUri:e.z.string(),mimeType:e.z.string()})})]),i=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({outputDimensionality:e.z.number().optional(),taskType:e.z.enum(["SEMANTIC_SIMILARITY","CLASSIFICATION","CLUSTERING","RETRIEVAL_DOCUMENT","RETRIEVAL_QUERY","QUESTION_ANSWERING","FACT_VERIFICATION","CODE_RETRIEVAL_QUERY"]).optional(),content:e.z.array(e.z.array(h).min(1).nullable()).optional()}))),j=class a{constructor(a,b){this.specificationVersion="v4",this.maxEmbeddingsPerCall=100,this.supportsParallelCalls=!0,this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doEmbed({values:a,headers:d,abortSignal:e,providerOptions:f}){let h=await (0,b.parseProviderOptions)({provider:"google",providerOptions:f,schema:i});if(a.length>this.maxEmbeddingsPerCall)throw new c.TooManyEmbeddingValuesForCallError({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:a});let j=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,d),m=null==h?void 0:h.content;if(null!=m&&m.length!==a.length)throw Error(`The number of multimodal content entries (${m.length}) must match the number of values (${a.length}).`);if(1===a.length){let c=null==m?void 0:m[0],d=a[0]?[{text:a[0]}]:[],f=null!=c?[...d,...c]:[{text:a[0]}],{responseHeaders:i,value:k,rawValue:n}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/models/${this.modelId}:embedContent`,headers:j,body:{model:`models/${this.modelId}`,content:{parts:f},outputDimensionality:null==h?void 0:h.outputDimensionality,taskType:null==h?void 0:h.taskType},failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(l),abortSignal:e,fetch:this.config.fetch});return{warnings:[],embeddings:[k.embedding.values],usage:void 0,response:{headers:i,body:n}}}let{responseHeaders:n,value:o,rawValue:p}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,headers:j,body:{requests:a.map((a,b)=>{let c=null==m?void 0:m[b];return{model:`models/${this.modelId}`,content:{role:"user",parts:null!=c?[...a?[{text:a}]:[],...c]:[{text:a}]},outputDimensionality:null==h?void 0:h.outputDimensionality,taskType:null==h?void 0:h.taskType}})},failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(k),abortSignal:e,fetch:this.config.fetch});return{warnings:[],embeddings:o.embeddings.map(a=>a.values),usage:void 0,response:{headers:n,body:p}}}},k=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({embeddings:e.z.array(e.z.object({values:e.z.array(e.z.number())}))}))),l=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({embedding:e.z.object({values:e.z.array(e.z.number())})})));function m(a){return a.includes("/")?a:`models/${a}`}function n(a){var c,d,e,f;if(null==a)return(0,b.createNullLanguageModelUsage)();let g=null!=(c=a.promptTokenCount)?c:0,h=null!=(d=a.candidatesTokenCount)?d:0,i=null!=(e=a.cachedContentTokenCount)?e:0,j=null!=(f=a.thoughtsTokenCount)?f:0;return{inputTokens:{total:g,noCache:g-i,cacheRead:i,cacheWrite:void 0},outputTokens:{total:h+j,text:h,reasoning:j},raw:a}}var o="recursive JSON Schema reference:";function p(a,b=!0){let d="object"==typeof a?a:void 0;return function a(b,d,e){var f;if(null==b)return;if("boolean"==typeof b)return{type:"boolean",properties:{}};if(null!=b.$ref)return function({jsonSchema:b,reference:d,isRoot:e,referenceContext:f}){let{definition:g,referenceKey:h}=function(a,b){let c,d=[{prefix:"#/$defs/",definitions:b.dollarDefinitions},{prefix:"#/definitions/",definitions:b.definitions}].find(({prefix:b})=>a.startsWith(b)),e=d?a.slice(d.prefix.length):void 0;(null==d||null==e||0===e.length||e.includes("/"))&&q(a);try{c=decodeURIComponent(e)}catch(b){q(a)}(c.includes("/")||/~(?![01])/u.test(c)||null==d.definitions)&&q(a);let f=c.replace(/~[01]/g,a=>"~1"===a?"/":"~");return Object.prototype.hasOwnProperty.call(d.definitions,f)||q(a),{definition:d.definitions[f],referenceKey:`${d.prefix}${f}`}}(d,f);if(f.resolvingReferences.has(h))throw new c.UnsupportedFunctionalityError({functionality:`${o} ${d}`,message:"Google schema conversion does not support recursive JSON Schema references."});let i=new Set(f.resolvingReferences);i.add(h);let{$ref:j,...k}=b;return a("boolean"==typeof g?!!g&&k:{...g,...k},e,{...f,resolvingReferences:i})}({jsonSchema:b,reference:b.$ref,isRoot:d,referenceContext:e});if(null!=(f=b)&&"object"==typeof f&&"object"===f.type&&(null==f.properties||0===Object.keys(f.properties).length)&&!f.additionalProperties)return d?void 0:b.description?{type:"object",description:b.description}:{type:"object"};let{type:g,description:h,required:i,properties:j,items:k,allOf:l,anyOf:m,oneOf:n,format:p,const:r,minLength:s,minItems:t,maxItems:u,enum:v}=b,w={};if(h&&(w.description=h),i&&(w.required=i),p&&(w.format=p),g)if(Array.isArray(g)){let a=g.includes("null"),b=g.filter(a=>"null"!==a);0===b.length?w.type="null":(w.anyOf=b.map(a=>({type:a})),a&&(w.nullable=!0))}else w.type=g;let x=null!=v?v:void 0!==r?[r]:void 0;if(void 0!==x&&function({values:a,type:b,result:d}){let e=Array.isArray(b)&&b.includes("null")||void 0===b&&a.includes(null),f=e?a.filter(a=>null!==a):a;if(a.length>0&&a.every(a=>null===a)&&(void 0===b||"null"===b||Array.isArray(b)&&b.includes("null"))){d.type="null",Array.isArray(b)&&delete d.anyOf;return}let g=function({values:a,type:b}){if(0===a.length)return;let c=a=>void 0===b||b===a||Array.isArray(b)&&b.includes(a);if(c("string")&&a.every(a=>"string"==typeof a))return"string";if((c("number")||c("integer"))&&a.every(a=>"number"==typeof a&&Number.isFinite(a))){if(c("number"))return"number";if(a.every(a=>Number.isInteger(a)))return"integer"}if(c("boolean")&&a.every(a=>"boolean"==typeof a))return"boolean"}({values:f,type:b});if(void 0===g)throw new c.UnsupportedFunctionalityError({functionality:"JSON Schema enum with mixed or unsupported values",message:"Google does not support this JSON Schema enum. Enum values must share one supported primitive type and match the schema type."});d.type=g,Array.isArray(b)&&delete d.anyOf,e&&(d.nullable=!0),"string"===g?d.enum=f:(d.format="enum",d.enum=f.map(String))}({values:x,type:g,result:w}),null!=j&&(w.properties=Object.entries(j).reduce((b,[c,d])=>(b[c]=a(d,!1,e),b),{})),k&&(w.items=Array.isArray(k)?k.map(b=>a(b,!1,e)):a(k,!1,e)),l&&(w.allOf=l.map(b=>a(b,!1,e))),m)if(m.some(a=>"object"==typeof a&&(null==a?void 0:a.type)==="null")){let b=m.filter(a=>"object"!=typeof a||(null==a?void 0:a.type)!=="null");if(1===b.length){let c=a(b[0],!1,e);"object"==typeof c&&(w.nullable=!0,Object.assign(w,c))}else w.anyOf=b.map(b=>a(b,!1,e)),w.nullable=!0}else w.anyOf=m.map(b=>a(b,!1,e));return n&&(w.oneOf=n.map(b=>a(b,!1,e))),void 0!==s&&(w.minLength=s),void 0!==t&&(w.minItems=t),void 0!==u&&(w.maxItems=u),w}(a,b,{definitions:null==d?void 0:d.definitions,dollarDefinitions:null==d?void 0:d.$defs,resolvingReferences:new Set})}function q(a){throw new c.UnsupportedFunctionalityError({functionality:`JSON Schema reference: ${a}`,message:"Google schema conversion only supports references to direct children of root-level $defs or definitions."})}var r=/^data:([^;,]+);base64,(.+)$/s,s=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({responseModalities:e.z.array(e.z.enum(["TEXT","IMAGE"])).optional(),thinkingConfig:e.z.object({thinkingBudget:e.z.number().optional(),includeThoughts:e.z.boolean().optional(),thinkingLevel:e.z.enum(["minimal","low","medium","high"]).optional()}).optional(),cachedContent:e.z.string().optional(),structuredOutputs:e.z.boolean().optional(),safetySettings:e.z.array(e.z.object({category:e.z.enum(["HARM_CATEGORY_UNSPECIFIED","HARM_CATEGORY_HATE_SPEECH","HARM_CATEGORY_DANGEROUS_CONTENT","HARM_CATEGORY_HARASSMENT","HARM_CATEGORY_SEXUALLY_EXPLICIT","HARM_CATEGORY_CIVIC_INTEGRITY"]),threshold:e.z.enum(["HARM_BLOCK_THRESHOLD_UNSPECIFIED","BLOCK_LOW_AND_ABOVE","BLOCK_MEDIUM_AND_ABOVE","BLOCK_ONLY_HIGH","BLOCK_NONE","OFF"])})).optional(),threshold:e.z.enum(["HARM_BLOCK_THRESHOLD_UNSPECIFIED","BLOCK_LOW_AND_ABOVE","BLOCK_MEDIUM_AND_ABOVE","BLOCK_ONLY_HIGH","BLOCK_NONE","OFF"]).optional(),audioTimestamp:e.z.boolean().optional(),labels:e.z.record(e.z.string(),e.z.string()).optional(),mediaResolution:e.z.enum(["MEDIA_RESOLUTION_UNSPECIFIED","MEDIA_RESOLUTION_LOW","MEDIA_RESOLUTION_MEDIUM","MEDIA_RESOLUTION_HIGH"]).optional(),imageConfig:e.z.object({aspectRatio:e.z.enum(["1:1","2:3","3:2","3:4","4:3","4:5","5:4","9:16","16:9","21:9","1:8","8:1","1:4","4:1"]).optional(),imageSize:e.z.enum(["1K","2K","4K","512"]).optional(),personGeneration:e.z.enum(["PERSON_GENERATION_UNSPECIFIED","ALLOW_ALL","ALLOW_ADULT","ALLOW_NONE"]).optional(),prominentPeople:e.z.enum(["PROMINENT_PEOPLE_UNSPECIFIED","ALLOW_PROMINENT_PEOPLE","BLOCK_PROMINENT_PEOPLE"]).optional(),imageOutputOptions:e.z.object({mimeType:e.z.enum(["image/jpeg","image/png"]).optional(),compressionQuality:e.z.number().optional()}).optional()}).optional(),retrievalConfig:e.z.object({latLng:e.z.object({latitude:e.z.number(),longitude:e.z.number()}).optional()}).optional(),streamFunctionCallArguments:e.z.boolean().optional(),serviceTier:e.z.enum(["standard","flex","priority"]).optional(),sharedRequestType:e.z.enum(["priority","flex","standard"]).optional(),requestType:e.z.enum(["shared"]).optional()}))),t=/(^|\/)gemini-1(?:[.-]|$)/i,u=/(^|\/)gemini-2(?:[.-]|$)/i,v=/(^|\/)gemini-2\.5(?:[.-]|$)/i,w=/(^|\/)gemini-/i;function x(a){let b=w.test(a),c=u.test(a),d=t.test(a)||/(^|\/)gemini-pro(?:-vision)?$/i.test(a)||/(^|\/)gemini-robotics-er-1\.5(?:[.-]|$)/i.test(a),e=b&&!(d||c);return{supportsGemini2Tools:b&&!d||a.toLowerCase().includes("nano-banana"),supportsFileSearch:v.test(a)||e,usesGemini3Features:e}}function y(a){var b;let d={name:a.name,description:null!=(b=a.description)?b:""};try{return{...d,parameters:p(a.inputSchema)}}catch(b){if(!(c.UnsupportedFunctionalityError.isInstance(b)&&b.functionality.startsWith(o)))throw b;return{...d,parametersJsonSchema:a.inputSchema}}}var z=class{constructor(){this.accumulatedArgs={},this.jsonText="",this.pathStack=[],this.stringOpen=!1}processPartialArgs(a){let b="";for(let c of a){let a=c.jsonPath.replace(/^\$\./,"");if(!a)continue;let d=function(a){let b=[];for(let c of a.split(".")){let a=c.indexOf("[");if(-1===a)b.push(c);else for(let d of(a>0&&b.push(c.slice(0,a)),c.matchAll(/\[(\d+)\]/g)))b.push(parseInt(d[1],10))}return b}(a),e=function(a,b){let c=a;for(let a of b){if(null==c||"object"!=typeof c)return;let b=c;if(!A.call(b,a))return;c=b[a]}return c}(this.accumulatedArgs,d);if(null!=c.stringValue&&void 0!==e){let a=JSON.stringify(c.stringValue).slice(1,-1);C(this.accumulatedArgs,d,e+c.stringValue),b+=a;continue}let f=function(a){var b,c;let d=null!=(c=null!=(b=a.stringValue)?b:a.numberValue)?c:a.boolValue;return null!=d?{value:d,json:JSON.stringify(d)}:"nullValue"in a?{value:null,json:"null"}:void 0}(c);null!=f&&(C(this.accumulatedArgs,d,f.value),b+=this.emitNavigationTo(d,c,f.json))}return this.jsonText+=b,{currentJSON:this.accumulatedArgs,textDelta:b}}finalize(){let a=JSON.stringify(this.accumulatedArgs),b=a.slice(this.jsonText.length);return{finalJSON:a,closingDelta:b}}ensureRoot(){return 0===this.pathStack.length?(this.pathStack.push({segment:"",isArray:!1,childCount:0}),"{"):""}emitNavigationTo(a,b,c){let d="";this.stringOpen&&(d+='"',this.stringOpen=!1),d+=this.ensureRoot();let e=a.slice(0,-1),f=a[a.length-1],g=this.findCommonStackDepth(e);return d+=this.closeDownTo(g),d+=this.openDownTo(e,f),d+=this.emitLeaf(f,b,c)}findCommonStackDepth(a){let b=Math.min(this.pathStack.length-1,a.length),c=0;for(let d=0;d<b;d++)if(this.pathStack[d+1].segment===a[d])c++;else break;return c+1}closeDownTo(a){let b="";for(;this.pathStack.length>a;)b+=this.pathStack.pop().isArray?"]":"}";return b}openDownTo(a,b){let c="",d=this.pathStack.length-1;for(let e=d;e<a.length;e++){let d=a[e],f=this.pathStack[this.pathStack.length-1];f.childCount>0&&(c+=","),f.childCount++,"string"==typeof d&&(c+=`${JSON.stringify(d)}:`);let g="number"==typeof(e+1<a.length?a[e+1]:b);c+=g?"[":"{",this.pathStack.push({segment:d,isArray:g,childCount:0})}return c}emitLeaf(a,b,c){let d="",e=this.pathStack[this.pathStack.length-1];return e.childCount>0&&(d+=","),e.childCount++,"string"==typeof a&&(d+=`${JSON.stringify(a)}:`),null!=b.stringValue&&b.willContinue?(d+=c.slice(0,-1),this.stringOpen=!0):d+=c,d}},A=Object.prototype.hasOwnProperty;function B(a,b,c){Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0})}function C(a,b,c){let d=a;for(let a=0;a<b.length-1;a++){var e;let c=b[a],f=b[a+1];e=d,A.call(e,c)&&null!=d[c]||B(d,c,"number"==typeof f?[]:{}),d=d[c]}B(d,b[b.length-1],c)}function D({finishReason:a,hasToolCalls:b}){switch(a){case"STOP":return b?"tool-calls":"stop";case"MAX_TOKENS":return"length";case"IMAGE_SAFETY":case"RECITATION":case"SAFETY":case"BLOCKLIST":case"PROHIBITED_CONTENT":case"SPII":return"content-filter";case"MALFORMED_FUNCTION_CALL":return"error";default:return"other"}}var E=["HARM_CATEGORY_HATE_SPEECH","HARM_CATEGORY_DANGEROUS_CONTENT","HARM_CATEGORY_HARASSMENT","HARM_CATEGORY_SEXUALLY_EXPLICIT"],F=/(^|\/)gemini-2\.5(?:[.-]|$)/i,G=class a{constructor(a,c){var d;this.specificationVersion="v4",this.modelId=a,this.config=c,this.generateId=null!=(d=c.generateId)?d:b.generateId}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}get supportedUrls(){var a,b,c;return null!=(c=null==(b=(a=this.config).supportedUrls)?void 0:b.call(a))?c:{}}async getArgs({prompt:a,maxOutputTokens:d,temperature:e,topP:f,topK:g,frequencyPenalty:h,presencePenalty:i,stopSequences:j,responseFormat:k,seed:l,tools:m,toolChoice:n,reasoning:o,providerOptions:q},{isStreaming:t=!1}={}){var u,v,w;let z,A=[],B=this.config.provider.includes("vertex")?["googleVertex","vertex"]:["google"];for(let a of B)if(null!=(z=await (0,b.parseProviderOptions)({provider:a,providerOptions:q,schema:s})))break;null!=z||B.includes("google")||(z=await (0,b.parseProviderOptions)({provider:"google",providerOptions:q,schema:s}));let C=this.config.provider.startsWith("google.vertex.");(null==m?void 0:m.some(a=>"provider"===a.type&&"google.vertex_rag_store"===a.id))&&!C&&A.push({type:"other",message:`The 'vertex_rag_store' tool is only supported with the Google Vertex provider and might not be supported or could behave unexpectedly with the current Google provider (${this.config.provider}).`}),(null==z?void 0:z.streamFunctionCallArguments)&&!C&&A.push({type:"other",message:`'streamFunctionCallArguments' is only supported on the Vertex AI API and will be ignored with the current Google provider (${this.config.provider}). See https://docs.cloud.google.com/vertex-ai/generative-ai/docs/multimodal/function-calling#streaming-fc`}),(null==z?void 0:z.serviceTier)&&C&&A.push({type:"other",message:"'serviceTier' is a Gemini API option and is not supported on Vertex AI. Use 'sharedRequestType' (and optionally 'requestType') instead. See https://docs.cloud.google.com/vertex-ai/generative-ai/docs/priority-paygo"}),((null==z?void 0:z.sharedRequestType)||(null==z?void 0:z.requestType))&&!C&&A.push({type:"other",message:`'sharedRequestType' and 'requestType' are Vertex AI options and are ignored with the current Google provider (${this.config.provider}).`});let D=C&&((null==z?void 0:z.sharedRequestType)||(null==z?void 0:z.requestType))?{...z.sharedRequestType&&{"X-Vertex-AI-LLM-Shared-Request-Type":z.sharedRequestType},...z.requestType&&{"X-Vertex-AI-LLM-Request-Type":z.requestType}}:void 0,G=C||null==z?void 0:z.serviceTier,H=null==z?void 0:z.imageConfig;if(null!=H&&!C){let{personGeneration:a,prominentPeople:b,imageOutputOptions:c,...d}=H,e=Object.entries({personGeneration:a,prominentPeople:b,imageOutputOptions:c}).filter(([,a])=>null!=a).map(([a])=>`'imageConfig.${a}'`);e.length>0&&(A.push({type:"other",message:`${e.join(", ")} ${1===e.length?"is a Vertex AI option and is":"are Vertex AI options and are"} ignored with the current Google provider (${this.config.provider}).`}),H=d)}let I=this.modelId.toLowerCase().startsWith("gemma-"),J=!C&&F.test(this.modelId);J&&null!=h&&A.push({type:"unsupported",feature:"frequencyPenalty"}),J&&null!=i&&A.push({type:"unsupported",feature:"presencePenalty"});let{usesGemini3Features:K}=x(this.modelId),{contents:L,systemInstruction:M}=function(a,d){var e,f,g,h,i,j;let k=[],l=[],m=!0,n=null!=(e=null==d?void 0:d.isGemmaModel)&&e,o=null!=(f=null==d?void 0:d.isGemini3Model)&&f,p=null==d?void 0:d.onWarning,q=null!=(g=null==d?void 0:d.providerOptionsNames)?g:["google"],s=!q.includes("google"),t=null==(h=null==d?void 0:d.supportsFunctionResponseParts)||h,u=null==(i=null==d?void 0:d.includeFunctionCallIds)||i,v=!1,w=[],x=a=>(w.push(a),v=!0,"skip_thought_signature_validator"),y=a=>{var b,c,d,e,f;for(let c of q){let d=null==(b=a.providerOptions)?void 0:b[c];if(null!=d)return d}return s?null==(c=a.providerOptions)?void 0:c.google:null!=(f=null==(d=a.providerOptions)?void 0:d.googleVertex)?f:null==(e=a.providerOptions)?void 0:e.vertex};for(let{role:d,content:e}of a)switch(d){case"system":if(!m)throw new c.UnsupportedFunctionalityError({functionality:"system messages are only supported at the beginning of the conversation"});k.push({text:e});break;case"user":{m=!1;let a=[];for(let d of e)switch(d.type){case"text":a.push({text:d.text});break;case"file":switch(d.data.type){case"url":a.push({fileData:{mimeType:(0,b.resolveFullMediaType)({part:d}),fileUri:d.data.url.toString()}});break;case"reference":if(s)throw new c.UnsupportedFunctionalityError({functionality:"file parts with provider references"});a.push({fileData:{mimeType:(0,b.resolveFullMediaType)({part:d}),fileUri:(0,b.resolveProviderReference)({reference:d.data.reference,provider:"google"})}});break;case"text":a.push({inlineData:{mimeType:(0,b.isFullMediaType)(d.mediaType)?d.mediaType:"text/plain",data:(0,b.convertToBase64)(new TextEncoder().encode(d.data.text))}});break;case"data":a.push({inlineData:{mimeType:(0,b.resolveFullMediaType)({part:d}),data:(0,b.convertToBase64)(d.data.data)}})}}l.push({role:"user",parts:a});break}case"assistant":{m=!1;let a=!1;l.push({role:"model",parts:e.map(d=>{let e=y(d),f=(null==e?void 0:e.thoughtSignature)!=null?String(e.thoughtSignature):void 0;switch(d.type){case"text":return 0===d.text.length?void 0:{text:d.text,thoughtSignature:f};case"reasoning":return 0===d.text.length?void 0:{text:d.text,thought:!0,thoughtSignature:f};case"reasoning-file":switch(d.data.type){case"url":throw new c.UnsupportedFunctionalityError({functionality:"File data URLs in assistant messages are not supported"});case"data":return{inlineData:{mimeType:d.mediaType,data:(0,b.convertToBase64)(d.data.data)},thought:!0,thoughtSignature:f}}break;case"file":switch(d.data.type){case"url":throw new c.UnsupportedFunctionalityError({functionality:"File data URLs in assistant messages are not supported"});case"reference":if(s)throw new c.UnsupportedFunctionalityError({functionality:"file parts with provider references"});return{fileData:{mimeType:d.mediaType,fileUri:(0,b.resolveProviderReference)({reference:d.data.reference,provider:"google"})},...(null==e?void 0:e.thought)===!0?{thought:!0}:{},thoughtSignature:f};case"text":return{inlineData:{mimeType:(0,b.isFullMediaType)(d.mediaType)?d.mediaType:"text/plain",data:(0,b.convertToBase64)(new TextEncoder().encode(d.data.text))},...(null==e?void 0:e.thought)===!0?{thought:!0}:{},thoughtSignature:f};case"data":return{inlineData:{mimeType:d.mediaType,data:(0,b.convertToBase64)(d.data.data)},...(null==e?void 0:e.thought)===!0?{thought:!0}:{},thoughtSignature:f}}break;case"tool-call":{let c=(null==e?void 0:e.serverToolCallId)!=null?String(e.serverToolCallId):void 0,g=(null==e?void 0:e.serverToolType)!=null?String(e.serverToolType):void 0,h=null!=c&&null!=g,i=!h&&null==f&&a,j=null!=f?f:o&&!i?x(d.toolName):void 0;if(h||null==f||(a=!0),h)return{toolCall:{toolType:g,args:"string"==typeof d.input?(0,b.secureJsonParse)(d.input):d.input,id:c},thoughtSignature:j};return{functionCall:{...u&&null!=d.toolCallId?{id:d.toolCallId}:{},name:d.toolName,args:d.input},thoughtSignature:j}}case"tool-result":{let a=(null==e?void 0:e.serverToolCallId)!=null?String(e.serverToolCallId):void 0,b=(null==e?void 0:e.serverToolType)!=null?String(e.serverToolType):void 0;if(a&&b)return{toolResponse:{toolType:b,response:"json"===d.output.type?d.output.value:{},id:a},thoughtSignature:f};return}}}).filter(a=>void 0!==a)});break}case"tool":{m=!1;let a=[];for(let c of e){if("tool-approval-response"===c.type)continue;let d=y(c),e=(null==d?void 0:d.serverToolCallId)!=null?String(d.serverToolCallId):void 0,f=(null==d?void 0:d.serverToolType)!=null?String(d.serverToolType):void 0;if(e&&f){let a=(null==d?void 0:d.thoughtSignature)!=null?String(d.thoughtSignature):void 0;if(l.length>0){let b=l[l.length-1];if("model"===b.role){b.parts.push({toolResponse:{toolType:f,response:"json"===c.output.type?c.output.value:{},id:e},thoughtSignature:a});continue}}}let g=c.output;"content"===g.type?t?function(a,c,d,e,f=!0){let g=[],h=[];for(let a of d)switch(a.type){case"text":h.push(a.text);break;case"file":if("data"===a.data.type)g.push({inlineData:{mimeType:(0,b.resolveFullMediaType)({part:a}),data:(0,b.convertToBase64)(a.data.data)}});else if("url"===a.data.type){let b=function(a){let b=function(a){let b=r.exec(a);if(null!=b)return{mediaType:b[1],data:b[2]}}(a);if(null!=b)return{inlineData:{mimeType:b.mediaType,data:b.data}}}(a.data.url.toString());null!=b?g.push(b):h.push(JSON.stringify(a))}else h.push(JSON.stringify(a));break;default:h.push(JSON.stringify(a))}a.push({functionResponse:{...f&&null!=e?{id:e}:{},name:c,response:{name:c,content:h.length>0?h.join("\n"):"Tool executed successfully."},...g.length>0?{parts:g}:{}}})}(a,c.toolName,g.value,c.toolCallId,u):function(a,c,d,e,f=!0){for(let g of d)switch(g.type){case"text":a.push({functionResponse:{...f&&null!=e?{id:e}:{},name:c,response:{name:c,content:g.text}}});break;case"file":if("data"===g.data.type){let c=(0,b.getTopLevelMediaType)(g.mediaType);a.push({inlineData:{mimeType:(0,b.resolveFullMediaType)({part:g}),data:(0,b.convertToBase64)(g.data.data)}},{text:`Tool executed successfully and returned this ${"image"===c?"image":"file"} as a response`})}else a.push({text:JSON.stringify(g)});break;default:a.push({text:JSON.stringify(g)})}}(a,c.toolName,g.value,c.toolCallId,u):a.push({functionResponse:{...u&&null!=c.toolCallId?{id:c.toolCallId}:{},name:c.toolName,response:{name:c.toolName,content:"execution-denied"===g.type?null!=(j=g.reason)?j:"Tool call execution denied.":g.value}}})}l.push({role:"user",parts:a})}}if(n&&k.length>0&&l.length>0&&"user"===l[0].role){let a=k.map(a=>a.text).join("\n\n");l[0].parts.unshift({text:a+"\n\n"})}if(v&&null!=p){let a=Array.from(new Set(w));p({type:"other",message:`Replayed ${w.length} \`functionCall\` part(s) for a Gemini 3 model without a \`thoughtSignature\` (tools: ${a.map(a=>`\`${a}\``).join(", ")}). Injected the documented \`skip_thought_signature_validator\` sentinel to keep the request from failing with HTTP 400. The likely cause is application code that drops \`providerOptions.google.thoughtSignature\` when persisting or serializing assistant tool-call messages. See https://ai.google.dev/gemini-api/docs/thought-signatures.`})}return{systemInstruction:k.length>0&&!n?{parts:k}:void 0,contents:l}}(a,{isGemmaModel:I,isGemini3Model:K,onWarning:a=>A.push(a),providerOptionsNames:B,supportsFunctionResponseParts:K,includeFunctionCallIds:!C}),{tools:N,toolConfig:O,toolWarnings:P}=function({tools:a,toolChoice:b,modelId:d,isVertexProvider:e=!1}){a=(null==a?void 0:a.length)?a:void 0;let f=[],{supportsGemini2Tools:g,supportsFileSearch:h,usesGemini3Features:i}=x(d);if(null==a)return{tools:void 0,toolConfig:void 0,toolWarnings:f};let j=a.some(a=>"function"===a.type),k=a.some(a=>"provider"===a.type);if(j&&k&&!i&&f.push({type:"unsupported",feature:"combination of function and provider-defined tools"}),k){let c=[];if(a.filter(a=>"provider"===a.type).forEach(a=>{switch(a.id){case"google.google_search":g?c.push({googleSearch:{...a.args}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"Google Search requires Gemini 2.0 or newer."});break;case"google.enterprise_web_search":g?c.push({enterpriseWebSearch:{}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"Enterprise Web Search requires Gemini 2.0 or newer."});break;case"google.url_context":g?c.push({urlContext:{}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"The URL context tool is not supported with other Gemini models than Gemini 2."});break;case"google.code_execution":g?c.push({codeExecution:{}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"The code execution tool is not supported with other Gemini models than Gemini 2."});break;case"google.file_search":h?c.push({fileSearch:{...a.args}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"The file search tool is only supported with Gemini 2.5 models and Gemini 3 models."});break;case"google.vertex_rag_store":g?c.push({retrieval:{vertex_rag_store:{rag_resources:{rag_corpus:a.args.ragCorpus},similarity_top_k:a.args.topK}}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"The RAG store tool is not supported with other Gemini models than Gemini 2."});break;case"google.google_maps":g?c.push({googleMaps:{}}):f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:"The Google Maps grounding tool is not supported with Gemini models other than Gemini 2 or newer."});break;default:f.push({type:"unsupported",feature:`provider-defined tool ${a.id}`})}}),j&&i&&c.length>0){let d=[];for(let b of a)"function"===b.type&&d.push(y(b));let g={functionCallingConfig:{mode:"VALIDATED"},...!e&&{includeServerSideToolInvocations:!0}};if(null!=b)switch(b.type){case"auto":break;case"none":g.functionCallingConfig={mode:"NONE"};break;case"required":g.functionCallingConfig={mode:"ANY"};break;case"tool":g.functionCallingConfig={mode:"ANY",allowedFunctionNames:[b.toolName]}}return{tools:[...c,{functionDeclarations:d}],toolConfig:g,toolWarnings:f}}return{tools:c.length>0?c:void 0,toolConfig:void 0,toolWarnings:f}}let l=[],m=!1;for(let b of a)"function"===b.type?(l.push(y(b)),!0===b.strict&&(m=!0)):f.push({type:"unsupported",feature:`function tool ${b.name}`});if(null==b)return{tools:[{functionDeclarations:l}],toolConfig:m?{functionCallingConfig:{mode:"VALIDATED"}}:void 0,toolWarnings:f};let n=b.type;switch(n){case"auto":return{tools:[{functionDeclarations:l}],toolConfig:{functionCallingConfig:{mode:m?"VALIDATED":"AUTO"}},toolWarnings:f};case"none":return{tools:[{functionDeclarations:l}],toolConfig:{functionCallingConfig:{mode:"NONE"}},toolWarnings:f};case"required":return{tools:[{functionDeclarations:l}],toolConfig:{functionCallingConfig:{mode:"ANY"}},toolWarnings:f};case"tool":return{tools:[{functionDeclarations:l}],toolConfig:{functionCallingConfig:{mode:"ANY",allowedFunctionNames:[b.toolName]}},toolWarnings:f};default:throw new c.UnsupportedFunctionalityError({functionality:`tool choice type: ${n}`})}}({tools:m,toolChoice:n,modelId:this.modelId,isVertexProvider:C}),Q=(0,b.createToolNameMapping)({tools:m,providerToolNames:{"google.code_execution":"code_execution"}}),R=function({reasoning:a,modelId:c,warnings:d}){if((0,b.isCustomReasoning)(a))return x(c).usesGemini3Features&&!c.includes("gemini-3-pro-image")?function({reasoning:a,modelId:c,warnings:d}){let e=function(a){var b;let c=null==(b=a.split("/").at(-1))?void 0:b.toLowerCase();if("gemini-flash-latest"===c)return"low";let d=/^gemini-(\d+)\.(\d+)-flash(?:$|-(?!lite(?:-|$)))/.exec(null!=c?c:"");if(null==d)return"minimal";let e=Number(d[1]),f=Number(d[2]);return e>3||3===e&&f>=7?"low":"minimal"}(c);if("none"===a)return{thinkingLevel:e};let f=(0,b.mapReasoningToProviderEffort)({reasoning:a,effortMap:{minimal:e,low:"low",medium:"medium",high:"high",xhigh:"high"},warnings:d});if(null!=f)return{thinkingLevel:f}}({reasoning:a,modelId:c,warnings:d}):function({reasoning:a,modelId:c,warnings:d}){let e;if("none"===a)return{thinkingBudget:0};let f=(0,b.mapReasoningToProviderBudget)({reasoning:a,maxOutputTokens:65536,maxReasoningBudget:(e=c.toLowerCase()).includes("2.5-pro")||e.includes("gemini-3-pro-image")?32768:24576,minReasoningBudget:0,warnings:d});if(null!=f)return{thinkingBudget:f}}({reasoning:a,modelId:c,warnings:d})}({reasoning:o,modelId:this.modelId,warnings:A}),S=(null==z?void 0:z.thinkingConfig)||R?{...R,...null==z?void 0:z.thinkingConfig}:void 0,T=t&&C?null!=(u=null==z?void 0:z.streamFunctionCallArguments)&&u:void 0,U=null==z?void 0:z.threshold,V=null!=(v=null==z?void 0:z.safetySettings)?v:null!=U?E.map(a=>({category:a,threshold:U})):void 0,W=O||T||(null==z?void 0:z.retrievalConfig)?{...O,...T&&{functionCallingConfig:{...null==O?void 0:O.functionCallingConfig,streamFunctionCallArguments:!0}},...(null==z?void 0:z.retrievalConfig)&&{retrievalConfig:z.retrievalConfig}}:void 0;return{args:{generationConfig:{maxOutputTokens:d,temperature:e,topK:g,topP:f,frequencyPenalty:J?void 0:h,presencePenalty:J?void 0:i,stopSequences:j,seed:l,responseMimeType:(null==k?void 0:k.type)==="json"?"application/json":void 0,responseSchema:(null==k?void 0:k.type)==="json"&&null!=k.schema&&(null==(w=null==z?void 0:z.structuredOutputs)||w)?p(k.schema):void 0,...(null==z?void 0:z.audioTimestamp)&&{audioTimestamp:z.audioTimestamp},responseModalities:null==z?void 0:z.responseModalities,thinkingConfig:S,...(null==z?void 0:z.mediaResolution)&&{mediaResolution:z.mediaResolution},...H&&{imageConfig:H}},contents:L,systemInstruction:I?void 0:M,safetySettings:V,tools:N,toolConfig:W,cachedContent:null==z?void 0:z.cachedContent,labels:null==z?void 0:z.labels,serviceTier:G},warnings:[...A,...P],providerOptionsNames:B,extraHeaders:D,toolNameMapping:Q}}convertGenerateContentResponse({response:a,warnings:b,providerOptionsNames:c,toolNameMapping:d}){var e,f,g,h,i,j,k,l,m,o,p,q,r,s,t,u,v,w,x,y,z;let A,B,C=a=>Object.fromEntries(c.map(b=>[b,a])),E=null==(e=a.candidates)?void 0:e[0],F=null==(f=a.promptFeedback)?void 0:f.blockReason,G=(null==E?void 0:E.finishReason)==null&&null!=F,I=null!=(h=null!=(g=null==E?void 0:E.finishReason)?g:F)?h:void 0,J=[],K=null!=(j=null==(i=null==E?void 0:E.content)?void 0:i.parts)?j:[],L=a.usageMetadata;for(let a of K)if("executableCode"in a&&(null==(k=a.executableCode)?void 0:k.code)){let b=this.config.generateId();A=b,J.push({type:"tool-call",toolCallId:b,toolName:null!=(l=null==d?void 0:d.toCustomToolName("code_execution"))?l:"code_execution",input:JSON.stringify(a.executableCode),providerExecuted:!0})}else if("codeExecutionResult"in a&&a.codeExecutionResult)J.push({type:"tool-result",toolCallId:A,toolName:null!=(m=null==d?void 0:d.toCustomToolName("code_execution"))?m:"code_execution",result:{outcome:a.codeExecutionResult.outcome,output:null!=(o=a.codeExecutionResult.output)?o:""}});else if("text"in a&&null!=a.text){let b=a.thoughtSignature?C({thoughtSignature:a.thoughtSignature}):void 0;0===a.text.length?null!=b&&J.length>0&&(J[J.length-1].providerMetadata=b):J.push({type:!0===a.thought?"reasoning":"text",text:a.text,providerMetadata:b})}else if("functionCall"in a&&null!=a.functionCall.name)J.push({type:"tool-call",toolCallId:a.functionCall.id||this.config.generateId(),toolName:a.functionCall.name,input:JSON.stringify(null!=(p=a.functionCall.args)?p:{}),providerMetadata:a.thoughtSignature?C({thoughtSignature:a.thoughtSignature}):void 0});else if("inlineData"in a){let b=!0===a.thought,c=!!a.thoughtSignature;J.push({type:b?"reasoning-file":"file",data:{type:"data",data:a.inlineData.data},mediaType:a.inlineData.mimeType,providerMetadata:c?C({thoughtSignature:a.thoughtSignature}):void 0})}else if("toolCall"in a&&a.toolCall){let b=a.toolCall.id||this.config.generateId();B=b,J.push({type:"tool-call",toolCallId:b,toolName:`server:${a.toolCall.toolType}`,input:JSON.stringify(null!=(q=a.toolCall.args)?q:{}),providerExecuted:!0,dynamic:!0,providerMetadata:C(a.thoughtSignature?{thoughtSignature:a.thoughtSignature,serverToolCallId:b,serverToolType:a.toolCall.toolType}:{serverToolCallId:b,serverToolType:a.toolCall.toolType})})}else if("toolResponse"in a&&a.toolResponse){let b=B||a.toolResponse.id||this.config.generateId();J.push({type:"tool-result",toolCallId:b,toolName:`server:${a.toolResponse.toolType}`,result:null!=(r=a.toolResponse.response)?r:{},providerMetadata:C(a.thoughtSignature?{thoughtSignature:a.thoughtSignature,serverToolCallId:b,serverToolType:a.toolResponse.toolType}:{serverToolCallId:b,serverToolType:a.toolResponse.toolType})}),B=void 0}for(let a of null!=(s=H({groundingMetadata:null==E?void 0:E.groundingMetadata,generateId:this.config.generateId}))?s:[])J.push(a);return{content:J,finishReason:{unified:G?"content-filter":D({finishReason:I,hasToolCalls:J.some(a=>"tool-call"===a.type&&!a.providerExecuted)}),raw:I},usage:n(L),warnings:b,providerMetadata:C({promptFeedback:null!=(t=a.promptFeedback)?t:null,groundingMetadata:null!=(u=null==E?void 0:E.groundingMetadata)?u:null,urlContextMetadata:null!=(v=null==E?void 0:E.urlContextMetadata)?v:null,safetyRatings:null!=(w=null==E?void 0:E.safetyRatings)?w:null,usageMetadata:null!=L?L:null,finishMessage:null!=(x=null==E?void 0:E.finishMessage)?x:null,serviceTier:null!=(y=null==L?void 0:L.serviceTier)?y:null}),response:{id:null!=(z=a.responseId)?z:void 0}}}async doGenerate(a){let{args:c,warnings:d,providerOptionsNames:e,extraHeaders:f,toolNameMapping:h}=await this.getArgs(a),i=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers,f),{responseHeaders:j,value:k,rawValue:l}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/${m(this.modelId)}:generateContent`,headers:i,body:c,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(P),abortSignal:a.abortSignal,fetch:this.config.fetch}),n=this.convertGenerateContentResponse({response:k,warnings:d,providerOptionsNames:e,toolNameMapping:h});return{...n,request:{body:c},response:{...n.response,headers:j,body:l}}}async doStream(a){let c,d,e,f,{args:h,warnings:i,providerOptionsNames:j,extraHeaders:k,toolNameMapping:l}=await this.getArgs(a,{isStreaming:!0}),o=a=>Object.fromEntries(j.map(b=>[b,a])),p=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers,k),{responseHeaders:q,value:r}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/${m(this.modelId)}:streamGenerateContent?alt=sse`,headers:p,body:h,failedResponseHandler:g,successfulResponseHandler:(0,b.createEventSourceResponseHandler)(Q),abortSignal:a.abortSignal,fetch:this.config.fetch}),s={unified:"other",raw:void 0},t=null,u=null,v=this.config.generateId,w=!1,x=!1,y=null,A=null,B=0,C=new Set,E=[],F=a=>{let b=E.pop();if(null==b)return;let{finalJSON:c,closingDelta:d}=b.accumulator.finalize();d.length>0&&a.enqueue({type:"tool-input-delta",id:b.toolCallId,delta:d,providerMetadata:b.providerMetadata}),a.enqueue({type:"tool-input-end",id:b.toolCallId,providerMetadata:b.providerMetadata}),a.enqueue({type:"tool-call",toolCallId:b.toolCallId,toolName:b.toolName,input:c,providerMetadata:b.providerMetadata}),w=!0};return{stream:r.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:i})},transform(b,g){var h,i,j,k,m,n,p,q,r,G,I,J,K,L,M,N,O;if(a.includeRawChunks&&g.enqueue({type:"raw",rawValue:b.rawValue}),!b.success)return void g.enqueue({type:"error",error:b.error});let P=b.value;x||null==P.responseId||(x=!0,g.enqueue({type:"response-metadata",id:P.responseId}));let Q=P.usageMetadata;null!=Q&&(e=Q);let R=null==(h=P.candidates)?void 0:h[0];if(null==R){let a=null==(i=P.promptFeedback)?void 0:i.blockReason;null!=a&&(s={unified:"content-filter",raw:a},f=o({promptFeedback:null!=(j=P.promptFeedback)?j:null,groundingMetadata:t,urlContextMetadata:u,safetyRatings:null,usageMetadata:null!=Q?Q:null,finishMessage:null,serviceTier:null!=(k=null==e?void 0:e.serviceTier)?k:null}));return}let S=R.content;null!=R.groundingMetadata&&(t=R.groundingMetadata),null!=R.urlContextMetadata&&(u=R.urlContextMetadata);let T=H({groundingMetadata:R.groundingMetadata,generateId:v});if(null!=T)for(let a of T)"url"!==a.sourceType||C.has(a.url)||(C.add(a.url),g.enqueue(a));if(null!=S){let a=null!=(m=S.parts)?m:[];for(let b of a)if("executableCode"in b&&(null==(n=b.executableCode)?void 0:n.code)){let a=v();c=a,g.enqueue({type:"tool-call",toolCallId:a,toolName:l.toCustomToolName("code_execution"),input:JSON.stringify(b.executableCode),providerExecuted:!0})}else if("codeExecutionResult"in b&&b.codeExecutionResult){let a=c;a&&g.enqueue({type:"tool-result",toolCallId:a,toolName:l.toCustomToolName("code_execution"),result:{outcome:b.codeExecutionResult.outcome,output:null!=(p=b.codeExecutionResult.output)?p:""}})}else if("text"in b&&null!=b.text){let a=b.thoughtSignature?o({thoughtSignature:b.thoughtSignature}):void 0;0===b.text.length?null!=a&&null!==y&&g.enqueue({type:"text-delta",id:y,delta:"",providerMetadata:a}):!0===b.thought?(null!==y&&(g.enqueue({type:"text-end",id:y}),y=null),null===A&&(A=String(B++),g.enqueue({type:"reasoning-start",id:A,providerMetadata:a})),g.enqueue({type:"reasoning-delta",id:A,delta:b.text,providerMetadata:a})):(null!==A&&(g.enqueue({type:"reasoning-end",id:A}),A=null),null===y&&(y=String(B++),g.enqueue({type:"text-start",id:y,providerMetadata:a})),g.enqueue({type:"text-delta",id:y,delta:b.text,providerMetadata:a}))}else if("inlineData"in b){null!==y&&(g.enqueue({type:"text-end",id:y}),y=null),null!==A&&(g.enqueue({type:"reasoning-end",id:A}),A=null);let a=!0===b.thought,c=b.thoughtSignature?o({thoughtSignature:b.thoughtSignature}):void 0;g.enqueue({type:a?"reasoning-file":"file",mediaType:b.inlineData.mimeType,data:{type:"data",data:b.inlineData.data},providerMetadata:c})}else if("toolCall"in b&&b.toolCall){let a=b.toolCall.id||v();d=a;let c=o({...b.thoughtSignature?{thoughtSignature:b.thoughtSignature}:{},serverToolCallId:a,serverToolType:b.toolCall.toolType});g.enqueue({type:"tool-call",toolCallId:a,toolName:`server:${b.toolCall.toolType}`,input:JSON.stringify(null!=(q=b.toolCall.args)?q:{}),providerExecuted:!0,dynamic:!0,providerMetadata:c})}else if("toolResponse"in b&&b.toolResponse){let a=d||b.toolResponse.id||v(),c=o({...b.thoughtSignature?{thoughtSignature:b.thoughtSignature}:{},serverToolCallId:a,serverToolType:b.toolResponse.toolType});g.enqueue({type:"tool-result",toolCallId:a,toolName:`server:${b.toolResponse.toolType}`,result:null!=(r=b.toolResponse.response)?r:{},providerMetadata:c}),d=void 0}for(let b of a){if(!("functionCall"in b))continue;let a=b.thoughtSignature?o({thoughtSignature:b.thoughtSignature}):void 0,c=null!=b.functionCall.partialArgs||null!=b.functionCall.name&&!0===b.functionCall.willContinue,d=null==b.functionCall.name&&null==b.functionCall.args&&null==b.functionCall.partialArgs&&null==b.functionCall.willContinue,e=null!=b.functionCall.name&&null!=b.functionCall.args&&null==b.functionCall.partialArgs,f=null!=b.functionCall.name&&null==b.functionCall.args&&null==b.functionCall.partialArgs&&!0!==b.functionCall.willContinue;if(c){if(null!=b.functionCall.name){let c=b.functionCall.id||v(),d=new z;if(E.push({toolCallId:c,toolName:b.functionCall.name,accumulator:d,providerMetadata:a}),g.enqueue({type:"tool-input-start",id:c,toolName:b.functionCall.name,providerMetadata:a}),null!=b.functionCall.partialArgs){let e=b.functionCall.partialArgs,{textDelta:f}=d.processPartialArgs(e);f.length>0&&g.enqueue({type:"tool-input-delta",id:c,delta:f,providerMetadata:a}),!0!==b.functionCall.willContinue&&e.every(a=>!0!==a.willContinue)&&F(g)}}else if(null!=b.functionCall.partialArgs&&E.length>0){let c=E[E.length-1],d=b.functionCall.partialArgs,{textDelta:e}=c.accumulator.processPartialArgs(d);e.length>0&&g.enqueue({type:"tool-input-delta",id:c.toolCallId,delta:e,providerMetadata:a}),!0!==b.functionCall.willContinue&&d.every(a=>!0!==a.willContinue)&&F(g)}}else if(d&&E.length>0)F(g);else if(e){let c=b.functionCall.id||v(),d=b.functionCall.name,e="string"==typeof b.functionCall.args?b.functionCall.args:JSON.stringify(null!=(G=b.functionCall.args)?G:{});g.enqueue({type:"tool-input-start",id:c,toolName:d,providerMetadata:a}),g.enqueue({type:"tool-input-delta",id:c,delta:e,providerMetadata:a}),g.enqueue({type:"tool-input-end",id:c,providerMetadata:a}),g.enqueue({type:"tool-call",toolCallId:c,toolName:d,input:e,providerMetadata:a}),w=!0}else if(f){let c=b.functionCall.id||v(),d=b.functionCall.name;g.enqueue({type:"tool-input-start",id:c,toolName:d,providerMetadata:a}),g.enqueue({type:"tool-input-end",id:c,providerMetadata:a}),g.enqueue({type:"tool-call",toolCallId:c,toolName:d,input:"{}",providerMetadata:a}),w=!0}}}let U=null==(I=P.promptFeedback)?void 0:I.blockReason,V=null==R.finishReason&&null!=U,W=null!=(K=null!=(J=R.finishReason)?J:U)?K:void 0;null!=W&&(s={unified:V?"content-filter":D({finishReason:W,hasToolCalls:w}),raw:W},f=o({promptFeedback:null!=(L=P.promptFeedback)?L:null,groundingMetadata:t,urlContextMetadata:u,safetyRatings:null!=(M=R.safetyRatings)?M:null,usageMetadata:null!=Q?Q:null,finishMessage:null!=(N=R.finishMessage)?N:null,serviceTier:null!=(O=null==e?void 0:e.serviceTier)?O:null}))},flush(a){null!==y&&a.enqueue({type:"text-end",id:y}),null!==A&&a.enqueue({type:"reasoning-end",id:A}),a.enqueue({type:"finish",finishReason:s,usage:n(e),providerMetadata:f})}})),response:{headers:q},request:{body:h}}}};function H({groundingMetadata:a,generateId:b}){var c,d,e,f,g,h;if(!(null==a?void 0:a.groundingChunks))return;let i=[];for(let j of a.groundingChunks)if(null!=j.web)i.push({type:"source",sourceType:"url",id:b(),url:j.web.uri,title:null!=(c=j.web.title)?c:void 0});else if(null!=j.image)i.push({type:"source",sourceType:"url",id:b(),url:j.image.sourceUri,title:null!=(d=j.image.title)?d:void 0});else if(null!=j.retrievedContext){let a=j.retrievedContext.uri,c=j.retrievedContext.fileSearchStore;if(a&&(a.startsWith("http://")||a.startsWith("https://")))i.push({type:"source",sourceType:"url",id:b(),url:a,title:null!=(e=j.retrievedContext.title)?e:void 0});else if(a){let c,d=null!=(f=j.retrievedContext.title)?f:"Unknown Document",e="application/octet-stream";a.endsWith(".pdf")?e="application/pdf":a.endsWith(".txt")?e="text/plain":a.endsWith(".docx")?e="application/vnd.openxmlformats-officedocument.wordprocessingml.document":a.endsWith(".doc")?e="application/msword":a.match(/\.(md|markdown)$/)&&(e="text/markdown"),c=a.split("/").pop(),i.push({type:"source",sourceType:"document",id:b(),mediaType:e,title:d,filename:c})}else if(c){let a=null!=(g=j.retrievedContext.title)?g:"Unknown Document";i.push({type:"source",sourceType:"document",id:b(),mediaType:"application/octet-stream",title:a,filename:c.split("/").pop()})}}else null!=j.maps&&j.maps.uri&&i.push({type:"source",sourceType:"url",id:b(),url:j.maps.uri,title:null!=(h=j.maps.title)?h:void 0});return i.length>0?i:void 0}var I=()=>e.z.object({webSearchQueries:e.z.array(e.z.string()).nullish(),imageSearchQueries:e.z.array(e.z.string()).nullish(),retrievalQueries:e.z.array(e.z.string()).nullish(),searchEntryPoint:e.z.object({renderedContent:e.z.string()}).nullish(),groundingChunks:e.z.array(e.z.object({web:e.z.object({uri:e.z.string(),title:e.z.string().nullish()}).nullish(),image:e.z.object({sourceUri:e.z.string(),imageUri:e.z.string(),title:e.z.string().nullish(),domain:e.z.string().nullish()}).nullish(),retrievedContext:e.z.object({uri:e.z.string().nullish(),title:e.z.string().nullish(),text:e.z.string().nullish(),fileSearchStore:e.z.string().nullish()}).nullish(),maps:e.z.object({uri:e.z.string().nullish(),title:e.z.string().nullish(),text:e.z.string().nullish(),placeId:e.z.string().nullish()}).nullish()})).nullish(),groundingSupports:e.z.array(e.z.object({segment:e.z.object({startIndex:e.z.number().nullish(),endIndex:e.z.number().nullish(),text:e.z.string().nullish()}).nullish(),segment_text:e.z.string().nullish(),groundingChunkIndices:e.z.array(e.z.number()).nullish(),supportChunkIndices:e.z.array(e.z.number()).nullish(),confidenceScores:e.z.array(e.z.number()).nullish(),confidenceScore:e.z.array(e.z.number()).nullish()})).nullish(),retrievalMetadata:e.z.union([e.z.object({webDynamicRetrievalScore:e.z.number()}),e.z.object({})]).nullish()}),J=e.z.object({jsonPath:e.z.string(),stringValue:e.z.string().nullish(),numberValue:e.z.number().nullish(),boolValue:e.z.boolean().nullish(),nullValue:e.z.unknown().nullish(),willContinue:e.z.boolean().nullish()}),K=()=>e.z.object({parts:e.z.array(e.z.union([e.z.object({functionCall:e.z.object({id:e.z.string().nullish(),name:e.z.string().nullish(),args:e.z.unknown().nullish(),partialArgs:e.z.array(J).nullish(),willContinue:e.z.boolean().nullish()}),thoughtSignature:e.z.string().nullish()}),e.z.object({inlineData:e.z.object({mimeType:e.z.string(),data:e.z.string()}),thought:e.z.boolean().nullish(),thoughtSignature:e.z.string().nullish()}),e.z.object({toolCall:e.z.object({toolType:e.z.string(),args:e.z.unknown().nullish(),id:e.z.string()}),thoughtSignature:e.z.string().nullish()}),e.z.object({toolResponse:e.z.object({toolType:e.z.string(),response:e.z.unknown().nullish(),id:e.z.string()}),thoughtSignature:e.z.string().nullish()}),e.z.object({executableCode:e.z.object({language:e.z.string(),code:e.z.string()}).nullish(),codeExecutionResult:e.z.object({outcome:e.z.string(),output:e.z.string().nullish()}).nullish(),text:e.z.string().nullish(),thought:e.z.boolean().nullish(),thoughtSignature:e.z.string().nullish()})])).nullish()}),L=()=>e.z.object({category:e.z.string().nullish(),probability:e.z.string().nullish(),probabilityScore:e.z.number().nullish(),severity:e.z.string().nullish(),severityScore:e.z.number().nullish(),blocked:e.z.boolean().nullish()}),M=e.z.array(e.z.object({modality:e.z.string(),tokenCount:e.z.number()}).loose()).nullish(),N=e.z.object({cachedContentTokenCount:e.z.number().nullish(),thoughtsTokenCount:e.z.number().nullish(),promptTokenCount:e.z.number().nullish(),candidatesTokenCount:e.z.number().nullish(),toolUsePromptTokenCount:e.z.number().nullish(),totalTokenCount:e.z.number().nullish(),trafficType:e.z.string().nullish(),serviceTier:e.z.string().nullish(),promptTokensDetails:M,cacheTokensDetails:M,candidatesTokensDetails:M,toolUsePromptTokensDetails:M}).loose(),O=()=>e.z.object({urlMetadata:e.z.array(e.z.object({retrievedUrl:e.z.string(),urlRetrievalStatus:e.z.string()})).nullish()}),P=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({responseId:e.z.string().nullish(),candidates:e.z.array(e.z.object({content:K().nullish().or(e.z.object({}).strict()),finishReason:e.z.string().nullish(),finishMessage:e.z.string().nullish(),safetyRatings:e.z.array(L()).nullish(),groundingMetadata:I().nullish(),urlContextMetadata:O().nullish()})).nullish(),usageMetadata:N.nullish(),promptFeedback:e.z.object({blockReason:e.z.string().nullish(),safetyRatings:e.z.array(L()).nullish()}).nullish()}))),Q=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({responseId:e.z.string().nullish(),candidates:e.z.array(e.z.object({content:K().nullish(),finishReason:e.z.string().nullish(),finishMessage:e.z.string().nullish(),safetyRatings:e.z.array(L()).nullish(),groundingMetadata:I().nullish(),urlContextMetadata:O().nullish()})).nullish(),usageMetadata:N.nullish(),promptFeedback:e.z.object({blockReason:e.z.string().nullish(),safetyRatings:e.z.array(L()).nullish()}).nullish()}))),R=new Set(["text","reasoning","source","tool-call","tool-result"]),S=e.z.object({code:e.z.union([e.z.number(),e.z.string()]).nullish(),message:e.z.string().nullish(),status:e.z.string().nullish()}),T=e.z.object({requestCount:e.z.union([e.z.string(),e.z.number()]).nullish(),successfulRequestCount:e.z.union([e.z.string(),e.z.number()]).nullish(),failedRequestCount:e.z.union([e.z.string(),e.z.number()]).nullish(),pendingRequestCount:e.z.union([e.z.string(),e.z.number()]).nullish()}),U=e.z.object({responsesFile:e.z.string().nullish(),inlinedResponses:e.z.object({inlinedResponses:e.z.array(e.z.object({metadata:e.z.object({key:e.z.string()}),response:e.z.unknown().nullish(),error:S.nullish()}))}).nullish()}),V=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({name:e.z.string(),metadata:e.z.object({state:e.z.string().nullish(),createTime:e.z.string().nullish(),batchStats:T.nullish(),output:U.nullish()}).nullish(),done:e.z.boolean().nullish(),error:S.nullish(),response:U.nullish()}))),W=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({file:e.z.object({name:e.z.string(),expirationTime:e.z.string().nullish()})}))),X=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({key:e.z.string(),response:e.z.unknown().nullish(),error:S.nullish()}))),Y=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({candidates:e.z.array(e.z.unknown()).nullish(),promptFeedback:e.z.object({blockReason:e.z.string().nullish()}).nullish()}))),Z=class a extends G{static[d.WORKFLOW_SERIALIZE](a){return G[d.WORKFLOW_SERIALIZE](a)}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}constructor(a,c){var d;super(a,c),this.batchConfig=c,this.batchGenerateId=null!=(d=c.generateId)?d:b.generateId}async experimental_doStartBatch(a){let d,e=[],f=`ai-sdk-batch-${this.batchGenerateId()}`,h=[],i={batch:{displayName:f,...null!=a.webhookUrl&&{webhookConfig:{uris:[a.webhookUrl]}},inputConfig:{requests:{requests:h}}}},j=new TextEncoder,k=j.encode(JSON.stringify(i)).byteLength;for(let b of a.requests){let a=await this.getArgs(b.options),c={request:a.args,metadata:{key:b.id}};if(null==d){let e=k+j.encode(JSON.stringify(c)).byteLength+ +(h.length>0);if(e<2e7)h.push(c),k=e;else{for(let a of(d=[],h))d.push(JSON.stringify({key:a.metadata.key,request:a.request}),"\n");h.length=0,d.push(JSON.stringify({key:b.id,request:a.args}),"\n")}}else d.push(JSON.stringify({key:b.id,request:a.args}),"\n");for(let c of a.warnings)e.push({requestId:b.id,warning:c})}let l=await this.getHeaders(a.headers),n=`${this.batchConfig.baseURL}/${m(this.modelId)}:batchGenerateContent`;if(null==d){let{value:c}=await (0,b.postJsonToApi)({url:n,headers:l,body:i,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(V),abortSignal:a.abortSignal,fetch:this.batchConfig.fetch});return{batchId:c.name,...$(c),warnings:e}}let o=new Blob(d,{type:"application/jsonl"});if(d.length=0,o.size>0x80000000)throw new c.InvalidArgumentError({argument:"requests",message:"Google batch input files must not exceed 2 GB."});let{value:p}=await (0,b.postJsonToApi)({url:`${this.getBaseOrigin()}/upload/v1beta/files`,headers:(0,b.combineHeaders)(l,{"X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":String(o.size),"X-Goog-Upload-Header-Content-Type":"application/jsonl"}),body:{file:{display_name:`${f}-input`}},failedResponseHandler:g,successfulResponseHandler:ab,abortSignal:a.abortSignal,fetch:this.batchConfig.fetch}),{value:q}=await (0,b.postToApi)({url:p,headers:{"X-Goog-Upload-Offset":"0","X-Goog-Upload-Command":"upload, finalize","Content-Type":"application/jsonl"},body:{content:o,values:{byteLength:o.size,mediaType:"application/jsonl"}},failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(W),abortSignal:a.abortSignal,fetch:this.batchConfig.fetch}),{value:r}=await (0,b.postJsonToApi)({url:n,headers:l,body:{batch:{displayName:f,...null!=a.webhookUrl&&{webhookConfig:{uris:[a.webhookUrl]}},inputConfig:{fileName:q.file.name}}},failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(V),abortSignal:a.abortSignal,fetch:this.batchConfig.fetch});return{batchId:r.name,...$(r),providerMetadata:{google:{inputFileId:q.file.name,...null!=q.file.expirationTime?{inputFileExpiresAt:q.file.expirationTime}:{}}},warnings:e}}async experimental_doGetBatchStatus(a){return $(await this.retrieveBatch(a))}async experimental_doGetBatchResults(a){var d,e,f,h,i,j,k,l,m,n;let o=await this.retrieveBatch(a),p=$(o);if("pending"===p.status)throw new c.InvalidArgumentError({argument:"batchId",message:`Google batch "${a.batchId}" is not complete.`});let q=null!=(j=null==(f=null==(e=null==(d=o.metadata)?void 0:d.output)?void 0:e.inlinedResponses)?void 0:f.inlinedResponses)?j:null==(i=null==(h=o.response)?void 0:h.inlinedResponses)?void 0:i.inlinedResponses;if(null!=q)return(0,b.convertAsyncIteratorToReadableStream)(this.iterateBatchResults(q.map(a=>({key:a.metadata.key,response:a.response,error:a.error}))));let r=null!=(n=null==(l=null==(k=o.metadata)?void 0:k.output)?void 0:l.responsesFile)?n:null==(m=o.response)?void 0:m.responsesFile;if(null==r){if("completed"===p.status)throw new c.InvalidResponseDataError({data:o,message:`Google batch "${a.batchId}" completed without batch output.`});return new ReadableStream({start(a){a.close()}})}let s=r.split("/").map(a=>encodeURIComponent(a)).join("/"),{value:t}=await (0,b.getFromApi)({url:`${this.getBaseOrigin()}/download/v1beta/${s}:download?alt=media`,headers:await this.getHeaders(a.headers),failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonLinesResponseHandler)(X),abortSignal:a.abortSignal,fetch:this.batchConfig.fetch,validateUrl:!1});return(0,b.convertAsyncIteratorToReadableStream)(this.iterateBatchResults(t))}async retrieveBatch(a){let{value:c}=await (0,b.getFromApi)({url:`${this.batchConfig.baseURL}/${a.batchId}`,headers:await this.getHeaders(a.headers),failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(V),abortSignal:a.abortSignal,fetch:this.batchConfig.fetch,validateUrl:!1});return c}async *iterateBatchResults(a){var c,d,e;for await(let f of a){if(null!=f.error){let a=aa(f.error,"Google batch request failed."),b="CANCELLED"===f.error.status||"1"===String(f.error.code)?"cancelled":"failed";yield{id:f.key,status:b,error:a};continue}if(null==f.response){yield{id:f.key,status:"failed",error:{message:"Google returned a batch result without a response or error.",code:"invalid_batch_result"}};continue}let a=await (0,b.safeValidateTypes)({value:f.response,schema:Y});if(a.success&&(null==a.value.candidates||0===a.value.candidates.length)){let b=null!=(c=a.value.promptFeedback)?c:void 0,g=null!=(d=null==b?void 0:b.blockReason)?d:void 0;yield{id:f.key,status:"failed",error:{message:null==g?"Google returned a batch response without any candidates.":`Google blocked the batch request (${g}).`,code:null==g?"invalid_response":"prompt_blocked",...null!=g?{type:g}:{}},...null!=b?{providerMetadata:{google:{promptFeedback:{blockReason:null!=(e=b.blockReason)?e:null}}}}:{}};continue}let g=await (0,b.safeValidateTypes)({value:f.response,schema:P});if(!g.success){yield{id:f.key,status:"failed",error:{message:"Google returned an invalid GenerateContent batch result.",code:"invalid_response"}};continue}let h=this.convertGenerateContentResponse({response:g.value,warnings:[],providerOptionsNames:["google"]}),i=h.content.find(a=>!R.has(a.type));if(null!=i){yield{id:f.key,status:"failed",error:{message:`Google returned a "${i.type}" content block, but that content is not supported in AI SDK text batches.`,code:"unsupported_content"}};continue}yield{id:f.key,status:"succeeded",result:h}}}async getHeaders(a){return(0,b.combineHeaders)(this.batchConfig.headers?await (0,b.resolve)(this.batchConfig.headers):void 0,a)}getBaseOrigin(){return this.batchConfig.baseURL.replace(/\/v1beta$/,"")}};function $(a){var c,d,e,f,g,h,i,j,k,l;let m,n,o,p,q=null!=(d=null==(c=a.metadata)?void 0:c.state)?d:void 0,r=(m=_(null==(i=null==(e=a.metadata)?void 0:e.batchStats)?void 0:i.requestCount),n=_(null!=(j=null==i?void 0:i.successfulRequestCount)?j:0),o=_(null!=(k=null==i?void 0:i.failedRequestCount)?k:0),p=_(null!=(l=null==i?void 0:i.pendingRequestCount)?l:0),(0,b.normalizeBatchRequestCounts)({total:m,pending:p,completed:n,failed:o})),s=null!=(g=null==(f=a.metadata)?void 0:f.createTime)?g:void 0,t=null!=a.error?aa(a.error,"Google batch failed."):void 0;return{status:function({rawStatus:a,done:b,hasError:c}){if(c)return"failed";if(null==a)return b?"completed":"pending";switch(a.replace(/^(?:BATCH|JOB)_STATE_/,"")){case"SUCCEEDED":return"completed";case"FAILED":case"CANCELLED":case"EXPIRED":return"failed";default:return"pending"}}({rawStatus:q,done:null!=(h=a.done)?h:void 0,hasError:null!=t}),...null!=q?{rawStatus:q}:{},...null!=r?{requestCounts:r}:{},...null!=t?{error:t}:{},...null!=s?{createdAt:s}:{}}}function _(a){let b="string"==typeof a&&/^\d+$/.test(a)?Number(a):a;return"number"==typeof b&&Number.isSafeInteger(b)&&b>=0?b:void 0}function aa(a,b){var c;return{message:null!=(c=a.message)?c:b,...null!=a.status?{type:a.status}:{},...null!=a.code?{code:String(a.code)}:{}}}var ab=async({response:a})=>{let b=a.headers.get("x-goog-upload-url");if(null==b)throw new c.InvalidResponseDataError({data:a.headers,message:"Google did not return a resumable upload URL."});return{value:b}},ac=(0,b.createProviderExecutedToolFactory)({id:"google.code_execution",inputSchema:e.z.object({language:e.z.string().describe("The programming language of the code."),code:e.z.string().describe("The code to be executed.")}),outputSchema:e.z.object({outcome:e.z.string().describe('The outcome of the execution (e.g., "OUTCOME_OK").'),output:e.z.string().describe("The output from the code execution.")})}),ad=(0,b.createProviderExecutedToolFactory)({id:"google.enterprise_web_search",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))});e.z.looseObject({fileSearchStoreNames:e.z.array(e.z.string()).describe("The names of the file_search_stores to retrieve from. Example: `fileSearchStores/my-file-search-store-123`"),topK:e.z.number().int().positive().describe("The number of file search retrieval chunks to retrieve.").optional(),metadataFilter:e.z.string().describe("Metadata filter to apply to the file search retrieval documents. See https://google.aip.dev/160 for the syntax of the filter expression.").optional()});var ae=(0,b.createProviderExecutedToolFactory)({id:"google.file_search",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))}),af=(0,b.createProviderExecutedToolFactory)({id:"google.google_maps",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))}),ag=e.z.looseObject({searchTypes:e.z.object({webSearch:e.z.object({}).optional(),imageSearch:e.z.object({}).optional()}).optional(),timeRangeFilter:e.z.object({startTime:e.z.string(),endTime:e.z.string()}).optional()}),ah=(0,b.createProviderExecutedToolFactory)({id:"google.google_search",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))}),ai={googleSearch:ah,enterpriseWebSearch:ad,googleMaps:af,urlContext:(0,b.createProviderExecutedToolFactory)({id:"google.url_context",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))}),fileSearch:ae,codeExecution:ac,vertexRagStore:(0,b.createProviderExecutedToolFactory)({id:"google.vertex_rag_store",inputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({}))),outputSchema:(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({})))})},aj=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({googleSearch:ag.optional()}))),ak=class a{constructor(a,b,c){this.modelId=a,this.settings=b,this.config=c,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,{},b.config)}get maxImagesPerCall(){return null!=this.settings.maxImagesPerCall?this.settings.maxImagesPerCall:10}get provider(){return this.config.provider}async doGenerate(a){var c,d,e,f,g,h,i,j,k,l,m;if(!this.modelId.startsWith("gemini-"))throw Error("Google image models other than Gemini are no longer supported. Use a model ID that starts with `gemini-`.");let{prompt:n,n:o,size:p,aspectRatio:q,seed:r,providerOptions:s,headers:t,abortSignal:u,files:v,mask:w}=a,x=[];if(null!=w)throw Error("Gemini image models do not support mask-based image editing.");if(null!=o&&o>1)throw Error("Gemini image models do not support generating a set number of images per call. Use n=1 or omit the n parameter.");null!=p&&x.push({type:"unsupported",feature:"size",details:"This model does not support the `size` option. Use `aspectRatio` instead."});let y=[];if(null!=n&&y.push({type:"text",text:n}),null!=v&&v.length>0)for(let a of v)"url"===a.type?y.push({type:"file",data:{type:"url",url:new URL(a.url)},mediaType:"image/*"}):y.push({type:"file",data:{type:"data",data:"string"==typeof a.data?a.data:new Uint8Array(a.data)},mediaType:a.mediaType});let z=[{role:"user",content:y}],A=await (0,b.parseProviderOptions)({provider:"google",providerOptions:s,schema:aj}),{googleSearch:B,responseModalities:C,imageConfig:D,...E}=null!=(c=null==s?void 0:s.google)?c:{},F=new G(this.modelId,{provider:this.config.provider,baseURL:this.config.baseURL,headers:null!=(d=this.config.headers)?d:{},fetch:this.config.fetch,generateId:null!=(e=this.config.generateId)?e:b.generateId}),H=await F.doGenerate({prompt:z,seed:r,providerOptions:{google:{...E,responseModalities:["IMAGE"],imageConfig:null!=q||null!=D?{...D,...null!=q?{aspectRatio:q}:{}}:void 0}},tools:(null==A?void 0:A.googleSearch)!=null?[{type:"provider",id:"google.google_search",name:"google_search",args:A.googleSearch}]:void 0,headers:t,abortSignal:u}),I=null!=(h=null==(g=null==(f=this.config._internal)?void 0:f.currentDate)?void 0:g.call(f))?h:new Date,J=[];for(let a of H.content)"file"===a.type&&a.mediaType.startsWith("image/")&&"data"===a.data.type&&J.push((0,b.convertToBase64)(a.data.data));return{images:J,warnings:x,providerMetadata:{google:{...null!=(j=null==(i=H.providerMetadata)?void 0:i.google)?j:{},images:J.map(()=>({}))}},response:{timestamp:I,modelId:this.modelId,headers:null==(k=H.response)?void 0:k.headers},usage:H.usage?{inputTokens:H.usage.inputTokens.total,outputTokens:H.usage.outputTokens.total,totalTokens:(null!=(l=H.usage.inputTokens.total)?l:0)+(null!=(m=H.usage.outputTokens.total)?m:0)}:void 0}}};function al(a){let b=encodeURIComponent(a);return"."===b?"%252E":".."===b?"%252E%252E":b}var am=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async uploadFile(a){var d,e,f,h,i;let j=await (0,b.parseProviderOptions)({provider:"google",providerOptions:a.providerOptions,schema:ao}),k=(0,b.combineHeaders)(this.config.headers(),a.headers),l=null!=(d=this.config.fetch)?d:globalThis.fetch,m=[];null!=a.filename&&m.push({type:"unsupported",feature:"filename"});let n=(0,b.convertInlineFileDataToUint8Array)(a.data),o=a.mediaType,p=null==j?void 0:j.displayName,q=this.config.baseURL.replace(/\/v1beta$/,""),r=await l(`${q}/upload/v1beta/files`,{method:"POST",headers:{...k,"X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":String(n.length),"X-Goog-Upload-Header-Content-Type":o,"Content-Type":"application/json"},body:JSON.stringify({file:{...null!=p?{display_name:p}:{}}}),signal:a.abortSignal});if(!r.ok){let a=await r.text();throw new c.AISDKError({name:"GOOGLE_FILES_UPLOAD_ERROR",message:`Failed to initiate resumable upload: ${r.status} ${a}`})}let s=r.headers.get("x-goog-upload-url");if(!s)throw new c.AISDKError({name:"GOOGLE_FILES_UPLOAD_ERROR",message:"No upload URL returned from initiation request"});let t=await l(s,{method:"POST",headers:{"X-Goog-Upload-Offset":"0","X-Goog-Upload-Command":"upload, finalize"},body:(i=n).buffer instanceof ArrayBuffer?i:new Uint8Array(i),signal:a.abortSignal});if(!t.ok){let a=await t.text();throw new c.AISDKError({name:"GOOGLE_FILES_UPLOAD_ERROR",message:`Failed to upload file data: ${t.status} ${a}`})}let u=(await t.json()).file,v=null!=(e=null==j?void 0:j.pollIntervalMs)?e:2e3,w=null!=(f=null==j?void 0:j.pollTimeoutMs)?f:3e5,x=Date.now();for(;"PROCESSING"===u.state;){if(Date.now()-x>w)throw new c.AISDKError({name:"GOOGLE_FILES_UPLOAD_TIMEOUT",message:`File processing timed out after ${w}ms`});await (0,b.delay)(v,{abortSignal:a.abortSignal});let d=/^files\/([^/]+)$/.exec(u.name),e=null!=d?`files/${al(d[1])}`:al(u.name),{value:f}=await (0,b.getFromApi)({url:`${this.config.baseURL}/${e}`,validateUrl:!1,headers:(0,b.combineHeaders)(k),successfulResponseHandler:(0,b.createJsonResponseHandler)(an),failedResponseHandler:g,abortSignal:a.abortSignal,fetch:this.config.fetch});u=f}if("FAILED"===u.state)throw new c.AISDKError({name:"GOOGLE_FILES_UPLOAD_FAILED",message:`File processing failed for ${u.name}`});return{warnings:m,providerReference:{google:u.uri},mediaType:null!=(h=u.mimeType)?h:a.mediaType,providerMetadata:{google:{name:u.name,displayName:u.displayName,mimeType:u.mimeType,sizeBytes:u.sizeBytes,state:u.state,uri:u.uri,...null!=u.createTime?{createTime:u.createTime}:{},...null!=u.updateTime?{updateTime:u.updateTime}:{},...null!=u.expirationTime?{expirationTime:u.expirationTime}:{},...null!=u.sha256Hash?{sha256Hash:u.sha256Hash}:{}}}}}},an=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({name:e.z.string(),displayName:e.z.string().nullish(),mimeType:e.z.string(),sizeBytes:e.z.string().nullish(),createTime:e.z.string().nullish(),updateTime:e.z.string().nullish(),expirationTime:e.z.string().nullish(),sha256Hash:e.z.string().nullish(),uri:e.z.string(),state:e.z.string()}))),ao=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.looseObject({displayName:e.z.string().nullish(),pollIntervalMs:e.z.number().positive().nullish(),pollTimeoutMs:e.z.number().positive().nullish()}))),ap=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.looseObject({pollIntervalMs:e.z.number().positive().nullish(),pollTimeoutMs:e.z.number().positive().nullish(),personGeneration:e.z.enum(["dont_allow","allow_adult","allow_all"]).nullish(),negativePrompt:e.z.string().nullish(),referenceImages:e.z.array(e.z.object({bytesBase64Encoded:e.z.string().nullish(),gcsUri:e.z.string().nullish()})).nullish()})));function aq(a,c){return"url"===a.type?a.url.startsWith("gs://")?{gcsUri:a.url,mimeType:"image/png"}:void c.push({type:"unsupported",feature:"URL-based image input",details:"Google Generative AI video models require base64-encoded images or GCS URIs. URL will be ignored."}):{bytesBase64Encoded:"string"==typeof a.data?a.data:(0,b.convertUint8ArrayToBase64)(a.data),mimeType:a.mediaType||"image/png"}}var ar=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}get provider(){return this.config.provider}get maxVideosPerCall(){return 4}async buildRequest(a){var c,d,e,f,g,h;let i=[],j=await (0,b.parseProviderOptions)({provider:"google",providerOptions:a.providerOptions,schema:ap}),k=[{}],l=k[0];null!=a.prompt&&(l.prompt=a.prompt);let m=null!=(f=null==(h=null==(g=(e=a).frameImages)?void 0:g.find(a=>"first_frame"===a.frameType))?void 0:h.image)?f:e.image;if(null!=m){let a=aq(m,i);null!=a&&(l.image=a)}let n=null==(d=null==(c=a.frameImages)?void 0:c.find(a=>"last_frame"===a.frameType))?void 0:d.image;if(null!=n){let a=aq(n,i);null!=a&&(l.lastFrame=a)}let o=function(a){if(null==a.frameImages||!(a.frameImages.length>0))return null!=a.inputReferences&&a.inputReferences.length>0?a.inputReferences:void 0}(a);null!=o?l.referenceImages=o.flatMap(a=>{let b,c=null!=(b=aq(a,i))?{image:b,referenceType:"asset"}:void 0;return null!=c?[c]:[]}):(null==j?void 0:j.referenceImages)!=null&&(l.referenceImages=j.referenceImages.map(a=>a.bytesBase64Encoded?{image:{bytesBase64Encoded:a.bytesBase64Encoded,mimeType:"image/png"},referenceType:"asset"}:a.gcsUri?{image:{gcsUri:a.gcsUri,mimeType:"image/png"},referenceType:"asset"}:a));let p={sampleCount:a.n};if(a.aspectRatio&&(p.aspectRatio=a.aspectRatio),a.resolution&&(p.resolution=({"1280x720":"720p","1920x1080":"1080p","3840x2160":"4k"})[a.resolution]||a.resolution),a.duration&&(p.durationSeconds=a.duration),a.seed&&(p.seed=a.seed),null!=j)for(let[a,b]of(void 0!==j.personGeneration&&null!==j.personGeneration&&(p.personGeneration=j.personGeneration),void 0!==j.negativePrompt&&null!==j.negativePrompt&&(p.negativePrompt=j.negativePrompt),Object.entries(j)))["pollIntervalMs","pollTimeoutMs","personGeneration","negativePrompt","referenceImages"].includes(a)||(p[a]=b);return{instances:k,parameters:p,warnings:i,googleOptions:j}}async buildCompletedResult(a,d,e,f){var g,h;let i=a.response;if(!(null==(g=null==i?void 0:i.generateVideoResponse)?void 0:g.generatedSamples)||0===i.generateVideoResponse.generatedSamples.length)throw new c.AISDKError({name:"GOOGLE_VIDEO_GENERATION_ERROR",message:`No videos in response. Response: ${JSON.stringify(a)}`});let j=[],k=[],l=await (0,b.resolve)(this.config.headers),m=null==l?void 0:l["x-goog-api-key"];for(let a of i.generateVideoResponse.generatedSamples)if(null==(h=a.video)?void 0:h.uri){let c=m&&(0,b.isSameOrigin)(a.video.uri,this.config.baseURL)?`${a.video.uri}${a.video.uri.includes("?")?"&":"?"}key=${m}`:a.video.uri;j.push({type:"url",url:c,mediaType:"video/mp4"}),k.push({uri:a.video.uri})}if(0===j.length)throw new c.AISDKError({name:"GOOGLE_VIDEO_GENERATION_ERROR",message:"No valid videos in response"});return{status:"completed",videos:j,warnings:e,response:{timestamp:f,modelId:this.modelId,headers:d},providerMetadata:{google:{videos:k}}}}async doStart(a){var d,e,f;let h=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,{instances:i,parameters:j,warnings:k}=await this.buildRequest(a),{value:l,responseHeaders:m}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/models/${this.modelId}:predictLongRunning`,headers:(0,b.combineHeaders)(await (0,b.resolve)(this.config.headers),a.headers),body:{instances:i,parameters:j},successfulResponseHandler:(0,b.createJsonResponseHandler)(as),failedResponseHandler:g,abortSignal:a.abortSignal,fetch:this.config.fetch}),n=l.name;if(!n)throw new c.AISDKError({name:"GOOGLE_VIDEO_GENERATION_ERROR",message:"No operation name returned from API"});return{operation:{operationName:n},warnings:k,response:{timestamp:h,modelId:this.modelId,headers:m}}}async doStatus(a){var c,d,e;let f=null!=(e=null==(d=null==(c=this.config._internal)?void 0:c.currentDate)?void 0:d.call(c))?e:new Date,{operationName:h}=a.operation,{value:i,responseHeaders:j}=await (0,b.getFromApi)({url:`${this.config.baseURL}/${h}`,validateUrl:!1,headers:(0,b.combineHeaders)(await (0,b.resolve)(this.config.headers),a.headers),successfulResponseHandler:(0,b.createJsonResponseHandler)(as),failedResponseHandler:g,abortSignal:a.abortSignal,fetch:this.config.fetch});return i.done?i.error?{status:"error",error:`Video generation failed: ${i.error.message}`,response:{timestamp:f,modelId:this.modelId,headers:j}}:this.buildCompletedResult(i,j,[],f):{status:"pending",response:{timestamp:f,modelId:this.modelId,headers:j}}}},as=e.z.object({name:e.z.string().nullish(),done:e.z.boolean().nullish(),error:e.z.object({code:e.z.number().nullish(),message:e.z.string(),status:e.z.string().nullish()}).nullish(),response:e.z.object({generateVideoResponse:e.z.object({generatedSamples:e.z.array(e.z.object({video:e.z.object({uri:e.z.string().nullish()}).nullish()})).nullish()}).nullish()}).nullish()}),at=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({candidates:e.z.array(e.z.object({content:e.z.object({parts:e.z.array(e.z.object({inlineData:e.z.object({mimeType:e.z.string().nullish(),data:e.z.string().nullish()}).nullish()})).nullish()}).nullish()})).nullish()}))),au=e.z.object({voiceName:e.z.string()}),av=e.z.object({prebuiltVoiceConfig:au}),aw=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({multiSpeakerVoiceConfig:e.z.object({speakerVoiceConfigs:e.z.array(e.z.object({speaker:e.z.string(),voiceConfig:av}))}).optional()}))),ax="Kore",ay=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({text:a,voice:c=ax,outputFormat:d,instructions:e,speed:f,language:g,providerOptions:h}){let i,j=[],k=this.config.provider.includes("vertex")?["googleVertex","vertex"]:["google"];for(let a of k)if(null!=(i=await (0,b.parseProviderOptions)({provider:a,providerOptions:h,schema:aw})))break;null!=i||k.includes("google")||(i=await (0,b.parseProviderOptions)({provider:"google",providerOptions:h,schema:aw}));let l=null==i?void 0:i.multiSpeakerVoiceConfig,m=a;null!=e&&(l?j.push({type:"unsupported",feature:"instructions",details:"Google Gemini TTS ignores `instructions` when `multiSpeakerVoiceConfig` is set, because prepending them would break multi-speaker transcript parsing."}):m=`${e}: ${a}`),null!=f&&j.push({type:"unsupported",feature:"speed",details:"Google Gemini TTS models do not support the `speed` option. It was ignored."}),null!=g&&j.push({type:"unsupported",feature:"language",details:"Google Gemini TTS models do not support the `language` option. Language is detected automatically from the input text."});let n="wav";return"pcm"===d?n="pcm":null!=d&&"wav"!==d&&j.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${d}. Using wav instead.`}),{requestBody:{contents:[{role:"user",parts:[{text:m}]}],generationConfig:{responseModalities:["AUDIO"],speechConfig:l?{multiSpeakerVoiceConfig:l}:{voiceConfig:{prebuiltVoiceConfig:{voiceName:c}}}}},warnings:j,outputFormat:n}}async doGenerate(a){var c,d,e,f,h,i,j,k,l,m,n;let o,p,q,r,s,t,u=null!=(e=null==(d=null==(c=this.config._internal)?void 0:c.currentDate)?void 0:d.call(c))?e:new Date,{requestBody:v,warnings:w,outputFormat:x}=await this.getArgs(a),{value:y,responseHeaders:z,rawValue:A}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/models/${this.modelId}:generateContent`,headers:(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers),body:v,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(at),abortSignal:a.abortSignal,fetch:this.config.fetch});for(let a of null!=(f=y.candidates)?f:[]){for(let b of null!=(i=null==(h=a.content)?void 0:h.parts)?i:[])if(null==(j=b.inlineData)?void 0:j.data){s=b.inlineData.data,t=null!=(k=b.inlineData.mimeType)?k:void 0;break}if(null!=s)break}let B=null!=(l=function(a){if(null==a)return;let b=/rate=(\d+)/.exec(a);return b?Number.parseInt(b[1],10):void 0}(t))?l:24e3,C=null!=s?(0,b.convertBase64ToUint8Array)(s):new Uint8Array(0),D="pcm"===x||0===C.length?C:(m=C,n=B,az(q=new DataView(p=new ArrayBuffer(44+(o=m.length))),0,"RIFF"),q.setUint32(4,36+o,!0),az(q,8,"WAVE"),az(q,12,"fmt "),q.setUint32(16,16,!0),q.setUint16(20,1,!0),q.setUint16(22,1,!0),q.setUint32(24,n,!0),q.setUint32(28,2*n,!0),q.setUint16(32,2,!0),q.setUint16(34,16,!0),az(q,36,"data"),q.setUint32(40,o,!0),(r=new Uint8Array(p)).set(m,44),r);return"pcm"===x&&C.length>0&&w.push({type:"unsupported",feature:"outputFormat",details:`Returning raw PCM audio (signed 16-bit little-endian, mono, ${B} Hz). These bytes have no container header and are not directly playable; see providerMetadata.google for the sample rate and mime type.`}),{audio:D,warnings:w,request:{body:JSON.stringify(v)},response:{timestamp:u,modelId:this.modelId,headers:z,body:A},providerMetadata:{google:{sampleRate:B,mimeType:null!=t?t:null}}}}};function az(a,b,c){for(let d=0;d<c.length;d++)a.setUint8(b+d,c.charCodeAt(d))}function aA(a){var c,d,e,f,g,h,i,j;if(null==a)return(0,b.createNullLanguageModelUsage)();let k=null!=(c=a.total_input_tokens)?c:0,l=null!=(d=a.total_output_tokens)?d:0,m=null!=(e=a.total_thought_tokens)?e:0,n=null!=(f=a.total_cached_tokens)?f:0;return{inputTokens:{total:null!=(g=a.total_input_tokens)?g:void 0,noCache:null==a.total_input_tokens?void 0:k-n,cacheRead:null!=(h=a.total_cached_tokens)?h:void 0,cacheWrite:void 0},outputTokens:{total:null==a.total_output_tokens&&null==a.total_thought_tokens?void 0:l+m,text:null!=(i=a.total_output_tokens)?i:void 0,reasoning:null!=(j=a.total_thought_tokens)?j:void 0},raw:a}}function aB(a){let b=null==a?void 0:a.output_tokens_by_modality;if(null==b)return;let c={};for(let a of b)(null==a?void 0:a.modality)!=null&&null!=a.tokens&&(c[a.modality]=a.tokens);return Object.keys(c).length>0?c:void 0}var aC={pdf:"application/pdf",txt:"text/plain",md:"text/markdown",markdown:"text/markdown",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"};function aD(a){let b=a.toLowerCase();for(let[a,c]of Object.entries(aC))if(b.endsWith(`.${a}`))return c;return"application/octet-stream"}function aE(a){let b=a.split("/"),c=b[b.length-1];return c&&c.length>0?c:void 0}function aF({block:a,generateId:b}){var c,d,e,f,g,h,i,j,k,l,m;let n=[];switch(a.type){case"url_context_result":for(let d of null!=(c=a.result)?c:[])(null==d?void 0:d.url)!=null&&0!==d.url.length&&(null==d.status||"success"===d.status)&&n.push({type:"source",sourceType:"url",id:b(),url:d.url});break;case"google_search_result":for(let c of null!=(d=a.result)?d:[]){let a=null==c?void 0:c.url;null!=a&&0!==a.length&&n.push({type:"source",sourceType:"url",id:b(),url:a,...null!=c.title?{title:c.title}:{}})}break;case"google_maps_result":for(let c of null!=(e=a.result)?e:[])for(let a of null!=(f=c.places)?f:[])null!=a.url&&0!==a.url.length&&n.push({type:"source",sourceType:"url",id:b(),url:a.url,...null!=a.name?{title:a.name}:{}});break;case"file_search_result":for(let c of null!=(g=a.result)?g:[]){if(null==c||"object"!=typeof c)continue;let a=null!=(i=null!=(h=c.url)?h:c.document_uri)?i:c.file_name;if(null==a||0===a.length)continue;if(a.startsWith("http://")||a.startsWith("https://")){n.push({type:"source",sourceType:"url",id:b(),url:a,...null!=c.title?{title:c.title}:{}});continue}let d=null!=(j=c.file_name)?j:aE(a),e=aD(a);n.push({type:"source",sourceType:"document",id:b(),mediaType:e,title:null!=(m=null!=(l=null!=(k=c.title)?k:c.file_name)?l:d)?m:a,...null!=d?{filename:d}:{}})}}return n}function aG({annotations:a,generateId:b}){var c;if(null==a)return[];let d=new Set,e=[];for(let f of a){let a=function({annotation:a,generateId:b}){var c,d,e,f,g;switch(a.type){case"url_citation":if(null==a.url||0===a.url.length)return;return{type:"source",sourceType:"url",id:b(),url:a.url,...null!=a.title?{title:a.title}:{}};case"file_citation":{let h=null!=(d=null!=(c=a.url)?c:a.document_uri)?d:a.file_name;if(null==h||0===h.length)return;if(h.startsWith("http://")||h.startsWith("https://"))return{type:"source",sourceType:"url",id:b(),url:h,...null!=a.file_name?{title:a.file_name}:{}};let i=null!=(e=a.file_name)?e:aE(h),j=aD(h);return{type:"source",sourceType:"document",id:b(),mediaType:j,title:null!=(g=null!=(f=a.file_name)?f:i)?g:h,...null!=i?{filename:i}:{}}}case"place_citation":if(null==a.url||0===a.url.length)return;return{type:"source",sourceType:"url",id:b(),url:a.url,...null!=a.name?{title:a.name}:{}};default:return}}({annotation:f,generateId:b});if(null==a)continue;let g="url"===a.sourceType?`url:${a.url}`:`doc:${null!=(c=a.filename)?c:a.title}`;d.has(g)||(d.add(g),e.push(a))}return e}function aH({status:a,hasFunctionCall:b}){switch(a){case"completed":return b?"tool-calls":"stop";case"requires_action":return"tool-calls";case"failed":return"error";case"incomplete":return"length";default:return"other"}}var aI=new Set(["google_search_call","code_execution_call","url_context_call","file_search_call","google_maps_call","mcp_server_tool_call"]),aJ=new Set(["google_search_result","code_execution_result","url_context_result","file_search_result","google_maps_result","mcp_server_tool_result"]);function aK({warnings:a,generateId:c,includeRawChunks:d,serviceTier:e}){let f,g,h,i=e,j=!1,k=new Map,l=new Set;function m(a){var b;return"url"===a.sourceType?`url:${a.url}`:`doc:${null!=(b=a.filename)?b:a.title}`}return new TransformStream({start(b){b.enqueue({type:"stream-start",warnings:a})},transform(a,e){var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G;if(d&&e.enqueue({type:"raw",rawValue:a.rawValue}),!a.success){h="failed",e.enqueue({type:"error",error:a.error});return}let H=a.value,I=H.event_type;switch(I){case"interaction.created":{let a,b=H.interaction;f=(null==b?void 0:b.id)!=null&&b.id.length>0?b.id:void 0;let c=null==b?void 0:b.created;if("string"==typeof c){let b=new Date(c);Number.isNaN(b.getTime())||(a=b)}e.enqueue({type:"response-metadata",...null!=f?{id:f}:{},modelId:null==b?void 0:b.model,...a?{timestamp:a}:{}});break}case"step.start":{let a=H.step,b=H.index,d=`${null!=f?f:"interaction"}:${b}`,g=null==a?void 0:a.type;if("model_output"===g){let f=null==(n=null==a?void 0:a.content)?void 0:n[0];if((null==f?void 0:f.type)==="text")for(let a of(k.set(b,{kind:"text",id:d,emittedSourceKeys:new Set}),e.enqueue({type:"text-start",id:d}),aG({annotations:f.annotations,generateId:c}))){let b=m(a);l.has(b)||(l.add(b),e.enqueue(a))}else(null==f?void 0:f.type)==="image"?k.set(b,{kind:"image",id:d,...null!=f.data?{data:f.data}:{},...null!=f.mime_type?{mimeType:f.mime_type}:{},...null!=f.uri?{uri:f.uri}:{}}):k.set(b,{kind:"pending_model_output",id:d})}else if("thought"===g){let c=null==a?void 0:a.signature;if(k.set(b,{kind:"reasoning",id:d,...null!=c?{signature:c}:{}}),e.enqueue({type:"reasoning-start",id:d}),Array.isArray(null==a?void 0:a.summary))for(let b of a.summary)(null==b?void 0:b.type)==="text"&&"string"==typeof b.text&&e.enqueue({type:"reasoning-delta",id:d,delta:b.text})}else if("processing_call"===g||"processing_result"===g){let c={};(null==a?void 0:a.signature)!=null&&(c.signature=a.signature),null!=f&&(c.interactionId=f),"processing_call"===g?c.processingId=(null==a?void 0:a.id)||d:c.processingCallId=(null==a?void 0:a.call_id)||d,k.set(b,{kind:"custom",id:d,customKind:`google.${g}`,google:c})}else if("function_call"===g){let c=(null==a?void 0:a.id)||d,f=null!=(o=null==a?void 0:a.name)?o:"unknown";j=!0;let g={kind:"function_call",id:d,toolCallId:c,toolName:f,argumentsAccum:"",...(null==a?void 0:a.signature)!=null?{signature:a.signature}:{}};k.set(b,g),e.enqueue({type:"tool-input-start",id:c,toolName:f})}else if(null!=g&&aI.has(g)){let c="mcp_server_tool_call"===g?null!=(p=null==a?void 0:a.name)?p:"mcp_server_tool":g.replace(/_call$/,""),e=(null==a?void 0:a.id)||d,f={kind:"builtin_tool_call",id:d,blockType:g,toolCallId:e,toolName:c,arguments:null!=(q=null==a?void 0:a.arguments)?q:{},callEmitted:!1};k.set(b,f)}else if(null!=g&&aJ.has(g)){let c="mcp_server_tool_result"===g?null!=(r=null==a?void 0:a.name)?r:"mcp_server_tool":g.replace(/_result$/,""),e=(null==a?void 0:a.call_id)||d,f={kind:"builtin_tool_result",id:d,blockType:g,callId:e,toolName:c,result:null!=(s=null==a?void 0:a.result)?s:null,...(null==a?void 0:a.is_error)!=null?{isError:a.is_error}:{},resultEmitted:!1};k.set(b,f)}else k.set(b,{kind:"unknown",id:d});break}case"step.delta":{let a=k.get(H.index);if(null==a)break;let b=null==(t=H.delta)?void 0:t.type;if("pending_model_output"===a.kind&&("text"===b||"text_annotation"===b||"text_annotation_delta"===b)){let b={kind:"text",id:a.id,emittedSourceKeys:new Set};k.set(H.index,b),a=b,e.enqueue({type:"text-start",id:b.id})}if("image"===b&&("pending_model_output"===a.kind||"text"===a.kind||"image"===a.kind)){let b=H.delta,c={};null!=f&&(c.interactionId=f);let d=Object.keys(c).length>0?{google:c}:void 0;(null==b?void 0:b.data)!=null&&b.data.length>0?e.enqueue({type:"file",mediaType:null!=(u=b.mime_type)?u:"image/png",data:{type:"data",data:b.data},...d?{providerMetadata:d}:{}}):(null==b?void 0:b.uri)!=null&&b.uri.length>0&&e.enqueue({type:"file",mediaType:null!=(v=b.mime_type)?v:"image/png",data:{type:"url",url:new URL(b.uri)},...d?{providerMetadata:d}:{}}),"image"===a.kind&&(a.data=void 0,a.uri=void 0);break}if("video"===b&&("pending_model_output"===a.kind||"text"===a.kind)){let a=H.delta,b={};null!=f&&(b.interactionId=f);let c=Object.keys(b).length>0?{google:b}:void 0;(null==a?void 0:a.data)!=null&&a.data.length>0?e.enqueue({type:"file",mediaType:null!=(w=a.mime_type)?w:"video/mp4",data:{type:"data",data:a.data},...c?{providerMetadata:c}:{}}):(null==a?void 0:a.uri)!=null&&a.uri.length>0&&e.enqueue({type:"file",mediaType:null!=(x=a.mime_type)?x:"video/mp4",data:{type:"url",url:new URL(a.uri)},...c?{providerMetadata:c}:{}});break}let d=H.delta;if("custom"===a.kind&&((null==d?void 0:d.type)==="processing_call"||(null==d?void 0:d.type)==="processing_result"))null!=d.signature&&(a.google.signature=d.signature),"processing_call"===d.type&&null!=d.id&&d.id.length>0&&(a.google.processingId=d.id),"processing_result"===d.type&&null!=d.call_id&&d.call_id.length>0&&(a.google.processingCallId=d.call_id);else if("text"===a.kind&&(null==d?void 0:d.type)==="text"){let b=null!=(y=d.text)?y:"";b.length>0&&e.enqueue({type:"text-delta",id:a.id,delta:b})}else if("text"===a.kind&&((null==d?void 0:d.type)==="text_annotation"||(null==d?void 0:d.type)==="text_annotation_delta"))for(let b of aG({annotations:d.annotations,generateId:c})){let c=m(b);l.has(c)||(l.add(c),a.emittedSourceKeys.add(c),e.enqueue(b))}else if("image"===a.kind&&(null==d?void 0:d.type)==="image")null!=d.data&&(a.data=d.data),null!=d.mime_type&&(a.mimeType=d.mime_type),null!=d.uri&&(a.uri=d.uri);else if("reasoning"===a.kind){if((null==d?void 0:d.type)==="thought_summary"){let b=d.content;(null==b?void 0:b.type)==="text"&&"string"==typeof b.text&&e.enqueue({type:"reasoning-delta",id:a.id,delta:b.text})}else if((null==d?void 0:d.type)==="thought_signature"){let b=d.signature;null!=b&&(a.signature=b)}}else if("function_call"===a.kind&&(null==d?void 0:d.type)==="arguments_delta"){let b="string"==typeof d.arguments?d.arguments:"";b.length>0&&(a.argumentsAccum+=b,e.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:b})),null!=d.id&&d.id.length>0&&(a.toolCallId=d.id),null!=d.signature&&(a.signature=d.signature),j=!0}else"builtin_tool_call"===a.kind&&(null==d?void 0:d.type)===a.blockType?(null!=d.id&&d.id.length>0&&(a.toolCallId=d.id),null!=d.arguments&&"object"==typeof d.arguments&&(a.arguments=d.arguments),null!=d.name&&"mcp_server_tool_call"===a.blockType&&(a.toolName=d.name)):"builtin_tool_result"===a.kind&&(null==d?void 0:d.type)===a.blockType&&(null!=d.call_id&&d.call_id.length>0&&(a.callId=d.call_id),void 0!==d.result&&(a.result=d.result),null!=d.is_error&&(a.isError=d.is_error),null!=d.name&&"mcp_server_tool_result"===a.blockType&&(a.toolName=d.name));break}case"step.stop":{let a=k.get(H.index);if(null==a)break;if("text"===a.kind){let b=null!=f?{google:{interactionId:f}}:void 0;e.enqueue({type:"text-end",id:a.id,...b?{providerMetadata:b}:{}})}else if("reasoning"===a.kind){let b={};null!=a.signature&&(b.signature=a.signature),null!=f&&(b.interactionId=f);let c=Object.keys(b).length>0?{google:b}:void 0;e.enqueue({type:"reasoning-end",id:a.id,...c?{providerMetadata:c}:{}})}else if("image"===a.kind){let b={};null!=f&&(b.interactionId=f);let c=Object.keys(b).length>0?{google:b}:void 0;null!=a.data&&a.data.length>0?e.enqueue({type:"file",mediaType:null!=(z=a.mimeType)?z:"image/png",data:{type:"data",data:a.data},...c?{providerMetadata:c}:{}}):null!=a.uri&&a.uri.length>0&&e.enqueue({type:"file",mediaType:null!=(A=a.mimeType)?A:"image/png",data:{type:"url",url:new URL(a.uri)},...c?{providerMetadata:c}:{}})}else if("function_call"===a.kind){let b=a.argumentsAccum.length>0?a.argumentsAccum:"{}";e.enqueue({type:"tool-input-end",id:a.toolCallId});let c={};null!=a.signature&&(c.signature=a.signature),null!=f&&(c.interactionId=f);let d=Object.keys(c).length>0?{google:c}:void 0;e.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:b,...d?{providerMetadata:d}:{}})}else if("custom"===a.kind)e.enqueue({type:"custom",kind:a.customKind,providerMetadata:{google:a.google}});else if("builtin_tool_call"!==a.kind||a.callEmitted){if("builtin_tool_result"===a.kind&&!a.resultEmitted)for(let b of(e.enqueue({type:"tool-result",toolCallId:a.callId,toolName:a.toolName,result:null!=(C=a.result)?C:null}),a.resultEmitted=!0,aF({block:{type:a.blockType,call_id:a.callId,result:a.result},generateId:c}))){let a=m(b);l.has(a)||(l.add(a),e.enqueue(b))}}else e.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:JSON.stringify(null!=(B=a.arguments)?B:{}),providerExecuted:!0}),a.callEmitted=!0;k.delete(H.index);break}case"interaction.status_update":case"interaction.in_progress":case"interaction.requires_action":h=null!=H.status?H.status:"interaction.requires_action"===I?"requires_action":"in_progress";break;case"interaction.completed":{let a=H.interaction;(null==a?void 0:a.id)!=null&&a.id.length>0&&(f=a.id),(null==a?void 0:a.status)!=null&&(h=a.status),(null==a?void 0:a.usage)!=null&&(g=a.usage),(null==a?void 0:a.service_tier)!=null&&(i=a.service_tier);break}case"error":h="failed",e.enqueue({type:"error",error:(0,b.createProviderStreamError)({message:null!=(E=null==(D=H.error)?void 0:D.message)?E:"Unknown interaction error",type:H.event_type,code:null!=(G=null==(F=H.error)?void 0:F.code)?G:void 0,data:H})})}},flush(a){let b={unified:aH({status:h,hasFunctionCall:j}),raw:h},c=aB(g),d={google:{...null!=f?{interactionId:f}:{},...null!=i?{serviceTier:i}:{},...null!=c?{outputTokensByModality:c}:{}}};a.enqueue({type:"finish",finishReason:b,usage:aA(g),providerMetadata:d})}})}function aL({part:a,warnings:c,mediaResolution:d}){let e;if("text"===a.data.type)return{type:"text",text:a.data.text};switch((0,b.getTopLevelMediaType)(a.mediaType)){case"image":e="image";break;case"audio":e="audio";break;case"video":e="video";break;case"application":case"text":e="document";break;default:e=void 0}if(null==e)return void c.push({type:"other",message:`google.interactions: unsupported file media type "${a.mediaType}"; part dropped.`});let f=null!=d&&("image"===e||"video"===e)?{resolution:d}:{},g="video"===e?function({part:a,warnings:b}){var c,d;let e=null==(d=null==(c=a.providerOptions)?void 0:c.google)?void 0:d.processing;return null==e?{}:"agentic"===e||"static"===e?{processing:e}:"object"!=typeof e||Array.isArray(e)||"static"!==e.type?(b.push({type:"other",message:'google.interactions: invalid providerOptions.google.processing on video file part; expected "agentic", "static", or a static processing configuration. Option dropped.'}),{}):{processing:{type:"static",..."number"==typeof e.startOffset?{start_offset:e.startOffset}:{},..."number"==typeof e.endOffset?{end_offset:e.endOffset}:{},..."number"==typeof e.fps?{fps:e.fps}:{}}}}({part:a,warnings:c}):{};switch(a.data.type){case"data":{let c=(0,b.resolveFullMediaType)({part:a});return{type:e,data:(0,b.convertToBase64)(a.data.data),mime_type:c,...f,...g}}case"url":return{type:e,uri:a.data.url.toString(),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{},...f,...g};case"reference":return{type:e,uri:(0,b.resolveProviderReference)({reference:a.data.reference,provider:"google"}),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{},...f,...g}}}var aM=()=>e.z.object({modality:e.z.string().nullish(),tokens:e.z.number().nullish()}).loose(),aN=()=>e.z.object({total_input_tokens:e.z.number().nullish(),total_output_tokens:e.z.number().nullish(),total_thought_tokens:e.z.number().nullish(),total_cached_tokens:e.z.number().nullish(),total_tool_use_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),input_tokens_by_modality:e.z.array(aM()).nullish(),output_tokens_by_modality:e.z.array(aM()).nullish(),cached_tokens_by_modality:e.z.array(aM()).nullish(),tool_use_tokens_by_modality:e.z.array(aM()).nullish(),grounding_tool_count:e.z.array(e.z.object({type:e.z.string().nullish(),count:e.z.number().nullish()}).loose()).nullish()}).loose(),aO=()=>e.z.enum(["in_progress","requires_action","completed","failed","cancelled","incomplete"]),aP=()=>{let a=e.z.object({type:e.z.literal("url_citation"),url:e.z.string().nullish(),title:e.z.string().nullish(),start_index:e.z.number().nullish(),end_index:e.z.number().nullish()}).loose(),b=e.z.object({type:e.z.literal("file_citation"),file_name:e.z.string().nullish(),document_uri:e.z.string().nullish(),url:e.z.string().nullish(),page_number:e.z.number().nullish(),media_id:e.z.string().nullish(),start_index:e.z.number().nullish(),end_index:e.z.number().nullish(),custom_metadata:e.z.record(e.z.string(),e.z.unknown()).nullish()}).loose(),c=e.z.object({type:e.z.literal("place_citation"),name:e.z.string().nullish(),url:e.z.string().nullish(),place_id:e.z.string().nullish(),start_index:e.z.number().nullish(),end_index:e.z.number().nullish()}).loose();return e.z.union([a,b,c,e.z.object({type:e.z.string()}).loose()])},aQ=()=>e.z.object({type:e.z.string(),text:e.z.string().nullish(),data:e.z.string().nullish(),mime_type:e.z.string().nullish()}).loose(),aR=()=>{let a=e.z.object({type:e.z.literal("text"),text:e.z.string(),annotations:e.z.array(aP()).nullish()}).loose(),b=e.z.object({type:e.z.literal("image"),data:e.z.string().nullish(),mime_type:e.z.string().nullish(),resolution:e.z.enum(["low","medium","high","ultra_high"]).nullish(),uri:e.z.string().nullish()}).loose(),c=e.z.object({type:e.z.literal("video"),data:e.z.string().nullish(),mime_type:e.z.string().nullish(),uri:e.z.string().nullish()}).loose();return e.z.union([a,b,c,e.z.object({type:e.z.string()}).loose()])},aS=["google_search_call","code_execution_call","url_context_call","file_search_call","google_maps_call","mcp_server_tool_call"],aT=["google_search_result","code_execution_result","url_context_result","file_search_result","google_maps_result","mcp_server_tool_result"],aU=()=>{let a=e.z.object({type:e.z.literal("user_input"),content:e.z.array(aR()).nullish()}).loose(),b=e.z.object({type:e.z.literal("model_output"),content:e.z.array(aR()).nullish()}).loose(),c=e.z.object({type:e.z.literal("function_call"),id:e.z.string(),name:e.z.string(),arguments:e.z.record(e.z.string(),e.z.unknown()).nullish(),signature:e.z.string().nullish()}).loose(),d=e.z.object({type:e.z.literal("thought"),signature:e.z.string().nullish(),summary:e.z.array(aQ()).nullish()}).loose(),f=e.z.object({type:e.z.literal("processing_call"),id:e.z.string(),signature:e.z.string().nullish()}).loose(),g=e.z.object({type:e.z.literal("processing_result"),call_id:e.z.string(),signature:e.z.string().nullish()}).loose(),h=e.z.object({type:e.z.enum(aS),id:e.z.string(),arguments:e.z.record(e.z.string(),e.z.unknown()).nullish(),name:e.z.string().nullish(),server_name:e.z.string().nullish(),search_type:e.z.string().nullish(),signature:e.z.string().nullish()}).loose(),i=e.z.object({type:e.z.enum(aT),call_id:e.z.string(),result:e.z.unknown().nullish(),is_error:e.z.boolean().nullish(),name:e.z.string().nullish(),server_name:e.z.string().nullish(),signature:e.z.string().nullish()}).loose();return e.z.union([a,b,c,d,f,g,h,i,e.z.object({type:e.z.string()}).loose()])},aV=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({id:e.z.string().nullish(),created:e.z.string().nullish(),updated:e.z.string().nullish(),status:aO(),model:e.z.string().nullish(),agent:e.z.string().nullish(),steps:e.z.array(aU()).nullish(),usage:aN().nullish(),service_tier:e.z.string().nullish(),previous_interaction_id:e.z.string().nullish(),response_modalities:e.z.array(e.z.string()).nullish()}).loose())),aW=(0,b.lazySchema)(()=>{let a,c,d,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;return(0,b.zodSchema)((a=aO(),c=aP(),d=aQ(),f=e.z.object({event_type:e.z.literal("interaction.created"),event_id:e.z.string().nullish(),interaction:e.z.object({id:e.z.string().nullish(),created:e.z.string().nullish(),model:e.z.string().nullish(),agent:e.z.string().nullish(),status:a.nullish()}).loose()}).loose(),g=e.z.object({event_type:e.z.literal("step.start"),event_id:e.z.string().nullish(),index:e.z.number(),step:aU()}).loose(),h=e.z.object({type:e.z.literal("text"),text:e.z.string()}).loose(),i=e.z.object({type:e.z.literal("thought_summary"),content:d.nullish()}).loose(),j=e.z.object({type:e.z.literal("thought_signature"),signature:e.z.string().nullish()}).loose(),k=e.z.object({type:e.z.literal("arguments_delta"),arguments:e.z.string().nullish(),id:e.z.string().nullish(),signature:e.z.string().nullish()}).loose(),l=e.z.object({type:e.z.enum(["text_annotation_delta","text_annotation"]),annotations:e.z.array(c).nullish()}).loose(),m=e.z.object({type:e.z.literal("image"),data:e.z.string().nullish(),mime_type:e.z.string().nullish(),resolution:e.z.enum(["low","medium","high","ultra_high"]).nullish(),uri:e.z.string().nullish()}).loose(),n=e.z.object({type:e.z.literal("video"),data:e.z.string().nullish(),mime_type:e.z.string().nullish(),uri:e.z.string().nullish()}).loose(),o=e.z.object({type:e.z.enum(aS),id:e.z.string().nullish(),arguments:e.z.record(e.z.string(),e.z.unknown()).nullish(),name:e.z.string().nullish(),server_name:e.z.string().nullish(),search_type:e.z.string().nullish(),signature:e.z.string().nullish()}).loose(),p=e.z.object({type:e.z.enum(aT),call_id:e.z.string().nullish(),result:e.z.unknown().nullish(),is_error:e.z.boolean().nullish(),name:e.z.string().nullish(),server_name:e.z.string().nullish(),signature:e.z.string().nullish()}).loose(),q=e.z.object({type:e.z.string()}).loose(),r=e.z.union([h,m,n,i,j,k,l,o,p,q]),s=e.z.object({event_type:e.z.literal("step.delta"),event_id:e.z.string().nullish(),index:e.z.number(),delta:r}).loose(),t=e.z.object({event_type:e.z.literal("step.stop"),event_id:e.z.string().nullish(),index:e.z.number()}).loose(),u=e.z.object({event_type:e.z.literal("interaction.status_update"),event_id:e.z.string().nullish(),interaction_id:e.z.string().nullish(),status:a.nullish()}).loose(),v=e.z.object({event_type:e.z.literal("interaction.in_progress"),event_id:e.z.string().nullish(),interaction_id:e.z.string().nullish(),status:a.nullish()}).loose(),w=e.z.object({event_type:e.z.literal("interaction.requires_action"),event_id:e.z.string().nullish(),interaction_id:e.z.string().nullish(),status:a.nullish()}).loose(),x=e.z.object({event_type:e.z.literal("interaction.completed"),event_id:e.z.string().nullish(),interaction:e.z.object({id:e.z.string().nullish(),status:a.nullish(),usage:aN().nullish(),service_tier:e.z.string().nullish()}).loose()}).loose(),y=e.z.object({event_type:e.z.literal("error"),event_id:e.z.string().nullish(),error:e.z.object({code:e.z.string().nullish(),message:e.z.string().nullish()}).loose().nullish()}).loose(),z=e.z.object({event_type:e.z.string()}).loose(),e.z.union([f,g,s,t,u,v,w,x,y,z])))}),aX=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({previousInteractionId:e.z.string().nullish(),store:e.z.boolean().nullish(),agent:e.z.string().nullish(),agentConfig:e.z.union([e.z.object({type:e.z.literal("dynamic")}).loose(),e.z.object({type:e.z.literal("deep-research"),thinkingSummaries:e.z.enum(["auto","none"]).nullish(),visualization:e.z.enum(["off","auto"]).nullish(),collaborativePlanning:e.z.boolean().nullish()})]).nullish(),thinkingLevel:e.z.enum(["minimal","low","medium","high"]).nullish(),thinkingSummaries:e.z.enum(["auto","none"]).nullish(),responseFormat:e.z.array(e.z.union([e.z.object({type:e.z.literal("text"),mimeType:e.z.string().nullish(),schema:e.z.unknown().nullish()}).loose(),e.z.object({type:e.z.literal("image"),mimeType:e.z.string().nullish(),aspectRatio:e.z.enum(["1:1","2:3","3:2","3:4","4:3","4:5","5:4","9:16","16:9","21:9","1:8","8:1","1:4","4:1"]).nullish(),imageSize:e.z.enum(["1K","2K","4K","512"]).nullish()}).loose(),e.z.object({type:e.z.literal("audio"),mimeType:e.z.string().nullish()}).loose(),e.z.object({type:e.z.literal("video"),aspectRatio:e.z.enum(["16:9","9:16"]).nullish(),resolution:e.z.enum(["360p","720p","1080p","4k"]).nullish(),duration:e.z.string().nullish(),delivery:e.z.enum(["inline","uri"]).nullish(),gcsUri:e.z.string().nullish()}).loose()])).nullish(),imageConfig:e.z.object({aspectRatio:e.z.enum(["1:1","2:3","3:2","3:4","4:3","4:5","5:4","9:16","16:9","21:9","1:8","8:1","1:4","4:1"]).nullish(),imageSize:e.z.enum(["1K","2K","4K","512"]).nullish()}).nullish(),mediaResolution:e.z.enum(["low","medium","high","ultra_high"]).nullish(),responseModalities:e.z.array(e.z.enum(["text","image","audio","video","document"])).nullish(),serviceTier:e.z.enum(["flex","standard","priority"]).nullish(),systemInstruction:e.z.string().nullish(),signature:e.z.string().nullish(),interactionId:e.z.string().nullish(),pollingTimeoutMs:e.z.number().int().positive().nullish(),background:e.z.boolean().nullish(),environment:e.z.union([e.z.string(),e.z.object({type:e.z.literal("remote"),sources:e.z.array(e.z.union([e.z.object({type:e.z.literal("gcs"),source:e.z.string(),target:e.z.string().nullish()}),e.z.object({type:e.z.literal("repository"),source:e.z.string(),target:e.z.string().nullish()}),e.z.object({type:e.z.literal("inline"),content:e.z.string(),target:e.z.string()})])).nullish(),network:e.z.union([e.z.literal("disabled"),e.z.object({allowlist:e.z.array(e.z.object({domain:e.z.string(),transform:e.z.array(e.z.record(e.z.string(),e.z.string())).nullish()}))})]).nullish()})]).nullish()})));function aY({signature:a,interactionId:b,processingId:c,processingCallId:d}){let e={};return null!=a&&(e.signature=a),null!=b&&(e.interactionId=b),null!=c&&(e.processingId=c),null!=d&&(e.processingCallId=d),Object.keys(e).length>0?{providerMetadata:{google:e}}:{}}var aZ=new Set(["google_search_call","code_execution_call","url_context_call","file_search_call","google_maps_call","mcp_server_tool_call"]),a$=new Set(["google_search_result","code_execution_result","url_context_result","file_search_result","google_maps_result","mcp_server_tool_result"]);function a_({steps:a,generateId:b,interactionId:c}){var d,e,f,g,h,i,j,k,l,m,n;let o=[],p=!1;if(null==a)return{content:o,hasFunctionCall:p};for(let q of a){if(null==q||"object"!=typeof q)continue;let a=q.type;if("string"==typeof a)switch(a){case"user_input":break;case"model_output":for(let a of null!=(d=q.content)?d:[]){if(null==a||"object"!=typeof a)continue;let d=a.type;if("text"===d){let d=null!=(e=a.text)?e:"",f=a.annotations;for(let a of(o.push({type:"text",text:d,...aY({interactionId:c})}),aG({annotations:f,generateId:b})))o.push(a)}else"image"===d?null!=a.data&&a.data.length>0?o.push({type:"file",mediaType:null!=(f=a.mime_type)?f:"image/png",data:{type:"data",data:a.data},...aY({interactionId:c})}):null!=a.uri&&a.uri.length>0&&o.push({type:"file",mediaType:null!=(g=a.mime_type)?g:"image/png",data:{type:"url",url:new URL(a.uri)},...aY({interactionId:c})}):"video"===d&&(null!=a.data&&a.data.length>0?o.push({type:"file",mediaType:null!=(h=a.mime_type)?h:"video/mp4",data:{type:"data",data:a.data},...aY({interactionId:c})}):null!=a.uri&&a.uri.length>0&&o.push({type:"file",mediaType:null!=(i=a.mime_type)?i:"video/mp4",data:{type:"url",url:new URL(a.uri)},...aY({interactionId:c})}))}break;case"thought":{let a=(Array.isArray(q.summary)?q.summary:[]).filter(a=>(null==a?void 0:a.type)==="text"&&"string"==typeof a.text).map(a=>a.text).join("\n");o.push({type:"reasoning",text:a,...aY({signature:q.signature,interactionId:c})});break}case"processing_call":{let a=q.id||b();o.push({type:"custom",kind:"google.processing_call",...aY({signature:q.signature,interactionId:c,processingId:a})});break}case"processing_result":{let a=q.call_id||b();o.push({type:"custom",kind:"google.processing_result",...aY({signature:q.signature,interactionId:c,processingCallId:a})});break}case"function_call":p=!0,o.push({type:"tool-call",toolCallId:q.id,toolName:q.name,input:JSON.stringify(null!=(j=q.arguments)?j:{}),...aY({signature:q.signature,interactionId:c})});break;default:if(aZ.has(a)){let c="mcp_server_tool_call"===a?null!=(k=q.name)?k:"mcp_server_tool":a.replace(/_call$/,""),d=JSON.stringify(null!=(l=q.arguments)?l:{});o.push({type:"tool-call",toolCallId:q.id||b(),toolName:c,input:d,providerExecuted:!0})}else if(a$.has(a)){let c="mcp_server_tool_result"===a?null!=(m=q.name)?m:"mcp_server_tool":a.replace(/_result$/,"");for(let a of(o.push({type:"tool-result",toolCallId:q.call_id||b(),toolName:c,result:null!=(n=q.result)?n:null}),aF({block:q,generateId:b})))o.push(a)}}}return{content:o,hasFunctionCall:p}}async function a0({baseURL:a,interactionId:c,headers:d,fetch:e=globalThis.fetch}){if(null==c||0===c.length)return;let f=`${a}/interactions/${encodeURIComponent(c)}/cancel`;try{let a=await e(f,{method:"POST",headers:(0,b.withUserAgentSuffix)((0,b.combineHeaders)({"Content-Type":"application/json"},d),(0,b.getRuntimeEnvironmentUserAgent)()),body:"{}"});try{await a.text()}catch(a){}}catch(a){}}var a1=new Set(["completed","failed","cancelled","incomplete"]);function a2(a){return null!=a&&a1.has(a)}async function a3({baseURL:a,interactionId:c,headers:d,fetch:e,abortSignal:f,initialDelayMs:h=1e3,maxDelayMs:i=1e4,timeoutMs:j=18e5}){if(null==c||0===c.length)throw Error("google.interactions: cannot poll a background interaction without an id. The POST response did not include an interaction id.");let k=Date.now(),l=h,m=`${a}/interactions/${encodeURIComponent(c)}`,n=()=>a0({baseURL:a,interactionId:c,headers:d,fetch:e});try{for(;;){if(null==f?void 0:f.aborted)throw await n(),new DOMException("Polling was aborted","AbortError");if(Date.now()-k>j)throw Error(`google.interactions: timed out polling interaction ${c} after ${j}ms.`);await (0,b.delay)(l,{abortSignal:f});let{value:a,rawValue:h,responseHeaders:o}=await (0,b.getFromApi)({url:m,validateUrl:!1,headers:d,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(aV),abortSignal:f,fetch:e});if(a2(a.status))return{response:a,rawResponse:h,responseHeaders:o};l=Math.min(2*l,i)}}catch(a){throw(0,b.isAbortError)(a)&&await n(),a}}var a4=class a{constructor(a,b){this.specificationVersion="v4","string"==typeof a?(this.modelId=a,this.agent=void 0):"managedAgent"in a?(this.modelId=a.managedAgent,this.agent=a.managedAgent):(this.modelId=a.agent,this.agent=a.agent),this.config=b}static[d.WORKFLOW_SERIALIZE](a){return{...(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config}),agent:a.agent}}static[d.WORKFLOW_DESERIALIZE](b){return new a(null!=b.agent?{agent:b.agent}:b.modelId,b.config)}get provider(){return this.config.provider}get supportedUrls(){return this.config.supportedUrls?this.config.supportedUrls():{"image/*":[/^https?:\/\/.+/],"application/pdf":[/^https?:\/\/.+/],"audio/*":[/^https?:\/\/.+/],"video/*":[/^https?:\/\/(www\.)?youtube\.com\/watch\?v=.+/,/^https?:\/\/youtu\.be\/.+/,/^gs:\/\/.+/]}}async getArgs(a){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H;let I,J,K,L,M,N=[],O=await (0,b.parseProviderOptions)({provider:"google",providerOptions:a.providerOptions,schema:aX}),P=null!=this.agent;if(P||(null!=a.frequencyPenalty&&N.push({type:"unsupported",feature:"frequencyPenalty"}),null!=a.presencePenalty&&N.push({type:"unsupported",feature:"presencePenalty"})),null!=a.tools&&a.tools.length>0){let b=function({tools:a,toolChoice:b}){var c,d,e,f;let g,h=[],i=(null==a?void 0:a.length)?a:void 0;if(null==i)return{tools:void 0,toolChoice:void 0,toolWarnings:h};let j=[];for(let a of i){if("function"===a.type){j.push({type:"function",name:a.name,description:null!=(c=a.description)?c:"",parameters:a.inputSchema});continue}if("provider"===a.type){let b=null!=(d=a.args)?d:{};switch(a.id){case"google.google_search":{let a,c=b.searchTypes;if(null!=c&&"object"==typeof c){let b=[];null!=c.webSearch&&b.push("web_search"),null!=c.imageSearch&&b.push("image_search"),b.length>0&&(a=b)}j.push({type:"google_search",...null!=a?{search_types:a}:{}});break}case"google.code_execution":j.push({type:"code_execution"});break;case"google.url_context":j.push({type:"url_context"});break;case"google.file_search":j.push({type:"file_search",...null!=b.fileSearchStoreNames?{file_search_store_names:b.fileSearchStoreNames}:{},...null!=b.topK?{top_k:b.topK}:{},...null!=b.metadataFilter?{metadata_filter:b.metadataFilter}:{}});break;case"google.google_maps":j.push({type:"google_maps",...null!=b.latitude?{latitude:b.latitude}:{},...null!=b.longitude?{longitude:b.longitude}:{},...null!=b.enableWidget?{enable_widget:b.enableWidget}:{}});break;case"google.computer_use":j.push({type:"computer_use",environment:null!=(e=b.environment)?e:"browser",...null!=b.excludedPredefinedFunctions?{excludedPredefinedFunctions:b.excludedPredefinedFunctions}:{}});break;case"google.mcp_server":j.push({type:"mcp_server",...null!=b.name?{name:b.name}:{},...null!=b.url?{url:b.url}:{},...null!=b.headers?{headers:b.headers}:{},...null!=b.allowedTools?{allowed_tools:b.allowedTools}:{}});break;case"google.retrieval":{let a=null!=(f=b.vertexAiSearchConfig)?f:void 0;j.push({type:"retrieval",...null!=b.retrievalTypes?{retrieval_types:b.retrievalTypes}:{retrieval_types:["vertex_ai_search"]},...null!=a?{vertex_ai_search_config:a}:{}});break}default:h.push({type:"unsupported",feature:`provider-defined tool ${a.id}`,details:`provider-defined tool ${a.id} is not supported by google.interactions; tool dropped.`})}continue}h.push({type:"unsupported",feature:`tool of type ${a.type}`,details:"Only function tools and google.* provider-defined tools are supported by google.interactions; tool dropped."})}let k=j.some(a=>"function"===a.type);if(null!=b&&k)switch(b.type){case"auto":g="auto";break;case"required":g="any";break;case"none":g="none";break;case"tool":g={allowed_tools:{mode:"validated",tools:[b.toolName]}}}return{tools:j.length>0?j:void 0,toolChoice:g,toolWarnings:h}}({tools:a.tools,toolChoice:a.toolChoice});I=b.tools,J=b.toolChoice,N.push(...b.toolWarnings)}let Q=[];if((null==(c=a.responseFormat)?void 0:c.type)==="json")if(P)N.push({type:"other",message:"google.interactions: structured output (responseFormat) is not supported when an agent is set; responseFormat will be ignored."});else{let b={type:"text",mime_type:"application/json",...null!=a.responseFormat.schema?{schema:a.responseFormat.schema}:{}};Q.push(b)}if((null==O?void 0:O.responseFormat)!=null)for(let a of O.responseFormat)"text"===a.type?Q.push(a5({type:"text",mime_type:null!=(d=a.mimeType)?d:void 0,schema:null!=(e=a.schema)?e:void 0})):"image"===a.type?Q.push(a5({type:"image",mime_type:null!=(f=a.mimeType)?f:void 0,aspect_ratio:null!=(g=a.aspectRatio)?g:void 0,image_size:null!=(h=a.imageSize)?h:void 0})):"audio"===a.type?Q.push(a5({type:"audio",mime_type:null!=(i=a.mimeType)?i:void 0})):"video"===a.type&&Q.push(a5({type:"video",aspect_ratio:null!=(j=a.aspectRatio)?j:void 0,resolution:null!=(k=a.resolution)?k:void 0,duration:null!=(l=a.duration)?l:void 0,delivery:null!=(m=a.delivery)?m:void 0,gcs_uri:null!=(n=a.gcsUri)?n:void 0}));let{input:R,systemInstruction:S,warnings:T}=function({prompt:a,previousInteractionId:c,store:d,mediaResolution:e}){var f,g,h,i,j,k,l,m;let n=[],o=null!=c&&!1===d,p=null!=c&&!1!==d;o&&n.push({type:"other",message:"google.interactions: providerOptions.google.previousInteractionId was set together with store: false. These are incoherent (the prior interaction cannot be referenced when nothing was stored on the server); the full history will be sent and previous_interaction_id will still be emitted."});let q=p?function({prompt:a,previousInteractionId:b}){let c=[],d=new Set;for(let e of a){if("assistant"===e.role){if(e.content.some(a=>{var c,d;return(null==(d=null==(c=a.providerOptions)?void 0:c.google)?void 0:d.interactionId)===b})){for(let a of e.content)"tool-call"===a.type&&d.add(a.toolCallId);continue}c.push(e);continue}if("tool"===e.role){let a=e.content.filter(a=>"tool-result"!==a.type||!d.has(a.toolCallId));if(0===a.length)continue;c.push({...e,content:a});continue}c.push(e)}return c}({prompt:a,previousInteractionId:c}):a,r=[],s=[];for(let a of q)switch(a.role){case"system":r.push(a.content);break;case"user":{let b=[];for(let c of a.content)if("text"===c.type)b.push({type:"text",text:c.text});else if("file"===c.type){let a=aL({part:c,warnings:n,mediaResolution:e});null!=a&&b.push(a)}let c=function(a){if(a.length<2)return a;let b=[];for(let c of a){let a=b[b.length-1];if("text"===c.type&&null!=a&&"text"===a.type&&null==a.annotations&&null==c.annotations){let d={type:"text",text:`${a.text}
|
|
167
168
|
|
|
168
|
-
${c.text}`};b[b.length-1]=d;continue}b.push(c)}return b}(b);c.length>0&&s.push({type:"user_input",content:c});break}case"assistant":{let c=[],d=()=>{c.length>0&&(s.push({type:"model_output",content:c}),c=[])};for(let l of a.content)if("text"===l.type)c.push({type:"text",text:l.text});else if("reasoning"===l.type){d();let a=null==(g=null==(f=l.providerOptions)?void 0:f.google)?void 0:g.signature;s.push({type:"thought",...null!=a?{signature:a}:{},summary:l.text.length>0?[{type:"text",text:l.text}]:void 0})}else if("file"===l.type){let a=aL({part:l,warnings:n,mediaResolution:e});null!=a&&c.push(a)}else if("custom"===l.type){d();let a=null==(h=l.providerOptions)?void 0:h.google,b="string"==typeof(null==a?void 0:a.signature)?a.signature:void 0;"google.processing_call"===l.kind&&"string"==typeof(null==a?void 0:a.processingId)?s.push({type:"processing_call",id:a.processingId,...null!=b?{signature:b}:{}}):"google.processing_result"===l.kind&&"string"==typeof(null==a?void 0:a.processingCallId)?s.push({type:"processing_result",call_id:a.processingCallId,...null!=b?{signature:b}:{}}):n.push({type:"other",message:`google.interactions: unsupported or invalid custom assistant content part "${l.kind}"; part dropped.`})}else if("tool-call"===l.type){d();let a=null==(j=null==(i=l.providerOptions)?void 0:i.google)?void 0:j.signature,c="string"==typeof l.input?function(a){try{let c=(0,b.secureJsonParse)(a);if(null!=c&&"object"==typeof c&&!Array.isArray(c))return c;return{value:c}}catch(b){return{value:a}}}(l.input):null!=(k=l.input)?k:{};s.push({type:"function_call",id:l.toolCallId,name:l.toolName,arguments:c,...null!=a?{signature:a}:{}})}else n.push({type:"other",message:`google.interactions: unsupported assistant content part type "${l.type}"; part dropped.`});d();break}case"tool":{let c=[];for(let d of a.content){if("tool-result"!==d.type){n.push({type:"other",message:`google.interactions: unsupported tool message part type "${d.type}"; part dropped.`});continue}let a=function({toolCallId:a,toolName:c,output:d,signature:e,warnings:f}){var g;let h={type:"function_result",call_id:a,name:c,...null!=e?{signature:e}:{}};switch(d.type){case"text":return{...h,result:d.value};case"json":return{...h,result:JSON.stringify(d.value)};case"error-text":return{...h,is_error:!0,result:d.value};case"error-json":return{...h,is_error:!0,result:JSON.stringify(d.value)};case"execution-denied":return{...h,is_error:!0,result:null!=(g=d.reason)?g:"Tool execution denied by user."};case"content":{let a=[];for(let c of d.value)if("text"===c.type)a.push({type:"text",text:c.text});else if("file"===c.type){if("image"!==(0,b.getTopLevelMediaType)(c.mediaType)){f.push({type:"other",message:`google.interactions: tool-result file with mediaType "${c.mediaType}" is not supported (Interactions \`function_result.result\` accepts only text and image content); part dropped.`});continue}let d=function({part:a,warnings:c}){switch(a.data.type){case"data":{let c=(0,b.isFullMediaType)(a.mediaType)?a.mediaType:(0,b.resolveFullMediaType)({part:{type:"file",mediaType:a.mediaType,data:a.data}});return{type:"image",data:(0,b.convertToBase64)(a.data.data),mime_type:c}}case"url":return{type:"image",uri:a.data.url.toString(),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{}};case"reference":return{type:"image",uri:(0,b.resolveProviderReference)({reference:a.data.reference,provider:"google"}),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{}};case"text":return void c.push({type:"other",message:'google.interactions: tool-result image part with `data.type === "text"` is not representable as an image; part dropped.'})}}({part:c,warnings:f});null!=d&&a.push(d)}else f.push({type:"other",message:`google.interactions: tool-result content part type "${c.type}" is not supported; part dropped.`});return{...h,result:a}}}}({toolCallId:d.toolCallId,toolName:d.toolName,output:d.output,signature:null==(m=null==(l=d.providerOptions)?void 0:l.google)?void 0:m.signature,warnings:n});c.push(a)}c.length>0&&s.push({type:"user_input",content:c})}}return{input:s,systemInstruction:r.length>0?r.join("\n\n"):void 0,warnings:n}}({prompt:a.prompt,previousInteractionId:null!=(o=null==O?void 0:O.previousInteractionId)?o:void 0,store:null!=(p=null==O?void 0:O.store)?p:void 0,mediaResolution:null!=(q=null==O?void 0:O.mediaResolution)?q:void 0});N.push(...T);let U=S,V=null!=(r=null==O?void 0:O.systemInstruction)?r:void 0;if(null!=U&&null!=V?N.push({type:"other",message:"google.interactions: both AI SDK system message and providerOptions.google.systemInstruction were set; using the AI SDK system message."}):null==U&&null!=V&&(U=V),P){let b=[];null!=a.temperature&&b.push("temperature"),null!=a.topP&&b.push("topP"),null!=a.topK&&b.push("topK"),null!=a.frequencyPenalty&&b.push("frequencyPenalty"),null!=a.presencePenalty&&b.push("presencePenalty"),null!=a.seed&&b.push("seed"),null!=a.stopSequences&&a.stopSequences.length>0&&b.push("stopSequences"),null!=a.maxOutputTokens&&b.push("maxOutputTokens"),(null==O?void 0:O.thinkingLevel)!=null&&b.push("thinkingLevel"),(null==O?void 0:O.thinkingSummaries)!=null&&b.push("thinkingSummaries"),(null==O?void 0:O.imageConfig)!=null&&b.push("imageConfig"),b.length>0&&N.push({type:"other",message:`google.interactions: ${b.join(", ")} ${1===b.length?"is":"are"} not supported when an agent is set; use providerOptions.google.agentConfig instead. Dropped from the request body.`}),K=void 0}else if(K=a5({temperature:null!=(s=a.temperature)?s:void 0,top_p:null!=(t=a.topP)?t:void 0,top_k:null!=(u=a.topK)?u:void 0,seed:null!=(v=a.seed)?v:void 0,stop_sequences:null!=a.stopSequences&&a.stopSequences.length>0?a.stopSequences:void 0,max_output_tokens:null!=(w=a.maxOutputTokens)?w:void 0,thinking_level:null!=(x=null==O?void 0:O.thinkingLevel)?x:void 0,thinking_summaries:null!=(y=null==O?void 0:O.thinkingSummaries)?y:void 0,tool_choice:J}),(null==O?void 0:O.imageConfig)!=null){let a=Q.some(a=>"image"===a.type);N.push({type:"other",message:a?"google.interactions: providerOptions.google.imageConfig is deprecated and was ignored because providerOptions.google.responseFormat already supplies an image entry. Use responseFormat exclusively.":'google.interactions: providerOptions.google.imageConfig is deprecated. Use providerOptions.google.responseFormat with a { type: "image", ... } entry instead.'}),a||Q.push({type:"image",mime_type:"image/png",...null!=O.imageConfig.aspectRatio?{aspect_ratio:O.imageConfig.aspectRatio}:{},...null!=O.imageConfig.imageSize?{image_size:O.imageConfig.imageSize}:{}})}if(P&&(null==O?void 0:O.agentConfig)!=null){let a=O.agentConfig;"deep-research"===a.type?L=a5({type:"deep-research",thinking_summaries:null!=(z=a.thinkingSummaries)?z:void 0,visualization:null!=(A=a.visualization)?A:void 0,collaborative_planning:null!=(B=a.collaborativePlanning)?B:void 0}):"dynamic"===a.type&&(L={type:"dynamic"})}if((null==O?void 0:O.environment)!=null)if(P)if("string"==typeof O.environment)M=O.environment;else{let a,b=O.environment,c=null==(C=b.sources)?void 0:C.map(a=>{var b;return"inline"===a.type?{type:"inline",content:a.content,target:a.target}:a5({type:a.type,source:a.source,target:null!=(b=a.target)?b:void 0})});"disabled"===b.network?a="disabled":null!=b.network&&(a={allowlist:b.network.allowlist.map(a=>{var b;return a5({domain:a.domain,transform:null!=(b=a.transform)?b:void 0})})}),M=a5({type:"remote",sources:null!=c&&c.length>0?c:void 0,network:a})}else N.push({type:"other",message:"google.interactions: environment is only supported when an agent is set; environment will be omitted from the request body."});return{args:a5({...P?{agent:this.agent}:{model:this.modelId},input:R,system_instruction:U,tools:I,response_format:Q.length>0?Q:void 0,response_modalities:(null==O?void 0:O.responseModalities)!=null?O.responseModalities:void 0,previous_interaction_id:null!=(D=null==O?void 0:O.previousInteractionId)?D:void 0,service_tier:null!=(E=null==O?void 0:O.serviceTier)?E:void 0,store:null!=(F=null==O?void 0:O.store)?F:void 0,generation_config:null!=K&&Object.keys(K).length>0?K:void 0,agent_config:L,environment:M,background:null!=(G=null==O?void 0:O.background)?G:void 0}),warnings:N,isAgent:P,isBackground:(null==O?void 0:O.background)===!0,pollingTimeoutMs:null!=(H=null==O?void 0:O.pollingTimeoutMs)?H:void 0}}async doGenerate(a){var c,d,e,f,h,i;let j,{args:k,warnings:l,isAgent:m,pollingTimeoutMs:n}=await this.getArgs(a),o=`${this.config.baseURL}/interactions`,p=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers),{responseHeaders:q,value:r,rawValue:s}=await (0,b.postJsonToApi)({url:o,headers:p,body:k,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(aV),abortSignal:a.abortSignal,fetch:this.config.fetch});if(m&&!a2(r.status)){let b=await a3({baseURL:this.config.baseURL,interactionId:r.id,headers:p,fetch:this.config.fetch,abortSignal:a.abortSignal,timeoutMs:n});r=b.response,s=b.rawResponse,q=null!=(c=b.responseHeaders)?c:q}let t="string"==typeof r.id&&r.id.length>0?r.id:void 0,{content:u,hasFunctionCall:v}=a_({steps:null!=(d=r.steps)?d:null,generateId:null!=(e=this.config.generateId)?e:b.generateId,interactionId:t}),w={unified:aH({status:r.status,hasFunctionCall:v}),raw:r.status},x=null!=(h=null!=(f=r.service_tier)?f:null==q?void 0:q["x-gemini-service-tier"])?h:void 0,y=aB(r.usage),z={google:{...null!=t?{interactionId:t}:{},...null!=x?{serviceTier:x}:{},...null!=y?{outputTokensByModality:y}:{}}};if("string"==typeof r.created){let a=new Date(r.created);Number.isNaN(a.getTime())||(j=a)}return{content:u,finishReason:w,usage:aA(r.usage),warnings:l,providerMetadata:z,request:{body:k},response:{headers:q,body:s,...null!=t?{id:t}:{},...j?{timestamp:j}:{},modelId:null!=(i=r.model)?i:void 0}}}async doStream(a){var c;let{args:d,warnings:e,isBackground:f,pollingTimeoutMs:h}=await this.getArgs(a),i=`${this.config.baseURL}/interactions`,j=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers);if(f)return this.doStreamBackground({args:d,warnings:e,url:i,mergedHeaders:j,options:a,pollingTimeoutMs:h});let k={...d,stream:!0},{responseHeaders:l,value:m}=await (0,b.postJsonToApi)({url:i,headers:j,body:k,failedResponseHandler:g,successfulResponseHandler:(0,b.createEventSourceResponseHandler)(aW),abortSignal:a.abortSignal,fetch:this.config.fetch}),n=null==l?void 0:l["x-gemini-service-tier"],o=aK({warnings:e,generateId:null!=(c=this.config.generateId)?c:b.generateId,includeRawChunks:a.includeRawChunks,serviceTier:n});return{stream:m.pipeThrough(o),request:{body:k},response:{headers:l}}}async doStreamBackground({args:a,warnings:c,url:d,mergedHeaders:e,options:f,pollingTimeoutMs:h}){var i,j;let{responseHeaders:k,value:l}=await (0,b.postJsonToApi)({url:d,headers:e,body:a,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(aV),abortSignal:f.abortSignal,fetch:this.config.fetch}),m=l.id;if(null==m||0===m.length)throw Error("google.interactions: background POST response did not include an interaction id; cannot stream the result.");let n=null==k?void 0:k["x-gemini-service-tier"];if(a2(l.status))return{stream:function({response:a,warnings:b,generateId:c,includeRawChunks:d,headerServiceTier:e}){return new ReadableStream({start(f){var g,h,i;let j;f.enqueue({type:"stream-start",warnings:b});let k="string"==typeof a.id&&a.id.length>0?a.id:void 0,l=a.created;if("string"==typeof l){let a=new Date(l);Number.isNaN(a.getTime())||(j=a)}f.enqueue({type:"response-metadata",...null!=k?{id:k}:{},modelId:null!=(g=a.model)?g:void 0,...j?{timestamp:j}:{}}),d&&f.enqueue({type:"raw",rawValue:a});let{content:m,hasFunctionCall:n}=a_({steps:null!=(h=a.steps)?h:null,generateId:c,interactionId:k}),o=0,p=()=>`${null!=k?k:"agent"}:${o++}`;for(let a of m)switch(a.type){case"text":{let b=p(),c=a.providerMetadata;f.enqueue({type:"text-start",id:b}),a.text.length>0&&f.enqueue({type:"text-delta",id:b,delta:a.text}),f.enqueue({type:"text-end",id:b,...c?{providerMetadata:c}:{}});break}case"reasoning":{let b=p(),c=a.providerMetadata;f.enqueue({type:"reasoning-start",id:b}),a.text.length>0&&f.enqueue({type:"reasoning-delta",id:b,delta:a.text}),f.enqueue({type:"reasoning-end",id:b,...c?{providerMetadata:c}:{}});break}case"tool-call":{let b=a.providerMetadata;f.enqueue({type:"tool-input-start",id:a.toolCallId,toolName:a.toolName,...a.providerExecuted?{providerExecuted:a.providerExecuted}:{}}),f.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:a.input}),f.enqueue({type:"tool-input-end",id:a.toolCallId}),f.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...b?{providerMetadata:b}:{}});break}case"tool-result":f.enqueue({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,result:a.result});break;case"source":case"file":f.enqueue(a)}let q=null!=(i=a.service_tier)?i:e,r={unified:aH({status:a.status,hasFunctionCall:n}),raw:a.status},s={google:{...null!=k?{interactionId:k}:{},...null!=q?{serviceTier:q}:{}}};f.enqueue({type:"finish",finishReason:r,usage:aA(a.usage),providerMetadata:s}),f.close()}})}({response:l,warnings:c,generateId:null!=(i=this.config.generateId)?i:b.generateId,includeRawChunks:f.includeRawChunks,headerServiceTier:n}),request:{body:a},response:{headers:k}};let o=function({baseURL:a,interactionId:c,headers:d,fetch:e,abortSignal:f,maxRetries:h=3,retryDelayMs:i=500}){let j,k;if(0===c.length)throw Error("google.interactions: cannot stream a background interaction without an id.");let l={...d,accept:"text/event-stream"},m=!1,n=0,o=!1,p=new AbortController,q=()=>p.abort();null!=f&&(f.aborted?p.abort():f.addEventListener("abort",q,{once:!0}));let r=p.signal;async function s(){let d,f,{value:h}=await (0,b.getFromApi)({url:(d=`${a}/interactions/${encodeURIComponent(c)}`,f=new URLSearchParams({stream:"true"}),null!=j&&f.set("last_event_id",j),`${d}?${f.toString()}`),validateUrl:!1,headers:l,failedResponseHandler:g,successfulResponseHandler:(0,b.createEventSourceResponseHandler)(aW),abortSignal:r,fetch:e});return h.getReader()}return new ReadableStream({async start(g){try{for(;!m&&!r.aborted;){if(null==k)try{k=await s(),o=!1}catch(a){if((0,b.isAbortError)(a)||r.aborted||++n>=h)return void g.error(a);await (0,b.delay)(i*n,{abortSignal:r});continue}try{let{done:a,value:c}=await k.read();if(a){if(k=void 0,m)break;if(o)n=0;else{if(++n>=h)return void g.error(Error("google.interactions: SSE stream closed without producing any events."));await (0,b.delay)(i*n,{abortSignal:r})}continue}if(o=!0,c.success){let a=c.value;"string"==typeof a.event_id&&a.event_id.length>0&&(j=a.event_id),("interaction.completed"===a.event_type||"error"===a.event_type)&&(m=!0)}g.enqueue(c)}catch(a){if((0,b.isAbortError)(a)||r.aborted||(k=void 0,++n>=h))return void g.error(a);await (0,b.delay)(i*n,{abortSignal:r})}}g.close()}catch(a){g.error(a)}finally{null!=f&&f.removeEventListener("abort",q),null==k||k.cancel().catch(()=>{}),k=void 0,r.aborted&&!m&&await a0({baseURL:a,interactionId:c,headers:d,fetch:e})}},cancel(){p.abort(),null==k||k.cancel().catch(()=>{}),k=void 0}})}({baseURL:this.config.baseURL,interactionId:m,headers:e,fetch:this.config.fetch,abortSignal:f.abortSignal}),p=aK({warnings:c,generateId:null!=(j=this.config.generateId)?j:b.generateId,includeRawChunks:f.includeRawChunks,serviceTier:n});return{stream:o.pipeThrough(p),request:{body:a},response:{headers:k}}}};function a5(a){let b={};for(let[c,d]of Object.entries(a))void 0!==d&&(b[c]=d);return b}function a6(a){let b=new URL(a),c=b.pathname.split("/"),d=c.at(-1);return("v1beta"===d||"v1alpha"===d)&&(c.pop(),b.pathname=c.join("/")||"/"),b}function a7(a,b){let c=a6(a);return c.protocol="https:"===c.protocol?"wss:":"ws:",c.pathname=`${c.pathname.replace(/\/$/,"")}/ws/${b}`,c}var a8=class{constructor(){this.turnCounter=0,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,this.turnClosed=!1,this.inputAudioRate=16e3}get responseId(){return`google-resp-${this.turnCounter}`}get itemId(){return`google-item-${this.turnCounter}`}beginTurnIfClosed(){this.turnClosed&&(this.turnCounter++,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,this.turnClosed=!1)}parseServerEvent(a){var b,c;return null!=a.setupComplete?{type:"session-created",raw:a}:null!=a.toolCall?(this.beginTurnIfClosed(),(null!=(b=a.toolCall.functionCalls)?b:[]).flatMap(b=>{var c;let d=JSON.stringify(null!=(c=b.args)?c:{});return[{type:"function-call-arguments-delta",responseId:this.responseId,itemId:this.itemId,callId:b.id,delta:d,raw:a},{type:"function-call-arguments-done",responseId:this.responseId,itemId:this.itemId,callId:b.id,name:b.name,arguments:d,raw:a}]})):null!=a.toolCallCancellation?{type:"custom",rawType:"toolCallCancellation",raw:a}:null!=a.goAway?{type:"custom",rawType:"goAway",raw:a}:null!=a.sessionResumptionUpdate?{type:"custom",rawType:"sessionResumptionUpdate",raw:a}:null!=a.serverContent?this.parseServerContent(a.serverContent,a):(null==(c=a.inputTranscription)?void 0:c.text)!=null?{type:"input-transcription-completed",itemId:`google-input-${this.turnCounter}`,transcript:a.inputTranscription.text,raw:a}:{type:"custom",rawType:String(Object.keys(a)[0]),raw:a}}parseServerContent(a,b){var c,d,e,f;let g=[];if(a.interrupted&&g.push({type:"speech-started",raw:b}),null==(c=a.modelTurn)?void 0:c.parts)for(let c of(this.beginTurnIfClosed(),a.modelTurn.parts))(null==(d=c.inlineData)?void 0:d.data)&&(this.hasAudio=!0,g.push({type:"audio-delta",responseId:this.responseId,itemId:this.itemId,delta:c.inlineData.data,raw:b})),c.text&&(this.hasText=!0,g.push({type:"text-delta",responseId:this.responseId,itemId:this.itemId,delta:c.text,raw:b}));return((null==(e=a.outputTranscription)?void 0:e.text)&&(this.hasTranscript=!0,g.push({type:"audio-transcript-delta",responseId:this.responseId,itemId:this.itemId,delta:a.outputTranscription.text,raw:b})),(null==(f=a.inputTranscription)?void 0:f.text)&&g.push({type:"input-transcription-completed",itemId:`google-input-${this.turnCounter}`,transcript:a.inputTranscription.text,raw:b}),a.generationComplete&&g.push({type:"custom",rawType:"generationComplete",raw:b}),a.turnComplete&&(this.hasAudio&&g.push({type:"audio-done",responseId:this.responseId,itemId:this.itemId,raw:b}),this.hasText&&g.push({type:"text-done",responseId:this.responseId,itemId:this.itemId,raw:b}),this.hasTranscript&&g.push({type:"audio-transcript-done",responseId:this.responseId,itemId:this.itemId,raw:b}),g.push({type:"response-done",responseId:this.responseId,status:"completed",raw:b}),this.turnClosed=!0),0===g.length)?{type:"custom",rawType:"serverContent",raw:b}:1===g.length?g[0]:g}serializeClientEvent(a,b){var c;switch(a.type){case"session-update":return(null==(c=a.config.inputAudioFormat)?void 0:c.rate)!=null&&(this.inputAudioRate=a.config.inputAudioFormat.rate),{setup:ba(a.config,b)};case"input-audio-append":return{realtimeInput:{audio:{data:a.audio,mimeType:`audio/pcm;rate=${this.inputAudioRate}`}}};case"input-audio-commit":return{realtimeInput:{audioStreamEnd:!0}};case"input-audio-clear":case"response-create":case"response-cancel":case"conversation-item-truncate":break;case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{realtimeInput:{text:b.text}};case"function-call-output":return a9(b);case"audio-message":return null}}}return null}};async function a9(a){let c=await (0,b.safeParseJSON)({text:a.output}),d=c.success?c.value:{};return{toolResponse:{functionResponses:[{id:a.callId,name:a.name,response:d}]}}}function ba(a,c){let d={model:m(c)},e={};if((null==a?void 0:a.outputModalities)!=null?e.responseModalities=a.outputModalities.map(a=>a.toUpperCase()):e.responseModalities=["AUDIO"],(null==a?void 0:a.voice)!=null&&(e.speechConfig={voiceConfig:{prebuiltVoiceConfig:{voiceName:a.voice}}}),d.generationConfig=e,(null==a?void 0:a.instructions)!=null&&(d.systemInstruction={parts:[{text:a.instructions}]}),(null==a?void 0:a.tools)!=null&&a.tools.length>0&&(d.tools=[{functionDeclarations:a.tools.map(a=>({name:a.name,description:a.description,parameters:p(a.parameters)}))}]),(null==a?void 0:a.inputAudioTranscription)!=null&&(d.inputAudioTranscription={}),(null==a?void 0:a.outputAudioTranscription)!=null&&(d.outputAudioTranscription={}),(null==a?void 0:a.providerOptions)==null)return d;let{google:f,...g}=a.providerOptions;Object.assign(d,g);let h=(0,b.isRecord)(f)?f:void 0;if((null==h?void 0:h.translationConfig)!=null){let a=(0,b.isRecord)(d.generationConfig)?d.generationConfig:e;d.generationConfig={...a,translationConfig:h.translationConfig}}return d}var bb=class{constructor(a,b){this.specificationVersion="v4",this.mapper=new a8,this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=null!=(b=this.config.fetch)?b:fetch,f=this.config.headers()["x-goog-api-key"];if(!f)throw Error("Google Generative AI API key is required for realtime token creation.");let g=Date.now(),h=(null!=(c=a.expiresAfterSeconds)?c:60)*1e3,i=new Date(g+h).toISOString(),j=new Date(g+h+18e5).toISOString(),k=ba(a.sessionConfig,this.modelId),l=await e(`${((d=a6(this.config.baseURL)).pathname=`${d.pathname.replace(/\/$/,"")}/v1alpha/auth_tokens`,d.toString())}?key=${encodeURIComponent(f)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uses:0,expireTime:j,newSessionExpireTime:i,bidiGenerateContentSetup:k})});if(!l.ok){let a=await l.text();throw Error(`Google realtime auth token request failed: ${l.status} ${a}`)}let m=await l.json();return{token:m.name,url:a7(this.config.baseURL,"google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContentConstrained").toString(),expiresAt:m.expireTime?Math.floor(new Date(m.expireTime).getTime()/1e3):void 0}}getWebSocketConfig(a){return{url:`${a.url}?access_token=${encodeURIComponent(a.token)}`}}parseServerEvent(a){return this.mapper.parseServerEvent(a)}serializeClientEvent(a){return this.mapper.serializeClientEvent(a,this.modelId)}buildSessionConfig(a){return ba(a,this.modelId)}},bc=e.z.object({languageCodes:e.z.array(e.z.string()).optional(),customVocabulary:e.z.array(e.z.string()).optional(),wordTimestamp:e.z.boolean().optional(),diarization:e.z.boolean().optional(),mode:e.z.enum(["SMART","VERBATIM"]).optional()});function bd(a){return a.includes("-live")}var be=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async parseOptions(a){return(0,b.parseProviderOptions)({provider:"google",providerOptions:a,schema:bc})}async doGenerate(a){var d,e,f,h,i,j;if(bd(this.modelId))throw new c.InvalidArgumentError({argument:"modelId",message:`Model '${this.modelId}' only supports streaming transcription. Use experimental_streamTranscribe, or a unary model such as 'gemini-3.5-transcribe'.`});let k=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,l=function(a){var b;if(null==a)return;let c={};return null!=a.languageCodes&&(c.language_codes=a.languageCodes),null!=a.customVocabulary&&(c.custom_vocabulary=a.customVocabulary),(null!=a.mode||!0===a.diarization||!0===a.wordTimestamp)&&(c.mode={type:(null!=(b=a.mode)?b:"VERBATIM").toLowerCase(),...!0===a.diarization?{diarization_mode:"speaker"}:{},...!0===a.wordTimestamp?{timestamp_granularities:["word"]}:{}}),Object.keys(c).length>0?c:void 0}(await this.parseOptions(a.providerOptions)),m={model:this.modelId,input:[{type:"audio",data:(0,b.convertToBase64)(a.audio),mime_type:a.mediaType}],...null!=l?{generation_config:{transcription_config:l}}:{}},{value:n,responseHeaders:o,rawValue:p}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/interactions`,headers:(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers),body:m,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(bh),abortSignal:a.abortSignal,fetch:this.config.fetch}),q="",r=[];for(let a of null!=(h=n.steps)?h:[])for(let b of null!=(i=a.content)?i:[])if("text"===b.type&&null!=b.text)for(let a of(q+=b.text,null!=(j=b.annotations)?j:[])){if("word_info"!==a.type)continue;let b=bf(a.start_offset),c=bf(a.end_offset);null!=a.text&&null!=b&&null!=c&&r.push({text:a.text,startSecond:b,endSecond:c})}return{text:q,segments:r,language:void 0,durationInSeconds:void 0,warnings:[],response:{timestamp:k,modelId:this.modelId,headers:o,body:p},...null!=n.usage?{providerMetadata:{google:{usage:n.usage}}}:{}}}async doStream(a){let d,e;if(!bd(this.modelId))throw new c.InvalidArgumentError({argument:"modelId",message:`Model '${this.modelId}' does not support streaming transcription. Use a live model such as 'gemini-3.5-transcribe-live'.`});let f=null!=(j=null==(i=null==(h=this.config._internal)?void 0:h.currentDate)?void 0:i.call(h))?j:new Date,g=await this.parseOptions(a.providerOptions);var h,i,j,k,l,n,o,p,q,r=a.inputAudioFormat;if("audio/pcm"!==r.type||null!=r.rate&&16e3!==r.rate)throw new c.InvalidArgumentError({argument:"inputAudioFormat",message:"The Gemini Live transcription API only supports 16kHz 16-bit PCM input audio."});let s=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers);for(let[a,b]of Object.entries(s))"x-goog-api-key"===a.toLowerCase()&&null!=b&&(d=b);if(null==d)throw Error("Google Generative AI API key is required for streaming transcription.");let t=Object.fromEntries(Object.entries(s).filter(([a])=>"x-goog-api-key"!==a.toLowerCase())),u={model:m(this.modelId),inputAudioTranscription:null!=(k=function(a){if(null==a)return;let b={};return null!=a.languageCodes&&(b.languageCodes=a.languageCodes),null!=a.customVocabulary&&(b.customVocabulary=a.customVocabulary),null!=a.wordTimestamp&&(b.wordTimestamp=a.wordTimestamp),null!=a.diarization&&(b.diarization=a.diarization),null!=a.mode&&(b.mode=a.mode),Object.keys(b).length>0?b:void 0}(g))?k:{}};return{request:{body:u},response:{timestamp:f,modelId:this.modelId},stream:function({webSocket:a,url:c,headers:d,setup:e,inputAudioRate:f,finishGraceMs:g,warnings:h,audio:i,abortSignal:j,includeRawChunks:k}){let l=!1,m=()=>{};return new ReadableStream({start:n=>{let o,p,q,r,s,t,u=new Promise(a=>{q=a}),v=0,w="",x="",y="",z=!1,A=()=>`google-segment-${v}`,B=()=>{null!=t&&(clearTimeout(t),t=void 0)},C=()=>{!l&&z&&(B(),t=setTimeout(()=>{t=void 0,F()},g))};m=a=>{B(),null!=o?o.cancel().catch(()=>{}):i.cancel().catch(()=>{}),null==p||p.close(a)};let D=a=>{l||(l=!0,m(),n.error(a))},E=()=>{if(""===w){if(""===y)return;w=y}y="",n.enqueue({type:"transcript-final",id:A(),text:w}),x+=""===x?w:` ${w}`,w="",v++},F=()=>{l||(E(),l=!0,n.enqueue({type:"finish",text:x,segments:[],language:r,durationInSeconds:void 0,...null!=s?{providerMetadata:{google:{usageMetadata:s}}}:{}}),n.close(),m(1e3))},G=async a=>{o=i.getReader();try{for(;;){let{done:c,value:d}=await o.read();if(c||l)break;a.send(JSON.stringify({realtimeInput:{audio:{data:(0,b.convertToBase64)(d),mimeType:`audio/pcm;rate=${f}`}}})),await (0,b.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}l||(a.send(JSON.stringify({realtimeInput:{audioStreamEnd:!0}})),z=!0,C())};p=(0,b.connectToWebSocket)({url:c,headers:d,webSocket:a,abortSignal:j,onAbort:D,onProcessingError:D,onOpen:a=>{n.enqueue({type:"stream-start",warnings:h}),a.send(JSON.stringify({setup:e})),u.then(()=>l?void 0:G(a)).catch(D)},onMessageText:async a=>{var c,d;if(l)return;let e=await (0,b.safeParseJSON)({text:a});if(!e.success)return;let f=e.value;if(k&&n.enqueue({type:"raw",rawValue:f}),null!=f.setupComplete&&q(),null!=f.usageMetadata&&(s=f.usageMetadata),null!=f.error)return void D(Error(null!=(c=f.error.message)?c:"Google Live API error"));let g=f.serverContent,h=null==g?void 0:g.interimInputTranscription;(null==h?void 0:h.text)&&(C(),y=h.text,n.enqueue({type:"transcript-partial",id:A(),text:h.text}));let i=null!=(d=null==g?void 0:g.inputTranscription)?d:f.inputTranscription;null!=i&&(null!=i.languageCode&&(r=i.languageCode),i.text&&(C(),y="",w+=i.text,n.enqueue({type:"transcript-delta",id:A(),delta:i.text})),!0===i.finished&&E()),(null==g?void 0:g.turnComplete)&&E();let j=null==g?void 0:g.interactionStatus;z&&("IDLE"===j||"REQUIRES_ACTION"===j||(null==g?void 0:g.turnComplete)===!0&&null==j)&&F()},onSocketError:()=>{D(Error("Google Live transcription error"))},onClose:({code:a,reason:b})=>{if(!l){if(z)return void F();D(Error(`Google Live transcription WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}}})},cancel:()=>{l||(l=!0,m())}})}({webSocket:this.config.webSocket,url:(p=this.config.baseURL,q=d,(e=a7(p,"google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent")).searchParams.set("key",q),e),headers:t,setup:u,inputAudioRate:null!=(l=a.inputAudioFormat.rate)?l:16e3,finishGraceMs:null!=(o=null==(n=this.config._internal)?void 0:n.finishGraceMs)?o:3e3,warnings:[],audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}};function bf(a){if(null==a)return;let b=Number.parseFloat(a);return Number.isFinite(b)?b:void 0}var bg=e.z.object({type:e.z.string().nullish(),text:e.z.string().nullish(),speaker:e.z.string().nullish(),start_offset:e.z.string().nullish(),end_offset:e.z.string().nullish()}),bh=e.z.object({status:e.z.string().nullish(),steps:e.z.array(e.z.object({type:e.z.string().nullish(),content:e.z.array(e.z.object({type:e.z.string().nullish(),text:e.z.string().nullish(),annotations:e.z.array(bg).nullish()})).nullish()})).nullish(),usage:e.z.record(e.z.string(),e.z.unknown()).nullish()}),bi=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({echoTargetLanguage:e.z.boolean().optional()}))),bj=class a{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doStream(a){var d,e,f,g,h,i,j,k;let l,n;if(null==a.targetLanguage)throw new c.InvalidArgumentError({argument:"targetLanguage",message:`targetLanguage is required for translation model '${this.modelId}'.`});let o=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,p=await (0,b.parseProviderOptions)({provider:"google",providerOptions:a.providerOptions,schema:bi}),q=[];(function(a){if("audio/pcm"!==a.type||null!=a.rate&&16e3!==a.rate)throw new c.InvalidArgumentError({argument:"inputAudioFormat",message:"The Gemini Live translation API only supports 16kHz 16-bit PCM input audio."})})(a.inputAudioFormat),null!=a.sourceLanguage&&q.push({type:"unsupported",feature:"sourceLanguage",details:"The Gemini Live translation API auto-detects the source language and does not accept a source language."}),null!=a.outputAudioFormat&&q.push({type:"unsupported",feature:"outputAudioFormat",details:"The Gemini Live API always outputs 24kHz 16-bit PCM audio and does not accept an output audio format."});let r=(0,b.combineHeaders)(this.config.headers(),a.headers);for(let[a,b]of Object.entries(r))"x-goog-api-key"===a.toLowerCase()&&null!=b&&(l=b);if(null==l)throw Error("Google Generative AI API key is required for streaming translation.");let s=Object.fromEntries(Object.entries(r).filter(([a])=>"x-goog-api-key"!==a.toLowerCase())),t=function({modelId:a,targetLanguage:b,providerOptions:c}){return{model:m(a),generationConfig:{responseModalities:["AUDIO"],translationConfig:{targetLanguageCode:b,...(null==c?void 0:c.echoTargetLanguage)!=null?{echoTargetLanguage:c.echoTargetLanguage}:{}}},inputAudioTranscription:{},outputAudioTranscription:{}}}({modelId:this.modelId,targetLanguage:a.targetLanguage,providerOptions:p});return{request:{body:t},response:{timestamp:o,modelId:this.modelId},stream:function({webSocket:a,url:c,headers:d,setup:e,inputAudioRate:f,finishGraceMs:g,warnings:h,audio:i,abortSignal:j,includeRawChunks:k}){let l=!1,m=()=>{};return new ReadableStream({start:n=>{let o,p,q,r,s,t=new Promise(a=>{q=a}),u=0,v="",w="",x="",y="",z=!1,A=!1,B=!1,C=0,D=()=>`google-item-${u}`,E=()=>{null!=s&&(clearTimeout(s),s=void 0)},F=()=>{l||null!=s||(s=setTimeout(()=>{s=void 0,I()},g))},G=()=>{A=!0,C=0,E()};m=a=>{E(),null!=o?o.cancel().catch(()=>{}):i.cancel().catch(()=>{}),null==p||p.close(a)};let H=a=>{l||(l=!0,m(),n.error(a))},I=()=>{l||((""!==w||""!==y)&&J(),l=!0,n.enqueue({type:"finish",sourceText:v,outputText:x,usage:r}),n.close(),m(1e3))},J=()=>{""!==w&&(n.enqueue({type:"source-transcript-final",id:D(),text:w}),v+=w,w=""),""!==y&&(n.enqueue({type:"output-text-final",id:D(),text:y}),x+=y,y=""),u++},K=async a=>{o=i.getReader();try{for(;;){let{done:c,value:d}=await o.read();if(c||l)break;a.send(JSON.stringify({realtimeInput:{audio:{data:(0,b.convertToBase64)(d),mimeType:`audio/pcm;rate=${f}`}}})),await (0,b.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}l||(a.send(JSON.stringify({realtimeInput:{audioStreamEnd:!0}})),z=!0,B&&!A&&F())};p=(0,b.connectToWebSocket)({url:c,headers:d,webSocket:a,abortSignal:j,onAbort:H,onProcessingError:H,onOpen:a=>{n.enqueue({type:"stream-start",warnings:h}),a.send(JSON.stringify({setup:e})),t.then(()=>l?void 0:K(a)).catch(H)},onMessageText:async a=>{var c,d,e,f,h,i,j,m,o;if(l)return;let p=await (0,b.safeParseJSON)({text:a});if(!p.success)return;let s=p.value;if(k&&n.enqueue({type:"raw",rawValue:s}),null!=s.setupComplete&&q(),null!=s.usageMetadata&&(r=function(a,b){var c,d;let e=null==a?void 0:a.inputAudioTokens,f=null==a?void 0:a.outputAudioTokens;for(let a of null!=(c=b.promptTokensDetails)?c:[])"AUDIO"===a.modality&&null!=a.tokenCount&&(e=(null!=e?e:0)+a.tokenCount);for(let a of null!=(d=b.responseTokensDetails)?d:[])"AUDIO"===a.modality&&null!=a.tokenCount&&(f=(null!=f?f:0)+a.tokenCount);return null==e&&null==f?a:{...a,...null!=e?{inputAudioTokens:e}:{},...null!=f?{outputAudioTokens:f}:{}}}(r,s.usageMetadata)),null!=s.error)return void H(Error(null!=(c=s.error.message)?c:"Google Live API error"));let t=null!=(h=null==(e=null==(d=s.serverContent)?void 0:d.inputTranscription)?void 0:e.text)?h:null==(f=s.inputTranscription)?void 0:f.text;t&&(G(),w+=t,n.enqueue({type:"source-transcript-delta",id:D(),delta:t}));let u=s.serverContent;if(null!=u){for(let a of null!=(j=null==(i=u.modelTurn)?void 0:i.parts)?j:[])if(null==(m=a.inlineData)?void 0:m.data){n.enqueue({type:"audio",id:D(),audio:a.inlineData.data});let c=function(a){let c;try{c=(0,b.convertBase64ToUint8Array)(a)}catch(a){return}if(c.byteLength<2)return;let d=new DataView(c.buffer,c.byteOffset,c.byteLength),e=Math.floor(c.byteLength/2);for(let a=0;a<e;a++)if(Math.abs(d.getInt16(2*a,!0))>128)return;return e/24e3*1e3}(a.inlineData.data);if(z&&null!=c){if((C+=c)>=g)return void I()}else G()}(null==(o=u.outputTranscription)?void 0:o.text)&&(G(),y+=u.outputTranscription.text,n.enqueue({type:"output-text-delta",id:D(),delta:u.outputTranscription.text})),u.turnComplete&&(J(),A=!1,B=!0,z&&F())}},onSocketError:()=>{H(Error("Google Live translation error"))},onClose:({code:a,reason:b})=>{if(!l){if(null!=s)return void I();H(Error(`Google Live translation WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}}})},cancel:()=>{l||(l=!0,m())}})}({webSocket:this.config.webSocket,url:(j=this.config.baseURL,k=l,(n=a7(j,"google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent")).searchParams.set("key",k),n),headers:s,setup:t,inputAudioRate:null!=(g=a.inputAudioFormat.rate)?g:16e3,finishGraceMs:null!=(i=null==(h=this.config._internal)?void 0:h.finishGraceMs)?i:1e3,warnings:q,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bk=/^https:\/\/generativelanguage\.googleapis\.com\/v1beta\/files\/.*$/,bl=["text/html","text/css","text/plain","text/xml","text/csv","text/rtf","text/javascript","application/json","application/pdf","image/bmp","image/jpeg","image/png","image/webp","video/mp4","video/mpeg","video/quicktime","video/avi","video/x-flv","video/mpg","video/webm","video/wmv","video/3gpp"],bm=/^https:\/\/.*$/;function bn(a={}){var c,d;let e=null!=(c=(0,b.withoutTrailingSlash)(a.baseURL))?c:"https://generativelanguage.googleapis.com/v1beta",f=null!=(d=a.name)?d:"google.generative-ai",g=()=>(0,b.withUserAgentSuffix)({"x-goog-api-key":(0,b.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"GOOGLE_GENERATIVE_AI_API_KEY",description:"Google Generative AI"}),...a.headers},"ai-sdk/google/4.0.64"),h=c=>{var d;return new Z(c,{provider:f,baseURL:e,headers:g,generateId:null!=(d=a.generateId)?d:b.generateId,supportedUrls:()=>({"*":[bk,RegExp(`^${e}/files/.*$`),RegExp("^https://(?:www\\.)?youtube\\.com/watch\\?v=[\\w-]+(?:&[\\w=&.-]*)?$"),RegExp("^https://youtu\\.be/[\\w-]+(?:\\?[\\w=&.-]*)?$")],.../(^|\/)gemini-/.test(c)&&!/(^|\/)gemini-2\.0/.test(c)?Object.fromEntries(bl.map(a=>[a,[bm]])):{}}),fetch:a.fetch})},i=b=>new j(b,{provider:f,baseURL:e,headers:g,fetch:a.fetch}),k=(b,c={})=>new ak(b,c,{provider:f,baseURL:e,headers:g,fetch:a.fetch}),l=c=>{var d;return new ar(c,{provider:f,baseURL:e,headers:g,fetch:a.fetch,generateId:null!=(d=a.generateId)?d:b.generateId})},m=b=>new bb(b,{provider:`${f}.realtime`,baseURL:e,headers:g,fetch:a.fetch}),n=b=>new bj(b,{provider:`${f}.speech-translation`,baseURL:e,headers:g,webSocket:a.webSocket}),o=b=>new ay(b,{provider:`${f}.speech`,baseURL:e,headers:g,fetch:a.fetch}),p=b=>new be(b,{provider:`${f}.transcription`,baseURL:e,headers:g,fetch:a.fetch,webSocket:a.webSocket}),q=Object.assign(a=>m(a),{getToken:async a=>{let b=m(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),r=function(a){if(new.target)throw Error("The Google Generative AI model function cannot be called with the new keyword.");return h(a)};return r.specificationVersion="v4",r.languageModel=h,r.chat=h,r.generativeAI=h,r.embedding=i,r.embeddingModel=i,r.textEmbedding=i,r.textEmbeddingModel=i,r.image=k,r.imageModel=k,r.video=l,r.videoModel=l,r.experimental_realtime=q,r.files=()=>new am({provider:f,baseURL:e,headers:g,fetch:a.fetch}),r.speech=o,r.speechModel=o,r.transcription=p,r.transcriptionModel=p,r.translation=n,r.speechTranslationModel=n,r.interactions=c=>{var d;return new a4(c,{provider:`${f}.interactions`,baseURL:e,headers:g,generateId:null!=(d=a.generateId)?d:b.generateId,fetch:a.fetch})},r.tools=ai,r}bn(),a.s(["createGoogleGenerativeAI",0,bn])},345364,a=>{"use strict";var b,c=a.i(527990),d=a.i(912735),e=a.i(53112),f=a.i(652685),g=e.z.object({error:e.z.object({message:e.z.string(),type:e.z.string().nullish(),param:e.z.any().nullish(),code:e.z.union([e.z.string(),e.z.number()]).nullish()})}),h=(0,c.createJsonErrorResponseHandler)({errorSchema:g,errorToMessage:a=>a.error.message});function i(a){var b,c,d,e,f,g;let h,i=(g=a,null==(h=/^o(\d+)(?:-|$)/.exec(g))?void 0:Number(h[1])),j=function(a){let b=/^gpt-(\d+)(?:\.(\d+))?(?:-(.+))?$/.exec(a);if(null!=b)return{major:Number(b[1]),minor:null==b[2]?void 0:Number(b[2]),variant:b[3]}}(a),k=(null==j?void 0:j.minor)==null&&null!=(c=null==(b=null==j?void 0:j.variant)?void 0:b.startsWith("chat"))&&c,l=null!=(e=null==(d=null==j?void 0:j.variant)?void 0:d.startsWith("nano"))&&e,m=null!=j&&j.major>=6,n=null!=i&&i>=3||null!=j&&j.major>=5&&!k,o=a.startsWith("gpt-4")||null!=j&&j.major>=5&&!l&&!k||null!=i&&i>=3,p=null!=i||null!=j&&j.major>=5&&!k,q=!m&&null!=j&&(j.major>5||5===j.major&&(null!=(f=j.minor)?f:0)>=1);return{supportsFlexProcessing:n,supportsPriorityProcessing:o,supportsConfigurationUpdate:m,supportedReasoningEfforts:m?["low","medium","high","xhigh","max"]:void 0,isReasoningModel:p,systemMessageMode:p?"developer":"system",supportsNonReasoningParameters:q}}function j(a){var b,d;let e=function(a){var b;let c=n(a);if(null==c)return;if("response.failed"===c.type){let a=n(c.response),b=n(null==a?void 0:a.error);return"string"==typeof(null==b?void 0:b.message)?{message:b.message,code:o(b.code),type:"response.failed"}:void 0}let d=null!=(b=n(c.error))?b:c;return"string"==typeof d.message&&(null!=n(c.error)||"string"==typeof d.type||"code"in d||"param"in d)?{message:d.message,code:o(d.code),type:"string"==typeof d.type?d.type:void 0}:void 0}(a);if(null==e)return;let f=function(a){var b,c;let d,e="number"==typeof(d="string"==typeof(b=a.code)&&/^\d{3}$/.test(b)?Number(b):b)&&Number.isInteger(c=d)&&c>=400&&c<=599?d:void 0;if(null!=e)return e;let f=[a.code,a.type].filter(a=>"string"==typeof a||"number"==typeof a).join(" ").toLowerCase();return["insufficient_quota","rate_limit"].some(a=>f.includes(a))?429:f.includes("authentication")?401:f.includes("permission")?403:f.includes("not_found")?404:["invalid","bad_request","context_length"].some(a=>f.includes(a))?400:f.includes("overload")?503:f.includes("timeout")?504:500}(e);return(0,c.createProviderStreamError)({message:e.message,type:null!=(b=e.type)?b:void 0,code:null!=(d=e.code)?d:void 0,statusCode:f,isRetryable:function(a,b){return"insufficient_quota"!==a.code&&"insufficient_quota"!==a.type&&(408===b||409===b||429===b||b>=500)}(e,f),data:a})}async function k({stream:a,getError:b,isOutputChunk:c,isAcceptedChunk:d,acceptedGraceMs:e=50,url:g,requestBodyValues:h,responseHeaders:i}){let[n,o]=a.tee(),p=n.getReader(),q=!1;try{let a=!1;for(;;){let k;if(a){let a=await m(p.read(),e);if(a.timedOut)return o;k=a.value}else k=await p.read();if(k.done)return o;let n=k.value;if(!n.success)return o;let r=b(n.value);if(null!=r)throw q=!0,l(p).catch(()=>{}),l(o.getReader()).catch(()=>{}),function({frame:a,url:b,requestBodyValues:c,responseHeaders:d}){var e,g;let h=j(a);return new f.APICallError({message:null!=(e=null==h?void 0:h.message)?e:"OpenAI stream failed before any output was generated",url:b,requestBodyValues:c,statusCode:null!=(g=null==h?void 0:h.statusCode)?g:500,responseHeaders:d,responseBody:JSON.stringify(a),data:a,isRetryable:null==h?void 0:h.isRetryable})}({frame:r,url:g,requestBodyValues:h,responseHeaders:i});if(c(n.value))return o;a||(null==d?void 0:d(n.value))!==!0||(a=!0)}}finally{q||(p.cancel().catch(()=>{}),p.releaseLock())}}async function l(a){try{for(;!(await a.read()).done;);}catch(a){}finally{a.releaseLock()}}async function m(a,b){let c,d=a.then(a=>({timedOut:!1,value:a}));try{let a=await Promise.race([d,new Promise(a=>{c=setTimeout(()=>a({timedOut:!0}),b)})]);return a.timedOut&&d.catch(()=>{}),a}finally{clearTimeout(c)}}function n(a){return"object"==typeof a&&null!=a?a:void 0}function o(a){return"string"==typeof a||"number"==typeof a?a:void 0}function p(a){var b,d,e,f,g,h,i,j;if(null==a)return(0,c.createNullLanguageModelUsage)();let k=null!=(b=a.prompt_tokens)?b:0,l=null!=(d=a.completion_tokens)?d:0,m=null!=(f=null==(e=a.prompt_tokens_details)?void 0:e.cached_tokens)?f:0,n=null!=(h=null==(g=a.prompt_tokens_details)?void 0:g.cache_write_tokens)?h:void 0,o=null!=(j=null==(i=a.completion_tokens_details)?void 0:i.reasoning_tokens)?j:0;return{inputTokens:{total:k,noCache:k-m-(null!=n?n:0),cacheRead:m,cacheWrite:n},outputTokens:{total:l,text:Math.max(0,l-o),reasoning:o},raw:a}}function q(a){var b;return null==(b=null==a?void 0:a.openai)?void 0:b.promptCacheBreakpoint}function r({id:a,model:b,created:d}){return(0,c.createLanguageModelResponseMetadata)({id:a,model:b,created:d||void 0})}function s(a){switch(a){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}var t=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({message:e.z.object({role:e.z.literal("assistant").nullish(),content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string().nullish(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish(),annotations:e.z.array(e.z.object({type:e.z.literal("url_citation"),url_citation:e.z.object({start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()})})).nullish()}),index:e.z.number(),logprobs:e.z.object({content:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish()}).nullish(),finish_reason:e.z.string().nullish()})),usage:e.z.object({prompt_tokens:e.z.number().nullish(),completion_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),prompt_tokens_details:e.z.object({cached_tokens:e.z.number().nullish(),cache_write_tokens:e.z.number().nullish()}).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).nullish()}).nullish()}))),u=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.union([e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({delta:e.z.object({role:e.z.enum(["assistant"]).nullish(),content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({index:e.z.number(),id:e.z.string().nullish(),type:e.z.literal("function").nullish(),function:e.z.object({name:e.z.string().nullish(),arguments:e.z.string().nullish()})})).nullish(),annotations:e.z.array(e.z.object({type:e.z.literal("url_citation"),url_citation:e.z.object({start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()})})).nullish()}).nullish(),logprobs:e.z.object({content:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish()}).nullish(),finish_reason:e.z.string().nullish(),index:e.z.number()})),usage:e.z.object({prompt_tokens:e.z.number().nullish(),completion_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),prompt_tokens_details:e.z.object({cached_tokens:e.z.number().nullish(),cache_write_tokens:e.z.number().nullish()}).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).nullish()}).nullish()}),g]))),v=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({logitBias:e.z.record(e.z.coerce.number(),e.z.number()).optional(),logprobs:e.z.union([e.z.boolean(),e.z.number()]).optional(),parallelToolCalls:e.z.boolean().optional(),user:e.z.string().optional(),reasoningEffort:e.z.enum(["none","minimal","low","medium","high","xhigh","max"]).optional(),maxCompletionTokens:e.z.number().optional(),store:e.z.boolean().optional(),metadata:e.z.record(e.z.string().max(64),e.z.string().max(512)).optional(),prediction:e.z.record(e.z.string(),e.z.any()).optional(),serviceTier:e.z.enum(["auto","flex","priority","fast","ultrafast","default"]).optional(),strictJsonSchema:e.z.boolean().optional(),textVerbosity:e.z.enum(["low","medium","high"]).optional(),promptCacheKey:e.z.string().optional(),promptCacheOptions:e.z.object({mode:e.z.enum(["implicit","explicit"]).optional(),ttl:e.z.literal("30m").optional()}).optional(),promptCacheRetention:e.z.enum(["in_memory","24h"]).optional(),safetyIdentifier:e.z.string().optional(),systemMessageMode:e.z.enum(["system","developer","remove"]).optional(),forceReasoning:e.z.boolean().optional()}))),w=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:g,frequencyPenalty:h,presencePenalty:j,stopSequences:k,responseFormat:l,seed:m,tools:n,toolChoice:o,reasoning:p,providerOptions:r}){var s,t,u,w,x,y;let z=[],A=null!=(s=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:r,schema:v}))?s:{},B=i(this.modelId),C=null!=(t=A.reasoningEffort)?t:(0,c.isCustomReasoning)(p)?p:void 0;null==C||null==B.supportedReasoningEfforts||B.supportedReasoningEfforts.includes(C)||(z.push({type:"unsupported",feature:"reasoningEffort",details:`${this.modelId} only supports the following reasoning efforts: ${B.supportedReasoningEfforts.join(", ")}`}),C=void 0);let D=null!=(u=A.forceReasoning)?u:B.isReasoningModel;null!=g&&z.push({type:"unsupported",feature:"topK"});let{messages:E,warnings:F}=function({prompt:a,systemMessageMode:b="system"}){var d,e,g;let h=[],i=[];for(let{role:j,content:k,providerOptions:l}of a)switch(j){case"system":switch(b){case"system":{let a=q(l);h.push({role:"system",content:null==a?k:[{type:"text",text:k,prompt_cache_breakpoint:a}]});break}case"developer":{let a=q(l);h.push({role:"developer",content:null==a?k:[{type:"text",text:k,prompt_cache_breakpoint:a}]});break}case"remove":i.push({type:"other",message:"system messages are removed for this model"});break;default:throw Error(`Unsupported system message mode: ${b}`)}break;case"user":if(1===k.length&&"text"===k[0].type&&null==q(k[0].providerOptions)){h.push({role:"user",content:k[0].text});break}h.push({role:"user",content:k.map((a,b)=>{var d,e,g;switch(a.type){case"text":{let b=q(a.providerOptions);return{type:"text",text:a.text,...null!=b&&{prompt_cache_breakpoint:b}}}case"file":{let h=q(a.providerOptions);switch(a.data.type){case"reference":return{type:"file",file:{file_id:(0,c.resolveProviderReference)({reference:a.data.reference,provider:"openai"})},...null!=h&&{prompt_cache_breakpoint:h}};case"text":throw new f.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":{let i=(0,c.getTopLevelMediaType)(a.mediaType);if("image"===i)return{type:"image_url",image_url:{url:"url"===a.data.type?a.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:a})};base64,${(0,c.convertToBase64)(a.data.data)}`,detail:null==(e=null==(d=a.providerOptions)?void 0:d.openai)?void 0:e.imageDetail},...null!=h&&{prompt_cache_breakpoint:h}};if("audio"===i){if("url"===a.data.type)throw new f.UnsupportedFunctionalityError({functionality:"audio file parts with URLs"});let b=(0,c.resolveFullMediaType)({part:a});switch(b){case"audio/wav":return{type:"input_audio",input_audio:{data:(0,c.convertToBase64)(a.data.data),format:"wav"},...null!=h&&{prompt_cache_breakpoint:h}};case"audio/mp3":case"audio/mpeg":return{type:"input_audio",input_audio:{data:(0,c.convertToBase64)(a.data.data),format:"mp3"},...null!=h&&{prompt_cache_breakpoint:h}};default:throw new f.UnsupportedFunctionalityError({functionality:`audio content parts with media type ${b}`})}}{let d=(0,c.resolveFullMediaType)({part:a});if("application/pdf"!==d)throw new f.UnsupportedFunctionalityError({functionality:`file part media type ${d}`});if("url"===a.data.type)throw new f.UnsupportedFunctionalityError({functionality:"PDF file parts with URLs"});return{type:"file",file:{filename:null!=(g=a.filename)?g:`part-${b}.pdf`,file_data:`data:application/pdf;base64,${(0,c.convertToBase64)(a.data.data)}`},...null!=h&&{prompt_cache_breakpoint:h}}}}}}}})});break;case"assistant":{let a="",b=[],c=!1,d=[];for(let e of k)switch(e.type){case"text":{let d=q(e.providerOptions);a+=e.text,b.push({type:"text",text:e.text,...null!=d&&{prompt_cache_breakpoint:d}}),c||(c=null!=d);break}case"tool-call":d.push({id:e.toolCallId,type:"function",function:{name:e.toolName,arguments:JSON.stringify("object"!=typeof(g=e.input)||null===g||Array.isArray(g)?{}:g)}})}h.push({role:"assistant",content:c?b:d.length>0?a||null:a,tool_calls:d.length>0?d:void 0});break}case"tool":for(let a of k){let b;if("tool-approval-response"===a.type)continue;let c=a.output,f=null!=(d="content"===c.type?c.value.map(a=>q(a.providerOptions)).find(a=>null!=a):q(c.providerOptions))?d:q(a.providerOptions);switch(c.type){case"text":case"error-text":b=c.value;break;case"execution-denied":b=null!=(e=c.reason)?e:"Tool call execution denied.";break;case"content":case"json":case"error-json":b=JSON.stringify(c.value)}h.push({role:"tool",tool_call_id:a.toolCallId,content:null==f?b:[{type:"text",text:b,prompt_cache_breakpoint:f}]})}break;default:throw Error(`Unsupported role: ${j}`)}return{messages:h,warnings:i}}({prompt:a,systemMessageMode:null!=(w=A.systemMessageMode)?w:D?"developer":B.systemMessageMode});z.push(...F);let G=null==(x=A.strictJsonSchema)||x,H={model:this.modelId,logit_bias:A.logitBias,logprobs:!0===A.logprobs||"number"==typeof A.logprobs||void 0,top_logprobs:"number"==typeof A.logprobs?A.logprobs:"boolean"==typeof A.logprobs&&A.logprobs?0:void 0,user:A.user,parallel_tool_calls:A.parallelToolCalls,max_tokens:b,temperature:d,top_p:e,frequency_penalty:h,presence_penalty:j,response_format:(null==l?void 0:l.type)==="json"?null!=l.schema?{type:"json_schema",json_schema:{schema:l.schema,strict:G,name:null!=(y=l.name)?y:"response",description:l.description}}:{type:"json_object"}:void 0,stop:k,seed:m,verbosity:A.textVerbosity,max_completion_tokens:A.maxCompletionTokens,store:A.store,metadata:A.metadata,prediction:A.prediction,reasoning_effort:C,service_tier:A.serviceTier,prompt_cache_key:A.promptCacheKey,prompt_cache_options:A.promptCacheOptions,prompt_cache_retention:A.promptCacheRetention,safety_identifier:A.safetyIdentifier,messages:E};null!=B.supportedReasoningEfforts&&null!=H.prompt_cache_retention&&(H.prompt_cache_retention=void 0,z.push({type:"unsupported",feature:"promptCacheRetention",details:"promptCacheRetention is not supported by GPT-6 and later models; use promptCacheOptions instead"})),D?("none"===C&&B.supportsNonReasoningParameters||(null!=H.temperature&&(H.temperature=void 0,z.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"})),null!=H.top_p&&(H.top_p=void 0,z.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})),null!=H.logprobs&&(H.logprobs=void 0,z.push({type:"other",message:"logprobs is not supported for reasoning models"}))),null!=H.frequency_penalty&&(H.frequency_penalty=void 0,z.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"})),null!=H.presence_penalty&&(H.presence_penalty=void 0,z.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"})),null!=H.logit_bias&&(H.logit_bias=void 0,z.push({type:"other",message:"logitBias is not supported for reasoning models"})),null!=H.top_logprobs&&(H.top_logprobs=void 0,z.push({type:"other",message:"topLogprobs is not supported for reasoning models"})),null!=H.max_tokens&&(null==H.max_completion_tokens&&(H.max_completion_tokens=H.max_tokens),H.max_tokens=void 0)):(this.modelId.startsWith("gpt-4o-search-preview")||this.modelId.startsWith("gpt-4o-mini-search-preview"))&&null!=H.temperature&&(H.temperature=void 0,z.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})),"flex"!==A.serviceTier||B.supportsFlexProcessing||(z.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),H.service_tier=void 0),"priority"!==A.serviceTier&&"fast"!==A.serviceTier||B.supportsPriorityProcessing||(z.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),H.service_tier=void 0);let{tools:I,toolChoice:J,toolWarnings:K}=function({tools:a,toolChoice:b}){a=(null==a?void 0:a.length)?a:void 0;let c=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:c};let d=[];for(let b of a)"function"===b.type?d.push({type:"function",function:{name:b.name,description:b.description,parameters:b.inputSchema,...null!=b.strict?{strict:b.strict}:{}}}):c.push({type:"unsupported",feature:`tool type: ${b.type}`});if(null==b)return{tools:d,toolChoice:void 0,toolWarnings:c};let e=b.type;switch(e){case"auto":case"none":case"required":return{tools:d,toolChoice:e,toolWarnings:c};case"tool":return{tools:d,toolChoice:{type:"function",function:{name:b.toolName}},toolWarnings:c};default:throw new f.UnsupportedFunctionalityError({functionality:`tool choice type: ${e}`})}}({tools:n,toolChoice:o});return{args:{...H,tools:I,tool_choice:J},warnings:[...z,...K]}}async doGenerate(a){var b,d,e,f,g,i,j;let{args:k,warnings:l}=await this.getArgs(a),{responseHeaders:m,value:n,rawValue:o}=await (0,c.postJsonToApi)({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:k,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(t),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=n.choices[0],u=[],v=q.message.content;for(let a of(null!=v&&v.length>0&&u.push({type:"text",text:v}),null!=(e=q.message.tool_calls)?e:[]))u.push({type:"tool-call",toolCallId:a.id||(0,c.generateId)(),toolName:a.function.name,input:a.function.arguments});for(let a of null!=(f=q.message.annotations)?f:[])u.push({type:"source",sourceType:"url",id:(0,c.generateId)(),url:a.url_citation.url,title:a.url_citation.title});let w=null==(g=n.usage)?void 0:g.completion_tokens_details,x={openai:{}};return(null==w?void 0:w.accepted_prediction_tokens)!=null&&(x.openai.acceptedPredictionTokens=null==w?void 0:w.accepted_prediction_tokens),(null==w?void 0:w.rejected_prediction_tokens)!=null&&(x.openai.rejectedPredictionTokens=null==w?void 0:w.rejected_prediction_tokens),(null==(i=q.logprobs)?void 0:i.content)!=null&&(x.openai.logprobs=q.logprobs.content),{content:u,finishReason:{unified:s(q.finish_reason),raw:null!=(j=q.finish_reason)?j:void 0},usage:p(n.usage),request:{body:k},response:{...r(n),headers:m,body:o},warnings:l,providerMetadata:x}}async doStream(a){var b,d;let e,f,{args:g,warnings:i}=await this.getArgs(a),l={...g,stream:!0,stream_options:{include_usage:!0}},m=this.config.url({path:"/chat/completions",modelId:this.modelId}),{responseHeaders:n,value:o}=await (0,c.postJsonToApi)({url:m,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:l,failedResponseHandler:h,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(u),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=await k({stream:o,getError:a=>"error"in a?a.error:void 0,isOutputChunk:x,url:m,requestBodyValues:l,responseHeaders:n}),t={unified:"other",raw:void 0},v=!1,w=!1,y={openai:{}};return{stream:q.pipeThrough(new TransformStream({start(a){e=new c.StreamingToolCallTracker(a,{generateId:c.generateId,typeValidation:"if-present"}),a.enqueue({type:"stream-start",warnings:i})},transform(b,d){var g,h,i,k,l,m;if(a.includeRawChunks&&d.enqueue({type:"raw",rawValue:b.rawValue}),!b.success){t={unified:"error",raw:void 0},d.enqueue({type:"error",error:b.error});return}let n=b.value;if("error"in n){t={unified:"error",raw:void 0},d.enqueue({type:"error",error:null!=(g=j(n.error))?g:n.error});return}!v&&Object.values(r(n)).some(Boolean)&&(v=!0,d.enqueue({type:"response-metadata",...r(n)})),null!=n.usage&&(f=n.usage,(null==(h=n.usage.completion_tokens_details)?void 0:h.accepted_prediction_tokens)!=null&&(y.openai.acceptedPredictionTokens=null==(i=n.usage.completion_tokens_details)?void 0:i.accepted_prediction_tokens),(null==(k=n.usage.completion_tokens_details)?void 0:k.rejected_prediction_tokens)!=null&&(y.openai.rejectedPredictionTokens=null==(l=n.usage.completion_tokens_details)?void 0:l.rejected_prediction_tokens));let o=n.choices[0];if((null==o?void 0:o.finish_reason)!=null&&(t={unified:s(o.finish_reason),raw:o.finish_reason}),(null==(m=null==o?void 0:o.logprobs)?void 0:m.content)!=null&&(y.openai.logprobs=o.logprobs.content),(null==o?void 0:o.delta)==null)return;let p=o.delta;if(null!=p.content&&(w||(d.enqueue({type:"text-start",id:"0"}),w=!0),d.enqueue({type:"text-delta",id:"0",delta:p.content})),null!=p.tool_calls)for(let a of p.tool_calls)e.processDelta(a);if(null!=p.annotations)for(let a of p.annotations)d.enqueue({type:"source",sourceType:"url",id:(0,c.generateId)(),url:a.url_citation.url,title:a.url_citation.title})},flush(a){w&&a.enqueue({type:"text-end",id:"0"}),e.flush(),a.enqueue({type:"finish",finishReason:t,usage:p(f),...null!=y?{providerMetadata:y}:{}})}})),request:{body:l},response:{headers:n}}}};function x(a){return!("error"in a)&&a.choices.some(a=>{let b=a.delta;return(null==b?void 0:b.content)!=null&&b.content.length>0||(null==b?void 0:b.tool_calls)!=null&&b.tool_calls.length>0||(null==b?void 0:b.annotations)!=null&&b.annotations.length>0})}function y(a){var b,d,e,f;if(null==a)return(0,c.createNullLanguageModelUsage)();let g=null!=(b=a.prompt_tokens)?b:0,h=null!=(d=a.completion_tokens)?d:0;return{inputTokens:{total:null!=(e=a.prompt_tokens)?e:void 0,noCache:g,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:null!=(f=a.completion_tokens)?f:void 0,text:h,reasoning:void 0},raw:a}}function z(a){switch(a){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}var A=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({text:e.z.string(),finish_reason:e.z.string(),logprobs:e.z.object({tokens:e.z.array(e.z.string()),token_logprobs:e.z.array(e.z.number()),top_logprobs:e.z.array(e.z.record(e.z.string(),e.z.number())).nullish()}).nullish()})),usage:e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number()}).nullish()}))),B=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.union([e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({text:e.z.string(),finish_reason:e.z.string().nullish(),index:e.z.number(),logprobs:e.z.object({tokens:e.z.array(e.z.string()),token_logprobs:e.z.array(e.z.number()),top_logprobs:e.z.array(e.z.record(e.z.string(),e.z.number())).nullish()}).nullish()})),usage:e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number()}).nullish()}),g]))),C=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({echo:e.z.boolean().optional(),logitBias:e.z.record(e.z.string(),e.z.number()).optional(),suffix:e.z.string().optional(),user:e.z.string().optional(),logprobs:e.z.union([e.z.boolean(),e.z.number()]).optional()}))),D=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={},this.modelId=a,this.config=b}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:g,frequencyPenalty:h,presencePenalty:i,stopSequences:j,responseFormat:k,tools:l,toolChoice:m,seed:n,providerOptions:o}){let p=[],q={...await (0,c.parseProviderOptions)({provider:"openai",providerOptions:o,schema:C}),...await (0,c.parseProviderOptions)({provider:this.providerOptionsName,providerOptions:o,schema:C})};null!=g&&p.push({type:"unsupported",feature:"topK"}),(null==l?void 0:l.length)&&p.push({type:"unsupported",feature:"tools"}),null!=m&&p.push({type:"unsupported",feature:"toolChoice"}),null!=k&&"text"!==k.type&&p.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:r,stopSequences:s}=function({prompt:a,user:b="user",assistant:c="assistant"}){let d="";for(let{role:e,content:g}of("system"===a[0].role&&(d+=`${a[0].content}
|
|
169
|
+
${c.text}`};b[b.length-1]=d;continue}b.push(c)}return b}(b);c.length>0&&s.push({type:"user_input",content:c});break}case"assistant":{let c=[],d=()=>{c.length>0&&(s.push({type:"model_output",content:c}),c=[])};for(let l of a.content)if("text"===l.type)c.push({type:"text",text:l.text});else if("reasoning"===l.type){d();let a=null==(g=null==(f=l.providerOptions)?void 0:f.google)?void 0:g.signature;s.push({type:"thought",...null!=a?{signature:a}:{},summary:l.text.length>0?[{type:"text",text:l.text}]:void 0})}else if("file"===l.type){let a=aL({part:l,warnings:n,mediaResolution:e});null!=a&&c.push(a)}else if("custom"===l.type){d();let a=null==(h=l.providerOptions)?void 0:h.google,b="string"==typeof(null==a?void 0:a.signature)?a.signature:void 0;"google.processing_call"===l.kind&&"string"==typeof(null==a?void 0:a.processingId)?s.push({type:"processing_call",id:a.processingId,...null!=b?{signature:b}:{}}):"google.processing_result"===l.kind&&"string"==typeof(null==a?void 0:a.processingCallId)?s.push({type:"processing_result",call_id:a.processingCallId,...null!=b?{signature:b}:{}}):n.push({type:"other",message:`google.interactions: unsupported or invalid custom assistant content part "${l.kind}"; part dropped.`})}else if("tool-call"===l.type){d();let a=null==(j=null==(i=l.providerOptions)?void 0:i.google)?void 0:j.signature,c="string"==typeof l.input?function(a){try{let c=(0,b.secureJsonParse)(a);if(null!=c&&"object"==typeof c&&!Array.isArray(c))return c;return{value:c}}catch(b){return{value:a}}}(l.input):null!=(k=l.input)?k:{};s.push({type:"function_call",id:l.toolCallId,name:l.toolName,arguments:c,...null!=a?{signature:a}:{}})}else n.push({type:"other",message:`google.interactions: unsupported assistant content part type "${l.type}"; part dropped.`});d();break}case"tool":{let c=[];for(let d of a.content){if("tool-result"!==d.type){n.push({type:"other",message:`google.interactions: unsupported tool message part type "${d.type}"; part dropped.`});continue}let a=function({toolCallId:a,toolName:c,output:d,signature:e,warnings:f}){var g;let h={type:"function_result",call_id:a,name:c,...null!=e?{signature:e}:{}};switch(d.type){case"text":return{...h,result:d.value};case"json":return{...h,result:JSON.stringify(d.value)};case"error-text":return{...h,is_error:!0,result:d.value};case"error-json":return{...h,is_error:!0,result:JSON.stringify(d.value)};case"execution-denied":return{...h,is_error:!0,result:null!=(g=d.reason)?g:"Tool execution denied by user."};case"content":{let a=[];for(let c of d.value)if("text"===c.type)a.push({type:"text",text:c.text});else if("file"===c.type){if("image"!==(0,b.getTopLevelMediaType)(c.mediaType)){f.push({type:"other",message:`google.interactions: tool-result file with mediaType "${c.mediaType}" is not supported (Interactions \`function_result.result\` accepts only text and image content); part dropped.`});continue}let d=function({part:a,warnings:c}){switch(a.data.type){case"data":{let c=(0,b.isFullMediaType)(a.mediaType)?a.mediaType:(0,b.resolveFullMediaType)({part:{type:"file",mediaType:a.mediaType,data:a.data}});return{type:"image",data:(0,b.convertToBase64)(a.data.data),mime_type:c}}case"url":return{type:"image",uri:a.data.url.toString(),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{}};case"reference":return{type:"image",uri:(0,b.resolveProviderReference)({reference:a.data.reference,provider:"google"}),...(0,b.isFullMediaType)(a.mediaType)?{mime_type:a.mediaType}:{}};case"text":return void c.push({type:"other",message:'google.interactions: tool-result image part with `data.type === "text"` is not representable as an image; part dropped.'})}}({part:c,warnings:f});null!=d&&a.push(d)}else f.push({type:"other",message:`google.interactions: tool-result content part type "${c.type}" is not supported; part dropped.`});return{...h,result:a}}}}({toolCallId:d.toolCallId,toolName:d.toolName,output:d.output,signature:null==(m=null==(l=d.providerOptions)?void 0:l.google)?void 0:m.signature,warnings:n});c.push(a)}c.length>0&&s.push({type:"user_input",content:c})}}return{input:s,systemInstruction:r.length>0?r.join("\n\n"):void 0,warnings:n}}({prompt:a.prompt,previousInteractionId:null!=(o=null==O?void 0:O.previousInteractionId)?o:void 0,store:null!=(p=null==O?void 0:O.store)?p:void 0,mediaResolution:null!=(q=null==O?void 0:O.mediaResolution)?q:void 0});N.push(...T);let U=S,V=null!=(r=null==O?void 0:O.systemInstruction)?r:void 0;if(null!=U&&null!=V?N.push({type:"other",message:"google.interactions: both AI SDK system message and providerOptions.google.systemInstruction were set; using the AI SDK system message."}):null==U&&null!=V&&(U=V),P){let b=[];null!=a.temperature&&b.push("temperature"),null!=a.topP&&b.push("topP"),null!=a.topK&&b.push("topK"),null!=a.frequencyPenalty&&b.push("frequencyPenalty"),null!=a.presencePenalty&&b.push("presencePenalty"),null!=a.seed&&b.push("seed"),null!=a.stopSequences&&a.stopSequences.length>0&&b.push("stopSequences"),null!=a.maxOutputTokens&&b.push("maxOutputTokens"),(null==O?void 0:O.thinkingLevel)!=null&&b.push("thinkingLevel"),(null==O?void 0:O.thinkingSummaries)!=null&&b.push("thinkingSummaries"),(null==O?void 0:O.imageConfig)!=null&&b.push("imageConfig"),b.length>0&&N.push({type:"other",message:`google.interactions: ${b.join(", ")} ${1===b.length?"is":"are"} not supported when an agent is set; use providerOptions.google.agentConfig instead. Dropped from the request body.`}),K=void 0}else if(K=a5({temperature:null!=(s=a.temperature)?s:void 0,top_p:null!=(t=a.topP)?t:void 0,top_k:null!=(u=a.topK)?u:void 0,seed:null!=(v=a.seed)?v:void 0,stop_sequences:null!=a.stopSequences&&a.stopSequences.length>0?a.stopSequences:void 0,max_output_tokens:null!=(w=a.maxOutputTokens)?w:void 0,thinking_level:null!=(x=null==O?void 0:O.thinkingLevel)?x:void 0,thinking_summaries:null!=(y=null==O?void 0:O.thinkingSummaries)?y:void 0,tool_choice:J}),(null==O?void 0:O.imageConfig)!=null){let a=Q.some(a=>"image"===a.type);N.push({type:"other",message:a?"google.interactions: providerOptions.google.imageConfig is deprecated and was ignored because providerOptions.google.responseFormat already supplies an image entry. Use responseFormat exclusively.":'google.interactions: providerOptions.google.imageConfig is deprecated. Use providerOptions.google.responseFormat with a { type: "image", ... } entry instead.'}),a||Q.push({type:"image",mime_type:"image/png",...null!=O.imageConfig.aspectRatio?{aspect_ratio:O.imageConfig.aspectRatio}:{},...null!=O.imageConfig.imageSize?{image_size:O.imageConfig.imageSize}:{}})}if(P&&(null==O?void 0:O.agentConfig)!=null){let a=O.agentConfig;"deep-research"===a.type?L=a5({type:"deep-research",thinking_summaries:null!=(z=a.thinkingSummaries)?z:void 0,visualization:null!=(A=a.visualization)?A:void 0,collaborative_planning:null!=(B=a.collaborativePlanning)?B:void 0}):"dynamic"===a.type&&(L={type:"dynamic"})}if((null==O?void 0:O.environment)!=null)if(P)if("string"==typeof O.environment)M=O.environment;else{let a,b=O.environment,c=null==(C=b.sources)?void 0:C.map(a=>{var b;return"inline"===a.type?{type:"inline",content:a.content,target:a.target}:a5({type:a.type,source:a.source,target:null!=(b=a.target)?b:void 0})});"disabled"===b.network?a="disabled":null!=b.network&&(a={allowlist:b.network.allowlist.map(a=>{var b;return a5({domain:a.domain,transform:null!=(b=a.transform)?b:void 0})})}),M=a5({type:"remote",sources:null!=c&&c.length>0?c:void 0,network:a})}else N.push({type:"other",message:"google.interactions: environment is only supported when an agent is set; environment will be omitted from the request body."});return{args:a5({...P?{agent:this.agent}:{model:this.modelId},input:R,system_instruction:U,tools:I,response_format:Q.length>0?Q:void 0,response_modalities:(null==O?void 0:O.responseModalities)!=null?O.responseModalities:void 0,previous_interaction_id:null!=(D=null==O?void 0:O.previousInteractionId)?D:void 0,service_tier:null!=(E=null==O?void 0:O.serviceTier)?E:void 0,store:null!=(F=null==O?void 0:O.store)?F:void 0,generation_config:null!=K&&Object.keys(K).length>0?K:void 0,agent_config:L,environment:M,background:null!=(G=null==O?void 0:O.background)?G:void 0}),warnings:N,isAgent:P,isBackground:(null==O?void 0:O.background)===!0,pollingTimeoutMs:null!=(H=null==O?void 0:O.pollingTimeoutMs)?H:void 0}}async doGenerate(a){var c,d,e,f,h,i;let j,{args:k,warnings:l,isAgent:m,pollingTimeoutMs:n}=await this.getArgs(a),o=`${this.config.baseURL}/interactions`,p=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers),{responseHeaders:q,value:r,rawValue:s}=await (0,b.postJsonToApi)({url:o,headers:p,body:k,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(aV),abortSignal:a.abortSignal,fetch:this.config.fetch});if(m&&!a2(r.status)){let b=await a3({baseURL:this.config.baseURL,interactionId:r.id,headers:p,fetch:this.config.fetch,abortSignal:a.abortSignal,timeoutMs:n});r=b.response,s=b.rawResponse,q=null!=(c=b.responseHeaders)?c:q}let t="string"==typeof r.id&&r.id.length>0?r.id:void 0,{content:u,hasFunctionCall:v}=a_({steps:null!=(d=r.steps)?d:null,generateId:null!=(e=this.config.generateId)?e:b.generateId,interactionId:t}),w={unified:aH({status:r.status,hasFunctionCall:v}),raw:r.status},x=null!=(h=null!=(f=r.service_tier)?f:null==q?void 0:q["x-gemini-service-tier"])?h:void 0,y=aB(r.usage),z={google:{...null!=t?{interactionId:t}:{},...null!=x?{serviceTier:x}:{},...null!=y?{outputTokensByModality:y}:{}}};if("string"==typeof r.created){let a=new Date(r.created);Number.isNaN(a.getTime())||(j=a)}return{content:u,finishReason:w,usage:aA(r.usage),warnings:l,providerMetadata:z,request:{body:k},response:{headers:q,body:s,...null!=t?{id:t}:{},...j?{timestamp:j}:{},modelId:null!=(i=r.model)?i:void 0}}}async doStream(a){var c;let{args:d,warnings:e,isBackground:f,pollingTimeoutMs:h}=await this.getArgs(a),i=`${this.config.baseURL}/interactions`,j=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers);if(f)return this.doStreamBackground({args:d,warnings:e,url:i,mergedHeaders:j,options:a,pollingTimeoutMs:h});let k={...d,stream:!0},{responseHeaders:l,value:m}=await (0,b.postJsonToApi)({url:i,headers:j,body:k,failedResponseHandler:g,successfulResponseHandler:(0,b.createEventSourceResponseHandler)(aW),abortSignal:a.abortSignal,fetch:this.config.fetch}),n=null==l?void 0:l["x-gemini-service-tier"],o=aK({warnings:e,generateId:null!=(c=this.config.generateId)?c:b.generateId,includeRawChunks:a.includeRawChunks,serviceTier:n});return{stream:m.pipeThrough(o),request:{body:k},response:{headers:l}}}async doStreamBackground({args:a,warnings:c,url:d,mergedHeaders:e,options:f,pollingTimeoutMs:h}){var i,j;let{responseHeaders:k,value:l}=await (0,b.postJsonToApi)({url:d,headers:e,body:a,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(aV),abortSignal:f.abortSignal,fetch:this.config.fetch}),m=l.id;if(null==m||0===m.length)throw Error("google.interactions: background POST response did not include an interaction id; cannot stream the result.");let n=null==k?void 0:k["x-gemini-service-tier"];if(a2(l.status))return{stream:function({response:a,warnings:b,generateId:c,includeRawChunks:d,headerServiceTier:e}){return new ReadableStream({start(f){var g,h,i;let j;f.enqueue({type:"stream-start",warnings:b});let k="string"==typeof a.id&&a.id.length>0?a.id:void 0,l=a.created;if("string"==typeof l){let a=new Date(l);Number.isNaN(a.getTime())||(j=a)}f.enqueue({type:"response-metadata",...null!=k?{id:k}:{},modelId:null!=(g=a.model)?g:void 0,...j?{timestamp:j}:{}}),d&&f.enqueue({type:"raw",rawValue:a});let{content:m,hasFunctionCall:n}=a_({steps:null!=(h=a.steps)?h:null,generateId:c,interactionId:k}),o=0,p=()=>`${null!=k?k:"agent"}:${o++}`;for(let a of m)switch(a.type){case"text":{let b=p(),c=a.providerMetadata;f.enqueue({type:"text-start",id:b}),a.text.length>0&&f.enqueue({type:"text-delta",id:b,delta:a.text}),f.enqueue({type:"text-end",id:b,...c?{providerMetadata:c}:{}});break}case"reasoning":{let b=p(),c=a.providerMetadata;f.enqueue({type:"reasoning-start",id:b}),a.text.length>0&&f.enqueue({type:"reasoning-delta",id:b,delta:a.text}),f.enqueue({type:"reasoning-end",id:b,...c?{providerMetadata:c}:{}});break}case"tool-call":{let b=a.providerMetadata;f.enqueue({type:"tool-input-start",id:a.toolCallId,toolName:a.toolName,...a.providerExecuted?{providerExecuted:a.providerExecuted}:{}}),f.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:a.input}),f.enqueue({type:"tool-input-end",id:a.toolCallId}),f.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...b?{providerMetadata:b}:{}});break}case"tool-result":f.enqueue({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,result:a.result});break;case"source":case"file":f.enqueue(a)}let q=null!=(i=a.service_tier)?i:e,r={unified:aH({status:a.status,hasFunctionCall:n}),raw:a.status},s={google:{...null!=k?{interactionId:k}:{},...null!=q?{serviceTier:q}:{}}};f.enqueue({type:"finish",finishReason:r,usage:aA(a.usage),providerMetadata:s}),f.close()}})}({response:l,warnings:c,generateId:null!=(i=this.config.generateId)?i:b.generateId,includeRawChunks:f.includeRawChunks,headerServiceTier:n}),request:{body:a},response:{headers:k}};let o=function({baseURL:a,interactionId:c,headers:d,fetch:e,abortSignal:f,maxRetries:h=3,retryDelayMs:i=500}){let j,k;if(0===c.length)throw Error("google.interactions: cannot stream a background interaction without an id.");let l={...d,accept:"text/event-stream"},m=!1,n=0,o=!1,p=new AbortController,q=()=>p.abort();null!=f&&(f.aborted?p.abort():f.addEventListener("abort",q,{once:!0}));let r=p.signal;async function s(){let d,f,{value:h}=await (0,b.getFromApi)({url:(d=`${a}/interactions/${encodeURIComponent(c)}`,f=new URLSearchParams({stream:"true"}),null!=j&&f.set("last_event_id",j),`${d}?${f.toString()}`),validateUrl:!1,headers:l,failedResponseHandler:g,successfulResponseHandler:(0,b.createEventSourceResponseHandler)(aW),abortSignal:r,fetch:e});return h.getReader()}return new ReadableStream({async start(g){try{for(;!m&&!r.aborted;){if(null==k)try{k=await s(),o=!1}catch(a){if((0,b.isAbortError)(a)||r.aborted||++n>=h)return void g.error(a);await (0,b.delay)(i*n,{abortSignal:r});continue}try{let{done:a,value:c}=await k.read();if(a){if(k=void 0,m)break;if(o)n=0;else{if(++n>=h)return void g.error(Error("google.interactions: SSE stream closed without producing any events."));await (0,b.delay)(i*n,{abortSignal:r})}continue}if(o=!0,c.success){let a=c.value;"string"==typeof a.event_id&&a.event_id.length>0&&(j=a.event_id),("interaction.completed"===a.event_type||"error"===a.event_type)&&(m=!0)}g.enqueue(c)}catch(a){if((0,b.isAbortError)(a)||r.aborted||(k=void 0,++n>=h))return void g.error(a);await (0,b.delay)(i*n,{abortSignal:r})}}g.close()}catch(a){g.error(a)}finally{null!=f&&f.removeEventListener("abort",q),null==k||k.cancel().catch(()=>{}),k=void 0,r.aborted&&!m&&await a0({baseURL:a,interactionId:c,headers:d,fetch:e})}},cancel(){p.abort(),null==k||k.cancel().catch(()=>{}),k=void 0}})}({baseURL:this.config.baseURL,interactionId:m,headers:e,fetch:this.config.fetch,abortSignal:f.abortSignal}),p=aK({warnings:c,generateId:null!=(j=this.config.generateId)?j:b.generateId,includeRawChunks:f.includeRawChunks,serviceTier:n});return{stream:o.pipeThrough(p),request:{body:a},response:{headers:k}}}};function a5(a){let b={};for(let[c,d]of Object.entries(a))void 0!==d&&(b[c]=d);return b}function a6(a){let b=new URL(a),c=b.pathname.split("/"),d=c.at(-1);return("v1beta"===d||"v1alpha"===d)&&(c.pop(),b.pathname=c.join("/")||"/"),b}function a7(a,b){let c=a6(a);return c.protocol="https:"===c.protocol?"wss:":"ws:",c.pathname=`${c.pathname.replace(/\/$/,"")}/ws/${b}`,c}var a8=class{constructor(){this.turnCounter=0,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,this.turnClosed=!1,this.inputAudioRate=16e3}get responseId(){return`google-resp-${this.turnCounter}`}get itemId(){return`google-item-${this.turnCounter}`}beginTurnIfClosed(){this.turnClosed&&(this.turnCounter++,this.hasAudio=!1,this.hasText=!1,this.hasTranscript=!1,this.turnClosed=!1)}parseServerEvent(a){var b,c;return null!=a.setupComplete?{type:"session-created",raw:a}:null!=a.toolCall?(this.beginTurnIfClosed(),(null!=(b=a.toolCall.functionCalls)?b:[]).flatMap(b=>{var c;let d=JSON.stringify(null!=(c=b.args)?c:{});return[{type:"function-call-arguments-delta",responseId:this.responseId,itemId:this.itemId,callId:b.id,delta:d,raw:a},{type:"function-call-arguments-done",responseId:this.responseId,itemId:this.itemId,callId:b.id,name:b.name,arguments:d,raw:a}]})):null!=a.toolCallCancellation?{type:"custom",rawType:"toolCallCancellation",raw:a}:null!=a.goAway?{type:"custom",rawType:"goAway",raw:a}:null!=a.sessionResumptionUpdate?{type:"custom",rawType:"sessionResumptionUpdate",raw:a}:null!=a.serverContent?this.parseServerContent(a.serverContent,a):(null==(c=a.inputTranscription)?void 0:c.text)!=null?{type:"input-transcription-completed",itemId:`google-input-${this.turnCounter}`,transcript:a.inputTranscription.text,raw:a}:{type:"custom",rawType:String(Object.keys(a)[0]),raw:a}}parseServerContent(a,b){var c,d,e,f;let g=[];if(a.interrupted&&g.push({type:"speech-started",raw:b}),null==(c=a.modelTurn)?void 0:c.parts)for(let c of(this.beginTurnIfClosed(),a.modelTurn.parts))(null==(d=c.inlineData)?void 0:d.data)&&(this.hasAudio=!0,g.push({type:"audio-delta",responseId:this.responseId,itemId:this.itemId,delta:c.inlineData.data,raw:b})),c.text&&(this.hasText=!0,g.push({type:"text-delta",responseId:this.responseId,itemId:this.itemId,delta:c.text,raw:b}));return((null==(e=a.outputTranscription)?void 0:e.text)&&(this.hasTranscript=!0,g.push({type:"audio-transcript-delta",responseId:this.responseId,itemId:this.itemId,delta:a.outputTranscription.text,raw:b})),(null==(f=a.inputTranscription)?void 0:f.text)&&g.push({type:"input-transcription-completed",itemId:`google-input-${this.turnCounter}`,transcript:a.inputTranscription.text,raw:b}),a.generationComplete&&g.push({type:"custom",rawType:"generationComplete",raw:b}),a.turnComplete&&(this.hasAudio&&g.push({type:"audio-done",responseId:this.responseId,itemId:this.itemId,raw:b}),this.hasText&&g.push({type:"text-done",responseId:this.responseId,itemId:this.itemId,raw:b}),this.hasTranscript&&g.push({type:"audio-transcript-done",responseId:this.responseId,itemId:this.itemId,raw:b}),g.push({type:"response-done",responseId:this.responseId,status:"completed",raw:b}),this.turnClosed=!0),0===g.length)?{type:"custom",rawType:"serverContent",raw:b}:1===g.length?g[0]:g}serializeClientEvent(a,b){var c;switch(a.type){case"session-update":return(null==(c=a.config.inputAudioFormat)?void 0:c.rate)!=null&&(this.inputAudioRate=a.config.inputAudioFormat.rate),{setup:ba(a.config,b)};case"input-audio-append":return{realtimeInput:{audio:{data:a.audio,mimeType:`audio/pcm;rate=${this.inputAudioRate}`}}};case"input-audio-commit":return{realtimeInput:{audioStreamEnd:!0}};case"input-audio-clear":case"response-create":case"response-cancel":case"conversation-item-truncate":break;case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{realtimeInput:{text:b.text}};case"function-call-output":return a9(b);case"audio-message":return null}}}return null}};async function a9(a){let c=await (0,b.safeParseJSON)({text:a.output}),d=c.success?c.value:{};return{toolResponse:{functionResponses:[{id:a.callId,name:a.name,response:d}]}}}function ba(a,c){let d={model:m(c)},e={};if((null==a?void 0:a.outputModalities)!=null?e.responseModalities=a.outputModalities.map(a=>a.toUpperCase()):e.responseModalities=["AUDIO"],(null==a?void 0:a.voice)!=null&&(e.speechConfig={voiceConfig:{prebuiltVoiceConfig:{voiceName:a.voice}}}),d.generationConfig=e,(null==a?void 0:a.instructions)!=null&&(d.systemInstruction={parts:[{text:a.instructions}]}),(null==a?void 0:a.tools)!=null&&a.tools.length>0&&(d.tools=[{functionDeclarations:a.tools.map(a=>({name:a.name,description:a.description,parameters:p(a.parameters)}))}]),(null==a?void 0:a.inputAudioTranscription)!=null&&(d.inputAudioTranscription={}),(null==a?void 0:a.outputAudioTranscription)!=null&&(d.outputAudioTranscription={}),(null==a?void 0:a.providerOptions)==null)return d;let{google:f,...g}=a.providerOptions;Object.assign(d,g);let h=(0,b.isRecord)(f)?f:void 0;if((null==h?void 0:h.translationConfig)!=null){let a=(0,b.isRecord)(d.generationConfig)?d.generationConfig:e;d.generationConfig={...a,translationConfig:h.translationConfig}}return d}var bb=class{constructor(a,b){this.specificationVersion="v4",this.mapper=new a8,this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b,c;let d,e=null!=(b=this.config.fetch)?b:fetch,f=this.config.headers()["x-goog-api-key"];if(!f)throw Error("Google Generative AI API key is required for realtime token creation.");let g=Date.now(),h=(null!=(c=a.expiresAfterSeconds)?c:60)*1e3,i=new Date(g+h).toISOString(),j=new Date(g+h+18e5).toISOString(),k=ba(a.sessionConfig,this.modelId),l=await e(`${((d=a6(this.config.baseURL)).pathname=`${d.pathname.replace(/\/$/,"")}/v1alpha/auth_tokens`,d.toString())}?key=${encodeURIComponent(f)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({uses:0,expireTime:j,newSessionExpireTime:i,bidiGenerateContentSetup:k})});if(!l.ok){let a=await l.text();throw Error(`Google realtime auth token request failed: ${l.status} ${a}`)}let m=await l.json();return{token:m.name,url:a7(this.config.baseURL,"google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContentConstrained").toString(),expiresAt:m.expireTime?Math.floor(new Date(m.expireTime).getTime()/1e3):void 0}}getWebSocketConfig(a){return{url:`${a.url}?access_token=${encodeURIComponent(a.token)}`}}parseServerEvent(a){return this.mapper.parseServerEvent(a)}serializeClientEvent(a){return this.mapper.serializeClientEvent(a,this.modelId)}buildSessionConfig(a){return ba(a,this.modelId)}},bc=e.z.object({languageCodes:e.z.array(e.z.string()).optional(),customVocabulary:e.z.array(e.z.string()).optional(),wordTimestamp:e.z.boolean().optional(),diarization:e.z.boolean().optional(),mode:e.z.enum(["SMART","VERBATIM"]).optional()});function bd(a){return a.includes("-live")}var be=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async parseOptions(a){return(0,b.parseProviderOptions)({provider:"google",providerOptions:a,schema:bc})}async doGenerate(a){var d,e,f,h,i,j;if(bd(this.modelId))throw new c.InvalidArgumentError({argument:"modelId",message:`Model '${this.modelId}' only supports streaming transcription. Use experimental_streamTranscribe, or a unary model such as 'gemini-3.5-transcribe'.`});let k=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,l=function(a){var b;if(null==a)return;let c={};return null!=a.languageCodes&&(c.language_codes=a.languageCodes),null!=a.customVocabulary&&(c.custom_vocabulary=a.customVocabulary),(null!=a.mode||!0===a.diarization||!0===a.wordTimestamp)&&(c.mode={type:(null!=(b=a.mode)?b:"VERBATIM").toLowerCase(),...!0===a.diarization?{diarization_mode:"speaker"}:{},...!0===a.wordTimestamp?{timestamp_granularities:["word"]}:{}}),Object.keys(c).length>0?c:void 0}(await this.parseOptions(a.providerOptions)),m={model:this.modelId,input:[{type:"audio",data:(0,b.convertToBase64)(a.audio),mime_type:a.mediaType}],...null!=l?{generation_config:{transcription_config:l}}:{}},{value:n,responseHeaders:o,rawValue:p}=await (0,b.postJsonToApi)({url:`${this.config.baseURL}/interactions`,headers:(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers),body:m,failedResponseHandler:g,successfulResponseHandler:(0,b.createJsonResponseHandler)(bh),abortSignal:a.abortSignal,fetch:this.config.fetch}),q="",r=[];for(let a of null!=(h=n.steps)?h:[])for(let b of null!=(i=a.content)?i:[])if("text"===b.type&&null!=b.text)for(let a of(q+=b.text,null!=(j=b.annotations)?j:[])){if("word_info"!==a.type)continue;let b=bf(a.start_offset),c=bf(a.end_offset);null!=a.text&&null!=b&&null!=c&&r.push({text:a.text,startSecond:b,endSecond:c})}return{text:q,segments:r,language:void 0,durationInSeconds:void 0,warnings:[],response:{timestamp:k,modelId:this.modelId,headers:o,body:p},...null!=n.usage?{providerMetadata:{google:{usage:n.usage}}}:{}}}async doStream(a){let d,e;if(!bd(this.modelId))throw new c.InvalidArgumentError({argument:"modelId",message:`Model '${this.modelId}' does not support streaming transcription. Use a live model such as 'gemini-3.5-transcribe-live'.`});let f=null!=(j=null==(i=null==(h=this.config._internal)?void 0:h.currentDate)?void 0:i.call(h))?j:new Date,g=await this.parseOptions(a.providerOptions);var h,i,j,k,l,n,o,p,q,r=a.inputAudioFormat;if("audio/pcm"!==r.type||null!=r.rate&&16e3!==r.rate)throw new c.InvalidArgumentError({argument:"inputAudioFormat",message:"The Gemini Live transcription API only supports 16kHz 16-bit PCM input audio."});let s=(0,b.combineHeaders)(this.config.headers?await (0,b.resolve)(this.config.headers):void 0,a.headers);for(let[a,b]of Object.entries(s))"x-goog-api-key"===a.toLowerCase()&&null!=b&&(d=b);if(null==d)throw Error("Google Generative AI API key is required for streaming transcription.");let t=Object.fromEntries(Object.entries(s).filter(([a])=>"x-goog-api-key"!==a.toLowerCase())),u={model:m(this.modelId),inputAudioTranscription:null!=(k=function(a){if(null==a)return;let b={};return null!=a.languageCodes&&(b.languageCodes=a.languageCodes),null!=a.customVocabulary&&(b.customVocabulary=a.customVocabulary),null!=a.wordTimestamp&&(b.wordTimestamp=a.wordTimestamp),null!=a.diarization&&(b.diarization=a.diarization),null!=a.mode&&(b.mode=a.mode),Object.keys(b).length>0?b:void 0}(g))?k:{}};return{request:{body:u},response:{timestamp:f,modelId:this.modelId},stream:function({webSocket:a,url:c,headers:d,setup:e,inputAudioRate:f,finishGraceMs:g,warnings:h,audio:i,abortSignal:j,includeRawChunks:k}){let l=!1,m=()=>{};return new ReadableStream({start:n=>{let o,p,q,r,s,t,u=new Promise(a=>{q=a}),v=0,w="",x="",y="",z=!1,A=()=>`google-segment-${v}`,B=()=>{null!=t&&(clearTimeout(t),t=void 0)},C=()=>{!l&&z&&(B(),t=setTimeout(()=>{t=void 0,F()},g))};m=a=>{B(),null!=o?o.cancel().catch(()=>{}):i.cancel().catch(()=>{}),null==p||p.close(a)};let D=a=>{l||(l=!0,m(),n.error(a))},E=()=>{if(""===w){if(""===y)return;w=y}y="",n.enqueue({type:"transcript-final",id:A(),text:w}),x+=""===x?w:` ${w}`,w="",v++},F=()=>{l||(E(),l=!0,n.enqueue({type:"finish",text:x,segments:[],language:r,durationInSeconds:void 0,...null!=s?{providerMetadata:{google:{usageMetadata:s}}}:{}}),n.close(),m(1e3))},G=async a=>{o=i.getReader();try{for(;;){let{done:c,value:d}=await o.read();if(c||l)break;a.send(JSON.stringify({realtimeInput:{audio:{data:(0,b.convertToBase64)(d),mimeType:`audio/pcm;rate=${f}`}}})),await (0,b.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}l||(a.send(JSON.stringify({realtimeInput:{audioStreamEnd:!0}})),z=!0,C())};p=(0,b.connectToWebSocket)({url:c,headers:d,webSocket:a,abortSignal:j,onAbort:D,onProcessingError:D,onOpen:a=>{n.enqueue({type:"stream-start",warnings:h}),a.send(JSON.stringify({setup:e})),u.then(()=>l?void 0:G(a)).catch(D)},onMessageText:async a=>{var c,d;if(l)return;let e=await (0,b.safeParseJSON)({text:a});if(!e.success)return;let f=e.value;if(k&&n.enqueue({type:"raw",rawValue:f}),null!=f.setupComplete&&q(),null!=f.usageMetadata&&(s=f.usageMetadata),null!=f.error)return void D(Error(null!=(c=f.error.message)?c:"Google Live API error"));let g=f.serverContent,h=null==g?void 0:g.interimInputTranscription;(null==h?void 0:h.text)&&(C(),y=h.text,n.enqueue({type:"transcript-partial",id:A(),text:h.text}));let i=null!=(d=null==g?void 0:g.inputTranscription)?d:f.inputTranscription;null!=i&&(null!=i.languageCode&&(r=i.languageCode),i.text&&(C(),y="",w+=i.text,n.enqueue({type:"transcript-delta",id:A(),delta:i.text})),!0===i.finished&&E()),(null==g?void 0:g.turnComplete)&&E();let j=null==g?void 0:g.interactionStatus;z&&("IDLE"===j||"REQUIRES_ACTION"===j||(null==g?void 0:g.turnComplete)===!0&&null==j)&&F()},onSocketError:()=>{D(Error("Google Live transcription error"))},onClose:({code:a,reason:b})=>{if(!l){if(z)return void F();D(Error(`Google Live transcription WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}}})},cancel:()=>{l||(l=!0,m())}})}({webSocket:this.config.webSocket,url:(p=this.config.baseURL,q=d,(e=a7(p,"google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent")).searchParams.set("key",q),e),headers:t,setup:u,inputAudioRate:null!=(l=a.inputAudioFormat.rate)?l:16e3,finishGraceMs:null!=(o=null==(n=this.config._internal)?void 0:n.finishGraceMs)?o:3e3,warnings:[],audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}};function bf(a){if(null==a)return;let b=Number.parseFloat(a);return Number.isFinite(b)?b:void 0}var bg=e.z.object({type:e.z.string().nullish(),text:e.z.string().nullish(),speaker:e.z.string().nullish(),start_offset:e.z.string().nullish(),end_offset:e.z.string().nullish()}),bh=e.z.object({status:e.z.string().nullish(),steps:e.z.array(e.z.object({type:e.z.string().nullish(),content:e.z.array(e.z.object({type:e.z.string().nullish(),text:e.z.string().nullish(),annotations:e.z.array(bg).nullish()})).nullish()})).nullish(),usage:e.z.record(e.z.string(),e.z.unknown()).nullish()}),bi=(0,b.lazySchema)(()=>(0,b.zodSchema)(e.z.object({echoTargetLanguage:e.z.boolean().optional()}))),bj=class a{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,b.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doStream(a){var d,e,f,g,h,i,j,k;let l,n;if(null==a.targetLanguage)throw new c.InvalidArgumentError({argument:"targetLanguage",message:`targetLanguage is required for translation model '${this.modelId}'.`});let o=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,p=await (0,b.parseProviderOptions)({provider:"google",providerOptions:a.providerOptions,schema:bi}),q=[];(function(a){if("audio/pcm"!==a.type||null!=a.rate&&16e3!==a.rate)throw new c.InvalidArgumentError({argument:"inputAudioFormat",message:"The Gemini Live translation API only supports 16kHz 16-bit PCM input audio."})})(a.inputAudioFormat),null!=a.sourceLanguage&&q.push({type:"unsupported",feature:"sourceLanguage",details:"The Gemini Live translation API auto-detects the source language and does not accept a source language."}),null!=a.outputAudioFormat&&q.push({type:"unsupported",feature:"outputAudioFormat",details:"The Gemini Live API always outputs 24kHz 16-bit PCM audio and does not accept an output audio format."});let r=(0,b.combineHeaders)(this.config.headers(),a.headers);for(let[a,b]of Object.entries(r))"x-goog-api-key"===a.toLowerCase()&&null!=b&&(l=b);if(null==l)throw Error("Google Generative AI API key is required for streaming translation.");let s=Object.fromEntries(Object.entries(r).filter(([a])=>"x-goog-api-key"!==a.toLowerCase())),t=function({modelId:a,targetLanguage:b,providerOptions:c}){return{model:m(a),generationConfig:{responseModalities:["AUDIO"],translationConfig:{targetLanguageCode:b,...(null==c?void 0:c.echoTargetLanguage)!=null?{echoTargetLanguage:c.echoTargetLanguage}:{}}},inputAudioTranscription:{},outputAudioTranscription:{}}}({modelId:this.modelId,targetLanguage:a.targetLanguage,providerOptions:p});return{request:{body:t},response:{timestamp:o,modelId:this.modelId},stream:function({webSocket:a,url:c,headers:d,setup:e,inputAudioRate:f,finishGraceMs:g,warnings:h,audio:i,abortSignal:j,includeRawChunks:k}){let l=!1,m=()=>{};return new ReadableStream({start:n=>{let o,p,q,r,s,t=new Promise(a=>{q=a}),u=0,v="",w="",x="",y="",z=!1,A=!1,B=!1,C=0,D=()=>`google-item-${u}`,E=()=>{null!=s&&(clearTimeout(s),s=void 0)},F=()=>{l||null!=s||(s=setTimeout(()=>{s=void 0,I()},g))},G=()=>{A=!0,C=0,E()};m=a=>{E(),null!=o?o.cancel().catch(()=>{}):i.cancel().catch(()=>{}),null==p||p.close(a)};let H=a=>{l||(l=!0,m(),n.error(a))},I=()=>{l||((""!==w||""!==y)&&J(),l=!0,n.enqueue({type:"finish",sourceText:v,outputText:x,usage:r}),n.close(),m(1e3))},J=()=>{""!==w&&(n.enqueue({type:"source-transcript-final",id:D(),text:w}),v+=w,w=""),""!==y&&(n.enqueue({type:"output-text-final",id:D(),text:y}),x+=y,y=""),u++},K=async a=>{o=i.getReader();try{for(;;){let{done:c,value:d}=await o.read();if(c||l)break;a.send(JSON.stringify({realtimeInput:{audio:{data:(0,b.convertToBase64)(d),mimeType:`audio/pcm;rate=${f}`}}})),await (0,b.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}l||(a.send(JSON.stringify({realtimeInput:{audioStreamEnd:!0}})),z=!0,B&&!A&&F())};p=(0,b.connectToWebSocket)({url:c,headers:d,webSocket:a,abortSignal:j,onAbort:H,onProcessingError:H,onOpen:a=>{n.enqueue({type:"stream-start",warnings:h}),a.send(JSON.stringify({setup:e})),t.then(()=>l?void 0:K(a)).catch(H)},onMessageText:async a=>{var c,d,e,f,h,i,j,m,o;if(l)return;let p=await (0,b.safeParseJSON)({text:a});if(!p.success)return;let s=p.value;if(k&&n.enqueue({type:"raw",rawValue:s}),null!=s.setupComplete&&q(),null!=s.usageMetadata&&(r=function(a,b){var c,d;let e=null==a?void 0:a.inputAudioTokens,f=null==a?void 0:a.outputAudioTokens;for(let a of null!=(c=b.promptTokensDetails)?c:[])"AUDIO"===a.modality&&null!=a.tokenCount&&(e=(null!=e?e:0)+a.tokenCount);for(let a of null!=(d=b.responseTokensDetails)?d:[])"AUDIO"===a.modality&&null!=a.tokenCount&&(f=(null!=f?f:0)+a.tokenCount);return null==e&&null==f?a:{...a,...null!=e?{inputAudioTokens:e}:{},...null!=f?{outputAudioTokens:f}:{}}}(r,s.usageMetadata)),null!=s.error)return void H(Error(null!=(c=s.error.message)?c:"Google Live API error"));let t=null!=(h=null==(e=null==(d=s.serverContent)?void 0:d.inputTranscription)?void 0:e.text)?h:null==(f=s.inputTranscription)?void 0:f.text;t&&(G(),w+=t,n.enqueue({type:"source-transcript-delta",id:D(),delta:t}));let u=s.serverContent;if(null!=u){for(let a of null!=(j=null==(i=u.modelTurn)?void 0:i.parts)?j:[])if(null==(m=a.inlineData)?void 0:m.data){n.enqueue({type:"audio",id:D(),audio:a.inlineData.data});let c=function(a){let c;try{c=(0,b.convertBase64ToUint8Array)(a)}catch(a){return}if(c.byteLength<2)return;let d=new DataView(c.buffer,c.byteOffset,c.byteLength),e=Math.floor(c.byteLength/2);for(let a=0;a<e;a++)if(Math.abs(d.getInt16(2*a,!0))>128)return;return e/24e3*1e3}(a.inlineData.data);if(z&&null!=c){if((C+=c)>=g)return void I()}else G()}(null==(o=u.outputTranscription)?void 0:o.text)&&(G(),y+=u.outputTranscription.text,n.enqueue({type:"output-text-delta",id:D(),delta:u.outputTranscription.text})),u.turnComplete&&(J(),A=!1,B=!0,z&&F())}},onSocketError:()=>{H(Error("Google Live translation error"))},onClose:({code:a,reason:b})=>{if(!l){if(null!=s)return void I();H(Error(`Google Live translation WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}}})},cancel:()=>{l||(l=!0,m())}})}({webSocket:this.config.webSocket,url:(j=this.config.baseURL,k=l,(n=a7(j,"google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent")).searchParams.set("key",k),n),headers:s,setup:t,inputAudioRate:null!=(g=a.inputAudioFormat.rate)?g:16e3,finishGraceMs:null!=(i=null==(h=this.config._internal)?void 0:h.finishGraceMs)?i:1e3,warnings:q,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bk=/^https:\/\/generativelanguage\.googleapis\.com\/v1beta\/files\/.*$/,bl=["text/html","text/css","text/plain","text/xml","text/csv","text/rtf","text/javascript","application/json","application/pdf","image/bmp","image/jpeg","image/png","image/webp","video/mp4","video/mpeg","video/quicktime","video/avi","video/x-flv","video/mpg","video/webm","video/wmv","video/3gpp"],bm=/^https:\/\/.*$/;function bn(a={}){var c,d;let e=null!=(c=(0,b.withoutTrailingSlash)(a.baseURL))?c:"https://generativelanguage.googleapis.com/v1beta",f=null!=(d=a.name)?d:"google.generative-ai",g=()=>(0,b.withUserAgentSuffix)({"x-goog-api-key":(0,b.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"GOOGLE_GENERATIVE_AI_API_KEY",description:"Google Generative AI"}),...a.headers},"ai-sdk/google/4.0.64"),h=c=>{var d;return new Z(c,{provider:f,baseURL:e,headers:g,generateId:null!=(d=a.generateId)?d:b.generateId,supportedUrls:()=>({"*":[bk,RegExp(`^${e}/files/.*$`),RegExp("^https://(?:www\\.)?youtube\\.com/watch\\?v=[\\w-]+(?:&[\\w=&.-]*)?$"),RegExp("^https://youtu\\.be/[\\w-]+(?:\\?[\\w=&.-]*)?$")],.../(^|\/)gemini-/.test(c)&&!/(^|\/)gemini-2\.0/.test(c)?Object.fromEntries(bl.map(a=>[a,[bm]])):{}}),fetch:a.fetch})},i=b=>new j(b,{provider:f,baseURL:e,headers:g,fetch:a.fetch}),k=(b,c={})=>new ak(b,c,{provider:f,baseURL:e,headers:g,fetch:a.fetch}),l=c=>{var d;return new ar(c,{provider:f,baseURL:e,headers:g,fetch:a.fetch,generateId:null!=(d=a.generateId)?d:b.generateId})},m=b=>new bb(b,{provider:`${f}.realtime`,baseURL:e,headers:g,fetch:a.fetch}),n=b=>new bj(b,{provider:`${f}.speech-translation`,baseURL:e,headers:g,webSocket:a.webSocket}),o=b=>new ay(b,{provider:`${f}.speech`,baseURL:e,headers:g,fetch:a.fetch}),p=b=>new be(b,{provider:`${f}.transcription`,baseURL:e,headers:g,fetch:a.fetch,webSocket:a.webSocket}),q=Object.assign(a=>m(a),{getToken:async a=>{let b=m(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),r=function(a){if(new.target)throw Error("The Google Generative AI model function cannot be called with the new keyword.");return h(a)};return r.specificationVersion="v4",r.languageModel=h,r.chat=h,r.generativeAI=h,r.embedding=i,r.embeddingModel=i,r.textEmbedding=i,r.textEmbeddingModel=i,r.image=k,r.imageModel=k,r.video=l,r.videoModel=l,r.experimental_realtime=q,r.files=()=>new am({provider:f,baseURL:e,headers:g,fetch:a.fetch}),r.speech=o,r.speechModel=o,r.transcription=p,r.transcriptionModel=p,r.translation=n,r.speechTranslationModel=n,r.interactions=c=>{var d;return new a4(c,{provider:`${f}.interactions`,baseURL:e,headers:g,generateId:null!=(d=a.generateId)?d:b.generateId,fetch:a.fetch})},r.tools=ai,r}bn(),a.s(["createGoogleGenerativeAI",0,bn])},106450,a=>{"use strict";let b;var c,d,e,f,g=a.i(527990),h=a.i(53112),i=a.i(652685),j=a.i(925034);async function k(a){return(await b).getRandomValues(new Uint8Array(a))}async function l(a){let b="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",c=256-256%b.length,d="";for(;d.length<a;)for(let e of(await k(a-d.length)))e<c&&(d+=b[e%b.length]);return d}async function m(a){return await l(a)}async function n(a){return btoa(String.fromCharCode(...new Uint8Array(await (await b).subtle.digest("SHA-256",new TextEncoder().encode(a))))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function o(a){if(a||(a=43),a<43||a>128)throw`Expected a length between 43 and 128. Received ${a}.`;let b=await m(a),c=await n(b);return{code_verifier:b,code_challenge:c}}b=globalThis.crypto?.webcrypto??globalThis.crypto??a.A(70729).then(a=>a.webcrypto);var p=a.i(794219),q="2026-07-28",r="2025-11-25",s=[q,r,"2025-06-18","2025-03-26","2024-11-05"],t=h.z.optional(h.z.record(h.z.string(),h.z.unknown())),u=h.z.looseObject({name:h.z.string(),version:h.z.string(),title:h.z.optional(h.z.string())}),v=h.z.looseObject({_meta:h.z.optional(h.z.object({}).loose())}),w=v.extend({resultType:h.z.optional(h.z.string())}),x=h.z.object({method:h.z.string(),params:h.z.optional(v)}),y=h.z.object({applyDefaults:h.z.optional(h.z.boolean())}).loose(),z=h.z.looseObject({experimental:h.z.optional(h.z.object({}).loose()),logging:h.z.optional(h.z.object({}).loose()),completions:h.z.optional(h.z.object({}).loose()),prompts:h.z.optional(h.z.looseObject({listChanged:h.z.optional(h.z.boolean())})),resources:h.z.optional(h.z.looseObject({subscribe:h.z.optional(h.z.boolean()),listChanged:h.z.optional(h.z.boolean())})),tools:h.z.optional(h.z.looseObject({listChanged:h.z.optional(h.z.boolean())})),elicitation:h.z.optional(y)});h.z.object({elicitation:h.z.optional(y)}).loose();var A=w.extend({supportedVersions:h.z.array(h.z.string()),capabilities:z,instructions:h.z.optional(h.z.string()),ttlMs:h.z.optional(h.z.number()),cacheScope:h.z.optional(h.z.union([h.z.literal("public"),h.z.literal("private")]))}),B=w.extend({protocolVersion:h.z.string(),capabilities:z,serverInfo:u,instructions:h.z.optional(h.z.string())}),C=w.extend({nextCursor:h.z.optional(h.z.string())}),D=h.z.object({name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),inputSchema:h.z.looseObject({type:h.z.optional(h.z.unknown()),properties:h.z.optional(h.z.object({}).loose())}),outputSchema:h.z.optional(h.z.object({}).loose()),annotations:h.z.optional(h.z.object({title:h.z.optional(h.z.string()),readOnlyHint:h.z.optional(h.z.boolean()),destructiveHint:h.z.optional(h.z.boolean()),idempotentHint:h.z.optional(h.z.boolean()),openWorldHint:h.z.optional(h.z.boolean())}).loose()),_meta:t}).loose(),E=C.extend({tools:h.z.array(D)}),F=h.z.object({type:h.z.literal("text"),text:h.z.string()}).loose(),G=h.z.object({type:h.z.literal("image"),data:h.z.base64(),mimeType:h.z.string()}).loose(),H=h.z.object({uri:h.z.string(),name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string()),size:h.z.optional(h.z.number())}).loose(),I=C.extend({resources:h.z.array(H)}),J=h.z.object({uri:h.z.string(),name:h.z.optional(h.z.string()),title:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),K=J.extend({text:h.z.string()}),L=J.extend({blob:h.z.base64()}),M=h.z.object({type:h.z.literal("resource"),resource:h.z.union([K,L])}).loose(),N=h.z.object({type:h.z.literal("resource_link"),uri:h.z.string(),name:h.z.string(),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),O=h.z.object({type:h.z.string()}).loose().refine(a=>!["text","image","resource","resource_link"].includes(a.type),{message:"Known content types must match their schema"}),P=w.extend({content:h.z.array(h.z.union([F,G,M,N,O])),structuredContent:h.z.optional(h.z.unknown()),isError:h.z.boolean().default(!1).optional()}),Q=w.extend({content:h.z.never().optional(),structuredContent:h.z.json(),isError:h.z.boolean().default(!1).optional()}).transform(a=>({...a,content:[{type:"text",text:JSON.stringify(a.structuredContent)}]})).pipe(P),R=P.or(Q).or(w.extend({toolResult:h.z.unknown().nonoptional()})),S=h.z.object({uriTemplate:h.z.string(),name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),T=w.extend({resourceTemplates:h.z.array(S)}),U=w.extend({contents:h.z.array(h.z.union([K,L]))}),V=h.z.object({type:h.z.literal("ref/prompt"),name:h.z.string()}).loose(),W=h.z.object({type:h.z.literal("ref/resource"),uri:h.z.string()}).loose(),X=h.z.object({name:h.z.string(),value:h.z.string()}).loose();v.extend({ref:h.z.union([V,W]),argument:X,context:h.z.optional(h.z.object({arguments:h.z.record(h.z.string(),h.z.string())}).loose())});var Y=w.extend({completion:h.z.object({values:h.z.array(h.z.string()).max(100),total:h.z.optional(h.z.number().int()),hasMore:h.z.optional(h.z.boolean())}).loose()}),Z=h.z.object({name:h.z.string(),description:h.z.optional(h.z.string()),required:h.z.optional(h.z.boolean())}).loose(),$=h.z.object({name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),arguments:h.z.optional(h.z.array(Z))}).loose(),_=C.extend({prompts:h.z.array($)}),aa=h.z.object({role:h.z.union([h.z.literal("user"),h.z.literal("assistant")]),content:h.z.union([F,G,M,N])}).loose(),ab=w.extend({description:h.z.optional(h.z.string()),messages:h.z.array(aa)}),ac=v.extend({message:h.z.string(),requestedSchema:h.z.unknown()}),ad=x.extend({method:h.z.literal("elicitation/create"),params:ac}),ae=w.extend({action:h.z.union([h.z.literal("accept"),h.z.literal("decline"),h.z.literal("cancel")]),content:h.z.optional(h.z.record(h.z.string(),h.z.unknown()))}),af=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.union([h.z.string(),h.z.number().int()])}).merge(x).strict(),ag=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.union([h.z.string(),h.z.number().int()]),result:w}).strict(),ah=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.optional(h.z.union([h.z.string(),h.z.number().int()])),error:h.z.object({code:h.z.number().int(),message:h.z.string(),data:h.z.optional(h.z.unknown())})}).strict(),ai=h.z.object({jsonrpc:h.z.literal("2.0")}).merge(h.z.object({method:h.z.string(),params:h.z.optional(v)})).strict(),aj=h.z.union([af,ai,ag,ah]);function ak(a){return aj.parse(a)}async function al(a){return ak(await (0,g.parseJSON)({text:a}))}var am="vercel.ai.error.AI_MCPClientError",an=Symbol.for(am),ao=class extends(d=i.AISDKError,c=an,d){constructor({name:a="MCPClientError",message:b,cause:d,data:e,code:f,statusCode:g,url:h,responseBody:i}){super({name:a,message:b,cause:d}),this[c]=!0,this.data=e,this.code=f,this.statusCode=g,this.url=h,this.responseBody=i}static isInstance(a){return i.AISDKError.hasMarker(a,am)}},ap="u">typeof __PACKAGE_VERSION__?__PACKAGE_VERSION__:"0.0.0-test",aq=h.z.string().url().superRefine((a,b)=>{if(!URL.canParse(a))return b.addIssue({code:h.z.ZodIssueCode.custom,message:"URL must be parseable",fatal:!0}),h.z.NEVER}).refine(a=>{let b=new URL(a);return"javascript:"!==b.protocol&&"data:"!==b.protocol&&"vbscript:"!==b.protocol},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),ar=h.z.object({access_token:h.z.string(),id_token:h.z.string().optional(),token_type:h.z.string(),expires_in:h.z.number().optional(),scope:h.z.string().optional(),refresh_token:h.z.string().optional(),issuer:aq.optional(),authorization_server:aq.optional(),token_endpoint:aq.optional()}).strip(),as=h.z.looseObject({resource:h.z.string().url(),authorization_servers:h.z.array(aq).optional(),jwks_uri:h.z.string().url().optional(),scopes_supported:h.z.array(h.z.string()).optional(),bearer_methods_supported:h.z.array(h.z.string()).optional(),resource_signing_alg_values_supported:h.z.array(h.z.string()).optional(),resource_name:h.z.string().optional(),resource_documentation:h.z.string().optional(),resource_policy_uri:h.z.string().url().optional(),resource_tos_uri:h.z.string().url().optional(),tls_client_certificate_bound_access_tokens:h.z.boolean().optional(),authorization_details_types_supported:h.z.array(h.z.string()).optional(),dpop_signing_alg_values_supported:h.z.array(h.z.string()).optional(),dpop_bound_access_tokens_required:h.z.boolean().optional()}),at=h.z.looseObject({issuer:h.z.string(),authorization_endpoint:aq,token_endpoint:aq,registration_endpoint:aq.optional(),authorization_response_iss_parameter_supported:h.z.boolean().optional(),client_id_metadata_document_supported:h.z.boolean().optional(),scopes_supported:h.z.array(h.z.string()).optional(),response_types_supported:h.z.array(h.z.string()),grant_types_supported:h.z.array(h.z.string()).optional(),code_challenge_methods_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_methods_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:h.z.array(h.z.string()).optional()}),au=h.z.looseObject({issuer:h.z.string(),authorization_endpoint:aq,token_endpoint:aq,userinfo_endpoint:aq.optional(),jwks_uri:aq,registration_endpoint:aq.optional(),authorization_response_iss_parameter_supported:h.z.boolean().optional(),client_id_metadata_document_supported:h.z.boolean().optional(),scopes_supported:h.z.array(h.z.string()).optional(),response_types_supported:h.z.array(h.z.string()),grant_types_supported:h.z.array(h.z.string()).optional(),subject_types_supported:h.z.array(h.z.string()),id_token_signing_alg_values_supported:h.z.array(h.z.string()),claims_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_methods_supported:h.z.array(h.z.string()).optional()}).merge(at.pick({code_challenge_methods_supported:!0})),av=h.z.object({client_id:h.z.string(),client_secret:h.z.string().optional(),client_id_issued_at:h.z.number().optional(),client_secret_expires_at:h.z.number().optional(),issuer:aq.optional(),authorization_server:aq.optional(),token_endpoint:aq.optional()}).strip(),aw=h.z.object({redirect_uris:h.z.array(aq),application_type:h.z.union([h.z.literal("native"),h.z.literal("web")]).optional(),token_endpoint_auth_method:h.z.string().optional(),grant_types:h.z.array(h.z.string()).optional(),response_types:h.z.array(h.z.string()).optional(),client_name:h.z.string().optional(),client_uri:aq.optional(),logo_uri:aq.optional(),scope:h.z.string().optional(),contacts:h.z.array(h.z.string()).optional(),tos_uri:aq.optional(),policy_uri:h.z.string().optional(),jwks_uri:aq.optional(),jwks:h.z.any().optional(),software_id:h.z.string().optional(),software_version:h.z.string().optional(),software_statement:h.z.string().optional()}).strip(),ax=h.z.object({error:h.z.string(),error_description:h.z.string().optional(),error_uri:h.z.string().optional()}),ay=aw.merge(av),az="vercel.ai.error.AI_MCPClientOAuthError",aA=Symbol.for(az),aB=class extends(f=i.AISDKError,e=aA,f){constructor({name:a="MCPClientOAuthError",message:b,cause:c}){super({name:a,message:b,cause:c}),this[e]=!0}static isInstance(a){return i.AISDKError.hasMarker(a,az)}},aC=class extends aB{};aC.errorCode="server_error";var aD=class extends aB{};aD.errorCode="invalid_client";var aE=class extends aB{};aE.errorCode="invalid_grant";var aF=class extends aB{};aF.errorCode="unauthorized_client";var aG={[aC.errorCode]:aC,[aD.errorCode]:aD,[aE.errorCode]:aE,[aF.errorCode]:aF};function aH(a){let b=a.href;return"/"===a.pathname&&b.endsWith("/")?b.slice(0,-1):b}var aI=class extends Error{constructor(a="Unauthorized"){super(a),this.name="UnauthorizedError"}};function aJ(a){return new URL(a).href}function aK(a){let b=a.toLowerCase().replace(/\.+$/,"");return"localhost"===b||b.endsWith(".localhost")||"127.0.0.1"===b||"[::1]"===b||"::1"===b}function aL(a){if(!(("http:"===a.protocol||"https:"===a.protocol)&&aK(a.hostname)))try{(0,g.validateDownloadUrl)(a.href)}catch(b){throw new aB({message:`OAuth endpoint URL is not allowed: ${a.href}`,cause:b})}}function aM(a,b){return{...a,issuer:b.issuer,authorization_server:b.authorizationServerUrl,token_endpoint:b.tokenEndpoint}}function aN(a,b){return{...a,issuer:b.issuer,authorization_server:b.authorizationServerUrl,token_endpoint:b.tokenEndpoint}}function aO(a){if((null==a?void 0:a.authorization_server)&&a.token_endpoint)return{issuer:a.issuer,authorizationServerUrl:aJ(a.authorization_server),tokenEndpoint:aJ(a.token_endpoint)}}async function aP({provider:a,clientInformation:b,tokens:c}){var d;let e=aO(c);if(e)return e;let f=await (null==(d=a.authorizationServerInformation)?void 0:d.call(a));return f?{issuer:f.issuer,authorizationServerUrl:aJ(f.authorizationServerUrl),tokenEndpoint:aJ(f.tokenEndpoint)}:aO(b)}async function aQ({provider:a,clientInformation:b,authorizationServerInformation:c}){return a.saveAuthorizationServerInformation?(await a.saveAuthorizationServerInformation(c),!0):!!a.saveClientInformation&&(await a.saveClientInformation(aN(b,c)),!0)}function aR({storedAuthorizationServerInformation:a,currentAuthorizationServerInformation:b}){if(null!=a.issuer&&null!=b.issuer&&a.issuer!==b.issuer||a.authorizationServerUrl!==b.authorizationServerUrl||a.tokenEndpoint!==b.tokenEndpoint)throw new aB({message:"OAuth authorization server metadata does not match the metadata that issued the stored credentials"})}function aS(a){var b,c;let d,e=null!=(b=a.headers.get("www-authenticate"))?b:a.headers.get("WWW-Authenticate");if(!e)return{};let[f,g]=e.split(" ");if("bearer"!==f.toLowerCase()||!g)return{};let h=e.match(/(?:^|[,\s])resource_metadata="([^"]*)"/i),i=null==(c=e.match(/(?:^|[,\s])scope="([^"]*)"/i))?void 0:c[1];try{d=h?new URL(h[1]):void 0}catch(a){}return{resourceMetadataUrl:d,scope:i}}async function aT(a,b,c=fetch){try{return await c(a,{headers:b})}catch(d){if(d instanceof TypeError)if(b)return aT(a,void 0,c);else return;throw d}}async function aU(a,b,c=fetch){return await aT(a,{"MCP-Protocol-Version":b},c)}async function aV(a,b,c,d){var e,f,g,h;let i,j=new URL(a),k=null!=(e=null==d?void 0:d.protocolVersion)?e:q;(null==d?void 0:d.metadataUrl)?i=new URL(d.metadataUrl):(i=new URL(function(a,b="",c={}){return b.endsWith("/")&&(b=b.slice(0,-1)),c.prependPathname?`${b}/.well-known/${a}`:`/.well-known/${a}${b}`}(b,j.pathname),null!=(f=null==d?void 0:d.metadataServerUrl)?f:j)).search=j.search;let l=await aU(i,k,c);if(!(null==d?void 0:d.metadataUrl)&&(g=l,h=j.pathname,!g||g.status>=400&&g.status<500&&"/"!==h)){let a=new URL(`/.well-known/${b}`,j);l=await aU(a,k,c)}return l}async function aW(a,b,c=fetch){let d=await aV(a,"oauth-protected-resource",c,{protocolVersion:null==b?void 0:b.protocolVersion,metadataUrl:null==b?void 0:b.resourceMetadataUrl});if(!d||404===d.status)throw Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!d.ok)throw Error(`HTTP ${d.status} trying to load well-known OAuth protected resource metadata.`);return as.parse(await d.json())}function aX(a,b){if(a.issuer!==b&&(b!==new URL(b).origin||a.issuer!==`${b}/`))throw new aB({message:`OAuth authorization server metadata issuer ${a.issuer} does not match expected issuer ${b}`})}async function aY(a,{fetchFn:b=fetch,protocolVersion:c=q}={}){var d;let e={"MCP-Protocol-Version":c};for(let{url:c,type:f,expectedIssuer:g}of function(a){let b="string"==typeof a?new URL(a):a,c="/"!==b.pathname,d=b.origin,e=[];if(!c)return e.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth",expectedIssuer:d}),e.push({url:new URL("/.well-known/openid-configuration",b.origin),type:"oidc",expectedIssuer:d}),e;let f=b.pathname;f.endsWith("/")&&(f=f.slice(0,-1));let g=`${b.origin}${f}`;return e.push({url:new URL(`/.well-known/oauth-authorization-server${f}`,b.origin),type:"oauth",expectedIssuer:g}),e.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth",expectedIssuer:d}),e.push({url:new URL(`/.well-known/openid-configuration${f}`,b.origin),type:"oidc",expectedIssuer:g}),e.push({url:new URL(`${f}/.well-known/openid-configuration`,b.origin),type:"oidc",expectedIssuer:g}),e}(a)){let a=await aT(c,e,b);if(a){if(!a.ok){if(a.status>=400&&a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${"oauth"===f?"OAuth":"OpenID provider"} metadata from ${c}`)}if("oauth"===f){let b=at.parse(await a.json());return aX(b,g),b}{let b=au.parse(await a.json());if(aX(b,g),!(null==(d=b.code_challenge_methods_supported)?void 0:d.includes("S256")))throw Error(`Incompatible OIDC provider at ${c}: does not support S256 code challenge method required by MCP specification`);return b}}}}async function aZ(a,{metadata:b,clientInformation:c,redirectUrl:d,scope:e,state:f,resource:g}){let h,i="code",j="S256";if(b){if(h=new URL(b.authorization_endpoint),!b.response_types_supported.includes(i))throw Error(`Incompatible auth server: does not support response type ${i}`);if(!b.code_challenge_methods_supported||!b.code_challenge_methods_supported.includes(j))throw Error(`Incompatible auth server: does not support code challenge method ${j}`)}else h=new URL("/authorize",a);let k=await o(),l=k.code_verifier,m=k.code_challenge;return h.searchParams.set("response_type",i),h.searchParams.set("client_id",c.client_id),h.searchParams.set("code_challenge",m),h.searchParams.set("code_challenge_method",j),h.searchParams.set("redirect_uri",String(d)),f&&h.searchParams.set("state",f),e&&h.searchParams.set("scope",e),(null==e?void 0:e.includes("offline_access"))&&h.searchParams.append("prompt","consent"),g&&h.searchParams.set("resource",aH(g)),{authorizationUrl:h,codeVerifier:l}}function a$(a,b){let c=void 0!==a.client_secret;return 0===b.length?c?"client_secret_post":"none":c&&b.includes("client_secret_basic")?"client_secret_basic":c&&b.includes("client_secret_post")?"client_secret_post":b.includes("none")?"none":c?"client_secret_post":"none"}function a_(a,b,c,d){let{client_id:e,client_secret:f}=b;switch(a){case"client_secret_basic":var g,h,i,j,k=e,l=f,m=c;if(!l)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${k}:${l}`);m.set("Authorization",`Basic ${n}`);return;case"client_secret_post":g=e,h=f,(i=d).set("client_id",g),h&&i.set("client_secret",h);return;case"none":j=e,d.set("client_id",j);return;default:throw Error(`Unsupported client authentication method: ${a}`)}}async function a0(a){let b=a instanceof Response?a.status:void 0,c=a instanceof Response?await a.text():a;try{let{error:a,error_description:b,error_uri:d}=ax.parse(await (0,g.parseJSON)({text:c}));return new(aG[a]||aC)({message:b||"",cause:d})}catch(a){return new aC({message:`${b?`HTTP ${b}: `:""}Invalid OAuth error response: ${a}. Raw body: ${c}`})}}async function a1(a,{metadata:b,clientInformation:c,authorizationCode:d,codeVerifier:e,redirectUri:f,resource:g,addClientAuthentication:h,fetchFn:i}){var j;let k="authorization_code",l=(null==b?void 0:b.token_endpoint)?new URL(b.token_endpoint):new URL("/token",a);if(aL(l),(null==b?void 0:b.grant_types_supported)&&!b.grant_types_supported.includes(k))throw Error(`Incompatible auth server: does not support grant type ${k}`);let m=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),n=new URLSearchParams({grant_type:k,code:d,code_verifier:e,redirect_uri:String(f)});h?await h(m,n,a,b):a_(a$(c,null!=(j=null==b?void 0:b.token_endpoint_auth_methods_supported)?j:[]),c,m,n),g&&n.set("resource",aH(g));let o=await (null!=i?i:fetch)(l,{method:"POST",headers:m,body:n,redirect:"error"});if(!o.ok)throw await a0(o);return ar.parse(await o.json())}async function a2(a,{metadata:b,clientInformation:c,refreshToken:d,resource:e,addClientAuthentication:f,fetchFn:g}){var h;let i,j="refresh_token";if(b){if(i=new URL(b.token_endpoint),b.grant_types_supported&&!b.grant_types_supported.includes(j))throw Error(`Incompatible auth server: does not support grant type ${j}`)}else i=new URL("/token",a);aL(i);let k=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),l=new URLSearchParams({grant_type:j,refresh_token:d});f?await f(k,l,a,b):a_(a$(c,null!=(h=null==b?void 0:b.token_endpoint_auth_methods_supported)?h:[]),c,k,l),e&&l.set("resource",aH(e));let m=await (null!=g?g:fetch)(i,{method:"POST",headers:k,body:l,redirect:"error"});if(!m.ok)throw await a0(m);return ar.parse({refresh_token:d,...await m.json()})}async function a3(a,{metadata:b,clientMetadata:c,fetchFn:d}){var e;let f;if(b){if(!b.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");f=new URL(b.registration_endpoint)}else f=new URL("/register",a);aL(f);let g=null!=(e=c.application_type)?e:c.redirect_uris.every(a=>{let b=new URL(a);return("http:"===b.protocol||"https:"===b.protocol)&&aK(b.hostname)||"http:"!==b.protocol&&"https:"!==b.protocol})?"native":"web",h=await (null!=d?d:fetch)(f,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...c,application_type:g}),redirect:"error"});if(!h.ok)throw await a0(h);return ay.parse(await h.json())}async function a4(a,b){var c,d;try{return await a6(a,b)}catch(e){if(e instanceof aD||e instanceof aF)return await (null==(c=a.invalidateCredentials)?void 0:c.call(a,"all")),await a6(a,b);if(e instanceof aE)return await (null==(d=a.invalidateCredentials)?void 0:d.call(a,"tokens")),await a6(a,b);throw e}}async function a5(a,b,c){let d,e=((d=new URL("string"==typeof a?a:a.href)).hash="",d);if(b.validateResourceURL)return await b.validateResourceURL(e,null==c?void 0:c.resource);if(c){if(!function({requestedResource:a,configuredResource:b}){let c=new URL("string"==typeof a?a:a.href),d=new URL("string"==typeof b?b:b.href);if(c.origin!==d.origin||c.pathname.length<d.pathname.length)return!1;let e=c.pathname.endsWith("/")?c.pathname:c.pathname+"/",f=d.pathname.endsWith("/")?d.pathname:d.pathname+"/";return e.startsWith(f)}({requestedResource:e,configuredResource:c.resource}))throw Error(`Protected resource ${c.resource} does not match expected ${e} (or origin)`);return new URL(c.resource)}}async function a6(a,{serverUrl:b,authorizationCode:c,callbackState:d,callbackIssuer:e,scope:f,resourceMetadataUrl:g,fetchFn:h}){var i,j,k,l,m,n;let o,p;!function(a,b){if(!b)return;let c=new URL(a).origin;if(b.origin!==c)throw new aB({message:`OAuth protected resource metadata URL ${b.href} must have the same origin as the MCP server URL ${c}`})}(b,g);try{(o=await aW(b,{resourceMetadataUrl:g},h)).authorization_servers&&o.authorization_servers.length>0&&(p=o.authorization_servers[0])}catch(a){}p||(p=b);let q=await a5(b,a,o);await (null==(i=a.validateAuthorizationServerURL)?void 0:i.call(a,b,p));let r=await aY(p,{fetchFn:h}),s=(m=p,{issuer:null!=(n=null==r?void 0:r.issuer)?n:String(m),authorizationServerUrl:aJ(m),tokenEndpoint:aJ((null==r?void 0:r.token_endpoint)?new URL(r.token_endpoint):new URL("/token",m))}),t=a.clientMetadata,u=function({scope:a,resourceMetadata:b,clientMetadata:c}){var d;if(a)return a;let e=null==(d=null==b?void 0:b.scopes_supported)?void 0:d.join(" ");return e||c.scope}({scope:f,resourceMetadata:o,clientMetadata:t}),v=await Promise.resolve(a.clientInformation());if((null==v?void 0:v.issuer)!=null){let b=await aP({provider:a,clientInformation:v});b&&aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s})}if(!v){if(void 0!==c)throw Error("Existing OAuth client information is required when exchanging an authorization code");if(!a.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");v=aN(await a3(p,{metadata:r,clientMetadata:{...t,scope:u},fetchFn:h}),s),await a.saveClientInformation(v)}if(void 0!==c){if(a.storedState){let b=await a.storedState();if(void 0!==b&&b!==d)throw Error("OAuth state parameter mismatch - possible CSRF attack")}let b=await aP({provider:a,clientInformation:v});if(!b)throw new aB({message:"Stored OAuth authorization server metadata is required when exchanging an authorization code"});!function({callbackIssuer:a,expectedIssuer:b}){if(null!=a&&a!==b)throw new aB({message:`OAuth authorization response issuer ${a} does not match expected issuer ${b}`})}({callbackIssuer:e,expectedIssuer:null!=(k=null!=(j=b.issuer)?j:null==r?void 0:r.issuer)?k:String(p)}),aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s});let f=await a.codeVerifier(),g=await a1(p,{metadata:r,clientInformation:v,authorizationCode:c,codeVerifier:f,redirectUri:a.redirectUrl,resource:q,addClientAuthentication:a.addClientAuthentication,fetchFn:h});return await a.saveTokens(aM(g,s)),"AUTHORIZED"}let w=await a.tokens();if(null==w?void 0:w.refresh_token){let b=await aP({provider:a,clientInformation:v,tokens:w});b?aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s}):await (null==(l=a.invalidateCredentials)?void 0:l.call(a,"tokens"));try{if(b){let b=await a2(p,{metadata:r,clientInformation:v,refreshToken:w.refresh_token,resource:q,addClientAuthentication:a.addClientAuthentication,fetchFn:h});return await a.saveTokens(aM(b,s)),"AUTHORIZED"}}catch(a){if(!(a instanceof aB)||a instanceof aC);else throw a}}let x=a.state?await a.state():void 0;x&&a.saveState&&await a.saveState(x);let{authorizationUrl:y,codeVerifier:z}=await aZ(p,{metadata:r,clientInformation:v,state:x,redirectUrl:a.redirectUrl,scope:u,resource:q});if(!await aQ({provider:a,clientInformation:v,authorizationServerInformation:s}))throw new aB({message:"OAuth authorization server metadata must be saveable before starting authorization"});return await a.saveCodeVerifier(z),await a.redirectToAuthorization(y),"REDIRECT"}var a7=class{constructor({url:a,headers:b,authProvider:c,redirect:d="error",fetch:e}){this.connected=!1,this.url=new URL(a),this.headers=b,this.authProvider=c,this.redirectMode=d,this.fetchFn=null!=e?e:globalThis.fetch}setProtocolVersion(a){this.protocolVersion=a}async commonHeaders(a){var b;let c={...this.headers,...a,"mcp-protocol-version":null!=(b=this.protocolVersion)?b:r};if(this.authProvider){let a=await this.authProvider.tokens();(null==a?void 0:a.access_token)&&(c.Authorization=`Bearer ${a.access_token}`)}return(0,g.withUserAgentSuffix)(c,`ai-sdk/${ap}`,(0,g.getRuntimeEnvironmentUserAgent)())}async start(){return new Promise((a,b)=>{if(this.connected)return a();this.abortController=new AbortController;let c=async(d=!1)=>{var e,f,g,h,i;try{let i=await this.commonHeaders({Accept:"text/event-stream"}),k=await this.fetchFn(this.url.href,{headers:i,signal:null==(e=this.abortController)?void 0:e.signal,redirect:this.redirectMode});if(401===k.status&&this.authProvider&&!d){let{resourceMetadataUrl:a,scope:d}=aS(k);this.resourceMetadataUrl=a;try{let a=await a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:this.resourceMetadataUrl,scope:d,fetchFn:this.fetchFn});if("AUTHORIZED"!==a){let a=new aI;return null==(f=this.onerror)||f.call(this,a),b(a)}}catch(a){return null==(g=this.onerror)||g.call(this,a),b(a)}return c(!0)}if(!k.ok||!k.body){let a=`MCP SSE Transport Error: ${k.status} ${k.statusText}`;405===k.status&&(a+=". This server does not support SSE transport. Try using `http` transport instead");let c=new ao({message:a});return null==(h=this.onerror)||h.call(this,c),b(c)}let l=k.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader(),m=async()=>{var c,d,e,f,g;try{for(;;){let{done:b,value:g}=await l.read();if(b){if(this.connected)throw this.connected=!1,new ao({message:"MCP SSE Transport Error: Connection closed unexpectedly"});return}let{event:h,data:i}=g;if("endpoint"===h){if(this.endpoint)continue;let b=new URL(i,this.url);if(b.origin!==this.url.origin)throw this.connected=!1,this.endpoint=void 0,null==(c=this.sseConnection)||c.close(),null==(d=this.abortController)||d.abort(),new ao({message:`MCP SSE Transport Error: Endpoint origin does not match connection origin: ${b.origin}`});this.endpoint=b,this.connected=!0,a()}else if(void 0===h||"message"===h)try{let a=await al(i);null==(e=this.onmessage)||e.call(this,a)}catch(b){let a=new ao({message:"MCP SSE Transport Error: Failed to parse message",cause:b});null==(f=this.onerror)||f.call(this,a)}}}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(g=this.onerror)||g.call(this,a),b(a)}};this.sseConnection={close:()=>l.cancel()},m()}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(i=this.onerror)||i.call(this,a),b(a)}};c()})}async close(){var a,b,c;this.connected=!1,this.endpoint=void 0,null==(a=this.sseConnection)||a.close(),null==(b=this.abortController)||b.abort(),null==(c=this.onclose)||c.call(this)}async send(a,b){var c,d;if(null==(c=null==b?void 0:b.signal)||c.throwIfAborted(),!this.endpoint||!this.connected)throw new ao({message:"MCP SSE Transport Error: Not connected"});let e=this.endpoint,f=null==(d=this.abortController)?void 0:d.signal,g=(null==b?void 0:b.signal)==null?f:null==f?b.signal:AbortSignal.any([f,b.signal]),h=async(c=!1)=>{var d,f;try{let b=await this.commonHeaders({"Content-Type":"application/json"}),d={method:"POST",headers:b,body:JSON.stringify(a),signal:g,redirect:this.redirectMode},f=await this.fetchFn(e.href,d);if(401===f.status&&this.authProvider&&!c){let{resourceMetadataUrl:a,scope:b}=aS(f);this.resourceMetadataUrl=a;let c=await a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:this.resourceMetadataUrl,scope:b,fetchFn:this.fetchFn});if("AUTHORIZED"!==c)throw new aI;return h(!0)}if(!f.ok){let a=await f.text().catch(()=>null);throw new ao({message:`MCP SSE Transport Error: POSTing to endpoint (HTTP ${f.status}): ${a}`,statusCode:f.status,url:e.href,responseBody:null!=a?a:void 0})}}catch(a){if(null==(d=null==b?void 0:b.signal)?void 0:d.aborted)throw a;throw null==(f=this.onerror)||f.call(this,a),a}};await h()}},a8=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,a9=/^=\?base64\?.*\?=$/;function ba(a){return[...a].every(a=>{let b=a.charCodeAt(0);return 9===b||b>=32&&b<=126})&&a.trim()===a&&!a9.test(a)?a:`=?base64?${(0,g.convertUint8ArrayToBase64)(new TextEncoder().encode(a))}?=`}function bb(a){return void 0===a||"message"===a}var bc=class{constructor({url:a,headers:b,authProvider:c,redirect:d="error",initialSessionId:e,initialProtocolVersion:f,onSessionIdChange:g,onSessionExpired:h,terminateSessionOnClose:i=!0,fetch:j}){this.supportsProtocolVersionDiscovery=!0,this.supportsMcpToolParameterHeaders=!0,this.inboundReconnectAttempts=0,this.reconnectionOptions={initialReconnectionDelay:1e3,maxReconnectionDelay:3e4,reconnectionDelayGrowFactor:1.5,maxRetries:2},this.url=new URL(a),this.headers=b,this.authProvider=c,this.redirectMode=d,this.sessionId=e,this.protocolVersion=null!=f?f:r,this.onSessionIdChange=g,this.onSessionExpired=h,this.terminateSessionOnClose=i,this.fetchFn=null!=j?j:globalThis.fetch}setProtocolVersion(a){var b;if(this.protocolVersion=a,this.abortController){if(this.isModernProtocol()){null==(b=this.inboundSseConnection)||b.close(),this.inboundSseConnection=void 0;return}this.inboundSseConnection||this.startInboundSse()}}isModernProtocol(){var a;return(null!=(a=this.protocolVersion)?a:q)===q}async commonHeaders({base:a,includeSessionId:b=!0}){var c;let d={...this.headers,...a,"mcp-protocol-version":null!=(c=this.protocolVersion)?c:r};if(!this.isModernProtocol()&&b&&this.sessionId&&(d["mcp-session-id"]=this.sessionId),this.authProvider){let a=await this.authProvider.tokens();(null==a?void 0:a.access_token)&&(d.Authorization=`Bearer ${a.access_token}`)}return(0,g.withUserAgentSuffix)(d,`ai-sdk/${ap}`,(0,g.getRuntimeEnvironmentUserAgent)())}setSessionId(a){var b;this.sessionId!==a&&(this.sessionId=a,null==(b=this.onSessionIdChange)||b.call(this,a))}applySessionIdFromResponse(a){if(this.isModernProtocol())return;let b=a.headers.get("mcp-session-id");b&&this.setSessionId(b)}expireSessionId(a){var b;this.sessionId===a&&this.setSessionId(void 0),null==(b=this.onSessionExpired)||b.call(this,a)}authorizeOnce(a,b){return this.authProvider?(this.authPromise||(this.authPromise=a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:a,scope:b,fetchFn:this.fetchFn}).finally(()=>{this.authPromise=void 0})),this.authPromise):Promise.resolve("REDIRECT")}async start(){if(this.abortController)throw new ao({message:"MCP HTTP Transport Error: Transport already started. Note: client.connect() calls start() automatically."});this.abortController=new AbortController,null!=this.protocolVersion&&this.protocolVersion!==q&&this.startInboundSse()}async close(a){var b,c,d,e,f;null==(b=this.inboundSseConnection)||b.close(),null==(c=this.abortController)||c.abort();try{if(!this.isModernProtocol()&&this.sessionId&&this.terminateSessionOnClose&&this.abortController){null==(d=null==a?void 0:a.signal)||d.throwIfAborted();let b=await this.commonHeaders({base:{}});null==(e=null==a?void 0:a.signal)||e.throwIfAborted(),await this.fetchFn(this.url.href,{method:"DELETE",headers:b,signal:null==a?void 0:a.signal,redirect:this.redirectMode}).catch(()=>void 0)}}catch(a){}null==(f=this.onclose)||f.call(this)}async send(a,b){var c,d;null==(c=null==b?void 0:b.signal)||c.throwIfAborted();let e=null==(d=this.abortController)?void 0:d.signal,f=(null==b?void 0:b.signal)==null?e:null==e?b.signal:AbortSignal.any([e,b.signal]),g=async(c=!1)=>{var d,e,h,i,k,l,m,n;try{let m="method"in a&&"initialize"===a.method,n=m?void 0:this.sessionId,o=await this.commonHeaders({base:{"Content-Type":"application/json",Accept:"application/json, text/event-stream",...this.isModernProtocol()?null==b?void 0:b.headers:{},...this.isModernProtocol()&&"method"in a&&"id"in a?this.getStandardRequestHeaders(a):{}},includeSessionId:!m}),p={method:"POST",headers:o,body:JSON.stringify(a),signal:f,redirect:this.redirectMode},q=await this.fetchFn(this.url.href,p);if(this.applySessionIdFromResponse(q),401===q.status&&this.authProvider&&!c){let{resourceMetadataUrl:a,scope:b}=aS(q);this.resourceMetadataUrl=a;try{let a=await this.authorizeOnce(this.resourceMetadataUrl,b);if("AUTHORIZED"!==a)throw new aI}catch(a){throw null==(d=this.onerror)||d.call(this,a),a}return g(!0)}if(202===q.status){this.isModernProtocol()||this.inboundSseConnection||this.startInboundSse();return}if(!q.ok){let b=await q.text().catch(()=>null);if("id"in a&&null!=b){let c=await al(b).catch(()=>void 0);if(null!=c&&"error"in c){null==(e=this.onmessage)||e.call(this,null==c.id?{...c,id:a.id}:c);return}}let c=`MCP HTTP Transport Error: POSTing to endpoint (HTTP ${q.status}): ${b}`;404===q.status&&(!this.isModernProtocol()&&n?(this.expireSessionId(n),c+=". The MCP session expired. Create a new client without `initialSessionId` to start a fresh session"):this.isModernProtocol()||(c+=". This server does not support HTTP transport. Try using `sse` transport instead"));let d=new ao({message:c,statusCode:q.status,url:this.url.href,responseBody:null!=b?b:void 0});throw null==(h=this.onerror)||h.call(this,d),d}if(!("id"in a))return;let r=q.headers.get("content-type")||"";if(r.includes("application/json")){let a=await q.json();for(let b of Array.isArray(a)?a.map(a=>ak(a)):[ak(a)])null==(i=this.onmessage)||i.call(this,b);return}if(r.includes("text/event-stream")){if(!q.body){let a=new ao({message:"MCP HTTP Transport Error: text/event-stream response without body",statusCode:q.status,url:this.url.href});throw null==(k=this.onerror)||k.call(this,a),a}let a=q.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader();(async()=>{var c,d,e,f;try{for(;;){let{done:b,value:e}=await a.read();if(b)return;let{event:f,data:g}=e;if(bb(f))try{let a=await al(g);null==(c=this.onmessage)||c.call(this,a)}catch(b){let a=new ao({message:"MCP HTTP Transport Error: Failed to parse message",cause:b});null==(d=this.onerror)||d.call(this,a)}}}catch(a){if((null==(e=null==b?void 0:b.signal)?void 0:e.aborted)||a instanceof Error&&"AbortError"===a.name)return;null==(f=this.onerror)||f.call(this,a)}})().catch(a=>{var c,d;null!=(c=null==b?void 0:b.signal)&&c.aborted||a instanceof Error&&"AbortError"===a.name||null==(d=this.onerror)||d.call(this,a)});return}let s=new ao({message:`MCP HTTP Transport Error: Unexpected content type: ${r}`,statusCode:q.status,url:this.url.href});throw null==(l=this.onerror)||l.call(this,s),s}catch(a){if(null==(m=null==b?void 0:b.signal)?void 0:m.aborted)throw a;throw null==(n=this.onerror)||n.call(this,a),a}};await g()}getStandardRequestHeaders(a){let b={"Mcp-Method":a.method},c=a.params,d="resources/read"===a.method?null==c?void 0:c.uri:"tools/call"===a.method||"prompts/get"===a.method?null==c?void 0:c.name:void 0;return"string"==typeof d&&(b["Mcp-Name"]=ba(d)),b}getNextReconnectionDelay(a){let{initialReconnectionDelay:b,reconnectionDelayGrowFactor:c,maxReconnectionDelay:d}=this.reconnectionOptions;return Math.min(b*Math.pow(c,a),d)}scheduleInboundSseReconnection(){var a;let{maxRetries:b}=this.reconnectionOptions;if(b>0&&this.inboundReconnectAttempts>=b){null==(a=this.onerror)||a.call(this,new ao({message:`MCP HTTP Transport Error: Maximum reconnection attempts (${b}) exceeded.`}));return}let c=this.getNextReconnectionDelay(this.inboundReconnectAttempts);this.inboundReconnectAttempts+=1,setTimeout(()=>{var a;null!=(a=this.abortController)&&a.signal.aborted||this.startInboundSse(!1,this.lastInboundEventId)},c)}startInboundSse(a=!1,b){this.isModernProtocol()||this.openInboundSse(a,b).catch(a=>{var b;a instanceof Error&&"AbortError"===a.name||null==(b=this.onerror)||b.call(this,a)})}async openInboundSse(a=!1,b){var c,d,e,f,g,h;if(!this.isModernProtocol())try{let g=this.sessionId,h=await this.commonHeaders({base:{Accept:"text/event-stream"}});b&&(h["last-event-id"]=b);let i=await this.fetchFn(this.url.href,{method:"GET",headers:h,signal:null==(c=this.abortController)?void 0:c.signal,redirect:this.redirectMode});if(this.applySessionIdFromResponse(i),401===i.status&&this.authProvider&&!a){let{resourceMetadataUrl:a,scope:c}=aS(i);this.resourceMetadataUrl=a;try{let a=await this.authorizeOnce(this.resourceMetadataUrl,c);if("AUTHORIZED"!==a){let a=new aI;null==(d=this.onerror)||d.call(this,a);return}}catch(a){null==(e=this.onerror)||e.call(this,a);return}return this.openInboundSse(!0,b)}if(405===i.status)return;if(!i.ok||!i.body){404===i.status&&g&&this.expireSessionId(g);let a=new ao({message:`MCP HTTP Transport Error: GET SSE failed: ${i.status} ${i.statusText}`,statusCode:i.status,url:this.url.href});null==(f=this.onerror)||f.call(this,a);return}let k=i.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader(),l=async()=>{var a,b,c,d;try{for(;;){let{done:c,value:d}=await k.read();if(c)return;let{event:e,data:f,id:g}=d;if(g&&(this.lastInboundEventId=g),bb(e))try{let b=await al(f);null==(a=this.onmessage)||a.call(this,b)}catch(c){let a=new ao({message:"MCP HTTP Transport Error: Failed to parse message",cause:c});null==(b=this.onerror)||b.call(this,a)}}}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(c=this.onerror)||c.call(this,a),(null==(d=this.abortController)?void 0:d.signal.aborted)||this.scheduleInboundSseReconnection()}};this.inboundSseConnection={close:()=>{k.cancel().catch(a=>{var b;a instanceof Error&&"AbortError"===a.name||null==(b=this.onerror)||b.call(this,a)})}},this.inboundReconnectAttempts=0,l().catch(a=>{var b,c;a instanceof Error&&"AbortError"===a.name||(null==(b=this.onerror)||b.call(this,a),(null==(c=this.abortController)?void 0:c.signal.aborted)||this.scheduleInboundSseReconnection())})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(g=this.onerror)||g.call(this,a),(null==(h=this.abortController)?void 0:h.signal.aborted)||this.scheduleInboundSseReconnection()}}},bd=p.array(p.unknown()).transform(a=>a.filter(a=>"string"==typeof a)).optional().catch(void 0),be=p.looseObject({connectDomains:bd,resourceDomains:bd,frameDomains:bd});p.looseObject({prefersBorder:p.boolean().optional().catch(void 0),csp:be.optional().catch(void 0),permissions:p.record(p.string(),p.unknown()).optional().catch(void 0)});var bf=[-32020,-32021,-32022],bg=["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE"];function bh(a){let b=function(a){if(null!=a&&"object"==typeof a&&"statusCode"in a&&"number"==typeof a.statusCode)return a.statusCode}(a);if(null!=b)return 408===b||409===b||429===b||b>=500;if(ao.isInstance(a)&&null!=a.code)return!1;let c=function(a){if(null!=a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code)return a.code}(a);return null!=c&&bg.includes(c)}function bi({timeout:a,maxTotalTimeout:b}){return null==a?b:null==b?a:Math.min(a,b)}function bj(a,b){return null==b?a:new Promise((c,d)=>{let e=()=>{b.removeEventListener("abort",f)},f=()=>{e(),d(b.reason)};b.aborted?f():(b.addEventListener("abort",f,{once:!0}),a.then(a=>{e(),c(a)}).catch(a=>{e(),d(a)}))})}function bk({output:a}){return"content"in a&&Array.isArray(a.content)?{type:"content",value:a.content.map(a=>"text"===a.type&&"text"in a?{type:"text",text:a.text}:"image"===a.type&&"data"in a&&"mimeType"in a?{type:"file",mediaType:a.mimeType,data:{type:"data",data:a.data}}:{type:"text",text:JSON.stringify(a)})}:{type:"json",value:a}}async function bl(a){let b=new bm(a);return await b.init(),b}var bm=class{constructor({transport:a,name:b,clientName:c=null!=b?b:"ai-sdk-mcp-client",version:d="1.0.0",onUncaughtError:e,maxRetries:f,capabilities:g,initialInitializeResult:h,initializationOptions:i,protocolVersionDiscovery:j=!0}){this.requestMessageId=0,this.responseHandlers=new Map,this.serverCapabilities={},this._serverInfo={name:"",version:""},this._initializeResult={protocolVersion:r,capabilities:{},serverInfo:this._serverInfo},this.protocolEra="legacy",this.protocolVersion=r,this.toolHeaderBindings=new Map,this.isClosed=!0,this.onUncaughtError=e,this.maxRetries=function(a){if(null==a)return 0;if(!Number.isInteger(a))throw new ao({message:"maxRetries must be an integer"});if(a<0)throw new ao({message:"maxRetries must be >= 0"});return a}(f),this.clientCapabilities=null!=g?g:{},this.initialInitializeResult=h,this.initializationOptions=i,this.protocolVersionDiscovery=j,function(a){return"start"in a&&"function"==typeof a.start&&"send"in a&&"function"==typeof a.send&&"close"in a&&"function"==typeof a.close}(a)?this.transport=a:this.transport=function(a){var b;switch(a.type){case"sse":return new a7(a);case"http":return new bc({...a,initialProtocolVersion:null!=(b=a.initialProtocolVersion)?b:q});default:throw new ao({message:"Unsupported or invalid transport configuration. If you are using a custom transport, make sure it implements the MCPTransport interface."})}}(a),this.transport.onclose=()=>this.onClose(),this.transport.onerror=a=>this.onError(a),this.transport.onmessage=a=>{"method"in a?"id"in a?this.onRequestMessage(a):this.onError(new ao({message:"Unsupported message type"})):this.onResponse(a)},this.clientInfo={name:c,version:d}}get serverInfo(){return this._serverInfo}get initializeResult(){return this._initializeResult}get instructions(){return this._serverInstructions}async init(){var a;let b,c,d=null==(a=this.initializationOptions)?void 0:a.signal,e=this.initializationOptions?bi(this.initializationOptions):void 0,f=null==e?void 0:new AbortController,g=null==d?null==f?void 0:f.signal:null==f?d:AbortSignal.any([d,f.signal]);null!=e&&(b=setTimeout(()=>{c=new ao({message:`MCP client initialization timed out after ${e}ms`}),null==f||f.abort(c)},e));try{if(this.isClosed=!1,null==g||g.throwIfAborted(),await bj(this.transport.start(),g),this.initialInitializeResult){let a=B.parse(this.initialInitializeResult);return this.applyInitializeResult(a),this}if(this.protocolVersionDiscovery&&this.transport.supportsProtocolVersionDiscovery&&await this.tryProtocolDiscovery(g))return this;this.protocolEra="legacy",this.protocolVersion=r,this.setTransportProtocolVersion(this.protocolVersion);let a=await this.request({request:{method:"initialize",params:{protocolVersion:r,capabilities:this.clientCapabilities,clientInfo:this.clientInfo}},resultSchema:B,options:{signal:g}});if(void 0===a)throw new ao({message:"Server sent invalid initialize result"});return this.applyInitializeResult(a),await this.notification({method:"notifications/initialized"},{signal:g}),this}catch(a){try{await bj(this.transport.close({signal:g}),g)}catch(a){}if(this.onClose(),null!=c)throw c;if(null==d?void 0:d.aborted)throw new ao({message:"MCP client initialization was aborted",cause:d.reason});throw a}finally{null!=b&&clearTimeout(b)}}async tryProtocolDiscovery(a){this.protocolEra="modern",this.protocolVersion=q,this.setTransportProtocolVersion(this.protocolVersion);try{let b=await this.request({request:{method:"server/discover"},resultSchema:A,options:{signal:a,timeout:1e3}});return this.applyDiscoverResult(b),!0}catch(a){if(ao.isInstance(a)&&null!=a.code&&bf.includes(a.code))throw a;return!1}}applyDiscoverResult(a){var b;if(!a.supportedVersions.includes(this.protocolVersion))throw new ao({message:`Server does not support the requested protocol version: ${this.protocolVersion}`});let c=null==(b=a._meta)?void 0:b["io.modelcontextprotocol/serverInfo"];null!=c&&"object"==typeof c&&"name"in c&&"string"==typeof c.name&&"version"in c&&"string"==typeof c.version&&(this._serverInfo=c),this.serverCapabilities=a.capabilities,this._serverInstructions=a.instructions,this._initializeResult={protocolVersion:this.protocolVersion,capabilities:a.capabilities,serverInfo:this._serverInfo,instructions:a.instructions}}setTransportProtocolVersion(a){this.transport.setProtocolVersion?this.transport.setProtocolVersion(a):this.transport.protocolVersion=a}applyInitializeResult(a){if(!s.includes(a.protocolVersion))throw new ao({message:`Server's protocol version is not supported: ${a.protocolVersion}`});this.serverCapabilities=a.capabilities,this.protocolEra="legacy",this.protocolVersion=a.protocolVersion,this._serverInfo=a.serverInfo,this._initializeResult=a,this.setTransportProtocolVersion(a.protocolVersion),this._serverInstructions=a.instructions}async close(){var a;this.isClosed||(await (null==(a=this.transport)?void 0:a.close()),this.onClose())}send(a,b){return null==b?this.transport.send(a):this.transport.send(a,b)}assertCapability(a){switch(a){case"initialize":case"server/discover":break;case"completion/complete":if(!this.serverCapabilities.completions)throw new ao({message:"Server does not support completions"});break;case"tools/list":case"tools/call":if(!this.serverCapabilities.tools)throw new ao({message:"Server does not support tools"});break;case"resources/list":case"resources/read":case"resources/templates/list":if(!this.serverCapabilities.resources)throw new ao({message:"Server does not support resources"});break;case"prompts/list":case"prompts/get":if(!this.serverCapabilities.prompts)throw new ao({message:"Server does not support prompts"});break;default:throw new ao({message:`Unsupported method: ${a}`})}}async request({request:a,resultSchema:b,options:c}){return new Promise((d,e)=>{var f;let g;if(this.isClosed)return e(new ao({message:"Attempted to send a request from a closed client"}));this.assertCapability(a.method);let h=null==c?void 0:c.signal;null==h||h.throwIfAborted();let i=null==c?void 0:bi(c),j=null==i?void 0:new AbortController,k=null==h?null==j?void 0:j.signal:null==j?h:AbortSignal.any([h,j.signal]),l=this.requestMessageId++,m="modern"===this.protocolEra?{...a,params:{...a.params,_meta:{...null==(f=a.params)?void 0:f._meta,"io.modelcontextprotocol/protocolVersion":this.protocolVersion,"io.modelcontextprotocol/clientCapabilities":this.clientCapabilities,"io.modelcontextprotocol/clientInfo":this.clientInfo}}}:a,n={...m,jsonrpc:"2.0",id:l},o=this.getToolRequestHeaders(m),p=()=>{e(new ao({message:"Request was aborted",cause:null==h?void 0:h.reason}))},q=()=>{this.responseHandlers.delete(l),null==h||h.removeEventListener("abort",s),null!=g&&clearTimeout(g)},r=a=>{q(),e(a)},s=()=>{q(),p()};this.responseHandlers.set(l,a=>{if(null==h?void 0:h.aborted)return q(),p();if(a instanceof Error)return r(a);try{if("modern"===this.protocolEra&&null==a.result.resultType)throw new ao({message:"Modern MCP result is missing resultType"});if("input_required"===a.result.resultType)throw new ao({message:"Server requested additional input, but multi round-trip requests are not supported yet"});let c=b.parse(a.result);q(),d(c)}catch(a){r(ao.isInstance(a)?a:new ao({message:"Failed to parse server response",cause:a}))}}),null==h||h.addEventListener("abort",s,{once:!0}),null!=i&&(g=setTimeout(()=>{let a=new ao({message:`Request timed out after ${i}ms`});null==j||j.abort(a),r(a)},i));let t={...null==k?{}:{signal:k},...null==o?{}:{headers:o}};(0===Object.keys(t).length?this.send(n):this.send(n,t)).catch(a=>{r(a)})})}async listTools({params:a,options:b}={}){let c=await this.request({request:{method:"tools/list",params:a},resultSchema:E,options:b});return this.prepareToolDefinitions(c,(null==a?void 0:a.cursor)==null)}prepareToolDefinitions(a,b=!1){if("modern"!==this.protocolEra||!this.transport.supportsMcpToolParameterHeaders)return a;b&&this.toolHeaderBindings.clear();let c=a.tools.filter(a=>{let b=function(a){let b;if(!(0,g.isRecord)(a))return{success:!1,error:"inputSchema must be a JSON Schema object"};let c=[],d=new Set,e=(a,f,h)=>{if(null==b&&(0,g.isRecord)(a)){if("x-mcp-header"in a){if(!h||0===f.length){b="x-mcp-header is not on a statically reachable property";return}let e=a["x-mcp-header"];if("string"!=typeof e||!a8.test(e)){b="x-mcp-header must be a non-empty HTTP token";return}let g=e.toLowerCase();if(d.has(g)){b=`x-mcp-header value "${e}" is not unique`;return}let i=a.type;if("boolean"!==i&&"integer"!==i&&"string"!==i){b="x-mcp-header can only annotate boolean, integer, or string properties";return}d.add(g),c.push({headerName:e,path:f,valueType:i})}for(let[b,c]of Object.entries(a))if("x-mcp-header"!==b)if("properties"===b&&(0,g.isRecord)(c))for(let[a,b]of Object.entries(c))e(b,[...f,a],h);else e(c,f,!1)}};return e(a,[],!0),null==b?{success:!0,bindings:c}:{success:!1,error:b}}(a.inputSchema);return b.success?(this.toolHeaderBindings.set(a.name,b.bindings),!0):(this.onError(new ao({message:`Ignoring MCP tool "${a.name}": ${b.error}`})),!1)});return{...a,tools:c}}getToolRequestHeaders(a){var b;if("modern"!==this.protocolEra||"tools/call"!==a.method||"string"!=typeof(null==(b=a.params)?void 0:b.name))return;let c=this.toolHeaderBindings.get(a.params.name);if(null==c||0===c.length)return;let d=a.params.arguments;if(!(null==d||"object"!=typeof d||Array.isArray(d)))try{return function({bindings:a,args:b}){let c={};for(let d of a){let a=function(a,b){let c=a;for(let a of b){if(!(0,g.isRecord)(c))return;c=c[a]}return c}(b,d.path);if(null!=a){if("string"===d.valueType&&"string"!=typeof a||"boolean"===d.valueType&&"boolean"!=typeof a||"integer"===d.valueType&&!Number.isSafeInteger(a))throw TypeError(`Tool argument "${d.path.join(".")}" does not match its x-mcp-header type`);c[`Mcp-Param-${d.headerName}`]=ba(String(a))}}return c}({bindings:c,args:d})}catch(b){throw new ao({message:`Failed to create MCP headers for tool "${a.params.name}"`,cause:b})}}async callToolWithRetry({options:a,execute:b}){return 0===this.maxRetries?b():(0,g.retryWithExponentialBackoff)({maxRetries:this.maxRetries,abortSignal:null==a?void 0:a.signal,shouldRetry:bh,createRetryError:({message:a,errors:b})=>new ao({message:a,cause:b[b.length-1]})})(b)}async callTool({name:a,arguments:b={},options:c}){try{return this.callToolWithRetry({options:c,execute:()=>this.request({request:{method:"tools/call",params:{name:a,arguments:b}},resultSchema:R,options:c})})}catch(a){throw a}}async listResourcesInternal({params:a,options:b}={}){try{return this.request({request:{method:"resources/list",params:a},resultSchema:I,options:b})}catch(a){throw a}}async readResourceInternal({uri:a,options:b}){try{return this.request({request:{method:"resources/read",params:{uri:a}},resultSchema:U,options:b})}catch(a){throw a}}async listResourceTemplatesInternal({options:a}={}){try{return this.request({request:{method:"resources/templates/list"},resultSchema:T,options:a})}catch(a){throw a}}async listPromptsInternal({params:a,options:b}={}){try{return this.request({request:{method:"prompts/list",params:a},resultSchema:_,options:b})}catch(a){throw a}}async getPromptInternal({name:a,args:b,options:c}){try{return this.request({request:{method:"prompts/get",params:{name:a,arguments:b}},resultSchema:ab,options:c})}catch(a){throw a}}async completeInternal({options:a,...b}){return this.request({request:{method:"completion/complete",params:b},resultSchema:Y,options:a})}async notification(a,b){let c={...a,jsonrpc:"2.0"};await bj(this.send(c,(null==b?void 0:b.signal)==null?void 0:{signal:b.signal}),null==b?void 0:b.signal)}async tools({schemas:a="automatic"}={}){let b=await this.listTools(),c=[...b.tools];for(;null!=b.nextCursor;)b=await this.listTools({params:{cursor:b.nextCursor}}),c.push(...b.tools);return this.toolsFromDefinitions({...b,tools:c},{schemas:a})}toolsFromDefinitions(a,{schemas:b="automatic"}={}){var c,d;a=this.prepareToolDefinitions(a);let e={};for(let{name:f,title:h,description:j,inputSchema:k,annotations:l,_meta:m}of a.tools){let a=null!=h?h:null==l?void 0:l.title;if("automatic"!==b&&!Object.prototype.hasOwnProperty.call(b,f))continue;let n=this,o="automatic"!==b?null==(c=b[f])?void 0:c.outputSchema:void 0,p=function(a){var b,c,d,e;let f,g=(f=null==(d=a._meta)?void 0:d.ui,(0,i.isJSONObject)(f)?f:void 0),h=null!=(c=null==g?void 0:g.resourceUri)?c:null==(b=a._meta)?void 0:b["ui/resourceUri"],j=Array.isArray(e=null==g?void 0:g.visibility)?e.filter(a=>"model"===a||"app"===a):void 0;if(void 0!==h){if("string"!=typeof h||!h.startsWith("ui://"))throw Error(`Invalid MCP App resource URI: ${JSON.stringify(h)}`)}else if(null==g)return;return{...g,...null!=h?{resourceUri:h}:{},...null!=j?{visibility:j}:{}}}({_meta:m}),q={clientName:this.clientInfo.name,toolName:f,...null!=a?{title:a}:{},...null!=l?{annotations:{...null!=l.title?{title:l.title}:{},...null!=l.readOnlyHint?{readOnlyHint:l.readOnlyHint}:{},...null!=l.destructiveHint?{destructiveHint:l.destructiveHint}:{},...null!=l.idempotentHint?{idempotentHint:l.idempotentHint}:{},...null!=l.openWorldHint?{openWorldHint:l.openWorldHint}:{}}}:{},...(null==p?void 0:p.resourceUri)!=null?{app:{...p,mimeType:"text/html;profile=mcp-app"}}:{}},r=async(a,b)=>{var c;null==(c=null==b?void 0:b.abortSignal)||c.throwIfAborted();let d=await n.callTool({name:f,arguments:a,options:{signal:null==b?void 0:b.abortSignal}});return d.isError?d:null!=o?n.extractStructuredContent(d,o,f):d},s="automatic"===b?(0,g.dynamicTool)({description:j,title:a,metadata:q,inputSchema:(0,g.jsonSchema)({...k,properties:null!=(d=k.properties)?d:{},additionalProperties:!1}),execute:r,toModelOutput:bk}):(0,g.tool)({description:j,title:a,metadata:q,inputSchema:b[f].inputSchema,...null!=o?{outputSchema:o}:{},execute:r,toModelOutput:bk});e[f]={...s,_meta:m}}return e}async extractStructuredContent(a,b,c){if("structuredContent"in a&&null!=a.structuredContent){let d=await (0,g.safeValidateTypes)({value:a.structuredContent,schema:(0,g.asSchema)(b)});if(!d.success)throw new ao({message:`Tool "${c}" returned structuredContent that does not match the expected outputSchema`,cause:d.error});return d.value}if("content"in a&&Array.isArray(a.content)){let d=a.content.find(a=>"text"===a.type);if(d&&"text"in d){let a=await (0,g.safeParseJSON)({text:d.text,schema:b});if(!a.success)throw new ao({message:`Tool "${c}" returned content that does not match the expected outputSchema`,cause:a.error});return a.value}}throw new ao({message:`Tool "${c}" did not return structuredContent or parseable text content`})}listResources({params:a,options:b}={}){return this.listResourcesInternal({params:a,options:b})}readResource({uri:a,options:b}){return this.readResourceInternal({uri:a,options:b})}listResourceTemplates({options:a}={}){return this.listResourceTemplatesInternal({options:a})}experimental_listPrompts({params:a,options:b}={}){return this.listPromptsInternal({params:a,options:b})}experimental_getPrompt({name:a,arguments:b,options:c}){return this.getPromptInternal({name:a,args:b,options:c})}complete(a){return this.completeInternal(a)}onElicitationRequest(a,b){if(a!==ad)throw new ao({message:"Unsupported request schema. Only ElicitationRequestSchema is supported."});this.elicitationRequestHandler=b}async onRequestMessage(a){try{if("ping"===a.method)return void await this.transport.send({jsonrpc:"2.0",id:a.id,result:{}});if("elicitation/create"!==a.method)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32601,message:`Unsupported request method: ${a.method}`}});if(!this.elicitationRequestHandler)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32601,message:"No elicitation handler registered on client"}});let b=ad.safeParse({method:a.method,params:a.params});if(!b.success)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32602,message:`Invalid elicitation request: ${b.error.message}`,data:b.error.issues}});try{let c=await this.elicitationRequestHandler(b.data),d=ae.parse(c);await this.transport.send({jsonrpc:"2.0",id:a.id,result:d})}catch(b){await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32603,message:b instanceof Error?b.message:"Failed to handle elicitation request"}}),this.onError(b)}}catch(a){this.onError(a)}}onClose(){if(this.isClosed)return;this.isClosed=!0;let a=new ao({message:"Connection closed"});for(let b of this.responseHandlers.values())b(a);this.responseHandlers.clear()}onError(a){this.onUncaughtError&&this.onUncaughtError(a)}onResponse(a){if(null==a.id)return void this.onError(new ao({message:`Protocol error: Received a response without a message ID: ${JSON.stringify(a)}`}));let b=Number(a.id),c=this.responseHandlers.get(b);if(void 0===c)throw new ao({message:`Protocol error: Received a response for an unknown message ID: ${JSON.stringify(a)}`});this.responseHandlers.delete(b),c("result"in a?a:new ao({message:a.error.message,code:a.error.code,data:a.error.data,cause:a.error}))}};new TextEncoder,a.s(["UnauthorizedError",0,aI,"auth",0,a4,"createMCPClient",0,bl],106450)},345364,a=>{"use strict";var b,c=a.i(527990),d=a.i(912735),e=a.i(53112),f=a.i(652685),g=e.z.object({error:e.z.object({message:e.z.string(),type:e.z.string().nullish(),param:e.z.any().nullish(),code:e.z.union([e.z.string(),e.z.number()]).nullish()})}),h=(0,c.createJsonErrorResponseHandler)({errorSchema:g,errorToMessage:a=>a.error.message});function i(a){var b,c,d,e,f,g;let h,i=(g=a,null==(h=/^o(\d+)(?:-|$)/.exec(g))?void 0:Number(h[1])),j=function(a){let b=/^gpt-(\d+)(?:\.(\d+))?(?:-(.+))?$/.exec(a);if(null!=b)return{major:Number(b[1]),minor:null==b[2]?void 0:Number(b[2]),variant:b[3]}}(a),k=(null==j?void 0:j.minor)==null&&null!=(c=null==(b=null==j?void 0:j.variant)?void 0:b.startsWith("chat"))&&c,l=null!=(e=null==(d=null==j?void 0:j.variant)?void 0:d.startsWith("nano"))&&e,m=null!=j&&j.major>=6,n=null!=i&&i>=3||null!=j&&j.major>=5&&!k,o=a.startsWith("gpt-4")||null!=j&&j.major>=5&&!l&&!k||null!=i&&i>=3,p=null!=i||null!=j&&j.major>=5&&!k,q=!m&&null!=j&&(j.major>5||5===j.major&&(null!=(f=j.minor)?f:0)>=1);return{supportsFlexProcessing:n,supportsPriorityProcessing:o,supportsConfigurationUpdate:m,supportedReasoningEfforts:m?["low","medium","high","xhigh","max"]:void 0,isReasoningModel:p,systemMessageMode:p?"developer":"system",supportsNonReasoningParameters:q}}function j(a){var b,d;let e=function(a){var b;let c=n(a);if(null==c)return;if("response.failed"===c.type){let a=n(c.response),b=n(null==a?void 0:a.error);return"string"==typeof(null==b?void 0:b.message)?{message:b.message,code:o(b.code),type:"response.failed"}:void 0}let d=null!=(b=n(c.error))?b:c;return"string"==typeof d.message&&(null!=n(c.error)||"string"==typeof d.type||"code"in d||"param"in d)?{message:d.message,code:o(d.code),type:"string"==typeof d.type?d.type:void 0}:void 0}(a);if(null==e)return;let f=function(a){var b,c;let d,e="number"==typeof(d="string"==typeof(b=a.code)&&/^\d{3}$/.test(b)?Number(b):b)&&Number.isInteger(c=d)&&c>=400&&c<=599?d:void 0;if(null!=e)return e;let f=[a.code,a.type].filter(a=>"string"==typeof a||"number"==typeof a).join(" ").toLowerCase();return["insufficient_quota","rate_limit"].some(a=>f.includes(a))?429:f.includes("authentication")?401:f.includes("permission")?403:f.includes("not_found")?404:["invalid","bad_request","context_length"].some(a=>f.includes(a))?400:f.includes("overload")?503:f.includes("timeout")?504:500}(e);return(0,c.createProviderStreamError)({message:e.message,type:null!=(b=e.type)?b:void 0,code:null!=(d=e.code)?d:void 0,statusCode:f,isRetryable:function(a,b){return"insufficient_quota"!==a.code&&"insufficient_quota"!==a.type&&(408===b||409===b||429===b||b>=500)}(e,f),data:a})}async function k({stream:a,getError:b,isOutputChunk:c,isAcceptedChunk:d,acceptedGraceMs:e=50,url:g,requestBodyValues:h,responseHeaders:i}){let[n,o]=a.tee(),p=n.getReader(),q=!1;try{let a=!1;for(;;){let k;if(a){let a=await m(p.read(),e);if(a.timedOut)return o;k=a.value}else k=await p.read();if(k.done)return o;let n=k.value;if(!n.success)return o;let r=b(n.value);if(null!=r)throw q=!0,l(p).catch(()=>{}),l(o.getReader()).catch(()=>{}),function({frame:a,url:b,requestBodyValues:c,responseHeaders:d}){var e,g;let h=j(a);return new f.APICallError({message:null!=(e=null==h?void 0:h.message)?e:"OpenAI stream failed before any output was generated",url:b,requestBodyValues:c,statusCode:null!=(g=null==h?void 0:h.statusCode)?g:500,responseHeaders:d,responseBody:JSON.stringify(a),data:a,isRetryable:null==h?void 0:h.isRetryable})}({frame:r,url:g,requestBodyValues:h,responseHeaders:i});if(c(n.value))return o;a||(null==d?void 0:d(n.value))!==!0||(a=!0)}}finally{q||(p.cancel().catch(()=>{}),p.releaseLock())}}async function l(a){try{for(;!(await a.read()).done;);}catch(a){}finally{a.releaseLock()}}async function m(a,b){let c,d=a.then(a=>({timedOut:!1,value:a}));try{let a=await Promise.race([d,new Promise(a=>{c=setTimeout(()=>a({timedOut:!0}),b)})]);return a.timedOut&&d.catch(()=>{}),a}finally{clearTimeout(c)}}function n(a){return"object"==typeof a&&null!=a?a:void 0}function o(a){return"string"==typeof a||"number"==typeof a?a:void 0}function p(a){var b,d,e,f,g,h,i,j;if(null==a)return(0,c.createNullLanguageModelUsage)();let k=null!=(b=a.prompt_tokens)?b:0,l=null!=(d=a.completion_tokens)?d:0,m=null!=(f=null==(e=a.prompt_tokens_details)?void 0:e.cached_tokens)?f:0,n=null!=(h=null==(g=a.prompt_tokens_details)?void 0:g.cache_write_tokens)?h:void 0,o=null!=(j=null==(i=a.completion_tokens_details)?void 0:i.reasoning_tokens)?j:0;return{inputTokens:{total:k,noCache:k-m-(null!=n?n:0),cacheRead:m,cacheWrite:n},outputTokens:{total:l,text:Math.max(0,l-o),reasoning:o},raw:a}}function q(a){var b;return null==(b=null==a?void 0:a.openai)?void 0:b.promptCacheBreakpoint}function r({id:a,model:b,created:d}){return(0,c.createLanguageModelResponseMetadata)({id:a,model:b,created:d||void 0})}function s(a){switch(a){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}var t=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({message:e.z.object({role:e.z.literal("assistant").nullish(),content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string().nullish(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish(),annotations:e.z.array(e.z.object({type:e.z.literal("url_citation"),url_citation:e.z.object({start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()})})).nullish()}),index:e.z.number(),logprobs:e.z.object({content:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish()}).nullish(),finish_reason:e.z.string().nullish()})),usage:e.z.object({prompt_tokens:e.z.number().nullish(),completion_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),prompt_tokens_details:e.z.object({cached_tokens:e.z.number().nullish(),cache_write_tokens:e.z.number().nullish()}).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).nullish()}).nullish()}))),u=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.union([e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({delta:e.z.object({role:e.z.enum(["assistant"]).nullish(),content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({index:e.z.number(),id:e.z.string().nullish(),type:e.z.literal("function").nullish(),function:e.z.object({name:e.z.string().nullish(),arguments:e.z.string().nullish()})})).nullish(),annotations:e.z.array(e.z.object({type:e.z.literal("url_citation"),url_citation:e.z.object({start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()})})).nullish()}).nullish(),logprobs:e.z.object({content:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish()}).nullish(),finish_reason:e.z.string().nullish(),index:e.z.number()})),usage:e.z.object({prompt_tokens:e.z.number().nullish(),completion_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),prompt_tokens_details:e.z.object({cached_tokens:e.z.number().nullish(),cache_write_tokens:e.z.number().nullish()}).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).nullish()}).nullish()}),g]))),v=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({logitBias:e.z.record(e.z.coerce.number(),e.z.number()).optional(),logprobs:e.z.union([e.z.boolean(),e.z.number()]).optional(),parallelToolCalls:e.z.boolean().optional(),user:e.z.string().optional(),reasoningEffort:e.z.enum(["none","minimal","low","medium","high","xhigh","max"]).optional(),maxCompletionTokens:e.z.number().optional(),store:e.z.boolean().optional(),metadata:e.z.record(e.z.string().max(64),e.z.string().max(512)).optional(),prediction:e.z.record(e.z.string(),e.z.any()).optional(),serviceTier:e.z.enum(["auto","flex","priority","fast","ultrafast","default"]).optional(),strictJsonSchema:e.z.boolean().optional(),textVerbosity:e.z.enum(["low","medium","high"]).optional(),promptCacheKey:e.z.string().optional(),promptCacheOptions:e.z.object({mode:e.z.enum(["implicit","explicit"]).optional(),ttl:e.z.literal("30m").optional()}).optional(),promptCacheRetention:e.z.enum(["in_memory","24h"]).optional(),safetyIdentifier:e.z.string().optional(),systemMessageMode:e.z.enum(["system","developer","remove"]).optional(),forceReasoning:e.z.boolean().optional()}))),w=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:g,frequencyPenalty:h,presencePenalty:j,stopSequences:k,responseFormat:l,seed:m,tools:n,toolChoice:o,reasoning:p,providerOptions:r}){var s,t,u,w,x,y;let z=[],A=null!=(s=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:r,schema:v}))?s:{},B=i(this.modelId),C=null!=(t=A.reasoningEffort)?t:(0,c.isCustomReasoning)(p)?p:void 0;null==C||null==B.supportedReasoningEfforts||B.supportedReasoningEfforts.includes(C)||(z.push({type:"unsupported",feature:"reasoningEffort",details:`${this.modelId} only supports the following reasoning efforts: ${B.supportedReasoningEfforts.join(", ")}`}),C=void 0);let D=null!=(u=A.forceReasoning)?u:B.isReasoningModel;null!=g&&z.push({type:"unsupported",feature:"topK"});let{messages:E,warnings:F}=function({prompt:a,systemMessageMode:b="system"}){var d,e,g;let h=[],i=[];for(let{role:j,content:k,providerOptions:l}of a)switch(j){case"system":switch(b){case"system":{let a=q(l);h.push({role:"system",content:null==a?k:[{type:"text",text:k,prompt_cache_breakpoint:a}]});break}case"developer":{let a=q(l);h.push({role:"developer",content:null==a?k:[{type:"text",text:k,prompt_cache_breakpoint:a}]});break}case"remove":i.push({type:"other",message:"system messages are removed for this model"});break;default:throw Error(`Unsupported system message mode: ${b}`)}break;case"user":if(1===k.length&&"text"===k[0].type&&null==q(k[0].providerOptions)){h.push({role:"user",content:k[0].text});break}h.push({role:"user",content:k.map((a,b)=>{var d,e,g;switch(a.type){case"text":{let b=q(a.providerOptions);return{type:"text",text:a.text,...null!=b&&{prompt_cache_breakpoint:b}}}case"file":{let h=q(a.providerOptions);switch(a.data.type){case"reference":return{type:"file",file:{file_id:(0,c.resolveProviderReference)({reference:a.data.reference,provider:"openai"})},...null!=h&&{prompt_cache_breakpoint:h}};case"text":throw new f.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":{let i=(0,c.getTopLevelMediaType)(a.mediaType);if("image"===i)return{type:"image_url",image_url:{url:"url"===a.data.type?a.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:a})};base64,${(0,c.convertToBase64)(a.data.data)}`,detail:null==(e=null==(d=a.providerOptions)?void 0:d.openai)?void 0:e.imageDetail},...null!=h&&{prompt_cache_breakpoint:h}};if("audio"===i){if("url"===a.data.type)throw new f.UnsupportedFunctionalityError({functionality:"audio file parts with URLs"});let b=(0,c.resolveFullMediaType)({part:a});switch(b){case"audio/wav":return{type:"input_audio",input_audio:{data:(0,c.convertToBase64)(a.data.data),format:"wav"},...null!=h&&{prompt_cache_breakpoint:h}};case"audio/mp3":case"audio/mpeg":return{type:"input_audio",input_audio:{data:(0,c.convertToBase64)(a.data.data),format:"mp3"},...null!=h&&{prompt_cache_breakpoint:h}};default:throw new f.UnsupportedFunctionalityError({functionality:`audio content parts with media type ${b}`})}}{let d=(0,c.resolveFullMediaType)({part:a});if("application/pdf"!==d)throw new f.UnsupportedFunctionalityError({functionality:`file part media type ${d}`});if("url"===a.data.type)throw new f.UnsupportedFunctionalityError({functionality:"PDF file parts with URLs"});return{type:"file",file:{filename:null!=(g=a.filename)?g:`part-${b}.pdf`,file_data:`data:application/pdf;base64,${(0,c.convertToBase64)(a.data.data)}`},...null!=h&&{prompt_cache_breakpoint:h}}}}}}}})});break;case"assistant":{let a="",b=[],c=!1,d=[];for(let e of k)switch(e.type){case"text":{let d=q(e.providerOptions);a+=e.text,b.push({type:"text",text:e.text,...null!=d&&{prompt_cache_breakpoint:d}}),c||(c=null!=d);break}case"tool-call":d.push({id:e.toolCallId,type:"function",function:{name:e.toolName,arguments:JSON.stringify("object"!=typeof(g=e.input)||null===g||Array.isArray(g)?{}:g)}})}h.push({role:"assistant",content:c?b:d.length>0?a||null:a,tool_calls:d.length>0?d:void 0});break}case"tool":for(let a of k){let b;if("tool-approval-response"===a.type)continue;let c=a.output,f=null!=(d="content"===c.type?c.value.map(a=>q(a.providerOptions)).find(a=>null!=a):q(c.providerOptions))?d:q(a.providerOptions);switch(c.type){case"text":case"error-text":b=c.value;break;case"execution-denied":b=null!=(e=c.reason)?e:"Tool call execution denied.";break;case"content":case"json":case"error-json":b=JSON.stringify(c.value)}h.push({role:"tool",tool_call_id:a.toolCallId,content:null==f?b:[{type:"text",text:b,prompt_cache_breakpoint:f}]})}break;default:throw Error(`Unsupported role: ${j}`)}return{messages:h,warnings:i}}({prompt:a,systemMessageMode:null!=(w=A.systemMessageMode)?w:D?"developer":B.systemMessageMode});z.push(...F);let G=null==(x=A.strictJsonSchema)||x,H={model:this.modelId,logit_bias:A.logitBias,logprobs:!0===A.logprobs||"number"==typeof A.logprobs||void 0,top_logprobs:"number"==typeof A.logprobs?A.logprobs:"boolean"==typeof A.logprobs&&A.logprobs?0:void 0,user:A.user,parallel_tool_calls:A.parallelToolCalls,max_tokens:b,temperature:d,top_p:e,frequency_penalty:h,presence_penalty:j,response_format:(null==l?void 0:l.type)==="json"?null!=l.schema?{type:"json_schema",json_schema:{schema:l.schema,strict:G,name:null!=(y=l.name)?y:"response",description:l.description}}:{type:"json_object"}:void 0,stop:k,seed:m,verbosity:A.textVerbosity,max_completion_tokens:A.maxCompletionTokens,store:A.store,metadata:A.metadata,prediction:A.prediction,reasoning_effort:C,service_tier:A.serviceTier,prompt_cache_key:A.promptCacheKey,prompt_cache_options:A.promptCacheOptions,prompt_cache_retention:A.promptCacheRetention,safety_identifier:A.safetyIdentifier,messages:E};null!=B.supportedReasoningEfforts&&null!=H.prompt_cache_retention&&(H.prompt_cache_retention=void 0,z.push({type:"unsupported",feature:"promptCacheRetention",details:"promptCacheRetention is not supported by GPT-6 and later models; use promptCacheOptions instead"})),D?("none"===C&&B.supportsNonReasoningParameters||(null!=H.temperature&&(H.temperature=void 0,z.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"})),null!=H.top_p&&(H.top_p=void 0,z.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})),null!=H.logprobs&&(H.logprobs=void 0,z.push({type:"other",message:"logprobs is not supported for reasoning models"}))),null!=H.frequency_penalty&&(H.frequency_penalty=void 0,z.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"})),null!=H.presence_penalty&&(H.presence_penalty=void 0,z.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"})),null!=H.logit_bias&&(H.logit_bias=void 0,z.push({type:"other",message:"logitBias is not supported for reasoning models"})),null!=H.top_logprobs&&(H.top_logprobs=void 0,z.push({type:"other",message:"topLogprobs is not supported for reasoning models"})),null!=H.max_tokens&&(null==H.max_completion_tokens&&(H.max_completion_tokens=H.max_tokens),H.max_tokens=void 0)):(this.modelId.startsWith("gpt-4o-search-preview")||this.modelId.startsWith("gpt-4o-mini-search-preview"))&&null!=H.temperature&&(H.temperature=void 0,z.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})),"flex"!==A.serviceTier||B.supportsFlexProcessing||(z.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),H.service_tier=void 0),"priority"!==A.serviceTier&&"fast"!==A.serviceTier||B.supportsPriorityProcessing||(z.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),H.service_tier=void 0);let{tools:I,toolChoice:J,toolWarnings:K}=function({tools:a,toolChoice:b}){a=(null==a?void 0:a.length)?a:void 0;let c=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:c};let d=[];for(let b of a)"function"===b.type?d.push({type:"function",function:{name:b.name,description:b.description,parameters:b.inputSchema,...null!=b.strict?{strict:b.strict}:{}}}):c.push({type:"unsupported",feature:`tool type: ${b.type}`});if(null==b)return{tools:d,toolChoice:void 0,toolWarnings:c};let e=b.type;switch(e){case"auto":case"none":case"required":return{tools:d,toolChoice:e,toolWarnings:c};case"tool":return{tools:d,toolChoice:{type:"function",function:{name:b.toolName}},toolWarnings:c};default:throw new f.UnsupportedFunctionalityError({functionality:`tool choice type: ${e}`})}}({tools:n,toolChoice:o});return{args:{...H,tools:I,tool_choice:J},warnings:[...z,...K]}}async doGenerate(a){var b,d,e,f,g,i,j;let{args:k,warnings:l}=await this.getArgs(a),{responseHeaders:m,value:n,rawValue:o}=await (0,c.postJsonToApi)({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:k,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(t),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=n.choices[0],u=[],v=q.message.content;for(let a of(null!=v&&v.length>0&&u.push({type:"text",text:v}),null!=(e=q.message.tool_calls)?e:[]))u.push({type:"tool-call",toolCallId:a.id||(0,c.generateId)(),toolName:a.function.name,input:a.function.arguments});for(let a of null!=(f=q.message.annotations)?f:[])u.push({type:"source",sourceType:"url",id:(0,c.generateId)(),url:a.url_citation.url,title:a.url_citation.title});let w=null==(g=n.usage)?void 0:g.completion_tokens_details,x={openai:{}};return(null==w?void 0:w.accepted_prediction_tokens)!=null&&(x.openai.acceptedPredictionTokens=null==w?void 0:w.accepted_prediction_tokens),(null==w?void 0:w.rejected_prediction_tokens)!=null&&(x.openai.rejectedPredictionTokens=null==w?void 0:w.rejected_prediction_tokens),(null==(i=q.logprobs)?void 0:i.content)!=null&&(x.openai.logprobs=q.logprobs.content),{content:u,finishReason:{unified:s(q.finish_reason),raw:null!=(j=q.finish_reason)?j:void 0},usage:p(n.usage),request:{body:k},response:{...r(n),headers:m,body:o},warnings:l,providerMetadata:x}}async doStream(a){var b,d;let e,f,{args:g,warnings:i}=await this.getArgs(a),l={...g,stream:!0,stream_options:{include_usage:!0}},m=this.config.url({path:"/chat/completions",modelId:this.modelId}),{responseHeaders:n,value:o}=await (0,c.postJsonToApi)({url:m,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:l,failedResponseHandler:h,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(u),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=await k({stream:o,getError:a=>"error"in a?a.error:void 0,isOutputChunk:x,url:m,requestBodyValues:l,responseHeaders:n}),t={unified:"other",raw:void 0},v=!1,w=!1,y={openai:{}};return{stream:q.pipeThrough(new TransformStream({start(a){e=new c.StreamingToolCallTracker(a,{generateId:c.generateId,typeValidation:"if-present"}),a.enqueue({type:"stream-start",warnings:i})},transform(b,d){var g,h,i,k,l,m;if(a.includeRawChunks&&d.enqueue({type:"raw",rawValue:b.rawValue}),!b.success){t={unified:"error",raw:void 0},d.enqueue({type:"error",error:b.error});return}let n=b.value;if("error"in n){t={unified:"error",raw:void 0},d.enqueue({type:"error",error:null!=(g=j(n.error))?g:n.error});return}!v&&Object.values(r(n)).some(Boolean)&&(v=!0,d.enqueue({type:"response-metadata",...r(n)})),null!=n.usage&&(f=n.usage,(null==(h=n.usage.completion_tokens_details)?void 0:h.accepted_prediction_tokens)!=null&&(y.openai.acceptedPredictionTokens=null==(i=n.usage.completion_tokens_details)?void 0:i.accepted_prediction_tokens),(null==(k=n.usage.completion_tokens_details)?void 0:k.rejected_prediction_tokens)!=null&&(y.openai.rejectedPredictionTokens=null==(l=n.usage.completion_tokens_details)?void 0:l.rejected_prediction_tokens));let o=n.choices[0];if((null==o?void 0:o.finish_reason)!=null&&(t={unified:s(o.finish_reason),raw:o.finish_reason}),(null==(m=null==o?void 0:o.logprobs)?void 0:m.content)!=null&&(y.openai.logprobs=o.logprobs.content),(null==o?void 0:o.delta)==null)return;let p=o.delta;if(null!=p.content&&(w||(d.enqueue({type:"text-start",id:"0"}),w=!0),d.enqueue({type:"text-delta",id:"0",delta:p.content})),null!=p.tool_calls)for(let a of p.tool_calls)e.processDelta(a);if(null!=p.annotations)for(let a of p.annotations)d.enqueue({type:"source",sourceType:"url",id:(0,c.generateId)(),url:a.url_citation.url,title:a.url_citation.title})},flush(a){w&&a.enqueue({type:"text-end",id:"0"}),e.flush(),a.enqueue({type:"finish",finishReason:t,usage:p(f),...null!=y?{providerMetadata:y}:{}})}})),request:{body:l},response:{headers:n}}}};function x(a){return!("error"in a)&&a.choices.some(a=>{let b=a.delta;return(null==b?void 0:b.content)!=null&&b.content.length>0||(null==b?void 0:b.tool_calls)!=null&&b.tool_calls.length>0||(null==b?void 0:b.annotations)!=null&&b.annotations.length>0})}function y(a){var b,d,e,f;if(null==a)return(0,c.createNullLanguageModelUsage)();let g=null!=(b=a.prompt_tokens)?b:0,h=null!=(d=a.completion_tokens)?d:0;return{inputTokens:{total:null!=(e=a.prompt_tokens)?e:void 0,noCache:g,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:null!=(f=a.completion_tokens)?f:void 0,text:h,reasoning:void 0},raw:a}}function z(a){switch(a){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}var A=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({text:e.z.string(),finish_reason:e.z.string(),logprobs:e.z.object({tokens:e.z.array(e.z.string()),token_logprobs:e.z.array(e.z.number()),top_logprobs:e.z.array(e.z.record(e.z.string(),e.z.number())).nullish()}).nullish()})),usage:e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number()}).nullish()}))),B=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.union([e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({text:e.z.string(),finish_reason:e.z.string().nullish(),index:e.z.number(),logprobs:e.z.object({tokens:e.z.array(e.z.string()),token_logprobs:e.z.array(e.z.number()),top_logprobs:e.z.array(e.z.record(e.z.string(),e.z.number())).nullish()}).nullish()})),usage:e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number()}).nullish()}),g]))),C=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({echo:e.z.boolean().optional(),logitBias:e.z.record(e.z.string(),e.z.number()).optional(),suffix:e.z.string().optional(),user:e.z.string().optional(),logprobs:e.z.union([e.z.boolean(),e.z.number()]).optional()}))),D=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={},this.modelId=a,this.config=b}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:g,frequencyPenalty:h,presencePenalty:i,stopSequences:j,responseFormat:k,tools:l,toolChoice:m,seed:n,providerOptions:o}){let p=[],q={...await (0,c.parseProviderOptions)({provider:"openai",providerOptions:o,schema:C}),...await (0,c.parseProviderOptions)({provider:this.providerOptionsName,providerOptions:o,schema:C})};null!=g&&p.push({type:"unsupported",feature:"topK"}),(null==l?void 0:l.length)&&p.push({type:"unsupported",feature:"tools"}),null!=m&&p.push({type:"unsupported",feature:"toolChoice"}),null!=k&&"text"!==k.type&&p.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:r,stopSequences:s}=function({prompt:a,user:b="user",assistant:c="assistant"}){let d="";for(let{role:e,content:g}of("system"===a[0].role&&(d+=`${a[0].content}
|
|
169
170
|
|
|
170
171
|
`,a=a.slice(1)),a))switch(e){case"system":throw new f.InvalidPromptError({message:"Unexpected system message in prompt: ${content}",prompt:a});case"user":{let a=g.map(a=>{if("text"===a.type)return a.text}).filter(Boolean).join("");d+=`${b}:
|
|
171
172
|
${a}
|
|
@@ -176,7 +177,7 @@ ${a}
|
|
|
176
177
|
`;break}case"tool":throw new f.UnsupportedFunctionalityError({functionality:"tool messages"});default:throw Error(`Unsupported role: ${e}`)}return{prompt:d+=`${c}:
|
|
177
178
|
`,stopSequences:[`
|
|
178
179
|
${b}:`]}}({prompt:a}),t=[...null!=s?s:[],...null!=j?j:[]];return{args:{model:this.modelId,echo:q.echo,logit_bias:q.logitBias,logprobs:(null==q?void 0:q.logprobs)===!0?0:(null==q?void 0:q.logprobs)===!1||null==q?void 0:q.logprobs,suffix:q.suffix,user:q.user,max_tokens:b,temperature:d,top_p:e,frequency_penalty:h,presence_penalty:i,seed:n,prompt:r,stop:t.length>0?t:void 0},warnings:p}}async doGenerate(a){var b,d,e;let{args:f,warnings:g}=await this.getArgs(a),{responseHeaders:i,value:j,rawValue:k}=await (0,c.postJsonToApi)({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:f,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(A),abortSignal:a.abortSignal,fetch:this.config.fetch}),l=j.choices[0],m={openai:{}};return null!=l.logprobs&&(m.openai.logprobs=l.logprobs),{content:[{type:"text",text:l.text}],usage:y(j.usage),finishReason:{unified:z(l.finish_reason),raw:null!=(e=l.finish_reason)?e:void 0},request:{body:f},response:{...(0,c.createLanguageModelResponseMetadata)(j),headers:i,body:k},providerMetadata:m,warnings:g}}async doStream(a){var b,d;let e,{args:f,warnings:g}=await this.getArgs(a),i={...f,stream:!0,stream_options:{include_usage:!0}},l=this.config.url({path:"/completions",modelId:this.modelId}),{responseHeaders:m,value:n}=await (0,c.postJsonToApi)({url:l,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:i,failedResponseHandler:h,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(B),abortSignal:a.abortSignal,fetch:this.config.fetch}),o=await k({stream:n,getError:a=>"error"in a?a.error:void 0,isOutputChunk:E,url:l,requestBodyValues:i,responseHeaders:m}),p={unified:"other",raw:void 0},q={openai:{}},r=!0;return{stream:o.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:g})},transform(b,d){var f;if(a.includeRawChunks&&d.enqueue({type:"raw",rawValue:b.rawValue}),!b.success){p={unified:"error",raw:void 0},d.enqueue({type:"error",error:b.error});return}let g=b.value;if("error"in g){p={unified:"error",raw:void 0},d.enqueue({type:"error",error:null!=(f=j(g.error))?f:g.error});return}r&&(r=!1,d.enqueue({type:"response-metadata",...(0,c.createLanguageModelResponseMetadata)(g)}),d.enqueue({type:"text-start",id:"0"})),null!=g.usage&&(e=g.usage);let h=g.choices[0];(null==h?void 0:h.finish_reason)!=null&&(p={unified:z(h.finish_reason),raw:h.finish_reason}),(null==h?void 0:h.logprobs)!=null&&(q.openai.logprobs=h.logprobs),(null==h?void 0:h.text)!=null&&h.text.length>0&&d.enqueue({type:"text-delta",id:"0",delta:h.text})},flush(a){r||a.enqueue({type:"text-end",id:"0"}),a.enqueue({type:"finish",finishReason:p,providerMetadata:q,usage:y(e)})}})),request:{body:i},response:{headers:m}}}};function E(a){return!("error"in a)&&a.choices.some(a=>a.text.length>0)}var F=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({dimensions:e.z.number().optional(),user:e.z.string().optional()}))),G=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({data:e.z.array(e.z.object({embedding:e.z.array(e.z.number())})),usage:e.z.object({prompt_tokens:e.z.number()}).nullish()}))),H=class a{constructor(a,c){this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this[b]=3e5,this.supportsParallelCalls=!0,this.modelId=a,this.config=c}static[(b=c.EXPERIMENTAL_EMBEDDING_MODEL_MAX_INPUT_BYTES_PER_CALL,d.WORKFLOW_SERIALIZE)](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doEmbed({values:a,headers:b,abortSignal:d,providerOptions:e}){var g,i,j;if(a.length>this.maxEmbeddingsPerCall)throw new f.TooManyEmbeddingValuesForCallError({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:a});let k=null!=(g=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:e,schema:F}))?g:{},{responseHeaders:l,value:m,rawValue:n}=await (0,c.postJsonToApi)({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(j=(i=this.config).headers)?void 0:j.call(i),b),body:{model:this.modelId,input:a,encoding_format:"float",dimensions:k.dimensions,user:k.user},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(G),abortSignal:d,fetch:this.config.fetch});return{warnings:[],embeddings:m.data.map(a=>a.embedding),usage:m.usage?{tokens:m.usage.prompt_tokens}:void 0,response:{headers:l,body:n}}}},I=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),bytes:e.z.number().nullish(),created_at:e.z.number().nullish(),filename:e.z.string().nullish(),purpose:e.z.string().nullish(),status:e.z.string().nullish(),expires_at:e.z.number().nullish()}))),J=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),deleted:e.z.boolean()}))),K=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({purpose:e.z.string().optional(),expiresAfter:e.z.number().optional()})));function L(a){let b=encodeURIComponent(a);return"."===b?"%252E":".."===b?"%252E%252E":b}var M=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}getFileId(a){let b=a.openai;if(null==b||""===b.trim())throw new f.InvalidArgumentError({argument:"file",message:"file reference is missing an 'openai' file id."});return b}getHeaders(a){return(0,c.combineHeaders)(this.config.headers(),a)}async uploadFile({data:a,mediaType:b,filename:d,abortSignal:e,headers:f,providerOptions:g}){var i,j,k;let l,m;try{l=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:g,schema:K})}catch(b){throw"stream"===a.type&&await a.stream.cancel(b).catch(()=>{}),b}let n=null!=(i=null==l?void 0:l.purpose)?i:"assistants",o=this.getHeaders(f),p=`${this.config.baseURL}/files`;if("stream"===a.type){let f=[{type:"field",name:"purpose",value:n}];(null==l?void 0:l.expiresAfter)!=null&&f.push({type:"field",name:"expires_after[anchor]",value:"created_at"},{type:"field",name:"expires_after[seconds]",value:String(l.expiresAfter)}),f.push({type:"file",name:"file",filename:d,mediaType:b,content:a.stream}),{value:m}=await (0,c.postMultipartStreamToApi)({url:p,headers:o,parts:f,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(I),abortSignal:e,fetch:this.config.fetch})}else{let f=new Blob([(0,c.convertInlineFileDataToUint8Array)(a)],{type:b}),g=new FormData;null!=d?g.append("file",f,d):g.append("file",f),g.append("purpose",n),(null==l?void 0:l.expiresAfter)!=null&&(g.append("expires_after[anchor]","created_at"),g.append("expires_after[seconds]",String(l.expiresAfter))),{value:m}=await (0,c.postFormDataToApi)({url:p,headers:o,formData:g,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(I),abortSignal:e,fetch:this.config.fetch})}return{warnings:[],providerReference:{openai:m.id},...(null!=(j=m.filename)?j:d)?{filename:null!=(k=m.filename)?k:d}:{},...null!=b?{mediaType:b}:{},...null!=m.bytes?{byteSize:m.bytes}:{},...null!=m.created_at?{createdAt:new Date(1e3*m.created_at)}:{},...null!=m.expires_at?{expiresAt:new Date(1e3*m.expires_at)}:{},providerMetadata:{openai:this.toFileMetadata(m)}}}async getFileMetadata({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${L(e)}`,headers:this.getHeaders(d),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(I),abortSignal:b,fetch:this.config.fetch,validateUrl:!1});return{warnings:[],providerReference:{openai:f.id},...null!=f.filename?{filename:f.filename}:{},...null!=f.bytes?{byteSize:f.bytes}:{},...null!=f.created_at?{createdAt:new Date(1e3*f.created_at)}:{},...null!=f.expires_at?{expiresAt:new Date(1e3*f.expires_at)}:{},providerMetadata:{openai:this.toFileMetadata(f)}}}async downloadFile({file:a,abortSignal:b,headers:d}){var e;let f=this.getFileId(a),{value:g,responseHeaders:i}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${L(f)}/content`,headers:this.getHeaders(d),failedResponseHandler:h,successfulResponseHandler:(0,c.createBinaryStreamResponseHandler)(),abortSignal:b,fetch:this.config.fetch,validateUrl:!1}),j=null==(e=null==i?void 0:i["content-type"])?void 0:e.split(";")[0].trim();return{warnings:[],content:g,...j?{mediaType:j}:{}}}async deleteFile({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.deleteFromApi)({url:`${this.config.baseURL}/files/${L(e)}`,headers:this.getHeaders(d),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(J),abortSignal:b,fetch:this.config.fetch});return{warnings:[],providerReference:{openai:f.id},deleted:f.deleted}}toFileMetadata(a){return{...null!=a.filename?{filename:a.filename}:{},...null!=a.purpose?{purpose:a.purpose}:{},...null!=a.bytes?{bytes:a.bytes}:{},...null!=a.created_at?{createdAt:a.created_at}:{},...null!=a.status?{status:a.status}:{},...null!=a.expires_at?{expiresAt:a.expires_at}:{}}}},N=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({created:e.z.number().nullish(),data:e.z.array(e.z.object({b64_json:e.z.string(),revised_prompt:e.z.string().nullish()})),background:e.z.string().nullish(),output_format:e.z.string().nullish(),size:e.z.string().nullish(),quality:e.z.string().nullish(),usage:e.z.object({input_tokens:e.z.number().nullish(),output_tokens:e.z.number().nullish(),total_tokens:e.z.number().nullish(),input_tokens_details:e.z.object({image_tokens:e.z.number().nullish(),text_tokens:e.z.number().nullish()}).nullish()}).nullish()}))),O={"dall-e-3":1,"dall-e-2":10,"gpt-image-1":10,"gpt-image-1-mini":10,"gpt-image-1.5":10,"gpt-image-2":10,"chatgpt-image-latest":10},P=["chatgpt-image-","gpt-image-"],Q=e.z.object({quality:e.z.enum(["standard","hd","low","medium","high","auto"]).optional(),background:e.z.enum(["transparent","opaque","auto"]).optional(),outputFormat:e.z.enum(["png","jpeg","webp"]).optional(),outputCompression:e.z.number().int().min(0).max(100).optional(),user:e.z.string().optional()});(0,c.lazySchema)(()=>(0,c.zodSchema)(Q));var R=(0,c.lazySchema)(()=>(0,c.zodSchema)(Q.extend({style:e.z.enum(["vivid","natural"]).optional(),moderation:e.z.enum(["auto","low"]).optional()}))),S=(0,c.lazySchema)(()=>(0,c.zodSchema)(Q.extend({inputFidelity:e.z.enum(["high","low"]).optional()}))),T=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get maxImagesPerCall(){var a,b;return null!=(b=O[a=this.modelId])?b:a.startsWith("gpt-image-")?10:1}get provider(){return this.config.provider}async doGenerate({prompt:a,files:b,mask:d,n:e,size:f,aspectRatio:g,seed:i,providerOptions:j,headers:k,abortSignal:l}){var m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B;let C=[];null!=g&&C.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."}),null!=i&&C.push({type:"unsupported",feature:"seed"});let D=null!=(o=null==(n=null==(m=this.config._internal)?void 0:m.currentDate)?void 0:n.call(m))?o:new Date;if(null!=b){let g=null!=(p=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:j,schema:S}))?p:{},{value:i,responseHeaders:m}=await (0,c.postFormDataToApi)({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(r=(q=this.config).headers)?void 0:r.call(q),k),formData:(0,c.convertToFormData)({model:this.modelId,prompt:a,image:await Promise.all(b.map(a=>"file"===a.type?new Blob([a.data instanceof Uint8Array?new Blob([a.data],{type:a.mediaType}):new Blob([(0,c.convertBase64ToUint8Array)(a.data)],{type:a.mediaType})],{type:a.mediaType}):(0,c.downloadBlob)(a.url))),mask:null!=d?await V(d):void 0,n:e,size:f,quality:g.quality,background:g.background,output_format:g.outputFormat,output_compression:g.outputCompression,input_fidelity:g.inputFidelity,user:g.user}),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(N),abortSignal:l,fetch:this.config.fetch});return{images:i.data.map(a=>a.b64_json),warnings:C,usage:null!=i.usage?{inputTokens:null!=(s=i.usage.input_tokens)?s:void 0,outputTokens:null!=(t=i.usage.output_tokens)?t:void 0,totalTokens:null!=(u=i.usage.total_tokens)?u:void 0}:void 0,response:{timestamp:D,modelId:this.modelId,headers:m},providerMetadata:{openai:{images:i.data.map((a,b)=>{var c,d,e,f,g,h;return{...a.revised_prompt?{revisedPrompt:a.revised_prompt}:{},created:null!=(c=i.created)?c:void 0,size:null!=(d=i.size)?d:void 0,quality:null!=(e=i.quality)?e:void 0,background:null!=(f=i.background)?f:void 0,outputFormat:null!=(g=i.output_format)?g:void 0,...U(null==(h=i.usage)?void 0:h.input_tokens_details,b,i.data.length)}})}}}}let E=null!=(v=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:j,schema:R}))?v:{},{value:F,responseHeaders:G}=await (0,c.postJsonToApi)({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(x=(w=this.config).headers)?void 0:x.call(w),k),body:{model:this.modelId,prompt:a,n:e,size:f,quality:E.quality,style:E.style,background:E.background,moderation:E.moderation,output_format:E.outputFormat,output_compression:E.outputCompression,user:E.user,...(B=this.modelId,!P.some(a=>B.startsWith(a)))?{response_format:"b64_json"}:{}},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(N),abortSignal:l,fetch:this.config.fetch});return{images:F.data.map(a=>a.b64_json),warnings:C,usage:null!=F.usage?{inputTokens:null!=(y=F.usage.input_tokens)?y:void 0,outputTokens:null!=(z=F.usage.output_tokens)?z:void 0,totalTokens:null!=(A=F.usage.total_tokens)?A:void 0}:void 0,response:{timestamp:D,modelId:this.modelId,headers:G},providerMetadata:{openai:{images:F.data.map((a,b)=>{var c,d,e,f,g,h;return{...a.revised_prompt?{revisedPrompt:a.revised_prompt}:{},created:null!=(c=F.created)?c:void 0,size:null!=(d=F.size)?d:void 0,quality:null!=(e=F.quality)?e:void 0,background:null!=(f=F.background)?f:void 0,outputFormat:null!=(g=F.output_format)?g:void 0,...U(null==(h=F.usage)?void 0:h.input_tokens_details,b,F.data.length)}})}}}}};function U(a,b,c){if(null==a)return{};let d={};if(null!=a.image_tokens){let e=Math.floor(a.image_tokens/c),f=a.image_tokens-e*(c-1);d.imageTokens=b===c-1?f:e}if(null!=a.text_tokens){let e=Math.floor(a.text_tokens/c),f=a.text_tokens-e*(c-1);d.textTokens=b===c-1?f:e}return d}async function V(a){return a?"url"===a.type?(0,c.downloadBlob)(a.url):new Blob([a.data instanceof Uint8Array?a.data:(0,c.convertBase64ToUint8Array)(a.data)],{type:a.mediaType}):void 0}var W=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({callId:e.z.string(),operation:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("create_file"),path:e.z.string(),diff:e.z.string()}),e.z.object({type:e.z.literal("delete_file"),path:e.z.string()}),e.z.object({type:e.z.literal("update_file"),path:e.z.string(),diff:e.z.string()})])}))),X=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({status:e.z.enum(["completed","failed"]),output:e.z.string().optional()})));(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({})));var Y=(0,c.createProviderDefinedToolFactoryWithOutputSchema)({id:"openai.apply_patch",inputSchema:W,outputSchema:X}),Z=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({code:e.z.string().nullish(),containerId:e.z.string()}))),$=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({outputs:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("logs"),logs:e.z.string()}),e.z.object({type:e.z.literal("image"),url:e.z.string()})])).nullish()}))),_=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({container:e.z.union([e.z.string(),e.z.object({fileIds:e.z.array(e.z.string()).optional()})]).optional()}))),aa=(0,c.createProviderExecutedToolFactory)({id:"openai.code_interpreter",inputSchema:Z,outputSchema:$}),ab=e.z.object({id:e.z.string(),code:e.z.string().optional(),message:e.z.string().optional()}),ac=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("click"),button:e.z.enum(["left","right","wheel","back","forward"]),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("double_click"),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("drag"),path:e.z.array(e.z.object({x:e.z.number(),y:e.z.number()})),keys:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("keypress"),keys:e.z.array(e.z.string())}),e.z.object({type:e.z.literal("move"),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("screenshot")}),e.z.object({type:e.z.literal("scroll"),x:e.z.number(),y:e.z.number(),scrollX:e.z.number(),scrollY:e.z.number(),keys:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("type"),text:e.z.string()}),e.z.object({type:e.z.literal("wait")})]),ad=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({actions:e.z.array(ac),pendingSafetyChecks:e.z.array(ab),status:e.z.enum(["in_progress","completed","incomplete"])}))),ae=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({output:e.z.union([e.z.object({type:e.z.literal("computer_screenshot"),imageUrl:e.z.string(),fileId:e.z.string().optional(),detail:e.z.enum(["auto","low","high","original"]).optional()}),e.z.object({type:e.z.literal("computer_screenshot"),fileId:e.z.string(),imageUrl:e.z.string().optional(),detail:e.z.enum(["auto","low","high","original"]).optional()})]),acknowledgedSafetyChecks:e.z.array(ab).optional()}))),af=(0,c.createProviderDefinedToolFactoryWithOutputSchema)({id:"openai.computer",inputSchema:ad,outputSchema:ae}),ag=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({description:e.z.string().optional(),format:e.z.union([e.z.object({type:e.z.literal("grammar"),syntax:e.z.enum(["regex","lark"]),definition:e.z.string()}),e.z.object({type:e.z.literal("text")})]).optional()}))),ah=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.string())),ai=(0,c.createProviderDefinedToolFactory)({id:"openai.custom",inputSchema:ah}),aj=e.z.object({key:e.z.string(),type:e.z.enum(["eq","ne","gt","gte","lt","lte","in","nin"]),value:e.z.union([e.z.string(),e.z.number(),e.z.boolean(),e.z.array(e.z.string())])}),ak=e.z.object({type:e.z.enum(["and","or"]),filters:e.z.array(e.z.union([aj,e.z.lazy(()=>ak)]))}),al=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({vectorStoreIds:e.z.array(e.z.string()),maxNumResults:e.z.number().optional(),ranking:e.z.object({ranker:e.z.string().optional(),scoreThreshold:e.z.number().optional()}).optional(),filters:e.z.union([aj,ak]).optional()}))),am=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({queries:e.z.array(e.z.string()),results:e.z.array(e.z.object({attributes:e.z.record(e.z.string(),e.z.unknown()),fileId:e.z.string(),filename:e.z.string(),score:e.z.number(),text:e.z.string()})).nullable()}))),an=(0,c.createProviderExecutedToolFactory)({id:"openai.file_search",inputSchema:e.z.object({}),outputSchema:am}),ao=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.enum(["generate","edit","auto"]).optional(),background:e.z.enum(["auto","opaque","transparent"]).optional(),inputFidelity:e.z.enum(["low","high"]).optional(),inputImageMask:e.z.object({fileId:e.z.string().optional(),imageUrl:e.z.string().optional()}).optional(),model:e.z.string().optional(),moderation:e.z.enum(["auto","low"]).optional(),outputCompression:e.z.number().int().min(0).max(100).optional(),outputFormat:e.z.enum(["png","jpeg","webp"]).optional(),partialImages:e.z.number().int().min(0).max(3).optional(),quality:e.z.enum(["auto","low","medium","high"]).optional(),size:e.z.union([e.z.enum(["1024x1024","1024x1536","1536x1024","auto"]),e.z.string().regex(/^\d+x\d+$/)]).optional()}).strict())),ap=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),aq=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({result:e.z.string()}))),ar=(0,c.createProviderExecutedToolFactory)({id:"openai.image_generation",inputSchema:ap,outputSchema:aq}),as=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.object({type:e.z.literal("exec"),command:e.z.array(e.z.string()),timeoutMs:e.z.number().optional(),user:e.z.string().optional(),workingDirectory:e.z.string().optional(),env:e.z.record(e.z.string(),e.z.string()).optional()})}))),at=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({output:e.z.string()}))),au=(0,c.createProviderDefinedToolFactoryWithOutputSchema)({id:"openai.local_shell",inputSchema:as,outputSchema:at}),av=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.object({commands:e.z.array(e.z.string()),timeoutMs:e.z.number().optional(),maxOutputLength:e.z.number().optional()})}))),aw=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({output:e.z.array(e.z.object({stdout:e.z.string(),stderr:e.z.string(),outcome:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("timeout")}),e.z.object({type:e.z.literal("exit"),exitCode:e.z.number()})])}))}))),ax=e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("skillReference"),providerReference:e.z.record(e.z.string(),e.z.string()),version:e.z.string().optional()}),e.z.object({type:e.z.literal("inline"),name:e.z.string(),description:e.z.string(),source:e.z.object({type:e.z.literal("base64"),mediaType:e.z.literal("application/zip"),data:e.z.string()})})])).optional(),ay=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({environment:e.z.union([e.z.object({type:e.z.literal("containerAuto"),fileIds:e.z.array(e.z.string()).optional(),memoryLimit:e.z.enum(["1g","4g","16g","64g"]).optional(),networkPolicy:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("disabled")}),e.z.object({type:e.z.literal("allowlist"),allowedDomains:e.z.array(e.z.string()),domainSecrets:e.z.array(e.z.object({domain:e.z.string(),name:e.z.string(),value:e.z.string()})).optional()})]).optional(),skills:ax}),e.z.object({type:e.z.literal("containerReference"),containerId:e.z.string()}),e.z.object({type:e.z.literal("local").optional(),skills:e.z.array(e.z.object({name:e.z.string(),description:e.z.string(),path:e.z.string()})).optional()})]).optional()}))),az=(0,c.createProviderDefinedToolFactoryWithOutputSchema)({id:"openai.shell",inputSchema:av,outputSchema:aw}),aA=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({execution:e.z.enum(["server","client"]).optional(),description:e.z.string().optional(),parameters:e.z.record(e.z.string(),e.z.unknown()).optional()}))),aB=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({arguments:e.z.unknown().optional(),call_id:e.z.string().nullish()}))),aC=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({tools:e.z.array(e.z.record(e.z.string(),e.z.unknown()))}))),aD=(0,c.createProviderDefinedToolFactoryWithOutputSchema)({id:"openai.tool_search",inputSchema:aB,outputSchema:aC}),aE=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({externalWebAccess:e.z.boolean().optional(),filters:e.z.object({allowedDomains:e.z.array(e.z.string()).optional(),blockedDomains:e.z.array(e.z.string()).optional()}).optional(),searchContextSize:e.z.enum(["low","medium","high"]).optional(),userLocation:e.z.object({type:e.z.literal("approximate"),country:e.z.string().optional(),city:e.z.string().optional(),region:e.z.string().optional(),timezone:e.z.string().optional()}).optional()}))),aF=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),aG=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().optional(),queries:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("openPage"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("findInPage"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).optional(),sources:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("url"),url:e.z.string()}),e.z.object({type:e.z.literal("api"),name:e.z.string()})])).optional()}))),aH=(0,c.createProviderExecutedToolFactory)({id:"openai.web_search",inputSchema:aF,outputSchema:aG}),aI=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({searchContextSize:e.z.enum(["low","medium","high"]).optional(),userLocation:e.z.object({type:e.z.literal("approximate"),country:e.z.string().optional(),city:e.z.string().optional(),region:e.z.string().optional(),timezone:e.z.string().optional()}).optional()}))),aJ=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),aK=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().optional()}),e.z.object({type:e.z.literal("openPage"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("findInPage"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).optional()}))),aL=(0,c.createProviderExecutedToolFactory)({id:"openai.web_search_preview",inputSchema:aJ,outputSchema:aK}),aM=e.z.lazy(()=>e.z.union([e.z.string(),e.z.number(),e.z.boolean(),e.z.null(),e.z.array(aM),e.z.record(e.z.string(),aM)])),aN=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({serverLabel:e.z.string(),allowedTools:e.z.union([e.z.array(e.z.string()),e.z.object({readOnly:e.z.boolean().optional(),toolNames:e.z.array(e.z.string()).optional()})]).optional(),authorization:e.z.string().optional(),connectorId:e.z.string().optional(),headers:e.z.record(e.z.string(),e.z.string()).optional(),requireApproval:e.z.union([e.z.enum(["always","never"]),e.z.object({never:e.z.object({toolNames:e.z.array(e.z.string()).optional()}).optional()})]).optional(),serverDescription:e.z.string().optional(),serverUrl:e.z.string().optional()}).refine(a=>null!=a.serverUrl||null!=a.connectorId,"One of serverUrl or connectorId must be provided."))),aO=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),aP=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({type:e.z.literal("call"),serverLabel:e.z.string(),name:e.z.string(),arguments:e.z.string(),output:e.z.string().nullish(),error:e.z.union([e.z.string(),aM]).optional()}))),aQ=(0,c.createProviderExecutedToolFactory)({id:"openai.mcp",inputSchema:aO,outputSchema:aP}),aR=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({code:e.z.string(),fingerprint:e.z.string()}))),aS=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({result:e.z.string(),status:e.z.enum(["completed","incomplete"])}))),aT=(0,c.createProviderExecutedToolFactory)({id:"openai.programmatic_tool_calling",inputSchema:aR,outputSchema:aS,supportsDeferredResults:!0}),aU={applyPatch:Y,customTool:a=>ai(a),codeInterpreter:(a={})=>aa(a),computer:(a={})=>af(a),fileSearch:an,imageGeneration:(a={})=>ar(a),localShell:au,shell:az,webSearchPreview:aL,webSearch:(a={})=>aH(a),mcp:a=>aQ(a),programmaticToolCalling:()=>(0,c.experimental_toolCaller)(aT({}),{type:"provider",prepareProviderOptions:a=>{var b;let c=null==a?void 0:a.openai;return{...a,openai:{...c,allowedCallers:[...new Set([...null!=(b=null==c?void 0:c.allowedCallers)?b:[],"programmatic"])]}}}}),toolSearch:(a={})=>aD(a)};function aV(a){if(null==a.provider)throw Error("OpenAI model is missing provider after workflow deserialization.");return{...a,provider:a.provider,url:"function"==typeof a.url?a.url:({path:b})=>{if(null==a.baseURL)throw Error("OpenAI model is missing baseURL after workflow deserialization.");return`${a.baseURL}${b}`},headers:"function"==typeof a.headers?a.headers:null==a.headers?void 0:()=>a.headers}}function aW(a){var b,d,e,f,g,h;if(null==a)return(0,c.createNullLanguageModelUsage)();let i=a.input_tokens,j=a.output_tokens,k=null!=(d=null==(b=a.input_tokens_details)?void 0:b.cached_tokens)?d:0,l=null!=(f=null==(e=a.input_tokens_details)?void 0:e.cache_write_tokens)?f:void 0,m=null!=(h=null==(g=a.output_tokens_details)?void 0:g.reasoning_tokens)?h:0;return{inputTokens:{total:i,noCache:i-k-(null!=l?l:0),cacheRead:k,cacheWrite:l},outputTokens:{total:j,text:j-m,reasoning:m},raw:a}}function aX({finishReason:a,hasFunctionCall:b}){switch(a){case void 0:case null:return b?"tool-calls":"stop";case"max_output_tokens":return"length";case"content_filter":return"content-filter";default:return b?"tool-calls":"other"}}var aY=e.z.lazy(()=>e.z.union([e.z.string(),e.z.number(),e.z.boolean(),e.z.null(),e.z.array(aY),e.z.record(e.z.string(),aY.optional())])),aZ=e.z.record(e.z.string(),aY.optional()),a$=e.z.intersection(aZ,e.z.object({input_tokens:e.z.number(),input_tokens_details:e.z.intersection(aZ,e.z.object({cached_tokens:e.z.number().nullish(),cache_write_tokens:e.z.number().nullish(),orchestration_input_tokens:e.z.number().nullish(),orchestration_input_cached_tokens:e.z.number().nullish()})).nullish(),output_tokens:e.z.number(),output_tokens_details:e.z.intersection(aZ,e.z.object({reasoning_tokens:e.z.number().nullish(),orchestration_output_tokens:e.z.number().nullish()})).nullish(),total_tokens:e.z.number().optional()})),a_=e.z.object({id:e.z.string(),code:e.z.string().nullish(),message:e.z.string().nullish()}),a0=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("click"),button:e.z.enum(["left","right","wheel","back","forward"]),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).nullish()}),e.z.object({type:e.z.literal("double_click"),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).nullish()}),e.z.object({type:e.z.literal("drag"),path:e.z.array(e.z.object({x:e.z.number(),y:e.z.number()})),keys:e.z.array(e.z.string()).nullish()}),e.z.object({type:e.z.literal("keypress"),keys:e.z.array(e.z.string())}),e.z.object({type:e.z.literal("move"),x:e.z.number(),y:e.z.number(),keys:e.z.array(e.z.string()).nullish()}),e.z.object({type:e.z.literal("screenshot")}),e.z.object({type:e.z.literal("scroll"),x:e.z.number(),y:e.z.number(),scroll_x:e.z.number(),scroll_y:e.z.number(),keys:e.z.array(e.z.string()).nullish()}),e.z.object({type:e.z.literal("type"),text:e.z.string()}),e.z.object({type:e.z.literal("wait")})]),a1=e.z.object({type:e.z.literal("computer_call"),id:e.z.string(),call_id:e.z.string().nullish(),status:e.z.enum(["in_progress","completed","incomplete"]),action:a0.nullish(),actions:e.z.array(a0).nullish(),pending_safety_checks:e.z.array(a_).nullish()}),a2=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("direct")}),e.z.object({type:e.z.literal("program"),caller_id:e.z.string()})]),a3=e.z.object({type:e.z.literal("program"),id:e.z.string(),call_id:e.z.string(),code:e.z.string(),fingerprint:e.z.string()}),a4=e.z.object({type:e.z.literal("program_output"),id:e.z.string(),call_id:e.z.string(),result:e.z.string(),status:e.z.enum(["completed","incomplete"])}),a5=e.z.object({type:e.z.literal("local_shell_call"),id:e.z.string(),call_id:e.z.string(),action:e.z.object({type:e.z.literal("exec"),command:e.z.array(e.z.string()),timeout_ms:e.z.number().optional(),user:e.z.string().optional(),working_directory:e.z.string().optional(),env:e.z.record(e.z.string(),e.z.string()).optional()})}),a6=e.z.object({type:e.z.literal("error"),sequence_number:e.z.number(),error:e.z.object({type:e.z.string(),code:e.z.string(),message:e.z.string(),param:e.z.string().nullish()})}),a7=e.z.object({type:e.z.literal("error"),sequence_number:e.z.number(),code:e.z.string().nullish(),message:e.z.string(),param:e.z.string().nullish()}),a8=new Set(["error","response.apply_patch_call_operation_diff.delta","response.apply_patch_call_operation_diff.done","response.code_interpreter_call_code.delta","response.code_interpreter_call_code.done","response.completed","response.created","response.custom_tool_call_input.delta","response.failed","response.function_call_arguments.delta","response.function_call_arguments.done","response.image_generation_call.partial_image","response.in_progress","response.incomplete","response.output_item.added","response.output_item.done","response.output_text.annotation.added","response.output_text.delta","response.reasoning_summary_part.added","response.reasoning_summary_part.done","response.reasoning_summary_text.delta"]),a9=new Set(["apply_patch_call","code_interpreter_call","compaction","computer_call","custom_tool_call","file_search_call","function_call","image_generation_call","local_shell_call","mcp_approval_request","mcp_call","mcp_list_tools","message","program","program_output","reasoning","shell_call","shell_call_output","tool_search_call","tool_search_output","web_search_call"]),ba=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.union([e.z.object({type:e.z.literal("response.output_text.delta"),item_id:e.z.string(),output_index:e.z.number().nullish(),delta:e.z.string(),logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish()}),e.z.object({type:e.z.enum(["response.completed","response.incomplete"]),response:e.z.object({incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:a$.nullish(),reasoning:e.z.object({context:e.z.string().nullish()}).nullish(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.failed"),sequence_number:e.z.number(),response:e.z.object({error:e.z.object({code:e.z.string().nullish(),message:e.z.string()}).nullish(),incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:a$.nullish(),reasoning:e.z.object({context:e.z.string().nullish()}).nullish(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.created"),response:e.z.object({id:e.z.string(),created_at:e.z.number(),model:e.z.string(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.in_progress"),response:e.z.object({id:e.z.string(),created_at:e.z.number(),model:e.z.string(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.output_item.added"),output_index:e.z.number(),item:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("message"),id:e.z.string(),phase:e.z.enum(["commentary","final_answer"]).nullish()}),e.z.object({type:e.z.literal("reasoning"),id:e.z.string(),encrypted_content:e.z.string().nullish()}),e.z.object({type:e.z.literal("function_call"),id:e.z.string(),call_id:e.z.string(),name:e.z.string(),arguments:e.z.string(),namespace:e.z.string().nullish(),caller:a2.nullish()}),a3,a4,e.z.object({type:e.z.literal("web_search_call"),id:e.z.string(),status:e.z.string()}),a1,e.z.object({type:e.z.literal("file_search_call"),id:e.z.string()}),a5,e.z.object({type:e.z.literal("image_generation_call"),id:e.z.string()}),e.z.object({type:e.z.literal("code_interpreter_call"),id:e.z.string(),container_id:e.z.string(),code:e.z.string().nullable(),outputs:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("logs"),logs:e.z.string()}),e.z.object({type:e.z.literal("image"),url:e.z.string()})])).nullable(),status:e.z.string()}),e.z.object({type:e.z.literal("mcp_call"),id:e.z.string(),status:e.z.string(),approval_request_id:e.z.string().nullish()}),e.z.object({type:e.z.literal("mcp_list_tools"),id:e.z.string()}),e.z.object({type:e.z.literal("mcp_approval_request"),id:e.z.string()}),e.z.object({type:e.z.literal("apply_patch_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed"]),operation:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("create_file"),path:e.z.string(),diff:e.z.string()}),e.z.object({type:e.z.literal("delete_file"),path:e.z.string()}),e.z.object({type:e.z.literal("update_file"),path:e.z.string(),diff:e.z.string()})])}),e.z.object({type:e.z.literal("custom_tool_call"),id:e.z.string(),call_id:e.z.string(),name:e.z.string(),input:e.z.string()}),e.z.object({type:e.z.literal("shell_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),action:e.z.object({commands:e.z.array(e.z.string())})}),e.z.object({type:e.z.literal("compaction"),id:e.z.string(),encrypted_content:e.z.string().nullish()}),e.z.object({type:e.z.literal("shell_call_output"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),output:e.z.array(e.z.object({stdout:e.z.string(),stderr:e.z.string(),outcome:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("timeout")}),e.z.object({type:e.z.literal("exit"),exit_code:e.z.number()})])}))}),e.z.object({type:e.z.literal("tool_search_call"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),arguments:e.z.unknown()}),e.z.object({type:e.z.literal("tool_search_output"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),tools:e.z.array(e.z.record(e.z.string(),aY.optional()))})])}),e.z.object({type:e.z.literal("response.output_item.done"),output_index:e.z.number(),item:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("message"),id:e.z.string(),phase:e.z.enum(["commentary","final_answer"]).nullish()}),e.z.object({type:e.z.literal("reasoning"),id:e.z.string(),encrypted_content:e.z.string().nullish()}),e.z.object({type:e.z.literal("function_call"),id:e.z.string(),call_id:e.z.string(),name:e.z.string(),arguments:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),namespace:e.z.string().nullish(),caller:a2.nullish()}),a3,a4,e.z.object({type:e.z.literal("custom_tool_call"),id:e.z.string(),call_id:e.z.string(),name:e.z.string(),input:e.z.string(),status:e.z.literal("completed")}),e.z.object({type:e.z.literal("code_interpreter_call"),id:e.z.string(),code:e.z.string().nullable(),container_id:e.z.string(),outputs:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("logs"),logs:e.z.string()}),e.z.object({type:e.z.literal("image"),url:e.z.string()})])).nullable()}),e.z.object({type:e.z.literal("image_generation_call"),id:e.z.string(),result:e.z.string()}),e.z.object({type:e.z.literal("web_search_call"),id:e.z.string(),status:e.z.string(),action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().nullish(),queries:e.z.array(e.z.string()).nullish(),sources:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("url"),url:e.z.string()}),e.z.object({type:e.z.literal("api"),name:e.z.string()})])).nullish()}),e.z.object({type:e.z.literal("open_page"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("find_in_page"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).nullish()}),e.z.object({type:e.z.literal("file_search_call"),id:e.z.string(),queries:e.z.array(e.z.string()),results:e.z.array(e.z.object({attributes:e.z.record(e.z.string(),e.z.union([e.z.string(),e.z.number(),e.z.boolean()])),file_id:e.z.string(),filename:e.z.string(),score:e.z.number(),text:e.z.string()})).nullish()}),a5,a1,e.z.object({type:e.z.literal("mcp_call"),id:e.z.string(),status:e.z.string(),arguments:e.z.string(),name:e.z.string(),server_label:e.z.string(),output:e.z.string().nullish(),error:e.z.union([e.z.string(),e.z.object({type:e.z.string().optional(),code:e.z.union([e.z.number(),e.z.string()]).optional(),message:e.z.string().optional()}).loose()]).nullish(),approval_request_id:e.z.string().nullish()}),e.z.object({type:e.z.literal("mcp_list_tools"),id:e.z.string(),server_label:e.z.string(),tools:e.z.array(e.z.object({name:e.z.string(),description:e.z.string().optional(),input_schema:e.z.any(),annotations:e.z.record(e.z.string(),e.z.unknown()).optional()})),error:e.z.union([e.z.string(),e.z.object({type:e.z.string().optional(),code:e.z.union([e.z.number(),e.z.string()]).optional(),message:e.z.string().optional()}).loose()]).optional()}),e.z.object({type:e.z.literal("mcp_approval_request"),id:e.z.string(),server_label:e.z.string(),name:e.z.string(),arguments:e.z.string(),approval_request_id:e.z.string().optional()}),e.z.object({type:e.z.literal("apply_patch_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed"]),operation:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("create_file"),path:e.z.string(),diff:e.z.string()}),e.z.object({type:e.z.literal("delete_file"),path:e.z.string()}),e.z.object({type:e.z.literal("update_file"),path:e.z.string(),diff:e.z.string()})])}),e.z.object({type:e.z.literal("shell_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),action:e.z.object({commands:e.z.array(e.z.string())})}),e.z.object({type:e.z.literal("compaction"),id:e.z.string(),encrypted_content:e.z.string()}),e.z.object({type:e.z.literal("shell_call_output"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),output:e.z.array(e.z.object({stdout:e.z.string(),stderr:e.z.string(),outcome:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("timeout")}),e.z.object({type:e.z.literal("exit"),exit_code:e.z.number()})])}))}),e.z.object({type:e.z.literal("tool_search_call"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),arguments:e.z.unknown()}),e.z.object({type:e.z.literal("tool_search_output"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),tools:e.z.array(e.z.record(e.z.string(),aY.optional()))})])}),e.z.object({type:e.z.literal("response.function_call_arguments.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.function_call_arguments.done"),item_id:e.z.string(),output_index:e.z.number(),arguments:e.z.string()}),e.z.object({type:e.z.literal("response.custom_tool_call_input.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.image_generation_call.partial_image"),item_id:e.z.string(),output_index:e.z.number(),partial_image_b64:e.z.string()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.done"),item_id:e.z.string(),output_index:e.z.number(),code:e.z.string()}),e.z.object({type:e.z.literal("response.output_text.annotation.added"),annotation:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("url_citation"),start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()}),e.z.object({type:e.z.literal("file_citation"),file_id:e.z.string(),filename:e.z.string(),index:e.z.number()}),e.z.object({type:e.z.literal("container_file_citation"),container_id:e.z.string(),file_id:e.z.string(),filename:e.z.string(),start_index:e.z.number(),end_index:e.z.number()}),e.z.object({type:e.z.literal("file_path"),file_id:e.z.string(),index:e.z.number()})])}),e.z.object({type:e.z.literal("response.reasoning_summary_part.added"),item_id:e.z.string(),output_index:e.z.number().nullish(),summary_index:e.z.number()}),e.z.object({type:e.z.literal("response.reasoning_summary_text.delta"),item_id:e.z.string(),output_index:e.z.number().nullish(),summary_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_summary_part.done"),item_id:e.z.string(),output_index:e.z.number().nullish(),summary_index:e.z.number()}),e.z.object({type:e.z.literal("response.apply_patch_call_operation_diff.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string(),obfuscation:e.z.string().nullish()}),e.z.object({type:e.z.literal("response.apply_patch_call_operation_diff.done"),item_id:e.z.string(),output_index:e.z.number(),diff:e.z.string()}),a6,a7,e.z.object({type:e.z.string()}).loose().refine(a=>!("string"==typeof a.type&&a8.has(a.type)&&(!(("response.output_item.added"===a.type||"response.output_item.done"===a.type)&&(0,c.isRecord)(a.item)&&"string"==typeof a.item.type)||a9.has(a.item.type))),{message:"Known response chunk failed schema validation"}).transform(a=>({type:"unknown_chunk",message:a.type}))]))),bb=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string().optional(),created_at:e.z.number().optional(),error:e.z.object({message:e.z.string(),type:e.z.string(),param:e.z.string().nullish(),code:e.z.string()}).nullish(),model:e.z.string().optional(),output:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("message"),role:e.z.literal("assistant"),id:e.z.string(),phase:e.z.enum(["commentary","final_answer"]).nullish(),content:e.z.array(e.z.object({type:e.z.literal("output_text"),text:e.z.string(),logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number(),top_logprobs:e.z.array(e.z.object({token:e.z.string(),logprob:e.z.number()}))})).nullish(),annotations:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("url_citation"),start_index:e.z.number(),end_index:e.z.number(),url:e.z.string(),title:e.z.string()}),e.z.object({type:e.z.literal("file_citation"),file_id:e.z.string(),filename:e.z.string(),index:e.z.number()}),e.z.object({type:e.z.literal("container_file_citation"),container_id:e.z.string(),file_id:e.z.string(),filename:e.z.string(),start_index:e.z.number(),end_index:e.z.number()}),e.z.object({type:e.z.literal("file_path"),file_id:e.z.string(),index:e.z.number()})]))}))}),e.z.object({type:e.z.literal("web_search_call"),id:e.z.string(),status:e.z.string(),action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().nullish(),queries:e.z.array(e.z.string()).nullish(),sources:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("url"),url:e.z.string()}),e.z.object({type:e.z.literal("api"),name:e.z.string()})])).nullish()}),e.z.object({type:e.z.literal("open_page"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("find_in_page"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).nullish()}),e.z.object({type:e.z.literal("file_search_call"),id:e.z.string(),queries:e.z.array(e.z.string()),results:e.z.array(e.z.object({attributes:e.z.record(e.z.string(),e.z.union([e.z.string(),e.z.number(),e.z.boolean()])),file_id:e.z.string(),filename:e.z.string(),score:e.z.number(),text:e.z.string()})).nullish()}),e.z.object({type:e.z.literal("code_interpreter_call"),id:e.z.string(),code:e.z.string().nullable(),container_id:e.z.string(),outputs:e.z.array(e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("logs"),logs:e.z.string()}),e.z.object({type:e.z.literal("image"),url:e.z.string()})])).nullable()}),e.z.object({type:e.z.literal("image_generation_call"),id:e.z.string(),result:e.z.string()}),a5,e.z.object({type:e.z.literal("function_call"),call_id:e.z.string(),name:e.z.string(),arguments:e.z.string(),id:e.z.string(),namespace:e.z.string().nullish(),caller:a2.nullish()}),a3,a4,e.z.object({type:e.z.literal("custom_tool_call"),call_id:e.z.string(),name:e.z.string(),input:e.z.string(),id:e.z.string()}),a1,e.z.object({type:e.z.literal("reasoning"),id:e.z.string(),encrypted_content:e.z.string().nullish(),summary:e.z.array(e.z.object({type:e.z.literal("summary_text"),text:e.z.string()}))}),e.z.object({type:e.z.literal("mcp_call"),id:e.z.string(),status:e.z.string(),arguments:e.z.string(),name:e.z.string(),server_label:e.z.string(),output:e.z.string().nullish(),error:e.z.union([e.z.string(),e.z.object({type:e.z.string().optional(),code:e.z.union([e.z.number(),e.z.string()]).optional(),message:e.z.string().optional()}).loose()]).nullish(),approval_request_id:e.z.string().nullish()}),e.z.object({type:e.z.literal("mcp_list_tools"),id:e.z.string(),server_label:e.z.string(),tools:e.z.array(e.z.object({name:e.z.string(),description:e.z.string().optional(),input_schema:e.z.any(),annotations:e.z.record(e.z.string(),e.z.unknown()).optional()})),error:e.z.union([e.z.string(),e.z.object({type:e.z.string().optional(),code:e.z.union([e.z.number(),e.z.string()]).optional(),message:e.z.string().optional()}).loose()]).optional()}),e.z.object({type:e.z.literal("mcp_approval_request"),id:e.z.string(),server_label:e.z.string(),name:e.z.string(),arguments:e.z.string(),approval_request_id:e.z.string().optional()}),e.z.object({type:e.z.literal("apply_patch_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed"]),operation:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("create_file"),path:e.z.string(),diff:e.z.string()}),e.z.object({type:e.z.literal("delete_file"),path:e.z.string()}),e.z.object({type:e.z.literal("update_file"),path:e.z.string(),diff:e.z.string()})])}),e.z.object({type:e.z.literal("shell_call"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),action:e.z.object({commands:e.z.array(e.z.string())})}),e.z.object({type:e.z.literal("compaction"),id:e.z.string(),encrypted_content:e.z.string()}),e.z.object({type:e.z.literal("shell_call_output"),id:e.z.string(),call_id:e.z.string(),status:e.z.enum(["in_progress","completed","incomplete"]),output:e.z.array(e.z.object({stdout:e.z.string(),stderr:e.z.string(),outcome:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("timeout")}),e.z.object({type:e.z.literal("exit"),exit_code:e.z.number()})])}))}),e.z.object({type:e.z.literal("tool_search_call"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),arguments:e.z.unknown()}),e.z.object({type:e.z.literal("tool_search_output"),id:e.z.string(),execution:e.z.enum(["server","client"]),call_id:e.z.string().nullable(),status:e.z.enum(["in_progress","completed","incomplete"]),tools:e.z.array(e.z.record(e.z.string(),aY.optional()))})])).optional(),service_tier:e.z.string().nullish(),reasoning:e.z.object({context:e.z.string().nullish()}).nullish(),incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:a$.nullish()}))),bc="parallel",bd="functions.";function be({providerOptions:a,providerOptionsName:b}){var c;let d=null==(c=null==a?void 0:a[b])?void 0:c.parallelToolCall;if((0,f.isJSONObject)(d)&&"string"==typeof d.itemId&&"string"==typeof d.toolCallId&&"string"==typeof d.toolName&&"string"==typeof d.input&&"number"==typeof d.index&&Number.isInteger(d.index)&&"number"==typeof d.count&&Number.isInteger(d.count)&&!(d.index<0)&&!(d.count<=d.index))return d}function bf({toolName:a,tools:b}){return a===bc&&!b.some(a=>a.name===bc)}async function bg({toolCall:a,tools:b,providerOptionsName:d,itemId:e}){if(!bf({toolName:a.toolName,tools:b}))return;let g=await (0,c.safeParseJSON)({text:a.input});if(!g.success||!(0,f.isJSONObject)(g.value))return;let h=g.value.tool_uses;if(!Array.isArray(h)||0===h.length)return;let i=new Set(b.map(a=>a.name)),j=[];for(let[b,c]of h.entries()){if(!(0,f.isJSONObject)(c))return;let g=c.recipient_name,k=c.parameters;if("string"!=typeof g||!g.startsWith(bd)||!(0,f.isJSONObject)(k))return;let l=g.slice(bd.length);if(0===l.length||!i.has(l))return;j.push({type:"tool-call",toolCallId:`${a.toolCallId}_${b}`,toolName:l,input:JSON.stringify(k),providerMetadata:{[d]:{parallelToolCall:{itemId:e,toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,index:b,count:h.length}}}})}return j}function bh(a){return null==a?void 0:"program"===a.type?{type:"program",caller_id:a.callerId}:a}async function bi({output:a,toolName:b,outputSchemaToolNames:d,promptCacheBreakpoint:e,providerOptionsName:f,warnings:g}){var h;let i=null==d?void 0:d.has(b),j=a=>null==e?a:[{type:"input_text",text:a,prompt_cache_breakpoint:e}];switch(a.type){case"text":case"error-text":return j(i?JSON.stringify(a.value):a.value);case"execution-denied":{let b=null!=(h=a.reason)?h:"Tool call execution denied.";return j(i?JSON.stringify(b):b)}case"json":case"error-json":return j(JSON.stringify(a.value));case"content":return a.value.map(a=>{var b,d,e;let h=bk(a.providerOptions,f);switch(a.type){case"text":return{type:"input_text",text:a.text,...null!=h&&{prompt_cache_breakpoint:h}};case"file":{let i=(0,c.getTopLevelMediaType)(a.mediaType),j=null==(d=null==(b=a.providerOptions)?void 0:b[f])?void 0:d.imageDetail;if("data"===a.data.type){let b=(0,c.resolveFullMediaType)({part:a});if("image"===i)return{type:"input_image",image_url:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,detail:j,...null!=h&&{prompt_cache_breakpoint:h}};return{type:"input_file",filename:null!=(e=a.filename)?e:"data",file_data:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,...null!=h&&{prompt_cache_breakpoint:h}}}if("url"===a.data.type){if("image"===i)return{type:"input_image",image_url:a.data.url.toString(),detail:j,...null!=h&&{prompt_cache_breakpoint:h}};return{type:"input_file",file_url:a.data.url.toString(),...null!=h&&{prompt_cache_breakpoint:h}}}g.push({type:"other",message:`unsupported tool content part type: ${a.type} with data type: ${a.data.type}`});return}default:return void g.push({type:"other",message:`unsupported tool content part type: ${a.type}`})}}).filter(c.isNonNullable)}}function bj(a,b){return a.itemId===b.itemId&&a.toolCallId===b.toolCallId&&a.toolName===b.toolName&&a.input===b.input&&a.count===b.count}function bk(a,b){var c;return null==(c=null==a?void 0:a[b])?void 0:c.promptCacheBreakpoint}function bl({output:a,toolResultProviderOptions:b,providerOptionsName:c}){var d;return"content"===a.type?void 0:null!=(d=bk(a.providerOptions,c))?d:bk(b,c)}function bm(a,b){return!!b&&b.some(b=>a.startsWith(b))}async function bn({prompt:a,toolNameMapping:b,systemMessageMode:d,providerOptionsName:e,fileIdPrefixes:g,passThroughUnsupportedFiles:h=!1,store:i,hasConversation:j=!1,hasPreviousResponseId:k=!1,hasLocalShellTool:l=!1,hasShellTool:m=!1,hasApplyPatchTool:n=!1,hasComputerTool:o=!1,toolSearchToolName:p,customProviderToolNames:q,outputSchemaToolNames:r}){var s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,Y,Z,$,_,aa,ab,ac,af;let ag=[],ah=[],ai=new Set,aj=j||k?function({prompt:a,providerOptionsName:b}){let d=new Map;for(let c of a)if("tool"===c.role)for(let a of c.content){if("tool-result"!==a.type)continue;let c=be({providerOptions:a.providerOptions,providerOptionsName:b});if(null==c)continue;let e=d.get(c.toolCallId);if(null==e){d.set(c.toolCallId,{metadata:c,results:new Map([[c.index,a]]),invalid:!1});continue}if(!bj(e.metadata,c)||e.results.has(c.index)){e.invalid=!0;continue}e.results.set(c.index,a)}let e=new Map;for(let[a,b]of d){if(b.invalid||b.results.size!==b.metadata.count)continue;let d=Array.from({length:b.metadata.count},(a,c)=>b.results.get(c));d.every(c.isNonNullable)&&e.set(a,{metadata:b.metadata,results:d})}return e}({prompt:a,providerOptionsName:e}):new Map,ak=new Set,al=new Set;for(let{role:am,content:an,providerOptions:ao}of a)switch(am){case"system":switch(d){case"system":{let a=bk(ao,e);ag.push({role:"system",content:null==a?an:[{type:"input_text",text:an,prompt_cache_breakpoint:a}]});break}case"developer":{let a=bk(ao,e);ag.push({role:"developer",content:null==a?an:[{type:"input_text",text:an,prompt_cache_breakpoint:a}]});break}case"remove":ah.push({type:"other",message:"system messages are removed for this model"});break;default:throw Error(`Unsupported system message mode: ${d}`)}break;case"user":ag.push({role:"user",content:an.map((a,b)=>{var d,i,j,k,l;switch(a.type){case"text":{let b=bk(a.providerOptions,e);return{type:"input_text",text:a.text,...null!=b&&{prompt_cache_breakpoint:b}}}case"file":{let m=bk(a.providerOptions,e);switch(a.data.type){case"reference":{let b=(0,c.resolveProviderReference)({reference:a.data.reference,provider:e});if("image"===(0,c.getTopLevelMediaType)(a.mediaType))return{type:"input_image",file_id:b,detail:null==(i=null==(d=a.providerOptions)?void 0:d[e])?void 0:i.imageDetail,...null!=m&&{prompt_cache_breakpoint:m}};return{type:"input_file",file_id:b,...null!=m&&{prompt_cache_breakpoint:m}}}case"text":throw new f.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":if("image"===(0,c.getTopLevelMediaType)(a.mediaType))return{type:"input_image",..."url"===a.data.type?{image_url:a.data.url.toString()}:"string"==typeof a.data.data&&bm(a.data.data,g)?{file_id:a.data.data}:{image_url:`data:${(0,c.resolveFullMediaType)({part:a})};base64,${(0,c.convertToBase64)(a.data.data)}`},detail:null==(k=null==(j=a.providerOptions)?void 0:j[e])?void 0:k.imageDetail,...null!=m&&{prompt_cache_breakpoint:m}};{if("url"===a.data.type)return{type:"input_file",file_url:a.data.url.toString(),...null!=m&&{prompt_cache_breakpoint:m}};let d=(0,c.resolveFullMediaType)({part:a});if("application/pdf"!==d&&!h)throw new f.UnsupportedFunctionalityError({functionality:`file part media type ${d}`});return{type:"input_file",..."string"==typeof a.data.data&&bm(a.data.data,g)?{file_id:a.data.data}:{filename:null!=(l=a.filename)?l:"application/pdf"===d?`part-${b}.pdf`:`part-${b}`,file_data:`data:${d};base64,${(0,c.convertToBase64)(a.data.data)}`},...null!=m&&{prompt_cache_breakpoint:m}}}}}}})});break;case"assistant":{let a={};for(let d of an)switch(d.type){case"text":{let a=null==(s=d.providerOptions)?void 0:s[e],b=null==a?void 0:a.itemId,c=null==a?void 0:a.phase;if(j&&null!=b)break;if(i&&null!=b){ag.push({type:"item_reference",id:b});break}ag.push({role:"assistant",content:[{type:"output_text",text:d.text}],id:b,...null!=c&&{phase:c}});break}case"tool-call":{let a=be({providerOptions:d.providerOptions,providerOptionsName:e}),f=null==a?void 0:aj.get(a.toolCallId);if(null!=a&&null!=f&&bj(f.metadata,a)){!ak.has(f.metadata.toolCallId)&&(ak.add(f.metadata.toolCallId),j||ag.push({type:"function_call",call_id:f.metadata.toolCallId,name:f.metadata.toolName,arguments:f.metadata.input}));break}let g=null!=(x=null==(u=null==(t=d.providerOptions)?void 0:t[e])?void 0:u.itemId)?x:null==(w=null==(v=d.providerMetadata)?void 0:v[e])?void 0:w.itemId,h=null!=(C=null==(z=null==(y=d.providerOptions)?void 0:y[e])?void 0:z.namespace)?C:null==(B=null==(A=d.providerMetadata)?void 0:A[e])?void 0:B.namespace,r=null==(E=null==(D=d.providerOptions)?void 0:D[e])?void 0:E.caller;if(j&&null!=g)break;let s=b.toProviderToolName(d.toolName);if(d.toolName===p){if(i&&null!=g){ag.push({type:"item_reference",id:g});break}let a="string"==typeof d.input?await (0,c.parseJSON)({text:d.input,schema:aB}):await (0,c.validateTypes)({value:d.input,schema:aB}),b=null!=a.call_id?"client":"server";ag.push({type:"tool_search_call",id:null!=g?g:d.toolCallId,execution:b,call_id:null!=(F=a.call_id)?F:null,status:"completed",arguments:a.arguments});break}if("programmatic_tool_calling"===s){if(i&&null!=g){ag.push({type:"item_reference",id:g});break}let a=await (0,c.validateTypes)({value:d.input,schema:aR});ag.push({type:"program",id:null!=g?g:d.toolCallId,call_id:d.toolCallId,code:a.code,fingerprint:a.fingerprint});break}if(d.providerExecuted&&(i&&null!=g&&ag.push({type:"item_reference",id:g}),i||!m||"shell"!==s))break;let H=l&&"local_shell"===s||m&&"shell"===s||n&&"apply_patch"===s||o&&"computer"===s||null!=(G=null==q?void 0:q.has(s))&&G;if(k&&i&&null!=g&&H)break;if(i&&null!=g&&H){ag.push({type:"item_reference",id:g});break}if(l&&"local_shell"===s){let a=await (0,c.validateTypes)({value:d.input,schema:as});ag.push({type:"local_shell_call",call_id:d.toolCallId,id:g,action:{type:"exec",command:a.action.command,timeout_ms:a.action.timeoutMs,user:a.action.user,working_directory:a.action.workingDirectory,env:a.action.env}});break}if(m&&"shell"===s){let a=await (0,c.validateTypes)({value:d.input,schema:av});ag.push({type:"shell_call",call_id:d.toolCallId,id:g,status:"completed",action:{commands:a.action.commands,timeout_ms:a.action.timeoutMs,max_output_length:a.action.maxOutputLength}});break}if(n&&"apply_patch"===s){let a=await (0,c.validateTypes)({value:d.input,schema:W});ag.push({type:"apply_patch_call",call_id:a.callId,id:g,status:"completed",operation:a.operation});break}if(o&&"computer"===s){let a=await (0,c.validateTypes)({value:d.input,schema:ad});ag.push({type:"computer_call",call_id:d.toolCallId,id:g,status:a.status,actions:a.actions.map(a=>{switch(a.type){case"click":case"double_click":case"move":case"drag":return{...a,keys:a.keys};case"scroll":return{type:"scroll",x:a.x,y:a.y,scroll_x:a.scrollX,scroll_y:a.scrollY,keys:a.keys};default:return a}}),pending_safety_checks:a.pendingSafetyChecks.map(a=>({id:a.id,code:a.code,message:a.message}))});break}if(null==q?void 0:q.has(s)){ag.push({type:"custom_tool_call",call_id:d.toolCallId,name:s,input:"string"==typeof d.input?d.input:JSON.stringify(d.input),id:g});break}ag.push({type:"function_call",call_id:d.toolCallId,name:s,arguments:JSON.stringify(void 0===(af=d.input)?{}:af),...null!=h&&{namespace:h},...null!=r&&{caller:bh(r)}});break}case"tool-result":{if("execution-denied"===d.output.type||"json"===d.output.type&&"object"==typeof d.output.value&&null!=d.output.value&&"type"in d.output.value&&"execution-denied"===d.output.value.type||j)break;let a=b.toProviderToolName(d.toolName);if(d.toolName===p){let a=null!=(M=null!=(L=null==(I=null==(H=d.providerOptions)?void 0:H[e])?void 0:I.itemId)?L:null==(K=null==(J=d.providerMetadata)?void 0:J[e])?void 0:K.itemId)?M:d.toolCallId;if(i)ag.push({type:"item_reference",id:a});else if("json"===d.output.type){let b=await (0,c.validateTypes)({value:d.output.value,schema:aC});ag.push({type:"tool_search_output",id:a,execution:"server",call_id:null,status:"completed",tools:b.tools})}break}if("programmatic_tool_calling"===a){let a=null!=(S=null!=(R=null==(O=null==(N=d.providerOptions)?void 0:N[e])?void 0:O.itemId)?R:null==(Q=null==(P=d.providerMetadata)?void 0:P[e])?void 0:Q.itemId)?S:d.toolCallId;if(i)ag.push({type:"item_reference",id:a});else if("json"===d.output.type){let b=await (0,c.validateTypes)({value:d.output.value,schema:aS});ag.push({type:"program_output",id:a,call_id:d.toolCallId,result:b.result,status:b.status})}break}if(m&&"shell"===a){if("json"===d.output.type){let a=await (0,c.validateTypes)({value:d.output.value,schema:aw});ag.push({type:"shell_call_output",call_id:d.toolCallId,output:a.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"timeout"===a.outcome.type?{type:"timeout"}:{type:"exit",exit_code:a.outcome.exitCode}}))})}break}if(i){let a=null!=(V=null==(U=null==(T=d.providerOptions)?void 0:T[e])?void 0:U.itemId)?V:d.toolCallId;ag.push({type:"item_reference",id:a})}else ah.push({type:"other",message:`Results for OpenAI tool ${d.toolName} are not sent to the API when store is false`});break}case"reasoning":{let b=await (0,c.parseProviderOptions)({provider:e,providerOptions:d.providerOptions,schema:bo}),f=null==b?void 0:b.itemId;if((j||k)&&null!=f)break;if(null!=f){let c=a[f];if(i)void 0===c&&(ag.push({type:"item_reference",id:f}),a[f]={type:"reasoning",id:f,summary:[]});else{let e=[];d.text.length>0?e.push({type:"summary_text",text:d.text}):void 0!==c&&ah.push({type:"other",message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(d)}.`}),void 0===c?(a[f]={type:"reasoning",id:f,encrypted_content:null==b?void 0:b.reasoningEncryptedContent,summary:e},ag.push(a[f])):(c.summary.push(...e),(null==b?void 0:b.reasoningEncryptedContent)!=null&&(c.encrypted_content=b.reasoningEncryptedContent))}}else{let a=null==b?void 0:b.reasoningEncryptedContent;if(null!=a){let b=[];d.text.length>0&&b.push({type:"summary_text",text:d.text}),ag.push({type:"reasoning",encrypted_content:a,summary:b})}else ah.push({type:"other",message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(d)}.`})}break}case"custom":if("openai.compaction"===d.kind){let a=null==(Y=d.providerOptions)?void 0:Y[e],b=null==a?void 0:a.itemId;if(j&&null!=b)break;if(i&&null!=b){ag.push({type:"item_reference",id:b});break}let c=null==a?void 0:a.encryptedContent;null!=b&&ag.push({type:"compaction",id:b,encrypted_content:c})}}break}case"tool":for(let a of an){if("tool-approval-response"===a.type){if(ai.has(a.approvalId))continue;ai.add(a.approvalId),!i||j||k||ag.push({type:"item_reference",id:a.approvalId}),ag.push({type:"mcp_approval_response",approval_request_id:a.approvalId,approve:a.approved});continue}let d=be({providerOptions:a.providerOptions,providerOptionsName:e}),f=null==d?void 0:aj.get(d.toolCallId);if(null!=d&&null!=f&&bj(f.metadata,d)){if(!al.has(f.metadata.toolCallId)){al.add(f.metadata.toolCallId);let a=await Promise.all(f.results.map(async a=>{let b=bl({output:a.output,toolResultProviderOptions:a.providerOptions,providerOptionsName:e});return{output:await bi({output:a.output,toolName:a.toolName,outputSchemaToolNames:r,providerOptionsName:e,warnings:ah}),promptCacheBreakpoint:b}})),b=a.map(({output:a})=>"string"==typeof a?a:JSON.stringify(a)),c=a.some(({promptCacheBreakpoint:a})=>null!=a);ag.push({type:"function_call_output",call_id:f.metadata.toolCallId,output:c?b.map((b,c)=>({type:"input_text",text:0===c?b:`
|
|
179
|
-
${b}`,...null!=a[c].promptCacheBreakpoint&&{prompt_cache_breakpoint:a[c].promptCacheBreakpoint}})):b.join("\n")})}continue}let g=a.output;if("execution-denied"===g.type&&(null==($=null==(Z=g.providerOptions)?void 0:Z.openai)?void 0:$.approvalId))continue;let h=b.toProviderToolName(a.toolName);if(a.toolName===p&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:aC});ag.push({type:"tool_search_output",execution:"client",call_id:a.toolCallId,status:"completed",tools:b.tools});continue}if(l&&"local_shell"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:at});ag.push({type:"local_shell_call_output",call_id:a.toolCallId,output:b.output});continue}if(m&&"shell"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:aw});ag.push({type:"shell_call_output",call_id:a.toolCallId,output:b.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"timeout"===a.outcome.type?{type:"timeout"}:{type:"exit",exit_code:a.outcome.exitCode}}))});continue}if(n&&"apply_patch"===a.toolName&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:X});ag.push({type:"apply_patch_call_output",call_id:a.toolCallId,status:b.status,output:b.output});continue}if(o&&"computer"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:ae});ag.push({type:"computer_call_output",call_id:a.toolCallId,output:{type:"computer_screenshot",image_url:b.output.imageUrl,file_id:b.output.fileId,detail:b.output.detail},acknowledged_safety_checks:null==(_=b.acknowledgedSafetyChecks)?void 0:_.map(a=>({id:a.id,code:a.code,message:a.message}))});continue}if(null==q?void 0:q.has(h)){let b,d=bl({output:g,toolResultProviderOptions:a.providerOptions,providerOptionsName:e}),f=a=>null==d?a:[{type:"input_text",text:a,prompt_cache_breakpoint:d}];switch(g.type){case"text":case"error-text":b=f(g.value);break;case"execution-denied":b=f(null!=(aa=g.reason)?aa:"Tool call execution denied.");break;case"json":case"error-json":b=f(JSON.stringify(g.value));break;case"content":b=g.value.map(a=>{var b,d,f;let g=bk(a.providerOptions,e);switch(a.type){case"text":return{type:"input_text",text:a.text,...null!=g&&{prompt_cache_breakpoint:g}};case"file":{let h=(0,c.getTopLevelMediaType)(a.mediaType),i=null==(d=null==(b=a.providerOptions)?void 0:b[e])?void 0:d.imageDetail;if("data"===a.data.type){let b=(0,c.resolveFullMediaType)({part:a});if("image"===h)return{type:"input_image",image_url:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,detail:i,...null!=g&&{prompt_cache_breakpoint:g}};return{type:"input_file",filename:null!=(f=a.filename)?f:"data",file_data:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,...null!=g&&{prompt_cache_breakpoint:g}}}if("url"===a.data.type){if("image"===h)return{type:"input_image",image_url:a.data.url.toString(),detail:i,...null!=g&&{prompt_cache_breakpoint:g}};return{type:"input_file",file_url:a.data.url.toString(),...null!=g&&{prompt_cache_breakpoint:g}}}ah.push({type:"other",message:`unsupported custom tool content part type: ${a.type} with data type: ${a.data.type}`});return}default:ah.push({type:"other",message:`unsupported custom tool content part type: ${a.type}`});return}}).filter(c.isNonNullable);break;default:b=""}ag.push({type:"custom_tool_call_output",call_id:a.toolCallId,output:b});continue}let s=await bi({output:g,toolName:a.toolName,outputSchemaToolNames:r,promptCacheBreakpoint:bl({output:g,toolResultProviderOptions:a.providerOptions,providerOptionsName:e}),providerOptionsName:e,warnings:ah}),t=bh(null==(ac=null==(ab=a.providerOptions)?void 0:ab[e])?void 0:ac.caller);ag.push({type:"function_call_output",call_id:a.toolCallId,output:s,...null!=t&&{caller:t}})}break;default:throw Error(`Unsupported role: ${am}`)}return!i&&ag.some(a=>"type"in a&&"reasoning"===a.type&&null==a.encrypted_content)&&(ah.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),ag=ag.filter(a=>!("type"in a)||"reasoning"!==a.type||null!=a.encrypted_content)),{input:ag,warnings:ah}}var bo=e.z.object({itemId:e.z.string().nullish(),reasoningEncryptedContent:e.z.string().nullish()}),bp=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({conversation:e.z.string().nullish(),include:e.z.array(e.z.enum(["reasoning.encrypted_content","file_search_call.results","web_search_call.results","message.output_text.logprobs"])).nullish(),instructions:e.z.string().nullish(),logprobs:e.z.union([e.z.boolean(),e.z.number().min(1).max(20)]).optional(),maxToolCalls:e.z.number().nullish(),metadata:e.z.any().nullish(),parallelToolCalls:e.z.boolean().nullish(),previousResponseId:e.z.string().nullish(),promptCacheKey:e.z.string().nullish(),promptCacheOptions:e.z.object({mode:e.z.enum(["implicit","explicit"]).optional(),ttl:e.z.literal("30m").optional()}).optional(),promptCacheRetention:e.z.enum(["in_memory","24h"]).nullish(),reasoningEffort:e.z.string().nullish(),reasoningEffortUpdate:e.z.enum(["low","medium","high","xhigh","max"]).optional(),reasoningMode:e.z.enum(["standard","pro"]).optional(),reasoningContext:e.z.enum(["auto","current_turn","all_turns"]).optional(),reasoningSummary:e.z.string().nullish(),safetyIdentifier:e.z.string().nullish(),serviceTier:e.z.enum(["auto","flex","priority","fast","ultrafast","default"]).nullish(),store:e.z.boolean().nullish(),passThroughUnsupportedFiles:e.z.boolean().optional(),strictJsonSchema:e.z.boolean().nullish(),textVerbosity:e.z.enum(["low","medium","high"]).nullish(),truncation:e.z.enum(["auto","disabled"]).nullish(),user:e.z.string().nullish(),systemMessageMode:e.z.enum(["system","developer","remove"]).optional(),forceReasoning:e.z.boolean().optional(),contextManagement:e.z.array(e.z.object({type:e.z.literal("compaction"),compactThreshold:e.z.number()})).nullish(),compactionTrigger:e.z.boolean().optional(),allowedTools:e.z.object({toolNames:e.z.array(e.z.string()).min(1),mode:e.z.enum(["auto","required"]).optional()}).optional()})));async function bq({tools:a,toolChoice:b,allowedTools:d,toolNameMapping:e,customProviderToolNames:g,outputSchemaToolNames:h}){var i,j,k,l;a=(null==a?void 0:a.length)?a:void 0;let m=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:m};let n=[],o=new Map,p=null!=g?g:new Set,q=new Map,r=new Map,s=(a,b,c)=>{var d,e;if(q.set(a,b),null==c||c===a)return;let f=r.get(c);null==f?r.set(c,b):"ambiguous"===f||(d=f,e=b,d.supported&&e.supported?br(d.entry)===br(e.entry):!d.supported&&!e.supported&&d.reason===e.reason)||r.set(c,"ambiguous")};for(let b of a)switch(b.type){case"function":{let a=null==(i=b.providerOptions)?void 0:i.openai;(null==a?void 0:a.outputSchema)!=null&&(null==h||h.add(b.name));let c=function({tool:a,options:b}){let c=null==b?void 0:b.deferLoading;return{type:"function",name:a.name,description:a.description,parameters:a.inputSchema,...null!=a.strict?{strict:a.strict}:{},...null!=c?{defer_loading:c}:{},...(null==b?void 0:b.allowedCallers)!=null?{allowed_callers:b.allowedCallers}:{},...(null==b?void 0:b.outputSchema)!=null?{output_schema:b.outputSchema}:{}}}({tool:b,options:a}),d=null==a?void 0:a.namespace;if(null==d)n.push(c);else{let a=o.get(d.name);if(null==a)a={type:"namespace",name:d.name,description:d.description,tools:[]},o.set(d.name,a),n.push(a);else if(a.description!==d.description)throw new f.UnsupportedFunctionalityError({functionality:`conflicting descriptions for OpenAI tool namespace "${d.name}"`});a.tools.push(c)}s(b.name,null!=d?{supported:!1,reason:"tools inside an OpenAI tool namespace are not visible to tool_choice.allowed_tools"}:(null==a?void 0:a.deferLoading)===!0?{supported:!1,reason:"deferred tools are not visible to tool_choice.allowed_tools"}:{supported:!0,entry:{type:"function",name:b.name}},void 0);break}case"provider":{let a=n.length;switch(b.id){case"openai.file_search":{let a=await (0,c.validateTypes)({value:b.args,schema:al});n.push({type:"file_search",vector_store_ids:a.vectorStoreIds,max_num_results:a.maxNumResults,ranking_options:a.ranking?{ranker:a.ranking.ranker,score_threshold:a.ranking.scoreThreshold}:void 0,filters:a.filters});break}case"openai.local_shell":n.push({type:"local_shell"});break;case"openai.shell":{let a=await (0,c.validateTypes)({value:b.args,schema:ay});n.push({type:"shell",...a.environment&&{environment:function(a){var b;return"containerReference"===a.type?{type:"container_reference",container_id:a.containerId}:"containerAuto"===a.type?{type:"container_auto",file_ids:a.fileIds,memory_limit:a.memoryLimit,network_policy:null==a.networkPolicy?void 0:"disabled"===a.networkPolicy.type?{type:"disabled"}:{type:"allowlist",allowed_domains:a.networkPolicy.allowedDomains,domain_secrets:a.networkPolicy.domainSecrets},skills:null==(b=a.skills)?void 0:b.map(a=>{var b,d;return"skillReference"===a.type?{type:"skill_reference",skill_id:(0,c.resolveProviderReference)({reference:null!=(b=a.providerReference)?b:{},provider:"openai"}),version:null!=(d=a.version)?d:"latest"}:{type:"inline",name:a.name,description:a.description,source:{type:"base64",media_type:a.source.mediaType,data:a.source.data}}})}:{type:"local",skills:a.skills}}(a.environment)}});break}case"openai.apply_patch":n.push({type:"apply_patch"});break;case"openai.computer":n.push({type:"computer"});break;case"openai.web_search_preview":{let a=await (0,c.validateTypes)({value:b.args,schema:aI});n.push({type:"web_search_preview",search_context_size:a.searchContextSize,user_location:a.userLocation});break}case"openai.web_search":{let a=await (0,c.validateTypes)({value:b.args,schema:aE});n.push({type:"web_search",filters:null!=a.filters?{allowed_domains:a.filters.allowedDomains,blocked_domains:a.filters.blockedDomains}:void 0,external_web_access:a.externalWebAccess,search_context_size:a.searchContextSize,user_location:a.userLocation});break}case"openai.code_interpreter":{let a=await (0,c.validateTypes)({value:b.args,schema:_});n.push({type:"code_interpreter",container:null==a.container?{type:"auto",file_ids:void 0}:"string"==typeof a.container?a.container:{type:"auto",file_ids:a.container.fileIds}});break}case"openai.image_generation":{let a=await (0,c.validateTypes)({value:b.args,schema:ao});n.push({type:"image_generation",action:a.action,background:a.background,input_fidelity:a.inputFidelity,input_image_mask:a.inputImageMask?{file_id:a.inputImageMask.fileId,image_url:a.inputImageMask.imageUrl}:void 0,model:a.model,moderation:a.moderation,partial_images:a.partialImages,quality:a.quality,output_compression:a.outputCompression,output_format:a.outputFormat,size:a.size});break}case"openai.mcp":{let a=await (0,c.validateTypes)({value:b.args,schema:aN}),d=a=>({tool_names:a.toolNames}),e=a.requireApproval,f=null==e?void 0:"string"==typeof e?e:null!=e.never?{never:d(e.never)}:void 0;n.push({type:"mcp",server_label:a.serverLabel,allowed_tools:Array.isArray(a.allowedTools)?a.allowedTools:a.allowedTools?{read_only:a.allowedTools.readOnly,tool_names:a.allowedTools.toolNames}:void 0,authorization:a.authorization,connector_id:a.connectorId,headers:a.headers,require_approval:null!=f?f:"never",server_description:a.serverDescription,server_url:a.serverUrl});break}case"openai.custom":{let a=await (0,c.validateTypes)({value:b.args,schema:ag});n.push({type:"custom",name:b.name,description:a.description,format:a.format}),p.add(b.name);break}case"openai.programmatic_tool_calling":n.push({type:"programmatic_tool_calling"});break;case"openai.tool_search":{let a=await (0,c.validateTypes)({value:b.args,schema:aA});n.push({type:"tool_search",...null!=a.execution?{execution:a.execution}:{},...null!=a.description?{description:a.description}:{},...null!=a.parameters?{parameters:a.parameters}:{}})}}if(n.length>a){let c=n[a];s(b.name,function(a){switch(a.type){case"custom":return{supported:!0,entry:{type:"custom",name:a.name}};case"mcp":return{supported:!0,entry:{type:"mcp",server_label:a.server_label}};case"file_search":case"web_search":case"web_search_preview":case"image_generation":case"code_interpreter":case"computer":case"apply_patch":case"shell":case"local_shell":case"programmatic_tool_calling":return{supported:!0,entry:{type:a.type}};default:return{supported:!1,reason:`OpenAI does not support ${a.type} tools in tool_choice.allowed_tools`}}}(c),null==e?void 0:e.toProviderToolName(b.name))}break}default:m.push({type:"unsupported",feature:`function tool ${b}`})}if(null!=d){let a=[],b=[];for(let c of d.toolNames){let d=q.get(c),f=null!=d?d:r.get(c);if(null!=d&&r.has(c)&&m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"this name is both a tool name and the provider tool name of another tool in this request; the tool with this name is allowed"}),"ambiguous"===f){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"several tools in this request share this provider tool name; use the tool name from the tools for this request instead"}),b.push(c);continue}if(null==f){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"the tool is not part of the tools for this request and is sent as a function tool"}),a.push({type:"function",name:null!=(j=null==e?void 0:e.toProviderToolName(c))?j:c});continue}if(!f.supported){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:`${f.reason}; the tool is removed from the allowed tools`}),b.push(c);continue}a.push(f.entry)}if(0===a.length)throw new f.UnsupportedFunctionalityError({functionality:`allowedTools with only tools that cannot be allow-listed (${b.join(", ")})`});return{tools:n,toolChoice:{type:"allowed_tools",mode:null!=(k=d.mode)?k:"auto",tools:a},toolWarnings:m}}if(null==b)return{tools:n,toolChoice:void 0,toolWarnings:m};let t=b.type;switch(t){case"auto":case"none":case"required":return{tools:n,toolChoice:t,toolWarnings:m};case"tool":{let a=null!=(l=null==e?void 0:e.toProviderToolName(b.toolName))?l:b.toolName;return{tools:n,toolChoice:"code_interpreter"===a||"file_search"===a||"image_generation"===a||"web_search_preview"===a||"web_search"===a||"mcp"===a||"apply_patch"===a||"computer"===a||"programmatic_tool_calling"===a?{type:a}:p.has(a)?{type:"custom",name:a}:{type:"function",name:a},toolWarnings:m}}default:throw new f.UnsupportedFunctionalityError({functionality:`tool choice type: ${t}`})}}function br(a){switch(a.type){case"mcp":return`mcp:${a.server_label}`;case"function":case"custom":return`${a.type}:${a.name}`;default:return a.type}}function bs(a){var b,c;let d={};for(let e of a)if("assistant"===e.role)for(let a of e.content){if("tool-call"!==a.type)continue;let e=null==(c=null==(b=a.providerOptions)?void 0:b.openai)?void 0:c.approvalRequestId;null!=e&&(d[e]=a.toolCallId)}return d}function bt(a){switch(a.type){case"click":return{type:"click",button:a.button,x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"double_click":return{type:"double_click",x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"drag":return{type:"drag",path:a.path,...null!=a.keys&&{keys:a.keys}};case"keypress":case"screenshot":case"type":case"wait":return a;case"move":return{type:"move",x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"scroll":return{type:"scroll",x:a.x,y:a.y,scrollX:a.scroll_x,scrollY:a.scroll_y,...null!=a.keys&&{keys:a.keys}}}}function bu({action:a,actions:b,pending_safety_checks:c,status:d}){var e;return{actions:(null!=b?b:null!=a?[a]:[]).map(bt),pendingSafetyChecks:null!=(e=null==c?void 0:c.map(a=>({id:a.id,...null!=a.code&&{code:a.code},...null!=a.message&&{message:a.message}})))?e:[],status:d}}var bv=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,aV(b.config))}get provider(){return this.config.provider}async getArgs({maxOutputTokens:a,temperature:b,stopSequences:d,topP:e,topK:f,presencePenalty:g,frequencyPenalty:h,seed:j,prompt:k,reasoning:l,providerOptions:m,tools:n,toolChoice:o,responseFormat:p}){var q,r,s,t,u,v,w,x,y,z,A,B,C,D;let E=[],F=i(this.modelId);null!=f&&E.push({type:"unsupported",feature:"topK"}),null!=j&&E.push({type:"unsupported",feature:"seed"}),null!=g&&E.push({type:"unsupported",feature:"presencePenalty"}),null!=h&&E.push({type:"unsupported",feature:"frequencyPenalty"}),null!=d&&E.push({type:"unsupported",feature:"stopSequences"});let G=this.config.provider.includes("azure")?"azure":"openai",H=await (0,c.parseProviderOptions)({provider:G,providerOptions:m,schema:bp});null==H&&"openai"!==G&&(H=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:m,schema:bp}));let I=null!=(q=null==H?void 0:H.reasoningEffort)?q:(0,c.isCustomReasoning)(l)?l:void 0;null==I||null==F.supportedReasoningEfforts||F.supportedReasoningEfforts.includes(I)||(E.push({type:"unsupported",feature:"reasoningEffort",details:`${this.modelId} only supports the following reasoning efforts: ${F.supportedReasoningEfforts.join(", ")}`}),I=void 0);let J=(null==H?void 0:H.reasoningSummary)!==void 0?H.reasoningSummary:null!=I&&"none"!==I?"detailed":void 0,K=null!=(r=null==H?void 0:H.forceReasoning)?r:F.isReasoningModel;(null==H?void 0:H.conversation)&&(null==H?void 0:H.previousResponseId)&&E.push({type:"unsupported",feature:"conversation",details:"conversation and previousResponseId cannot be used together"});let L=(0,c.createToolNameMapping)({tools:n,providerToolNames:{"openai.code_interpreter":"code_interpreter","openai.computer":"computer","openai.file_search":"file_search","openai.image_generation":"image_generation","openai.local_shell":"local_shell","openai.shell":"shell","openai.web_search":"web_search","openai.web_search_preview":"web_search_preview","openai.mcp":"mcp","openai.apply_patch":"apply_patch","openai.tool_search":"tool_search","openai.programmatic_tool_calling":"programmatic_tool_calling"}}),M=new Set,N=new Set,{tools:O,toolChoice:P,toolWarnings:Q}=await bq({tools:n,toolChoice:o,allowedTools:null!=(s=null==H?void 0:H.allowedTools)?s:void 0,toolNameMapping:L,customProviderToolNames:M,outputSchemaToolNames:N}),{input:R,warnings:S}=await bn({prompt:k,toolNameMapping:L,systemMessageMode:null!=(t=null==H?void 0:H.systemMessageMode)?t:K?"developer":F.systemMessageMode,providerOptionsName:G,fileIdPrefixes:this.config.fileIdPrefixes,passThroughUnsupportedFiles:null!=(u=null==H?void 0:H.passThroughUnsupportedFiles)&&u,store:null==(v=null==H?void 0:H.store)||v,hasConversation:(null==H?void 0:H.conversation)!=null,hasPreviousResponseId:(null==H?void 0:H.previousResponseId)!=null,hasLocalShellTool:Z("openai.local_shell"),hasShellTool:Z("openai.shell"),hasApplyPatchTool:Z("openai.apply_patch"),hasComputerTool:Z("openai.computer"),toolSearchToolName:Y("openai.tool_search"),customProviderToolNames:M.size>0?M:void 0,outputSchemaToolNames:N.size>0?N:void 0});E.push(...S);let T=null==H?void 0:H.reasoningEffortUpdate,U=null==T||F.supportsConfigurationUpdate&&(null==H?void 0:H.reasoningMode)!=="pro"&&(null==H?void 0:H.contextManagement)==null&&(null==H?void 0:H.truncation)!=="auto";null==T||U?null!=T&&R.unshift({type:"configuration_update",reasoning:{effort:T}}):E.push({type:"unsupported",feature:"reasoningEffortUpdate",details:F.supportsConfigurationUpdate?"reasoningEffortUpdate requires standard reasoning mode without automatic compaction or automatic truncation":"reasoningEffortUpdate is only supported by GPT-6 and later models"}),(null==H?void 0:H.compactionTrigger)&&R.push({type:"compaction_trigger"});let V=null==(w=null==H?void 0:H.strictJsonSchema)||w,W=null==H?void 0:H.include;function X(a){null==W?W=[a]:W.includes(a)||(W=[...W,a])}function Y(a){var b;return null==(b=null==n?void 0:n.find(b=>"provider"===b.type&&b.id===a))?void 0:b.name}function Z(a){return null!=Y(a)}let $="number"==typeof(null==H?void 0:H.logprobs)?null==H?void 0:H.logprobs:(null==H?void 0:H.logprobs)===!0?20:void 0;$&&X("message.output_text.logprobs");let _=null==(x=null==n?void 0:n.find(a=>"provider"===a.type&&("openai.web_search"===a.id||"openai.web_search_preview"===a.id)))?void 0:x.name;_&&X("web_search_call.action.sources"),Z("openai.code_interpreter")&&X("code_interpreter_call.outputs");let aa=null==H?void 0:H.store;!1===aa&&K&&X("reasoning.encrypted_content");let ab={model:this.modelId,input:R,temperature:b,top_p:e,max_output_tokens:a,...((null==p?void 0:p.type)==="json"||(null==H?void 0:H.textVerbosity))&&{text:{...(null==p?void 0:p.type)==="json"&&{format:null!=p.schema?{type:"json_schema",strict:V,name:null!=(y=p.name)?y:"response",description:p.description,schema:p.schema}:{type:"json_object"}},...(null==H?void 0:H.textVerbosity)&&{verbosity:H.textVerbosity}}},conversation:null==H?void 0:H.conversation,max_tool_calls:null==H?void 0:H.maxToolCalls,metadata:null==H?void 0:H.metadata,parallel_tool_calls:null==H?void 0:H.parallelToolCalls,previous_response_id:null==H?void 0:H.previousResponseId,store:aa,user:null==H?void 0:H.user,instructions:null==H?void 0:H.instructions,service_tier:null==H?void 0:H.serviceTier,include:W,prompt_cache_key:null==H?void 0:H.promptCacheKey,prompt_cache_options:null==H?void 0:H.promptCacheOptions,prompt_cache_retention:null==H?void 0:H.promptCacheRetention,safety_identifier:null==H?void 0:H.safetyIdentifier,top_logprobs:$,truncation:null==H?void 0:H.truncation,...(null==H?void 0:H.contextManagement)&&{context_management:H.contextManagement.map(a=>({type:a.type,compact_threshold:a.compactThreshold}))},...K&&(null!=I||null!=J||(null==H?void 0:H.reasoningMode)!=null||(null==H?void 0:H.reasoningContext)!=null)&&{reasoning:{...null!=I&&{effort:I},...null!=J&&{summary:J},...(null==H?void 0:H.reasoningMode)!=null&&{mode:H.reasoningMode},...(null==H?void 0:H.reasoningContext)!=null&&{context:H.reasoningContext}}}};if(F.supportsConfigurationUpdate&&null!=ab.prompt_cache_retention&&(ab.prompt_cache_retention=void 0,E.push({type:"unsupported",feature:"promptCacheRetention",details:"promptCacheRetention is not supported by GPT-6 and later models; use promptCacheOptions instead"})),K){if(!("none"===I&&F.supportsNonReasoningParameters)&&(null!=ab.temperature&&(ab.temperature=void 0,E.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"})),null!=ab.top_p&&(ab.top_p=void 0,E.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})),null!=F.supportedReasoningEfforts&&(null!=ab.top_logprobs||(null==(z=ab.include)?void 0:z.includes("message.output_text.logprobs"))))){ab.top_logprobs=void 0;let a=null==(A=ab.include)?void 0:A.filter(a=>"message.output_text.logprobs"!==a);ab.include=null!=a&&a.length>0?a:void 0,E.push({type:"unsupported",feature:"logprobs",details:"logprobs is not supported for reasoning models"})}}else(null==H?void 0:H.reasoningEffort)!=null&&E.push({type:"unsupported",feature:"reasoningEffort",details:"reasoningEffort is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningSummary)!=null&&E.push({type:"unsupported",feature:"reasoningSummary",details:"reasoningSummary is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningMode)!=null&&E.push({type:"unsupported",feature:"reasoningMode",details:"reasoningMode is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningContext)!=null&&E.push({type:"unsupported",feature:"reasoningContext",details:"reasoningContext is not supported for non-reasoning models"});(null==H?void 0:H.serviceTier)!=="flex"||F.supportsFlexProcessing||(E.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),delete ab.service_tier),(null==H?void 0:H.serviceTier)!=="priority"&&(null==H?void 0:H.serviceTier)!=="fast"||F.supportsPriorityProcessing||(E.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),delete ab.service_tier);let ac=null==(D=null==(C=null==(B=null==n?void 0:n.find(a=>"provider"===a.type&&"openai.shell"===a.id))?void 0:B.args)?void 0:C.environment)?void 0:D.type;return{webSearchToolName:_,args:{...ab,tools:O,tool_choice:P},warnings:[...E,...Q],store:aa,toolNameMapping:L,providerOptionsName:G,isShellProviderExecuted:"containerAuto"===ac||"containerReference"===ac}}async doGenerate(a){var b,d,e,g,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L;let{args:M,warnings:N,webSearchToolName:O,toolNameMapping:P,providerOptionsName:Q,isShellProviderExecuted:R}=await this.getArgs(a),S=this.config.url({path:"/responses",modelId:this.modelId}),T=bs(a.prompt),{responseHeaders:U,value:V,rawValue:W}=await (0,c.postJsonToApi)({url:S,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:M,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bb),abortSignal:a.abortSignal,fetch:this.config.fetch});if(V.error)throw new f.APICallError({message:V.error.message,url:S,requestBodyValues:M,statusCode:400,responseHeaders:U,responseBody:W,isRetryable:!1});if(null==V.output){let a=null==(e=V.incomplete_details)?void 0:e.reason;throw new f.APICallError({message:a?`Responses API returned no output (${a})`:"Responses API returned no output",url:S,requestBodyValues:M,statusCode:500,responseHeaders:U,responseBody:W,isRetryable:!1})}let X=[],Y=[],Z=null!=(i=null==(g=a.tools)?void 0:g.filter(a=>"function"===a.type))?i:[],$=!1,_=[];for(let b of V.output)switch(b.type){case"reasoning":for(let a of(0===b.summary.length&&b.summary.push({type:"summary_text",text:""}),b.summary))X.push({type:"reasoning",text:a.text,providerMetadata:{[Q]:{itemId:b.id,reasoningEncryptedContent:null!=(j=b.encrypted_content)?j:null}}});break;case"image_generation_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("image_generation"),result:{result:b.result}});break;case"tool_search_call":{let a=null!=(k=b.call_id)?k:b.id,c="server"===b.execution;c&&_.push(a),X.push({type:"tool-call",toolCallId:a,toolName:P.toCustomToolName("tool_search"),input:JSON.stringify({arguments:b.arguments,call_id:b.call_id}),...c?{providerExecuted:!0}:{},providerMetadata:{[Q]:{itemId:b.id}}});break}case"tool_search_output":{let a=null!=(m=null!=(l=b.call_id)?l:_.shift())?m:b.id;X.push({type:"tool-result",toolCallId:a,toolName:P.toCustomToolName("tool_search"),result:{tools:b.tools},providerMetadata:{[Q]:{itemId:b.id}}});break}case"local_shell_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("local_shell"),input:JSON.stringify({action:b.action}),providerMetadata:{[Q]:{itemId:b.id}}});break;case"shell_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("shell"),input:JSON.stringify({action:{commands:b.action.commands}}),...R&&{providerExecuted:!0},providerMetadata:{[Q]:{itemId:b.id}}});break;case"shell_call_output":X.push({type:"tool-result",toolCallId:b.call_id,toolName:P.toCustomToolName("shell"),result:{output:b.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"exit"===a.outcome.type?{type:"exit",exitCode:a.outcome.exit_code}:{type:"timeout"}}))}});break;case"message":for(let d of b.content){(null==(o=null==(n=a.providerOptions)?void 0:n[Q])?void 0:o.logprobs)&&d.logprobs&&Y.push(d.logprobs);let e={itemId:b.id,...null!=b.phase&&{phase:b.phase},...d.annotations.length>0&&{annotations:d.annotations}};for(let a of(X.push({type:"text",text:d.text,providerMetadata:{[Q]:e}}),d.annotations))"url_citation"===a.type?X.push({type:"source",sourceType:"url",id:null!=(r=null==(q=(p=this.config).generateId)?void 0:q.call(p))?r:(0,c.generateId)(),url:a.url,title:a.title}):"file_citation"===a.type?X.push({type:"source",sourceType:"document",id:null!=(u=null==(t=(s=this.config).generateId)?void 0:t.call(s))?u:(0,c.generateId)(),mediaType:"text/plain",title:a.filename,filename:a.filename,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,index:a.index}}}):"container_file_citation"===a.type?X.push({type:"source",sourceType:"document",id:null!=(x=null==(w=(v=this.config).generateId)?void 0:w.call(v))?x:(0,c.generateId)(),mediaType:"text/plain",title:a.filename,filename:a.filename,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,containerId:a.container_id}}}):"file_path"===a.type&&X.push({type:"source",sourceType:"document",id:null!=(A=null==(z=(y=this.config).generateId)?void 0:z.call(y))?A:(0,c.generateId)(),mediaType:"application/octet-stream",title:a.file_id,filename:a.file_id,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,index:a.index}}})}break;case"function_call":{$=!0;let a=await bg({toolCall:{toolCallId:b.call_id,toolName:b.name,input:b.arguments},tools:Z,providerOptionsName:Q,itemId:b.id});if(null!=a){X.push(...a);break}X.push({type:"tool-call",toolCallId:b.call_id,toolName:b.name,input:b.arguments,providerMetadata:{[Q]:{itemId:b.id,...null!=b.namespace&&{namespace:b.namespace},...null!=b.caller&&{caller:"program"===b.caller.type?{type:"program",callerId:b.caller.caller_id}:b.caller}}}});break}case"program":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("programmatic_tool_calling"),input:JSON.stringify({code:b.code,fingerprint:b.fingerprint}),providerExecuted:!0,providerMetadata:{[Q]:{itemId:b.id}}});break;case"program_output":X.push({type:"tool-result",toolCallId:b.call_id,toolName:P.toCustomToolName("programmatic_tool_calling"),result:{result:b.result,status:b.status},providerMetadata:{[Q]:{itemId:b.id}}});break;case"custom_tool_call":{$=!0;let a=P.toCustomToolName(b.name);X.push({type:"tool-call",toolCallId:b.call_id,toolName:a,input:JSON.stringify(b.input),providerMetadata:{[Q]:{itemId:b.id}}});break}case"web_search_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName(null!=O?O:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName(null!=O?O:"web_search"),result:bB(b.action)});break;case"mcp_call":{let a=null!=b.approval_request_id&&null!=(B=T[b.approval_request_id])?B:b.id,c=`mcp.${b.name}`;X.push({type:"tool-call",toolCallId:a,toolName:c,input:b.arguments,providerExecuted:!0,dynamic:!0}),X.push({type:"tool-result",toolCallId:a,toolName:c,result:{type:"call",serverLabel:b.server_label,name:b.name,arguments:b.arguments,...null!=b.output?{output:b.output}:{},...null!=b.error?{error:b.error}:{}},providerMetadata:{[Q]:{itemId:b.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let a=null!=(C=b.approval_request_id)?C:b.id,d=null!=(F=null==(E=(D=this.config).generateId)?void 0:E.call(D))?F:(0,c.generateId)(),e=`mcp.${b.name}`;X.push({type:"tool-call",toolCallId:d,toolName:e,input:b.arguments,providerExecuted:!0,dynamic:!0}),X.push({type:"tool-approval-request",approvalId:a,toolCallId:d});break}case"computer_call":{if(null==b.call_id){X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:b.status}});break}$=!0;let a=P.toCustomToolName("computer");X.push({type:"tool-call",toolCallId:b.call_id,toolName:a,input:JSON.stringify(bu(b)),providerMetadata:{[Q]:{itemId:b.id}}});break}case"file_search_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("file_search"),result:{queries:b.queries,results:null!=(H=null==(G=b.results)?void 0:G.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?H:null}});break;case"code_interpreter_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("code_interpreter"),input:JSON.stringify({code:b.code,containerId:b.container_id}),providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("code_interpreter"),result:{outputs:b.outputs}});break;case"apply_patch_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("apply_patch"),input:JSON.stringify({callId:b.call_id,operation:b.operation}),providerMetadata:{[Q]:{itemId:b.id}}});break;case"compaction":X.push({type:"custom",kind:"openai.compaction",providerMetadata:{[Q]:{type:"compaction",itemId:b.id,encryptedContent:b.encrypted_content}}})}let aa={[Q]:{responseId:V.id,...Y.length>0?{logprobs:Y}:{},..."string"==typeof V.service_tier?{serviceTier:V.service_tier}:{},...(null==(I=V.reasoning)?void 0:I.context)!=null?{reasoningContext:V.reasoning.context}:{}}},ab=V.usage;return{content:X,finishReason:{unified:aX({finishReason:null==(J=V.incomplete_details)?void 0:J.reason,hasFunctionCall:$}),raw:null!=(L=null==(K=V.incomplete_details)?void 0:K.reason)?L:void 0},usage:aW(ab),request:{body:M},response:{id:V.id,timestamp:new Date(1e3*V.created_at),modelId:V.model,headers:U,body:W},providerMetadata:aa,warnings:N}}async doStream(a){var b,d,e,g;let i,l,m,n,{args:o,warnings:p,webSearchToolName:q,toolNameMapping:r,store:s,providerOptionsName:t,isShellProviderExecuted:u}=await this.getArgs(a),v=this.config.url({path:"/responses",modelId:this.modelId}),{responseHeaders:w,value:x}=await (0,c.postJsonToApi)({url:v,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:{...o,stream:!0},failedResponseHandler:h,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(ba),abortSignal:a.abortSignal,fetch:this.config.fetch}),y=await k({stream:x,getError:a=>by(a)||bw(a)&&null!=a.response.error?a:void 0,isOutputChunk:bA,isAcceptedChunk:bz,url:v,requestBodyValues:o,responseHeaders:w}),z=this,A=bs(a.prompt),B=null!=(g=null==(e=a.tools)?void 0:e.filter(a=>"function"===a.type))?g:[],C=new Map,D={unified:"other",raw:void 0},E=[],F=null,G={},H=[],I=!1,J={},K={},L=({itemId:a,outputIndex:b})=>{var c;return null==b?a:null!=(c=K[b])?c:a},M=[],N=!1;return{stream:y.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:p})},transform(b,d){var e,g,h,k,p,x,y,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;if(a.includeRawChunks&&d.enqueue({type:"raw",rawValue:b.rawValue}),!b.success){let a,c=null!=(a="object"==typeof(ay=b.rawValue)&&null!=ay?ay:void 0)&&Array.isArray(a.choices)&&"string"!=typeof a.type?function({value:a,cause:b,url:c,requestBodyValues:d,responseHeaders:e}){return new f.APICallError({message:"Received a Chat Completions stream while using the OpenAI Responses API. The default OpenAI provider model uses the Responses API. If your custom baseURL targets a Chat Completions-compatible endpoint, use openai.chat('model-id') or createOpenAI(...).chat('model-id') instead. You can also use @ai-sdk/openai-compatible for OpenAI-compatible providers.",url:c,requestBodyValues:d,responseHeaders:e,responseBody:JSON.stringify(a),cause:b,data:a,isRetryable:!1})}({value:b.rawValue,cause:b.error,url:v,requestBodyValues:o,responseHeaders:w}):b.error;N=!0,D={unified:"error",raw:void 0},d.enqueue({type:"error",error:c});return}let aA=b.value;if(bx(aA))if("function_call"===aA.item.type){let a=bf({toolName:aA.item.name,tools:B});G[aA.output_index]={toolName:aA.item.name,toolCallId:aA.item.call_id,suppressInputStreaming:a,bufferedInputDeltas:a?[]:void 0},a||d.enqueue({type:"tool-input-start",id:aA.item.call_id,toolName:aA.item.name})}else if("custom_tool_call"===aA.item.type){let a=r.toCustomToolName(aA.item.name);G[aA.output_index]={toolName:a,toolCallId:aA.item.call_id},d.enqueue({type:"tool-input-start",id:aA.item.call_id,toolName:a})}else if("web_search_call"===aA.item.type)G[aA.output_index]={toolName:r.toCustomToolName(null!=q?q:"web_search"),toolCallId:aA.item.id},d.enqueue({type:"tool-input-start",id:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),providerExecuted:!0}),d.enqueue({type:"tool-input-end",id:aA.item.id}),d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if("computer_call"===aA.item.type){let a=null!=(e=aA.item.call_id)?e:aA.item.id;G[aA.output_index]={toolName:r.toCustomToolName("computer"),toolCallId:a},d.enqueue({type:"tool-input-start",id:a,toolName:r.toCustomToolName("computer")})}else if("code_interpreter_call"===aA.item.type)G[aA.output_index]={toolName:r.toCustomToolName("code_interpreter"),toolCallId:aA.item.id,codeInterpreter:{containerId:aA.item.container_id}},d.enqueue({type:"tool-input-start",id:aA.item.id,toolName:r.toCustomToolName("code_interpreter"),providerExecuted:!0}),d.enqueue({type:"tool-input-delta",id:aA.item.id,delta:`{"containerId":"${aA.item.container_id}","code":"`});else if("file_search_call"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if("image_generation_call"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if("tool_search_call"===aA.item.type){let a=aA.item.id,b=r.toCustomToolName("tool_search"),c="server"===aA.item.execution;G[aA.output_index]={toolName:b,toolCallId:a,toolSearchExecution:null!=(g=aA.item.execution)?g:"server"},c&&d.enqueue({type:"tool-input-start",id:a,toolName:b,providerExecuted:!0})}else if("tool_search_output"===aA.item.type);else if("mcp_call"===aA.item.type||"mcp_list_tools"===aA.item.type||"mcp_approval_request"===aA.item.type);else if("apply_patch_call"===aA.item.type){let{call_id:a,operation:b}=aA.item;if(G[aA.output_index]={toolName:r.toCustomToolName("apply_patch"),toolCallId:a,applyPatch:{hasDiff:"delete_file"===b.type,endEmitted:"delete_file"===b.type}},d.enqueue({type:"tool-input-start",id:a,toolName:r.toCustomToolName("apply_patch")}),"delete_file"===b.type){let c=JSON.stringify({callId:a,operation:b});d.enqueue({type:"tool-input-delta",id:a,delta:c}),d.enqueue({type:"tool-input-end",id:a})}else d.enqueue({type:"tool-input-delta",id:a,delta:`{"callId":"${bC(a)}","operation":{"type":"${bC(b.type)}","path":"${bC(b.path)}","diff":"`})}else"shell_call"===aA.item.type?G[aA.output_index]={toolName:r.toCustomToolName("shell"),toolCallId:aA.item.call_id}:"shell_call_output"===aA.item.type||("message"===aA.item.type?(K[aA.output_index]=aA.item.id,H.splice(0,H.length),i=null!=(h=aA.item.phase)?h:void 0,d.enqueue({type:"text-start",id:aA.item.id,providerMetadata:{[t]:{itemId:aA.item.id,...null!=aA.item.phase&&{phase:aA.item.phase}}}})):bx(aA)&&"reasoning"===aA.item.type&&(K[aA.output_index]=aA.item.id,J[aA.item.id]={encryptedContent:aA.item.encrypted_content,summaryParts:{0:"active"}},d.enqueue({type:"reasoning-start",id:`${aA.item.id}:0`,providerMetadata:{[t]:{itemId:aA.item.id,reasoningEncryptedContent:null!=(k=aA.item.encrypted_content)?k:null}}})));else if("response.output_item.done"===aA.type)if("message"===aA.item.type){let a=L({itemId:aA.item.id,outputIndex:aA.output_index}),b=null!=(p=aA.item.phase)?p:i;i=void 0,d.enqueue({type:"text-end",id:a,providerMetadata:{[t]:{itemId:a,...null!=b&&{phase:b},...H.length>0&&{annotations:H}}}}),K[aA.output_index]=void 0}else if("function_call"===aA.item.type){let a=aA.item,b=G[aA.output_index];G[aA.output_index]=void 0,I=!0;let c=null!=(x=null==b?void 0:b.suppressInputStreaming)?x:bf({toolName:a.name,tools:B}),e=()=>{var e;if(c){d.enqueue({type:"tool-input-start",id:a.call_id,toolName:a.name});let c=null!=(e=null==b?void 0:b.bufferedInputDeltas)?e:[];if(c.length>0)for(let b of c)d.enqueue({type:"tool-input-delta",id:a.call_id,delta:b});else a.arguments.length>0&&d.enqueue({type:"tool-input-delta",id:a.call_id,delta:a.arguments})}d.enqueue({type:"tool-input-end",id:a.call_id,...null!=a.namespace&&{providerMetadata:{[t]:{namespace:a.namespace}}}}),d.enqueue({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments,providerMetadata:{[t]:{itemId:a.id,...null!=a.namespace&&{namespace:a.namespace},...null!=a.caller&&{caller:"program"===a.caller.type?{type:"program",callerId:a.caller.caller_id}:a.caller}}}})};return c?bg({toolCall:{toolCallId:a.call_id,toolName:a.name,input:a.arguments},tools:B,providerOptionsName:t,itemId:a.id}).then(a=>{if(null==a)return void e();for(let b of a)d.enqueue({type:"tool-input-start",id:b.toolCallId,toolName:b.toolName}),d.enqueue({type:"tool-input-delta",id:b.toolCallId,delta:b.input}),d.enqueue({type:"tool-input-end",id:b.toolCallId}),d.enqueue(b)}):void e()}else if("program"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("programmatic_tool_calling"),input:JSON.stringify({code:aA.item.code,fingerprint:aA.item.fingerprint}),providerExecuted:!0,providerMetadata:{[t]:{itemId:aA.item.id}}});else if("program_output"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("programmatic_tool_calling"),result:{result:aA.item.result,status:aA.item.status},providerMetadata:{[t]:{itemId:aA.item.id}}});else if("custom_tool_call"===aA.item.type){G[aA.output_index]=void 0,I=!0;let a=r.toCustomToolName(aA.item.name);d.enqueue({type:"tool-input-end",id:aA.item.call_id}),d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:a,input:JSON.stringify(aA.item.input),providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("web_search_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),result:bB(aA.item.action)});else if("computer_call"===aA.item.type){if(G[aA.output_index]=void 0,null==aA.item.call_id){d.enqueue({type:"tool-input-end",id:aA.item.id}),d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:aA.item.status}});return}I=!0;let a=r.toCustomToolName("computer"),b=JSON.stringify(bu(aA.item));d.enqueue({type:"tool-input-delta",id:aA.item.call_id,delta:b}),d.enqueue({type:"tool-input-end",id:aA.item.call_id}),d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:a,input:b,providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("file_search_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("file_search"),result:{queries:aA.item.queries,results:null!=(O=null==(y=aA.item.results)?void 0:y.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?O:null}});else if("code_interpreter_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("code_interpreter"),result:{outputs:aA.item.outputs}});else if("image_generation_call"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("image_generation"),result:{result:aA.item.result}});else if("tool_search_call"===aA.item.type){let a=G[aA.output_index],b="server"===aA.item.execution;if(null!=a){let c=b?a.toolCallId:null!=(P=aA.item.call_id)?P:aA.item.id;b?M.push(c):d.enqueue({type:"tool-input-start",id:c,toolName:a.toolName}),d.enqueue({type:"tool-input-end",id:c}),d.enqueue({type:"tool-call",toolCallId:c,toolName:a.toolName,input:JSON.stringify({arguments:aA.item.arguments,call_id:b?null:c}),...b?{providerExecuted:!0}:{},providerMetadata:{[t]:{itemId:aA.item.id}}})}G[aA.output_index]=void 0}else if("tool_search_output"===aA.item.type){let a=null!=(R=null!=(Q=aA.item.call_id)?Q:M.shift())?R:aA.item.id;d.enqueue({type:"tool-result",toolCallId:a,toolName:r.toCustomToolName("tool_search"),result:{tools:aA.item.tools},providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("mcp_call"===aA.item.type){G[aA.output_index]=void 0;let a=null!=(S=aA.item.approval_request_id)?S:void 0,b=null!=a&&null!=(U=null!=(T=C.get(a))?T:A[a])?U:aA.item.id,c=`mcp.${aA.item.name}`;d.enqueue({type:"tool-call",toolCallId:b,toolName:c,input:aA.item.arguments,providerExecuted:!0,dynamic:!0}),d.enqueue({type:"tool-result",toolCallId:b,toolName:c,result:{type:"call",serverLabel:aA.item.server_label,name:aA.item.name,arguments:aA.item.arguments,...null!=aA.item.output?{output:aA.item.output}:{},...null!=aA.item.error?{error:aA.item.error}:{}},providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("mcp_list_tools"===aA.item.type)G[aA.output_index]=void 0;else if("apply_patch_call"===aA.item.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&!a.applyPatch.endEmitted&&"delete_file"!==aA.item.operation.type&&(a.applyPatch.hasDiff||d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.item.operation.diff)}),d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),a.applyPatch.endEmitted=!0),a&&"completed"===aA.item.status&&d.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:r.toCustomToolName("apply_patch"),input:JSON.stringify({callId:aA.item.call_id,operation:aA.item.operation}),providerMetadata:{[t]:{itemId:aA.item.id}}}),G[aA.output_index]=void 0}else if("mcp_approval_request"===aA.item.type){G[aA.output_index]=void 0;let a=null!=(X=null==(W=(V=z.config).generateId)?void 0:W.call(V))?X:(0,c.generateId)(),b=null!=(Y=aA.item.approval_request_id)?Y:aA.item.id;C.set(b,a);let e=`mcp.${aA.item.name}`;d.enqueue({type:"tool-call",toolCallId:a,toolName:e,input:aA.item.arguments,providerExecuted:!0,dynamic:!0}),d.enqueue({type:"tool-approval-request",approvalId:b,toolCallId:a})}else if("local_shell_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:aA.item.action.command,timeoutMs:aA.item.action.timeout_ms,user:aA.item.action.user,workingDirectory:aA.item.action.working_directory,env:aA.item.action.env}}),providerMetadata:{[t]:{itemId:aA.item.id}}});else if("shell_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("shell"),input:JSON.stringify({action:{commands:aA.item.action.commands}}),...u&&{providerExecuted:!0},providerMetadata:{[t]:{itemId:aA.item.id}}});else if("shell_call_output"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("shell"),result:{output:aA.item.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"exit"===a.outcome.type?{type:"exit",exitCode:a.outcome.exit_code}:{type:"timeout"}}))}});else if("reasoning"===aA.item.type){let a=L({itemId:aA.item.id,outputIndex:aA.output_index}),b=J[a];if(null!=b){for(let c of Object.entries(b.summaryParts).filter(([a,b])=>"active"===b||"can-conclude"===b).map(([a])=>a))d.enqueue({type:"reasoning-end",id:`${a}:${c}`,providerMetadata:{[t]:{itemId:a,reasoningEncryptedContent:null!=(Z=aA.item.encrypted_content)?Z:null}}});delete J[a]}K[aA.output_index]=void 0}else"compaction"===aA.item.type&&d.enqueue({type:"custom",kind:"openai.compaction",providerMetadata:{[t]:{type:"compaction",itemId:aA.item.id,encryptedContent:aA.item.encrypted_content}}});else if("response.function_call_arguments.delta"===aA.type){let a=G[aA.output_index];null!=a&&(a.suppressInputStreaming?null==($=a.bufferedInputDeltas)||$.push(aA.delta):d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:aA.delta}))}else if("response.custom_tool_call_input.delta"===aA.type){let a=G[aA.output_index];null!=a&&d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:aA.delta})}else if("response.apply_patch_call_operation_diff.delta"===aA.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.delta)}),a.applyPatch.hasDiff=!0)}else if("response.apply_patch_call_operation_diff.done"===aA.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&!a.applyPatch.endEmitted&&(a.applyPatch.hasDiff||(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.diff)}),a.applyPatch.hasDiff=!0),d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),a.applyPatch.endEmitted=!0)}else if("response.image_generation_call.partial_image"===aA.type)d.enqueue({type:"tool-result",toolCallId:aA.item_id,toolName:r.toCustomToolName("image_generation"),result:{result:aA.partial_image_b64},preliminary:!0});else if("response.code_interpreter_call_code.delta"===aA.type){let a=G[aA.output_index];null!=a&&d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.delta)})}else if("response.code_interpreter_call_code.done"===aA.type){let a=G[aA.output_index];null!=a&&(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),d.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:r.toCustomToolName("code_interpreter"),input:JSON.stringify({code:aA.code,containerId:a.codeInterpreter.containerId}),providerExecuted:!0}))}else if("response.created"===aA.type)F=aA.response.id,d.enqueue({type:"response-metadata",id:aA.response.id,timestamp:new Date(1e3*aA.response.created_at),modelId:aA.response.model});else if("response.output_text.delta"===aA.type){let b=L({itemId:aA.item_id,outputIndex:aA.output_index});d.enqueue({type:"text-delta",id:b,delta:aA.delta}),(null==(aa=null==(_=a.providerOptions)?void 0:_[t])?void 0:aa.logprobs)&&aA.logprobs&&E.push(aA.logprobs)}else if("response.reasoning_summary_part.added"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index});if(aA.summary_index>0){let b=J[a];if(null!=b){for(let c of(b.summaryParts[aA.summary_index]="active",Object.keys(b.summaryParts)))"can-conclude"===b.summaryParts[c]&&(d.enqueue({type:"reasoning-end",id:`${a}:${c}`,providerMetadata:{[t]:{itemId:a}}}),b.summaryParts[c]="concluded");d.enqueue({type:"reasoning-start",id:`${a}:${aA.summary_index}`,providerMetadata:{[t]:{itemId:a,reasoningEncryptedContent:null!=(ab=b.encryptedContent)?ab:null}}})}}}else if("response.reasoning_summary_text.delta"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index});d.enqueue({type:"reasoning-delta",id:`${a}:${aA.summary_index}`,delta:aA.delta,providerMetadata:{[t]:{itemId:a}}})}else if("response.reasoning_summary_part.done"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index}),b=J[a];null!=b&&(s?(d.enqueue({type:"reasoning-end",id:`${a}:${aA.summary_index}`,providerMetadata:{[t]:{itemId:a}}}),b.summaryParts[aA.summary_index]="concluded"):b.summaryParts[aA.summary_index]="can-conclude")}else{if("response.completed"===(az=aA).type||"response.incomplete"===az.type)N||(D={unified:aX({finishReason:null==(ac=aA.response.incomplete_details)?void 0:ac.reason,hasFunctionCall:I}),raw:null!=(ae=null==(ad=aA.response.incomplete_details)?void 0:ad.reason)?ae:void 0}),n=null!=(af=aA.response.usage)?af:void 0,"string"==typeof aA.response.service_tier&&(l=aA.response.service_tier),(null==(ag=aA.response.reasoning)?void 0:ag.context)!=null&&(m=aA.response.reasoning.context);else if(bw(aA)){let a=null==(ah=aA.response.incomplete_details)?void 0:ah.reason;if(D={unified:a?aX({finishReason:a,hasFunctionCall:I}):"error",raw:null!=a?a:"error"},n=null!=(ai=aA.response.usage)?ai:void 0,(null==(aj=aA.response.reasoning)?void 0:aj.context)!=null&&(m=aA.response.reasoning.context),!N&&null!=aA.response.error){N=!0;let a={type:"response.failed",sequence_number:aA.sequence_number,response:{error:aA.response.error,incomplete_details:aA.response.incomplete_details,service_tier:aA.response.service_tier}};d.enqueue({type:"error",error:null!=(ak=j(a))?ak:a})}}else"response.output_text.annotation.added"===aA.type?(H.push(aA.annotation),"url_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"url",id:null!=(an=null==(am=(al=z.config).generateId)?void 0:am.call(al))?an:(0,c.generateId)(),url:aA.annotation.url,title:aA.annotation.title}):"file_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"document",id:null!=(aq=null==(ap=(ao=z.config).generateId)?void 0:ap.call(ao))?aq:(0,c.generateId)(),mediaType:"text/plain",title:aA.annotation.filename,filename:aA.annotation.filename,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,index:aA.annotation.index}}}):"container_file_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"document",id:null!=(at=null==(as=(ar=z.config).generateId)?void 0:as.call(ar))?at:(0,c.generateId)(),mediaType:"text/plain",title:aA.annotation.filename,filename:aA.annotation.filename,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,containerId:aA.annotation.container_id}}}):"file_path"===aA.annotation.type&&d.enqueue({type:"source",sourceType:"document",id:null!=(aw=null==(av=(au=z.config).generateId)?void 0:av.call(au))?aw:(0,c.generateId)(),mediaType:"application/octet-stream",title:aA.annotation.file_id,filename:aA.annotation.file_id,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,index:aA.annotation.index}}})):by(aA)&&(N=!0,D={unified:"error",raw:"error"},d.enqueue({type:"error",error:null!=(ax=j(aA))?ax:aA}))}},flush(a){var b;for(let c of Object.values(G))if(null==c?void 0:c.suppressInputStreaming)for(let d of(a.enqueue({type:"tool-input-start",id:c.toolCallId,toolName:c.toolName}),null!=(b=c.bufferedInputDeltas)?b:[]))a.enqueue({type:"tool-input-delta",id:c.toolCallId,delta:d});let c={[t]:{responseId:F,...E.length>0?{logprobs:E}:{},...void 0!==l?{serviceTier:l}:{},...void 0!==m?{reasoningContext:m}:{}}};a.enqueue({type:"finish",finishReason:D,usage:aW(n),providerMetadata:c})}})),request:{body:o},response:{headers:w}}}};function bw(a){return"response.failed"===a.type}function bx(a){return"response.output_item.added"===a.type}function by(a){return"error"===a.type}function bz(a){return"response.in_progress"===a.type}function bA(a){return"response.created"!==a.type&&"response.in_progress"!==a.type&&"response.failed"!==a.type&&"error"!==a.type&&"unknown_chunk"!==a.type}function bB(a){var b;if(null==a)return{};switch(a.type){case"search":return{action:{type:"search",query:null!=(b=a.query)?b:void 0,...null!=a.queries&&{queries:a.queries}},...null!=a.sources&&{sources:a.sources}};case"open_page":return{action:{type:"openPage",url:a.url}};case"find_in_page":return{action:{type:"findInPage",url:a.url,pattern:a.pattern}}}}function bC(a){return JSON.stringify(a).slice(1,-1)}var bD="/v1/responses",bE=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({inputFileExpiresAfter:e.z.number().int().min(3600).max(2592e3).optional()}))),bF=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),status:e.z.string(),output_file_id:e.z.string().nullish(),error_file_id:e.z.string().nullish(),created_at:e.z.number().nullish(),expires_at:e.z.number().nullish(),request_counts:e.z.object({total:e.z.number().nullish(),completed:e.z.number().nullish(),failed:e.z.number().nullish()}).nullish(),errors:e.z.object({data:e.z.array(e.z.object({code:e.z.string().nullish(),message:e.z.string().nullish()})).nullish()}).nullish()}))),bG=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({custom_id:e.z.string(),response:e.z.object({status_code:e.z.number(),request_id:e.z.string().nullish(),body:e.z.unknown()}).nullish(),error:e.z.object({code:e.z.string(),message:e.z.string()}).nullish()}))),bH=class{constructor(a){this.options=a}async startBatch(a){var b,d,e,f,g,i;let j=[],k=null==a.webhookUrl?[]:[{warning:{type:"unsupported",feature:"webhookUrl",details:"The OpenAI Batch API does not support per-batch webhook URLs."}}],l=await this.parseBatchProviderOptions(a.providerOptions),m=null!=(b=null==l?void 0:l.inputFileExpiresAfter)?b:172800;for(let b of a.requests){let a=await this.options.prepareRequest(b);for(let c of(j.push(JSON.stringify({custom_id:b.id,method:"POST",url:bD,body:a.body}),"\n"),a.warnings))k.push({requestId:b.id,warning:c});for(let a of null!=(d=b.options.tools)?d:[])"provider"!==a.type||bI.has(a.id)||k.push({requestId:b.id,warning:{type:"unsupported",feature:`batch result conversion for tool "${a.name}"`,details:"OpenAI may return output for this tool that AI SDK text batches cannot currently convert."}})}let n="batch.jsonl",o=new Blob(j,{type:"application/jsonl"});j.length=0;let p=new FormData;p.append("file",o,n),p.append("purpose","batch"),p.append("expires_after[anchor]","created_at"),p.append("expires_after[seconds]",String(m));let{value:q}=await (0,c.postToApi)({url:this.getUrl("/files"),headers:(0,c.combineHeaders)(null==(f=(e=this.options.config).headers)?void 0:f.call(e),a.headers),body:{content:p,values:{purpose:"batch","expires_after[anchor]":"created_at","expires_after[seconds]":String(m),file:{name:n,type:o.type,size:o.size}}},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(I),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),{value:r}=await (0,c.postJsonToApi)({url:this.getUrl("/batches"),headers:(0,c.combineHeaders)(null==(i=(g=this.options.config).headers)?void 0:i.call(g),a.headers),body:{input_file_id:q.id,endpoint:bD,completion_window:"24h"},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bF),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),s=bL(q.expires_at);return{batchId:r.id,...bK(r),providerMetadata:{openai:{inputFileId:q.id,...null!=s?{inputFileExpiresAt:s}:{}}},warnings:k}}async parseBatchProviderOptions(a){let b=this.options.config.provider.includes("azure")?"azure":"openai",d=await (0,c.parseProviderOptions)({provider:b,providerOptions:a,schema:bE});return null==d&&"openai"!==b&&(d=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a,schema:bE})),d}async getBatchStatus(a){return bK(await this.retrieveBatch(a))}async getBatchResults(a){let b=await this.retrieveBatch(a),d=bK(b);if("pending"===d.status)throw new f.InvalidArgumentError({argument:"batchId",message:`OpenAI batch "${a.batchId}" is not complete.`});let e=[b.output_file_id,b.error_file_id].filter(a=>null!=a);if("completed"===d.status&&0===e.length)throw new f.InvalidResponseDataError({data:b,message:`OpenAI batch "${a.batchId}" completed without batch output.`});let g=this.iterateBatchResults({fileIds:e,options:a});return(0,c.convertAsyncIteratorToReadableStream)(g)}async retrieveBatch(a){var b,d;let{value:e}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bF),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});return e}async *iterateBatchResults({fileIds:a,options:b}){var d,e;for(let f of a){let{value:a}=await (0,c.getFromApi)({url:this.getUrl(`/files/${encodeURIComponent(f)}/content`),headers:(0,c.combineHeaders)(null==(e=(d=this.options.config).headers)?void 0:e.call(d),b.headers),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonLinesResponseHandler)(bG),abortSignal:b.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});for await(let b of a)yield await this.convertResultLine(b)}}async convertResultLine(a){if(null!=a.error){let b={message:a.error.message,code:a.error.code};return"batch_cancelled"===a.error.code?{id:a.custom_id,status:"cancelled",error:b}:"batch_expired"===a.error.code?{id:a.custom_id,status:"expired",error:b}:{id:a.custom_id,status:"failed",error:b}}if(null==a.response)return{id:a.custom_id,status:"failed",error:{message:"OpenAI returned a batch result without a response or error.",code:"invalid_batch_result"}};if(a.response.status_code<200||a.response.status_code>=300)return{id:a.custom_id,status:"failed",error:await bM({body:a.response.body,statusCode:a.response.status_code})};let b=await bN(a.response.body);return b.success?{id:a.custom_id,status:"succeeded",result:b.result}:{id:a.custom_id,status:"failed",error:b.error}}getUrl(a){return this.options.config.url({modelId:this.options.modelId,path:a})}},bI=new Set(["openai.code_interpreter","openai.custom","openai.file_search","openai.web_search","openai.web_search_preview"]),bJ=class a extends bv{static[d.WORKFLOW_SERIALIZE](a){return bv[d.WORKFLOW_SERIALIZE](a)}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,aV(b.config))}constructor(a,b){super(a,b),this.batch=new bH({modelId:a,config:b,prepareRequest:async a=>{let{args:b,warnings:c}=await this.getArgs(a.options);return{body:b,warnings:c}}})}experimental_doStartBatch(a){return this.batch.startBatch(a)}experimental_doGetBatchStatus(a){return this.batch.getBatchStatus(a)}experimental_doGetBatchResults(a){return this.batch.getBatchResults(a)}};function bK(a){var b,d,e,f;let g,h,i,j=function(a){switch(a){case"completed":return"completed";case"failed":case"expired":case"cancelled":return"failed";default:return"pending"}}(a.status),k=null==(d=null==(b=a.errors)?void 0:b.data)?void 0:d[0],l=(g=null==(f=a.request_counts)?void 0:f.total,h=null==f?void 0:f.completed,i=null==f?void 0:f.failed,(0,c.normalizeBatchRequestCounts)({total:g,pending:null!=g&&null!=h&&null!=i?g-h-i:void 0,completed:h,failed:i})),m=bL(a.created_at),n=bL(a.expires_at);return{status:j,rawStatus:a.status,...null!=l?{requestCounts:l}:{},...null!=k?{error:{message:null!=(e=k.message)?e:"OpenAI batch failed.",...null!=k.code?{code:k.code}:{}}}:{},...null!=m?{createdAt:m}:{},...null!=n?{expiresAt:n}:{}}}function bL(a){if(null==a||!Number.isFinite(a))return;let b=new Date(1e3*a);return Number.isNaN(b.getTime())?void 0:b.toISOString()}async function bM({body:a,statusCode:b}){var d;let e=await (0,c.safeValidateTypes)({value:a,schema:g});return e.success?{message:e.value.error.message,type:null!=(d=e.value.error.type)?d:void 0,code:null!=e.value.error.code?String(e.value.error.code):void 0,statusCode:b}:{message:`OpenAI batch request failed with status code ${b}.`,statusCode:b}}async function bN(a){var b,d,e,f,g,h,i,j;let k=await (0,c.safeValidateTypes)({value:a,schema:bb});if(!k.success)return{success:!1,error:{message:"OpenAI returned an invalid Responses batch result.",code:"invalid_response"}};let l=k.value;if(null!=l.error)return{success:!1,error:{message:l.error.message,type:l.error.type,code:l.error.code}};if(null==l.output){let a=null==(b=l.incomplete_details)?void 0:b.reason;return{success:!1,error:{message:null!=a?`OpenAI Responses returned no output (${a}).`:"OpenAI Responses returned no output.",code:"invalid_response"}}}let m=[],n=[],o=!1;for(let a of l.output)switch(a.type){case"reasoning":for(let b of a.summary.length>0?a.summary:[{type:"summary_text",text:""}])m.push({type:"reasoning",text:b.text,providerMetadata:{openai:{itemId:a.id,reasoningEncryptedContent:null!=(d=a.encrypted_content)?d:null}}});break;case"message":for(let b of a.content)m.push({type:"text",text:b.text}),null!=b.logprobs&&n.push(b.logprobs);break;case"function_call":o=!0,m.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments,providerMetadata:{openai:{itemId:a.id,...null!=a.namespace&&{namespace:a.namespace},...null!=a.caller&&{caller:"program"===a.caller.type?{type:"program",callerId:a.caller.caller_id}:a.caller}}}});break;case"custom_tool_call":o=!0,m.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:JSON.stringify(a.input),providerMetadata:{openai:{itemId:a.id}}});break;case"web_search_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"web_search",input:"{}",providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"web_search",result:bB(a.action),dynamic:!0});break;case"file_search_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"file_search",input:"{}",providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"file_search",result:{queries:a.queries,results:null!=(f=null==(e=a.results)?void 0:e.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?f:null},dynamic:!0});break;case"code_interpreter_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"code_interpreter",input:JSON.stringify({code:a.code,containerId:a.container_id}),providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"code_interpreter",result:{outputs:a.outputs},dynamic:!0});break;default:return{success:!1,error:{message:`OpenAI returned an unsupported "${a.type}" output item in an AI SDK text batch.`,code:"unsupported_content"}}}let p={openai:{responseId:l.id,...n.length>0?{logprobs:n}:{},..."string"==typeof l.service_tier?{serviceTier:l.service_tier}:{},...(null==(g=l.reasoning)?void 0:g.context)!=null?{reasoningContext:l.reasoning.context}:{}}};return{success:!0,result:{content:m,finishReason:{unified:aX({finishReason:null==(h=l.incomplete_details)?void 0:h.reason,hasFunctionCall:o}),raw:null!=(j=null==(i=l.incomplete_details)?void 0:i.reason)?j:void 0},usage:aW(l.usage),response:{id:l.id,timestamp:null!=l.created_at?new Date(1e3*l.created_at):void 0,modelId:l.model},providerMetadata:p,warnings:[]}}}function bO(a,b){var c;let d={type:"realtime",model:b};null!=a.instructions&&(d.instructions=a.instructions),null!=a.outputModalities&&(d.output_modalities=a.outputModalities);let e={};if(null!=a.inputAudioFormat||null!=a.inputAudioTranscription||null!=a.turnDetection){let b={};if(null!=a.inputAudioFormat&&(b.format={type:a.inputAudioFormat.type,...null!=a.inputAudioFormat.rate?{rate:a.inputAudioFormat.rate}:{}}),null!=a.turnDetection)if("disabled"===a.turnDetection.type)b.turn_detection=null;else{let c={type:"server-vad"===a.turnDetection.type?"server_vad":"semantic_vad"};null!=a.turnDetection.threshold&&(c.threshold=a.turnDetection.threshold),null!=a.turnDetection.silenceDurationMs&&(c.silence_duration_ms=a.turnDetection.silenceDurationMs),null!=a.turnDetection.prefixPaddingMs&&(c.prefix_padding_ms=a.turnDetection.prefixPaddingMs),b.turn_detection=c}null!=a.inputAudioTranscription&&(b.transcription={model:null!=(c=a.inputAudioTranscription.model)?c:"gpt-realtime-whisper",...null!=a.inputAudioTranscription.language?{language:a.inputAudioTranscription.language}:{},...null!=a.inputAudioTranscription.prompt?{prompt:a.inputAudioTranscription.prompt}:{}}),e.input=b}if(null!=a.outputAudioFormat||null!=a.voice){let b={};null!=a.outputAudioFormat&&(b.format={type:a.outputAudioFormat.type,...null!=a.outputAudioFormat.rate?{rate:a.outputAudioFormat.rate}:{}}),null!=a.voice&&(b.voice=a.voice),e.output=b}return Object.keys(e).length>0&&(d.audio=e),null!=a.tools&&a.tools.length>0&&(d.tools=a.tools.map(a=>({type:a.type,name:a.name,description:a.description,parameters:a.parameters})),d.tool_choice="auto"),null!=a.providerOptions&&Object.assign(d,a.providerOptions),d}var bP=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b;let c=null!=(b=this.config.fetch)?b:fetch,d=`${this.config.baseURL}/realtime/client_secrets`,e=null!=a.sessionConfig?bO(a.sessionConfig,this.modelId):{type:"realtime",model:this.modelId},f=await c(d,{method:"POST",headers:{...this.config.headers(),"Content-Type":"application/json"},body:JSON.stringify({session:e,...null!=a.expiresAfterSeconds?{expires_after:{anchor:"created_at",seconds:a.expiresAfterSeconds}}:{}})});if(!f.ok){let a=await f.text();throw Error(`OpenAI realtime client secret request failed: ${f.status} ${a}`)}let g=await f.json();return{token:g.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:g.expires_at}}getWebSocketConfig(a){return{url:a.url,protocols:["realtime",`openai-insecure-api-key.${a.token}`]}}parseServerEvent(a){return function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;let u=a.type;switch(u){case"session.created":return{type:"session-created",sessionId:null==(b=a.session)?void 0:b.id,raw:a};case"session.updated":return{type:"session-updated",raw:a};case"input_audio_buffer.speech_started":return{type:"speech-started",itemId:a.item_id,raw:a};case"input_audio_buffer.speech_stopped":return{type:"speech-stopped",itemId:a.item_id,raw:a};case"input_audio_buffer.committed":return{type:"audio-committed",itemId:a.item_id,previousItemId:a.previous_item_id,raw:a};case"conversation.item.added":return{type:"conversation-item-added",itemId:null!=(d=null==(c=a.item)?void 0:c.id)?d:a.item_id,item:a.item,raw:a};case"conversation.item.input_audio_transcription.completed":return{type:"input-transcription-completed",itemId:a.item_id,transcript:null!=(e=a.transcript)?e:"",raw:a};case"response.created":return{type:"response-created",responseId:null!=(g=null==(f=a.response)?void 0:f.id)?g:a.response_id,raw:a};case"response.done":return{type:"response-done",responseId:null!=(i=null==(h=a.response)?void 0:h.id)?i:a.response_id,status:null!=(k=null==(j=a.response)?void 0:j.status)?k:"completed",raw:a};case"response.output_item.added":return{type:"output-item-added",responseId:a.response_id,itemId:null!=(m=null==(l=a.item)?void 0:l.id)?m:a.item_id,raw:a};case"response.output_item.done":return{type:"output-item-done",responseId:a.response_id,itemId:null!=(o=null==(n=a.item)?void 0:n.id)?o:a.item_id,raw:a};case"response.content_part.added":return{type:"content-part-added",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.content_part.done":return{type:"content-part-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio.delta":return{type:"audio-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio.done":return{type:"audio-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio_transcript.delta":return{type:"audio-transcript-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio_transcript.done":return{type:"audio-transcript-done",responseId:a.response_id,itemId:a.item_id,transcript:a.transcript,raw:a};case"response.output_text.delta":return{type:"text-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_text.done":return{type:"text-done",responseId:a.response_id,itemId:a.item_id,text:a.text,raw:a};case"response.function_call_arguments.delta":return{type:"function-call-arguments-delta",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,delta:a.delta,raw:a};case"response.function_call_arguments.done":return{type:"function-call-arguments-done",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,name:a.name,arguments:a.arguments,raw:a};case"error":return{type:"error",message:null!=(r=null!=(q=null==(p=a.error)?void 0:p.message)?q:a.message)?r:"Unknown error",code:null!=(t=null==(s=a.error)?void 0:s.code)?t:a.code,raw:a};default:return{type:"custom",rawType:u,raw:a}}}(a)}serializeClientEvent(a){var b=this.modelId;switch(a.type){case"session-update":return{type:"session.update",session:bO(a.config,b)};case"input-audio-append":return{type:"input_audio_buffer.append",audio:a.audio};case"input-audio-commit":return{type:"input_audio_buffer.commit"};case"input-audio-clear":return{type:"input_audio_buffer.clear"};case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_text",text:b.text}]}};case"audio-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_audio",audio:b.audio}]}};case"function-call-output":return{type:"conversation.item.create",item:{type:"function_call_output",call_id:b.callId,output:b.output}}}break}case"conversation-item-truncate":return{type:"conversation.item.truncate",item_id:a.itemId,content_index:a.contentIndex,audio_end_ms:a.audioEndMs};case"response-create":return{type:"response.create",...null!=a.options?{response:{...null!=a.options.modalities?{output_modalities:a.options.modalities}:{},...null!=a.options.instructions?{instructions:a.options.instructions}:{},...null!=a.options.metadata?{metadata:a.options.metadata}:{}}}:{}};case"response-cancel":return{type:"response.cancel"}}}buildSessionConfig(a){return bO(a,this.modelId)}},bQ=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({instructions:e.z.string().nullish(),speed:e.z.number().min(.25).max(4).default(1).nullish()}))),bR=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({text:a,voice:b="alloy",outputFormat:d="mp3",speed:e,instructions:f,language:g,providerOptions:h}){let i=[],j=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:h,schema:bQ}),k={model:this.modelId,input:a,voice:b,response_format:"mp3",speed:e,instructions:f};if(d&&(["mp3","opus","aac","flac","wav","pcm"].includes(d)?k.response_format=d:i.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${d}. Using mp3 instead.`})),j){let a={};for(let b in a){let c=a[b];void 0!==c&&(k[b]=c)}}return g&&i.push({type:"unsupported",feature:"language",details:`OpenAI speech models do not support language selection. Language parameter "${g}" was ignored.`}),{requestBody:k,warnings:i}}async doGenerate(a){var b,d,e,f,g;let i=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestBody:j,warnings:k}=await this.getArgs(a),{value:l,responseHeaders:m,rawValue:n}=await (0,c.postJsonToApi)({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(g=(f=this.config).headers)?void 0:g.call(f),a.headers),body:j,failedResponseHandler:h,successfulResponseHandler:(0,c.createBinaryResponseHandler)(),abortSignal:a.abortSignal,fetch:this.config.fetch});return{audio:l,warnings:k,request:{body:JSON.stringify(j)},response:{timestamp:i,modelId:this.modelId,headers:m,body:n}}}},bS=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({text:e.z.string(),language:e.z.string().nullish(),duration:e.z.number().nullish(),words:e.z.array(e.z.object({word:e.z.string(),start:e.z.number(),end:e.z.number()})).nullish(),segments:e.z.array(e.z.union([e.z.object({id:e.z.number(),seek:e.z.number(),start:e.z.number(),end:e.z.number(),text:e.z.string(),tokens:e.z.array(e.z.number()),temperature:e.z.number(),avg_logprob:e.z.number(),compression_ratio:e.z.number(),no_speech_prob:e.z.number()}),e.z.object({type:e.z.literal("transcript.text.segment"),id:e.z.string(),start:e.z.number(),end:e.z.number(),text:e.z.string(),speaker:e.z.string()})])).nullish()}))),bT=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({include:e.z.array(e.z.string()).optional(),language:e.z.string().optional(),prompt:e.z.string().optional(),temperature:e.z.number().min(0).max(1).default(0).optional(),timestampGranularities:e.z.array(e.z.enum(["word","segment"])).default(["segment"]).optional(),responseFormat:e.z.enum(["json","verbose_json","diarized_json"]).optional(),chunkingStrategy:e.z.union([e.z.literal("auto"),e.z.object({type:e.z.literal("server_vad"),threshold:e.z.number().min(0).max(1).optional(),prefixPaddingMs:e.z.number().int().min(0).optional(),silenceDurationMs:e.z.number().int().min(0).optional()})]).optional(),streaming:e.z.object({delay:e.z.enum(["minimal","low","medium","high","xhigh"]).optional(),include:e.z.array(e.z.string()).optional()}).optional()})));function bU(a){return"gpt-realtime-whisper"===a||a.startsWith("gpt-realtime-whisper-")}var bV={afrikaans:"af",arabic:"ar",armenian:"hy",azerbaijani:"az",belarusian:"be",bosnian:"bs",bulgarian:"bg",catalan:"ca",chinese:"zh",croatian:"hr",czech:"cs",danish:"da",dutch:"nl",english:"en",estonian:"et",finnish:"fi",french:"fr",galician:"gl",german:"de",greek:"el",hebrew:"he",hindi:"hi",hungarian:"hu",icelandic:"is",indonesian:"id",italian:"it",japanese:"ja",kannada:"kn",kazakh:"kk",korean:"ko",latvian:"lv",lithuanian:"lt",macedonian:"mk",malay:"ms",marathi:"mr",maori:"mi",nepali:"ne",norwegian:"no",persian:"fa",polish:"pl",portuguese:"pt",romanian:"ro",russian:"ru",serbian:"sr",slovak:"sk",slovenian:"sl",spanish:"es",swahili:"sw",swedish:"sv",tagalog:"tl",tamil:"ta",thai:"th",turkish:"tr",ukrainian:"uk",urdu:"ur",vietnamese:"vi",welsh:"cy"},bW=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({audio:a,mediaType:b,providerOptions:d}){var e,f;let g=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:d,schema:bT}),h=new FormData,i=a instanceof Uint8Array?new Blob([a]):new Blob([(0,c.convertBase64ToUint8Array)(a)]);h.append("model",this.modelId);let j=(0,c.mediaTypeToExtension)(b);h.append("file",new File([i],"audio",{type:b}),`audio.${j}`),"whisper-1"===this.modelId&&h.append("response_format","verbose_json");let k="gpt-4o-transcribe-diarize"===this.modelId,l=null!=(e=null==g?void 0:g.chunkingStrategy)?e:k?"auto":void 0;if(g){let a=["gpt-4o-transcribe","gpt-4o-mini-transcribe"].includes(this.modelId);for(let[b,c]of Object.entries({include:g.include,language:g.language,prompt:g.prompt,..."whisper-1"!==this.modelId&&{response_format:null!=(f=g.responseFormat)?f:k?"diarized_json":a?"json":"verbose_json"},temperature:g.temperature,timestamp_granularities:g.timestampGranularities}))if(null!=c)if(Array.isArray(c))for(let a of c)h.append(`${b}[]`,String(a));else h.append(b,String(c))}else k&&h.append("response_format","diarized_json");return null!=l&&h.append("chunking_strategy","string"==typeof l?l:JSON.stringify({type:l.type,...null!=l.threshold&&{threshold:l.threshold},...null!=l.prefixPaddingMs&&{prefix_padding_ms:l.prefixPaddingMs},...null!=l.silenceDurationMs&&{silence_duration_ms:l.silenceDurationMs}})),{formData:h,warnings:[]}}async doGenerate(a){var b,d,e,g,i,j,k,l,m,n,o;if(bU(this.modelId))throw new f.UnsupportedFunctionalityError({functionality:`non-streaming transcription with ${this.modelId}`});let p=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{formData:q,warnings:r}=await this.getArgs(a),{value:s,responseHeaders:t,rawValue:u}=await (0,c.postFormDataToApi)({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(i=(g=this.config).headers)?void 0:i.call(g),a.headers),formData:q,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bS),abortSignal:a.abortSignal,fetch:this.config.fetch}),v=null!=s.language&&s.language in bV?bV[s.language]:void 0,w=null==(j=s.segments)?void 0:j.flatMap(a=>"speaker"in a?[{text:a.text,startSecond:a.start,endSecond:a.end,speaker:a.speaker}]:[]);return{text:s.text,segments:null!=(n=null!=(m=null==(k=s.segments)?void 0:k.map(a=>({text:a.text,startSecond:a.start,endSecond:a.end})))?m:null==(l=s.words)?void 0:l.map(a=>({text:a.word,startSecond:a.start,endSecond:a.end})))?n:[],language:v,durationInSeconds:null!=(o=s.duration)?o:void 0,warnings:r,response:{timestamp:p,modelId:this.modelId,headers:t,body:u},...null!=w&&w.length>0&&{providerMetadata:{openai:{segments:w}}}}}async doStream(a){var b,d,e,g,h,i,j;if(!bU(this.modelId))throw new f.UnsupportedFunctionalityError({functionality:`streaming transcription with ${this.modelId}`});let k=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,l=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a.providerOptions,schema:bT}),m=[],n=null!=(h=null==(g=a.providerOptions)?void 0:g.openai)?h:{};for(let a of["include","prompt","temperature","timestampGranularities"])null!=n[a]&&m.push({type:"unsupported",feature:`providerOptions.openai.${a}`,details:`OpenAI streaming transcription does not support ${a}.`});let o=(0,c.combineHeaders)(null==(j=(i=this.config).headers)?void 0:j.call(i),a.headers),p=function({modelId:a,inputAudioFormat:b,providerOptions:c}){var d,e;return{type:"session.update",session:{type:"transcription",audio:{input:{format:{type:b.type,...null!=b.rate?{rate:b.rate}:{}},transcription:{model:a,...(null==c?void 0:c.language)!=null?{language:c.language}:{},...(null==(d=null==c?void 0:c.streaming)?void 0:d.delay)!=null?{delay:c.streaming.delay}:{}},turn_detection:null}},...(null==(e=null==c?void 0:c.streaming)?void 0:e.include)!=null?{include:c.streaming.include}:{}}}}({modelId:this.modelId,inputAudioFormat:a.inputAudioFormat,providerOptions:l});return{request:{body:p},response:{timestamp:k,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,sessionUpdate:e,language:f,warnings:g,audio:h,abortSignal:i,includeRawChunks:j}){let k=!1,l=()=>{};return new ReadableStream({start:m=>{let n,o,p=function(a){var b;let c;for(let[b,d]of Object.entries(a))"authorization"===b.toLowerCase()&&null!=d&&(c=d);let d=null==(b=null==c?void 0:c.match(/^bearer\s+(.+)$/i))?void 0:b[1];return null==d?{protocols:["realtime"],headers:a}:{protocols:["realtime",`openai-insecure-api-key.${d}`],headers:Object.fromEntries(Object.entries(a).filter(([a])=>"authorization"!==a.toLowerCase()))}}(d);l=a=>{null!=n?n.cancel().catch(()=>{}):h.cancel().catch(()=>{}),null==o||o.close(a)};let q=a=>{k||(k=!0,l(),m.error(a))},r=async a=>{n=h.getReader();try{for(;;){let{done:b,value:d}=await n.read();if(b||k)break;a.send(JSON.stringify({type:"input_audio_buffer.append",audio:(0,c.convertToBase64)(d)})),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{n.releaseLock(),n=void 0}k||a.send(JSON.stringify({type:"input_audio_buffer.commit"}))};o=(0,c.connectToWebSocket)({url:b,protocols:p.protocols,headers:p.headers,webSocket:a,abortSignal:i,onAbort:q,onProcessingError:q,onOpen:a=>{m.enqueue({type:"stream-start",warnings:g}),a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:async a=>{var b,d,e,g,h,i;let n=await (0,c.safeParseJSON)({text:a});if(!n.success)return;let o=n.value;switch(j&&m.enqueue({type:"raw",rawValue:o}),o.type){case"conversation.item.input_audio_transcription.delta":m.enqueue({type:"transcript-delta",id:o.item_id,delta:null!=(b=o.delta)?b:""});break;case"conversation.item.input_audio_transcription.completed":h=null!=(d=o.transcript)?d:"",i=o.item_id,k||(k=!0,null!=i&&m.enqueue({type:"transcript-final",id:i,text:h}),m.enqueue({type:"finish",text:h,segments:[],language:f}),m.close(),l(1e3));break;case"error":q(Error(null!=(g=null==(e=o.error)?void 0:e.message)?g:"OpenAI realtime error"))}},onSocketError:()=>{q(Error("OpenAI realtime transcription error"))},onClose:()=>{k||(k=!0,l(),m.close())}})},cancel:()=>{k||(k=!0,l())}})}({webSocket:this.config.webSocket,url:(0,c.toWebSocketUrl)(this.config.url({path:"/realtime?intent=transcription",modelId:this.modelId})),headers:o,sessionUpdate:p,language:null==l?void 0:l.language,warnings:m,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bX=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),bY=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doStream(a){var b,d,e,g,h;if(null==a.targetLanguage)throw new f.InvalidArgumentError({argument:"targetLanguage",message:`targetLanguage is required for translation model '${this.modelId}'.`});let i=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date;await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a.providerOptions,schema:bX});let j=[];(function(a){if("audio/pcm"!==a.type||null!=a.rate&&24e3!==a.rate)throw new f.InvalidArgumentError({argument:"inputAudioFormat",message:"The OpenAI Realtime translation API only supports 24kHz 16-bit PCM input audio."})})(a.inputAudioFormat),null!=a.sourceLanguage&&j.push({type:"unsupported",feature:"sourceLanguage",details:"The OpenAI Realtime translation API auto-detects the source language and does not accept a source language."}),null!=a.outputAudioFormat&&j.push({type:"unsupported",feature:"outputAudioFormat",details:"The OpenAI Realtime translation API always outputs 24kHz 16-bit PCM audio and does not accept an output audio format."});let k=(0,c.combineHeaders)(null==(h=(g=this.config).headers)?void 0:h.call(g),a.headers),l=function({targetLanguage:a}){return{type:"session.update",session:{audio:{input:{transcription:{model:"gpt-realtime-whisper"},noise_reduction:null},output:{language:a}}}}}({targetLanguage:a.targetLanguage});return{request:{body:l},response:{timestamp:i,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,sessionUpdate:e,warnings:f,audio:g,abortSignal:h,includeRawChunks:i}){let j=!1,k=()=>{};return new ReadableStream({start:l=>{let m,n,o=function(a){var b;let c;for(let[b,d]of Object.entries(a))"authorization"===b.toLowerCase()&&null!=d&&(c=d);let d=null==(b=null==c?void 0:c.match(/^bearer\s+(.+)$/i))?void 0:b[1];return null==d?{protocols:["realtime"],headers:a}:{protocols:["realtime",`openai-insecure-api-key.${d}`],headers:Object.fromEntries(Object.entries(a).filter(([a])=>"authorization"!==a.toLowerCase()))}}(d),p="",q="";k=a=>{null!=m?m.cancel().catch(()=>{}):g.cancel().catch(()=>{}),null==n||n.close(a)};let r=a=>{j||(j=!0,k(),l.error(a))},s=async a=>{m=g.getReader();try{for(;;){let{done:b,value:d}=await m.read();if(b||j)break;a.send(JSON.stringify({type:"session.input_audio_buffer.append",audio:(0,c.convertToBase64)(d)})),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{m.releaseLock(),m=void 0}j||a.send(JSON.stringify({type:"session.close"}))};n=(0,c.connectToWebSocket)({url:b,protocols:o.protocols,headers:o.headers,webSocket:a,abortSignal:h,onAbort:r,onProcessingError:r,onOpen:a=>{l.enqueue({type:"stream-start",warnings:f}),a.send(JSON.stringify(e)),s(a).catch(r)},onMessageText:async a=>{var b,d,e,f,g,h;if(j)return;let m=await (0,c.safeParseJSON)({text:a});if(!m.success)return;let n=m.value;switch(i&&l.enqueue({type:"raw",rawValue:n}),n.type){case"session.output_audio.delta":n.delta&&l.enqueue({type:"audio",audio:n.delta});break;case"session.output_transcript.delta":q+=null!=(b=n.delta)?b:"",l.enqueue({type:"output-text-delta",delta:null!=(d=n.delta)?d:""});break;case"session.input_transcript.delta":p+=null!=(e=n.delta)?e:"",l.enqueue({type:"source-transcript-delta",delta:null!=(f=n.delta)?f:""});break;case"session.closed":j||(j=!0,""!==p&&l.enqueue({type:"source-transcript-final",text:p}),""!==q&&l.enqueue({type:"output-text-final",text:q}),l.enqueue({type:"finish",sourceText:p,outputText:q,usage:void 0}),l.close(),k(1e3));break;case"error":l.enqueue({type:"error",error:Error(null!=(h=null==(g=n.error)?void 0:g.message)?h:"OpenAI realtime error")})}},onSocketError:()=>{r(Error("OpenAI realtime translation error"))},onClose:({code:a,reason:b})=>{j||r(Error(`OpenAI realtime translation WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}})},cancel:()=>{j||(j=!0,k())}})}({webSocket:this.config.webSocket,url:(0,c.toWebSocketUrl)(this.config.url({path:`/realtime/translations?model=${encodeURIComponent(this.modelId)}`,modelId:this.modelId})),headers:k,sessionUpdate:l,warnings:j,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bZ=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),name:e.z.string().nullish(),description:e.z.string().nullish(),default_version:e.z.string().nullish(),latest_version:e.z.string().nullish(),created_at:e.z.number(),updated_at:e.z.number().nullish()})));(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),version:e.z.string().nullish(),name:e.z.string().nullish(),description:e.z.string().nullish()})));var b$=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async uploadSkill(a){let b=[];null!=a.displayTitle&&b.push({type:"unsupported",feature:"displayTitle"});let d=new FormData;for(let b of a.files){let a=(0,c.convertInlineFileDataToUint8Array)(b.data);d.append("files[]",new Blob([a]),b.path)}let{value:e}=await (0,c.postFormDataToApi)({url:this.config.url({path:"/skills"}),headers:(0,c.combineHeaders)(this.config.headers()),formData:d,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bZ),fetch:this.config.fetch});return{providerReference:{openai:e.id},...null!=e.name?{name:e.name}:{},...null!=e.description?{description:e.description}:{},...null!=e.latest_version?{latestVersion:e.latest_version}:{},providerMetadata:{openai:{...null!=e.default_version?{defaultVersion:e.default_version}:{},...null!=e.created_at?{createdAt:e.created_at}:{},...null!=e.updated_at?{updatedAt:e.updated_at}:{}}},warnings:b}}};function b_(a={}){var b,d;let e=null!=(b=(0,c.withoutTrailingSlash)((0,c.validateBaseURL)((0,c.loadOptionalSetting)({settingValue:a.baseURL,environmentVariableName:"OPENAI_BASE_URL"}))))?b:"https://api.openai.com/v1",f=null!=(d=a.name)?d:"openai",g=()=>(0,c.withUserAgentSuffix)({Authorization:`Bearer ${(0,c.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":a.organization,"OpenAI-Project":a.project,...a.headers},"ai-sdk/openai/4.0.60"),h=b=>new H(b,{provider:`${f}.embedding`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),i=b=>new T(b,{provider:`${f}.image`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),j=b=>new bW(b,{provider:`${f}.transcription`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,webSocket:a.webSocket}),k=b=>new bY(b,{provider:`${f}.speech-translation`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,webSocket:a.webSocket}),l=b=>new bR(b,{provider:`${f}.speech`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),m=a=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return n(a)},n=b=>new bJ(b,{provider:`${f}.responses`,baseURL:e,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,fileIdPrefixes:["file-"]}),o=b=>new bP(b,{provider:`${f}.realtime`,baseURL:e,headers:g,fetch:a.fetch}),p=Object.assign(a=>o(a),{getToken:async a=>{let b=o(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),q=function(a){return m(a)};return q.specificationVersion="v4",q.languageModel=m,q.chat=b=>new w(b,{provider:`${f}.chat`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.completion=b=>new D(b,{provider:`${f}.completion`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.responses=n,q.embedding=h,q.embeddingModel=h,q.textEmbedding=h,q.textEmbeddingModel=h,q.image=i,q.imageModel=i,q.transcription=j,q.transcriptionModel=j,q.translation=k,q.speechTranslationModel=k,q.speech=l,q.speechModel=l,q.files=()=>new M({provider:`${f}.files`,baseURL:e,headers:g,fetch:a.fetch}),q.skills=()=>new b$({provider:`${f}.skills`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.experimental_realtime=p,q.tools=aU,q}b_(),a.s(["createOpenAI",0,b_])},655819,a=>{"use strict";var b=a.i(652685),c=a.i(527990),d=a.i(912735),e=a.i(53112),f=e.z.object({imageDetail:e.z.enum(["low","high","auto"]).optional()});async function g(a){var d;let e=[];for(let{role:g,content:h}of a)switch(g){case"system":e.push({role:"system",content:h});break;case"user":{if(1===h.length&&"text"===h[0].type){e.push({role:"user",content:h[0].text});break}let a=[];for(let d of h)switch(d.type){case"text":a.push({type:"text",text:d.text});break;case"file":switch(d.data.type){case"reference":a.push({type:"file",file:{file_id:(0,c.resolveProviderReference)({reference:d.data.reference,provider:"xai"})}});break;case"text":throw new b.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":if("image"===(0,c.getTopLevelMediaType)(d.mediaType)){let b=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d.providerOptions,schema:f});a.push({type:"image_url",image_url:{url:"url"===d.data.type?d.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:d})};base64,${(0,c.convertToBase64)(d.data.data)}`,...(null==b?void 0:b.imageDetail)!=null&&{detail:b.imageDetail}}})}else throw new b.UnsupportedFunctionalityError({functionality:`file part media type ${d.mediaType}`})}}e.push({role:"user",content:a});break}case"assistant":{let a="",b=[];for(let c of h)switch(c.type){case"text":a+=c.text;break;case"tool-call":b.push({id:c.toolCallId,type:"function",function:{name:c.toolName,arguments:JSON.stringify(c.input)}})}e.push({role:"assistant",content:a,tool_calls:b.length>0?b:void 0});break}case"tool":for(let a of h){let b;if("tool-approval-response"===a.type)continue;let c=a.output;switch(c.type){case"text":case"error-text":b=c.value;break;case"execution-denied":b=null!=(d=c.reason)?d:"Tool call execution denied.";break;case"content":case"json":case"error-json":b=JSON.stringify(c.value)}e.push({role:"tool",tool_call_id:a.toolCallId,content:b})}break;default:throw Error(`Unsupported role: ${g}`)}return{messages:e,warnings:[]}}function h(a){var b,c,d,e;let f=null!=(c=null==(b=a.prompt_tokens_details)?void 0:b.cached_tokens)?c:0,g=null!=(e=null==(d=a.completion_tokens_details)?void 0:d.reasoning_tokens)?e:0,h=f<=a.prompt_tokens;return{inputTokens:{total:h?a.prompt_tokens:a.prompt_tokens+f,noCache:h?a.prompt_tokens-f:a.prompt_tokens,cacheRead:f,cacheWrite:void 0},outputTokens:{total:a.completion_tokens+g,text:a.completion_tokens,reasoning:g},raw:a}}function i({id:a,model:b,created:d,created_at:e}){return(0,c.createLanguageModelResponseMetadata)({id:a,model:b,created:null!=d?d:e})}function j(a){switch(a){case"stop":return"stop";case"length":return"length";case"tool_calls":case"function_call":return"tool-calls";case"content_filter":return"content-filter";default:return"other"}}var k=/^grok-4\.20(-\d{4})?-(non-)?reasoning$/,l=e.z.object({type:e.z.literal("web"),country:e.z.string().length(2).optional(),excludedWebsites:e.z.array(e.z.string()).max(5).optional(),allowedWebsites:e.z.array(e.z.string()).max(5).optional(),safeSearch:e.z.boolean().optional()}),m=e.z.object({type:e.z.literal("x"),excludedXHandles:e.z.array(e.z.string()).optional(),includedXHandles:e.z.array(e.z.string()).optional(),postFavoriteCount:e.z.number().int().optional(),postViewCount:e.z.number().int().optional(),xHandles:e.z.array(e.z.string()).optional()}),n=e.z.object({type:e.z.literal("news"),country:e.z.string().length(2).optional(),excludedWebsites:e.z.array(e.z.string()).max(5).optional(),safeSearch:e.z.boolean().optional()}),o=e.z.object({type:e.z.literal("rss"),links:e.z.array(e.z.string().url()).max(1)}),p=e.z.discriminatedUnion("type",[l,m,n,o]),q=e.z.object({reasoningEffort:e.z.enum(["none","low","medium","high","xhigh"]).optional(),logprobs:e.z.boolean().optional(),topLogprobs:e.z.number().int().min(0).max(8).optional(),serviceTier:e.z.enum(["default","priority"]).optional(),parallel_function_calling:e.z.boolean().optional(),searchParameters:e.z.object({mode:e.z.enum(["off","auto","on"]),returnCitations:e.z.boolean().optional(),fromDate:e.z.string().optional(),toDate:e.z.string().optional(),maxSearchResults:e.z.number().min(1).max(50).optional(),sources:e.z.array(p).optional()}).optional()}),r=e.z.object({error:e.z.object({message:e.z.string(),type:e.z.string().nullish(),param:e.z.any().nullish(),code:e.z.union([e.z.string(),e.z.number()]).nullish()})}),s=e.z.object({code:e.z.string(),error:e.z.string()}),t=e.z.object({error:e.z.string()}),u=e.z.union([r,s,t]),v=(0,c.createJsonErrorResponseHandler)({errorSchema:u,errorToMessage:a=>"string"==typeof a.error?"code"in a?`${a.code}: ${a.error}`:a.error:a.error.message});function w(a){if(Array.isArray(a))return a.map(w);if(null==a||"object"!=typeof a)return a;let b={};for(let[c,d]of Object.entries(a))("additionalProperties"!==c||!1!==d)&&(b[c]=w(d));return b}var x=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:d,temperature:e,topP:f,topK:h,frequencyPenalty:i,presencePenalty:j,stopSequences:l,seed:m,reasoning:n,responseFormat:o,providerOptions:p,tools:r,toolChoice:s}){var t,u,v,x;let y=[],z=null!=(t=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:p,schema:q}))?t:{};null!=h&&y.push({type:"unsupported",feature:"topK"}),null!=i&&y.push({type:"unsupported",feature:"frequencyPenalty"}),null!=j&&y.push({type:"unsupported",feature:"presencePenalty"}),null!=l&&y.push({type:"unsupported",feature:"stopSequences"});let{messages:A,warnings:B}=await g(a);y.push(...B);let{tools:C,toolChoice:D,toolWarnings:E}=function({tools:a,toolChoice:c}){a=(null==a?void 0:a.length)?a:void 0;let d=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:d};let e=[];for(let b of a)"provider"===b.type?d.push({type:"unsupported",feature:`provider-defined tool ${b.name}`}):e.push({type:"function",function:{name:b.name,description:b.description,parameters:w(b.inputSchema),...null!=b.strict?{strict:b.strict}:{}}});if(null==c)return{tools:e,toolChoice:void 0,toolWarnings:d};let f=c.type;switch(f){case"auto":case"none":return{tools:e,toolChoice:f,toolWarnings:d};case"required":return{tools:e,toolChoice:"required",toolWarnings:d};case"tool":return{tools:e,toolChoice:{type:"function",function:{name:c.toolName}},toolWarnings:d};default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${f}`})}}({tools:r,toolChoice:s});y.push(...E);let F=z.reasoningEffort;return null==F&&(0,c.isCustomReasoning)(n)&&((x=this.modelId,k.test(x))?y.push({type:"unsupported",feature:"reasoning",details:`reasoning "${n}" is not supported by this model.`}):F="none"===n?"none":(0,c.mapReasoningToProviderEffort)({reasoning:n,effortMap:{minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"grok-4.6"===this.modelId?"xhigh":"high"},warnings:y})),{args:{model:this.modelId,logprobs:!0===z.logprobs||null!=z.topLogprobs||void 0,top_logprobs:z.topLogprobs,max_completion_tokens:d,temperature:e,top_p:f,seed:m,reasoning_effort:F,service_tier:z.serviceTier,parallel_function_calling:z.parallel_function_calling,response_format:(null==o?void 0:o.type)==="json"?null!=o.schema?{type:"json_schema",json_schema:{name:null!=(u=o.name)?u:"response",schema:o.schema,strict:!0}}:{type:"json_object"}:void 0,search_parameters:z.searchParameters?{mode:z.searchParameters.mode,return_citations:z.searchParameters.returnCitations,from_date:z.searchParameters.fromDate,to_date:z.searchParameters.toDate,max_search_results:z.searchParameters.maxSearchResults,sources:null==(v=z.searchParameters.sources)?void 0:v.map(a=>{var b;return{type:a.type,..."web"===a.type&&{country:a.country,excluded_websites:a.excludedWebsites,allowed_websites:a.allowedWebsites,safe_search:a.safeSearch},..."x"===a.type&&{excluded_x_handles:a.excludedXHandles,included_x_handles:null!=(b=a.includedXHandles)?b:a.xHandles,post_favorite_count:a.postFavoriteCount,post_view_count:a.postViewCount},..."news"===a.type&&{country:a.country,excluded_websites:a.excludedWebsites,safe_search:a.safeSearch},..."rss"===a.type&&{links:a.links}}})}:void 0,messages:A,tools:C,tool_choice:D},warnings:y}}async doGenerate(a){var d,e,f,g;let{args:k,warnings:l}=await this.getArgs(a),m=`${null!=(d=this.config.baseURL)?d:"https://api.x.ai/v1"}/chat/completions`,{responseHeaders:n,value:o,rawValue:p}=await (0,c.postJsonToApi)({url:m,headers:(0,c.combineHeaders)(null==(f=(e=this.config).headers)?void 0:f.call(e),a.headers),body:k,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(z),abortSignal:a.abortSignal,fetch:this.config.fetch});if(null!=o.error)throw new b.APICallError({message:o.error,url:m,requestBodyValues:k,statusCode:200,responseHeaders:n,responseBody:JSON.stringify(p),isRetryable:"The service is currently unavailable"===o.code});let q=o.choices[0],r=[];if(null!=q.message.content&&q.message.content.length>0){let a=q.message.content,b=k.messages[k.messages.length-1];(null==b?void 0:b.role)==="assistant"&&a===b.content&&(a=""),a.length>0&&r.push({type:"text",text:a})}if(null!=q.message.reasoning_content&&q.message.reasoning_content.length>0&&r.push({type:"reasoning",text:q.message.reasoning_content}),null!=q.message.tool_calls)for(let a of q.message.tool_calls)r.push({type:"tool-call",toolCallId:a.id,toolName:a.function.name,input:a.function.arguments});if(null!=o.citations)for(let a of o.citations)r.push({type:"source",sourceType:"url",id:this.config.generateId(),url:a});return{content:r,finishReason:{unified:j(q.finish_reason),raw:null!=(g=q.finish_reason)?g:void 0},usage:o.usage?h(o.usage):{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...null!=o.service_tier&&{providerMetadata:{xai:{serviceTier:o.service_tier}}},request:{body:k},response:{...i(o),headers:n,body:p},warnings:l}}async doStream(a){var d,e,f;let g,k,l,{args:m,warnings:n}=await this.getArgs(a),o={...m,stream:!0,stream_options:{include_usage:!0}},p=`${null!=(d=this.config.baseURL)?d:"https://api.x.ai/v1"}/chat/completions`,{responseHeaders:q,value:r}=await (0,c.postJsonToApi)({url:p,headers:(0,c.combineHeaders)(null==(f=(e=this.config).headers)?void 0:f.call(e),a.headers),body:o,failedResponseHandler:v,successfulResponseHandler:async({response:a})=>{let d=(0,c.extractResponseHeaders)(a),e=a.headers.get("content-type");if(null==e?void 0:e.includes("application/json")){let e=await a.text(),f=await (0,c.safeParseJSON)({text:e,schema:B});if(f.success)throw new b.APICallError({message:f.value.error,url:p,requestBodyValues:o,statusCode:200,responseHeaders:d,responseBody:e,isRetryable:"The service is currently unavailable"===f.value.code});throw new b.APICallError({message:"Invalid JSON response",url:p,requestBodyValues:o,statusCode:200,responseHeaders:d,responseBody:e})}return(0,c.createEventSourceResponseHandler)(A)({response:a,url:p,requestBodyValues:o})},abortSignal:a.abortSignal,fetch:this.config.fetch}),s={unified:"other",raw:void 0},t=!0,u={},w={},x=this;return{stream:r.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:n})},transform(b,c){if(a.includeRawChunks&&c.enqueue({type:"raw",rawValue:b.rawValue}),!b.success)return void c.enqueue({type:"error",error:b.error});let d=b.value;if(t&&(c.enqueue({type:"response-metadata",...i(d)}),t=!1),null!=d.citations)for(let a of d.citations)c.enqueue({type:"source",sourceType:"url",id:x.config.generateId(),url:a});null!=d.usage&&(g=h(d.usage)),null!=d.service_tier&&(k=d.service_tier);let e=d.choices[0];if((null==e?void 0:e.finish_reason)!=null&&(s={unified:j(e.finish_reason),raw:e.finish_reason}),(null==e?void 0:e.delta)==null)return;let f=e.delta,m=e.index;if(null!=f.content&&f.content.length>0){let a=f.content;null==l||u[l].ended||(c.enqueue({type:"reasoning-end",id:l}),u[l].ended=!0,l=void 0);let b=o.messages[o.messages.length-1];if((null==b?void 0:b.role)==="assistant"&&a===b.content)return;let e=`text-${d.id||m}`;null==u[e]&&(u[e]={type:"text",ended:!1},c.enqueue({type:"text-start",id:e})),c.enqueue({type:"text-delta",id:e,delta:a})}if(null!=f.reasoning_content&&f.reasoning_content.length>0){let a=`reasoning-${d.id||m}`;if(w[a]===f.reasoning_content)return;w[a]=f.reasoning_content,null==u[a]&&(u[a]={type:"reasoning",ended:!1},l=a,c.enqueue({type:"reasoning-start",id:a})),c.enqueue({type:"reasoning-delta",id:a,delta:f.reasoning_content})}if(null!=f.tool_calls)for(let a of(null==l||u[l].ended||(c.enqueue({type:"reasoning-end",id:l}),u[l].ended=!0,l=void 0),f.tool_calls)){let b=a.id;c.enqueue({type:"tool-input-start",id:b,toolName:a.function.name}),c.enqueue({type:"tool-input-delta",id:b,delta:a.function.arguments}),c.enqueue({type:"tool-input-end",id:b}),c.enqueue({type:"tool-call",toolCallId:b,toolName:a.function.name,input:a.function.arguments})}},flush(a){for(let[b,c]of Object.entries(u))c.ended||a.enqueue({type:"text"===c.type?"text-end":"reasoning-end",id:b});a.enqueue({type:"finish",finishReason:s,usage:null!=g?g:{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...null!=k&&{providerMetadata:{xai:{serviceTier:k}}}})}})),request:{body:o},response:{headers:q}}}},y=e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number(),cost_in_usd_ticks:e.z.number().nullish(),prompt_tokens_details:e.z.object({text_tokens:e.z.number().nullish(),audio_tokens:e.z.number().nullish(),image_tokens:e.z.number().nullish(),cached_tokens:e.z.number().nullish()}).catchall(e.z.json()).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),audio_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).catchall(e.z.json()).nullish()}).catchall(e.z.json()),z=e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({message:e.z.object({role:e.z.enum(["assistant","tool"]),content:e.z.string().nullish(),reasoning_content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish()}),index:e.z.number(),finish_reason:e.z.string().nullish()})).nullish(),object:e.z.literal("chat.completion").nullish(),usage:y.nullish(),citations:e.z.array(e.z.string().url()).nullish(),service_tier:e.z.string().nullish(),code:e.z.string().nullish(),error:e.z.string().nullish()}),A=e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({delta:e.z.object({role:e.z.enum(["assistant"]).optional(),content:e.z.string().nullish(),reasoning_content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish()}),finish_reason:e.z.string().nullish(),index:e.z.number()})),usage:y.nullish(),citations:e.z.array(e.z.string().url()).nullish(),service_tier:e.z.string().nullish()}),B=e.z.object({code:e.z.string(),error:e.z.string()}),C=e.z.object({aspect_ratio:e.z.string().optional(),output_format:e.z.string().optional(),sync_mode:e.z.boolean().optional(),resolution:e.z.enum(["1k","2k"]).optional(),quality:e.z.enum(["low","medium","high"]).optional(),user:e.z.string().optional()}),D=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=3}get provider(){return this.config.provider}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}async doGenerate({prompt:a,n:b,size:d,aspectRatio:e,seed:f,providerOptions:g,headers:h,abortSignal:i,files:j,mask:k}){var l,m,n,o,p,q,r;let s=[];null!=d&&s.push({type:"unsupported",feature:"size",details:"This model does not support the `size` option. Use `aspectRatio` instead."}),null!=f&&s.push({type:"unsupported",feature:"seed"}),null!=k&&s.push({type:"unsupported",feature:"mask"});let t=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:g,schema:C}),u=null!=j&&j.length>0,w=u?j.map(a=>(0,c.convertImageModelFileToDataUri)(a)):[],x={model:this.modelId,prompt:a,n:b,response_format:"b64_json"};null!=e&&(x.aspect_ratio=e),(null==t?void 0:t.output_format)!=null&&(x.output_format=t.output_format),(null==t?void 0:t.sync_mode)!=null&&(x.sync_mode=t.sync_mode),(null==t?void 0:t.aspect_ratio)!=null&&null==e&&(x.aspect_ratio=t.aspect_ratio),(null==t?void 0:t.resolution)!=null&&(x.resolution=t.resolution),(null==t?void 0:t.quality)!=null&&(x.quality=t.quality),(null==t?void 0:t.user)!=null&&(x.user=t.user),1===w.length?x.image={url:w[0],type:"image_url"}:w.length>1&&(x.images=w.map(a=>({url:a,type:"image_url"})));let y=null!=(l=this.config.baseURL)?l:"https://api.x.ai/v1",z=null!=(o=null==(n=null==(m=this.config._internal)?void 0:m.currentDate)?void 0:n.call(m))?o:new Date,{value:A,responseHeaders:B}=await (0,c.postJsonToApi)({url:`${y}${u?"/images/edits":"/images/generations"}`,headers:(0,c.combineHeaders)(null==(q=(p=this.config).headers)?void 0:q.call(p),h),body:x,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(E),abortSignal:i,fetch:this.config.fetch});if(A.data.some(a=>!1===a.respect_moderation))throw Error("Image generation was blocked due to a content policy violation.");return{images:A.data.every(a=>null!=a.b64_json)?A.data.map(a=>a.b64_json):await Promise.all(A.data.map(a=>this.downloadImage(a.url,i))),warnings:s,response:{timestamp:z,modelId:this.modelId,headers:B},providerMetadata:{xai:{images:A.data.map(a=>({...a.revised_prompt?{revisedPrompt:a.revised_prompt}:{}})),...(null==(r=A.usage)?void 0:r.cost_in_usd_ticks)!=null?{costInUsdTicks:A.usage.cost_in_usd_ticks}:{}}}}}async downloadImage(a,b){let{value:d}=await (0,c.getFromApi)({url:a,validateUrl:!0,trustedOrigin:this.config.baseURL,abortSignal:b,failedResponseHandler:(0,c.createStatusCodeErrorResponseHandler)(),successfulResponseHandler:(0,c.createBinaryResponseHandler)(),fetch:this.config.fetch});return d}},E=e.z.object({data:e.z.array(e.z.object({url:e.z.string().nullish(),b64_json:e.z.string().nullish(),revised_prompt:e.z.string().nullish(),respect_moderation:e.z.boolean().nullish()})),usage:e.z.object({cost_in_usd_ticks:e.z.number().nullish()}).nullish()}),F=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),bytes:e.z.number().nullish(),created_at:e.z.number().nullish(),expires_at:e.z.number().nullish(),filename:e.z.string().nullish(),purpose:e.z.string().nullish(),status:e.z.string().nullish()}))),G=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),deleted:e.z.boolean()})));async function H({prompt:a}){var d,e,g,h,i,j,k,l,m;let n=[],o=[];for(let p of a)switch(p.role){case"system":n.push({role:"system",content:p.content});break;case"user":{let a=[];for(let d of p.content)switch(d.type){case"text":a.push({type:"input_text",text:d.text});break;case"file":switch(d.data.type){case"reference":a.push({type:"input_file",file_id:(0,c.resolveProviderReference)({reference:d.data.reference,provider:"xai"})});break;case"text":throw new b.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":if("image"===(0,c.getTopLevelMediaType)(d.mediaType)){let b="url"===d.data.type?d.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:d})};base64,${(0,c.convertToBase64)(d.data.data)}`,e=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d.providerOptions,schema:f});a.push({type:"input_image",image_url:b,...(null==e?void 0:e.imageDetail)!=null&&{detail:e.imageDetail}})}else if("url"===d.data.type)a.push({type:"input_file",file_url:d.data.url.toString()});else throw new b.UnsupportedFunctionalityError({functionality:`file part media type ${d.mediaType} as inline data (xAI Responses requires a URL or a Files API reference for non-image files)`})}break;default:o.push({type:"other",message:"xAI Responses API does not support this content type in user messages"})}n.push({role:"user",content:a});break}case"assistant":for(let a of p.content)switch(a.type){case"text":{let b="string"==typeof(null==(e=null==(d=a.providerOptions)?void 0:d.xai)?void 0:e.itemId)?a.providerOptions.xai.itemId:void 0;n.push({role:"assistant",content:a.text,id:b});break}case"tool-call":{if(a.providerExecuted)break;let b="string"==typeof(null==(h=null==(g=a.providerOptions)?void 0:g.xai)?void 0:h.itemId)?a.providerOptions.xai.itemId:void 0;n.push({type:"function_call",id:null!=b?b:a.toolCallId,call_id:a.toolCallId,name:a.toolName,arguments:JSON.stringify(a.input),status:"completed"});break}case"tool-result":break;case"reasoning":{let b="string"==typeof(null==(j=null==(i=a.providerOptions)?void 0:i.xai)?void 0:j.itemId)?a.providerOptions.xai.itemId:void 0,c="string"==typeof(null==(l=null==(k=a.providerOptions)?void 0:k.xai)?void 0:l.reasoningEncryptedContent)?a.providerOptions.xai.reasoningEncryptedContent:void 0;if(null!=b||null!=c){let d=[];a.text.length>0&&d.push({type:"summary_text",text:a.text}),n.push({type:"reasoning",id:null!=b?b:"",summary:d,status:"completed",...null!=c&&{encrypted_content:c}})}else o.push({type:"other",message:"Reasoning parts without itemId or encrypted content cannot be sent back to xAI. Skipping."});break}case"reasoning-file":case"custom":case"file":o.push({type:"other",message:`xAI Responses API does not support ${a.type} in assistant messages`});break;default:o.push({type:"other",message:"xAI Responses API does not support this content type in assistant messages"})}break;case"tool":for(let a of p.content){let b;if("tool-approval-response"===a.type)continue;let d=a.output;switch(d.type){case"text":case"error-text":b=d.value;break;case"execution-denied":b=null!=(m=d.reason)?m:"tool execution denied";break;case"json":case"error-json":b=JSON.stringify(d.value);break;case"content":for(let a of(b=[],d.value))switch(a.type){case"text":b.push({type:"input_text",text:a.text});break;case"file":"image"===(0,c.getTopLevelMediaType)(a.mediaType)&&("data"===a.data.type||"url"===a.data.type)&&b.push({type:"input_image",image_url:"url"===a.data.type?a.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:a})};base64,${(0,c.convertToBase64)(a.data.data)}`})}break;default:b=""}n.push({type:"function_call_output",call_id:a.toolCallId,output:b})}break;default:o.push({type:"other",message:"unsupported message role"})}return{input:n,inputWarnings:o}}function I(a){var b,c,d,e;let f=null!=(c=null==(b=a.input_tokens_details)?void 0:b.cached_tokens)?c:0,g=null!=(e=null==(d=a.output_tokens_details)?void 0:d.reasoning_tokens)?e:0,h=f<=a.input_tokens;return{inputTokens:{total:h?a.input_tokens:a.input_tokens+f,noCache:h?a.input_tokens-f:a.input_tokens,cacheRead:f,cacheWrite:void 0},outputTokens:{total:a.output_tokens,text:a.output_tokens-g,reasoning:g},raw:a}}function J(a){switch(a){case"stop":case"completed":return"stop";case"length":case"max_output_tokens":return"length";case"tool_calls":case"function_call":return"tool-calls";case"content_filter":return"content-filter";default:return"other"}}var K=e.z.union([e.z.object({type:e.z.literal("url_citation"),url:e.z.string(),title:e.z.string().optional()}),e.z.object({type:e.z.string()})]),L=e.z.object({type:e.z.string(),text:e.z.string().optional(),logprobs:e.z.array(e.z.any()).optional(),annotations:e.z.array(K).optional()}),M=e.z.object({type:e.z.string(),text:e.z.string()}),N=e.z.object({name:e.z.string().optional(),arguments:e.z.string().optional(),input:e.z.string().optional(),call_id:e.z.string().optional(),id:e.z.string(),status:e.z.string(),action:e.z.any().optional()}),O=e.z.object({type:e.z.literal("url"),url:e.z.string()}),P=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().nullish(),queries:e.z.array(e.z.string()).nullish(),sources:e.z.array(e.z.unknown()).nullish()}),e.z.object({type:e.z.literal("open_page"),url:e.z.string().nullish(),sources:e.z.array(e.z.unknown()).nullish()}),e.z.object({type:e.z.literal("find_in_page"),url:e.z.string().nullish(),pattern:e.z.string().nullish(),sources:e.z.array(e.z.unknown()).nullish()})]),Q=e.z.object({name:e.z.string().optional(),arguments:e.z.string().optional(),output:e.z.string().optional(),error:e.z.string().optional(),id:e.z.string(),status:e.z.string(),server_label:e.z.string().optional()}),R=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("web_search_call"),...N.shape}),e.z.object({type:e.z.literal("x_search_call"),...N.shape}),e.z.object({type:e.z.literal("code_interpreter_call"),...N.shape}),e.z.object({type:e.z.literal("code_execution_call"),...N.shape}),e.z.object({type:e.z.literal("view_image_call"),...N.shape}),e.z.object({type:e.z.literal("view_x_video_call"),...N.shape}),e.z.object({type:e.z.literal("file_search_call"),id:e.z.string(),status:e.z.string(),queries:e.z.array(e.z.string()).optional(),results:e.z.array(e.z.object({file_id:e.z.string(),filename:e.z.string(),score:e.z.number(),text:e.z.string()})).nullish()}),e.z.object({type:e.z.literal("image_generation_call"),id:e.z.string(),status:e.z.string(),prompt:e.z.string().nullish(),result:e.z.string().nullish()}),e.z.object({type:e.z.literal("custom_tool_call"),...N.shape}),e.z.object({type:e.z.literal("mcp_call"),...Q.shape}),e.z.object({type:e.z.literal("message"),role:e.z.string(),content:e.z.array(L),id:e.z.string(),status:e.z.string()}),e.z.object({type:e.z.literal("function_call"),name:e.z.string(),arguments:e.z.string(),call_id:e.z.string(),id:e.z.string()}),e.z.object({type:e.z.literal("reasoning"),id:e.z.string(),summary:e.z.array(M),content:e.z.array(e.z.object({type:e.z.string(),text:e.z.string()})).nullish(),status:e.z.string(),encrypted_content:e.z.string().nullish()})]),S=e.z.object({input_tokens:e.z.number(),output_tokens:e.z.number(),total_tokens:e.z.number().optional(),input_tokens_details:e.z.object({cached_tokens:e.z.number().optional()}).catchall(e.z.json()).optional(),output_tokens_details:e.z.object({reasoning_tokens:e.z.number().optional()}).catchall(e.z.json()).optional(),num_sources_used:e.z.number().optional(),num_server_side_tools_used:e.z.number().optional(),cost_in_usd_ticks:e.z.number().nullish()}).catchall(e.z.json()),T=e.z.object({id:e.z.string().nullish(),created_at:e.z.number().nullish(),model:e.z.string().nullish(),object:e.z.literal("response"),output:e.z.array(R),usage:S.nullish(),status:e.z.string(),service_tier:e.z.string().nullish()}),U=e.z.union([e.z.object({type:e.z.literal("response.created"),response:T.partial({usage:!0,status:!0})}),e.z.object({type:e.z.literal("response.in_progress"),response:T.partial({usage:!0,status:!0})}),e.z.object({type:e.z.literal("response.output_item.added"),item:R,output_index:e.z.number()}),e.z.object({type:e.z.literal("response.output_item.done"),item:R,output_index:e.z.number()}),e.z.object({type:e.z.literal("response.content_part.added"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),part:L}),e.z.object({type:e.z.literal("response.content_part.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),part:L}),e.z.object({type:e.z.literal("response.output_text.delta"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),delta:e.z.string(),logprobs:e.z.array(e.z.any()).optional()}),e.z.object({type:e.z.literal("response.output_text.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),text:e.z.string(),logprobs:e.z.array(e.z.any()).optional(),annotations:e.z.array(K).optional()}),e.z.object({type:e.z.literal("response.output_text.annotation.added"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),annotation_index:e.z.number(),annotation:K}),e.z.object({type:e.z.literal("response.reasoning_summary_part.added"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),part:M}),e.z.object({type:e.z.literal("response.reasoning_summary_part.done"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),part:M}),e.z.object({type:e.z.literal("response.reasoning_summary_text.delta"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_summary_text.done"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),text:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_text.delta"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_text.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),text:e.z.string()}),e.z.object({type:e.z.literal("response.web_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.web_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.web_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.generating"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.interpreting"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.done"),item_id:e.z.string(),output_index:e.z.number(),code:e.z.string()}),e.z.object({type:e.z.literal("response.custom_tool_call_input.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.custom_tool_call_input.done"),item_id:e.z.string(),output_index:e.z.number(),input:e.z.string()}),e.z.object({type:e.z.literal("response.function_call_arguments.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.function_call_arguments.done"),item_id:e.z.string(),output_index:e.z.number(),arguments:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.failed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call_arguments.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call_arguments.done"),item_id:e.z.string(),output_index:e.z.number(),arguments:e.z.string().optional()}),e.z.object({type:e.z.literal("response.mcp_call_output.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call_output.done"),item_id:e.z.string(),output_index:e.z.number(),output:e.z.string().optional()}),e.z.object({type:e.z.literal("response.incomplete"),response:e.z.object({incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:S.nullish(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.failed"),response:e.z.object({error:e.z.object({code:e.z.string().nullish(),message:e.z.string()}).nullish(),incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:S.nullish()})}),e.z.object({type:e.z.literal("error"),code:e.z.string().nullish(),message:e.z.string(),param:e.z.string().nullish()}),e.z.object({type:e.z.literal("response.done"),response:T}),e.z.object({type:e.z.literal("response.completed"),response:T})]),V=e.z.object({reasoningEffort:e.z.enum(["none","low","medium","high","xhigh"]).optional(),reasoningSummary:e.z.enum(["auto","concise","detailed"]).optional(),logprobs:e.z.boolean().optional(),topLogprobs:e.z.number().int().min(0).max(8).optional(),serviceTier:e.z.enum(["default","priority"]).optional(),store:e.z.boolean().optional(),previousResponseId:e.z.string().optional(),include:e.z.array(e.z.enum(["file_search_call.results"])).nullish()}),W=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({vectorStoreIds:e.z.array(e.z.string()),maxNumResults:e.z.number().optional()}))),X=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({queries:e.z.array(e.z.string()),results:e.z.array(e.z.object({fileId:e.z.string(),filename:e.z.string(),score:e.z.number().min(0).max(1),text:e.z.string()})).nullable()}))),Y=(0,c.createProviderExecutedToolFactory)({id:"xai.file_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:X}),Z=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.enum(["auto","generate","edit"]).optional()}))),$=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),_=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({result:e.z.string(),prompt:e.z.string().optional()}))),aa=(0,c.createProviderExecutedToolFactory)({id:"xai.image_generation",inputSchema:$,outputSchema:_}),ab=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({serverUrl:e.z.string().describe("The URL of the MCP server"),serverLabel:e.z.string().optional().describe("A label for the MCP server"),serverDescription:e.z.string().optional().describe("Description of the MCP server"),allowedTools:e.z.array(e.z.string()).optional().describe("List of allowed tool names"),headers:e.z.record(e.z.string(),e.z.string()).optional().describe("Custom headers to send"),authorization:e.z.string().optional().describe("Authorization header value")}))),ac=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({name:e.z.string(),arguments:e.z.string(),result:e.z.unknown()}))),ad=(0,c.createProviderExecutedToolFactory)({id:"xai.mcp",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:ac}),ae=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({allowedDomains:e.z.array(e.z.string()).max(5).optional(),excludedDomains:e.z.array(e.z.string()).max(5).optional(),enableImageSearch:e.z.boolean().optional(),enableImageUnderstanding:e.z.boolean().optional()}))),af=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().optional(),queries:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("openPage"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("findInPage"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).optional(),sources:e.z.array(e.z.object({type:e.z.literal("url"),url:e.z.string()})).optional()}))),ag=(0,c.createProviderExecutedToolFactory)({id:"xai.web_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:af}),ah=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({allowedXHandles:e.z.array(e.z.string()).max(10).optional(),excludedXHandles:e.z.array(e.z.string()).max(10).optional(),fromDate:e.z.string().optional(),toDate:e.z.string().optional(),enableImageUnderstanding:e.z.boolean().optional(),enableVideoUnderstanding:e.z.boolean().optional()}))),ai=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({query:e.z.string(),posts:e.z.array(e.z.object({author:e.z.string(),text:e.z.string(),url:e.z.string(),likes:e.z.number()}))}))),aj=(0,c.createProviderExecutedToolFactory)({id:"xai.x_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:ai});async function ak({tools:a,toolChoice:d}){let e=(null==a?void 0:a.length)?a:void 0,f=[];if(null==e)return{tools:void 0,toolChoice:void 0,toolWarnings:f};let g=[],h=new Map;for(let a of e)if(h.set(a.name,a),"provider"===a.type)switch(a.id){case"xai.web_search":{let b=await (0,c.validateTypes)({value:a.args,schema:ae});g.push({type:"web_search",allowed_domains:b.allowedDomains,excluded_domains:b.excludedDomains,enable_image_search:b.enableImageSearch,enable_image_understanding:b.enableImageUnderstanding});break}case"xai.x_search":{let b=await (0,c.validateTypes)({value:a.args,schema:ah});g.push({type:"x_search",allowed_x_handles:b.allowedXHandles,excluded_x_handles:b.excludedXHandles,from_date:b.fromDate,to_date:b.toDate,enable_image_understanding:b.enableImageUnderstanding,enable_video_understanding:b.enableVideoUnderstanding});break}case"xai.code_execution":g.push({type:"code_interpreter"});break;case"xai.view_image":g.push({type:"view_image"});break;case"xai.view_x_video":g.push({type:"view_x_video"});break;case"xai.image_generation":{let b=await (0,c.validateTypes)({value:a.args,schema:Z});g.push({type:"image_generation",action:b.action});break}case"xai.file_search":{let b=await (0,c.validateTypes)({value:a.args,schema:W});g.push({type:"file_search",vector_store_ids:b.vectorStoreIds,max_num_results:b.maxNumResults});break}case"xai.mcp":{let b=await (0,c.validateTypes)({value:a.args,schema:ab});g.push({type:"mcp",server_url:b.serverUrl,server_label:b.serverLabel,server_description:b.serverDescription,allowed_tools:b.allowedTools,headers:b.headers,authorization:b.authorization});break}default:f.push({type:"unsupported",feature:`provider-defined tool ${a.name}`})}else g.push({type:"function",name:a.name,description:a.description,parameters:w(a.inputSchema),...null!=a.strict?{strict:a.strict}:{}});if(null==d)return{tools:g,toolChoice:void 0,toolWarnings:f};let i=d.type;switch(i){case"auto":case"none":return{tools:g,toolChoice:i,toolWarnings:f};case"required":return{tools:g,toolChoice:"required",toolWarnings:f};case"tool":{let a=h.get(d.toolName);if(null==a)return{tools:g,toolChoice:void 0,toolWarnings:f};if("provider"===a.type)return f.push({type:"unsupported",feature:`toolChoice for server-side tool "${a.name}"`}),{tools:g,toolChoice:void 0,toolWarnings:f};return{tools:g,toolChoice:{type:"function",name:a.name},toolWarnings:f}}default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${i}`})}}function al({message:a,code:b,eventType:d,data:e}){var f,g;let h,i="number"==typeof(h="string"==typeof(f=b)&&/^\d{3}$/.test(f)?Number(f):f)&&Number.isInteger(h)&&h>=400&&h<=599?h:void 0;return(0,c.createProviderStreamError)({message:a,type:d,code:null!=b?b:void 0,...null!=i?{statusCode:i,isRetryable:408===(g=i)||409===g||429===g||g>=500}:function(a){switch(a){case"rate_limit_exceeded":case"rate_limit_error":return{statusCode:429,isRetryable:!0};case"insufficient_quota":return{statusCode:429,isRetryable:!1};case"api_error":case"internal_server_error":case"server_error":return{statusCode:500,isRetryable:!0};case"overloaded_error":case"service_unavailable":return{statusCode:503,isRetryable:!0};case"timeout":case"timeout_error":return{statusCode:504,isRetryable:!0};case"authentication_error":case"invalid_api_key":return{statusCode:401,isRetryable:!1};case"permission_error":return{statusCode:403,isRetryable:!1};case"not_found_error":case"model_not_found":return{statusCode:404,isRetryable:!1};case"bad_request":case"context_length_exceeded":case"invalid_request_error":return{statusCode:400,isRetryable:!1};default:return{}}}(b),data:e})}var am=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/],"text/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:f,frequencyPenalty:g,presencePenalty:h,stopSequences:i,seed:j,responseFormat:l,providerOptions:m,tools:n,toolChoice:o,reasoning:p}){var q,r,s,t,u,v,w,x,y,z;let A=[],B=null!=(q=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:m,schema:V}))?q:{};null!=f&&A.push({type:"unsupported",feature:"topK"}),null!=g&&A.push({type:"unsupported",feature:"frequencyPenalty"}),null!=h&&A.push({type:"unsupported",feature:"presencePenalty"}),null!=i&&A.push({type:"unsupported",feature:"stopSequences"});let C=null==(r=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.web_search"===a.id))?void 0:r.name,D=null==(s=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.x_search"===a.id))?void 0:s.name,E=null==(t=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.code_execution"===a.id))?void 0:t.name,F=null==(u=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.mcp"===a.id))?void 0:u.name,G=null==(v=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.file_search"===a.id))?void 0:v.name,I=null==(w=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.image_generation"===a.id))?void 0:w.name,{input:J,inputWarnings:K}=await H({prompt:a,store:null==(x=B.store)||x});A.push(...K);let{tools:L,toolChoice:M,toolWarnings:N}=await ak({tools:n,toolChoice:o});A.push(...N);let O=B.include?[...B.include]:void 0;!1===B.store&&(O=null==O?["reasoning.encrypted_content"]:[...O,"reasoning.encrypted_content"]);let P=B.reasoningEffort;null==P&&(0,c.isCustomReasoning)(p)&&((z=this.modelId,k.test(z))?A.push({type:"unsupported",feature:"reasoning",details:`reasoning "${p}" is not supported by this model.`}):P="none"===p?"none":(0,c.mapReasoningToProviderEffort)({reasoning:p,effortMap:{minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"grok-4.6"===this.modelId?"xhigh":"high"},warnings:A}));let Q={model:this.modelId,input:J,logprobs:!0===B.logprobs||null!=B.topLogprobs||void 0,top_logprobs:B.topLogprobs,max_output_tokens:b,temperature:d,top_p:e,seed:j,...(null==l?void 0:l.type)==="json"&&{text:{format:null!=l.schema?{type:"json_schema",strict:!0,name:null!=(y=l.name)?y:"response",description:l.description,schema:l.schema}:{type:"json_object"}}},...(null!=P||null!=B.reasoningSummary)&&{reasoning:{...null!=P&&{effort:P},...null!=B.reasoningSummary&&{summary:B.reasoningSummary}}},...!1===B.store&&{store:B.store},...null!=O&&{include:O},...null!=B.previousResponseId&&{previous_response_id:B.previousResponseId},...null!=B.serviceTier&&{service_tier:B.serviceTier}};return L&&L.length>0&&(Q.tools=L),null!=M&&(Q.tool_choice=M),{args:Q,warnings:A,webSearchToolName:C,xSearchToolName:D,codeExecutionToolName:E,mcpToolName:F,fileSearchToolName:G,imageGenerationToolName:I}}async doGenerate(a){var b,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u;let{args:w,warnings:x,webSearchToolName:y,xSearchToolName:z,codeExecutionToolName:A,mcpToolName:B,fileSearchToolName:C,imageGenerationToolName:D}=await this.getArgs(a),{responseHeaders:E,value:F,rawValue:G}=await (0,c.postJsonToApi)({url:`${null!=(b=this.config.baseURL)?b:"https://api.x.ai/v1"}/responses`,headers:(0,c.combineHeaders)(null==(e=(d=this.config).headers)?void 0:e.call(d),a.headers),body:w,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(T),abortSignal:a.abortSignal,fetch:this.config.fetch}),H=[],K=!1,L=["web_search","web_search_with_snippets","browse_page"],M=["x_user_search","x_keyword_search","x_semantic_search","x_thread_fetch"];for(let a of F.output){if("file_search_call"===a.type){let b=null!=C?C:"file_search";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:"",providerExecuted:!0}),H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:{queries:null!=(f=a.queries)?f:[],results:null!=(h=null==(g=a.results)?void 0:g.map(a=>({fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?h:null}});continue}if("image_generation_call"===a.type){let b=null!=D?D:"image_generation";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:"{}",providerExecuted:!0}),null!=a.result?H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:{result:a.result,...null!=a.prompt&&{prompt:a.prompt}}}):H.push({type:"tool-result",toolCallId:a.id,toolName:b,isError:!0,result:`Image generation failed (status: ${a.status}).`});continue}if("web_search_call"===a.type||"x_search_call"===a.type||"code_interpreter_call"===a.type||"code_execution_call"===a.type||"view_image_call"===a.type||"view_x_video_call"===a.type||"custom_tool_call"===a.type||"mcp_call"===a.type){let b=null!=(j=a.name)?j:"";L.includes(null!=(k=a.name)?k:"")||"web_search_call"===a.type?b=null!=y?y:"web_search":M.includes(null!=(l=a.name)?l:"")||"x_search_call"===a.type?b=null!=z?z:"x_search":"code_execution"===a.name||"code_interpreter_call"===a.type||"code_execution_call"===a.type?b=null!=A?A:"code_execution":"mcp_call"===a.type&&(b=null!=(m=null!=B?B:a.name)?m:"mcp");let c="custom_tool_call"===a.type?null!=(n=a.input)?n:"":"mcp_call"===a.type?null!=(o=a.arguments)?o:"":null!=(p=a.arguments)?p:"";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:c,providerExecuted:!0}),"web_search_call"===a.type&&H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:an(a.action)});continue}switch(a.type){case"message":for(let b of a.content)if(b.text&&H.push({type:"text",text:b.text}),b.annotations)for(let a of b.annotations)"url_citation"===a.type&&"url"in a&&H.push({type:"source",sourceType:"url",id:this.config.generateId(),url:a.url,title:null!=(q=a.title)?q:a.url});break;case"function_call":K=!0,H.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments});break;case"reasoning":{let b=(a.summary.length>0?a.summary.map(a=>a.text):(null!=(r=a.content)?r:[]).map(a=>a.text)).filter(a=>a&&a.length>0).join("");if(b||a.encrypted_content){let c=a.encrypted_content||a.id;H.push({type:"reasoning",text:b,...c&&{providerMetadata:{xai:{...a.encrypted_content&&{reasoningEncryptedContent:a.encrypted_content},...a.id&&{itemId:a.id}}}}})}}}}return{content:H,finishReason:{unified:K?"tool-calls":J(F.status),raw:null!=(s=F.status)?s:void 0},usage:F.usage?I(F.usage):{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...((null==(t=F.usage)?void 0:t.cost_in_usd_ticks)!=null||null!=F.service_tier)&&{providerMetadata:{xai:{...(null==(u=F.usage)?void 0:u.cost_in_usd_ticks)!=null&&{costInUsdTicks:F.usage.cost_in_usd_ticks},...null!=F.service_tier&&{serviceTier:F.service_tier}}}},request:{body:w},response:{...i(F),headers:E,body:G},warnings:x}}async doStream(a){var b,d,e;let f,g,h,{args:j,warnings:k,webSearchToolName:l,xSearchToolName:m,codeExecutionToolName:n,mcpToolName:o,fileSearchToolName:p,imageGenerationToolName:q}=await this.getArgs(a),r={...j,stream:!0},{responseHeaders:s,value:t}=await (0,c.postJsonToApi)({url:`${null!=(b=this.config.baseURL)?b:"https://api.x.ai/v1"}/responses`,headers:(0,c.combineHeaders)(null==(e=(d=this.config).headers)?void 0:e.call(d),a.headers),body:r,failedResponseHandler:v,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(U),abortSignal:a.abortSignal,fetch:this.config.fetch}),u={unified:"other",raw:void 0},w=!1,x=!0,y={},z=new Set,A={},B={},C=this;return{stream:t.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:k})},transform(b,c){var d,e,j,k,r,s,t,v,D,E,F,G,H,K,L,M,N;if(a.includeRawChunks&&c.enqueue({type:"raw",rawValue:b.rawValue}),!b.success)return void c.enqueue({type:"error",error:b.error});let O=b.value;if("response.created"===O.type||"response.in_progress"===O.type){x&&(c.enqueue({type:"response-metadata",...i(O.response)}),x=!1);return}if("response.reasoning_summary_part.added"===O.type){let a=`reasoning-${O.item_id}`;null==B[O.item_id]&&(B[O.item_id]={},c.enqueue({type:"reasoning-start",id:a,providerMetadata:{xai:{itemId:O.item_id}}}))}if("response.reasoning_summary_text.delta"===O.type){let a=`reasoning-${O.item_id}`;c.enqueue({type:"reasoning-delta",id:a,delta:O.delta,providerMetadata:{xai:{itemId:O.item_id}}});return}if("response.reasoning_summary_text.done"===O.type)return;if("response.reasoning_text.delta"===O.type){let a=`reasoning-${O.item_id}`;null==B[O.item_id]&&(B[O.item_id]={},c.enqueue({type:"reasoning-start",id:a,providerMetadata:{xai:{itemId:O.item_id}}})),c.enqueue({type:"reasoning-delta",id:a,delta:O.delta,providerMetadata:{xai:{itemId:O.item_id}}});return}if("response.reasoning_text.done"!==O.type){if("response.output_text.delta"===O.type){let a=`text-${O.item_id}`;null==y[a]&&(y[a]={type:"text"},c.enqueue({type:"text-start",id:a})),c.enqueue({type:"text-delta",id:a,delta:O.delta});return}if("response.output_text.done"===O.type){if(O.annotations)for(let a of O.annotations)"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(d=a.title)?d:a.url});return}if("response.output_text.annotation.added"===O.type){let a=O.annotation;"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(e=a.title)?e:a.url});return}if("response.done"===O.type||"response.completed"===O.type||"response.incomplete"===O.type){let a=O.response;if(a.usage&&(f=I(a.usage),g=null!=(j=a.usage.cost_in_usd_ticks)?j:void 0),h=null!=(k=a.service_tier)?k:void 0,"response.incomplete"===O.type){let b="incomplete_details"in a?null==(r=a.incomplete_details)?void 0:r.reason:void 0;u={unified:b?J(b):"other",raw:null!=b?b:"incomplete"}}else"status"in a&&a.status&&(u={unified:w?"tool-calls":J(a.status),raw:a.status});return}if("response.failed"===O.type){let a=null==(s=O.response.incomplete_details)?void 0:s.reason;u={unified:a?J(a):"error",raw:null!=a?a:"error"},O.response.usage&&(f=I(O.response.usage)),null!=O.response.error&&c.enqueue({type:"error",error:al({message:O.response.error.message,code:O.response.error.code,eventType:O.type,data:O})});return}if("error"===O.type)return void c.enqueue({type:"error",error:al({message:O.message,code:O.code,eventType:O.type,data:O})});if("response.custom_tool_call_input.delta"!==O.type&&"response.custom_tool_call_input.done"!==O.type){if("response.function_call_arguments.delta"===O.type){let a=A[O.output_index];null!=a&&c.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:O.delta});return}if("response.function_call_arguments.done"!==O.type){if("response.image_generation_call.in_progress"===O.type||"response.image_generation_call.generating"===O.type||"response.image_generation_call.completed"===O.type){if(!z.has(O.item_id)){z.add(O.item_id);let a=null!=q?q:"image_generation";c.enqueue({type:"tool-input-start",id:O.item_id,toolName:a}),c.enqueue({type:"tool-input-delta",id:O.item_id,delta:"{}"}),c.enqueue({type:"tool-input-end",id:O.item_id}),c.enqueue({type:"tool-call",toolCallId:O.item_id,toolName:a,input:"{}",providerExecuted:!0})}return}if("response.output_item.added"===O.type||"response.output_item.done"===O.type){let a=O.item;if("reasoning"===a.type){if("response.output_item.done"===O.type){let b=`reasoning-${a.id}`;a.id in B||(B[a.id]={},c.enqueue({type:"reasoning-start",id:b,providerMetadata:{xai:{...a.id&&{itemId:a.id}}}})),c.enqueue({type:"reasoning-end",id:b,providerMetadata:{xai:{...a.encrypted_content&&{reasoningEncryptedContent:a.encrypted_content},...a.id&&{itemId:a.id}}}}),delete B[a.id]}return}if("file_search_call"===a.type){let b=null!=p?p:"file_search";z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:""}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:"",providerExecuted:!0})),"response.output_item.done"===O.type&&c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:{queries:null!=(t=a.queries)?t:[],results:null!=(D=null==(v=a.results)?void 0:v.map(a=>({fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?D:null}});return}if("image_generation_call"===a.type){let b=null!=q?q:"image_generation";z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:"{}"}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:"{}",providerExecuted:!0})),"response.output_item.done"===O.type&&(null!=a.result?c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:{result:a.result,...null!=a.prompt&&{prompt:a.prompt}}}):c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,isError:!0,result:`Image generation failed (status: ${a.status}).`}));return}if("web_search_call"===a.type||"x_search_call"===a.type||"code_interpreter_call"===a.type||"code_execution_call"===a.type||"view_image_call"===a.type||"view_x_video_call"===a.type||"custom_tool_call"===a.type||"mcp_call"===a.type){let b=null!=(E=a.name)?E:"";["web_search","web_search_with_snippets","browse_page"].includes(null!=(F=a.name)?F:"")||"web_search_call"===a.type?b=null!=l?l:"web_search":["x_user_search","x_keyword_search","x_semantic_search","x_thread_fetch"].includes(null!=(G=a.name)?G:"")||"x_search_call"===a.type?b=null!=m?m:"x_search":"code_execution"===a.name||"code_interpreter_call"===a.type||"code_execution_call"===a.type?b=null!=n?n:"code_execution":"mcp_call"===a.type&&(b=null!=(H=null!=o?o:a.name)?H:"mcp");let d="custom_tool_call"===a.type?null!=(K=a.input)?K:"":"mcp_call"===a.type?null!=(L=a.arguments)?L:"":null!=(M=a.arguments)?M:"";("custom_tool_call"===a.type?"response.output_item.done"!==O.type:z.has(a.id))||z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:d}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:d,providerExecuted:!0})),"response.output_item.done"===O.type&&c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:"web_search_call"===a.type?an(a.action):{}});return}if("message"===a.type)for(let b of a.content){if(b.text&&b.text.length>0){let d=`text-${a.id}`;null==y[d]&&(y[d]={type:"text"},c.enqueue({type:"text-start",id:d}),c.enqueue({type:"text-delta",id:d,delta:b.text}))}if(b.annotations)for(let a of b.annotations)"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(N=a.title)?N:a.url})}else"function_call"===a.type&&("response.output_item.added"===O.type?(A[O.output_index]={toolName:a.name,toolCallId:a.call_id},c.enqueue({type:"tool-input-start",id:a.call_id,toolName:a.name})):"response.output_item.done"===O.type&&(w=!0,A[O.output_index]=void 0,c.enqueue({type:"tool-input-end",id:a.call_id}),c.enqueue({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments})))}}}}},flush(a){for(let[b,c]of Object.entries(y))"text"===c.type&&a.enqueue({type:"text-end",id:b});a.enqueue({type:"finish",finishReason:u,usage:null!=f?f:{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...(null!=g||null!=h)&&{providerMetadata:{xai:{...null!=g&&{costInUsdTicks:g},...null!=h&&{serviceTier:h}}}}})}})),request:{body:r},response:{headers:s}}}};function an(a){var b;let c=P.safeParse(a);if(!c.success)return{};let d=c.data,e=null==(b=d.sources)?void 0:b.flatMap(a=>{let b=O.safeParse(a);return b.success?[b.data]:[]}),f=null!=e&&e.length>0?{sources:e}:{};switch(d.type){case"search":return{action:{type:"search",...null!=d.query&&{query:d.query},...null!=d.queries&&{queries:d.queries}},...f};case"open_page":return{action:{type:"openPage",url:d.url},...f};case"find_in_page":return{action:{type:"findInPage",url:d.url,pattern:d.pattern},...f}}}var ao=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({inputFileExpiresAfter:e.z.number().int().min(3600).max(2592e3).optional()}))),ap=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({batch_id:e.z.string(),name:e.z.string().nullish(),create_time:e.z.string().nullish(),expire_time:e.z.string().nullish(),cancel_time:e.z.string().nullish(),cancel_by_xai_message:e.z.string().nullish(),state:e.z.object({num_requests:e.z.number().nullish(),num_pending:e.z.number().nullish(),num_success:e.z.number().nullish(),num_error:e.z.number().nullish(),num_cancelled:e.z.number().nullish()}).nullish()}))),aq=e.z.object({code:e.z.union([e.z.string(),e.z.number()]).nullish(),message:e.z.string().nullish()}),ar=e.z.object({batch_request_id:e.z.string(),batch_result:e.z.object({response:e.z.object({chat_get_completion:e.z.unknown().nullish()}).nullish(),error:aq.nullish()}).nullish(),error_message:e.z.string().nullish()}),as=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({results:e.z.array(ar),pagination_token:e.z.string().nullish()}))),at=class{constructor(a){this.options=a}async startBatch(a){var b,d;let e=[],f=null==a.webhookUrl?[]:[{warning:{type:"unsupported",feature:"webhookUrl",details:"The xAI Batch API does not support per-batch webhook URLs."}}],g=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:ao});for(let b of a.requests){let a=await this.options.prepareRequest(b);for(let c of(e.push(JSON.stringify({custom_id:b.id,method:"POST",url:"/v1/responses",body:a.body}),"\n"),a.warnings))f.push({requestId:b.id,warning:c})}let h=new Blob(e,{type:"application/jsonl"});e.length=0;let i=new FormData;(null==g?void 0:g.inputFileExpiresAfter)!=null&&i.append("expires_after",String(g.inputFileExpiresAfter)),i.append("file",h,"batch.jsonl");let j=(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),{value:k}=await (0,c.postFormDataToApi)({url:this.getUrl("/files"),headers:j,formData:i,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),{value:l}=await (0,c.postJsonToApi)({url:this.getUrl("/batches"),headers:j,body:{name:"ai-sdk-text-batch",input_file_id:k.id},failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(ap),abortSignal:a.abortSignal,fetch:this.options.config.fetch});return{batchId:l.batch_id,...av(l),providerMetadata:{xai:{inputFileId:k.id,...null!=k.expires_at?{inputFileExpiresAt:new Date(1e3*k.expires_at).toISOString()}:{}}},warnings:f}}async getBatchStatus(a){return av(await this.retrieveBatch(a))}async getBatchResults(a){if("pending"===av(await this.retrieveBatch(a)).status)throw new b.InvalidArgumentError({argument:"batchId",message:`xAI batch "${a.batchId}" is not complete.`});return(0,c.convertAsyncIteratorToReadableStream)(this.iterateBatchResults(a))}async retrieveBatch(a){var b,d;let{value:e}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(ap),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});return e}async *iterateBatchResults(a){var b,d,e;let f;do{let g=new URLSearchParams({limit:String(1e3)});null!=f&&g.set("pagination_token",f);let{value:h}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}/results?${g}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(as),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});for(let a of h.results)yield await this.convertBatchResult(a);f=null!=(e=h.pagination_token)?e:void 0}while(null!=f)}async convertBatchResult(a){var b,d,e,f,g,k,l,m,n;let o=null==(b=a.batch_result)?void 0:b.error;if((null!=(e=null==(d=a.error_message)?void 0:d.length)?e:0)>0||(null==o?void 0:o.code)!=null&&0!==o.code&&"0"!==o.code||(null==o?void 0:o.code)==null&&(null!=(g=null==(f=null==o?void 0:o.message)?void 0:f.length)?g:0)>0){let b,c,d=(b=null==(m=(l=a).batch_result)?void 0:m.error,{message:l.error_message||(null==b?void 0:b.message)||"xAI batch request failed.",...(null==b?void 0:b.code)!=null&&0!==b.code&&"0"!==b.code?{code:String(b.code)}:{}});return{id:a.batch_request_id,status:(c=String(n=null==o?void 0:o.code).toLowerCase(),1===n||"1"===c||"cancelled"===c||"batch_cancelled"===c)?"cancelled":"failed",error:d}}let p=null==(k=a.batch_result)?void 0:k.response;if((null==p?void 0:p.chat_get_completion)!=null){let b=await (0,c.safeValidateTypes)({value:p.chat_get_completion,schema:z});if(!b.success)return aw(a.batch_request_id);let d=function(a){var b,d,e,f,g,k;let l;if(null!=a.error)return{success:!1,error:{message:a.error,...null!=a.code?{code:a.code}:{}}};let m=a.choices;if(null==m||0===m.length)return{success:!1,error:{message:"xAI returned a batch response without any choices.",code:"invalid_response"}};let n=[],o=new Set(m.filter(a=>"tool"===a.message.role).flatMap(a=>{var b;return(null!=(b=a.message.tool_calls)?b:[]).map(a=>a.id)}));for(let a of m){if("tool"===a.message.role){if(null!=a.message.content)for(let c of null!=(b=a.message.tool_calls)?b:[])n.push({type:"tool-result",toolCallId:c.id,toolName:c.function.name,result:a.message.content,dynamic:!0});continue}for(let b of(l=a,a.message.content&&n.push({type:"text",text:a.message.content}),a.message.reasoning_content&&n.push({type:"reasoning",text:a.message.reasoning_content}),null!=(d=a.message.tool_calls)?d:[]))n.push({type:"tool-call",toolCallId:b.id,toolName:b.function.name,input:b.function.arguments,...o.has(b.id)?{providerExecuted:!0,dynamic:!0}:{}})}for(let b of null!=(e=a.citations)?e:[])n.push({type:"source",sourceType:"url",id:b,url:b});return{success:!0,result:{content:n,finishReason:{unified:j(null==l?void 0:l.finish_reason),raw:null!=(f=null==l?void 0:l.finish_reason)?f:void 0},usage:a.usage?h(a.usage):(0,c.createNullLanguageModelUsage)(),response:i(a),warnings:[],...((null==(g=a.usage)?void 0:g.cost_in_usd_ticks)!=null||null!=a.service_tier)&&{providerMetadata:{xai:{...(null==(k=a.usage)?void 0:k.cost_in_usd_ticks)!=null?{costInUsdTicks:a.usage.cost_in_usd_ticks}:{},...null!=a.service_tier?{serviceTier:a.service_tier}:{}}}}}}}(b.value);return d.success?{id:a.batch_request_id,status:"succeeded",result:d.result}:{id:a.batch_request_id,status:"failed",error:d.error}}return aw(a.batch_request_id)}getUrl(a){var b;return`${null!=(b=this.options.config.baseURL)?b:"https://api.x.ai/v1"}${a}`}},au=class a extends am{static[d.WORKFLOW_SERIALIZE](a){return am[d.WORKFLOW_SERIALIZE](a)}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}constructor(a,b){super(a,b),this.batch=new at({config:b,prepareRequest:async a=>{let{args:b,warnings:c}=await this.getArgs(a.options);return{body:b,warnings:c}}})}experimental_doStartBatch(a){return this.batch.startBatch(a)}experimental_doGetBatchStatus(a){return this.batch.getBatchStatus(a)}experimental_doGetBatchResults(a){return this.batch.getBatchResults(a)}};function av(a){var b,d,e,f,g,h;let i=(0,c.normalizeBatchRequestCounts)({total:null==(b=a.state)?void 0:b.num_requests,pending:null==(d=a.state)?void 0:d.num_pending,completed:null==(e=a.state)?void 0:e.num_success,failed:(null==(f=a.state)?void 0:f.num_error)!=null&&(null==(g=a.state)?void 0:g.num_cancelled)!=null?a.state.num_error+a.state.num_cancelled:void 0}),j=null!=a.cancel_time||null!=a.cancel_by_xai_message,k=function(a){if(null==a)return!1;let b=Date.parse(a);return!Number.isNaN(b)&&b<=Date.now()}(a.expire_time);return{status:j||k?"failed":null!=i&&i.total>0&&0===i.pending?"completed":"pending",...null!=i?{requestCounts:i}:{},...j?{error:{message:null!=(h=a.cancel_by_xai_message)?h:`xAI batch "${a.batch_id}" was cancelled.`,code:"batch_cancelled"}}:k?{error:{message:`xAI batch "${a.batch_id}" expired.`,code:"batch_expired"}}:{},...null!=a.create_time?{createdAt:a.create_time}:{},...null!=a.expire_time?{expiresAt:a.expire_time}:{}}}function aw(a){return{id:a,status:"failed",error:{message:"xAI returned an invalid Responses batch result.",code:"invalid_response"}}}function ax(a){var b;let c={};null!=a.instructions&&(c.instructions=a.instructions),null!=a.voice&&(c.voice=a.voice);let d={};if(null!=a.inputAudioFormat&&(d.input={format:{type:a.inputAudioFormat.type,...null!=a.inputAudioFormat.rate?{rate:a.inputAudioFormat.rate}:{}}}),null!=a.outputAudioFormat&&(d.output={format:{type:a.outputAudioFormat.type,...null!=a.outputAudioFormat.rate?{rate:a.outputAudioFormat.rate}:{}}}),Object.keys(d).length>0&&(c.audio=d),null!=a.turnDetection)if("disabled"===a.turnDetection.type)c.turn_detection=null;else{let b={type:"server_vad"};null!=a.turnDetection.threshold&&(b.threshold=a.turnDetection.threshold),null!=a.turnDetection.silenceDurationMs&&(b.silence_duration_ms=a.turnDetection.silenceDurationMs),null!=a.turnDetection.prefixPaddingMs&&(b.prefix_padding_ms=a.turnDetection.prefixPaddingMs),c.turn_detection=b}if(null!=a.tools&&a.tools.length>0&&(c.tools=a.tools.map(a=>({type:a.type,name:a.name,description:a.description,parameters:a.parameters}))),null!=a.providerOptions){let d=a.providerOptions;if(Array.isArray(d.tools)){let a=null!=(b=c.tools)?b:[];c.tools=[...a,...d.tools]}for(let[a,b]of Object.entries(d))"tools"!==a&&(c[a]=b)}return c}var ay=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b;let c=null!=(b=this.config.fetch)?b:fetch,d=`${this.config.baseURL}/realtime/client_secrets`,e={};null!=a.expiresAfterSeconds&&(e.expires_after={seconds:a.expiresAfterSeconds});let f=await c(d,{method:"POST",headers:{...this.config.headers(),"Content-Type":"application/json"},body:JSON.stringify(e)});if(!f.ok){let a=await f.text();throw Error(`xAI realtime client secret request failed: ${f.status} ${a}`)}let g=await f.json();return{token:g.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:g.expires_at}}getWebSocketConfig(a){return{url:a.url,protocols:[`xai-client-secret.${a.token}`]}}parseServerEvent(a){return function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;let u=a.type;switch(u){case"session.created":return{type:"session-created",sessionId:null==(b=a.session)?void 0:b.id,raw:a};case"session.updated":return{type:"session-updated",raw:a};case"conversation.created":case"mcp_list_tools.in_progress":case"mcp_list_tools.completed":case"mcp_list_tools.failed":case"response.mcp_call_arguments.delta":case"response.mcp_call_arguments.done":case"response.mcp_call.in_progress":case"response.mcp_call.completed":case"response.mcp_call.failed":default:return{type:"custom",rawType:u,raw:a};case"input_audio_buffer.speech_started":return{type:"speech-started",itemId:a.item_id,raw:a};case"input_audio_buffer.speech_stopped":return{type:"speech-stopped",itemId:a.item_id,raw:a};case"input_audio_buffer.committed":return{type:"audio-committed",itemId:a.item_id,previousItemId:a.previous_item_id,raw:a};case"conversation.item.added":return{type:"conversation-item-added",itemId:null!=(d=null==(c=a.item)?void 0:c.id)?d:a.item_id,item:a.item,raw:a};case"conversation.item.input_audio_transcription.completed":return{type:"input-transcription-completed",itemId:a.item_id,transcript:null!=(e=a.transcript)?e:"",raw:a};case"response.created":return{type:"response-created",responseId:null!=(g=null==(f=a.response)?void 0:f.id)?g:a.response_id,raw:a};case"response.done":return{type:"response-done",responseId:null!=(i=null==(h=a.response)?void 0:h.id)?i:a.response_id,status:null!=(k=null==(j=a.response)?void 0:j.status)?k:"completed",raw:a};case"response.output_item.added":return{type:"output-item-added",responseId:a.response_id,itemId:null!=(m=null==(l=a.item)?void 0:l.id)?m:a.item_id,raw:a};case"response.output_item.done":return{type:"output-item-done",responseId:a.response_id,itemId:null!=(o=null==(n=a.item)?void 0:n.id)?o:a.item_id,raw:a};case"response.content_part.added":return{type:"content-part-added",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.content_part.done":return{type:"content-part-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio.delta":return{type:"audio-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio.done":return{type:"audio-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio_transcript.delta":return{type:"audio-transcript-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio_transcript.done":return{type:"audio-transcript-done",responseId:a.response_id,itemId:a.item_id,transcript:a.transcript,raw:a};case"response.text.delta":return{type:"text-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.text.done":return{type:"text-done",responseId:a.response_id,itemId:a.item_id,text:a.text,raw:a};case"response.function_call_arguments.delta":return{type:"function-call-arguments-delta",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,delta:a.delta,raw:a};case"response.function_call_arguments.done":return{type:"function-call-arguments-done",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,name:a.name,arguments:a.arguments,raw:a};case"error":return{type:"error",message:null!=(r=null!=(q=null==(p=a.error)?void 0:p.message)?q:a.message)?r:"Unknown error",code:null!=(t=null==(s=a.error)?void 0:s.code)?t:a.code,raw:a}}}(a)}serializeClientEvent(a){switch(a.type){case"session-update":return{type:"session.update",session:ax(a.config)};case"input-audio-append":return{type:"input_audio_buffer.append",audio:a.audio};case"input-audio-commit":return{type:"input_audio_buffer.commit"};case"input-audio-clear":return{type:"input_audio_buffer.clear"};case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_text",text:b.text}]}};case"audio-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_audio",audio:b.audio}]}};case"function-call-output":return{type:"conversation.item.create",item:{type:"function_call_output",call_id:b.callId,output:b.output}}}break}case"conversation-item-truncate":break;case"response-create":return{type:"response.create",...null!=a.options?{response:{...null!=a.options.modalities?{modalities:a.options.modalities}:{},...null!=a.options.instructions?{instructions:a.options.instructions}:{}}}:{}};case"response-cancel":return{type:"response.cancel"}}}buildSessionConfig(a){return ax(a)}},az=e.z.object({output:e.z.string().describe("the output of the code execution"),error:e.z.string().optional().describe("any error that occurred")}),aA=(0,c.createProviderExecutedToolFactory)({id:"xai.code_execution",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:az}),aB=e.z.object({description:e.z.string().describe("description of the image"),objects:e.z.array(e.z.string()).optional().describe("objects detected in the image")}),aC=(0,c.createProviderExecutedToolFactory)({id:"xai.view_image",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:aB}),aD=e.z.object({transcript:e.z.string().optional().describe("transcript of the video"),description:e.z.string().describe("description of the video content"),duration:e.z.number().optional().describe("duration in seconds")}),aE=(0,c.createProviderExecutedToolFactory)({id:"xai.view_x_video",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:aD}),aF={codeExecution:(a={})=>aA(a),fileSearch:a=>Y(a),imageGeneration:(a={})=>aa(a),mcpServer:a=>ad(a),viewImage:(a={})=>aC(a),viewXVideo:(a={})=>aE(a),webSearch:(a={})=>ag(a),xSearch:(a={})=>aj(a)},aG=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.looseObject({teamId:e.z.string().optional(),filePath:e.z.string().optional(),expiresAfter:e.z.number().int().min(3600).max(2592e3).optional()})));function aH(a){let b=encodeURIComponent(a);return"."===b?"%252E":".."===b?"%252E%252E":b}var aI=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}getFileId(a){let c=a.xai;if(null==c||""===c.trim())throw new b.InvalidArgumentError({argument:"file",message:"file reference is missing an 'xai' file id."});return c}getHeaders(a){return(0,c.combineHeaders)(this.config.headers(),a)}async uploadFile({data:a,mediaType:b,filename:d,abortSignal:e,headers:f,providerOptions:g}){var h,i;let j,k;try{j=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:g,schema:aG})}catch(b){throw"stream"===a.type&&await a.stream.cancel(b).catch(()=>{}),b}let l=this.getHeaders(f),m=`${this.config.baseURL}/files`;if("stream"===a.type){let f=[];(null==j?void 0:j.expiresAfter)!=null&&f.push({type:"field",name:"expires_after",value:String(j.expiresAfter)}),(null==j?void 0:j.teamId)!=null&&f.push({type:"field",name:"team_id",value:j.teamId}),f.push({type:"file",name:"file",filename:d,mediaType:b,content:a.stream}),{value:k}=await (0,c.postMultipartStreamToApi)({url:m,headers:l,parts:f,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:e,fetch:this.config.fetch})}else{let f=new Blob([(0,c.convertInlineFileDataToUint8Array)(a)],{type:b}),g=new FormData;(null==j?void 0:j.expiresAfter)!=null&&g.append("expires_after",String(j.expiresAfter)),(null==j?void 0:j.teamId)!=null&&g.append("team_id",j.teamId),null!=d?g.append("file",f,d):g.append("file",f),{value:k}=await (0,c.postFormDataToApi)({url:m,headers:l,formData:g,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:e,fetch:this.config.fetch})}return{warnings:[],providerReference:{xai:k.id},...(null!=(h=k.filename)?h:d)?{filename:null!=(i=k.filename)?i:d}:{},...null!=b?{mediaType:b}:{},...null!=k.bytes?{byteSize:k.bytes}:{},...null!=k.created_at?{createdAt:new Date(1e3*k.created_at)}:{},...null!=k.expires_at?{expiresAt:new Date(1e3*k.expires_at)}:{},providerMetadata:{xai:this.toFileMetadata(k)}}}async getFileMetadata({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${aH(e)}`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:b,fetch:this.config.fetch,validateUrl:!1});return{warnings:[],providerReference:{xai:f.id},...null!=f.filename?{filename:f.filename}:{},...null!=f.bytes?{byteSize:f.bytes}:{},...null!=f.created_at?{createdAt:new Date(1e3*f.created_at)}:{},...null!=f.expires_at?{expiresAt:new Date(1e3*f.expires_at)}:{},providerMetadata:{xai:this.toFileMetadata(f)}}}async downloadFile({file:a,abortSignal:b,headers:d}){var e;let f=this.getFileId(a),{value:g,responseHeaders:h}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${aH(f)}/content`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createBinaryStreamResponseHandler)(),abortSignal:b,fetch:this.config.fetch,validateUrl:!1}),i=null==(e=null==h?void 0:h["content-type"])?void 0:e.split(";")[0].trim();return{warnings:[],content:g,...i?{mediaType:i}:{}}}async deleteFile({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.deleteFromApi)({url:`${this.config.baseURL}/files/${aH(e)}`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(G),abortSignal:b,fetch:this.config.fetch});return{warnings:[],providerReference:{xai:f.id},deleted:f.deleted}}toFileMetadata(a){return{...null!=a.filename?{filename:a.filename}:{},...null!=a.purpose?{purpose:a.purpose}:{},...null!=a.bytes?{bytes:a.bytes}:{},...null!=a.created_at?{createdAt:a.created_at}:{},...null!=a.status?{status:a.status}:{},...null!=a.expires_at?{expiresAt:a.expires_at}:{}}}},aJ=e.z.string().min(1),aK=e.z.enum(["480p","720p","1080p"]),aL=e.z.enum(["edit-video","extend-video","reference-to-video"]),aM={pollIntervalMs:e.z.number().positive().nullish(),pollTimeoutMs:e.z.number().positive().nullish(),resolution:aK.nullish()},aN=e.z.looseObject({mode:aL.optional(),videoUrl:aJ.optional(),referenceImageUrls:e.z.array(aJ).min(1).max(7).optional(),referenceVoiceIds:e.z.array(aJ).max(3).optional(),user:e.z.string().optional(),...aM}),aO=(0,c.lazySchema)(()=>(0,c.zodSchema)(aN)),aP={"1920x1080":"1080p","1280x720":"720p","854x480":"480p","640x480":"480p"};function aQ(a){var b,c;return null==(c=null==(b=a.frameImages)?void 0:b.find(a=>"first_frame"===a.frameType))?void 0:c.image}var aR=a=>null!=a.mediaType&&"video"===(0,c.getTopLevelMediaType)(a.mediaType),aS=a=>null==a.mediaType||"image"===(0,c.getTopLevelMediaType)(a.mediaType);function aT(a){if("url"===a.type)return a.url;let b="string"==typeof a.data?a.data:(0,c.convertUint8ArrayToBase64)(a.data);return`data:${a.mediaType};base64,${b}`}function aU(a){var b,c;return null!=(c=null==(b=a.inputReferences)?void 0:b.some(aS))&&c}var aV=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=1}get provider(){return this.config.provider}async buildRequestBody(a){var b,d,e;let f=[],g=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:aO}),h=function(a,b){if((null==b?void 0:b.mode)!=null)return b.mode;if((null==b?void 0:b.videoUrl)!=null)return"edit-video";let c=null!=a.frameImages&&a.frameImages.length>0,d=(null==b?void 0:b.referenceImageUrls)!=null&&b.referenceImageUrls.length>0;if(!c&&(aU(a)||d))return"reference-to-video"}(a,g),i="edit-video"===h,j="extend-video"===h,k="reference-to-video"===h;null!=a.fps&&f.push({type:"unsupported",feature:"fps",details:"xAI video models do not support custom FPS."}),null!=a.seed&&f.push({type:"unsupported",feature:"seed",details:"xAI video models do not support seed."}),null!=a.n&&a.n>1&&f.push({type:"unsupported",feature:"n",details:"xAI video models do not support generating multiple videos per call. Only 1 video will be generated."}),i&&null!=a.duration&&f.push({type:"unsupported",feature:"duration",details:"xAI video editing does not support custom duration."}),i&&null!=a.aspectRatio&&f.push({type:"unsupported",feature:"aspectRatio",details:"xAI video editing does not support custom aspect ratio."}),i&&((null==g?void 0:g.resolution)!=null||null!=a.resolution)&&f.push({type:"unsupported",feature:"resolution",details:"xAI video editing does not support custom resolution."}),j&&null!=a.aspectRatio&&f.push({type:"unsupported",feature:"aspectRatio",details:"xAI video extension does not support custom aspect ratio."}),j&&((null==g?void 0:g.resolution)!=null||null!=a.resolution)&&f.push({type:"unsupported",feature:"resolution",details:"xAI video extension does not support custom resolution."});let l={model:this.modelId,prompt:a.prompt},m=!i&&!j;if(i||null==a.duration||(l.duration=a.duration),i||j||null==a.aspectRatio||(l.aspect_ratio=a.aspectRatio),m&&(null==g?void 0:g.resolution)!=null)l.resolution=g.resolution;else if(m&&null!=a.resolution){let b=aP[a.resolution];null!=b?l.resolution=b:f.push({type:"unsupported",feature:"resolution",details:`Unrecognized resolution "${a.resolution}". Use providerOptions.xai.resolution with "480p", "720p", or "1080p" instead.`})}i&&(l.video={url:g.videoUrl}),j&&(l.video={url:g.videoUrl});let n=null!=(b=aQ(a))?b:a.image;if(null!=n)if(aR(n)){let b=null!=aQ(a);f.push({type:"unsupported",feature:b?"frameImages":"image",details:'xAI does not accept a video as a start/frame image. The video was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video instead.'})}else l.image={url:aT(n)};let o=null==(e=null==(d=a.frameImages)?void 0:d.find(a=>"last_frame"===a.frameType))?void 0:e.image;if(null!=o&&f.push({type:"unsupported",feature:"frameImages",details:aR(o)?'xAI does not accept a video as a start/frame image. The video last frame was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video instead.':'xAI video models do not support last_frame. Use providerOptions.xai.mode "extend-video" to continue from a video\'s last frame. The last frame image was ignored.'}),k){let b=function(a,b,c){if(null!=a.inputReferences&&a.inputReferences.length>0){let b=[];for(let d of a.inputReferences){if(!aS(d)){c.push({type:"unsupported",feature:"inputReferences",details:aR(d)?'xAI reference-to-video accepts image references only. The video reference was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video.':"xAI reference-to-video accepts image references only. The non-image reference was ignored."});continue}b.push(d)}return b.length>0?b.map(a=>({url:aT(a)})):void 0}if((null==b?void 0:b.referenceImageUrls)!=null&&b.referenceImageUrls.length>0)return b.referenceImageUrls.map(a=>({url:a}))}(a,g,f);null!=b?l.reference_images=b:f.push({type:"unsupported",feature:"referenceImages",details:"xAI reference-to-video requires at least one image reference. The video will be generated without reference images."});let c=null==g?void 0:g.referenceVoiceIds;null!=c&&c.length>0&&(l.reference_audios=c.map(a=>({voice_id:a}))),"1080p"===l.resolution&&(f.push({type:"unsupported",feature:"resolution",details:"xAI reference-to-video is limited to 720p. The request was downgraded from 1080p to 720p."}),l.resolution="720p")}if("1080p"===l.resolution&&"grok-imagine-video"===this.modelId&&f.push({type:"unsupported",feature:"resolution",details:'xAI model "grok-imagine-video" does not support 1080p. Use "grok-imagine-video-1.5" for 1080p, or a lower resolution. The request was sent with 1080p.'}),null!=a.inputReferences&&a.inputReferences.length>0&&!k&&f.push({type:"unsupported",feature:"inputReferences",details:aU(a)?"xAI only supports inputReferences for reference-to-video generation. The reference images were ignored.":"xAI reference-to-video requires at least one image reference. The references were ignored."}),(null==g?void 0:g.referenceVoiceIds)!=null&&g.referenceVoiceIds.length>0&&!k&&f.push({type:"unsupported",feature:"referenceVoiceIds",details:"xAI only supports reference voices for reference-to-video generation. The reference voices were ignored."}),j||(null==g?void 0:g.user)===void 0||(l.user=g.user),null!=g)for(let[a,b]of Object.entries(g))["mode","pollIntervalMs","pollTimeoutMs","resolution","videoUrl","referenceImageUrls","referenceVoiceIds","user"].includes(a)||(l[a]=b);return{body:l,warnings:f,xaiOptions:g,isEdit:i,isExtension:j,hasReferenceImages:k,effectiveMode:h}}async doStart(a){var d,e,f,g;let h,i=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,{body:j,warnings:k,isEdit:l,isExtension:m}=await this.buildRequestBody(a),n=null!=(g=this.config.baseURL)?g:"https://api.x.ai/v1";h=l?`${n}/videos/edits`:m?`${n}/videos/extensions`:`${n}/videos/generations`;let{value:o,responseHeaders:p}=await (0,c.postJsonToApi)({url:h,headers:(0,c.combineHeaders)(this.config.headers(),a.headers),body:j,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(aW),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=o.request_id;if(!q)throw new b.AISDKError({name:"XAI_VIDEO_GENERATION_ERROR",message:"No request_id returned from xAI API."});return{operation:{requestId:q},warnings:k,response:{timestamp:i,modelId:this.modelId,headers:p}}}async doStatus(a){var b,d,e,f,g,h,i,j,k,l,m;let n,o=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestId:p}=a.operation,q=null!=(f=this.config.baseURL)?f:"https://api.x.ai/v1",{value:r,responseHeaders:s}=await (0,c.getFromApi)({url:`${q}/videos/${"."===(n=encodeURIComponent(p))?"%252E":".."===n?"%252E%252E":n}`,validateUrl:!1,headers:(0,c.combineHeaders)(this.config.headers(),a.headers),successfulResponseHandler:a_,failedResponseHandler:v,abortSignal:a.abortSignal,fetch:this.config.fetch});if("expired"===r.status)return{status:"error",error:"Video generation request expired.",response:{timestamp:o,modelId:this.modelId,headers:s}};if("failed"===r.status){let a=null!=(i=null==(g=r.error)?void 0:g.message)?i:null==(h=r.error)?void 0:h.code;return{status:"error",error:null!=a?`Video generation failed: ${a}`:"Video generation failed.",response:{timestamp:o,modelId:this.modelId,headers:s}}}return"done"===r.status||null==r.status&&(null==(j=r.video)?void 0:j.url)?(null==(k=r.video)?void 0:k.respect_moderation)===!1?{status:"error",error:"Video generation was blocked due to a content policy violation.",response:{timestamp:o,modelId:this.modelId,headers:s}}:(null==(l=r.video)?void 0:l.url)?{status:"completed",videos:[{type:"url",url:r.video.url,mediaType:"video/mp4"}],warnings:[],response:{timestamp:o,modelId:this.modelId,headers:s},providerMetadata:{xai:{requestId:p,videoUrl:r.video.url,...null!=r.video.duration?{duration:r.video.duration}:{},...(null==(m=r.usage)?void 0:m.cost_in_usd_ticks)!=null?{costInUsdTicks:r.usage.cost_in_usd_ticks}:{},...null!=r.progress?{progress:r.progress}:{}}}}:{status:"error",error:"Video generation completed but no video URL was returned.",response:{timestamp:o,modelId:this.modelId,headers:s}}:{status:"pending",response:{timestamp:o,modelId:this.modelId,headers:s}}}},aW=e.z.object({request_id:e.z.string().nullish()}),aX=e.z.object({status:e.z.string().nullish(),video:e.z.object({url:e.z.string(),duration:e.z.number().nullish(),respect_moderation:e.z.boolean().nullish()}).nullish(),model:e.z.string().nullish(),usage:e.z.object({cost_in_usd_ticks:e.z.number().nullish()}).nullish(),progress:e.z.number().nullish(),error:e.z.object({code:e.z.string().nullish(),message:e.z.string().nullish()}).nullish()}),aY=(0,c.createJsonResponseHandler)(aX),aZ=new TextDecoder;async function a$({response:a,url:d,requestBodyValues:e}){if(null==a.body)return"";let f=a.body.getReader(),g=[],h=0;try{for(;;){let{done:i,value:j}=await f.read();if(i)break;if((h+=j.length)>1048576)throw new b.APICallError({message:"xAI video status response exceeded 1048576 bytes",url:d,requestBodyValues:e,statusCode:a.status,responseHeaders:(0,c.extractResponseHeaders)(a)});g.push(j)}}finally{f.releaseLock()}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return aZ.decode(i)}var a_=async a=>{if(202===a.response.status){let b=(0,c.extractResponseHeaders)(a.response),d=await a$(a);if(0===d.trim().length)return{responseHeaders:b,value:{status:"pending"}};let e=await (0,c.safeParseJSON)({text:d,schema:aX});return{responseHeaders:b,value:e.success?e.value:{status:"pending"}}}return aY(a)},a0=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({sampleRate:e.z.union([e.z.literal(8e3),e.z.literal(16e3),e.z.literal(22050),e.z.literal(24e3),e.z.literal(44100),e.z.literal(48e3)]).nullish(),bitRate:e.z.union([e.z.literal(32e3),e.z.literal(64e3),e.z.literal(96e3),e.z.literal(128e3),e.z.literal(192e3)]).nullish(),optimizeStreamingLatency:e.z.union([e.z.literal(0),e.z.literal(1),e.z.literal(2)]).nullish(),textNormalization:e.z.boolean().nullish(),withTimestamps:e.z.boolean().nullish(),replace:e.z.record(e.z.string(),e.z.string()).nullish()}))),a1=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({text:a,voice:b="eve",outputFormat:d="mp3",instructions:e,speed:f,language:g="auto",providerOptions:h}){let i=[],j=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:h,schema:a0}),k="mp3";["mp3","wav","pcm","mulaw","alaw"].includes(d)?k=d:i.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${d}. Using mp3 instead.`}),null!=e&&i.push({type:"unsupported",feature:"instructions",details:"xAI speech models do not support the `instructions` option. Use xAI speech tags in `text` to control delivery."});let l={codec:k};return(null==j?void 0:j.sampleRate)!=null&&(l.sample_rate=j.sampleRate),(null==j?void 0:j.bitRate)!=null&&("mp3"===k?l.bit_rate=j.bitRate:i.push({type:"unsupported",feature:"providerOptions",details:"xAI `bitRate` is supported only for mp3 output. It was ignored."})),{requestBody:{text:a,voice_id:b,language:g,output_format:l,speed:f,optimize_streaming_latency:null==j?void 0:j.optimizeStreamingLatency,text_normalization:null==j?void 0:j.textNormalization,with_timestamps:null==j?void 0:j.withTimestamps,replace:null==j?void 0:j.replace},warnings:i,withTimestamps:(null==j?void 0:j.withTimestamps)===!0}}async doGenerate(a){var b,d,e;let f,g,h=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestBody:i,warnings:j,withTimestamps:k}=await this.getArgs(a),{value:l,responseHeaders:m,rawValue:n}=await (0,c.postJsonToApi)({url:`${this.config.baseURL}/tts`,headers:(0,c.combineHeaders)(this.config.headers?await (0,c.resolve)(this.config.headers):void 0,a.headers),body:i,failedResponseHandler:v,successfulResponseHandler:k?(0,c.createJsonResponseHandler)(a2):(0,c.createBinaryResponseHandler)(),abortSignal:a.abortSignal,fetch:this.config.fetch});f=l instanceof Uint8Array?l:null!=(g=l).audio?(0,c.convertBase64ToUint8Array)(g.audio):new Uint8Array(0);let o=null==m?void 0:m["x-trace-id"];return{audio:f,warnings:j,request:{body:JSON.stringify(i)},response:{timestamp:h,modelId:this.modelId,headers:m,body:n},providerMetadata:{xai:{...null!=o?{traceId:o}:{},...(null==g?void 0:g.duration)!=null?{duration:g.duration}:{},...(null==g?void 0:g.content_type)!=null?{contentType:g.content_type}:{},...(null==g?void 0:g.audio_timestamps)!=null?{audioTimestamps:{graphChars:g.audio_timestamps.graph_chars,graphTimes:g.audio_timestamps.graph_times}}:{}}}}}},a2=e.z.object({audio:e.z.string().nullish(),content_type:e.z.string().nullish(),duration:e.z.number().nullish(),audio_timestamps:e.z.object({graph_chars:e.z.array(e.z.string()),graph_times:e.z.array(e.z.tuple([e.z.number(),e.z.number()]))}).nullish()}),a3=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({audioFormat:e.z.enum(["pcm","mulaw","alaw"]).nullish(),sampleRate:e.z.union([e.z.literal(8e3),e.z.literal(16e3),e.z.literal(22050),e.z.literal(24e3),e.z.literal(44100),e.z.literal(48e3)]).nullish(),language:e.z.string().nullish(),format:e.z.boolean().nullish(),multichannel:e.z.boolean().nullish(),channels:e.z.number().int().min(2).max(8).nullish(),diarize:e.z.boolean().nullish(),keyterm:e.z.union([e.z.string(),e.z.array(e.z.string())]).nullish(),fillerWords:e.z.boolean().nullish(),streaming:e.z.object({interimResults:e.z.boolean().optional(),endpointing:e.z.number().int().min(0).max(5e3).optional(),smartTurn:e.z.number().min(0).max(1).optional(),smartTurnTimeout:e.z.number().int().min(1).max(5e3).optional()}).optional()}))),a4=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({audio:a,mediaType:b,providerOptions:d}){let e=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d,schema:a3}),f=new FormData;for(let[a,b]of Object.entries({audio_format:null==e?void 0:e.audioFormat,sample_rate:null==e?void 0:e.sampleRate,language:null==e?void 0:e.language,format:null==e?void 0:e.format,multichannel:null==e?void 0:e.multichannel,channels:null==e?void 0:e.channels,diarize:null==e?void 0:e.diarize,filler_words:null==e?void 0:e.fillerWords}))null!=b&&f.append(a,String(b));if((null==e?void 0:e.keyterm)!=null)for(let a of Array.isArray(e.keyterm)?e.keyterm:[e.keyterm])f.append("keyterm",a);let g=a instanceof Uint8Array?new Blob([a]):new Blob([(0,c.convertBase64ToUint8Array)(a)]),h=(0,c.mediaTypeToExtension)(b);return f.append("file",new File([g],"audio",{type:b}),`audio.${h}`),{formData:f,warnings:[]}}async doGenerate(a){var b,d,e,f,g,h,i,j,k;let l=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{formData:m,warnings:n}=await this.getArgs(a),{value:o,responseHeaders:p,rawValue:q}=await (0,c.postFormDataToApi)({url:`${null!=(f=this.config.baseURL)?f:"https://api.x.ai/v1"}/stt`,headers:(0,c.combineHeaders)(null==(h=(g=this.config).headers)?void 0:h.call(g),a.headers),formData:m,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(a6),abortSignal:a.abortSignal,fetch:this.config.fetch});return{text:o.text,segments:null!=(j=null==(i=o.words)?void 0:i.map(a=>({text:a.text,startSecond:a.start,endSecond:a.end})))?j:[],language:o.language||void 0,durationInSeconds:null!=(k=o.duration)?k:void 0,warnings:n,response:{timestamp:l,modelId:this.modelId,headers:p,body:q}}}async doStream(a){var d,e,f,g,h,i,j,k;let l=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,m=[],n=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:a3});if((null==n?void 0:n.multichannel)===!0&&null==n.channels)throw new b.InvalidArgumentError({argument:"providerOptions",message:"providerOptions.xai.channels is required when providerOptions.xai.multichannel is true"});(null==n?void 0:n.format)!=null&&m.push({type:"unsupported",feature:"providerOptions.xai.format",details:"xAI streaming transcription does not support format."}),(null==n?void 0:n.audioFormat)==null&&"audio/pcm"!==(k=a.inputAudioFormat.type)&&"audio/pcmu"!==k&&"audio/pcma"!==k&&m.push({type:"other",message:`Unrecognized inputAudioFormat.type "${a.inputAudioFormat.type}"; falling back to raw PCM encoding. Use audio/pcm, audio/pcmu, or audio/pcma, or set providerOptions.xai.audioFormat explicitly.`});let o=function({baseURL:a,inputAudioFormat:b,providerOptions:d}){var e,f,g,h,i,j;let k=(0,c.toWebSocketUrl)(`${a}/stt`);if(a5(k,"sample_rate",null!=(e=null==d?void 0:d.sampleRate)?e:b.rate),a5(k,"encoding",null!=(f=null==d?void 0:d.audioFormat)?f:function(a){switch(a){case"audio/pcmu":return"mulaw";case"audio/pcma":return"alaw";default:return"pcm"}}(b.type)),a5(k,"language",null==d?void 0:d.language),a5(k,"diarize",null==d?void 0:d.diarize),a5(k,"filler_words",null==d?void 0:d.fillerWords),a5(k,"multichannel",null==d?void 0:d.multichannel),a5(k,"channels",null==d?void 0:d.channels),a5(k,"interim_results",null==(g=null==d?void 0:d.streaming)?void 0:g.interimResults),a5(k,"endpointing",null==(h=null==d?void 0:d.streaming)?void 0:h.endpointing),a5(k,"smart_turn",null==(i=null==d?void 0:d.streaming)?void 0:i.smartTurn),a5(k,"smart_turn_timeout",null==(j=null==d?void 0:d.streaming)?void 0:j.smartTurnTimeout),(null==d?void 0:d.keyterm)!=null)for(let a of Array.isArray(d.keyterm)?d.keyterm:[d.keyterm])k.searchParams.append("keyterm",a);return k}({baseURL:null!=(g=this.config.baseURL)?g:"https://api.x.ai/v1",inputAudioFormat:a.inputAudioFormat,providerOptions:n}),p=(0,c.combineHeaders)(null==(i=(h=this.config).headers)?void 0:i.call(h),a.headers);return{request:{body:o.toString()},response:{timestamp:l,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,warnings:e,language:f,expectedDoneCount:g,audio:h,abortSignal:i,includeRawChunks:j}){let k=!1,l=()=>{};return new ReadableStream({start:m=>{let n,o,p,q=new Map,r=new Map,s=new Map;l=a=>{null!=o?o.cancel().catch(()=>{}):h.cancel().catch(()=>{}),null==p||p.close(a)};let t=a=>{k||(k=!0,l(),m.error(a))},u=async a=>{o=h.getReader();try{for(;;){let{done:b,value:d}=await o.read();if(b||k)break;a.send(d instanceof Uint8Array?d:(0,c.convertBase64ToUint8Array)(d)),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}k||a.send(JSON.stringify({type:"audio.done"}))};p=(0,c.connectToWebSocket)({url:b,headers:d,webSocket:a,abortSignal:i,onAbort:t,onProcessingError:t,onMessageText:async a=>{var b,d,h,i,o,v,w,x,y,z,A;let B=await (0,c.safeParseJSON)({text:a});if(!B.success)return;let C=B.value;switch(j&&m.enqueue({type:"raw",rawValue:C}),C.type){case"transcript.created":{m.enqueue({type:"stream-start",warnings:e});let a=null==p?void 0:p.socket;if(null==a){t(Error("WebSocket is not connected."));break}u(a).catch(t);break}case"transcript.partial":{let a=null==(z=C.channel_index)?void 0:`channel-${z}`,c=null!=(b=C.channel_index)?b:0;if(C.is_final&&C.speech_final){let b={...null!=(A=C).start?{startSecond:A.start}:{},...null!=A.start&&null!=A.duration?{endSecond:A.start+A.duration}:{}};C.text&&r.set(c,[...null!=(d=r.get(c))?d:[],C.text]),s.delete(c),m.enqueue({type:"transcript-final",id:a,text:null!=(h=C.text)?h:"",...b,channelIndex:C.channel_index})}else s.set(c,null!=(i=C.text)?i:""),m.enqueue({type:"transcript-partial",id:a,text:null!=(o=C.text)?o:"",startSecond:C.start,durationInSeconds:C.duration,channelIndex:C.channel_index});break}case"transcript.done":{let a=null!=(v=C.channel_index)?v:0,b=[...null!=(w=r.get(a))?w:[],...s.get(a)?[s.get(a)]:[]].join(" ");q.set(a,C.text||b),n=null!=(x=C.duration)?x:n,(()=>{if(k||q.size<g)return;k=!0;let a=[...q.entries()].sort(([a],[b])=>a-b).map(([,a])=>a).join("\n");m.enqueue({type:"finish",text:a,segments:[],language:f,durationInSeconds:n}),m.close(),l(1e3)})();break}case"error":t(Error(null!=(y=C.message)?y:"xAI STT error"))}},onSocketError:()=>{t(Error("xAI streaming transcription error."+(null==a?" Note: the native WebSocket implementation in browsers, Node.js, Deno, and Bun cannot send the Authorization header required by xAI. Pass a header-capable WebSocket implementation (e.g. the 'ws' package) via createXai({ webSocket }).":"")))},onClose:()=>{k||(k=!0,l(),m.close())}})},cancel:()=>{k||(k=!0,l())}})}({webSocket:this.config.webSocket,url:o,headers:p,warnings:m,language:null!=(j=null==n?void 0:n.language)?j:void 0,expectedDoneCount:(null==n?void 0:n.multichannel)===!0?n.channels:1,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}};function a5(a,b,c){null!=c&&a.searchParams.set(b,String(c))}var a6=e.z.object({text:e.z.string(),language:e.z.string().nullish(),duration:e.z.number().nullish(),words:e.z.array(e.z.object({text:e.z.string(),start:e.z.number(),end:e.z.number()})).nullish()});function a7(a={}){var d;let e=(0,c.withoutTrailingSlash)(null!=(d=a.baseURL)?d:"https://api.x.ai/v1"),f=()=>(0,c.withUserAgentSuffix)({Authorization:`Bearer ${(0,c.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"XAI_API_KEY",description:"xAI API key"})}`,...a.headers},"ai-sdk/xai/4.0.54"),g=b=>new au(b,{provider:"xai.responses",baseURL:e,headers:f,generateId:c.generateId,fetch:a.fetch}),h=b=>new D(b,{provider:"xai.image",baseURL:e,headers:f,fetch:a.fetch}),i=b=>new aV(b,{provider:"xai.video",baseURL:e,headers:f,fetch:a.fetch}),j=b=>new ay(b,{provider:"xai.realtime",baseURL:null!=e?e:"https://api.x.ai/v1",headers:f,fetch:a.fetch}),k=()=>new a1("",{provider:"xai.speech",baseURL:e,headers:f,fetch:a.fetch}),l=()=>new a4("",{provider:"xai.transcription",baseURL:e,headers:f,fetch:a.fetch,webSocket:a.webSocket}),m=Object.assign(a=>j(a),{getToken:async a=>{let b=j(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),n=a=>g(a);return n.specificationVersion="v4",n.languageModel=g,n.chat=b=>new x(b,{provider:"xai.chat",baseURL:e,headers:f,generateId:c.generateId,fetch:a.fetch}),n.responses=g,n.embeddingModel=a=>{throw new b.NoSuchModelError({modelId:a,modelType:"embeddingModel"})},n.textEmbeddingModel=n.embeddingModel,n.imageModel=h,n.image=h,n.videoModel=i,n.video=i,n.experimental_realtime=m,n.speechModel=k,n.speech=k,n.transcriptionModel=l,n.transcription=l,n.files=()=>new aI({provider:"xai.files",baseURL:e,headers:f,fetch:a.fetch}),n.tools=aF,n}a7(),a.s(["createXai",0,a7])},106450,a=>{"use strict";let b;var c,d,e,f,g=a.i(527990),h=a.i(53112),i=a.i(652685),j=a.i(925034);async function k(a){return(await b).getRandomValues(new Uint8Array(a))}async function l(a){let b="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",c=256-256%b.length,d="";for(;d.length<a;)for(let e of(await k(a-d.length)))e<c&&(d+=b[e%b.length]);return d}async function m(a){return await l(a)}async function n(a){return btoa(String.fromCharCode(...new Uint8Array(await (await b).subtle.digest("SHA-256",new TextEncoder().encode(a))))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function o(a){if(a||(a=43),a<43||a>128)throw`Expected a length between 43 and 128. Received ${a}.`;let b=await m(a),c=await n(b);return{code_verifier:b,code_challenge:c}}b=globalThis.crypto?.webcrypto??globalThis.crypto??a.A(70729).then(a=>a.webcrypto);var p=a.i(794219),q="2026-07-28",r="2025-11-25",s=[q,r,"2025-06-18","2025-03-26","2024-11-05"],t=h.z.optional(h.z.record(h.z.string(),h.z.unknown())),u=h.z.looseObject({name:h.z.string(),version:h.z.string(),title:h.z.optional(h.z.string())}),v=h.z.looseObject({_meta:h.z.optional(h.z.object({}).loose())}),w=v.extend({resultType:h.z.optional(h.z.string())}),x=h.z.object({method:h.z.string(),params:h.z.optional(v)}),y=h.z.object({applyDefaults:h.z.optional(h.z.boolean())}).loose(),z=h.z.looseObject({experimental:h.z.optional(h.z.object({}).loose()),logging:h.z.optional(h.z.object({}).loose()),completions:h.z.optional(h.z.object({}).loose()),prompts:h.z.optional(h.z.looseObject({listChanged:h.z.optional(h.z.boolean())})),resources:h.z.optional(h.z.looseObject({subscribe:h.z.optional(h.z.boolean()),listChanged:h.z.optional(h.z.boolean())})),tools:h.z.optional(h.z.looseObject({listChanged:h.z.optional(h.z.boolean())})),elicitation:h.z.optional(y)});h.z.object({elicitation:h.z.optional(y)}).loose();var A=w.extend({supportedVersions:h.z.array(h.z.string()),capabilities:z,instructions:h.z.optional(h.z.string()),ttlMs:h.z.optional(h.z.number()),cacheScope:h.z.optional(h.z.union([h.z.literal("public"),h.z.literal("private")]))}),B=w.extend({protocolVersion:h.z.string(),capabilities:z,serverInfo:u,instructions:h.z.optional(h.z.string())}),C=w.extend({nextCursor:h.z.optional(h.z.string())}),D=h.z.object({name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),inputSchema:h.z.looseObject({type:h.z.optional(h.z.unknown()),properties:h.z.optional(h.z.object({}).loose())}),outputSchema:h.z.optional(h.z.object({}).loose()),annotations:h.z.optional(h.z.object({title:h.z.optional(h.z.string()),readOnlyHint:h.z.optional(h.z.boolean()),destructiveHint:h.z.optional(h.z.boolean()),idempotentHint:h.z.optional(h.z.boolean()),openWorldHint:h.z.optional(h.z.boolean())}).loose()),_meta:t}).loose(),E=C.extend({tools:h.z.array(D)}),F=h.z.object({type:h.z.literal("text"),text:h.z.string()}).loose(),G=h.z.object({type:h.z.literal("image"),data:h.z.base64(),mimeType:h.z.string()}).loose(),H=h.z.object({uri:h.z.string(),name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string()),size:h.z.optional(h.z.number())}).loose(),I=C.extend({resources:h.z.array(H)}),J=h.z.object({uri:h.z.string(),name:h.z.optional(h.z.string()),title:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),K=J.extend({text:h.z.string()}),L=J.extend({blob:h.z.base64()}),M=h.z.object({type:h.z.literal("resource"),resource:h.z.union([K,L])}).loose(),N=h.z.object({type:h.z.literal("resource_link"),uri:h.z.string(),name:h.z.string(),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),O=h.z.object({type:h.z.string()}).loose().refine(a=>!["text","image","resource","resource_link"].includes(a.type),{message:"Known content types must match their schema"}),P=w.extend({content:h.z.array(h.z.union([F,G,M,N,O])),structuredContent:h.z.optional(h.z.unknown()),isError:h.z.boolean().default(!1).optional()}),Q=w.extend({content:h.z.never().optional(),structuredContent:h.z.json(),isError:h.z.boolean().default(!1).optional()}).transform(a=>({...a,content:[{type:"text",text:JSON.stringify(a.structuredContent)}]})).pipe(P),R=P.or(Q).or(w.extend({toolResult:h.z.unknown().nonoptional()})),S=h.z.object({uriTemplate:h.z.string(),name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),mimeType:h.z.optional(h.z.string())}).loose(),T=w.extend({resourceTemplates:h.z.array(S)}),U=w.extend({contents:h.z.array(h.z.union([K,L]))}),V=h.z.object({type:h.z.literal("ref/prompt"),name:h.z.string()}).loose(),W=h.z.object({type:h.z.literal("ref/resource"),uri:h.z.string()}).loose(),X=h.z.object({name:h.z.string(),value:h.z.string()}).loose();v.extend({ref:h.z.union([V,W]),argument:X,context:h.z.optional(h.z.object({arguments:h.z.record(h.z.string(),h.z.string())}).loose())});var Y=w.extend({completion:h.z.object({values:h.z.array(h.z.string()).max(100),total:h.z.optional(h.z.number().int()),hasMore:h.z.optional(h.z.boolean())}).loose()}),Z=h.z.object({name:h.z.string(),description:h.z.optional(h.z.string()),required:h.z.optional(h.z.boolean())}).loose(),$=h.z.object({name:h.z.string(),title:h.z.optional(h.z.string()),description:h.z.optional(h.z.string()),arguments:h.z.optional(h.z.array(Z))}).loose(),_=C.extend({prompts:h.z.array($)}),aa=h.z.object({role:h.z.union([h.z.literal("user"),h.z.literal("assistant")]),content:h.z.union([F,G,M,N])}).loose(),ab=w.extend({description:h.z.optional(h.z.string()),messages:h.z.array(aa)}),ac=v.extend({message:h.z.string(),requestedSchema:h.z.unknown()}),ad=x.extend({method:h.z.literal("elicitation/create"),params:ac}),ae=w.extend({action:h.z.union([h.z.literal("accept"),h.z.literal("decline"),h.z.literal("cancel")]),content:h.z.optional(h.z.record(h.z.string(),h.z.unknown()))}),af=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.union([h.z.string(),h.z.number().int()])}).merge(x).strict(),ag=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.union([h.z.string(),h.z.number().int()]),result:w}).strict(),ah=h.z.object({jsonrpc:h.z.literal("2.0"),id:h.z.optional(h.z.union([h.z.string(),h.z.number().int()])),error:h.z.object({code:h.z.number().int(),message:h.z.string(),data:h.z.optional(h.z.unknown())})}).strict(),ai=h.z.object({jsonrpc:h.z.literal("2.0")}).merge(h.z.object({method:h.z.string(),params:h.z.optional(v)})).strict(),aj=h.z.union([af,ai,ag,ah]);function ak(a){return aj.parse(a)}async function al(a){return ak(await (0,g.parseJSON)({text:a}))}var am="vercel.ai.error.AI_MCPClientError",an=Symbol.for(am),ao=class extends(d=i.AISDKError,c=an,d){constructor({name:a="MCPClientError",message:b,cause:d,data:e,code:f,statusCode:g,url:h,responseBody:i}){super({name:a,message:b,cause:d}),this[c]=!0,this.data=e,this.code=f,this.statusCode=g,this.url=h,this.responseBody=i}static isInstance(a){return i.AISDKError.hasMarker(a,am)}},ap="u">typeof __PACKAGE_VERSION__?__PACKAGE_VERSION__:"0.0.0-test",aq=h.z.string().url().superRefine((a,b)=>{if(!URL.canParse(a))return b.addIssue({code:h.z.ZodIssueCode.custom,message:"URL must be parseable",fatal:!0}),h.z.NEVER}).refine(a=>{let b=new URL(a);return"javascript:"!==b.protocol&&"data:"!==b.protocol&&"vbscript:"!==b.protocol},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),ar=h.z.object({access_token:h.z.string(),id_token:h.z.string().optional(),token_type:h.z.string(),expires_in:h.z.number().optional(),scope:h.z.string().optional(),refresh_token:h.z.string().optional(),issuer:aq.optional(),authorization_server:aq.optional(),token_endpoint:aq.optional()}).strip(),as=h.z.looseObject({resource:h.z.string().url(),authorization_servers:h.z.array(aq).optional(),jwks_uri:h.z.string().url().optional(),scopes_supported:h.z.array(h.z.string()).optional(),bearer_methods_supported:h.z.array(h.z.string()).optional(),resource_signing_alg_values_supported:h.z.array(h.z.string()).optional(),resource_name:h.z.string().optional(),resource_documentation:h.z.string().optional(),resource_policy_uri:h.z.string().url().optional(),resource_tos_uri:h.z.string().url().optional(),tls_client_certificate_bound_access_tokens:h.z.boolean().optional(),authorization_details_types_supported:h.z.array(h.z.string()).optional(),dpop_signing_alg_values_supported:h.z.array(h.z.string()).optional(),dpop_bound_access_tokens_required:h.z.boolean().optional()}),at=h.z.looseObject({issuer:h.z.string(),authorization_endpoint:aq,token_endpoint:aq,registration_endpoint:aq.optional(),authorization_response_iss_parameter_supported:h.z.boolean().optional(),client_id_metadata_document_supported:h.z.boolean().optional(),scopes_supported:h.z.array(h.z.string()).optional(),response_types_supported:h.z.array(h.z.string()),grant_types_supported:h.z.array(h.z.string()).optional(),code_challenge_methods_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_methods_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:h.z.array(h.z.string()).optional()}),au=h.z.looseObject({issuer:h.z.string(),authorization_endpoint:aq,token_endpoint:aq,userinfo_endpoint:aq.optional(),jwks_uri:aq,registration_endpoint:aq.optional(),authorization_response_iss_parameter_supported:h.z.boolean().optional(),client_id_metadata_document_supported:h.z.boolean().optional(),scopes_supported:h.z.array(h.z.string()).optional(),response_types_supported:h.z.array(h.z.string()),grant_types_supported:h.z.array(h.z.string()).optional(),subject_types_supported:h.z.array(h.z.string()),id_token_signing_alg_values_supported:h.z.array(h.z.string()),claims_supported:h.z.array(h.z.string()).optional(),token_endpoint_auth_methods_supported:h.z.array(h.z.string()).optional()}).merge(at.pick({code_challenge_methods_supported:!0})),av=h.z.object({client_id:h.z.string(),client_secret:h.z.string().optional(),client_id_issued_at:h.z.number().optional(),client_secret_expires_at:h.z.number().optional(),issuer:aq.optional(),authorization_server:aq.optional(),token_endpoint:aq.optional()}).strip(),aw=h.z.object({redirect_uris:h.z.array(aq),application_type:h.z.union([h.z.literal("native"),h.z.literal("web")]).optional(),token_endpoint_auth_method:h.z.string().optional(),grant_types:h.z.array(h.z.string()).optional(),response_types:h.z.array(h.z.string()).optional(),client_name:h.z.string().optional(),client_uri:aq.optional(),logo_uri:aq.optional(),scope:h.z.string().optional(),contacts:h.z.array(h.z.string()).optional(),tos_uri:aq.optional(),policy_uri:h.z.string().optional(),jwks_uri:aq.optional(),jwks:h.z.any().optional(),software_id:h.z.string().optional(),software_version:h.z.string().optional(),software_statement:h.z.string().optional()}).strip(),ax=h.z.object({error:h.z.string(),error_description:h.z.string().optional(),error_uri:h.z.string().optional()}),ay=aw.merge(av),az="vercel.ai.error.AI_MCPClientOAuthError",aA=Symbol.for(az),aB=class extends(f=i.AISDKError,e=aA,f){constructor({name:a="MCPClientOAuthError",message:b,cause:c}){super({name:a,message:b,cause:c}),this[e]=!0}static isInstance(a){return i.AISDKError.hasMarker(a,az)}},aC=class extends aB{};aC.errorCode="server_error";var aD=class extends aB{};aD.errorCode="invalid_client";var aE=class extends aB{};aE.errorCode="invalid_grant";var aF=class extends aB{};aF.errorCode="unauthorized_client";var aG={[aC.errorCode]:aC,[aD.errorCode]:aD,[aE.errorCode]:aE,[aF.errorCode]:aF};function aH(a){let b=a.href;return"/"===a.pathname&&b.endsWith("/")?b.slice(0,-1):b}var aI=class extends Error{constructor(a="Unauthorized"){super(a),this.name="UnauthorizedError"}};function aJ(a){return new URL(a).href}function aK(a){let b=a.toLowerCase().replace(/\.+$/,"");return"localhost"===b||b.endsWith(".localhost")||"127.0.0.1"===b||"[::1]"===b||"::1"===b}function aL(a){if(!(("http:"===a.protocol||"https:"===a.protocol)&&aK(a.hostname)))try{(0,g.validateDownloadUrl)(a.href)}catch(b){throw new aB({message:`OAuth endpoint URL is not allowed: ${a.href}`,cause:b})}}function aM(a,b){return{...a,issuer:b.issuer,authorization_server:b.authorizationServerUrl,token_endpoint:b.tokenEndpoint}}function aN(a,b){return{...a,issuer:b.issuer,authorization_server:b.authorizationServerUrl,token_endpoint:b.tokenEndpoint}}function aO(a){if((null==a?void 0:a.authorization_server)&&a.token_endpoint)return{issuer:a.issuer,authorizationServerUrl:aJ(a.authorization_server),tokenEndpoint:aJ(a.token_endpoint)}}async function aP({provider:a,clientInformation:b,tokens:c}){var d;let e=aO(c);if(e)return e;let f=await (null==(d=a.authorizationServerInformation)?void 0:d.call(a));return f?{issuer:f.issuer,authorizationServerUrl:aJ(f.authorizationServerUrl),tokenEndpoint:aJ(f.tokenEndpoint)}:aO(b)}async function aQ({provider:a,clientInformation:b,authorizationServerInformation:c}){return a.saveAuthorizationServerInformation?(await a.saveAuthorizationServerInformation(c),!0):!!a.saveClientInformation&&(await a.saveClientInformation(aN(b,c)),!0)}function aR({storedAuthorizationServerInformation:a,currentAuthorizationServerInformation:b}){if(null!=a.issuer&&null!=b.issuer&&a.issuer!==b.issuer||a.authorizationServerUrl!==b.authorizationServerUrl||a.tokenEndpoint!==b.tokenEndpoint)throw new aB({message:"OAuth authorization server metadata does not match the metadata that issued the stored credentials"})}function aS(a){var b,c;let d,e=null!=(b=a.headers.get("www-authenticate"))?b:a.headers.get("WWW-Authenticate");if(!e)return{};let[f,g]=e.split(" ");if("bearer"!==f.toLowerCase()||!g)return{};let h=e.match(/(?:^|[,\s])resource_metadata="([^"]*)"/i),i=null==(c=e.match(/(?:^|[,\s])scope="([^"]*)"/i))?void 0:c[1];try{d=h?new URL(h[1]):void 0}catch(a){}return{resourceMetadataUrl:d,scope:i}}async function aT(a,b,c=fetch){try{return await c(a,{headers:b})}catch(d){if(d instanceof TypeError)if(b)return aT(a,void 0,c);else return;throw d}}async function aU(a,b,c=fetch){return await aT(a,{"MCP-Protocol-Version":b},c)}async function aV(a,b,c,d){var e,f,g,h;let i,j=new URL(a),k=null!=(e=null==d?void 0:d.protocolVersion)?e:q;(null==d?void 0:d.metadataUrl)?i=new URL(d.metadataUrl):(i=new URL(function(a,b="",c={}){return b.endsWith("/")&&(b=b.slice(0,-1)),c.prependPathname?`${b}/.well-known/${a}`:`/.well-known/${a}${b}`}(b,j.pathname),null!=(f=null==d?void 0:d.metadataServerUrl)?f:j)).search=j.search;let l=await aU(i,k,c);if(!(null==d?void 0:d.metadataUrl)&&(g=l,h=j.pathname,!g||g.status>=400&&g.status<500&&"/"!==h)){let a=new URL(`/.well-known/${b}`,j);l=await aU(a,k,c)}return l}async function aW(a,b,c=fetch){let d=await aV(a,"oauth-protected-resource",c,{protocolVersion:null==b?void 0:b.protocolVersion,metadataUrl:null==b?void 0:b.resourceMetadataUrl});if(!d||404===d.status)throw Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!d.ok)throw Error(`HTTP ${d.status} trying to load well-known OAuth protected resource metadata.`);return as.parse(await d.json())}function aX(a,b){if(a.issuer!==b&&(b!==new URL(b).origin||a.issuer!==`${b}/`))throw new aB({message:`OAuth authorization server metadata issuer ${a.issuer} does not match expected issuer ${b}`})}async function aY(a,{fetchFn:b=fetch,protocolVersion:c=q}={}){var d;let e={"MCP-Protocol-Version":c};for(let{url:c,type:f,expectedIssuer:g}of function(a){let b="string"==typeof a?new URL(a):a,c="/"!==b.pathname,d=b.origin,e=[];if(!c)return e.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth",expectedIssuer:d}),e.push({url:new URL("/.well-known/openid-configuration",b.origin),type:"oidc",expectedIssuer:d}),e;let f=b.pathname;f.endsWith("/")&&(f=f.slice(0,-1));let g=`${b.origin}${f}`;return e.push({url:new URL(`/.well-known/oauth-authorization-server${f}`,b.origin),type:"oauth",expectedIssuer:g}),e.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth",expectedIssuer:d}),e.push({url:new URL(`/.well-known/openid-configuration${f}`,b.origin),type:"oidc",expectedIssuer:g}),e.push({url:new URL(`${f}/.well-known/openid-configuration`,b.origin),type:"oidc",expectedIssuer:g}),e}(a)){let a=await aT(c,e,b);if(a){if(!a.ok){if(a.status>=400&&a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${"oauth"===f?"OAuth":"OpenID provider"} metadata from ${c}`)}if("oauth"===f){let b=at.parse(await a.json());return aX(b,g),b}{let b=au.parse(await a.json());if(aX(b,g),!(null==(d=b.code_challenge_methods_supported)?void 0:d.includes("S256")))throw Error(`Incompatible OIDC provider at ${c}: does not support S256 code challenge method required by MCP specification`);return b}}}}async function aZ(a,{metadata:b,clientInformation:c,redirectUrl:d,scope:e,state:f,resource:g}){let h,i="code",j="S256";if(b){if(h=new URL(b.authorization_endpoint),!b.response_types_supported.includes(i))throw Error(`Incompatible auth server: does not support response type ${i}`);if(!b.code_challenge_methods_supported||!b.code_challenge_methods_supported.includes(j))throw Error(`Incompatible auth server: does not support code challenge method ${j}`)}else h=new URL("/authorize",a);let k=await o(),l=k.code_verifier,m=k.code_challenge;return h.searchParams.set("response_type",i),h.searchParams.set("client_id",c.client_id),h.searchParams.set("code_challenge",m),h.searchParams.set("code_challenge_method",j),h.searchParams.set("redirect_uri",String(d)),f&&h.searchParams.set("state",f),e&&h.searchParams.set("scope",e),(null==e?void 0:e.includes("offline_access"))&&h.searchParams.append("prompt","consent"),g&&h.searchParams.set("resource",aH(g)),{authorizationUrl:h,codeVerifier:l}}function a$(a,b){let c=void 0!==a.client_secret;return 0===b.length?c?"client_secret_post":"none":c&&b.includes("client_secret_basic")?"client_secret_basic":c&&b.includes("client_secret_post")?"client_secret_post":b.includes("none")?"none":c?"client_secret_post":"none"}function a_(a,b,c,d){let{client_id:e,client_secret:f}=b;switch(a){case"client_secret_basic":var g,h,i,j,k=e,l=f,m=c;if(!l)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${k}:${l}`);m.set("Authorization",`Basic ${n}`);return;case"client_secret_post":g=e,h=f,(i=d).set("client_id",g),h&&i.set("client_secret",h);return;case"none":j=e,d.set("client_id",j);return;default:throw Error(`Unsupported client authentication method: ${a}`)}}async function a0(a){let b=a instanceof Response?a.status:void 0,c=a instanceof Response?await a.text():a;try{let{error:a,error_description:b,error_uri:d}=ax.parse(await (0,g.parseJSON)({text:c}));return new(aG[a]||aC)({message:b||"",cause:d})}catch(a){return new aC({message:`${b?`HTTP ${b}: `:""}Invalid OAuth error response: ${a}. Raw body: ${c}`})}}async function a1(a,{metadata:b,clientInformation:c,authorizationCode:d,codeVerifier:e,redirectUri:f,resource:g,addClientAuthentication:h,fetchFn:i}){var j;let k="authorization_code",l=(null==b?void 0:b.token_endpoint)?new URL(b.token_endpoint):new URL("/token",a);if(aL(l),(null==b?void 0:b.grant_types_supported)&&!b.grant_types_supported.includes(k))throw Error(`Incompatible auth server: does not support grant type ${k}`);let m=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),n=new URLSearchParams({grant_type:k,code:d,code_verifier:e,redirect_uri:String(f)});h?await h(m,n,a,b):a_(a$(c,null!=(j=null==b?void 0:b.token_endpoint_auth_methods_supported)?j:[]),c,m,n),g&&n.set("resource",aH(g));let o=await (null!=i?i:fetch)(l,{method:"POST",headers:m,body:n,redirect:"error"});if(!o.ok)throw await a0(o);return ar.parse(await o.json())}async function a2(a,{metadata:b,clientInformation:c,refreshToken:d,resource:e,addClientAuthentication:f,fetchFn:g}){var h;let i,j="refresh_token";if(b){if(i=new URL(b.token_endpoint),b.grant_types_supported&&!b.grant_types_supported.includes(j))throw Error(`Incompatible auth server: does not support grant type ${j}`)}else i=new URL("/token",a);aL(i);let k=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),l=new URLSearchParams({grant_type:j,refresh_token:d});f?await f(k,l,a,b):a_(a$(c,null!=(h=null==b?void 0:b.token_endpoint_auth_methods_supported)?h:[]),c,k,l),e&&l.set("resource",aH(e));let m=await (null!=g?g:fetch)(i,{method:"POST",headers:k,body:l,redirect:"error"});if(!m.ok)throw await a0(m);return ar.parse({refresh_token:d,...await m.json()})}async function a3(a,{metadata:b,clientMetadata:c,fetchFn:d}){var e;let f;if(b){if(!b.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");f=new URL(b.registration_endpoint)}else f=new URL("/register",a);aL(f);let g=null!=(e=c.application_type)?e:c.redirect_uris.every(a=>{let b=new URL(a);return("http:"===b.protocol||"https:"===b.protocol)&&aK(b.hostname)||"http:"!==b.protocol&&"https:"!==b.protocol})?"native":"web",h=await (null!=d?d:fetch)(f,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...c,application_type:g}),redirect:"error"});if(!h.ok)throw await a0(h);return ay.parse(await h.json())}async function a4(a,b){var c,d;try{return await a6(a,b)}catch(e){if(e instanceof aD||e instanceof aF)return await (null==(c=a.invalidateCredentials)?void 0:c.call(a,"all")),await a6(a,b);if(e instanceof aE)return await (null==(d=a.invalidateCredentials)?void 0:d.call(a,"tokens")),await a6(a,b);throw e}}async function a5(a,b,c){let d,e=((d=new URL("string"==typeof a?a:a.href)).hash="",d);if(b.validateResourceURL)return await b.validateResourceURL(e,null==c?void 0:c.resource);if(c){if(!function({requestedResource:a,configuredResource:b}){let c=new URL("string"==typeof a?a:a.href),d=new URL("string"==typeof b?b:b.href);if(c.origin!==d.origin||c.pathname.length<d.pathname.length)return!1;let e=c.pathname.endsWith("/")?c.pathname:c.pathname+"/",f=d.pathname.endsWith("/")?d.pathname:d.pathname+"/";return e.startsWith(f)}({requestedResource:e,configuredResource:c.resource}))throw Error(`Protected resource ${c.resource} does not match expected ${e} (or origin)`);return new URL(c.resource)}}async function a6(a,{serverUrl:b,authorizationCode:c,callbackState:d,callbackIssuer:e,scope:f,resourceMetadataUrl:g,fetchFn:h}){var i,j,k,l,m,n;let o,p;!function(a,b){if(!b)return;let c=new URL(a).origin;if(b.origin!==c)throw new aB({message:`OAuth protected resource metadata URL ${b.href} must have the same origin as the MCP server URL ${c}`})}(b,g);try{(o=await aW(b,{resourceMetadataUrl:g},h)).authorization_servers&&o.authorization_servers.length>0&&(p=o.authorization_servers[0])}catch(a){}p||(p=b);let q=await a5(b,a,o);await (null==(i=a.validateAuthorizationServerURL)?void 0:i.call(a,b,p));let r=await aY(p,{fetchFn:h}),s=(m=p,{issuer:null!=(n=null==r?void 0:r.issuer)?n:String(m),authorizationServerUrl:aJ(m),tokenEndpoint:aJ((null==r?void 0:r.token_endpoint)?new URL(r.token_endpoint):new URL("/token",m))}),t=a.clientMetadata,u=function({scope:a,resourceMetadata:b,clientMetadata:c}){var d;if(a)return a;let e=null==(d=null==b?void 0:b.scopes_supported)?void 0:d.join(" ");return e||c.scope}({scope:f,resourceMetadata:o,clientMetadata:t}),v=await Promise.resolve(a.clientInformation());if((null==v?void 0:v.issuer)!=null){let b=await aP({provider:a,clientInformation:v});b&&aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s})}if(!v){if(void 0!==c)throw Error("Existing OAuth client information is required when exchanging an authorization code");if(!a.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");v=aN(await a3(p,{metadata:r,clientMetadata:{...t,scope:u},fetchFn:h}),s),await a.saveClientInformation(v)}if(void 0!==c){if(a.storedState){let b=await a.storedState();if(void 0!==b&&b!==d)throw Error("OAuth state parameter mismatch - possible CSRF attack")}let b=await aP({provider:a,clientInformation:v});if(!b)throw new aB({message:"Stored OAuth authorization server metadata is required when exchanging an authorization code"});!function({callbackIssuer:a,expectedIssuer:b}){if(null!=a&&a!==b)throw new aB({message:`OAuth authorization response issuer ${a} does not match expected issuer ${b}`})}({callbackIssuer:e,expectedIssuer:null!=(k=null!=(j=b.issuer)?j:null==r?void 0:r.issuer)?k:String(p)}),aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s});let f=await a.codeVerifier(),g=await a1(p,{metadata:r,clientInformation:v,authorizationCode:c,codeVerifier:f,redirectUri:a.redirectUrl,resource:q,addClientAuthentication:a.addClientAuthentication,fetchFn:h});return await a.saveTokens(aM(g,s)),"AUTHORIZED"}let w=await a.tokens();if(null==w?void 0:w.refresh_token){let b=await aP({provider:a,clientInformation:v,tokens:w});b?aR({storedAuthorizationServerInformation:b,currentAuthorizationServerInformation:s}):await (null==(l=a.invalidateCredentials)?void 0:l.call(a,"tokens"));try{if(b){let b=await a2(p,{metadata:r,clientInformation:v,refreshToken:w.refresh_token,resource:q,addClientAuthentication:a.addClientAuthentication,fetchFn:h});return await a.saveTokens(aM(b,s)),"AUTHORIZED"}}catch(a){if(!(a instanceof aB)||a instanceof aC);else throw a}}let x=a.state?await a.state():void 0;x&&a.saveState&&await a.saveState(x);let{authorizationUrl:y,codeVerifier:z}=await aZ(p,{metadata:r,clientInformation:v,state:x,redirectUrl:a.redirectUrl,scope:u,resource:q});if(!await aQ({provider:a,clientInformation:v,authorizationServerInformation:s}))throw new aB({message:"OAuth authorization server metadata must be saveable before starting authorization"});return await a.saveCodeVerifier(z),await a.redirectToAuthorization(y),"REDIRECT"}var a7=class{constructor({url:a,headers:b,authProvider:c,redirect:d="error",fetch:e}){this.connected=!1,this.url=new URL(a),this.headers=b,this.authProvider=c,this.redirectMode=d,this.fetchFn=null!=e?e:globalThis.fetch}setProtocolVersion(a){this.protocolVersion=a}async commonHeaders(a){var b;let c={...this.headers,...a,"mcp-protocol-version":null!=(b=this.protocolVersion)?b:r};if(this.authProvider){let a=await this.authProvider.tokens();(null==a?void 0:a.access_token)&&(c.Authorization=`Bearer ${a.access_token}`)}return(0,g.withUserAgentSuffix)(c,`ai-sdk/${ap}`,(0,g.getRuntimeEnvironmentUserAgent)())}async start(){return new Promise((a,b)=>{if(this.connected)return a();this.abortController=new AbortController;let c=async(d=!1)=>{var e,f,g,h,i;try{let i=await this.commonHeaders({Accept:"text/event-stream"}),k=await this.fetchFn(this.url.href,{headers:i,signal:null==(e=this.abortController)?void 0:e.signal,redirect:this.redirectMode});if(401===k.status&&this.authProvider&&!d){let{resourceMetadataUrl:a,scope:d}=aS(k);this.resourceMetadataUrl=a;try{let a=await a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:this.resourceMetadataUrl,scope:d,fetchFn:this.fetchFn});if("AUTHORIZED"!==a){let a=new aI;return null==(f=this.onerror)||f.call(this,a),b(a)}}catch(a){return null==(g=this.onerror)||g.call(this,a),b(a)}return c(!0)}if(!k.ok||!k.body){let a=`MCP SSE Transport Error: ${k.status} ${k.statusText}`;405===k.status&&(a+=". This server does not support SSE transport. Try using `http` transport instead");let c=new ao({message:a});return null==(h=this.onerror)||h.call(this,c),b(c)}let l=k.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader(),m=async()=>{var c,d,e,f,g;try{for(;;){let{done:b,value:g}=await l.read();if(b){if(this.connected)throw this.connected=!1,new ao({message:"MCP SSE Transport Error: Connection closed unexpectedly"});return}let{event:h,data:i}=g;if("endpoint"===h){if(this.endpoint)continue;let b=new URL(i,this.url);if(b.origin!==this.url.origin)throw this.connected=!1,this.endpoint=void 0,null==(c=this.sseConnection)||c.close(),null==(d=this.abortController)||d.abort(),new ao({message:`MCP SSE Transport Error: Endpoint origin does not match connection origin: ${b.origin}`});this.endpoint=b,this.connected=!0,a()}else if(void 0===h||"message"===h)try{let a=await al(i);null==(e=this.onmessage)||e.call(this,a)}catch(b){let a=new ao({message:"MCP SSE Transport Error: Failed to parse message",cause:b});null==(f=this.onerror)||f.call(this,a)}}}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(g=this.onerror)||g.call(this,a),b(a)}};this.sseConnection={close:()=>l.cancel()},m()}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(i=this.onerror)||i.call(this,a),b(a)}};c()})}async close(){var a,b,c;this.connected=!1,this.endpoint=void 0,null==(a=this.sseConnection)||a.close(),null==(b=this.abortController)||b.abort(),null==(c=this.onclose)||c.call(this)}async send(a,b){var c,d;if(null==(c=null==b?void 0:b.signal)||c.throwIfAborted(),!this.endpoint||!this.connected)throw new ao({message:"MCP SSE Transport Error: Not connected"});let e=this.endpoint,f=null==(d=this.abortController)?void 0:d.signal,g=(null==b?void 0:b.signal)==null?f:null==f?b.signal:AbortSignal.any([f,b.signal]),h=async(c=!1)=>{var d,f;try{let b=await this.commonHeaders({"Content-Type":"application/json"}),d={method:"POST",headers:b,body:JSON.stringify(a),signal:g,redirect:this.redirectMode},f=await this.fetchFn(e.href,d);if(401===f.status&&this.authProvider&&!c){let{resourceMetadataUrl:a,scope:b}=aS(f);this.resourceMetadataUrl=a;let c=await a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:this.resourceMetadataUrl,scope:b,fetchFn:this.fetchFn});if("AUTHORIZED"!==c)throw new aI;return h(!0)}if(!f.ok){let a=await f.text().catch(()=>null);throw new ao({message:`MCP SSE Transport Error: POSTing to endpoint (HTTP ${f.status}): ${a}`,statusCode:f.status,url:e.href,responseBody:null!=a?a:void 0})}}catch(a){if(null==(d=null==b?void 0:b.signal)?void 0:d.aborted)throw a;throw null==(f=this.onerror)||f.call(this,a),a}};await h()}},a8=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,a9=/^=\?base64\?.*\?=$/;function ba(a){return[...a].every(a=>{let b=a.charCodeAt(0);return 9===b||b>=32&&b<=126})&&a.trim()===a&&!a9.test(a)?a:`=?base64?${(0,g.convertUint8ArrayToBase64)(new TextEncoder().encode(a))}?=`}function bb(a){return void 0===a||"message"===a}var bc=class{constructor({url:a,headers:b,authProvider:c,redirect:d="error",initialSessionId:e,initialProtocolVersion:f,onSessionIdChange:g,onSessionExpired:h,terminateSessionOnClose:i=!0,fetch:j}){this.supportsProtocolVersionDiscovery=!0,this.supportsMcpToolParameterHeaders=!0,this.inboundReconnectAttempts=0,this.reconnectionOptions={initialReconnectionDelay:1e3,maxReconnectionDelay:3e4,reconnectionDelayGrowFactor:1.5,maxRetries:2},this.url=new URL(a),this.headers=b,this.authProvider=c,this.redirectMode=d,this.sessionId=e,this.protocolVersion=null!=f?f:r,this.onSessionIdChange=g,this.onSessionExpired=h,this.terminateSessionOnClose=i,this.fetchFn=null!=j?j:globalThis.fetch}setProtocolVersion(a){var b;if(this.protocolVersion=a,this.abortController){if(this.isModernProtocol()){null==(b=this.inboundSseConnection)||b.close(),this.inboundSseConnection=void 0;return}this.inboundSseConnection||this.startInboundSse()}}isModernProtocol(){var a;return(null!=(a=this.protocolVersion)?a:q)===q}async commonHeaders({base:a,includeSessionId:b=!0}){var c;let d={...this.headers,...a,"mcp-protocol-version":null!=(c=this.protocolVersion)?c:r};if(!this.isModernProtocol()&&b&&this.sessionId&&(d["mcp-session-id"]=this.sessionId),this.authProvider){let a=await this.authProvider.tokens();(null==a?void 0:a.access_token)&&(d.Authorization=`Bearer ${a.access_token}`)}return(0,g.withUserAgentSuffix)(d,`ai-sdk/${ap}`,(0,g.getRuntimeEnvironmentUserAgent)())}setSessionId(a){var b;this.sessionId!==a&&(this.sessionId=a,null==(b=this.onSessionIdChange)||b.call(this,a))}applySessionIdFromResponse(a){if(this.isModernProtocol())return;let b=a.headers.get("mcp-session-id");b&&this.setSessionId(b)}expireSessionId(a){var b;this.sessionId===a&&this.setSessionId(void 0),null==(b=this.onSessionExpired)||b.call(this,a)}authorizeOnce(a,b){return this.authProvider?(this.authPromise||(this.authPromise=a4(this.authProvider,{serverUrl:this.url,resourceMetadataUrl:a,scope:b,fetchFn:this.fetchFn}).finally(()=>{this.authPromise=void 0})),this.authPromise):Promise.resolve("REDIRECT")}async start(){if(this.abortController)throw new ao({message:"MCP HTTP Transport Error: Transport already started. Note: client.connect() calls start() automatically."});this.abortController=new AbortController,null!=this.protocolVersion&&this.protocolVersion!==q&&this.startInboundSse()}async close(a){var b,c,d,e,f;null==(b=this.inboundSseConnection)||b.close(),null==(c=this.abortController)||c.abort();try{if(!this.isModernProtocol()&&this.sessionId&&this.terminateSessionOnClose&&this.abortController){null==(d=null==a?void 0:a.signal)||d.throwIfAborted();let b=await this.commonHeaders({base:{}});null==(e=null==a?void 0:a.signal)||e.throwIfAborted(),await this.fetchFn(this.url.href,{method:"DELETE",headers:b,signal:null==a?void 0:a.signal,redirect:this.redirectMode}).catch(()=>void 0)}}catch(a){}null==(f=this.onclose)||f.call(this)}async send(a,b){var c,d;null==(c=null==b?void 0:b.signal)||c.throwIfAborted();let e=null==(d=this.abortController)?void 0:d.signal,f=(null==b?void 0:b.signal)==null?e:null==e?b.signal:AbortSignal.any([e,b.signal]),g=async(c=!1)=>{var d,e,h,i,k,l,m,n;try{let m="method"in a&&"initialize"===a.method,n=m?void 0:this.sessionId,o=await this.commonHeaders({base:{"Content-Type":"application/json",Accept:"application/json, text/event-stream",...this.isModernProtocol()?null==b?void 0:b.headers:{},...this.isModernProtocol()&&"method"in a&&"id"in a?this.getStandardRequestHeaders(a):{}},includeSessionId:!m}),p={method:"POST",headers:o,body:JSON.stringify(a),signal:f,redirect:this.redirectMode},q=await this.fetchFn(this.url.href,p);if(this.applySessionIdFromResponse(q),401===q.status&&this.authProvider&&!c){let{resourceMetadataUrl:a,scope:b}=aS(q);this.resourceMetadataUrl=a;try{let a=await this.authorizeOnce(this.resourceMetadataUrl,b);if("AUTHORIZED"!==a)throw new aI}catch(a){throw null==(d=this.onerror)||d.call(this,a),a}return g(!0)}if(202===q.status){this.isModernProtocol()||this.inboundSseConnection||this.startInboundSse();return}if(!q.ok){let b=await q.text().catch(()=>null);if("id"in a&&null!=b){let c=await al(b).catch(()=>void 0);if(null!=c&&"error"in c){null==(e=this.onmessage)||e.call(this,null==c.id?{...c,id:a.id}:c);return}}let c=`MCP HTTP Transport Error: POSTing to endpoint (HTTP ${q.status}): ${b}`;404===q.status&&(!this.isModernProtocol()&&n?(this.expireSessionId(n),c+=". The MCP session expired. Create a new client without `initialSessionId` to start a fresh session"):this.isModernProtocol()||(c+=". This server does not support HTTP transport. Try using `sse` transport instead"));let d=new ao({message:c,statusCode:q.status,url:this.url.href,responseBody:null!=b?b:void 0});throw null==(h=this.onerror)||h.call(this,d),d}if(!("id"in a))return;let r=q.headers.get("content-type")||"";if(r.includes("application/json")){let a=await q.json();for(let b of Array.isArray(a)?a.map(a=>ak(a)):[ak(a)])null==(i=this.onmessage)||i.call(this,b);return}if(r.includes("text/event-stream")){if(!q.body){let a=new ao({message:"MCP HTTP Transport Error: text/event-stream response without body",statusCode:q.status,url:this.url.href});throw null==(k=this.onerror)||k.call(this,a),a}let a=q.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader();(async()=>{var c,d,e,f;try{for(;;){let{done:b,value:e}=await a.read();if(b)return;let{event:f,data:g}=e;if(bb(f))try{let a=await al(g);null==(c=this.onmessage)||c.call(this,a)}catch(b){let a=new ao({message:"MCP HTTP Transport Error: Failed to parse message",cause:b});null==(d=this.onerror)||d.call(this,a)}}}catch(a){if((null==(e=null==b?void 0:b.signal)?void 0:e.aborted)||a instanceof Error&&"AbortError"===a.name)return;null==(f=this.onerror)||f.call(this,a)}})().catch(a=>{var c,d;null!=(c=null==b?void 0:b.signal)&&c.aborted||a instanceof Error&&"AbortError"===a.name||null==(d=this.onerror)||d.call(this,a)});return}let s=new ao({message:`MCP HTTP Transport Error: Unexpected content type: ${r}`,statusCode:q.status,url:this.url.href});throw null==(l=this.onerror)||l.call(this,s),s}catch(a){if(null==(m=null==b?void 0:b.signal)?void 0:m.aborted)throw a;throw null==(n=this.onerror)||n.call(this,a),a}};await g()}getStandardRequestHeaders(a){let b={"Mcp-Method":a.method},c=a.params,d="resources/read"===a.method?null==c?void 0:c.uri:"tools/call"===a.method||"prompts/get"===a.method?null==c?void 0:c.name:void 0;return"string"==typeof d&&(b["Mcp-Name"]=ba(d)),b}getNextReconnectionDelay(a){let{initialReconnectionDelay:b,reconnectionDelayGrowFactor:c,maxReconnectionDelay:d}=this.reconnectionOptions;return Math.min(b*Math.pow(c,a),d)}scheduleInboundSseReconnection(){var a;let{maxRetries:b}=this.reconnectionOptions;if(b>0&&this.inboundReconnectAttempts>=b){null==(a=this.onerror)||a.call(this,new ao({message:`MCP HTTP Transport Error: Maximum reconnection attempts (${b}) exceeded.`}));return}let c=this.getNextReconnectionDelay(this.inboundReconnectAttempts);this.inboundReconnectAttempts+=1,setTimeout(()=>{var a;null!=(a=this.abortController)&&a.signal.aborted||this.startInboundSse(!1,this.lastInboundEventId)},c)}startInboundSse(a=!1,b){this.isModernProtocol()||this.openInboundSse(a,b).catch(a=>{var b;a instanceof Error&&"AbortError"===a.name||null==(b=this.onerror)||b.call(this,a)})}async openInboundSse(a=!1,b){var c,d,e,f,g,h;if(!this.isModernProtocol())try{let g=this.sessionId,h=await this.commonHeaders({base:{Accept:"text/event-stream"}});b&&(h["last-event-id"]=b);let i=await this.fetchFn(this.url.href,{method:"GET",headers:h,signal:null==(c=this.abortController)?void 0:c.signal,redirect:this.redirectMode});if(this.applySessionIdFromResponse(i),401===i.status&&this.authProvider&&!a){let{resourceMetadataUrl:a,scope:c}=aS(i);this.resourceMetadataUrl=a;try{let a=await this.authorizeOnce(this.resourceMetadataUrl,c);if("AUTHORIZED"!==a){let a=new aI;null==(d=this.onerror)||d.call(this,a);return}}catch(a){null==(e=this.onerror)||e.call(this,a);return}return this.openInboundSse(!0,b)}if(405===i.status)return;if(!i.ok||!i.body){404===i.status&&g&&this.expireSessionId(g);let a=new ao({message:`MCP HTTP Transport Error: GET SSE failed: ${i.status} ${i.statusText}`,statusCode:i.status,url:this.url.href});null==(f=this.onerror)||f.call(this,a);return}let k=i.body.pipeThrough(new TextDecoderStream).pipeThrough(new j.EventSourceParserStream).getReader(),l=async()=>{var a,b,c,d;try{for(;;){let{done:c,value:d}=await k.read();if(c)return;let{event:e,data:f,id:g}=d;if(g&&(this.lastInboundEventId=g),bb(e))try{let b=await al(f);null==(a=this.onmessage)||a.call(this,b)}catch(c){let a=new ao({message:"MCP HTTP Transport Error: Failed to parse message",cause:c});null==(b=this.onerror)||b.call(this,a)}}}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(c=this.onerror)||c.call(this,a),(null==(d=this.abortController)?void 0:d.signal.aborted)||this.scheduleInboundSseReconnection()}};this.inboundSseConnection={close:()=>{k.cancel().catch(a=>{var b;a instanceof Error&&"AbortError"===a.name||null==(b=this.onerror)||b.call(this,a)})}},this.inboundReconnectAttempts=0,l().catch(a=>{var b,c;a instanceof Error&&"AbortError"===a.name||(null==(b=this.onerror)||b.call(this,a),(null==(c=this.abortController)?void 0:c.signal.aborted)||this.scheduleInboundSseReconnection())})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;null==(g=this.onerror)||g.call(this,a),(null==(h=this.abortController)?void 0:h.signal.aborted)||this.scheduleInboundSseReconnection()}}},bd=p.array(p.unknown()).transform(a=>a.filter(a=>"string"==typeof a)).optional().catch(void 0),be=p.looseObject({connectDomains:bd,resourceDomains:bd,frameDomains:bd});p.looseObject({prefersBorder:p.boolean().optional().catch(void 0),csp:be.optional().catch(void 0),permissions:p.record(p.string(),p.unknown()).optional().catch(void 0)});var bf=[-32020,-32021,-32022],bg=["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE"];function bh(a){let b=function(a){if(null!=a&&"object"==typeof a&&"statusCode"in a&&"number"==typeof a.statusCode)return a.statusCode}(a);if(null!=b)return 408===b||409===b||429===b||b>=500;if(ao.isInstance(a)&&null!=a.code)return!1;let c=function(a){if(null!=a&&"object"==typeof a&&"code"in a&&"string"==typeof a.code)return a.code}(a);return null!=c&&bg.includes(c)}function bi({timeout:a,maxTotalTimeout:b}){return null==a?b:null==b?a:Math.min(a,b)}function bj(a,b){return null==b?a:new Promise((c,d)=>{let e=()=>{b.removeEventListener("abort",f)},f=()=>{e(),d(b.reason)};b.aborted?f():(b.addEventListener("abort",f,{once:!0}),a.then(a=>{e(),c(a)}).catch(a=>{e(),d(a)}))})}function bk({output:a}){return"content"in a&&Array.isArray(a.content)?{type:"content",value:a.content.map(a=>"text"===a.type&&"text"in a?{type:"text",text:a.text}:"image"===a.type&&"data"in a&&"mimeType"in a?{type:"file",mediaType:a.mimeType,data:{type:"data",data:a.data}}:{type:"text",text:JSON.stringify(a)})}:{type:"json",value:a}}async function bl(a){let b=new bm(a);return await b.init(),b}var bm=class{constructor({transport:a,name:b,clientName:c=null!=b?b:"ai-sdk-mcp-client",version:d="1.0.0",onUncaughtError:e,maxRetries:f,capabilities:g,initialInitializeResult:h,initializationOptions:i,protocolVersionDiscovery:j=!0}){this.requestMessageId=0,this.responseHandlers=new Map,this.serverCapabilities={},this._serverInfo={name:"",version:""},this._initializeResult={protocolVersion:r,capabilities:{},serverInfo:this._serverInfo},this.protocolEra="legacy",this.protocolVersion=r,this.toolHeaderBindings=new Map,this.isClosed=!0,this.onUncaughtError=e,this.maxRetries=function(a){if(null==a)return 0;if(!Number.isInteger(a))throw new ao({message:"maxRetries must be an integer"});if(a<0)throw new ao({message:"maxRetries must be >= 0"});return a}(f),this.clientCapabilities=null!=g?g:{},this.initialInitializeResult=h,this.initializationOptions=i,this.protocolVersionDiscovery=j,function(a){return"start"in a&&"function"==typeof a.start&&"send"in a&&"function"==typeof a.send&&"close"in a&&"function"==typeof a.close}(a)?this.transport=a:this.transport=function(a){var b;switch(a.type){case"sse":return new a7(a);case"http":return new bc({...a,initialProtocolVersion:null!=(b=a.initialProtocolVersion)?b:q});default:throw new ao({message:"Unsupported or invalid transport configuration. If you are using a custom transport, make sure it implements the MCPTransport interface."})}}(a),this.transport.onclose=()=>this.onClose(),this.transport.onerror=a=>this.onError(a),this.transport.onmessage=a=>{"method"in a?"id"in a?this.onRequestMessage(a):this.onError(new ao({message:"Unsupported message type"})):this.onResponse(a)},this.clientInfo={name:c,version:d}}get serverInfo(){return this._serverInfo}get initializeResult(){return this._initializeResult}get instructions(){return this._serverInstructions}async init(){var a;let b,c,d=null==(a=this.initializationOptions)?void 0:a.signal,e=this.initializationOptions?bi(this.initializationOptions):void 0,f=null==e?void 0:new AbortController,g=null==d?null==f?void 0:f.signal:null==f?d:AbortSignal.any([d,f.signal]);null!=e&&(b=setTimeout(()=>{c=new ao({message:`MCP client initialization timed out after ${e}ms`}),null==f||f.abort(c)},e));try{if(this.isClosed=!1,null==g||g.throwIfAborted(),await bj(this.transport.start(),g),this.initialInitializeResult){let a=B.parse(this.initialInitializeResult);return this.applyInitializeResult(a),this}if(this.protocolVersionDiscovery&&this.transport.supportsProtocolVersionDiscovery&&await this.tryProtocolDiscovery(g))return this;this.protocolEra="legacy",this.protocolVersion=r,this.setTransportProtocolVersion(this.protocolVersion);let a=await this.request({request:{method:"initialize",params:{protocolVersion:r,capabilities:this.clientCapabilities,clientInfo:this.clientInfo}},resultSchema:B,options:{signal:g}});if(void 0===a)throw new ao({message:"Server sent invalid initialize result"});return this.applyInitializeResult(a),await this.notification({method:"notifications/initialized"},{signal:g}),this}catch(a){try{await bj(this.transport.close({signal:g}),g)}catch(a){}if(this.onClose(),null!=c)throw c;if(null==d?void 0:d.aborted)throw new ao({message:"MCP client initialization was aborted",cause:d.reason});throw a}finally{null!=b&&clearTimeout(b)}}async tryProtocolDiscovery(a){this.protocolEra="modern",this.protocolVersion=q,this.setTransportProtocolVersion(this.protocolVersion);try{let b=await this.request({request:{method:"server/discover"},resultSchema:A,options:{signal:a,timeout:1e3}});return this.applyDiscoverResult(b),!0}catch(a){if(ao.isInstance(a)&&null!=a.code&&bf.includes(a.code))throw a;return!1}}applyDiscoverResult(a){var b;if(!a.supportedVersions.includes(this.protocolVersion))throw new ao({message:`Server does not support the requested protocol version: ${this.protocolVersion}`});let c=null==(b=a._meta)?void 0:b["io.modelcontextprotocol/serverInfo"];null!=c&&"object"==typeof c&&"name"in c&&"string"==typeof c.name&&"version"in c&&"string"==typeof c.version&&(this._serverInfo=c),this.serverCapabilities=a.capabilities,this._serverInstructions=a.instructions,this._initializeResult={protocolVersion:this.protocolVersion,capabilities:a.capabilities,serverInfo:this._serverInfo,instructions:a.instructions}}setTransportProtocolVersion(a){this.transport.setProtocolVersion?this.transport.setProtocolVersion(a):this.transport.protocolVersion=a}applyInitializeResult(a){if(!s.includes(a.protocolVersion))throw new ao({message:`Server's protocol version is not supported: ${a.protocolVersion}`});this.serverCapabilities=a.capabilities,this.protocolEra="legacy",this.protocolVersion=a.protocolVersion,this._serverInfo=a.serverInfo,this._initializeResult=a,this.setTransportProtocolVersion(a.protocolVersion),this._serverInstructions=a.instructions}async close(){var a;this.isClosed||(await (null==(a=this.transport)?void 0:a.close()),this.onClose())}send(a,b){return null==b?this.transport.send(a):this.transport.send(a,b)}assertCapability(a){switch(a){case"initialize":case"server/discover":break;case"completion/complete":if(!this.serverCapabilities.completions)throw new ao({message:"Server does not support completions"});break;case"tools/list":case"tools/call":if(!this.serverCapabilities.tools)throw new ao({message:"Server does not support tools"});break;case"resources/list":case"resources/read":case"resources/templates/list":if(!this.serverCapabilities.resources)throw new ao({message:"Server does not support resources"});break;case"prompts/list":case"prompts/get":if(!this.serverCapabilities.prompts)throw new ao({message:"Server does not support prompts"});break;default:throw new ao({message:`Unsupported method: ${a}`})}}async request({request:a,resultSchema:b,options:c}){return new Promise((d,e)=>{var f;let g;if(this.isClosed)return e(new ao({message:"Attempted to send a request from a closed client"}));this.assertCapability(a.method);let h=null==c?void 0:c.signal;null==h||h.throwIfAborted();let i=null==c?void 0:bi(c),j=null==i?void 0:new AbortController,k=null==h?null==j?void 0:j.signal:null==j?h:AbortSignal.any([h,j.signal]),l=this.requestMessageId++,m="modern"===this.protocolEra?{...a,params:{...a.params,_meta:{...null==(f=a.params)?void 0:f._meta,"io.modelcontextprotocol/protocolVersion":this.protocolVersion,"io.modelcontextprotocol/clientCapabilities":this.clientCapabilities,"io.modelcontextprotocol/clientInfo":this.clientInfo}}}:a,n={...m,jsonrpc:"2.0",id:l},o=this.getToolRequestHeaders(m),p=()=>{e(new ao({message:"Request was aborted",cause:null==h?void 0:h.reason}))},q=()=>{this.responseHandlers.delete(l),null==h||h.removeEventListener("abort",s),null!=g&&clearTimeout(g)},r=a=>{q(),e(a)},s=()=>{q(),p()};this.responseHandlers.set(l,a=>{if(null==h?void 0:h.aborted)return q(),p();if(a instanceof Error)return r(a);try{if("modern"===this.protocolEra&&null==a.result.resultType)throw new ao({message:"Modern MCP result is missing resultType"});if("input_required"===a.result.resultType)throw new ao({message:"Server requested additional input, but multi round-trip requests are not supported yet"});let c=b.parse(a.result);q(),d(c)}catch(a){r(ao.isInstance(a)?a:new ao({message:"Failed to parse server response",cause:a}))}}),null==h||h.addEventListener("abort",s,{once:!0}),null!=i&&(g=setTimeout(()=>{let a=new ao({message:`Request timed out after ${i}ms`});null==j||j.abort(a),r(a)},i));let t={...null==k?{}:{signal:k},...null==o?{}:{headers:o}};(0===Object.keys(t).length?this.send(n):this.send(n,t)).catch(a=>{r(a)})})}async listTools({params:a,options:b}={}){let c=await this.request({request:{method:"tools/list",params:a},resultSchema:E,options:b});return this.prepareToolDefinitions(c,(null==a?void 0:a.cursor)==null)}prepareToolDefinitions(a,b=!1){if("modern"!==this.protocolEra||!this.transport.supportsMcpToolParameterHeaders)return a;b&&this.toolHeaderBindings.clear();let c=a.tools.filter(a=>{let b=function(a){let b;if(!(0,g.isRecord)(a))return{success:!1,error:"inputSchema must be a JSON Schema object"};let c=[],d=new Set,e=(a,f,h)=>{if(null==b&&(0,g.isRecord)(a)){if("x-mcp-header"in a){if(!h||0===f.length){b="x-mcp-header is not on a statically reachable property";return}let e=a["x-mcp-header"];if("string"!=typeof e||!a8.test(e)){b="x-mcp-header must be a non-empty HTTP token";return}let g=e.toLowerCase();if(d.has(g)){b=`x-mcp-header value "${e}" is not unique`;return}let i=a.type;if("boolean"!==i&&"integer"!==i&&"string"!==i){b="x-mcp-header can only annotate boolean, integer, or string properties";return}d.add(g),c.push({headerName:e,path:f,valueType:i})}for(let[b,c]of Object.entries(a))if("x-mcp-header"!==b)if("properties"===b&&(0,g.isRecord)(c))for(let[a,b]of Object.entries(c))e(b,[...f,a],h);else e(c,f,!1)}};return e(a,[],!0),null==b?{success:!0,bindings:c}:{success:!1,error:b}}(a.inputSchema);return b.success?(this.toolHeaderBindings.set(a.name,b.bindings),!0):(this.onError(new ao({message:`Ignoring MCP tool "${a.name}": ${b.error}`})),!1)});return{...a,tools:c}}getToolRequestHeaders(a){var b;if("modern"!==this.protocolEra||"tools/call"!==a.method||"string"!=typeof(null==(b=a.params)?void 0:b.name))return;let c=this.toolHeaderBindings.get(a.params.name);if(null==c||0===c.length)return;let d=a.params.arguments;if(!(null==d||"object"!=typeof d||Array.isArray(d)))try{return function({bindings:a,args:b}){let c={};for(let d of a){let a=function(a,b){let c=a;for(let a of b){if(!(0,g.isRecord)(c))return;c=c[a]}return c}(b,d.path);if(null!=a){if("string"===d.valueType&&"string"!=typeof a||"boolean"===d.valueType&&"boolean"!=typeof a||"integer"===d.valueType&&!Number.isSafeInteger(a))throw TypeError(`Tool argument "${d.path.join(".")}" does not match its x-mcp-header type`);c[`Mcp-Param-${d.headerName}`]=ba(String(a))}}return c}({bindings:c,args:d})}catch(b){throw new ao({message:`Failed to create MCP headers for tool "${a.params.name}"`,cause:b})}}async callToolWithRetry({options:a,execute:b}){return 0===this.maxRetries?b():(0,g.retryWithExponentialBackoff)({maxRetries:this.maxRetries,abortSignal:null==a?void 0:a.signal,shouldRetry:bh,createRetryError:({message:a,errors:b})=>new ao({message:a,cause:b[b.length-1]})})(b)}async callTool({name:a,arguments:b={},options:c}){try{return this.callToolWithRetry({options:c,execute:()=>this.request({request:{method:"tools/call",params:{name:a,arguments:b}},resultSchema:R,options:c})})}catch(a){throw a}}async listResourcesInternal({params:a,options:b}={}){try{return this.request({request:{method:"resources/list",params:a},resultSchema:I,options:b})}catch(a){throw a}}async readResourceInternal({uri:a,options:b}){try{return this.request({request:{method:"resources/read",params:{uri:a}},resultSchema:U,options:b})}catch(a){throw a}}async listResourceTemplatesInternal({options:a}={}){try{return this.request({request:{method:"resources/templates/list"},resultSchema:T,options:a})}catch(a){throw a}}async listPromptsInternal({params:a,options:b}={}){try{return this.request({request:{method:"prompts/list",params:a},resultSchema:_,options:b})}catch(a){throw a}}async getPromptInternal({name:a,args:b,options:c}){try{return this.request({request:{method:"prompts/get",params:{name:a,arguments:b}},resultSchema:ab,options:c})}catch(a){throw a}}async completeInternal({options:a,...b}){return this.request({request:{method:"completion/complete",params:b},resultSchema:Y,options:a})}async notification(a,b){let c={...a,jsonrpc:"2.0"};await bj(this.send(c,(null==b?void 0:b.signal)==null?void 0:{signal:b.signal}),null==b?void 0:b.signal)}async tools({schemas:a="automatic"}={}){let b=await this.listTools(),c=[...b.tools];for(;null!=b.nextCursor;)b=await this.listTools({params:{cursor:b.nextCursor}}),c.push(...b.tools);return this.toolsFromDefinitions({...b,tools:c},{schemas:a})}toolsFromDefinitions(a,{schemas:b="automatic"}={}){var c,d;a=this.prepareToolDefinitions(a);let e={};for(let{name:f,title:h,description:j,inputSchema:k,annotations:l,_meta:m}of a.tools){let a=null!=h?h:null==l?void 0:l.title;if("automatic"!==b&&!Object.prototype.hasOwnProperty.call(b,f))continue;let n=this,o="automatic"!==b?null==(c=b[f])?void 0:c.outputSchema:void 0,p=function(a){var b,c,d,e;let f,g=(f=null==(d=a._meta)?void 0:d.ui,(0,i.isJSONObject)(f)?f:void 0),h=null!=(c=null==g?void 0:g.resourceUri)?c:null==(b=a._meta)?void 0:b["ui/resourceUri"],j=Array.isArray(e=null==g?void 0:g.visibility)?e.filter(a=>"model"===a||"app"===a):void 0;if(void 0!==h){if("string"!=typeof h||!h.startsWith("ui://"))throw Error(`Invalid MCP App resource URI: ${JSON.stringify(h)}`)}else if(null==g)return;return{...g,...null!=h?{resourceUri:h}:{},...null!=j?{visibility:j}:{}}}({_meta:m}),q={clientName:this.clientInfo.name,toolName:f,...null!=a?{title:a}:{},...null!=l?{annotations:{...null!=l.title?{title:l.title}:{},...null!=l.readOnlyHint?{readOnlyHint:l.readOnlyHint}:{},...null!=l.destructiveHint?{destructiveHint:l.destructiveHint}:{},...null!=l.idempotentHint?{idempotentHint:l.idempotentHint}:{},...null!=l.openWorldHint?{openWorldHint:l.openWorldHint}:{}}}:{},...(null==p?void 0:p.resourceUri)!=null?{app:{...p,mimeType:"text/html;profile=mcp-app"}}:{}},r=async(a,b)=>{var c;null==(c=null==b?void 0:b.abortSignal)||c.throwIfAborted();let d=await n.callTool({name:f,arguments:a,options:{signal:null==b?void 0:b.abortSignal}});return d.isError?d:null!=o?n.extractStructuredContent(d,o,f):d},s="automatic"===b?(0,g.dynamicTool)({description:j,title:a,metadata:q,inputSchema:(0,g.jsonSchema)({...k,properties:null!=(d=k.properties)?d:{},additionalProperties:!1}),execute:r,toModelOutput:bk}):(0,g.tool)({description:j,title:a,metadata:q,inputSchema:b[f].inputSchema,...null!=o?{outputSchema:o}:{},execute:r,toModelOutput:bk});e[f]={...s,_meta:m}}return e}async extractStructuredContent(a,b,c){if("structuredContent"in a&&null!=a.structuredContent){let d=await (0,g.safeValidateTypes)({value:a.structuredContent,schema:(0,g.asSchema)(b)});if(!d.success)throw new ao({message:`Tool "${c}" returned structuredContent that does not match the expected outputSchema`,cause:d.error});return d.value}if("content"in a&&Array.isArray(a.content)){let d=a.content.find(a=>"text"===a.type);if(d&&"text"in d){let a=await (0,g.safeParseJSON)({text:d.text,schema:b});if(!a.success)throw new ao({message:`Tool "${c}" returned content that does not match the expected outputSchema`,cause:a.error});return a.value}}throw new ao({message:`Tool "${c}" did not return structuredContent or parseable text content`})}listResources({params:a,options:b}={}){return this.listResourcesInternal({params:a,options:b})}readResource({uri:a,options:b}){return this.readResourceInternal({uri:a,options:b})}listResourceTemplates({options:a}={}){return this.listResourceTemplatesInternal({options:a})}experimental_listPrompts({params:a,options:b}={}){return this.listPromptsInternal({params:a,options:b})}experimental_getPrompt({name:a,arguments:b,options:c}){return this.getPromptInternal({name:a,args:b,options:c})}complete(a){return this.completeInternal(a)}onElicitationRequest(a,b){if(a!==ad)throw new ao({message:"Unsupported request schema. Only ElicitationRequestSchema is supported."});this.elicitationRequestHandler=b}async onRequestMessage(a){try{if("ping"===a.method)return void await this.transport.send({jsonrpc:"2.0",id:a.id,result:{}});if("elicitation/create"!==a.method)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32601,message:`Unsupported request method: ${a.method}`}});if(!this.elicitationRequestHandler)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32601,message:"No elicitation handler registered on client"}});let b=ad.safeParse({method:a.method,params:a.params});if(!b.success)return void await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32602,message:`Invalid elicitation request: ${b.error.message}`,data:b.error.issues}});try{let c=await this.elicitationRequestHandler(b.data),d=ae.parse(c);await this.transport.send({jsonrpc:"2.0",id:a.id,result:d})}catch(b){await this.transport.send({jsonrpc:"2.0",id:a.id,error:{code:-32603,message:b instanceof Error?b.message:"Failed to handle elicitation request"}}),this.onError(b)}}catch(a){this.onError(a)}}onClose(){if(this.isClosed)return;this.isClosed=!0;let a=new ao({message:"Connection closed"});for(let b of this.responseHandlers.values())b(a);this.responseHandlers.clear()}onError(a){this.onUncaughtError&&this.onUncaughtError(a)}onResponse(a){if(null==a.id)return void this.onError(new ao({message:`Protocol error: Received a response without a message ID: ${JSON.stringify(a)}`}));let b=Number(a.id),c=this.responseHandlers.get(b);if(void 0===c)throw new ao({message:`Protocol error: Received a response for an unknown message ID: ${JSON.stringify(a)}`});this.responseHandlers.delete(b),c("result"in a?a:new ao({message:a.error.message,code:a.error.code,data:a.error.data,cause:a.error}))}};new TextEncoder,a.s(["UnauthorizedError",0,aI,"auth",0,a4,"createMCPClient",0,bl],106450)},236338,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={SYMBOL_FOR_REQ_CONTEXT:()=>k,getContext:()=>l};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);let k=Symbol.for("@vercel/request-context");function l(){let a=globalThis;return a[k]?.get?.()??{}}},817547,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={getVercelOidcToken:()=>m,getVercelOidcTokenSync:()=>n};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(236338),l=a.r(580949);async function m(b){let c,d="";try{d=n()}catch(a){c=a}try{let[{getTokenPayload:c,isExpired:e},{refreshToken:f}]=await Promise.all([await a.A(682672),await a.A(966249)]);(!d||e(c(d),b?.expirationBufferMs))&&(await f(b),d=n())}catch(b){let a=c instanceof Error?c.message:"";if(b instanceof Error&&(a=`${a}
|
|
180
|
+
${b}`,...null!=a[c].promptCacheBreakpoint&&{prompt_cache_breakpoint:a[c].promptCacheBreakpoint}})):b.join("\n")})}continue}let g=a.output;if("execution-denied"===g.type&&(null==($=null==(Z=g.providerOptions)?void 0:Z.openai)?void 0:$.approvalId))continue;let h=b.toProviderToolName(a.toolName);if(a.toolName===p&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:aC});ag.push({type:"tool_search_output",execution:"client",call_id:a.toolCallId,status:"completed",tools:b.tools});continue}if(l&&"local_shell"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:at});ag.push({type:"local_shell_call_output",call_id:a.toolCallId,output:b.output});continue}if(m&&"shell"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:aw});ag.push({type:"shell_call_output",call_id:a.toolCallId,output:b.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"timeout"===a.outcome.type?{type:"timeout"}:{type:"exit",exit_code:a.outcome.exitCode}}))});continue}if(n&&"apply_patch"===a.toolName&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:X});ag.push({type:"apply_patch_call_output",call_id:a.toolCallId,status:b.status,output:b.output});continue}if(o&&"computer"===h&&"json"===g.type){let b=await (0,c.validateTypes)({value:g.value,schema:ae});ag.push({type:"computer_call_output",call_id:a.toolCallId,output:{type:"computer_screenshot",image_url:b.output.imageUrl,file_id:b.output.fileId,detail:b.output.detail},acknowledged_safety_checks:null==(_=b.acknowledgedSafetyChecks)?void 0:_.map(a=>({id:a.id,code:a.code,message:a.message}))});continue}if(null==q?void 0:q.has(h)){let b,d=bl({output:g,toolResultProviderOptions:a.providerOptions,providerOptionsName:e}),f=a=>null==d?a:[{type:"input_text",text:a,prompt_cache_breakpoint:d}];switch(g.type){case"text":case"error-text":b=f(g.value);break;case"execution-denied":b=f(null!=(aa=g.reason)?aa:"Tool call execution denied.");break;case"json":case"error-json":b=f(JSON.stringify(g.value));break;case"content":b=g.value.map(a=>{var b,d,f;let g=bk(a.providerOptions,e);switch(a.type){case"text":return{type:"input_text",text:a.text,...null!=g&&{prompt_cache_breakpoint:g}};case"file":{let h=(0,c.getTopLevelMediaType)(a.mediaType),i=null==(d=null==(b=a.providerOptions)?void 0:b[e])?void 0:d.imageDetail;if("data"===a.data.type){let b=(0,c.resolveFullMediaType)({part:a});if("image"===h)return{type:"input_image",image_url:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,detail:i,...null!=g&&{prompt_cache_breakpoint:g}};return{type:"input_file",filename:null!=(f=a.filename)?f:"data",file_data:`data:${b};base64,${(0,c.convertToBase64)(a.data.data)}`,...null!=g&&{prompt_cache_breakpoint:g}}}if("url"===a.data.type){if("image"===h)return{type:"input_image",image_url:a.data.url.toString(),detail:i,...null!=g&&{prompt_cache_breakpoint:g}};return{type:"input_file",file_url:a.data.url.toString(),...null!=g&&{prompt_cache_breakpoint:g}}}ah.push({type:"other",message:`unsupported custom tool content part type: ${a.type} with data type: ${a.data.type}`});return}default:ah.push({type:"other",message:`unsupported custom tool content part type: ${a.type}`});return}}).filter(c.isNonNullable);break;default:b=""}ag.push({type:"custom_tool_call_output",call_id:a.toolCallId,output:b});continue}let s=await bi({output:g,toolName:a.toolName,outputSchemaToolNames:r,promptCacheBreakpoint:bl({output:g,toolResultProviderOptions:a.providerOptions,providerOptionsName:e}),providerOptionsName:e,warnings:ah}),t=bh(null==(ac=null==(ab=a.providerOptions)?void 0:ab[e])?void 0:ac.caller);ag.push({type:"function_call_output",call_id:a.toolCallId,output:s,...null!=t&&{caller:t}})}break;default:throw Error(`Unsupported role: ${am}`)}return!i&&ag.some(a=>"type"in a&&"reasoning"===a.type&&null==a.encrypted_content)&&(ah.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),ag=ag.filter(a=>!("type"in a)||"reasoning"!==a.type||null!=a.encrypted_content)),{input:ag,warnings:ah}}var bo=e.z.object({itemId:e.z.string().nullish(),reasoningEncryptedContent:e.z.string().nullish()}),bp=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({conversation:e.z.string().nullish(),include:e.z.array(e.z.enum(["reasoning.encrypted_content","file_search_call.results","web_search_call.results","message.output_text.logprobs"])).nullish(),instructions:e.z.string().nullish(),logprobs:e.z.union([e.z.boolean(),e.z.number().min(1).max(20)]).optional(),maxToolCalls:e.z.number().nullish(),metadata:e.z.any().nullish(),parallelToolCalls:e.z.boolean().nullish(),previousResponseId:e.z.string().nullish(),promptCacheKey:e.z.string().nullish(),promptCacheOptions:e.z.object({mode:e.z.enum(["implicit","explicit"]).optional(),ttl:e.z.literal("30m").optional()}).optional(),promptCacheRetention:e.z.enum(["in_memory","24h"]).nullish(),reasoningEffort:e.z.string().nullish(),reasoningEffortUpdate:e.z.enum(["low","medium","high","xhigh","max"]).optional(),reasoningMode:e.z.enum(["standard","pro"]).optional(),reasoningContext:e.z.enum(["auto","current_turn","all_turns"]).optional(),reasoningSummary:e.z.string().nullish(),safetyIdentifier:e.z.string().nullish(),serviceTier:e.z.enum(["auto","flex","priority","fast","ultrafast","default"]).nullish(),store:e.z.boolean().nullish(),passThroughUnsupportedFiles:e.z.boolean().optional(),strictJsonSchema:e.z.boolean().nullish(),textVerbosity:e.z.enum(["low","medium","high"]).nullish(),truncation:e.z.enum(["auto","disabled"]).nullish(),user:e.z.string().nullish(),systemMessageMode:e.z.enum(["system","developer","remove"]).optional(),forceReasoning:e.z.boolean().optional(),contextManagement:e.z.array(e.z.object({type:e.z.literal("compaction"),compactThreshold:e.z.number()})).nullish(),compactionTrigger:e.z.boolean().optional(),allowedTools:e.z.object({toolNames:e.z.array(e.z.string()).min(1),mode:e.z.enum(["auto","required"]).optional()}).optional()})));async function bq({tools:a,toolChoice:b,allowedTools:d,toolNameMapping:e,customProviderToolNames:g,outputSchemaToolNames:h}){var i,j,k,l;a=(null==a?void 0:a.length)?a:void 0;let m=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:m};let n=[],o=new Map,p=null!=g?g:new Set,q=new Map,r=new Map,s=(a,b,c)=>{var d,e;if(q.set(a,b),null==c||c===a)return;let f=r.get(c);null==f?r.set(c,b):"ambiguous"===f||(d=f,e=b,d.supported&&e.supported?br(d.entry)===br(e.entry):!d.supported&&!e.supported&&d.reason===e.reason)||r.set(c,"ambiguous")};for(let b of a)switch(b.type){case"function":{let a=null==(i=b.providerOptions)?void 0:i.openai;(null==a?void 0:a.outputSchema)!=null&&(null==h||h.add(b.name));let c=function({tool:a,options:b}){let c=null==b?void 0:b.deferLoading;return{type:"function",name:a.name,description:a.description,parameters:a.inputSchema,...null!=a.strict?{strict:a.strict}:{},...null!=c?{defer_loading:c}:{},...(null==b?void 0:b.allowedCallers)!=null?{allowed_callers:b.allowedCallers}:{},...(null==b?void 0:b.outputSchema)!=null?{output_schema:b.outputSchema}:{}}}({tool:b,options:a}),d=null==a?void 0:a.namespace;if(null==d)n.push(c);else{let a=o.get(d.name);if(null==a)a={type:"namespace",name:d.name,description:d.description,tools:[]},o.set(d.name,a),n.push(a);else if(a.description!==d.description)throw new f.UnsupportedFunctionalityError({functionality:`conflicting descriptions for OpenAI tool namespace "${d.name}"`});a.tools.push(c)}s(b.name,null!=d?{supported:!1,reason:"tools inside an OpenAI tool namespace are not visible to tool_choice.allowed_tools"}:(null==a?void 0:a.deferLoading)===!0?{supported:!1,reason:"deferred tools are not visible to tool_choice.allowed_tools"}:{supported:!0,entry:{type:"function",name:b.name}},void 0);break}case"provider":{let a=n.length;switch(b.id){case"openai.file_search":{let a=await (0,c.validateTypes)({value:b.args,schema:al});n.push({type:"file_search",vector_store_ids:a.vectorStoreIds,max_num_results:a.maxNumResults,ranking_options:a.ranking?{ranker:a.ranking.ranker,score_threshold:a.ranking.scoreThreshold}:void 0,filters:a.filters});break}case"openai.local_shell":n.push({type:"local_shell"});break;case"openai.shell":{let a=await (0,c.validateTypes)({value:b.args,schema:ay});n.push({type:"shell",...a.environment&&{environment:function(a){var b;return"containerReference"===a.type?{type:"container_reference",container_id:a.containerId}:"containerAuto"===a.type?{type:"container_auto",file_ids:a.fileIds,memory_limit:a.memoryLimit,network_policy:null==a.networkPolicy?void 0:"disabled"===a.networkPolicy.type?{type:"disabled"}:{type:"allowlist",allowed_domains:a.networkPolicy.allowedDomains,domain_secrets:a.networkPolicy.domainSecrets},skills:null==(b=a.skills)?void 0:b.map(a=>{var b,d;return"skillReference"===a.type?{type:"skill_reference",skill_id:(0,c.resolveProviderReference)({reference:null!=(b=a.providerReference)?b:{},provider:"openai"}),version:null!=(d=a.version)?d:"latest"}:{type:"inline",name:a.name,description:a.description,source:{type:"base64",media_type:a.source.mediaType,data:a.source.data}}})}:{type:"local",skills:a.skills}}(a.environment)}});break}case"openai.apply_patch":n.push({type:"apply_patch"});break;case"openai.computer":n.push({type:"computer"});break;case"openai.web_search_preview":{let a=await (0,c.validateTypes)({value:b.args,schema:aI});n.push({type:"web_search_preview",search_context_size:a.searchContextSize,user_location:a.userLocation});break}case"openai.web_search":{let a=await (0,c.validateTypes)({value:b.args,schema:aE});n.push({type:"web_search",filters:null!=a.filters?{allowed_domains:a.filters.allowedDomains,blocked_domains:a.filters.blockedDomains}:void 0,external_web_access:a.externalWebAccess,search_context_size:a.searchContextSize,user_location:a.userLocation});break}case"openai.code_interpreter":{let a=await (0,c.validateTypes)({value:b.args,schema:_});n.push({type:"code_interpreter",container:null==a.container?{type:"auto",file_ids:void 0}:"string"==typeof a.container?a.container:{type:"auto",file_ids:a.container.fileIds}});break}case"openai.image_generation":{let a=await (0,c.validateTypes)({value:b.args,schema:ao});n.push({type:"image_generation",action:a.action,background:a.background,input_fidelity:a.inputFidelity,input_image_mask:a.inputImageMask?{file_id:a.inputImageMask.fileId,image_url:a.inputImageMask.imageUrl}:void 0,model:a.model,moderation:a.moderation,partial_images:a.partialImages,quality:a.quality,output_compression:a.outputCompression,output_format:a.outputFormat,size:a.size});break}case"openai.mcp":{let a=await (0,c.validateTypes)({value:b.args,schema:aN}),d=a=>({tool_names:a.toolNames}),e=a.requireApproval,f=null==e?void 0:"string"==typeof e?e:null!=e.never?{never:d(e.never)}:void 0;n.push({type:"mcp",server_label:a.serverLabel,allowed_tools:Array.isArray(a.allowedTools)?a.allowedTools:a.allowedTools?{read_only:a.allowedTools.readOnly,tool_names:a.allowedTools.toolNames}:void 0,authorization:a.authorization,connector_id:a.connectorId,headers:a.headers,require_approval:null!=f?f:"never",server_description:a.serverDescription,server_url:a.serverUrl});break}case"openai.custom":{let a=await (0,c.validateTypes)({value:b.args,schema:ag});n.push({type:"custom",name:b.name,description:a.description,format:a.format}),p.add(b.name);break}case"openai.programmatic_tool_calling":n.push({type:"programmatic_tool_calling"});break;case"openai.tool_search":{let a=await (0,c.validateTypes)({value:b.args,schema:aA});n.push({type:"tool_search",...null!=a.execution?{execution:a.execution}:{},...null!=a.description?{description:a.description}:{},...null!=a.parameters?{parameters:a.parameters}:{}})}}if(n.length>a){let c=n[a];s(b.name,function(a){switch(a.type){case"custom":return{supported:!0,entry:{type:"custom",name:a.name}};case"mcp":return{supported:!0,entry:{type:"mcp",server_label:a.server_label}};case"file_search":case"web_search":case"web_search_preview":case"image_generation":case"code_interpreter":case"computer":case"apply_patch":case"shell":case"local_shell":case"programmatic_tool_calling":return{supported:!0,entry:{type:a.type}};default:return{supported:!1,reason:`OpenAI does not support ${a.type} tools in tool_choice.allowed_tools`}}}(c),null==e?void 0:e.toProviderToolName(b.name))}break}default:m.push({type:"unsupported",feature:`function tool ${b}`})}if(null!=d){let a=[],b=[];for(let c of d.toolNames){let d=q.get(c),f=null!=d?d:r.get(c);if(null!=d&&r.has(c)&&m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"this name is both a tool name and the provider tool name of another tool in this request; the tool with this name is allowed"}),"ambiguous"===f){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"several tools in this request share this provider tool name; use the tool name from the tools for this request instead"}),b.push(c);continue}if(null==f){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:"the tool is not part of the tools for this request and is sent as a function tool"}),a.push({type:"function",name:null!=(j=null==e?void 0:e.toProviderToolName(c))?j:c});continue}if(!f.supported){m.push({type:"unsupported",feature:`allowedTools entry "${c}"`,details:`${f.reason}; the tool is removed from the allowed tools`}),b.push(c);continue}a.push(f.entry)}if(0===a.length)throw new f.UnsupportedFunctionalityError({functionality:`allowedTools with only tools that cannot be allow-listed (${b.join(", ")})`});return{tools:n,toolChoice:{type:"allowed_tools",mode:null!=(k=d.mode)?k:"auto",tools:a},toolWarnings:m}}if(null==b)return{tools:n,toolChoice:void 0,toolWarnings:m};let t=b.type;switch(t){case"auto":case"none":case"required":return{tools:n,toolChoice:t,toolWarnings:m};case"tool":{let a=null!=(l=null==e?void 0:e.toProviderToolName(b.toolName))?l:b.toolName;return{tools:n,toolChoice:"code_interpreter"===a||"file_search"===a||"image_generation"===a||"web_search_preview"===a||"web_search"===a||"mcp"===a||"apply_patch"===a||"computer"===a||"programmatic_tool_calling"===a?{type:a}:p.has(a)?{type:"custom",name:a}:{type:"function",name:a},toolWarnings:m}}default:throw new f.UnsupportedFunctionalityError({functionality:`tool choice type: ${t}`})}}function br(a){switch(a.type){case"mcp":return`mcp:${a.server_label}`;case"function":case"custom":return`${a.type}:${a.name}`;default:return a.type}}function bs(a){var b,c;let d={};for(let e of a)if("assistant"===e.role)for(let a of e.content){if("tool-call"!==a.type)continue;let e=null==(c=null==(b=a.providerOptions)?void 0:b.openai)?void 0:c.approvalRequestId;null!=e&&(d[e]=a.toolCallId)}return d}function bt(a){switch(a.type){case"click":return{type:"click",button:a.button,x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"double_click":return{type:"double_click",x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"drag":return{type:"drag",path:a.path,...null!=a.keys&&{keys:a.keys}};case"keypress":case"screenshot":case"type":case"wait":return a;case"move":return{type:"move",x:a.x,y:a.y,...null!=a.keys&&{keys:a.keys}};case"scroll":return{type:"scroll",x:a.x,y:a.y,scrollX:a.scroll_x,scrollY:a.scroll_y,...null!=a.keys&&{keys:a.keys}}}}function bu({action:a,actions:b,pending_safety_checks:c,status:d}){var e;return{actions:(null!=b?b:null!=a?[a]:[]).map(bt),pendingSafetyChecks:null!=(e=null==c?void 0:c.map(a=>({id:a.id,...null!=a.code&&{code:a.code},...null!=a.message&&{message:a.message}})))?e:[],status:d}}var bv=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,aV(b.config))}get provider(){return this.config.provider}async getArgs({maxOutputTokens:a,temperature:b,stopSequences:d,topP:e,topK:f,presencePenalty:g,frequencyPenalty:h,seed:j,prompt:k,reasoning:l,providerOptions:m,tools:n,toolChoice:o,responseFormat:p}){var q,r,s,t,u,v,w,x,y,z,A,B,C,D;let E=[],F=i(this.modelId);null!=f&&E.push({type:"unsupported",feature:"topK"}),null!=j&&E.push({type:"unsupported",feature:"seed"}),null!=g&&E.push({type:"unsupported",feature:"presencePenalty"}),null!=h&&E.push({type:"unsupported",feature:"frequencyPenalty"}),null!=d&&E.push({type:"unsupported",feature:"stopSequences"});let G=this.config.provider.includes("azure")?"azure":"openai",H=await (0,c.parseProviderOptions)({provider:G,providerOptions:m,schema:bp});null==H&&"openai"!==G&&(H=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:m,schema:bp}));let I=null!=(q=null==H?void 0:H.reasoningEffort)?q:(0,c.isCustomReasoning)(l)?l:void 0;null==I||null==F.supportedReasoningEfforts||F.supportedReasoningEfforts.includes(I)||(E.push({type:"unsupported",feature:"reasoningEffort",details:`${this.modelId} only supports the following reasoning efforts: ${F.supportedReasoningEfforts.join(", ")}`}),I=void 0);let J=(null==H?void 0:H.reasoningSummary)!==void 0?H.reasoningSummary:null!=I&&"none"!==I?"detailed":void 0,K=null!=(r=null==H?void 0:H.forceReasoning)?r:F.isReasoningModel;(null==H?void 0:H.conversation)&&(null==H?void 0:H.previousResponseId)&&E.push({type:"unsupported",feature:"conversation",details:"conversation and previousResponseId cannot be used together"});let L=(0,c.createToolNameMapping)({tools:n,providerToolNames:{"openai.code_interpreter":"code_interpreter","openai.computer":"computer","openai.file_search":"file_search","openai.image_generation":"image_generation","openai.local_shell":"local_shell","openai.shell":"shell","openai.web_search":"web_search","openai.web_search_preview":"web_search_preview","openai.mcp":"mcp","openai.apply_patch":"apply_patch","openai.tool_search":"tool_search","openai.programmatic_tool_calling":"programmatic_tool_calling"}}),M=new Set,N=new Set,{tools:O,toolChoice:P,toolWarnings:Q}=await bq({tools:n,toolChoice:o,allowedTools:null!=(s=null==H?void 0:H.allowedTools)?s:void 0,toolNameMapping:L,customProviderToolNames:M,outputSchemaToolNames:N}),{input:R,warnings:S}=await bn({prompt:k,toolNameMapping:L,systemMessageMode:null!=(t=null==H?void 0:H.systemMessageMode)?t:K?"developer":F.systemMessageMode,providerOptionsName:G,fileIdPrefixes:this.config.fileIdPrefixes,passThroughUnsupportedFiles:null!=(u=null==H?void 0:H.passThroughUnsupportedFiles)&&u,store:null==(v=null==H?void 0:H.store)||v,hasConversation:(null==H?void 0:H.conversation)!=null,hasPreviousResponseId:(null==H?void 0:H.previousResponseId)!=null,hasLocalShellTool:Z("openai.local_shell"),hasShellTool:Z("openai.shell"),hasApplyPatchTool:Z("openai.apply_patch"),hasComputerTool:Z("openai.computer"),toolSearchToolName:Y("openai.tool_search"),customProviderToolNames:M.size>0?M:void 0,outputSchemaToolNames:N.size>0?N:void 0});E.push(...S);let T=null==H?void 0:H.reasoningEffortUpdate,U=null==T||F.supportsConfigurationUpdate&&(null==H?void 0:H.reasoningMode)!=="pro"&&(null==H?void 0:H.contextManagement)==null&&(null==H?void 0:H.truncation)!=="auto";null==T||U?null!=T&&R.unshift({type:"configuration_update",reasoning:{effort:T}}):E.push({type:"unsupported",feature:"reasoningEffortUpdate",details:F.supportsConfigurationUpdate?"reasoningEffortUpdate requires standard reasoning mode without automatic compaction or automatic truncation":"reasoningEffortUpdate is only supported by GPT-6 and later models"}),(null==H?void 0:H.compactionTrigger)&&R.push({type:"compaction_trigger"});let V=null==(w=null==H?void 0:H.strictJsonSchema)||w,W=null==H?void 0:H.include;function X(a){null==W?W=[a]:W.includes(a)||(W=[...W,a])}function Y(a){var b;return null==(b=null==n?void 0:n.find(b=>"provider"===b.type&&b.id===a))?void 0:b.name}function Z(a){return null!=Y(a)}let $="number"==typeof(null==H?void 0:H.logprobs)?null==H?void 0:H.logprobs:(null==H?void 0:H.logprobs)===!0?20:void 0;$&&X("message.output_text.logprobs");let _=null==(x=null==n?void 0:n.find(a=>"provider"===a.type&&("openai.web_search"===a.id||"openai.web_search_preview"===a.id)))?void 0:x.name;_&&X("web_search_call.action.sources"),Z("openai.code_interpreter")&&X("code_interpreter_call.outputs");let aa=null==H?void 0:H.store;!1===aa&&K&&X("reasoning.encrypted_content");let ab={model:this.modelId,input:R,temperature:b,top_p:e,max_output_tokens:a,...((null==p?void 0:p.type)==="json"||(null==H?void 0:H.textVerbosity))&&{text:{...(null==p?void 0:p.type)==="json"&&{format:null!=p.schema?{type:"json_schema",strict:V,name:null!=(y=p.name)?y:"response",description:p.description,schema:p.schema}:{type:"json_object"}},...(null==H?void 0:H.textVerbosity)&&{verbosity:H.textVerbosity}}},conversation:null==H?void 0:H.conversation,max_tool_calls:null==H?void 0:H.maxToolCalls,metadata:null==H?void 0:H.metadata,parallel_tool_calls:null==H?void 0:H.parallelToolCalls,previous_response_id:null==H?void 0:H.previousResponseId,store:aa,user:null==H?void 0:H.user,instructions:null==H?void 0:H.instructions,service_tier:null==H?void 0:H.serviceTier,include:W,prompt_cache_key:null==H?void 0:H.promptCacheKey,prompt_cache_options:null==H?void 0:H.promptCacheOptions,prompt_cache_retention:null==H?void 0:H.promptCacheRetention,safety_identifier:null==H?void 0:H.safetyIdentifier,top_logprobs:$,truncation:null==H?void 0:H.truncation,...(null==H?void 0:H.contextManagement)&&{context_management:H.contextManagement.map(a=>({type:a.type,compact_threshold:a.compactThreshold}))},...K&&(null!=I||null!=J||(null==H?void 0:H.reasoningMode)!=null||(null==H?void 0:H.reasoningContext)!=null)&&{reasoning:{...null!=I&&{effort:I},...null!=J&&{summary:J},...(null==H?void 0:H.reasoningMode)!=null&&{mode:H.reasoningMode},...(null==H?void 0:H.reasoningContext)!=null&&{context:H.reasoningContext}}}};if(F.supportsConfigurationUpdate&&null!=ab.prompt_cache_retention&&(ab.prompt_cache_retention=void 0,E.push({type:"unsupported",feature:"promptCacheRetention",details:"promptCacheRetention is not supported by GPT-6 and later models; use promptCacheOptions instead"})),K){if(!("none"===I&&F.supportsNonReasoningParameters)&&(null!=ab.temperature&&(ab.temperature=void 0,E.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"})),null!=ab.top_p&&(ab.top_p=void 0,E.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})),null!=F.supportedReasoningEfforts&&(null!=ab.top_logprobs||(null==(z=ab.include)?void 0:z.includes("message.output_text.logprobs"))))){ab.top_logprobs=void 0;let a=null==(A=ab.include)?void 0:A.filter(a=>"message.output_text.logprobs"!==a);ab.include=null!=a&&a.length>0?a:void 0,E.push({type:"unsupported",feature:"logprobs",details:"logprobs is not supported for reasoning models"})}}else(null==H?void 0:H.reasoningEffort)!=null&&E.push({type:"unsupported",feature:"reasoningEffort",details:"reasoningEffort is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningSummary)!=null&&E.push({type:"unsupported",feature:"reasoningSummary",details:"reasoningSummary is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningMode)!=null&&E.push({type:"unsupported",feature:"reasoningMode",details:"reasoningMode is not supported for non-reasoning models"}),(null==H?void 0:H.reasoningContext)!=null&&E.push({type:"unsupported",feature:"reasoningContext",details:"reasoningContext is not supported for non-reasoning models"});(null==H?void 0:H.serviceTier)!=="flex"||F.supportsFlexProcessing||(E.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),delete ab.service_tier),(null==H?void 0:H.serviceTier)!=="priority"&&(null==H?void 0:H.serviceTier)!=="fast"||F.supportsPriorityProcessing||(E.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),delete ab.service_tier);let ac=null==(D=null==(C=null==(B=null==n?void 0:n.find(a=>"provider"===a.type&&"openai.shell"===a.id))?void 0:B.args)?void 0:C.environment)?void 0:D.type;return{webSearchToolName:_,args:{...ab,tools:O,tool_choice:P},warnings:[...E,...Q],store:aa,toolNameMapping:L,providerOptionsName:G,isShellProviderExecuted:"containerAuto"===ac||"containerReference"===ac}}async doGenerate(a){var b,d,e,g,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L;let{args:M,warnings:N,webSearchToolName:O,toolNameMapping:P,providerOptionsName:Q,isShellProviderExecuted:R}=await this.getArgs(a),S=this.config.url({path:"/responses",modelId:this.modelId}),T=bs(a.prompt),{responseHeaders:U,value:V,rawValue:W}=await (0,c.postJsonToApi)({url:S,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:M,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bb),abortSignal:a.abortSignal,fetch:this.config.fetch});if(V.error)throw new f.APICallError({message:V.error.message,url:S,requestBodyValues:M,statusCode:400,responseHeaders:U,responseBody:W,isRetryable:!1});if(null==V.output){let a=null==(e=V.incomplete_details)?void 0:e.reason;throw new f.APICallError({message:a?`Responses API returned no output (${a})`:"Responses API returned no output",url:S,requestBodyValues:M,statusCode:500,responseHeaders:U,responseBody:W,isRetryable:!1})}let X=[],Y=[],Z=null!=(i=null==(g=a.tools)?void 0:g.filter(a=>"function"===a.type))?i:[],$=!1,_=[];for(let b of V.output)switch(b.type){case"reasoning":for(let a of(0===b.summary.length&&b.summary.push({type:"summary_text",text:""}),b.summary))X.push({type:"reasoning",text:a.text,providerMetadata:{[Q]:{itemId:b.id,reasoningEncryptedContent:null!=(j=b.encrypted_content)?j:null}}});break;case"image_generation_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("image_generation"),result:{result:b.result}});break;case"tool_search_call":{let a=null!=(k=b.call_id)?k:b.id,c="server"===b.execution;c&&_.push(a),X.push({type:"tool-call",toolCallId:a,toolName:P.toCustomToolName("tool_search"),input:JSON.stringify({arguments:b.arguments,call_id:b.call_id}),...c?{providerExecuted:!0}:{},providerMetadata:{[Q]:{itemId:b.id}}});break}case"tool_search_output":{let a=null!=(m=null!=(l=b.call_id)?l:_.shift())?m:b.id;X.push({type:"tool-result",toolCallId:a,toolName:P.toCustomToolName("tool_search"),result:{tools:b.tools},providerMetadata:{[Q]:{itemId:b.id}}});break}case"local_shell_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("local_shell"),input:JSON.stringify({action:b.action}),providerMetadata:{[Q]:{itemId:b.id}}});break;case"shell_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("shell"),input:JSON.stringify({action:{commands:b.action.commands}}),...R&&{providerExecuted:!0},providerMetadata:{[Q]:{itemId:b.id}}});break;case"shell_call_output":X.push({type:"tool-result",toolCallId:b.call_id,toolName:P.toCustomToolName("shell"),result:{output:b.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"exit"===a.outcome.type?{type:"exit",exitCode:a.outcome.exit_code}:{type:"timeout"}}))}});break;case"message":for(let d of b.content){(null==(o=null==(n=a.providerOptions)?void 0:n[Q])?void 0:o.logprobs)&&d.logprobs&&Y.push(d.logprobs);let e={itemId:b.id,...null!=b.phase&&{phase:b.phase},...d.annotations.length>0&&{annotations:d.annotations}};for(let a of(X.push({type:"text",text:d.text,providerMetadata:{[Q]:e}}),d.annotations))"url_citation"===a.type?X.push({type:"source",sourceType:"url",id:null!=(r=null==(q=(p=this.config).generateId)?void 0:q.call(p))?r:(0,c.generateId)(),url:a.url,title:a.title}):"file_citation"===a.type?X.push({type:"source",sourceType:"document",id:null!=(u=null==(t=(s=this.config).generateId)?void 0:t.call(s))?u:(0,c.generateId)(),mediaType:"text/plain",title:a.filename,filename:a.filename,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,index:a.index}}}):"container_file_citation"===a.type?X.push({type:"source",sourceType:"document",id:null!=(x=null==(w=(v=this.config).generateId)?void 0:w.call(v))?x:(0,c.generateId)(),mediaType:"text/plain",title:a.filename,filename:a.filename,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,containerId:a.container_id}}}):"file_path"===a.type&&X.push({type:"source",sourceType:"document",id:null!=(A=null==(z=(y=this.config).generateId)?void 0:z.call(y))?A:(0,c.generateId)(),mediaType:"application/octet-stream",title:a.file_id,filename:a.file_id,providerMetadata:{[Q]:{type:a.type,fileId:a.file_id,index:a.index}}})}break;case"function_call":{$=!0;let a=await bg({toolCall:{toolCallId:b.call_id,toolName:b.name,input:b.arguments},tools:Z,providerOptionsName:Q,itemId:b.id});if(null!=a){X.push(...a);break}X.push({type:"tool-call",toolCallId:b.call_id,toolName:b.name,input:b.arguments,providerMetadata:{[Q]:{itemId:b.id,...null!=b.namespace&&{namespace:b.namespace},...null!=b.caller&&{caller:"program"===b.caller.type?{type:"program",callerId:b.caller.caller_id}:b.caller}}}});break}case"program":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("programmatic_tool_calling"),input:JSON.stringify({code:b.code,fingerprint:b.fingerprint}),providerExecuted:!0,providerMetadata:{[Q]:{itemId:b.id}}});break;case"program_output":X.push({type:"tool-result",toolCallId:b.call_id,toolName:P.toCustomToolName("programmatic_tool_calling"),result:{result:b.result,status:b.status},providerMetadata:{[Q]:{itemId:b.id}}});break;case"custom_tool_call":{$=!0;let a=P.toCustomToolName(b.name);X.push({type:"tool-call",toolCallId:b.call_id,toolName:a,input:JSON.stringify(b.input),providerMetadata:{[Q]:{itemId:b.id}}});break}case"web_search_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName(null!=O?O:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName(null!=O?O:"web_search"),result:bB(b.action)});break;case"mcp_call":{let a=null!=b.approval_request_id&&null!=(B=T[b.approval_request_id])?B:b.id,c=`mcp.${b.name}`;X.push({type:"tool-call",toolCallId:a,toolName:c,input:b.arguments,providerExecuted:!0,dynamic:!0}),X.push({type:"tool-result",toolCallId:a,toolName:c,result:{type:"call",serverLabel:b.server_label,name:b.name,arguments:b.arguments,...null!=b.output?{output:b.output}:{},...null!=b.error?{error:b.error}:{}},providerMetadata:{[Q]:{itemId:b.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let a=null!=(C=b.approval_request_id)?C:b.id,d=null!=(F=null==(E=(D=this.config).generateId)?void 0:E.call(D))?F:(0,c.generateId)(),e=`mcp.${b.name}`;X.push({type:"tool-call",toolCallId:d,toolName:e,input:b.arguments,providerExecuted:!0,dynamic:!0}),X.push({type:"tool-approval-request",approvalId:a,toolCallId:d});break}case"computer_call":{if(null==b.call_id){X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:b.status}});break}$=!0;let a=P.toCustomToolName("computer");X.push({type:"tool-call",toolCallId:b.call_id,toolName:a,input:JSON.stringify(bu(b)),providerMetadata:{[Q]:{itemId:b.id}}});break}case"file_search_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("file_search"),result:{queries:b.queries,results:null!=(H=null==(G=b.results)?void 0:G.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?H:null}});break;case"code_interpreter_call":X.push({type:"tool-call",toolCallId:b.id,toolName:P.toCustomToolName("code_interpreter"),input:JSON.stringify({code:b.code,containerId:b.container_id}),providerExecuted:!0}),X.push({type:"tool-result",toolCallId:b.id,toolName:P.toCustomToolName("code_interpreter"),result:{outputs:b.outputs}});break;case"apply_patch_call":X.push({type:"tool-call",toolCallId:b.call_id,toolName:P.toCustomToolName("apply_patch"),input:JSON.stringify({callId:b.call_id,operation:b.operation}),providerMetadata:{[Q]:{itemId:b.id}}});break;case"compaction":X.push({type:"custom",kind:"openai.compaction",providerMetadata:{[Q]:{type:"compaction",itemId:b.id,encryptedContent:b.encrypted_content}}})}let aa={[Q]:{responseId:V.id,...Y.length>0?{logprobs:Y}:{},..."string"==typeof V.service_tier?{serviceTier:V.service_tier}:{},...(null==(I=V.reasoning)?void 0:I.context)!=null?{reasoningContext:V.reasoning.context}:{}}},ab=V.usage;return{content:X,finishReason:{unified:aX({finishReason:null==(J=V.incomplete_details)?void 0:J.reason,hasFunctionCall:$}),raw:null!=(L=null==(K=V.incomplete_details)?void 0:K.reason)?L:void 0},usage:aW(ab),request:{body:M},response:{id:V.id,timestamp:new Date(1e3*V.created_at),modelId:V.model,headers:U,body:W},providerMetadata:aa,warnings:N}}async doStream(a){var b,d,e,g;let i,l,m,n,{args:o,warnings:p,webSearchToolName:q,toolNameMapping:r,store:s,providerOptionsName:t,isShellProviderExecuted:u}=await this.getArgs(a),v=this.config.url({path:"/responses",modelId:this.modelId}),{responseHeaders:w,value:x}=await (0,c.postJsonToApi)({url:v,headers:(0,c.combineHeaders)(null==(d=(b=this.config).headers)?void 0:d.call(b),a.headers),body:{...o,stream:!0},failedResponseHandler:h,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(ba),abortSignal:a.abortSignal,fetch:this.config.fetch}),y=await k({stream:x,getError:a=>by(a)||bw(a)&&null!=a.response.error?a:void 0,isOutputChunk:bA,isAcceptedChunk:bz,url:v,requestBodyValues:o,responseHeaders:w}),z=this,A=bs(a.prompt),B=null!=(g=null==(e=a.tools)?void 0:e.filter(a=>"function"===a.type))?g:[],C=new Map,D={unified:"other",raw:void 0},E=[],F=null,G={},H=[],I=!1,J={},K={},L=({itemId:a,outputIndex:b})=>{var c;return null==b?a:null!=(c=K[b])?c:a},M=[],N=!1;return{stream:y.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:p})},transform(b,d){var e,g,h,k,p,x,y,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;if(a.includeRawChunks&&d.enqueue({type:"raw",rawValue:b.rawValue}),!b.success){let a,c=null!=(a="object"==typeof(ay=b.rawValue)&&null!=ay?ay:void 0)&&Array.isArray(a.choices)&&"string"!=typeof a.type?function({value:a,cause:b,url:c,requestBodyValues:d,responseHeaders:e}){return new f.APICallError({message:"Received a Chat Completions stream while using the OpenAI Responses API. The default OpenAI provider model uses the Responses API. If your custom baseURL targets a Chat Completions-compatible endpoint, use openai.chat('model-id') or createOpenAI(...).chat('model-id') instead. You can also use @ai-sdk/openai-compatible for OpenAI-compatible providers.",url:c,requestBodyValues:d,responseHeaders:e,responseBody:JSON.stringify(a),cause:b,data:a,isRetryable:!1})}({value:b.rawValue,cause:b.error,url:v,requestBodyValues:o,responseHeaders:w}):b.error;N=!0,D={unified:"error",raw:void 0},d.enqueue({type:"error",error:c});return}let aA=b.value;if(bx(aA))if("function_call"===aA.item.type){let a=bf({toolName:aA.item.name,tools:B});G[aA.output_index]={toolName:aA.item.name,toolCallId:aA.item.call_id,suppressInputStreaming:a,bufferedInputDeltas:a?[]:void 0},a||d.enqueue({type:"tool-input-start",id:aA.item.call_id,toolName:aA.item.name})}else if("custom_tool_call"===aA.item.type){let a=r.toCustomToolName(aA.item.name);G[aA.output_index]={toolName:a,toolCallId:aA.item.call_id},d.enqueue({type:"tool-input-start",id:aA.item.call_id,toolName:a})}else if("web_search_call"===aA.item.type)G[aA.output_index]={toolName:r.toCustomToolName(null!=q?q:"web_search"),toolCallId:aA.item.id},d.enqueue({type:"tool-input-start",id:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),providerExecuted:!0}),d.enqueue({type:"tool-input-end",id:aA.item.id}),d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if("computer_call"===aA.item.type){let a=null!=(e=aA.item.call_id)?e:aA.item.id;G[aA.output_index]={toolName:r.toCustomToolName("computer"),toolCallId:a},d.enqueue({type:"tool-input-start",id:a,toolName:r.toCustomToolName("computer")})}else if("code_interpreter_call"===aA.item.type)G[aA.output_index]={toolName:r.toCustomToolName("code_interpreter"),toolCallId:aA.item.id,codeInterpreter:{containerId:aA.item.container_id}},d.enqueue({type:"tool-input-start",id:aA.item.id,toolName:r.toCustomToolName("code_interpreter"),providerExecuted:!0}),d.enqueue({type:"tool-input-delta",id:aA.item.id,delta:`{"containerId":"${aA.item.container_id}","code":"`});else if("file_search_call"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if("image_generation_call"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if("tool_search_call"===aA.item.type){let a=aA.item.id,b=r.toCustomToolName("tool_search"),c="server"===aA.item.execution;G[aA.output_index]={toolName:b,toolCallId:a,toolSearchExecution:null!=(g=aA.item.execution)?g:"server"},c&&d.enqueue({type:"tool-input-start",id:a,toolName:b,providerExecuted:!0})}else if("tool_search_output"===aA.item.type);else if("mcp_call"===aA.item.type||"mcp_list_tools"===aA.item.type||"mcp_approval_request"===aA.item.type);else if("apply_patch_call"===aA.item.type){let{call_id:a,operation:b}=aA.item;if(G[aA.output_index]={toolName:r.toCustomToolName("apply_patch"),toolCallId:a,applyPatch:{hasDiff:"delete_file"===b.type,endEmitted:"delete_file"===b.type}},d.enqueue({type:"tool-input-start",id:a,toolName:r.toCustomToolName("apply_patch")}),"delete_file"===b.type){let c=JSON.stringify({callId:a,operation:b});d.enqueue({type:"tool-input-delta",id:a,delta:c}),d.enqueue({type:"tool-input-end",id:a})}else d.enqueue({type:"tool-input-delta",id:a,delta:`{"callId":"${bC(a)}","operation":{"type":"${bC(b.type)}","path":"${bC(b.path)}","diff":"`})}else"shell_call"===aA.item.type?G[aA.output_index]={toolName:r.toCustomToolName("shell"),toolCallId:aA.item.call_id}:"shell_call_output"===aA.item.type||("message"===aA.item.type?(K[aA.output_index]=aA.item.id,H.splice(0,H.length),i=null!=(h=aA.item.phase)?h:void 0,d.enqueue({type:"text-start",id:aA.item.id,providerMetadata:{[t]:{itemId:aA.item.id,...null!=aA.item.phase&&{phase:aA.item.phase}}}})):bx(aA)&&"reasoning"===aA.item.type&&(K[aA.output_index]=aA.item.id,J[aA.item.id]={encryptedContent:aA.item.encrypted_content,summaryParts:{0:"active"}},d.enqueue({type:"reasoning-start",id:`${aA.item.id}:0`,providerMetadata:{[t]:{itemId:aA.item.id,reasoningEncryptedContent:null!=(k=aA.item.encrypted_content)?k:null}}})));else if("response.output_item.done"===aA.type)if("message"===aA.item.type){let a=L({itemId:aA.item.id,outputIndex:aA.output_index}),b=null!=(p=aA.item.phase)?p:i;i=void 0,d.enqueue({type:"text-end",id:a,providerMetadata:{[t]:{itemId:a,...null!=b&&{phase:b},...H.length>0&&{annotations:H}}}}),K[aA.output_index]=void 0}else if("function_call"===aA.item.type){let a=aA.item,b=G[aA.output_index];G[aA.output_index]=void 0,I=!0;let c=null!=(x=null==b?void 0:b.suppressInputStreaming)?x:bf({toolName:a.name,tools:B}),e=()=>{var e;if(c){d.enqueue({type:"tool-input-start",id:a.call_id,toolName:a.name});let c=null!=(e=null==b?void 0:b.bufferedInputDeltas)?e:[];if(c.length>0)for(let b of c)d.enqueue({type:"tool-input-delta",id:a.call_id,delta:b});else a.arguments.length>0&&d.enqueue({type:"tool-input-delta",id:a.call_id,delta:a.arguments})}d.enqueue({type:"tool-input-end",id:a.call_id,...null!=a.namespace&&{providerMetadata:{[t]:{namespace:a.namespace}}}}),d.enqueue({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments,providerMetadata:{[t]:{itemId:a.id,...null!=a.namespace&&{namespace:a.namespace},...null!=a.caller&&{caller:"program"===a.caller.type?{type:"program",callerId:a.caller.caller_id}:a.caller}}}})};return c?bg({toolCall:{toolCallId:a.call_id,toolName:a.name,input:a.arguments},tools:B,providerOptionsName:t,itemId:a.id}).then(a=>{if(null==a)return void e();for(let b of a)d.enqueue({type:"tool-input-start",id:b.toolCallId,toolName:b.toolName}),d.enqueue({type:"tool-input-delta",id:b.toolCallId,delta:b.input}),d.enqueue({type:"tool-input-end",id:b.toolCallId}),d.enqueue(b)}):void e()}else if("program"===aA.item.type)d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("programmatic_tool_calling"),input:JSON.stringify({code:aA.item.code,fingerprint:aA.item.fingerprint}),providerExecuted:!0,providerMetadata:{[t]:{itemId:aA.item.id}}});else if("program_output"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("programmatic_tool_calling"),result:{result:aA.item.result,status:aA.item.status},providerMetadata:{[t]:{itemId:aA.item.id}}});else if("custom_tool_call"===aA.item.type){G[aA.output_index]=void 0,I=!0;let a=r.toCustomToolName(aA.item.name);d.enqueue({type:"tool-input-end",id:aA.item.call_id}),d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:a,input:JSON.stringify(aA.item.input),providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("web_search_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName(null!=q?q:"web_search"),result:bB(aA.item.action)});else if("computer_call"===aA.item.type){if(G[aA.output_index]=void 0,null==aA.item.call_id){d.enqueue({type:"tool-input-end",id:aA.item.id}),d.enqueue({type:"tool-call",toolCallId:aA.item.id,toolName:r.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:aA.item.status}});return}I=!0;let a=r.toCustomToolName("computer"),b=JSON.stringify(bu(aA.item));d.enqueue({type:"tool-input-delta",id:aA.item.call_id,delta:b}),d.enqueue({type:"tool-input-end",id:aA.item.call_id}),d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:a,input:b,providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("file_search_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("file_search"),result:{queries:aA.item.queries,results:null!=(O=null==(y=aA.item.results)?void 0:y.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?O:null}});else if("code_interpreter_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("code_interpreter"),result:{outputs:aA.item.outputs}});else if("image_generation_call"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.id,toolName:r.toCustomToolName("image_generation"),result:{result:aA.item.result}});else if("tool_search_call"===aA.item.type){let a=G[aA.output_index],b="server"===aA.item.execution;if(null!=a){let c=b?a.toolCallId:null!=(P=aA.item.call_id)?P:aA.item.id;b?M.push(c):d.enqueue({type:"tool-input-start",id:c,toolName:a.toolName}),d.enqueue({type:"tool-input-end",id:c}),d.enqueue({type:"tool-call",toolCallId:c,toolName:a.toolName,input:JSON.stringify({arguments:aA.item.arguments,call_id:b?null:c}),...b?{providerExecuted:!0}:{},providerMetadata:{[t]:{itemId:aA.item.id}}})}G[aA.output_index]=void 0}else if("tool_search_output"===aA.item.type){let a=null!=(R=null!=(Q=aA.item.call_id)?Q:M.shift())?R:aA.item.id;d.enqueue({type:"tool-result",toolCallId:a,toolName:r.toCustomToolName("tool_search"),result:{tools:aA.item.tools},providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("mcp_call"===aA.item.type){G[aA.output_index]=void 0;let a=null!=(S=aA.item.approval_request_id)?S:void 0,b=null!=a&&null!=(U=null!=(T=C.get(a))?T:A[a])?U:aA.item.id,c=`mcp.${aA.item.name}`;d.enqueue({type:"tool-call",toolCallId:b,toolName:c,input:aA.item.arguments,providerExecuted:!0,dynamic:!0}),d.enqueue({type:"tool-result",toolCallId:b,toolName:c,result:{type:"call",serverLabel:aA.item.server_label,name:aA.item.name,arguments:aA.item.arguments,...null!=aA.item.output?{output:aA.item.output}:{},...null!=aA.item.error?{error:aA.item.error}:{}},providerMetadata:{[t]:{itemId:aA.item.id}}})}else if("mcp_list_tools"===aA.item.type)G[aA.output_index]=void 0;else if("apply_patch_call"===aA.item.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&!a.applyPatch.endEmitted&&"delete_file"!==aA.item.operation.type&&(a.applyPatch.hasDiff||d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.item.operation.diff)}),d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),a.applyPatch.endEmitted=!0),a&&"completed"===aA.item.status&&d.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:r.toCustomToolName("apply_patch"),input:JSON.stringify({callId:aA.item.call_id,operation:aA.item.operation}),providerMetadata:{[t]:{itemId:aA.item.id}}}),G[aA.output_index]=void 0}else if("mcp_approval_request"===aA.item.type){G[aA.output_index]=void 0;let a=null!=(X=null==(W=(V=z.config).generateId)?void 0:W.call(V))?X:(0,c.generateId)(),b=null!=(Y=aA.item.approval_request_id)?Y:aA.item.id;C.set(b,a);let e=`mcp.${aA.item.name}`;d.enqueue({type:"tool-call",toolCallId:a,toolName:e,input:aA.item.arguments,providerExecuted:!0,dynamic:!0}),d.enqueue({type:"tool-approval-request",approvalId:b,toolCallId:a})}else if("local_shell_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:aA.item.action.command,timeoutMs:aA.item.action.timeout_ms,user:aA.item.action.user,workingDirectory:aA.item.action.working_directory,env:aA.item.action.env}}),providerMetadata:{[t]:{itemId:aA.item.id}}});else if("shell_call"===aA.item.type)G[aA.output_index]=void 0,d.enqueue({type:"tool-call",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("shell"),input:JSON.stringify({action:{commands:aA.item.action.commands}}),...u&&{providerExecuted:!0},providerMetadata:{[t]:{itemId:aA.item.id}}});else if("shell_call_output"===aA.item.type)d.enqueue({type:"tool-result",toolCallId:aA.item.call_id,toolName:r.toCustomToolName("shell"),result:{output:aA.item.output.map(a=>({stdout:a.stdout,stderr:a.stderr,outcome:"exit"===a.outcome.type?{type:"exit",exitCode:a.outcome.exit_code}:{type:"timeout"}}))}});else if("reasoning"===aA.item.type){let a=L({itemId:aA.item.id,outputIndex:aA.output_index}),b=J[a];if(null!=b){for(let c of Object.entries(b.summaryParts).filter(([a,b])=>"active"===b||"can-conclude"===b).map(([a])=>a))d.enqueue({type:"reasoning-end",id:`${a}:${c}`,providerMetadata:{[t]:{itemId:a,reasoningEncryptedContent:null!=(Z=aA.item.encrypted_content)?Z:null}}});delete J[a]}K[aA.output_index]=void 0}else"compaction"===aA.item.type&&d.enqueue({type:"custom",kind:"openai.compaction",providerMetadata:{[t]:{type:"compaction",itemId:aA.item.id,encryptedContent:aA.item.encrypted_content}}});else if("response.function_call_arguments.delta"===aA.type){let a=G[aA.output_index];null!=a&&(a.suppressInputStreaming?null==($=a.bufferedInputDeltas)||$.push(aA.delta):d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:aA.delta}))}else if("response.custom_tool_call_input.delta"===aA.type){let a=G[aA.output_index];null!=a&&d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:aA.delta})}else if("response.apply_patch_call_operation_diff.delta"===aA.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.delta)}),a.applyPatch.hasDiff=!0)}else if("response.apply_patch_call_operation_diff.done"===aA.type){let a=G[aA.output_index];(null==a?void 0:a.applyPatch)&&!a.applyPatch.endEmitted&&(a.applyPatch.hasDiff||(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.diff)}),a.applyPatch.hasDiff=!0),d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),a.applyPatch.endEmitted=!0)}else if("response.image_generation_call.partial_image"===aA.type)d.enqueue({type:"tool-result",toolCallId:aA.item_id,toolName:r.toCustomToolName("image_generation"),result:{result:aA.partial_image_b64},preliminary:!0});else if("response.code_interpreter_call_code.delta"===aA.type){let a=G[aA.output_index];null!=a&&d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:bC(aA.delta)})}else if("response.code_interpreter_call_code.done"===aA.type){let a=G[aA.output_index];null!=a&&(d.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:'"}'}),d.enqueue({type:"tool-input-end",id:a.toolCallId}),d.enqueue({type:"tool-call",toolCallId:a.toolCallId,toolName:r.toCustomToolName("code_interpreter"),input:JSON.stringify({code:aA.code,containerId:a.codeInterpreter.containerId}),providerExecuted:!0}))}else if("response.created"===aA.type)F=aA.response.id,d.enqueue({type:"response-metadata",id:aA.response.id,timestamp:new Date(1e3*aA.response.created_at),modelId:aA.response.model});else if("response.output_text.delta"===aA.type){let b=L({itemId:aA.item_id,outputIndex:aA.output_index});d.enqueue({type:"text-delta",id:b,delta:aA.delta}),(null==(aa=null==(_=a.providerOptions)?void 0:_[t])?void 0:aa.logprobs)&&aA.logprobs&&E.push(aA.logprobs)}else if("response.reasoning_summary_part.added"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index});if(aA.summary_index>0){let b=J[a];if(null!=b){for(let c of(b.summaryParts[aA.summary_index]="active",Object.keys(b.summaryParts)))"can-conclude"===b.summaryParts[c]&&(d.enqueue({type:"reasoning-end",id:`${a}:${c}`,providerMetadata:{[t]:{itemId:a}}}),b.summaryParts[c]="concluded");d.enqueue({type:"reasoning-start",id:`${a}:${aA.summary_index}`,providerMetadata:{[t]:{itemId:a,reasoningEncryptedContent:null!=(ab=b.encryptedContent)?ab:null}}})}}}else if("response.reasoning_summary_text.delta"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index});d.enqueue({type:"reasoning-delta",id:`${a}:${aA.summary_index}`,delta:aA.delta,providerMetadata:{[t]:{itemId:a}}})}else if("response.reasoning_summary_part.done"===aA.type){let a=L({itemId:aA.item_id,outputIndex:aA.output_index}),b=J[a];null!=b&&(s?(d.enqueue({type:"reasoning-end",id:`${a}:${aA.summary_index}`,providerMetadata:{[t]:{itemId:a}}}),b.summaryParts[aA.summary_index]="concluded"):b.summaryParts[aA.summary_index]="can-conclude")}else{if("response.completed"===(az=aA).type||"response.incomplete"===az.type)N||(D={unified:aX({finishReason:null==(ac=aA.response.incomplete_details)?void 0:ac.reason,hasFunctionCall:I}),raw:null!=(ae=null==(ad=aA.response.incomplete_details)?void 0:ad.reason)?ae:void 0}),n=null!=(af=aA.response.usage)?af:void 0,"string"==typeof aA.response.service_tier&&(l=aA.response.service_tier),(null==(ag=aA.response.reasoning)?void 0:ag.context)!=null&&(m=aA.response.reasoning.context);else if(bw(aA)){let a=null==(ah=aA.response.incomplete_details)?void 0:ah.reason;if(D={unified:a?aX({finishReason:a,hasFunctionCall:I}):"error",raw:null!=a?a:"error"},n=null!=(ai=aA.response.usage)?ai:void 0,(null==(aj=aA.response.reasoning)?void 0:aj.context)!=null&&(m=aA.response.reasoning.context),!N&&null!=aA.response.error){N=!0;let a={type:"response.failed",sequence_number:aA.sequence_number,response:{error:aA.response.error,incomplete_details:aA.response.incomplete_details,service_tier:aA.response.service_tier}};d.enqueue({type:"error",error:null!=(ak=j(a))?ak:a})}}else"response.output_text.annotation.added"===aA.type?(H.push(aA.annotation),"url_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"url",id:null!=(an=null==(am=(al=z.config).generateId)?void 0:am.call(al))?an:(0,c.generateId)(),url:aA.annotation.url,title:aA.annotation.title}):"file_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"document",id:null!=(aq=null==(ap=(ao=z.config).generateId)?void 0:ap.call(ao))?aq:(0,c.generateId)(),mediaType:"text/plain",title:aA.annotation.filename,filename:aA.annotation.filename,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,index:aA.annotation.index}}}):"container_file_citation"===aA.annotation.type?d.enqueue({type:"source",sourceType:"document",id:null!=(at=null==(as=(ar=z.config).generateId)?void 0:as.call(ar))?at:(0,c.generateId)(),mediaType:"text/plain",title:aA.annotation.filename,filename:aA.annotation.filename,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,containerId:aA.annotation.container_id}}}):"file_path"===aA.annotation.type&&d.enqueue({type:"source",sourceType:"document",id:null!=(aw=null==(av=(au=z.config).generateId)?void 0:av.call(au))?aw:(0,c.generateId)(),mediaType:"application/octet-stream",title:aA.annotation.file_id,filename:aA.annotation.file_id,providerMetadata:{[t]:{type:aA.annotation.type,fileId:aA.annotation.file_id,index:aA.annotation.index}}})):by(aA)&&(N=!0,D={unified:"error",raw:"error"},d.enqueue({type:"error",error:null!=(ax=j(aA))?ax:aA}))}},flush(a){var b;for(let c of Object.values(G))if(null==c?void 0:c.suppressInputStreaming)for(let d of(a.enqueue({type:"tool-input-start",id:c.toolCallId,toolName:c.toolName}),null!=(b=c.bufferedInputDeltas)?b:[]))a.enqueue({type:"tool-input-delta",id:c.toolCallId,delta:d});let c={[t]:{responseId:F,...E.length>0?{logprobs:E}:{},...void 0!==l?{serviceTier:l}:{},...void 0!==m?{reasoningContext:m}:{}}};a.enqueue({type:"finish",finishReason:D,usage:aW(n),providerMetadata:c})}})),request:{body:o},response:{headers:w}}}};function bw(a){return"response.failed"===a.type}function bx(a){return"response.output_item.added"===a.type}function by(a){return"error"===a.type}function bz(a){return"response.in_progress"===a.type}function bA(a){return"response.created"!==a.type&&"response.in_progress"!==a.type&&"response.failed"!==a.type&&"error"!==a.type&&"unknown_chunk"!==a.type}function bB(a){var b;if(null==a)return{};switch(a.type){case"search":return{action:{type:"search",query:null!=(b=a.query)?b:void 0,...null!=a.queries&&{queries:a.queries}},...null!=a.sources&&{sources:a.sources}};case"open_page":return{action:{type:"openPage",url:a.url}};case"find_in_page":return{action:{type:"findInPage",url:a.url,pattern:a.pattern}}}}function bC(a){return JSON.stringify(a).slice(1,-1)}var bD="/v1/responses",bE=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({inputFileExpiresAfter:e.z.number().int().min(3600).max(2592e3).optional()}))),bF=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),status:e.z.string(),output_file_id:e.z.string().nullish(),error_file_id:e.z.string().nullish(),created_at:e.z.number().nullish(),expires_at:e.z.number().nullish(),request_counts:e.z.object({total:e.z.number().nullish(),completed:e.z.number().nullish(),failed:e.z.number().nullish()}).nullish(),errors:e.z.object({data:e.z.array(e.z.object({code:e.z.string().nullish(),message:e.z.string().nullish()})).nullish()}).nullish()}))),bG=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({custom_id:e.z.string(),response:e.z.object({status_code:e.z.number(),request_id:e.z.string().nullish(),body:e.z.unknown()}).nullish(),error:e.z.object({code:e.z.string(),message:e.z.string()}).nullish()}))),bH=class{constructor(a){this.options=a}async startBatch(a){var b,d,e,f,g,i;let j=[],k=null==a.webhookUrl?[]:[{warning:{type:"unsupported",feature:"webhookUrl",details:"The OpenAI Batch API does not support per-batch webhook URLs."}}],l=await this.parseBatchProviderOptions(a.providerOptions),m=null!=(b=null==l?void 0:l.inputFileExpiresAfter)?b:172800;for(let b of a.requests){let a=await this.options.prepareRequest(b);for(let c of(j.push(JSON.stringify({custom_id:b.id,method:"POST",url:bD,body:a.body}),"\n"),a.warnings))k.push({requestId:b.id,warning:c});for(let a of null!=(d=b.options.tools)?d:[])"provider"!==a.type||bI.has(a.id)||k.push({requestId:b.id,warning:{type:"unsupported",feature:`batch result conversion for tool "${a.name}"`,details:"OpenAI may return output for this tool that AI SDK text batches cannot currently convert."}})}let n="batch.jsonl",o=new Blob(j,{type:"application/jsonl"});j.length=0;let p=new FormData;p.append("file",o,n),p.append("purpose","batch"),p.append("expires_after[anchor]","created_at"),p.append("expires_after[seconds]",String(m));let{value:q}=await (0,c.postToApi)({url:this.getUrl("/files"),headers:(0,c.combineHeaders)(null==(f=(e=this.options.config).headers)?void 0:f.call(e),a.headers),body:{content:p,values:{purpose:"batch","expires_after[anchor]":"created_at","expires_after[seconds]":String(m),file:{name:n,type:o.type,size:o.size}}},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(I),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),{value:r}=await (0,c.postJsonToApi)({url:this.getUrl("/batches"),headers:(0,c.combineHeaders)(null==(i=(g=this.options.config).headers)?void 0:i.call(g),a.headers),body:{input_file_id:q.id,endpoint:bD,completion_window:"24h"},failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bF),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),s=bL(q.expires_at);return{batchId:r.id,...bK(r),providerMetadata:{openai:{inputFileId:q.id,...null!=s?{inputFileExpiresAt:s}:{}}},warnings:k}}async parseBatchProviderOptions(a){let b=this.options.config.provider.includes("azure")?"azure":"openai",d=await (0,c.parseProviderOptions)({provider:b,providerOptions:a,schema:bE});return null==d&&"openai"!==b&&(d=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a,schema:bE})),d}async getBatchStatus(a){return bK(await this.retrieveBatch(a))}async getBatchResults(a){let b=await this.retrieveBatch(a),d=bK(b);if("pending"===d.status)throw new f.InvalidArgumentError({argument:"batchId",message:`OpenAI batch "${a.batchId}" is not complete.`});let e=[b.output_file_id,b.error_file_id].filter(a=>null!=a);if("completed"===d.status&&0===e.length)throw new f.InvalidResponseDataError({data:b,message:`OpenAI batch "${a.batchId}" completed without batch output.`});let g=this.iterateBatchResults({fileIds:e,options:a});return(0,c.convertAsyncIteratorToReadableStream)(g)}async retrieveBatch(a){var b,d;let{value:e}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bF),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});return e}async *iterateBatchResults({fileIds:a,options:b}){var d,e;for(let f of a){let{value:a}=await (0,c.getFromApi)({url:this.getUrl(`/files/${encodeURIComponent(f)}/content`),headers:(0,c.combineHeaders)(null==(e=(d=this.options.config).headers)?void 0:e.call(d),b.headers),failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonLinesResponseHandler)(bG),abortSignal:b.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});for await(let b of a)yield await this.convertResultLine(b)}}async convertResultLine(a){if(null!=a.error){let b={message:a.error.message,code:a.error.code};return"batch_cancelled"===a.error.code?{id:a.custom_id,status:"cancelled",error:b}:"batch_expired"===a.error.code?{id:a.custom_id,status:"expired",error:b}:{id:a.custom_id,status:"failed",error:b}}if(null==a.response)return{id:a.custom_id,status:"failed",error:{message:"OpenAI returned a batch result without a response or error.",code:"invalid_batch_result"}};if(a.response.status_code<200||a.response.status_code>=300)return{id:a.custom_id,status:"failed",error:await bM({body:a.response.body,statusCode:a.response.status_code})};let b=await bN(a.response.body);return b.success?{id:a.custom_id,status:"succeeded",result:b.result}:{id:a.custom_id,status:"failed",error:b.error}}getUrl(a){return this.options.config.url({modelId:this.options.modelId,path:a})}},bI=new Set(["openai.code_interpreter","openai.custom","openai.file_search","openai.web_search","openai.web_search_preview"]),bJ=class a extends bv{static[d.WORKFLOW_SERIALIZE](a){return bv[d.WORKFLOW_SERIALIZE](a)}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,aV(b.config))}constructor(a,b){super(a,b),this.batch=new bH({modelId:a,config:b,prepareRequest:async a=>{let{args:b,warnings:c}=await this.getArgs(a.options);return{body:b,warnings:c}}})}experimental_doStartBatch(a){return this.batch.startBatch(a)}experimental_doGetBatchStatus(a){return this.batch.getBatchStatus(a)}experimental_doGetBatchResults(a){return this.batch.getBatchResults(a)}};function bK(a){var b,d,e,f;let g,h,i,j=function(a){switch(a){case"completed":return"completed";case"failed":case"expired":case"cancelled":return"failed";default:return"pending"}}(a.status),k=null==(d=null==(b=a.errors)?void 0:b.data)?void 0:d[0],l=(g=null==(f=a.request_counts)?void 0:f.total,h=null==f?void 0:f.completed,i=null==f?void 0:f.failed,(0,c.normalizeBatchRequestCounts)({total:g,pending:null!=g&&null!=h&&null!=i?g-h-i:void 0,completed:h,failed:i})),m=bL(a.created_at),n=bL(a.expires_at);return{status:j,rawStatus:a.status,...null!=l?{requestCounts:l}:{},...null!=k?{error:{message:null!=(e=k.message)?e:"OpenAI batch failed.",...null!=k.code?{code:k.code}:{}}}:{},...null!=m?{createdAt:m}:{},...null!=n?{expiresAt:n}:{}}}function bL(a){if(null==a||!Number.isFinite(a))return;let b=new Date(1e3*a);return Number.isNaN(b.getTime())?void 0:b.toISOString()}async function bM({body:a,statusCode:b}){var d;let e=await (0,c.safeValidateTypes)({value:a,schema:g});return e.success?{message:e.value.error.message,type:null!=(d=e.value.error.type)?d:void 0,code:null!=e.value.error.code?String(e.value.error.code):void 0,statusCode:b}:{message:`OpenAI batch request failed with status code ${b}.`,statusCode:b}}async function bN(a){var b,d,e,f,g,h,i,j;let k=await (0,c.safeValidateTypes)({value:a,schema:bb});if(!k.success)return{success:!1,error:{message:"OpenAI returned an invalid Responses batch result.",code:"invalid_response"}};let l=k.value;if(null!=l.error)return{success:!1,error:{message:l.error.message,type:l.error.type,code:l.error.code}};if(null==l.output){let a=null==(b=l.incomplete_details)?void 0:b.reason;return{success:!1,error:{message:null!=a?`OpenAI Responses returned no output (${a}).`:"OpenAI Responses returned no output.",code:"invalid_response"}}}let m=[],n=[],o=!1;for(let a of l.output)switch(a.type){case"reasoning":for(let b of a.summary.length>0?a.summary:[{type:"summary_text",text:""}])m.push({type:"reasoning",text:b.text,providerMetadata:{openai:{itemId:a.id,reasoningEncryptedContent:null!=(d=a.encrypted_content)?d:null}}});break;case"message":for(let b of a.content)m.push({type:"text",text:b.text}),null!=b.logprobs&&n.push(b.logprobs);break;case"function_call":o=!0,m.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments,providerMetadata:{openai:{itemId:a.id,...null!=a.namespace&&{namespace:a.namespace},...null!=a.caller&&{caller:"program"===a.caller.type?{type:"program",callerId:a.caller.caller_id}:a.caller}}}});break;case"custom_tool_call":o=!0,m.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:JSON.stringify(a.input),providerMetadata:{openai:{itemId:a.id}}});break;case"web_search_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"web_search",input:"{}",providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"web_search",result:bB(a.action),dynamic:!0});break;case"file_search_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"file_search",input:"{}",providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"file_search",result:{queries:a.queries,results:null!=(f=null==(e=a.results)?void 0:e.map(a=>({attributes:a.attributes,fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?f:null},dynamic:!0});break;case"code_interpreter_call":m.push({type:"tool-call",toolCallId:a.id,toolName:"code_interpreter",input:JSON.stringify({code:a.code,containerId:a.container_id}),providerExecuted:!0,dynamic:!0}),m.push({type:"tool-result",toolCallId:a.id,toolName:"code_interpreter",result:{outputs:a.outputs},dynamic:!0});break;default:return{success:!1,error:{message:`OpenAI returned an unsupported "${a.type}" output item in an AI SDK text batch.`,code:"unsupported_content"}}}let p={openai:{responseId:l.id,...n.length>0?{logprobs:n}:{},..."string"==typeof l.service_tier?{serviceTier:l.service_tier}:{},...(null==(g=l.reasoning)?void 0:g.context)!=null?{reasoningContext:l.reasoning.context}:{}}};return{success:!0,result:{content:m,finishReason:{unified:aX({finishReason:null==(h=l.incomplete_details)?void 0:h.reason,hasFunctionCall:o}),raw:null!=(j=null==(i=l.incomplete_details)?void 0:i.reason)?j:void 0},usage:aW(l.usage),response:{id:l.id,timestamp:null!=l.created_at?new Date(1e3*l.created_at):void 0,modelId:l.model},providerMetadata:p,warnings:[]}}}function bO(a,b){var c;let d={type:"realtime",model:b};null!=a.instructions&&(d.instructions=a.instructions),null!=a.outputModalities&&(d.output_modalities=a.outputModalities);let e={};if(null!=a.inputAudioFormat||null!=a.inputAudioTranscription||null!=a.turnDetection){let b={};if(null!=a.inputAudioFormat&&(b.format={type:a.inputAudioFormat.type,...null!=a.inputAudioFormat.rate?{rate:a.inputAudioFormat.rate}:{}}),null!=a.turnDetection)if("disabled"===a.turnDetection.type)b.turn_detection=null;else{let c={type:"server-vad"===a.turnDetection.type?"server_vad":"semantic_vad"};null!=a.turnDetection.threshold&&(c.threshold=a.turnDetection.threshold),null!=a.turnDetection.silenceDurationMs&&(c.silence_duration_ms=a.turnDetection.silenceDurationMs),null!=a.turnDetection.prefixPaddingMs&&(c.prefix_padding_ms=a.turnDetection.prefixPaddingMs),b.turn_detection=c}null!=a.inputAudioTranscription&&(b.transcription={model:null!=(c=a.inputAudioTranscription.model)?c:"gpt-realtime-whisper",...null!=a.inputAudioTranscription.language?{language:a.inputAudioTranscription.language}:{},...null!=a.inputAudioTranscription.prompt?{prompt:a.inputAudioTranscription.prompt}:{}}),e.input=b}if(null!=a.outputAudioFormat||null!=a.voice){let b={};null!=a.outputAudioFormat&&(b.format={type:a.outputAudioFormat.type,...null!=a.outputAudioFormat.rate?{rate:a.outputAudioFormat.rate}:{}}),null!=a.voice&&(b.voice=a.voice),e.output=b}return Object.keys(e).length>0&&(d.audio=e),null!=a.tools&&a.tools.length>0&&(d.tools=a.tools.map(a=>({type:a.type,name:a.name,description:a.description,parameters:a.parameters})),d.tool_choice="auto"),null!=a.providerOptions&&Object.assign(d,a.providerOptions),d}var bP=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b;let c=null!=(b=this.config.fetch)?b:fetch,d=`${this.config.baseURL}/realtime/client_secrets`,e=null!=a.sessionConfig?bO(a.sessionConfig,this.modelId):{type:"realtime",model:this.modelId},f=await c(d,{method:"POST",headers:{...this.config.headers(),"Content-Type":"application/json"},body:JSON.stringify({session:e,...null!=a.expiresAfterSeconds?{expires_after:{anchor:"created_at",seconds:a.expiresAfterSeconds}}:{}})});if(!f.ok){let a=await f.text();throw Error(`OpenAI realtime client secret request failed: ${f.status} ${a}`)}let g=await f.json();return{token:g.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:g.expires_at}}getWebSocketConfig(a){return{url:a.url,protocols:["realtime",`openai-insecure-api-key.${a.token}`]}}parseServerEvent(a){return function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;let u=a.type;switch(u){case"session.created":return{type:"session-created",sessionId:null==(b=a.session)?void 0:b.id,raw:a};case"session.updated":return{type:"session-updated",raw:a};case"input_audio_buffer.speech_started":return{type:"speech-started",itemId:a.item_id,raw:a};case"input_audio_buffer.speech_stopped":return{type:"speech-stopped",itemId:a.item_id,raw:a};case"input_audio_buffer.committed":return{type:"audio-committed",itemId:a.item_id,previousItemId:a.previous_item_id,raw:a};case"conversation.item.added":return{type:"conversation-item-added",itemId:null!=(d=null==(c=a.item)?void 0:c.id)?d:a.item_id,item:a.item,raw:a};case"conversation.item.input_audio_transcription.completed":return{type:"input-transcription-completed",itemId:a.item_id,transcript:null!=(e=a.transcript)?e:"",raw:a};case"response.created":return{type:"response-created",responseId:null!=(g=null==(f=a.response)?void 0:f.id)?g:a.response_id,raw:a};case"response.done":return{type:"response-done",responseId:null!=(i=null==(h=a.response)?void 0:h.id)?i:a.response_id,status:null!=(k=null==(j=a.response)?void 0:j.status)?k:"completed",raw:a};case"response.output_item.added":return{type:"output-item-added",responseId:a.response_id,itemId:null!=(m=null==(l=a.item)?void 0:l.id)?m:a.item_id,raw:a};case"response.output_item.done":return{type:"output-item-done",responseId:a.response_id,itemId:null!=(o=null==(n=a.item)?void 0:n.id)?o:a.item_id,raw:a};case"response.content_part.added":return{type:"content-part-added",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.content_part.done":return{type:"content-part-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio.delta":return{type:"audio-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio.done":return{type:"audio-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio_transcript.delta":return{type:"audio-transcript-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio_transcript.done":return{type:"audio-transcript-done",responseId:a.response_id,itemId:a.item_id,transcript:a.transcript,raw:a};case"response.output_text.delta":return{type:"text-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_text.done":return{type:"text-done",responseId:a.response_id,itemId:a.item_id,text:a.text,raw:a};case"response.function_call_arguments.delta":return{type:"function-call-arguments-delta",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,delta:a.delta,raw:a};case"response.function_call_arguments.done":return{type:"function-call-arguments-done",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,name:a.name,arguments:a.arguments,raw:a};case"error":return{type:"error",message:null!=(r=null!=(q=null==(p=a.error)?void 0:p.message)?q:a.message)?r:"Unknown error",code:null!=(t=null==(s=a.error)?void 0:s.code)?t:a.code,raw:a};default:return{type:"custom",rawType:u,raw:a}}}(a)}serializeClientEvent(a){var b=this.modelId;switch(a.type){case"session-update":return{type:"session.update",session:bO(a.config,b)};case"input-audio-append":return{type:"input_audio_buffer.append",audio:a.audio};case"input-audio-commit":return{type:"input_audio_buffer.commit"};case"input-audio-clear":return{type:"input_audio_buffer.clear"};case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_text",text:b.text}]}};case"audio-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_audio",audio:b.audio}]}};case"function-call-output":return{type:"conversation.item.create",item:{type:"function_call_output",call_id:b.callId,output:b.output}}}break}case"conversation-item-truncate":return{type:"conversation.item.truncate",item_id:a.itemId,content_index:a.contentIndex,audio_end_ms:a.audioEndMs};case"response-create":return{type:"response.create",...null!=a.options?{response:{...null!=a.options.modalities?{output_modalities:a.options.modalities}:{},...null!=a.options.instructions?{instructions:a.options.instructions}:{},...null!=a.options.metadata?{metadata:a.options.metadata}:{}}}:{}};case"response-cancel":return{type:"response.cancel"}}}buildSessionConfig(a){return bO(a,this.modelId)}},bQ=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({instructions:e.z.string().nullish(),speed:e.z.number().min(.25).max(4).default(1).nullish()}))),bR=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({text:a,voice:b="alloy",outputFormat:d="mp3",speed:e,instructions:f,language:g,providerOptions:h}){let i=[],j=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:h,schema:bQ}),k={model:this.modelId,input:a,voice:b,response_format:"mp3",speed:e,instructions:f};if(d&&(["mp3","opus","aac","flac","wav","pcm"].includes(d)?k.response_format=d:i.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${d}. Using mp3 instead.`})),j){let a={};for(let b in a){let c=a[b];void 0!==c&&(k[b]=c)}}return g&&i.push({type:"unsupported",feature:"language",details:`OpenAI speech models do not support language selection. Language parameter "${g}" was ignored.`}),{requestBody:k,warnings:i}}async doGenerate(a){var b,d,e,f,g;let i=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestBody:j,warnings:k}=await this.getArgs(a),{value:l,responseHeaders:m,rawValue:n}=await (0,c.postJsonToApi)({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(g=(f=this.config).headers)?void 0:g.call(f),a.headers),body:j,failedResponseHandler:h,successfulResponseHandler:(0,c.createBinaryResponseHandler)(),abortSignal:a.abortSignal,fetch:this.config.fetch});return{audio:l,warnings:k,request:{body:JSON.stringify(j)},response:{timestamp:i,modelId:this.modelId,headers:m,body:n}}}},bS=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({text:e.z.string(),language:e.z.string().nullish(),duration:e.z.number().nullish(),words:e.z.array(e.z.object({word:e.z.string(),start:e.z.number(),end:e.z.number()})).nullish(),segments:e.z.array(e.z.union([e.z.object({id:e.z.number(),seek:e.z.number(),start:e.z.number(),end:e.z.number(),text:e.z.string(),tokens:e.z.array(e.z.number()),temperature:e.z.number(),avg_logprob:e.z.number(),compression_ratio:e.z.number(),no_speech_prob:e.z.number()}),e.z.object({type:e.z.literal("transcript.text.segment"),id:e.z.string(),start:e.z.number(),end:e.z.number(),text:e.z.string(),speaker:e.z.string()})])).nullish()}))),bT=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({include:e.z.array(e.z.string()).optional(),language:e.z.string().optional(),prompt:e.z.string().optional(),temperature:e.z.number().min(0).max(1).default(0).optional(),timestampGranularities:e.z.array(e.z.enum(["word","segment"])).default(["segment"]).optional(),responseFormat:e.z.enum(["json","verbose_json","diarized_json"]).optional(),chunkingStrategy:e.z.union([e.z.literal("auto"),e.z.object({type:e.z.literal("server_vad"),threshold:e.z.number().min(0).max(1).optional(),prefixPaddingMs:e.z.number().int().min(0).optional(),silenceDurationMs:e.z.number().int().min(0).optional()})]).optional(),streaming:e.z.object({delay:e.z.enum(["minimal","low","medium","high","xhigh"]).optional(),include:e.z.array(e.z.string()).optional()}).optional()})));function bU(a){return"gpt-realtime-whisper"===a||a.startsWith("gpt-realtime-whisper-")}var bV={afrikaans:"af",arabic:"ar",armenian:"hy",azerbaijani:"az",belarusian:"be",bosnian:"bs",bulgarian:"bg",catalan:"ca",chinese:"zh",croatian:"hr",czech:"cs",danish:"da",dutch:"nl",english:"en",estonian:"et",finnish:"fi",french:"fr",galician:"gl",german:"de",greek:"el",hebrew:"he",hindi:"hi",hungarian:"hu",icelandic:"is",indonesian:"id",italian:"it",japanese:"ja",kannada:"kn",kazakh:"kk",korean:"ko",latvian:"lv",lithuanian:"lt",macedonian:"mk",malay:"ms",marathi:"mr",maori:"mi",nepali:"ne",norwegian:"no",persian:"fa",polish:"pl",portuguese:"pt",romanian:"ro",russian:"ru",serbian:"sr",slovak:"sk",slovenian:"sl",spanish:"es",swahili:"sw",swedish:"sv",tagalog:"tl",tamil:"ta",thai:"th",turkish:"tr",ukrainian:"uk",urdu:"ur",vietnamese:"vi",welsh:"cy"},bW=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({audio:a,mediaType:b,providerOptions:d}){var e,f;let g=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:d,schema:bT}),h=new FormData,i=a instanceof Uint8Array?new Blob([a]):new Blob([(0,c.convertBase64ToUint8Array)(a)]);h.append("model",this.modelId);let j=(0,c.mediaTypeToExtension)(b);h.append("file",new File([i],"audio",{type:b}),`audio.${j}`),"whisper-1"===this.modelId&&h.append("response_format","verbose_json");let k="gpt-4o-transcribe-diarize"===this.modelId,l=null!=(e=null==g?void 0:g.chunkingStrategy)?e:k?"auto":void 0;if(g){let a=["gpt-4o-transcribe","gpt-4o-mini-transcribe"].includes(this.modelId);for(let[b,c]of Object.entries({include:g.include,language:g.language,prompt:g.prompt,..."whisper-1"!==this.modelId&&{response_format:null!=(f=g.responseFormat)?f:k?"diarized_json":a?"json":"verbose_json"},temperature:g.temperature,timestamp_granularities:g.timestampGranularities}))if(null!=c)if(Array.isArray(c))for(let a of c)h.append(`${b}[]`,String(a));else h.append(b,String(c))}else k&&h.append("response_format","diarized_json");return null!=l&&h.append("chunking_strategy","string"==typeof l?l:JSON.stringify({type:l.type,...null!=l.threshold&&{threshold:l.threshold},...null!=l.prefixPaddingMs&&{prefix_padding_ms:l.prefixPaddingMs},...null!=l.silenceDurationMs&&{silence_duration_ms:l.silenceDurationMs}})),{formData:h,warnings:[]}}async doGenerate(a){var b,d,e,g,i,j,k,l,m,n,o;if(bU(this.modelId))throw new f.UnsupportedFunctionalityError({functionality:`non-streaming transcription with ${this.modelId}`});let p=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{formData:q,warnings:r}=await this.getArgs(a),{value:s,responseHeaders:t,rawValue:u}=await (0,c.postFormDataToApi)({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:(0,c.combineHeaders)(null==(i=(g=this.config).headers)?void 0:i.call(g),a.headers),formData:q,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bS),abortSignal:a.abortSignal,fetch:this.config.fetch}),v=null!=s.language&&s.language in bV?bV[s.language]:void 0,w=null==(j=s.segments)?void 0:j.flatMap(a=>"speaker"in a?[{text:a.text,startSecond:a.start,endSecond:a.end,speaker:a.speaker}]:[]);return{text:s.text,segments:null!=(n=null!=(m=null==(k=s.segments)?void 0:k.map(a=>({text:a.text,startSecond:a.start,endSecond:a.end})))?m:null==(l=s.words)?void 0:l.map(a=>({text:a.word,startSecond:a.start,endSecond:a.end})))?n:[],language:v,durationInSeconds:null!=(o=s.duration)?o:void 0,warnings:r,response:{timestamp:p,modelId:this.modelId,headers:t,body:u},...null!=w&&w.length>0&&{providerMetadata:{openai:{segments:w}}}}}async doStream(a){var b,d,e,g,h,i,j;if(!bU(this.modelId))throw new f.UnsupportedFunctionalityError({functionality:`streaming transcription with ${this.modelId}`});let k=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,l=await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a.providerOptions,schema:bT}),m=[],n=null!=(h=null==(g=a.providerOptions)?void 0:g.openai)?h:{};for(let a of["include","prompt","temperature","timestampGranularities"])null!=n[a]&&m.push({type:"unsupported",feature:`providerOptions.openai.${a}`,details:`OpenAI streaming transcription does not support ${a}.`});let o=(0,c.combineHeaders)(null==(j=(i=this.config).headers)?void 0:j.call(i),a.headers),p=function({modelId:a,inputAudioFormat:b,providerOptions:c}){var d,e;return{type:"session.update",session:{type:"transcription",audio:{input:{format:{type:b.type,...null!=b.rate?{rate:b.rate}:{}},transcription:{model:a,...(null==c?void 0:c.language)!=null?{language:c.language}:{},...(null==(d=null==c?void 0:c.streaming)?void 0:d.delay)!=null?{delay:c.streaming.delay}:{}},turn_detection:null}},...(null==(e=null==c?void 0:c.streaming)?void 0:e.include)!=null?{include:c.streaming.include}:{}}}}({modelId:this.modelId,inputAudioFormat:a.inputAudioFormat,providerOptions:l});return{request:{body:p},response:{timestamp:k,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,sessionUpdate:e,language:f,warnings:g,audio:h,abortSignal:i,includeRawChunks:j}){let k=!1,l=()=>{};return new ReadableStream({start:m=>{let n,o,p=function(a){var b;let c;for(let[b,d]of Object.entries(a))"authorization"===b.toLowerCase()&&null!=d&&(c=d);let d=null==(b=null==c?void 0:c.match(/^bearer\s+(.+)$/i))?void 0:b[1];return null==d?{protocols:["realtime"],headers:a}:{protocols:["realtime",`openai-insecure-api-key.${d}`],headers:Object.fromEntries(Object.entries(a).filter(([a])=>"authorization"!==a.toLowerCase()))}}(d);l=a=>{null!=n?n.cancel().catch(()=>{}):h.cancel().catch(()=>{}),null==o||o.close(a)};let q=a=>{k||(k=!0,l(),m.error(a))},r=async a=>{n=h.getReader();try{for(;;){let{done:b,value:d}=await n.read();if(b||k)break;a.send(JSON.stringify({type:"input_audio_buffer.append",audio:(0,c.convertToBase64)(d)})),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{n.releaseLock(),n=void 0}k||a.send(JSON.stringify({type:"input_audio_buffer.commit"}))};o=(0,c.connectToWebSocket)({url:b,protocols:p.protocols,headers:p.headers,webSocket:a,abortSignal:i,onAbort:q,onProcessingError:q,onOpen:a=>{m.enqueue({type:"stream-start",warnings:g}),a.send(JSON.stringify(e)),r(a).catch(q)},onMessageText:async a=>{var b,d,e,g,h,i;let n=await (0,c.safeParseJSON)({text:a});if(!n.success)return;let o=n.value;switch(j&&m.enqueue({type:"raw",rawValue:o}),o.type){case"conversation.item.input_audio_transcription.delta":m.enqueue({type:"transcript-delta",id:o.item_id,delta:null!=(b=o.delta)?b:""});break;case"conversation.item.input_audio_transcription.completed":h=null!=(d=o.transcript)?d:"",i=o.item_id,k||(k=!0,null!=i&&m.enqueue({type:"transcript-final",id:i,text:h}),m.enqueue({type:"finish",text:h,segments:[],language:f}),m.close(),l(1e3));break;case"error":q(Error(null!=(g=null==(e=o.error)?void 0:e.message)?g:"OpenAI realtime error"))}},onSocketError:()=>{q(Error("OpenAI realtime transcription error"))},onClose:()=>{k||(k=!0,l(),m.close())}})},cancel:()=>{k||(k=!0,l())}})}({webSocket:this.config.webSocket,url:(0,c.toWebSocketUrl)(this.config.url({path:"/realtime?intent=transcription",modelId:this.modelId})),headers:o,sessionUpdate:p,language:null==l?void 0:l.language,warnings:m,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bX=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),bY=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async doStream(a){var b,d,e,g,h;if(null==a.targetLanguage)throw new f.InvalidArgumentError({argument:"targetLanguage",message:`targetLanguage is required for translation model '${this.modelId}'.`});let i=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date;await (0,c.parseProviderOptions)({provider:"openai",providerOptions:a.providerOptions,schema:bX});let j=[];(function(a){if("audio/pcm"!==a.type||null!=a.rate&&24e3!==a.rate)throw new f.InvalidArgumentError({argument:"inputAudioFormat",message:"The OpenAI Realtime translation API only supports 24kHz 16-bit PCM input audio."})})(a.inputAudioFormat),null!=a.sourceLanguage&&j.push({type:"unsupported",feature:"sourceLanguage",details:"The OpenAI Realtime translation API auto-detects the source language and does not accept a source language."}),null!=a.outputAudioFormat&&j.push({type:"unsupported",feature:"outputAudioFormat",details:"The OpenAI Realtime translation API always outputs 24kHz 16-bit PCM audio and does not accept an output audio format."});let k=(0,c.combineHeaders)(null==(h=(g=this.config).headers)?void 0:h.call(g),a.headers),l=function({targetLanguage:a}){return{type:"session.update",session:{audio:{input:{transcription:{model:"gpt-realtime-whisper"},noise_reduction:null},output:{language:a}}}}}({targetLanguage:a.targetLanguage});return{request:{body:l},response:{timestamp:i,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,sessionUpdate:e,warnings:f,audio:g,abortSignal:h,includeRawChunks:i}){let j=!1,k=()=>{};return new ReadableStream({start:l=>{let m,n,o=function(a){var b;let c;for(let[b,d]of Object.entries(a))"authorization"===b.toLowerCase()&&null!=d&&(c=d);let d=null==(b=null==c?void 0:c.match(/^bearer\s+(.+)$/i))?void 0:b[1];return null==d?{protocols:["realtime"],headers:a}:{protocols:["realtime",`openai-insecure-api-key.${d}`],headers:Object.fromEntries(Object.entries(a).filter(([a])=>"authorization"!==a.toLowerCase()))}}(d),p="",q="";k=a=>{null!=m?m.cancel().catch(()=>{}):g.cancel().catch(()=>{}),null==n||n.close(a)};let r=a=>{j||(j=!0,k(),l.error(a))},s=async a=>{m=g.getReader();try{for(;;){let{done:b,value:d}=await m.read();if(b||j)break;a.send(JSON.stringify({type:"session.input_audio_buffer.append",audio:(0,c.convertToBase64)(d)})),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{m.releaseLock(),m=void 0}j||a.send(JSON.stringify({type:"session.close"}))};n=(0,c.connectToWebSocket)({url:b,protocols:o.protocols,headers:o.headers,webSocket:a,abortSignal:h,onAbort:r,onProcessingError:r,onOpen:a=>{l.enqueue({type:"stream-start",warnings:f}),a.send(JSON.stringify(e)),s(a).catch(r)},onMessageText:async a=>{var b,d,e,f,g,h;if(j)return;let m=await (0,c.safeParseJSON)({text:a});if(!m.success)return;let n=m.value;switch(i&&l.enqueue({type:"raw",rawValue:n}),n.type){case"session.output_audio.delta":n.delta&&l.enqueue({type:"audio",audio:n.delta});break;case"session.output_transcript.delta":q+=null!=(b=n.delta)?b:"",l.enqueue({type:"output-text-delta",delta:null!=(d=n.delta)?d:""});break;case"session.input_transcript.delta":p+=null!=(e=n.delta)?e:"",l.enqueue({type:"source-transcript-delta",delta:null!=(f=n.delta)?f:""});break;case"session.closed":j||(j=!0,""!==p&&l.enqueue({type:"source-transcript-final",text:p}),""!==q&&l.enqueue({type:"output-text-final",text:q}),l.enqueue({type:"finish",sourceText:p,outputText:q,usage:void 0}),l.close(),k(1e3));break;case"error":l.enqueue({type:"error",error:Error(null!=(h=null==(g=n.error)?void 0:g.message)?h:"OpenAI realtime error")})}},onSocketError:()=>{r(Error("OpenAI realtime translation error"))},onClose:({code:a,reason:b})=>{j||r(Error(`OpenAI realtime translation WebSocket closed unexpectedly before finishing (code ${null!=a?a:"unknown"}${b?`, reason: ${b}`:""}).`))}})},cancel:()=>{j||(j=!0,k())}})}({webSocket:this.config.webSocket,url:(0,c.toWebSocketUrl)(this.config.url({path:`/realtime/translations?model=${encodeURIComponent(this.modelId)}`,modelId:this.modelId})),headers:k,sessionUpdate:l,warnings:j,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}},bZ=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),name:e.z.string().nullish(),description:e.z.string().nullish(),default_version:e.z.string().nullish(),latest_version:e.z.string().nullish(),created_at:e.z.number(),updated_at:e.z.number().nullish()})));(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),version:e.z.string().nullish(),name:e.z.string().nullish(),description:e.z.string().nullish()})));var b$=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}async uploadSkill(a){let b=[];null!=a.displayTitle&&b.push({type:"unsupported",feature:"displayTitle"});let d=new FormData;for(let b of a.files){let a=(0,c.convertInlineFileDataToUint8Array)(b.data);d.append("files[]",new Blob([a]),b.path)}let{value:e}=await (0,c.postFormDataToApi)({url:this.config.url({path:"/skills"}),headers:(0,c.combineHeaders)(this.config.headers()),formData:d,failedResponseHandler:h,successfulResponseHandler:(0,c.createJsonResponseHandler)(bZ),fetch:this.config.fetch});return{providerReference:{openai:e.id},...null!=e.name?{name:e.name}:{},...null!=e.description?{description:e.description}:{},...null!=e.latest_version?{latestVersion:e.latest_version}:{},providerMetadata:{openai:{...null!=e.default_version?{defaultVersion:e.default_version}:{},...null!=e.created_at?{createdAt:e.created_at}:{},...null!=e.updated_at?{updatedAt:e.updated_at}:{}}},warnings:b}}};function b_(a={}){var b,d;let e=null!=(b=(0,c.withoutTrailingSlash)((0,c.validateBaseURL)((0,c.loadOptionalSetting)({settingValue:a.baseURL,environmentVariableName:"OPENAI_BASE_URL"}))))?b:"https://api.openai.com/v1",f=null!=(d=a.name)?d:"openai",g=()=>(0,c.withUserAgentSuffix)({Authorization:`Bearer ${(0,c.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":a.organization,"OpenAI-Project":a.project,...a.headers},"ai-sdk/openai/4.0.60"),h=b=>new H(b,{provider:`${f}.embedding`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),i=b=>new T(b,{provider:`${f}.image`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),j=b=>new bW(b,{provider:`${f}.transcription`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,webSocket:a.webSocket}),k=b=>new bY(b,{provider:`${f}.speech-translation`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,webSocket:a.webSocket}),l=b=>new bR(b,{provider:`${f}.speech`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),m=a=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return n(a)},n=b=>new bJ(b,{provider:`${f}.responses`,baseURL:e,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch,fileIdPrefixes:["file-"]}),o=b=>new bP(b,{provider:`${f}.realtime`,baseURL:e,headers:g,fetch:a.fetch}),p=Object.assign(a=>o(a),{getToken:async a=>{let b=o(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),q=function(a){return m(a)};return q.specificationVersion="v4",q.languageModel=m,q.chat=b=>new w(b,{provider:`${f}.chat`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.completion=b=>new D(b,{provider:`${f}.completion`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.responses=n,q.embedding=h,q.embeddingModel=h,q.textEmbedding=h,q.textEmbeddingModel=h,q.image=i,q.imageModel=i,q.transcription=j,q.transcriptionModel=j,q.translation=k,q.speechTranslationModel=k,q.speech=l,q.speechModel=l,q.files=()=>new M({provider:`${f}.files`,baseURL:e,headers:g,fetch:a.fetch}),q.skills=()=>new b$({provider:`${f}.skills`,url:({path:a})=>`${e}${a}`,headers:g,fetch:a.fetch}),q.experimental_realtime=p,q.tools=aU,q}b_(),a.s(["createOpenAI",0,b_])},655819,a=>{"use strict";var b=a.i(652685),c=a.i(527990),d=a.i(912735),e=a.i(53112),f=e.z.object({imageDetail:e.z.enum(["low","high","auto"]).optional()});async function g(a){var d;let e=[];for(let{role:g,content:h}of a)switch(g){case"system":e.push({role:"system",content:h});break;case"user":{if(1===h.length&&"text"===h[0].type){e.push({role:"user",content:h[0].text});break}let a=[];for(let d of h)switch(d.type){case"text":a.push({type:"text",text:d.text});break;case"file":switch(d.data.type){case"reference":a.push({type:"file",file:{file_id:(0,c.resolveProviderReference)({reference:d.data.reference,provider:"xai"})}});break;case"text":throw new b.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":if("image"===(0,c.getTopLevelMediaType)(d.mediaType)){let b=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d.providerOptions,schema:f});a.push({type:"image_url",image_url:{url:"url"===d.data.type?d.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:d})};base64,${(0,c.convertToBase64)(d.data.data)}`,...(null==b?void 0:b.imageDetail)!=null&&{detail:b.imageDetail}}})}else throw new b.UnsupportedFunctionalityError({functionality:`file part media type ${d.mediaType}`})}}e.push({role:"user",content:a});break}case"assistant":{let a="",b=[];for(let c of h)switch(c.type){case"text":a+=c.text;break;case"tool-call":b.push({id:c.toolCallId,type:"function",function:{name:c.toolName,arguments:JSON.stringify(c.input)}})}e.push({role:"assistant",content:a,tool_calls:b.length>0?b:void 0});break}case"tool":for(let a of h){let b;if("tool-approval-response"===a.type)continue;let c=a.output;switch(c.type){case"text":case"error-text":b=c.value;break;case"execution-denied":b=null!=(d=c.reason)?d:"Tool call execution denied.";break;case"content":case"json":case"error-json":b=JSON.stringify(c.value)}e.push({role:"tool",tool_call_id:a.toolCallId,content:b})}break;default:throw Error(`Unsupported role: ${g}`)}return{messages:e,warnings:[]}}function h(a){var b,c,d,e;let f=null!=(c=null==(b=a.prompt_tokens_details)?void 0:b.cached_tokens)?c:0,g=null!=(e=null==(d=a.completion_tokens_details)?void 0:d.reasoning_tokens)?e:0,h=f<=a.prompt_tokens;return{inputTokens:{total:h?a.prompt_tokens:a.prompt_tokens+f,noCache:h?a.prompt_tokens-f:a.prompt_tokens,cacheRead:f,cacheWrite:void 0},outputTokens:{total:a.completion_tokens+g,text:a.completion_tokens,reasoning:g},raw:a}}function i({id:a,model:b,created:d,created_at:e}){return(0,c.createLanguageModelResponseMetadata)({id:a,model:b,created:null!=d?d:e})}function j(a){switch(a){case"stop":return"stop";case"length":return"length";case"tool_calls":case"function_call":return"tool-calls";case"content_filter":return"content-filter";default:return"other"}}var k=/^grok-4\.20(-\d{4})?-(non-)?reasoning$/,l=e.z.object({type:e.z.literal("web"),country:e.z.string().length(2).optional(),excludedWebsites:e.z.array(e.z.string()).max(5).optional(),allowedWebsites:e.z.array(e.z.string()).max(5).optional(),safeSearch:e.z.boolean().optional()}),m=e.z.object({type:e.z.literal("x"),excludedXHandles:e.z.array(e.z.string()).optional(),includedXHandles:e.z.array(e.z.string()).optional(),postFavoriteCount:e.z.number().int().optional(),postViewCount:e.z.number().int().optional(),xHandles:e.z.array(e.z.string()).optional()}),n=e.z.object({type:e.z.literal("news"),country:e.z.string().length(2).optional(),excludedWebsites:e.z.array(e.z.string()).max(5).optional(),safeSearch:e.z.boolean().optional()}),o=e.z.object({type:e.z.literal("rss"),links:e.z.array(e.z.string().url()).max(1)}),p=e.z.discriminatedUnion("type",[l,m,n,o]),q=e.z.object({reasoningEffort:e.z.enum(["none","low","medium","high","xhigh"]).optional(),logprobs:e.z.boolean().optional(),topLogprobs:e.z.number().int().min(0).max(8).optional(),serviceTier:e.z.enum(["default","priority"]).optional(),parallel_function_calling:e.z.boolean().optional(),searchParameters:e.z.object({mode:e.z.enum(["off","auto","on"]),returnCitations:e.z.boolean().optional(),fromDate:e.z.string().optional(),toDate:e.z.string().optional(),maxSearchResults:e.z.number().min(1).max(50).optional(),sources:e.z.array(p).optional()}).optional()}),r=e.z.object({error:e.z.object({message:e.z.string(),type:e.z.string().nullish(),param:e.z.any().nullish(),code:e.z.union([e.z.string(),e.z.number()]).nullish()})}),s=e.z.object({code:e.z.string(),error:e.z.string()}),t=e.z.object({error:e.z.string()}),u=e.z.union([r,s,t]),v=(0,c.createJsonErrorResponseHandler)({errorSchema:u,errorToMessage:a=>"string"==typeof a.error?"code"in a?`${a.code}: ${a.error}`:a.error:a.error.message});function w(a){if(Array.isArray(a))return a.map(w);if(null==a||"object"!=typeof a)return a;let b={};for(let[c,d]of Object.entries(a))("additionalProperties"!==c||!1!==d)&&(b[c]=w(d));return b}var x=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:d,temperature:e,topP:f,topK:h,frequencyPenalty:i,presencePenalty:j,stopSequences:l,seed:m,reasoning:n,responseFormat:o,providerOptions:p,tools:r,toolChoice:s}){var t,u,v,x;let y=[],z=null!=(t=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:p,schema:q}))?t:{};null!=h&&y.push({type:"unsupported",feature:"topK"}),null!=i&&y.push({type:"unsupported",feature:"frequencyPenalty"}),null!=j&&y.push({type:"unsupported",feature:"presencePenalty"}),null!=l&&y.push({type:"unsupported",feature:"stopSequences"});let{messages:A,warnings:B}=await g(a);y.push(...B);let{tools:C,toolChoice:D,toolWarnings:E}=function({tools:a,toolChoice:c}){a=(null==a?void 0:a.length)?a:void 0;let d=[];if(null==a)return{tools:void 0,toolChoice:void 0,toolWarnings:d};let e=[];for(let b of a)"provider"===b.type?d.push({type:"unsupported",feature:`provider-defined tool ${b.name}`}):e.push({type:"function",function:{name:b.name,description:b.description,parameters:w(b.inputSchema),...null!=b.strict?{strict:b.strict}:{}}});if(null==c)return{tools:e,toolChoice:void 0,toolWarnings:d};let f=c.type;switch(f){case"auto":case"none":return{tools:e,toolChoice:f,toolWarnings:d};case"required":return{tools:e,toolChoice:"required",toolWarnings:d};case"tool":return{tools:e,toolChoice:{type:"function",function:{name:c.toolName}},toolWarnings:d};default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${f}`})}}({tools:r,toolChoice:s});y.push(...E);let F=z.reasoningEffort;return null==F&&(0,c.isCustomReasoning)(n)&&((x=this.modelId,k.test(x))?y.push({type:"unsupported",feature:"reasoning",details:`reasoning "${n}" is not supported by this model.`}):F="none"===n?"none":(0,c.mapReasoningToProviderEffort)({reasoning:n,effortMap:{minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"grok-4.6"===this.modelId?"xhigh":"high"},warnings:y})),{args:{model:this.modelId,logprobs:!0===z.logprobs||null!=z.topLogprobs||void 0,top_logprobs:z.topLogprobs,max_completion_tokens:d,temperature:e,top_p:f,seed:m,reasoning_effort:F,service_tier:z.serviceTier,parallel_function_calling:z.parallel_function_calling,response_format:(null==o?void 0:o.type)==="json"?null!=o.schema?{type:"json_schema",json_schema:{name:null!=(u=o.name)?u:"response",schema:o.schema,strict:!0}}:{type:"json_object"}:void 0,search_parameters:z.searchParameters?{mode:z.searchParameters.mode,return_citations:z.searchParameters.returnCitations,from_date:z.searchParameters.fromDate,to_date:z.searchParameters.toDate,max_search_results:z.searchParameters.maxSearchResults,sources:null==(v=z.searchParameters.sources)?void 0:v.map(a=>{var b;return{type:a.type,..."web"===a.type&&{country:a.country,excluded_websites:a.excludedWebsites,allowed_websites:a.allowedWebsites,safe_search:a.safeSearch},..."x"===a.type&&{excluded_x_handles:a.excludedXHandles,included_x_handles:null!=(b=a.includedXHandles)?b:a.xHandles,post_favorite_count:a.postFavoriteCount,post_view_count:a.postViewCount},..."news"===a.type&&{country:a.country,excluded_websites:a.excludedWebsites,safe_search:a.safeSearch},..."rss"===a.type&&{links:a.links}}})}:void 0,messages:A,tools:C,tool_choice:D},warnings:y}}async doGenerate(a){var d,e,f,g;let{args:k,warnings:l}=await this.getArgs(a),m=`${null!=(d=this.config.baseURL)?d:"https://api.x.ai/v1"}/chat/completions`,{responseHeaders:n,value:o,rawValue:p}=await (0,c.postJsonToApi)({url:m,headers:(0,c.combineHeaders)(null==(f=(e=this.config).headers)?void 0:f.call(e),a.headers),body:k,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(z),abortSignal:a.abortSignal,fetch:this.config.fetch});if(null!=o.error)throw new b.APICallError({message:o.error,url:m,requestBodyValues:k,statusCode:200,responseHeaders:n,responseBody:JSON.stringify(p),isRetryable:"The service is currently unavailable"===o.code});let q=o.choices[0],r=[];if(null!=q.message.content&&q.message.content.length>0){let a=q.message.content,b=k.messages[k.messages.length-1];(null==b?void 0:b.role)==="assistant"&&a===b.content&&(a=""),a.length>0&&r.push({type:"text",text:a})}if(null!=q.message.reasoning_content&&q.message.reasoning_content.length>0&&r.push({type:"reasoning",text:q.message.reasoning_content}),null!=q.message.tool_calls)for(let a of q.message.tool_calls)r.push({type:"tool-call",toolCallId:a.id,toolName:a.function.name,input:a.function.arguments});if(null!=o.citations)for(let a of o.citations)r.push({type:"source",sourceType:"url",id:this.config.generateId(),url:a});return{content:r,finishReason:{unified:j(q.finish_reason),raw:null!=(g=q.finish_reason)?g:void 0},usage:o.usage?h(o.usage):{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...null!=o.service_tier&&{providerMetadata:{xai:{serviceTier:o.service_tier}}},request:{body:k},response:{...i(o),headers:n,body:p},warnings:l}}async doStream(a){var d,e,f;let g,k,l,{args:m,warnings:n}=await this.getArgs(a),o={...m,stream:!0,stream_options:{include_usage:!0}},p=`${null!=(d=this.config.baseURL)?d:"https://api.x.ai/v1"}/chat/completions`,{responseHeaders:q,value:r}=await (0,c.postJsonToApi)({url:p,headers:(0,c.combineHeaders)(null==(f=(e=this.config).headers)?void 0:f.call(e),a.headers),body:o,failedResponseHandler:v,successfulResponseHandler:async({response:a})=>{let d=(0,c.extractResponseHeaders)(a),e=a.headers.get("content-type");if(null==e?void 0:e.includes("application/json")){let e=await a.text(),f=await (0,c.safeParseJSON)({text:e,schema:B});if(f.success)throw new b.APICallError({message:f.value.error,url:p,requestBodyValues:o,statusCode:200,responseHeaders:d,responseBody:e,isRetryable:"The service is currently unavailable"===f.value.code});throw new b.APICallError({message:"Invalid JSON response",url:p,requestBodyValues:o,statusCode:200,responseHeaders:d,responseBody:e})}return(0,c.createEventSourceResponseHandler)(A)({response:a,url:p,requestBodyValues:o})},abortSignal:a.abortSignal,fetch:this.config.fetch}),s={unified:"other",raw:void 0},t=!0,u={},w={},x=this;return{stream:r.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:n})},transform(b,c){if(a.includeRawChunks&&c.enqueue({type:"raw",rawValue:b.rawValue}),!b.success)return void c.enqueue({type:"error",error:b.error});let d=b.value;if(t&&(c.enqueue({type:"response-metadata",...i(d)}),t=!1),null!=d.citations)for(let a of d.citations)c.enqueue({type:"source",sourceType:"url",id:x.config.generateId(),url:a});null!=d.usage&&(g=h(d.usage)),null!=d.service_tier&&(k=d.service_tier);let e=d.choices[0];if((null==e?void 0:e.finish_reason)!=null&&(s={unified:j(e.finish_reason),raw:e.finish_reason}),(null==e?void 0:e.delta)==null)return;let f=e.delta,m=e.index;if(null!=f.content&&f.content.length>0){let a=f.content;null==l||u[l].ended||(c.enqueue({type:"reasoning-end",id:l}),u[l].ended=!0,l=void 0);let b=o.messages[o.messages.length-1];if((null==b?void 0:b.role)==="assistant"&&a===b.content)return;let e=`text-${d.id||m}`;null==u[e]&&(u[e]={type:"text",ended:!1},c.enqueue({type:"text-start",id:e})),c.enqueue({type:"text-delta",id:e,delta:a})}if(null!=f.reasoning_content&&f.reasoning_content.length>0){let a=`reasoning-${d.id||m}`;if(w[a]===f.reasoning_content)return;w[a]=f.reasoning_content,null==u[a]&&(u[a]={type:"reasoning",ended:!1},l=a,c.enqueue({type:"reasoning-start",id:a})),c.enqueue({type:"reasoning-delta",id:a,delta:f.reasoning_content})}if(null!=f.tool_calls)for(let a of(null==l||u[l].ended||(c.enqueue({type:"reasoning-end",id:l}),u[l].ended=!0,l=void 0),f.tool_calls)){let b=a.id;c.enqueue({type:"tool-input-start",id:b,toolName:a.function.name}),c.enqueue({type:"tool-input-delta",id:b,delta:a.function.arguments}),c.enqueue({type:"tool-input-end",id:b}),c.enqueue({type:"tool-call",toolCallId:b,toolName:a.function.name,input:a.function.arguments})}},flush(a){for(let[b,c]of Object.entries(u))c.ended||a.enqueue({type:"text"===c.type?"text-end":"reasoning-end",id:b});a.enqueue({type:"finish",finishReason:s,usage:null!=g?g:{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...null!=k&&{providerMetadata:{xai:{serviceTier:k}}}})}})),request:{body:o},response:{headers:q}}}},y=e.z.object({prompt_tokens:e.z.number(),completion_tokens:e.z.number(),total_tokens:e.z.number(),cost_in_usd_ticks:e.z.number().nullish(),prompt_tokens_details:e.z.object({text_tokens:e.z.number().nullish(),audio_tokens:e.z.number().nullish(),image_tokens:e.z.number().nullish(),cached_tokens:e.z.number().nullish()}).catchall(e.z.json()).nullish(),completion_tokens_details:e.z.object({reasoning_tokens:e.z.number().nullish(),audio_tokens:e.z.number().nullish(),accepted_prediction_tokens:e.z.number().nullish(),rejected_prediction_tokens:e.z.number().nullish()}).catchall(e.z.json()).nullish()}).catchall(e.z.json()),z=e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({message:e.z.object({role:e.z.enum(["assistant","tool"]),content:e.z.string().nullish(),reasoning_content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish()}),index:e.z.number(),finish_reason:e.z.string().nullish()})).nullish(),object:e.z.literal("chat.completion").nullish(),usage:y.nullish(),citations:e.z.array(e.z.string().url()).nullish(),service_tier:e.z.string().nullish(),code:e.z.string().nullish(),error:e.z.string().nullish()}),A=e.z.object({id:e.z.string().nullish(),created:e.z.number().nullish(),model:e.z.string().nullish(),choices:e.z.array(e.z.object({delta:e.z.object({role:e.z.enum(["assistant"]).optional(),content:e.z.string().nullish(),reasoning_content:e.z.string().nullish(),tool_calls:e.z.array(e.z.object({id:e.z.string(),type:e.z.literal("function"),function:e.z.object({name:e.z.string(),arguments:e.z.string()})})).nullish()}),finish_reason:e.z.string().nullish(),index:e.z.number()})),usage:y.nullish(),citations:e.z.array(e.z.string().url()).nullish(),service_tier:e.z.string().nullish()}),B=e.z.object({code:e.z.string(),error:e.z.string()}),C=e.z.object({aspect_ratio:e.z.string().optional(),output_format:e.z.string().optional(),sync_mode:e.z.boolean().optional(),resolution:e.z.enum(["1k","2k"]).optional(),quality:e.z.enum(["low","medium","high"]).optional(),user:e.z.string().optional()}),D=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxImagesPerCall=3}get provider(){return this.config.provider}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}async doGenerate({prompt:a,n:b,size:d,aspectRatio:e,seed:f,providerOptions:g,headers:h,abortSignal:i,files:j,mask:k}){var l,m,n,o,p,q,r;let s=[];null!=d&&s.push({type:"unsupported",feature:"size",details:"This model does not support the `size` option. Use `aspectRatio` instead."}),null!=f&&s.push({type:"unsupported",feature:"seed"}),null!=k&&s.push({type:"unsupported",feature:"mask"});let t=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:g,schema:C}),u=null!=j&&j.length>0,w=u?j.map(a=>(0,c.convertImageModelFileToDataUri)(a)):[],x={model:this.modelId,prompt:a,n:b,response_format:"b64_json"};null!=e&&(x.aspect_ratio=e),(null==t?void 0:t.output_format)!=null&&(x.output_format=t.output_format),(null==t?void 0:t.sync_mode)!=null&&(x.sync_mode=t.sync_mode),(null==t?void 0:t.aspect_ratio)!=null&&null==e&&(x.aspect_ratio=t.aspect_ratio),(null==t?void 0:t.resolution)!=null&&(x.resolution=t.resolution),(null==t?void 0:t.quality)!=null&&(x.quality=t.quality),(null==t?void 0:t.user)!=null&&(x.user=t.user),1===w.length?x.image={url:w[0],type:"image_url"}:w.length>1&&(x.images=w.map(a=>({url:a,type:"image_url"})));let y=null!=(l=this.config.baseURL)?l:"https://api.x.ai/v1",z=null!=(o=null==(n=null==(m=this.config._internal)?void 0:m.currentDate)?void 0:n.call(m))?o:new Date,{value:A,responseHeaders:B}=await (0,c.postJsonToApi)({url:`${y}${u?"/images/edits":"/images/generations"}`,headers:(0,c.combineHeaders)(null==(q=(p=this.config).headers)?void 0:q.call(p),h),body:x,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(E),abortSignal:i,fetch:this.config.fetch});if(A.data.some(a=>!1===a.respect_moderation))throw Error("Image generation was blocked due to a content policy violation.");return{images:A.data.every(a=>null!=a.b64_json)?A.data.map(a=>a.b64_json):await Promise.all(A.data.map(a=>this.downloadImage(a.url,i))),warnings:s,response:{timestamp:z,modelId:this.modelId,headers:B},providerMetadata:{xai:{images:A.data.map(a=>({...a.revised_prompt?{revisedPrompt:a.revised_prompt}:{}})),...(null==(r=A.usage)?void 0:r.cost_in_usd_ticks)!=null?{costInUsdTicks:A.usage.cost_in_usd_ticks}:{}}}}}async downloadImage(a,b){let{value:d}=await (0,c.getFromApi)({url:a,validateUrl:!0,trustedOrigin:this.config.baseURL,abortSignal:b,failedResponseHandler:(0,c.createStatusCodeErrorResponseHandler)(),successfulResponseHandler:(0,c.createBinaryResponseHandler)(),fetch:this.config.fetch});return d}},E=e.z.object({data:e.z.array(e.z.object({url:e.z.string().nullish(),b64_json:e.z.string().nullish(),revised_prompt:e.z.string().nullish(),respect_moderation:e.z.boolean().nullish()})),usage:e.z.object({cost_in_usd_ticks:e.z.number().nullish()}).nullish()}),F=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),bytes:e.z.number().nullish(),created_at:e.z.number().nullish(),expires_at:e.z.number().nullish(),filename:e.z.string().nullish(),purpose:e.z.string().nullish(),status:e.z.string().nullish()}))),G=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({id:e.z.string(),object:e.z.string().nullish(),deleted:e.z.boolean()})));async function H({prompt:a}){var d,e,g,h,i,j,k,l,m;let n=[],o=[];for(let p of a)switch(p.role){case"system":n.push({role:"system",content:p.content});break;case"user":{let a=[];for(let d of p.content)switch(d.type){case"text":a.push({type:"input_text",text:d.text});break;case"file":switch(d.data.type){case"reference":a.push({type:"input_file",file_id:(0,c.resolveProviderReference)({reference:d.data.reference,provider:"xai"})});break;case"text":throw new b.UnsupportedFunctionalityError({functionality:"text file parts"});case"url":case"data":if("image"===(0,c.getTopLevelMediaType)(d.mediaType)){let b="url"===d.data.type?d.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:d})};base64,${(0,c.convertToBase64)(d.data.data)}`,e=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d.providerOptions,schema:f});a.push({type:"input_image",image_url:b,...(null==e?void 0:e.imageDetail)!=null&&{detail:e.imageDetail}})}else if("url"===d.data.type)a.push({type:"input_file",file_url:d.data.url.toString()});else throw new b.UnsupportedFunctionalityError({functionality:`file part media type ${d.mediaType} as inline data (xAI Responses requires a URL or a Files API reference for non-image files)`})}break;default:o.push({type:"other",message:"xAI Responses API does not support this content type in user messages"})}n.push({role:"user",content:a});break}case"assistant":for(let a of p.content)switch(a.type){case"text":{let b="string"==typeof(null==(e=null==(d=a.providerOptions)?void 0:d.xai)?void 0:e.itemId)?a.providerOptions.xai.itemId:void 0;n.push({role:"assistant",content:a.text,id:b});break}case"tool-call":{if(a.providerExecuted)break;let b="string"==typeof(null==(h=null==(g=a.providerOptions)?void 0:g.xai)?void 0:h.itemId)?a.providerOptions.xai.itemId:void 0;n.push({type:"function_call",id:null!=b?b:a.toolCallId,call_id:a.toolCallId,name:a.toolName,arguments:JSON.stringify(a.input),status:"completed"});break}case"tool-result":break;case"reasoning":{let b="string"==typeof(null==(j=null==(i=a.providerOptions)?void 0:i.xai)?void 0:j.itemId)?a.providerOptions.xai.itemId:void 0,c="string"==typeof(null==(l=null==(k=a.providerOptions)?void 0:k.xai)?void 0:l.reasoningEncryptedContent)?a.providerOptions.xai.reasoningEncryptedContent:void 0;if(null!=b||null!=c){let d=[];a.text.length>0&&d.push({type:"summary_text",text:a.text}),n.push({type:"reasoning",id:null!=b?b:"",summary:d,status:"completed",...null!=c&&{encrypted_content:c}})}else o.push({type:"other",message:"Reasoning parts without itemId or encrypted content cannot be sent back to xAI. Skipping."});break}case"reasoning-file":case"custom":case"file":o.push({type:"other",message:`xAI Responses API does not support ${a.type} in assistant messages`});break;default:o.push({type:"other",message:"xAI Responses API does not support this content type in assistant messages"})}break;case"tool":for(let a of p.content){let b;if("tool-approval-response"===a.type)continue;let d=a.output;switch(d.type){case"text":case"error-text":b=d.value;break;case"execution-denied":b=null!=(m=d.reason)?m:"tool execution denied";break;case"json":case"error-json":b=JSON.stringify(d.value);break;case"content":for(let a of(b=[],d.value))switch(a.type){case"text":b.push({type:"input_text",text:a.text});break;case"file":"image"===(0,c.getTopLevelMediaType)(a.mediaType)&&("data"===a.data.type||"url"===a.data.type)&&b.push({type:"input_image",image_url:"url"===a.data.type?a.data.url.toString():`data:${(0,c.resolveFullMediaType)({part:a})};base64,${(0,c.convertToBase64)(a.data.data)}`})}break;default:b=""}n.push({type:"function_call_output",call_id:a.toolCallId,output:b})}break;default:o.push({type:"other",message:"unsupported message role"})}return{input:n,inputWarnings:o}}function I(a){var b,c,d,e;let f=null!=(c=null==(b=a.input_tokens_details)?void 0:b.cached_tokens)?c:0,g=null!=(e=null==(d=a.output_tokens_details)?void 0:d.reasoning_tokens)?e:0,h=f<=a.input_tokens;return{inputTokens:{total:h?a.input_tokens:a.input_tokens+f,noCache:h?a.input_tokens-f:a.input_tokens,cacheRead:f,cacheWrite:void 0},outputTokens:{total:a.output_tokens,text:a.output_tokens-g,reasoning:g},raw:a}}function J(a){switch(a){case"stop":case"completed":return"stop";case"length":case"max_output_tokens":return"length";case"tool_calls":case"function_call":return"tool-calls";case"content_filter":return"content-filter";default:return"other"}}var K=e.z.union([e.z.object({type:e.z.literal("url_citation"),url:e.z.string(),title:e.z.string().optional()}),e.z.object({type:e.z.string()})]),L=e.z.object({type:e.z.string(),text:e.z.string().optional(),logprobs:e.z.array(e.z.any()).optional(),annotations:e.z.array(K).optional()}),M=e.z.object({type:e.z.string(),text:e.z.string()}),N=e.z.object({name:e.z.string().optional(),arguments:e.z.string().optional(),input:e.z.string().optional(),call_id:e.z.string().optional(),id:e.z.string(),status:e.z.string(),action:e.z.any().optional()}),O=e.z.object({type:e.z.literal("url"),url:e.z.string()}),P=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().nullish(),queries:e.z.array(e.z.string()).nullish(),sources:e.z.array(e.z.unknown()).nullish()}),e.z.object({type:e.z.literal("open_page"),url:e.z.string().nullish(),sources:e.z.array(e.z.unknown()).nullish()}),e.z.object({type:e.z.literal("find_in_page"),url:e.z.string().nullish(),pattern:e.z.string().nullish(),sources:e.z.array(e.z.unknown()).nullish()})]),Q=e.z.object({name:e.z.string().optional(),arguments:e.z.string().optional(),output:e.z.string().optional(),error:e.z.string().optional(),id:e.z.string(),status:e.z.string(),server_label:e.z.string().optional()}),R=e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("web_search_call"),...N.shape}),e.z.object({type:e.z.literal("x_search_call"),...N.shape}),e.z.object({type:e.z.literal("code_interpreter_call"),...N.shape}),e.z.object({type:e.z.literal("code_execution_call"),...N.shape}),e.z.object({type:e.z.literal("view_image_call"),...N.shape}),e.z.object({type:e.z.literal("view_x_video_call"),...N.shape}),e.z.object({type:e.z.literal("file_search_call"),id:e.z.string(),status:e.z.string(),queries:e.z.array(e.z.string()).optional(),results:e.z.array(e.z.object({file_id:e.z.string(),filename:e.z.string(),score:e.z.number(),text:e.z.string()})).nullish()}),e.z.object({type:e.z.literal("image_generation_call"),id:e.z.string(),status:e.z.string(),prompt:e.z.string().nullish(),result:e.z.string().nullish()}),e.z.object({type:e.z.literal("custom_tool_call"),...N.shape}),e.z.object({type:e.z.literal("mcp_call"),...Q.shape}),e.z.object({type:e.z.literal("message"),role:e.z.string(),content:e.z.array(L),id:e.z.string(),status:e.z.string()}),e.z.object({type:e.z.literal("function_call"),name:e.z.string(),arguments:e.z.string(),call_id:e.z.string(),id:e.z.string()}),e.z.object({type:e.z.literal("reasoning"),id:e.z.string(),summary:e.z.array(M),content:e.z.array(e.z.object({type:e.z.string(),text:e.z.string()})).nullish(),status:e.z.string(),encrypted_content:e.z.string().nullish()})]),S=e.z.object({input_tokens:e.z.number(),output_tokens:e.z.number(),total_tokens:e.z.number().optional(),input_tokens_details:e.z.object({cached_tokens:e.z.number().optional()}).catchall(e.z.json()).optional(),output_tokens_details:e.z.object({reasoning_tokens:e.z.number().optional()}).catchall(e.z.json()).optional(),num_sources_used:e.z.number().optional(),num_server_side_tools_used:e.z.number().optional(),cost_in_usd_ticks:e.z.number().nullish()}).catchall(e.z.json()),T=e.z.object({id:e.z.string().nullish(),created_at:e.z.number().nullish(),model:e.z.string().nullish(),object:e.z.literal("response"),output:e.z.array(R),usage:S.nullish(),status:e.z.string(),service_tier:e.z.string().nullish()}),U=e.z.union([e.z.object({type:e.z.literal("response.created"),response:T.partial({usage:!0,status:!0})}),e.z.object({type:e.z.literal("response.in_progress"),response:T.partial({usage:!0,status:!0})}),e.z.object({type:e.z.literal("response.output_item.added"),item:R,output_index:e.z.number()}),e.z.object({type:e.z.literal("response.output_item.done"),item:R,output_index:e.z.number()}),e.z.object({type:e.z.literal("response.content_part.added"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),part:L}),e.z.object({type:e.z.literal("response.content_part.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),part:L}),e.z.object({type:e.z.literal("response.output_text.delta"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),delta:e.z.string(),logprobs:e.z.array(e.z.any()).optional()}),e.z.object({type:e.z.literal("response.output_text.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),text:e.z.string(),logprobs:e.z.array(e.z.any()).optional(),annotations:e.z.array(K).optional()}),e.z.object({type:e.z.literal("response.output_text.annotation.added"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),annotation_index:e.z.number(),annotation:K}),e.z.object({type:e.z.literal("response.reasoning_summary_part.added"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),part:M}),e.z.object({type:e.z.literal("response.reasoning_summary_part.done"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),part:M}),e.z.object({type:e.z.literal("response.reasoning_summary_text.delta"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_summary_text.done"),item_id:e.z.string(),output_index:e.z.number(),summary_index:e.z.number(),text:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_text.delta"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.reasoning_text.done"),item_id:e.z.string(),output_index:e.z.number(),content_index:e.z.number(),text:e.z.string()}),e.z.object({type:e.z.literal("response.web_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.web_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.web_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.x_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.searching"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.file_search_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.generating"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.image_generation_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_execution_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.interpreting"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.code_interpreter_call_code.done"),item_id:e.z.string(),output_index:e.z.number(),code:e.z.string()}),e.z.object({type:e.z.literal("response.custom_tool_call_input.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.custom_tool_call_input.done"),item_id:e.z.string(),output_index:e.z.number(),input:e.z.string()}),e.z.object({type:e.z.literal("response.function_call_arguments.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.function_call_arguments.done"),item_id:e.z.string(),output_index:e.z.number(),arguments:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call.in_progress"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.executing"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.completed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call.failed"),item_id:e.z.string(),output_index:e.z.number()}),e.z.object({type:e.z.literal("response.mcp_call_arguments.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call_arguments.done"),item_id:e.z.string(),output_index:e.z.number(),arguments:e.z.string().optional()}),e.z.object({type:e.z.literal("response.mcp_call_output.delta"),item_id:e.z.string(),output_index:e.z.number(),delta:e.z.string()}),e.z.object({type:e.z.literal("response.mcp_call_output.done"),item_id:e.z.string(),output_index:e.z.number(),output:e.z.string().optional()}),e.z.object({type:e.z.literal("response.incomplete"),response:e.z.object({incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:S.nullish(),service_tier:e.z.string().nullish()})}),e.z.object({type:e.z.literal("response.failed"),response:e.z.object({error:e.z.object({code:e.z.string().nullish(),message:e.z.string()}).nullish(),incomplete_details:e.z.object({reason:e.z.string()}).nullish(),usage:S.nullish()})}),e.z.object({type:e.z.literal("error"),code:e.z.string().nullish(),message:e.z.string(),param:e.z.string().nullish()}),e.z.object({type:e.z.literal("response.done"),response:T}),e.z.object({type:e.z.literal("response.completed"),response:T})]),V=e.z.object({reasoningEffort:e.z.enum(["none","low","medium","high","xhigh"]).optional(),reasoningSummary:e.z.enum(["auto","concise","detailed"]).optional(),logprobs:e.z.boolean().optional(),topLogprobs:e.z.number().int().min(0).max(8).optional(),serviceTier:e.z.enum(["default","priority"]).optional(),store:e.z.boolean().optional(),previousResponseId:e.z.string().optional(),include:e.z.array(e.z.enum(["file_search_call.results"])).nullish()}),W=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({vectorStoreIds:e.z.array(e.z.string()),maxNumResults:e.z.number().optional()}))),X=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({queries:e.z.array(e.z.string()),results:e.z.array(e.z.object({fileId:e.z.string(),filename:e.z.string(),score:e.z.number().min(0).max(1),text:e.z.string()})).nullable()}))),Y=(0,c.createProviderExecutedToolFactory)({id:"xai.file_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:X}),Z=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.enum(["auto","generate","edit"]).optional()}))),$=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),_=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({result:e.z.string(),prompt:e.z.string().optional()}))),aa=(0,c.createProviderExecutedToolFactory)({id:"xai.image_generation",inputSchema:$,outputSchema:_}),ab=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({serverUrl:e.z.string().describe("The URL of the MCP server"),serverLabel:e.z.string().optional().describe("A label for the MCP server"),serverDescription:e.z.string().optional().describe("Description of the MCP server"),allowedTools:e.z.array(e.z.string()).optional().describe("List of allowed tool names"),headers:e.z.record(e.z.string(),e.z.string()).optional().describe("Custom headers to send"),authorization:e.z.string().optional().describe("Authorization header value")}))),ac=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({name:e.z.string(),arguments:e.z.string(),result:e.z.unknown()}))),ad=(0,c.createProviderExecutedToolFactory)({id:"xai.mcp",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:ac}),ae=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({allowedDomains:e.z.array(e.z.string()).max(5).optional(),excludedDomains:e.z.array(e.z.string()).max(5).optional(),enableImageSearch:e.z.boolean().optional(),enableImageUnderstanding:e.z.boolean().optional()}))),af=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({action:e.z.discriminatedUnion("type",[e.z.object({type:e.z.literal("search"),query:e.z.string().optional(),queries:e.z.array(e.z.string()).optional()}),e.z.object({type:e.z.literal("openPage"),url:e.z.string().nullish()}),e.z.object({type:e.z.literal("findInPage"),url:e.z.string().nullish(),pattern:e.z.string().nullish()})]).optional(),sources:e.z.array(e.z.object({type:e.z.literal("url"),url:e.z.string()})).optional()}))),ag=(0,c.createProviderExecutedToolFactory)({id:"xai.web_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:af}),ah=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({allowedXHandles:e.z.array(e.z.string()).max(10).optional(),excludedXHandles:e.z.array(e.z.string()).max(10).optional(),fromDate:e.z.string().optional(),toDate:e.z.string().optional(),enableImageUnderstanding:e.z.boolean().optional(),enableVideoUnderstanding:e.z.boolean().optional()}))),ai=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({query:e.z.string(),posts:e.z.array(e.z.object({author:e.z.string(),text:e.z.string(),url:e.z.string(),likes:e.z.number()}))}))),aj=(0,c.createProviderExecutedToolFactory)({id:"xai.x_search",inputSchema:(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({}))),outputSchema:ai});async function ak({tools:a,toolChoice:d}){let e=(null==a?void 0:a.length)?a:void 0,f=[];if(null==e)return{tools:void 0,toolChoice:void 0,toolWarnings:f};let g=[],h=new Map;for(let a of e)if(h.set(a.name,a),"provider"===a.type)switch(a.id){case"xai.web_search":{let b=await (0,c.validateTypes)({value:a.args,schema:ae});g.push({type:"web_search",allowed_domains:b.allowedDomains,excluded_domains:b.excludedDomains,enable_image_search:b.enableImageSearch,enable_image_understanding:b.enableImageUnderstanding});break}case"xai.x_search":{let b=await (0,c.validateTypes)({value:a.args,schema:ah});g.push({type:"x_search",allowed_x_handles:b.allowedXHandles,excluded_x_handles:b.excludedXHandles,from_date:b.fromDate,to_date:b.toDate,enable_image_understanding:b.enableImageUnderstanding,enable_video_understanding:b.enableVideoUnderstanding});break}case"xai.code_execution":g.push({type:"code_interpreter"});break;case"xai.view_image":g.push({type:"view_image"});break;case"xai.view_x_video":g.push({type:"view_x_video"});break;case"xai.image_generation":{let b=await (0,c.validateTypes)({value:a.args,schema:Z});g.push({type:"image_generation",action:b.action});break}case"xai.file_search":{let b=await (0,c.validateTypes)({value:a.args,schema:W});g.push({type:"file_search",vector_store_ids:b.vectorStoreIds,max_num_results:b.maxNumResults});break}case"xai.mcp":{let b=await (0,c.validateTypes)({value:a.args,schema:ab});g.push({type:"mcp",server_url:b.serverUrl,server_label:b.serverLabel,server_description:b.serverDescription,allowed_tools:b.allowedTools,headers:b.headers,authorization:b.authorization});break}default:f.push({type:"unsupported",feature:`provider-defined tool ${a.name}`})}else g.push({type:"function",name:a.name,description:a.description,parameters:w(a.inputSchema),...null!=a.strict?{strict:a.strict}:{}});if(null==d)return{tools:g,toolChoice:void 0,toolWarnings:f};let i=d.type;switch(i){case"auto":case"none":return{tools:g,toolChoice:i,toolWarnings:f};case"required":return{tools:g,toolChoice:"required",toolWarnings:f};case"tool":{let a=h.get(d.toolName);if(null==a)return{tools:g,toolChoice:void 0,toolWarnings:f};if("provider"===a.type)return f.push({type:"unsupported",feature:`toolChoice for server-side tool "${a.name}"`}),{tools:g,toolChoice:void 0,toolWarnings:f};return{tools:g,toolChoice:{type:"function",name:a.name},toolWarnings:f}}default:throw new b.UnsupportedFunctionalityError({functionality:`tool choice type: ${i}`})}}function al({message:a,code:b,eventType:d,data:e}){var f,g;let h,i="number"==typeof(h="string"==typeof(f=b)&&/^\d{3}$/.test(f)?Number(f):f)&&Number.isInteger(h)&&h>=400&&h<=599?h:void 0;return(0,c.createProviderStreamError)({message:a,type:d,code:null!=b?b:void 0,...null!=i?{statusCode:i,isRetryable:408===(g=i)||409===g||429===g||g>=500}:function(a){switch(a){case"rate_limit_exceeded":case"rate_limit_error":return{statusCode:429,isRetryable:!0};case"insufficient_quota":return{statusCode:429,isRetryable:!1};case"api_error":case"internal_server_error":case"server_error":return{statusCode:500,isRetryable:!0};case"overloaded_error":case"service_unavailable":return{statusCode:503,isRetryable:!0};case"timeout":case"timeout_error":return{statusCode:504,isRetryable:!0};case"authentication_error":case"invalid_api_key":return{statusCode:401,isRetryable:!1};case"permission_error":return{statusCode:403,isRetryable:!1};case"not_found_error":case"model_not_found":return{statusCode:404,isRetryable:!1};case"bad_request":case"context_length_exceeded":case"invalid_request_error":return{statusCode:400,isRetryable:!1};default:return{}}}(b),data:e})}var am=class a{constructor(a,b){this.specificationVersion="v4",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/],"text/*":[/^https?:\/\/.*$/]},this.modelId=a,this.config=b}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({prompt:a,maxOutputTokens:b,temperature:d,topP:e,topK:f,frequencyPenalty:g,presencePenalty:h,stopSequences:i,seed:j,responseFormat:l,providerOptions:m,tools:n,toolChoice:o,reasoning:p}){var q,r,s,t,u,v,w,x,y,z;let A=[],B=null!=(q=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:m,schema:V}))?q:{};null!=f&&A.push({type:"unsupported",feature:"topK"}),null!=g&&A.push({type:"unsupported",feature:"frequencyPenalty"}),null!=h&&A.push({type:"unsupported",feature:"presencePenalty"}),null!=i&&A.push({type:"unsupported",feature:"stopSequences"});let C=null==(r=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.web_search"===a.id))?void 0:r.name,D=null==(s=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.x_search"===a.id))?void 0:s.name,E=null==(t=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.code_execution"===a.id))?void 0:t.name,F=null==(u=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.mcp"===a.id))?void 0:u.name,G=null==(v=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.file_search"===a.id))?void 0:v.name,I=null==(w=null==n?void 0:n.find(a=>"provider"===a.type&&"xai.image_generation"===a.id))?void 0:w.name,{input:J,inputWarnings:K}=await H({prompt:a,store:null==(x=B.store)||x});A.push(...K);let{tools:L,toolChoice:M,toolWarnings:N}=await ak({tools:n,toolChoice:o});A.push(...N);let O=B.include?[...B.include]:void 0;!1===B.store&&(O=null==O?["reasoning.encrypted_content"]:[...O,"reasoning.encrypted_content"]);let P=B.reasoningEffort;null==P&&(0,c.isCustomReasoning)(p)&&((z=this.modelId,k.test(z))?A.push({type:"unsupported",feature:"reasoning",details:`reasoning "${p}" is not supported by this model.`}):P="none"===p?"none":(0,c.mapReasoningToProviderEffort)({reasoning:p,effortMap:{minimal:"low",low:"low",medium:"medium",high:"high",xhigh:"grok-4.6"===this.modelId?"xhigh":"high"},warnings:A}));let Q={model:this.modelId,input:J,logprobs:!0===B.logprobs||null!=B.topLogprobs||void 0,top_logprobs:B.topLogprobs,max_output_tokens:b,temperature:d,top_p:e,seed:j,...(null==l?void 0:l.type)==="json"&&{text:{format:null!=l.schema?{type:"json_schema",strict:!0,name:null!=(y=l.name)?y:"response",description:l.description,schema:l.schema}:{type:"json_object"}}},...(null!=P||null!=B.reasoningSummary)&&{reasoning:{...null!=P&&{effort:P},...null!=B.reasoningSummary&&{summary:B.reasoningSummary}}},...!1===B.store&&{store:B.store},...null!=O&&{include:O},...null!=B.previousResponseId&&{previous_response_id:B.previousResponseId},...null!=B.serviceTier&&{service_tier:B.serviceTier}};return L&&L.length>0&&(Q.tools=L),null!=M&&(Q.tool_choice=M),{args:Q,warnings:A,webSearchToolName:C,xSearchToolName:D,codeExecutionToolName:E,mcpToolName:F,fileSearchToolName:G,imageGenerationToolName:I}}async doGenerate(a){var b,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u;let{args:w,warnings:x,webSearchToolName:y,xSearchToolName:z,codeExecutionToolName:A,mcpToolName:B,fileSearchToolName:C,imageGenerationToolName:D}=await this.getArgs(a),{responseHeaders:E,value:F,rawValue:G}=await (0,c.postJsonToApi)({url:`${null!=(b=this.config.baseURL)?b:"https://api.x.ai/v1"}/responses`,headers:(0,c.combineHeaders)(null==(e=(d=this.config).headers)?void 0:e.call(d),a.headers),body:w,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(T),abortSignal:a.abortSignal,fetch:this.config.fetch}),H=[],K=!1,L=["web_search","web_search_with_snippets","browse_page"],M=["x_user_search","x_keyword_search","x_semantic_search","x_thread_fetch"];for(let a of F.output){if("file_search_call"===a.type){let b=null!=C?C:"file_search";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:"",providerExecuted:!0}),H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:{queries:null!=(f=a.queries)?f:[],results:null!=(h=null==(g=a.results)?void 0:g.map(a=>({fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?h:null}});continue}if("image_generation_call"===a.type){let b=null!=D?D:"image_generation";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:"{}",providerExecuted:!0}),null!=a.result?H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:{result:a.result,...null!=a.prompt&&{prompt:a.prompt}}}):H.push({type:"tool-result",toolCallId:a.id,toolName:b,isError:!0,result:`Image generation failed (status: ${a.status}).`});continue}if("web_search_call"===a.type||"x_search_call"===a.type||"code_interpreter_call"===a.type||"code_execution_call"===a.type||"view_image_call"===a.type||"view_x_video_call"===a.type||"custom_tool_call"===a.type||"mcp_call"===a.type){let b=null!=(j=a.name)?j:"";L.includes(null!=(k=a.name)?k:"")||"web_search_call"===a.type?b=null!=y?y:"web_search":M.includes(null!=(l=a.name)?l:"")||"x_search_call"===a.type?b=null!=z?z:"x_search":"code_execution"===a.name||"code_interpreter_call"===a.type||"code_execution_call"===a.type?b=null!=A?A:"code_execution":"mcp_call"===a.type&&(b=null!=(m=null!=B?B:a.name)?m:"mcp");let c="custom_tool_call"===a.type?null!=(n=a.input)?n:"":"mcp_call"===a.type?null!=(o=a.arguments)?o:"":null!=(p=a.arguments)?p:"";H.push({type:"tool-call",toolCallId:a.id,toolName:b,input:c,providerExecuted:!0}),"web_search_call"===a.type&&H.push({type:"tool-result",toolCallId:a.id,toolName:b,result:an(a.action)});continue}switch(a.type){case"message":for(let b of a.content)if(b.text&&H.push({type:"text",text:b.text}),b.annotations)for(let a of b.annotations)"url_citation"===a.type&&"url"in a&&H.push({type:"source",sourceType:"url",id:this.config.generateId(),url:a.url,title:null!=(q=a.title)?q:a.url});break;case"function_call":K=!0,H.push({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments});break;case"reasoning":{let b=(a.summary.length>0?a.summary.map(a=>a.text):(null!=(r=a.content)?r:[]).map(a=>a.text)).filter(a=>a&&a.length>0).join("");if(b||a.encrypted_content){let c=a.encrypted_content||a.id;H.push({type:"reasoning",text:b,...c&&{providerMetadata:{xai:{...a.encrypted_content&&{reasoningEncryptedContent:a.encrypted_content},...a.id&&{itemId:a.id}}}}})}}}}return{content:H,finishReason:{unified:K?"tool-calls":J(F.status),raw:null!=(s=F.status)?s:void 0},usage:F.usage?I(F.usage):{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...((null==(t=F.usage)?void 0:t.cost_in_usd_ticks)!=null||null!=F.service_tier)&&{providerMetadata:{xai:{...(null==(u=F.usage)?void 0:u.cost_in_usd_ticks)!=null&&{costInUsdTicks:F.usage.cost_in_usd_ticks},...null!=F.service_tier&&{serviceTier:F.service_tier}}}},request:{body:w},response:{...i(F),headers:E,body:G},warnings:x}}async doStream(a){var b,d,e;let f,g,h,{args:j,warnings:k,webSearchToolName:l,xSearchToolName:m,codeExecutionToolName:n,mcpToolName:o,fileSearchToolName:p,imageGenerationToolName:q}=await this.getArgs(a),r={...j,stream:!0},{responseHeaders:s,value:t}=await (0,c.postJsonToApi)({url:`${null!=(b=this.config.baseURL)?b:"https://api.x.ai/v1"}/responses`,headers:(0,c.combineHeaders)(null==(e=(d=this.config).headers)?void 0:e.call(d),a.headers),body:r,failedResponseHandler:v,successfulResponseHandler:(0,c.createEventSourceResponseHandler)(U),abortSignal:a.abortSignal,fetch:this.config.fetch}),u={unified:"other",raw:void 0},w=!1,x=!0,y={},z=new Set,A={},B={},C=this;return{stream:t.pipeThrough(new TransformStream({start(a){a.enqueue({type:"stream-start",warnings:k})},transform(b,c){var d,e,j,k,r,s,t,v,D,E,F,G,H,K,L,M,N;if(a.includeRawChunks&&c.enqueue({type:"raw",rawValue:b.rawValue}),!b.success)return void c.enqueue({type:"error",error:b.error});let O=b.value;if("response.created"===O.type||"response.in_progress"===O.type){x&&(c.enqueue({type:"response-metadata",...i(O.response)}),x=!1);return}if("response.reasoning_summary_part.added"===O.type){let a=`reasoning-${O.item_id}`;null==B[O.item_id]&&(B[O.item_id]={},c.enqueue({type:"reasoning-start",id:a,providerMetadata:{xai:{itemId:O.item_id}}}))}if("response.reasoning_summary_text.delta"===O.type){let a=`reasoning-${O.item_id}`;c.enqueue({type:"reasoning-delta",id:a,delta:O.delta,providerMetadata:{xai:{itemId:O.item_id}}});return}if("response.reasoning_summary_text.done"===O.type)return;if("response.reasoning_text.delta"===O.type){let a=`reasoning-${O.item_id}`;null==B[O.item_id]&&(B[O.item_id]={},c.enqueue({type:"reasoning-start",id:a,providerMetadata:{xai:{itemId:O.item_id}}})),c.enqueue({type:"reasoning-delta",id:a,delta:O.delta,providerMetadata:{xai:{itemId:O.item_id}}});return}if("response.reasoning_text.done"!==O.type){if("response.output_text.delta"===O.type){let a=`text-${O.item_id}`;null==y[a]&&(y[a]={type:"text"},c.enqueue({type:"text-start",id:a})),c.enqueue({type:"text-delta",id:a,delta:O.delta});return}if("response.output_text.done"===O.type){if(O.annotations)for(let a of O.annotations)"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(d=a.title)?d:a.url});return}if("response.output_text.annotation.added"===O.type){let a=O.annotation;"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(e=a.title)?e:a.url});return}if("response.done"===O.type||"response.completed"===O.type||"response.incomplete"===O.type){let a=O.response;if(a.usage&&(f=I(a.usage),g=null!=(j=a.usage.cost_in_usd_ticks)?j:void 0),h=null!=(k=a.service_tier)?k:void 0,"response.incomplete"===O.type){let b="incomplete_details"in a?null==(r=a.incomplete_details)?void 0:r.reason:void 0;u={unified:b?J(b):"other",raw:null!=b?b:"incomplete"}}else"status"in a&&a.status&&(u={unified:w?"tool-calls":J(a.status),raw:a.status});return}if("response.failed"===O.type){let a=null==(s=O.response.incomplete_details)?void 0:s.reason;u={unified:a?J(a):"error",raw:null!=a?a:"error"},O.response.usage&&(f=I(O.response.usage)),null!=O.response.error&&c.enqueue({type:"error",error:al({message:O.response.error.message,code:O.response.error.code,eventType:O.type,data:O})});return}if("error"===O.type)return void c.enqueue({type:"error",error:al({message:O.message,code:O.code,eventType:O.type,data:O})});if("response.custom_tool_call_input.delta"!==O.type&&"response.custom_tool_call_input.done"!==O.type){if("response.function_call_arguments.delta"===O.type){let a=A[O.output_index];null!=a&&c.enqueue({type:"tool-input-delta",id:a.toolCallId,delta:O.delta});return}if("response.function_call_arguments.done"!==O.type){if("response.image_generation_call.in_progress"===O.type||"response.image_generation_call.generating"===O.type||"response.image_generation_call.completed"===O.type){if(!z.has(O.item_id)){z.add(O.item_id);let a=null!=q?q:"image_generation";c.enqueue({type:"tool-input-start",id:O.item_id,toolName:a}),c.enqueue({type:"tool-input-delta",id:O.item_id,delta:"{}"}),c.enqueue({type:"tool-input-end",id:O.item_id}),c.enqueue({type:"tool-call",toolCallId:O.item_id,toolName:a,input:"{}",providerExecuted:!0})}return}if("response.output_item.added"===O.type||"response.output_item.done"===O.type){let a=O.item;if("reasoning"===a.type){if("response.output_item.done"===O.type){let b=`reasoning-${a.id}`;a.id in B||(B[a.id]={},c.enqueue({type:"reasoning-start",id:b,providerMetadata:{xai:{...a.id&&{itemId:a.id}}}})),c.enqueue({type:"reasoning-end",id:b,providerMetadata:{xai:{...a.encrypted_content&&{reasoningEncryptedContent:a.encrypted_content},...a.id&&{itemId:a.id}}}}),delete B[a.id]}return}if("file_search_call"===a.type){let b=null!=p?p:"file_search";z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:""}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:"",providerExecuted:!0})),"response.output_item.done"===O.type&&c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:{queries:null!=(t=a.queries)?t:[],results:null!=(D=null==(v=a.results)?void 0:v.map(a=>({fileId:a.file_id,filename:a.filename,score:a.score,text:a.text})))?D:null}});return}if("image_generation_call"===a.type){let b=null!=q?q:"image_generation";z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:"{}"}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:"{}",providerExecuted:!0})),"response.output_item.done"===O.type&&(null!=a.result?c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:{result:a.result,...null!=a.prompt&&{prompt:a.prompt}}}):c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,isError:!0,result:`Image generation failed (status: ${a.status}).`}));return}if("web_search_call"===a.type||"x_search_call"===a.type||"code_interpreter_call"===a.type||"code_execution_call"===a.type||"view_image_call"===a.type||"view_x_video_call"===a.type||"custom_tool_call"===a.type||"mcp_call"===a.type){let b=null!=(E=a.name)?E:"";["web_search","web_search_with_snippets","browse_page"].includes(null!=(F=a.name)?F:"")||"web_search_call"===a.type?b=null!=l?l:"web_search":["x_user_search","x_keyword_search","x_semantic_search","x_thread_fetch"].includes(null!=(G=a.name)?G:"")||"x_search_call"===a.type?b=null!=m?m:"x_search":"code_execution"===a.name||"code_interpreter_call"===a.type||"code_execution_call"===a.type?b=null!=n?n:"code_execution":"mcp_call"===a.type&&(b=null!=(H=null!=o?o:a.name)?H:"mcp");let d="custom_tool_call"===a.type?null!=(K=a.input)?K:"":"mcp_call"===a.type?null!=(L=a.arguments)?L:"":null!=(M=a.arguments)?M:"";("custom_tool_call"===a.type?"response.output_item.done"!==O.type:z.has(a.id))||z.has(a.id)||(z.add(a.id),c.enqueue({type:"tool-input-start",id:a.id,toolName:b}),c.enqueue({type:"tool-input-delta",id:a.id,delta:d}),c.enqueue({type:"tool-input-end",id:a.id}),c.enqueue({type:"tool-call",toolCallId:a.id,toolName:b,input:d,providerExecuted:!0})),"response.output_item.done"===O.type&&c.enqueue({type:"tool-result",toolCallId:a.id,toolName:b,result:"web_search_call"===a.type?an(a.action):{}});return}if("message"===a.type)for(let b of a.content){if(b.text&&b.text.length>0){let d=`text-${a.id}`;null==y[d]&&(y[d]={type:"text"},c.enqueue({type:"text-start",id:d}),c.enqueue({type:"text-delta",id:d,delta:b.text}))}if(b.annotations)for(let a of b.annotations)"url_citation"===a.type&&"url"in a&&c.enqueue({type:"source",sourceType:"url",id:C.config.generateId(),url:a.url,title:null!=(N=a.title)?N:a.url})}else"function_call"===a.type&&("response.output_item.added"===O.type?(A[O.output_index]={toolName:a.name,toolCallId:a.call_id},c.enqueue({type:"tool-input-start",id:a.call_id,toolName:a.name})):"response.output_item.done"===O.type&&(w=!0,A[O.output_index]=void 0,c.enqueue({type:"tool-input-end",id:a.call_id}),c.enqueue({type:"tool-call",toolCallId:a.call_id,toolName:a.name,input:a.arguments})))}}}}},flush(a){for(let[b,c]of Object.entries(y))"text"===c.type&&a.enqueue({type:"text-end",id:b});a.enqueue({type:"finish",finishReason:u,usage:null!=f?f:{inputTokens:{total:0,noCache:0,cacheRead:0,cacheWrite:0},outputTokens:{total:0,text:0,reasoning:0}},...(null!=g||null!=h)&&{providerMetadata:{xai:{...null!=g&&{costInUsdTicks:g},...null!=h&&{serviceTier:h}}}}})}})),request:{body:r},response:{headers:s}}}};function an(a){var b;let c=P.safeParse(a);if(!c.success)return{};let d=c.data,e=null==(b=d.sources)?void 0:b.flatMap(a=>{let b=O.safeParse(a);return b.success?[b.data]:[]}),f=null!=e&&e.length>0?{sources:e}:{};switch(d.type){case"search":return{action:{type:"search",...null!=d.query&&{query:d.query},...null!=d.queries&&{queries:d.queries}},...f};case"open_page":return{action:{type:"openPage",url:d.url},...f};case"find_in_page":return{action:{type:"findInPage",url:d.url,pattern:d.pattern},...f}}}var ao=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({inputFileExpiresAfter:e.z.number().int().min(3600).max(2592e3).optional()}))),ap=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({batch_id:e.z.string(),name:e.z.string().nullish(),create_time:e.z.string().nullish(),expire_time:e.z.string().nullish(),cancel_time:e.z.string().nullish(),cancel_by_xai_message:e.z.string().nullish(),state:e.z.object({num_requests:e.z.number().nullish(),num_pending:e.z.number().nullish(),num_success:e.z.number().nullish(),num_error:e.z.number().nullish(),num_cancelled:e.z.number().nullish()}).nullish()}))),aq=e.z.object({code:e.z.union([e.z.string(),e.z.number()]).nullish(),message:e.z.string().nullish()}),ar=e.z.object({batch_request_id:e.z.string(),batch_result:e.z.object({response:e.z.object({chat_get_completion:e.z.unknown().nullish()}).nullish(),error:aq.nullish()}).nullish(),error_message:e.z.string().nullish()}),as=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({results:e.z.array(ar),pagination_token:e.z.string().nullish()}))),at=class{constructor(a){this.options=a}async startBatch(a){var b,d;let e=[],f=null==a.webhookUrl?[]:[{warning:{type:"unsupported",feature:"webhookUrl",details:"The xAI Batch API does not support per-batch webhook URLs."}}],g=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:ao});for(let b of a.requests){let a=await this.options.prepareRequest(b);for(let c of(e.push(JSON.stringify({custom_id:b.id,method:"POST",url:"/v1/responses",body:a.body}),"\n"),a.warnings))f.push({requestId:b.id,warning:c})}let h=new Blob(e,{type:"application/jsonl"});e.length=0;let i=new FormData;(null==g?void 0:g.inputFileExpiresAfter)!=null&&i.append("expires_after",String(g.inputFileExpiresAfter)),i.append("file",h,"batch.jsonl");let j=(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),{value:k}=await (0,c.postFormDataToApi)({url:this.getUrl("/files"),headers:j,formData:i,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:a.abortSignal,fetch:this.options.config.fetch}),{value:l}=await (0,c.postJsonToApi)({url:this.getUrl("/batches"),headers:j,body:{name:"ai-sdk-text-batch",input_file_id:k.id},failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(ap),abortSignal:a.abortSignal,fetch:this.options.config.fetch});return{batchId:l.batch_id,...av(l),providerMetadata:{xai:{inputFileId:k.id,...null!=k.expires_at?{inputFileExpiresAt:new Date(1e3*k.expires_at).toISOString()}:{}}},warnings:f}}async getBatchStatus(a){return av(await this.retrieveBatch(a))}async getBatchResults(a){if("pending"===av(await this.retrieveBatch(a)).status)throw new b.InvalidArgumentError({argument:"batchId",message:`xAI batch "${a.batchId}" is not complete.`});return(0,c.convertAsyncIteratorToReadableStream)(this.iterateBatchResults(a))}async retrieveBatch(a){var b,d;let{value:e}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(ap),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});return e}async *iterateBatchResults(a){var b,d,e;let f;do{let g=new URLSearchParams({limit:String(1e3)});null!=f&&g.set("pagination_token",f);let{value:h}=await (0,c.getFromApi)({url:this.getUrl(`/batches/${encodeURIComponent(a.batchId)}/results?${g}`),headers:(0,c.combineHeaders)(null==(d=(b=this.options.config).headers)?void 0:d.call(b),a.headers),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(as),abortSignal:a.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});for(let a of h.results)yield await this.convertBatchResult(a);f=null!=(e=h.pagination_token)?e:void 0}while(null!=f)}async convertBatchResult(a){var b,d,e,f,g,k,l,m,n;let o=null==(b=a.batch_result)?void 0:b.error;if((null!=(e=null==(d=a.error_message)?void 0:d.length)?e:0)>0||(null==o?void 0:o.code)!=null&&0!==o.code&&"0"!==o.code||(null==o?void 0:o.code)==null&&(null!=(g=null==(f=null==o?void 0:o.message)?void 0:f.length)?g:0)>0){let b,c,d=(b=null==(m=(l=a).batch_result)?void 0:m.error,{message:l.error_message||(null==b?void 0:b.message)||"xAI batch request failed.",...(null==b?void 0:b.code)!=null&&0!==b.code&&"0"!==b.code?{code:String(b.code)}:{}});return{id:a.batch_request_id,status:(c=String(n=null==o?void 0:o.code).toLowerCase(),1===n||"1"===c||"cancelled"===c||"batch_cancelled"===c)?"cancelled":"failed",error:d}}let p=null==(k=a.batch_result)?void 0:k.response;if((null==p?void 0:p.chat_get_completion)!=null){let b=await (0,c.safeValidateTypes)({value:p.chat_get_completion,schema:z});if(!b.success)return aw(a.batch_request_id);let d=function(a){var b,d,e,f,g,k;let l;if(null!=a.error)return{success:!1,error:{message:a.error,...null!=a.code?{code:a.code}:{}}};let m=a.choices;if(null==m||0===m.length)return{success:!1,error:{message:"xAI returned a batch response without any choices.",code:"invalid_response"}};let n=[],o=new Set(m.filter(a=>"tool"===a.message.role).flatMap(a=>{var b;return(null!=(b=a.message.tool_calls)?b:[]).map(a=>a.id)}));for(let a of m){if("tool"===a.message.role){if(null!=a.message.content)for(let c of null!=(b=a.message.tool_calls)?b:[])n.push({type:"tool-result",toolCallId:c.id,toolName:c.function.name,result:a.message.content,dynamic:!0});continue}for(let b of(l=a,a.message.content&&n.push({type:"text",text:a.message.content}),a.message.reasoning_content&&n.push({type:"reasoning",text:a.message.reasoning_content}),null!=(d=a.message.tool_calls)?d:[]))n.push({type:"tool-call",toolCallId:b.id,toolName:b.function.name,input:b.function.arguments,...o.has(b.id)?{providerExecuted:!0,dynamic:!0}:{}})}for(let b of null!=(e=a.citations)?e:[])n.push({type:"source",sourceType:"url",id:b,url:b});return{success:!0,result:{content:n,finishReason:{unified:j(null==l?void 0:l.finish_reason),raw:null!=(f=null==l?void 0:l.finish_reason)?f:void 0},usage:a.usage?h(a.usage):(0,c.createNullLanguageModelUsage)(),response:i(a),warnings:[],...((null==(g=a.usage)?void 0:g.cost_in_usd_ticks)!=null||null!=a.service_tier)&&{providerMetadata:{xai:{...(null==(k=a.usage)?void 0:k.cost_in_usd_ticks)!=null?{costInUsdTicks:a.usage.cost_in_usd_ticks}:{},...null!=a.service_tier?{serviceTier:a.service_tier}:{}}}}}}}(b.value);return d.success?{id:a.batch_request_id,status:"succeeded",result:d.result}:{id:a.batch_request_id,status:"failed",error:d.error}}return aw(a.batch_request_id)}getUrl(a){var b;return`${null!=(b=this.options.config.baseURL)?b:"https://api.x.ai/v1"}${a}`}},au=class a extends am{static[d.WORKFLOW_SERIALIZE](a){return am[d.WORKFLOW_SERIALIZE](a)}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}constructor(a,b){super(a,b),this.batch=new at({config:b,prepareRequest:async a=>{let{args:b,warnings:c}=await this.getArgs(a.options);return{body:b,warnings:c}}})}experimental_doStartBatch(a){return this.batch.startBatch(a)}experimental_doGetBatchStatus(a){return this.batch.getBatchStatus(a)}experimental_doGetBatchResults(a){return this.batch.getBatchResults(a)}};function av(a){var b,d,e,f,g,h;let i=(0,c.normalizeBatchRequestCounts)({total:null==(b=a.state)?void 0:b.num_requests,pending:null==(d=a.state)?void 0:d.num_pending,completed:null==(e=a.state)?void 0:e.num_success,failed:(null==(f=a.state)?void 0:f.num_error)!=null&&(null==(g=a.state)?void 0:g.num_cancelled)!=null?a.state.num_error+a.state.num_cancelled:void 0}),j=null!=a.cancel_time||null!=a.cancel_by_xai_message,k=function(a){if(null==a)return!1;let b=Date.parse(a);return!Number.isNaN(b)&&b<=Date.now()}(a.expire_time);return{status:j||k?"failed":null!=i&&i.total>0&&0===i.pending?"completed":"pending",...null!=i?{requestCounts:i}:{},...j?{error:{message:null!=(h=a.cancel_by_xai_message)?h:`xAI batch "${a.batch_id}" was cancelled.`,code:"batch_cancelled"}}:k?{error:{message:`xAI batch "${a.batch_id}" expired.`,code:"batch_expired"}}:{},...null!=a.create_time?{createdAt:a.create_time}:{},...null!=a.expire_time?{expiresAt:a.expire_time}:{}}}function aw(a){return{id:a,status:"failed",error:{message:"xAI returned an invalid Responses batch result.",code:"invalid_response"}}}function ax(a){var b;let c={};null!=a.instructions&&(c.instructions=a.instructions),null!=a.voice&&(c.voice=a.voice);let d={};if(null!=a.inputAudioFormat&&(d.input={format:{type:a.inputAudioFormat.type,...null!=a.inputAudioFormat.rate?{rate:a.inputAudioFormat.rate}:{}}}),null!=a.outputAudioFormat&&(d.output={format:{type:a.outputAudioFormat.type,...null!=a.outputAudioFormat.rate?{rate:a.outputAudioFormat.rate}:{}}}),Object.keys(d).length>0&&(c.audio=d),null!=a.turnDetection)if("disabled"===a.turnDetection.type)c.turn_detection=null;else{let b={type:"server_vad"};null!=a.turnDetection.threshold&&(b.threshold=a.turnDetection.threshold),null!=a.turnDetection.silenceDurationMs&&(b.silence_duration_ms=a.turnDetection.silenceDurationMs),null!=a.turnDetection.prefixPaddingMs&&(b.prefix_padding_ms=a.turnDetection.prefixPaddingMs),c.turn_detection=b}if(null!=a.tools&&a.tools.length>0&&(c.tools=a.tools.map(a=>({type:a.type,name:a.name,description:a.description,parameters:a.parameters}))),null!=a.providerOptions){let d=a.providerOptions;if(Array.isArray(d.tools)){let a=null!=(b=c.tools)?b:[];c.tools=[...a,...d.tools]}for(let[a,b]of Object.entries(d))"tools"!==a&&(c[a]=b)}return c}var ay=class{constructor(a,b){this.specificationVersion="v4",this.modelId=a,this.provider=b.provider,this.config=b}async doCreateClientSecret(a){var b;let c=null!=(b=this.config.fetch)?b:fetch,d=`${this.config.baseURL}/realtime/client_secrets`,e={};null!=a.expiresAfterSeconds&&(e.expires_after={seconds:a.expiresAfterSeconds});let f=await c(d,{method:"POST",headers:{...this.config.headers(),"Content-Type":"application/json"},body:JSON.stringify(e)});if(!f.ok){let a=await f.text();throw Error(`xAI realtime client secret request failed: ${f.status} ${a}`)}let g=await f.json();return{token:g.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:g.expires_at}}getWebSocketConfig(a){return{url:a.url,protocols:[`xai-client-secret.${a.token}`]}}parseServerEvent(a){return function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;let u=a.type;switch(u){case"session.created":return{type:"session-created",sessionId:null==(b=a.session)?void 0:b.id,raw:a};case"session.updated":return{type:"session-updated",raw:a};case"conversation.created":case"mcp_list_tools.in_progress":case"mcp_list_tools.completed":case"mcp_list_tools.failed":case"response.mcp_call_arguments.delta":case"response.mcp_call_arguments.done":case"response.mcp_call.in_progress":case"response.mcp_call.completed":case"response.mcp_call.failed":default:return{type:"custom",rawType:u,raw:a};case"input_audio_buffer.speech_started":return{type:"speech-started",itemId:a.item_id,raw:a};case"input_audio_buffer.speech_stopped":return{type:"speech-stopped",itemId:a.item_id,raw:a};case"input_audio_buffer.committed":return{type:"audio-committed",itemId:a.item_id,previousItemId:a.previous_item_id,raw:a};case"conversation.item.added":return{type:"conversation-item-added",itemId:null!=(d=null==(c=a.item)?void 0:c.id)?d:a.item_id,item:a.item,raw:a};case"conversation.item.input_audio_transcription.completed":return{type:"input-transcription-completed",itemId:a.item_id,transcript:null!=(e=a.transcript)?e:"",raw:a};case"response.created":return{type:"response-created",responseId:null!=(g=null==(f=a.response)?void 0:f.id)?g:a.response_id,raw:a};case"response.done":return{type:"response-done",responseId:null!=(i=null==(h=a.response)?void 0:h.id)?i:a.response_id,status:null!=(k=null==(j=a.response)?void 0:j.status)?k:"completed",raw:a};case"response.output_item.added":return{type:"output-item-added",responseId:a.response_id,itemId:null!=(m=null==(l=a.item)?void 0:l.id)?m:a.item_id,raw:a};case"response.output_item.done":return{type:"output-item-done",responseId:a.response_id,itemId:null!=(o=null==(n=a.item)?void 0:n.id)?o:a.item_id,raw:a};case"response.content_part.added":return{type:"content-part-added",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.content_part.done":return{type:"content-part-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio.delta":return{type:"audio-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio.done":return{type:"audio-done",responseId:a.response_id,itemId:a.item_id,raw:a};case"response.output_audio_transcript.delta":return{type:"audio-transcript-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.output_audio_transcript.done":return{type:"audio-transcript-done",responseId:a.response_id,itemId:a.item_id,transcript:a.transcript,raw:a};case"response.text.delta":return{type:"text-delta",responseId:a.response_id,itemId:a.item_id,delta:a.delta,raw:a};case"response.text.done":return{type:"text-done",responseId:a.response_id,itemId:a.item_id,text:a.text,raw:a};case"response.function_call_arguments.delta":return{type:"function-call-arguments-delta",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,delta:a.delta,raw:a};case"response.function_call_arguments.done":return{type:"function-call-arguments-done",responseId:a.response_id,itemId:a.item_id,callId:a.call_id,name:a.name,arguments:a.arguments,raw:a};case"error":return{type:"error",message:null!=(r=null!=(q=null==(p=a.error)?void 0:p.message)?q:a.message)?r:"Unknown error",code:null!=(t=null==(s=a.error)?void 0:s.code)?t:a.code,raw:a}}}(a)}serializeClientEvent(a){switch(a.type){case"session-update":return{type:"session.update",session:ax(a.config)};case"input-audio-append":return{type:"input_audio_buffer.append",audio:a.audio};case"input-audio-commit":return{type:"input_audio_buffer.commit"};case"input-audio-clear":return{type:"input_audio_buffer.clear"};case"conversation-item-create":{let b=a.item;switch(b.type){case"text-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_text",text:b.text}]}};case"audio-message":return{type:"conversation.item.create",item:{type:"message",role:b.role,content:[{type:"input_audio",audio:b.audio}]}};case"function-call-output":return{type:"conversation.item.create",item:{type:"function_call_output",call_id:b.callId,output:b.output}}}break}case"conversation-item-truncate":break;case"response-create":return{type:"response.create",...null!=a.options?{response:{...null!=a.options.modalities?{modalities:a.options.modalities}:{},...null!=a.options.instructions?{instructions:a.options.instructions}:{}}}:{}};case"response-cancel":return{type:"response.cancel"}}}buildSessionConfig(a){return ax(a)}},az=e.z.object({output:e.z.string().describe("the output of the code execution"),error:e.z.string().optional().describe("any error that occurred")}),aA=(0,c.createProviderExecutedToolFactory)({id:"xai.code_execution",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:az}),aB=e.z.object({description:e.z.string().describe("description of the image"),objects:e.z.array(e.z.string()).optional().describe("objects detected in the image")}),aC=(0,c.createProviderExecutedToolFactory)({id:"xai.view_image",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:aB}),aD=e.z.object({transcript:e.z.string().optional().describe("transcript of the video"),description:e.z.string().describe("description of the video content"),duration:e.z.number().optional().describe("duration in seconds")}),aE=(0,c.createProviderExecutedToolFactory)({id:"xai.view_x_video",inputSchema:e.z.object({}).describe("no input parameters"),outputSchema:aD}),aF={codeExecution:(a={})=>aA(a),fileSearch:a=>Y(a),imageGeneration:(a={})=>aa(a),mcpServer:a=>ad(a),viewImage:(a={})=>aC(a),viewXVideo:(a={})=>aE(a),webSearch:(a={})=>ag(a),xSearch:(a={})=>aj(a)},aG=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.looseObject({teamId:e.z.string().optional(),filePath:e.z.string().optional(),expiresAfter:e.z.number().int().min(3600).max(2592e3).optional()})));function aH(a){let b=encodeURIComponent(a);return"."===b?"%252E":".."===b?"%252E%252E":b}var aI=class{constructor(a){this.config=a,this.specificationVersion="v4"}get provider(){return this.config.provider}getFileId(a){let c=a.xai;if(null==c||""===c.trim())throw new b.InvalidArgumentError({argument:"file",message:"file reference is missing an 'xai' file id."});return c}getHeaders(a){return(0,c.combineHeaders)(this.config.headers(),a)}async uploadFile({data:a,mediaType:b,filename:d,abortSignal:e,headers:f,providerOptions:g}){var h,i;let j,k;try{j=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:g,schema:aG})}catch(b){throw"stream"===a.type&&await a.stream.cancel(b).catch(()=>{}),b}let l=this.getHeaders(f),m=`${this.config.baseURL}/files`;if("stream"===a.type){let f=[];(null==j?void 0:j.expiresAfter)!=null&&f.push({type:"field",name:"expires_after",value:String(j.expiresAfter)}),(null==j?void 0:j.teamId)!=null&&f.push({type:"field",name:"team_id",value:j.teamId}),f.push({type:"file",name:"file",filename:d,mediaType:b,content:a.stream}),{value:k}=await (0,c.postMultipartStreamToApi)({url:m,headers:l,parts:f,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:e,fetch:this.config.fetch})}else{let f=new Blob([(0,c.convertInlineFileDataToUint8Array)(a)],{type:b}),g=new FormData;(null==j?void 0:j.expiresAfter)!=null&&g.append("expires_after",String(j.expiresAfter)),(null==j?void 0:j.teamId)!=null&&g.append("team_id",j.teamId),null!=d?g.append("file",f,d):g.append("file",f),{value:k}=await (0,c.postFormDataToApi)({url:m,headers:l,formData:g,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:e,fetch:this.config.fetch})}return{warnings:[],providerReference:{xai:k.id},...(null!=(h=k.filename)?h:d)?{filename:null!=(i=k.filename)?i:d}:{},...null!=b?{mediaType:b}:{},...null!=k.bytes?{byteSize:k.bytes}:{},...null!=k.created_at?{createdAt:new Date(1e3*k.created_at)}:{},...null!=k.expires_at?{expiresAt:new Date(1e3*k.expires_at)}:{},providerMetadata:{xai:this.toFileMetadata(k)}}}async getFileMetadata({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${aH(e)}`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(F),abortSignal:b,fetch:this.config.fetch,validateUrl:!1});return{warnings:[],providerReference:{xai:f.id},...null!=f.filename?{filename:f.filename}:{},...null!=f.bytes?{byteSize:f.bytes}:{},...null!=f.created_at?{createdAt:new Date(1e3*f.created_at)}:{},...null!=f.expires_at?{expiresAt:new Date(1e3*f.expires_at)}:{},providerMetadata:{xai:this.toFileMetadata(f)}}}async downloadFile({file:a,abortSignal:b,headers:d}){var e;let f=this.getFileId(a),{value:g,responseHeaders:h}=await (0,c.getFromApi)({url:`${this.config.baseURL}/files/${aH(f)}/content`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createBinaryStreamResponseHandler)(),abortSignal:b,fetch:this.config.fetch,validateUrl:!1}),i=null==(e=null==h?void 0:h["content-type"])?void 0:e.split(";")[0].trim();return{warnings:[],content:g,...i?{mediaType:i}:{}}}async deleteFile({file:a,abortSignal:b,headers:d}){let e=this.getFileId(a),{value:f}=await (0,c.deleteFromApi)({url:`${this.config.baseURL}/files/${aH(e)}`,headers:this.getHeaders(d),failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(G),abortSignal:b,fetch:this.config.fetch});return{warnings:[],providerReference:{xai:f.id},deleted:f.deleted}}toFileMetadata(a){return{...null!=a.filename?{filename:a.filename}:{},...null!=a.purpose?{purpose:a.purpose}:{},...null!=a.bytes?{bytes:a.bytes}:{},...null!=a.created_at?{createdAt:a.created_at}:{},...null!=a.status?{status:a.status}:{},...null!=a.expires_at?{expiresAt:a.expires_at}:{}}}},aJ=e.z.string().min(1),aK=e.z.enum(["480p","720p","1080p"]),aL=e.z.enum(["edit-video","extend-video","reference-to-video"]),aM={pollIntervalMs:e.z.number().positive().nullish(),pollTimeoutMs:e.z.number().positive().nullish(),resolution:aK.nullish()},aN=e.z.looseObject({mode:aL.optional(),videoUrl:aJ.optional(),referenceImageUrls:e.z.array(aJ).min(1).max(7).optional(),referenceVoiceIds:e.z.array(aJ).max(3).optional(),user:e.z.string().optional(),...aM}),aO=(0,c.lazySchema)(()=>(0,c.zodSchema)(aN)),aP={"1920x1080":"1080p","1280x720":"720p","854x480":"480p","640x480":"480p"};function aQ(a){var b,c;return null==(c=null==(b=a.frameImages)?void 0:b.find(a=>"first_frame"===a.frameType))?void 0:c.image}var aR=a=>null!=a.mediaType&&"video"===(0,c.getTopLevelMediaType)(a.mediaType),aS=a=>null==a.mediaType||"image"===(0,c.getTopLevelMediaType)(a.mediaType);function aT(a){if("url"===a.type)return a.url;let b="string"==typeof a.data?a.data:(0,c.convertUint8ArrayToBase64)(a.data);return`data:${a.mediaType};base64,${b}`}function aU(a){var b,c;return null!=(c=null==(b=a.inputReferences)?void 0:b.some(aS))&&c}var aV=class{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4",this.maxVideosPerCall=1}get provider(){return this.config.provider}async buildRequestBody(a){var b,d,e;let f=[],g=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:aO}),h=function(a,b){if((null==b?void 0:b.mode)!=null)return b.mode;if((null==b?void 0:b.videoUrl)!=null)return"edit-video";let c=null!=a.frameImages&&a.frameImages.length>0,d=(null==b?void 0:b.referenceImageUrls)!=null&&b.referenceImageUrls.length>0;if(!c&&(aU(a)||d))return"reference-to-video"}(a,g),i="edit-video"===h,j="extend-video"===h,k="reference-to-video"===h;null!=a.fps&&f.push({type:"unsupported",feature:"fps",details:"xAI video models do not support custom FPS."}),null!=a.seed&&f.push({type:"unsupported",feature:"seed",details:"xAI video models do not support seed."}),null!=a.n&&a.n>1&&f.push({type:"unsupported",feature:"n",details:"xAI video models do not support generating multiple videos per call. Only 1 video will be generated."}),i&&null!=a.duration&&f.push({type:"unsupported",feature:"duration",details:"xAI video editing does not support custom duration."}),i&&null!=a.aspectRatio&&f.push({type:"unsupported",feature:"aspectRatio",details:"xAI video editing does not support custom aspect ratio."}),i&&((null==g?void 0:g.resolution)!=null||null!=a.resolution)&&f.push({type:"unsupported",feature:"resolution",details:"xAI video editing does not support custom resolution."}),j&&null!=a.aspectRatio&&f.push({type:"unsupported",feature:"aspectRatio",details:"xAI video extension does not support custom aspect ratio."}),j&&((null==g?void 0:g.resolution)!=null||null!=a.resolution)&&f.push({type:"unsupported",feature:"resolution",details:"xAI video extension does not support custom resolution."});let l={model:this.modelId,prompt:a.prompt},m=!i&&!j;if(i||null==a.duration||(l.duration=a.duration),i||j||null==a.aspectRatio||(l.aspect_ratio=a.aspectRatio),m&&(null==g?void 0:g.resolution)!=null)l.resolution=g.resolution;else if(m&&null!=a.resolution){let b=aP[a.resolution];null!=b?l.resolution=b:f.push({type:"unsupported",feature:"resolution",details:`Unrecognized resolution "${a.resolution}". Use providerOptions.xai.resolution with "480p", "720p", or "1080p" instead.`})}i&&(l.video={url:g.videoUrl}),j&&(l.video={url:g.videoUrl});let n=null!=(b=aQ(a))?b:a.image;if(null!=n)if(aR(n)){let b=null!=aQ(a);f.push({type:"unsupported",feature:b?"frameImages":"image",details:'xAI does not accept a video as a start/frame image. The video was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video instead.'})}else l.image={url:aT(n)};let o=null==(e=null==(d=a.frameImages)?void 0:d.find(a=>"last_frame"===a.frameType))?void 0:e.image;if(null!=o&&f.push({type:"unsupported",feature:"frameImages",details:aR(o)?'xAI does not accept a video as a start/frame image. The video last frame was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video instead.':'xAI video models do not support last_frame. Use providerOptions.xai.mode "extend-video" to continue from a video\'s last frame. The last frame image was ignored.'}),k){let b=function(a,b,c){if(null!=a.inputReferences&&a.inputReferences.length>0){let b=[];for(let d of a.inputReferences){if(!aS(d)){c.push({type:"unsupported",feature:"inputReferences",details:aR(d)?'xAI reference-to-video accepts image references only. The video reference was ignored. Use providerOptions.xai.mode "extend-video" to continue from a video.':"xAI reference-to-video accepts image references only. The non-image reference was ignored."});continue}b.push(d)}return b.length>0?b.map(a=>({url:aT(a)})):void 0}if((null==b?void 0:b.referenceImageUrls)!=null&&b.referenceImageUrls.length>0)return b.referenceImageUrls.map(a=>({url:a}))}(a,g,f);null!=b?l.reference_images=b:f.push({type:"unsupported",feature:"referenceImages",details:"xAI reference-to-video requires at least one image reference. The video will be generated without reference images."});let c=null==g?void 0:g.referenceVoiceIds;null!=c&&c.length>0&&(l.reference_audios=c.map(a=>({voice_id:a}))),"1080p"===l.resolution&&(f.push({type:"unsupported",feature:"resolution",details:"xAI reference-to-video is limited to 720p. The request was downgraded from 1080p to 720p."}),l.resolution="720p")}if("1080p"===l.resolution&&"grok-imagine-video"===this.modelId&&f.push({type:"unsupported",feature:"resolution",details:'xAI model "grok-imagine-video" does not support 1080p. Use "grok-imagine-video-1.5" for 1080p, or a lower resolution. The request was sent with 1080p.'}),null!=a.inputReferences&&a.inputReferences.length>0&&!k&&f.push({type:"unsupported",feature:"inputReferences",details:aU(a)?"xAI only supports inputReferences for reference-to-video generation. The reference images were ignored.":"xAI reference-to-video requires at least one image reference. The references were ignored."}),(null==g?void 0:g.referenceVoiceIds)!=null&&g.referenceVoiceIds.length>0&&!k&&f.push({type:"unsupported",feature:"referenceVoiceIds",details:"xAI only supports reference voices for reference-to-video generation. The reference voices were ignored."}),j||(null==g?void 0:g.user)===void 0||(l.user=g.user),null!=g)for(let[a,b]of Object.entries(g))["mode","pollIntervalMs","pollTimeoutMs","resolution","videoUrl","referenceImageUrls","referenceVoiceIds","user"].includes(a)||(l[a]=b);return{body:l,warnings:f,xaiOptions:g,isEdit:i,isExtension:j,hasReferenceImages:k,effectiveMode:h}}async doStart(a){var d,e,f,g;let h,i=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,{body:j,warnings:k,isEdit:l,isExtension:m}=await this.buildRequestBody(a),n=null!=(g=this.config.baseURL)?g:"https://api.x.ai/v1";h=l?`${n}/videos/edits`:m?`${n}/videos/extensions`:`${n}/videos/generations`;let{value:o,responseHeaders:p}=await (0,c.postJsonToApi)({url:h,headers:(0,c.combineHeaders)(this.config.headers(),a.headers),body:j,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(aW),abortSignal:a.abortSignal,fetch:this.config.fetch}),q=o.request_id;if(!q)throw new b.AISDKError({name:"XAI_VIDEO_GENERATION_ERROR",message:"No request_id returned from xAI API."});return{operation:{requestId:q},warnings:k,response:{timestamp:i,modelId:this.modelId,headers:p}}}async doStatus(a){var b,d,e,f,g,h,i,j,k,l,m;let n,o=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestId:p}=a.operation,q=null!=(f=this.config.baseURL)?f:"https://api.x.ai/v1",{value:r,responseHeaders:s}=await (0,c.getFromApi)({url:`${q}/videos/${"."===(n=encodeURIComponent(p))?"%252E":".."===n?"%252E%252E":n}`,validateUrl:!1,headers:(0,c.combineHeaders)(this.config.headers(),a.headers),successfulResponseHandler:a_,failedResponseHandler:v,abortSignal:a.abortSignal,fetch:this.config.fetch});if("expired"===r.status)return{status:"error",error:"Video generation request expired.",response:{timestamp:o,modelId:this.modelId,headers:s}};if("failed"===r.status){let a=null!=(i=null==(g=r.error)?void 0:g.message)?i:null==(h=r.error)?void 0:h.code;return{status:"error",error:null!=a?`Video generation failed: ${a}`:"Video generation failed.",response:{timestamp:o,modelId:this.modelId,headers:s}}}return"done"===r.status||null==r.status&&(null==(j=r.video)?void 0:j.url)?(null==(k=r.video)?void 0:k.respect_moderation)===!1?{status:"error",error:"Video generation was blocked due to a content policy violation.",response:{timestamp:o,modelId:this.modelId,headers:s}}:(null==(l=r.video)?void 0:l.url)?{status:"completed",videos:[{type:"url",url:r.video.url,mediaType:"video/mp4"}],warnings:[],response:{timestamp:o,modelId:this.modelId,headers:s},providerMetadata:{xai:{requestId:p,videoUrl:r.video.url,...null!=r.video.duration?{duration:r.video.duration}:{},...(null==(m=r.usage)?void 0:m.cost_in_usd_ticks)!=null?{costInUsdTicks:r.usage.cost_in_usd_ticks}:{},...null!=r.progress?{progress:r.progress}:{}}}}:{status:"error",error:"Video generation completed but no video URL was returned.",response:{timestamp:o,modelId:this.modelId,headers:s}}:{status:"pending",response:{timestamp:o,modelId:this.modelId,headers:s}}}},aW=e.z.object({request_id:e.z.string().nullish()}),aX=e.z.object({status:e.z.string().nullish(),video:e.z.object({url:e.z.string(),duration:e.z.number().nullish(),respect_moderation:e.z.boolean().nullish()}).nullish(),model:e.z.string().nullish(),usage:e.z.object({cost_in_usd_ticks:e.z.number().nullish()}).nullish(),progress:e.z.number().nullish(),error:e.z.object({code:e.z.string().nullish(),message:e.z.string().nullish()}).nullish()}),aY=(0,c.createJsonResponseHandler)(aX),aZ=new TextDecoder;async function a$({response:a,url:d,requestBodyValues:e}){if(null==a.body)return"";let f=a.body.getReader(),g=[],h=0;try{for(;;){let{done:i,value:j}=await f.read();if(i)break;if((h+=j.length)>1048576)throw new b.APICallError({message:"xAI video status response exceeded 1048576 bytes",url:d,requestBodyValues:e,statusCode:a.status,responseHeaders:(0,c.extractResponseHeaders)(a)});g.push(j)}}finally{f.releaseLock()}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return aZ.decode(i)}var a_=async a=>{if(202===a.response.status){let b=(0,c.extractResponseHeaders)(a.response),d=await a$(a);if(0===d.trim().length)return{responseHeaders:b,value:{status:"pending"}};let e=await (0,c.safeParseJSON)({text:d,schema:aX});return{responseHeaders:b,value:e.success?e.value:{status:"pending"}}}return aY(a)},a0=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({sampleRate:e.z.union([e.z.literal(8e3),e.z.literal(16e3),e.z.literal(22050),e.z.literal(24e3),e.z.literal(44100),e.z.literal(48e3)]).nullish(),bitRate:e.z.union([e.z.literal(32e3),e.z.literal(64e3),e.z.literal(96e3),e.z.literal(128e3),e.z.literal(192e3)]).nullish(),optimizeStreamingLatency:e.z.union([e.z.literal(0),e.z.literal(1),e.z.literal(2)]).nullish(),textNormalization:e.z.boolean().nullish(),withTimestamps:e.z.boolean().nullish(),replace:e.z.record(e.z.string(),e.z.string()).nullish()}))),a1=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({text:a,voice:b="eve",outputFormat:d="mp3",instructions:e,speed:f,language:g="auto",providerOptions:h}){let i=[],j=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:h,schema:a0}),k="mp3";["mp3","wav","pcm","mulaw","alaw"].includes(d)?k=d:i.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${d}. Using mp3 instead.`}),null!=e&&i.push({type:"unsupported",feature:"instructions",details:"xAI speech models do not support the `instructions` option. Use xAI speech tags in `text` to control delivery."});let l={codec:k};return(null==j?void 0:j.sampleRate)!=null&&(l.sample_rate=j.sampleRate),(null==j?void 0:j.bitRate)!=null&&("mp3"===k?l.bit_rate=j.bitRate:i.push({type:"unsupported",feature:"providerOptions",details:"xAI `bitRate` is supported only for mp3 output. It was ignored."})),{requestBody:{text:a,voice_id:b,language:g,output_format:l,speed:f,optimize_streaming_latency:null==j?void 0:j.optimizeStreamingLatency,text_normalization:null==j?void 0:j.textNormalization,with_timestamps:null==j?void 0:j.withTimestamps,replace:null==j?void 0:j.replace},warnings:i,withTimestamps:(null==j?void 0:j.withTimestamps)===!0}}async doGenerate(a){var b,d,e;let f,g,h=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{requestBody:i,warnings:j,withTimestamps:k}=await this.getArgs(a),{value:l,responseHeaders:m,rawValue:n}=await (0,c.postJsonToApi)({url:`${this.config.baseURL}/tts`,headers:(0,c.combineHeaders)(this.config.headers?await (0,c.resolve)(this.config.headers):void 0,a.headers),body:i,failedResponseHandler:v,successfulResponseHandler:k?(0,c.createJsonResponseHandler)(a2):(0,c.createBinaryResponseHandler)(),abortSignal:a.abortSignal,fetch:this.config.fetch});f=l instanceof Uint8Array?l:null!=(g=l).audio?(0,c.convertBase64ToUint8Array)(g.audio):new Uint8Array(0);let o=null==m?void 0:m["x-trace-id"];return{audio:f,warnings:j,request:{body:JSON.stringify(i)},response:{timestamp:h,modelId:this.modelId,headers:m,body:n},providerMetadata:{xai:{...null!=o?{traceId:o}:{},...(null==g?void 0:g.duration)!=null?{duration:g.duration}:{},...(null==g?void 0:g.content_type)!=null?{contentType:g.content_type}:{},...(null==g?void 0:g.audio_timestamps)!=null?{audioTimestamps:{graphChars:g.audio_timestamps.graph_chars,graphTimes:g.audio_timestamps.graph_times}}:{}}}}}},a2=e.z.object({audio:e.z.string().nullish(),content_type:e.z.string().nullish(),duration:e.z.number().nullish(),audio_timestamps:e.z.object({graph_chars:e.z.array(e.z.string()),graph_times:e.z.array(e.z.tuple([e.z.number(),e.z.number()]))}).nullish()}),a3=(0,c.lazySchema)(()=>(0,c.zodSchema)(e.z.object({audioFormat:e.z.enum(["pcm","mulaw","alaw"]).nullish(),sampleRate:e.z.union([e.z.literal(8e3),e.z.literal(16e3),e.z.literal(22050),e.z.literal(24e3),e.z.literal(44100),e.z.literal(48e3)]).nullish(),language:e.z.string().nullish(),format:e.z.boolean().nullish(),multichannel:e.z.boolean().nullish(),channels:e.z.number().int().min(2).max(8).nullish(),diarize:e.z.boolean().nullish(),keyterm:e.z.union([e.z.string(),e.z.array(e.z.string())]).nullish(),fillerWords:e.z.boolean().nullish(),streaming:e.z.object({interimResults:e.z.boolean().optional(),endpointing:e.z.number().int().min(0).max(5e3).optional(),smartTurn:e.z.number().min(0).max(1).optional(),smartTurnTimeout:e.z.number().int().min(1).max(5e3).optional()}).optional()}))),a4=class a{constructor(a,b){this.modelId=a,this.config=b,this.specificationVersion="v4"}static[d.WORKFLOW_SERIALIZE](a){return(0,c.serializeModelOptions)({modelId:a.modelId,config:a.config})}static[d.WORKFLOW_DESERIALIZE](b){return new a(b.modelId,b.config)}get provider(){return this.config.provider}async getArgs({audio:a,mediaType:b,providerOptions:d}){let e=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:d,schema:a3}),f=new FormData;for(let[a,b]of Object.entries({audio_format:null==e?void 0:e.audioFormat,sample_rate:null==e?void 0:e.sampleRate,language:null==e?void 0:e.language,format:null==e?void 0:e.format,multichannel:null==e?void 0:e.multichannel,channels:null==e?void 0:e.channels,diarize:null==e?void 0:e.diarize,filler_words:null==e?void 0:e.fillerWords}))null!=b&&f.append(a,String(b));if((null==e?void 0:e.keyterm)!=null)for(let a of Array.isArray(e.keyterm)?e.keyterm:[e.keyterm])f.append("keyterm",a);let g=a instanceof Uint8Array?new Blob([a]):new Blob([(0,c.convertBase64ToUint8Array)(a)]),h=(0,c.mediaTypeToExtension)(b);return f.append("file",new File([g],"audio",{type:b}),`audio.${h}`),{formData:f,warnings:[]}}async doGenerate(a){var b,d,e,f,g,h,i,j,k;let l=null!=(e=null==(d=null==(b=this.config._internal)?void 0:b.currentDate)?void 0:d.call(b))?e:new Date,{formData:m,warnings:n}=await this.getArgs(a),{value:o,responseHeaders:p,rawValue:q}=await (0,c.postFormDataToApi)({url:`${null!=(f=this.config.baseURL)?f:"https://api.x.ai/v1"}/stt`,headers:(0,c.combineHeaders)(null==(h=(g=this.config).headers)?void 0:h.call(g),a.headers),formData:m,failedResponseHandler:v,successfulResponseHandler:(0,c.createJsonResponseHandler)(a6),abortSignal:a.abortSignal,fetch:this.config.fetch});return{text:o.text,segments:null!=(j=null==(i=o.words)?void 0:i.map(a=>({text:a.text,startSecond:a.start,endSecond:a.end})))?j:[],language:o.language||void 0,durationInSeconds:null!=(k=o.duration)?k:void 0,warnings:n,response:{timestamp:l,modelId:this.modelId,headers:p,body:q}}}async doStream(a){var d,e,f,g,h,i,j,k;let l=null!=(f=null==(e=null==(d=this.config._internal)?void 0:d.currentDate)?void 0:e.call(d))?f:new Date,m=[],n=await (0,c.parseProviderOptions)({provider:"xai",providerOptions:a.providerOptions,schema:a3});if((null==n?void 0:n.multichannel)===!0&&null==n.channels)throw new b.InvalidArgumentError({argument:"providerOptions",message:"providerOptions.xai.channels is required when providerOptions.xai.multichannel is true"});(null==n?void 0:n.format)!=null&&m.push({type:"unsupported",feature:"providerOptions.xai.format",details:"xAI streaming transcription does not support format."}),(null==n?void 0:n.audioFormat)==null&&"audio/pcm"!==(k=a.inputAudioFormat.type)&&"audio/pcmu"!==k&&"audio/pcma"!==k&&m.push({type:"other",message:`Unrecognized inputAudioFormat.type "${a.inputAudioFormat.type}"; falling back to raw PCM encoding. Use audio/pcm, audio/pcmu, or audio/pcma, or set providerOptions.xai.audioFormat explicitly.`});let o=function({baseURL:a,inputAudioFormat:b,providerOptions:d}){var e,f,g,h,i,j;let k=(0,c.toWebSocketUrl)(`${a}/stt`);if(a5(k,"sample_rate",null!=(e=null==d?void 0:d.sampleRate)?e:b.rate),a5(k,"encoding",null!=(f=null==d?void 0:d.audioFormat)?f:function(a){switch(a){case"audio/pcmu":return"mulaw";case"audio/pcma":return"alaw";default:return"pcm"}}(b.type)),a5(k,"language",null==d?void 0:d.language),a5(k,"diarize",null==d?void 0:d.diarize),a5(k,"filler_words",null==d?void 0:d.fillerWords),a5(k,"multichannel",null==d?void 0:d.multichannel),a5(k,"channels",null==d?void 0:d.channels),a5(k,"interim_results",null==(g=null==d?void 0:d.streaming)?void 0:g.interimResults),a5(k,"endpointing",null==(h=null==d?void 0:d.streaming)?void 0:h.endpointing),a5(k,"smart_turn",null==(i=null==d?void 0:d.streaming)?void 0:i.smartTurn),a5(k,"smart_turn_timeout",null==(j=null==d?void 0:d.streaming)?void 0:j.smartTurnTimeout),(null==d?void 0:d.keyterm)!=null)for(let a of Array.isArray(d.keyterm)?d.keyterm:[d.keyterm])k.searchParams.append("keyterm",a);return k}({baseURL:null!=(g=this.config.baseURL)?g:"https://api.x.ai/v1",inputAudioFormat:a.inputAudioFormat,providerOptions:n}),p=(0,c.combineHeaders)(null==(i=(h=this.config).headers)?void 0:i.call(h),a.headers);return{request:{body:o.toString()},response:{timestamp:l,modelId:this.modelId},stream:function({webSocket:a,url:b,headers:d,warnings:e,language:f,expectedDoneCount:g,audio:h,abortSignal:i,includeRawChunks:j}){let k=!1,l=()=>{};return new ReadableStream({start:m=>{let n,o,p,q=new Map,r=new Map,s=new Map;l=a=>{null!=o?o.cancel().catch(()=>{}):h.cancel().catch(()=>{}),null==p||p.close(a)};let t=a=>{k||(k=!0,l(),m.error(a))},u=async a=>{o=h.getReader();try{for(;;){let{done:b,value:d}=await o.read();if(b||k)break;a.send(d instanceof Uint8Array?d:(0,c.convertBase64ToUint8Array)(d)),await (0,c.waitForWebSocketBufferDrain)(a)}}finally{o.releaseLock(),o=void 0}k||a.send(JSON.stringify({type:"audio.done"}))};p=(0,c.connectToWebSocket)({url:b,headers:d,webSocket:a,abortSignal:i,onAbort:t,onProcessingError:t,onMessageText:async a=>{var b,d,h,i,o,v,w,x,y,z,A;let B=await (0,c.safeParseJSON)({text:a});if(!B.success)return;let C=B.value;switch(j&&m.enqueue({type:"raw",rawValue:C}),C.type){case"transcript.created":{m.enqueue({type:"stream-start",warnings:e});let a=null==p?void 0:p.socket;if(null==a){t(Error("WebSocket is not connected."));break}u(a).catch(t);break}case"transcript.partial":{let a=null==(z=C.channel_index)?void 0:`channel-${z}`,c=null!=(b=C.channel_index)?b:0;if(C.is_final&&C.speech_final){let b={...null!=(A=C).start?{startSecond:A.start}:{},...null!=A.start&&null!=A.duration?{endSecond:A.start+A.duration}:{}};C.text&&r.set(c,[...null!=(d=r.get(c))?d:[],C.text]),s.delete(c),m.enqueue({type:"transcript-final",id:a,text:null!=(h=C.text)?h:"",...b,channelIndex:C.channel_index})}else s.set(c,null!=(i=C.text)?i:""),m.enqueue({type:"transcript-partial",id:a,text:null!=(o=C.text)?o:"",startSecond:C.start,durationInSeconds:C.duration,channelIndex:C.channel_index});break}case"transcript.done":{let a=null!=(v=C.channel_index)?v:0,b=[...null!=(w=r.get(a))?w:[],...s.get(a)?[s.get(a)]:[]].join(" ");q.set(a,C.text||b),n=null!=(x=C.duration)?x:n,(()=>{if(k||q.size<g)return;k=!0;let a=[...q.entries()].sort(([a],[b])=>a-b).map(([,a])=>a).join("\n");m.enqueue({type:"finish",text:a,segments:[],language:f,durationInSeconds:n}),m.close(),l(1e3)})();break}case"error":t(Error(null!=(y=C.message)?y:"xAI STT error"))}},onSocketError:()=>{t(Error("xAI streaming transcription error."+(null==a?" Note: the native WebSocket implementation in browsers, Node.js, Deno, and Bun cannot send the Authorization header required by xAI. Pass a header-capable WebSocket implementation (e.g. the 'ws' package) via createXai({ webSocket }).":"")))},onClose:()=>{k||(k=!0,l(),m.close())}})},cancel:()=>{k||(k=!0,l())}})}({webSocket:this.config.webSocket,url:o,headers:p,warnings:m,language:null!=(j=null==n?void 0:n.language)?j:void 0,expectedDoneCount:(null==n?void 0:n.multichannel)===!0?n.channels:1,audio:a.audio,abortSignal:a.abortSignal,includeRawChunks:a.includeRawChunks})}}};function a5(a,b,c){null!=c&&a.searchParams.set(b,String(c))}var a6=e.z.object({text:e.z.string(),language:e.z.string().nullish(),duration:e.z.number().nullish(),words:e.z.array(e.z.object({text:e.z.string(),start:e.z.number(),end:e.z.number()})).nullish()});function a7(a={}){var d;let e=(0,c.withoutTrailingSlash)(null!=(d=a.baseURL)?d:"https://api.x.ai/v1"),f=()=>(0,c.withUserAgentSuffix)({Authorization:`Bearer ${(0,c.loadApiKey)({apiKey:a.apiKey,environmentVariableName:"XAI_API_KEY",description:"xAI API key"})}`,...a.headers},"ai-sdk/xai/4.0.54"),g=b=>new au(b,{provider:"xai.responses",baseURL:e,headers:f,generateId:c.generateId,fetch:a.fetch}),h=b=>new D(b,{provider:"xai.image",baseURL:e,headers:f,fetch:a.fetch}),i=b=>new aV(b,{provider:"xai.video",baseURL:e,headers:f,fetch:a.fetch}),j=b=>new ay(b,{provider:"xai.realtime",baseURL:null!=e?e:"https://api.x.ai/v1",headers:f,fetch:a.fetch}),k=()=>new a1("",{provider:"xai.speech",baseURL:e,headers:f,fetch:a.fetch}),l=()=>new a4("",{provider:"xai.transcription",baseURL:e,headers:f,fetch:a.fetch,webSocket:a.webSocket}),m=Object.assign(a=>j(a),{getToken:async a=>{let b=j(a.model),c=await b.doCreateClientSecret({sessionConfig:a.sessionConfig,expiresAfterSeconds:a.expiresAfterSeconds});return{token:c.token,url:c.url,expiresAt:c.expiresAt}}}),n=a=>g(a);return n.specificationVersion="v4",n.languageModel=g,n.chat=b=>new x(b,{provider:"xai.chat",baseURL:e,headers:f,generateId:c.generateId,fetch:a.fetch}),n.responses=g,n.embeddingModel=a=>{throw new b.NoSuchModelError({modelId:a,modelType:"embeddingModel"})},n.textEmbeddingModel=n.embeddingModel,n.imageModel=h,n.image=h,n.videoModel=i,n.video=i,n.experimental_realtime=m,n.speechModel=k,n.speech=k,n.transcriptionModel=l,n.transcription=l,n.files=()=>new aI({provider:"xai.files",baseURL:e,headers:f,fetch:a.fetch}),n.tools=aF,n}a7(),a.s(["createXai",0,a7])},236338,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={SYMBOL_FOR_REQ_CONTEXT:()=>k,getContext:()=>l};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);let k=Symbol.for("@vercel/request-context");function l(){let a=globalThis;return a[k]?.get?.()??{}}},817547,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={getVercelOidcToken:()=>m,getVercelOidcTokenSync:()=>n};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(236338),l=a.r(580949);async function m(b){let c,d="";try{d=n()}catch(a){c=a}try{let[{getTokenPayload:c,isExpired:e},{refreshToken:f}]=await Promise.all([await a.A(682672),await a.A(966249)]);(!d||e(c(d),b?.expirationBufferMs))&&(await f(b),d=n())}catch(b){let a=c instanceof Error?c.message:"";if(b instanceof Error&&(a=`${a}
|
|
180
181
|
${b.message}`),a)throw new l.VercelOidcTokenError(a);throw b}return d}function n(){let a=(0,k.getContext)().headers?.["x-vercel-oidc-token"]??process.env.VERCEL_OIDC_TOKEN;if(!a)throw Error("The 'x-vercel-oidc-token' header is missing from the request. Do you have the OIDC option enabled in the Vercel project settings?");return a}},784628,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={AccessTokenMissingError:()=>m.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>m.RefreshAccessTokenFailedError,getContext:()=>l.getContext,getVercelOidcToken:()=>k.getVercelOidcToken,getVercelOidcTokenSync:()=>k.getVercelOidcTokenSync,getVercelToken:()=>n.getVercelToken};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(817547),l=a.r(236338),m=a.r(351275),n=a.r(72918)},438766,a=>{"use strict";var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x=a.i(527990),y=a.i(652685),z=a.i(794219),A=a.i(912735),B=a.i(784628),C="ai-gateway-transcription.v1";function D(a,b,c){let d=[a,`ai-gateway-auth.${b}`];return(null==c?void 0:c.teamIdOrSlug)&&d.push(`ai-gateway-team.${function(a){let b=new TextEncoder().encode(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/u,"")}(c.teamIdOrSlug)}`),d}var E={any:z.any,array:z.array,boolean:z.boolean,discriminatedUnion:z.discriminatedUnion,enum:z.enum,literal:z.literal,number:z.number,object:z.object,record:z.record,string:z.string,union:z.union,unknown:z.unknown},F=Symbol.for("vercel.ai.gateway.error"),G=class a extends(c=Error,b=F,c){constructor({message:a,statusCode:c=500,cause:d,generationId:e,isRetryable:f=null!=c&&(408===c||409===c||429===c||c>=500)}){super(e?`${a} [${e}]`:a),this[b]=!0,this.statusCode=c,this.cause=d,this.generationId=e,this.isRetryable=f}static isInstance(b){return a.hasMarker(b)}static hasMarker(a){return"object"==typeof a&&null!==a&&F in a&&!0===a[F]}},H="GatewayAuthenticationError",I=Symbol.for(`vercel.ai.gateway.error.${H}`),J=class a extends(e=G,d=I,e){constructor({message:a="Authentication failed",statusCode:b=401,cause:c,generationId:e}={}){super({message:a,statusCode:b,cause:c,generationId:e}),this[d]=!0,this.name=H,this.type="authentication_error"}static isInstance(a){return G.hasMarker(a)&&I in a}static createContextualError({apiKeyProvided:b,oidcTokenProvided:c,statusCode:d=401,cause:e,generationId:f}){return new a({message:b?`AI Gateway authentication failed: Invalid API key or token.
|
|
181
182
|
|
|
182
183
|
Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
|
|
@@ -211,14 +212,7 @@ ${d}
|
|
|
211
212
|
${e}
|
|
212
213
|
${h}`);return crypto.subtle.verify("HMAC",g,i,a)}return!1}async function ds({secret:a,approvalId:b,toolCallId:c,toolName:d,input:e}){if(null!=a)return dq({secret:a,approvalId:b,toolCallId:c,toolName:d,input:e})}async function dt({approvedToolApprovals:a,tools:b,toolApproval:c,messages:d,toolsContext:e,runtimeContext:f,toolApprovalSecret:g}){var h;let i=[],j=[],k=[];for(let l of a){let{toolCall:a,approvalRequest:m}=l,n=ct(b,a.toolName);if(null!=g){if(null==m.signature)throw new af({approvalId:m.approvalId,toolCallId:a.toolCallId,reason:"missing signature"});if(!await dr({secret:g,signature:m.signature,approvalId:m.approvalId,toolCallId:a.toolCallId,toolName:a.toolName,input:a.input}))throw new af({approvalId:m.approvalId,toolCallId:a.toolCallId,reason:"invalid signature"})}if((0,R.isExecutableTool)(n)&&null!=n.inputSchema){let b=await (0,R.safeValidateTypes)({value:a.input,schema:(0,R.asSchema)(n.inputSchema)});if(!b.success){k.push({...l,error:new aj({toolName:a.toolName,toolInput:JSON.stringify(a.input),cause:b.error})});continue}}let o=await cZ({tools:b,toolApproval:c,toolCall:a,messages:d,toolsContext:e,runtimeContext:f});"denied"===o.type?j.push({...l,approvalResponse:{...l.approvalResponse,approved:!1,reason:null!=(h=o.reason)?h:l.approvalResponse.reason}}):i.push(l)}return{approvedToolApprovals:i,deniedToolApprovals:j,invalidToolApprovals:k}}var du=(0,R.createIdGenerator)({prefix:"aitxt",size:24}),dv=(0,R.createIdGenerator)({prefix:"call",size:24});async function dw({model:a,tools:b,toolChoice:c,instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h,maxRetries:i,abortSignal:j,timeout:k,headers:l,stopWhen:m=dc(1),experimental_sandbox:n,output:o,toolApproval:p,experimental_toolCallers:q,experimental_toolApprovalSecret:r,experimental_telemetry:s,telemetry:t=s,providerOptions:u,activeTools:v,toolOrder:w,prepareStep:x,experimental_repairToolCall:y,repairToolCall:z=y,experimental_refineToolInput:A,experimental_download:B,runtimeContext:C={},toolsContext:D={},experimental_include:E,include:F=E,_internal:{generateId:G=du,generateCallId:H=dv,now:I=cv}={},onStart:J,experimental_onStart:K,onStepStart:L,experimental_onStepStart:M,onLanguageModelCallStart:N,experimental_onLanguageModelCallStart:O,onLanguageModelCallEnd:P,experimental_onLanguageModelCallEnd:Q,onToolExecutionStart:T,onToolExecutionEnd:U,experimental_onToolCallStart:V,experimental_onToolCallFinish:W,onStepEnd:X,onStepFinish:Y,onFinish:Z,onEnd:$=Z,..._}){var aa,ab,ac,ad;F={requestBody:null!=(aa=null==F?void 0:F.requestBody)&&aa,requestMessages:null!=(ab=null==F?void 0:F.requestMessages)&&ab,responseBody:null!=(ac=null==F?void 0:F.responseBody)&&ac};let ae=bC(a),af=dh({tools:b,toolCallers:q}),ag=(0,R.asArray)(m),ah=null!=J?J:K,ai=null!=L?L:M,aj=null!=N?N:O,ak=null!=P?P:Q,al=null!=T?T:V,am=null!=U?U:W,an=null!=X?X:Y,ao=[];null!=b$(k)&&ao.push({type:"unsupported",feature:"timeout.firstChunkMs",details:"The firstChunkMs timeout is only supported by streaming functions."}),null!=b_(k)&&ao.push({type:"unsupported",feature:"timeout.chunkMs",details:"The chunkMs timeout is only supported by streaming functions."}),ao.length>0&&bp({warnings:ao,provider:ae.provider,model:ae.modelId});let ap=bY(k),aq=bZ(k),ar=null!=aq?new AbortController:void 0,as=cu(j,ap,null==ar?void 0:ar.signal),{maxRetries:at,retry:au}=cx({maxRetries:i,abortSignal:as}),av=bV(_),aw=(0,R.withUserAgentSuffix)(null!=l?l:{},`ai/${bF}`),ax=await cn({instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h}),ay=H(),az=db({telemetry:t,includeRuntimeContext:null==t?void 0:t.includeRuntimeContext,includeToolsContext:null==t?void 0:t.includeToolsContext}),aA=null!=(ad=az.runInTracingChannelSpan)?ad:async({execute:a})=>await a(),aB={callId:ay,operationId:"ai.generateText",provider:ae.provider,modelId:ae.modelId,instructions:ax.instructions,messages:ax.messages,tools:b,toolChoice:c,activeTools:v,toolOrder:w,maxOutputTokens:av.maxOutputTokens,temperature:av.temperature,topP:av.topP,topK:av.topK,presencePenalty:av.presencePenalty,frequencyPenalty:av.frequencyPenalty,stopSequences:av.stopSequences,seed:av.seed,reasoning:av.reasoning,maxRetries:at,timeout:k,headers:aw,providerOptions:u,output:o,runtimeContext:C,toolsContext:D},aC=async()=>{var a;await cw({event:aB,callbacks:[ah,az.onStart]});try{let a,d,e=ax.messages,f=[],{approvedToolApprovals:g,deniedToolApprovals:h}=cA({messages:e}),{approvedToolApprovals:i,deniedToolApprovals:j,invalidToolApprovals:l}=await dt({approvedToolApprovals:g.filter(a=>!a.toolCall.providerExecuted),tools:b,toolApproval:p,messages:e,toolsContext:D,runtimeContext:C,toolApprovalSecret:r}),m=[...h,...j].filter(a=>null==a.existingToolResult);if(m.length>0||i.length>0||l.length>0){let a=await dx({toolCalls:i.map(a=>a.toolCall),tools:b,callId:ay,messages:e,abortSignal:as,timeout:k,experimental_sandbox:n,toolsContext:D,onToolExecutionStart:a=>cw({event:a,callbacks:[al,az.onToolExecutionStart]}),onToolExecutionEnd:a=>cw({event:a,callbacks:[am,az.onToolExecutionEnd]}),executeToolInTelemetryContext:az.executeTool,runInTracingChannelSpan:aA}),c=[];for(let d of a){let a=d.output,e=await bT({toolCallId:a.toolCallId,input:a.input,tool:ct(b,a.toolName),output:"tool-result"===a.type?a.output:a.error,errorMode:"tool-error"===a.type?"text":"none"});c.push({type:"tool-result",toolCallId:a.toolCallId,toolName:a.toolName,output:e})}for(let a of l)c.push({type:"tool-result",toolCallId:a.toolCall.toolCallId,toolName:a.toolCall.toolName,output:await bT({toolCallId:a.toolCall.toolCallId,input:a.toolCall.input,tool:ct(b,a.toolCall.toolName),output:a.error,errorMode:"text"})});for(let a of m)c.push({type:"tool-result",toolCallId:a.toolCall.toolCallId,toolName:a.toolCall.toolName,output:{type:"execution-denied",reason:a.approvalResponse.reason,...a.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:a.approvalResponse.approvalId}}}}});f.push({role:"tool",content:c})}let q=bV(_),s=[],t=[],y=[],E=[],H=[],J=ax.instructions,K=[...e,...f],L=new Map;do{H.length>0&&(null==as||as.throwIfAborted());let d=cy({abortController:ar,label:"Step",timeoutMs:aq}),g=H.length;try{await aA({type:"step",event:{callId:ay,stepNumber:g},execute:async()=>{var d,h,i,j,l,m,M,N,O,P,Q,R,T,U,V,W,X;let Y=[...f,...H.flatMap(a=>a.response.messages)],Z=K,$=await (null==x?void 0:x({model:ae,steps:H,stepNumber:H.length,instructions:J,initialInstructions:ax.instructions,messages:Z,initialMessages:e,responseMessages:Y,runtimeContext:C,toolsContext:D,experimental_sandbox:n})),_=null!=(d=null==$?void 0:$.experimental_sandbox)?d:n,aa=bC(null!=(h=null==$?void 0:$.model)?h:ae),ab=null!=(j=null!=(i=null==$?void 0:$.instructions)?i:null==$?void 0:$.system)?j:J,ac=await bM({prompt:{instructions:ab,messages:null!=(l=null==$?void 0:$.messages)?l:Z},supportedUrls:await aa.supportedUrls,download:B,provider:aa.provider.split(".")[0]});C=null!=(m=null==$?void 0:$.runtimeContext)?m:C,D=null!=(M=null==$?void 0:$.toolsContext)?M:D;let ad=cG({tools:b,activeTools:null!=(N=null==$?void 0:$.activeTools)?N:v}),{executionTools:ag,modelTools:ah}=di({tools:ad,toolCallers:af}),ao=null!=(O=null==$?void 0:$.toolOrder)?O:w,ap=await bX({tools:ah,toolOrder:ao,toolsContext:D,experimental_sandbox:_}),aq=bW({toolChoice:null!=(P=null==$?void 0:$.toolChoice)?P:c}),ar=null!=(Q=null==$?void 0:$.messages)?Q:Z,at=bH(u,null==$?void 0:$.providerOptions),av=cX({callSettings:q,stepSettings:$});await cw({event:{callId:ay,provider:aa.provider,modelId:aa.modelId,stepNumber:g,instructions:ab,messages:ar,tools:b,toolChoice:null!=(R=null==$?void 0:$.toolChoice)?R:c,activeTools:null!=(T=null==$?void 0:$.activeTools)?T:v,toolOrder:ao,steps:[...H],providerOptions:at,output:o,runtimeContext:C,promptMessages:ac,stepTools:ap,stepToolChoice:aq,toolsContext:D},callbacks:[ai,az.onStepStart]});let aB={provider:aa.provider,modelId:aa.modelId,instructions:ab,messages:ar,tools:ap,...av},aC={callId:ay,...aB},aD=I();await cw({event:aC,callbacks:[aj,az.onLanguageModelCallStart]});let aE=null!=(U=az.executeLanguageModelCall)?U:async({execute:a})=>await a();a=await au(async()=>{var a,b,c,d,e,f,g,h;let i=await aE({...aC,execute:async()=>await aa.doGenerate({...av,tools:ap,toolChoice:aq,responseFormat:await (null==o?void 0:o.responseFormat),prompt:ac,providerOptions:at,abortSignal:as,headers:aw})}),j={id:null!=(b=null==(a=i.response)?void 0:a.id)?b:G(),timestamp:null!=(d=null==(c=i.response)?void 0:c.timestamp)?d:new Date,modelId:null!=(f=null==(e=i.response)?void 0:e.modelId)?f:aa.modelId,headers:null==(g=i.response)?void 0:g.headers,body:null==(h=i.response)?void 0:h.body};return{...i,response:j}});let aF=I()-aD,aG=cp(a.usage),aH=await Promise.all(a.content.filter(a=>"tool-call"===a.type).map(a=>cT({toolCall:a,tools:ag,repairToolCall:z,refineToolInput:A,instructions:ab,messages:ar}))),aI={},aJ={},aK=new Set,aL=cD({content:a.content,toolCalls:aH,toolOutputs:[],toolApprovalRequests:[],toolApprovalResponses:[],tools:b});await cw({event:{callId:ay,provider:aa.provider,modelId:a.response.modelId,finishReason:a.finishReason.unified,usage:aG,content:aL,responseId:a.response.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},performance:{responseTimeMs:aF,effectiveOutputTokensPerSecond:cz({tokens:aG.outputTokens,durationMs:aF}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:cz({tokens:de(aG.inputTokens,aG.outputTokens),durationMs:aF}),timeToFirstOutputMs:void 0}},callbacks:[ak,az.onLanguageModelCallEnd]});let aM="required"===aq.type||"tool"===aq.type?aq:void 0;if(null!=aM&&!aH.some(a=>"required"===aM.type||a.toolName===aM.toolName))throw new a4({toolChoice:aM,finishReason:a.finishReason.unified,provider:aa.provider,modelId:aa.modelId,content:a.content});for(let a of aH){if(a.invalid)continue;let b=ct(ag,a.toolName);if(null==b)continue;null!=b.onInputStart&&await b.onInputStart({toolCallId:a.toolCallId,messages:ar,abortSignal:as,context:C}),(null==b?void 0:b.onInputAvailable)!=null&&await b.onInputAvailable({input:a.input,toolCallId:a.toolCallId,messages:ar,abortSignal:as,context:C});let c=await cZ({tools:ag,toolApproval:p,toolCall:a,messages:ar,toolsContext:D,runtimeContext:C});if("not-applicable"===c.type)continue;let d=G(),e=await ds({secret:r,approvalId:d,toolCallId:a.toolCallId,toolName:a.toolName,input:a.input});switch(c.type){case"user-approval":aI[a.toolCallId]={type:"tool-approval-request",approvalId:d,toolCall:a,...null!=c.reason?{reason:c.reason}:{},...null!=e?{signature:e}:{}},aK.add(a.toolCallId);break;case"approved":aI[a.toolCallId]={type:"tool-approval-request",approvalId:d,toolCall:a,isAutomatic:!0,...null!=e?{signature:e}:{}},aJ[a.toolCallId]={type:"tool-approval-response",approvalId:d,toolCall:a,approved:!0,reason:c.reason,providerExecuted:a.providerExecuted};break;case"denied":aI[a.toolCallId]={type:"tool-approval-request",approvalId:d,toolCall:a,isAutomatic:!0,...null!=e?{signature:e}:{}},aJ[a.toolCallId]={type:"tool-approval-response",approvalId:d,toolCall:a,approved:!1,reason:c.reason,providerExecuted:a.providerExecuted},aK.add(a.toolCallId)}}let aN=aH.filter(a=>a.invalid&&a.dynamic&&!a.providerExecuted);for(let a of(t=[],aN))t.push({type:"tool-error",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,error:(0,S.getErrorMessage)(a.error),dynamic:!0});s=aH.filter(a=>!a.providerExecuted),E=(y=Object.values(aJ)).filter(a=>!1===a.approved);let aO={};if(null!=ag&&cH(a.finishReason.unified))for(let a of(await dx({toolCalls:s.filter(a=>!a.invalid&&!aK.has(a.toolCallId)),tools:ag,callId:ay,messages:ar,abortSignal:as,timeout:k,experimental_sandbox:_,toolsContext:D,onToolExecutionStart:a=>cw({event:a,callbacks:[al,az.onToolExecutionStart]}),onToolExecutionEnd:a=>cw({event:a,callbacks:[am,az.onToolExecutionEnd]}),executeToolInTelemetryContext:az.executeTool,runInTracingChannelSpan:aA})))aO[a.output.toolCallId]=a.toolExecutionMs,t.push(a.output);let aP=I()-aD,aQ={effectiveOutputTokensPerSecond:cz({tokens:aG.outputTokens,durationMs:aF}),outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:cz({tokens:de(aG.inputTokens,aG.outputTokens),durationMs:aF}),stepTimeMs:aP,responseTimeMs:aF,toolExecutionMs:aO,timeToFirstOutputMs:void 0};for(let b of aH){if(!b.providerExecuted)continue;let c=ct(ag,b.toolName);(null==c?void 0:c.type)==="provider"&&c.supportsDeferredResults&&(a.content.some(a=>"tool-result"===a.type&&a.toolCallId===b.toolCallId)||L.set(b.toolCallId,{toolName:b.toolName}))}for(let b of a.content)"tool-result"===b.type&&L.delete(b.toolCallId);let aR=cD({content:a.content,toolCalls:aH,toolOutputs:t,toolApprovalRequests:Object.values(aI),toolApprovalResponses:y,tools:b}),aS=await df({content:aR,tools:b}),aT={...a.request,body:F.requestBody?null==(V=a.request)?void 0:V.body:void 0,messages:F.requestMessages?bE(ar):void 0},aU={...a.response,messages:bE(aS),body:F.responseBody?null==(W=a.response)?void 0:W.body:void 0},aV=new c6({callId:ay,stepNumber:g,provider:aa.provider,modelId:aa.modelId,runtimeContext:C,content:aR,finishReason:a.finishReason.unified,rawFinishReason:a.finishReason.raw,usage:aG,performance:aQ,warnings:a.warnings,providerMetadata:a.providerMetadata,request:aT,response:aU,toolsContext:D});return bp({warnings:null!=(X=a.warnings)?X:[],provider:aa.provider,model:aa.modelId}),H.push(aV),J=ab,K=[...ar,...aS],await cw({event:aV,callbacks:[an,az.onStepEnd]}),aV}})}finally{null!=d&&clearTimeout(d)}}while(t.length+E.length===s.length&&(s.length>0||L.size>0)&&!await dd({stopConditions:ag,steps:H}))let M=H[H.length-1],N=H.reduce((a,b)=>cr(a,b.usage),{inputTokens:void 0,inputTokenDetails:{noCacheTokens:void 0,cacheReadTokens:void 0,cacheWriteTokens:void 0},outputTokens:void 0,outputTokenDetails:{textTokens:void 0,reasoningTokens:void 0},totalTokens:void 0}),O=H.flatMap(a=>a.files),P=H.flatMap(a=>a.sources),Q=H.flatMap(a=>a.toolCalls),R=H.flatMap(a=>a.staticToolCalls),T=H.flatMap(a=>a.dynamicToolCalls),U=H.flatMap(a=>a.toolResults),V=H.flatMap(a=>a.staticToolResults),W=H.flatMap(a=>a.dynamicToolResults),X=H.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]}),Y={callId:ay,stepNumber:M.stepNumber,model:M.model,runtimeContext:M.runtimeContext,finishReason:M.finishReason,rawFinishReason:M.rawFinishReason,usage:N,totalUsage:N,content:H.flatMap(a=>a.content),text:M.text,reasoning:M.reasoning,reasoningText:M.reasoningText,files:O,sources:P,toolCalls:Q,staticToolCalls:R,dynamicToolCalls:T,toolResults:U,staticToolResults:V,dynamicToolResults:W,responseMessages:[...f,...H.flatMap(a=>a.response.messages)],warnings:X,request:M.request,response:M.response,providerMetadata:M.providerMetadata,steps:H,finalStep:M,toolsContext:D};if(await cw({event:Y,callbacks:[$,az.onEnd]}),"stop"===M.finishReason||"tool-calls"!==M.finishReason&&M.text.length>0){let a=null!=o?o:cM();d=await a.parseCompleteOutput({text:M.text},{response:M.response,usage:M.usage,finishReason:M.finishReason})}return new dy({initialResponseMessages:f,steps:H,totalUsage:N,output:d})}catch(b){throw await (null==(a=az.onError)?void 0:a.call(az,{callId:ay,error:b})),co(b)}};return await aA({type:"generateText",event:aB,execute:aC})}async function dx({toolCalls:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,onToolExecutionStart:i,onToolExecutionEnd:j,executeToolInTelemetryContext:k,runInTracingChannelSpan:l}){return(await Promise.all(a.map(async a=>await cF({toolCall:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,onToolExecutionStart:i,onToolExecutionEnd:j,executeToolInTelemetryContext:k,runInTracingChannelSpan:l})))).filter(a=>null!=a)}var dy=class{constructor(a){this.initialResponseMessages=a.initialResponseMessages,this.steps=a.steps,this._output=a.output,this.totalUsage=a.totalUsage}get finalStep(){return this.steps.at(-1)}get content(){return this.steps.flatMap(a=>a.content)}get text(){return this.finalStep.text}get files(){return this.steps.flatMap(a=>a.files)}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return cY(this.finalStep.reasoning)}get toolCalls(){return this.steps.flatMap(a=>a.toolCalls)}get staticToolCalls(){return this.steps.flatMap(a=>a.staticToolCalls)}get dynamicToolCalls(){return this.steps.flatMap(a=>a.dynamicToolCalls)}get toolResults(){return this.steps.flatMap(a=>a.toolResults)}get staticToolResults(){return this.steps.flatMap(a=>a.staticToolResults)}get dynamicToolResults(){return this.steps.flatMap(a=>a.dynamicToolResults)}get sources(){return this.steps.flatMap(a=>a.sources)}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.steps.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]})}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get responseMessages(){return[...this.initialResponseMessages,...this.steps.flatMap(a=>a.response.messages)]}get request(){return this.finalStep.request}get usage(){return this.totalUsage}get output(){if(null==this._output)throw new aD;return this._output}};function dz(a,b){let c=new Headers(null!=a?a:{});for(let[a,d]of Object.entries(b))c.has(a)||c.set(a,d);return c}function dA({response:a,status:b,statusText:c,headers:d,stream:e}){let f=null!=b?b:200;void 0!==c?a.writeHead(f,c,d):a.writeHead(f,d);let g=e.getReader();return(async()=>{try{for(;;){let{done:b,value:c}=await g.read();if(b)break;let d=a.write(c),e=a.flush;"function"==typeof e&&e.call(a),d||await new Promise(b=>{a.once("drain",b)})}}catch(a){throw a}finally{a.end()}})()}var dB=class extends TransformStream{constructor(){super({transform(a,b){b.enqueue(`data: ${JSON.stringify(a)}
|
|
213
214
|
|
|
214
|
-
`)},flush(a){a.enqueue("data: [DONE]\n\n")}})}},dC={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"},dD=b0.record(b0.string(),b1.optional());function dE(){return Object.create(null)}function dF(a){return a.type.startsWith("tool-")}function dG(a){return dF(a)||"dynamic-tool"===a.type}function dH(a){return a.type.split("-").slice(1).join("-")}function dI(a){var b;return(b=a.pipeThrough(new TransformStream))[Symbol.asyncIterator]=function(){let a=this.getReader(),b=!1;async function c(c){var d;if(!b){b=!0;try{c&&await (null==(d=a.cancel)?void 0:d.call(a))}finally{try{a.releaseLock()}catch(a){}}}}return{async next(){let d;if(b)return{done:!0,value:void 0};try{d=await a.read()}catch(a){throw await c(!1),a}let{done:e,value:f}=d;return e?(await c(!0),{done:!0,value:void 0}):{done:!1,value:f}},return:async()=>(await c(!0),{done:!0,value:void 0}),async throw(a){throw await c(!0),a}}},b}async function dJ({stream:a,onError:b,abortSignal:c}){let d=a.getReader(),e=()=>{d.cancel().catch(()=>{})};(null==c?void 0:c.aborted)?e():null==c||c.addEventListener("abort",e,{once:!0});try{for(;;){let{done:a}=await d.read();if(a)break}}catch(a){null==b||b(a)}finally{null==c||c.removeEventListener("abort",e),d.releaseLock()}}function dK(){let a,b;return{promise:new Promise((c,d)=>{a=c,b=d}),resolve:a,reject:b}}(0,R.lazySchema)(()=>(0,R.zodSchema)(b0.union([b0.looseObject({type:b0.literal("text-start"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("text-delta"),id:b0.string(),delta:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("text-end"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("error"),errorText:b0.string()}),b0.looseObject({type:b0.literal("tool-input-start"),toolCallId:b0.string(),toolName:b0.string(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-input-delta"),toolCallId:b0.string(),inputTextDelta:b0.string()}),b0.looseObject({type:b0.literal("tool-input-available"),toolCallId:b0.string(),toolName:b0.string(),input:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-input-error"),toolCallId:b0.string(),toolName:b0.string(),input:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),errorText:b0.string(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-approval-request"),approvalId:b0.string(),toolCallId:b0.string(),approvalDescriptor:b0.unknown().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-approval-response"),approvalId:b0.string(),approved:b0.boolean(),reason:b0.string().optional(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("tool-output-available"),toolCallId:b0.string(),output:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),preliminary:b0.boolean().optional()}),b0.looseObject({type:b0.literal("tool-output-error"),toolCallId:b0.string(),errorText:b0.string(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional()}),b0.looseObject({type:b0.literal("tool-output-denied"),toolCallId:b0.string()}),b0.looseObject({type:b0.literal("reasoning-start"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-delta"),id:b0.string(),delta:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-end"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("custom"),kind:b0.string().transform(a=>a),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("source-url"),sourceId:b0.string(),url:b0.string(),title:b0.string().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("source-document"),sourceId:b0.string(),mediaType:b0.string(),title:b0.string(),filename:b0.string().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("file"),url:b0.string(),mediaType:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-file"),url:b0.string(),mediaType:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:b0.string().optional(),data:b0.unknown(),transient:b0.boolean().optional()}),b0.looseObject({type:b0.literal("start-step")}),b0.looseObject({type:b0.literal("finish-step")}),b0.looseObject({type:b0.literal("reset-step")}),b0.looseObject({type:b0.literal("start"),messageId:b0.string().optional(),messageMetadata:b0.unknown().optional()}),b0.looseObject({type:b0.literal("finish"),finishReason:b0.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:b0.unknown().optional()}),b0.looseObject({type:b0.literal("abort"),reason:b0.string().optional()}),b0.looseObject({type:b0.literal("message-metadata"),messageMetadata:b0.unknown()})])));var dL=Symbol("streamRetryAttemptBoundary");function dM(a){return"object"==typeof a&&null!=a&&dL in a}function dN(a){return"object"==typeof a&&null!=a?a:void 0}function dO(a){return"string"==typeof a?a:void 0}function dP(a){return"string"==typeof a||"number"==typeof a?a:void 0}function dQ(a){return"boolean"==typeof a?a:void 0}function dR(a){let b="string"==typeof a&&/^\d{3}$/.test(a)?Number(a):a;return"number"==typeof b&&Number.isInteger(b)&&b>=400&&b<=599?b:void 0}var dS=(0,R.createIdGenerator)({prefix:"aitxt",size:24}),dT=(0,R.createIdGenerator)({prefix:"call",size:24});async function dU({model:a,tools:b,toolOrder:c,output:d,toolChoice:e,prompt:f,system:g,instructions:h,messages:i,allowSystemInMessages:j,download:k,abortSignal:l,headers:m,includeRawChunks:n,providerOptions:o,repairToolCall:p,refineToolInput:q,executeLanguageModelCallInTelemetryContext:r=async({execute:a})=>await a(),callId:s,toolsContext:t,experimental_sandbox:u,_internal:{generateId:v=dS,generateCallId:w=dT,now:x=cv}={},onStart:y,onLanguageModelCallStart:z,onLanguageModelCallEnd:A,...B}){let C=bC(a),D=null!=s?s:w(),E=await cn({instructions:h,system:g,prompt:f,messages:i,allowSystemInMessages:j}),F=await bM({prompt:{instructions:E.instructions,messages:E.messages},supportedUrls:await C.supportedUrls,download:k,provider:C.provider.split(".")[0]}),G=await bX({tools:b,toolOrder:c,toolsContext:t,experimental_sandbox:u}),H=bW({toolChoice:e});await cw({event:{promptMessages:F},callbacks:y});let I={callId:D,...{provider:C.provider,modelId:C.modelId,instructions:E.instructions,messages:E.messages,tools:G,...B}};await cw({event:I,callbacks:z});let J=x(),{stream:K,response:L,request:M}=await r({...I,execute:async()=>await C.doStream({...B,tools:G,toolChoice:H,responseFormat:await (null==d?void 0:d.responseFormat),prompt:F,providerOptions:o,abortSignal:l,headers:m,includeRawChunks:n})});return{stream:dI(K.pipeThrough(function({tools:a,instructions:b,messages:c,repairToolCall:d,refineToolInput:e,callId:f,provider:g,modelId:h,generateId:i,now:j,callStartTimestampMs:k,onLanguageModelCallEnd:l}){let m,n,o=new Map,p=[],q=new Map,r=new Map,s=i(),t=h,u=[];return new TransformStream({async transform(h,i){var v,w,x,y,z;if("text-delta"===(y=h).type&&y.delta.length>0||"reasoning-delta"===y.type&&y.delta.length>0||"tool-input-delta"===y.type&&y.delta.length>0||"file"===y.type||"reasoning-file"===y.type||"tool-call"===y.type){let a=j();null==m?m=a-k:null!=n&&u.push(a-n),n=a}switch(h.type){case"error":i.enqueue({type:"error",error:function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;if((r=a)instanceof Error||"[object Error]"===Object.prototype.toString.call(r)||S.AISDKError.isInstance(a)||aY.isInstance(a))return a;let t=dN(a);if(null==t)return a;let u=(0,R.isProviderStreamError)(a),v=u?t:null!=(d=null!=(c=dN(null==(b=dN(t.response))?void 0:b.error))?c:dN(t.error))?d:t;if("string"!=typeof v.message)return a;let w=null!=(e=dO(v.type))?e:dO(t.type),x=null!=(f=dP(v.code))?f:dP(t.code),y=null!=(m=null!=(l=null!=(k=null!=(j=null!=(i=null!=(h=null!=(g=dR(v.statusCode))?g:dR(t.statusCode))?h:dR(v.status_code))?i:dR(t.status_code))?j:dR(v.status))?k:dR(t.status))?l:dR(v.code))?m:dR(t.code),z=function(a){switch(a.trim().toLowerCase()){case"overloaded":case"overloaded error":case"model overloaded":case"service unavailable":return{statusCode:503,isRetryable:!0};case"internal server error":return{statusCode:500,isRetryable:!0};default:return}}(v.message),A=null!=y?y:null==z?void 0:z.statusCode,B=null!=(p=null!=(o=null!=(n=dQ(v.isRetryable))?n:dQ(t.isRetryable))?o:dQ(v.is_retryable))?p:dQ(t.is_retryable);return new aY({message:v.message,type:w,code:x,statusCode:A,isRetryable:null!=(q=null!=B?B:null==z?void 0:z.isRetryable)?q:null!=(s=A)&&(408===s||409===s||429===s||s>=500),data:u?a.data:a})}(h.error)});break;case"text-start":dW({content:p,partIndexes:q,id:h.id,type:"text",providerMetadata:h.providerMetadata}),i.enqueue(h);break;case"text-delta":dW({content:p,partIndexes:q,id:h.id,type:"text",textDelta:h.delta,providerMetadata:h.providerMetadata}),i.enqueue({type:"text-delta",id:h.id,text:h.delta,providerMetadata:h.providerMetadata});break;case"text-end":dW({content:p,partIndexes:q,id:h.id,type:"text",providerMetadata:h.providerMetadata}),q.delete(h.id),i.enqueue(h);break;case"reasoning-start":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",providerMetadata:h.providerMetadata}),i.enqueue(h);break;case"reasoning-delta":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",textDelta:h.delta,providerMetadata:h.providerMetadata}),i.enqueue({type:"reasoning-delta",id:h.id,text:h.delta,providerMetadata:h.providerMetadata});break;case"reasoning-end":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",providerMetadata:h.providerMetadata}),r.delete(h.id),i.enqueue(h);break;case"file":case"reasoning-file":{let a=new cC({data:"data"===h.data.type?h.data.data:h.data.url.toString(),mediaType:h.mediaType});p.push({type:h.type,file:a,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{}}),i.enqueue({type:h.type,file:a,providerMetadata:h.providerMetadata});break}case"finish":{let a,b,c=cp(h.usage),d=j()-k,e={responseTimeMs:d,effectiveOutputTokensPerSecond:cz({tokens:c.outputTokens,durationMs:d}),outputTokensPerSecond:null==m?void 0:cz({tokens:c.outputTokens,durationMs:d-m}),inputTokensPerSecond:null==m?void 0:cz({tokens:c.inputTokens,durationMs:m}),effectiveTotalTokensPerSecond:cz({tokens:de(c.inputTokens,c.outputTokens),durationMs:d}),timeToFirstOutputMs:m,timeBetweenOutputChunksMs:u.length>0?(a=[...z=u].sort((a,b)=>a-b),b=z.reduce((a,b)=>a+b,0),{min:a[0],p10:dV(a,.1),median:dV(a,.5),avg:b/z.length,p90:dV(a,.9),max:a[a.length-1]}):void 0};await cw({event:{callId:f,provider:g,modelId:t,finishReason:h.finishReason.unified,usage:c,content:p,responseId:s,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},performance:e},callbacks:l}),i.enqueue({type:"model-call-end",finishReason:h.finishReason.unified,rawFinishReason:h.finishReason.raw,usage:c,providerMetadata:h.providerMetadata,performance:e});break}case"tool-call":try{let f=await cT({toolCall:h,tools:a,repairToolCall:d,refineToolInput:e,instructions:b,messages:c});o.set(f.toolCallId,f),i.enqueue(f),p.push(f),f.invalid&&(f.providerExecuted||i.enqueue({type:"tool-error",toolCallId:f.toolCallId,toolName:f.toolName,input:f.input,error:(0,S.getErrorMessage)(f.error),dynamic:!0,title:f.title,...null!=f.toolMetadata?{toolMetadata:f.toolMetadata}:{}}))}catch(a){i.enqueue({type:"error",error:a})}break;case"tool-approval-request":{let a=o.get(h.toolCallId);if(null==a){i.enqueue({type:"error",error:new an({toolCallId:h.toolCallId,approvalId:h.approvalId})});break}let b={type:"tool-approval-request",approvalId:h.approvalId,toolCall:a};i.enqueue(b),p.push(b);break}case"tool-result":{let a=h.toolName,b=o.get(h.toolCallId),c=h.isError?{type:"tool-error",toolCallId:h.toolCallId,toolName:a,input:null==b?void 0:b.input,providerExecuted:!0,error:h.result,dynamic:h.dynamic,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},...(null==b?void 0:b.toolMetadata)!=null?{toolMetadata:b.toolMetadata}:{}}:{type:"tool-result",toolCallId:h.toolCallId,toolName:a,input:null==b?void 0:b.input,output:h.result,providerExecuted:!0,dynamic:h.dynamic,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},...(null==b?void 0:b.toolMetadata)!=null?{toolMetadata:b.toolMetadata}:{}};i.enqueue(c),p.push(c);break}case"tool-input-start":{let b=ct(a,h.toolName);i.enqueue({...h,dynamic:null!=(v=h.dynamic)?v:(null==b?void 0:b.type)==="dynamic",title:null==b?void 0:b.title,...(null==b?void 0:b.metadata)!=null?{toolMetadata:b.metadata}:{}});break}case"stream-start":i.enqueue({type:"model-call-start",warnings:h.warnings});break;case"response-metadata":s=null!=(w=h.id)?w:s,t=null!=(x=h.modelId)?x:t,i.enqueue({type:"model-call-response-metadata",id:h.id,timestamp:h.timestamp,modelId:h.modelId});break;default:("custom"===h.type||"source"===h.type)&&p.push(h),i.enqueue(h)}}})}({tools:b,instructions:E.instructions,messages:E.messages,repairToolCall:p,refineToolInput:q,callId:D,provider:C.provider,modelId:C.modelId,generateId:v,now:x,callStartTimestampMs:J,onLanguageModelCallEnd:A}))),response:L,request:M}}function dV(a,b){return a[Math.ceil(b*a.length)-1]}function dW({content:a,partIndexes:b,id:c,type:d,textDelta:e,providerMetadata:f}){let g=b.get(c);null==g&&(g=a.push({type:d,text:"",...null!=f?{providerMetadata:f}:{}})-1,b.set(c,g));let h=a[g];null!=e&&(h.text+=e),null!=f&&(h.providerMetadata=f)}var dX=(0,R.createIdGenerator)({prefix:"aitxt",size:24}),dY=(0,R.createIdGenerator)({prefix:"call",size:24}),dZ={file:!0,custom:!1,source:!1,"text-start":!1,"text-end":!1,"text-delta":!0,"reasoning-start":!1,"reasoning-end":!1,"reasoning-delta":!0,"reasoning-file":!0,"tool-input-start":!1,"tool-input-end":!1,"tool-input-delta":!0,"tool-approval-request":!1,"tool-approval-response":!1,"tool-call":!0,"tool-result":!1,"tool-error":!1,"tool-execution-end":!1,"model-call-start":!1,"model-call-response-metadata":!1,"model-call-end":!1,error:!1,raw:!1};function d$(a){if(!dZ[a.type])return!1;switch(a.type){case"text-delta":case"reasoning-delta":return a.text.length>0;case"tool-input-delta":return a.delta.length>0;case"file":case"reasoning-file":case"tool-call":return!0;default:return!1}}var d_=Symbol("streamRetryBoundary");async function d0(a){try{await a}catch(a){}}var d1=class{constructor({model:a,telemetry:b,headers:c,settings:d,maxRetries:e,streamRetries:f,abortSignal:g,stepTimeoutMs:h,stepAbortController:i,firstChunkTimeoutMs:j,firstChunkAbortController:k,chunkTimeoutMs:l,chunkAbortController:m,instructions:n,system:o,prompt:p,messages:q,allowSystemInMessages:r,experimental_sandbox:s,tools:t,toolChoice:u,transforms:v,activeTools:w,toolOrder:x,repairToolCall:y,refineToolInput:z,stopConditions:A,output:B,toolApproval:C,experimental_toolCallers:D,experimental_toolApprovalSecret:E,providerOptions:F,prepareStep:G,now:H,generateId:I,generateCallId:J,timeout:K,onChunk:L,onError:M,canRetryStreamViaOnError:N,onEnd:O,onAbort:P,onStepFinish:Q,onStart:T,onStepStart:U,onLanguageModelCallStart:V,onLanguageModelCallEnd:W,onToolExecutionStart:X,onToolExecutionEnd:Y,runtimeContext:Z,toolsContext:$,download:_,include:aa}){let ab,ac,ad,ae,af,ag;this._totalUsage=new R.DelayedPromise,this._finishReason=new R.DelayedPromise,this._rawFinishReason=new R.DelayedPromise,this._steps=new R.DelayedPromise,this._initialResponseMessages=new R.DelayedPromise,this.outputSpecification=B,this.tools=t;const ah=dh({tools:t,toolCallers:D}),ai=db({telemetry:b,includeRuntimeContext:null==b?void 0:b.includeRuntimeContext,includeToolsContext:null==b?void 0:b.includeToolsContext});let aj=[],ak={},al=[],am=[];const an=[],ao=[];let ap=[];const aq=()=>{let a=new Set;return b=>{if(!a.has(b))return a.add(b),b;let c=I(),d=c,e=0;for(;a.has(d);)d=`${c}-${++e}`;return a.add(d),d}},ar=aq(),as=aq(),at=new Map;let au=dE(),av=dE();const aw=new Set,ax=new TransformStream({async transform(b,c){var d,e,f,g,h;if(d_ in b){let a=b[d_];aj=[],av=dE(),au=dE(),ak=a.request,al=null!=(d=a.request.messages)?d:[],am=a.warnings;return}let{part:i}=b;c.enqueue(b);let j="error"===i.type&&aw.has(i.error);if(j||await cw({event:{chunk:i},callbacks:L}),"error"===i.type){let a=co(i.error);aD.isInstance(a)&&(ad=a),j?aw.delete(i.error):await cw({event:{error:a},callbacks:async a=>{await M(a)}})}if(("custom"===i.type||"source"===i.type||"tool-call"===i.type||"tool-approval-request"===i.type||"tool-approval-response"===i.type||"tool-error"===i.type)&&aj.push(i),"text-start"===i.type&&(au[i.id]={type:"text",text:"",providerMetadata:i.providerMetadata},aj.push(au[i.id])),"text-delta"===i.type){let a=au[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`text part ${i.id} not found`},partialOutput:void 0});a.text+=i.text,a.providerMetadata=null!=(e=i.providerMetadata)?e:a.providerMetadata}if("text-end"===i.type){let a=au[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`text part ${i.id} not found`},partialOutput:void 0});a.providerMetadata=null!=(f=i.providerMetadata)?f:a.providerMetadata,delete au[i.id]}if("reasoning-start"===i.type&&(av[i.id]={type:"reasoning",text:"",providerMetadata:i.providerMetadata},aj.push(av[i.id])),"reasoning-delta"===i.type){let a=av[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`reasoning part ${i.id} not found`},partialOutput:void 0});a.text+=i.text,a.providerMetadata=null!=(g=i.providerMetadata)?g:a.providerMetadata}if("reasoning-end"===i.type){let a=av[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`reasoning part ${i.id} not found`},partialOutput:void 0});a.providerMetadata=null!=(h=i.providerMetadata)?h:a.providerMetadata,delete av[i.id]}if(("file"===i.type||"reasoning-file"===i.type)&&aj.push({type:i.type,file:i.file,...null!=i.providerMetadata?{providerMetadata:i.providerMetadata}:{}}),"tool-result"!==i.type||i.preliminary||aj.push(i),"start-step"===i.type&&(aj=[],av=dE(),au=dE(),ak=i.request,am=i.warnings),"finish-step"===i.type){let b=await df({content:aj,tools:t}),c=new c6({callId:aH,stepNumber:an.length,provider:a.provider,modelId:a.modelId,runtimeContext:Z,toolsContext:$,content:aj,finishReason:i.finishReason,rawFinishReason:i.rawFinishReason,usage:i.usage,performance:i.performance,warnings:am,request:{...ak,messages:aa.requestMessages?bE(al):void 0},response:{...i.response,messages:bE(b)},providerMetadata:i.providerMetadata});await cw({event:c,callbacks:[Q,ai.onStepEnd]}),bp({warnings:am,provider:a.provider,model:a.modelId}),an.push(c),ac=[...ap,...b],ab.resolve()}"finish"===i.type&&(ag=i.totalUsage,ae=i.finishReason,af=i.rawFinishReason)},async flush(a){try{if(0===an.length||null!=ad){let a=(null==g?void 0:g.aborted)?g.reason:null!=ad?ad:new aD({message:"No output generated. Check the stream for errors."});aG.rejectResultPromises(a);return}let a=null!=ae?ae:"other",b=null!=ag?ag:cq();aG._finishReason.resolve(a),aG._rawFinishReason.resolve(af),aG._totalUsage.resolve(b),aG._steps.resolve(an);let c=an[an.length-1],d=an.flatMap(a=>a.content),e=an.flatMap(a=>a.files),f=an.flatMap(a=>a.sources),h=an.flatMap(a=>a.toolCalls),i=an.flatMap(a=>a.staticToolCalls),j=an.flatMap(a=>a.dynamicToolCalls),k=an.flatMap(a=>a.toolResults),l=an.flatMap(a=>a.staticToolResults),m=an.flatMap(a=>a.dynamicToolResults),n=an.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]}),o=null==O?void 0:async a=>{let b=null==B?void 0:await aG.getOutputPromise().catch(()=>void 0);await O({...a,...null!=B?{output:b}:{}})},p={callId:aH,toolsContext:c.toolsContext,stepNumber:c.stepNumber,model:c.model,runtimeContext:c.runtimeContext,finishReason:c.finishReason,rawFinishReason:c.rawFinishReason,usage:b,totalUsage:b,content:d,text:c.text,reasoning:c.reasoning,reasoningText:c.reasoningText,files:e,sources:f,toolCalls:h,staticToolCalls:i,dynamicToolCalls:j,toolResults:k,staticToolResults:l,dynamicToolResults:m,responseMessages:[...ao,...an.flatMap(a=>a.response.messages)],warnings:n,request:c.request,response:c.response,providerMetadata:c.providerMetadata,steps:an,finalStep:c};await Promise.all([cw({event:p,callbacks:o}),cw({event:p,callbacks:ai.onEnd})])}catch(b){a.error(b)}}}),ay=function(){let a=[],b=null,c=!1,d=!1,e=dK(),f=()=>{d||(c=!0,e.resolve(),a.forEach(({reader:a,onCancel:b})=>{null==b||b(),a.cancel()}),a=[],null==b||b.close())},g=async()=>{var h;if(d)return;if(c&&0===a.length){null==b||b.close();return}if(0===a.length)return e=dK(),await e.promise,await g();let i=a[0];try{let{value:e,done:f}=await i.reader.read();if(d)return;f?(a.shift(),0===a.length&&c?null==b||b.close():await g()):null==b||b.enqueue(e)}catch(c){if(d)return;null==(h=i.onError)||h.call(i,c),null==b||b.error(c),a.shift(),f()}};return{stream:new ReadableStream({start(a){b=a},pull:g,async cancel(){for(let{reader:b,onCancel:f}of(d=!0,c=!0,e.resolve(),a))null==f||f(),await b.cancel();a=[]}}),addStream:(b,f)=>{var g;if(d){null==(g=null==f?void 0:f.onCancel)||g.call(f),b.cancel().catch(()=>{});return}if(c)throw Error("Cannot add inner stream: outer stream is closed");a.push({reader:b.getReader(),...f}),e.resolve()},close:()=>{d||(c=!0,e.resolve(),0===a.length&&(null==b||b.close()))},terminate:f}}();this.addStream=ay.addStream,this.closeStream=ay.close;const az=ay.stream.getReader();let aA=new ReadableStream({async start(a){a.enqueue({type:"start"})},async pull(a){async function b(){await cw({event:{callId:aH,steps:an,...(null==g?void 0:g.reason)!==void 0?{reason:g.reason}:{}},callbacks:[P,ai.onAbort]}),a.enqueue({type:"abort",...(null==g?void 0:g.reason)!==void 0?{reason:(0,S.getErrorMessage)(g.reason)}:{}}),a.close()}try{let{done:c,value:d}=await az.read();if(c)return void a.close();if(null==g?void 0:g.aborted)return void await b();a.enqueue(d)}catch(c){(0,R.isAbortError)(c)&&(null==g?void 0:g.aborted)?await b():a.error(c)}},cancel:a=>ay.stream.cancel(a)}),aB=!0;aA=function({stream:a,transforms:b,tools:c,stopStream:d}){let e,f,g=a.getReader(),h=!1;return new ReadableStream({async pull(a){null!=f||(f=(()=>{let a=new ReadableStream({async pull(a){let{done:b,value:c}=await g.read();if(b){h=!0,a.close();return}if(d_ in c){e=c,a.close();return}a.enqueue(c)},cancel:a=>g.cancel(a)},{highWaterMark:0});for(let e of b)a=a.pipeThrough(e({tools:c,stopStream:d}));return a.getReader()})());let{done:i,value:j}=await f.read();if(!i)return void a.enqueue(j);if(f=void 0,null!=e){a.enqueue(e),e=void 0;return}h&&a.close()},async cancel(a){await (null==f?void 0:f.cancel(a)),await g.cancel(a)}})}({stream:aA=aA.pipeThrough(new TransformStream({async transform(a,b){aB&&b.enqueue(a)}})),transforms:v,tools:t,stopStream(){ay.terminate(),aB=!1}}),this.baseStream=aA.pipeThrough(function(a){let b,c,d="",e="",f="";function g({controller:a,chunk:b}){a.enqueue(b)}function h({controller:a,partialOutput:d}){g({controller:a,chunk:{part:{type:"text-delta",id:b,text:e,providerMetadata:c},partialOutput:d}}),e=""}return new TransformStream({async transform(i,j){var k;if(d_ in i){b=void 0,d="",e="",c=void 0,f="",j.enqueue(i);return}if("finish-step"===i.type&&e.length>0&&h({controller:j}),"text-delta"!==i.type&&"text-start"!==i.type&&"text-end"!==i.type)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if(null==b)b=i.id;else if(i.id!==b)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if("text-start"===i.type)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if("text-end"===i.type){e.length>0&&h({controller:j}),g({controller:j,chunk:{part:i,partialOutput:void 0}});return}if(d+=i.text,e+=i.text,c=null!=(k=i.providerMetadata)?k:c,0===i.text.length&&null!=i.providerMetadata)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});let l=await a.parsePartialOutput({text:d});if(void 0!==l){let a="string"==typeof l.partial?l.partial:JSON.stringify(l.partial);a!==f&&(h({controller:j,partialOutput:l.partial}),f=a)}}})}(null!=B?B:cM())).pipeThrough(ax);const{maxRetries:aC}=cx({maxRetries:e,abortSignal:g}),{maxRetries:aE}=cx({maxRetries:f,abortSignal:g,parameter:"streamRetries",defaultMaxRetries:0}),aF=bV(d),aG=this,aH=J();(async()=>{var b;let d=await cn({instructions:n,system:o,prompt:p,messages:q,allowSystemInMessages:r}),e={callId:aH,operationId:"ai.streamText",provider:a.provider,modelId:a.modelId,instructions:d.instructions,messages:d.messages,tools:t,toolChoice:u,activeTools:w,toolOrder:x,maxOutputTokens:aF.maxOutputTokens,temperature:aF.temperature,topP:aF.topP,topK:aF.topK,presencePenalty:aF.presencePenalty,frequencyPenalty:aF.frequencyPenalty,stopSequences:aF.stopSequences,seed:aF.seed,reasoning:aF.reasoning,maxRetries:aC,timeout:K,headers:c,providerOptions:F,output:B,runtimeContext:Z,toolsContext:$},f=null==(b=ai.startTracingChannelContext)?void 0:b.call(ai,{type:"streamText",event:e,completion:aG._totalUsage.promise.then(()=>void 0)}),v=a=>{var b;return null!=(b=null==f?void 0:f.run(a))?b:a()},D=null==ai.runInTracingChannelSpan?void 0:a=>v(()=>ai.runInTracingChannelSpan(a));await cw({event:e,callbacks:[T,ai.onStart]});let J=d.messages,O=d.instructions,{approvedToolApprovals:P,deniedToolApprovals:Q}=cA({messages:J});if(Q.length>0||P.length>0){let a,{approvedToolApprovals:b,deniedToolApprovals:c,invalidToolApprovals:d}=await dt({approvedToolApprovals:P.filter(a=>!a.toolCall.providerExecuted),tools:t,toolApproval:C,messages:J,toolsContext:$,runtimeContext:Z,toolApprovalSecret:E}),e=[...Q.filter(a=>!a.toolCall.providerExecuted),...c],f=e.filter(a=>null==a.existingToolResult),h=Q.filter(a=>a.toolCall.providerExecuted),i=new ReadableStream({start(b){a=b}});aG.addStream(i);try{for(let b of[...e,...h])null==a||a.enqueue({type:"tool-output-denied",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName});for(let b of d)null==a||a.enqueue({type:"tool-error",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,input:b.toolCall.input,error:(0,S.getErrorMessage)(b.error),title:b.toolCall.title,...!0===b.toolCall.dynamic?{dynamic:!0}:{},...null!=b.toolCall.toolMetadata?{toolMetadata:b.toolCall.toolMetadata}:{}});let c=[];if(await Promise.all(b.map(async b=>{let d=await cF({toolCall:b.toolCall,tools:t,callId:aH,messages:J,abortSignal:g,timeout:K,experimental_sandbox:s,toolsContext:$,onToolExecutionStart:(0,R.filterNullable)(X,ai.onToolExecutionStart),onToolExecutionEnd:(0,R.filterNullable)(Y,ai.onToolExecutionEnd),executeToolInTelemetryContext:ai.executeTool,runInTracingChannelSpan:D,onPreliminaryToolResult:b=>{null==a||a.enqueue(b)}});null!=d&&(null==a||a.enqueue(d.output),c.push(d.output))})),c.length>0||f.length>0||d.length>0){let a=[];for(let b of c)a.push({type:"tool-result",toolCallId:b.toolCallId,toolName:b.toolName,output:await bT({toolCallId:b.toolCallId,input:b.input,tool:ct(t,b.toolName),output:"tool-result"===b.type?b.output:b.error,errorMode:"tool-error"===b.type?"text":"none"})});for(let b of d)a.push({type:"tool-result",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,output:await bT({toolCallId:b.toolCall.toolCallId,input:b.toolCall.input,tool:ct(t,b.toolCall.toolName),output:b.error,errorMode:"text"})});for(let b of f)a.push({type:"tool-result",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,output:{type:"execution-denied",reason:b.approvalResponse.reason}});ao.push({role:"tool",content:a})}}finally{null==a||a.close()}}async function ad({currentStep:b,usage:e}){var f,n,o,p,q,D,P,Q,S,T,ae,af;let ag,aj,ak=cy({abortController:i,label:"Step",timeoutMs:h});function am(){null!=ag&&(clearTimeout(ag),ag=void 0)}function aq(){null!=aj&&clearTimeout(aj),aj=cy({abortController:m,label:"Chunk",timeoutMs:l})}function au(){null==g||g.removeEventListener("abort",au),null!=ak&&clearTimeout(ak),am(),null!=aj&&(clearTimeout(aj),aj=void 0)}null==g||g.addEventListener("abort",au,{once:!0});try{let h,i,l;ab=new R.DelayedPromise;let m=null==(f=ai.startTracingChannelContext)?void 0:f.call(ai,{type:"step",event:{callId:aH,stepNumber:b},completion:ab.promise}),aj=a=>{var b;return null!=(b=null==m?void 0:m.run(a))?b:a()},ak=an.flatMap(a=>a.response.messages),av=[...ao,...ak],ax=null!=ac?ac:[...J,...ao],ay=await (null==G?void 0:G({model:a,steps:an,stepNumber:an.length,instructions:O,initialInstructions:d.instructions,messages:ax,initialMessages:J,responseMessages:av,toolsContext:$,runtimeContext:Z,experimental_sandbox:s})),az=null!=(n=null==ay?void 0:ay.experimental_sandbox)?n:s;Z=null!=(o=null==ay?void 0:ay.runtimeContext)?o:Z,$=null!=(p=null==ay?void 0:ay.toolsContext)?p:$;let aA=bC(null!=(q=null==ay?void 0:ay.model)?q:a),aB=cG({tools:t,activeTools:null!=(D=null==ay?void 0:ay.activeTools)?D:w}),{executionTools:aI,modelTools:aJ}=di({tools:aB,toolCallers:ah}),aK=null!=(P=null==ay?void 0:ay.toolOrder)?P:x,aL=await bX({tools:aJ,toolOrder:aK,toolsContext:$,experimental_sandbox:az}),aM=bW({toolChoice:null!=(Q=null==ay?void 0:ay.toolChoice)?Q:u}),aN=null!=(S=null==ay?void 0:ay.messages)?S:ax;ap=aN;let aO=null!=(ae=null!=(T=null==ay?void 0:ay.instructions)?T:null==ay?void 0:ay.system)?ae:O;O=aO;let aP=bH(F,null==ay?void 0:ay.providerOptions),aQ=cX({callSettings:aF,stepSettings:ay}),aR=H(),{retry:aS}=cx({maxRetries:aC,abortSignal:g}),aT=!1,aU=()=>aj(()=>aS(async()=>{var b,d;return dU({model:null!=(b=null==ay?void 0:ay.model)?b:a,tools:aJ,toolOrder:aK,toolChoice:null!=(d=null==ay?void 0:ay.toolChoice)?d:u,instructions:aO,messages:aN,allowSystemInMessages:r,repairToolCall:y,refineToolInput:z,abortSignal:g,headers:c,includeRawChunks:aa.rawChunks,providerOptions:aP,download:_,output:B,callId:aH,executeLanguageModelCallInTelemetryContext:ai.executeLanguageModelCall,toolsContext:$,experimental_sandbox:az,onLanguageModelCallStart:(0,R.filterNullable)(V,ai.onLanguageModelCallStart),onLanguageModelCallEnd:(0,R.filterNullable)(W,ai.onLanguageModelCallEnd),onStart:async({promptMessages:a})=>{var b,c;aT||(aT=!0,await cw({event:{callId:aH,provider:aA.provider,modelId:aA.modelId,stepNumber:an.length,instructions:aO,messages:aN,tools:t,toolChoice:null!=(b=null==ay?void 0:ay.toolChoice)?b:u,activeTools:null!=(c=null==ay?void 0:ay.activeTools)?c:w,toolOrder:aK,steps:[...an],providerOptions:aP,runtimeContext:Z,toolsContext:$,output:B,promptMessages:a,stepTools:aL,stepToolChoice:aM},callbacks:[U,ai.onStepStart]}))},_internal:{now:H},...aQ})})),aV=await aU(),aW=aV.request,aX=aV.response,aY=aV.stream.getReader(),aZ=0,a$=0,a_=[],a0=new WeakSet,a1=new Set,a2=new Set,a3=!1,a4=aE>0||N,a5=new ReadableStream({async pull(a){let b=b=>{switch(b.type){case"text-start":a1.add(b.id);break;case"text-end":a1.delete(b.id);break;case"reasoning-start":a2.add(b.id);break;case"reasoning-end":a2.delete(b.id)}a.enqueue(b)},c=()=>{for(let a of a_)b(a);a_=[]},d=()=>{for(let b of a1)a.enqueue({type:"text-end",id:b});for(let b of(a1.clear(),a2))a.enqueue({type:"reasoning-end",id:b});a2.clear()};for(;;){let e,f,{done:g,value:h}=await aY.read();if(a3&&(a.enqueue(function({warnings:a}){return{[dL]:!0,warnings:a}}({warnings:g||"model-call-start"!==h.type?[]:h.warnings})),a3=!1),g){c(),a.close();return}let i="tool-input-start"===h.type||"tool-input-delta"===h.type||"tool-input-end"===h.type||"tool-call"===h.type||"tool-approval-request"===h.type||"tool-approval-response"===h.type||"tool-result"===h.type||"tool-error"===h.type;if("model-call-end"===h.type){c(),b(h);return}if(a4&&"error"!==h.type&&(i||a_.length>0)){d$(h)&&(am(),aq(),a0.add(h)),a_.push(h);continue}if("error"!==h.type)return void b(h);await cw({event:{chunk:h},callbacks:L});let j=co(h.error);try{e=await M({error:j})}catch(a){}let k=N&&"object"==typeof e&&null!=e&&"retry"in e&&!0===e.retry,l=aZ<aE,m=!l&&k&&a$<1;if(!l&&!m){c(),aw.add(h.error),a.enqueue(h);return}l?aZ++:a$++,await aY.cancel(j),a_=[],d();try{f=await aU()}catch(b){a.enqueue({type:"error",error:b}),a.close();return}aW=f.request,aX=f.response,aY=f.stream.getReader(),a3=!0}},cancel:a=>aY.cancel(a)});null!=g&&g.aborted||(ag=cy({abortController:k,label:"First chunk",timeoutMs:j}));let a6=function({stream:a,tools:b,stepInputMessages:c,abortSignal:d,runtimeContext:e}){if(null==b)return a;let f=dE();return a.pipeThrough(new TransformStream({async transform(a,g){if(g.enqueue(a),!dM(a))switch(a.type){case"tool-input-start":{f[a.id]=a.toolName;let g=ct(b,a.toolName);(null==g?void 0:g.onInputStart)!=null&&await g.onInputStart({toolCallId:a.id,messages:c,abortSignal:d,context:e});break}case"tool-input-delta":{let g=ct(b,f[a.id]);(null==g?void 0:g.onInputDelta)!=null&&await g.onInputDelta({inputTextDelta:a.delta,toolCallId:a.id,messages:c,abortSignal:d,context:e});break}case"tool-call":{let g=ct(b,f[a.toolCallId]);delete f[a.toolCallId],(null==g?void 0:g.onInputAvailable)!=null&&await g.onInputAvailable({input:a.input,toolCallId:a.toolCallId,messages:c,abortSignal:d,context:e})}}}}))}({stream:a5,tools:aI,stepInputMessages:aN,abortSignal:g,runtimeContext:Z}),a7=null==ai.runInTracingChannelSpan?void 0:a=>aj(()=>ai.runInTracingChannelSpan(a)),a8=function({stream:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,toolApproval:i,runtimeContext:j,toolApprovalSecret:k,generateId:l,onToolExecutionStart:m,onToolExecutionEnd:n,executeToolInTelemetryContext:o,runInTracingChannelSpan:p}){let q=[];return a.pipeThrough(new TransformStream({async transform(a,r){if(r.enqueue(a),dM(a)){q.length=0;return}switch(a.type){case"tool-call":{if(a.invalid)return;let c=ct(b,a.toolName);if(null==c)return;let e=await cZ({tools:b,toolCall:a,toolApproval:i,messages:d,toolsContext:h,runtimeContext:j});if("not-applicable"===e.type){null!=c.execute&&!0!==a.providerExecuted&&q.push(a);return}let f=l(),g=await ds({secret:k,approvalId:f,toolCallId:a.toolCallId,toolName:a.toolName,input:a.input});switch(e.type){case"user-approval":return void r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,...null!=e.reason?{reason:e.reason}:{},...null!=g?{signature:g}:{}});case"denied":r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,isAutomatic:!0,...null!=g?{signature:g}:{}}),r.enqueue({type:"tool-approval-response",approvalId:f,approved:!1,toolCall:a,reason:e.reason,providerExecuted:a.providerExecuted});return;case"approved":r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,isAutomatic:!0,...null!=g?{signature:g}:{}}),r.enqueue({type:"tool-approval-response",approvalId:f,approved:!0,toolCall:a,reason:e.reason,providerExecuted:a.providerExecuted})}null!=c.execute&&!0!==a.providerExecuted&&q.push(a);return}case"model-call-end":if(!cH(a.finishReason))return;await Promise.all(q.map(async a=>{try{let i=await cF({toolCall:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,onToolExecutionStart:m,onToolExecutionEnd:n,executeToolInTelemetryContext:o,runInTracingChannelSpan:p,onPreliminaryToolResult:a=>{r.enqueue(a)}});null!=i&&(r.enqueue({type:"tool-execution-end",toolCallId:i.output.toolCallId,toolExecutionMs:i.toolExecutionMs}),r.enqueue(i.output))}catch(a){r.enqueue({type:"error",error:a})}}));return}}}))}({stream:a6,tools:aI,callId:aH,messages:aN,abortSignal:g,timeout:K,experimental_sandbox:az,toolsContext:$,toolApproval:C,runtimeContext:Z,toolApprovalSecret:E,generateId:I,onToolExecutionStart:(0,R.filterNullable)(X,ai.onToolExecutionStart),onToolExecutionEnd:(0,R.filterNullable)(Y,ai.onToolExecutionEnd),executeToolInTelemetryContext:ai.executeTool,runInTracingChannelSpan:a7}),a9=()=>({...aW,body:aa.requestBody?null==aW?void 0:aW.body:void 0,messages:aa.requestMessages?bE(aN):void 0});al=null!=(af=a9().messages)?af:[];let ba=[],bb=[],bc=[],bd="other",be=!1,bf=!1,bg=cq(),bh=!0,bi=()=>({responseTimeMs:0,effectiveOutputTokensPerSecond:0,outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:0,timeToFirstOutputMs:void 0,timeBetweenOutputChunksMs:void 0}),bj=bi(),bk={},bl=()=>({id:I(),timestamp:new Date,modelId:a.modelId}),bm=bl(),bn=new Map,bo=new Map,bp=(a,b)=>{a.enqueue(b)};aG.addStream(a8.pipeThrough(new TransformStream({async transform(a,b){var c,d,e,f,g,j,k;if(dM(a)){h=a.warnings,bd="other",l=void 0,be=!1,bf=!1,bg=cq(),i=void 0,bj=bi(),bm=bl(),bn.clear(),bo.clear(),b.enqueue({[d_]:{request:a9(),warnings:h}});return}if("model-call-start"===a.type){h=a.warnings;return}bh&&(bh=!1,bp(b,{type:"start-step",request:a9(),warnings:null!=h?h:[]}));let m=a.type;if(d$(a)){let b=a0.has(a);bf||b||am(),bf=!0,b||aq()}switch(m){case"file":case"custom":case"source":case"reasoning-file":case"tool-input-start":case"tool-input-end":case"tool-input-delta":case"tool-approval-request":bp(b,a);break;case"text-start":{let c=ar(a.id);bn.set(a.id,c),bp(b,{...a,id:c});break}case"text-delta":(a.text.length>0||null!=a.providerMetadata)&&bp(b,{...a,id:null!=(c=bn.get(a.id))?c:a.id});break;case"text-end":bp(b,{...a,id:null!=(d=bn.get(a.id))?d:a.id}),bn.delete(a.id);break;case"reasoning-start":{let c=as(a.id);bo.set(a.id,c),bp(b,{...a,id:c});break}case"reasoning-delta":bp(b,{...a,id:null!=(e=bo.get(a.id))?e:a.id});break;case"reasoning-end":bp(b,{...a,id:null!=(f=bo.get(a.id))?f:a.id}),bo.delete(a.id);break;case"tool-call":bp(b,a),ba.push(a);break;case"tool-approval-response":bp(b,a),bc.push(a);break;case"tool-result":bp(b,a),a.preliminary||bb.push(a);break;case"tool-error":bp(b,a),bb.push(a);break;case"tool-execution-end":bk[a.toolCallId]=a.toolExecutionMs;break;case"model-call-response-metadata":bm={id:null!=(g=a.id)?g:bm.id,timestamp:null!=(j=a.timestamp)?j:bm.timestamp,modelId:null!=(k=a.modelId)?k:bm.modelId};break;case"model-call-end":be=!0,bg=a.usage,bd=a.finishReason,l=a.rawFinishReason,i=a.providerMetadata,bj=a.performance;break;case"error":be=!0,bp(b,a),bd="error";break;case"raw":aa.rawChunks&&bp(b,a);break;default:throw Error(`Unknown chunk type: ${m}`)}},async flush(a){if(!be&&!bf){bp(a,{type:"error",error:new aD({message:"No output generated. The model stream ended without a finish chunk."})}),au(),aG.closeStream();return}let c=H()-aR,d={type:"finish-step",finishReason:bd,rawFinishReason:l,usage:bg,performance:{stepTimeMs:c,toolExecutionMs:bk,...bj},providerMetadata:i,response:{...bm,headers:null==aX?void 0:aX.headers}};bp(a,d);let f=cr(e,bg);await ab.promise;let g=ba.filter(a=>!0!==a.providerExecuted),h=bb.filter(a=>!0!==a.providerExecuted),j=bc.filter(a=>!1===a.approved);for(let a of ba){if(!0!==a.providerExecuted)continue;let b=ct(aI,a.toolName);(null==b?void 0:b.type)==="provider"&&b.supportsDeferredResults&&(bb.some(b=>("tool-result"===b.type||"tool-error"===b.type)&&b.toolCallId===a.toolCallId)||at.set(a.toolCallId,{toolName:a.toolName}))}for(let a of bb)("tool-result"===a.type||"tool-error"===a.type)&&at.delete(a.toolCallId);if(au(),g.length===h.length+j.length&&(g.length>0||at.size>0)&&!await dd({stopConditions:A,steps:an}))try{await v(()=>ad({currentStep:b+1,usage:f}))}catch(b){bp(a,{type:"error",error:b}),aG.closeStream()}else bp(a,{type:"finish",finishReason:bd,rawFinishReason:l,totalUsage:f}),aG.closeStream()}})),{onError:au,onCancel:au})}catch(a){throw au(),a}}aG._initialResponseMessages.resolve(ao),await v(()=>ad({currentStep:0,usage:cq()}))})().catch(async a=>{var b;await (null==(b=ai.onError)?void 0:b.call(ai,{callId:aH,error:a})),aG._initialResponseMessages.reject(a),d0(aG._initialResponseMessages.promise),aG.addStream(new ReadableStream({start(b){b.enqueue({type:"error",error:a}),b.close()}})),aG.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(a=>a.at(-1))}get content(){return this.steps.then(a=>a.flatMap(a=>a.content))}get warnings(){return this.steps.then(a=>a.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]}))}get providerMetadata(){return this.finalStep.then(a=>a.providerMetadata)}get text(){return this.finalStep.then(a=>a.text)}get reasoningText(){return this.finalStep.then(a=>a.reasoningText)}get reasoning(){return this.finalStep.then(a=>cY(a.reasoning))}get sources(){return this.steps.then(a=>a.flatMap(a=>a.sources))}get files(){return this.steps.then(a=>a.flatMap(a=>a.files))}get toolCalls(){return this.steps.then(a=>a.flatMap(a=>a.toolCalls))}get staticToolCalls(){return this.steps.then(a=>a.flatMap(a=>a.staticToolCalls))}get dynamicToolCalls(){return this.steps.then(a=>a.flatMap(a=>a.dynamicToolCalls))}get toolResults(){return this.steps.then(a=>a.flatMap(a=>a.toolResults))}get staticToolResults(){return this.steps.then(a=>a.flatMap(a=>a.staticToolResults))}get dynamicToolResults(){return this.steps.then(a=>a.flatMap(a=>a.dynamicToolResults))}get usage(){return this.totalUsage}get request(){return this.finalStep.then(a=>a.request)}get response(){return this.finalStep.then(a=>a.response)}get responseMessages(){return Promise.all([this._initialResponseMessages.promise,this.steps]).then(([a,b])=>[...a,...b.flatMap(a=>a.response.messages)])}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}get rawFinishReason(){return this.consumeStream(),this._rawFinishReason.promise}teeStream(){let[a,b]=this.baseStream.tee();return this.baseStream=b,a}get textStream(){return dI(function({stream:a}){return a.pipeThrough(new TransformStream({transform(a,b){"text-delta"===a.type&&b.enqueue(a.text)}}))}({stream:this.stream}))}get stream(){return dI(this.teeStream().pipeThrough(new TransformStream({transform({part:a},b){b.enqueue(a)}})))}get fullStream(){return this.stream}rejectResultPromises(a){this.rejectResultPromise({delayedPromise:this._finishReason,error:a}),this.rejectResultPromise({delayedPromise:this._rawFinishReason,error:a}),this.rejectResultPromise({delayedPromise:this._totalUsage,error:a}),this.rejectResultPromise({delayedPromise:this._steps,error:a}),this.rejectResultPromise({delayedPromise:this._initialResponseMessages,error:a})}rejectResultPromise({delayedPromise:a,error:b}){a.isPending()&&(a.reject(b),d0(a.promise))}async consumeStream(a){var b;try{await dJ({stream:this.stream,onError:b=>{var c;this.rejectResultPromises(b),null==(c=null==a?void 0:a.onError)||c.call(a,b)}})}catch(c){this.rejectResultPromises(c),null==(b=null==a?void 0:a.onError)||b.call(a,c)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return dI(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:a},b){null!=a&&b.enqueue(a)}})))}get elementStream(){var a,b,c;let d=null==(a=this.outputSpecification)?void 0:a.createElementStreamTransform();if(null==d)throw new S.UnsupportedFunctionalityError({functionality:`element streams in ${null!=(c=null==(b=this.outputSpecification)?void 0:b.name)?c:"text"} mode`});return dI(this.teeStream().pipeThrough(d))}getOutputPromise(){return null==this.outputPromise&&(this.outputPromise=this.finalStep.then(a=>{var b;return(null!=(b=this.outputSpecification)?b:cM()).parseCompleteOutput({text:a.text},{response:a.response,usage:a.usage,finishReason:a.finishReason})})),this.outputPromise}get output(){return this.getOutputPromise()}toUIMessageStream({originalMessages:a,generateMessageId:b,onEnd:c,onFinish:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendStart:h,sendFinish:i,onError:j}={}){return dI(function({stream:a,tools:b,sendReasoning:c=!0,sendSources:d=!1,sendStart:e=!0,sendFinish:f=!0,onError:g=()=>"An error occurred.",messageMetadata:h,originalMessages:i,generateMessageId:j,onEnd:k,onFinish:l}){let m={status:"unknown"},n=!1,o=a=>{n||"completed"===m.status||"aborted"===m.status||"unknown"===a.status||"unknown"!==m.status&&"failed"===a.status||(m=a)},p=a=>{n=!0,m={status:"failed",error:a}},q=null!=j?function({originalMessages:a,responseMessageId:b}){if(null==a)return;let c=a[a.length-1];return(null==c?void 0:c.role)==="assistant"?c.id:"function"==typeof b?b():b}({originalMessages:i,responseMessageId:j}):void 0,r=a.getReader(),s=!1,t=!1,u=()=>{s||(r.releaseLock(),s=!0)};return function({messageId:a,originalMessages:b=[],onStepEnd:c,onStepFinish:d,onEnd:e,onFinish:f,onError:g,stream:h,getOutcome:i}){let j,k=null==b?void 0:b[b.length-1];(null==k?void 0:k.role)!=="assistant"?k=void 0:a=k.id;let l=!1,m=!1,n=a=>{m=!0,j=a},o=h.pipeThrough(new TransformStream({transform(b,c){try{let d=b;"start"===b.type&&null==b.messageId&&null!=a&&(d={...b,messageId:a}),"abort"===b.type&&(l=!0),c.enqueue(d)}catch(a){throw n(a),a}}})),p=null!=c?c:d,q=null!=e?e:f;if(null==q&&null==p)return o;let r=function({lastMessage:a,messageId:b}){return{message:(null==a?void 0:a.role)==="assistant"?a:{id:b,metadata:void 0,role:"assistant",parts:[]},activeTextParts:dE(),activeReasoningParts:dE(),partialToolCalls:dE()}}({lastMessage:k?structuredClone(k):void 0,messageId:null!=a?a:""}),s=!1,t=async()=>{var a;if(s||!q)return;s=!0;let c=r.message.id===(null==k?void 0:k.id),d=null!=(a=null==i?void 0:i())?a:{status:"unknown"},e=m?{status:"failed",error:j}:"unknown"===d.status&&l?{status:"aborted"}:d;await q({isAborted:l||"aborted"===e.status,isContinuation:c,outcome:e,responseMessage:r.message,messages:[...c?b.slice(0,-1):b,r.message],finishReason:r.finishReason})},u=async()=>{if(!p)return;let a=r.message.id===(null==k?void 0:k.id);try{await p({isContinuation:a,responseMessage:structuredClone(r.message),messages:[...a?b.slice(0,-1):b,structuredClone(r.message)]})}catch(a){g(a)}};return(function({stream:a,messageMetadataSchema:b,dataPartSchemas:c,runUpdateMessageJob:d,onError:e,onToolCall:f,onData:g}){return a.pipeThrough(new TransformStream({async transform(a,h){await d(async({state:d,write:i})=>{var j,k,l,m;function n(){let a=d.message.parts,b=a.length-1;for(;b>=0&&"step-start"!==a[b].type;)b--;return a.slice(b+1)}function o(a){let b=n().filter(dG).find(b=>b.toolCallId===a);if(null==b){let c=d.message.parts;for(let d=c.length-1;d>=0;d--){let e=c[d];if(dG(e)&&e.toolCallId===a){b=e;break}}}if(null==b)throw new a9({chunkType:"tool-invocation",chunkId:a,message:`No tool invocation found for tool call ID "${a}".`});return b}function p(a,b){var c;let e=null!=b?b:n().find(b=>dF(b)&&b.toolCallId===a.toolCallId);if(null!=e){e.state=a.state,e.input=a.input,e.output=a.output,e.errorText=a.errorText,e.rawInput=a.rawInput,e.preliminary=a.preliminary,void 0!==a.title&&(e.title=a.title),void 0!==a.toolMetadata&&(e.toolMetadata=a.toolMetadata),e.providerExecuted=null!=(c=a.providerExecuted)?c:e.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?e.resultProviderMetadata=b:e.callProviderMetadata=b)}else d.message.parts.push({type:`tool-${a.toolName}`,toolCallId:a.toolCallId,state:a.state,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},input:a.input,output:a.output,rawInput:a.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,preliminary:a.preliminary,...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}function q(a,b){var c,e;let f=null!=b?b:n().find(b=>"dynamic-tool"===b.type&&b.toolCallId===a.toolCallId);if(null!=f){f.state=a.state,f.toolName=a.toolName,f.input=a.input,f.output=a.output,f.errorText=a.errorText,f.rawInput=null!=(c=a.rawInput)?c:f.rawInput,f.preliminary=a.preliminary,void 0!==a.title&&(f.title=a.title),void 0!==a.toolMetadata&&(f.toolMetadata=a.toolMetadata),f.providerExecuted=null!=(e=a.providerExecuted)?e:f.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?f.resultProviderMetadata=b:f.callProviderMetadata=b)}else d.message.parts.push({type:"dynamic-tool",toolName:a.toolName,toolCallId:a.toolCallId,state:a.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}async function r(a){if(null!=a){let c=null!=d.message.metadata?bH(d.message.metadata,a):a;null!=b&&await (0,R.validateTypes)({value:c,schema:b,context:{field:"message.metadata",entityId:d.message.id}}),d.message.metadata=c}}switch(a.type){case"text-start":{let b={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeTextParts[a.id]=b,d.message.parts.push(b),i();break}case"text-delta":{let b=d.activeTextParts[a.id];if(null==b)throw new a9({chunkType:"text-delta",chunkId:a.id,message:`Received text-delta for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(j=a.providerMetadata)?j:b.providerMetadata,i();break}case"text-end":{let b=d.activeTextParts[a.id];if(null==b)throw new a9({chunkType:"text-end",chunkId:a.id,message:`Received text-end for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});b.state="done",b.providerMetadata=null!=(k=a.providerMetadata)?k:b.providerMetadata,delete d.activeTextParts[a.id],i();break}case"custom":{let b={type:"custom",kind:a.kind,providerMetadata:a.providerMetadata};d.message.parts.push(b),i();break}case"reasoning-start":{let b={type:"reasoning",id:a.id,text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeReasoningParts[a.id]=b,d.message.parts.push(b),i();break}case"reasoning-delta":{let b=d.activeReasoningParts[a.id];if(null==b)throw new a9({chunkType:"reasoning-delta",chunkId:a.id,message:`Received reasoning-delta for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(l=a.providerMetadata)?l:b.providerMetadata,i();break}case"reasoning-end":{let b=d.activeReasoningParts[a.id];if(null==b)throw new a9({chunkType:"reasoning-end",chunkId:a.id,message:`Received reasoning-end for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});b.providerMetadata=null!=(m=a.providerMetadata)?m:b.providerMetadata,b.state="done",delete d.activeReasoningParts[a.id],i();break}case"file":case"reasoning-file":d.message.parts.push({type:a.type,mediaType:a.mediaType,url:a.url,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}}),i();break;case"source-url":d.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),i();break;case"source-document":d.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),i();break;case"tool-input-start":{let b=n().filter(dF);d.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:b.length,dynamic:a.dynamic,title:a.title,toolMetadata:a.toolMetadata},a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}),i();break}case"tool-input-delta":{let b=d.partialToolCalls[a.toolCallId];if(null==b)throw new a9({chunkType:"tool-input-delta",chunkId:a.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${a.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});b.text+=a.inputTextDelta;let{value:c}=await cL(b.text);b.dynamic?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}):p({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}),i();break}case"tool-input-available":a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}),i(),f&&!a.providerExecuted&&await f({toolCall:a});break;case"tool-input-error":{let b=n().filter(dG).find(b=>b.toolCallId===a.toolCallId);(null!=b?"dynamic-tool"===b.type:a.dynamic)?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}),i();break}case"tool-approval-request":{let b=o(a.toolCallId);b.state="approval-requested",b.approval={id:a.approvalId,...null!=a.approvalDescriptor?{descriptor:a.approvalDescriptor}:{},...null!=a.reason?{requestReason:a.reason}:{},...!0===a.isAutomatic?{isAutomatic:!0}:{},...null!=a.signature?{signature:a.signature}:{}},i();break}case"tool-approval-response":{let b=function(a){let b=d.message.parts.filter(dG).find(b=>{var c;return(null==(c=b.approval)?void 0:c.id)===a});if(null==b)throw new a9({chunkType:"tool-approval-response",chunkId:a,message:`No tool invocation found for approval ID "${a}".`});return b}(a.approvalId),c=null==b.approval?{id:a.approvalId}:b.approval;b.state="approval-responded",b.approval={...c,id:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{}},null!=a.providerExecuted&&(b.providerExecuted=a.providerExecuted),null!=a.providerMetadata&&(b.callProviderMetadata=a.providerMetadata),i();break}case"tool-output-denied":o(a.toolCallId).state="output-denied",i();break;case"tool-output-available":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-available",input:b.input,output:a.output,preliminary:a.preliminary,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:dH(b),state:"output-available",input:b.input,output:a.output,providerExecuted:a.providerExecuted,preliminary:a.preliminary,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"tool-output-error":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-error",input:b.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:dH(b),state:"output-error",input:b.input,rawInput:b.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"start-step":d.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let a=n();d.activeTextParts=dE(),d.activeReasoningParts=dE(),d.partialToolCalls=dE(),a.length>0&&(d.message.parts.splice(d.message.parts.length-a.length,a.length),i());break}case"start":null!=a.messageId&&(d.message.id=a.messageId),await r(a.messageMetadata),(null!=a.messageId||null!=a.messageMetadata)&&i({updateStatus:!1});break;case"finish":null!=a.finishReason&&(d.finishReason=a.finishReason),await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"message-metadata":await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"error":null==e||e(Error(a.errorText));break;default:if(a.type.startsWith("data-")){if((null==c?void 0:c[a.type])!=null){let b=d.message.parts.findIndex(b=>"id"in b&&"data"in b&&b.id===a.id&&b.type===a.type),e=b>=0?b:d.message.parts.length;await (0,R.validateTypes)({value:a.data,schema:c[a.type],context:{field:`message.parts[${e}].data`,entityName:a.type,entityId:a.id}})}if(a.transient){null==g||g(a);break}let b=null!=a.id?d.message.parts.find(b=>a.type===b.type&&a.id===b.id):void 0;null!=b?b.data=a.data:d.message.parts.push(a),null==g||g(a),i()}}h.enqueue(a)})}}))})({stream:o,runUpdateMessageJob:async a=>{try{await a({state:r,write:()=>{}})}catch(a){throw n(a),a}},onError:g}).pipeThrough(new TransformStream({async transform(a,b){"finish-step"===a.type&&await u(),b.enqueue(a)},async cancel(){await t()},async flush(){await t()}}))}({stream:new ReadableStream({async pull(a){try{let{done:b,value:c}=await r.read();b?(u(),t||a.close()):a.enqueue(c)}catch(b){u(),t||(p(b),a.error(b))}},async cancel(a){if(t=!0,!s)try{await r.cancel(a)}finally{u()}}}).pipeThrough(new TransformStream({transform:async(a,i)=>{try{let j=null==h?void 0:h({part:a}),k=function(a,{tools:b,sendReasoning:c=!0,sendSources:d=!1,sendStart:e=!0,sendFinish:f=!0,onError:g=()=>"An error occurred.",messageMetadata:h,responseMessageId:i}={}){let j=a=>{let c=null==b?void 0:b[a.toolName];return null==c?a.dynamic:(null==c?void 0:c.type)==="dynamic"||void 0},k=a.type;switch(k){case"text-start":return{type:"text-start",id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:a.id,delta:a.text,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"text-end":return{type:"text-end",id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":if(!c)return;return{type:k,id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"reasoning-delta":if(!c)return;return{type:"reasoning-delta",id:a.id,delta:a.text,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"file":case"reasoning-file":if("reasoning-file"===k&&!c)return;return{type:a.type,mediaType:a.file.mediaType,url:`data:${a.file.mediaType};base64,${a.file.base64}`,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"source":if(!d)return;if("url"===a.sourceType)return{type:"source-url",sourceId:a.id,url:a.url,title:a.title,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};if("document"===a.sourceType)return{type:"source-document",sourceId:a.id,mediaType:a.mediaType,title:a.title,filename:a.filename,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};return;case"custom":return{type:"custom",kind:a.kind,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"tool-input-start":{let b=j(a);return{type:"tool-input-start",toolCallId:a.id,toolName:a.toolName,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},...null!=a.title?{title:a.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:a.id,inputTextDelta:a.delta};case"tool-call":{let b=j(a);if(a.invalid)return{type:"tool-input-error",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},errorText:g(a.error),...null!=a.title?{title:a.title}:{}};return{type:"tool-input-available",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},...null!=a.title?{title:a.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:a.approvalId,toolCallId:a.toolCall.toolCallId,...null!=a.reason?{reason:a.reason}:{},...null!=a.isAutomatic?{isAutomatic:a.isAutomatic}:{},...null!=a.signature?{signature:a.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{},...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{}};case"tool-result":{let b=j(a);return{type:"tool-output-available",toolCallId:a.toolCallId,output:void 0===a.output?null:a.output,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.preliminary?{preliminary:a.preliminary}:{},...null!=b?{dynamic:b}:{}}}case"tool-error":{let b=j(a);return{type:"tool-output-error",toolCallId:a.toolCallId,errorText:a.providerExecuted?"string"==typeof a.error?a.error:JSON.stringify(a.error):g(a.error),...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:a.toolCallId};case"error":return{type:"error",errorText:g(a.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":if(!e)return;return{type:"start",...null!=h?{messageMetadata:h}:{},...null!=i?{messageId:i}:{}};case"finish":if(!f)return;return{type:"finish",finishReason:a.finishReason,...null!=h?{messageMetadata:h}:{}};case"abort":return a;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${k}`)}}(a,{tools:b,sendReasoning:c,sendSources:d,sendStart:e,sendFinish:f,onError:g,messageMetadata:j,responseMessageId:q});null!=k&&i.enqueue(k),null!=j&&"start"!==a.type&&"finish"!==a.type&&i.enqueue({type:"message-metadata",messageMetadata:j}),"finish"===a.type?o({status:"completed"}):"abort"===a.type?o({status:"aborted"}):"error"===a.type&&o({status:"failed",error:a.error})}catch(a){throw p(a),a}}})),messageId:null!=q?q:null==j?void 0:j(),originalMessages:i,onEnd:null!=k?k:l,onError:g,getOutcome:()=>m})}({stream:this.stream,tools:this.tools,originalMessages:a,generateMessageId:b,onEnd:null!=c?c:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendStart:h,sendFinish:i,onError:j}))}pipeUIMessageStreamToResponse(a,{originalMessages:b,generateMessageId:c,onEnd:d,onFinish:e,messageMetadata:f,sendReasoning:g,sendSources:h,sendFinish:i,sendStart:j,onError:k,...l}={}){return function({response:a,status:b,statusText:c,headers:d,stream:e,consumeSseStream:f}){let g=e.pipeThrough(new dB);if(f){let[a,b]=g.tee();g=a,f({stream:b})}return dA({response:a,status:b,statusText:c,headers:Object.fromEntries(dz(d,dC).entries()),stream:g.pipeThrough(new TextEncoderStream)})}({response:a,stream:this.toUIMessageStream({originalMessages:b,generateMessageId:c,onEnd:null!=d?d:e,messageMetadata:f,sendReasoning:g,sendSources:h,sendFinish:i,sendStart:j,onError:k}),...l})}pipeTextStreamToResponse(a,b){return function({response:a,status:b,statusText:c,headers:d,stream:e}){return dA({response:a,status:b,statusText:c,headers:Object.fromEntries(dz(d,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:e.pipeThrough(new TextEncoderStream)})}({response:a,stream:this.textStream,...b})}toUIMessageStreamResponse({originalMessages:a,generateMessageId:b,onEnd:c,onFinish:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendFinish:h,sendStart:i,onError:j,...k}={}){return function({status:a,statusText:b,headers:c,stream:d,consumeSseStream:e}){let f=d.pipeThrough(new dB);if(e){let[a,b]=f.tee();f=a,e({stream:b})}return new Response(f.pipeThrough(new TextEncoderStream),{status:a,statusText:b,headers:dz(c,dC)})}({stream:this.toUIMessageStream({originalMessages:a,generateMessageId:b,onEnd:null!=c?c:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendFinish:h,sendStart:i,onError:j}),...k})}toTextStreamResponse(a){return function({status:a,statusText:b,headers:c,stream:d}){return new Response(d.pipeThrough(new TextEncoderStream),{status:null!=a?a:200,statusText:b,headers:dz(c,{"content-type":"text/plain; charset=utf-8"})})}({stream:this.textStream,...a})}},d2=class{constructor(a){this.version="agent-v1";const{onFinish:b,onEnd:c=b}=a;this.settings={...a,onEnd:c}}get id(){return this.settings.id}get tools(){return this.settings.tools}async prepareCall(a){var b,c,d,e;if(null!=this.settings.callOptionsSchema&&void 0!==a.options){let b=await (0,R.validateTypes)({value:a.options,schema:this.settings.callOptionsSchema,context:{field:"options"}});a={...a,options:b}}let{onStart:f,experimental_onStart:g,onStepStart:h,experimental_onStepStart:i,onToolExecutionStart:j,onToolExecutionEnd:k,onStepEnd:l,onStepFinish:m,onFinish:n,onEnd:o,...p}=this.settings,q={...p,stopWhen:null!=(b=this.settings.stopWhen)?b:dc(20),...a},{instructions:r,allowSystemInMessages:s,messages:t,prompt:u,runtimeContext:v,...w}=null!=(e=await (null==(d=(c=this.settings).prepareCall)?void 0:d.call(c,q)))?e:q,x={instructions:r,allowSystemInMessages:s,messages:t,prompt:u};return void 0===v?{...w,...x}:{...w,runtimeContext:v,...x}}agentHeaders(a){var b;return(0,R.withUserAgentSuffix)(null!=(b=a.headers)?b:{},"ai-sdk-agent/tool-loop")}async generate({abortSignal:a,timeout:b,experimental_sandbox:c,onStart:d,experimental_onStart:e,onStepStart:f,experimental_onStepStart:g,onToolExecutionStart:h,onToolExecutionEnd:i,onStepEnd:j,onStepFinish:k,onFinish:l,onEnd:m=l,...n}){var o,p,q;let r=await this.prepareCall({...n,experimental_sandbox:c}),s={abortSignal:a,timeout:null!=b?b:r.timeout,experimental_sandbox:c,onStart:c_(null!=(o=this.settings.onStart)?o:this.settings.experimental_onStart,null!=d?d:e),onStepStart:c_(null!=(p=this.settings.onStepStart)?p:this.settings.experimental_onStepStart,null!=f?f:g),onToolExecutionStart:c_(this.settings.onToolExecutionStart,h),onToolExecutionEnd:c_(this.settings.onToolExecutionEnd,i),onStepEnd:c_(null!=(q=this.settings.onStepEnd)?q:this.settings.onStepFinish,null!=j?j:k),onEnd:c_(this.settings.onEnd,m)};return await dw({...r,...s,headers:this.agentHeaders(r)})}async stream({abortSignal:a,timeout:b,experimental_sandbox:c,experimental_transform:d,onStart:e,experimental_onStart:f,onStepStart:g,experimental_onStepStart:h,onToolExecutionStart:i,onToolExecutionEnd:j,onStepEnd:k,onStepFinish:l,onFinish:m,onEnd:n=m,...o}){var p,q,r;let s=await this.prepareCall({...o,experimental_sandbox:c}),t={abortSignal:a,timeout:null!=b?b:s.timeout,experimental_sandbox:c,experimental_transform:d,onStart:c_(null!=(p=this.settings.onStart)?p:this.settings.experimental_onStart,null!=e?e:f),onStepStart:c_(null!=(q=this.settings.onStepStart)?q:this.settings.experimental_onStepStart,null!=g?g:h),onToolExecutionStart:c_(this.settings.onToolExecutionStart,i),onToolExecutionEnd:c_(this.settings.onToolExecutionEnd,j),onStepEnd:c_(null!=(r=this.settings.onStepEnd)?r:this.settings.onStepFinish,null!=k?k:l),onEnd:c_(this.settings.onEnd,n)};return await function({model:a,tools:b,toolChoice:c,instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h,maxRetries:i,streamRetries:j,abortSignal:k,timeout:l,headers:m,stopWhen:n=dc(1),experimental_sandbox:o,output:p,toolApproval:q,experimental_toolCallers:r,experimental_toolApprovalSecret:s,experimental_telemetry:t,telemetry:u=t,prepareStep:v,providerOptions:w,activeTools:x,toolOrder:y,experimental_repairToolCall:z,repairToolCall:A=z,experimental_refineToolInput:B,experimental_transform:C,experimental_download:D,includeRawChunks:E,onChunk:F,onError:G,onFinish:H,onEnd:I=H,onAbort:J,onStepEnd:K,onStepFinish:L,onStart:M,experimental_onStart:N,onStepStart:O,experimental_onStepStart:P,onLanguageModelCallStart:Q,experimental_onLanguageModelCallStart:S,onLanguageModelCallEnd:T,experimental_onLanguageModelCallEnd:U,onToolExecutionStart:V,onToolExecutionEnd:W,experimental_onToolCallStart:X,experimental_onToolCallFinish:Y,runtimeContext:Z={},toolsContext:$={},experimental_include:_,include:aa=_,_internal:{now:ab=cv,generateId:ac=dX,generateCallId:ad=dY}={},...ae}){var af,ag,ah,ai;let aj=bY(l),ak=bZ(l),al=b$(l),am=b_(l),an=null!=ak?new AbortController:void 0,ao=null!=al?new AbortController:void 0,ap=null!=am?new AbortController:void 0,aq=null!=G?G:({error:a})=>{console.error(a)};return new d1({model:bC(a),telemetry:u,headers:m,settings:ae,maxRetries:i,streamRetries:j,abortSignal:cu(k,aj,null==an?void 0:an.signal,null==ao?void 0:ao.signal,null==ap?void 0:ap.signal),stepTimeoutMs:ak,stepAbortController:an,firstChunkTimeoutMs:al,firstChunkAbortController:ao,chunkTimeoutMs:am,chunkAbortController:ap,instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h,experimental_sandbox:o,tools:b,toolsContext:$,runtimeContext:Z,toolChoice:c,transforms:(0,R.asArray)(C),activeTools:x,toolOrder:y,repairToolCall:A,refineToolInput:B,stopConditions:(0,R.asArray)(n),output:p,toolApproval:q,experimental_toolCallers:r,experimental_toolApprovalSecret:s,providerOptions:w,prepareStep:v,timeout:l,onChunk:F,onError:aq,canRetryStreamViaOnError:void 0!==j&&null!=G,onEnd:I,onAbort:J,onStepFinish:null!=K?K:L,onStart:null!=M?M:N,onStepStart:null!=O?O:P,onLanguageModelCallStart:null!=Q?Q:S,onLanguageModelCallEnd:null!=T?T:U,onToolExecutionStart:null!=V?V:X,onToolExecutionEnd:null!=W?W:Y,now:ab,generateId:ac,generateCallId:ad,download:D,include:{requestBody:null!=(af=null==aa?void 0:aa.requestBody)&&af,requestMessages:null!=(ag=null==aa?void 0:aa.requestMessages)&&ag,rawChunks:null!=(ai=null!=(ah=null==aa?void 0:aa.rawChunks)?ah:E)&&ai}})}({...s,...t,headers:this.agentHeaders(s)})}},d3=b0.record(b0.string(),b1.optional()),d4=b0.record(b0.string(),b0.string());function d5(a){if(a instanceof Uint8Array)return a;if("string"==typeof a)try{return(0,R.convertBase64ToUint8Array)(a)}catch(b){throw new bd({message:"Invalid data content. Content string is not a base64-encoded media.",content:a,cause:b})}if(a instanceof ArrayBuffer)return new Uint8Array(a);throw new bd({content:a})}(0,R.lazySchema)(()=>(0,R.zodSchema)(b0.array(b0.object({id:b0.string(),role:b0.enum(["system","user","assistant"]),metadata:b0.unknown().optional(),parts:b0.array(b0.union([b0.object({type:b0.literal("text"),text:b0.string(),state:b0.enum(["streaming","done"]).optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("reasoning"),id:b0.string().optional(),text:b0.string(),state:b0.enum(["streaming","done"]).optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("custom"),kind:b0.string(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("source-url"),sourceId:b0.string(),url:b0.string(),title:b0.string().optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("source-document"),sourceId:b0.string(),mediaType:b0.string(),title:b0.string(),filename:b0.string().optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("file"),mediaType:b0.string(),filename:b0.string().optional(),url:b0.string(),providerReference:d4.optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("reasoning-file"),mediaType:b0.string(),url:b0.string(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("step-start")}),b0.object({type:b0.string().startsWith("data-"),id:b0.string().optional(),data:b0.unknown()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-streaming"),input:b0.unknown().optional(),providerExecuted:b0.boolean().optional(),callProviderMetadata:b2.optional(),output:b0.never().optional(),errorText:b0.never().optional(),approval:b0.never().optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-available"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.never().optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-requested"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.never().optional(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.never().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-responded"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.boolean(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-available"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.unknown(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),preliminary:b0.boolean().optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-error"),input:b0.unknown().optional(),rawInput:b0.unknown().optional(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.string(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-denied"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!1),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-streaming"),providerExecuted:b0.boolean().optional(),callProviderMetadata:b2.optional(),input:b0.unknown().optional(),output:b0.never().optional(),errorText:b0.never().optional(),approval:b0.never().optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-available"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.never().optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-requested"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.never().optional(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.never().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-responded"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.boolean(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-available"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.unknown(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),preliminary:b0.boolean().optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-error"),providerExecuted:b0.boolean().optional(),input:b0.unknown().optional(),rawInput:b0.unknown().optional(),output:b0.never().optional(),errorText:b0.string(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-denied"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!1),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),(0,R.createIdGenerator)({prefix:"call",size:24}),(0,R.createIdGenerator)({prefix:"call",size:24}),new TextEncoder;var d6=["cost","gatewayCost","inferenceCost","inputInferenceCost","marketCost","outputInferenceCost","surchargeCost"];async function d7({model:a,prompt:b,n:c=1,maxImagesPerCall:d,size:e,aspectRatio:f,seed:g,providerOptions:h,maxRetries:i,abortSignal:j,headers:k}){var l,m,n;let o=function(a){if("string"==typeof a)return bD().imageModel(a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bt(a)}(a),p=(0,R.withUserAgentSuffix)(null!=k?k:{},`ai/${bF}`),{retry:q}=cx({maxRetries:i,abortSignal:j}),r=null!=(l=null!=d?d:await d9(o))?l:1,s=Math.ceil(c/r),t=Array.from({length:s},(a,b)=>{if(b<s-1)return r;let d=c%r;return 0===d?r:d}),u=await Promise.all(t.map(async a=>await q(()=>{var c;let{prompt:d,files:i,mask:k}="string"==typeof(c=b)?{prompt:c,files:void 0,mask:void 0}:{prompt:c.text,files:c.images.map(ea),mask:c.mask?ea(c.mask):void 0};return o.doGenerate({prompt:d,files:i,mask:k,n:a,abortSignal:j,headers:p,size:e,aspectRatio:f,seed:g,providerOptions:null!=h?h:{}})}))),v=[],w=[],x=[],y=[],z={},A={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0};for(let a of u){let b=a.images.map((b,c)=>{var d;return new cB({data:b,mediaType:null!=(d=(0,R.detectMediaType)({data:b,topLevelType:"image"}))?d:"image/png",providerMetadata:function(a,b){var c;let d;if(null!=a){for(let[e,f]of Object.entries(a)){let a=null==(c=f.images)?void 0:c[b];(0,S.isJSONObject)(a)&&!Array.isArray(a)&&((null!=d?d:d={})[e]=a)}return d}}(a.providerMetadata,c)})});if(v.push(...b),w.push({images:b,providerMetadata:a.providerMetadata,response:a.response,warnings:a.warnings,usage:a.usage}),x.push(...a.warnings),null!=a.usage&&(m=A,n=a.usage,A={inputTokens:cs(m.inputTokens,n.inputTokens),outputTokens:cs(m.outputTokens,n.outputTokens),totalTokens:cs(m.totalTokens,n.totalTokens)}),a.providerMetadata)for(let[b,c]of Object.entries(a.providerMetadata))if("gateway"===b){let a=z[b];if(null!=a&&"object"==typeof a){let d=c;z[b]={...a,...c,...Object.fromEntries(d6.flatMap(b=>{let c=function(a,b){if("string"!=typeof a||"string"!=typeof b||!/^\d+(?:\.\d+)?$/.test(a)||!/^\d+(?:\.\d+)?$/.test(b))return;let[c,d=""]=a.split("."),[e,f=""]=b.split("."),g=Math.max(d.length,f.length),h=(BigInt(c+d.padEnd(g,"0"))+BigInt(e+f.padEnd(g,"0"))).toString().padStart(g+1,"0");return 0===g?h:`${h.slice(0,-g)}.${h.slice(-g)}`.replace(/\.?0+$/,"")}(a[b],d[b]);return null==c?[]:[[b,c]]}))}}else z[b]={...c};let d=z[b].images;Array.isArray(d)&&0===d.length&&delete z[b].images}else null!=z[b]||(z[b]={images:[]}),z[b].images.push(...c.images);y.push(a.response)}if(bp({warnings:x,provider:o.provider,model:o.modelId}),!v.length)throw new av({calls:w,responses:y});return new d8({images:v,calls:w,warnings:x,responses:y,providerMetadata:z,usage:A})}var d8=class{constructor(a){this.images=a.images,this.calls=a.calls,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=a.providerMetadata,this.usage=a.usage}get image(){return this.images[0]}};async function d9(a){return a.maxImagesPerCall instanceof Function?a.maxImagesPerCall({modelId:a.modelId}):a.maxImagesPerCall}function ea(a){if("string"==typeof a&&a.startsWith("http"))return{type:"url",url:a};if("string"==typeof a&&a.startsWith("data:")){let{mediaType:b,base64Content:c}=bI(a);if(null!=c){let a=(0,R.convertBase64ToUint8Array)(c);return{type:"file",data:a,mediaType:b||(0,R.detectMediaType)({data:a,topLevelType:"image"})||"image/png"}}}let b=d5(a);return{type:"file",data:b,mediaType:(0,R.detectMediaType)({data:b,topLevelType:"image"})||"image/png"}}function eb(a){return({url:b,abortSignal:c})=>bG({url:b,maxBytes:null==a?void 0:a.maxBytes,abortSignal:c})}(0,R.createIdGenerator)({prefix:"aiobj",size:24}),(0,R.createIdGenerator)({prefix:"aiobj",size:24});var ec=class extends cB{constructor({data:a,mediaType:b}){super({data:a,mediaType:b});let c="mp3";if(b){const a=b.split("/");2===a.length&&"audio/mpeg"!==b&&(c=a[1])}if(!c)throw Error("Audio format must be provided or determinable from media type");this.format=c}};async function ed({model:a,text:b,voice:c,outputFormat:d,instructions:e,speed:f,language:g,providerOptions:h={},maxRetries:i,abortSignal:j,headers:k}){var l;let m=function(a){var b,c;if("string"==typeof a)return null==(c=(b=bD()).speechModel)?void 0:c.call(b,a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bz(a)}(a);if(!m)throw Error("Model could not be resolved");let n=(0,R.withUserAgentSuffix)(null!=k?k:{},`ai/${bF}`),{retry:o}=cx({maxRetries:i,abortSignal:j}),p=await o(()=>m.doGenerate({text:b,voice:c,outputFormat:d,instructions:e,speed:f,language:g,abortSignal:j,headers:n,providerOptions:h}));if(!p.audio||0===p.audio.length)throw new aH({responses:[p.response]});return bp({warnings:p.warnings,provider:m.provider,model:m.modelId}),new ee({audio:new ec({data:p.audio,mediaType:null!=(l=(0,R.detectMediaType)({data:p.audio,topLevelType:"audio"}))?l:"audio/mp3"}),warnings:p.warnings,responses:[p.response],providerMetadata:p.providerMetadata})}var ee=class{constructor(a){var b;this.audio=a.audio,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=null!=(b=a.providerMetadata)?b:{}}},ef=eb();async function eg({model:a,prompt:b,n:c=1,maxVideosPerCall:d,aspectRatio:e,resolution:f,duration:g,fps:h,seed:i,frameImages:j,inputReferences:k,generateAudio:l,providerOptions:m,maxRetries:n,abortSignal:o,headers:p,download:q=ef,poll:r,webhook:s}){var t;let u=function(a){var b;if("string"==typeof a){let c=(null!=(b=globalThis.AI_SDK_DEFAULT_PROVIDER)?b:Q.gateway).videoModel;if(!c)throw Error('The default provider does not support video models. Please use a Experimental_VideoModelV4 object from a provider (e.g., vertex.video("model-id")).');return c(a)}if(!["v4","v3"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return"v4"===a.specificationVersion?a:new Proxy(a,{get:(a,b)=>"specificationVersion"===b?"v4":a[b]})}(a),v=(0,R.withUserAgentSuffix)(null!=p?p:{},`ai/${bF}`),{retry:w}=cx({maxRetries:n,abortSignal:o}),{prompt:x,resolvedImage:y,normalizedFrameImages:z,effectiveInputReferences:A,warnings:B}=function({promptArg:a,frameImages:b,inputReferences:c}){var d;let{prompt:e,image:f}="string"==typeof a?{prompt:a,image:void 0}:{prompt:a.text,image:null!=a.image?el(a.image):void 0},g=null==b?void 0:b.flatMap(a=>{let b=el(a.image);return null!=b?[{image:b,frameType:a.frameType}]:[]}),h=null==c?void 0:c.flatMap(a=>{let b=function(a){if(!("object"==typeof a&&null!=a&&!(a instanceof Uint8Array)&&!(a instanceof ArrayBuffer)&&"data"in a))return el(a,{restrictToImages:!1});let b=el(a.data,{restrictToImages:!1});return null==b?b:{...b,...null!=a.mediaType?{mediaType:a.mediaType}:{}}}(a);return null!=b?[b]:[]}),i=null!=g&&g.length>0?void 0:h,j=[];null!=g&&g.length>0&&null!=h&&h.length>0&&j.push({type:"other",message:"inputReferences were ignored because frameImages were provided; frameImages and inputReferences cannot be combined."});let k=null==(d=null==g?void 0:g.find(a=>"first_frame"===a.frameType))?void 0:d.image;return null!=f&&null!=k&&j.push({type:"other",message:"prompt.image was ignored because a first_frame frameImage was provided; the first_frame frameImage takes precedence as the start image."}),{prompt:e,resolvedImage:null!=k?k:f,normalizedFrameImages:g,effectiveInputReferences:i,warnings:j}}({promptArg:b,frameImages:j,inputReferences:k}),C=null!=(t=null!=d?d:await em(u))?t:1,D=null!=u.doStart&&null!=u.doStatus,E=D&&(null!=r||null!=s||null==u.doGenerate);if(null==u.doGenerate&&!D)throw Error(`Video model ${u.modelId} does not implement doGenerate or doStart/doStatus.`);null==r&&null==s||D||bp({warnings:[{type:"other",message:"poll/webhook options were provided but the model does not support doStart/doStatus. Falling back to doGenerate."}],provider:u.provider,model:u.modelId});let F=Array.from({length:Math.ceil(c/C)},(a,b)=>Math.min(c-b*C,C)),G=await Promise.all(F.map(async a=>{let b={prompt:x,n:a,aspectRatio:e,resolution:f,duration:g,fps:h,seed:i,image:y,frameImages:z,inputReferences:A,generateAudio:l,providerOptions:null!=m?m:{},headers:v,abortSignal:o};return E?eh({model:u,callOptions:b,poll:r,webhook:s,retry:w}):w(()=>u.doGenerate(b))})),H=[],I=[],J={};for(let a of G){for(let b of a.videos)switch(b.type){case"url":{let{data:a,mediaType:c}=await q({url:new URL(b.url),abortSignal:o}),d=a=>!!a&&"application/octet-stream"!==a,e=d(b.mediaType)&&b.mediaType||d(c)&&c||(0,R.detectMediaType)({data:a,topLevelType:"video"})||"video/mp4";H.push(new cB({data:a,mediaType:e}));break}case"base64":H.push(new cB({data:b.data,mediaType:b.mediaType||"video/mp4"}));break;case"binary":{let a=b.mediaType||(0,R.detectMediaType)({data:b.data,topLevelType:"video"})||"video/mp4";H.push(new cB({data:b.data,mediaType:a}))}}B.push(...a.warnings),I.push({timestamp:a.response.timestamp,modelId:a.response.modelId,headers:a.response.headers,providerMetadata:a.providerMetadata}),null!=a.providerMetadata&&ej(J,a.providerMetadata)}if(0===H.length)throw new aQ({responses:I});return B.length>0&&bp({warnings:B,provider:u.provider,model:u.modelId}),{video:H[0],videos:H,warnings:B,responses:I,providerMetadata:J}}async function eh({model:a,callOptions:b,poll:c,webhook:d,retry:e}){var f,g,h,i;let j,k,l=[];if(null!=d)if(null!=a.handleWebhookOption){let b=await a.handleWebhookOption({webhook:d});j=b.webhookUrl,k=b.received}else l.push({type:"unsupported",feature:"webhook",details:"This model does not support webhooks. Falling back to polling."});let m=Object.entries(null!=(f=b.headers)?f:{}).find(([a,b])=>"idempotency-key"===a.toLowerCase()&&void 0!==b),n={...b,headers:{...b.headers,...m?{}:{"idempotency-key":`aisdk_vid_${(0,R.generateId)()}`}},webhookUrl:j},o=await e(()=>a.doStart(n)),p=[...l,...o.warnings],q=null==o.providerMetadata?void 0:{...o.providerMetadata},r=null!=(g=null==c?void 0:c.intervalMs)?g:5e3,s=null!=(h=null==c?void 0:c.timeoutMs)?h:6e5,t=null!=(i=null==c?void 0:c.delay)?i:R.delay,u=Date.now();for(null!=k&&await ei({received:k,timeoutMs:s,abortSignal:b.abortSignal,delay:t});;){if(null==k){let a=Date.now()-u;if(a>=s||(await t(Math.min(r,s-a),{abortSignal:b.abortSignal}),Date.now()-u>=s))throw Error(`Video generation timed out after ${s}ms.`)}let c=await e(()=>a.doStatus({operation:o.operation,abortSignal:b.abortSignal,headers:b.headers}));if("error"===c.status)throw Error(c.error);if(null!=c.warnings&&p.push(...c.warnings),null!=c.providerMetadata&&(null!=q||(q={}),ej(q,c.providerMetadata)),"completed"===c.status)return{videos:c.videos,warnings:p,providerMetadata:q,response:c.response};if(null!=k)throw Error("Video generation did not complete after webhook notification.")}}async function ei({received:a,timeoutMs:b,abortSignal:c,delay:d}){let e="function"==typeof globalThis.AbortController?new globalThis.AbortController:void 0;try{await Promise.race([a,d(b,{abortSignal:null==e?c:cu(c,e.signal)}).then(()=>{throw Error(`Video generation timed out after ${b}ms.`)})])}finally{null==e||e.abort()}}function ej(a,b){for(let[c,d]of Object.entries(b)){let b=a[c];null!=b&&"object"==typeof b&&null!=d&&"object"==typeof d?(a[c]={...b,...d},"videos"in b&&Array.isArray(b.videos)&&"videos"in d&&Array.isArray(d.videos)&&(a[c].videos=[...b.videos,...d.videos])):a[c]=d}}function ek(a,b){let c=b?(0,R.detectMediaType)({data:a,topLevelType:"image"}):(0,R.detectMediaType)({data:a});return null!=c?c:"image/png"}function el(a,{restrictToImages:b=!0}={}){if("string"==typeof a){if(a.startsWith("http://")||a.startsWith("https://"))return{type:"url",url:a};if(a.startsWith("data:")){let{mediaType:c,base64Content:d}=bI(a),e=(0,R.convertBase64ToUint8Array)(null!=d?d:"");return{type:"file",mediaType:null!=c?c:ek(e,b),data:e}}let c=(0,R.convertBase64ToUint8Array)(a);return{type:"file",mediaType:ek(c,b),data:c}}if(a instanceof Uint8Array||a instanceof ArrayBuffer){let c=a instanceof Uint8Array?a:new Uint8Array(a);return{type:"file",mediaType:ek(c,b),data:c}}}async function em(a){return"function"==typeof a.maxVideosPerCall?await a.maxVideosPerCall({modelId:a.modelId}):a.maxVideosPerCall}Symbol.for("vercel.ai.error.AI_NoSuchProviderError");S.NoSuchModelError,(0,R.createIdGenerator)({prefix:"call",size:24});var en=eb();async function eo({model:a,audio:b,providerOptions:c={},maxRetries:d,abortSignal:e,headers:f,download:g=en}){let h=function(a){var b,c;if("string"==typeof a)return null==(c=(b=bD()).transcriptionModel)?void 0:c.call(b,a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bB(a)}(a);if(!h)throw Error("Model could not be resolved");let{retry:i}=cx({maxRetries:d,abortSignal:e}),j=(0,R.withUserAgentSuffix)(null!=f?f:{},`ai/${bF}`),k=b instanceof URL?(await g({url:b,abortSignal:e})).data:d5(b),l=await i(()=>{var a;return h.doGenerate({audio:k,abortSignal:e,headers:j,providerOptions:c,mediaType:null!=(a=(0,R.detectMediaType)({data:k,topLevelType:"audio"}))?a:"audio/wav"})});if(bp({warnings:l.warnings,provider:h.provider,model:h.modelId}),!l.text)throw new aL({responses:[l.response]});return new ep({text:l.text,segments:l.segments,language:l.language,durationInSeconds:l.durationInSeconds,warnings:l.warnings,responses:[l.response],providerMetadata:l.providerMetadata})}var ep=class{constructor(a){var b;this.text=a.text,this.segments=a.segments,this.language=a.language,this.durationInSeconds=a.durationInSeconds,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=null!=(b=a.providerMetadata)?b:{}}};a.s(["ToolLoopAgent",0,d2,"experimental_generateVideo",0,eg,"generateImage",0,d7,"generateSpeech",0,ed,"generateText",0,dw,"hasToolCall",0,function(...a){return({steps:b})=>{var c,d,e;return null!=(e=null==(d=null==(c=b[b.length-1])?void 0:c.toolCalls)?void 0:d.some(b=>a.includes(b.toolName)))&&e}},"stepCountIs",0,dc,"transcribe",0,eo])},12208,a=>{"use strict";var b=a.i(868023),c=a.i(889650),d=a.i(979309),e=a.i(247355),f=a.i(696818),g=a.i(399602);function h(a,b){let c=(0,g.toDate)(a,b?.in);return c.setHours(0,0,0,0),c}function i(a,b){let d=(0,c.getDefaultOptions)(),e=b?.weekStartsOn??b?.locale?.options?.weekStartsOn??d.weekStartsOn??d.locale?.options?.weekStartsOn??0,f=(0,g.toDate)(a,b?.in),h=f.getDay();return f.setDate(f.getDate()-(7*(h<e)+h-e)),f.setHours(0,0,0,0),f}function j(a,b){return i(a,{...b,weekStartsOn:1})}var k=a.i(18956);function l(a,b){let c=(0,g.toDate)(a,b?.in),d=c.getFullYear(),e=(0,k.constructFrom)(c,0);e.setFullYear(d+1,0,4),e.setHours(0,0,0,0);let f=j(e),h=(0,k.constructFrom)(c,0);h.setFullYear(d,0,4),h.setHours(0,0,0,0);let i=j(h);return c.getTime()>=f.getTime()?d+1:c.getTime()>=i.getTime()?d:d-1}function m(a,b){let d=(0,g.toDate)(a,b?.in),e=d.getFullYear(),f=(0,c.getDefaultOptions)(),h=b?.firstWeekContainsDate??b?.locale?.options?.firstWeekContainsDate??f.firstWeekContainsDate??f.locale?.options?.firstWeekContainsDate??1,j=(0,k.constructFrom)(b?.in||a,0);j.setFullYear(e+1,0,h),j.setHours(0,0,0,0);let l=i(j,b),m=(0,k.constructFrom)(b?.in||a,0);m.setFullYear(e,0,h),m.setHours(0,0,0,0);let n=i(m,b);return+d>=+l?e+1:+d>=+n?e:e-1}function n(a,b){let c=Math.abs(a).toString().padStart(b,"0");return(a<0?"-":"")+c}let o={y(a,b){let c=a.getFullYear(),d=c>0?c:1-c;return n("yy"===b?d%100:d,b.length)},M(a,b){let c=a.getMonth();return"M"===b?String(c+1):n(c+1,2)},d:(a,b)=>n(a.getDate(),b.length),a(a,b){let c=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.toUpperCase();case"aaa":return c;case"aaaaa":return c[0];default:return"am"===c?"a.m.":"p.m."}},h:(a,b)=>n(a.getHours()%12||12,b.length),H:(a,b)=>n(a.getHours(),b.length),m:(a,b)=>n(a.getMinutes(),b.length),s:(a,b)=>n(a.getSeconds(),b.length),S(a,b){let c=b.length;return n(Math.trunc(a.getMilliseconds()*Math.pow(10,c-3)),b.length)}},p={G:function(a,b,c){let d=+(a.getFullYear()>0);switch(b){case"G":case"GG":case"GGG":return c.era(d,{width:"abbreviated"});case"GGGGG":return c.era(d,{width:"narrow"});default:return c.era(d,{width:"wide"})}},y:function(a,b,c){if("yo"===b){let b=a.getFullYear();return c.ordinalNumber(b>0?b:1-b,{unit:"year"})}return o.y(a,b)},Y:function(a,b,c,d){let e=m(a,d),f=e>0?e:1-e;return"YY"===b?n(f%100,2):"Yo"===b?c.ordinalNumber(f,{unit:"year"}):n(f,b.length)},R:function(a,b){return n(l(a),b.length)},u:function(a,b){return n(a.getFullYear(),b.length)},Q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"Q":return String(d);case"QQ":return n(d,2);case"Qo":return c.ordinalNumber(d,{unit:"quarter"});case"QQQ":return c.quarter(d,{width:"abbreviated",context:"formatting"});case"QQQQQ":return c.quarter(d,{width:"narrow",context:"formatting"});default:return c.quarter(d,{width:"wide",context:"formatting"})}},q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"q":return String(d);case"qq":return n(d,2);case"qo":return c.ordinalNumber(d,{unit:"quarter"});case"qqq":return c.quarter(d,{width:"abbreviated",context:"standalone"});case"qqqqq":return c.quarter(d,{width:"narrow",context:"standalone"});default:return c.quarter(d,{width:"wide",context:"standalone"})}},M:function(a,b,c){let d=a.getMonth();switch(b){case"M":case"MM":return o.M(a,b);case"Mo":return c.ordinalNumber(d+1,{unit:"month"});case"MMM":return c.month(d,{width:"abbreviated",context:"formatting"});case"MMMMM":return c.month(d,{width:"narrow",context:"formatting"});default:return c.month(d,{width:"wide",context:"formatting"})}},L:function(a,b,c){let d=a.getMonth();switch(b){case"L":return String(d+1);case"LL":return n(d+1,2);case"Lo":return c.ordinalNumber(d+1,{unit:"month"});case"LLL":return c.month(d,{width:"abbreviated",context:"standalone"});case"LLLLL":return c.month(d,{width:"narrow",context:"standalone"});default:return c.month(d,{width:"wide",context:"standalone"})}},w:function(a,b,d,e){let h,j,l,o,p,q=Math.round((i(h=(0,g.toDate)(a,e?.in),e)-(j=(0,c.getDefaultOptions)(),l=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??j.firstWeekContainsDate??j.locale?.options?.firstWeekContainsDate??1,o=m(h,e),(p=(0,k.constructFrom)(e?.in||h,0)).setFullYear(o,0,l),p.setHours(0,0,0,0),i(p,e)))/f.millisecondsInWeek)+1;return"wo"===b?d.ordinalNumber(q,{unit:"week"}):n(q,b.length)},I:function(a,b,c){let d,e,h,i=Math.round((j(d=(0,g.toDate)(a,void 0))-(e=l(d,void 0),(h=(0,k.constructFrom)(d,0)).setFullYear(e,0,4),h.setHours(0,0,0,0),j(h)))/f.millisecondsInWeek)+1;return"Io"===b?c.ordinalNumber(i,{unit:"week"}):n(i,b.length)},d:function(a,b,c){return"do"===b?c.ordinalNumber(a.getDate(),{unit:"date"}):o.d(a,b)},D:function(a,b,c){let i,j,k=function(a,b){let[c,g]=(0,e.normalizeDates)(void 0,a,b),i=h(c),j=h(g);return Math.round((i-(0,d.getTimezoneOffsetInMilliseconds)(i)-(j-(0,d.getTimezoneOffsetInMilliseconds)(j)))/f.millisecondsInDay)}(i=(0,g.toDate)(a,void 0),((j=(0,g.toDate)(i,void 0)).setFullYear(j.getFullYear(),0,1),j.setHours(0,0,0,0),j))+1;return"Do"===b?c.ordinalNumber(k,{unit:"dayOfYear"}):n(k,b.length)},E:function(a,b,c){let d=a.getDay();switch(b){case"E":case"EE":case"EEE":return c.day(d,{width:"abbreviated",context:"formatting"});case"EEEEE":return c.day(d,{width:"narrow",context:"formatting"});case"EEEEEE":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},e:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"e":return String(f);case"ee":return n(f,2);case"eo":return c.ordinalNumber(f,{unit:"day"});case"eee":return c.day(e,{width:"abbreviated",context:"formatting"});case"eeeee":return c.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return c.day(e,{width:"short",context:"formatting"});default:return c.day(e,{width:"wide",context:"formatting"})}},c:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"c":return String(f);case"cc":return n(f,b.length);case"co":return c.ordinalNumber(f,{unit:"day"});case"ccc":return c.day(e,{width:"abbreviated",context:"standalone"});case"ccccc":return c.day(e,{width:"narrow",context:"standalone"});case"cccccc":return c.day(e,{width:"short",context:"standalone"});default:return c.day(e,{width:"wide",context:"standalone"})}},i:function(a,b,c){let d=a.getDay(),e=0===d?7:d;switch(b){case"i":return String(e);case"ii":return n(e,b.length);case"io":return c.ordinalNumber(e,{unit:"day"});case"iii":return c.day(d,{width:"abbreviated",context:"formatting"});case"iiiii":return c.day(d,{width:"narrow",context:"formatting"});case"iiiiii":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},a:function(a,b,c){let d=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"aaa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},b:function(a,b,c){let d,e=a.getHours();switch(d=12===e?"noon":0===e?"midnight":e/12>=1?"pm":"am",b){case"b":case"bb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"bbb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},B:function(a,b,c){let d,e=a.getHours();switch(d=e>=17?"evening":e>=12?"afternoon":e>=4?"morning":"night",b){case"B":case"BB":case"BBB":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"BBBBB":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},h:function(a,b,c){if("ho"===b){let b=a.getHours()%12;return 0===b&&(b=12),c.ordinalNumber(b,{unit:"hour"})}return o.h(a,b)},H:function(a,b,c){return"Ho"===b?c.ordinalNumber(a.getHours(),{unit:"hour"}):o.H(a,b)},K:function(a,b,c){let d=a.getHours()%12;return"Ko"===b?c.ordinalNumber(d,{unit:"hour"}):n(d,b.length)},k:function(a,b,c){let d=a.getHours();return(0===d&&(d=24),"ko"===b)?c.ordinalNumber(d,{unit:"hour"}):n(d,b.length)},m:function(a,b,c){return"mo"===b?c.ordinalNumber(a.getMinutes(),{unit:"minute"}):o.m(a,b)},s:function(a,b,c){return"so"===b?c.ordinalNumber(a.getSeconds(),{unit:"second"}):o.s(a,b)},S:function(a,b){return o.S(a,b)},X:function(a,b,c){let d=a.getTimezoneOffset();if(0===d)return"Z";switch(b){case"X":return r(d);case"XXXX":case"XX":return s(d);default:return s(d,":")}},x:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"x":return r(d);case"xxxx":case"xx":return s(d);default:return s(d,":")}},O:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"O":case"OO":case"OOO":return"GMT"+q(d,":");default:return"GMT"+s(d,":")}},z:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"z":case"zz":case"zzz":return"GMT"+q(d,":");default:return"GMT"+s(d,":")}},t:function(a,b,c){return n(Math.trunc(a/1e3),b.length)},T:function(a,b,c){return n(+a,b.length)}};function q(a,b=""){let c=a>0?"-":"+",d=Math.abs(a),e=Math.trunc(d/60),f=d%60;return 0===f?c+String(e):c+String(e)+b+n(f,2)}function r(a,b){return a%60==0?(a>0?"-":"+")+n(Math.abs(a)/60,2):s(a,b)}function s(a,b=""){let c=Math.abs(a);return(a>0?"-":"+")+n(Math.trunc(c/60),2)+b+n(c%60,2)}let t=(a,b)=>{switch(a){case"P":return b.date({width:"short"});case"PP":return b.date({width:"medium"});case"PPP":return b.date({width:"long"});default:return b.date({width:"full"})}},u=(a,b)=>{switch(a){case"p":return b.time({width:"short"});case"pp":return b.time({width:"medium"});case"ppp":return b.time({width:"long"});default:return b.time({width:"full"})}},v={p:u,P:(a,b)=>{let c,d=a.match(/(P+)(p+)?/)||[],e=d[1],f=d[2];if(!f)return t(a,b);switch(e){case"P":c=b.dateTime({width:"short"});break;case"PP":c=b.dateTime({width:"medium"});break;case"PPP":c=b.dateTime({width:"long"});break;default:c=b.dateTime({width:"full"})}return c.replace("{{date}}",t(e,b)).replace("{{time}}",u(f,b))}},w=/^D+$/,x=/^Y+$/,y=["D","DD","YY","YYYY"],z=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,A=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,B=/^'([^]*?)'?$/,C=/''/g,D=/[a-zA-Z]/;a.s(["format",0,function(a,d,e){let f=(0,c.getDefaultOptions)(),h=e?.locale??f.locale??b.defaultLocale,i=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??f.firstWeekContainsDate??f.locale?.options?.firstWeekContainsDate??1,j=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??f.weekStartsOn??f.locale?.options?.weekStartsOn??0,k=(0,g.toDate)(a,e?.in);if(!(k instanceof Date||"object"==typeof k&&"[object Date]"===Object.prototype.toString.call(k))&&"number"!=typeof k||isNaN(+(0,g.toDate)(k)))throw RangeError("Invalid time value");let l=d.match(A).map(a=>{let b=a[0];return"p"===b||"P"===b?(0,v[b])(a,h.formatLong):a}).join("").match(z).map(a=>{if("''"===a)return{isToken:!1,value:"'"};let b=a[0];if("'"===b){var c;let b;return{isToken:!1,value:(b=(c=a).match(B))?b[1].replace(C,"'"):c}}if(p[b])return{isToken:!0,value:a};if(b.match(D))throw RangeError("Format string contains an unescaped latin alphabet character `"+b+"`");return{isToken:!1,value:a}});h.localize.preprocessor&&(l=h.localize.preprocessor(k,l));let m={firstWeekContainsDate:i,weekStartsOn:j,locale:h};return l.map(b=>{if(!b.isToken)return b.value;let c=b.value;return(!e?.useAdditionalWeekYearTokens&&x.test(c)||!e?.useAdditionalDayOfYearTokens&&w.test(c))&&function(a,b,c){var d,e,f;let g,h=(d=a,e=b,f=c,g="Y"===d[0]?"years":"days of the month",`Use \`${d.toLowerCase()}\` instead of \`${d}\` (in \`${e}\`) for formatting ${g} to the input \`${f}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`);if(console.warn(h),y.includes(a))throw RangeError(h)}(c,d,String(a)),(0,p[c[0]])(k,c,h.localize,m)}).join("")}],12208)},868468,a=>{"use strict";var b=a.i(18956),c=a.i(868023),d=a.i(889650),e=a.i(979309),f=a.i(247355),g=a.i(399602),h=a.i(696818);a.s(["formatDistanceToNowStrict",0,function(a,i){return function(a,b,i){var j;let k,l,m=(0,d.getDefaultOptions)(),n=i?.locale??m.locale??c.defaultLocale,o=(l=(0,g.toDate)(a)-(0,g.toDate)(b))<0?-1:l>0?1:l;if(isNaN(o))throw RangeError("Invalid time value");let p=Object.assign({},i,{addSuffix:i?.addSuffix,comparison:o}),[q,r]=(0,f.normalizeDates)(i?.in,...o>0?[b,a]:[a,b]),s=(j=i?.roundingMethod??"round",a=>{let b=(j?Math[j]:Math.trunc)(a);return 0===b?0:b}),t=r.getTime()-q.getTime(),u=t/h.millisecondsInMinute,v=(t-((0,e.getTimezoneOffsetInMilliseconds)(r)-(0,e.getTimezoneOffsetInMilliseconds)(q)))/h.millisecondsInMinute,w=i?.unit;if("second"===(k=w||(u<1?"second":u<60?"minute":u<h.minutesInDay?"hour":v<h.minutesInMonth?"day":v<h.minutesInYear?"month":"year"))){let a=s(t/1e3);return n.formatDistance("xSeconds",a,p)}if("minute"===k){let a=s(u);return n.formatDistance("xMinutes",a,p)}if("hour"===k){let a=s(u/60);return n.formatDistance("xHours",a,p)}if("day"===k){let a=s(v/h.minutesInDay);return n.formatDistance("xDays",a,p)}if("month"===k){let a=s(v/h.minutesInMonth);return 12===a&&"month"!==w?n.formatDistance("xYears",1,p):n.formatDistance("xMonths",a,p)}else{let a=s(v/h.minutesInYear);return n.formatDistance("xYears",a,p)}}(a,(0,b.constructFrom)(a,Date.now()),i)}],868468)},868023,889650,696818,18956,399602,979309,247355,a=>{"use strict";var b;let c={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function d(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}let e={date:d({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:d({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:d({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},f={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function g(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}let h={ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:g({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:g({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:g({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:g({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:g({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function i(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}let j={ordinalNumber:(b={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)},(a,c={})=>{let d=a.match(b.matchPattern);if(!d)return null;let e=d[0],f=a.match(b.parsePattern);if(!f)return null;let g=b.valueCallback?b.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:a.slice(e.length)}}),era:i({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:i({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:i({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:i({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:i({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};a.s(["defaultLocale",0,{code:"en-US",formatDistance:(a,b,d)=>{let e,f=c[a];if(e="string"==typeof f?f:1===b?f.one:f.other.replace("{{count}}",b.toString()),d?.addSuffix)if(d.comparison&&d.comparison>0)return"in "+e;else return e+" ago";return e},formatLong:e,formatRelative:(a,b,c,d)=>f[a],localize:h,match:j,options:{weekStartsOn:0,firstWeekContainsDate:1}}],868023);let k={};a.s(["getDefaultOptions",0,function(){return k}],889650);let l=Symbol.for("constructDateFrom");function m(a,b){return"function"==typeof a?a(b):a&&"object"==typeof a&&l in a?a[l](b):a instanceof Date?new a.constructor(b):new Date(b)}function n(a,b){return m(b||a,a)}a.s(["constructFromSymbol",0,l,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],696818),a.s(["constructFrom",0,m],18956),a.s(["toDate",0,n],399602),a.s(["getTimezoneOffsetInMilliseconds",0,function(a){let b=n(a),c=new Date(Date.UTC(b.getFullYear(),b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds(),b.getMilliseconds()));return c.setUTCFullYear(b.getFullYear()),a-c}],979309),a.s(["normalizeDates",0,function(a,...b){let c=m.bind(null,a||b.find(a=>"object"==typeof a));return b.map(c)}],247355)},72906,(a,b,c)=>{b.exports=e,e.sync=function(a,b){return f(d.statSync(a),b)};var d=a.r(522734);function e(a,b,c){d.stat(a,function(a,d){c(a,!a&&f(d,b))})}function f(a,b){var c,d,e,f,g,h,i,j,k;return a.isFile()&&(c=a,d=b,e=c.mode,f=c.uid,g=c.gid,h=void 0!==d.uid?d.uid:process.getuid&&process.getuid(),i=void 0!==d.gid?d.gid:process.getgid&&process.getgid(),j=parseInt("100",8),k=parseInt("010",8),e&parseInt("001",8)||e&k&&g===i||e&j&&f===h||e&(j|k)&&0===h)}},490400,(a,b,c)=>{b.exports=f,f.sync=function(a,b){return e(d.statSync(a),a,b)};var d=a.r(522734);function e(a,b,c){if(!a.isSymbolicLink()&&!a.isFile())return!1;var d=void 0!==c.pathExt?c.pathExt:process.env.PATHEXT;if(!d||-1!==(d=d.split(";")).indexOf(""))return!0;for(var e=0;e<d.length;e++){var f=d[e].toLowerCase();if(f&&b.substr(-f.length).toLowerCase()===f)return!0}return!1}function f(a,b,c){d.stat(a,function(d,f){c(d,!d&&e(f,a,b))})}},929177,(a,b,c)=>{var d;function e(a,b,c){if("function"==typeof b&&(c=b,b={}),!c){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(c,d){e(a,b||{},function(a,b){a?d(a):c(b)})})}d(a,b||{},function(a,d){a&&("EACCES"===a.code||b&&b.ignoreErrors)&&(a=null,d=!1),c(a,d)})}a.r(522734),d="win32"===process.platform||a.g.TESTING_WINDOWS?a.r(490400):a.r(72906),b.exports=e,e.sync=function(a,b){try{return d.sync(a,b||{})}catch(a){if(b&&b.ignoreErrors||"EACCES"===a.code)return!1;throw a}}},38795,(a,b,c)=>{let d="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,e=a.r(814747),f=d?";":":",g=a.r(929177),h=a=>Object.assign(Error(`not found: ${a}`),{code:"ENOENT"}),i=(a,b)=>{let c=b.colon||f,e=a.match(/\//)||d&&a.match(/\\/)?[""]:[...d?[process.cwd()]:[],...(b.path||process.env.PATH||"").split(c)],g=d?b.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",h=d?g.split(c):[""];return d&&-1!==a.indexOf(".")&&""!==h[0]&&h.unshift(""),{pathEnv:e,pathExt:h,pathExtExe:g}},j=(a,b,c)=>{"function"==typeof b&&(c=b,b={}),b||(b={});let{pathEnv:d,pathExt:f,pathExtExe:j}=i(a,b),k=[],l=c=>new Promise((f,g)=>{if(c===d.length)return b.all&&k.length?f(k):g(h(a));let i=d[c],j=/^".*"$/.test(i)?i.slice(1,-1):i,l=e.join(j,a);f(m(!j&&/^\.[\\\/]/.test(a)?a.slice(0,2)+l:l,c,0))}),m=(a,c,d)=>new Promise((e,h)=>{if(d===f.length)return e(l(c+1));let i=f[d];g(a+i,{pathExt:j},(f,g)=>{if(!f&&g)if(!b.all)return e(a+i);else k.push(a+i);return e(m(a,c,d+1))})});return c?l(0).then(a=>c(null,a),c):l(0)};b.exports=j,j.sync=(a,b)=>{let{pathEnv:c,pathExt:d,pathExtExe:f}=i(a,b=b||{}),j=[];for(let h=0;h<c.length;h++){let i=c[h],k=/^".*"$/.test(i)?i.slice(1,-1):i,l=e.join(k,a),m=!k&&/^\.[\\\/]/.test(a)?a.slice(0,2)+l:l;for(let a=0;a<d.length;a++){let c=m+d[a];try{if(g.sync(c,{pathExt:f}))if(!b.all)return c;else j.push(c)}catch(a){}}}if(b.all&&j.length)return j;if(b.nothrow)return null;throw h(a)}},87721,(a,b,c)=>{"use strict";let d=(a={})=>{let b=a.env||process.env;return"win32"!==(a.platform||process.platform)?"PATH":Object.keys(b).reverse().find(a=>"PATH"===a.toUpperCase())||"Path"};b.exports=d,b.exports.default=d},145803,(a,b,c)=>{"use strict";let d=a.r(814747),e=a.r(38795),f=a.r(87721);function g(a,b){let c,g=a.options.env||process.env,h=process.cwd(),i=null!=a.options.cwd,j=i&&void 0!==process.chdir&&!process.chdir.disabled;if(j)try{process.chdir(a.options.cwd)}catch(a){}try{c=e.sync(a.command,{path:g[f({env:g})],pathExt:b?d.delimiter:void 0})}catch(a){}finally{j&&process.chdir(h)}return c&&(c=d.resolve(i?a.options.cwd:"",c)),c}b.exports=function(a){return g(a)||g(a,!0)}},389998,(a,b,c)=>{"use strict";let d=/([()\][%!^"`<>&|;, *?])/g;b.exports.command=function(a){return a.replace(d,"^$1")},b.exports.argument=function(a,b){return a=(a=(a=`${a}`).replace(/(?=(\\+?)?)\1"/g,'$1$1\\"')).replace(/(?=(\\+?)?)\1$/,"$1$1"),a=(a=`"${a}"`).replace(d,"^$1"),b&&(a=a.replace(d,"^$1")),a}},632419,(a,b,c)=>{"use strict";b.exports=/^#!(.*)/},641310,(a,b,c)=>{"use strict";let d=a.r(632419);b.exports=(a="")=>{let b=a.match(d);if(!b)return null;let[c,e]=b[0].replace(/#! ?/,"").split(" "),f=c.split("/").pop();return"env"===f?e:e?`${f} ${e}`:f}},555192,(a,b,c)=>{"use strict";let d=a.r(522734),e=a.r(641310);b.exports=function(a){let b,c=Buffer.alloc(150);try{b=d.openSync(a,"r"),d.readSync(b,c,0,150,0),d.closeSync(b)}catch(a){}return e(c.toString())}},817830,(a,b,c)=>{"use strict";a.r(814747),a.r(145803),a.r(389998),a.r(555192),process.platform,b.exports=function(a,b,c){b&&!Array.isArray(b)&&(c=b,b=null);let d={command:a,args:b=b?b.slice(0):[],options:c=Object.assign({},c),file:void 0,original:{command:a,args:b}};return c.shell,d}},941952,(a,b,c)=>{"use strict";process.platform,b.exports={hookChildProcess:function(a,b){},verifyENOENT:function(a,b){return null},verifyENOENTSync:function(a,b){return null},notFoundError:function(a,b){return Object.assign(Error(`${b} ${a.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${b} ${a.command}`,path:a.command,spawnargs:a.args})}}},908441,(a,b,c)=>{"use strict";let d=a.r(233405),e=a.r(817830),f=a.r(941952);function g(a,b,c){let g=e(a,b,c),h=d.spawn(g.command,g.args,g.options);return f.hookChildProcess(h,g),h}b.exports=g,b.exports.spawn=g,b.exports.sync=function(a,b,c){let g=e(a,b,c),h=d.spawnSync(g.command,g.args,g.options);return h.error=h.error||f.verifyENOENTSync(h.status,g),h},b.exports._parse=e,b.exports._enoent=f},64203,a=>{"use strict";var b,c,d=a.i(527990),e=a.i(53112),f=a.i(652685),g=a.i(908441),h=e.z.optional(e.z.record(e.z.string(),e.z.unknown())),i=e.z.looseObject({name:e.z.string(),version:e.z.string(),title:e.z.optional(e.z.string())}),j=e.z.looseObject({_meta:e.z.optional(e.z.object({}).loose())}),k=j.extend({resultType:e.z.optional(e.z.string())}),l=e.z.object({method:e.z.string(),params:e.z.optional(j)}),m=e.z.object({applyDefaults:e.z.optional(e.z.boolean())}).loose(),n=e.z.looseObject({experimental:e.z.optional(e.z.object({}).loose()),logging:e.z.optional(e.z.object({}).loose()),completions:e.z.optional(e.z.object({}).loose()),prompts:e.z.optional(e.z.looseObject({listChanged:e.z.optional(e.z.boolean())})),resources:e.z.optional(e.z.looseObject({subscribe:e.z.optional(e.z.boolean()),listChanged:e.z.optional(e.z.boolean())})),tools:e.z.optional(e.z.looseObject({listChanged:e.z.optional(e.z.boolean())})),elicitation:e.z.optional(m)});e.z.object({elicitation:e.z.optional(m)}).loose(),k.extend({supportedVersions:e.z.array(e.z.string()),capabilities:n,instructions:e.z.optional(e.z.string()),ttlMs:e.z.optional(e.z.number()),cacheScope:e.z.optional(e.z.union([e.z.literal("public"),e.z.literal("private")]))}),k.extend({protocolVersion:e.z.string(),capabilities:n,serverInfo:i,instructions:e.z.optional(e.z.string())});var o=k.extend({nextCursor:e.z.optional(e.z.string())}),p=e.z.object({name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),inputSchema:e.z.looseObject({type:e.z.optional(e.z.unknown()),properties:e.z.optional(e.z.object({}).loose())}),outputSchema:e.z.optional(e.z.object({}).loose()),annotations:e.z.optional(e.z.object({title:e.z.optional(e.z.string()),readOnlyHint:e.z.optional(e.z.boolean()),destructiveHint:e.z.optional(e.z.boolean()),idempotentHint:e.z.optional(e.z.boolean()),openWorldHint:e.z.optional(e.z.boolean())}).loose()),_meta:h}).loose();o.extend({tools:e.z.array(p)});var q=e.z.object({type:e.z.literal("text"),text:e.z.string()}).loose(),r=e.z.object({type:e.z.literal("image"),data:e.z.base64(),mimeType:e.z.string()}).loose(),s=e.z.object({uri:e.z.string(),name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string()),size:e.z.optional(e.z.number())}).loose();o.extend({resources:e.z.array(s)});var t=e.z.object({uri:e.z.string(),name:e.z.optional(e.z.string()),title:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose(),u=t.extend({text:e.z.string()}),v=t.extend({blob:e.z.base64()}),w=e.z.object({type:e.z.literal("resource"),resource:e.z.union([u,v])}).loose(),x=e.z.object({type:e.z.literal("resource_link"),uri:e.z.string(),name:e.z.string(),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose(),y=e.z.object({type:e.z.string()}).loose().refine(a=>!["text","image","resource","resource_link"].includes(a.type),{message:"Known content types must match their schema"}),z=k.extend({content:e.z.array(e.z.union([q,r,w,x,y])),structuredContent:e.z.optional(e.z.unknown()),isError:e.z.boolean().default(!1).optional()}),A=k.extend({content:e.z.never().optional(),structuredContent:e.z.json(),isError:e.z.boolean().default(!1).optional()}).transform(a=>({...a,content:[{type:"text",text:JSON.stringify(a.structuredContent)}]})).pipe(z);z.or(A).or(k.extend({toolResult:e.z.unknown().nonoptional()}));var B=e.z.object({uriTemplate:e.z.string(),name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose();k.extend({resourceTemplates:e.z.array(B)}),k.extend({contents:e.z.array(e.z.union([u,v]))});var C=e.z.object({type:e.z.literal("ref/prompt"),name:e.z.string()}).loose(),D=e.z.object({type:e.z.literal("ref/resource"),uri:e.z.string()}).loose(),E=e.z.object({name:e.z.string(),value:e.z.string()}).loose();j.extend({ref:e.z.union([C,D]),argument:E,context:e.z.optional(e.z.object({arguments:e.z.record(e.z.string(),e.z.string())}).loose())}),k.extend({completion:e.z.object({values:e.z.array(e.z.string()).max(100),total:e.z.optional(e.z.number().int()),hasMore:e.z.optional(e.z.boolean())}).loose()});var F=e.z.object({name:e.z.string(),description:e.z.optional(e.z.string()),required:e.z.optional(e.z.boolean())}).loose(),G=e.z.object({name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),arguments:e.z.optional(e.z.array(F))}).loose();o.extend({prompts:e.z.array(G)});var H=e.z.object({role:e.z.union([e.z.literal("user"),e.z.literal("assistant")]),content:e.z.union([q,r,w,x])}).loose();k.extend({description:e.z.optional(e.z.string()),messages:e.z.array(H)});var I=j.extend({message:e.z.string(),requestedSchema:e.z.unknown()});l.extend({method:e.z.literal("elicitation/create"),params:I}),k.extend({action:e.z.union([e.z.literal("accept"),e.z.literal("decline"),e.z.literal("cancel")]),content:e.z.optional(e.z.record(e.z.string(),e.z.unknown()))});var J=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.union([e.z.string(),e.z.number().int()])}).merge(l).strict(),K=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.union([e.z.string(),e.z.number().int()]),result:k}).strict(),L=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.optional(e.z.union([e.z.string(),e.z.number().int()])),error:e.z.object({code:e.z.number().int(),message:e.z.string(),data:e.z.optional(e.z.unknown())})}).strict(),M=e.z.object({jsonrpc:e.z.literal("2.0")}).merge(e.z.object({method:e.z.string(),params:e.z.optional(j)})).strict(),N=e.z.union([J,M,K,L]);async function O(a){var b;return b=await (0,d.parseJSON)({text:a}),N.parse(b)}var P="vercel.ai.error.AI_MCPClientError",Q=Symbol.for(P),R=class extends(c=f.AISDKError,b=Q,c){constructor({name:a="MCPClientError",message:c,cause:d,data:e,code:f,statusCode:g,url:h,responseBody:i}){super({name:a,message:c,cause:d}),this[b]=!0,this.data=e,this.code=f,this.statusCode=g,this.url=h,this.responseBody=i}static isInstance(a){return f.AISDKError.hasMarker(a,P)}},S=class{constructor(a){this.supportsProtocolVersionDiscovery=!0,this.abortController=new AbortController,this.readBuffer=new T,this.serverParams=a}async start(){if(this.process)throw new R({message:"StdioMCPTransport already started."});return new Promise((a,b)=>{var c,d,e,f;try{let f=function(a,b){var c,d,e;if("win32"===globalThis.process.platform&&[a.command,...null!=(c=a.args)?c:[]].some(a=>/[\r\n]/.test(a)))throw TypeError("Stdio MCP commands and arguments must not contain line breaks on Windows.");return(0,g.default)(a.command,null!=(d=a.args)?d:[],{env:function(a){let b="win32"===globalThis.process.platform?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"],c=a?{...a}:{};for(let a of b){let b=globalThis.process.env[a];void 0!==b&&(b.startsWith("()")||(c[a]=b))}return c}(a.env),stdio:["pipe","pipe",null!=(e=a.stderr)?e:"inherit"],shell:!1,signal:b,windowsHide:"win32"===globalThis.process.platform&&"type"in globalThis.process,cwd:a.cwd})}(this.serverParams,this.abortController.signal);this.process=f,this.process.on("error",a=>{var c,d;if("AbortError"===a.name){null==(c=this.onclose)||c.call(this);return}b(a),null==(d=this.onerror)||d.call(this,a)}),this.process.on("spawn",()=>{a()}),this.process.on("close",a=>{var b;this.process=void 0,null==(b=this.onclose)||b.call(this)}),null==(c=this.process.stdin)||c.on("error",a=>{var b;null==(b=this.onerror)||b.call(this,a)}),null==(d=this.process.stdout)||d.on("data",a=>{this.readBuffer.append(a),this.processReadBuffer()}),null==(e=this.process.stdout)||e.on("error",a=>{var b;null==(b=this.onerror)||b.call(this,a)})}catch(a){b(a),null==(f=this.onerror)||f.call(this,a)}})}async processReadBuffer(){for(var a,b;;){let c=this.readBuffer.readLine();if(null===c)break;try{let b=await U(c);null==(a=this.onmessage)||a.call(this,b)}catch(a){null==(b=this.onerror)||b.call(this,a)}}}async close(){this.abortController.abort(),this.process=void 0,this.readBuffer.clear()}send(a){return new Promise(b=>{var c;if(!(null==(c=this.process)?void 0:c.stdin))throw new R({message:"StdioClientTransport not connected"});let d=JSON.stringify(a)+"\n";this.process.stdin.write(d)?b():this.process.stdin.once("drain",b)})}},T=class{append(a){this.buffer=this.buffer?Buffer.concat([this.buffer,a]):a}readLine(){if(!this.buffer)return null;let a=this.buffer.indexOf("\n");if(-1===a)return null;let b=this.buffer.toString("utf8",0,a);return this.buffer=this.buffer.subarray(a+1),b}clear(){this.buffer=void 0}};async function U(a){return O(a)}a.s(["Experimental_StdioMCPTransport",0,S])},951455,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"after",{enumerable:!0,get:function(){return f}});let d=a.r(556704),e=a.r(832319);function f(a){let b=d.workAsyncStorage.getStore(),c=e.workUnitAsyncStorage.getStore();if(!b||!c)throw Object.defineProperty(Error("`after` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context"),"__NEXT_ERROR_CODE",{value:"E468",enumerable:!1,configurable:!0});let{afterContext:f}=b;return f.after(a,c)}},389969,(a,b,c)=>{"use strict";var d,e;Object.defineProperty(c,"__esModule",{value:!0}),d=a.r(951455),e=c,Object.keys(d).forEach(function(a){"default"===a||Object.prototype.hasOwnProperty.call(e,a)||Object.defineProperty(e,a,{enumerable:!0,get:function(){return d[a]}})})},929574,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"connection",{enumerable:!0,get:function(){return k}});let d=a.r(556704),e=a.r(832319),f=a.r(660384),g=a.r(760312),h=a.r(13091),i=a.r(786309);a.r(531382);let j=a.r(950640);function k(){let a=d.workAsyncStorage.getStore(),b=e.workUnitAsyncStorage.getStore();if(a){if(b&&!(0,i.isRequestApiAllowedInCurrentPhase)(b))throw Object.defineProperty(Error(`Route ${a.route} used \`connection()\` inside \`after()\` while rendering. The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but \`after()\` executes after the request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/after`),"__NEXT_ERROR_CODE",{value:"E1377",enumerable:!1,configurable:!0});if(a.forceStatic)return Promise.resolve(void 0);if(a.dynamicShouldError)throw Object.defineProperty(new g.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`connection()\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E847",enumerable:!1,configurable:!0});if(b)switch(b.type){case"cache":{let b=Object.defineProperty(Error(`Route ${a.route} used \`connection()\` inside "use cache". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual request, but caches must be able to be produced before a request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E841",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,k),(0,h.applyOwnerStack)(b),a.invalidDynamicUsageError??=b,b}case"private-cache":{let b=Object.defineProperty(Error(`Route ${a.route} used \`connection()\` inside "use cache: private". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual navigation request, but caches must be able to be produced before a navigation request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E837",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,k),(0,h.applyOwnerStack)(b),a.invalidDynamicUsageError??=b,b}case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used \`connection()\` inside a function cached with \`unstable_cache()\`. The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but caches must be able to be produced before a Request so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`),"__NEXT_ERROR_CODE",{value:"E840",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(Error(`Route ${a.route} used \`connection()\` inside \`generateStaticParams\`. This is not supported because \`generateStaticParams\` runs at build time without an HTTP request. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`),"__NEXT_ERROR_CODE",{value:"E1125",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-runtime":return(0,h.makeDynamicHangingPromise)(b.renderSignal,a.route,"`connection()`");case"validation-client":{let a="`connection`";throw Object.defineProperty(new j.InvariantError(`${a} must not be used within a Client Component. Next.js should be preventing ${a} from being included in Client Components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E1063",enumerable:!1,configurable:!0})}case"prerender-ppr":return(0,f.postponeWithTracking)(a.route,"connection",b.dynamicTracking);case"prerender-legacy":return(0,f.throwToInterruptStaticGeneration)("connection",a,b);case"request":if((0,f.trackDynamicDataInDynamicRender)(b),b.asyncApiPromises)return b.asyncApiPromises.connection;return Promise.resolve(void 0)}}(0,e.throwForMissingRequestStore)("connection")}},843405,(a,b,c)=>{let d={NextRequest:a.r(488491).NextRequest,NextResponse:a.r(651978).NextResponse,ImageResponse:a.r(58176).ImageResponse,userAgentFromString:a.r(240881).userAgentFromString,userAgent:a.r(240881).userAgent,URLPattern:a.r(750792).URLPattern,after:a.r(389969).after,connection:a.r(929574).connection};b.exports=d,c.NextRequest=d.NextRequest,c.NextResponse=d.NextResponse,c.ImageResponse=d.ImageResponse,c.userAgentFromString=d.userAgentFromString,c.userAgent=d.userAgent,c.URLPattern=d.URLPattern,c.after=d.after,c.connection=d.connection},786309,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={isRequestApiAllowedInCurrentPhase:function(){return k},throwForSearchParamsAccessInUseCache:function(){return j},throwWithStaticGenerationBailoutErrorWithDynamicError:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(760312),g=a.r(120635),h=a.r(324725);function i(a,b){throw Object.defineProperty(new f.StaticGenBailoutError(`Route ${a} with \`dynamic = "error"\` couldn't be rendered statically because it used ${b}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E543",enumerable:!1,configurable:!0})}function j(a,b){let c=Object.defineProperty(Error(`Route ${a.route} used \`searchParams\` inside "use cache". Accessing dynamic request data inside a cache scope is not supported. If you need some search params inside a cached function await \`searchParams\` outside of the cached function and pass only the required search params as arguments to the cached function. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E842",enumerable:!1,configurable:!0});throw Error.captureStackTrace(c,b),a.invalidDynamicUsageError??=c,c}function k(a){switch(a.phase){case"action":case"render":return!0;case"after":{let a=g.actionAsyncStorage.getStore();if(a&&(a.isAppRoute||a.isAction))return!0;let b=h.afterTaskAsyncStorage.getStore();if(b)return"action"===b.rootTaskSpawnPhase;return!1}}}},563681,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={RequestCookies:function(){return f.RequestCookies},ResponseCookies:function(){return f.ResponseCookies},stringifyCookie:function(){return f.stringifyCookie}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(536226)},488491,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={INTERNALS:function(){return j},NextRequest:function(){return k}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(522670),g=a.r(392273),h=a.r(989753),i=a.r(563681),j=Symbol("internal request");class k extends Request{constructor(a,b={}){const c="string"!=typeof a&&"url"in a?a.url:String(a);(0,g.validateURL)(c),b.body&&"half"!==b.duplex&&(b.duplex="half"),a instanceof Request?super(a,b):super(c,b);const d=new f.NextURL(c,{headers:(0,g.toNodeOutgoingHttpHeaders)(this.headers),nextConfig:b.nextConfig});this[j]={cookies:new i.RequestCookies(this.headers),nextUrl:d,url:d.toString()}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,nextUrl:this.nextUrl,url:this.url,bodyUsed:this.bodyUsed,cache:this.cache,credentials:this.credentials,destination:this.destination,headers:Object.fromEntries(this.headers),integrity:this.integrity,keepalive:this.keepalive,method:this.method,mode:this.mode,redirect:this.redirect,referrer:this.referrer,referrerPolicy:this.referrerPolicy,signal:this.signal}}get cookies(){return this[j].cookies}get nextUrl(){return this[j].nextUrl}get page(){throw new h.RemovedPageError}get ua(){throw new h.RemovedUAError}get url(){return this[j].url}}},751409,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ReflectAdapter",{enumerable:!0,get:function(){return d}});class d{static get(a,b,c){let d=Reflect.get(a,b,c);return"function"==typeof d?d.bind(a):d}static set(a,b,c,d){return Reflect.set(a,b,c,d)}static has(a,b){return Reflect.has(a,b)}static deleteProperty(a,b){return Reflect.deleteProperty(a,b)}}},651978,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"NextResponse",{enumerable:!0,get:function(){return l}});let d=a.r(563681),e=a.r(522670),f=a.r(392273),g=a.r(751409),h=a.r(563681),i=Symbol("internal response"),j=new Set([301,302,303,307,308]);function k(a,b){var c;if(null==a||null==(c=a.request)?void 0:c.headers){if(!(a.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let c=[];for(let[d,e]of a.request.headers)b.set("x-middleware-request-"+d,e),c.push(d);b.set("x-middleware-override-headers",c.join(","))}}class l extends Response{constructor(a,b={}){super(a,b);const c=this.headers,j=new Proxy(new h.ResponseCookies(c),{get(a,e,f){switch(e){case"delete":case"set":return(...f)=>{let g=Reflect.apply(a[e],a,f),i=new Headers(c);return g instanceof h.ResponseCookies&&c.set("x-middleware-set-cookie",g.getAll().map(a=>(0,d.stringifyCookie)(a)).join(",")),k(b,i),g};default:return g.ReflectAdapter.get(a,e,f)}}});this[i]={cookies:j,url:b.url?new e.NextURL(b.url,{headers:(0,f.toNodeOutgoingHttpHeaders)(c),nextConfig:b.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[i].cookies}static json(a,b){let c=Response.json(a,b);return new l(c.body,c)}static redirect(a,b){let c="number"==typeof b?b:(null==b?void 0:b.status)??307;if(!j.has(c))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let d="object"==typeof b?b:{},e=new Headers(null==d?void 0:d.headers);return e.set("Location",(0,f.validateURL)(a)),new l(null,{...d,headers:e,status:c})}static rewrite(a,b){let c=new Headers(null==b?void 0:b.headers);return c.set("x-middleware-rewrite",(0,f.validateURL)(a)),k(b,c),new l(null,{...b,headers:c})}static next(a){let b=new Headers(null==a?void 0:a.headers);return b.set("x-middleware-next","1"),k(a,b),new l(null,{...a,headers:b})}}},58176,(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead'),"__NEXT_ERROR_CODE",{value:"E183",enumerable:!1,configurable:!0})}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ImageResponse",{enumerable:!0,get:function(){return d}})},506431,(a,b,c)=>{var d={943:function(b,c){!function(d){"use strict";var e="function",f="undefined",g="object",h="string",i="major",j="model",k="name",l="type",m="vendor",n="version",o="architecture",p="console",q="mobile",r="tablet",s="smarttv",t="wearable",u="embedded",v="Amazon",w="Apple",x="ASUS",y="BlackBerry",z="Browser",A="Chrome",B="Firefox",C="Google",D="Huawei",E="Microsoft",F="Motorola",G="Opera",H="Samsung",I="Sharp",J="Sony",K="Xiaomi",L="Zebra",M="Facebook",N="Chromium OS",O="Mac OS",P=function(a,b){var c={};for(var d in a)b[d]&&b[d].length%2==0?c[d]=b[d].concat(a[d]):c[d]=a[d];return c},Q=function(a){for(var b={},c=0;c<a.length;c++)b[a[c].toUpperCase()]=a[c];return b},R=function(a,b){return typeof a===h&&-1!==S(b).indexOf(S(a))},S=function(a){return a.toLowerCase()},T=function(a,b){if(typeof a===h)return a=a.replace(/^\s\s*/,""),typeof b===f?a:a.substring(0,350)},U=function(a,b){for(var c,d,f,h,i,j,k=0;k<b.length&&!i;){var l=b[k],m=b[k+1];for(c=d=0;c<l.length&&!i&&l[c];)if(i=l[c++].exec(a))for(f=0;f<m.length;f++)j=i[++d],typeof(h=m[f])===g&&h.length>0?2===h.length?typeof h[1]==e?this[h[0]]=h[1].call(this,j):this[h[0]]=h[1]:3===h.length?typeof h[1]!==e||h[1].exec&&h[1].test?this[h[0]]=j?j.replace(h[1],h[2]):void 0:this[h[0]]=j?h[1].call(this,j,h[2]):void 0:4===h.length&&(this[h[0]]=j?h[3].call(this,j.replace(h[1],h[2])):void 0):this[h]=j||void 0;k+=2}},V=function(a,b){for(var c in b)if(typeof b[c]===g&&b[c].length>0){for(var d=0;d<b[c].length;d++)if(R(b[c][d],a))return"?"===c?void 0:c}else if(R(b[c],a))return"?"===c?void 0:c;return a},W={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},X={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[n,[k,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[n,[k,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[k,n],[/opios[\/ ]+([\w\.]+)/i],[n,[k,G+" Mini"]],[/\bopr\/([\w\.]+)/i],[n,[k,G]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[k,n],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[n,[k,"UC"+z]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[n,[k,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[n,[k,"WeChat"]],[/konqueror\/([\w\.]+)/i],[n,[k,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[n,[k,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[n,[k,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[k,/(.+)/,"$1 Secure "+z],n],[/\bfocus\/([\w\.]+)/i],[n,[k,B+" Focus"]],[/\bopt\/([\w\.]+)/i],[n,[k,G+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[n,[k,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[n,[k,"Dolphin"]],[/coast\/([\w\.]+)/i],[n,[k,G+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[n,[k,"MIUI "+z]],[/fxios\/([-\w\.]+)/i],[n,[k,B]],[/\bqihu|(qi?ho?o?|360)browser/i],[[k,"360 "+z]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[k,/(.+)/,"$1 "+z],n],[/(comodo_dragon)\/([\w\.]+)/i],[[k,/_/g," "],n],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[k,n],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[k],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[k,M],n],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[k,n],[/\bgsa\/([\w\.]+) .*safari\//i],[n,[k,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[n,[k,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[n,[k,A+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[k,A+" WebView"],n],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[n,[k,"Android "+z]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[k,n],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[n,[k,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[n,k],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[k,[n,V,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[k,n],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[k,"Netscape"],n],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[n,[k,B+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[k,n],[/(cobalt)\/([\w\.]+)/i],[k,[n,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[o,"amd64"]],[/(ia32(?=;))/i],[[o,S]],[/((?:i[346]|x)86)[;\)]/i],[[o,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[o,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[o,"armhf"]],[/windows (ce|mobile); ppc;/i],[[o,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[o,/ower/,"",S]],[/(sun4\w)[;\)]/i],[[o,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[o,S]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[j,[m,H],[l,r]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[j,[m,H],[l,q]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[j,[m,w],[l,q]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[j,[m,w],[l,r]],[/(macintosh);/i],[j,[m,w]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[j,[m,I],[l,q]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[j,[m,D],[l,r]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[j,[m,D],[l,q]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[j,/_/g," "],[m,K],[l,q]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[j,/_/g," "],[m,K],[l,r]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[j,[m,"OPPO"],[l,q]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[j,[m,"Vivo"],[l,q]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[j,[m,"Realme"],[l,q]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[j,[m,F],[l,q]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[j,[m,F],[l,r]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[j,[m,"LG"],[l,r]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[j,[m,"LG"],[l,q]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[j,[m,"Lenovo"],[l,r]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[j,/_/g," "],[m,"Nokia"],[l,q]],[/(pixel c)\b/i],[j,[m,C],[l,r]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[j,[m,C],[l,q]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[j,[m,J],[l,q]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[j,"Xperia Tablet"],[m,J],[l,r]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[j,[m,"OnePlus"],[l,q]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[j,[m,v],[l,r]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[j,/(.+)/g,"Fire Phone $1"],[m,v],[l,q]],[/(playbook);[-\w\),; ]+(rim)/i],[j,m,[l,r]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[j,[m,y],[l,q]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[j,[m,x],[l,r]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[j,[m,x],[l,q]],[/(nexus 9)/i],[j,[m,"HTC"],[l,r]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[m,[j,/_/g," "],[l,q]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[j,[m,"Acer"],[l,r]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[j,[m,"Meizu"],[l,q]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[m,j,[l,q]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[m,j,[l,r]],[/(surface duo)/i],[j,[m,E],[l,r]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[j,[m,"Fairphone"],[l,q]],[/(u304aa)/i],[j,[m,"AT&T"],[l,q]],[/\bsie-(\w*)/i],[j,[m,"Siemens"],[l,q]],[/\b(rct\w+) b/i],[j,[m,"RCA"],[l,r]],[/\b(venue[\d ]{2,7}) b/i],[j,[m,"Dell"],[l,r]],[/\b(q(?:mv|ta)\w+) b/i],[j,[m,"Verizon"],[l,r]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[j,[m,"Barnes & Noble"],[l,r]],[/\b(tm\d{3}\w+) b/i],[j,[m,"NuVision"],[l,r]],[/\b(k88) b/i],[j,[m,"ZTE"],[l,r]],[/\b(nx\d{3}j) b/i],[j,[m,"ZTE"],[l,q]],[/\b(gen\d{3}) b.+49h/i],[j,[m,"Swiss"],[l,q]],[/\b(zur\d{3}) b/i],[j,[m,"Swiss"],[l,r]],[/\b((zeki)?tb.*\b) b/i],[j,[m,"Zeki"],[l,r]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[m,"Dragon Touch"],j,[l,r]],[/\b(ns-?\w{0,9}) b/i],[j,[m,"Insignia"],[l,r]],[/\b((nxa|next)-?\w{0,9}) b/i],[j,[m,"NextBook"],[l,r]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[m,"Voice"],j,[l,q]],[/\b(lvtel\-)?(v1[12]) b/i],[[m,"LvTel"],j,[l,q]],[/\b(ph-1) /i],[j,[m,"Essential"],[l,q]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[j,[m,"Envizen"],[l,r]],[/\b(trio[-\w\. ]+) b/i],[j,[m,"MachSpeed"],[l,r]],[/\btu_(1491) b/i],[j,[m,"Rotor"],[l,r]],[/(shield[\w ]+) b/i],[j,[m,"Nvidia"],[l,r]],[/(sprint) (\w+)/i],[m,j,[l,q]],[/(kin\.[onetw]{3})/i],[[j,/\./g," "],[m,E],[l,q]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[j,[m,L],[l,r]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[j,[m,L],[l,q]],[/smart-tv.+(samsung)/i],[m,[l,s]],[/hbbtv.+maple;(\d+)/i],[[j,/^/,"SmartTV"],[m,H],[l,s]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[m,"LG"],[l,s]],[/(apple) ?tv/i],[m,[j,w+" TV"],[l,s]],[/crkey/i],[[j,A+"cast"],[m,C],[l,s]],[/droid.+aft(\w)( bui|\))/i],[j,[m,v],[l,s]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[j,[m,I],[l,s]],[/(bravia[\w ]+)( bui|\))/i],[j,[m,J],[l,s]],[/(mitv-\w{5}) bui/i],[j,[m,K],[l,s]],[/Hbbtv.*(technisat) (.*);/i],[m,j,[l,s]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[m,T],[j,T],[l,s]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[l,s]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[m,j,[l,p]],[/droid.+; (shield) bui/i],[j,[m,"Nvidia"],[l,p]],[/(playstation [345portablevi]+)/i],[j,[m,J],[l,p]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[j,[m,E],[l,p]],[/((pebble))app/i],[m,j,[l,t]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[j,[m,w],[l,t]],[/droid.+; (glass) \d/i],[j,[m,C],[l,t]],[/droid.+; (wt63?0{2,3})\)/i],[j,[m,L],[l,t]],[/(quest( 2| pro)?)/i],[j,[m,M],[l,t]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[m,[l,u]],[/(aeobc)\b/i],[j,[m,v],[l,u]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[j,[l,q]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[j,[l,r]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[l,r]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[l,q]],[/(android[-\w\. ]{0,9});.+buil/i],[j,[m,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[n,[k,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[n,[k,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[k,n],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[n,k]],os:[[/microsoft (windows) (vista|xp)/i],[k,n],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[k,[n,V,W]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[k,"Windows"],[n,V,W]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[n,/_/g,"."],[k,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[k,O],[n,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[n,k],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[k,n],[/\(bb(10);/i],[n,[k,y]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[n,[k,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[n,[k,B+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[n,[k,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[n,[k,"watchOS"]],[/crkey\/([\d\.]+)/i],[n,[k,A+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[k,N],n],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[k,n],[/(sunos) ?([\w\.\d]*)/i],[[k,"Solaris"],n],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[k,n]]},Y=function(a,b){if(typeof a===g&&(b=a,a=void 0),!(this instanceof Y))return new Y(a,b).getResult();var c=typeof d!==f&&d.navigator?d.navigator:void 0,p=a||(c&&c.userAgent?c.userAgent:""),s=c&&c.userAgentData?c.userAgentData:void 0,t=b?P(X,b):X,u=c&&c.userAgent==p;return this.getBrowser=function(){var a,b={};return b[k]=void 0,b[n]=void 0,U.call(b,p,t.browser),b[i]=typeof(a=b[n])===h?a.replace(/[^\d\.]/g,"").split(".")[0]:void 0,u&&c&&c.brave&&typeof c.brave.isBrave==e&&(b[k]="Brave"),b},this.getCPU=function(){var a={};return a[o]=void 0,U.call(a,p,t.cpu),a},this.getDevice=function(){var a={};return a[m]=void 0,a[j]=void 0,a[l]=void 0,U.call(a,p,t.device),u&&!a[l]&&s&&s.mobile&&(a[l]=q),u&&"Macintosh"==a[j]&&c&&typeof c.standalone!==f&&c.maxTouchPoints&&c.maxTouchPoints>2&&(a[j]="iPad",a[l]=r),a},this.getEngine=function(){var a={};return a[k]=void 0,a[n]=void 0,U.call(a,p,t.engine),a},this.getOS=function(){var a={};return a[k]=void 0,a[n]=void 0,U.call(a,p,t.os),u&&!a[k]&&s&&"Unknown"!=s.platform&&(a[k]=s.platform.replace(/chrome os/i,N).replace(/macos/i,O)),a},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return p},this.setUA=function(a){return p=typeof a===h&&a.length>350?T(a,350):a,this},this.setUA(p),this};if(Y.VERSION="1.0.35",Y.BROWSER=Q([k,n,i]),Y.CPU=Q([o]),Y.DEVICE=Q([j,m,l,p,q,s,r,t,u]),Y.ENGINE=Y.OS=Q([k,n]),typeof c!==f)b.exports&&(c=b.exports=Y),c.UAParser=Y;else if(typeof define===e&&define.amd)a.r,void 0!==Y&&a.v(Y);else typeof d!==f&&(d.UAParser=Y);var Z=typeof d!==f&&(d.jQuery||d.Zepto);if(Z&&!Z.ua){var $=new Y;Z.ua=$.getResult(),Z.ua.get=function(){return $.getUA()},Z.ua.set=function(a){$.setUA(a);var b=$.getResult();for(var c in b)Z.ua[c]=b[c]}}}(this)}},e={};function f(a){var b=e[a];if(void 0!==b)return b.exports;var c=e[a]={exports:{}},g=!0;try{d[a].call(c.exports,c,c.exports,f),g=!1}finally{g&&delete e[a]}return c.exports}f.ab="/ROOT/node_modules/next/dist/compiled/ua-parser-js/",b.exports=f(943)},240881,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e={isBot:function(){return h},userAgent:function(){return j},userAgentFromString:function(){return i}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});let g=(d=a.r(506431))&&d.__esModule?d:{default:d};function h(a){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver|GPTBot/i.test(a)}function i(a){return{...(0,g.default)(a),isBot:void 0!==a&&h(a)}}function j({headers:a}){return i(a.get("user-agent")||void 0)}},750792,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"URLPattern",{enumerable:!0,get:function(){return d}});let d="u"<typeof URLPattern?void 0:URLPattern},292603,(a,b,c)=>{"use strict";function d(a,b,c){if(a){for(let d of(c&&(c=c.toLowerCase()),a))if(b===d.domain?.split(":",1)[0].toLowerCase()||c===d.defaultLocale.toLowerCase()||d.locales?.some(a=>a.toLowerCase()===c))return d}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"detectDomainLocale",{enumerable:!0,get:function(){return d}})},374993,(a,b,c)=>{"use strict";function d(a){return 47===a.charCodeAt(a.length-1)&&a.length>1?a.slice(0,-1):a}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"removeTrailingSlash",{enumerable:!0,get:function(){return d}})},971442,(a,b,c)=>{"use strict";function d(a){let b=a.indexOf("#"),c=a.indexOf("?"),d=c>-1&&(b<0||c<b);return d||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"parsePath",{enumerable:!0,get:function(){return d}})},791150,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"addPathPrefix",{enumerable:!0,get:function(){return e}});let d=a.r(971442);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return`${b}${c}${e}${f}`}},347074,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"addPathSuffix",{enumerable:!0,get:function(){return e}});let d=a.r(971442);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return`${c}${b}${e}${f}`}},139481,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"pathHasPrefix",{enumerable:!0,get:function(){return e}});let d=a.r(971442);function e(a,b){if("string"!=typeof a)return!1;let{pathname:c}=(0,d.parsePath)(a);return c===b||c.startsWith(b+"/")}},507700,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"addLocale",{enumerable:!0,get:function(){return f}});let d=a.r(791150),e=a.r(139481);function f(a,b,c,f){if(!b||b===c)return a;let g=a.toLowerCase();return!f&&((0,e.pathHasPrefix)(g,"/api")||(0,e.pathHasPrefix)(g,`/${b.toLowerCase()}`))?a:(0,d.addPathPrefix)(a,`/${b}`)}},97642,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"formatNextPathnameInfo",{enumerable:!0,get:function(){return h}});let d=a.r(374993),e=a.r(791150),f=a.r(347074),g=a.r(507700);function h(a){let b=(0,g.addLocale)(a.pathname,a.locale,a.buildId?void 0:a.defaultLocale,a.ignorePrefix);return(a.buildId||!a.trailingSlash)&&(b=(0,d.removeTrailingSlash)(b)),a.buildId&&(b=(0,f.addPathSuffix)((0,e.addPathPrefix)(b,`/_next/data/${a.buildId}`),"/"===a.pathname?"index.json":".json")),b=(0,e.addPathPrefix)(b,a.basePath),!a.buildId&&a.trailingSlash?b.endsWith("/")?b:(0,f.addPathSuffix)(b,"/"):(0,d.removeTrailingSlash)(b)}},64239,(a,b,c)=>{"use strict";function d(a,b){let c;if(b?.host&&!Array.isArray(b.host))c=b.host.toString().split(":",1)[0];else{if(!a.hostname)return;c=a.hostname}return c.toLowerCase()}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getHostname",{enumerable:!0,get:function(){return d}})},603885,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"normalizeLocalePath",{enumerable:!0,get:function(){return e}});let d=new WeakMap;function e(a,b){let c;if(!b)return{pathname:a};let e=d.get(b);e||(e=b.map(a=>a.toLowerCase()),d.set(b,e));let f=a.split("/",2);if(!f[1])return{pathname:a};let g=f[1].toLowerCase(),h=e.indexOf(g);return h<0?{pathname:a}:(c=b[h],{pathname:a=a.slice(c.length+1)||"/",detectedLocale:c})}},361601,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"removePathPrefix",{enumerable:!0,get:function(){return e}});let d=a.r(139481);function e(a,b){if(!(0,d.pathHasPrefix)(a,b))return a;let c=a.slice(b.length);return c.startsWith("/")?c:`/${c}`}},294971,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getNextPathnameInfo",{enumerable:!0,get:function(){return g}});let d=a.r(603885),e=a.r(361601),f=a.r(139481);function g(a,b){let{basePath:c,i18n:g,trailingSlash:h}=b.nextConfig??{},i={pathname:a,trailingSlash:"/"!==a?a.endsWith("/"):h};c&&(0,f.pathHasPrefix)(i.pathname,c)&&(i.pathname=(0,e.removePathPrefix)(i.pathname,c),i.basePath=c);let j=i.pathname;if(i.pathname.startsWith("/_next/data/")&&i.pathname.endsWith(".json")){let a=i.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");i.buildId=a[0],j="index"!==a[1]?`/${a.slice(1).join("/")}`:"/",!0===b.parseData&&(i.pathname=j)}if(g){let a=b.i18nProvider?b.i18nProvider.analyze(i.pathname):(0,d.normalizeLocalePath)(i.pathname,g.locales);i.locale=a.detectedLocale,i.pathname=a.pathname??i.pathname,!a.detectedLocale&&i.buildId&&(a=b.i18nProvider?b.i18nProvider.analyze(j):(0,d.normalizeLocalePath)(j,g.locales)).detectedLocale&&(i.locale=a.detectedLocale)}return i}},522670,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"NextURL",{enumerable:!0,get:function(){return k}});let d=a.r(292603),e=a.r(97642),f=a.r(64239),g=a.r(294971),h=/^(?:127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)$/;function i(a,b){let c=new URL(String(a),b&&String(b));return h.test(c.hostname)&&(c.hostname="localhost"),c}let j=Symbol("NextURLInternal");class k{constructor(a,b,c){let d,e;"object"==typeof b&&"pathname"in b||"string"==typeof b?(d=b,e=c||{}):e=c||b||{},this[j]={url:i(a,d??e.base),options:e,basePath:""},this.analyze()}analyze(){var a,b,c,e,h;let i=(0,g.getNextPathnameInfo)(this[j].url.pathname,{nextConfig:this[j].options.nextConfig,parseData:!0,i18nProvider:this[j].options.i18nProvider}),k=(0,f.getHostname)(this[j].url,this[j].options.headers);this[j].domainLocale=this[j].options.i18nProvider?this[j].options.i18nProvider.detectDomainLocale(k):(0,d.detectDomainLocale)(null==(b=this[j].options.nextConfig)||null==(a=b.i18n)?void 0:a.domains,k);let l=(null==(c=this[j].domainLocale)?void 0:c.defaultLocale)||(null==(h=this[j].options.nextConfig)||null==(e=h.i18n)?void 0:e.defaultLocale);this[j].url.pathname=i.pathname,this[j].defaultLocale=l,this[j].basePath=i.basePath??"",this[j].buildId=i.buildId,this[j].locale=i.locale??l,this[j].trailingSlash=i.trailingSlash}formatPathname(){return(0,e.formatNextPathnameInfo)({basePath:this[j].basePath,buildId:this[j].buildId,defaultLocale:this[j].options.forceLocale?void 0:this[j].defaultLocale,locale:this[j].locale,pathname:this[j].url.pathname,trailingSlash:this[j].trailingSlash})}formatSearch(){return this[j].url.search}get buildId(){return this[j].buildId}set buildId(a){this[j].buildId=a}get locale(){return this[j].locale??""}set locale(a){var b,c;if(!this[j].locale||!(null==(c=this[j].options.nextConfig)||null==(b=c.i18n)?void 0:b.locales.includes(a)))throw Object.defineProperty(TypeError(`The NextURL configuration includes no locale "${a}"`),"__NEXT_ERROR_CODE",{value:"E597",enumerable:!1,configurable:!0});this[j].locale=a}get defaultLocale(){return this[j].defaultLocale}get domainLocale(){return this[j].domainLocale}get searchParams(){return this[j].url.searchParams}get host(){return this[j].url.host}set host(a){this[j].url.host=a}get hostname(){return this[j].url.hostname}set hostname(a){this[j].url.hostname=a}get port(){return this[j].url.port}set port(a){this[j].url.port=a}get protocol(){return this[j].url.protocol}set protocol(a){this[j].url.protocol=a}get href(){let a=this.formatPathname(),b=this.formatSearch();return`${this.protocol}//${this.host}${a}${b}${this.hash}`}set href(a){this[j].url=i(a),this.analyze()}get origin(){return this[j].url.origin}get pathname(){return this[j].url.pathname}set pathname(a){this[j].url.pathname=a}get hash(){return this[j].url.hash}set hash(a){this[j].url.hash=a}get search(){return this[j].url.search}set search(a){this[j].url.search=a}get password(){return this[j].url.password}set password(a){this[j].url.password=a}get username(){return this[j].url.username}set username(a){this[j].url.username=a}get basePath(){return this[j].basePath}set basePath(a){this[j].basePath=a.startsWith("/")?a:`/${a}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new k(String(this),this[j].options)}}},299870,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={ACTION_SUFFIX:function(){return q},APP_DIR_ALIAS:function(){return P},CACHE_ONE_YEAR_SECONDS:function(){return F},DOT_NEXT_ALIAS:function(){return N},ESLINT_DEFAULT_DIRS:function(){return ah},GSP_NO_RETURNED_VALUE:function(){return ab},GSSP_COMPONENT_MEMBER_ERROR:function(){return ae},GSSP_NO_RETURNED_VALUE:function(){return ac},HTML_CONTENT_TYPE_HEADER:function(){return g},INFINITE_CACHE:function(){return G},INSTRUMENTATION_HOOK_FILENAME:function(){return L},JSON_CONTENT_TYPE_HEADER:function(){return h},MATCHED_PATH_HEADER:function(){return k},MIDDLEWARE_FILENAME:function(){return H},MIDDLEWARE_LOCATION_REGEXP:function(){return I},NEXT_BODY_SUFFIX:function(){return t},NEXT_CACHE_IMPLICIT_TAG_ID:function(){return D},NEXT_CACHE_REVALIDATED_TAGS_HEADER:function(){return w},NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER:function(){return x},NEXT_CACHE_ROOT_PARAM_TAG_ID:function(){return E},NEXT_CACHE_SOFT_TAG_MAX_LENGTH:function(){return C},NEXT_CACHE_TAGS_HEADER:function(){return v},NEXT_CACHE_TAG_MAX_ITEMS:function(){return A},NEXT_CACHE_TAG_MAX_LENGTH:function(){return B},NEXT_DATA_SUFFIX:function(){return r},NEXT_INTERCEPTION_MARKER_PREFIX:function(){return j},NEXT_META_SUFFIX:function(){return s},NEXT_NAV_DEPLOYMENT_ID_HEADER:function(){return u},NEXT_QUERY_PARAM_PREFIX:function(){return i},NEXT_RESUME_HEADER:function(){return y},NEXT_RESUME_STATE_LENGTH_HEADER:function(){return z},NON_STANDARD_NODE_ENV:function(){return af},PAGES_DIR_ALIAS:function(){return M},PRERENDER_REVALIDATE_HEADER:function(){return l},PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER:function(){return m},PROXY_FILENAME:function(){return J},PROXY_LOCATION_REGEXP:function(){return K},PUBLIC_DIR_MIDDLEWARE_CONFLICT:function(){return X},ROOT_DIR_ALIAS:function(){return O},RSC_ACTION_CLIENT_WRAPPER_ALIAS:function(){return W},RSC_ACTION_ENCRYPTION_ALIAS:function(){return V},RSC_ACTION_PROXY_ALIAS:function(){return S},RSC_ACTION_VALIDATE_ALIAS:function(){return R},RSC_CACHE_WRAPPER_ALIAS:function(){return T},RSC_DYNAMIC_IMPORT_WRAPPER_ALIAS:function(){return U},RSC_MOD_REF_PROXY_ALIAS:function(){return Q},RSC_SEGMENTS_DIR_SUFFIX:function(){return n},RSC_SEGMENT_SUFFIX:function(){return o},RSC_SUFFIX:function(){return p},SERVER_PROPS_EXPORT_ERROR:function(){return aa},SERVER_PROPS_GET_INIT_PROPS_CONFLICT:function(){return Z},SERVER_PROPS_SSG_CONFLICT:function(){return $},SERVER_RUNTIME:function(){return ai},SSG_FALLBACK_EXPORT_ERROR:function(){return ag},SSG_GET_INITIAL_PROPS_CONFLICT:function(){return Y},STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR:function(){return _},TEXT_PLAIN_CONTENT_TYPE_HEADER:function(){return f},UNSTABLE_REVALIDATE_RENAME_ERROR:function(){return ad},WEBPACK_LAYERS:function(){return al},WEBPACK_RESOURCE_QUERIES:function(){return am},WEB_SOCKET_MAX_RECONNECTIONS:function(){return aj}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="text/plain",g="text/html; charset=utf-8",h="application/json; charset=utf-8",i="nxtP",j="nxtI",k="x-matched-path",l="x-prerender-revalidate",m="x-prerender-revalidate-if-generated",n=".segments",o=".segment.rsc",p=".rsc",q=".action",r=".json",s=".meta",t=".body",u="x-nextjs-deployment-id",v="x-next-cache-tags",w="x-next-revalidated-tags",x="x-next-revalidate-tag-token",y="next-resume",z="x-next-resume-state-length",A=128,B=256,C=1024,D="_N_T_",E="_N_RP_",F=31536e3,G=0xfffffffe,H="middleware",I=`(?:src/)?${H}`,J="proxy",K=`(?:src/)?${J}`,L="instrumentation",M="private-next-pages",N="private-dot-next",O="private-next-root-dir",P="private-next-app-dir",Q="private-next-rsc-mod-ref-proxy",R="private-next-rsc-action-validate",S="private-next-rsc-server-reference",T="private-next-rsc-cache-wrapper",U="private-next-rsc-track-dynamic-import",V="private-next-rsc-action-encryption",W="private-next-rsc-action-client-wrapper",X="You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict",Y="You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps",Z="You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.",$="You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps",_="can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props",aa="pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export",ab="Your `getStaticProps` function did not return an object. Did you forget to add a `return`?",ac="Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?",ad="The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.",ae="can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member",af='You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env',ag="Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export",ah=["app","pages","components","lib","src"],ai={edge:"edge",experimentalEdge:"experimental-edge",nodejs:"nodejs"},aj=12,ak={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"},al={...ak,GROUP:{builtinReact:[ak.reactServerComponents,ak.actionBrowser],serverOnly:[ak.reactServerComponents,ak.actionBrowser,ak.instrument,ak.middleware],neutralTarget:[ak.apiNode,ak.apiEdge],clientOnly:[ak.serverSideRendering,ak.appPagesBrowser],bundled:[ak.reactServerComponents,ak.actionBrowser,ak.serverSideRendering,ak.appPagesBrowser,ak.shared,ak.instrument,ak.middleware],appPages:[ak.reactServerComponents,ak.serverSideRendering,ak.appPagesBrowser,ak.actionBrowser]}},am={edgeSSREntry:"__next_edge_ssr_entry__",metadata:"__next_metadata__",metadataRoute:"__next_metadata_route__",metadataImageMeta:"__next_metadata_image_meta__"}},392273,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={fromNodeOutgoingHttpHeaders:function(){return g},normalizeNextQueryParam:function(){return k},splitCookiesString:function(){return h},toNodeOutgoingHttpHeaders:function(){return i},validateURL:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(299870);function g(a){let b=new Headers;for(let[c,d]of Object.entries(a))for(let a of Array.isArray(d)?d:[d])void 0!==a&&("number"==typeof a&&(a=a.toString()),b.append(c,a));return b}function h(a){var b,c,d,e,f,g=[],h=0;function i(){for(;h<a.length&&/\s/.test(a.charAt(h));)h+=1;return h<a.length}for(;h<a.length;){for(b=h,f=!1;i();)if(","===(c=a.charAt(h))){for(d=h,h+=1,i(),e=h;h<a.length&&"="!==(c=a.charAt(h))&&";"!==c&&","!==c;)h+=1;h<a.length&&"="===a.charAt(h)?(f=!0,h=e,g.push(a.substring(b,d)),b=h):h=d+1}else h+=1;(!f||h>=a.length)&&g.push(a.substring(b,a.length))}return g}function i(a){let b={},c=[];if(a)for(let[d,e]of a.entries())"set-cookie"===d.toLowerCase()?(c.push(...h(e)),b[d]=1===c.length?c[0]:c):b[d]=e;return b}function j(a){try{return String(new URL(String(a)))}catch(b){throw Object.defineProperty(Error(`URL is malformed "${String(a)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`,{cause:b}),"__NEXT_ERROR_CODE",{value:"E61",enumerable:!1,configurable:!0})}}function k(a){for(let b of[f.NEXT_QUERY_PARAM_PREFIX,f.NEXT_INTERCEPTION_MARKER_PREFIX])if(a!==b&&a.startsWith(b))return a.substring(b.length);return null}},989753,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={PageSignatureError:function(){return f},RemovedPageError:function(){return g},RemovedUAError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});class f extends Error{constructor({page:a}){super(`The middleware "${a}" accepts an async API directly with the form:
|
|
215
|
-
|
|
216
|
-
export function middleware(request, event) {
|
|
217
|
-
return NextResponse.redirect('/new-location')
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
Read more: https://nextjs.org/docs/messages/middleware-new-signature
|
|
221
|
-
`),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1177",enumerable:!1,configurable:!0})}}class g extends Error{constructor(){super("The request.page has been deprecated in favour of `URLPattern`.\n Read more: https://nextjs.org/docs/messages/middleware-request-page\n "),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1178",enumerable:!1,configurable:!0})}}class h extends Error{constructor(){super("The request.ua has been removed in favour of `userAgent` function.\n Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent\n "),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1172",enumerable:!1,configurable:!0})}}},927267,(a,b,c)=>{"use strict";let d=Symbol.for("yaml.alias"),e=Symbol.for("yaml.document"),f=Symbol.for("yaml.map"),g=Symbol.for("yaml.pair"),h=Symbol.for("yaml.scalar"),i=Symbol.for("yaml.seq"),j=Symbol.for("yaml.node.type"),k=a=>!!a&&"object"==typeof a&&a[j]===h;function l(a){if(a&&"object"==typeof a)switch(a[j]){case f:case i:return!0}return!1}c.ALIAS=d,c.DOC=e,c.MAP=f,c.NODE_TYPE=j,c.PAIR=g,c.SCALAR=h,c.SEQ=i,c.hasAnchor=a=>(k(a)||l(a))&&!!a.anchor,c.isAlias=a=>!!a&&"object"==typeof a&&a[j]===d,c.isCollection=l,c.isDocument=a=>!!a&&"object"==typeof a&&a[j]===e,c.isMap=a=>!!a&&"object"==typeof a&&a[j]===f,c.isNode=function(a){if(a&&"object"==typeof a)switch(a[j]){case d:case f:case h:case i:return!0}return!1},c.isPair=a=>!!a&&"object"==typeof a&&a[j]===g,c.isScalar=k,c.isSeq=a=>!!a&&"object"==typeof a&&a[j]===i},685927,(a,b,c)=>{"use strict";var d=a.r(927267);let e=Symbol("break visit"),f=Symbol("skip children"),g=Symbol("remove node");function h(a,b){let c=l(b);d.isDocument(a)?i(null,a.contents,c,Object.freeze([a]))===g&&(a.contents=null):i(null,a,c,Object.freeze([]))}function i(a,b,c,f){let h=m(a,b,c,f);if(d.isNode(h)||d.isPair(h))return n(a,f,h),i(a,h,c,f);if("symbol"!=typeof h){if(d.isCollection(b)){f=Object.freeze(f.concat(b));for(let a=0;a<b.items.length;++a){let d=i(a,b.items[a],c,f);if("number"==typeof d)a=d-1;else{if(d===e)return e;d===g&&(b.items.splice(a,1),a-=1)}}}else if(d.isPair(b)){f=Object.freeze(f.concat(b));let a=i("key",b.key,c,f);if(a===e)return e;a===g&&(b.key=null);let d=i("value",b.value,c,f);if(d===e)return e;d===g&&(b.value=null)}}return h}async function j(a,b){let c=l(b);d.isDocument(a)?await k(null,a.contents,c,Object.freeze([a]))===g&&(a.contents=null):await k(null,a,c,Object.freeze([]))}async function k(a,b,c,f){let h=await m(a,b,c,f);if(d.isNode(h)||d.isPair(h))return n(a,f,h),k(a,h,c,f);if("symbol"!=typeof h){if(d.isCollection(b)){f=Object.freeze(f.concat(b));for(let a=0;a<b.items.length;++a){let d=await k(a,b.items[a],c,f);if("number"==typeof d)a=d-1;else{if(d===e)return e;d===g&&(b.items.splice(a,1),a-=1)}}}else if(d.isPair(b)){f=Object.freeze(f.concat(b));let a=await k("key",b.key,c,f);if(a===e)return e;a===g&&(b.key=null);let d=await k("value",b.value,c,f);if(d===e)return e;d===g&&(b.value=null)}}return h}function l(a){return"object"==typeof a&&(a.Collection||a.Node||a.Value)?Object.assign({Alias:a.Node,Map:a.Node,Scalar:a.Node,Seq:a.Node},a.Value&&{Map:a.Value,Scalar:a.Value,Seq:a.Value},a.Collection&&{Map:a.Collection,Seq:a.Collection},a):a}function m(a,b,c,e){return"function"==typeof c?c(a,b,e):d.isMap(b)?c.Map?.(a,b,e):d.isSeq(b)?c.Seq?.(a,b,e):d.isPair(b)?c.Pair?.(a,b,e):d.isScalar(b)?c.Scalar?.(a,b,e):d.isAlias(b)?c.Alias?.(a,b,e):void 0}function n(a,b,c){let e=b[b.length-1];if(d.isCollection(e))e.items[a]=c;else if(d.isPair(e))"key"===a?e.key=c:e.value=c;else if(d.isDocument(e))e.contents=c;else{let a=d.isAlias(e)?"alias":"scalar";throw Error(`Cannot replace node with ${a} parent`)}}h.BREAK=e,h.SKIP=f,h.REMOVE=g,j.BREAK=e,j.SKIP=f,j.REMOVE=g,c.visit=h,c.visitAsync=j},374957,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(685927);let f={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},g=a=>a.replace(/[!,[\]{}]/g,a=>f[a]);class h{constructor(a,b){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},h.defaultYaml,a),this.tags=Object.assign({},h.defaultTags,b)}clone(){let a=new h(this.yaml,this.tags);return a.docStart=this.docStart,a}atDocument(){let a=new h(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:h.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},h.defaultTags)}return a}add(a,b){this.atNextDocument&&(this.yaml={explicit:h.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},h.defaultTags),this.atNextDocument=!1);let c=a.trim().split(/[ \t]+/),d=c.shift();switch(d){case"%TAG":{if(2!==c.length&&(b(0,"%TAG directive should contain exactly two parts"),c.length<2))return!1;let[a,d]=c;return this.tags[a]=d,!0}case"%YAML":{if(this.yaml.explicit=!0,1!==c.length)return b(0,"%YAML directive should contain exactly one part"),!1;let[a]=c;if("1.1"===a||"1.2"===a)return this.yaml.version=a,!0;{let c=/^\d+\.\d+$/.test(a);return b(6,`Unsupported YAML version ${a}`,c),!1}}default:return b(0,`Unknown directive ${d}`,!0),!1}}tagName(a,b){if("!"===a)return"!";if("!"!==a[0])return b(`Not a valid tag: ${a}`),null;if("<"===a[1]){let c=a.slice(2,-1);return"!"===c||"!!"===c?(b(`Verbatim tags aren't resolved, so ${a} is invalid.`),null):(">"!==a[a.length-1]&&b("Verbatim tags must end with a >"),c)}let[,c,d]=a.match(/^(.*!)([^!]*)$/s);d||b(`The ${a} tag has no suffix`);let e=this.tags[c];if(e)try{return e+decodeURIComponent(d)}catch(a){return b(String(a)),null}return"!"===c?a:(b(`Could not resolve tag: ${a}`),null)}tagString(a){for(let[b,c]of Object.entries(this.tags))if(a.startsWith(c))return b+g(a.substring(c.length));return"!"===a[0]?a:`!<${a}>`}toString(a){let b,c=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],f=Object.entries(this.tags);if(a&&f.length>0&&d.isNode(a.contents)){let c={};e.visit(a.contents,(a,b)=>{d.isNode(b)&&b.tag&&(c[b.tag]=!0)}),b=Object.keys(c)}else b=[];for(let[d,e]of f)("!!"!==d||"tag:yaml.org,2002:"!==e)&&(!a||b.some(a=>a.startsWith(e)))&&c.push(`%TAG ${d} ${e}`);return c.join("\n")}}h.defaultYaml={explicit:!1,version:"1.2"},h.defaultTags={"!!":"tag:yaml.org,2002:"},c.Directives=h},210937,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(685927);function f(a){let b=new Set;return e.visit(a,{Value(a,c){c.anchor&&b.add(c.anchor)}}),b}function g(a,b){for(let c=1;;++c){let d=`${a}${c}`;if(!b.has(d))return d}}c.anchorIsValid=function(a){if(/[\x00-\x19\s,[\]{}]/.test(a)){let b=JSON.stringify(a);throw Error(`Anchor must not contain whitespace or control characters: ${b}`)}return!0},c.anchorNames=f,c.createNodeAnchors=function(a,b){let c=[],e=new Map,h=null;return{onAnchor:d=>{c.push(d),h??(h=f(a));let e=g(b,h);return h.add(e),e},setAnchors:()=>{for(let a of c){let b=e.get(a);if("object"==typeof b&&b.anchor&&(d.isScalar(b.node)||d.isCollection(b.node)))b.node.anchor=b.anchor;else{let b=Error("Failed to resolve repeated object (this should not happen)");throw b.source=a,b}}},sourceObjects:e}},c.findNewAnchor=g},159588,(a,b,c)=>{"use strict";c.applyReviver=function a(b,c,d,e){if(e&&"object"==typeof e)if(Array.isArray(e))for(let c=0,d=e.length;c<d;++c){let d=e[c],f=a(b,e,String(c),d);void 0===f?delete e[c]:f!==d&&(e[c]=f)}else if(e instanceof Map)for(let c of Array.from(e.keys())){let d=e.get(c),f=a(b,e,c,d);void 0===f?e.delete(c):f!==d&&e.set(c,f)}else if(e instanceof Set)for(let c of Array.from(e)){let d=a(b,e,c,c);void 0===d?e.delete(c):d!==c&&(e.delete(c),e.add(d))}else for(let[c,d]of Object.entries(e)){let f=a(b,e,c,d);void 0===f?delete e[c]:f!==d&&(e[c]=f)}return b.call(c,d,e)}},500094,(a,b,c)=>{"use strict";var d=a.r(927267);c.toJS=function a(b,c,e){if(Array.isArray(b))return b.map((b,c)=>a(b,String(c),e));if(b&&"function"==typeof b.toJSON){if(!e||!d.hasAnchor(b))return b.toJSON(c,e);let a={aliasCount:0,count:1,res:void 0};e.anchors.set(b,a),e.onCreate=b=>{a.res=b,delete e.onCreate};let f=b.toJSON(c,e);return e.onCreate&&e.onCreate(f),f}return"bigint"!=typeof b||e?.keep?b:Number(b)}},125154,(a,b,c)=>{"use strict";var d=a.r(159588),e=a.r(927267),f=a.r(500094);c.NodeBase=class{constructor(a){Object.defineProperty(this,e.NODE_TYPE,{value:a})}clone(){let a=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(a.range=this.range.slice()),a}toJS(a,{mapAsMap:b,maxAliasCount:c,onAnchor:g,reviver:h}={}){if(!e.isDocument(a))throw TypeError("A document argument is required");let i={anchors:new Map,doc:a,keep:!0,mapAsMap:!0===b,mapKeyWarned:!1,maxAliasCount:"number"==typeof c?c:100},j=f.toJS(this,"",i);if("function"==typeof g)for(let{count:a,res:b}of i.anchors.values())g(b,a);return"function"==typeof h?d.applyReviver(h,{"":j},"",j):j}}},421562,(a,b,c)=>{"use strict";var d=a.r(210937),e=a.r(685927),f=a.r(927267),g=a.r(125154),h=a.r(500094);class i extends g.NodeBase{constructor(a){super(f.ALIAS),this.source=a,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(a,b){let c,d;if(b?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");for(let g of(b?.aliasResolveCache?c=b.aliasResolveCache:(c=[],e.visit(a,{Node:(a,b)=>{(f.isAlias(b)||f.hasAnchor(b))&&c.push(b)}}),b&&(b.aliasResolveCache=c)),c)){if(g===this)break;g.anchor===this.source&&(d=g)}return d}toJSON(a,b){if(!b)return{source:this.source};let{anchors:c,doc:d,maxAliasCount:e}=b,g=this.resolve(d,b);if(!g)throw ReferenceError(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);let i=c.get(g);if(i||(h.toJS(g,null,b),i=c.get(g)),i?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(e>=0&&(i.count+=1,0===i.aliasCount&&(i.aliasCount=function a(b,c,d){if(f.isAlias(c)){let a=c.resolve(b),e=d&&a&&d.get(a);return e?e.count*e.aliasCount:0}if(f.isCollection(c)){let e=0;for(let f of c.items){let c=a(b,f,d);c>e&&(e=c)}return e}return f.isPair(c)?Math.max(a(b,c.key,d),a(b,c.value,d)):1}(d,g,c)),i.count*i.aliasCount>e))throw ReferenceError("Excessive alias count indicates a resource exhaustion attack");return i.res}toString(a,b,c){let e=`*${this.source}`;if(a){if(d.anchorIsValid(this.source),a.options.verifyAliasOrder&&!a.anchors.has(this.source))throw Error(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);if(a.implicitKey)return`${e} `}return e}}c.Alias=i},427853,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(125154),f=a.r(500094);class g extends e.NodeBase{constructor(a){super(d.SCALAR),this.value=a}toJSON(a,b){return b?.keep?this.value:f.toJS(this.value,a,b)}toString(){return String(this.value)}}g.BLOCK_FOLDED="BLOCK_FOLDED",g.BLOCK_LITERAL="BLOCK_LITERAL",g.PLAIN="PLAIN",g.QUOTE_DOUBLE="QUOTE_DOUBLE",g.QUOTE_SINGLE="QUOTE_SINGLE",c.Scalar=g,c.isScalarValue=a=>!a||"function"!=typeof a&&"object"!=typeof a},510882,(a,b,c)=>{"use strict";var d=a.r(421562),e=a.r(927267),f=a.r(427853);c.createNode=function(a,b,c){let g;if(e.isDocument(a)&&(a=a.contents),e.isNode(a))return a;if(e.isPair(a)){let b=c.schema[e.MAP].createNode?.(c.schema,null,c);return b.items.push(a),b}(a instanceof String||a instanceof Number||a instanceof Boolean||"u">typeof BigInt&&a instanceof BigInt)&&(a=a.valueOf());let{aliasDuplicateObjects:h,onAnchor:i,onTagObj:j,schema:k,sourceObjects:l}=c;if(h&&a&&"object"==typeof a){if(g=l.get(a))return g.anchor??(g.anchor=i(a)),new d.Alias(g.anchor);g={anchor:null,node:null},l.set(a,g)}b?.startsWith("!!")&&(b="tag:yaml.org,2002:"+b.slice(2));let m=function(a,b,c){if(b){let a=c.filter(a=>a.tag===b),d=a.find(a=>!a.format)??a[0];if(!d)throw Error(`Tag ${b} not found`);return d}return c.find(b=>b.identify?.(a)&&!b.format)}(a,b,k.tags);if(!m){if(a&&"function"==typeof a.toJSON&&(a=a.toJSON()),!a||"object"!=typeof a){let b=new f.Scalar(a);return g&&(g.node=b),b}m=a instanceof Map?k[e.MAP]:Symbol.iterator in Object(a)?k[e.SEQ]:k[e.MAP]}j&&(j(m),delete c.onTagObj);let n=m?.createNode?m.createNode(c.schema,a,c):"function"==typeof m?.nodeClass?.from?m.nodeClass.from(c.schema,a,c):new f.Scalar(a);return b?n.tag=b:m.default||(n.tag=m.tag),g&&(g.node=n),n}},735249,(a,b,c)=>{"use strict";var d=a.r(510882),e=a.r(927267),f=a.r(125154);function g(a,b,c){let e=c;for(let a=b.length-1;a>=0;--a){let c=b[a];if("number"==typeof c&&Number.isInteger(c)&&c>=0){let a=[];a[c]=e,e=a}else e=new Map([[c,e]])}return d.createNode(e,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:a,sourceObjects:new Map})}let h=a=>null==a||"object"==typeof a&&!!a[Symbol.iterator]().next().done;class i extends f.NodeBase{constructor(a,b){super(a),Object.defineProperty(this,"schema",{value:b,configurable:!0,enumerable:!1,writable:!0})}clone(a){let b=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return a&&(b.schema=a),b.items=b.items.map(b=>e.isNode(b)||e.isPair(b)?b.clone(a):b),this.range&&(b.range=this.range.slice()),b}addIn(a,b){if(h(a))this.add(b);else{let[c,...d]=a,f=this.get(c,!0);if(e.isCollection(f))f.addIn(d,b);else if(void 0===f&&this.schema)this.set(c,g(this.schema,d,b));else throw Error(`Expected YAML collection at ${c}. Remaining path: ${d}`)}}deleteIn(a){let[b,...c]=a;if(0===c.length)return this.delete(b);let d=this.get(b,!0);if(e.isCollection(d))return d.deleteIn(c);throw Error(`Expected YAML collection at ${b}. Remaining path: ${c}`)}getIn(a,b){let[c,...d]=a,f=this.get(c,!0);return 0===d.length?!b&&e.isScalar(f)?f.value:f:e.isCollection(f)?f.getIn(d,b):void 0}hasAllNullValues(a){return this.items.every(b=>{if(!e.isPair(b))return!1;let c=b.value;return null==c||a&&e.isScalar(c)&&null==c.value&&!c.commentBefore&&!c.comment&&!c.tag})}hasIn(a){let[b,...c]=a;if(0===c.length)return this.has(b);let d=this.get(b,!0);return!!e.isCollection(d)&&d.hasIn(c)}setIn(a,b){let[c,...d]=a;if(0===d.length)this.set(c,b);else{let a=this.get(c,!0);if(e.isCollection(a))a.setIn(d,b);else if(void 0===a&&this.schema)this.set(c,g(this.schema,d,b));else throw Error(`Expected YAML collection at ${c}. Remaining path: ${d}`)}}}c.Collection=i,c.collectionFromPath=g,c.isEmptyPath=h},253074,(a,b,c)=>{"use strict";function d(a,b){return/^\n+$/.test(a)?a.substring(1):b?a.replace(/^(?! *$)/gm,b):a}c.indentComment=d,c.lineComment=(a,b,c)=>a.endsWith("\n")?d(c,b):c.includes("\n")?"\n"+d(c,b):(a.endsWith(" ")?"":" ")+c,c.stringifyComment=a=>a.replace(/^(?!$)(?: $)?/gm,"#")},859245,(a,b,c)=>{"use strict";let d="block",e="quoted";function f(a,b,c){let d=b,e=b+1,f=a[e];for(;" "===f||" "===f;)if(b<e+c)f=a[++b];else{do f=a[++b];while(f&&"\n"!==f)d=b,f=a[e=b+1]}return d}c.FOLD_BLOCK=d,c.FOLD_FLOW="flow",c.FOLD_QUOTED=e,c.foldFlowLines=function(a,b,c="flow",{indentAtStart:g,lineWidth:h=80,minContentWidth:i=20,onFold:j,onOverflow:k}={}){let l,m,n;if(!h||h<0)return a;h<i&&(i=0);let o=Math.max(1+i,1+h-b.length);if(a.length<=o)return a;let p=[],q={},r=h-b.length;"number"==typeof g&&(g>h-Math.max(2,i)?p.push(0):r=h-g);let s=!1,t=-1,u=-1,v=-1;for(c===d&&-1!==(t=f(a,t,b.length))&&(r=t+o);n=a[t+=1];){if(c===e&&"\\"===n){switch(u=t,a[t+1]){case"x":t+=3;break;case"u":t+=5;break;case"U":t+=9;break;default:t+=1}v=t}if("\n"===n)c===d&&(t=f(a,t,b.length)),r=t+b.length+o,l=void 0;else{if(" "===n&&m&&" "!==m&&"\n"!==m&&" "!==m){let b=a[t+1];b&&" "!==b&&"\n"!==b&&" "!==b&&(l=t)}if(t>=r)if(l)p.push(l),r=l+o,l=void 0;else if(c===e){for(;" "===m||" "===m;)m=n,n=a[t+=1],s=!0;let b=t>v+1?t-2:u-1;if(q[b])return a;p.push(b),q[b]=!0,r=b+o,l=void 0}else s=!0}m=n}if(s&&k&&k(),0===p.length)return a;j&&j();let w=a.slice(0,p[0]);for(let d=0;d<p.length;++d){let f=p[d],g=p[d+1]||a.length;0===f?w=`
|
|
215
|
+
`)},flush(a){a.enqueue("data: [DONE]\n\n")}})}},dC={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"},dD=b0.record(b0.string(),b1.optional());function dE(){return Object.create(null)}function dF(a){return a.type.startsWith("tool-")}function dG(a){return dF(a)||"dynamic-tool"===a.type}function dH(a){return a.type.split("-").slice(1).join("-")}function dI(a){var b;return(b=a.pipeThrough(new TransformStream))[Symbol.asyncIterator]=function(){let a=this.getReader(),b=!1;async function c(c){var d;if(!b){b=!0;try{c&&await (null==(d=a.cancel)?void 0:d.call(a))}finally{try{a.releaseLock()}catch(a){}}}}return{async next(){let d;if(b)return{done:!0,value:void 0};try{d=await a.read()}catch(a){throw await c(!1),a}let{done:e,value:f}=d;return e?(await c(!0),{done:!0,value:void 0}):{done:!1,value:f}},return:async()=>(await c(!0),{done:!0,value:void 0}),async throw(a){throw await c(!0),a}}},b}async function dJ({stream:a,onError:b,abortSignal:c}){let d=a.getReader(),e=()=>{d.cancel().catch(()=>{})};(null==c?void 0:c.aborted)?e():null==c||c.addEventListener("abort",e,{once:!0});try{for(;;){let{done:a}=await d.read();if(a)break}}catch(a){null==b||b(a)}finally{null==c||c.removeEventListener("abort",e),d.releaseLock()}}function dK(){let a,b;return{promise:new Promise((c,d)=>{a=c,b=d}),resolve:a,reject:b}}(0,R.lazySchema)(()=>(0,R.zodSchema)(b0.union([b0.looseObject({type:b0.literal("text-start"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("text-delta"),id:b0.string(),delta:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("text-end"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("error"),errorText:b0.string()}),b0.looseObject({type:b0.literal("tool-input-start"),toolCallId:b0.string(),toolName:b0.string(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-input-delta"),toolCallId:b0.string(),inputTextDelta:b0.string()}),b0.looseObject({type:b0.literal("tool-input-available"),toolCallId:b0.string(),toolName:b0.string(),input:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-input-error"),toolCallId:b0.string(),toolName:b0.string(),input:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),errorText:b0.string(),title:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-approval-request"),approvalId:b0.string(),toolCallId:b0.string(),approvalDescriptor:b0.unknown().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}),b0.looseObject({type:b0.literal("tool-approval-response"),approvalId:b0.string(),approved:b0.boolean(),reason:b0.string().optional(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("tool-output-available"),toolCallId:b0.string(),output:b0.unknown(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional(),preliminary:b0.boolean().optional()}),b0.looseObject({type:b0.literal("tool-output-error"),toolCallId:b0.string(),errorText:b0.string(),providerExecuted:b0.boolean().optional(),providerMetadata:b2.optional(),toolMetadata:dD.optional(),dynamic:b0.boolean().optional()}),b0.looseObject({type:b0.literal("tool-output-denied"),toolCallId:b0.string()}),b0.looseObject({type:b0.literal("reasoning-start"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-delta"),id:b0.string(),delta:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-end"),id:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("custom"),kind:b0.string().transform(a=>a),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("source-url"),sourceId:b0.string(),url:b0.string(),title:b0.string().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("source-document"),sourceId:b0.string(),mediaType:b0.string(),title:b0.string(),filename:b0.string().optional(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("file"),url:b0.string(),mediaType:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.literal("reasoning-file"),url:b0.string(),mediaType:b0.string(),providerMetadata:b2.optional()}),b0.looseObject({type:b0.custom(a=>"string"==typeof a&&a.startsWith("data-"),{message:'Type must start with "data-"'}),id:b0.string().optional(),data:b0.unknown(),transient:b0.boolean().optional()}),b0.looseObject({type:b0.literal("start-step")}),b0.looseObject({type:b0.literal("finish-step")}),b0.looseObject({type:b0.literal("reset-step")}),b0.looseObject({type:b0.literal("start"),messageId:b0.string().optional(),messageMetadata:b0.unknown().optional()}),b0.looseObject({type:b0.literal("finish"),finishReason:b0.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:b0.unknown().optional()}),b0.looseObject({type:b0.literal("abort"),reason:b0.string().optional()}),b0.looseObject({type:b0.literal("message-metadata"),messageMetadata:b0.unknown()})])));var dL=Symbol("streamRetryAttemptBoundary");function dM(a){return"object"==typeof a&&null!=a&&dL in a}function dN(a){return"object"==typeof a&&null!=a?a:void 0}function dO(a){return"string"==typeof a?a:void 0}function dP(a){return"string"==typeof a||"number"==typeof a?a:void 0}function dQ(a){return"boolean"==typeof a?a:void 0}function dR(a){let b="string"==typeof a&&/^\d{3}$/.test(a)?Number(a):a;return"number"==typeof b&&Number.isInteger(b)&&b>=400&&b<=599?b:void 0}var dS=(0,R.createIdGenerator)({prefix:"aitxt",size:24}),dT=(0,R.createIdGenerator)({prefix:"call",size:24});async function dU({model:a,tools:b,toolOrder:c,output:d,toolChoice:e,prompt:f,system:g,instructions:h,messages:i,allowSystemInMessages:j,download:k,abortSignal:l,headers:m,includeRawChunks:n,providerOptions:o,repairToolCall:p,refineToolInput:q,executeLanguageModelCallInTelemetryContext:r=async({execute:a})=>await a(),callId:s,toolsContext:t,experimental_sandbox:u,_internal:{generateId:v=dS,generateCallId:w=dT,now:x=cv}={},onStart:y,onLanguageModelCallStart:z,onLanguageModelCallEnd:A,...B}){let C=bC(a),D=null!=s?s:w(),E=await cn({instructions:h,system:g,prompt:f,messages:i,allowSystemInMessages:j}),F=await bM({prompt:{instructions:E.instructions,messages:E.messages},supportedUrls:await C.supportedUrls,download:k,provider:C.provider.split(".")[0]}),G=await bX({tools:b,toolOrder:c,toolsContext:t,experimental_sandbox:u}),H=bW({toolChoice:e});await cw({event:{promptMessages:F},callbacks:y});let I={callId:D,...{provider:C.provider,modelId:C.modelId,instructions:E.instructions,messages:E.messages,tools:G,...B}};await cw({event:I,callbacks:z});let J=x(),{stream:K,response:L,request:M}=await r({...I,execute:async()=>await C.doStream({...B,tools:G,toolChoice:H,responseFormat:await (null==d?void 0:d.responseFormat),prompt:F,providerOptions:o,abortSignal:l,headers:m,includeRawChunks:n})});return{stream:dI(K.pipeThrough(function({tools:a,instructions:b,messages:c,repairToolCall:d,refineToolInput:e,callId:f,provider:g,modelId:h,generateId:i,now:j,callStartTimestampMs:k,onLanguageModelCallEnd:l}){let m,n,o=new Map,p=[],q=new Map,r=new Map,s=i(),t=h,u=[];return new TransformStream({async transform(h,i){var v,w,x,y,z;if("text-delta"===(y=h).type&&y.delta.length>0||"reasoning-delta"===y.type&&y.delta.length>0||"tool-input-delta"===y.type&&y.delta.length>0||"file"===y.type||"reasoning-file"===y.type||"tool-call"===y.type){let a=j();null==m?m=a-k:null!=n&&u.push(a-n),n=a}switch(h.type){case"error":i.enqueue({type:"error",error:function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;if((r=a)instanceof Error||"[object Error]"===Object.prototype.toString.call(r)||S.AISDKError.isInstance(a)||aY.isInstance(a))return a;let t=dN(a);if(null==t)return a;let u=(0,R.isProviderStreamError)(a),v=u?t:null!=(d=null!=(c=dN(null==(b=dN(t.response))?void 0:b.error))?c:dN(t.error))?d:t;if("string"!=typeof v.message)return a;let w=null!=(e=dO(v.type))?e:dO(t.type),x=null!=(f=dP(v.code))?f:dP(t.code),y=null!=(m=null!=(l=null!=(k=null!=(j=null!=(i=null!=(h=null!=(g=dR(v.statusCode))?g:dR(t.statusCode))?h:dR(v.status_code))?i:dR(t.status_code))?j:dR(v.status))?k:dR(t.status))?l:dR(v.code))?m:dR(t.code),z=function(a){switch(a.trim().toLowerCase()){case"overloaded":case"overloaded error":case"model overloaded":case"service unavailable":return{statusCode:503,isRetryable:!0};case"internal server error":return{statusCode:500,isRetryable:!0};default:return}}(v.message),A=null!=y?y:null==z?void 0:z.statusCode,B=null!=(p=null!=(o=null!=(n=dQ(v.isRetryable))?n:dQ(t.isRetryable))?o:dQ(v.is_retryable))?p:dQ(t.is_retryable);return new aY({message:v.message,type:w,code:x,statusCode:A,isRetryable:null!=(q=null!=B?B:null==z?void 0:z.isRetryable)?q:null!=(s=A)&&(408===s||409===s||429===s||s>=500),data:u?a.data:a})}(h.error)});break;case"text-start":dW({content:p,partIndexes:q,id:h.id,type:"text",providerMetadata:h.providerMetadata}),i.enqueue(h);break;case"text-delta":dW({content:p,partIndexes:q,id:h.id,type:"text",textDelta:h.delta,providerMetadata:h.providerMetadata}),i.enqueue({type:"text-delta",id:h.id,text:h.delta,providerMetadata:h.providerMetadata});break;case"text-end":dW({content:p,partIndexes:q,id:h.id,type:"text",providerMetadata:h.providerMetadata}),q.delete(h.id),i.enqueue(h);break;case"reasoning-start":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",providerMetadata:h.providerMetadata}),i.enqueue(h);break;case"reasoning-delta":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",textDelta:h.delta,providerMetadata:h.providerMetadata}),i.enqueue({type:"reasoning-delta",id:h.id,text:h.delta,providerMetadata:h.providerMetadata});break;case"reasoning-end":dW({content:p,partIndexes:r,id:h.id,type:"reasoning",providerMetadata:h.providerMetadata}),r.delete(h.id),i.enqueue(h);break;case"file":case"reasoning-file":{let a=new cC({data:"data"===h.data.type?h.data.data:h.data.url.toString(),mediaType:h.mediaType});p.push({type:h.type,file:a,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{}}),i.enqueue({type:h.type,file:a,providerMetadata:h.providerMetadata});break}case"finish":{let a,b,c=cp(h.usage),d=j()-k,e={responseTimeMs:d,effectiveOutputTokensPerSecond:cz({tokens:c.outputTokens,durationMs:d}),outputTokensPerSecond:null==m?void 0:cz({tokens:c.outputTokens,durationMs:d-m}),inputTokensPerSecond:null==m?void 0:cz({tokens:c.inputTokens,durationMs:m}),effectiveTotalTokensPerSecond:cz({tokens:de(c.inputTokens,c.outputTokens),durationMs:d}),timeToFirstOutputMs:m,timeBetweenOutputChunksMs:u.length>0?(a=[...z=u].sort((a,b)=>a-b),b=z.reduce((a,b)=>a+b,0),{min:a[0],p10:dV(a,.1),median:dV(a,.5),avg:b/z.length,p90:dV(a,.9),max:a[a.length-1]}):void 0};await cw({event:{callId:f,provider:g,modelId:t,finishReason:h.finishReason.unified,usage:c,content:p,responseId:s,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},performance:e},callbacks:l}),i.enqueue({type:"model-call-end",finishReason:h.finishReason.unified,rawFinishReason:h.finishReason.raw,usage:c,providerMetadata:h.providerMetadata,performance:e});break}case"tool-call":try{let f=await cT({toolCall:h,tools:a,repairToolCall:d,refineToolInput:e,instructions:b,messages:c});o.set(f.toolCallId,f),i.enqueue(f),p.push(f),f.invalid&&(f.providerExecuted||i.enqueue({type:"tool-error",toolCallId:f.toolCallId,toolName:f.toolName,input:f.input,error:(0,S.getErrorMessage)(f.error),dynamic:!0,title:f.title,...null!=f.toolMetadata?{toolMetadata:f.toolMetadata}:{}}))}catch(a){i.enqueue({type:"error",error:a})}break;case"tool-approval-request":{let a=o.get(h.toolCallId);if(null==a){i.enqueue({type:"error",error:new an({toolCallId:h.toolCallId,approvalId:h.approvalId})});break}let b={type:"tool-approval-request",approvalId:h.approvalId,toolCall:a};i.enqueue(b),p.push(b);break}case"tool-result":{let a=h.toolName,b=o.get(h.toolCallId),c=h.isError?{type:"tool-error",toolCallId:h.toolCallId,toolName:a,input:null==b?void 0:b.input,providerExecuted:!0,error:h.result,dynamic:h.dynamic,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},...(null==b?void 0:b.toolMetadata)!=null?{toolMetadata:b.toolMetadata}:{}}:{type:"tool-result",toolCallId:h.toolCallId,toolName:a,input:null==b?void 0:b.input,output:h.result,providerExecuted:!0,dynamic:h.dynamic,...null!=h.providerMetadata?{providerMetadata:h.providerMetadata}:{},...(null==b?void 0:b.toolMetadata)!=null?{toolMetadata:b.toolMetadata}:{}};i.enqueue(c),p.push(c);break}case"tool-input-start":{let b=ct(a,h.toolName);i.enqueue({...h,dynamic:null!=(v=h.dynamic)?v:(null==b?void 0:b.type)==="dynamic",title:null==b?void 0:b.title,...(null==b?void 0:b.metadata)!=null?{toolMetadata:b.metadata}:{}});break}case"stream-start":i.enqueue({type:"model-call-start",warnings:h.warnings});break;case"response-metadata":s=null!=(w=h.id)?w:s,t=null!=(x=h.modelId)?x:t,i.enqueue({type:"model-call-response-metadata",id:h.id,timestamp:h.timestamp,modelId:h.modelId});break;default:("custom"===h.type||"source"===h.type)&&p.push(h),i.enqueue(h)}}})}({tools:b,instructions:E.instructions,messages:E.messages,repairToolCall:p,refineToolInput:q,callId:D,provider:C.provider,modelId:C.modelId,generateId:v,now:x,callStartTimestampMs:J,onLanguageModelCallEnd:A}))),response:L,request:M}}function dV(a,b){return a[Math.ceil(b*a.length)-1]}function dW({content:a,partIndexes:b,id:c,type:d,textDelta:e,providerMetadata:f}){let g=b.get(c);null==g&&(g=a.push({type:d,text:"",...null!=f?{providerMetadata:f}:{}})-1,b.set(c,g));let h=a[g];null!=e&&(h.text+=e),null!=f&&(h.providerMetadata=f)}var dX=(0,R.createIdGenerator)({prefix:"aitxt",size:24}),dY=(0,R.createIdGenerator)({prefix:"call",size:24}),dZ={file:!0,custom:!1,source:!1,"text-start":!1,"text-end":!1,"text-delta":!0,"reasoning-start":!1,"reasoning-end":!1,"reasoning-delta":!0,"reasoning-file":!0,"tool-input-start":!1,"tool-input-end":!1,"tool-input-delta":!0,"tool-approval-request":!1,"tool-approval-response":!1,"tool-call":!0,"tool-result":!1,"tool-error":!1,"tool-execution-end":!1,"model-call-start":!1,"model-call-response-metadata":!1,"model-call-end":!1,error:!1,raw:!1};function d$(a){if(!dZ[a.type])return!1;switch(a.type){case"text-delta":case"reasoning-delta":return a.text.length>0;case"tool-input-delta":return a.delta.length>0;case"file":case"reasoning-file":case"tool-call":return!0;default:return!1}}var d_=Symbol("streamRetryBoundary");async function d0(a){try{await a}catch(a){}}var d1=class{constructor({model:a,telemetry:b,headers:c,settings:d,maxRetries:e,streamRetries:f,abortSignal:g,stepTimeoutMs:h,stepAbortController:i,firstChunkTimeoutMs:j,firstChunkAbortController:k,chunkTimeoutMs:l,chunkAbortController:m,instructions:n,system:o,prompt:p,messages:q,allowSystemInMessages:r,experimental_sandbox:s,tools:t,toolChoice:u,transforms:v,activeTools:w,toolOrder:x,repairToolCall:y,refineToolInput:z,stopConditions:A,output:B,toolApproval:C,experimental_toolCallers:D,experimental_toolApprovalSecret:E,providerOptions:F,prepareStep:G,now:H,generateId:I,generateCallId:J,timeout:K,onChunk:L,onError:M,canRetryStreamViaOnError:N,onEnd:O,onAbort:P,onStepFinish:Q,onStart:T,onStepStart:U,onLanguageModelCallStart:V,onLanguageModelCallEnd:W,onToolExecutionStart:X,onToolExecutionEnd:Y,runtimeContext:Z,toolsContext:$,download:_,include:aa}){let ab,ac,ad,ae,af,ag;this._totalUsage=new R.DelayedPromise,this._finishReason=new R.DelayedPromise,this._rawFinishReason=new R.DelayedPromise,this._steps=new R.DelayedPromise,this._initialResponseMessages=new R.DelayedPromise,this.outputSpecification=B,this.tools=t;const ah=dh({tools:t,toolCallers:D}),ai=db({telemetry:b,includeRuntimeContext:null==b?void 0:b.includeRuntimeContext,includeToolsContext:null==b?void 0:b.includeToolsContext});let aj=[],ak={},al=[],am=[];const an=[],ao=[];let ap=[];const aq=()=>{let a=new Set;return b=>{if(!a.has(b))return a.add(b),b;let c=I(),d=c,e=0;for(;a.has(d);)d=`${c}-${++e}`;return a.add(d),d}},ar=aq(),as=aq(),at=new Map;let au=dE(),av=dE();const aw=new Set,ax=new TransformStream({async transform(b,c){var d,e,f,g,h;if(d_ in b){let a=b[d_];aj=[],av=dE(),au=dE(),ak=a.request,al=null!=(d=a.request.messages)?d:[],am=a.warnings;return}let{part:i}=b;c.enqueue(b);let j="error"===i.type&&aw.has(i.error);if(j||await cw({event:{chunk:i},callbacks:L}),"error"===i.type){let a=co(i.error);aD.isInstance(a)&&(ad=a),j?aw.delete(i.error):await cw({event:{error:a},callbacks:async a=>{await M(a)}})}if(("custom"===i.type||"source"===i.type||"tool-call"===i.type||"tool-approval-request"===i.type||"tool-approval-response"===i.type||"tool-error"===i.type)&&aj.push(i),"text-start"===i.type&&(au[i.id]={type:"text",text:"",providerMetadata:i.providerMetadata},aj.push(au[i.id])),"text-delta"===i.type){let a=au[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`text part ${i.id} not found`},partialOutput:void 0});a.text+=i.text,a.providerMetadata=null!=(e=i.providerMetadata)?e:a.providerMetadata}if("text-end"===i.type){let a=au[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`text part ${i.id} not found`},partialOutput:void 0});a.providerMetadata=null!=(f=i.providerMetadata)?f:a.providerMetadata,delete au[i.id]}if("reasoning-start"===i.type&&(av[i.id]={type:"reasoning",text:"",providerMetadata:i.providerMetadata},aj.push(av[i.id])),"reasoning-delta"===i.type){let a=av[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`reasoning part ${i.id} not found`},partialOutput:void 0});a.text+=i.text,a.providerMetadata=null!=(g=i.providerMetadata)?g:a.providerMetadata}if("reasoning-end"===i.type){let a=av[i.id];if(null==a)return void c.enqueue({part:{type:"error",error:`reasoning part ${i.id} not found`},partialOutput:void 0});a.providerMetadata=null!=(h=i.providerMetadata)?h:a.providerMetadata,delete av[i.id]}if(("file"===i.type||"reasoning-file"===i.type)&&aj.push({type:i.type,file:i.file,...null!=i.providerMetadata?{providerMetadata:i.providerMetadata}:{}}),"tool-result"!==i.type||i.preliminary||aj.push(i),"start-step"===i.type&&(aj=[],av=dE(),au=dE(),ak=i.request,am=i.warnings),"finish-step"===i.type){let b=await df({content:aj,tools:t}),c=new c6({callId:aH,stepNumber:an.length,provider:a.provider,modelId:a.modelId,runtimeContext:Z,toolsContext:$,content:aj,finishReason:i.finishReason,rawFinishReason:i.rawFinishReason,usage:i.usage,performance:i.performance,warnings:am,request:{...ak,messages:aa.requestMessages?bE(al):void 0},response:{...i.response,messages:bE(b)},providerMetadata:i.providerMetadata});await cw({event:c,callbacks:[Q,ai.onStepEnd]}),bp({warnings:am,provider:a.provider,model:a.modelId}),an.push(c),ac=[...ap,...b],ab.resolve()}"finish"===i.type&&(ag=i.totalUsage,ae=i.finishReason,af=i.rawFinishReason)},async flush(a){try{if(0===an.length||null!=ad){let a=(null==g?void 0:g.aborted)?g.reason:null!=ad?ad:new aD({message:"No output generated. Check the stream for errors."});aG.rejectResultPromises(a);return}let a=null!=ae?ae:"other",b=null!=ag?ag:cq();aG._finishReason.resolve(a),aG._rawFinishReason.resolve(af),aG._totalUsage.resolve(b),aG._steps.resolve(an);let c=an[an.length-1],d=an.flatMap(a=>a.content),e=an.flatMap(a=>a.files),f=an.flatMap(a=>a.sources),h=an.flatMap(a=>a.toolCalls),i=an.flatMap(a=>a.staticToolCalls),j=an.flatMap(a=>a.dynamicToolCalls),k=an.flatMap(a=>a.toolResults),l=an.flatMap(a=>a.staticToolResults),m=an.flatMap(a=>a.dynamicToolResults),n=an.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]}),o=null==O?void 0:async a=>{let b=null==B?void 0:await aG.getOutputPromise().catch(()=>void 0);await O({...a,...null!=B?{output:b}:{}})},p={callId:aH,toolsContext:c.toolsContext,stepNumber:c.stepNumber,model:c.model,runtimeContext:c.runtimeContext,finishReason:c.finishReason,rawFinishReason:c.rawFinishReason,usage:b,totalUsage:b,content:d,text:c.text,reasoning:c.reasoning,reasoningText:c.reasoningText,files:e,sources:f,toolCalls:h,staticToolCalls:i,dynamicToolCalls:j,toolResults:k,staticToolResults:l,dynamicToolResults:m,responseMessages:[...ao,...an.flatMap(a=>a.response.messages)],warnings:n,request:c.request,response:c.response,providerMetadata:c.providerMetadata,steps:an,finalStep:c};await Promise.all([cw({event:p,callbacks:o}),cw({event:p,callbacks:ai.onEnd})])}catch(b){a.error(b)}}}),ay=function(){let a=[],b=null,c=!1,d=!1,e=dK(),f=()=>{d||(c=!0,e.resolve(),a.forEach(({reader:a,onCancel:b})=>{null==b||b(),a.cancel()}),a=[],null==b||b.close())},g=async()=>{var h;if(d)return;if(c&&0===a.length){null==b||b.close();return}if(0===a.length)return e=dK(),await e.promise,await g();let i=a[0];try{let{value:e,done:f}=await i.reader.read();if(d)return;f?(a.shift(),0===a.length&&c?null==b||b.close():await g()):null==b||b.enqueue(e)}catch(c){if(d)return;null==(h=i.onError)||h.call(i,c),null==b||b.error(c),a.shift(),f()}};return{stream:new ReadableStream({start(a){b=a},pull:g,async cancel(){for(let{reader:b,onCancel:f}of(d=!0,c=!0,e.resolve(),a))null==f||f(),await b.cancel();a=[]}}),addStream:(b,f)=>{var g;if(d){null==(g=null==f?void 0:f.onCancel)||g.call(f),b.cancel().catch(()=>{});return}if(c)throw Error("Cannot add inner stream: outer stream is closed");a.push({reader:b.getReader(),...f}),e.resolve()},close:()=>{d||(c=!0,e.resolve(),0===a.length&&(null==b||b.close()))},terminate:f}}();this.addStream=ay.addStream,this.closeStream=ay.close;const az=ay.stream.getReader();let aA=new ReadableStream({async start(a){a.enqueue({type:"start"})},async pull(a){async function b(){await cw({event:{callId:aH,steps:an,...(null==g?void 0:g.reason)!==void 0?{reason:g.reason}:{}},callbacks:[P,ai.onAbort]}),a.enqueue({type:"abort",...(null==g?void 0:g.reason)!==void 0?{reason:(0,S.getErrorMessage)(g.reason)}:{}}),a.close()}try{let{done:c,value:d}=await az.read();if(c)return void a.close();if(null==g?void 0:g.aborted)return void await b();a.enqueue(d)}catch(c){(0,R.isAbortError)(c)&&(null==g?void 0:g.aborted)?await b():a.error(c)}},cancel:a=>ay.stream.cancel(a)}),aB=!0;aA=function({stream:a,transforms:b,tools:c,stopStream:d}){let e,f,g=a.getReader(),h=!1;return new ReadableStream({async pull(a){null!=f||(f=(()=>{let a=new ReadableStream({async pull(a){let{done:b,value:c}=await g.read();if(b){h=!0,a.close();return}if(d_ in c){e=c,a.close();return}a.enqueue(c)},cancel:a=>g.cancel(a)},{highWaterMark:0});for(let e of b)a=a.pipeThrough(e({tools:c,stopStream:d}));return a.getReader()})());let{done:i,value:j}=await f.read();if(!i)return void a.enqueue(j);if(f=void 0,null!=e){a.enqueue(e),e=void 0;return}h&&a.close()},async cancel(a){await (null==f?void 0:f.cancel(a)),await g.cancel(a)}})}({stream:aA=aA.pipeThrough(new TransformStream({async transform(a,b){aB&&b.enqueue(a)}})),transforms:v,tools:t,stopStream(){ay.terminate(),aB=!1}}),this.baseStream=aA.pipeThrough(function(a){let b,c,d="",e="",f="";function g({controller:a,chunk:b}){a.enqueue(b)}function h({controller:a,partialOutput:d}){g({controller:a,chunk:{part:{type:"text-delta",id:b,text:e,providerMetadata:c},partialOutput:d}}),e=""}return new TransformStream({async transform(i,j){var k;if(d_ in i){b=void 0,d="",e="",c=void 0,f="",j.enqueue(i);return}if("finish-step"===i.type&&e.length>0&&h({controller:j}),"text-delta"!==i.type&&"text-start"!==i.type&&"text-end"!==i.type)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if(null==b)b=i.id;else if(i.id!==b)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if("text-start"===i.type)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});if("text-end"===i.type){e.length>0&&h({controller:j}),g({controller:j,chunk:{part:i,partialOutput:void 0}});return}if(d+=i.text,e+=i.text,c=null!=(k=i.providerMetadata)?k:c,0===i.text.length&&null!=i.providerMetadata)return void g({controller:j,chunk:{part:i,partialOutput:void 0}});let l=await a.parsePartialOutput({text:d});if(void 0!==l){let a="string"==typeof l.partial?l.partial:JSON.stringify(l.partial);a!==f&&(h({controller:j,partialOutput:l.partial}),f=a)}}})}(null!=B?B:cM())).pipeThrough(ax);const{maxRetries:aC}=cx({maxRetries:e,abortSignal:g}),{maxRetries:aE}=cx({maxRetries:f,abortSignal:g,parameter:"streamRetries",defaultMaxRetries:0}),aF=bV(d),aG=this,aH=J();(async()=>{var b;let d=await cn({instructions:n,system:o,prompt:p,messages:q,allowSystemInMessages:r}),e={callId:aH,operationId:"ai.streamText",provider:a.provider,modelId:a.modelId,instructions:d.instructions,messages:d.messages,tools:t,toolChoice:u,activeTools:w,toolOrder:x,maxOutputTokens:aF.maxOutputTokens,temperature:aF.temperature,topP:aF.topP,topK:aF.topK,presencePenalty:aF.presencePenalty,frequencyPenalty:aF.frequencyPenalty,stopSequences:aF.stopSequences,seed:aF.seed,reasoning:aF.reasoning,maxRetries:aC,timeout:K,headers:c,providerOptions:F,output:B,runtimeContext:Z,toolsContext:$},f=null==(b=ai.startTracingChannelContext)?void 0:b.call(ai,{type:"streamText",event:e,completion:aG._totalUsage.promise.then(()=>void 0)}),v=a=>{var b;return null!=(b=null==f?void 0:f.run(a))?b:a()},D=null==ai.runInTracingChannelSpan?void 0:a=>v(()=>ai.runInTracingChannelSpan(a));await cw({event:e,callbacks:[T,ai.onStart]});let J=d.messages,O=d.instructions,{approvedToolApprovals:P,deniedToolApprovals:Q}=cA({messages:J});if(Q.length>0||P.length>0){let a,{approvedToolApprovals:b,deniedToolApprovals:c,invalidToolApprovals:d}=await dt({approvedToolApprovals:P.filter(a=>!a.toolCall.providerExecuted),tools:t,toolApproval:C,messages:J,toolsContext:$,runtimeContext:Z,toolApprovalSecret:E}),e=[...Q.filter(a=>!a.toolCall.providerExecuted),...c],f=e.filter(a=>null==a.existingToolResult),h=Q.filter(a=>a.toolCall.providerExecuted),i=new ReadableStream({start(b){a=b}});aG.addStream(i);try{for(let b of[...e,...h])null==a||a.enqueue({type:"tool-output-denied",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName});for(let b of d)null==a||a.enqueue({type:"tool-error",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,input:b.toolCall.input,error:(0,S.getErrorMessage)(b.error),title:b.toolCall.title,...!0===b.toolCall.dynamic?{dynamic:!0}:{},...null!=b.toolCall.toolMetadata?{toolMetadata:b.toolCall.toolMetadata}:{}});let c=[];if(await Promise.all(b.map(async b=>{let d=await cF({toolCall:b.toolCall,tools:t,callId:aH,messages:J,abortSignal:g,timeout:K,experimental_sandbox:s,toolsContext:$,onToolExecutionStart:(0,R.filterNullable)(X,ai.onToolExecutionStart),onToolExecutionEnd:(0,R.filterNullable)(Y,ai.onToolExecutionEnd),executeToolInTelemetryContext:ai.executeTool,runInTracingChannelSpan:D,onPreliminaryToolResult:b=>{null==a||a.enqueue(b)}});null!=d&&(null==a||a.enqueue(d.output),c.push(d.output))})),c.length>0||f.length>0||d.length>0){let a=[];for(let b of c)a.push({type:"tool-result",toolCallId:b.toolCallId,toolName:b.toolName,output:await bT({toolCallId:b.toolCallId,input:b.input,tool:ct(t,b.toolName),output:"tool-result"===b.type?b.output:b.error,errorMode:"tool-error"===b.type?"text":"none"})});for(let b of d)a.push({type:"tool-result",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,output:await bT({toolCallId:b.toolCall.toolCallId,input:b.toolCall.input,tool:ct(t,b.toolCall.toolName),output:b.error,errorMode:"text"})});for(let b of f)a.push({type:"tool-result",toolCallId:b.toolCall.toolCallId,toolName:b.toolCall.toolName,output:{type:"execution-denied",reason:b.approvalResponse.reason}});ao.push({role:"tool",content:a})}}finally{null==a||a.close()}}async function ad({currentStep:b,usage:e}){var f,n,o,p,q,D,P,Q,S,T,ae,af;let ag,aj,ak=cy({abortController:i,label:"Step",timeoutMs:h});function am(){null!=ag&&(clearTimeout(ag),ag=void 0)}function aq(){null!=aj&&clearTimeout(aj),aj=cy({abortController:m,label:"Chunk",timeoutMs:l})}function au(){null==g||g.removeEventListener("abort",au),null!=ak&&clearTimeout(ak),am(),null!=aj&&(clearTimeout(aj),aj=void 0)}null==g||g.addEventListener("abort",au,{once:!0});try{let h,i,l;ab=new R.DelayedPromise;let m=null==(f=ai.startTracingChannelContext)?void 0:f.call(ai,{type:"step",event:{callId:aH,stepNumber:b},completion:ab.promise}),aj=a=>{var b;return null!=(b=null==m?void 0:m.run(a))?b:a()},ak=an.flatMap(a=>a.response.messages),av=[...ao,...ak],ax=null!=ac?ac:[...J,...ao],ay=await (null==G?void 0:G({model:a,steps:an,stepNumber:an.length,instructions:O,initialInstructions:d.instructions,messages:ax,initialMessages:J,responseMessages:av,toolsContext:$,runtimeContext:Z,experimental_sandbox:s})),az=null!=(n=null==ay?void 0:ay.experimental_sandbox)?n:s;Z=null!=(o=null==ay?void 0:ay.runtimeContext)?o:Z,$=null!=(p=null==ay?void 0:ay.toolsContext)?p:$;let aA=bC(null!=(q=null==ay?void 0:ay.model)?q:a),aB=cG({tools:t,activeTools:null!=(D=null==ay?void 0:ay.activeTools)?D:w}),{executionTools:aI,modelTools:aJ}=di({tools:aB,toolCallers:ah}),aK=null!=(P=null==ay?void 0:ay.toolOrder)?P:x,aL=await bX({tools:aJ,toolOrder:aK,toolsContext:$,experimental_sandbox:az}),aM=bW({toolChoice:null!=(Q=null==ay?void 0:ay.toolChoice)?Q:u}),aN=null!=(S=null==ay?void 0:ay.messages)?S:ax;ap=aN;let aO=null!=(ae=null!=(T=null==ay?void 0:ay.instructions)?T:null==ay?void 0:ay.system)?ae:O;O=aO;let aP=bH(F,null==ay?void 0:ay.providerOptions),aQ=cX({callSettings:aF,stepSettings:ay}),aR=H(),{retry:aS}=cx({maxRetries:aC,abortSignal:g}),aT=!1,aU=()=>aj(()=>aS(async()=>{var b,d;return dU({model:null!=(b=null==ay?void 0:ay.model)?b:a,tools:aJ,toolOrder:aK,toolChoice:null!=(d=null==ay?void 0:ay.toolChoice)?d:u,instructions:aO,messages:aN,allowSystemInMessages:r,repairToolCall:y,refineToolInput:z,abortSignal:g,headers:c,includeRawChunks:aa.rawChunks,providerOptions:aP,download:_,output:B,callId:aH,executeLanguageModelCallInTelemetryContext:ai.executeLanguageModelCall,toolsContext:$,experimental_sandbox:az,onLanguageModelCallStart:(0,R.filterNullable)(V,ai.onLanguageModelCallStart),onLanguageModelCallEnd:(0,R.filterNullable)(W,ai.onLanguageModelCallEnd),onStart:async({promptMessages:a})=>{var b,c;aT||(aT=!0,await cw({event:{callId:aH,provider:aA.provider,modelId:aA.modelId,stepNumber:an.length,instructions:aO,messages:aN,tools:t,toolChoice:null!=(b=null==ay?void 0:ay.toolChoice)?b:u,activeTools:null!=(c=null==ay?void 0:ay.activeTools)?c:w,toolOrder:aK,steps:[...an],providerOptions:aP,runtimeContext:Z,toolsContext:$,output:B,promptMessages:a,stepTools:aL,stepToolChoice:aM},callbacks:[U,ai.onStepStart]}))},_internal:{now:H},...aQ})})),aV=await aU(),aW=aV.request,aX=aV.response,aY=aV.stream.getReader(),aZ=0,a$=0,a_=[],a0=new WeakSet,a1=new Set,a2=new Set,a3=!1,a4=aE>0||N,a5=new ReadableStream({async pull(a){let b=b=>{switch(b.type){case"text-start":a1.add(b.id);break;case"text-end":a1.delete(b.id);break;case"reasoning-start":a2.add(b.id);break;case"reasoning-end":a2.delete(b.id)}a.enqueue(b)},c=()=>{for(let a of a_)b(a);a_=[]},d=()=>{for(let b of a1)a.enqueue({type:"text-end",id:b});for(let b of(a1.clear(),a2))a.enqueue({type:"reasoning-end",id:b});a2.clear()};for(;;){let e,f,{done:g,value:h}=await aY.read();if(a3&&(a.enqueue(function({warnings:a}){return{[dL]:!0,warnings:a}}({warnings:g||"model-call-start"!==h.type?[]:h.warnings})),a3=!1),g){c(),a.close();return}let i="tool-input-start"===h.type||"tool-input-delta"===h.type||"tool-input-end"===h.type||"tool-call"===h.type||"tool-approval-request"===h.type||"tool-approval-response"===h.type||"tool-result"===h.type||"tool-error"===h.type;if("model-call-end"===h.type){c(),b(h);return}if(a4&&"error"!==h.type&&(i||a_.length>0)){d$(h)&&(am(),aq(),a0.add(h)),a_.push(h);continue}if("error"!==h.type)return void b(h);await cw({event:{chunk:h},callbacks:L});let j=co(h.error);try{e=await M({error:j})}catch(a){}let k=N&&"object"==typeof e&&null!=e&&"retry"in e&&!0===e.retry,l=aZ<aE,m=!l&&k&&a$<1;if(!l&&!m){c(),aw.add(h.error),a.enqueue(h);return}l?aZ++:a$++,await aY.cancel(j),a_=[],d();try{f=await aU()}catch(b){a.enqueue({type:"error",error:b}),a.close();return}aW=f.request,aX=f.response,aY=f.stream.getReader(),a3=!0}},cancel:a=>aY.cancel(a)});null!=g&&g.aborted||(ag=cy({abortController:k,label:"First chunk",timeoutMs:j}));let a6=function({stream:a,tools:b,stepInputMessages:c,abortSignal:d,runtimeContext:e}){if(null==b)return a;let f=dE();return a.pipeThrough(new TransformStream({async transform(a,g){if(g.enqueue(a),!dM(a))switch(a.type){case"tool-input-start":{f[a.id]=a.toolName;let g=ct(b,a.toolName);(null==g?void 0:g.onInputStart)!=null&&await g.onInputStart({toolCallId:a.id,messages:c,abortSignal:d,context:e});break}case"tool-input-delta":{let g=ct(b,f[a.id]);(null==g?void 0:g.onInputDelta)!=null&&await g.onInputDelta({inputTextDelta:a.delta,toolCallId:a.id,messages:c,abortSignal:d,context:e});break}case"tool-call":{let g=ct(b,f[a.toolCallId]);delete f[a.toolCallId],(null==g?void 0:g.onInputAvailable)!=null&&await g.onInputAvailable({input:a.input,toolCallId:a.toolCallId,messages:c,abortSignal:d,context:e})}}}}))}({stream:a5,tools:aI,stepInputMessages:aN,abortSignal:g,runtimeContext:Z}),a7=null==ai.runInTracingChannelSpan?void 0:a=>aj(()=>ai.runInTracingChannelSpan(a)),a8=function({stream:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,toolApproval:i,runtimeContext:j,toolApprovalSecret:k,generateId:l,onToolExecutionStart:m,onToolExecutionEnd:n,executeToolInTelemetryContext:o,runInTracingChannelSpan:p}){let q=[];return a.pipeThrough(new TransformStream({async transform(a,r){if(r.enqueue(a),dM(a)){q.length=0;return}switch(a.type){case"tool-call":{if(a.invalid)return;let c=ct(b,a.toolName);if(null==c)return;let e=await cZ({tools:b,toolCall:a,toolApproval:i,messages:d,toolsContext:h,runtimeContext:j});if("not-applicable"===e.type){null!=c.execute&&!0!==a.providerExecuted&&q.push(a);return}let f=l(),g=await ds({secret:k,approvalId:f,toolCallId:a.toolCallId,toolName:a.toolName,input:a.input});switch(e.type){case"user-approval":return void r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,...null!=e.reason?{reason:e.reason}:{},...null!=g?{signature:g}:{}});case"denied":r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,isAutomatic:!0,...null!=g?{signature:g}:{}}),r.enqueue({type:"tool-approval-response",approvalId:f,approved:!1,toolCall:a,reason:e.reason,providerExecuted:a.providerExecuted});return;case"approved":r.enqueue({type:"tool-approval-request",approvalId:f,toolCall:a,isAutomatic:!0,...null!=g?{signature:g}:{}}),r.enqueue({type:"tool-approval-response",approvalId:f,approved:!0,toolCall:a,reason:e.reason,providerExecuted:a.providerExecuted})}null!=c.execute&&!0!==a.providerExecuted&&q.push(a);return}case"model-call-end":if(!cH(a.finishReason))return;await Promise.all(q.map(async a=>{try{let i=await cF({toolCall:a,tools:b,callId:c,messages:d,abortSignal:e,timeout:f,experimental_sandbox:g,toolsContext:h,onToolExecutionStart:m,onToolExecutionEnd:n,executeToolInTelemetryContext:o,runInTracingChannelSpan:p,onPreliminaryToolResult:a=>{r.enqueue(a)}});null!=i&&(r.enqueue({type:"tool-execution-end",toolCallId:i.output.toolCallId,toolExecutionMs:i.toolExecutionMs}),r.enqueue(i.output))}catch(a){r.enqueue({type:"error",error:a})}}));return}}}))}({stream:a6,tools:aI,callId:aH,messages:aN,abortSignal:g,timeout:K,experimental_sandbox:az,toolsContext:$,toolApproval:C,runtimeContext:Z,toolApprovalSecret:E,generateId:I,onToolExecutionStart:(0,R.filterNullable)(X,ai.onToolExecutionStart),onToolExecutionEnd:(0,R.filterNullable)(Y,ai.onToolExecutionEnd),executeToolInTelemetryContext:ai.executeTool,runInTracingChannelSpan:a7}),a9=()=>({...aW,body:aa.requestBody?null==aW?void 0:aW.body:void 0,messages:aa.requestMessages?bE(aN):void 0});al=null!=(af=a9().messages)?af:[];let ba=[],bb=[],bc=[],bd="other",be=!1,bf=!1,bg=cq(),bh=!0,bi=()=>({responseTimeMs:0,effectiveOutputTokensPerSecond:0,outputTokensPerSecond:void 0,inputTokensPerSecond:void 0,effectiveTotalTokensPerSecond:0,timeToFirstOutputMs:void 0,timeBetweenOutputChunksMs:void 0}),bj=bi(),bk={},bl=()=>({id:I(),timestamp:new Date,modelId:a.modelId}),bm=bl(),bn=new Map,bo=new Map,bp=(a,b)=>{a.enqueue(b)};aG.addStream(a8.pipeThrough(new TransformStream({async transform(a,b){var c,d,e,f,g,j,k;if(dM(a)){h=a.warnings,bd="other",l=void 0,be=!1,bf=!1,bg=cq(),i=void 0,bj=bi(),bm=bl(),bn.clear(),bo.clear(),b.enqueue({[d_]:{request:a9(),warnings:h}});return}if("model-call-start"===a.type){h=a.warnings;return}bh&&(bh=!1,bp(b,{type:"start-step",request:a9(),warnings:null!=h?h:[]}));let m=a.type;if(d$(a)){let b=a0.has(a);bf||b||am(),bf=!0,b||aq()}switch(m){case"file":case"custom":case"source":case"reasoning-file":case"tool-input-start":case"tool-input-end":case"tool-input-delta":case"tool-approval-request":bp(b,a);break;case"text-start":{let c=ar(a.id);bn.set(a.id,c),bp(b,{...a,id:c});break}case"text-delta":(a.text.length>0||null!=a.providerMetadata)&&bp(b,{...a,id:null!=(c=bn.get(a.id))?c:a.id});break;case"text-end":bp(b,{...a,id:null!=(d=bn.get(a.id))?d:a.id}),bn.delete(a.id);break;case"reasoning-start":{let c=as(a.id);bo.set(a.id,c),bp(b,{...a,id:c});break}case"reasoning-delta":bp(b,{...a,id:null!=(e=bo.get(a.id))?e:a.id});break;case"reasoning-end":bp(b,{...a,id:null!=(f=bo.get(a.id))?f:a.id}),bo.delete(a.id);break;case"tool-call":bp(b,a),ba.push(a);break;case"tool-approval-response":bp(b,a),bc.push(a);break;case"tool-result":bp(b,a),a.preliminary||bb.push(a);break;case"tool-error":bp(b,a),bb.push(a);break;case"tool-execution-end":bk[a.toolCallId]=a.toolExecutionMs;break;case"model-call-response-metadata":bm={id:null!=(g=a.id)?g:bm.id,timestamp:null!=(j=a.timestamp)?j:bm.timestamp,modelId:null!=(k=a.modelId)?k:bm.modelId};break;case"model-call-end":be=!0,bg=a.usage,bd=a.finishReason,l=a.rawFinishReason,i=a.providerMetadata,bj=a.performance;break;case"error":be=!0,bp(b,a),bd="error";break;case"raw":aa.rawChunks&&bp(b,a);break;default:throw Error(`Unknown chunk type: ${m}`)}},async flush(a){if(!be&&!bf){bp(a,{type:"error",error:new aD({message:"No output generated. The model stream ended without a finish chunk."})}),au(),aG.closeStream();return}let c=H()-aR,d={type:"finish-step",finishReason:bd,rawFinishReason:l,usage:bg,performance:{stepTimeMs:c,toolExecutionMs:bk,...bj},providerMetadata:i,response:{...bm,headers:null==aX?void 0:aX.headers}};bp(a,d);let f=cr(e,bg);await ab.promise;let g=ba.filter(a=>!0!==a.providerExecuted),h=bb.filter(a=>!0!==a.providerExecuted),j=bc.filter(a=>!1===a.approved);for(let a of ba){if(!0!==a.providerExecuted)continue;let b=ct(aI,a.toolName);(null==b?void 0:b.type)==="provider"&&b.supportsDeferredResults&&(bb.some(b=>("tool-result"===b.type||"tool-error"===b.type)&&b.toolCallId===a.toolCallId)||at.set(a.toolCallId,{toolName:a.toolName}))}for(let a of bb)("tool-result"===a.type||"tool-error"===a.type)&&at.delete(a.toolCallId);if(au(),g.length===h.length+j.length&&(g.length>0||at.size>0)&&!await dd({stopConditions:A,steps:an}))try{await v(()=>ad({currentStep:b+1,usage:f}))}catch(b){bp(a,{type:"error",error:b}),aG.closeStream()}else bp(a,{type:"finish",finishReason:bd,rawFinishReason:l,totalUsage:f}),aG.closeStream()}})),{onError:au,onCancel:au})}catch(a){throw au(),a}}aG._initialResponseMessages.resolve(ao),await v(()=>ad({currentStep:0,usage:cq()}))})().catch(async a=>{var b;await (null==(b=ai.onError)?void 0:b.call(ai,{callId:aH,error:a})),aG._initialResponseMessages.reject(a),d0(aG._initialResponseMessages.promise),aG.addStream(new ReadableStream({start(b){b.enqueue({type:"error",error:a}),b.close()}})),aG.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(a=>a.at(-1))}get content(){return this.steps.then(a=>a.flatMap(a=>a.content))}get warnings(){return this.steps.then(a=>a.flatMap(a=>{var b;return null!=(b=a.warnings)?b:[]}))}get providerMetadata(){return this.finalStep.then(a=>a.providerMetadata)}get text(){return this.finalStep.then(a=>a.text)}get reasoningText(){return this.finalStep.then(a=>a.reasoningText)}get reasoning(){return this.finalStep.then(a=>cY(a.reasoning))}get sources(){return this.steps.then(a=>a.flatMap(a=>a.sources))}get files(){return this.steps.then(a=>a.flatMap(a=>a.files))}get toolCalls(){return this.steps.then(a=>a.flatMap(a=>a.toolCalls))}get staticToolCalls(){return this.steps.then(a=>a.flatMap(a=>a.staticToolCalls))}get dynamicToolCalls(){return this.steps.then(a=>a.flatMap(a=>a.dynamicToolCalls))}get toolResults(){return this.steps.then(a=>a.flatMap(a=>a.toolResults))}get staticToolResults(){return this.steps.then(a=>a.flatMap(a=>a.staticToolResults))}get dynamicToolResults(){return this.steps.then(a=>a.flatMap(a=>a.dynamicToolResults))}get usage(){return this.totalUsage}get request(){return this.finalStep.then(a=>a.request)}get response(){return this.finalStep.then(a=>a.response)}get responseMessages(){return Promise.all([this._initialResponseMessages.promise,this.steps]).then(([a,b])=>[...a,...b.flatMap(a=>a.response.messages)])}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}get rawFinishReason(){return this.consumeStream(),this._rawFinishReason.promise}teeStream(){let[a,b]=this.baseStream.tee();return this.baseStream=b,a}get textStream(){return dI(function({stream:a}){return a.pipeThrough(new TransformStream({transform(a,b){"text-delta"===a.type&&b.enqueue(a.text)}}))}({stream:this.stream}))}get stream(){return dI(this.teeStream().pipeThrough(new TransformStream({transform({part:a},b){b.enqueue(a)}})))}get fullStream(){return this.stream}rejectResultPromises(a){this.rejectResultPromise({delayedPromise:this._finishReason,error:a}),this.rejectResultPromise({delayedPromise:this._rawFinishReason,error:a}),this.rejectResultPromise({delayedPromise:this._totalUsage,error:a}),this.rejectResultPromise({delayedPromise:this._steps,error:a}),this.rejectResultPromise({delayedPromise:this._initialResponseMessages,error:a})}rejectResultPromise({delayedPromise:a,error:b}){a.isPending()&&(a.reject(b),d0(a.promise))}async consumeStream(a){var b;try{await dJ({stream:this.stream,onError:b=>{var c;this.rejectResultPromises(b),null==(c=null==a?void 0:a.onError)||c.call(a,b)}})}catch(c){this.rejectResultPromises(c),null==(b=null==a?void 0:a.onError)||b.call(a,c)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return dI(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:a},b){null!=a&&b.enqueue(a)}})))}get elementStream(){var a,b,c;let d=null==(a=this.outputSpecification)?void 0:a.createElementStreamTransform();if(null==d)throw new S.UnsupportedFunctionalityError({functionality:`element streams in ${null!=(c=null==(b=this.outputSpecification)?void 0:b.name)?c:"text"} mode`});return dI(this.teeStream().pipeThrough(d))}getOutputPromise(){return null==this.outputPromise&&(this.outputPromise=this.finalStep.then(a=>{var b;return(null!=(b=this.outputSpecification)?b:cM()).parseCompleteOutput({text:a.text},{response:a.response,usage:a.usage,finishReason:a.finishReason})})),this.outputPromise}get output(){return this.getOutputPromise()}toUIMessageStream({originalMessages:a,generateMessageId:b,onEnd:c,onFinish:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendStart:h,sendFinish:i,onError:j}={}){return dI(function({stream:a,tools:b,sendReasoning:c=!0,sendSources:d=!1,sendStart:e=!0,sendFinish:f=!0,onError:g=()=>"An error occurred.",messageMetadata:h,originalMessages:i,generateMessageId:j,onEnd:k,onFinish:l}){let m={status:"unknown"},n=!1,o=a=>{n||"completed"===m.status||"aborted"===m.status||"unknown"===a.status||"unknown"!==m.status&&"failed"===a.status||(m=a)},p=a=>{n=!0,m={status:"failed",error:a}},q=null!=j?function({originalMessages:a,responseMessageId:b}){if(null==a)return;let c=a[a.length-1];return(null==c?void 0:c.role)==="assistant"?c.id:"function"==typeof b?b():b}({originalMessages:i,responseMessageId:j}):void 0,r=a.getReader(),s=!1,t=!1,u=()=>{s||(r.releaseLock(),s=!0)};return function({messageId:a,originalMessages:b=[],onStepEnd:c,onStepFinish:d,onEnd:e,onFinish:f,onError:g,stream:h,getOutcome:i}){let j,k=null==b?void 0:b[b.length-1];(null==k?void 0:k.role)!=="assistant"?k=void 0:a=k.id;let l=!1,m=!1,n=a=>{m=!0,j=a},o=h.pipeThrough(new TransformStream({transform(b,c){try{let d=b;"start"===b.type&&null==b.messageId&&null!=a&&(d={...b,messageId:a}),"abort"===b.type&&(l=!0),c.enqueue(d)}catch(a){throw n(a),a}}})),p=null!=c?c:d,q=null!=e?e:f;if(null==q&&null==p)return o;let r=function({lastMessage:a,messageId:b}){return{message:(null==a?void 0:a.role)==="assistant"?a:{id:b,metadata:void 0,role:"assistant",parts:[]},activeTextParts:dE(),activeReasoningParts:dE(),partialToolCalls:dE()}}({lastMessage:k?structuredClone(k):void 0,messageId:null!=a?a:""}),s=!1,t=async()=>{var a;if(s||!q)return;s=!0;let c=r.message.id===(null==k?void 0:k.id),d=null!=(a=null==i?void 0:i())?a:{status:"unknown"},e=m?{status:"failed",error:j}:"unknown"===d.status&&l?{status:"aborted"}:d;await q({isAborted:l||"aborted"===e.status,isContinuation:c,outcome:e,responseMessage:r.message,messages:[...c?b.slice(0,-1):b,r.message],finishReason:r.finishReason})},u=async()=>{if(!p)return;let a=r.message.id===(null==k?void 0:k.id);try{await p({isContinuation:a,responseMessage:structuredClone(r.message),messages:[...a?b.slice(0,-1):b,structuredClone(r.message)]})}catch(a){g(a)}};return(function({stream:a,messageMetadataSchema:b,dataPartSchemas:c,runUpdateMessageJob:d,onError:e,onToolCall:f,onData:g}){return a.pipeThrough(new TransformStream({async transform(a,h){await d(async({state:d,write:i})=>{var j,k,l,m;function n(){let a=d.message.parts,b=a.length-1;for(;b>=0&&"step-start"!==a[b].type;)b--;return a.slice(b+1)}function o(a){let b=n().filter(dG).find(b=>b.toolCallId===a);if(null==b){let c=d.message.parts;for(let d=c.length-1;d>=0;d--){let e=c[d];if(dG(e)&&e.toolCallId===a){b=e;break}}}if(null==b)throw new a9({chunkType:"tool-invocation",chunkId:a,message:`No tool invocation found for tool call ID "${a}".`});return b}function p(a,b){var c;let e=null!=b?b:n().find(b=>dF(b)&&b.toolCallId===a.toolCallId);if(null!=e){e.state=a.state,e.input=a.input,e.output=a.output,e.errorText=a.errorText,e.rawInput=a.rawInput,e.preliminary=a.preliminary,void 0!==a.title&&(e.title=a.title),void 0!==a.toolMetadata&&(e.toolMetadata=a.toolMetadata),e.providerExecuted=null!=(c=a.providerExecuted)?c:e.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?e.resultProviderMetadata=b:e.callProviderMetadata=b)}else d.message.parts.push({type:`tool-${a.toolName}`,toolCallId:a.toolCallId,state:a.state,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},input:a.input,output:a.output,rawInput:a.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,preliminary:a.preliminary,...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}function q(a,b){var c,e;let f=null!=b?b:n().find(b=>"dynamic-tool"===b.type&&b.toolCallId===a.toolCallId);if(null!=f){f.state=a.state,f.toolName=a.toolName,f.input=a.input,f.output=a.output,f.errorText=a.errorText,f.rawInput=null!=(c=a.rawInput)?c:f.rawInput,f.preliminary=a.preliminary,void 0!==a.title&&(f.title=a.title),void 0!==a.toolMetadata&&(f.toolMetadata=a.toolMetadata),f.providerExecuted=null!=(e=a.providerExecuted)?e:f.providerExecuted;let b=a.providerMetadata;null!=b&&("output-available"===a.state||"output-error"===a.state?f.resultProviderMetadata=b:f.callProviderMetadata=b)}else d.message.parts.push({type:"dynamic-tool",toolName:a.toolName,toolCallId:a.toolCallId,state:a.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,title:a.title,...void 0!==a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.providerMetadata&&("output-available"===a.state||"output-error"===a.state)?{resultProviderMetadata:a.providerMetadata}:{},...null!=a.providerMetadata&&"output-available"!==a.state&&"output-error"!==a.state?{callProviderMetadata:a.providerMetadata}:{}})}async function r(a){if(null!=a){let c=null!=d.message.metadata?bH(d.message.metadata,a):a;null!=b&&await (0,R.validateTypes)({value:c,schema:b,context:{field:"message.metadata",entityId:d.message.id}}),d.message.metadata=c}}switch(a.type){case"text-start":{let b={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeTextParts[a.id]=b,d.message.parts.push(b),i();break}case"text-delta":{let b=d.activeTextParts[a.id];if(null==b)throw new a9({chunkType:"text-delta",chunkId:a.id,message:`Received text-delta for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(j=a.providerMetadata)?j:b.providerMetadata,i();break}case"text-end":{let b=d.activeTextParts[a.id];if(null==b)throw new a9({chunkType:"text-end",chunkId:a.id,message:`Received text-end for missing text part with ID "${a.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});b.state="done",b.providerMetadata=null!=(k=a.providerMetadata)?k:b.providerMetadata,delete d.activeTextParts[a.id],i();break}case"custom":{let b={type:"custom",kind:a.kind,providerMetadata:a.providerMetadata};d.message.parts.push(b),i();break}case"reasoning-start":{let b={type:"reasoning",id:a.id,text:"",providerMetadata:a.providerMetadata,state:"streaming"};d.activeReasoningParts[a.id]=b,d.message.parts.push(b),i();break}case"reasoning-delta":{let b=d.activeReasoningParts[a.id];if(null==b)throw new a9({chunkType:"reasoning-delta",chunkId:a.id,message:`Received reasoning-delta for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});b.text+=a.delta,b.providerMetadata=null!=(l=a.providerMetadata)?l:b.providerMetadata,i();break}case"reasoning-end":{let b=d.activeReasoningParts[a.id];if(null==b)throw new a9({chunkType:"reasoning-end",chunkId:a.id,message:`Received reasoning-end for missing reasoning part with ID "${a.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});b.providerMetadata=null!=(m=a.providerMetadata)?m:b.providerMetadata,b.state="done",delete d.activeReasoningParts[a.id],i();break}case"file":case"reasoning-file":d.message.parts.push({type:a.type,mediaType:a.mediaType,url:a.url,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}}),i();break;case"source-url":d.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),i();break;case"source-document":d.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),i();break;case"tool-input-start":{let b=n().filter(dF);d.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:b.length,dynamic:a.dynamic,title:a.title,toolMetadata:a.toolMetadata},a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted,title:a.title,toolMetadata:a.toolMetadata,providerMetadata:a.providerMetadata}),i();break}case"tool-input-delta":{let b=d.partialToolCalls[a.toolCallId];if(null==b)throw new a9({chunkType:"tool-input-delta",chunkId:a.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${a.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});b.text+=a.inputTextDelta;let{value:c}=await cL(b.text);b.dynamic?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}):p({toolCallId:a.toolCallId,toolName:b.toolName,state:"input-streaming",input:c,title:b.title,toolMetadata:b.toolMetadata}),i();break}case"tool-input-available":a.dynamic?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:a.title,toolMetadata:a.toolMetadata}),i(),f&&!a.providerExecuted&&await f({toolCall:a});break;case"tool-input-error":{let b=n().filter(dG).find(b=>b.toolCallId===a.toolCallId);(null!=b?"dynamic-tool"===b.type:a.dynamic)?q({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}):p({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,toolMetadata:a.toolMetadata}),i();break}case"tool-approval-request":{let b=o(a.toolCallId);b.state="approval-requested",b.approval={id:a.approvalId,...null!=a.approvalDescriptor?{descriptor:a.approvalDescriptor}:{},...null!=a.reason?{requestReason:a.reason}:{},...!0===a.isAutomatic?{isAutomatic:!0}:{},...null!=a.signature?{signature:a.signature}:{}},i();break}case"tool-approval-response":{let b=function(a){let b=d.message.parts.filter(dG).find(b=>{var c;return(null==(c=b.approval)?void 0:c.id)===a});if(null==b)throw new a9({chunkType:"tool-approval-response",chunkId:a,message:`No tool invocation found for approval ID "${a}".`});return b}(a.approvalId),c=null==b.approval?{id:a.approvalId}:b.approval;b.state="approval-responded",b.approval={...c,id:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{}},null!=a.providerExecuted&&(b.providerExecuted=a.providerExecuted),null!=a.providerMetadata&&(b.callProviderMetadata=a.providerMetadata),i();break}case"tool-output-denied":o(a.toolCallId).state="output-denied",i();break;case"tool-output-available":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-available",input:b.input,output:a.output,preliminary:a.preliminary,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:dH(b),state:"output-available",input:b.input,output:a.output,providerExecuted:a.providerExecuted,preliminary:a.preliminary,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"tool-output-error":{let b=o(a.toolCallId);"dynamic-tool"===b.type?q({toolCallId:a.toolCallId,toolName:b.toolName,state:"output-error",input:b.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b):p({toolCallId:a.toolCallId,toolName:dH(b),state:"output-error",input:b.input,rawInput:b.rawInput,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata,title:b.title,toolMetadata:b.toolMetadata},b),i();break}case"start-step":d.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let a=n();d.activeTextParts=dE(),d.activeReasoningParts=dE(),d.partialToolCalls=dE(),a.length>0&&(d.message.parts.splice(d.message.parts.length-a.length,a.length),i());break}case"start":null!=a.messageId&&(d.message.id=a.messageId),await r(a.messageMetadata),(null!=a.messageId||null!=a.messageMetadata)&&i({updateStatus:!1});break;case"finish":null!=a.finishReason&&(d.finishReason=a.finishReason),await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"message-metadata":await r(a.messageMetadata),null!=a.messageMetadata&&i();break;case"error":null==e||e(Error(a.errorText));break;default:if(a.type.startsWith("data-")){if((null==c?void 0:c[a.type])!=null){let b=d.message.parts.findIndex(b=>"id"in b&&"data"in b&&b.id===a.id&&b.type===a.type),e=b>=0?b:d.message.parts.length;await (0,R.validateTypes)({value:a.data,schema:c[a.type],context:{field:`message.parts[${e}].data`,entityName:a.type,entityId:a.id}})}if(a.transient){null==g||g(a);break}let b=null!=a.id?d.message.parts.find(b=>a.type===b.type&&a.id===b.id):void 0;null!=b?b.data=a.data:d.message.parts.push(a),null==g||g(a),i()}}h.enqueue(a)})}}))})({stream:o,runUpdateMessageJob:async a=>{try{await a({state:r,write:()=>{}})}catch(a){throw n(a),a}},onError:g}).pipeThrough(new TransformStream({async transform(a,b){"finish-step"===a.type&&await u(),b.enqueue(a)},async cancel(){await t()},async flush(){await t()}}))}({stream:new ReadableStream({async pull(a){try{let{done:b,value:c}=await r.read();b?(u(),t||a.close()):a.enqueue(c)}catch(b){u(),t||(p(b),a.error(b))}},async cancel(a){if(t=!0,!s)try{await r.cancel(a)}finally{u()}}}).pipeThrough(new TransformStream({transform:async(a,i)=>{try{let j=null==h?void 0:h({part:a}),k=function(a,{tools:b,sendReasoning:c=!0,sendSources:d=!1,sendStart:e=!0,sendFinish:f=!0,onError:g=()=>"An error occurred.",messageMetadata:h,responseMessageId:i}={}){let j=a=>{let c=null==b?void 0:b[a.toolName];return null==c?a.dynamic:(null==c?void 0:c.type)==="dynamic"||void 0},k=a.type;switch(k){case"text-start":return{type:"text-start",id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:a.id,delta:a.text,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"text-end":return{type:"text-end",id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":if(!c)return;return{type:k,id:a.id,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"reasoning-delta":if(!c)return;return{type:"reasoning-delta",id:a.id,delta:a.text,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"file":case"reasoning-file":if("reasoning-file"===k&&!c)return;return{type:a.type,mediaType:a.file.mediaType,url:`data:${a.file.mediaType};base64,${a.file.base64}`,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"source":if(!d)return;if("url"===a.sourceType)return{type:"source-url",sourceId:a.id,url:a.url,title:a.title,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};if("document"===a.sourceType)return{type:"source-document",sourceId:a.id,mediaType:a.mediaType,title:a.title,filename:a.filename,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};return;case"custom":return{type:"custom",kind:a.kind,...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{}};case"tool-input-start":{let b=j(a);return{type:"tool-input-start",toolCallId:a.id,toolName:a.toolName,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},...null!=a.title?{title:a.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:a.id,inputTextDelta:a.delta};case"tool-call":{let b=j(a);if(a.invalid)return{type:"tool-input-error",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},errorText:g(a.error),...null!=a.title?{title:a.title}:{}};return{type:"tool-input-available",toolCallId:a.toolCallId,toolName:a.toolName,input:a.input,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{},...null!=a.title?{title:a.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:a.approvalId,toolCallId:a.toolCall.toolCallId,...null!=a.reason?{reason:a.reason}:{},...null!=a.isAutomatic?{isAutomatic:a.isAutomatic}:{},...null!=a.signature?{signature:a.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:a.approvalId,approved:a.approved,...null!=a.reason?{reason:a.reason}:{},...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{}};case"tool-result":{let b=j(a);return{type:"tool-output-available",toolCallId:a.toolCallId,output:void 0===a.output?null:a.output,...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=a.preliminary?{preliminary:a.preliminary}:{},...null!=b?{dynamic:b}:{}}}case"tool-error":{let b=j(a);return{type:"tool-output-error",toolCallId:a.toolCallId,errorText:a.providerExecuted?"string"==typeof a.error?a.error:JSON.stringify(a.error):g(a.error),...null!=a.providerExecuted?{providerExecuted:a.providerExecuted}:{},...null!=a.providerMetadata?{providerMetadata:a.providerMetadata}:{},...null!=a.toolMetadata?{toolMetadata:a.toolMetadata}:{},...null!=b?{dynamic:b}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:a.toolCallId};case"error":return{type:"error",errorText:g(a.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":if(!e)return;return{type:"start",...null!=h?{messageMetadata:h}:{},...null!=i?{messageId:i}:{}};case"finish":if(!f)return;return{type:"finish",finishReason:a.finishReason,...null!=h?{messageMetadata:h}:{}};case"abort":return a;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${k}`)}}(a,{tools:b,sendReasoning:c,sendSources:d,sendStart:e,sendFinish:f,onError:g,messageMetadata:j,responseMessageId:q});null!=k&&i.enqueue(k),null!=j&&"start"!==a.type&&"finish"!==a.type&&i.enqueue({type:"message-metadata",messageMetadata:j}),"finish"===a.type?o({status:"completed"}):"abort"===a.type?o({status:"aborted"}):"error"===a.type&&o({status:"failed",error:a.error})}catch(a){throw p(a),a}}})),messageId:null!=q?q:null==j?void 0:j(),originalMessages:i,onEnd:null!=k?k:l,onError:g,getOutcome:()=>m})}({stream:this.stream,tools:this.tools,originalMessages:a,generateMessageId:b,onEnd:null!=c?c:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendStart:h,sendFinish:i,onError:j}))}pipeUIMessageStreamToResponse(a,{originalMessages:b,generateMessageId:c,onEnd:d,onFinish:e,messageMetadata:f,sendReasoning:g,sendSources:h,sendFinish:i,sendStart:j,onError:k,...l}={}){return function({response:a,status:b,statusText:c,headers:d,stream:e,consumeSseStream:f}){let g=e.pipeThrough(new dB);if(f){let[a,b]=g.tee();g=a,f({stream:b})}return dA({response:a,status:b,statusText:c,headers:Object.fromEntries(dz(d,dC).entries()),stream:g.pipeThrough(new TextEncoderStream)})}({response:a,stream:this.toUIMessageStream({originalMessages:b,generateMessageId:c,onEnd:null!=d?d:e,messageMetadata:f,sendReasoning:g,sendSources:h,sendFinish:i,sendStart:j,onError:k}),...l})}pipeTextStreamToResponse(a,b){return function({response:a,status:b,statusText:c,headers:d,stream:e}){return dA({response:a,status:b,statusText:c,headers:Object.fromEntries(dz(d,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:e.pipeThrough(new TextEncoderStream)})}({response:a,stream:this.textStream,...b})}toUIMessageStreamResponse({originalMessages:a,generateMessageId:b,onEnd:c,onFinish:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendFinish:h,sendStart:i,onError:j,...k}={}){return function({status:a,statusText:b,headers:c,stream:d,consumeSseStream:e}){let f=d.pipeThrough(new dB);if(e){let[a,b]=f.tee();f=a,e({stream:b})}return new Response(f.pipeThrough(new TextEncoderStream),{status:a,statusText:b,headers:dz(c,dC)})}({stream:this.toUIMessageStream({originalMessages:a,generateMessageId:b,onEnd:null!=c?c:d,messageMetadata:e,sendReasoning:f,sendSources:g,sendFinish:h,sendStart:i,onError:j}),...k})}toTextStreamResponse(a){return function({status:a,statusText:b,headers:c,stream:d}){return new Response(d.pipeThrough(new TextEncoderStream),{status:null!=a?a:200,statusText:b,headers:dz(c,{"content-type":"text/plain; charset=utf-8"})})}({stream:this.textStream,...a})}},d2=class{constructor(a){this.version="agent-v1";const{onFinish:b,onEnd:c=b}=a;this.settings={...a,onEnd:c}}get id(){return this.settings.id}get tools(){return this.settings.tools}async prepareCall(a){var b,c,d,e;if(null!=this.settings.callOptionsSchema&&void 0!==a.options){let b=await (0,R.validateTypes)({value:a.options,schema:this.settings.callOptionsSchema,context:{field:"options"}});a={...a,options:b}}let{onStart:f,experimental_onStart:g,onStepStart:h,experimental_onStepStart:i,onToolExecutionStart:j,onToolExecutionEnd:k,onStepEnd:l,onStepFinish:m,onFinish:n,onEnd:o,...p}=this.settings,q={...p,stopWhen:null!=(b=this.settings.stopWhen)?b:dc(20),...a},{instructions:r,allowSystemInMessages:s,messages:t,prompt:u,runtimeContext:v,...w}=null!=(e=await (null==(d=(c=this.settings).prepareCall)?void 0:d.call(c,q)))?e:q,x={instructions:r,allowSystemInMessages:s,messages:t,prompt:u};return void 0===v?{...w,...x}:{...w,runtimeContext:v,...x}}agentHeaders(a){var b;return(0,R.withUserAgentSuffix)(null!=(b=a.headers)?b:{},"ai-sdk-agent/tool-loop")}async generate({abortSignal:a,timeout:b,experimental_sandbox:c,onStart:d,experimental_onStart:e,onStepStart:f,experimental_onStepStart:g,onToolExecutionStart:h,onToolExecutionEnd:i,onStepEnd:j,onStepFinish:k,onFinish:l,onEnd:m=l,...n}){var o,p,q;let r=await this.prepareCall({...n,experimental_sandbox:c}),s={abortSignal:a,timeout:null!=b?b:r.timeout,experimental_sandbox:c,onStart:c_(null!=(o=this.settings.onStart)?o:this.settings.experimental_onStart,null!=d?d:e),onStepStart:c_(null!=(p=this.settings.onStepStart)?p:this.settings.experimental_onStepStart,null!=f?f:g),onToolExecutionStart:c_(this.settings.onToolExecutionStart,h),onToolExecutionEnd:c_(this.settings.onToolExecutionEnd,i),onStepEnd:c_(null!=(q=this.settings.onStepEnd)?q:this.settings.onStepFinish,null!=j?j:k),onEnd:c_(this.settings.onEnd,m)};return await dw({...r,...s,headers:this.agentHeaders(r)})}async stream({abortSignal:a,timeout:b,experimental_sandbox:c,experimental_transform:d,onStart:e,experimental_onStart:f,onStepStart:g,experimental_onStepStart:h,onToolExecutionStart:i,onToolExecutionEnd:j,onStepEnd:k,onStepFinish:l,onFinish:m,onEnd:n=m,...o}){var p,q,r;let s=await this.prepareCall({...o,experimental_sandbox:c}),t={abortSignal:a,timeout:null!=b?b:s.timeout,experimental_sandbox:c,experimental_transform:d,onStart:c_(null!=(p=this.settings.onStart)?p:this.settings.experimental_onStart,null!=e?e:f),onStepStart:c_(null!=(q=this.settings.onStepStart)?q:this.settings.experimental_onStepStart,null!=g?g:h),onToolExecutionStart:c_(this.settings.onToolExecutionStart,i),onToolExecutionEnd:c_(this.settings.onToolExecutionEnd,j),onStepEnd:c_(null!=(r=this.settings.onStepEnd)?r:this.settings.onStepFinish,null!=k?k:l),onEnd:c_(this.settings.onEnd,n)};return await function({model:a,tools:b,toolChoice:c,instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h,maxRetries:i,streamRetries:j,abortSignal:k,timeout:l,headers:m,stopWhen:n=dc(1),experimental_sandbox:o,output:p,toolApproval:q,experimental_toolCallers:r,experimental_toolApprovalSecret:s,experimental_telemetry:t,telemetry:u=t,prepareStep:v,providerOptions:w,activeTools:x,toolOrder:y,experimental_repairToolCall:z,repairToolCall:A=z,experimental_refineToolInput:B,experimental_transform:C,experimental_download:D,includeRawChunks:E,onChunk:F,onError:G,onFinish:H,onEnd:I=H,onAbort:J,onStepEnd:K,onStepFinish:L,onStart:M,experimental_onStart:N,onStepStart:O,experimental_onStepStart:P,onLanguageModelCallStart:Q,experimental_onLanguageModelCallStart:S,onLanguageModelCallEnd:T,experimental_onLanguageModelCallEnd:U,onToolExecutionStart:V,onToolExecutionEnd:W,experimental_onToolCallStart:X,experimental_onToolCallFinish:Y,runtimeContext:Z={},toolsContext:$={},experimental_include:_,include:aa=_,_internal:{now:ab=cv,generateId:ac=dX,generateCallId:ad=dY}={},...ae}){var af,ag,ah,ai;let aj=bY(l),ak=bZ(l),al=b$(l),am=b_(l),an=null!=ak?new AbortController:void 0,ao=null!=al?new AbortController:void 0,ap=null!=am?new AbortController:void 0,aq=null!=G?G:({error:a})=>{console.error(a)};return new d1({model:bC(a),telemetry:u,headers:m,settings:ae,maxRetries:i,streamRetries:j,abortSignal:cu(k,aj,null==an?void 0:an.signal,null==ao?void 0:ao.signal,null==ap?void 0:ap.signal),stepTimeoutMs:ak,stepAbortController:an,firstChunkTimeoutMs:al,firstChunkAbortController:ao,chunkTimeoutMs:am,chunkAbortController:ap,instructions:d,system:e,prompt:f,messages:g,allowSystemInMessages:h,experimental_sandbox:o,tools:b,toolsContext:$,runtimeContext:Z,toolChoice:c,transforms:(0,R.asArray)(C),activeTools:x,toolOrder:y,repairToolCall:A,refineToolInput:B,stopConditions:(0,R.asArray)(n),output:p,toolApproval:q,experimental_toolCallers:r,experimental_toolApprovalSecret:s,providerOptions:w,prepareStep:v,timeout:l,onChunk:F,onError:aq,canRetryStreamViaOnError:void 0!==j&&null!=G,onEnd:I,onAbort:J,onStepFinish:null!=K?K:L,onStart:null!=M?M:N,onStepStart:null!=O?O:P,onLanguageModelCallStart:null!=Q?Q:S,onLanguageModelCallEnd:null!=T?T:U,onToolExecutionStart:null!=V?V:X,onToolExecutionEnd:null!=W?W:Y,now:ab,generateId:ac,generateCallId:ad,download:D,include:{requestBody:null!=(af=null==aa?void 0:aa.requestBody)&&af,requestMessages:null!=(ag=null==aa?void 0:aa.requestMessages)&&ag,rawChunks:null!=(ai=null!=(ah=null==aa?void 0:aa.rawChunks)?ah:E)&&ai}})}({...s,...t,headers:this.agentHeaders(s)})}},d3=b0.record(b0.string(),b1.optional()),d4=b0.record(b0.string(),b0.string());function d5(a){if(a instanceof Uint8Array)return a;if("string"==typeof a)try{return(0,R.convertBase64ToUint8Array)(a)}catch(b){throw new bd({message:"Invalid data content. Content string is not a base64-encoded media.",content:a,cause:b})}if(a instanceof ArrayBuffer)return new Uint8Array(a);throw new bd({content:a})}(0,R.lazySchema)(()=>(0,R.zodSchema)(b0.array(b0.object({id:b0.string(),role:b0.enum(["system","user","assistant"]),metadata:b0.unknown().optional(),parts:b0.array(b0.union([b0.object({type:b0.literal("text"),text:b0.string(),state:b0.enum(["streaming","done"]).optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("reasoning"),id:b0.string().optional(),text:b0.string(),state:b0.enum(["streaming","done"]).optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("custom"),kind:b0.string(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("source-url"),sourceId:b0.string(),url:b0.string(),title:b0.string().optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("source-document"),sourceId:b0.string(),mediaType:b0.string(),title:b0.string(),filename:b0.string().optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("file"),mediaType:b0.string(),filename:b0.string().optional(),url:b0.string(),providerReference:d4.optional(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("reasoning-file"),mediaType:b0.string(),url:b0.string(),providerMetadata:b2.optional()}),b0.object({type:b0.literal("step-start")}),b0.object({type:b0.string().startsWith("data-"),id:b0.string().optional(),data:b0.unknown()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-streaming"),input:b0.unknown().optional(),providerExecuted:b0.boolean().optional(),callProviderMetadata:b2.optional(),output:b0.never().optional(),errorText:b0.never().optional(),approval:b0.never().optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-available"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.never().optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-requested"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.never().optional(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.never().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-responded"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.boolean(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-available"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.unknown(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),preliminary:b0.boolean().optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-error"),input:b0.unknown().optional(),rawInput:b0.unknown().optional(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.string(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.literal("dynamic-tool"),toolName:b0.string(),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-denied"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!1),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-streaming"),providerExecuted:b0.boolean().optional(),callProviderMetadata:b2.optional(),input:b0.unknown().optional(),output:b0.never().optional(),errorText:b0.never().optional(),approval:b0.never().optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("input-available"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.never().optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-requested"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.never().optional(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.never().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("approval-responded"),input:b0.unknown(),providerExecuted:b0.boolean().optional(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.boolean(),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-available"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.unknown(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),preliminary:b0.boolean().optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-error"),providerExecuted:b0.boolean().optional(),input:b0.unknown().optional(),rawInput:b0.unknown().optional(),output:b0.never().optional(),errorText:b0.string(),callProviderMetadata:b2.optional(),resultProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!0),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()}).optional()}),b0.object({type:b0.string().startsWith("tool-"),toolCallId:b0.string(),title:b0.string().optional(),toolMetadata:d3.optional(),state:b0.literal("output-denied"),providerExecuted:b0.boolean().optional(),input:b0.unknown(),output:b0.never().optional(),errorText:b0.never().optional(),callProviderMetadata:b2.optional(),approval:b0.object({id:b0.string(),approved:b0.literal(!1),descriptor:b0.unknown().optional(),requestReason:b0.string().optional(),reason:b0.string().optional(),isAutomatic:b0.boolean().optional(),signature:b0.string().optional()})})]))}).superRefine((a,b)=>{"assistant"!==a.role&&0===a.parts.length&&b.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:a.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),(0,R.createIdGenerator)({prefix:"call",size:24}),(0,R.createIdGenerator)({prefix:"call",size:24}),new TextEncoder;var d6=["cost","gatewayCost","inferenceCost","inputInferenceCost","marketCost","outputInferenceCost","surchargeCost"];async function d7({model:a,prompt:b,n:c=1,maxImagesPerCall:d,size:e,aspectRatio:f,seed:g,providerOptions:h,maxRetries:i,abortSignal:j,headers:k}){var l,m,n;let o=function(a){if("string"==typeof a)return bD().imageModel(a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bt(a)}(a),p=(0,R.withUserAgentSuffix)(null!=k?k:{},`ai/${bF}`),{retry:q}=cx({maxRetries:i,abortSignal:j}),r=null!=(l=null!=d?d:await d9(o))?l:1,s=Math.ceil(c/r),t=Array.from({length:s},(a,b)=>{if(b<s-1)return r;let d=c%r;return 0===d?r:d}),u=await Promise.all(t.map(async a=>await q(()=>{var c;let{prompt:d,files:i,mask:k}="string"==typeof(c=b)?{prompt:c,files:void 0,mask:void 0}:{prompt:c.text,files:c.images.map(ea),mask:c.mask?ea(c.mask):void 0};return o.doGenerate({prompt:d,files:i,mask:k,n:a,abortSignal:j,headers:p,size:e,aspectRatio:f,seed:g,providerOptions:null!=h?h:{}})}))),v=[],w=[],x=[],y=[],z={},A={inputTokens:void 0,outputTokens:void 0,totalTokens:void 0};for(let a of u){let b=a.images.map((b,c)=>{var d;return new cB({data:b,mediaType:null!=(d=(0,R.detectMediaType)({data:b,topLevelType:"image"}))?d:"image/png",providerMetadata:function(a,b){var c;let d;if(null!=a){for(let[e,f]of Object.entries(a)){let a=null==(c=f.images)?void 0:c[b];(0,S.isJSONObject)(a)&&!Array.isArray(a)&&((null!=d?d:d={})[e]=a)}return d}}(a.providerMetadata,c)})});if(v.push(...b),w.push({images:b,providerMetadata:a.providerMetadata,response:a.response,warnings:a.warnings,usage:a.usage}),x.push(...a.warnings),null!=a.usage&&(m=A,n=a.usage,A={inputTokens:cs(m.inputTokens,n.inputTokens),outputTokens:cs(m.outputTokens,n.outputTokens),totalTokens:cs(m.totalTokens,n.totalTokens)}),a.providerMetadata)for(let[b,c]of Object.entries(a.providerMetadata))if("gateway"===b){let a=z[b];if(null!=a&&"object"==typeof a){let d=c;z[b]={...a,...c,...Object.fromEntries(d6.flatMap(b=>{let c=function(a,b){if("string"!=typeof a||"string"!=typeof b||!/^\d+(?:\.\d+)?$/.test(a)||!/^\d+(?:\.\d+)?$/.test(b))return;let[c,d=""]=a.split("."),[e,f=""]=b.split("."),g=Math.max(d.length,f.length),h=(BigInt(c+d.padEnd(g,"0"))+BigInt(e+f.padEnd(g,"0"))).toString().padStart(g+1,"0");return 0===g?h:`${h.slice(0,-g)}.${h.slice(-g)}`.replace(/\.?0+$/,"")}(a[b],d[b]);return null==c?[]:[[b,c]]}))}}else z[b]={...c};let d=z[b].images;Array.isArray(d)&&0===d.length&&delete z[b].images}else null!=z[b]||(z[b]={images:[]}),z[b].images.push(...c.images);y.push(a.response)}if(bp({warnings:x,provider:o.provider,model:o.modelId}),!v.length)throw new av({calls:w,responses:y});return new d8({images:v,calls:w,warnings:x,responses:y,providerMetadata:z,usage:A})}var d8=class{constructor(a){this.images=a.images,this.calls=a.calls,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=a.providerMetadata,this.usage=a.usage}get image(){return this.images[0]}};async function d9(a){return a.maxImagesPerCall instanceof Function?a.maxImagesPerCall({modelId:a.modelId}):a.maxImagesPerCall}function ea(a){if("string"==typeof a&&a.startsWith("http"))return{type:"url",url:a};if("string"==typeof a&&a.startsWith("data:")){let{mediaType:b,base64Content:c}=bI(a);if(null!=c){let a=(0,R.convertBase64ToUint8Array)(c);return{type:"file",data:a,mediaType:b||(0,R.detectMediaType)({data:a,topLevelType:"image"})||"image/png"}}}let b=d5(a);return{type:"file",data:b,mediaType:(0,R.detectMediaType)({data:b,topLevelType:"image"})||"image/png"}}function eb(a){return({url:b,abortSignal:c})=>bG({url:b,maxBytes:null==a?void 0:a.maxBytes,abortSignal:c})}(0,R.createIdGenerator)({prefix:"aiobj",size:24}),(0,R.createIdGenerator)({prefix:"aiobj",size:24});var ec=class extends cB{constructor({data:a,mediaType:b}){super({data:a,mediaType:b});let c="mp3";if(b){const a=b.split("/");2===a.length&&"audio/mpeg"!==b&&(c=a[1])}if(!c)throw Error("Audio format must be provided or determinable from media type");this.format=c}};async function ed({model:a,text:b,voice:c,outputFormat:d,instructions:e,speed:f,language:g,providerOptions:h={},maxRetries:i,abortSignal:j,headers:k}){var l;let m=function(a){var b,c;if("string"==typeof a)return null==(c=(b=bD()).speechModel)?void 0:c.call(b,a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bz(a)}(a);if(!m)throw Error("Model could not be resolved");let n=(0,R.withUserAgentSuffix)(null!=k?k:{},`ai/${bF}`),{retry:o}=cx({maxRetries:i,abortSignal:j}),p=await o(()=>m.doGenerate({text:b,voice:c,outputFormat:d,instructions:e,speed:f,language:g,abortSignal:j,headers:n,providerOptions:h}));if(!p.audio||0===p.audio.length)throw new aH({responses:[p.response]});return bp({warnings:p.warnings,provider:m.provider,model:m.modelId}),new ee({audio:new ec({data:p.audio,mediaType:null!=(l=(0,R.detectMediaType)({data:p.audio,topLevelType:"audio"}))?l:"audio/mp3"}),warnings:p.warnings,responses:[p.response],providerMetadata:p.providerMetadata})}var ee=class{constructor(a){var b;this.audio=a.audio,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=null!=(b=a.providerMetadata)?b:{}}},ef=eb();async function eg({model:a,prompt:b,n:c=1,maxVideosPerCall:d,aspectRatio:e,resolution:f,duration:g,fps:h,seed:i,frameImages:j,inputReferences:k,generateAudio:l,providerOptions:m,maxRetries:n,abortSignal:o,headers:p,download:q=ef,poll:r,webhook:s}){var t;let u=function(a){var b;if("string"==typeof a){let c=(null!=(b=globalThis.AI_SDK_DEFAULT_PROVIDER)?b:Q.gateway).videoModel;if(!c)throw Error('The default provider does not support video models. Please use a Experimental_VideoModelV4 object from a provider (e.g., vertex.video("model-id")).');return c(a)}if(!["v4","v3"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return"v4"===a.specificationVersion?a:new Proxy(a,{get:(a,b)=>"specificationVersion"===b?"v4":a[b]})}(a),v=(0,R.withUserAgentSuffix)(null!=p?p:{},`ai/${bF}`),{retry:w}=cx({maxRetries:n,abortSignal:o}),{prompt:x,resolvedImage:y,normalizedFrameImages:z,effectiveInputReferences:A,warnings:B}=function({promptArg:a,frameImages:b,inputReferences:c}){var d;let{prompt:e,image:f}="string"==typeof a?{prompt:a,image:void 0}:{prompt:a.text,image:null!=a.image?el(a.image):void 0},g=null==b?void 0:b.flatMap(a=>{let b=el(a.image);return null!=b?[{image:b,frameType:a.frameType}]:[]}),h=null==c?void 0:c.flatMap(a=>{let b=function(a){if(!("object"==typeof a&&null!=a&&!(a instanceof Uint8Array)&&!(a instanceof ArrayBuffer)&&"data"in a))return el(a,{restrictToImages:!1});let b=el(a.data,{restrictToImages:!1});return null==b?b:{...b,...null!=a.mediaType?{mediaType:a.mediaType}:{}}}(a);return null!=b?[b]:[]}),i=null!=g&&g.length>0?void 0:h,j=[];null!=g&&g.length>0&&null!=h&&h.length>0&&j.push({type:"other",message:"inputReferences were ignored because frameImages were provided; frameImages and inputReferences cannot be combined."});let k=null==(d=null==g?void 0:g.find(a=>"first_frame"===a.frameType))?void 0:d.image;return null!=f&&null!=k&&j.push({type:"other",message:"prompt.image was ignored because a first_frame frameImage was provided; the first_frame frameImage takes precedence as the start image."}),{prompt:e,resolvedImage:null!=k?k:f,normalizedFrameImages:g,effectiveInputReferences:i,warnings:j}}({promptArg:b,frameImages:j,inputReferences:k}),C=null!=(t=null!=d?d:await em(u))?t:1,D=null!=u.doStart&&null!=u.doStatus,E=D&&(null!=r||null!=s||null==u.doGenerate);if(null==u.doGenerate&&!D)throw Error(`Video model ${u.modelId} does not implement doGenerate or doStart/doStatus.`);null==r&&null==s||D||bp({warnings:[{type:"other",message:"poll/webhook options were provided but the model does not support doStart/doStatus. Falling back to doGenerate."}],provider:u.provider,model:u.modelId});let F=Array.from({length:Math.ceil(c/C)},(a,b)=>Math.min(c-b*C,C)),G=await Promise.all(F.map(async a=>{let b={prompt:x,n:a,aspectRatio:e,resolution:f,duration:g,fps:h,seed:i,image:y,frameImages:z,inputReferences:A,generateAudio:l,providerOptions:null!=m?m:{},headers:v,abortSignal:o};return E?eh({model:u,callOptions:b,poll:r,webhook:s,retry:w}):w(()=>u.doGenerate(b))})),H=[],I=[],J={};for(let a of G){for(let b of a.videos)switch(b.type){case"url":{let{data:a,mediaType:c}=await q({url:new URL(b.url),abortSignal:o}),d=a=>!!a&&"application/octet-stream"!==a,e=d(b.mediaType)&&b.mediaType||d(c)&&c||(0,R.detectMediaType)({data:a,topLevelType:"video"})||"video/mp4";H.push(new cB({data:a,mediaType:e}));break}case"base64":H.push(new cB({data:b.data,mediaType:b.mediaType||"video/mp4"}));break;case"binary":{let a=b.mediaType||(0,R.detectMediaType)({data:b.data,topLevelType:"video"})||"video/mp4";H.push(new cB({data:b.data,mediaType:a}))}}B.push(...a.warnings),I.push({timestamp:a.response.timestamp,modelId:a.response.modelId,headers:a.response.headers,providerMetadata:a.providerMetadata}),null!=a.providerMetadata&&ej(J,a.providerMetadata)}if(0===H.length)throw new aQ({responses:I});return B.length>0&&bp({warnings:B,provider:u.provider,model:u.modelId}),{video:H[0],videos:H,warnings:B,responses:I,providerMetadata:J}}async function eh({model:a,callOptions:b,poll:c,webhook:d,retry:e}){var f,g,h,i;let j,k,l=[];if(null!=d)if(null!=a.handleWebhookOption){let b=await a.handleWebhookOption({webhook:d});j=b.webhookUrl,k=b.received}else l.push({type:"unsupported",feature:"webhook",details:"This model does not support webhooks. Falling back to polling."});let m=Object.entries(null!=(f=b.headers)?f:{}).find(([a,b])=>"idempotency-key"===a.toLowerCase()&&void 0!==b),n={...b,headers:{...b.headers,...m?{}:{"idempotency-key":`aisdk_vid_${(0,R.generateId)()}`}},webhookUrl:j},o=await e(()=>a.doStart(n)),p=[...l,...o.warnings],q=null==o.providerMetadata?void 0:{...o.providerMetadata},r=null!=(g=null==c?void 0:c.intervalMs)?g:5e3,s=null!=(h=null==c?void 0:c.timeoutMs)?h:6e5,t=null!=(i=null==c?void 0:c.delay)?i:R.delay,u=Date.now();for(null!=k&&await ei({received:k,timeoutMs:s,abortSignal:b.abortSignal,delay:t});;){if(null==k){let a=Date.now()-u;if(a>=s||(await t(Math.min(r,s-a),{abortSignal:b.abortSignal}),Date.now()-u>=s))throw Error(`Video generation timed out after ${s}ms.`)}let c=await e(()=>a.doStatus({operation:o.operation,abortSignal:b.abortSignal,headers:b.headers}));if("error"===c.status)throw Error(c.error);if(null!=c.warnings&&p.push(...c.warnings),null!=c.providerMetadata&&(null!=q||(q={}),ej(q,c.providerMetadata)),"completed"===c.status)return{videos:c.videos,warnings:p,providerMetadata:q,response:c.response};if(null!=k)throw Error("Video generation did not complete after webhook notification.")}}async function ei({received:a,timeoutMs:b,abortSignal:c,delay:d}){let e="function"==typeof globalThis.AbortController?new globalThis.AbortController:void 0;try{await Promise.race([a,d(b,{abortSignal:null==e?c:cu(c,e.signal)}).then(()=>{throw Error(`Video generation timed out after ${b}ms.`)})])}finally{null==e||e.abort()}}function ej(a,b){for(let[c,d]of Object.entries(b)){let b=a[c];null!=b&&"object"==typeof b&&null!=d&&"object"==typeof d?(a[c]={...b,...d},"videos"in b&&Array.isArray(b.videos)&&"videos"in d&&Array.isArray(d.videos)&&(a[c].videos=[...b.videos,...d.videos])):a[c]=d}}function ek(a,b){let c=b?(0,R.detectMediaType)({data:a,topLevelType:"image"}):(0,R.detectMediaType)({data:a});return null!=c?c:"image/png"}function el(a,{restrictToImages:b=!0}={}){if("string"==typeof a){if(a.startsWith("http://")||a.startsWith("https://"))return{type:"url",url:a};if(a.startsWith("data:")){let{mediaType:c,base64Content:d}=bI(a),e=(0,R.convertBase64ToUint8Array)(null!=d?d:"");return{type:"file",mediaType:null!=c?c:ek(e,b),data:e}}let c=(0,R.convertBase64ToUint8Array)(a);return{type:"file",mediaType:ek(c,b),data:c}}if(a instanceof Uint8Array||a instanceof ArrayBuffer){let c=a instanceof Uint8Array?a:new Uint8Array(a);return{type:"file",mediaType:ek(c,b),data:c}}}async function em(a){return"function"==typeof a.maxVideosPerCall?await a.maxVideosPerCall({modelId:a.modelId}):a.maxVideosPerCall}Symbol.for("vercel.ai.error.AI_NoSuchProviderError");S.NoSuchModelError,(0,R.createIdGenerator)({prefix:"call",size:24});var en=eb();async function eo({model:a,audio:b,providerOptions:c={},maxRetries:d,abortSignal:e,headers:f,download:g=en}){let h=function(a){var b,c;if("string"==typeof a)return null==(c=(b=bD()).transcriptionModel)?void 0:c.call(b,a);if(!["v4","v3","v2"].includes(a.specificationVersion))throw new a5({version:a.specificationVersion,provider:a.provider,modelId:a.modelId});return bB(a)}(a);if(!h)throw Error("Model could not be resolved");let{retry:i}=cx({maxRetries:d,abortSignal:e}),j=(0,R.withUserAgentSuffix)(null!=f?f:{},`ai/${bF}`),k=b instanceof URL?(await g({url:b,abortSignal:e})).data:d5(b),l=await i(()=>{var a;return h.doGenerate({audio:k,abortSignal:e,headers:j,providerOptions:c,mediaType:null!=(a=(0,R.detectMediaType)({data:k,topLevelType:"audio"}))?a:"audio/wav"})});if(bp({warnings:l.warnings,provider:h.provider,model:h.modelId}),!l.text)throw new aL({responses:[l.response]});return new ep({text:l.text,segments:l.segments,language:l.language,durationInSeconds:l.durationInSeconds,warnings:l.warnings,responses:[l.response],providerMetadata:l.providerMetadata})}var ep=class{constructor(a){var b;this.text=a.text,this.segments=a.segments,this.language=a.language,this.durationInSeconds=a.durationInSeconds,this.warnings=a.warnings,this.responses=a.responses,this.providerMetadata=null!=(b=a.providerMetadata)?b:{}}};a.s(["NoOutputGeneratedError",0,aD,"RetryError",0,bm,"ToolLoopAgent",0,d2,"experimental_generateVideo",0,eg,"generateImage",0,d7,"generateSpeech",0,ed,"generateText",0,dw,"hasToolCall",0,function(...a){return({steps:b})=>{var c,d,e;return null!=(e=null==(d=null==(c=b[b.length-1])?void 0:c.toolCalls)?void 0:d.some(b=>a.includes(b.toolName)))&&e}},"pruneMessages",0,function({messages:a,reasoning:b="none",toolCalls:c=[],emptyMessages:d="remove"}){for(let d of(("all"===b||"before-last-message"===b)&&(a=a.map((c,d)=>"assistant"!==c.role||"string"==typeof c.content||"before-last-message"===b&&d===a.length-1?c:{...c,content:c.content.filter(a=>"reasoning"!==a.type)})),"none"===c?c=[]:"all"===c?c=[{type:"all"}]:"before-last-message"===c?c=[{type:"before-last-message"}]:"string"==typeof c&&(c=[{type:c}]),c)){let b="all"===d.type?void 0:"before-last-message"===d.type?1:Number(d.type.slice(12).slice(0,-9)),c=new Set,e=new Set;if(null!=b){for(let d of a.slice(-b))if(("assistant"===d.role||"tool"===d.role)&&"string"!=typeof d.content)for(let a of d.content)"tool-call"===a.type||"tool-result"===a.type?c.add(a.toolCallId):("tool-approval-request"===a.type||"tool-approval-response"===a.type)&&e.add(a.approvalId)}let f=new Map;for(let b of a)if(("assistant"===b.role||"tool"===b.role)&&"string"!=typeof b.content)for(let a of b.content)("tool-call"===a.type||"tool-result"===a.type)&&f.set(a.toolCallId,a.toolName);let g=new Map;for(let b of a)if(("assistant"===b.role||"tool"===b.role)&&"string"!=typeof b.content){for(let a of b.content)if("tool-approval-request"===a.type){let b=f.get(a.toolCallId);null!=b&&g.set(a.approvalId,b)}}a=a.map((f,h)=>"assistant"!==f.role&&"tool"!==f.role||"string"==typeof f.content||b&&h>=a.length-b?f:{...f,content:f.content.filter(a=>{if("tool-call"!==a.type&&"tool-result"!==a.type&&"tool-approval-request"!==a.type&&"tool-approval-response"!==a.type||("tool-call"===a.type||"tool-result"===a.type)&&c.has(a.toolCallId)||("tool-approval-request"===a.type||"tool-approval-response"===a.type)&&e.has(a.approvalId))return!0;let b="tool-call"===a.type||"tool-result"===a.type?a.toolName:g.get(a.approvalId);return null!=d.tools&&null!=b&&!d.tools.includes(b)})})}return"remove"===d&&(a=a.filter(a=>a.content.length>0)),a},"stepCountIs",0,dc,"transcribe",0,eo,"wrapLanguageModel",0,({model:a,middleware:b,modelId:c,providerId:d})=>{let e=bx(a);return[...(0,R.asArray)(b)].reverse().reduce((a,b)=>(({model:a,middleware:{transformParams:b,wrapGenerate:c,wrapStream:d,overrideProvider:e,overrideModelId:f,overrideSupportedUrls:g},modelId:h,providerId:i})=>{var j,k,l;async function m({params:c,type:d}){return b?await b({params:c,type:d,model:a}):c}return{specificationVersion:"v4",provider:null!=(j=null!=i?i:null==e?void 0:e({model:a}))?j:a.provider,modelId:null!=(k=null!=h?h:null==f?void 0:f({model:a}))?k:a.modelId,supportedUrls:null!=(l=null==g?void 0:g({model:a}))?l:a.supportedUrls,async doGenerate(b){let d=await m({params:b,type:"generate"}),e=async()=>await a.doGenerate(d),f=async()=>await a.doStream(d);return c?await c({doGenerate:e,doStream:f,params:d,model:a}):await e()},async doStream(b){let c=await m({params:b,type:"stream"}),e=async()=>await a.doGenerate(c),f=async()=>await a.doStream(c);return d?await d({doGenerate:e,doStream:f,params:c,model:a}):await f()}}})({model:a,middleware:b,modelId:c,providerId:d}),e)}])},18956,696818,868023,889650,399602,979309,247355,a=>{"use strict";var b;let c=Symbol.for("constructDateFrom");function d(a,b){return"function"==typeof a?a(b):a&&"object"==typeof a&&c in a?a[c](b):a instanceof Date?new a.constructor(b):new Date(b)}a.s(["constructFromSymbol",0,c,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],696818),a.s(["constructFrom",0,d],18956);let e={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function f(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}let g={date:f({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:f({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:f({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},h={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function i(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}let j={ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:i({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:i({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:i({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:i({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:i({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function k(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}let l={ordinalNumber:(b={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)},(a,c={})=>{let d=a.match(b.matchPattern);if(!d)return null;let e=d[0],f=a.match(b.parsePattern);if(!f)return null;let g=b.valueCallback?b.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:a.slice(e.length)}}),era:k({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:k({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:k({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:k({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:k({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};a.s(["defaultLocale",0,{code:"en-US",formatDistance:(a,b,c)=>{let d,f=e[a];if(d="string"==typeof f?f:1===b?f.one:f.other.replace("{{count}}",b.toString()),c?.addSuffix)if(c.comparison&&c.comparison>0)return"in "+d;else return d+" ago";return d},formatLong:g,formatRelative:(a,b,c,d)=>h[a],localize:j,match:l,options:{weekStartsOn:0,firstWeekContainsDate:1}}],868023);let m={};function n(a,b){return d(b||a,a)}a.s(["getDefaultOptions",0,function(){return m}],889650),a.s(["toDate",0,n],399602),a.s(["getTimezoneOffsetInMilliseconds",0,function(a){let b=n(a),c=new Date(Date.UTC(b.getFullYear(),b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds(),b.getMilliseconds()));return c.setUTCFullYear(b.getFullYear()),a-c}],979309),a.s(["normalizeDates",0,function(a,...b){let c=d.bind(null,a||b.find(a=>"object"==typeof a));return b.map(c)}],247355)},12208,a=>{"use strict";var b=a.i(868023),c=a.i(889650),d=a.i(979309),e=a.i(247355),f=a.i(696818),g=a.i(399602);function h(a,b){let c=(0,g.toDate)(a,b?.in);return c.setHours(0,0,0,0),c}function i(a,b){let d=(0,c.getDefaultOptions)(),e=b?.weekStartsOn??b?.locale?.options?.weekStartsOn??d.weekStartsOn??d.locale?.options?.weekStartsOn??0,f=(0,g.toDate)(a,b?.in),h=f.getDay();return f.setDate(f.getDate()-(7*(h<e)+h-e)),f.setHours(0,0,0,0),f}function j(a,b){return i(a,{...b,weekStartsOn:1})}var k=a.i(18956);function l(a,b){let c=(0,g.toDate)(a,b?.in),d=c.getFullYear(),e=(0,k.constructFrom)(c,0);e.setFullYear(d+1,0,4),e.setHours(0,0,0,0);let f=j(e),h=(0,k.constructFrom)(c,0);h.setFullYear(d,0,4),h.setHours(0,0,0,0);let i=j(h);return c.getTime()>=f.getTime()?d+1:c.getTime()>=i.getTime()?d:d-1}function m(a,b){let d=(0,g.toDate)(a,b?.in),e=d.getFullYear(),f=(0,c.getDefaultOptions)(),h=b?.firstWeekContainsDate??b?.locale?.options?.firstWeekContainsDate??f.firstWeekContainsDate??f.locale?.options?.firstWeekContainsDate??1,j=(0,k.constructFrom)(b?.in||a,0);j.setFullYear(e+1,0,h),j.setHours(0,0,0,0);let l=i(j,b),m=(0,k.constructFrom)(b?.in||a,0);m.setFullYear(e,0,h),m.setHours(0,0,0,0);let n=i(m,b);return+d>=+l?e+1:+d>=+n?e:e-1}function n(a,b){let c=Math.abs(a).toString().padStart(b,"0");return(a<0?"-":"")+c}let o={y(a,b){let c=a.getFullYear(),d=c>0?c:1-c;return n("yy"===b?d%100:d,b.length)},M(a,b){let c=a.getMonth();return"M"===b?String(c+1):n(c+1,2)},d:(a,b)=>n(a.getDate(),b.length),a(a,b){let c=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.toUpperCase();case"aaa":return c;case"aaaaa":return c[0];default:return"am"===c?"a.m.":"p.m."}},h:(a,b)=>n(a.getHours()%12||12,b.length),H:(a,b)=>n(a.getHours(),b.length),m:(a,b)=>n(a.getMinutes(),b.length),s:(a,b)=>n(a.getSeconds(),b.length),S(a,b){let c=b.length;return n(Math.trunc(a.getMilliseconds()*Math.pow(10,c-3)),b.length)}},p={G:function(a,b,c){let d=+(a.getFullYear()>0);switch(b){case"G":case"GG":case"GGG":return c.era(d,{width:"abbreviated"});case"GGGGG":return c.era(d,{width:"narrow"});default:return c.era(d,{width:"wide"})}},y:function(a,b,c){if("yo"===b){let b=a.getFullYear();return c.ordinalNumber(b>0?b:1-b,{unit:"year"})}return o.y(a,b)},Y:function(a,b,c,d){let e=m(a,d),f=e>0?e:1-e;return"YY"===b?n(f%100,2):"Yo"===b?c.ordinalNumber(f,{unit:"year"}):n(f,b.length)},R:function(a,b){return n(l(a),b.length)},u:function(a,b){return n(a.getFullYear(),b.length)},Q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"Q":return String(d);case"QQ":return n(d,2);case"Qo":return c.ordinalNumber(d,{unit:"quarter"});case"QQQ":return c.quarter(d,{width:"abbreviated",context:"formatting"});case"QQQQQ":return c.quarter(d,{width:"narrow",context:"formatting"});default:return c.quarter(d,{width:"wide",context:"formatting"})}},q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"q":return String(d);case"qq":return n(d,2);case"qo":return c.ordinalNumber(d,{unit:"quarter"});case"qqq":return c.quarter(d,{width:"abbreviated",context:"standalone"});case"qqqqq":return c.quarter(d,{width:"narrow",context:"standalone"});default:return c.quarter(d,{width:"wide",context:"standalone"})}},M:function(a,b,c){let d=a.getMonth();switch(b){case"M":case"MM":return o.M(a,b);case"Mo":return c.ordinalNumber(d+1,{unit:"month"});case"MMM":return c.month(d,{width:"abbreviated",context:"formatting"});case"MMMMM":return c.month(d,{width:"narrow",context:"formatting"});default:return c.month(d,{width:"wide",context:"formatting"})}},L:function(a,b,c){let d=a.getMonth();switch(b){case"L":return String(d+1);case"LL":return n(d+1,2);case"Lo":return c.ordinalNumber(d+1,{unit:"month"});case"LLL":return c.month(d,{width:"abbreviated",context:"standalone"});case"LLLLL":return c.month(d,{width:"narrow",context:"standalone"});default:return c.month(d,{width:"wide",context:"standalone"})}},w:function(a,b,d,e){let h,j,l,o,p,q=Math.round((i(h=(0,g.toDate)(a,e?.in),e)-(j=(0,c.getDefaultOptions)(),l=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??j.firstWeekContainsDate??j.locale?.options?.firstWeekContainsDate??1,o=m(h,e),(p=(0,k.constructFrom)(e?.in||h,0)).setFullYear(o,0,l),p.setHours(0,0,0,0),i(p,e)))/f.millisecondsInWeek)+1;return"wo"===b?d.ordinalNumber(q,{unit:"week"}):n(q,b.length)},I:function(a,b,c){let d,e,h,i=Math.round((j(d=(0,g.toDate)(a,void 0))-(e=l(d,void 0),(h=(0,k.constructFrom)(d,0)).setFullYear(e,0,4),h.setHours(0,0,0,0),j(h)))/f.millisecondsInWeek)+1;return"Io"===b?c.ordinalNumber(i,{unit:"week"}):n(i,b.length)},d:function(a,b,c){return"do"===b?c.ordinalNumber(a.getDate(),{unit:"date"}):o.d(a,b)},D:function(a,b,c){let i,j,k=function(a,b){let[c,g]=(0,e.normalizeDates)(void 0,a,b),i=h(c),j=h(g);return Math.round((i-(0,d.getTimezoneOffsetInMilliseconds)(i)-(j-(0,d.getTimezoneOffsetInMilliseconds)(j)))/f.millisecondsInDay)}(i=(0,g.toDate)(a,void 0),((j=(0,g.toDate)(i,void 0)).setFullYear(j.getFullYear(),0,1),j.setHours(0,0,0,0),j))+1;return"Do"===b?c.ordinalNumber(k,{unit:"dayOfYear"}):n(k,b.length)},E:function(a,b,c){let d=a.getDay();switch(b){case"E":case"EE":case"EEE":return c.day(d,{width:"abbreviated",context:"formatting"});case"EEEEE":return c.day(d,{width:"narrow",context:"formatting"});case"EEEEEE":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},e:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"e":return String(f);case"ee":return n(f,2);case"eo":return c.ordinalNumber(f,{unit:"day"});case"eee":return c.day(e,{width:"abbreviated",context:"formatting"});case"eeeee":return c.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return c.day(e,{width:"short",context:"formatting"});default:return c.day(e,{width:"wide",context:"formatting"})}},c:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"c":return String(f);case"cc":return n(f,b.length);case"co":return c.ordinalNumber(f,{unit:"day"});case"ccc":return c.day(e,{width:"abbreviated",context:"standalone"});case"ccccc":return c.day(e,{width:"narrow",context:"standalone"});case"cccccc":return c.day(e,{width:"short",context:"standalone"});default:return c.day(e,{width:"wide",context:"standalone"})}},i:function(a,b,c){let d=a.getDay(),e=0===d?7:d;switch(b){case"i":return String(e);case"ii":return n(e,b.length);case"io":return c.ordinalNumber(e,{unit:"day"});case"iii":return c.day(d,{width:"abbreviated",context:"formatting"});case"iiiii":return c.day(d,{width:"narrow",context:"formatting"});case"iiiiii":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},a:function(a,b,c){let d=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"aaa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},b:function(a,b,c){let d,e=a.getHours();switch(d=12===e?"noon":0===e?"midnight":e/12>=1?"pm":"am",b){case"b":case"bb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"bbb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},B:function(a,b,c){let d,e=a.getHours();switch(d=e>=17?"evening":e>=12?"afternoon":e>=4?"morning":"night",b){case"B":case"BB":case"BBB":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"BBBBB":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},h:function(a,b,c){if("ho"===b){let b=a.getHours()%12;return 0===b&&(b=12),c.ordinalNumber(b,{unit:"hour"})}return o.h(a,b)},H:function(a,b,c){return"Ho"===b?c.ordinalNumber(a.getHours(),{unit:"hour"}):o.H(a,b)},K:function(a,b,c){let d=a.getHours()%12;return"Ko"===b?c.ordinalNumber(d,{unit:"hour"}):n(d,b.length)},k:function(a,b,c){let d=a.getHours();return(0===d&&(d=24),"ko"===b)?c.ordinalNumber(d,{unit:"hour"}):n(d,b.length)},m:function(a,b,c){return"mo"===b?c.ordinalNumber(a.getMinutes(),{unit:"minute"}):o.m(a,b)},s:function(a,b,c){return"so"===b?c.ordinalNumber(a.getSeconds(),{unit:"second"}):o.s(a,b)},S:function(a,b){return o.S(a,b)},X:function(a,b,c){let d=a.getTimezoneOffset();if(0===d)return"Z";switch(b){case"X":return r(d);case"XXXX":case"XX":return s(d);default:return s(d,":")}},x:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"x":return r(d);case"xxxx":case"xx":return s(d);default:return s(d,":")}},O:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"O":case"OO":case"OOO":return"GMT"+q(d,":");default:return"GMT"+s(d,":")}},z:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"z":case"zz":case"zzz":return"GMT"+q(d,":");default:return"GMT"+s(d,":")}},t:function(a,b,c){return n(Math.trunc(a/1e3),b.length)},T:function(a,b,c){return n(+a,b.length)}};function q(a,b=""){let c=a>0?"-":"+",d=Math.abs(a),e=Math.trunc(d/60),f=d%60;return 0===f?c+String(e):c+String(e)+b+n(f,2)}function r(a,b){return a%60==0?(a>0?"-":"+")+n(Math.abs(a)/60,2):s(a,b)}function s(a,b=""){let c=Math.abs(a);return(a>0?"-":"+")+n(Math.trunc(c/60),2)+b+n(c%60,2)}let t=(a,b)=>{switch(a){case"P":return b.date({width:"short"});case"PP":return b.date({width:"medium"});case"PPP":return b.date({width:"long"});default:return b.date({width:"full"})}},u=(a,b)=>{switch(a){case"p":return b.time({width:"short"});case"pp":return b.time({width:"medium"});case"ppp":return b.time({width:"long"});default:return b.time({width:"full"})}},v={p:u,P:(a,b)=>{let c,d=a.match(/(P+)(p+)?/)||[],e=d[1],f=d[2];if(!f)return t(a,b);switch(e){case"P":c=b.dateTime({width:"short"});break;case"PP":c=b.dateTime({width:"medium"});break;case"PPP":c=b.dateTime({width:"long"});break;default:c=b.dateTime({width:"full"})}return c.replace("{{date}}",t(e,b)).replace("{{time}}",u(f,b))}},w=/^D+$/,x=/^Y+$/,y=["D","DD","YY","YYYY"],z=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,A=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,B=/^'([^]*?)'?$/,C=/''/g,D=/[a-zA-Z]/;a.s(["format",0,function(a,d,e){let f=(0,c.getDefaultOptions)(),h=e?.locale??f.locale??b.defaultLocale,i=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??f.firstWeekContainsDate??f.locale?.options?.firstWeekContainsDate??1,j=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??f.weekStartsOn??f.locale?.options?.weekStartsOn??0,k=(0,g.toDate)(a,e?.in);if(!(k instanceof Date||"object"==typeof k&&"[object Date]"===Object.prototype.toString.call(k))&&"number"!=typeof k||isNaN(+(0,g.toDate)(k)))throw RangeError("Invalid time value");let l=d.match(A).map(a=>{let b=a[0];return"p"===b||"P"===b?(0,v[b])(a,h.formatLong):a}).join("").match(z).map(a=>{if("''"===a)return{isToken:!1,value:"'"};let b=a[0];if("'"===b){var c;let b;return{isToken:!1,value:(b=(c=a).match(B))?b[1].replace(C,"'"):c}}if(p[b])return{isToken:!0,value:a};if(b.match(D))throw RangeError("Format string contains an unescaped latin alphabet character `"+b+"`");return{isToken:!1,value:a}});h.localize.preprocessor&&(l=h.localize.preprocessor(k,l));let m={firstWeekContainsDate:i,weekStartsOn:j,locale:h};return l.map(b=>{if(!b.isToken)return b.value;let c=b.value;return(!e?.useAdditionalWeekYearTokens&&x.test(c)||!e?.useAdditionalDayOfYearTokens&&w.test(c))&&function(a,b,c){var d,e,f;let g,h=(d=a,e=b,f=c,g="Y"===d[0]?"years":"days of the month",`Use \`${d.toLowerCase()}\` instead of \`${d}\` (in \`${e}\`) for formatting ${g} to the input \`${f}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`);if(console.warn(h),y.includes(a))throw RangeError(h)}(c,d,String(a)),(0,p[c[0]])(k,c,h.localize,m)}).join("")}],12208)},868468,a=>{"use strict";var b=a.i(18956),c=a.i(868023),d=a.i(889650),e=a.i(979309),f=a.i(247355),g=a.i(399602),h=a.i(696818);a.s(["formatDistanceToNowStrict",0,function(a,i){return function(a,b,i){var j;let k,l,m=(0,d.getDefaultOptions)(),n=i?.locale??m.locale??c.defaultLocale,o=(l=(0,g.toDate)(a)-(0,g.toDate)(b))<0?-1:l>0?1:l;if(isNaN(o))throw RangeError("Invalid time value");let p=Object.assign({},i,{addSuffix:i?.addSuffix,comparison:o}),[q,r]=(0,f.normalizeDates)(i?.in,...o>0?[b,a]:[a,b]),s=(j=i?.roundingMethod??"round",a=>{let b=(j?Math[j]:Math.trunc)(a);return 0===b?0:b}),t=r.getTime()-q.getTime(),u=t/h.millisecondsInMinute,v=(t-((0,e.getTimezoneOffsetInMilliseconds)(r)-(0,e.getTimezoneOffsetInMilliseconds)(q)))/h.millisecondsInMinute,w=i?.unit;if("second"===(k=w||(u<1?"second":u<60?"minute":u<h.minutesInDay?"hour":v<h.minutesInMonth?"day":v<h.minutesInYear?"month":"year"))){let a=s(t/1e3);return n.formatDistance("xSeconds",a,p)}if("minute"===k){let a=s(u);return n.formatDistance("xMinutes",a,p)}if("hour"===k){let a=s(u/60);return n.formatDistance("xHours",a,p)}if("day"===k){let a=s(v/h.minutesInDay);return n.formatDistance("xDays",a,p)}if("month"===k){let a=s(v/h.minutesInMonth);return 12===a&&"month"!==w?n.formatDistance("xYears",1,p):n.formatDistance("xMonths",a,p)}else{let a=s(v/h.minutesInYear);return n.formatDistance("xYears",a,p)}}(a,(0,b.constructFrom)(a,Date.now()),i)}],868468)},72906,(a,b,c)=>{b.exports=e,e.sync=function(a,b){return f(d.statSync(a),b)};var d=a.r(522734);function e(a,b,c){d.stat(a,function(a,d){c(a,!a&&f(d,b))})}function f(a,b){var c,d,e,f,g,h,i,j,k;return a.isFile()&&(c=a,d=b,e=c.mode,f=c.uid,g=c.gid,h=void 0!==d.uid?d.uid:process.getuid&&process.getuid(),i=void 0!==d.gid?d.gid:process.getgid&&process.getgid(),j=parseInt("100",8),k=parseInt("010",8),e&parseInt("001",8)||e&k&&g===i||e&j&&f===h||e&(j|k)&&0===h)}},490400,(a,b,c)=>{b.exports=f,f.sync=function(a,b){return e(d.statSync(a),a,b)};var d=a.r(522734);function e(a,b,c){if(!a.isSymbolicLink()&&!a.isFile())return!1;var d=void 0!==c.pathExt?c.pathExt:process.env.PATHEXT;if(!d||-1!==(d=d.split(";")).indexOf(""))return!0;for(var e=0;e<d.length;e++){var f=d[e].toLowerCase();if(f&&b.substr(-f.length).toLowerCase()===f)return!0}return!1}function f(a,b,c){d.stat(a,function(d,f){c(d,!d&&e(f,a,b))})}},929177,(a,b,c)=>{var d;function e(a,b,c){if("function"==typeof b&&(c=b,b={}),!c){if("function"!=typeof Promise)throw TypeError("callback not provided");return new Promise(function(c,d){e(a,b||{},function(a,b){a?d(a):c(b)})})}d(a,b||{},function(a,d){a&&("EACCES"===a.code||b&&b.ignoreErrors)&&(a=null,d=!1),c(a,d)})}a.r(522734),d="win32"===process.platform||a.g.TESTING_WINDOWS?a.r(490400):a.r(72906),b.exports=e,e.sync=function(a,b){try{return d.sync(a,b||{})}catch(a){if(b&&b.ignoreErrors||"EACCES"===a.code)return!1;throw a}}},38795,(a,b,c)=>{let d="win32"===process.platform||"cygwin"===process.env.OSTYPE||"msys"===process.env.OSTYPE,e=a.r(814747),f=d?";":":",g=a.r(929177),h=a=>Object.assign(Error(`not found: ${a}`),{code:"ENOENT"}),i=(a,b)=>{let c=b.colon||f,e=a.match(/\//)||d&&a.match(/\\/)?[""]:[...d?[process.cwd()]:[],...(b.path||process.env.PATH||"").split(c)],g=d?b.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",h=d?g.split(c):[""];return d&&-1!==a.indexOf(".")&&""!==h[0]&&h.unshift(""),{pathEnv:e,pathExt:h,pathExtExe:g}},j=(a,b,c)=>{"function"==typeof b&&(c=b,b={}),b||(b={});let{pathEnv:d,pathExt:f,pathExtExe:j}=i(a,b),k=[],l=c=>new Promise((f,g)=>{if(c===d.length)return b.all&&k.length?f(k):g(h(a));let i=d[c],j=/^".*"$/.test(i)?i.slice(1,-1):i,l=e.join(j,a);f(m(!j&&/^\.[\\\/]/.test(a)?a.slice(0,2)+l:l,c,0))}),m=(a,c,d)=>new Promise((e,h)=>{if(d===f.length)return e(l(c+1));let i=f[d];g(a+i,{pathExt:j},(f,g)=>{if(!f&&g)if(!b.all)return e(a+i);else k.push(a+i);return e(m(a,c,d+1))})});return c?l(0).then(a=>c(null,a),c):l(0)};b.exports=j,j.sync=(a,b)=>{let{pathEnv:c,pathExt:d,pathExtExe:f}=i(a,b=b||{}),j=[];for(let h=0;h<c.length;h++){let i=c[h],k=/^".*"$/.test(i)?i.slice(1,-1):i,l=e.join(k,a),m=!k&&/^\.[\\\/]/.test(a)?a.slice(0,2)+l:l;for(let a=0;a<d.length;a++){let c=m+d[a];try{if(g.sync(c,{pathExt:f}))if(!b.all)return c;else j.push(c)}catch(a){}}}if(b.all&&j.length)return j;if(b.nothrow)return null;throw h(a)}},87721,(a,b,c)=>{"use strict";let d=(a={})=>{let b=a.env||process.env;return"win32"!==(a.platform||process.platform)?"PATH":Object.keys(b).reverse().find(a=>"PATH"===a.toUpperCase())||"Path"};b.exports=d,b.exports.default=d},145803,(a,b,c)=>{"use strict";let d=a.r(814747),e=a.r(38795),f=a.r(87721);function g(a,b){let c,g=a.options.env||process.env,h=process.cwd(),i=null!=a.options.cwd,j=i&&void 0!==process.chdir&&!process.chdir.disabled;if(j)try{process.chdir(a.options.cwd)}catch(a){}try{c=e.sync(a.command,{path:g[f({env:g})],pathExt:b?d.delimiter:void 0})}catch(a){}finally{j&&process.chdir(h)}return c&&(c=d.resolve(i?a.options.cwd:"",c)),c}b.exports=function(a){return g(a)||g(a,!0)}},389998,(a,b,c)=>{"use strict";let d=/([()\][%!^"`<>&|;, *?])/g;b.exports.command=function(a){return a.replace(d,"^$1")},b.exports.argument=function(a,b){return a=(a=(a=`${a}`).replace(/(?=(\\+?)?)\1"/g,'$1$1\\"')).replace(/(?=(\\+?)?)\1$/,"$1$1"),a=(a=`"${a}"`).replace(d,"^$1"),b&&(a=a.replace(d,"^$1")),a}},632419,(a,b,c)=>{"use strict";b.exports=/^#!(.*)/},641310,(a,b,c)=>{"use strict";let d=a.r(632419);b.exports=(a="")=>{let b=a.match(d);if(!b)return null;let[c,e]=b[0].replace(/#! ?/,"").split(" "),f=c.split("/").pop();return"env"===f?e:e?`${f} ${e}`:f}},555192,(a,b,c)=>{"use strict";let d=a.r(522734),e=a.r(641310);b.exports=function(a){let b,c=Buffer.alloc(150);try{b=d.openSync(a,"r"),d.readSync(b,c,0,150,0),d.closeSync(b)}catch(a){}return e(c.toString())}},817830,(a,b,c)=>{"use strict";a.r(814747),a.r(145803),a.r(389998),a.r(555192),process.platform,b.exports=function(a,b,c){b&&!Array.isArray(b)&&(c=b,b=null);let d={command:a,args:b=b?b.slice(0):[],options:c=Object.assign({},c),file:void 0,original:{command:a,args:b}};return c.shell,d}},941952,(a,b,c)=>{"use strict";process.platform,b.exports={hookChildProcess:function(a,b){},verifyENOENT:function(a,b){return null},verifyENOENTSync:function(a,b){return null},notFoundError:function(a,b){return Object.assign(Error(`${b} ${a.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${b} ${a.command}`,path:a.command,spawnargs:a.args})}}},908441,(a,b,c)=>{"use strict";let d=a.r(233405),e=a.r(817830),f=a.r(941952);function g(a,b,c){let g=e(a,b,c),h=d.spawn(g.command,g.args,g.options);return f.hookChildProcess(h,g),h}b.exports=g,b.exports.spawn=g,b.exports.sync=function(a,b,c){let g=e(a,b,c),h=d.spawnSync(g.command,g.args,g.options);return h.error=h.error||f.verifyENOENTSync(h.status,g),h},b.exports._parse=e,b.exports._enoent=f},64203,a=>{"use strict";var b,c,d=a.i(527990),e=a.i(53112),f=a.i(652685),g=a.i(908441),h=e.z.optional(e.z.record(e.z.string(),e.z.unknown())),i=e.z.looseObject({name:e.z.string(),version:e.z.string(),title:e.z.optional(e.z.string())}),j=e.z.looseObject({_meta:e.z.optional(e.z.object({}).loose())}),k=j.extend({resultType:e.z.optional(e.z.string())}),l=e.z.object({method:e.z.string(),params:e.z.optional(j)}),m=e.z.object({applyDefaults:e.z.optional(e.z.boolean())}).loose(),n=e.z.looseObject({experimental:e.z.optional(e.z.object({}).loose()),logging:e.z.optional(e.z.object({}).loose()),completions:e.z.optional(e.z.object({}).loose()),prompts:e.z.optional(e.z.looseObject({listChanged:e.z.optional(e.z.boolean())})),resources:e.z.optional(e.z.looseObject({subscribe:e.z.optional(e.z.boolean()),listChanged:e.z.optional(e.z.boolean())})),tools:e.z.optional(e.z.looseObject({listChanged:e.z.optional(e.z.boolean())})),elicitation:e.z.optional(m)});e.z.object({elicitation:e.z.optional(m)}).loose(),k.extend({supportedVersions:e.z.array(e.z.string()),capabilities:n,instructions:e.z.optional(e.z.string()),ttlMs:e.z.optional(e.z.number()),cacheScope:e.z.optional(e.z.union([e.z.literal("public"),e.z.literal("private")]))}),k.extend({protocolVersion:e.z.string(),capabilities:n,serverInfo:i,instructions:e.z.optional(e.z.string())});var o=k.extend({nextCursor:e.z.optional(e.z.string())}),p=e.z.object({name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),inputSchema:e.z.looseObject({type:e.z.optional(e.z.unknown()),properties:e.z.optional(e.z.object({}).loose())}),outputSchema:e.z.optional(e.z.object({}).loose()),annotations:e.z.optional(e.z.object({title:e.z.optional(e.z.string()),readOnlyHint:e.z.optional(e.z.boolean()),destructiveHint:e.z.optional(e.z.boolean()),idempotentHint:e.z.optional(e.z.boolean()),openWorldHint:e.z.optional(e.z.boolean())}).loose()),_meta:h}).loose();o.extend({tools:e.z.array(p)});var q=e.z.object({type:e.z.literal("text"),text:e.z.string()}).loose(),r=e.z.object({type:e.z.literal("image"),data:e.z.base64(),mimeType:e.z.string()}).loose(),s=e.z.object({uri:e.z.string(),name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string()),size:e.z.optional(e.z.number())}).loose();o.extend({resources:e.z.array(s)});var t=e.z.object({uri:e.z.string(),name:e.z.optional(e.z.string()),title:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose(),u=t.extend({text:e.z.string()}),v=t.extend({blob:e.z.base64()}),w=e.z.object({type:e.z.literal("resource"),resource:e.z.union([u,v])}).loose(),x=e.z.object({type:e.z.literal("resource_link"),uri:e.z.string(),name:e.z.string(),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose(),y=e.z.object({type:e.z.string()}).loose().refine(a=>!["text","image","resource","resource_link"].includes(a.type),{message:"Known content types must match their schema"}),z=k.extend({content:e.z.array(e.z.union([q,r,w,x,y])),structuredContent:e.z.optional(e.z.unknown()),isError:e.z.boolean().default(!1).optional()}),A=k.extend({content:e.z.never().optional(),structuredContent:e.z.json(),isError:e.z.boolean().default(!1).optional()}).transform(a=>({...a,content:[{type:"text",text:JSON.stringify(a.structuredContent)}]})).pipe(z);z.or(A).or(k.extend({toolResult:e.z.unknown().nonoptional()}));var B=e.z.object({uriTemplate:e.z.string(),name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),mimeType:e.z.optional(e.z.string())}).loose();k.extend({resourceTemplates:e.z.array(B)}),k.extend({contents:e.z.array(e.z.union([u,v]))});var C=e.z.object({type:e.z.literal("ref/prompt"),name:e.z.string()}).loose(),D=e.z.object({type:e.z.literal("ref/resource"),uri:e.z.string()}).loose(),E=e.z.object({name:e.z.string(),value:e.z.string()}).loose();j.extend({ref:e.z.union([C,D]),argument:E,context:e.z.optional(e.z.object({arguments:e.z.record(e.z.string(),e.z.string())}).loose())}),k.extend({completion:e.z.object({values:e.z.array(e.z.string()).max(100),total:e.z.optional(e.z.number().int()),hasMore:e.z.optional(e.z.boolean())}).loose()});var F=e.z.object({name:e.z.string(),description:e.z.optional(e.z.string()),required:e.z.optional(e.z.boolean())}).loose(),G=e.z.object({name:e.z.string(),title:e.z.optional(e.z.string()),description:e.z.optional(e.z.string()),arguments:e.z.optional(e.z.array(F))}).loose();o.extend({prompts:e.z.array(G)});var H=e.z.object({role:e.z.union([e.z.literal("user"),e.z.literal("assistant")]),content:e.z.union([q,r,w,x])}).loose();k.extend({description:e.z.optional(e.z.string()),messages:e.z.array(H)});var I=j.extend({message:e.z.string(),requestedSchema:e.z.unknown()});l.extend({method:e.z.literal("elicitation/create"),params:I}),k.extend({action:e.z.union([e.z.literal("accept"),e.z.literal("decline"),e.z.literal("cancel")]),content:e.z.optional(e.z.record(e.z.string(),e.z.unknown()))});var J=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.union([e.z.string(),e.z.number().int()])}).merge(l).strict(),K=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.union([e.z.string(),e.z.number().int()]),result:k}).strict(),L=e.z.object({jsonrpc:e.z.literal("2.0"),id:e.z.optional(e.z.union([e.z.string(),e.z.number().int()])),error:e.z.object({code:e.z.number().int(),message:e.z.string(),data:e.z.optional(e.z.unknown())})}).strict(),M=e.z.object({jsonrpc:e.z.literal("2.0")}).merge(e.z.object({method:e.z.string(),params:e.z.optional(j)})).strict(),N=e.z.union([J,M,K,L]);async function O(a){var b;return b=await (0,d.parseJSON)({text:a}),N.parse(b)}var P="vercel.ai.error.AI_MCPClientError",Q=Symbol.for(P),R=class extends(c=f.AISDKError,b=Q,c){constructor({name:a="MCPClientError",message:c,cause:d,data:e,code:f,statusCode:g,url:h,responseBody:i}){super({name:a,message:c,cause:d}),this[b]=!0,this.data=e,this.code=f,this.statusCode=g,this.url=h,this.responseBody=i}static isInstance(a){return f.AISDKError.hasMarker(a,P)}},S=class{constructor(a){this.supportsProtocolVersionDiscovery=!0,this.abortController=new AbortController,this.readBuffer=new T,this.serverParams=a}async start(){if(this.process)throw new R({message:"StdioMCPTransport already started."});return new Promise((a,b)=>{var c,d,e,f;try{let f=function(a,b){var c,d,e;if("win32"===globalThis.process.platform&&[a.command,...null!=(c=a.args)?c:[]].some(a=>/[\r\n]/.test(a)))throw TypeError("Stdio MCP commands and arguments must not contain line breaks on Windows.");return(0,g.default)(a.command,null!=(d=a.args)?d:[],{env:function(a){let b="win32"===globalThis.process.platform?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"],c=a?{...a}:{};for(let a of b){let b=globalThis.process.env[a];void 0!==b&&(b.startsWith("()")||(c[a]=b))}return c}(a.env),stdio:["pipe","pipe",null!=(e=a.stderr)?e:"inherit"],shell:!1,signal:b,windowsHide:"win32"===globalThis.process.platform&&"type"in globalThis.process,cwd:a.cwd})}(this.serverParams,this.abortController.signal);this.process=f,this.process.on("error",a=>{var c,d;if("AbortError"===a.name){null==(c=this.onclose)||c.call(this);return}b(a),null==(d=this.onerror)||d.call(this,a)}),this.process.on("spawn",()=>{a()}),this.process.on("close",a=>{var b;this.process=void 0,null==(b=this.onclose)||b.call(this)}),null==(c=this.process.stdin)||c.on("error",a=>{var b;null==(b=this.onerror)||b.call(this,a)}),null==(d=this.process.stdout)||d.on("data",a=>{this.readBuffer.append(a),this.processReadBuffer()}),null==(e=this.process.stdout)||e.on("error",a=>{var b;null==(b=this.onerror)||b.call(this,a)})}catch(a){b(a),null==(f=this.onerror)||f.call(this,a)}})}async processReadBuffer(){for(var a,b;;){let c=this.readBuffer.readLine();if(null===c)break;try{let b=await U(c);null==(a=this.onmessage)||a.call(this,b)}catch(a){null==(b=this.onerror)||b.call(this,a)}}}async close(){this.abortController.abort(),this.process=void 0,this.readBuffer.clear()}send(a){return new Promise(b=>{var c;if(!(null==(c=this.process)?void 0:c.stdin))throw new R({message:"StdioClientTransport not connected"});let d=JSON.stringify(a)+"\n";this.process.stdin.write(d)?b():this.process.stdin.once("drain",b)})}},T=class{append(a){this.buffer=this.buffer?Buffer.concat([this.buffer,a]):a}readLine(){if(!this.buffer)return null;let a=this.buffer.indexOf("\n");if(-1===a)return null;let b=this.buffer.toString("utf8",0,a);return this.buffer=this.buffer.subarray(a+1),b}clear(){this.buffer=void 0}};async function U(a){return O(a)}a.s(["Experimental_StdioMCPTransport",0,S])},927267,(a,b,c)=>{"use strict";let d=Symbol.for("yaml.alias"),e=Symbol.for("yaml.document"),f=Symbol.for("yaml.map"),g=Symbol.for("yaml.pair"),h=Symbol.for("yaml.scalar"),i=Symbol.for("yaml.seq"),j=Symbol.for("yaml.node.type"),k=a=>!!a&&"object"==typeof a&&a[j]===h;function l(a){if(a&&"object"==typeof a)switch(a[j]){case f:case i:return!0}return!1}c.ALIAS=d,c.DOC=e,c.MAP=f,c.NODE_TYPE=j,c.PAIR=g,c.SCALAR=h,c.SEQ=i,c.hasAnchor=a=>(k(a)||l(a))&&!!a.anchor,c.isAlias=a=>!!a&&"object"==typeof a&&a[j]===d,c.isCollection=l,c.isDocument=a=>!!a&&"object"==typeof a&&a[j]===e,c.isMap=a=>!!a&&"object"==typeof a&&a[j]===f,c.isNode=function(a){if(a&&"object"==typeof a)switch(a[j]){case d:case f:case h:case i:return!0}return!1},c.isPair=a=>!!a&&"object"==typeof a&&a[j]===g,c.isScalar=k,c.isSeq=a=>!!a&&"object"==typeof a&&a[j]===i},685927,(a,b,c)=>{"use strict";var d=a.r(927267);let e=Symbol("break visit"),f=Symbol("skip children"),g=Symbol("remove node");function h(a,b){let c=l(b);d.isDocument(a)?i(null,a.contents,c,Object.freeze([a]))===g&&(a.contents=null):i(null,a,c,Object.freeze([]))}function i(a,b,c,f){let h=m(a,b,c,f);if(d.isNode(h)||d.isPair(h))return n(a,f,h),i(a,h,c,f);if("symbol"!=typeof h){if(d.isCollection(b)){f=Object.freeze(f.concat(b));for(let a=0;a<b.items.length;++a){let d=i(a,b.items[a],c,f);if("number"==typeof d)a=d-1;else{if(d===e)return e;d===g&&(b.items.splice(a,1),a-=1)}}}else if(d.isPair(b)){f=Object.freeze(f.concat(b));let a=i("key",b.key,c,f);if(a===e)return e;a===g&&(b.key=null);let d=i("value",b.value,c,f);if(d===e)return e;d===g&&(b.value=null)}}return h}async function j(a,b){let c=l(b);d.isDocument(a)?await k(null,a.contents,c,Object.freeze([a]))===g&&(a.contents=null):await k(null,a,c,Object.freeze([]))}async function k(a,b,c,f){let h=await m(a,b,c,f);if(d.isNode(h)||d.isPair(h))return n(a,f,h),k(a,h,c,f);if("symbol"!=typeof h){if(d.isCollection(b)){f=Object.freeze(f.concat(b));for(let a=0;a<b.items.length;++a){let d=await k(a,b.items[a],c,f);if("number"==typeof d)a=d-1;else{if(d===e)return e;d===g&&(b.items.splice(a,1),a-=1)}}}else if(d.isPair(b)){f=Object.freeze(f.concat(b));let a=await k("key",b.key,c,f);if(a===e)return e;a===g&&(b.key=null);let d=await k("value",b.value,c,f);if(d===e)return e;d===g&&(b.value=null)}}return h}function l(a){return"object"==typeof a&&(a.Collection||a.Node||a.Value)?Object.assign({Alias:a.Node,Map:a.Node,Scalar:a.Node,Seq:a.Node},a.Value&&{Map:a.Value,Scalar:a.Value,Seq:a.Value},a.Collection&&{Map:a.Collection,Seq:a.Collection},a):a}function m(a,b,c,e){return"function"==typeof c?c(a,b,e):d.isMap(b)?c.Map?.(a,b,e):d.isSeq(b)?c.Seq?.(a,b,e):d.isPair(b)?c.Pair?.(a,b,e):d.isScalar(b)?c.Scalar?.(a,b,e):d.isAlias(b)?c.Alias?.(a,b,e):void 0}function n(a,b,c){let e=b[b.length-1];if(d.isCollection(e))e.items[a]=c;else if(d.isPair(e))"key"===a?e.key=c:e.value=c;else if(d.isDocument(e))e.contents=c;else{let a=d.isAlias(e)?"alias":"scalar";throw Error(`Cannot replace node with ${a} parent`)}}h.BREAK=e,h.SKIP=f,h.REMOVE=g,j.BREAK=e,j.SKIP=f,j.REMOVE=g,c.visit=h,c.visitAsync=j},374957,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(685927);let f={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},g=a=>a.replace(/[!,[\]{}]/g,a=>f[a]);class h{constructor(a,b){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},h.defaultYaml,a),this.tags=Object.assign({},h.defaultTags,b)}clone(){let a=new h(this.yaml,this.tags);return a.docStart=this.docStart,a}atDocument(){let a=new h(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:h.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},h.defaultTags)}return a}add(a,b){this.atNextDocument&&(this.yaml={explicit:h.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},h.defaultTags),this.atNextDocument=!1);let c=a.trim().split(/[ \t]+/),d=c.shift();switch(d){case"%TAG":{if(2!==c.length&&(b(0,"%TAG directive should contain exactly two parts"),c.length<2))return!1;let[a,d]=c;return this.tags[a]=d,!0}case"%YAML":{if(this.yaml.explicit=!0,1!==c.length)return b(0,"%YAML directive should contain exactly one part"),!1;let[a]=c;if("1.1"===a||"1.2"===a)return this.yaml.version=a,!0;{let c=/^\d+\.\d+$/.test(a);return b(6,`Unsupported YAML version ${a}`,c),!1}}default:return b(0,`Unknown directive ${d}`,!0),!1}}tagName(a,b){if("!"===a)return"!";if("!"!==a[0])return b(`Not a valid tag: ${a}`),null;if("<"===a[1]){let c=a.slice(2,-1);return"!"===c||"!!"===c?(b(`Verbatim tags aren't resolved, so ${a} is invalid.`),null):(">"!==a[a.length-1]&&b("Verbatim tags must end with a >"),c)}let[,c,d]=a.match(/^(.*!)([^!]*)$/s);d||b(`The ${a} tag has no suffix`);let e=this.tags[c];if(e)try{return e+decodeURIComponent(d)}catch(a){return b(String(a)),null}return"!"===c?a:(b(`Could not resolve tag: ${a}`),null)}tagString(a){for(let[b,c]of Object.entries(this.tags))if(a.startsWith(c))return b+g(a.substring(c.length));return"!"===a[0]?a:`!<${a}>`}toString(a){let b,c=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],f=Object.entries(this.tags);if(a&&f.length>0&&d.isNode(a.contents)){let c={};e.visit(a.contents,(a,b)=>{d.isNode(b)&&b.tag&&(c[b.tag]=!0)}),b=Object.keys(c)}else b=[];for(let[d,e]of f)("!!"!==d||"tag:yaml.org,2002:"!==e)&&(!a||b.some(a=>a.startsWith(e)))&&c.push(`%TAG ${d} ${e}`);return c.join("\n")}}h.defaultYaml={explicit:!1,version:"1.2"},h.defaultTags={"!!":"tag:yaml.org,2002:"},c.Directives=h},210937,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(685927);function f(a){let b=new Set;return e.visit(a,{Value(a,c){c.anchor&&b.add(c.anchor)}}),b}function g(a,b){for(let c=1;;++c){let d=`${a}${c}`;if(!b.has(d))return d}}c.anchorIsValid=function(a){if(/[\x00-\x19\s,[\]{}]/.test(a)){let b=JSON.stringify(a);throw Error(`Anchor must not contain whitespace or control characters: ${b}`)}return!0},c.anchorNames=f,c.createNodeAnchors=function(a,b){let c=[],e=new Map,h=null;return{onAnchor:d=>{c.push(d),h??(h=f(a));let e=g(b,h);return h.add(e),e},setAnchors:()=>{for(let a of c){let b=e.get(a);if("object"==typeof b&&b.anchor&&(d.isScalar(b.node)||d.isCollection(b.node)))b.node.anchor=b.anchor;else{let b=Error("Failed to resolve repeated object (this should not happen)");throw b.source=a,b}}},sourceObjects:e}},c.findNewAnchor=g},159588,(a,b,c)=>{"use strict";c.applyReviver=function a(b,c,d,e){if(e&&"object"==typeof e)if(Array.isArray(e))for(let c=0,d=e.length;c<d;++c){let d=e[c],f=a(b,e,String(c),d);void 0===f?delete e[c]:f!==d&&(e[c]=f)}else if(e instanceof Map)for(let c of Array.from(e.keys())){let d=e.get(c),f=a(b,e,c,d);void 0===f?e.delete(c):f!==d&&e.set(c,f)}else if(e instanceof Set)for(let c of Array.from(e)){let d=a(b,e,c,c);void 0===d?e.delete(c):d!==c&&(e.delete(c),e.add(d))}else for(let[c,d]of Object.entries(e)){let f=a(b,e,c,d);void 0===f?delete e[c]:f!==d&&(e[c]=f)}return b.call(c,d,e)}},500094,(a,b,c)=>{"use strict";var d=a.r(927267);c.toJS=function a(b,c,e){if(Array.isArray(b))return b.map((b,c)=>a(b,String(c),e));if(b&&"function"==typeof b.toJSON){if(!e||!d.hasAnchor(b))return b.toJSON(c,e);let a={aliasCount:0,count:1,res:void 0};e.anchors.set(b,a),e.onCreate=b=>{a.res=b,delete e.onCreate};let f=b.toJSON(c,e);return e.onCreate&&e.onCreate(f),f}return"bigint"!=typeof b||e?.keep?b:Number(b)}},125154,(a,b,c)=>{"use strict";var d=a.r(159588),e=a.r(927267),f=a.r(500094);c.NodeBase=class{constructor(a){Object.defineProperty(this,e.NODE_TYPE,{value:a})}clone(){let a=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(a.range=this.range.slice()),a}toJS(a,{mapAsMap:b,maxAliasCount:c,onAnchor:g,reviver:h}={}){if(!e.isDocument(a))throw TypeError("A document argument is required");let i={anchors:new Map,doc:a,keep:!0,mapAsMap:!0===b,mapKeyWarned:!1,maxAliasCount:"number"==typeof c?c:100},j=f.toJS(this,"",i);if("function"==typeof g)for(let{count:a,res:b}of i.anchors.values())g(b,a);return"function"==typeof h?d.applyReviver(h,{"":j},"",j):j}}},421562,(a,b,c)=>{"use strict";var d=a.r(210937),e=a.r(685927),f=a.r(927267),g=a.r(125154),h=a.r(500094);class i extends g.NodeBase{constructor(a){super(f.ALIAS),this.source=a,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(a,b){let c,d;if(b?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");for(let g of(b?.aliasResolveCache?c=b.aliasResolveCache:(c=[],e.visit(a,{Node:(a,b)=>{(f.isAlias(b)||f.hasAnchor(b))&&c.push(b)}}),b&&(b.aliasResolveCache=c)),c)){if(g===this)break;g.anchor===this.source&&(d=g)}return d}toJSON(a,b){if(!b)return{source:this.source};let{anchors:c,doc:d,maxAliasCount:e}=b,g=this.resolve(d,b);if(!g)throw ReferenceError(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);let i=c.get(g);if(i||(h.toJS(g,null,b),i=c.get(g)),i?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(e>=0&&(i.count+=1,0===i.aliasCount&&(i.aliasCount=function a(b,c,d){if(f.isAlias(c)){let a=c.resolve(b),e=d&&a&&d.get(a);return e?e.count*e.aliasCount:0}if(f.isCollection(c)){let e=0;for(let f of c.items){let c=a(b,f,d);c>e&&(e=c)}return e}return f.isPair(c)?Math.max(a(b,c.key,d),a(b,c.value,d)):1}(d,g,c)),i.count*i.aliasCount>e))throw ReferenceError("Excessive alias count indicates a resource exhaustion attack");return i.res}toString(a,b,c){let e=`*${this.source}`;if(a){if(d.anchorIsValid(this.source),a.options.verifyAliasOrder&&!a.anchors.has(this.source))throw Error(`Unresolved alias (the anchor must be set before the alias): ${this.source}`);if(a.implicitKey)return`${e} `}return e}}c.Alias=i},427853,(a,b,c)=>{"use strict";var d=a.r(927267),e=a.r(125154),f=a.r(500094);class g extends e.NodeBase{constructor(a){super(d.SCALAR),this.value=a}toJSON(a,b){return b?.keep?this.value:f.toJS(this.value,a,b)}toString(){return String(this.value)}}g.BLOCK_FOLDED="BLOCK_FOLDED",g.BLOCK_LITERAL="BLOCK_LITERAL",g.PLAIN="PLAIN",g.QUOTE_DOUBLE="QUOTE_DOUBLE",g.QUOTE_SINGLE="QUOTE_SINGLE",c.Scalar=g,c.isScalarValue=a=>!a||"function"!=typeof a&&"object"!=typeof a},510882,(a,b,c)=>{"use strict";var d=a.r(421562),e=a.r(927267),f=a.r(427853);c.createNode=function(a,b,c){let g;if(e.isDocument(a)&&(a=a.contents),e.isNode(a))return a;if(e.isPair(a)){let b=c.schema[e.MAP].createNode?.(c.schema,null,c);return b.items.push(a),b}(a instanceof String||a instanceof Number||a instanceof Boolean||"u">typeof BigInt&&a instanceof BigInt)&&(a=a.valueOf());let{aliasDuplicateObjects:h,onAnchor:i,onTagObj:j,schema:k,sourceObjects:l}=c;if(h&&a&&"object"==typeof a){if(g=l.get(a))return g.anchor??(g.anchor=i(a)),new d.Alias(g.anchor);g={anchor:null,node:null},l.set(a,g)}b?.startsWith("!!")&&(b="tag:yaml.org,2002:"+b.slice(2));let m=function(a,b,c){if(b){let a=c.filter(a=>a.tag===b),d=a.find(a=>!a.format)??a[0];if(!d)throw Error(`Tag ${b} not found`);return d}return c.find(b=>b.identify?.(a)&&!b.format)}(a,b,k.tags);if(!m){if(a&&"function"==typeof a.toJSON&&(a=a.toJSON()),!a||"object"!=typeof a){let b=new f.Scalar(a);return g&&(g.node=b),b}m=a instanceof Map?k[e.MAP]:Symbol.iterator in Object(a)?k[e.SEQ]:k[e.MAP]}j&&(j(m),delete c.onTagObj);let n=m?.createNode?m.createNode(c.schema,a,c):"function"==typeof m?.nodeClass?.from?m.nodeClass.from(c.schema,a,c):new f.Scalar(a);return b?n.tag=b:m.default||(n.tag=m.tag),g&&(g.node=n),n}},735249,(a,b,c)=>{"use strict";var d=a.r(510882),e=a.r(927267),f=a.r(125154);function g(a,b,c){let e=c;for(let a=b.length-1;a>=0;--a){let c=b[a];if("number"==typeof c&&Number.isInteger(c)&&c>=0){let a=[];a[c]=e,e=a}else e=new Map([[c,e]])}return d.createNode(e,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:a,sourceObjects:new Map})}let h=a=>null==a||"object"==typeof a&&!!a[Symbol.iterator]().next().done;class i extends f.NodeBase{constructor(a,b){super(a),Object.defineProperty(this,"schema",{value:b,configurable:!0,enumerable:!1,writable:!0})}clone(a){let b=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return a&&(b.schema=a),b.items=b.items.map(b=>e.isNode(b)||e.isPair(b)?b.clone(a):b),this.range&&(b.range=this.range.slice()),b}addIn(a,b){if(h(a))this.add(b);else{let[c,...d]=a,f=this.get(c,!0);if(e.isCollection(f))f.addIn(d,b);else if(void 0===f&&this.schema)this.set(c,g(this.schema,d,b));else throw Error(`Expected YAML collection at ${c}. Remaining path: ${d}`)}}deleteIn(a){let[b,...c]=a;if(0===c.length)return this.delete(b);let d=this.get(b,!0);if(e.isCollection(d))return d.deleteIn(c);throw Error(`Expected YAML collection at ${b}. Remaining path: ${c}`)}getIn(a,b){let[c,...d]=a,f=this.get(c,!0);return 0===d.length?!b&&e.isScalar(f)?f.value:f:e.isCollection(f)?f.getIn(d,b):void 0}hasAllNullValues(a){return this.items.every(b=>{if(!e.isPair(b))return!1;let c=b.value;return null==c||a&&e.isScalar(c)&&null==c.value&&!c.commentBefore&&!c.comment&&!c.tag})}hasIn(a){let[b,...c]=a;if(0===c.length)return this.has(b);let d=this.get(b,!0);return!!e.isCollection(d)&&d.hasIn(c)}setIn(a,b){let[c,...d]=a;if(0===d.length)this.set(c,b);else{let a=this.get(c,!0);if(e.isCollection(a))a.setIn(d,b);else if(void 0===a&&this.schema)this.set(c,g(this.schema,d,b));else throw Error(`Expected YAML collection at ${c}. Remaining path: ${d}`)}}}c.Collection=i,c.collectionFromPath=g,c.isEmptyPath=h},253074,(a,b,c)=>{"use strict";function d(a,b){return/^\n+$/.test(a)?a.substring(1):b?a.replace(/^(?! *$)/gm,b):a}c.indentComment=d,c.lineComment=(a,b,c)=>a.endsWith("\n")?d(c,b):c.includes("\n")?"\n"+d(c,b):(a.endsWith(" ")?"":" ")+c,c.stringifyComment=a=>a.replace(/^(?!$)(?: $)?/gm,"#")},859245,(a,b,c)=>{"use strict";let d="block",e="quoted";function f(a,b,c){let d=b,e=b+1,f=a[e];for(;" "===f||" "===f;)if(b<e+c)f=a[++b];else{do f=a[++b];while(f&&"\n"!==f)d=b,f=a[e=b+1]}return d}c.FOLD_BLOCK=d,c.FOLD_FLOW="flow",c.FOLD_QUOTED=e,c.foldFlowLines=function(a,b,c="flow",{indentAtStart:g,lineWidth:h=80,minContentWidth:i=20,onFold:j,onOverflow:k}={}){let l,m,n;if(!h||h<0)return a;h<i&&(i=0);let o=Math.max(1+i,1+h-b.length);if(a.length<=o)return a;let p=[],q={},r=h-b.length;"number"==typeof g&&(g>h-Math.max(2,i)?p.push(0):r=h-g);let s=!1,t=-1,u=-1,v=-1;for(c===d&&-1!==(t=f(a,t,b.length))&&(r=t+o);n=a[t+=1];){if(c===e&&"\\"===n){switch(u=t,a[t+1]){case"x":t+=3;break;case"u":t+=5;break;case"U":t+=9;break;default:t+=1}v=t}if("\n"===n)c===d&&(t=f(a,t,b.length)),r=t+b.length+o,l=void 0;else{if(" "===n&&m&&" "!==m&&"\n"!==m&&" "!==m){let b=a[t+1];b&&" "!==b&&"\n"!==b&&" "!==b&&(l=t)}if(t>=r)if(l)p.push(l),r=l+o,l=void 0;else if(c===e){for(;" "===m||" "===m;)m=n,n=a[t+=1],s=!0;let b=t>v+1?t-2:u-1;if(q[b])return a;p.push(b),q[b]=!0,r=b+o,l=void 0}else s=!0}m=n}if(s&&k&&k(),0===p.length)return a;j&&j();let w=a.slice(0,p[0]);for(let d=0;d<p.length;++d){let f=p[d],g=p[d+1]||a.length;0===f?w=`
|
|
222
216
|
${b}${a.slice(0,g)}`:(c===e&&q[f]&&(w+=`${a[f]}\\`),w+=`
|
|
223
217
|
${b}${a.slice(f+1,g)}`)}return w}},688583,(a,b,c)=>{"use strict";let d;var e=a.r(427853),f=a.r(859245);let g=(a,b)=>({indentAtStart:b?a.indent.length:a.indentAtStart,lineWidth:a.options.lineWidth,minContentWidth:a.options.minContentWidth});function h(a,b){let c=JSON.stringify(a);if(b.options.doubleQuotedAsJSON)return c;let{implicitKey:d}=b,e=b.options.doubleQuotedMinMultiLineLength,h=b.indent||(/^(%|---|\.\.\.)/m.test(a)?" ":""),i="",j=0;for(let a=0,b=c[a];b;b=c[++a])if(" "===b&&"\\"===c[a+1]&&"n"===c[a+2]&&(i+=c.slice(j,a)+"\\ ",a+=1,j=a,b="\\"),"\\"===b)switch(c[a+1]){case"u":{i+=c.slice(j,a);let b=c.substr(a+2,4);switch(b){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:"00"===b.substr(0,2)?i+="\\x"+b.substr(2):i+=c.substr(a,6)}a+=5,j=a+1}break;case"n":if(d||'"'===c[a+2]||c.length<e)a+=1;else{for(i+=c.slice(j,a)+"\n\n";"\\"===c[a+2]&&"n"===c[a+3]&&'"'!==c[a+4];)i+="\n",a+=2;i+=h," "===c[a+2]&&(i+="\\"),a+=1,j=a+1}break;default:a+=1}return i=j?i+c.slice(j):c,d?i:f.foldFlowLines(i,h,f.FOLD_QUOTED,g(b,!1))}function i(a,b){if(!1===b.options.singleQuote||b.implicitKey&&a.includes("\n")||/[ \t]\n|\n[ \t]/.test(a))return h(a,b);let c=b.indent||(/^(%|---|\.\.\.)/m.test(a)?" ":""),d="'"+a.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
224
218
|
${c}`)+"'";return b.implicitKey?d:f.foldFlowLines(d,c,f.FOLD_FLOW,g(b,!1))}function j(a,b){let c,{singleQuote:d}=b.options;if(!1===d)c=h;else{let b=a.includes('"'),e=a.includes("'");c=b&&!e?i:e&&!b?h:d?i:h}return c(a,b)}try{d=RegExp("(^|(?<!\n))\n+(?!\n|$)","g")}catch{d=/\n+(?!\n|$)/g}function k({comment:a,type:b,value:c},h,i,l){let m,n,o,p,{blockQuote:q,commentString:r,lineWidth:s}=h.options;if(!q||/\n[\t ]+$/.test(c))return j(c,h);let t=h.indent||(h.forceBlockIndent||(p=c,/^(%|---|\.\.\.)/m.test(p))?" ":""),u="literal"===q||"folded"!==q&&b!==e.Scalar.BLOCK_FOLDED&&(b===e.Scalar.BLOCK_LITERAL||!function(a,b,c){if(!b||b<0)return!1;let d=b-c,e=a.length;if(e<=d)return!1;for(let b=0,c=0;b<e;++b)if("\n"===a[b]){if(b-c>d)return!0;if(e-(c=b+1)<=d)return!1}return!0}(c,s,t.length));if(!c)return u?"|\n":">\n";for(n=c.length;n>0;--n){let a=c[n-1];if("\n"!==a&&" "!==a&&" "!==a)break}let v=c.substring(n),w=v.indexOf("\n");-1===w?m="-":c===v||w!==v.length-1?(m="+",l&&l()):m="",v&&(c=c.slice(0,-v.length),"\n"===v[v.length-1]&&(v=v.slice(0,-1)),v=v.replace(d,`$&${t}`));let x=!1,y=-1;for(o=0;o<c.length;++o){let a=c[o];if(" "===a)x=!0;else if("\n"===a)y=o;else break}let z=c.substring(0,y<o?y+1:o);z&&(c=c.substring(z.length),z=z.replace(/\n+/g,`$&${t}`));let A=t?"2":"1",B=(x?A:"")+m;if(a&&(B+=" "+r(a.replace(/ ?[\r\n]+/g," ")),i&&i()),!u){let a=c.replace(/\n+/g,"\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${t}`),d=!1,i=g(h,!0);"folded"!==q&&b!==e.Scalar.BLOCK_FOLDED&&(i.onOverflow=()=>{d=!0});let j=f.foldFlowLines(`${z}${a}${v}`,t,f.FOLD_BLOCK,i);if(!d)return`>${B}
|
|
@@ -244,4 +238,4 @@ ${b}`:c}else{let a=e.commentBefore;e.commentBefore=a?`${c}
|
|
|
244
238
|
${a}`:c}}if(b){for(let b=0;b<this.errors.length;++b)a.errors.push(this.errors[b]);for(let b=0;b<this.warnings.length;++b)a.warnings.push(this.warnings[b])}else a.errors=this.errors,a.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:l(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(a,b=!1,c=-1){for(let b of a)yield*this.next(b);yield*this.end(b,c)}*next(a){switch(d.env.LOG_STREAM&&console.dir(a,{depth:null}),a.type){case"directive":this.directives.add(a.source,(b,c,d)=>{let e=k(a);e[0]+=b,this.onError(e,"BAD_DIRECTIVE",c,d)}),this.prelude.push(a.source),this.atDirectives=!0;break;case"document":{let b=i.composeDoc(this.options,this.directives,a,this.onError);this.atDirectives&&!b.directives.docStart&&this.onError(a,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(b,!1),this.doc&&(yield this.doc),this.doc=b,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(a.source);break;case"error":{let b=a.source?`${a.message}: ${JSON.stringify(a.source)}`:a.message,c=new g.YAMLParseError(k(a),"UNEXPECTED_TOKEN",b);this.atDirectives||!this.doc?this.errors.push(c):this.doc.errors.push(c);break}case"doc-end":{if(!this.doc){this.errors.push(new g.YAMLParseError(k(a),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let b=j.resolveEnd(a.end,a.offset+a.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),b.comment){let a=this.doc.comment;this.doc.comment=a?`${a}
|
|
245
239
|
${b.comment}`:b.comment}this.doc.range[2]=b.offset;break}default:this.errors.push(new g.YAMLParseError(k(a),"UNEXPECTED_TOKEN",`Unsupported token ${a.type}`))}}*end(a=!1,b=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(a){let a=Object.assign({_directives:this.directives},this.options),c=new f.Document(void 0,a);this.atDirectives&&this.onError(b,"MISSING_CHAR","Missing directives-end indicator line"),c.range=[0,b,b],this.decorate(c,!1),yield c}}}},286888,(a,b,c)=>{"use strict";var d=a.r(871014),e=a.r(121525),f=a.r(725717),g=a.r(688583);function h(a,b){if(b)for(let c of b)switch(c.type){case"space":case"comment":a.push(c);break;case"newline":return a.push(c),!0}return!1}function i(a,b,c){switch(a.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":a.type=c,a.source=b;break;case"block-scalar":{let d=a.props.slice(1),e=b.length;for(let b of("block-scalar-header"===a.props[0].type&&(e-=a.props[0].source.length),d))b.offset+=e;delete a.props,Object.assign(a,{type:c,source:b,end:d});break}case"block-map":case"block-seq":{let d={type:"newline",offset:a.offset+b.length,indent:a.indent,source:"\n"};delete a.items,Object.assign(a,{type:c,source:b,end:[d]});break}default:{let d="indent"in a?a.indent:-1,e="end"in a&&Array.isArray(a.end)?a.end.filter(a=>"space"===a.type||"comment"===a.type||"newline"===a.type):[];for(let b of Object.keys(a))"type"!==b&&"offset"!==b&&delete a[b];Object.assign(a,{type:c,indent:d,source:b,end:e})}}}c.createScalarToken=function(a,b){let{implicitKey:c=!1,indent:d,inFlow:e=!1,offset:f=-1,type:i="PLAIN"}=b,j=g.stringifyString({type:i,value:a},{implicitKey:c,indent:d>0?" ".repeat(d):"",inFlow:e,options:{blockQuote:!0,lineWidth:-1}}),k=b.end??[{type:"newline",offset:-1,indent:d,source:"\n"}];switch(j[0]){case"|":case">":{let a=j.indexOf("\n"),b=j.substring(0,a),c=j.substring(a+1)+"\n",e=[{type:"block-scalar-header",offset:f,indent:d,source:b}];return h(e,k)||e.push({type:"newline",offset:-1,indent:d,source:"\n"}),{type:"block-scalar",offset:f,indent:d,props:e,source:c}}case'"':return{type:"double-quoted-scalar",offset:f,indent:d,source:j,end:k};case"'":return{type:"single-quoted-scalar",offset:f,indent:d,source:j,end:k};default:return{type:"scalar",offset:f,indent:d,source:j,end:k}}},c.resolveAsScalar=function(a,b=!0,c){if(a){let g=(a,b,d)=>{let e="number"==typeof a?a:Array.isArray(a)?a[0]:a.offset;if(c)c(e,b,d);else throw new f.YAMLParseError([e,e+1],b,d)};switch(a.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return e.resolveFlowScalar(a,b,g);case"block-scalar":return d.resolveBlockScalar({options:{strict:b}},a,g)}}return null},c.setScalarValue=function(a,b,c={}){let{afterKey:d=!1,implicitKey:e=!1,inFlow:f=!1,type:j}=c,k="indent"in a?a.indent:null;if(d&&"number"==typeof k&&(k+=2),!j)switch(a.type){case"single-quoted-scalar":j="QUOTE_SINGLE";break;case"double-quoted-scalar":j="QUOTE_DOUBLE";break;case"block-scalar":{let b=a.props[0];if("block-scalar-header"!==b.type)throw Error("Invalid block scalar header");j=">"===b.source[0]?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:j="PLAIN"}let l=g.stringifyString({type:j,value:b},{implicitKey:e||null===k,indent:null!==k&&k>0?" ".repeat(k):"",inFlow:f,options:{blockQuote:!0,lineWidth:-1}});switch(l[0]){case"|":case">":!function(a,b){let c=b.indexOf("\n"),d=b.substring(0,c),e=b.substring(c+1)+"\n";if("block-scalar"===a.type){let b=a.props[0];if("block-scalar-header"!==b.type)throw Error("Invalid block scalar header");b.source=d,a.source=e}else{let{offset:b}=a,c="indent"in a?a.indent:-1,f=[{type:"block-scalar-header",offset:b,indent:c,source:d}];for(let b of(h(f,"end"in a?a.end:void 0)||f.push({type:"newline",offset:-1,indent:c,source:"\n"}),Object.keys(a)))"type"!==b&&"offset"!==b&&delete a[b];Object.assign(a,{type:"block-scalar",indent:c,props:f,source:e})}}(a,l);break;case'"':i(a,l,"double-quoted-scalar");break;case"'":i(a,l,"single-quoted-scalar");break;default:i(a,l,"scalar")}}},825449,(a,b,c)=>{"use strict";function d(a){switch(a.type){case"block-scalar":{let b="";for(let c of a.props)b+=d(c);return b+a.source}case"block-map":case"block-seq":{let b="";for(let c of a.items)b+=e(c);return b}case"flow-collection":{let b=a.start.source;for(let c of a.items)b+=e(c);for(let c of a.end)b+=c.source;return b}case"document":{let b=e(a);if(a.end)for(let c of a.end)b+=c.source;return b}default:{let b=a.source;if("end"in a&&a.end)for(let c of a.end)b+=c.source;return b}}}function e({start:a,key:b,sep:c,value:f}){let g="";for(let b of a)g+=b.source;if(b&&(g+=d(b)),c)for(let a of c)g+=a.source;return f&&(g+=d(f)),g}c.stringify=a=>"type"in a?d(a):e(a)},402135,(a,b,c)=>{"use strict";let d=Symbol("break visit"),e=Symbol("skip children"),f=Symbol("remove item");function g(a,b){"type"in a&&"document"===a.type&&(a={start:a.start,value:a.value}),function a(b,c,e){let g=e(c,b);if("symbol"==typeof g)return g;for(let h of["key","value"]){let i=c[h];if(i&&"items"in i){for(let c=0;c<i.items.length;++c){let g=a(Object.freeze(b.concat([[h,c]])),i.items[c],e);if("number"==typeof g)c=g-1;else{if(g===d)return d;g===f&&(i.items.splice(c,1),c-=1)}}"function"==typeof g&&"key"===h&&(g=g(c,b))}}return"function"==typeof g?g(c,b):g}(Object.freeze([]),a,b)}g.BREAK=d,g.SKIP=e,g.REMOVE=f,g.itemAtPath=(a,b)=>{let c=a;for(let[a,d]of b){let b=c?.[a];if(!b||!("items"in b))return;c=b.items[d]}return c},g.parentCollection=(a,b)=>{let c=g.itemAtPath(a,b.slice(0,-1)),d=b[b.length-1][0],e=c?.[d];if(e&&"items"in e)return e;throw Error("Parent collection not found")},c.visit=g},2704,(a,b,c)=>{"use strict";var d=a.r(286888),e=a.r(825449),f=a.r(402135);c.createScalarToken=d.createScalarToken,c.resolveAsScalar=d.resolveAsScalar,c.setScalarValue=d.setScalarValue,c.stringify=e.stringify,c.visit=f.visit,c.BOM="\uFEFF",c.DOCUMENT="\x02",c.FLOW_END="\x18",c.SCALAR="\x1f",c.isCollection=a=>!!a&&"items"in a,c.isScalar=a=>!!a&&("scalar"===a.type||"single-quoted-scalar"===a.type||"double-quoted-scalar"===a.type||"block-scalar"===a.type),c.prettyToken=function(a){switch(a){case"\uFEFF":return"<BOM>";case"\x02":return"<DOC>";case"\x18":return"<FLOW_END>";case"\x1f":return"<SCALAR>";default:return JSON.stringify(a)}},c.tokenType=function(a){switch(a){case"\uFEFF":return"byte-order-mark";case"\x02":return"doc-mode";case"\x18":return"flow-error-end";case"\x1f":return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case"\n":case"\r\n":return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(a[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}},66326,(a,b,c)=>{"use strict";var d=a.r(2704);function e(a){switch(a){case void 0:case" ":case"\n":case"\r":case" ":return!0;default:return!1}}let f=new Set("0123456789ABCDEFabcdef"),g=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),h=new Set(",[]{}"),i=new Set(" ,[]{}\n\r "),j=a=>!a||i.has(a);c.Lexer=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(a,b=!1){if(a){if("string"!=typeof a)throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+a:a,this.lineEndPos=null}this.atEnd=!b;let c=this.next??"stream";for(;c&&(b||this.hasChars(1));)c=yield*this.parseNext(c)}atLineEnd(){let a=this.pos,b=this.buffer[a];for(;" "===b||" "===b;)b=this.buffer[++a];return!b||"#"===b||"\n"===b||"\r"===b&&"\n"===this.buffer[a+1]}charAt(a){return this.buffer[this.pos+a]}continueScalar(a){let b=this.buffer[a];if(this.indentNext>0){let c=0;for(;" "===b;)b=this.buffer[++c+a];if("\r"===b){let b=this.buffer[c+a+1];if("\n"===b||!b&&!this.atEnd)return a+c+1}return"\n"!==b&&!(c>=this.indentNext)&&(b||this.atEnd)?-1:a+c}if("-"===b||"."===b){let b=this.buffer.substr(a,3);if(("---"===b||"..."===b)&&e(this.buffer[a+3]))return -1}return a}getLine(){let a=this.lineEndPos;return(("number"!=typeof a||-1!==a&&a<this.pos)&&(a=this.buffer.indexOf("\n",this.pos),this.lineEndPos=a),-1===a)?this.atEnd?this.buffer.substring(this.pos):null:("\r"===this.buffer[a-1]&&(a-=1),this.buffer.substring(this.pos,a))}hasChars(a){return this.pos+a<=this.buffer.length}setNext(a){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=a,null}peek(a){return this.buffer.substr(this.pos,a)}*parseNext(a){switch(a){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let a=this.getLine();if(null===a)return this.setNext("stream");if(a[0]===d.BOM&&(yield*this.pushCount(1),a=a.substring(1)),"%"===a[0]){let b=a.length,c=a.indexOf("#");for(;-1!==c;){let d=a[c-1];if(" "===d||" "===d){b=c-1;break}c=a.indexOf("#",c+1)}for(;;){let c=a[b-1];if(" "===c||" "===c)b-=1;else break}let d=(yield*this.pushCount(b))+(yield*this.pushSpaces(!0));return yield*this.pushCount(a.length-d),this.pushNewline(),"stream"}if(this.atLineEnd()){let b=yield*this.pushSpaces(!0);return yield*this.pushCount(a.length-b),yield*this.pushNewline(),"stream"}return yield d.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let a=this.charAt(0);if(!a&&!this.atEnd)return this.setNext("line-start");if("-"===a||"."===a){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let a=this.peek(3);if(("---"===a||"..."===a)&&e(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,"---"===a?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!e(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[a,b]=this.peek(2);if(!b&&!this.atEnd)return this.setNext("block-start");if(("-"===a||"?"===a||":"===a)&&e(b)){let a=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=a,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let a=this.getLine();if(null===a)return this.setNext("doc");let b=yield*this.pushIndicators();switch(a[b]){case"#":yield*this.pushCount(a.length-b);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(j),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return b+=yield*this.parseBlockScalarHeader(),b+=yield*this.pushSpaces(!0),yield*this.pushCount(a.length-b),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let a,b,c=-1;do(a=yield*this.pushNewline())>0?(b=yield*this.pushSpaces(!1),this.indentValue=c=b):b=0,b+=yield*this.pushSpaces(!0);while(a+b>0)let f=this.getLine();if(null===f)return this.setNext("flow");if((-1!==c&&c<this.indentNext&&"#"!==f[0]||0===c&&(f.startsWith("---")||f.startsWith("..."))&&e(f[3]))&&(c!==this.indentNext-1||1!==this.flowLevel||"]"!==f[0]&&"}"!==f[0]))return this.flowLevel=0,yield d.FLOW_END,yield*this.parseLineStart();let g=0;for(;","===f[g];)g+=yield*this.pushCount(1),g+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(f[g+=yield*this.pushIndicators()]){case void 0:return"flow";case"#":return yield*this.pushCount(f.length-g),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(j),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let a=this.charAt(1);if(this.flowKey||e(a)||","===a)return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let a=this.charAt(0),b=this.buffer.indexOf(a,this.pos+1);if("'"===a)for(;-1!==b&&"'"===this.buffer[b+1];)b=this.buffer.indexOf("'",b+2);else for(;-1!==b;){let a=0;for(;"\\"===this.buffer[b-1-a];)a+=1;if(a%2==0)break;b=this.buffer.indexOf('"',b+1)}let c=this.buffer.substring(0,b),d=c.indexOf("\n",this.pos);if(-1!==d){for(;-1!==d;){let a=this.continueScalar(d+1);if(-1===a)break;d=c.indexOf("\n",a)}-1!==d&&(b=d-("\r"===c[d-1]?2:1))}if(-1===b){if(!this.atEnd)return this.setNext("quoted-scalar");b=this.buffer.length}return yield*this.pushToIndex(b+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let a=this.pos;for(;;){let b=this.buffer[++a];if("+"===b)this.blockScalarKeep=!0;else if(b>"0"&&b<="9")this.blockScalarIndent=Number(b)-1;else if("-"!==b)break}return yield*this.pushUntil(a=>e(a)||"#"===a)}*parseBlockScalar(){let a,b=this.pos-1,c=0;b:for(let d=this.pos;a=this.buffer[d];++d)switch(a){case" ":c+=1;break;case"\n":b=d,c=0;break;case"\r":{let a=this.buffer[d+1];if(!a&&!this.atEnd)return this.setNext("block-scalar");if("\n"===a)break}default:break b}if(!a&&!this.atEnd)return this.setNext("block-scalar");if(c>=this.indentNext){-1===this.blockScalarIndent?this.indentNext=c:this.indentNext=this.blockScalarIndent+(0===this.indentNext?1:this.indentNext);do{let a=this.continueScalar(b+1);if(-1===a)break;b=this.buffer.indexOf("\n",a)}while(-1!==b)if(-1===b){if(!this.atEnd)return this.setNext("block-scalar");b=this.buffer.length}}let e=b+1;for(a=this.buffer[e];" "===a;)a=this.buffer[++e];if(" "===a){for(;" "===a||" "===a||"\r"===a||"\n"===a;)a=this.buffer[++e];b=e-1}else if(!this.blockScalarKeep)for(;;){let a=b-1,d=this.buffer[a];"\r"===d&&(d=this.buffer[--a]);let e=a;for(;" "===d;)d=this.buffer[--a];if("\n"===d&&a>=this.pos&&a+1+c>e)b=a;else break}return yield d.SCALAR,yield*this.pushToIndex(b+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let a,b=this.flowLevel>0,c=this.pos-1,f=this.pos-1;for(;a=this.buffer[++f];)if(":"===a){let a=this.buffer[f+1];if(e(a)||b&&h.has(a))break;c=f}else if(e(a)){let d=this.buffer[f+1];if("\r"===a&&("\n"===d?(f+=1,a="\n",d=this.buffer[f+1]):c=f),"#"===d||b&&h.has(d))break;if("\n"===a){let a=this.continueScalar(f+1);if(-1===a)break;f=Math.max(f,a-2)}}else{if(b&&h.has(a))break;c=f}return a||this.atEnd?(yield d.SCALAR,yield*this.pushToIndex(c+1,!0),b?"flow":"doc"):this.setNext("plain-scalar")}*pushCount(a){return a>0?(yield this.buffer.substr(this.pos,a),this.pos+=a,a):0}*pushToIndex(a,b){let c=this.buffer.slice(this.pos,a);return c?(yield c,this.pos+=c.length,c.length):(b&&(yield""),0)}*pushIndicators(){let a=0;for(;;){switch(this.charAt(0)){case"!":a+=yield*this.pushTag(),a+=yield*this.pushSpaces(!0);continue;case"&":a+=yield*this.pushUntil(j),a+=yield*this.pushSpaces(!0);continue;case"-":case"?":case":":{let b=this.flowLevel>0,c=this.charAt(1);if(e(c)||b&&h.has(c)){b?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,a+=yield*this.pushCount(1),a+=yield*this.pushSpaces(!0);continue}}}break}return a}*pushTag(){if("<"===this.charAt(1)){let a=this.pos+2,b=this.buffer[a];for(;!e(b)&&">"!==b;)b=this.buffer[++a];return yield*this.pushToIndex(">"===b?a+1:a,!1)}{let a=this.pos+1,b=this.buffer[a];for(;b;)if(g.has(b))b=this.buffer[++a];else if("%"===b&&f.has(this.buffer[a+1])&&f.has(this.buffer[a+2]))b=this.buffer[a+=3];else break;return yield*this.pushToIndex(a,!1)}}*pushNewline(){let a=this.buffer[this.pos];return"\n"===a?yield*this.pushCount(1):"\r"===a&&"\n"===this.charAt(1)?yield*this.pushCount(2):0}*pushSpaces(a){let b,c=this.pos-1;do b=this.buffer[++c];while(" "===b||a&&" "===b)let d=c-this.pos;return d>0&&(yield this.buffer.substr(this.pos,d),this.pos=c),d}*pushUntil(a){let b=this.pos,c=this.buffer[b];for(;!a(c);)c=this.buffer[++b];return yield*this.pushToIndex(b,!1)}}},746987,(a,b,c)=>{"use strict";c.LineCounter=class{constructor(){this.lineStarts=[],this.addNewLine=a=>this.lineStarts.push(a),this.linePos=a=>{let b=0,c=this.lineStarts.length;for(;b<c;){let d=b+c>>1;this.lineStarts[d]<a?b=d+1:c=d}if(this.lineStarts[b]===a)return{line:b+1,col:1};if(0===b)return{line:0,col:a};let d=this.lineStarts[b-1];return{line:b,col:a-d+1}}}}},309575,(a,b,c)=>{"use strict";var d=a.r(605365),e=a.r(2704),f=a.r(66326);function g(a,b){for(let c=0;c<a.length;++c)if(a[c].type===b)return!0;return!1}function h(a){for(let b=0;b<a.length;++b)switch(a[b].type){case"space":case"comment":case"newline":break;default:return b}return -1}function i(a){switch(a?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function j(a){switch(a.type){case"document":return a.start;case"block-map":{let b=a.items[a.items.length-1];return b.sep??b.start}case"block-seq":return a.items[a.items.length-1].start;default:return[]}}function k(a){if(0===a.length)return[];let b=a.length;b:for(;--b>=0;)switch(a[b].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break b}for(;a[++b]?.type==="space";);return a.splice(b,a.length)}function l(a,b){if(b.length<1e5)Array.prototype.push.apply(a,b);else for(let c=0;c<b.length;++c)a.push(b[c])}function m(a){if("flow-seq-start"===a.start.type)for(let b of a.items)!b.sep||b.value||g(b.start,"explicit-key-ind")||g(b.sep,"map-value-ind")||(b.key&&(b.value=b.key),delete b.key,i(b.value)?b.value.end?l(b.value.end,b.sep):b.value.end=b.sep:l(b.start,b.sep),delete b.sep)}c.Parser=class{constructor(a){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new f.Lexer,this.onNewLine=a}*parse(a,b=!1){for(let c of(this.onNewLine&&0===this.offset&&this.onNewLine(0),this.lexer.lex(a,b)))yield*this.next(c);b||(yield*this.end())}*next(a){if(this.source=a,d.env.LOG_TOKENS&&console.log("|",e.prettyToken(a)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=a.length;return}let b=e.tokenType(a);if(b)if("scalar"===b)this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=b,yield*this.step(),b){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+a.length);break;case"space":this.atNewLine&&" "===a[0]&&(this.indent+=a.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=a.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=a.length}else{let b=`Not a YAML token: ${a}`;yield*this.pop({type:"error",offset:this.offset,message:b,source:a}),this.offset+=a.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let a=this.peek(1);if("doc-end"===this.type&&a?.type!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!a)return yield*this.stream();switch(a.type){case"document":return yield*this.document(a);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(a);case"block-scalar":return yield*this.blockScalar(a);case"block-map":return yield*this.blockMap(a);case"block-seq":return yield*this.blockSequence(a);case"flow-collection":return yield*this.flowCollection(a);case"doc-end":return yield*this.documentEnd(a)}yield*this.pop()}peek(a){return this.stack[this.stack.length-a]}*pop(a){let b=a??this.stack.pop();if(b)if(0===this.stack.length)yield b;else{let a=this.peek(1);switch("block-scalar"===b.type?b.indent="indent"in a?a.indent:0:"flow-collection"===b.type&&"document"===a.type&&(b.indent=0),"flow-collection"===b.type&&m(b),a.type){case"document":a.value=b;break;case"block-scalar":a.props.push(b);break;case"block-map":{let c=a.items[a.items.length-1];if(c.value){a.items.push({start:[],key:b,sep:[]}),this.onKeyLine=!0;return}if(c.sep)c.value=b;else{Object.assign(c,{key:b,sep:[]}),this.onKeyLine=!c.explicitKey;return}break}case"block-seq":{let c=a.items[a.items.length-1];c.value?a.items.push({start:[],value:b}):c.value=b;break}case"flow-collection":{let c=a.items[a.items.length-1];!c||c.value?a.items.push({start:[],key:b,sep:[]}):c.sep?c.value=b:Object.assign(c,{key:b,sep:[]});return}default:yield*this.pop(),yield*this.pop(b)}if(("document"===a.type||"block-map"===a.type||"block-seq"===a.type)&&("block-map"===b.type||"block-seq"===b.type)){let c=b.items[b.items.length-1];c&&!c.sep&&!c.value&&c.start.length>0&&-1===h(c.start)&&(0===b.indent||c.start.every(a=>"comment"!==a.type||a.indent<b.indent))&&("document"===a.type?a.end=c.start:a.items.push({start:c.start}),b.items.splice(-1,1))}}else yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let a={type:"document",offset:this.offset,start:[]};"doc-start"===this.type&&a.start.push(this.sourceToken),this.stack.push(a);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(a){if(a.value)return yield*this.lineEnd(a);switch(this.type){case"doc-start":-1!==h(a.start)?(yield*this.pop(),yield*this.step()):a.start.push(this.sourceToken);return;case"anchor":case"tag":case"space":case"comment":case"newline":a.start.push(this.sourceToken);return}let b=this.startBlockValue(a);b?this.stack.push(b):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(a){if("map-value-ind"===this.type){let b,c=k(j(this.peek(2)));a.end?((b=a.end).push(this.sourceToken),delete a.end):b=[this.sourceToken];let d={type:"block-map",offset:a.offset,indent:a.indent,items:[{start:c,key:a,sep:b}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=d}else yield*this.lineEnd(a)}*blockScalar(a){switch(this.type){case"space":case"comment":case"newline":a.props.push(this.sourceToken);return;case"scalar":if(a.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let a=this.source.indexOf("\n")+1;for(;0!==a;)this.onNewLine(this.offset+a),a=this.source.indexOf("\n",a)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(a){let b=a.items[a.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,b.value){let c="end"in b.value?b.value.end:void 0,d=Array.isArray(c)?c[c.length-1]:void 0;d?.type==="comment"?c?.push(this.sourceToken):a.items.push({start:[this.sourceToken]})}else b.sep?b.sep.push(this.sourceToken):b.start.push(this.sourceToken);return;case"space":case"comment":if(b.value)a.items.push({start:[this.sourceToken]});else if(b.sep)b.sep.push(this.sourceToken);else{if(this.atIndentedComment(b.start,a.indent)){let c=a.items[a.items.length-2],d=c?.value?.end;if(Array.isArray(d)){l(d,b.start),d.push(this.sourceToken),a.items.pop();return}}b.start.push(this.sourceToken)}return}if(this.indent>=a.indent){let c=!this.onKeyLine&&this.indent===a.indent,d=c&&(b.sep||b.explicitKey)&&"seq-item-ind"!==this.type,e=[];if(d&&b.sep&&!b.value){let c=[];for(let d=0;d<b.sep.length;++d){let e=b.sep[d];switch(e.type){case"newline":c.push(d);break;case"space":break;case"comment":e.indent>a.indent&&(c.length=0);break;default:c.length=0}}c.length>=2&&(e=b.sep.splice(c[1]))}switch(this.type){case"anchor":case"tag":d||b.value?(e.push(this.sourceToken),a.items.push({start:e}),this.onKeyLine=!0):b.sep?b.sep.push(this.sourceToken):b.start.push(this.sourceToken);return;case"explicit-key-ind":b.sep||b.explicitKey?d||b.value?(e.push(this.sourceToken),a.items.push({start:e,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}):(b.start.push(this.sourceToken),b.explicitKey=!0),this.onKeyLine=!0;return;case"map-value-ind":if(b.explicitKey)if(b.sep)if(b.value)a.items.push({start:[],key:null,sep:[this.sourceToken]});else if(g(b.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:e,key:null,sep:[this.sourceToken]}]});else if(i(b.key)&&!g(b.sep,"newline")){let a=k(b.start),c=b.key,d=b.sep;d.push(this.sourceToken),delete b.key,delete b.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:c,sep:d}]})}else e.length>0?b.sep=b.sep.concat(e,this.sourceToken):b.sep.push(this.sourceToken);else if(g(b.start,"newline"))Object.assign(b,{key:null,sep:[this.sourceToken]});else{let a=k(b.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else b.sep?b.value||d?a.items.push({start:e,key:null,sep:[this.sourceToken]}):g(b.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):b.sep.push(this.sourceToken):Object.assign(b,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let c=this.flowScalar(this.type);d||b.value?(a.items.push({start:e,key:c,sep:[]}),this.onKeyLine=!0):b.sep?this.stack.push(c):(Object.assign(b,{key:c,sep:[]}),this.onKeyLine=!0);return}default:{let d=this.startBlockValue(a);if(d){if("block-seq"===d.type){if(!b.explicitKey&&b.sep&&!g(b.sep,"newline"))return void(yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source}))}else c&&a.items.push({start:e});this.stack.push(d);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(a){let b=a.items[a.items.length-1];switch(this.type){case"newline":if(b.value){let c="end"in b.value?b.value.end:void 0,d=Array.isArray(c)?c[c.length-1]:void 0;d?.type==="comment"?c?.push(this.sourceToken):a.items.push({start:[this.sourceToken]})}else b.start.push(this.sourceToken);return;case"space":case"comment":if(b.value)a.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(b.start,a.indent)){let c=a.items[a.items.length-2],d=c?.value?.end;if(Array.isArray(d)){l(d,b.start),d.push(this.sourceToken),a.items.pop();return}}b.start.push(this.sourceToken)}return;case"anchor":case"tag":if(b.value||this.indent<=a.indent)break;b.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==a.indent)break;b.value||g(b.start,"seq-item-ind")?a.items.push({start:[this.sourceToken]}):b.start.push(this.sourceToken);return}if(this.indent>a.indent){let b=this.startBlockValue(a);if(b)return void this.stack.push(b)}yield*this.pop(),yield*this.step()}*flowCollection(a){let b=a.items[a.items.length-1];if("flow-error-end"===this.type){let a;do yield*this.pop(),a=this.peek(1);while(a?.type==="flow-collection")}else if(0===a.end.length){switch(this.type){case"comma":case"explicit-key-ind":!b||b.sep?a.items.push({start:[this.sourceToken]}):b.start.push(this.sourceToken);return;case"map-value-ind":!b||b.value?a.items.push({start:[],key:null,sep:[this.sourceToken]}):b.sep?b.sep.push(this.sourceToken):Object.assign(b,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!b||b.value?a.items.push({start:[this.sourceToken]}):b.sep?b.sep.push(this.sourceToken):b.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let c=this.flowScalar(this.type);!b||b.value?a.items.push({start:[],key:c,sep:[]}):b.sep?this.stack.push(c):Object.assign(b,{key:c,sep:[]});return}case"flow-map-end":case"flow-seq-end":a.end.push(this.sourceToken);return}let c=this.startBlockValue(a);c?this.stack.push(c):(yield*this.pop(),yield*this.step())}else{let b=this.peek(2);if("block-map"!==b.type||("map-value-ind"!==this.type||b.indent!==a.indent)&&("newline"!==this.type||b.items[b.items.length-1].sep))if("map-value-ind"===this.type&&"flow-collection"!==b.type){let c=k(j(b));m(a);let d=a.end.splice(1,a.end.length);d.push(this.sourceToken);let e={type:"block-map",offset:a.offset,indent:a.indent,items:[{start:c,key:a,sep:d}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=e}else yield*this.lineEnd(a);else yield*this.pop(),yield*this.step()}}flowScalar(a){if(this.onNewLine){let a=this.source.indexOf("\n")+1;for(;0!==a;)this.onNewLine(this.offset+a),a=this.source.indexOf("\n",a)+1}return{type:a,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(a){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let b=k(j(a));return b.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:b,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let b=k(j(a));return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:b,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(a,b){return"comment"===this.type&&!(this.indent<=b)&&a.every(a=>"newline"===a.type||"space"===a.type)}*documentEnd(a){"doc-mode"!==this.type&&(a.end?a.end.push(this.sourceToken):a.end=[this.sourceToken],"newline"===this.type&&(yield*this.pop()))}*lineEnd(a){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;default:a.end?a.end.push(this.sourceToken):a.end=[this.sourceToken],"newline"===this.type&&(yield*this.pop())}}}},5013,(a,b,c)=>{"use strict";var d=a.r(719662),e=a.r(885774),f=a.r(725717),g=a.r(918114),h=a.r(927267),i=a.r(746987),j=a.r(309575);function k(a){let b=!1!==a.prettyErrors;return{lineCounter:a.lineCounter||b&&new i.LineCounter||null,prettyErrors:b}}function l(a,b={}){let{lineCounter:c,prettyErrors:e}=k(b),g=new j.Parser(c?.addNewLine),h=new d.Composer(b),i=null;for(let b of h.compose(g.parse(a),!0,a.length))if(i){if("silent"!==i.options.logLevel){i.errors.push(new f.YAMLParseError(b.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}}else i=b;return e&&c&&(i.errors.forEach(f.prettifyError(a,c)),i.warnings.forEach(f.prettifyError(a,c))),i}c.parse=function(a,b,c){let d;"function"==typeof b?d=b:void 0===c&&b&&"object"==typeof b&&(c=b);let e=l(a,c);if(!e)return null;if(e.warnings.forEach(a=>g.warn(e.options.logLevel,a)),e.errors.length>0)if("silent"!==e.options.logLevel)throw e.errors[0];else e.errors=[];return e.toJS(Object.assign({reviver:d},c))},c.parseAllDocuments=function(a,b={}){let{lineCounter:c,prettyErrors:e}=k(b),g=new j.Parser(c?.addNewLine),h=new d.Composer(b),i=Array.from(h.compose(g.parse(a)));if(e&&c)for(let b of i)b.errors.forEach(f.prettifyError(a,c)),b.warnings.forEach(f.prettifyError(a,c));return i.length>0?i:Object.assign([],{empty:!0},h.streamInfo())},c.parseDocument=l,c.stringify=function(a,b,c){let d=null;if("function"==typeof b||Array.isArray(b)?d=b:void 0===c&&b&&(c=b),"string"==typeof c&&(c=c.length),"number"==typeof c){let a=Math.round(c);c=a<1?void 0:a>8?{indent:8}:{indent:a}}if(void 0===a){let{keepUndefined:a}=c??b??{};if(!a)return}return h.isDocument(a)&&!d?a.toString(c):new e.Document(a,d,c).toString(c)}},622650,(a,b,c)=>{"use strict";var d=a.r(719662),e=a.r(885774),f=a.r(798027),g=a.r(725717),h=a.r(421562),i=a.r(927267),j=a.r(417602),k=a.r(427853),l=a.r(147544),m=a.r(907621),n=a.r(2704),o=a.r(66326),p=a.r(746987),q=a.r(309575),r=a.r(5013),s=a.r(685927);c.Composer=d.Composer,c.Document=e.Document,c.Schema=f.Schema,c.YAMLError=g.YAMLError,c.YAMLParseError=g.YAMLParseError,c.YAMLWarning=g.YAMLWarning,c.Alias=h.Alias,c.isAlias=i.isAlias,c.isCollection=i.isCollection,c.isDocument=i.isDocument,c.isMap=i.isMap,c.isNode=i.isNode,c.isPair=i.isPair,c.isScalar=i.isScalar,c.isSeq=i.isSeq,c.Pair=j.Pair,c.Scalar=k.Scalar,c.YAMLMap=l.YAMLMap,c.YAMLSeq=m.YAMLSeq,c.CST=n,c.Lexer=o.Lexer,c.LineCounter=p.LineCounter,c.Parser=q.Parser,c.parse=r.parse,c.parseAllDocuments=r.parseAllDocuments,c.parseDocument=r.parseDocument,c.stringify=r.stringify,c.visit=s.visit,c.visitAsync=s.visitAsync}];
|
|
246
240
|
|
|
247
|
-
//# sourceMappingURL=
|
|
241
|
+
//# sourceMappingURL=_0u2jv_x._.js.map
|