thursday-agent 0.4.0 → 0.6.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 +3 -2
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.json +8 -1
- package/.next/routes-manifest.json +18 -6
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- 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 +13 -13
- package/.next/server/app/_not-found.segments/_full.segment.rsc +13 -13
- 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 +10 -6
- package/.next/server/app/api/artifact/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/files/route.js +6 -5
- package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/route.js +8 -8
- package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/route.js +8 -8
- package/.next/server/app/api/bot/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/thread/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/thread/[id]/route.js +15 -0
- package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/bot/thread/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/bot/thread/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/thread/route.js +15 -0
- package/.next/server/app/api/bot/thread/route.js.nft.json +1 -0
- package/.next/server/app/api/bot/thread/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/config/route.js +7 -7
- package/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/server/app/api/events/route.js +3 -3
- package/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/server/app/api/file/[...path]/route.js +5 -5
- package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/catalog/route.js +8 -8
- package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/credits/route.js +8 -8
- package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/route.js +8 -8
- package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/subscription/route.js +8 -8
- package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/[name]/route.js +6 -6
- package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/oauth/callback/route.js +4 -4
- package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +6 -6
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/tools/route.js +6 -6
- package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/edit/route.js +13 -13
- package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/route.js +7 -6
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[source]/[name]/route.js +6 -6
- package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route.js +6 -6
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/call/route.js +10 -11
- package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/skills/route.js +10 -11
- package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/tool-call/route.js +15 -15
- package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
- package/.next/server/app/api/workspace/missing/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/workspace/missing/route/build-manifest.json +12 -0
- package/.next/server/app/api/workspace/missing/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/workspace/missing/route.js +12 -0
- package/.next/server/app/api/workspace/missing/route.js.map +5 -0
- package/.next/server/app/api/workspace/missing/route.js.nft.json +1 -0
- package/.next/server/app/api/workspace/missing/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/workspace/route.js +5 -4
- 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 +4 -3
- 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.nft.json +1 -1
- package/.next/server/app/page/server-reference-manifest.json +67 -45
- package/.next/server/app/page.js +10 -9
- 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 +3 -2
- package/.next/server/chunks/[root-of-the-server]__02846fb._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__049f521._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__05luceg._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__06--3q3._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__07bnah_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__08eae20._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0_ue8oe._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0c9fgca._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__0g-ueei._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0h_x6q6._.js +5 -0
- package/.next/server/chunks/{[root-of-the-server]__0pa2n68._.js → [root-of-the-server]__0kxrvxf._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__0q0vvt2._.js → [root-of-the-server]__0ov3iir._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__0qwtlmx._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0sm5xvm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0ye3da2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0zp35ul._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__144u9d_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__18-2tsq._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1e-ci13._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1e2365e._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__1fix932._.js +8 -0
- package/.next/server/chunks/{[root-of-the-server]__0ce8nf8._.js → [root-of-the-server]__1g3t7vn._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__1kp-83u._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1kv8p3e._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +2 -3
- package/.next/server/chunks/_02szwk8._.js +5 -0
- package/.next/server/chunks/_05h2cii._.js +1 -1
- package/.next/server/chunks/_06c9kie._.js +216 -0
- package/.next/server/chunks/{_1x6kd1r._.js → _07y2gj-._.js} +1 -1
- package/.next/server/chunks/_0a43a-0._.js +3 -0
- package/.next/server/chunks/_0bujjey._.js +5 -0
- package/.next/server/chunks/_0c9j6rb._.js +1 -1
- package/.next/server/chunks/_0dkd549._.js +3 -0
- package/.next/server/chunks/_0ej1kvv._.js +3 -0
- package/.next/server/chunks/_0f6ts7z._.js +3 -0
- package/.next/server/chunks/_0gm9hyv._.js +55 -0
- package/.next/server/chunks/_0i55en5._.js +25 -0
- package/.next/server/chunks/_0k50n27._.js +18 -0
- package/.next/server/chunks/_0khihjk._.js +3 -3
- package/.next/server/chunks/_0n74zsf._.js +5 -5
- package/.next/server/chunks/_0nvm9ef._.js +3 -0
- package/.next/server/chunks/_0p56fn0._.js +3 -0
- package/.next/server/chunks/_0recufk._.js +1 -1
- package/.next/server/chunks/_0xbkz10._.js +3 -0
- package/.next/server/chunks/_10tkr26._.js +3 -0
- package/.next/server/chunks/{_0ioz3nd._.js → _11u2kp7._.js} +1 -1
- package/.next/server/chunks/_11ujpya._.js +3 -0
- package/.next/server/chunks/_127nx_p._.js +5 -0
- package/.next/server/chunks/_17l5ygt._.js +1 -1
- package/.next/server/chunks/_19uauj6._.js +3 -0
- package/.next/server/chunks/_1_5mnq4._.js +5 -5
- package/.next/server/chunks/_1abl6t9._.js +55 -0
- package/.next/server/chunks/_1d0j961._.js +3 -3
- package/.next/server/chunks/_1dbixxz._.js +3 -0
- package/.next/server/chunks/_1dc_d1q._.js +98 -0
- package/.next/server/chunks/_1drgfx4._.js +5 -5
- package/.next/server/chunks/_1e48czp._.js +3 -3
- package/.next/server/chunks/_1f31u5x._.js +5 -0
- package/.next/server/chunks/_1kg70wc._.js +3 -3
- package/.next/server/chunks/_1klbcft._.js +5 -0
- package/.next/server/chunks/_1krd9rf._.js +4 -1
- package/.next/server/chunks/_1kwmzab._.js +3 -0
- package/.next/server/chunks/{_1pf4qe-._.js → _1oxj9fa._.js} +1 -1
- package/.next/server/chunks/{_1f46eie._.js → _1pcmdbb._.js} +1 -1
- package/.next/server/chunks/_1qgix-j._.js +3 -0
- package/.next/server/chunks/{lib_logger_ts_1exwjut._.js → _1rpchta._.js} +5 -5
- package/.next/server/chunks/_1vsej-s._.js +5 -0
- package/.next/server/chunks/_1yx0p_s._.js +5 -0
- package/.next/server/chunks/{_0rnf-6n._.js → _20fsr_z._.js} +6 -6
- package/.next/server/chunks/_2128hkj._.js +5 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_thread_[id]_route_actions_1fstjn2.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_thread_route_actions_003ccso.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_missing_route_actions_1fidi6p.js +3 -0
- package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
- package/.next/server/chunks/features_0-cnt0l._.js +4 -0
- package/.next/server/chunks/features_0hdaci0._.js +4 -0
- package/.next/server/chunks/features_1e39j7-._.js +8 -0
- package/.next/server/chunks/features_bot_bot_query_ts_12mgkl2._.js +1 -1
- package/.next/server/chunks/features_memory_1uqvksn._.js +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0r28-sm._.js → node_modules_consola_dist_chunks_prompt_mjs_0a7-pbw._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0v_7drq._.js → node_modules_consola_dist_chunks_prompt_mjs_0gzvgfv._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0i7cvml._.js → node_modules_consola_dist_chunks_prompt_mjs_107pxfn._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0icqaqw._.js → node_modules_consola_dist_chunks_prompt_mjs_15hbel8._.js} +1 -1
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_18i-23e._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1bewgf3._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1kipdeo._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1nlww1m._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1q77nfx._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1xqdzx_._.js +3 -0
- package/.next/server/chunks/{node_modules_zod_v4_1801ax7._.js → node_modules_zod_v4_0lkux5-._.js} +2 -2
- package/.next/server/chunks/{node_modules_zod_v4_1cha_bw._.js → node_modules_zod_v4_1jmr9cq._.js} +2 -2
- package/.next/server/chunks/{node_modules_zod_v4_0ubdflj._.js → node_modules_zod_v4_1yrxmek._.js} +2 -2
- package/.next/server/chunks/node_modules_zod_v4_classic_errors_0tp0y-q.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__09q9med._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0bxsfyn._.js +101 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0lyi8i2._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__16jc196._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__172cq4x._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__18dthbp._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__18e68w8._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1fll8dc._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__1nygfik._.js +5 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1sdphb0._.js +8 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1waa3rc._.js +100 -0
- package/.next/server/chunks/ssr/_00rehl_._.js +3 -0
- package/.next/server/chunks/ssr/{_1lz_cq2._.js → _02oc_h5._.js} +76 -89
- package/.next/server/chunks/ssr/_03_928f._.js +3 -0
- package/.next/server/chunks/ssr/_05yghx6._.js +3 -0
- package/.next/server/chunks/ssr/_08c4z-9._.js +3 -0
- package/.next/server/chunks/ssr/_0_qfdlw._.js +4 -0
- package/.next/server/chunks/ssr/_0c9e5w6._.js +9 -0
- package/.next/server/chunks/ssr/{_0s99bgb._.js → _0dh2e1j._.js} +9 -3
- package/.next/server/chunks/ssr/_0dr-ddg._.js +3 -0
- package/.next/server/chunks/ssr/_0eaog6_._.js +3 -0
- package/.next/server/chunks/ssr/_0evkpto._.js +3 -0
- package/.next/server/chunks/ssr/_0g_rlog._.js +3 -0
- package/.next/server/chunks/ssr/_0geg212._.js +3 -0
- package/.next/server/chunks/ssr/{_1gd8q8l._.js → _0hxt2ul._.js} +2 -2
- package/.next/server/chunks/ssr/_0i_6q1w._.js +2 -2
- package/.next/server/chunks/ssr/_0lu1n_x._.js +1 -1
- package/.next/server/chunks/ssr/{_15j2_8f._.js → _0wzaht-._.js} +2 -2
- package/.next/server/chunks/ssr/_0z-g0uy._.js +3 -0
- package/.next/server/chunks/ssr/_123ttsf._.js +3 -0
- package/.next/server/chunks/ssr/_123y-ah._.js +3 -0
- package/.next/server/chunks/ssr/_12w42gi._.js +3 -0
- package/.next/server/chunks/ssr/_161kqav._.js +3 -0
- package/.next/server/chunks/ssr/{_0ap2fzn._.js → _16c6_xm._.js} +2 -2
- package/.next/server/chunks/ssr/_18opah7._.js +3 -0
- package/.next/server/chunks/ssr/_18xqmny._.js +3 -0
- package/.next/server/chunks/ssr/_1_krfph._.js +3 -0
- package/.next/server/chunks/ssr/{_1-_etts._.js → _1anqots._.js} +2 -2
- package/.next/server/chunks/ssr/_1ey7qn-._.js +70 -0
- package/.next/server/chunks/ssr/_1g9vs7q._.js +3 -0
- package/.next/server/chunks/ssr/_1jmz33w._.js +3 -0
- package/.next/server/chunks/ssr/{_0n3toaw._.js → _1k0spz7._.js} +2 -2
- package/.next/server/chunks/ssr/_1rgtxhr._.js +5 -0
- package/.next/server/chunks/ssr/_1slp25y._.js +3 -0
- package/.next/server/chunks/ssr/{_1fojd41._.js → _1x9pskj._.js} +3 -3
- package/.next/server/chunks/ssr/_1y6b5mr._.js +101 -0
- package/.next/server/chunks/ssr/_1ztk7p6._.js +7 -0
- package/.next/server/chunks/ssr/components_ui_tabs_tsx_0ej40b4._.js +3 -0
- package/.next/server/chunks/ssr/features_bot_thread_query_ts_023eklt._.js +4 -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/{_1-teee5._.js → lib_logger_ts_0-olsze._.js} +2 -7
- package/.next/server/chunks/ssr/{node_modules_0cxaxk9._.js → node_modules_00_51_v._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_04jf_m8._.js → node_modules_022sipm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0g7fzk3._.js → node_modules_0332gw4._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1cx_ql6._.js → node_modules_04vxchl._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1vh5ntv._.js → node_modules_0746rzi._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0yugy6m._.js → node_modules_0d5uzof._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_09q35v_._.js → node_modules_0exkwcm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_08dhkiq._.js → node_modules_0fr-ml8._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_14q6g4n._.js → node_modules_0mxvg8h._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0arus10._.js → node_modules_0qapgjr._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1eg7m6c._.js → node_modules_0qbfyjh._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1cz2hle._.js → node_modules_0t-9nup._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_17bwo43._.js → node_modules_0tusx4d._.js} +3 -3
- package/.next/server/chunks/ssr/{node_modules_1efrqxi._.js → node_modules_0vsxbzp._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0_-_a--._.js → node_modules_0vv0-fg._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1gdh31p._.js → node_modules_0wsvp00._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1hpopmo._.js → node_modules_1-urho9._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1_pc9kq._.js → node_modules_16pi_dd._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_00etblx._.js → node_modules_1d53yiq._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1aaxuef._.js → node_modules_1g1eihe._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_198nmll._.js → node_modules_1gpednh._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0pvd7q-._.js → node_modules_1gu1pph._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0b__sgl._.js → node_modules_1he1w8_._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1qpjvy5._.js → node_modules_1lnjapm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0940ns5._.js → node_modules_1lynj9m._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0x3-ply._.js → node_modules_1seuurl._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules_14om4ar._.js → node_modules_1u6w1pb._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0had7xd._.js → node_modules_1xn6saw._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1b748ic._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_067_exa._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1z4hm5e._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0nrrdaq._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@vercel_oidc_dist_06mk8id._.js → node_modules_@vercel_oidc_dist_21a5haa._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_trash_mjs_0px2gzr._.js +3 -0
- 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 +68 -46
- package/.next/static/chunks/0dr16v67vj4n7.js +2 -0
- package/.next/static/chunks/0g4b348l0pve7.js +1 -0
- package/.next/static/chunks/0joan-69kbspd.js +1 -0
- package/.next/static/chunks/0vlgzqo9ka90v.js +1 -0
- package/.next/static/chunks/0zrupxgci5gqc.js +1 -0
- package/.next/static/chunks/10k2xvap03z20.css +1 -0
- package/.next/static/chunks/18mkhstgiqcbt.js +1 -0
- package/.next/static/chunks/{15m575979un5f.js → 1i-u2wzub_to1.js} +2 -2
- package/.next/static/chunks/1kp5nfp06nj9h.js +5 -0
- package/.next/static/chunks/1ohslk4568tm3.js +1 -0
- package/.next/static/chunks/1sbmwswc9k2-1.js +1 -0
- package/.next/static/chunks/1t9qms5pwwa3n.js +1 -0
- package/.next/static/chunks/1vj_5bnbxx84e.js +1 -0
- package/.next/static/chunks/1vqezbhjm3goq.js +1 -0
- package/.next/static/chunks/{3akmqm77muj4-.js → 1wlo979mx-y3w.js} +1 -1
- package/.next/static/chunks/26ql4y-43xwhp.js +1 -0
- package/.next/static/chunks/{0fl3gwe4-l6tz.js → 2_pnccjp6j1ca.js} +1 -1
- package/.next/static/chunks/2a51-ywz9b2a3.js +1 -0
- package/.next/static/chunks/2fvdgxih7x7hr.js +1 -0
- package/.next/static/chunks/2jlz8zp4jax_m.js +18 -0
- package/.next/static/chunks/2nvepds1fu2ux.js +1 -0
- package/.next/static/chunks/3addj3i4-izma.js +1 -0
- package/.next/static/chunks/3bfwpww3m3x4u.js +1 -0
- package/.next/static/chunks/3gfh7nxwusbt0.js +1 -0
- package/.next/static/chunks/3gwa44cvz4qoi.js +1 -0
- package/.next/static/chunks/{38gweqdo4jpfj.js → 3izg0a3k87q1-.js} +5 -5
- package/.next/static/chunks/3zk6q3-3f9swq.js +99 -0
- package/.next/static/chunks/3zkg5iup3v4a2.js +12 -0
- package/.next/static/chunks/405m0bqtoihev.js +1 -0
- package/.next/static/chunks/42wcg3wfg_m_p.js +1 -0
- package/README.md +27 -216
- package/app/api/events/app-event.ts +6 -4
- package/app/api/query-key.ts +25 -16
- package/bin/database.mjs +37 -0
- package/bin/thursday.mjs +44 -28
- package/components/ui/custom-icon.tsx +0 -60
- package/components/ui/radio-group.tsx +37 -0
- package/components/ui/shiny-text.tsx +33 -6
- package/database/migrations/{20260910173049_numerous_spirit → 20260916145701_clever_multiple_man}/migration.sql +80 -24
- package/database/migrations/{20260910173049_numerous_spirit → 20260916145701_clever_multiple_man}/snapshot.json +689 -110
- package/database/migrations/20260916160713_thread_cancelled/migration.sql +2 -0
- package/database/migrations/{20260911030320_opposite_jack_power → 20260916160713_thread_cancelled}/snapshot.json +706 -84
- package/docs/how-it-works.md +39 -36
- package/docs/images/keeps-going.png +0 -0
- package/docs/images/two-minds.png +0 -0
- package/docs/live-calls.md +231 -0
- package/docs/thread-rooms.md +71 -0
- package/features/ai/chatgpt.ts +1 -2
- package/features/ai/live.schema.ts +128 -0
- package/features/ai/load-tools.ts +148 -77
- package/features/ai/model.schema.ts +2 -120
- package/features/ai/model.ts +52 -88
- package/features/ai/prompts/bot.prompt.ts +91 -214
- package/features/ai/prompts/live.prompt.ts +265 -0
- package/features/ai/prompts/prompt-helper.ts +91 -32
- package/features/ai/prompts/thursday.prompt.ts +125 -172
- package/features/ai/tools/bot.tool.ts +38 -145
- package/features/ai/tools/call.tool.ts +1 -1
- package/features/ai/tools/connected.ts +5 -3
- package/features/ai/tools/mcp.tool.ts +7 -4
- package/features/ai/tools/memory.tool.ts +35 -31
- package/features/ai/tools/skills.tool.ts +36 -14
- package/features/ai/tools/studio.tool.ts +26 -21
- package/features/ai/tools/tool-name.ts +2 -5
- package/features/ai/tools/workspace.tool.ts +33 -10
- package/features/artifact/artifact.action.ts +2 -2
- package/features/artifact/artifact.query.ts +112 -61
- package/features/artifact/artifact.schema.ts +8 -6
- package/features/artifact/components/artifact-setting.tsx +83 -33
- package/features/bot/bot.action.ts +43 -36
- package/features/bot/bot.memory.ts +137 -20
- package/features/bot/bot.query.ts +28 -11
- package/features/bot/bot.run.ts +299 -636
- package/features/bot/bot.runner.ts +468 -844
- package/features/bot/bot.schema.ts +93 -82
- package/features/bot/bot.seed.ts +141 -64
- package/features/bot/components/bot-mark.tsx +324 -232
- package/features/bot/components/bot-room.tsx +1613 -697
- package/features/bot/components/bot-roster.tsx +8 -13
- package/features/bot/components/bot-setting.tsx +58 -42
- package/features/bot/components/bot-tool.tsx +55 -87
- package/features/bot/components/mark-palette.tsx +35 -32
- package/features/bot/components/path-chips.tsx +33 -3
- package/features/bot/components/thread-badge.tsx +34 -0
- package/features/bot/components/thread-reply.tsx +639 -0
- package/features/bot/components/thread-setting.tsx +674 -0
- package/features/bot/mark.const.ts +79 -31
- package/features/bot/room.query.ts +889 -0
- package/features/bot/room.schema.ts +64 -0
- package/features/bot/seed-bots.ts +2 -1
- package/features/bot/thread.query.ts +971 -0
- package/features/bot/thread.store.ts +587 -0
- package/features/config/components/voice-key.tsx +113 -88
- package/features/config/config.const.ts +5 -9
- package/features/connectors/mcp.schema.ts +0 -2
- package/features/intro/components/intro.tsx +169 -139
- package/features/memory/components/memory-setting.tsx +2 -7
- package/features/memory/memory.schema.ts +14 -23
- package/features/settings/components/setting-ui.tsx +0 -44
- package/features/settings/components/settings.tsx +12 -12
- package/features/settings/settings.alert.ts +3 -3
- package/features/settings/settings.store.ts +1 -1
- package/features/skills/skills.schema.ts +0 -2
- package/features/thursday/components/ascii-field.tsx +24 -44
- package/features/thursday/components/ascii-orb.tsx +359 -358
- package/features/thursday/components/call-log.tsx +46 -44
- package/features/thursday/components/face.tsx +35 -10
- package/features/thursday/components/tab-state.tsx +3 -3
- package/features/thursday/components/thursday-mark.tsx +1 -0
- package/features/thursday/components/thursday-setting.tsx +631 -332
- package/features/thursday/components/thursday.tsx +106 -41
- package/features/thursday/components/voice-picker.tsx +255 -0
- package/features/thursday/thursday.action.ts +94 -68
- package/features/thursday/thursday.query.ts +49 -30
- package/features/thursday/thursday.schema.ts +27 -30
- package/features/thursday/thursday.store.ts +11 -7
- package/features/thursday/tool-call.ts +3 -3
- package/features/thursday/tool-line.ts +5 -3
- package/features/thursday/use-thursday.ts +725 -450
- package/features/workspace/workspace.query.ts +17 -0
- package/features/workspace/workspace.ts +103 -50
- package/lib/live/live.schema.ts +47 -0
- package/lib/live/live.server.ts +155 -0
- package/lib/live/live.session.ts +574 -0
- package/lib/{realtime/realtime.tap.ts → live/live.tap.ts} +41 -12
- package/lib/live/live.transport.ts +152 -0
- package/lib/protocol/use-server-pages.ts +9 -5
- package/lib/utils.ts +21 -20
- package/package.json +2 -2
- package/public/voices/alloy.ogg +0 -0
- package/public/voices/ash.ogg +0 -0
- package/public/voices/ballad.ogg +0 -0
- package/public/voices/beacon.ogg +0 -0
- package/public/voices/bossa.ogg +0 -0
- package/public/voices/cedar.ogg +0 -0
- package/public/voices/cinder.ogg +0 -0
- package/public/voices/coral.ogg +0 -0
- package/public/voices/delta.ogg +0 -0
- package/public/voices/echo.ogg +0 -0
- package/public/voices/gleam.ogg +0 -0
- package/public/voices/marin.ogg +0 -0
- package/public/voices/meridian.ogg +0 -0
- package/public/voices/quartz.ogg +0 -0
- package/public/voices/ripple.ogg +0 -0
- package/public/voices/sage.ogg +0 -0
- package/public/voices/shimmer.ogg +0 -0
- package/public/voices/stone.ogg +0 -0
- package/public/voices/tempo.ogg +0 -0
- package/public/voices/verse.ogg +0 -0
- package/public/voices/vesper.ogg +0 -0
- package/public/voices/willow.ogg +0 -0
- package/scripts/artifact-paths.test.mts +25 -0
- package/scripts/bot-context.test.mts +1408 -0
- package/scripts/live-history.test.mts +115 -0
- package/scripts/live-session.test.mts +948 -0
- package/server.js +1 -1
- package/skills/browser/SKILL.md +17 -6
- package/skills/computer/SKILL.md +1 -1
- package/skills/find-skills/SKILL.md +3 -8
- package/skills/interactive-page/SKILL.md +12 -7
- package/skills/interactive-page/references/diagram.md +89 -0
- package/skills/interactive-page/scripts/archify/LICENSE +22 -0
- package/skills/interactive-page/scripts/archify/README.md +25 -0
- package/skills/interactive-page/scripts/archify/assets/JetBrainsMono-OFL.txt +93 -0
- package/skills/interactive-page/scripts/archify/assets/template.html +14934 -0
- package/skills/interactive-page/scripts/archify/bin/archify.mjs +2126 -0
- package/skills/interactive-page/scripts/archify/bin/open-artifact.mjs +86 -0
- package/skills/interactive-page/scripts/archify/bin/preview.mjs +653 -0
- package/skills/interactive-page/scripts/archify/bin/visual-check.mjs +829 -0
- package/skills/interactive-page/scripts/archify/delta/architecture-delta.mjs +1223 -0
- package/skills/interactive-page/scripts/archify/examples/agent-run.lifecycle.json +60 -0
- package/skills/interactive-page/scripts/archify/examples/agent-tool-call.workflow.json +94 -0
- package/skills/interactive-page/scripts/archify/examples/async-job-roundtrip.sequence.json +61 -0
- package/skills/interactive-page/scripts/archify/examples/cache-miss-request.sequence.json +82 -0
- package/skills/interactive-page/scripts/archify/examples/checkout-platform.base.architecture.json +31 -0
- package/skills/interactive-page/scripts/archify/examples/checkout-platform.head.architecture.json +31 -0
- package/skills/interactive-page/scripts/archify/examples/deployment-release.lifecycle.json +49 -0
- package/skills/interactive-page/scripts/archify/examples/event-stream.dataflow.json +57 -0
- package/skills/interactive-page/scripts/archify/examples/incident-response.workflow.json +64 -0
- package/skills/interactive-page/scripts/archify/examples/product-analytics.dataflow.json +76 -0
- package/skills/interactive-page/scripts/archify/examples/production-deployment.architecture.json +71 -0
- package/skills/interactive-page/scripts/archify/examples/release-delivery.workflow.json +62 -0
- package/skills/interactive-page/scripts/archify/examples/web-app.architecture.json +46 -0
- package/skills/interactive-page/scripts/archify/migrations/workflow-v2.mjs +279 -0
- package/skills/interactive-page/scripts/archify/recipes/scenarios.mjs +284 -0
- package/skills/interactive-page/scripts/archify/references/authoring-contract.md +243 -0
- package/skills/interactive-page/scripts/archify/references/delivery-contract.md +120 -0
- package/skills/interactive-page/scripts/archify/references/viewer-runtime.md +45 -0
- package/skills/interactive-page/scripts/archify/renderers/architecture/grid.mjs +62 -0
- package/skills/interactive-page/scripts/archify/renderers/architecture/render-architecture.mjs +1078 -0
- package/skills/interactive-page/scripts/archify/renderers/dataflow/README.md +104 -0
- package/skills/interactive-page/scripts/archify/renderers/dataflow/render-dataflow.mjs +483 -0
- package/skills/interactive-page/scripts/archify/renderers/lifecycle/README.md +115 -0
- package/skills/interactive-page/scripts/archify/renderers/lifecycle/render-lifecycle.mjs +561 -0
- package/skills/interactive-page/scripts/archify/renderers/sequence/README.md +114 -0
- package/skills/interactive-page/scripts/archify/renderers/sequence/render-sequence.mjs +464 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/brand-marks.mjs +563 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/cli.mjs +218 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/desktop-readability.mjs +26 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/diagnostics.mjs +127 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/engineering-profiles.mjs +157 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/generated-brand-marks.mjs +3 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/generated-validators.mjs +13 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/geometry.mjs +1423 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/i18n.mjs +595 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/layout-report.mjs +40 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/legend.mjs +217 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/output-path.mjs +340 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/repository-evidence.mjs +238 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/repository-location.mjs +58 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/text-fit.mjs +49 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/utils.mjs +232 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/validator.mjs +86 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/README.md +223 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/render-workflow.mjs +35 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/workflow-compiler.mjs +4400 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/workflow-migration-geometry.mjs +144 -0
- package/skills/interactive-page/scripts/archify/schemas/README.md +211 -0
- package/skills/interactive-page/scripts/archify/schemas/architecture.schema.json +178 -0
- package/skills/interactive-page/scripts/archify/schemas/common.schema.json +115 -0
- package/skills/interactive-page/scripts/archify/schemas/dataflow.schema.json +243 -0
- package/skills/interactive-page/scripts/archify/schemas/lifecycle.schema.json +266 -0
- package/skills/interactive-page/scripts/archify/schemas/sequence.schema.json +223 -0
- package/skills/interactive-page/scripts/archify/schemas/workflow.schema.json +428 -0
- package/skills/interactive-page/scripts/archify/scripts/check-render-output.mjs +916 -0
- package/skills/interactive-page/scripts/archify/scripts/render-examples.mjs +26 -0
- package/skills/interactive-page/scripts/bundle-artifact.sh +9 -8
- package/skills/skill-creator/SKILL.md +4 -5
- package/.next/server/app/api/bot/task/[id]/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/bot/task/[id]/route.js +0 -16
- package/.next/server/app/api/bot/task/[id]/route.js.nft.json +0 -1
- package/.next/server/app/api/bot/task/[id]/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/bot/task/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/bot/task/route.js +0 -16
- package/.next/server/app/api/bot/task/route.js.nft.json +0 -1
- package/.next/server/app/api/bot/task/route_client-reference-manifest.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__01dkp4a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02xjoto._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__04q--0f._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0bl-e63._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0ffbg85._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0jq4ohy._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0ls6_8y._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__11n256_._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__12cabg9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1339jnv._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__18_teo8._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1anc1p9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__1fizn31._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1llj3-b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1p8m3f4._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1wa1k7r._.js +0 -8
- package/.next/server/chunks/_0-73of8._.js +0 -55
- package/.next/server/chunks/_0-fjql4._.js +0 -26
- package/.next/server/chunks/_00xh_q0._.js +0 -25
- package/.next/server/chunks/_03a0897._.js +0 -3
- package/.next/server/chunks/_051qh8u._.js +0 -3
- package/.next/server/chunks/_05sovvj._.js +0 -3
- package/.next/server/chunks/_0fzqt2y._.js +0 -134
- package/.next/server/chunks/_0mecv0f._.js +0 -26
- package/.next/server/chunks/_0mh8j4m._.js +0 -3
- package/.next/server/chunks/_0obojvv._.js +0 -3
- package/.next/server/chunks/_0sb7tlz._.js +0 -3
- package/.next/server/chunks/_0sbynis._.js +0 -3
- package/.next/server/chunks/_0u10wmw._.js +0 -55
- package/.next/server/chunks/_0u4aiy2._.js +0 -3
- package/.next/server/chunks/_0wp4le3._.js +0 -3
- package/.next/server/chunks/_0y5fg-x._.js +0 -3
- package/.next/server/chunks/_1230wbx._.js +0 -10
- package/.next/server/chunks/_12nheja._.js +0 -3
- package/.next/server/chunks/_13510xh._.js +0 -3
- package/.next/server/chunks/_15hq89o._.js +0 -3
- package/.next/server/chunks/_18-1wcc._.js +0 -55
- package/.next/server/chunks/_1_9mjx-._.js +0 -3
- package/.next/server/chunks/_1c78vw5._.js +0 -229
- package/.next/server/chunks/_1h5_8sk._.js +0 -3
- package/.next/server/chunks/_1hdnxb7._.js +0 -3
- package/.next/server/chunks/_1j8k_j5._.js +0 -3
- package/.next/server/chunks/_1nula3v._.js +0 -3
- package/.next/server/chunks/_1php4eq._.js +0 -3
- package/.next/server/chunks/_1yuv4vp._.js +0 -3
- package/.next/server/chunks/_1zjrdag._.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_bot_task_[id]_route_actions_1_k_8u3.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_bot_task_route_actions_0xln6ra.js +0 -3
- package/.next/server/chunks/features_0rpfxbk._.js +0 -3
- package/.next/server/chunks/features_1qf3cei._.js +0 -3
- package/.next/server/chunks/features_bot_0zt92oh._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1xoq2rl._.js +0 -3
- package/.next/server/chunks/ssr/[externals]__0dizgek._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__092knlj._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0mz33a7._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0s9dq5u._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0s9l2sv._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0vnmv-s._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0xsog8n._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__10-dz5o._.js +0 -61
- package/.next/server/chunks/ssr/[root-of-the-server]__1gtlw6v._.js +0 -43
- package/.next/server/chunks/ssr/[root-of-the-server]__1ox7hbk._.js +0 -4
- package/.next/server/chunks/ssr/[root-of-the-server]__202p40z._.js +0 -3
- package/.next/server/chunks/ssr/_001_ms1._.js +0 -28
- package/.next/server/chunks/ssr/_01n3o0m._.js +0 -3
- package/.next/server/chunks/ssr/_0fz4mf_._.js +0 -3
- package/.next/server/chunks/ssr/_0gb4gmf._.js +0 -3
- package/.next/server/chunks/ssr/_0h42fze._.js +0 -3
- package/.next/server/chunks/ssr/_0h7zdni._.js +0 -3
- package/.next/server/chunks/ssr/_0ilna52._.js +0 -42
- package/.next/server/chunks/ssr/_0q0zan6._.js +0 -70
- package/.next/server/chunks/ssr/_0zcjrbg._.js +0 -3
- package/.next/server/chunks/ssr/_0zhoc3r._.js +0 -3
- package/.next/server/chunks/ssr/_13fke0x._.js +0 -3
- package/.next/server/chunks/ssr/_18cymkq._.js +0 -3
- package/.next/server/chunks/ssr/_1b2mjwr._.js +0 -3
- package/.next/server/chunks/ssr/_1f-dg-6._.js +0 -3
- package/.next/server/chunks/ssr/_1h0rw11._.js +0 -3
- package/.next/server/chunks/ssr/_1jhd09t._.js +0 -3
- package/.next/server/chunks/ssr/_1nnsk7z._.js +0 -3
- package/.next/server/chunks/ssr/_1ov37if._.js +0 -3
- package/.next/server/chunks/ssr/_1sji22n._.js +0 -3
- package/.next/server/chunks/ssr/_1vi_uo7._.js +0 -3
- package/.next/server/chunks/ssr/_1vyd1ji._.js +0 -3
- package/.next/server/chunks/ssr/_1xx4zlb._.js +0 -3
- package/.next/server/chunks/ssr/components_ui_1y1l7yj._.js +0 -3
- package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +0 -3
- package/.next/server/chunks/ssr/lib_realtime_12wg_dd._.js +0 -27
- package/.next/server/chunks/ssr/lib_realtime_15h_v1v._.js +0 -27
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_0npjf8-._.js +0 -3
- package/.next/static/chunks/00rd4-v8r7axp.js +0 -1
- package/.next/static/chunks/08qe4as2q428z.js +0 -3
- package/.next/static/chunks/0gnqdjn2lvdad.js +0 -2
- package/.next/static/chunks/0hwap1-p0m5sa.js +0 -1
- package/.next/static/chunks/0r5qcctujhxli.js +0 -1
- package/.next/static/chunks/0w52rrrmuj9r9.js +0 -1
- package/.next/static/chunks/0wcprt5ot5she.js +0 -1
- package/.next/static/chunks/10teww7wt-f6h.js +0 -1
- package/.next/static/chunks/17p6tk6k88dq6.js +0 -1
- package/.next/static/chunks/18a96rkhi4_yd.js +0 -1
- package/.next/static/chunks/1dkjg87pxk0n9.js +0 -28
- package/.next/static/chunks/1jd09sxcjddu1.js +0 -1
- package/.next/static/chunks/1w73ece_6bheu.js +0 -18
- package/.next/static/chunks/214ya3n5gxeih.js +0 -1
- package/.next/static/chunks/22_zkas21rpna.js +0 -1
- package/.next/static/chunks/2fh4-3z_q8b_w.js +0 -1
- package/.next/static/chunks/2h0sd2vumhb15.js +0 -1
- package/.next/static/chunks/2t4vhi3m8ahya.js +0 -1
- package/.next/static/chunks/2tigdtz3dpcy8.js +0 -1
- package/.next/static/chunks/2u7xt6mxg44lf.js +0 -1
- package/.next/static/chunks/3786h5vayt80-.js +0 -28
- package/.next/static/chunks/39j0fvpybzabl.js +0 -40
- package/.next/static/chunks/3cq5g494yuke8.css +0 -1
- package/.next/static/chunks/3hibbjnt85-k6.js +0 -1
- package/.next/static/chunks/3woj-xd7ki5_i.js +0 -1
- package/.next/static/chunks/3xk7yqgomx7yq.js +0 -1
- package/.next/static/chunks/3zmcsnuo25zvq.js +0 -1
- package/database/migrations/20260911030320_opposite_jack_power/migration.sql +0 -1
- package/docs/images/task-thread.png +0 -0
- package/features/bot/components/task-badge.tsx +0 -42
- package/features/bot/components/task-reply.tsx +0 -328
- package/features/bot/components/task-setting.tsx +0 -524
- package/features/bot/task.query.ts +0 -976
- package/features/bot/task.store.ts +0 -489
- package/lib/realtime/client-secret.ts +0 -86
- package/lib/realtime/open-session.ts +0 -31
- package/lib/realtime/openai.ts +0 -35
- package/lib/realtime/realtime.audio.ts +0 -196
- package/lib/realtime/realtime.driver.ts +0 -489
- package/lib/realtime/realtime.protocol.ts +0 -393
- package/lib/realtime/realtime.schema.ts +0 -37
- package/lib/realtime/realtime.session.ts +0 -106
- package/lib/realtime/realtime.transport.ts +0 -384
- package/lib/realtime/xai.ts +0 -39
- /package/.next/server/app/api/bot/{task → thread}/[id]/route/build-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/[id]/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/[id]/route.js.map +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route/build-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route.js.map +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_buildManifest.js +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_ssgManifest.js +0 -0
|
@@ -34,5 +34,5 @@ Pass a Vercel personal access token or Vercel app access token via the 'apiKey'
|
|
|
34
34
|
Option 3 - OIDC token:
|
|
35
35
|
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,statusCode:a,cause:n,generationId:o})}},r2="GatewayInvalidRequestError",r5=Symbol.for(`vercel.ai.gateway.error.${r2}`),r4=class extends(j=rX,_=r5,j){constructor({message:e="Invalid request",statusCode:t=400,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[_]=!0,this.name=r2,this.type="invalid_request_error"}static isInstance(e){return rX.hasMarker(e)&&r5 in e}},r6="GatewayRateLimitError",r9=Symbol.for(`vercel.ai.gateway.error.${r6}`),r3=class extends(S=rX,E=r9,S){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[E]=!0,this.name=r6,this.type="rate_limit_exceeded"}static isInstance(e){return rX.hasMarker(e)&&r9 in e}},r7="GatewayModelNotFoundError",r8=Symbol.for(`vercel.ai.gateway.error.${r7}`),ae=rg(()=>rv(rK.object({modelId:rK.string()}))),at=class extends(A=rX,M=r8,A){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:a,generationId:n}={}){super({message:e,statusCode:t,cause:a,generationId:n}),this[M]=!0,this.name=r7,this.type="model_not_found",this.modelId=r}static isInstance(e){return rX.hasMarker(e)&&r8 in e}},ar="GatewayNotFoundError",aa=Symbol.for(`vercel.ai.gateway.error.${ar}`),an=class extends(R=rX,T=aa,R){constructor({message:e="Resource not found",statusCode:t=404,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[T]=!0,this.name=ar,this.type="not_found"}static isInstance(e){return rX.hasMarker(e)&&aa in e}},ao="GatewayInternalServerError",as=Symbol.for(`vercel.ai.gateway.error.${ao}`),ai=class extends(O=rX,C=as,O){constructor({message:e="Internal server error",statusCode:t=500,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[C]=!0,this.name=ao,this.type="internal_server_error"}static isInstance(e){return rX.hasMarker(e)&&as in e}},al="GatewayFailedDependencyError",au=Symbol.for(`vercel.ai.gateway.error.${al}`),ad=class extends(P=rX,N=au,P){constructor({message:e="Failed dependency",statusCode:t=424,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[N]=!0,this.name=al,this.type="failed_dependency"}static isInstance(e){return rX.hasMarker(e)&&au in e}},ac="GatewayForbiddenError",ap=Symbol.for(`vercel.ai.gateway.error.${ac}`),ah=rg(()=>rv(rK.object({ruleId:rK.string()}))),am=class extends(D=rX,$=ap,D){constructor({message:e="Forbidden",statusCode:t=403,cause:r,generationId:a,ruleId:n}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[$]=!0,this.name=ac,this.type="forbidden",this.ruleId=n}static isInstance(e){return rX.hasMarker(e)&&ap in e}},ag="GatewayResponseError",af=Symbol.for(`vercel.ai.gateway.error.${ag}`),ay=class extends(F=rX,U=af,F){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:a,cause:n,generationId:o,isRetryable:s}={}){super({message:e,statusCode:t,cause:n,generationId:o,isRetryable:s}),this[U]=!0,this.name=ag,this.type="response_error",this.response=r,this.validationError=a}static isInstance(e){return rX.hasMarker(e)&&af in e}};async function av({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:a,authMethod:n,isRetryable:o}){var s;let i=await rw({value:e,schema:ab});if(!i.success){let n="object"==typeof e&&null!==e&&"generationId"in e?e.generationId:void 0;return new ay({message:`Invalid error response format: ${r}`,statusCode:t,response:e,validationError:i.error,cause:a,generationId:n,isRetryable:o})}let l=i.value,u=l.error.type,d=l.error.message,c=null!=(s=l.generationId)?s:void 0;switch(u){case"authentication_error":return r1.createContextualError({apiKeyProvided:"api-key"===n,oidcTokenProvided:"oidc"===n,statusCode:t,cause:a,generationId:c});case"invalid_request_error":return new r4({message:d,statusCode:t,cause:a,generationId:c});case"rate_limit_exceeded":return new r3({message:d,statusCode:t,cause:a,generationId:c});case"model_not_found":{let e=await rw({value:l.error.param,schema:ae});return new at({message:d,statusCode:t,modelId:e.success?e.value.modelId:void 0,cause:a,generationId:c})}case"not_found":return new an({message:d,statusCode:t,cause:a,generationId:c});case"internal_server_error":default:return new ai({message:d,statusCode:t,cause:a,generationId:c});case"failed_dependency":return new ad({message:d,statusCode:t,cause:a,generationId:c});case"forbidden":{let e=await rw({value:l.error.param,schema:ah});return new am({message:d,statusCode:t,cause:a,generationId:c,ruleId:e.success?e.value.ruleId:void 0})}}}var ab=rg(()=>rv(rK.object({error:rK.object({message:rK.string(),type:rK.string().nullish(),param:rK.unknown().nullish(),code:rK.union([rK.string(),rK.number()]).nullish()}),generationId:rK.string().nullish()}))),aw="GatewayTimeoutError",ax=Symbol.for(`vercel.ai.gateway.error.${aw}`),ak=class e extends(q=rX,L=ax,q){constructor({message:e="Request timed out",statusCode:t=408,cause:r,generationId:a}={}){super({message:e,statusCode:t,cause:r,generationId:a}),this[L]=!0,this.name=aw,this.type="timeout_error"}static isInstance(e){return rX.hasMarker(e)&&ax in e}static createTimeoutError({originalMessage:t,statusCode:r=408,cause:a,generationId:n}){return new e({message:`Gateway request timed out: ${t}
|
|
36
36
|
|
|
37
|
-
This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:r,cause:a,generationId:n})}};function aI(e){if(!(e instanceof Error))return!1;let t=e.code;return"string"==typeof t&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(t)}async function a_(e,t){var r;return rX.isInstance(e)?e:aI(e)?ak.createTimeoutError({originalMessage:e instanceof Error?e.message:"Unknown error",cause:e}):eO.isInstance(e)?e.cause&&aI(e.cause)?ak.createTimeoutError({originalMessage:e.message,cause:e}):await av({response:function(e){if(void 0!==e.data)return e.data;if(null!=e.responseBody)try{return tW(e.responseBody)}catch(t){return e.responseBody}return{}}(e),statusCode:null!=(r=e.statusCode)?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t,isRetryable:!!e.isRetryable&&(null==e.statusCode||e.statusCode<400)||void 0}):await av({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}var aj="ai-gateway-auth-method",aE="x-vercel-ai-gateway-team";async function aS(e){let t=await rw({value:e[aj],schema:aM});return t.success?t.value:void 0}var aM=rg(()=>rv(rK.union([rK.literal("api-key"),rK.literal("oidc")]))),aA=["embedding","image","language","realtime","reranking","speech","transcription","video"],aT=class{constructor(e){this.config=e}async getAvailableModels(){try{let{value:e}=await tB({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aR),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return e}catch(e){throw await a_(e)}}async getCredits(){try{let e=new URL(this.config.baseURL),{value:t}=await tB({url:`${e.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aC),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return t}catch(e){throw await a_(e)}}},aR=rg(()=>rv(rK.object({models:rK.array(rK.object({id:rK.string(),name:rK.string(),description:rK.string().nullish(),pricing:rK.object({input:rK.string(),output:rK.string(),input_cache_read:rK.string().nullish(),input_cache_write:rK.string().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:a})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...a?{cacheCreationInputTokens:a}:{}})).nullish(),specification:rK.object({specificationVersion:rK.literal("v4"),provider:rK.string(),modelId:rK.string()}),modelType:rK.string().nullish()})).transform(e=>e.filter(e=>null==e.modelType||aA.includes(e.modelType)))}))),aC=rg(()=>rv(rK.object({balance:rK.string(),total_used:rK.string()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),aO=class{constructor(e){this.config=e}async getSpendReport(e){try{let t=new URL(this.config.baseURL),r=new URLSearchParams;r.set("start_date",e.startDate),r.set("end_date",e.endDate),e.groupBy&&r.set("group_by",e.groupBy),e.datePart&&r.set("date_part",e.datePart),e.userId&&r.set("user_id",e.userId),e.model&&r.set("model",e.model),e.provider&&r.set("provider",e.provider),e.credentialType&&r.set("credential_type",e.credentialType),e.tags&&e.tags.length>0&&r.set("tags",e.tags.join(","));let{value:a}=await tB({url:`${t.origin}/v1/report?${r.toString()}`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aN),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return a}catch(e){throw await a_(e)}}},aN=rg(()=>rv(rK.object({results:rK.array(rK.object({day:rK.string().optional(),hour:rK.string().optional(),user:rK.string().optional(),model:rK.string().optional(),tag:rK.string().optional(),provider:rK.string().optional(),credential_type:rK.enum(["byok","system"]).optional(),total_cost:rK.number(),market_cost:rK.number().optional(),input_tokens:rK.number().optional(),output_tokens:rK.number().optional(),cached_input_tokens:rK.number().optional(),cache_creation_input_tokens:rK.number().optional(),reasoning_tokens:rK.number().optional(),request_count:rK.number().optional()}).transform(({credential_type:e,total_cost:t,market_cost:r,input_tokens:a,output_tokens:n,cached_input_tokens:o,cache_creation_input_tokens:s,reasoning_tokens:i,request_count:l,...u})=>({...u,...void 0!==e?{credentialType:e}:{},totalCost:t,...void 0!==r?{marketCost:r}:{},...void 0!==a?{inputTokens:a}:{},...void 0!==n?{outputTokens:n}:{},...void 0!==o?{cachedInputTokens:o}:{},...void 0!==s?{cacheCreationInputTokens:s}:{},...void 0!==i?{reasoningTokens:i}:{},...void 0!==l?{requestCount:l}:{}})))}))),aP=class{constructor(e){this.config=e}async getGenerationInfo(e){try{let t=new URL(this.config.baseURL),{value:r}=await tB({url:`${t.origin}/v1/generation?id=${encodeURIComponent(e.id)}`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(a$),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return r}catch(e){throw await a_(e)}}},a$=rg(()=>rv(rK.object({data:rK.object({id:rK.string(),total_cost:rK.number(),upstream_inference_cost:rK.number(),usage:rK.number(),created_at:rK.string(),model:rK.string(),is_byok:rK.boolean(),provider_name:rK.string(),streamed:rK.boolean(),finish_reason:rK.string(),latency:rK.number(),generation_time:rK.number(),native_tokens_prompt:rK.number(),native_tokens_completion:rK.number(),native_tokens_reasoning:rK.number(),native_tokens_cached:rK.number(),native_tokens_cache_creation:rK.number(),billable_web_search_calls:rK.number()}).transform(({total_cost:e,upstream_inference_cost:t,created_at:r,is_byok:a,provider_name:n,finish_reason:o,generation_time:s,native_tokens_prompt:i,native_tokens_completion:l,native_tokens_reasoning:u,native_tokens_cached:d,native_tokens_cache_creation:c,billable_web_search_calls:p,...h})=>({...h,totalCost:e,upstreamInferenceCost:t,createdAt:r,isByok:a,providerName:n,finishReason:o,generationTime:s,promptTokens:i,completionTokens:l,reasoningTokens:u,cachedTokens:d,cacheCreationTokens:c,billableWebSearchCalls:p}))}).transform(({data:e})=>e))),aD=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs(e){let{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,n=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:o,value:s,rawValue:i}=await rj({url:this.getUrl(),headers:tn(n,e.headers,this.getModelConfigHeaders(this.modelId,!1),await rM(this.config.o11yHeaders)),body:t,successfulResponseHandler:rC(rK.any()),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{...s,request:{body:t},response:{headers:o,body:i},warnings:r}}catch(e){throw await a_(e,await aS(null!=n?n:{}))}}async doStream(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,n=this.config.headers?await rM(this.config.headers):void 0;try{let o,{value:s,responseHeaders:i}=await rj({url:this.getUrl(),headers:tn(n,e.headers,this.getModelConfigHeaders(this.modelId,!0),await rM(this.config.o11yHeaders)),body:t,successfulResponseHandler:(o=rK.any(),async({response:e,url:t,requestBodyValues:r})=>{let a=th(e);if(null==e.body)throw new eD({});return{responseHeaders:a,value:rI({stream:function({stream:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:n}){let o=e.getReader(),s=!1,i=()=>{s||(o.releaseLock(),s=!0)};return new ReadableStream({async pull(e){try{let{done:t,value:r}=await o.read();t?(i(),e.close()):e.enqueue(r)}catch(o){if(i(),tg(o))return void e.error(o);e.error(tv({error:new eO({message:"Failed to process successful response",cause:o,statusCode:a,url:t,responseHeaders:n,requestBodyValues:r}),url:t,requestBodyValues:r}))}},async cancel(e){try{await o.cancel(e)}finally{i()}}})}({stream:e.body,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a}),schema:o})}}),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{stream:s.pipeThrough(new TransformStream({start(e){r.length>0&&e.enqueue({type:"stream-start",warnings:r})},transform(t,r){if(t.success){let a=t.value;("raw"!==a.type||e.includeRawChunks)&&("response-metadata"===a.type&&a.timestamp&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp)),r.enqueue(a))}else r.error(t.error)}})),request:{body:t},response:{headers:i}}}catch(e){throw await a_(e,await aS(null!=n?n:{}))}}maybeEncodeFileParts(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if("file"===e.type||"reasoning-file"===e.type)e.data=aU(e.data);else if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&(t.data=aU(t.data))}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"4","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}};function aU(e){if("data"===e.type){let t=e.data;if(t instanceof Uint8Array)return{...e,data:rV.Buffer.from(t).toString("base64")}}return e}var aF=class e extends aD{static[tr](e){return aD[tr](e)}static[ta](t){return new e(t.modelId,t.config)}constructor(e,t){super(e,t)}async experimental_doStartBatch({requests:e,providerOptions:t,headers:r,abortSignal:a,webhookUrl:n}){var o;let s=this.config.headers?await rM(this.config.headers):void 0,i=function(e){let t=null==e?void 0:e.gateway;if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t.idempotencyKey;return"string"==typeof r&&r.length>0?r:void 0}(t),l=function(e){let t=null==e?void 0:e.gateway;if(null==t||"object"!=typeof t||Array.isArray(t)||!("idempotencyKey"in t))return e;let{idempotencyKey:r,...a}=t,n={...e};if(0===Object.keys(a).length?delete n.gateway:n.gateway=a,0!==Object.keys(n).length)return n}(t);try{let{value:t}=await rj({url:this.getBatchUrl("start"),headers:tn(s,r,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders),null!=i?{"idempotency-key":i}:void 0),body:{...null!=n&&{callbackUrl:n},modelId:this.modelId,requests:e.map(e=>({id:e.id,options:this.maybeEncodeFileParts(e.options)})),...null!=l&&{providerOptions:l}},successfulResponseHandler:rC(aY),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{batchId:t.batchId,...aq(t),warnings:null!=(o=t.warnings)?o:[]}}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=s?s:{}))}}async experimental_doGetBatchStatus({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await rM(this.config.headers):void 0;try{let{value:n}=await rj({url:this.getBatchUrl("status"),headers:tn(a,t,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:rC(aW),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return aq(n)}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=a?a:{}))}}async experimental_doGetBatchResults({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await rM(this.config.headers):void 0;try{var n;let o,{value:s}=await rj({url:this.getBatchUrl("results"),headers:tn(a,t,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:async({response:e})=>{let t=th(e);if(null==e.body)throw new eD({});return{responseHeaders:t,value:rO({stream:e.body,schema:az})}},failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return n=aB(s),o=!1,new ReadableStream({async pull(e){if(!o)try{let{value:t,done:r}=await n.next();r?e.close():e.enqueue(t)}catch(t){e.error(t)}},async cancel(e){if(o=!0,n.return)try{await n.return(e)}catch(e){}}})}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=a?a:{}))}}getBatchUrl(e){return`${this.config.baseURL}/batch/${e}`}getBatchConfigHeaders(){return{"ai-model-id":this.modelId}}};function aL(e){return!!(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"TimeoutError"===e.name)}function aq(e){var t,r,a,n;let o=function({total:e,pending:t,completed:r,failed:a}){if(tV(e)&&tV(t)&&tV(r)&&tV(a)&&t+r+a===e)return{total:e,pending:t,completed:r,failed:a}}({total:null==(t=e.requestCounts)?void 0:t.total,pending:null==(r=e.requestCounts)?void 0:r.pending,completed:null==(a=e.requestCounts)?void 0:a.completed,failed:null==(n=e.requestCounts)?void 0:n.failed});return{status:e.status,...null!=e.rawStatus&&{rawStatus:e.rawStatus},...null!=o&&{requestCounts:o},...null!=e.error&&{error:{message:e.error.message,...null!=e.error.type&&{type:e.error.type},...null!=e.error.code&&{code:e.error.code},...null!=e.error.statusCode&&{statusCode:e.error.statusCode}}},...null!=e.createdAt&&{createdAt:e.createdAt},...null!=e.expiresAt&&{expiresAt:e.expiresAt},...null!=e.providerMetadata&&{providerMetadata:e.providerMetadata}}}async function*aB(e){var t;for await(let r of e){if("succeeded"===r.status){let e=null==(t=r.result)?void 0:t.response;void 0!==e&&"string"==typeof e.timestamp&&(e.timestamp=new Date(e.timestamp))}yield r}}var az=rK.object({id:rK.string(),status:rK.enum(["cancelled","expired","failed","succeeded"])}).catchall(rK.unknown()),aH=rK.object({message:rK.string(),type:rK.string().nullish(),code:rK.string().nullish(),statusCode:rK.number().nullish()}),aV=rK.object({total:rK.number().nullish(),pending:rK.number().nullish(),completed:rK.number().nullish(),failed:rK.number().nullish()}),aZ=rK.record(rK.string(),rK.record(rK.string(),rK.unknown())),aG=rK.object({status:rK.enum(["completed","failed","pending"]),rawStatus:rK.string().nullish(),requestCounts:aV.nullish(),error:aH.nullish(),createdAt:rK.string().nullish(),expiresAt:rK.string().nullish(),providerMetadata:aZ.nullish()}),aY=aG.extend({batchId:rK.string(),warnings:rK.array(rK.object({requestId:rK.string().nullish(),warning:rK.unknown()}).catchall(rK.unknown())).nullish()}),aW=aG,aK=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:a}){var n,o;let s=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:i,value:l,rawValue:u}=await rj({url:this.getUrl(),headers:tn(s,null!=t?t:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{values:e,...a?{providerOptions:a}:{}},successfulResponseHandler:rC(aX),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:l.embeddings,usage:null!=(n=l.usage)?n:void 0,providerMetadata:l.providerMetadata,response:{headers:i,body:u},warnings:null!=(o=l.warnings)?o:[]}}catch(e){throw await a_(e,await aS(null!=s?s:{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}},aJ=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),aX=rg(()=>rv(rK.object({embeddings:rK.array(rK.array(rK.number())),usage:rK.object({tokens:rK.number()}).nullish(),warnings:rK.array(aJ).optional(),providerMetadata:rK.record(rK.string(),rK.record(rK.string(),rK.unknown())).optional()}))),aQ=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:a,seed:n,files:o,mask:s,providerOptions:i,headers:l,abortSignal:u}){var d,c,p,h;let m=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:g,value:f}=await rj({url:this.getUrl(),headers:tn(m,null!=l?l:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...a&&{aspectRatio:a},...n&&{seed:n},...i&&{providerOptions:i},...o&&{files:o.map(e=>a0(e))},...s&&{mask:a0(s)}},successfulResponseHandler:rC(a4),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...u&&{abortSignal:u},fetch:this.config.fetch});return{images:f.images,warnings:null!=(d=f.warnings)?d:[],providerMetadata:f.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:g},...null!=f.usage&&{usage:{inputTokens:null!=(c=f.usage.inputTokens)?c:void 0,outputTokens:null!=(p=f.usage.outputTokens)?p:void 0,totalTokens:null!=(h=f.usage.totalTokens)?h:void 0}}}}catch(e){throw await a_(e,await aS(null!=m?m:{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function a0(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:tp(e.data)}:e}var a1=rK.object({images:rK.array(rK.unknown()).optional()}).catchall(rK.unknown()),a2=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),a5=rK.object({inputTokens:rK.number().nullish(),outputTokens:rK.number().nullish(),totalTokens:rK.number().nullish()}),a4=rK.object({images:rK.array(rK.string()),warnings:rK.array(a2).optional(),providerMetadata:rK.record(rK.string(),a1).optional(),usage:a5.optional()}),a6=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(e){var t,r;let{headers:a,abortSignal:n}=e,o=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:s,value:i}=await rj({url:this.getUrl(),headers:tn(o,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(e),successfulResponseHandler:async({response:e,url:t,requestBodyValues:r})=>{if(null==e.body)throw new eO({message:"SSE response body is empty",url:t,requestBodyValues:r,statusCode:e.status});let a=rI({stream:e.body,schema:ne}).getReader(),{done:n,value:o}=await a.read();if(a.releaseLock(),n||!o)throw new eO({message:"SSE stream ended without a data event",url:t,requestBodyValues:r,statusCode:e.status});if(!o.success)throw new eO({message:"Failed to parse video SSE event",cause:o.error,url:t,requestBodyValues:r,statusCode:e.status});let s=o.value;if("error"===s.type)throw new eO({message:s.message,statusCode:s.statusCode,url:t,requestBodyValues:r,responseHeaders:Object.fromEntries([...e.headers]),responseBody:JSON.stringify(s),data:{error:{message:s.message,type:s.errorType,param:s.param}}});return{value:{videos:s.videos,warnings:s.warnings,providerMetadata:s.providerMetadata},responseHeaders:Object.fromEntries([...e.headers])}},failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{videos:i.videos,warnings:null!=(t=i.warnings)?t:[],providerMetadata:null!=(r=i.providerMetadata)?r:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:s}}}catch(e){throw await a_(e,await aS(null!=o?o:{}))}}async handleWebhookOption({webhook:e}){let{url:t,received:r}=await e();return{webhookUrl:t,received:r}}async doStart(e){var t,r;let{headers:a,abortSignal:n,webhookUrl:o}=e,s=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:i,value:l}=await rj({url:this.getStartUrl(),headers:tn(s,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{...this.buildRequestBody(e),...o&&{callbackUrl:o}},successfulResponseHandler:rC(nt),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{operation:l.operation,warnings:null!=(t=l.warnings)?t:[],providerMetadata:null!=(r=l.providerMetadata)?r:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:i}}}catch(e){throw await a_(e,await aS(null!=s?s:{}))}}async doStatus({operation:e,abortSignal:t,headers:r}){var a,n,o,s,i,l;let u=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:d,value:c}=await rj({url:this.getStatusUrl(),headers:tn(u,null!=r?r:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{operation:e},successfulResponseHandler:rC(nr),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...t&&{abortSignal:t},fetch:this.config.fetch}),p={timestamp:new Date,modelId:this.modelId,headers:d};if("completed"===c.status)return{status:"completed",videos:c.videos,warnings:null!=(a=c.warnings)?a:[],providerMetadata:null!=(n=c.providerMetadata)?n:void 0,response:p};if("error"===c.status)return{status:"error",error:c.error,providerMetadata:null!=(o=c.providerMetadata)?o:void 0,response:p};if("cancelled"===c.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:null!=(s=c.providerMetadata)?s:void 0,response:p};return{status:"pending",warnings:null!=(i=c.warnings)?i:[],providerMetadata:null!=(l=c.providerMetadata)?l:void 0,response:p}}catch(e){throw await a_(e,await aS(null!=u?u:{}))}}buildRequestBody({prompt:e,n:t,aspectRatio:r,resolution:a,duration:n,fps:o,seed:s,generateAudio:i,image:l,frameImages:u,inputReferences:d,providerOptions:c}){return{prompt:e,n:t,...r&&{aspectRatio:r},...a&&{resolution:a},...n&&{duration:n},...o&&{fps:o},...s&&{seed:s},...void 0!==i&&{generateAudio:i},...c&&{providerOptions:c},...l&&{image:a9(l)},...u&&{frameImages:u.map(e=>({...e,image:a9(e.image)}))},...d&&{inputReferences:d.map(e=>a9(e))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function a9(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:tp(e.data)}:e}var a3=rK.object({videos:rK.array(rK.unknown()).optional()}).catchall(rK.unknown()),a7=rK.union([rK.object({type:rK.literal("url"),url:rK.string(),mediaType:rK.string()}),rK.object({type:rK.literal("base64"),data:rK.string(),mediaType:rK.string()})]),a8=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),ne=rK.discriminatedUnion("type",[rK.object({type:rK.literal("result"),videos:rK.array(a7),warnings:rK.array(a8).optional(),providerMetadata:rK.record(rK.string(),a3).optional()}),rK.object({type:rK.literal("error"),message:rK.string(),errorType:rK.string(),statusCode:rK.number(),param:rK.unknown().nullable()})]),nt=rK.object({operation:rK.unknown(),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),nr=rK.discriminatedUnion("status",[rK.object({status:rK.literal("pending"),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("completed"),videos:rK.array(a7),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("error"),error:rK.string(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("cancelled"),providerMetadata:rK.record(rK.string(),a3).nullish()})]),na=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:e,query:t,topN:r,headers:a,abortSignal:n,providerOptions:o}){var s;let i=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:l,value:u,rawValue:d}=await rj({url:this.getUrl(),headers:tn(i,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{documents:e,query:t,...null!=r?{topN:r}:{},...o?{providerOptions:o}:{}},successfulResponseHandler:rC(no),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{ranking:u.ranking,providerMetadata:u.providerMetadata,response:{headers:l,body:d},warnings:null!=(s=u.warnings)?s:[]}}catch(e){throw await a_(e,await aS(null!=i?i:{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}},nn=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),no=rg(()=>rv(rK.object({ranking:rK.array(rK.object({index:rK.number(),relevanceScore:rK.number()})),warnings:rK.array(nn).optional(),providerMetadata:rK.record(rK.string(),rK.record(rK.string(),rK.unknown())).optional()}))),ns=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:e,voice:t,outputFormat:r,instructions:a,speed:n,language:o,providerOptions:s,headers:i,abortSignal:l}){var u;let d=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:c,value:p,rawValue:h}=await rj({url:this.getUrl(),headers:tn(d,null!=i?i:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{text:e,...t&&{voice:t},...r&&{outputFormat:r},...a&&{instructions:a},...null!=n&&{speed:n},...o&&{language:o},...s&&{providerOptions:s}},successfulResponseHandler:rC(nu),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...l&&{abortSignal:l},fetch:this.config.fetch});return{audio:p.audio,warnings:null!=(u=p.warnings)?u:[],providerMetadata:p.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:c,body:h}}}catch(e){throw await a_(e,await aS(null!=d?d:{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}},ni=rK.object({}).catchall(rK.unknown()),nl=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),nu=rK.object({audio:rK.string(),warnings:rK.array(nl).optional(),providerMetadata:rK.record(rK.string(),ni).optional()}),nd=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:e,mediaType:t,providerOptions:r,headers:a,abortSignal:n}){var o,s,i,l;let u=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:d,value:c,rawValue:p}=await rj({url:this.getUrl(),headers:tn(u,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{audio:e instanceof Uint8Array?tp(e):e,mediaType:t,...r&&{providerOptions:r}},successfulResponseHandler:rC(nm),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{text:c.text,segments:null!=(o=c.segments)?o:[],language:null!=(s=c.language)?s:void 0,durationInSeconds:null!=(i=c.durationInSeconds)?i:void 0,warnings:null!=(l=c.warnings)?l:[],providerMetadata:c.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d,body:p}}}catch(e){throw await a_(e,await aS(null!=u?u:{}))}}async doStream(e){var t,r,a,n,o;let s,i,l,u=null!=(a=null==(r=null==(t=this.config._internal)?void 0:t.currentDate)?void 0:r.call(t))?a:new Date,d=tn(await rM(null!=(n=this.config.headers)?n:{}),null!=(o=e.headers)?o:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),c=await aS(d),p={type:"transcription-stream.start",inputAudioFormat:e.inputAudioFormat,...null!=e.providerOptions&&{providerOptions:e.providerOptions},...null!=e.includeRawChunks&&{includeRawChunks:e.includeRawChunks}};return{stream:function({webSocket:e,url:t,protocols:r,headers:a,startFrame:n,audio:o,abortSignal:s,authMethod:i}){let l=!1,u=()=>{};return new ReadableStream({start:d=>{let c,p,h,m=!1,g=!1;u=e=>{null!=c?c.cancel().catch(()=>{}):o.cancel().catch(()=>{}),null==h||h.close(e)};let f=e=>{l||(l=!0,u(),ng(d,e,i))},y=async e=>{let t=o.getReader();c=t;try{for(;;){let{done:r,value:a}=await t.read();if(r||l)break;let n="string"==typeof a?function(e){let t=tc(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}(a):a;for(let t=0;t<n.length&&!l;t+=65536)e.send(n.subarray(t,t+65536)),await tu(e)}}finally{t.releaseLock(),c===t&&(c=void 0)}l||g||e.send(JSON.stringify({type:"transcription-stream.audio-done"}))};h=function({url:e,protocols:t,headers:r,webSocket:a,abortSignal:n,onOpen:o,onMessageText:s,onProcessingError:i,onSocketError:l,onClose:u,onAbort:d}){var c,p;let h,m,g=e=>{null!=m&&(null==n||n.removeEventListener("abort",m),m=void 0);try{null==h||h.close(e)}catch(e){}};if(null==n?void 0:n.aborted)return null==d||d(null!=(c=n.reason)?c:Error("Aborted")),{socket:void 0,close:g};try{h=new(function(e){let t=null!=e?e:globalThis.WebSocket;if(null==t)throw Error("No WebSocket implementation available.");return t}(a))(e,t,{headers:(p=null!=r?r:{},Object.fromEntries(Object.entries(p).filter(([e,t])=>null!=t)))})}catch(e){return i(e),{socket:void 0,close:g}}null!=n&&null!=d&&(m=()=>{var e;return d(null!=(e=n.reason)?e:Error("Aborted"))},n.addEventListener("abort",m,{once:!0}));let f=h;h.onopen=()=>{try{null==o||o(f)}catch(e){i(e)}};let y=Promise.resolve();return h.onmessage=e=>{y=y.then(()=>tl(e.data)).then(e=>s(e)).catch(i)},h.onerror=()=>{y=y.then(()=>null==l?void 0:l()).catch(i)},h.onclose=e=>{let t="number"==typeof(null==e?void 0:e.code)?e.code:void 0,r="string"==typeof(null==e?void 0:e.reason)?e.reason:void 0;y=y.then(()=>null==u?void 0:u({code:t,reason:r})).catch(i)},{socket:h,close:g}}({url:t,protocols:r,headers:a,webSocket:e,abortSignal:s,onAbort:e=>{l||(l=!0,u(),d.error(e))},onProcessingError:f,onOpen:e=>{e.send(JSON.stringify(n)),y(e).catch(f)},onMessageText:e=>{if(l)return;let t=function(e){let t;try{t=tW(e)}catch(e){return}if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t;switch(r.type){case"stream-start":return Array.isArray(r.warnings)&&r.warnings.every(rz)?r:void 0;case"transcript-delta":return rL(r.delta)&&rB(r.id,rL)&&rB(r.providerMetadata,tz)?r:void 0;case"transcript-partial":return rL(r.text)&&rB(r.id,rL)&&rB(r.startSecond,rq)&&rB(r.durationInSeconds,rq)&&rB(r.channelIndex,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"transcript-final":return rL(r.text)&&rB(r.id,rL)&&rB(r.startSecond,rq)&&rB(r.endSecond,rq)&&rB(r.channelIndex,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"finish":return rL(r.text)&&Array.isArray(r.segments)&&r.segments.every(rH)&&rB(r.language,rL)&&rB(r.durationInSeconds,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"response-metadata":{if(!(rB(r.modelId,rL)&&rB(r.headers,tz)))return;let e=r.timestamp;if(null==e)return{...r,timestamp:void 0};if("string"!=typeof e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:{...r,timestamp:t}}case"raw":return"rawValue"in r?r:void 0;case"error":return"error"in r?r:void 0;default:return}}(e);if(null!=t){if("finish"===t.type){l=!0,d.enqueue(t),d.close(),u(1e3);return}"error"===t.type&&(m=!0,p=t.error,g=!0,null!=c?(c.cancel().catch(()=>{}),c=void 0):o.cancel().catch(()=>{})),d.enqueue(t)}},onSocketError:()=>{f(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(m){if(l)return;ny(p,i).then(f);return}f(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{l||(l=!0,u())}})}({webSocket:this.config.webSocket,url:nc(this.config.baseURL,this.modelId),protocols:null==(l=(null==(i=(s=tw(d)).authorization)?void 0:i.startsWith("Bearer "))?i.slice(7):void 0)?[rY]:rW(rY,l,{teamIdOrSlug:s[aE]}),headers:d,startFrame:p,audio:e.audio,abortSignal:e.abortSignal,authMethod:c}),request:{body:p},response:{timestamp:u,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function nc(e,t){let r=new URL(`${e.replace(/^http/,"ws")}/transcription-model`);return r.searchParams.set("ai-model-id",t),r.toString()}var np=rK.object({}).catchall(rK.unknown()),nh=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),nm=rK.object({text:rK.string(),segments:rK.array(rK.object({text:rK.string(),startSecond:rK.number(),endSecond:rK.number()})).optional(),language:rK.string().nullish(),durationInSeconds:rK.number().nullish(),warnings:rK.array(nh).optional(),providerMetadata:rK.record(rK.string(),np).optional()});async function ng(e,t,r){e.error(await a_(t,r))}var nf={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function ny(e,t){return"object"==typeof e&&null!=e&&"message"in e&&"string"==typeof e.message&&"type"in e&&"string"==typeof e.type&&e.type in nf?av({response:{error:{message:e.message,type:e.type}},statusCode:nf[e.type],authMethod:t}):Error(`AI Gateway transcription stream failed: ${null!=e&&"object"==typeof e&&"message"in e&&"string"==typeof e.message?e.message:eU(e)}`)}var nv=class{constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){var t,r;let a,n=await this.config.createClientSecret({modelId:this.modelId,...(null==e?void 0:e.expiresAfterSeconds)!=null&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:n.token,url:(t=this.config.baseURL,r=this.modelId,(a=new URL(`${t.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",r),a.toString()),...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}getWebSocketConfig(e){return{url:e.url,protocols:rW("ai-gateway-realtime.v1",e.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(e){return e}serializeClientEvent(e){return e}buildSessionConfig(e){return e}},nb=rS({id:"gateway.exa_search",inputSchema:rg(()=>rv(rK.object({query:rK.string().describe("Natural-language web search query. This is required."),type:rK.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:rK.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:rK.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:rK.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:rK.array(rK.string()).optional().describe("Only return results from these domains."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these domains."),start_published_date:rK.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:rK.string().optional().describe("Only return links published before this ISO 8601 date."),contents:rK.object({text:rK.union([rK.boolean(),rK.object({max_characters:rK.number().optional(),include_html_tags:rK.boolean().optional(),verbosity:rK.enum(["compact","standard","full"]).optional(),include_sections:rK.array(rK.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:rK.array(rK.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:rK.union([rK.boolean(),rK.object({query:rK.string().optional(),max_characters:rK.number().optional()})]).optional(),max_age_hours:rK.number().optional(),livecrawl_timeout:rK.number().optional(),subpages:rK.number().optional(),subpage_target:rK.union([rK.string(),rK.array(rK.string())]).optional(),extras:rK.object({links:rK.number().optional(),image_links:rK.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({requestId:rK.string(),searchType:rK.string().optional(),resolvedSearchType:rK.string().optional(),results:rK.array(rK.object({title:rK.string(),url:rK.string(),id:rK.string(),publishedDate:rK.string().nullable().optional(),author:rK.string().nullable().optional(),image:rK.string().nullable().optional(),favicon:rK.string().nullable().optional(),text:rK.string().optional(),highlights:rK.array(rK.string()).optional(),highlightScores:rK.array(rK.number()).optional(),summary:rK.string().optional(),subpages:rK.array(rK.any()).optional(),extras:rK.object({links:rK.array(rK.string()).optional(),imageLinks:rK.array(rK.string()).optional()}).optional()})),costDollars:rK.object({total:rK.number().optional(),search:rK.record(rK.string(),rK.number()).optional()}).optional()}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nw=rS({id:"gateway.parallel_search",inputSchema:rg(()=>rv(rK.object({objective:rK.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:rK.array(rK.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:rK.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:rK.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:rK.object({include_domains:rK.array(rK.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:rK.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:rK.object({max_chars_per_result:rK.number().optional().describe("Maximum characters per result."),max_chars_total:rK.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:rK.object({max_age_seconds:rK.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({searchId:rK.string(),results:rK.array(rK.object({url:rK.string(),title:rK.string(),excerpt:rK.string(),publishDate:rK.string().nullable().optional(),relevanceScore:rK.number().optional()}))}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nx=rS({id:"gateway.perplexity_search",inputSchema:rg(()=>rv(rK.object({query:rK.union([rK.string(),rK.array(rK.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:rK.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:rK.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:rK.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:rK.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:rK.array(rK.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:rK.array(rK.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:rK.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:rK.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:rK.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:rK.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:rK.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({results:rK.array(rK.object({title:rK.string(),url:rK.string(),snippet:rK.string(),date:rK.string().optional(),lastUpdated:rK.string().optional()})),id:rK.string()}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nk=rK.object({count:rK.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:rK.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:rK.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:rK.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:rK.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:rK.array(rK.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:rK.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),nI=rK.object({count:rK.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:rK.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:rK.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:rK.array(rK.string()).optional().describe("Only return results from these bare domains."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:rK.number().optional().describe("Maximum characters in each web-result snippet."),highlights:rK.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:rK.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:rK.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:rK.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),n_=rg(()=>rv(rK.object({query:rK.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:rK.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:rK.object({data:nk.optional(),web:nI.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:rK.object({latitude:rK.number().describe("Latitude between -90 and 90."),longitude:rK.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:rK.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:rK.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:rK.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:rK.object({image_dark_mode:rK.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:rK.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:rK.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),nj=rK.union([rK.boolean(),rK.number(),rK.string()]).nullable(),nE=rK.object({content_format:rK.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:rK.number().optional(),data:rK.string().nullish(),records:rK.array(rK.record(rK.string(),nj)).nullish(),dataset:rK.object({columns:rK.array(rK.object({name:rK.string(),type:rK.enum(["boolean","date","datetime","number","string"]),unit:rK.string().nullish()})),rows:rK.array(rK.array(nj)),total_rows:rK.number(),truncated:rK.boolean(),ref:rK.string(),sources:rK.array(rK.object({name:rK.string(),index:rK.enum(["data","web"]).optional()})),provenance:rK.enum(["query","web_extraction"]).optional()}).nullish(),card_data:rK.object({}).passthrough().nullish(),card_data_schema:rK.object({}).passthrough().nullish(),url:rK.string().nullish(),expires_at:rK.string().nullish(),total_rows:rK.number().nullish(),truncated:rK.boolean().optional(),export_pricing:rK.object({baseline_usd:rK.number(),free_rows:rK.number(),max_rows_ceiling:rK.number(),row_cpm_usd:rK.number()}).nullish(),manifest:rK.array(rK.object({dtype:rK.enum(["boolean","date","datetime","number","string"]).nullish(),entity:rK.string().nullish(),metric:rK.string().nullish(),name:rK.string().nullish(),unit:rK.string().nullish()})).nullish()}).passthrough(),nS=rK.object({card_id:rK.string().nullish(),title:rK.string().nullish(),description:rK.string().nullish(),semantic_description:rK.string().nullish(),webpage_url:rK.string().nullish(),image_url:rK.string().nullish(),embed_url:rK.string().nullish(),sources:rK.array(rK.object({source_name:rK.string().nullish(),source_description:rK.string().nullish(),source_index:rK.enum(["data","web"]),source_text:rK.string().nullish(),url:rK.string().nullish()})).nullish(),methodologies:rK.array(rK.object({methodology_name:rK.string().nullable(),methodology_description:rK.string().nullable()})).nullish(),source_indexes:rK.array(rK.enum(["data","web"])).nullish(),card_type:rK.string().nullish(),relevance:rK.enum(["High","Low","Medium"]).nullish(),content:nE.nullish(),exportable:rK.boolean().optional(),nodes:rK.array(rK.object({id:rK.string(),type:rK.enum(["entity","metric"]),name:rK.string(),description:rK.string().nullish()})).nullish(),metric_definitions:rK.array(rK.object({name:rK.string(),definition:rK.string()})).nullish(),data_freshness:rK.object({coverage_end:rK.string().nullish(),data_as_of:rK.string().nullish(),last_updated:rK.string().nullish()}).nullish()}).passthrough(),nM=rK.object({title:rK.string(),url:rK.string(),snippet:rK.string().nullish(),source_name:rK.string().nullish(),publish_date:rK.string().nullish(),content:nE.nullish()}).passthrough(),nA=rS({id:"gateway.tako_search",inputSchema:n_,outputSchema:rg(()=>rv(rK.union([rK.object({request_id:rK.string(),cards:rK.array(nS).optional(),web_results:rK.array(nM).optional(),usage:rK.object({total_cost_usd:rK.number(),compute:rK.object({cost_usd:rK.number()}).nullish(),data:rK.object({cost_usd:rK.number(),datasets:rK.number()}).nullish()}).nullish(),related:rK.array(rK.object({}).passthrough()).nullish()}).passthrough(),rK.object({error:rK.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nT={exaSearch:(e={})=>nb(e),parallelSearch:(e={})=>nw(e),perplexitySearch:(e={})=>nx(e),takoSearch:(e={})=>nA(e)};async function nR(){var e;return null==(e=(0,rG.getContext)().headers)?void 0:e["x-vercel-id"]}var nC=rK.object({token:rK.string(),expiresAt:rK.number().nullish()});async function nO(e){let t=tH({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await (0,rG.getVercelOidcToken)(),authMethod:"oidc"}}!function(e={}){var t,r,a;let n=null,o=null,s=null!=(t=e.metadataCacheRefreshMillis)?t:3e5,i=0,l=null!=(r=null==(a=e.baseURL)?void 0:a.replace(/\/$/,""))?r:"https://ai-gateway.vercel.sh/v4/ai",u=t=>tx({Authorization:`Bearer ${t.token}`,"ai-gateway-protocol-version":"0.0.1",[aj]:t.authMethod,...null!=e.teamIdOrSlug?{[aE]:e.teamIdOrSlug}:{},...e.headers},"ai-sdk/gateway/4.0.75"),d=async()=>{try{return u(await nO(e))}catch(e){throw r1.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},c=async()=>{try{return await nO(e)}catch(e){throw r1.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},p=async t=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let r=u(await c()),a=new URL("/v1/realtime/client-secrets",l).toString();try{let{value:n}=await rj({url:a,headers:r,body:{model:t.modelId,...null!=t.routeKind&&{routeKind:t.routeKind},...null!=t.expiresAfterSeconds&&{expiresIn:t.expiresAfterSeconds}},successfulResponseHandler:rC(nC),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:e.fetch});return{token:n.token,...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}catch(e){throw await a_(e,await aS(r))}},h=()=>{let e=tH({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),t=tH({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),r=tH({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),a=tH({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let n=await nR();return{...e&&{"ai-o11y-deployment-id":e},...t&&{"ai-o11y-environment":t},...r&&{"ai-o11y-region":r},...n&&{"ai-o11y-request-id":n},...a&&{"ai-o11y-project-id":a}}}},m=t=>new aF(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()}),g=async()=>{var t,r,a;let u=null!=(a=null==(r=null==(t=e._internal)?void 0:t.currentDate)?void 0:r.call(t).getTime())?a:Date.now();return(!n||u-i>s)&&(i=u,n=new aT({baseURL:l,headers:d,fetch:e.fetch}).getAvailableModels().then(e=>(o=e,e)).catch(async e=>{throw await a_(e,await aS(await d()))})),o?Promise.resolve(o):n},f=async()=>new aT({baseURL:l,headers:d,fetch:e.fetch}).getCredits().catch(async e=>{throw await a_(e,await aS(await d()))}),y=async t=>new aO({baseURL:l,headers:d,fetch:e.fetch}).getSpendReport(t).catch(async e=>{throw await a_(e,await aS(await d()))}),v=async t=>new aP({baseURL:l,headers:d,fetch:e.fetch}).getGenerationInfo(t).catch(async e=>{throw await a_(e,await aS(await d()))}),b=function(e){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return m(e)};b.specificationVersion="v4",b.getAvailableModels=g,b.getCredits=f,b.getSpendReport=y,b.getGenerationInfo=v,b.imageModel=t=>new aQ(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()}),b.languageModel=m;let w=t=>new aK(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.embeddingModel=w,b.textEmbeddingModel=w,b.videoModel=t=>new a6(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});let x=t=>new na(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.rerankingModel=x,b.reranking=x;let k=t=>new ns(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.speechModel=k,b.speech=k;let I=t=>new nd(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h(),webSocket:e.webSocket});b.transcriptionModel=I,b.transcription=I,b.experimental_transcription=Object.assign(e=>I(e),{getToken:async e=>{let t=await p({modelId:e.model,routeKind:"transcription",...null!=e.expiresAfterSeconds&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:t.token,url:nc(l,e.model),...null!=t.expiresAt&&{expiresAt:t.expiresAt}}}});let _=t=>new nv(t,{provider:"gateway.realtime",baseURL:l,teamIdOrSlug:e.teamIdOrSlug,createClientSecret:p});b.experimental_realtime=Object.assign(e=>_(e),{getToken:async e=>{let{model:t,...r}=e,a=_(t),n=await a.doCreateClientSecret(r);return{token:n.token,url:n.url,...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}}),b.chat=b.languageModel,b.embedding=b.embeddingModel,b.image=b.imageModel,b.video=b.videoModel,b.tools=nT}();var nN=Object.defineProperty,nP="AI_InvalidArgumentError",n$=`vercel.ai.error.${nP}`,nD=Symbol.for(n$),nU=class extends(z=eA,B=nD,z){constructor({parameter:e,value:t,message:r}){super({name:nP,message:`Invalid argument for parameter ${e}: ${r}`}),this[B]=!0,this.parameter=e,this.value=t}static isInstance(e){return eA.hasMarker(e,n$)}},nF=Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError");Symbol.for("vercel.ai.error.AI_InvalidToolInputError");Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");Symbol.for("vercel.ai.error.AI_MissingToolResultsError");Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");var nL="AI_NoObjectGeneratedError",nq=`vercel.ai.error.${nL}`,nB=Symbol.for(nq),nz=class extends(V=eA,H=nB,V){constructor({message:e="No object generated.",cause:t,text:r,response:a,usage:n,finishReason:o}){super({name:nL,message:e,cause:t}),this[H]=!0,this.text=r,this.response=a,this.usage=n,this.finishReason=o}static isInstance(e){return eA.hasMarker(e,nq)}},nH=Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError");Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchToolError");Symbol.for("vercel.ai.error.AI_StreamProviderError");Symbol.for("vercel.ai.error.AI_ToolCallRepairError");Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError");var nV="AI_UIMessageStreamError",nZ=`vercel.ai.error.${nV}`,nG=Symbol.for(nZ),nY=class extends(G=eA,Z=nG,G){constructor({chunkType:e,chunkId:t,message:r}){super({name:nV,message:r}),this[Z]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return eA.hasMarker(e,nZ)}},nW=Symbol.for("vercel.ai.error.AI_InvalidDataContentError");Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");Symbol.for("vercel.ai.error.AI_MessageConversionError");Symbol.for("vercel.ai.error.AI_RetryError");var nK=async({url:e,maxBytes:t,abortSignal:r})=>{var a;let n=e.toString();try{let e=tx({},"ai-sdk/7.0.93",tm()),o=await tU({url:n,headers:e,abortSignal:r});if(!o.ok)throw await tk(o),new tE({url:n,statusCode:o.status,statusText:o.statusText});return{data:await tF({response:o,url:n,maxBytes:null!=t?t:0x80000000}),mediaType:null!=(a=o.headers.get("content-type"))?a:void 0}}catch(e){if(tE.isInstance(e))throw e;throw new tE({url:n,cause:e})}},nJ={array:rZ.array,boolean:rZ.boolean,custom:rZ.custom,discriminatedUnion:rZ.discriminatedUnion,enum:rZ.enum,instanceof:rZ.instanceof,lazy:rZ.lazy,literal:rZ.literal,looseObject:rZ.looseObject,never:rZ.never,null:rZ.null,number:rZ.number,object:rZ.object,record:rZ.record,string:rZ.string,union:rZ.union,unknown:rZ.unknown},nX=nJ.lazy(()=>nJ.union([nJ.null(),nJ.string(),nJ.number(),nJ.boolean(),nJ.record(nJ.string(),nX.optional()),nJ.array(nX)])),nQ=nJ.record(nJ.string(),nJ.record(nJ.string(),nX.optional())),n0=nJ.union([nJ.string(),nJ.instanceof(Uint8Array),nJ.instanceof(ArrayBuffer),nJ.custom(function(e){var t,r;return null!=(r=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&r},{message:"Must be a Buffer"})]),n1=nJ.record(nJ.string(),nJ.string()),n2=nJ.object({type:nJ.literal("text"),text:nJ.string(),providerOptions:nQ.optional()}),n5=nJ.object({type:nJ.literal("image"),image:nJ.union([n0,nJ.instanceof(URL),n1]),mediaType:nJ.string().optional(),providerOptions:nQ.optional()}),n4=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("data"),data:n0}),nJ.object({type:nJ.literal("url"),url:nJ.instanceof(URL)}),nJ.object({type:nJ.literal("reference"),reference:n1}),nJ.object({type:nJ.literal("text"),text:nJ.string()})]),n6=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("data"),data:n0}),nJ.object({type:nJ.literal("url"),url:nJ.instanceof(URL)})]),n9=nJ.object({type:nJ.literal("file"),data:nJ.union([n4,n0,nJ.instanceof(URL),n1]),filename:nJ.string().optional(),mediaType:nJ.string(),providerOptions:nQ.optional()}),n3=nJ.object({type:nJ.literal("reasoning"),text:nJ.string(),providerOptions:nQ.optional()}),n7=nJ.object({type:nJ.literal("custom"),kind:nJ.string().transform(e=>e),providerOptions:nQ.optional()}),n8=nJ.object({type:nJ.literal("reasoning-file"),data:nJ.union([n6,n0,nJ.instanceof(URL)]),mediaType:nJ.string(),providerOptions:nQ.optional()}),oe=nJ.object({type:nJ.literal("tool-call"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerOptions:nQ.optional(),providerExecuted:nJ.boolean().optional()}),ot=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("text"),value:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("json"),value:nX,providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("execution-denied"),reason:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("error-text"),value:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("error-json"),value:nX,providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("content"),value:nJ.array(nJ.union([nJ.object({type:nJ.literal("text"),text:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file"),data:n4,mediaType:nJ.string(),filename:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-data"),data:nJ.string(),mediaType:nJ.string(),filename:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-url"),url:nJ.string(),mediaType:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-id"),fileId:nJ.union([nJ.string(),nJ.record(nJ.string(),nJ.string())]),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-reference"),providerReference:nJ.record(nJ.string(),nJ.string()),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-data"),data:nJ.string(),mediaType:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-url"),url:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-file-id"),fileId:nJ.union([nJ.string(),nJ.record(nJ.string(),nJ.string())]),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-file-reference"),providerReference:nJ.record(nJ.string(),nJ.string()),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("custom"),providerOptions:nQ.optional()})]))})]),or=nJ.object({type:nJ.literal("tool-result"),toolCallId:nJ.string(),toolName:nJ.string(),output:ot,providerOptions:nQ.optional()}),oa=nJ.object({type:nJ.literal("tool-approval-request"),approvalId:nJ.string(),toolCallId:nJ.string(),reason:nJ.string().optional()}),on=nJ.object({type:nJ.literal("tool-approval-response"),approvalId:nJ.string(),approved:nJ.boolean(),reason:nJ.string().optional()}),oo=nJ.object({role:nJ.literal("system"),content:nJ.string(),providerOptions:nQ.optional()}),os=nJ.object({role:nJ.literal("user"),content:nJ.union([nJ.string(),nJ.array(nJ.union([n2,n5,n9]))]),providerOptions:nQ.optional()}),oi=nJ.object({role:nJ.literal("assistant"),content:nJ.union([nJ.string(),nJ.array(nJ.union([n2,n7,n9,n3,n8,oe,or,oa]))]),providerOptions:nQ.optional()}),ol=nJ.object({role:nJ.literal("tool"),content:nJ.array(nJ.union([or,on])),providerOptions:nQ.optional()});nJ.union([oo,os,oi,ol]);var ou={},od={array:()=>og,choice:()=>ov,json:()=>ob,object:()=>om,text:()=>oh};for(var oc in od)nN(ou,oc,{get:od[oc],enumerable:!0});async function op(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await rk({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await rk({text:function(e){let t=["ROOT"],r=-1,a=null,n=0;function o(e,n,o){switch(e){case'"':r=n,t.pop(),t.push(o),t.push("INSIDE_STRING");break;case"f":case"t":case"n":r=n,a=n,t.pop(),t.push(o),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(o),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r=n,t.pop(),t.push(o),t.push("INSIDE_NUMBER");break;case"{":r=n,t.pop(),t.push(o),t.push("INSIDE_OBJECT_START");break;case"[":r=n,t.pop(),t.push(o),t.push("INSIDE_ARRAY_START")}}function s(e,a){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":r=a,t.pop()}}function i(e,a){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=a,t.pop()}}for(let l=0;l<e.length;l++){let u=e[l];switch(t[t.length-1]){case"ROOT":o(u,l,"FINISH");break;case"INSIDE_OBJECT_START":switch(u){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":r=l,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===u&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":o(u,l,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":s(u,l);break;case"INSIDE_STRING":switch(u){case'"':t.pop(),r=l;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:r=l}break;case"INSIDE_ARRAY_START":"]"===u?(r=l,t.pop()):(r=l,o(u,l,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(u){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=l,t.pop();break;default:r=l}break;case"INSIDE_ARRAY_AFTER_COMMA":o(u,l,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),"u"===u?(n=0,t.push("INSIDE_STRING_UNICODE_ESCAPE")):r=l;break;case"INSIDE_STRING_UNICODE_ESCAPE":(u>="0"&&u<="9"||u>="A"&&u<="F"||u>="a"&&u<="f")&&4==++n&&(t.pop(),r=l);break;case"INSIDE_NUMBER":switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r=l;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(u,l);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(u,l);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l);break;default:t.pop()}break;case"INSIDE_LITERAL":{let n=e.substring(a,l+1);"false".startsWith(n)||"true".startsWith(n)||"null".startsWith(n)?r=l:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?s(u,l):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l))}}}let l=e.slice(0,r+1);for(let r=t.length-1;r>=0;r--)switch(t[r]){case"INSIDE_STRING":l+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":{let t=e.substring(a,e.length);"true".startsWith(t)?l+="true".slice(t.length):"false".startsWith(t)?l+="false".slice(t.length):"null".startsWith(t)&&(l+="null".slice(t.length))}}return l}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var oh=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),om=({schema:e,name:t,description:r})=>{let a=ry(e);return{name:"object",responseFormat:rM(a.jsonSchema).then(e=>({type:"json",schema:e,...null!=t&&{name:t},...null!=r&&{description:r}})),async parseCompleteOutput({text:e},t){let r=await rk({text:e});if(!r.success)throw new nz({message:"No object generated: could not parse the response.",cause:r.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let n=await rw({value:r.value,schema:a});if(!n.success)throw new nz({message:"No object generated: response did not match schema.",cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return n.value},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:t.value}}},createElementStreamTransform(){}}},og=({element:e,minItems:t,maxItems:r,name:a,description:n})=>{if(of({name:"minItems",value:t}),of({name:"maxItems",value:r}),null!=t&&null!=r&&t>r)throw new nU({parameter:"minItems",value:t,message:"minItems must be less than or equal to maxItems"});let o=ry(e);return{name:"array",responseFormat:rM(o.jsonSchema).then(e=>{let{$schema:o,definitions:s,$defs:i,...l}=e;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...null!=s&&{definitions:s},...null!=i&&{$defs:i},type:"object",properties:{elements:{type:"array",items:l,...null!=t&&{minItems:t},...null!=r&&{maxItems:r}}},required:["elements"],additionalProperties:!1},...null!=a&&{name:a},...null!=n&&{description:n}}}),async parseCompleteOutput({text:e},a){let n=await rk({text:e});if(!n.success)throw new nz({message:"No object generated: could not parse the response.",cause:n.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let s=n.value;if(null==s||"object"!=typeof s||!("elements"in s)||!Array.isArray(s.elements))throw new nz({message:"No object generated: response did not match schema.",cause:new e5({value:s,cause:"response must be an object with an elements array"}),text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=oy({value:s.elements,minItems:t,maxItems:r});if(null!=i)throw new nz({message:"No object generated: response did not match schema.",cause:i,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let l=[];for(let t of s.elements){let r=await rw({value:t,schema:o});if(!r.success)throw new nz({message:"No object generated: response did not match schema.",cause:r.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});l.push(r.value)}return l},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=t.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let r="repaired-parse"===t.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,a=[];for(let e of r){let t=await rw({value:e,schema:o});t.success&&a.push(t.value)}return{partial:a}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},a){if(null!=t)for(;e<t.length;e++){if(null!=r&&e>=r)return void a.error(oy({value:t,maxItems:r}));a.enqueue(t[e])}}})}}};function of({name:e,value:t}){if(null!=t){if(!Number.isInteger(t))throw new nU({parameter:e,value:t,message:`${e} must be an integer`});if(t<0)throw new nU({parameter:e,value:t,message:`${e} must be greater than or equal to 0`})}}function oy({value:e,minItems:t,maxItems:r}){return null!=t&&e.length<t?new e5({value:e,cause:`elements array must contain at least ${t} items`}):null!=r&&e.length>r?new e5({value:e,cause:`elements array must contain at most ${r} items`}):void 0}var ov=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...null!=t&&{name:t},...null!=r&&{description:r}}),async parseCompleteOutput({text:t},r){let a=await rk({text:t});if(!a.success)throw new nz({message:"No object generated: could not parse the response.",cause:a.error,text:t,response:r.response,usage:r.usage,finishReason:r.finishReason});let n=a.value;if(null==n||"object"!=typeof n||!("result"in n)||"string"!=typeof n.result||!e.includes(n.result))throw new nz({message:"No object generated: response did not match schema.",cause:new e5({value:n,cause:"response must be an object that contains a choice value."}),text:t,response:r.response,usage:r.usage,finishReason:r.finishReason});return n.result},async parsePartialOutput({text:t}){let r=await op(t);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let t=r.value;if(null==t||"object"!=typeof t||!("result"in t)||"string"!=typeof t.result)return;let a=e.filter(e=>e.startsWith(t.result));if("successful-parse"===r.state)return a.includes(t.result)?{partial:t.result}:void 0;return 1===a.length?{partial:a[0]}:void 0}}},createElementStreamTransform(){}}),ob=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=e&&{name:e},...null!=t&&{description:t}}),async parseCompleteOutput({text:e},t){let r=await rk({text:e});if(!r.success)throw new nz({message:"No object generated: could not parse the response.",cause:r.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return r.value},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===t.value?void 0:{partial:t.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24}),TransformStream;var ow=nJ.record(nJ.string(),nX.optional()),ox=rg(()=>rv(nJ.union([nJ.looseObject({type:nJ.literal("text-start"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("text-delta"),id:nJ.string(),delta:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("text-end"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("error"),errorText:nJ.string()}),nJ.looseObject({type:nJ.literal("tool-input-start"),toolCallId:nJ.string(),toolName:nJ.string(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-input-delta"),toolCallId:nJ.string(),inputTextDelta:nJ.string()}),nJ.looseObject({type:nJ.literal("tool-input-available"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-input-error"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),errorText:nJ.string(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-approval-request"),approvalId:nJ.string(),toolCallId:nJ.string(),approvalDescriptor:nJ.unknown().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-approval-response"),approvalId:nJ.string(),approved:nJ.boolean(),reason:nJ.string().optional(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("tool-output-available"),toolCallId:nJ.string(),output:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),preliminary:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("tool-output-error"),toolCallId:nJ.string(),errorText:nJ.string(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("tool-output-denied"),toolCallId:nJ.string()}),nJ.looseObject({type:nJ.literal("reasoning-start"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-delta"),id:nJ.string(),delta:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-end"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("custom"),kind:nJ.string().transform(e=>e),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("source-url"),sourceId:nJ.string(),url:nJ.string(),title:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("source-document"),sourceId:nJ.string(),mediaType:nJ.string(),title:nJ.string(),filename:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("file"),url:nJ.string(),mediaType:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-file"),url:nJ.string(),mediaType:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.custom(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:nJ.string().optional(),data:nJ.unknown(),transient:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("start-step")}),nJ.looseObject({type:nJ.literal("finish-step")}),nJ.looseObject({type:nJ.literal("reset-step")}),nJ.looseObject({type:nJ.literal("start"),messageId:nJ.string().optional(),messageMetadata:nJ.unknown().optional()}),nJ.looseObject({type:nJ.literal("finish"),finishReason:nJ.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:nJ.unknown().optional()}),nJ.looseObject({type:nJ.literal("abort"),reason:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("message-metadata"),messageMetadata:nJ.unknown()})])));function ok(){return Object.create(null)}function oI(e){return e.type.startsWith("tool-")}function o_(e){return"dynamic-tool"===e.type}function oj(e){return oI(e)||o_(e)}function oE(e){return e.type.split("-").slice(1).join("-")}function oS(e){return o_(e)?e.toolName:oE(e)}async function oM({stream:e,onError:t,abortSignal:r}){let a=e.getReader(),n=()=>{a.cancel().catch(()=>{})};(null==r?void 0:r.aborted)?n():null==r||r.addEventListener("abort",n,{once:!0});try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){null==t||t(e)}finally{null==r||r.removeEventListener("abort",n),a.releaseLock()}}tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24}),tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24});var oA=nJ.record(nJ.string(),nX.optional()),oT=nJ.record(nJ.string(),nJ.string());function oR(e){return({url:t,abortSignal:r})=>nK({url:t,maxBytes:null==e?void 0:e.maxBytes,abortSignal:r})}rg(()=>rv(nJ.array(nJ.object({id:nJ.string(),role:nJ.enum(["system","user","assistant"]),metadata:nJ.unknown().optional(),parts:nJ.array(nJ.union([nJ.object({type:nJ.literal("text"),text:nJ.string(),state:nJ.enum(["streaming","done"]).optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("reasoning"),id:nJ.string().optional(),text:nJ.string(),state:nJ.enum(["streaming","done"]).optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("custom"),kind:nJ.string(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("source-url"),sourceId:nJ.string(),url:nJ.string(),title:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("source-document"),sourceId:nJ.string(),mediaType:nJ.string(),title:nJ.string(),filename:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("file"),mediaType:nJ.string(),filename:nJ.string().optional(),url:nJ.string(),providerReference:oT.optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("reasoning-file"),mediaType:nJ.string(),url:nJ.string(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("step-start")}),nJ.object({type:nJ.string().startsWith("data-"),id:nJ.string().optional(),data:nJ.unknown()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-streaming"),input:nJ.unknown().optional(),providerExecuted:nJ.boolean().optional(),callProviderMetadata:nQ.optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-available"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-requested"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.never().optional(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.never().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-responded"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.boolean(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-available"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.unknown(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),preliminary:nJ.boolean().optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-error"),input:nJ.unknown().optional(),rawInput:nJ.unknown().optional(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.string(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-denied"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!1),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-streaming"),providerExecuted:nJ.boolean().optional(),callProviderMetadata:nQ.optional(),input:nJ.unknown().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-available"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-requested"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.never().optional(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.never().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-responded"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.boolean(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-available"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.unknown(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),preliminary:nJ.boolean().optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-error"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown().optional(),rawInput:nJ.unknown().optional(),output:nJ.never().optional(),errorText:nJ.string(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-denied"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!1),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})})]))}).superRefine((e,t)=>{"assistant"!==e.role&&0===e.parts.length&&t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),tL({prefix:"call",size:24}),tL({prefix:"call",size:24}),new TextEncoder,tL({prefix:"aiobj",size:24});var oC=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,r)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){r(e)}}),this.processQueue()})}};tL({prefix:"aiobj",size:24}),oR();Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function oO(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:r}=e;return{type:"file",mediaType:r,filename:t,url:await new Promise((t,r)=>{let a=new FileReader;a.onload=e=>{var r;t(null==(r=e.target)?void 0:r.result)},a.onerror=e=>r(e),a.readAsDataURL(e)})}}))}tL({prefix:"call",size:24}),oR();var oN=class{constructor({api:e="/api/chat",credentials:t,headers:r,body:a,fetch:n,prepareSendMessagesRequest:o,prepareReconnectToStreamRequest:s}){this.api=e,this.credentials=t,this.headers=r,this.body=a,this.fetch=n,this.prepareSendMessagesRequest=o,this.prepareReconnectToStreamRequest=s}async sendMessages({abortSignal:e,...t}){var r,a,n,o;let s=await rM(this.body),i=await rM(this.headers),l=await rM(this.credentials),u={...tw(i),...tw(t.headers)},d=await (null==(r=this.prepareSendMessagesRequest)?void 0:r.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...s,...t.body},headers:u,credentials:l,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),c=null!=(a=null==d?void 0:d.api)?a:this.api,p=(null==d?void 0:d.headers)!==void 0?tw(d.headers):u,h=(null==d?void 0:d.body)!==void 0?d.body:{...s,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},m=null!=(n=null==d?void 0:d.credentials)?n:l,g=null!=(o=this.fetch)?o:globalThis.fetch,f=await g(c,{method:"POST",headers:{"Content-Type":"application/json",...p},body:JSON.stringify(h),credentials:m,signal:e});if(!f.ok)throw Error(await f.text()||"Failed to fetch the chat response.");if(!f.body)throw Error("The response body is empty.");return this.processResponseStream(f.body)}async reconnectToStream(e){var t,r,a,n;let o=await rM(this.body),s=await rM(this.headers),i=await rM(this.credentials),l={...tw(s),...tw(e.headers)},u=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...o,...e.body},headers:l,credentials:i,requestMetadata:e.metadata})),d=null!=(r=null==u?void 0:u.api)?r:`${this.api}/${e.chatId}/stream`,c=(null==u?void 0:u.headers)!==void 0?tw(u.headers):l,p=null!=(a=null==u?void 0:u.credentials)?a:i,h=null!=(n=this.fetch)?n:globalThis.fetch,m=await h(d,{method:"GET",headers:c,credentials:p,signal:e.abortSignal});if(204===m.status)return null;if(!m.ok)throw Error(await m.text()||"Failed to fetch the chat response.");if(!m.body)throw Error("The response body is empty.");return this.processResponseStream(m.body)}},oP=class extends oN{constructor(e={}){super(e)}processResponseStream(e){return rI({stream:e,schema:ox}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},o$=class{constructor({generateId:e=tq,id:t=e(),transport:r=new oP,messageMetadataSchema:a,dataPartSchemas:n,state:o,onError:s,onToolCall:i,onFinish:l,onData:u,sendAutomaticallyWhen:d}){this.pendingMessagePreparations=new Set,this.activeResponse=void 0,this.activeResumeRequest=void 0,this.jobExecutor=new oC,this.sendMessage=async(e,t)=>{var r,a,n,o;let s;if(null==e)return void await this.makeRequest({trigger:"submit-message",messageId:null==(r=this.lastMessage)?void 0:r.id,...t});if("text"in e||"files"in e){let t,r=new AbortController;this.pendingMessagePreparations.add(r);try{t=Array.isArray(e.files)?e.files:await oO(e.files)}finally{this.pendingMessagePreparations.delete(r)}if(r.signal.aborted)return;s={parts:[...t,..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}}else s=e;if(null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error(`message with id ${e.messageId} not found`);if("user"!==this.state.messages[t].role)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{id:e.messageId,...s,role:null!=(a=s.role)?a:"user",metadata:e.metadata})}else this.state.pushMessage({...s,id:null!=(n=s.id)?n:this.generateId(),role:null!=(o=s.role)?o:"user",metadata:e.metadata});await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let r=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===r)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[r].role?r:r+1),await this.makeRequest({trigger:"regenerate-message",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:"resume-stream",...e})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:r,options:a})=>this.jobExecutor.run(async()=>{let n=this.state.messages,o=n[n.length-1],s=a=>oj(a)&&"approval-requested"===a.state&&a.approval.id===e?{...a,state:"approval-responded",approval:{...a.approval,id:e,approved:t,reason:r}}:a;this.state.replaceMessage(n.length-1,{...o,parts:o.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id,...a})})}),this.addToolOutput=async({state:e="output-available",toolCallId:t,output:r,errorText:a,options:n})=>this.jobExecutor.run(async()=>{let o=this.state.messages,s=o[o.length-1],i=n=>oj(n)&&n.toolCallId===t?{...n,state:e,output:r,errorText:a}:n;this.state.replaceMessage(o.length-1,{...s,parts:s.parts.map(i)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id,...n})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e,t;for(let e of this.pendingMessagePreparations)e.abort();null==(e=this.activeResumeRequest)||e.abortController.abort(),null==(t=this.activeResponse)||t.abortController.abort()},this.id=t,this.transport=r,this.generateId=e,this.messageMetadataSchema=a,this.dataPartSchemas=n,this.state=o,this.onError=s,this.onToolCall=i,this.onFinish=l,this.onData=u,this.sendAutomaticallyWhen=d}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:r,body:a,messageId:n}){var o,s,i;let l,u,d=new AbortController,c="resume-stream"===e?{abortController:d}:void 0;c&&(null==(o=this.activeResumeRequest)||o.abortController.abort(),this.activeResumeRequest=c);let p=()=>null==c||this.activeResumeRequest===c,h=()=>{this.activeResumeRequest===c&&(this.activeResumeRequest=void 0)};if("resume-stream"===e)try{let e=await this.transport.reconnectToStream({chatId:this.id,abortSignal:d.signal,metadata:t,headers:r,body:a});if(d.signal.aborted||!p()){await (null==e?void 0:e.cancel().catch(()=>{})),p()&&this.setStatus({status:"ready"}),h();return}if(null==e){this.setStatus({status:"ready"}),h();return}l=e}catch(e){if(d.signal.aborted||"AbortError"===e.name){p()&&this.setStatus({status:"ready"}),h();return}if(!p())return;this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e}),h();return}this.setStatus({status:"submitted",error:void 0});let m=this.lastMessage,g=!1,f=!1,y=!1;try{let o,s={state:function({lastMessage:e,messageId:t}){return{message:(null==e?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:ok(),activeReasoningParts:ok(),partialToolCalls:ok()}}({lastMessage:"resume-stream"===e||"regenerate-message"===e?void 0:this.state.snapshot(m),messageId:this.generateId()}),abortController:d};u=s,s.abortController.signal.addEventListener("abort",()=>{g=!0}),this.activeResponse=s,o="resume-stream"===e?l:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:s.abortController.signal,metadata:t,headers:r,body:a,trigger:e,messageId:n});let i=e=>this.jobExecutor.run(()=>s.abortController.signal.aborted?Promise.resolve():e({state:s.state,write:({updateStatus:e=!0}={})=>{var t;s.abortController.signal.aborted||(e&&this.setStatus({status:"streaming"}),s.state.message.id===(null==(t=this.lastMessage)?void 0:t.id)?this.state.replaceMessage(this.state.messages.length-1,s.state.message):this.state.pushMessage(s.state.message))}}));if(await oM({stream:function({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:a,onError:n,onToolCall:o,onData:s}){return e.pipeThrough(new TransformStream({async transform(e,i){await a(async({state:a,write:l})=>{var u,d,c,p;function h(){let e=a.message.parts,t=e.length-1;for(;t>=0&&"step-start"!==e[t].type;)t--;return e.slice(t+1)}function m(e){let t=h().filter(oj).find(t=>t.toolCallId===e);if(null==t){let r=a.message.parts;for(let a=r.length-1;a>=0;a--){let n=r[a];if(oj(n)&&n.toolCallId===e){t=n;break}}}if(null==t)throw new nY({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function g(e,t){var r;let n=null!=t?t:h().find(t=>oI(t)&&t.toolCallId===e.toolCallId);if(null!=n){n.state=e.state,n.input=e.input,n.output=e.output,n.errorText=e.errorText,n.rawInput=e.rawInput,n.preliminary=e.preliminary,void 0!==e.title&&(n.title=e.title),void 0!==e.toolMetadata&&(n.toolMetadata=e.toolMetadata),n.providerExecuted=null!=(r=e.providerExecuted)?r:n.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?n.resultProviderMetadata=t:n.callProviderMetadata=t)}else a.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}function f(e,t){var r,n;let o=null!=t?t:h().find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);if(null!=o){o.state=e.state,o.toolName=e.toolName,o.input=e.input,o.output=e.output,o.errorText=e.errorText,o.rawInput=null!=(r=e.rawInput)?r:o.rawInput,o.preliminary=e.preliminary,void 0!==e.title&&(o.title=e.title),void 0!==e.toolMetadata&&(o.toolMetadata=e.toolMetadata),o.providerExecuted=null!=(n=e.providerExecuted)?n:o.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?o.resultProviderMetadata=t:o.callProviderMetadata=t)}else a.message.parts.push({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}async function y(e){if(null!=e){let r=null!=a.message.metadata?function e(t,r){if(void 0===t&&void 0===r)return;if(void 0===t)return r;if(void 0===r)return t;let a={...t};for(let n in r)if("__proto__"!==n&&"constructor"!==n&&"prototype"!==n&&Object.prototype.hasOwnProperty.call(r,n)){let o=r[n];if(void 0===o)continue;let s=n in t?t[n]:void 0,i=null!==o&&"object"==typeof o&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),l=null!=s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp);i&&l?a[n]=e(s,o):a[n]=o}return a}(a.message.metadata,e):e;null!=t&&await rb({value:r,schema:t,context:{field:"message.metadata",entityId:a.message.id}}),a.message.metadata=r}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeTextParts[e.id]=t,a.message.parts.push(t),l();break}case"text-delta":{let t=a.activeTextParts[e.id];if(null==t)throw new nY({chunkType:"text-delta",chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(u=e.providerMetadata)?u:t.providerMetadata,l();break}case"text-end":{let t=a.activeTextParts[e.id];if(null==t)throw new nY({chunkType:"text-end",chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state="done",t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,delete a.activeTextParts[e.id],l();break}case"custom":{let t={type:"custom",kind:e.kind,providerMetadata:e.providerMetadata};a.message.parts.push(t),l();break}case"reasoning-start":{let t={type:"reasoning",id:e.id,text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeReasoningParts[e.id]=t,a.message.parts.push(t),l();break}case"reasoning-delta":{let t=a.activeReasoningParts[e.id];if(null==t)throw new nY({chunkType:"reasoning-delta",chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,l();break}case"reasoning-end":{let t=a.activeReasoningParts[e.id];if(null==t)throw new nY({chunkType:"reasoning-end",chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=null!=(p=e.providerMetadata)?p:t.providerMetadata,t.state="done",delete a.activeReasoningParts[e.id],l();break}case"file":case"reasoning-file":a.message.parts.push({type:e.type,mediaType:e.mediaType,url:e.url,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}}),l();break;case"source-url":a.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),l();break;case"source-document":a.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),l();break;case"tool-input-start":{let t=h().filter(oI);a.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title,toolMetadata:e.toolMetadata},e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}),l();break}case"tool-input-delta":{let t=a.partialToolCalls[e.toolCallId];if(null==t)throw new nY({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:r}=await op(t.text);t.dynamic?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,title:t.title,toolMetadata:t.toolMetadata}):g({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,title:t.title,toolMetadata:t.toolMetadata}),l();break}case"tool-input-available":e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}),l(),o&&!e.providerExecuted&&await o({toolCall:e});break;case"tool-input-error":{let t=h().filter(oj).find(t=>t.toolCallId===e.toolCallId);(null!=t?"dynamic-tool"===t.type:e.dynamic)?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}),l();break}case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId,...null!=e.approvalDescriptor?{descriptor:e.approvalDescriptor}:{},...null!=e.reason?{requestReason:e.reason}:{},...!0===e.isAutomatic?{isAutomatic:!0}:{},...null!=e.signature?{signature:e.signature}:{}},l();break}case"tool-approval-response":{let t=function(e){let t=a.message.parts.filter(oj).find(t=>{var r;return(null==(r=t.approval)?void 0:r.id)===e});if(null==t)throw new nY({chunkType:"tool-approval-response",chunkId:e,message:`No tool invocation found for approval ID "${e}".`});return t}(e.approvalId),r=null==t.approval?{id:e.approvalId}:t.approval;t.state="approval-responded",t.approval={...r,id:e.approvalId,approved:e.approved,...null!=e.reason?{reason:e.reason}:{}},null!=e.providerExecuted&&(t.providerExecuted=e.providerExecuted),null!=e.providerMetadata&&(t.callProviderMetadata=e.providerMetadata),l();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",l();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t):g({toolCallId:e.toolCallId,toolName:oE(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t),l();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t):g({toolCallId:e.toolCallId,toolName:oE(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t),l();break}case"start-step":a.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let e=h();a.activeTextParts=ok(),a.activeReasoningParts=ok(),a.partialToolCalls=ok(),e.length>0&&(a.message.parts.splice(a.message.parts.length-e.length,e.length),l());break}case"start":null!=e.messageId&&(a.message.id=e.messageId),await y(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&l({updateStatus:!1});break;case"finish":null!=e.finishReason&&(a.finishReason=e.finishReason),await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"message-metadata":await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"error":null==n||n(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==r?void 0:r[e.type])!=null){let t=a.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),n=t>=0?t:a.message.parts.length;await rb({value:e.data,schema:r[e.type],context:{field:`message.parts[${n}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){null==s||s(e);break}let t=null!=e.id?a.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:a.message.parts.push(e),null==s||s(e),l()}}i.enqueue(e)})}}))}({stream:o,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:i,onError:e=>{throw e}}),abortSignal:s.abortController.signal,onError:e=>{throw e}}),g)return p()&&this.setStatus({status:"ready"}),null;p()&&this.setStatus({status:"ready"})}catch(e){if(g||"AbortError"===e.name)return g=!0,p()&&this.setStatus({status:"ready"}),null;if(!p())return null;y=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(f=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{u&&(null==(s=this.onFinish)||s.call(this,{message:u.state.message,messages:this.state.messages,isAbort:g,isDisconnect:f,isError:y,finishReason:u.state.finishReason}))}finally{this.activeResponse===u&&(this.activeResponse=void 0),h()}}!y&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(i=this.lastMessage)?void 0:i.id,metadata:t,headers:r,body:a})}};e.i(560491);var oD=e.i(561866),oU=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},oF=(e,t,r)=>(oU(e,t,"read from private field"),r?r.call(e):t.get(e)),oL=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},oq=(e,t,r,a)=>(oU(e,t,"write to private field"),a?a.call(e,r):t.set(e,r),r),oB=class{constructor(e=[]){oL(this,Y,void 0),oL(this,W,"ready"),oL(this,K,void 0),oL(this,J,new Set),oL(this,X,new Set),oL(this,Q,new Set),this.pushMessage=e=>{oq(this,Y,oF(this,Y).concat(e)),oF(this,ee).call(this)},this.popMessage=()=>{oq(this,Y,oF(this,Y).slice(0,-1)),oF(this,ee).call(this)},this.replaceMessage=(e,t)=>{oq(this,Y,[...oF(this,Y).slice(0,e),this.snapshot(t),...oF(this,Y).slice(e+1)]),oF(this,ee).call(this)},this.snapshot=e=>{var t;if(null==e||"object"!=typeof e||!("parts"in e)||!Array.isArray(e.parts))return e;let r={...e,parts:e.parts.map(e=>({...e}))};return"metadata"in e&&(r.metadata=Array.isArray(t=e.metadata)?[...t]:null!=t&&"object"==typeof t&&(Object.getPrototypeOf(t)===Object.prototype||null===Object.getPrototypeOf(t))?{...t}:t),r},this["~registerMessagesCallback"]=(e,t)=>{let r=t?null!=t?(0,oD.default)(e,t):e:e;return oF(this,J).add(r),()=>{oF(this,J).delete(r)}},this["~registerStatusCallback"]=e=>(oF(this,X).add(e),()=>{oF(this,X).delete(e)}),this["~registerErrorCallback"]=e=>(oF(this,Q).add(e),()=>{oF(this,Q).delete(e)}),oL(this,ee,()=>{oF(this,J).forEach(e=>e())}),oL(this,et,()=>{oF(this,X).forEach(e=>e())}),oL(this,er,()=>{oF(this,Q).forEach(e=>e())}),oq(this,Y,e)}get status(){return oF(this,W)}set status(e){oq(this,W,e),oF(this,et).call(this)}get error(){return oF(this,K)}set error(e){oq(this,K,e),oF(this,er).call(this)}get messages(){return oF(this,Y)}set messages(e){oq(this,Y,[...e]),oF(this,ee).call(this)}};Y=new WeakMap,W=new WeakMap,K=new WeakMap,J=new WeakMap,X=new WeakMap,Q=new WeakMap,ee=new WeakMap,et=new WeakMap,er=new WeakMap;var oz=class extends o${constructor({messages:e,...t}){const r=new oB(e);super({...t,state:r}),oL(this,ea,void 0),this["~registerMessagesCallback"]=(e,t)=>oF(this,ea)["~registerMessagesCallback"](e,t),this["~registerStatusCallback"]=e=>oF(this,ea)["~registerStatusCallback"](e),this["~registerErrorCallback"]=e=>oF(this,ea)["~registerErrorCallback"](e),oq(this,ea,r)}};ea=new WeakMap;var oH=e.i(96892);let oV={name:"book-open",size:24,node:[["path",{d:"M12 5v16",key:"1f6ucr"}],["path",{d:"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z",key:"1fyvmf"}]]};oV.node;let oZ=(0,el.default)(oV);var oG=e.i(716327),oY=e.i(632781);let oW={name:"minus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}]]};oW.node;let oK=(0,el.default)(oW);var oJ=e.i(660302),oX=e.i(146538),oQ=e.i(968978),o0=e.i(213377),o1=e.i(647163);let o2=new oP({api:ey.queryKey.memoryEdit});function o5({notes:e}){let[t,r]=(0,ef.useState)(""),[a,n]=(0,ef.useState)({provider:null,model:""}),[o,s]=(0,ef.useState)(!1),{messages:i,sendMessage:l,setMessages:u,status:d,stop:c,error:p,clearError:h}=function({throttle:e,experimental_throttle:t,resume:r=!1,...a}={}){let n,o=null!=e?e:t,s=(0,ef.useRef)({});"chat"in a||(s.current={onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen,transport:a.transport});let i=()=>{var e;return null!=(e=s.current.transport)?e:null!=n?n:n=new oP},l={...a,transport:{sendMessages:e=>i().sendMessages(e),reconnectToStream:e=>i().reconnectToStream(e)},onToolCall:e=>{var t,r;return null==(r=(t=s.current).onToolCall)?void 0:r.call(t,e)},onData:e=>{var t,r;return null==(r=(t=s.current).onData)?void 0:r.call(t,e)},onFinish:e=>{var t,r;return null==(r=(t=s.current).onFinish)?void 0:r.call(t,e)},onError:e=>{var t,r;return null==(r=(t=s.current).onError)?void 0:r.call(t,e)},sendAutomaticallyWhen:e=>{var t,r,a;return null!=(a=null==(r=(t=s.current).sendAutomaticallyWhen)?void 0:r.call(t,e))&&a}},u=(0,ef.useRef)("chat"in a?a.chat:new oz(l));("chat"in a&&a.chat!==u.current||"id"in a&&null!=a.id&&u.current.id!==a.id)&&(u.current="chat"in a?a.chat:new oz(l));let d=u.current,c=(0,ef.useRef)({chat:d,messages:d.messages});c.current.chat!==d&&(c.current={chat:d,messages:d.messages});let p=(0,ef.useCallback)(e=>{let t=!0,r=d["~registerMessagesCallback"](()=>{t&&c.current.chat===d&&(c.current={chat:d,messages:d.messages},e())},o);return c.current={chat:d,messages:d.messages},()=>{t=!1,r()}},[d,o]),h=(0,ef.useCallback)(()=>c.current.messages,[]),m=(0,ef.useSyncExternalStore)(p,h,h),g=(0,ef.useCallback)(e=>d["~registerStatusCallback"](()=>{c.current.chat===d&&(("ready"===d.status||"error"===d.status)&&(c.current={chat:d,messages:d.messages}),e())}),[d]),f=(0,ef.useCallback)(()=>d.status,[d]),y=(0,ef.useSyncExternalStore)(g,f,f),v=(0,ef.useSyncExternalStore)(u.current["~registerErrorCallback"],()=>u.current.error,()=>u.current.error),b=(0,ef.useCallback)(e=>{"function"==typeof e&&(e=e(u.current.messages)),u.current.messages=e},[u]);return(0,ef.useEffect)(()=>{r&&u.current.resumeStream()},[r,u]),{id:u.current.id,messages:m,setMessages:b,sendMessage:u.current.sendMessage,regenerate:u.current.regenerate,clearError:u.current.clearError,stop:u.current.stop,error:v,resumeStream:u.current.resumeStream,status:y,addToolResult:u.current.addToolOutput,addToolOutput:u.current.addToolOutput,addToolApprovalResponse:u.current.addToolApprovalResponse}}({transport:o2}),m=(0,ef.useRef)(c);m.current=c,(0,ef.useEffect)(()=>()=>{m.current()},[]);let g=(0,ef.useRef)(new Map);for(let t of e)for(let e of t.facts)g.current.set(e.id,{text:e.text,path:t.path});let f="submitted"===d||"streaming"===d,y=!!(a.provider&&a.model.trim()),v=[...i].reverse().find(e=>"assistant"===e.role),b=v?.parts??[],w=b.filter(oj),x=b.flatMap(e=>"text"===e.type?[e.text]:[]).join(" ").trim(),k=!!p||w.some(e=>"output-error"===e.state),I=w.filter(e=>"output-available"===e.state&&oS(e)!==o0.TOOL_NAMES.memory_recall).length;(0,ef.useEffect)(()=>{if("ready"!==d||k||0===i.length)return;let e=setTimeout(()=>u([]),4e3);return()=>clearTimeout(e)},[d,k,i.length,u]);let _=f?(0,en.jsx)(oJ.ShinyText,{text:"Working on memory",className:"text-xs"}):p?(0,en.jsx)("span",{className:"text-xs text-destructive",children:p.message}):v?(0,en.jsx)("span",{className:"text-xs text-muted-foreground",children:x||(0===I?"Nothing to change":1===I?"1 change saved":`${I} changes saved`)}):null;return(0,en.jsx)("div",{className:"pointer-events-none absolute inset-x-0 bottom-18 z-10 flex justify-center px-8",children:(0,en.jsxs)("div",{className:"pointer-events-auto flex w-full max-w-120 flex-col items-center gap-2",children:[o&&(0,en.jsx)("div",{className:"w-full rounded-xl bg-popover p-2 shadow-lg ring-1 ring-foreground/10",children:(0,en.jsx)(oX.ModelPicker,{provider:a.provider,model:a.model,unset:"Provider",onChange:n})}),w.length>0&&(0,en.jsx)("ul",{className:"w-full divide-y divide-border/60 overflow-hidden rounded-xl bg-popover shadow-lg ring-1 ring-foreground/10",children:w.map(e=>(0,en.jsx)(o6,{name:oS(e),input:e.input,state:e.state,errorText:"output-error"===e.state?e.errorText:void 0,known:g.current},e.toolCallId))}),_&&(0,en.jsx)("p",{className:"max-w-full truncate px-1",children:_}),(0,en.jsxs)("form",{onSubmit:e=>{e.preventDefault();let n=t.trim();n&&y&&!f&&(r(""),s(!1),h(),u([]),l({text:n},{body:{model:a}}))},className:"flex h-10 w-full items-center gap-1.5 rounded-xl bg-popover pr-1.5 pl-3.5 shadow-lg ring-1 ring-foreground/10",children:[(0,en.jsx)("input",{value:t,onChange:e=>r(e.target.value),disabled:f,"aria-label":"Edit memory",placeholder:"Tell memory what changed",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground disabled:opacity-60"}),(0,en.jsxs)(ev.Button,{type:"button",size:"xs",variant:"ghost",onClick:()=>s(!o),className:(0,o1.cn)("max-w-44",!y&&"text-muted-foreground"),children:[y&&a.provider?(0,en.jsxs)(en.Fragment,{children:[(0,en.jsx)(oQ.ProviderIcon,{provider:a.provider,className:"size-3"}),(0,en.jsx)("span",{className:"truncate",children:a.model})]}):"Model",(0,en.jsx)(oG.ChevronDown,{className:"text-muted-foreground"})]}),(0,en.jsx)(ev.Button,{type:"submit",size:"icon-sm",loading:f,disabled:!t.trim()||!y||f,"aria-label":"Send",children:!f&&(0,en.jsx)(oH.ArrowUp,{})})]})]})})}let o4={Remember:eh.Plus,Replace:ed,Forget:oK,Rename:ed,Opened:oZ};function o6({name:e,input:t,state:r,errorText:a,known:n}){let o=function(e,t,r){let a=t??{};if(e===o0.TOOL_NAMES.memory_recall)return{kind:"Opened",path:a.path??"",lines:[],carried:!1};if(e===o0.TOOL_NAMES.memory_forget){let e=(a.factIds??[]).filter(e=>null!=e),t=e.map(e=>r.get(e));return{kind:"Forget",path:t.find(e=>e)?.path??"",lines:e.map((e,r)=>({before:t[r]?.text??`Fact #${e}`})),carried:!1}}let n=(a.facts??[]).filter(e=>null!=e),o=n.map(e=>null!=e.replaces?{before:r.get(e.replaces)?.text??`Fact #${e.replaces}`,after:e.text}:{after:e.text});a.description&&o.push({after:`“${a.description}”`});let s=(a.aliases??[]).filter(Boolean);return s.length&&o.push({after:`Called ${s.map(e=>`“${e}”`).join(", ")}`}),{kind:n.some(e=>null!=e.replaces)?"Replace":n.length?"Remember":"Rename",path:a.path??"",lines:o,carried:n.some(e=>e.alwaysLoad)}}(e,t,n),s=o4[o.kind],i="output-error"===r;return(0,en.jsxs)("li",{className:"flex animate-in items-start gap-2.5 px-3 py-2.5 duration-200 fade-in slide-in-from-bottom-1",children:[(0,en.jsx)(s,{className:"mt-1 size-3.5 shrink-0 text-muted-foreground"}),(0,en.jsxs)("div",{className:"min-w-0 flex-1 space-y-0.5",children:[o.lines.map((e,t)=>(0,en.jsxs)("div",{children:[e.before&&(0,en.jsx)("p",{className:"text-[13px] leading-5 text-muted-foreground/60 line-through",children:e.before}),e.after&&(0,en.jsx)("p",{className:"text-sm leading-5 text-foreground/90",children:e.after})]},`${o.kind}-${t}`)),(0,en.jsxs)("p",{className:"pt-0.5 font-mono text-[11px] text-muted-foreground",children:[o.kind,o.path&&` \xb7 ${o.path}`,o.carried&&" · carried into every call"]}),i&&a&&(0,en.jsx)("p",{className:"text-xs text-destructive",children:a})]}),(0,en.jsx)("span",{className:"mt-0.5 flex size-5 shrink-0 items-center justify-center text-muted-foreground",children:i?(0,en.jsx)(eg.X,{className:"size-3.5 text-destructive"}):"output-available"===r?(0,en.jsx)(ei.Check,{className:"size-3.5"}):(0,en.jsx)(oY.Loader2,{className:"size-3.5 animate-spin"})})]})}var o9=e.i(95187);let o3=(0,o9.createServerReference)("7f6646bb4ffc74bae401ad2f790ecb1c2b73aea0d3",o9.callServer,void 0,o9.findSourceMapURL,"addFactsAction"),o7=(0,o9.createServerReference)("7f3f09b549ff0f552c5fe9b285263706f0257fb4f2",o9.callServer,void 0,o9.findSourceMapURL,"createNoteAction"),o8=(0,o9.createServerReference)("7feaf6b673da50f141abb3ed2ab6e9b5411f45dc19",o9.callServer,void 0,o9.findSourceMapURL,"deleteNoteAction"),se=(0,o9.createServerReference)("7fa24d7892488547b32c0dd4fcb3dd7149af93c349",o9.callServer,void 0,o9.findSourceMapURL,"forgetFactAction"),st=(0,o9.createServerReference)("7f27d6f67bb232f052b2123054d00eae85d9879274",o9.callServer,void 0,o9.findSourceMapURL,"reviseFactAction"),sr=(0,o9.createServerReference)("7f6b3929a34f6228b7c1a78faf061dd705a7ceecee",o9.callServer,void 0,o9.findSourceMapURL,"setFactAlwaysLoadAction"),sa=(0,o9.createServerReference)("7f705757a8deddfaecfaa2f5413b6c61e129f0c684",o9.callServer,void 0,o9.findSourceMapURL,"updateNoteAction");var sn=e.i(681307),so=e.i(245629);let ss=sn.z.enum(["user","call","bot"]),si=e=>"user"===e?"you":"call"===e?"on a call":"bot"===e?"a bot":"",sl=sn.z.object({id:sn.z.number(),text:sn.z.string(),alwaysLoad:sn.z.boolean(),source:ss.nullish(),createdAt:so.DateLikeSchema});sn.z.object({id:sn.z.number(),path:sn.z.string(),description:sn.z.string(),aliases:sn.z.string().array().nullish(),ownedByUser:sn.z.boolean(),hits:sn.z.number(),lastReadAt:so.DateLikeSchema.nullable(),createdAt:so.DateLikeSchema,updatedAt:so.DateLikeSchema,factCount:sn.z.number(),facts:sl.array()});let su=[{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"}],sd=su.filter(e=>!e.path.endsWith("/")).map(e=>e.path),sc=su.filter(e=>e.path.endsWith("/")).map(e=>e.path.slice(0,-1));RegExp(`^(?:${sd.join("|")}|(?:${sc.join("|")})/.+)$`);let sp=["profile","preferences"];function sh(e){let t=e.indexOf("/");return -1===t?e:e.slice(t+1)}function sm(e){let t,r,a;return t=e.path,!sp.includes(t)&&.15>(r=(0,so.toDate)(e.lastReadAt??e.createdAt),a=Math.max(0,(Date.now()-r.getTime())/864e5),(e.hits+1)/(1+a))}[...sp];var sg=e.i(895836),sf=e.i(698570),sy=e.i(609856),sv=e.i(661504),sb=e.i(283653);let sw=[{key:"you",label:"You"},{key:"people",label:"People"},{key:"projects",label:"Projects"},{key:"topics",label:"Topics"},{key:"inbox",label:"Inbox"}];function sx({note:e}){let t=e.facts.filter(e=>e.alwaysLoad).length;return(0,en.jsxs)(en.Fragment,{children:[(0,en.jsxs)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px]",children:[e.path," · ",e.hits," ",1===e.hits?"read":"reads"," ·"," ",e.lastReadAt?`last read ${(0,es.formatDistanceToNowStrict)(e.lastReadAt,{addSuffix:!0})}`:"never read back"]}),t>0&&(0,en.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:[t," carried into every call"]})]})}function sk({note:e,active:t,onPick:r}){return(0,en.jsxs)("button",{type:"button",onClick:r,className:(0,o1.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",t?"bg-secondary text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground",sm(e)&&!t&&"opacity-55"),children:[(0,en.jsx)("span",{className:(0,o1.cn)("min-w-0 flex-1 truncate text-[13px]",t&&"font-medium"),children:sh(e.path)}),(0,en.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:e.factCount})]})}function sI({note:e}){let[t,r]=(0,ef.useState)(!1),[a,n]=(0,ef.useState)(""),o={onOk:()=>(0,sb.revalidate)(ey.queryKey.memory)},[s]=(0,sy.useServerAction)(sa,o),[i]=(0,sy.useServerAction)(o3,o),[l]=(0,sy.useServerAction)(st,o),[u]=(0,sy.useServerAction)(se,o),[d]=(0,sy.useServerAction)(sr,o),[c,p]=(0,sy.useServerAction)(o8,o),h=async()=>{let t=a.split("\n").map(e=>e.trim()).filter(Boolean);0!==t.length&&(await i(e.id,t),n(""))},m=async()=>{await ex.notify.confirm({title:`Forget ${e.path}?`,description:"Every fact in this note is deleted for good.",okText:"Delete",destructive:!0})&&c(e.id)};return(0,en.jsxs)("div",{className:(0,o1.cn)("flex min-h-full flex-col",sm(e)&&"opacity-55"),children:[(0,en.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-border/60 px-6 py-2.5",children:[(0,en.jsx)("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:e.path}),(0,en.jsxs)("span",{className:"flex shrink-0 gap-1",children:[(0,en.jsx)(ev.Button,{size:"icon-sm",variant:t?"secondary":"ghost","aria-label":t?"Done editing":"Edit this note",onClick:()=>r(!t),children:t?(0,en.jsx)(ei.Check,{}):(0,en.jsx)(ed,{})}),(0,en.jsx)(ev.Button,{size:"icon-sm",variant:"ghost","aria-label":"Forget this note",loading:p,onClick:m,children:(0,en.jsx)(em.Trash2,{})})]})]}),(0,en.jsxs)("div",{className:"flex-1 space-y-5 px-6 py-5",children:[(0,en.jsxs)("div",{className:"space-y-1.5",children:[(0,en.jsx)("p",{className:"text-xl font-semibold",children:sh(e.path)}),t?(0,en.jsx)(s_,{text:e.description,onCommit:async t=>{await s(e.id,{description:t})}}):(0,en.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:e.description})]}),t?(0,en.jsxs)("div",{className:"space-y-2",children:[e.facts.map(t=>(0,en.jsx)(sj,{text:t.text,alwaysLoad:t.alwaysLoad,onRevise:async r=>{await l(e.id,t.id,r)},onCarry:async r=>{await d(e.id,t.id,r)},onForget:async()=>{await u(e.id,t.id)}},t.id)),(0,en.jsxs)("div",{className:"flex gap-2 pt-1",children:[(0,en.jsx)(e_.Textarea,{value:a,onChange:e=>n(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),h())},placeholder:"Add facts — one per line",className:"min-h-9 resize-none py-1.5 text-sm"}),(0,en.jsx)(ev.Button,{size:"icon",variant:"outline",disabled:!a.trim(),onClick:h,children:(0,en.jsx)(eh.Plus,{})})]})]}):0===e.facts.length?(0,en.jsx)("p",{className:"text-xs text-muted-foreground/70",children:"Nothing saved here yet — the agent adds facts during calls"}):(0,en.jsx)("ul",{className:"divide-y divide-border/60 border-y border-border/60",children:e.facts.map(e=>(0,en.jsxs)("li",{className:"flex gap-3 py-3",children:[(0,en.jsx)("span",{className:"flex w-3.5 shrink-0 justify-center pt-1",children:e.alwaysLoad?(0,en.jsx)(ep,{className:"size-3 text-foreground"}):(0,en.jsx)("span",{className:"text-muted-foreground/50",children:"—"})}),(0,en.jsx)("span",{className:"flex-1 text-sm leading-relaxed text-foreground/90",children:e.text}),(0,en.jsxs)("span",{className:"shrink-0 pt-0.5 text-right text-[11px] text-muted-foreground/50",children:[(0,en.jsx)("span",{className:"block font-mono",children:(0,eo.format)(e.createdAt,"yyyy.MM.dd")}),si(e.source)&&(0,en.jsx)("span",{className:"block",children:si(e.source)})]})]},e.id))})]})]})}function s_({text:e,onCommit:t}){let r=(0,sf.useDraft)(e,t);return(0,en.jsx)(ew.Input,{value:r.value,onChange:e=>r.set(e.target.value),onBlur:r.commit,onKeyDown:r.onKeyDown,placeholder:"One-line summary",className:"text-sm text-muted-foreground"})}function sj({text:e,alwaysLoad:t,onRevise:r,onCarry:a,onForget:n}){let o=(0,sf.useDraft)(e,r);return(0,en.jsxs)("div",{className:"flex gap-2",children:[(0,en.jsx)(ew.Input,{value:o.value,onChange:e=>o.set(e.target.value),onBlur:o.commit,onKeyDown:o.onKeyDown,className:"text-sm"}),(0,en.jsx)(ev.Button,{size:"icon",variant:t?"secondary":"ghost","aria-label":t?"Stop carrying into calls":"Carry into every call",title:"Carried into every call, without opening this note",onClick:()=>a(!t),children:(0,en.jsx)(ep,{className:(0,o1.cn)(!t&&"text-muted-foreground/60")})}),(0,en.jsx)(ev.Button,{size:"icon",variant:"ghost",onClick:n,children:(0,en.jsx)(eg.X,{})})]})}let sE=[{key:"people",label:"Person",placeholder:"jihoon",fact:"Moved to the platform team in March"},{key:"projects",label:"Project",placeholder:"thursday",fact:"Ships behind a feature flag until April"},{key:"topics",label:"Topic",placeholder:"scheduling",fact:"No meetings before 10am"}];function sS(){return ex.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,en.jsx)(sM,{onDone:e})})}function sM({onDone:e}){let[t,r]=(0,ef.useState)("people"),[a,n]=(0,ef.useState)(""),[o,s]=(0,ef.useState)(""),[i,l]=(0,ef.useState)(""),[u,d,,c]=(0,sy.useServerAction)(o7,{errorMessage:!1,onOk:()=>{(0,sb.revalidate)(ey.queryKey.memory),e()}}),p=sE.find(e=>e.key===t),h=a.trim()&&o.trim()&&!d,m=()=>{h&&u(`${t}/${a.trim()}`,o.trim(),i.split("\n").map(e=>e.trim()).filter(Boolean))};return(0,en.jsxs)(sg.SettingDialogContent,{title:"New note",description:"Where the agent files what it learns about this subject.",footer:(0,en.jsxs)(en.Fragment,{children:[(0,en.jsx)(ev.Button,{variant:"ghost",onClick:e,children:"Cancel"}),(0,en.jsxs)(ev.Button,{disabled:!h,loading:d,onClick:m,children:[!d&&(0,en.jsx)(eh.Plus,{}),"Create"]})]}),children:[(0,en.jsxs)("div",{className:"space-y-6",children:[(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{children:"Kind"}),(0,en.jsx)(eI.Tabs,{value:t,onValueChange:e=>r(e),children:(0,en.jsx)(eI.TabsList,{className:"w-full",children:sE.map(e=>(0,en.jsx)(eI.TabsTrigger,{value:e.key,children:e.label},e.key))})})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-name",children:"Name"}),(0,en.jsxs)(eb.FieldContent,{children:[(0,en.jsx)(ew.Input,{id:"note-name",value:a,onChange:e=>n(e.target.value),placeholder:p?.placeholder,spellCheck:!1,required:!0}),(0,en.jsxs)("p",{className:"font-mono text-[11px] text-muted-foreground",children:[t,"/",a.trim()||"…"]})]})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-summary",children:"Summary"}),(0,en.jsx)(eb.FieldContent,{children:(0,en.jsx)(ew.Input,{id:"note-summary",value:o,onChange:e=>s(e.target.value),onKeyDown:e=>"Enter"===e.key&&m(),placeholder:"One line the agent sees in its note list",required:!0})})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-facts",children:"Facts"}),(0,en.jsx)(e_.Textarea,{id:"note-facts",value:i,onChange:e=>l(e.target.value),placeholder:`One per line
|
|
38
|
-
${p?.fact??""}`,className:"min-h-24 resize-none text-sm"})]})]}),c&&(0,en.jsx)("p",{className:"font-mono text-xs text-destructive",children:c})]})}e.s(["MemorySetting",0,function(){let{items:e,isLoading:t,isLoadingMore:r,error:a,hasMore:n,sentinelRef:o}=(0,sv.useServerPages)({key:e=>ey.queryKey.memoryPage(e*ej.PAGE_SIZE)}),[s,i]=(0,ef.useState)(null),l=e.find(e=>e.id===s)??e[0]??null;return t?(0,en.jsx)(sg.SettingPanesSkeleton,{}):a?(0,en.jsx)(sg.SettingError,{message:a.message}):(0,en.jsxs)("div",{className:"relative h-full min-h-0",children:[(0,en.jsx)(sg.SettingPanes,{footer:l&&(0,en.jsx)(sx,{note:l}),left:(0,en.jsxs)("div",{className:"flex flex-col py-2",children:[(0,en.jsxs)("button",{type:"button",onClick:sS,className:"mx-2 mb-1 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,en.jsx)(eh.Plus,{className:"size-3.5 shrink-0"}),"New note"]}),sw.map(({key:t,label:r})=>{let a=e.filter(e=>(function(e){if("profile"===e||"preferences"===e)return"you";let t=e.slice(0,e.indexOf("/"));return sc.includes(t)?t:"
|
|
37
|
+
This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`,statusCode:r,cause:a,generationId:n})}};function aI(e){if(!(e instanceof Error))return!1;let t=e.code;return"string"==typeof t&&["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(t)}async function a_(e,t){var r;return rX.isInstance(e)?e:aI(e)?ak.createTimeoutError({originalMessage:e instanceof Error?e.message:"Unknown error",cause:e}):eO.isInstance(e)?e.cause&&aI(e.cause)?ak.createTimeoutError({originalMessage:e.message,cause:e}):await av({response:function(e){if(void 0!==e.data)return e.data;if(null!=e.responseBody)try{return tW(e.responseBody)}catch(t){return e.responseBody}return{}}(e),statusCode:null!=(r=e.statusCode)?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t,isRetryable:!!e.isRetryable&&(null==e.statusCode||e.statusCode<400)||void 0}):await av({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}var aj="ai-gateway-auth-method",aE="x-vercel-ai-gateway-team";async function aS(e){let t=await rw({value:e[aj],schema:aM});return t.success?t.value:void 0}var aM=rg(()=>rv(rK.union([rK.literal("api-key"),rK.literal("oidc")]))),aA=["embedding","image","language","realtime","reranking","speech","transcription","video"],aT=class{constructor(e){this.config=e}async getAvailableModels(){try{let{value:e}=await tB({url:`${this.config.baseURL}/config`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aR),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return e}catch(e){throw await a_(e)}}async getCredits(){try{let e=new URL(this.config.baseURL),{value:t}=await tB({url:`${e.origin}/v1/credits`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aC),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return t}catch(e){throw await a_(e)}}},aR=rg(()=>rv(rK.object({models:rK.array(rK.object({id:rK.string(),name:rK.string(),description:rK.string().nullish(),pricing:rK.object({input:rK.string(),output:rK.string(),input_cache_read:rK.string().nullish(),input_cache_write:rK.string().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:a})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...a?{cacheCreationInputTokens:a}:{}})).nullish(),specification:rK.object({specificationVersion:rK.literal("v4"),provider:rK.string(),modelId:rK.string()}),modelType:rK.string().nullish()})).transform(e=>e.filter(e=>null==e.modelType||aA.includes(e.modelType)))}))),aC=rg(()=>rv(rK.object({balance:rK.string(),total_used:rK.string()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),aO=class{constructor(e){this.config=e}async getSpendReport(e){try{let t=new URL(this.config.baseURL),r=new URLSearchParams;r.set("start_date",e.startDate),r.set("end_date",e.endDate),e.groupBy&&r.set("group_by",e.groupBy),e.datePart&&r.set("date_part",e.datePart),e.userId&&r.set("user_id",e.userId),e.model&&r.set("model",e.model),e.provider&&r.set("provider",e.provider),e.credentialType&&r.set("credential_type",e.credentialType),e.tags&&e.tags.length>0&&r.set("tags",e.tags.join(","));let{value:a}=await tB({url:`${t.origin}/v1/report?${r.toString()}`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(aN),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return a}catch(e){throw await a_(e)}}},aN=rg(()=>rv(rK.object({results:rK.array(rK.object({day:rK.string().optional(),hour:rK.string().optional(),user:rK.string().optional(),model:rK.string().optional(),tag:rK.string().optional(),provider:rK.string().optional(),credential_type:rK.enum(["byok","system"]).optional(),total_cost:rK.number(),market_cost:rK.number().optional(),input_tokens:rK.number().optional(),output_tokens:rK.number().optional(),cached_input_tokens:rK.number().optional(),cache_creation_input_tokens:rK.number().optional(),reasoning_tokens:rK.number().optional(),request_count:rK.number().optional()}).transform(({credential_type:e,total_cost:t,market_cost:r,input_tokens:a,output_tokens:n,cached_input_tokens:o,cache_creation_input_tokens:s,reasoning_tokens:i,request_count:l,...u})=>({...u,...void 0!==e?{credentialType:e}:{},totalCost:t,...void 0!==r?{marketCost:r}:{},...void 0!==a?{inputTokens:a}:{},...void 0!==n?{outputTokens:n}:{},...void 0!==o?{cachedInputTokens:o}:{},...void 0!==s?{cacheCreationInputTokens:s}:{},...void 0!==i?{reasoningTokens:i}:{},...void 0!==l?{requestCount:l}:{}})))}))),aP=class{constructor(e){this.config=e}async getGenerationInfo(e){try{let t=new URL(this.config.baseURL),{value:r}=await tB({url:`${t.origin}/v1/generation?id=${encodeURIComponent(e.id)}`,validateUrl:!1,headers:this.config.headers?await rM(this.config.headers):void 0,successfulResponseHandler:rC(a$),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:this.config.fetch});return r}catch(e){throw await a_(e)}}},a$=rg(()=>rv(rK.object({data:rK.object({id:rK.string(),total_cost:rK.number(),upstream_inference_cost:rK.number(),usage:rK.number(),created_at:rK.string(),model:rK.string(),is_byok:rK.boolean(),provider_name:rK.string(),streamed:rK.boolean(),finish_reason:rK.string(),latency:rK.number(),generation_time:rK.number(),native_tokens_prompt:rK.number(),native_tokens_completion:rK.number(),native_tokens_reasoning:rK.number(),native_tokens_cached:rK.number(),native_tokens_cache_creation:rK.number(),billable_web_search_calls:rK.number()}).transform(({total_cost:e,upstream_inference_cost:t,created_at:r,is_byok:a,provider_name:n,finish_reason:o,generation_time:s,native_tokens_prompt:i,native_tokens_completion:l,native_tokens_reasoning:u,native_tokens_cached:d,native_tokens_cache_creation:c,billable_web_search_calls:p,...h})=>({...h,totalCost:e,upstreamInferenceCost:t,createdAt:r,isByok:a,providerName:n,finishReason:o,generationTime:s,promptTokens:i,completionTokens:l,reasoningTokens:u,cachedTokens:d,cacheCreationTokens:c,billableWebSearchCalls:p}))}).transform(({data:e})=>e))),aD=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.supportedUrls={"*/*":[/.*/]}}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs(e){let{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,n=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:o,value:s,rawValue:i}=await rj({url:this.getUrl(),headers:tn(n,e.headers,this.getModelConfigHeaders(this.modelId,!1),await rM(this.config.o11yHeaders)),body:t,successfulResponseHandler:rC(rK.any()),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{...s,request:{body:t},response:{headers:o,body:i},warnings:r}}catch(e){throw await a_(e,await aS(null!=n?n:{}))}}async doStream(e){let{args:t,warnings:r}=await this.getArgs(e),{abortSignal:a}=e,n=this.config.headers?await rM(this.config.headers):void 0;try{let o,{value:s,responseHeaders:i}=await rj({url:this.getUrl(),headers:tn(n,e.headers,this.getModelConfigHeaders(this.modelId,!0),await rM(this.config.o11yHeaders)),body:t,successfulResponseHandler:(o=rK.any(),async({response:e,url:t,requestBodyValues:r})=>{let a=th(e);if(null==e.body)throw new eD({});return{responseHeaders:a,value:rI({stream:function({stream:e,url:t,requestBodyValues:r,statusCode:a,responseHeaders:n}){let o=e.getReader(),s=!1,i=()=>{s||(o.releaseLock(),s=!0)};return new ReadableStream({async pull(e){try{let{done:t,value:r}=await o.read();t?(i(),e.close()):e.enqueue(r)}catch(o){if(i(),tg(o))return void e.error(o);e.error(tv({error:new eO({message:"Failed to process successful response",cause:o,statusCode:a,url:t,responseHeaders:n,requestBodyValues:r}),url:t,requestBodyValues:r}))}},async cancel(e){try{await o.cancel(e)}finally{i()}}})}({stream:e.body,url:t,requestBodyValues:r,statusCode:e.status,responseHeaders:a}),schema:o})}}),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{stream:s.pipeThrough(new TransformStream({start(e){r.length>0&&e.enqueue({type:"stream-start",warnings:r})},transform(t,r){if(t.success){let a=t.value;("raw"!==a.type||e.includeRawChunks)&&("response-metadata"===a.type&&a.timestamp&&"string"==typeof a.timestamp&&(a.timestamp=new Date(a.timestamp)),r.enqueue(a))}else r.error(t.error)}})),request:{body:t},response:{headers:i}}}catch(e){throw await a_(e,await aS(null!=n?n:{}))}}maybeEncodeFileParts(e){for(let t of e.prompt)if(Array.isArray(t.content)){for(let e of t.content)if("file"===e.type||"reasoning-file"===e.type)e.data=aU(e.data);else if("tool-result"===e.type&&"content"===e.output.type)for(let t of e.output.value)"file"===t.type&&(t.data=aU(t.data))}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"4","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}};function aU(e){if("data"===e.type){let t=e.data;if(t instanceof Uint8Array)return{...e,data:rV.Buffer.from(t).toString("base64")}}return e}var aF=class e extends aD{static[tr](e){return aD[tr](e)}static[ta](t){return new e(t.modelId,t.config)}constructor(e,t){super(e,t)}async experimental_doStartBatch({requests:e,providerOptions:t,headers:r,abortSignal:a,webhookUrl:n}){var o;let s=this.config.headers?await rM(this.config.headers):void 0,i=function(e){let t=null==e?void 0:e.gateway;if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t.idempotencyKey;return"string"==typeof r&&r.length>0?r:void 0}(t),l=function(e){let t=null==e?void 0:e.gateway;if(null==t||"object"!=typeof t||Array.isArray(t)||!("idempotencyKey"in t))return e;let{idempotencyKey:r,...a}=t,n={...e};if(0===Object.keys(a).length?delete n.gateway:n.gateway=a,0!==Object.keys(n).length)return n}(t);try{let{value:t}=await rj({url:this.getBatchUrl("start"),headers:tn(s,r,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders),null!=i?{"idempotency-key":i}:void 0),body:{...null!=n&&{callbackUrl:n},modelId:this.modelId,requests:e.map(e=>({id:e.id,options:this.maybeEncodeFileParts(e.options)})),...null!=l&&{providerOptions:l}},successfulResponseHandler:rC(aY),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...a&&{abortSignal:a},fetch:this.config.fetch});return{batchId:t.batchId,...aq(t),warnings:null!=(o=t.warnings)?o:[]}}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=s?s:{}))}}async experimental_doGetBatchStatus({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await rM(this.config.headers):void 0;try{let{value:n}=await rj({url:this.getBatchUrl("status"),headers:tn(a,t,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:rC(aW),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return aq(n)}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=a?a:{}))}}async experimental_doGetBatchResults({batchId:e,headers:t,abortSignal:r}){let a=this.config.headers?await rM(this.config.headers):void 0;try{var n;let o,{value:s}=await rj({url:this.getBatchUrl("results"),headers:tn(a,t,this.getBatchConfigHeaders(),await rM(this.config.o11yHeaders)),body:{batchId:e},successfulResponseHandler:async({response:e})=>{let t=th(e);if(null==e.body)throw new eD({});return{responseHeaders:t,value:rO({stream:e.body,schema:az})}},failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return n=aB(s),o=!1,new ReadableStream({async pull(e){if(!o)try{let{value:t,done:r}=await n.next();r?e.close():e.enqueue(t)}catch(t){e.error(t)}},async cancel(e){if(o=!0,n.return)try{await n.return(e)}catch(e){}}})}catch(e){if(aL(e))throw e;throw await a_(e,await aS(null!=a?a:{}))}}getBatchUrl(e){return`${this.config.baseURL}/batch/${e}`}getBatchConfigHeaders(){return{"ai-model-id":this.modelId}}};function aL(e){return!!(e instanceof Error||e instanceof DOMException)&&("AbortError"===e.name||"TimeoutError"===e.name)}function aq(e){var t,r,a,n;let o=function({total:e,pending:t,completed:r,failed:a}){if(tV(e)&&tV(t)&&tV(r)&&tV(a)&&t+r+a===e)return{total:e,pending:t,completed:r,failed:a}}({total:null==(t=e.requestCounts)?void 0:t.total,pending:null==(r=e.requestCounts)?void 0:r.pending,completed:null==(a=e.requestCounts)?void 0:a.completed,failed:null==(n=e.requestCounts)?void 0:n.failed});return{status:e.status,...null!=e.rawStatus&&{rawStatus:e.rawStatus},...null!=o&&{requestCounts:o},...null!=e.error&&{error:{message:e.error.message,...null!=e.error.type&&{type:e.error.type},...null!=e.error.code&&{code:e.error.code},...null!=e.error.statusCode&&{statusCode:e.error.statusCode}}},...null!=e.createdAt&&{createdAt:e.createdAt},...null!=e.expiresAt&&{expiresAt:e.expiresAt},...null!=e.providerMetadata&&{providerMetadata:e.providerMetadata}}}async function*aB(e){var t;for await(let r of e){if("succeeded"===r.status){let e=null==(t=r.result)?void 0:t.response;void 0!==e&&"string"==typeof e.timestamp&&(e.timestamp=new Date(e.timestamp))}yield r}}var az=rK.object({id:rK.string(),status:rK.enum(["cancelled","expired","failed","succeeded"])}).catchall(rK.unknown()),aH=rK.object({message:rK.string(),type:rK.string().nullish(),code:rK.string().nullish(),statusCode:rK.number().nullish()}),aV=rK.object({total:rK.number().nullish(),pending:rK.number().nullish(),completed:rK.number().nullish(),failed:rK.number().nullish()}),aZ=rK.record(rK.string(),rK.record(rK.string(),rK.unknown())),aG=rK.object({status:rK.enum(["completed","failed","pending"]),rawStatus:rK.string().nullish(),requestCounts:aV.nullish(),error:aH.nullish(),createdAt:rK.string().nullish(),expiresAt:rK.string().nullish(),providerMetadata:aZ.nullish()}),aY=aG.extend({batchId:rK.string(),warnings:rK.array(rK.object({requestId:rK.string().nullish(),warning:rK.unknown()}).catchall(rK.unknown())).nullish()}),aW=aG,aK=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:a}){var n,o;let s=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:i,value:l,rawValue:u}=await rj({url:this.getUrl(),headers:tn(s,null!=t?t:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{values:e,...a?{providerOptions:a}:{}},successfulResponseHandler:rC(aX),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:l.embeddings,usage:null!=(n=l.usage)?n:void 0,providerMetadata:l.providerMetadata,response:{headers:i,body:u},warnings:null!=(o=l.warnings)?o:[]}}catch(e){throw await a_(e,await aS(null!=s?s:{}))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"4","ai-model-id":this.modelId}}},aJ=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),aX=rg(()=>rv(rK.object({embeddings:rK.array(rK.array(rK.number())),usage:rK.object({tokens:rK.number()}).nullish(),warnings:rK.array(aJ).optional(),providerMetadata:rK.record(rK.string(),rK.record(rK.string(),rK.unknown())).optional()}))),aQ=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}static[tr](e){return rF({modelId:e.modelId,config:e.config})}static[ta](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:a,seed:n,files:o,mask:s,providerOptions:i,headers:l,abortSignal:u}){var d,c,p,h;let m=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:g,value:f}=await rj({url:this.getUrl(),headers:tn(m,null!=l?l:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...a&&{aspectRatio:a},...n&&{seed:n},...i&&{providerOptions:i},...o&&{files:o.map(e=>a0(e))},...s&&{mask:a0(s)}},successfulResponseHandler:rC(a4),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...u&&{abortSignal:u},fetch:this.config.fetch});return{images:f.images,warnings:null!=(d=f.warnings)?d:[],providerMetadata:f.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:g},...null!=f.usage&&{usage:{inputTokens:null!=(c=f.usage.inputTokens)?c:void 0,outputTokens:null!=(p=f.usage.outputTokens)?p:void 0,totalTokens:null!=(h=f.usage.totalTokens)?h:void 0}}}}catch(e){throw await a_(e,await aS(null!=m?m:{}))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"4","ai-model-id":this.modelId}}};function a0(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:tp(e.data)}:e}var a1=rK.object({images:rK.array(rK.unknown()).optional()}).catchall(rK.unknown()),a2=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),a5=rK.object({inputTokens:rK.number().nullish(),outputTokens:rK.number().nullish(),totalTokens:rK.number().nullish()}),a4=rK.object({images:rK.array(rK.string()),warnings:rK.array(a2).optional(),providerMetadata:rK.record(rK.string(),a1).optional(),usage:a5.optional()}),a6=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate(e){var t,r;let{headers:a,abortSignal:n}=e,o=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:s,value:i}=await rj({url:this.getUrl(),headers:tn(o,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders),{accept:"text/event-stream"}),body:this.buildRequestBody(e),successfulResponseHandler:async({response:e,url:t,requestBodyValues:r})=>{if(null==e.body)throw new eO({message:"SSE response body is empty",url:t,requestBodyValues:r,statusCode:e.status});let a=rI({stream:e.body,schema:ne}).getReader(),{done:n,value:o}=await a.read();if(a.releaseLock(),n||!o)throw new eO({message:"SSE stream ended without a data event",url:t,requestBodyValues:r,statusCode:e.status});if(!o.success)throw new eO({message:"Failed to parse video SSE event",cause:o.error,url:t,requestBodyValues:r,statusCode:e.status});let s=o.value;if("error"===s.type)throw new eO({message:s.message,statusCode:s.statusCode,url:t,requestBodyValues:r,responseHeaders:Object.fromEntries([...e.headers]),responseBody:JSON.stringify(s),data:{error:{message:s.message,type:s.errorType,param:s.param}}});return{value:{videos:s.videos,warnings:s.warnings,providerMetadata:s.providerMetadata},responseHeaders:Object.fromEntries([...e.headers])}},failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{videos:i.videos,warnings:null!=(t=i.warnings)?t:[],providerMetadata:null!=(r=i.providerMetadata)?r:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:s}}}catch(e){throw await a_(e,await aS(null!=o?o:{}))}}async handleWebhookOption({webhook:e}){let{url:t,received:r}=await e();return{webhookUrl:t,received:r}}async doStart(e){var t,r;let{headers:a,abortSignal:n,webhookUrl:o}=e,s=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:i,value:l}=await rj({url:this.getStartUrl(),headers:tn(s,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{...this.buildRequestBody(e),...o&&{callbackUrl:o}},successfulResponseHandler:rC(nt),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{operation:l.operation,warnings:null!=(t=l.warnings)?t:[],providerMetadata:null!=(r=l.providerMetadata)?r:void 0,response:{timestamp:new Date,modelId:this.modelId,headers:i}}}catch(e){throw await a_(e,await aS(null!=s?s:{}))}}async doStatus({operation:e,abortSignal:t,headers:r}){var a,n,o,s,i,l;let u=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:d,value:c}=await rj({url:this.getStatusUrl(),headers:tn(u,null!=r?r:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{operation:e},successfulResponseHandler:rC(nr),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...t&&{abortSignal:t},fetch:this.config.fetch}),p={timestamp:new Date,modelId:this.modelId,headers:d};if("completed"===c.status)return{status:"completed",videos:c.videos,warnings:null!=(a=c.warnings)?a:[],providerMetadata:null!=(n=c.providerMetadata)?n:void 0,response:p};if("error"===c.status)return{status:"error",error:c.error,providerMetadata:null!=(o=c.providerMetadata)?o:void 0,response:p};if("cancelled"===c.status)return{status:"error",error:"Video generation was cancelled.",providerMetadata:null!=(s=c.providerMetadata)?s:void 0,response:p};return{status:"pending",warnings:null!=(i=c.warnings)?i:[],providerMetadata:null!=(l=c.providerMetadata)?l:void 0,response:p}}catch(e){throw await a_(e,await aS(null!=u?u:{}))}}buildRequestBody({prompt:e,n:t,aspectRatio:r,resolution:a,duration:n,fps:o,seed:s,generateAudio:i,image:l,frameImages:u,inputReferences:d,providerOptions:c}){return{prompt:e,n:t,...r&&{aspectRatio:r},...a&&{resolution:a},...n&&{duration:n},...o&&{fps:o},...s&&{seed:s},...void 0!==i&&{generateAudio:i},...c&&{providerOptions:c},...l&&{image:a9(l)},...u&&{frameImages:u.map(e=>({...e,image:a9(e.image)}))},...d&&{inputReferences:d.map(e=>a9(e))}}}getUrl(){return`${this.config.baseURL}/video-model`}getStartUrl(){return`${this.config.baseURL}/video-model/start`}getStatusUrl(){return`${this.config.baseURL}/video-model/status`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"4","ai-model-id":this.modelId}}};function a9(e){return"file"===e.type&&e.data instanceof Uint8Array?{...e,data:tp(e.data)}:e}var a3=rK.object({videos:rK.array(rK.unknown()).optional()}).catchall(rK.unknown()),a7=rK.union([rK.object({type:rK.literal("url"),url:rK.string(),mediaType:rK.string()}),rK.object({type:rK.literal("base64"),data:rK.string(),mediaType:rK.string()})]),a8=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),ne=rK.discriminatedUnion("type",[rK.object({type:rK.literal("result"),videos:rK.array(a7),warnings:rK.array(a8).optional(),providerMetadata:rK.record(rK.string(),a3).optional()}),rK.object({type:rK.literal("error"),message:rK.string(),errorType:rK.string(),statusCode:rK.number(),param:rK.unknown().nullable()})]),nt=rK.object({operation:rK.unknown(),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),nr=rK.discriminatedUnion("status",[rK.object({status:rK.literal("pending"),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("completed"),videos:rK.array(a7),warnings:rK.array(a8).nullish(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("error"),error:rK.string(),providerMetadata:rK.record(rK.string(),a3).nullish()}),rK.object({status:rK.literal("cancelled"),providerMetadata:rK.record(rK.string(),a3).nullish()})]),na=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doRerank({documents:e,query:t,topN:r,headers:a,abortSignal:n,providerOptions:o}){var s;let i=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:l,value:u,rawValue:d}=await rj({url:this.getUrl(),headers:tn(i,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{documents:e,query:t,...null!=r?{topN:r}:{},...o?{providerOptions:o}:{}},successfulResponseHandler:rC(no),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{ranking:u.ranking,providerMetadata:u.providerMetadata,response:{headers:l,body:d},warnings:null!=(s=u.warnings)?s:[]}}catch(e){throw await a_(e,await aS(null!=i?i:{}))}}getUrl(){return`${this.config.baseURL}/reranking-model`}getModelConfigHeaders(){return{"ai-reranking-model-specification-version":"4","ai-model-id":this.modelId}}},nn=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),no=rg(()=>rv(rK.object({ranking:rK.array(rK.object({index:rK.number(),relevanceScore:rK.number()})),warnings:rK.array(nn).optional(),providerMetadata:rK.record(rK.string(),rK.record(rK.string(),rK.unknown())).optional()}))),ns=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({text:e,voice:t,outputFormat:r,instructions:a,speed:n,language:o,providerOptions:s,headers:i,abortSignal:l}){var u;let d=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:c,value:p,rawValue:h}=await rj({url:this.getUrl(),headers:tn(d,null!=i?i:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{text:e,...t&&{voice:t},...r&&{outputFormat:r},...a&&{instructions:a},...null!=n&&{speed:n},...o&&{language:o},...s&&{providerOptions:s}},successfulResponseHandler:rC(nu),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...l&&{abortSignal:l},fetch:this.config.fetch});return{audio:p.audio,warnings:null!=(u=p.warnings)?u:[],providerMetadata:p.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:c,body:h}}}catch(e){throw await a_(e,await aS(null!=d?d:{}))}}getUrl(){return`${this.config.baseURL}/speech-model`}getModelConfigHeaders(){return{"ai-speech-model-specification-version":"4","ai-model-id":this.modelId}}},ni=rK.object({}).catchall(rK.unknown()),nl=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),nu=rK.object({audio:rK.string(),warnings:rK.array(nl).optional(),providerMetadata:rK.record(rK.string(),ni).optional()}),nd=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v4"}get provider(){return this.config.provider}async doGenerate({audio:e,mediaType:t,providerOptions:r,headers:a,abortSignal:n}){var o,s,i,l;let u=this.config.headers?await rM(this.config.headers):void 0;try{let{responseHeaders:d,value:c,rawValue:p}=await rj({url:this.getUrl(),headers:tn(u,null!=a?a:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),body:{audio:e instanceof Uint8Array?tp(e):e,mediaType:t,...r&&{providerOptions:r}},successfulResponseHandler:rC(nm),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),...n&&{abortSignal:n},fetch:this.config.fetch});return{text:c.text,segments:null!=(o=c.segments)?o:[],language:null!=(s=c.language)?s:void 0,durationInSeconds:null!=(i=c.durationInSeconds)?i:void 0,warnings:null!=(l=c.warnings)?l:[],providerMetadata:c.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d,body:p}}}catch(e){throw await a_(e,await aS(null!=u?u:{}))}}async doStream(e){var t,r,a,n,o;let s,i,l,u=null!=(a=null==(r=null==(t=this.config._internal)?void 0:t.currentDate)?void 0:r.call(t))?a:new Date,d=tn(await rM(null!=(n=this.config.headers)?n:{}),null!=(o=e.headers)?o:{},this.getModelConfigHeaders(),await rM(this.config.o11yHeaders)),c=await aS(d),p={type:"transcription-stream.start",inputAudioFormat:e.inputAudioFormat,...null!=e.providerOptions&&{providerOptions:e.providerOptions},...null!=e.includeRawChunks&&{includeRawChunks:e.includeRawChunks}};return{stream:function({webSocket:e,url:t,protocols:r,headers:a,startFrame:n,audio:o,abortSignal:s,authMethod:i}){let l=!1,u=()=>{};return new ReadableStream({start:d=>{let c,p,h,m=!1,g=!1;u=e=>{null!=c?c.cancel().catch(()=>{}):o.cancel().catch(()=>{}),null==h||h.close(e)};let f=e=>{l||(l=!0,u(),ng(d,e,i))},y=async e=>{let t=o.getReader();c=t;try{for(;;){let{done:r,value:a}=await t.read();if(r||l)break;let n="string"==typeof a?function(e){let t=tc(e.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(t,e=>e.codePointAt(0))}(a):a;for(let t=0;t<n.length&&!l;t+=65536)e.send(n.subarray(t,t+65536)),await tu(e)}}finally{t.releaseLock(),c===t&&(c=void 0)}l||g||e.send(JSON.stringify({type:"transcription-stream.audio-done"}))};h=function({url:e,protocols:t,headers:r,webSocket:a,abortSignal:n,onOpen:o,onMessageText:s,onProcessingError:i,onSocketError:l,onClose:u,onAbort:d}){var c,p;let h,m,g=e=>{null!=m&&(null==n||n.removeEventListener("abort",m),m=void 0);try{null==h||h.close(e)}catch(e){}};if(null==n?void 0:n.aborted)return null==d||d(null!=(c=n.reason)?c:Error("Aborted")),{socket:void 0,close:g};try{h=new(function(e){let t=null!=e?e:globalThis.WebSocket;if(null==t)throw Error("No WebSocket implementation available.");return t}(a))(e,t,{headers:(p=null!=r?r:{},Object.fromEntries(Object.entries(p).filter(([e,t])=>null!=t)))})}catch(e){return i(e),{socket:void 0,close:g}}null!=n&&null!=d&&(m=()=>{var e;return d(null!=(e=n.reason)?e:Error("Aborted"))},n.addEventListener("abort",m,{once:!0}));let f=h;h.onopen=()=>{try{null==o||o(f)}catch(e){i(e)}};let y=Promise.resolve();return h.onmessage=e=>{y=y.then(()=>tl(e.data)).then(e=>s(e)).catch(i)},h.onerror=()=>{y=y.then(()=>null==l?void 0:l()).catch(i)},h.onclose=e=>{let t="number"==typeof(null==e?void 0:e.code)?e.code:void 0,r="string"==typeof(null==e?void 0:e.reason)?e.reason:void 0;y=y.then(()=>null==u?void 0:u({code:t,reason:r})).catch(i)},{socket:h,close:g}}({url:t,protocols:r,headers:a,webSocket:e,abortSignal:s,onAbort:e=>{l||(l=!0,u(),d.error(e))},onProcessingError:f,onOpen:e=>{e.send(JSON.stringify(n)),y(e).catch(f)},onMessageText:e=>{if(l)return;let t=function(e){let t;try{t=tW(e)}catch(e){return}if(null==t||"object"!=typeof t||Array.isArray(t))return;let r=t;switch(r.type){case"stream-start":return Array.isArray(r.warnings)&&r.warnings.every(rz)?r:void 0;case"transcript-delta":return rL(r.delta)&&rB(r.id,rL)&&rB(r.providerMetadata,tz)?r:void 0;case"transcript-partial":return rL(r.text)&&rB(r.id,rL)&&rB(r.startSecond,rq)&&rB(r.durationInSeconds,rq)&&rB(r.channelIndex,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"transcript-final":return rL(r.text)&&rB(r.id,rL)&&rB(r.startSecond,rq)&&rB(r.endSecond,rq)&&rB(r.channelIndex,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"finish":return rL(r.text)&&Array.isArray(r.segments)&&r.segments.every(rH)&&rB(r.language,rL)&&rB(r.durationInSeconds,rq)&&rB(r.providerMetadata,tz)?r:void 0;case"response-metadata":{if(!(rB(r.modelId,rL)&&rB(r.headers,tz)))return;let e=r.timestamp;if(null==e)return{...r,timestamp:void 0};if("string"!=typeof e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:{...r,timestamp:t}}case"raw":return"rawValue"in r?r:void 0;case"error":return"error"in r?r:void 0;default:return}}(e);if(null!=t){if("finish"===t.type){l=!0,d.enqueue(t),d.close(),u(1e3);return}"error"===t.type&&(m=!0,p=t.error,g=!0,null!=c?(c.cancel().catch(()=>{}),c=void 0):o.cancel().catch(()=>{})),d.enqueue(t)}},onSocketError:()=>{f(Error("Connection error on AI Gateway transcription stream"))},onClose:()=>{if(m){if(l)return;ny(p,i).then(f);return}f(Error("AI Gateway transcription stream closed before a finish part was received"))}})},cancel:()=>{l||(l=!0,u())}})}({webSocket:this.config.webSocket,url:nc(this.config.baseURL,this.modelId),protocols:null==(l=(null==(i=(s=tw(d)).authorization)?void 0:i.startsWith("Bearer "))?i.slice(7):void 0)?[rY]:rW(rY,l,{teamIdOrSlug:s[aE]}),headers:d,startFrame:p,audio:e.audio,abortSignal:e.abortSignal,authMethod:c}),request:{body:p},response:{timestamp:u,modelId:this.modelId}}}getUrl(){return`${this.config.baseURL}/transcription-model`}getModelConfigHeaders(){return{"ai-transcription-model-specification-version":"4","ai-model-id":this.modelId}}};function nc(e,t){let r=new URL(`${e.replace(/^http/,"ws")}/transcription-model`);return r.searchParams.set("ai-model-id",t),r.toString()}var np=rK.object({}).catchall(rK.unknown()),nh=rK.discriminatedUnion("type",[rK.object({type:rK.literal("unsupported"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("compatibility"),feature:rK.string(),details:rK.string().optional()}),rK.object({type:rK.literal("deprecated"),setting:rK.string(),message:rK.string()}),rK.object({type:rK.literal("other"),message:rK.string()})]),nm=rK.object({text:rK.string(),segments:rK.array(rK.object({text:rK.string(),startSecond:rK.number(),endSecond:rK.number()})).optional(),language:rK.string().nullish(),durationInSeconds:rK.number().nullish(),warnings:rK.array(nh).optional(),providerMetadata:rK.record(rK.string(),np).optional()});async function ng(e,t,r){e.error(await a_(t,r))}var nf={authentication_error:401,failed_dependency:424,forbidden:403,internal_server_error:500,invalid_request_error:400,model_not_found:404,rate_limit_exceeded:429};async function ny(e,t){return"object"==typeof e&&null!=e&&"message"in e&&"string"==typeof e.message&&"type"in e&&"string"==typeof e.type&&e.type in nf?av({response:{error:{message:e.message,type:e.type}},statusCode:nf[e.type],authMethod:t}):Error(`AI Gateway transcription stream failed: ${null!=e&&"object"==typeof e&&"message"in e&&"string"==typeof e.message?e.message:eU(e)}`)}var nv=class{constructor(e,t){this.specificationVersion="v4",this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){var t,r;let a,n=await this.config.createClientSecret({modelId:this.modelId,...(null==e?void 0:e.expiresAfterSeconds)!=null&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:n.token,url:(t=this.config.baseURL,r=this.modelId,(a=new URL(`${t.replace(/^http/,"ws")}/realtime-model`)).searchParams.set("ai-model-id",r),a.toString()),...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}getWebSocketConfig(e){return{url:e.url,protocols:rW("ai-gateway-realtime.v1",e.token,{teamIdOrSlug:this.config.teamIdOrSlug})}}parseServerEvent(e){return e}serializeClientEvent(e){return e}buildSessionConfig(e){return e}},nb=rS({id:"gateway.exa_search",inputSchema:rg(()=>rv(rK.object({query:rK.string().describe("Natural-language web search query. This is required."),type:rK.enum(["auto","fast","instant"]).optional().describe("Search method. Use auto for the default balance of speed and quality."),num_results:rK.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),category:rK.enum(["company","people","research paper","news","personal site","financial report"]).optional().describe("Optional content category to focus results."),user_location:rK.string().optional().describe("Two-letter ISO country code such as 'US'."),include_domains:rK.array(rK.string()).optional().describe("Only return results from these domains."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these domains."),start_published_date:rK.string().optional().describe("Only return links published after this ISO 8601 date."),end_published_date:rK.string().optional().describe("Only return links published before this ISO 8601 date."),contents:rK.object({text:rK.union([rK.boolean(),rK.object({max_characters:rK.number().optional(),include_html_tags:rK.boolean().optional(),verbosity:rK.enum(["compact","standard","full"]).optional(),include_sections:rK.array(rK.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional(),exclude_sections:rK.array(rK.enum(["header","navigation","banner","body","sidebar","footer","metadata"])).optional()})]).optional(),highlights:rK.union([rK.boolean(),rK.object({query:rK.string().optional(),max_characters:rK.number().optional()})]).optional(),max_age_hours:rK.number().optional(),livecrawl_timeout:rK.number().optional(),subpages:rK.number().optional(),subpage_target:rK.union([rK.string(),rK.array(rK.string())]).optional(),extras:rK.object({links:rK.number().optional(),image_links:rK.number().optional()}).optional()}).optional().describe("Controls extracted page content and freshness.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({requestId:rK.string(),searchType:rK.string().optional(),resolvedSearchType:rK.string().optional(),results:rK.array(rK.object({title:rK.string(),url:rK.string(),id:rK.string(),publishedDate:rK.string().nullable().optional(),author:rK.string().nullable().optional(),image:rK.string().nullable().optional(),favicon:rK.string().nullable().optional(),text:rK.string().optional(),highlights:rK.array(rK.string()).optional(),highlightScores:rK.array(rK.number()).optional(),summary:rK.string().optional(),subpages:rK.array(rK.any()).optional(),extras:rK.object({links:rK.array(rK.string()).optional(),imageLinks:rK.array(rK.string()).optional()}).optional()})),costDollars:rK.object({total:rK.number().optional(),search:rK.record(rK.string(),rK.number()).optional()}).optional()}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","execution_error","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nw=rS({id:"gateway.parallel_search",inputSchema:rg(()=>rv(rK.object({objective:rK.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:rK.array(rK.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:rK.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:rK.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:rK.object({include_domains:rK.array(rK.string()).optional().describe("Limit results to these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these domains. Use plain domain names only — e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."),after_date:rK.string().optional().describe("Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time.")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:rK.object({max_chars_per_result:rK.number().optional().describe("Maximum characters per result."),max_chars_total:rK.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:rK.object({max_age_seconds:rK.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({searchId:rK.string(),results:rK.array(rK.object({url:rK.string(),title:rK.string(),excerpt:rK.string(),publishDate:rK.string().nullable().optional(),relevanceScore:rK.number().optional()}))}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nx=rS({id:"gateway.perplexity_search",inputSchema:rg(()=>rv(rK.object({query:rK.union([rK.string(),rK.array(rK.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:rK.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:rK.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:rK.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:rK.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:rK.array(rK.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:rK.array(rK.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:rK.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:rK.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:rK.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:rK.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:rK.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),outputSchema:rg(()=>rv(rK.union([rK.object({results:rK.array(rK.object({title:rK.string(),url:rK.string(),snippet:rK.string(),date:rK.string().optional(),lastUpdated:rK.string().optional()})),id:rK.string()}),rK.object({error:rK.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nk=rK.object({count:rK.number().optional().describe("Maximum number of data results to return (1-20). When include_contents is true, each additional result adds its own data surcharge."),include_contents:rK.boolean().optional().describe("Inline rows for each data result. This adds a data surcharge based on row count and dataset source. To estimate cost, search with include_contents disabled and inspect cards.content.export_pricing. This applies to every returned card; limit sources.data.count and sources.data.max_rows to control cost."),mode:rK.enum(["inline","url"]).optional().describe("Requested data delivery mode. Search card data is always inline."),content_format:rK.enum(["card_json","csv","json_compact","json_records"]).optional().describe("Serialization for inlined card data."),max_rows:rK.number().optional().describe("Maximum rows to inline per result. Omit to use the allowance in cards.content.export_pricing. A data surcharge applies per 1,000 exported rows; lower values reduce cost."),node_ids:rK.array(rK.string()).optional().describe("Data Graph node IDs to prioritize. Maximum 20."),strict:rK.boolean().optional().describe("Only return cards matching node_ids. Requires a non-empty node_ids.")}),nI=rK.object({count:rK.number().optional().describe("Maximum number of web results to return (1-20)."),include_contents:rK.boolean().optional().describe("Inline extracted web page text. This can add a data charge."),category:rK.enum(["finance","news","sports"]).optional().describe("Optional web-result category filter."),include_domains:rK.array(rK.string()).optional().describe("Only return results from these bare domains."),exclude_domains:rK.array(rK.string()).optional().describe("Exclude results from these bare domains."),snippet_max_chars:rK.number().optional().describe("Maximum characters in each web-result snippet."),highlights:rK.boolean().optional().describe("Include highlighted passages in web results. Defaults to true in AI Gateway."),article_content_max_chars:rK.number().optional().describe("Maximum extracted characters per web page when including contents."),published_after:rK.string().optional().describe("Keep results published on or after this ISO date (YYYY-MM-DD)."),published_before:rK.string().optional().describe("Keep results published on or before this ISO date (YYYY-MM-DD).")}),n_=rg(()=>rv(rK.object({query:rK.string().describe('Natural-language search query. Include the entity, metric, and time period. Quote a phrase to force it to one entity, for example "Tesla":PRODUCT price.'),effort:rK.enum(["deep","fast","instant"]).optional().describe("Search effort. fast is the balanced default, instant favors cached results and low latency, and deep broadens retrieval with reranking at higher cost and latency."),sources:rK.object({data:nk.optional(),web:nI.optional()}).optional().describe("Sources to search. Omit to search both curated data and the web. When provided, only keys present are searched."),location:rK.object({latitude:rK.number().describe("Latitude between -90 and 90."),longitude:rK.number().describe("Longitude between -180 and 180.")}).optional().describe("End-user coordinates for localized results."),country_code:rK.string().optional().describe("Two-letter ISO 3166-1 country code, such as 'US'."),locale:rK.string().optional().describe("BCP-47 locale, such as 'en-US'."),timezone:rK.string().optional().describe("IANA timezone, such as 'America/New_York'."),output_settings:rK.object({image_dark_mode:rK.boolean().optional().describe("Render card preview images in dark mode."),force_refresh:rK.boolean().optional().describe("Instant-effort only. Request a refreshed instant result.")}).optional().describe("Controls card rendering in the search response."),include_related:rK.number().optional().describe("Maximum related search suggestions to include (1-20).")}))),nj=rK.union([rK.boolean(),rK.number(),rK.string()]).nullable(),nE=rK.object({content_format:rK.enum(["card_json","csv","json_compact","json_records"]).nullish(),cost:rK.number().optional(),data:rK.string().nullish(),records:rK.array(rK.record(rK.string(),nj)).nullish(),dataset:rK.object({columns:rK.array(rK.object({name:rK.string(),type:rK.enum(["boolean","date","datetime","number","string"]),unit:rK.string().nullish()})),rows:rK.array(rK.array(nj)),total_rows:rK.number(),truncated:rK.boolean(),ref:rK.string(),sources:rK.array(rK.object({name:rK.string(),index:rK.enum(["data","web"]).optional()})),provenance:rK.enum(["query","web_extraction"]).optional()}).nullish(),card_data:rK.object({}).passthrough().nullish(),card_data_schema:rK.object({}).passthrough().nullish(),url:rK.string().nullish(),expires_at:rK.string().nullish(),total_rows:rK.number().nullish(),truncated:rK.boolean().optional(),export_pricing:rK.object({baseline_usd:rK.number(),free_rows:rK.number(),max_rows_ceiling:rK.number(),row_cpm_usd:rK.number()}).nullish(),manifest:rK.array(rK.object({dtype:rK.enum(["boolean","date","datetime","number","string"]).nullish(),entity:rK.string().nullish(),metric:rK.string().nullish(),name:rK.string().nullish(),unit:rK.string().nullish()})).nullish()}).passthrough(),nS=rK.object({card_id:rK.string().nullish(),title:rK.string().nullish(),description:rK.string().nullish(),semantic_description:rK.string().nullish(),webpage_url:rK.string().nullish(),image_url:rK.string().nullish(),embed_url:rK.string().nullish(),sources:rK.array(rK.object({source_name:rK.string().nullish(),source_description:rK.string().nullish(),source_index:rK.enum(["data","web"]),source_text:rK.string().nullish(),url:rK.string().nullish()})).nullish(),methodologies:rK.array(rK.object({methodology_name:rK.string().nullable(),methodology_description:rK.string().nullable()})).nullish(),source_indexes:rK.array(rK.enum(["data","web"])).nullish(),card_type:rK.string().nullish(),relevance:rK.enum(["High","Low","Medium"]).nullish(),content:nE.nullish(),exportable:rK.boolean().optional(),nodes:rK.array(rK.object({id:rK.string(),type:rK.enum(["entity","metric"]),name:rK.string(),description:rK.string().nullish()})).nullish(),metric_definitions:rK.array(rK.object({name:rK.string(),definition:rK.string()})).nullish(),data_freshness:rK.object({coverage_end:rK.string().nullish(),data_as_of:rK.string().nullish(),last_updated:rK.string().nullish()}).nullish()}).passthrough(),nM=rK.object({title:rK.string(),url:rK.string(),snippet:rK.string().nullish(),source_name:rK.string().nullish(),publish_date:rK.string().nullish(),content:nE.nullish()}).passthrough(),nA=rS({id:"gateway.tako_search",inputSchema:n_,outputSchema:rg(()=>rv(rK.union([rK.object({request_id:rK.string(),cards:rK.array(nS).optional(),web_results:rK.array(nM).optional(),usage:rK.object({total_cost_usd:rK.number(),compute:rK.object({cost_usd:rK.number()}).nullish(),data:rK.object({cost_usd:rK.number(),datasets:rK.number()}).nullish()}).nullish(),related:rK.array(rK.object({}).passthrough()).nullish()}).passthrough(),rK.object({error:rK.enum(["api_error","configuration_error","execution_error","invalid_input","rate_limit","timeout","unknown_tool"]),statusCode:rK.number().optional(),message:rK.string()})])))}),nT={exaSearch:(e={})=>nb(e),parallelSearch:(e={})=>nw(e),perplexitySearch:(e={})=>nx(e),takoSearch:(e={})=>nA(e)};async function nR(){var e;return null==(e=(0,rG.getContext)().headers)?void 0:e["x-vercel-id"]}var nC=rK.object({token:rK.string(),expiresAt:rK.number().nullish()});async function nO(e){let t=tH({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await (0,rG.getVercelOidcToken)(),authMethod:"oidc"}}!function(e={}){var t,r,a;let n=null,o=null,s=null!=(t=e.metadataCacheRefreshMillis)?t:3e5,i=0,l=null!=(r=null==(a=e.baseURL)?void 0:a.replace(/\/$/,""))?r:"https://ai-gateway.vercel.sh/v4/ai",u=t=>tx({Authorization:`Bearer ${t.token}`,"ai-gateway-protocol-version":"0.0.1",[aj]:t.authMethod,...null!=e.teamIdOrSlug?{[aE]:e.teamIdOrSlug}:{},...e.headers},"ai-sdk/gateway/4.0.75"),d=async()=>{try{return u(await nO(e))}catch(e){throw r1.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},c=async()=>{try{return await nO(e)}catch(e){throw r1.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:e})}},p=async t=>{if(void 0!==globalThis.window)throw Error("AI Gateway client secrets must be minted server-side: minting needs your Gateway credential, which must never reach the browser. Call gateway.experimental_realtime.getToken() or gateway.experimental_transcription.getToken() from your server and pass the returned token to the client.");let r=u(await c()),a=new URL("/v1/realtime/client-secrets",l).toString();try{let{value:n}=await rj({url:a,headers:r,body:{model:t.modelId,...null!=t.routeKind&&{routeKind:t.routeKind},...null!=t.expiresAfterSeconds&&{expiresIn:t.expiresAfterSeconds}},successfulResponseHandler:rC(nC),failedResponseHandler:rR({errorSchema:rK.any(),errorToMessage:e=>{var t;return null!=(t=eU(e))?t:"unknown error"}}),fetch:e.fetch});return{token:n.token,...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}catch(e){throw await a_(e,await aS(r))}},h=()=>{let e=tH({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),t=tH({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),r=tH({settingValue:void 0,environmentVariableName:"VERCEL_REGION"}),a=tH({settingValue:void 0,environmentVariableName:"VERCEL_PROJECT_ID"});return async()=>{let n=await nR();return{...e&&{"ai-o11y-deployment-id":e},...t&&{"ai-o11y-environment":t},...r&&{"ai-o11y-region":r},...n&&{"ai-o11y-request-id":n},...a&&{"ai-o11y-project-id":a}}}},m=t=>new aF(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()}),g=async()=>{var t,r,a;let u=null!=(a=null==(r=null==(t=e._internal)?void 0:t.currentDate)?void 0:r.call(t).getTime())?a:Date.now();return(!n||u-i>s)&&(i=u,n=new aT({baseURL:l,headers:d,fetch:e.fetch}).getAvailableModels().then(e=>(o=e,e)).catch(async e=>{throw await a_(e,await aS(await d()))})),o?Promise.resolve(o):n},f=async()=>new aT({baseURL:l,headers:d,fetch:e.fetch}).getCredits().catch(async e=>{throw await a_(e,await aS(await d()))}),y=async t=>new aO({baseURL:l,headers:d,fetch:e.fetch}).getSpendReport(t).catch(async e=>{throw await a_(e,await aS(await d()))}),v=async t=>new aP({baseURL:l,headers:d,fetch:e.fetch}).getGenerationInfo(t).catch(async e=>{throw await a_(e,await aS(await d()))}),b=function(e){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return m(e)};b.specificationVersion="v4",b.getAvailableModels=g,b.getCredits=f,b.getSpendReport=y,b.getGenerationInfo=v,b.imageModel=t=>new aQ(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()}),b.languageModel=m;let w=t=>new aK(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.embeddingModel=w,b.textEmbeddingModel=w,b.videoModel=t=>new a6(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});let x=t=>new na(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.rerankingModel=x,b.reranking=x;let k=t=>new ns(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h()});b.speechModel=k,b.speech=k;let I=t=>new nd(t,{provider:"gateway",baseURL:l,headers:d,fetch:e.fetch,o11yHeaders:h(),webSocket:e.webSocket});b.transcriptionModel=I,b.transcription=I,b.experimental_transcription=Object.assign(e=>I(e),{getToken:async e=>{let t=await p({modelId:e.model,routeKind:"transcription",...null!=e.expiresAfterSeconds&&{expiresAfterSeconds:e.expiresAfterSeconds}});return{token:t.token,url:nc(l,e.model),...null!=t.expiresAt&&{expiresAt:t.expiresAt}}}});let _=t=>new nv(t,{provider:"gateway.realtime",baseURL:l,teamIdOrSlug:e.teamIdOrSlug,createClientSecret:p});b.experimental_realtime=Object.assign(e=>_(e),{getToken:async e=>{let{model:t,...r}=e,a=_(t),n=await a.doCreateClientSecret(r);return{token:n.token,url:n.url,...null!=n.expiresAt&&{expiresAt:n.expiresAt}}}}),b.chat=b.languageModel,b.embedding=b.embeddingModel,b.image=b.imageModel,b.video=b.videoModel,b.tools=nT}();var nN=Object.defineProperty,nP="AI_InvalidArgumentError",n$=`vercel.ai.error.${nP}`,nD=Symbol.for(n$),nU=class extends(z=eA,B=nD,z){constructor({parameter:e,value:t,message:r}){super({name:nP,message:`Invalid argument for parameter ${e}: ${r}`}),this[B]=!0,this.parameter=e,this.value=t}static isInstance(e){return eA.hasMarker(e,n$)}},nF=Symbol.for("vercel.ai.error.AI_InvalidStreamPartError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalError");Symbol.for("vercel.ai.error.AI_InvalidToolApprovalSignatureError");Symbol.for("vercel.ai.error.AI_InvalidToolInputError");Symbol.for("vercel.ai.error.AI_ToolCallNotFoundForApprovalError");Symbol.for("vercel.ai.error.AI_MissingToolResultsError");Symbol.for("vercel.ai.error.AI_NoImageGeneratedError");var nL="AI_NoObjectGeneratedError",nq=`vercel.ai.error.${nL}`,nB=Symbol.for(nq),nz=class extends(V=eA,H=nB,V){constructor({message:e="No object generated.",cause:t,text:r,response:a,usage:n,finishReason:o}){super({name:nL,message:e,cause:t}),this[H]=!0,this.text=r,this.response=a,this.usage=n,this.finishReason=o}static isInstance(e){return eA.hasMarker(e,nq)}},nH=Symbol.for("vercel.ai.error.AI_NoOutputGeneratedError");Symbol.for("vercel.ai.error.AI_NoSpeechGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranscriptGeneratedError");Symbol.for("vercel.ai.error.AI_NoTranslationGeneratedError");Symbol.for("vercel.ai.error.AI_NoVideoGeneratedError");Symbol.for("vercel.ai.error.AI_NoSuchToolError");Symbol.for("vercel.ai.error.AI_StreamProviderError");Symbol.for("vercel.ai.error.AI_ToolCallRepairError");Symbol.for("vercel.ai.error.AI_ToolChoiceViolationError");var nV="AI_UIMessageStreamError",nZ=`vercel.ai.error.${nV}`,nG=Symbol.for(nZ),nY=class extends(G=eA,Z=nG,G){constructor({chunkType:e,chunkId:t,message:r}){super({name:nV,message:r}),this[Z]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return eA.hasMarker(e,nZ)}},nW=Symbol.for("vercel.ai.error.AI_InvalidDataContentError");Symbol.for("vercel.ai.error.AI_InvalidMessageRoleError");Symbol.for("vercel.ai.error.AI_MessageConversionError");Symbol.for("vercel.ai.error.AI_RetryError");var nK=async({url:e,maxBytes:t,abortSignal:r})=>{var a;let n=e.toString();try{let e=tx({},"ai-sdk/7.0.93",tm()),o=await tU({url:n,headers:e,abortSignal:r});if(!o.ok)throw await tk(o),new tE({url:n,statusCode:o.status,statusText:o.statusText});return{data:await tF({response:o,url:n,maxBytes:null!=t?t:0x80000000}),mediaType:null!=(a=o.headers.get("content-type"))?a:void 0}}catch(e){if(tE.isInstance(e))throw e;throw new tE({url:n,cause:e})}},nJ={array:rZ.array,boolean:rZ.boolean,custom:rZ.custom,discriminatedUnion:rZ.discriminatedUnion,enum:rZ.enum,instanceof:rZ.instanceof,lazy:rZ.lazy,literal:rZ.literal,looseObject:rZ.looseObject,never:rZ.never,null:rZ.null,number:rZ.number,object:rZ.object,record:rZ.record,string:rZ.string,union:rZ.union,unknown:rZ.unknown},nX=nJ.lazy(()=>nJ.union([nJ.null(),nJ.string(),nJ.number(),nJ.boolean(),nJ.record(nJ.string(),nX.optional()),nJ.array(nX)])),nQ=nJ.record(nJ.string(),nJ.record(nJ.string(),nX.optional())),n0=nJ.union([nJ.string(),nJ.instanceof(Uint8Array),nJ.instanceof(ArrayBuffer),nJ.custom(function(e){var t,r;return null!=(r=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&r},{message:"Must be a Buffer"})]),n1=nJ.record(nJ.string(),nJ.string()),n2=nJ.object({type:nJ.literal("text"),text:nJ.string(),providerOptions:nQ.optional()}),n5=nJ.object({type:nJ.literal("image"),image:nJ.union([n0,nJ.instanceof(URL),n1]),mediaType:nJ.string().optional(),providerOptions:nQ.optional()}),n4=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("data"),data:n0}),nJ.object({type:nJ.literal("url"),url:nJ.instanceof(URL)}),nJ.object({type:nJ.literal("reference"),reference:n1}),nJ.object({type:nJ.literal("text"),text:nJ.string()})]),n6=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("data"),data:n0}),nJ.object({type:nJ.literal("url"),url:nJ.instanceof(URL)})]),n9=nJ.object({type:nJ.literal("file"),data:nJ.union([n4,n0,nJ.instanceof(URL),n1]),filename:nJ.string().optional(),mediaType:nJ.string(),providerOptions:nQ.optional()}),n3=nJ.object({type:nJ.literal("reasoning"),text:nJ.string(),providerOptions:nQ.optional()}),n7=nJ.object({type:nJ.literal("custom"),kind:nJ.string().transform(e=>e),providerOptions:nQ.optional()}),n8=nJ.object({type:nJ.literal("reasoning-file"),data:nJ.union([n6,n0,nJ.instanceof(URL)]),mediaType:nJ.string(),providerOptions:nQ.optional()}),oe=nJ.object({type:nJ.literal("tool-call"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerOptions:nQ.optional(),providerExecuted:nJ.boolean().optional()}),ot=nJ.discriminatedUnion("type",[nJ.object({type:nJ.literal("text"),value:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("json"),value:nX,providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("execution-denied"),reason:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("error-text"),value:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("error-json"),value:nX,providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("content"),value:nJ.array(nJ.union([nJ.object({type:nJ.literal("text"),text:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file"),data:n4,mediaType:nJ.string(),filename:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-data"),data:nJ.string(),mediaType:nJ.string(),filename:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-url"),url:nJ.string(),mediaType:nJ.string().optional(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-id"),fileId:nJ.union([nJ.string(),nJ.record(nJ.string(),nJ.string())]),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("file-reference"),providerReference:nJ.record(nJ.string(),nJ.string()),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-data"),data:nJ.string(),mediaType:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-url"),url:nJ.string(),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-file-id"),fileId:nJ.union([nJ.string(),nJ.record(nJ.string(),nJ.string())]),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("image-file-reference"),providerReference:nJ.record(nJ.string(),nJ.string()),providerOptions:nQ.optional()}),nJ.object({type:nJ.literal("custom"),providerOptions:nQ.optional()})]))})]),or=nJ.object({type:nJ.literal("tool-result"),toolCallId:nJ.string(),toolName:nJ.string(),output:ot,providerOptions:nQ.optional()}),oa=nJ.object({type:nJ.literal("tool-approval-request"),approvalId:nJ.string(),toolCallId:nJ.string(),reason:nJ.string().optional()}),on=nJ.object({type:nJ.literal("tool-approval-response"),approvalId:nJ.string(),approved:nJ.boolean(),reason:nJ.string().optional()}),oo=nJ.object({role:nJ.literal("system"),content:nJ.string(),providerOptions:nQ.optional()}),os=nJ.object({role:nJ.literal("user"),content:nJ.union([nJ.string(),nJ.array(nJ.union([n2,n5,n9]))]),providerOptions:nQ.optional()}),oi=nJ.object({role:nJ.literal("assistant"),content:nJ.union([nJ.string(),nJ.array(nJ.union([n2,n7,n9,n3,n8,oe,or,oa]))]),providerOptions:nQ.optional()}),ol=nJ.object({role:nJ.literal("tool"),content:nJ.array(nJ.union([or,on])),providerOptions:nQ.optional()});nJ.union([oo,os,oi,ol]);var ou={},od={array:()=>og,choice:()=>ov,json:()=>ob,object:()=>om,text:()=>oh};for(var oc in od)nN(ou,oc,{get:od[oc],enumerable:!0});async function op(e){if(void 0===e)return{value:void 0,state:"undefined-input"};let t=await rk({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await rk({text:function(e){let t=["ROOT"],r=-1,a=null,n=0;function o(e,n,o){switch(e){case'"':r=n,t.pop(),t.push(o),t.push("INSIDE_STRING");break;case"f":case"t":case"n":r=n,a=n,t.pop(),t.push(o),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(o),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r=n,t.pop(),t.push(o),t.push("INSIDE_NUMBER");break;case"{":r=n,t.pop(),t.push(o),t.push("INSIDE_OBJECT_START");break;case"[":r=n,t.pop(),t.push(o),t.push("INSIDE_ARRAY_START")}}function s(e,a){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":r=a,t.pop()}}function i(e,a){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=a,t.pop()}}for(let l=0;l<e.length;l++){let u=e[l];switch(t[t.length-1]){case"ROOT":o(u,l,"FINISH");break;case"INSIDE_OBJECT_START":switch(u){case'"':t.pop(),t.push("INSIDE_OBJECT_KEY");break;case"}":r=l,t.pop()}break;case"INSIDE_OBJECT_AFTER_COMMA":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break;case"INSIDE_OBJECT_KEY":'"'===u&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break;case"INSIDE_OBJECT_AFTER_KEY":":"===u&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break;case"INSIDE_OBJECT_BEFORE_VALUE":o(u,l,"INSIDE_OBJECT_AFTER_VALUE");break;case"INSIDE_OBJECT_AFTER_VALUE":s(u,l);break;case"INSIDE_STRING":switch(u){case'"':t.pop(),r=l;break;case"\\":t.push("INSIDE_STRING_ESCAPE");break;default:r=l}break;case"INSIDE_ARRAY_START":"]"===u?(r=l,t.pop()):(r=l,o(u,l,"INSIDE_ARRAY_AFTER_VALUE"));break;case"INSIDE_ARRAY_AFTER_VALUE":switch(u){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":r=l,t.pop();break;default:r=l}break;case"INSIDE_ARRAY_AFTER_COMMA":o(u,l,"INSIDE_ARRAY_AFTER_VALUE");break;case"INSIDE_STRING_ESCAPE":t.pop(),"u"===u?(n=0,t.push("INSIDE_STRING_UNICODE_ESCAPE")):r=l;break;case"INSIDE_STRING_UNICODE_ESCAPE":(u>="0"&&u<="9"||u>="A"&&u<="F"||u>="a"&&u<="f")&&4==++n&&(t.pop(),r=l);break;case"INSIDE_NUMBER":switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r=l;break;case"e":case"E":case"-":case".":break;case",":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(u,l);break;case"}":t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]&&s(u,l);break;case"]":t.pop(),"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l);break;default:t.pop()}break;case"INSIDE_LITERAL":{let n=e.substring(a,l+1);"false".startsWith(n)||"true".startsWith(n)||"null".startsWith(n)?r=l:(t.pop(),"INSIDE_OBJECT_AFTER_VALUE"===t[t.length-1]?s(u,l):"INSIDE_ARRAY_AFTER_VALUE"===t[t.length-1]&&i(u,l))}}}let l=e.slice(0,r+1);for(let r=t.length-1;r>=0;r--)switch(t[r]){case"INSIDE_STRING":l+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":{let t=e.substring(a,e.length);"true".startsWith(t)?l+="true".slice(t.length):"false".startsWith(t)?l+="false".slice(t.length):"null".startsWith(t)&&(l+="null".slice(t.length))}}return l}(e)})).success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"}}var oh=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),parseCompleteOutput:async({text:e})=>e,parsePartialOutput:async({text:e})=>({partial:e}),createElementStreamTransform(){}}),om=({schema:e,name:t,description:r})=>{let a=ry(e);return{name:"object",responseFormat:rM(a.jsonSchema).then(e=>({type:"json",schema:e,...null!=t&&{name:t},...null!=r&&{description:r}})),async parseCompleteOutput({text:e},t){let r=await rk({text:e});if(!r.success)throw new nz({message:"No object generated: could not parse the response.",cause:r.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});let n=await rw({value:r.value,schema:a});if(!n.success)throw new nz({message:"No object generated: response did not match schema.",cause:n.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return n.value},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:t.value}}},createElementStreamTransform(){}}},og=({element:e,minItems:t,maxItems:r,name:a,description:n})=>{if(of({name:"minItems",value:t}),of({name:"maxItems",value:r}),null!=t&&null!=r&&t>r)throw new nU({parameter:"minItems",value:t,message:"minItems must be less than or equal to maxItems"});let o=ry(e);return{name:"array",responseFormat:rM(o.jsonSchema).then(e=>{let{$schema:o,definitions:s,$defs:i,...l}=e;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...null!=s&&{definitions:s},...null!=i&&{$defs:i},type:"object",properties:{elements:{type:"array",items:l,...null!=t&&{minItems:t},...null!=r&&{maxItems:r}}},required:["elements"],additionalProperties:!1},...null!=a&&{name:a},...null!=n&&{description:n}}}),async parseCompleteOutput({text:e},a){let n=await rk({text:e});if(!n.success)throw new nz({message:"No object generated: could not parse the response.",cause:n.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let s=n.value;if(null==s||"object"!=typeof s||!("elements"in s)||!Array.isArray(s.elements))throw new nz({message:"No object generated: response did not match schema.",cause:new e5({value:s,cause:"response must be an object with an elements array"}),text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=oy({value:s.elements,minItems:t,maxItems:r});if(null!=i)throw new nz({message:"No object generated: response did not match schema.",cause:i,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});let l=[];for(let t of s.elements){let r=await rw({value:t,schema:o});if(!r.success)throw new nz({message:"No object generated: response did not match schema.",cause:r.error,text:e,response:a.response,usage:a.usage,finishReason:a.finishReason});l.push(r.value)}return l},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let e=t.value;if(null==e||"object"!=typeof e||!("elements"in e)||!Array.isArray(e.elements))return;let r="repaired-parse"===t.state&&e.elements.length>0?e.elements.slice(0,-1):e.elements,a=[];for(let e of r){let t=await rw({value:e,schema:o});t.success&&a.push(t.value)}return{partial:a}}}},createElementStreamTransform(){let e=0;return new TransformStream({transform({partialOutput:t},a){if(null!=t)for(;e<t.length;e++){if(null!=r&&e>=r)return void a.error(oy({value:t,maxItems:r}));a.enqueue(t[e])}}})}}};function of({name:e,value:t}){if(null!=t){if(!Number.isInteger(t))throw new nU({parameter:e,value:t,message:`${e} must be an integer`});if(t<0)throw new nU({parameter:e,value:t,message:`${e} must be greater than or equal to 0`})}}function oy({value:e,minItems:t,maxItems:r}){return null!=t&&e.length<t?new e5({value:e,cause:`elements array must contain at least ${t} items`}):null!=r&&e.length>r?new e5({value:e,cause:`elements array must contain at most ${r} items`}):void 0}var ov=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...null!=t&&{name:t},...null!=r&&{description:r}}),async parseCompleteOutput({text:t},r){let a=await rk({text:t});if(!a.success)throw new nz({message:"No object generated: could not parse the response.",cause:a.error,text:t,response:r.response,usage:r.usage,finishReason:r.finishReason});let n=a.value;if(null==n||"object"!=typeof n||!("result"in n)||"string"!=typeof n.result||!e.includes(n.result))throw new nz({message:"No object generated: response did not match schema.",cause:new e5({value:n,cause:"response must be an object that contains a choice value."}),text:t,response:r.response,usage:r.usage,finishReason:r.finishReason});return n.result},async parsePartialOutput({text:t}){let r=await op(t);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let t=r.value;if(null==t||"object"!=typeof t||!("result"in t)||"string"!=typeof t.result)return;let a=e.filter(e=>e.startsWith(t.result));if("successful-parse"===r.state)return a.includes(t.result)?{partial:t.result}:void 0;return 1===a.length?{partial:a[0]}:void 0}}},createElementStreamTransform(){}}),ob=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...null!=e&&{name:e},...null!=t&&{description:t}}),async parseCompleteOutput({text:e},t){let r=await rk({text:e});if(!r.success)throw new nz({message:"No object generated: could not parse the response.",cause:r.error,text:e,response:t.response,usage:t.usage,finishReason:t.finishReason});return r.value},async parsePartialOutput({text:e}){let t=await op(e);switch(t.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return void 0===t.value?void 0:{partial:t.value}}},createElementStreamTransform(){}});new TextEncoder,new TextEncoder,tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24}),TransformStream;var ow=nJ.record(nJ.string(),nX.optional()),ox=rg(()=>rv(nJ.union([nJ.looseObject({type:nJ.literal("text-start"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("text-delta"),id:nJ.string(),delta:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("text-end"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("error"),errorText:nJ.string()}),nJ.looseObject({type:nJ.literal("tool-input-start"),toolCallId:nJ.string(),toolName:nJ.string(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-input-delta"),toolCallId:nJ.string(),inputTextDelta:nJ.string()}),nJ.looseObject({type:nJ.literal("tool-input-available"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-input-error"),toolCallId:nJ.string(),toolName:nJ.string(),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),errorText:nJ.string(),title:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-approval-request"),approvalId:nJ.string(),toolCallId:nJ.string(),approvalDescriptor:nJ.unknown().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("tool-approval-response"),approvalId:nJ.string(),approved:nJ.boolean(),reason:nJ.string().optional(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("tool-output-available"),toolCallId:nJ.string(),output:nJ.unknown(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional(),preliminary:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("tool-output-error"),toolCallId:nJ.string(),errorText:nJ.string(),providerExecuted:nJ.boolean().optional(),providerMetadata:nQ.optional(),toolMetadata:ow.optional(),dynamic:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("tool-output-denied"),toolCallId:nJ.string()}),nJ.looseObject({type:nJ.literal("reasoning-start"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-delta"),id:nJ.string(),delta:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-end"),id:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("custom"),kind:nJ.string().transform(e=>e),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("source-url"),sourceId:nJ.string(),url:nJ.string(),title:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("source-document"),sourceId:nJ.string(),mediaType:nJ.string(),title:nJ.string(),filename:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("file"),url:nJ.string(),mediaType:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.literal("reasoning-file"),url:nJ.string(),mediaType:nJ.string(),providerMetadata:nQ.optional()}),nJ.looseObject({type:nJ.custom(e=>"string"==typeof e&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:nJ.string().optional(),data:nJ.unknown(),transient:nJ.boolean().optional()}),nJ.looseObject({type:nJ.literal("start-step")}),nJ.looseObject({type:nJ.literal("finish-step")}),nJ.looseObject({type:nJ.literal("reset-step")}),nJ.looseObject({type:nJ.literal("start"),messageId:nJ.string().optional(),messageMetadata:nJ.unknown().optional()}),nJ.looseObject({type:nJ.literal("finish"),finishReason:nJ.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:nJ.unknown().optional()}),nJ.looseObject({type:nJ.literal("abort"),reason:nJ.string().optional()}),nJ.looseObject({type:nJ.literal("message-metadata"),messageMetadata:nJ.unknown()})])));function ok(){return Object.create(null)}function oI(e){return e.type.startsWith("tool-")}function o_(e){return"dynamic-tool"===e.type}function oj(e){return oI(e)||o_(e)}function oE(e){return e.type.split("-").slice(1).join("-")}function oS(e){return o_(e)?e.toolName:oE(e)}async function oM({stream:e,onError:t,abortSignal:r}){let a=e.getReader(),n=()=>{a.cancel().catch(()=>{})};(null==r?void 0:r.aborted)?n():null==r||r.addEventListener("abort",n,{once:!0});try{for(;;){let{done:e}=await a.read();if(e)break}}catch(e){null==t||t(e)}finally{null==r||r.removeEventListener("abort",n),a.releaseLock()}}tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24}),tL({prefix:"aitxt",size:24}),tL({prefix:"call",size:24});var oA=nJ.record(nJ.string(),nX.optional()),oT=nJ.record(nJ.string(),nJ.string());function oR(e){return({url:t,abortSignal:r})=>nK({url:t,maxBytes:null==e?void 0:e.maxBytes,abortSignal:r})}rg(()=>rv(nJ.array(nJ.object({id:nJ.string(),role:nJ.enum(["system","user","assistant"]),metadata:nJ.unknown().optional(),parts:nJ.array(nJ.union([nJ.object({type:nJ.literal("text"),text:nJ.string(),state:nJ.enum(["streaming","done"]).optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("reasoning"),id:nJ.string().optional(),text:nJ.string(),state:nJ.enum(["streaming","done"]).optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("custom"),kind:nJ.string(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("source-url"),sourceId:nJ.string(),url:nJ.string(),title:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("source-document"),sourceId:nJ.string(),mediaType:nJ.string(),title:nJ.string(),filename:nJ.string().optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("file"),mediaType:nJ.string(),filename:nJ.string().optional(),url:nJ.string(),providerReference:oT.optional(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("reasoning-file"),mediaType:nJ.string(),url:nJ.string(),providerMetadata:nQ.optional()}),nJ.object({type:nJ.literal("step-start")}),nJ.object({type:nJ.string().startsWith("data-"),id:nJ.string().optional(),data:nJ.unknown()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-streaming"),input:nJ.unknown().optional(),providerExecuted:nJ.boolean().optional(),callProviderMetadata:nQ.optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-available"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-requested"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.never().optional(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.never().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-responded"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.boolean(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-available"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.unknown(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),preliminary:nJ.boolean().optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-error"),input:nJ.unknown().optional(),rawInput:nJ.unknown().optional(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.string(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.literal("dynamic-tool"),toolName:nJ.string(),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-denied"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!1),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-streaming"),providerExecuted:nJ.boolean().optional(),callProviderMetadata:nQ.optional(),input:nJ.unknown().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("input-available"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.never().optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-requested"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.never().optional(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.never().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("approval-responded"),input:nJ.unknown(),providerExecuted:nJ.boolean().optional(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.boolean(),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-available"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.unknown(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),preliminary:nJ.boolean().optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-error"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown().optional(),rawInput:nJ.unknown().optional(),output:nJ.never().optional(),errorText:nJ.string(),callProviderMetadata:nQ.optional(),resultProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!0),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()}).optional()}),nJ.object({type:nJ.string().startsWith("tool-"),toolCallId:nJ.string(),title:nJ.string().optional(),toolMetadata:oA.optional(),state:nJ.literal("output-denied"),providerExecuted:nJ.boolean().optional(),input:nJ.unknown(),output:nJ.never().optional(),errorText:nJ.never().optional(),callProviderMetadata:nQ.optional(),approval:nJ.object({id:nJ.string(),approved:nJ.literal(!1),descriptor:nJ.unknown().optional(),requestReason:nJ.string().optional(),reason:nJ.string().optional(),isAutomatic:nJ.boolean().optional(),signature:nJ.string().optional()})})]))}).superRefine((e,t)=>{"assistant"!==e.role&&0===e.parts.length&&t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty"))),tL({prefix:"call",size:24}),tL({prefix:"call",size:24}),new TextEncoder,tL({prefix:"aiobj",size:24});var oC=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,r)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){r(e)}}),this.processQueue()})}};tL({prefix:"aiobj",size:24}),oR();Symbol.for("vercel.ai.error.AI_NoSuchProviderError");async function oO(e){if(null==e)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async e=>{let{name:t,type:r}=e;return{type:"file",mediaType:r,filename:t,url:await new Promise((t,r)=>{let a=new FileReader;a.onload=e=>{var r;t(null==(r=e.target)?void 0:r.result)},a.onerror=e=>r(e),a.readAsDataURL(e)})}}))}tL({prefix:"call",size:24}),oR();var oN=class{constructor({api:e="/api/chat",credentials:t,headers:r,body:a,fetch:n,prepareSendMessagesRequest:o,prepareReconnectToStreamRequest:s}){this.api=e,this.credentials=t,this.headers=r,this.body=a,this.fetch=n,this.prepareSendMessagesRequest=o,this.prepareReconnectToStreamRequest=s}async sendMessages({abortSignal:e,...t}){var r,a,n,o;let s=await rM(this.body),i=await rM(this.headers),l=await rM(this.credentials),u={...tw(i),...tw(t.headers)},d=await (null==(r=this.prepareSendMessagesRequest)?void 0:r.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...s,...t.body},headers:u,credentials:l,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),c=null!=(a=null==d?void 0:d.api)?a:this.api,p=(null==d?void 0:d.headers)!==void 0?tw(d.headers):u,h=(null==d?void 0:d.body)!==void 0?d.body:{...s,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},m=null!=(n=null==d?void 0:d.credentials)?n:l,g=null!=(o=this.fetch)?o:globalThis.fetch,f=await g(c,{method:"POST",headers:{"Content-Type":"application/json",...p},body:JSON.stringify(h),credentials:m,signal:e});if(!f.ok)throw Error(await f.text()||"Failed to fetch the chat response.");if(!f.body)throw Error("The response body is empty.");return this.processResponseStream(f.body)}async reconnectToStream(e){var t,r,a,n;let o=await rM(this.body),s=await rM(this.headers),i=await rM(this.credentials),l={...tw(s),...tw(e.headers)},u=await (null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...o,...e.body},headers:l,credentials:i,requestMetadata:e.metadata})),d=null!=(r=null==u?void 0:u.api)?r:`${this.api}/${e.chatId}/stream`,c=(null==u?void 0:u.headers)!==void 0?tw(u.headers):l,p=null!=(a=null==u?void 0:u.credentials)?a:i,h=null!=(n=this.fetch)?n:globalThis.fetch,m=await h(d,{method:"GET",headers:c,credentials:p,signal:e.abortSignal});if(204===m.status)return null;if(!m.ok)throw Error(await m.text()||"Failed to fetch the chat response.");if(!m.body)throw Error("The response body is empty.");return this.processResponseStream(m.body)}},oP=class extends oN{constructor(e={}){super(e)}processResponseStream(e){return rI({stream:e,schema:ox}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},o$=class{constructor({generateId:e=tq,id:t=e(),transport:r=new oP,messageMetadataSchema:a,dataPartSchemas:n,state:o,onError:s,onToolCall:i,onFinish:l,onData:u,sendAutomaticallyWhen:d}){this.pendingMessagePreparations=new Set,this.activeResponse=void 0,this.activeResumeRequest=void 0,this.jobExecutor=new oC,this.sendMessage=async(e,t)=>{var r,a,n,o;let s;if(null==e)return void await this.makeRequest({trigger:"submit-message",messageId:null==(r=this.lastMessage)?void 0:r.id,...t});if("text"in e||"files"in e){let t,r=new AbortController;this.pendingMessagePreparations.add(r);try{t=Array.isArray(e.files)?e.files:await oO(e.files)}finally{this.pendingMessagePreparations.delete(r)}if(r.signal.aborted)return;s={parts:[...t,..."text"in e&&null!=e.text?[{type:"text",text:e.text}]:[]]}}else s=e;if(null!=e.messageId){let t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw Error(`message with id ${e.messageId} not found`);if("user"!==this.state.messages[t].role)throw Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{id:e.messageId,...s,role:null!=(a=s.role)?a:"user",metadata:e.metadata})}else this.state.pushMessage({...s,id:null!=(n=s.id)?n:this.generateId(),role:null!=(o=s.role)?o:"user",metadata:e.metadata});await this.makeRequest({trigger:"submit-message",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{let r=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===r)throw Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,"assistant"===this.messages[r].role?r:r+1),await this.makeRequest({trigger:"regenerate-message",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:"resume-stream",...e})},this.clearError=()=>{"error"===this.status&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:e,approved:t,reason:r,options:a})=>this.jobExecutor.run(async()=>{let n=this.state.messages,o=n[n.length-1],s=a=>oj(a)&&"approval-requested"===a.state&&a.approval.id===e?{...a,state:"approval-responded",approval:{...a.approval,id:e,approved:t,reason:r}}:a;this.state.replaceMessage(n.length-1,{...o,parts:o.parts.map(s)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(s)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id,...a})})}),this.addToolOutput=async({state:e="output-available",toolCallId:t,output:r,errorText:a,options:n})=>this.jobExecutor.run(async()=>{let o=this.state.messages,s=o[o.length-1],i=n=>oj(n)&&n.toolCallId===t?{...n,state:e,output:r,errorText:a}:n;this.state.replaceMessage(o.length-1,{...s,parts:s.parts.map(i)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(i)),"streaming"!==this.status&&"submitted"!==this.status&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(e=>{var t;e&&this.makeRequest({trigger:"submit-message",messageId:null==(t=this.lastMessage)?void 0:t.id,...n})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e,t;for(let e of this.pendingMessagePreparations)e.abort();null==(e=this.activeResumeRequest)||e.abortController.abort(),null==(t=this.activeResponse)||t.abortController.abort()},this.id=t,this.transport=r,this.generateId=e,this.messageMetadataSchema=a,this.dataPartSchemas=n,this.state=o,this.onError=s,this.onToolCall=i,this.onFinish=l,this.onData=u,this.sendAutomaticallyWhen=d}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async shouldSendAutomatically(){if(!this.sendAutomaticallyWhen)return!1;let e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&"object"==typeof e&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:r,body:a,messageId:n}){var o,s,i;let l,u,d=new AbortController,c="resume-stream"===e?{abortController:d}:void 0;c&&(null==(o=this.activeResumeRequest)||o.abortController.abort(),this.activeResumeRequest=c);let p=()=>null==c||this.activeResumeRequest===c,h=()=>{this.activeResumeRequest===c&&(this.activeResumeRequest=void 0)};if("resume-stream"===e)try{let e=await this.transport.reconnectToStream({chatId:this.id,abortSignal:d.signal,metadata:t,headers:r,body:a});if(d.signal.aborted||!p()){await (null==e?void 0:e.cancel().catch(()=>{})),p()&&this.setStatus({status:"ready"}),h();return}if(null==e){this.setStatus({status:"ready"}),h();return}l=e}catch(e){if(d.signal.aborted||"AbortError"===e.name){p()&&this.setStatus({status:"ready"}),h();return}if(!p())return;this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e}),h();return}this.setStatus({status:"submitted",error:void 0});let m=this.lastMessage,g=!1,f=!1,y=!1;try{let o,s={state:function({lastMessage:e,messageId:t}){return{message:(null==e?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:ok(),activeReasoningParts:ok(),partialToolCalls:ok()}}({lastMessage:"resume-stream"===e||"regenerate-message"===e?void 0:this.state.snapshot(m),messageId:this.generateId()}),abortController:d};u=s,s.abortController.signal.addEventListener("abort",()=>{g=!0}),this.activeResponse=s,o="resume-stream"===e?l:await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:s.abortController.signal,metadata:t,headers:r,body:a,trigger:e,messageId:n});let i=e=>this.jobExecutor.run(()=>s.abortController.signal.aborted?Promise.resolve():e({state:s.state,write:({updateStatus:e=!0}={})=>{var t;s.abortController.signal.aborted||(e&&this.setStatus({status:"streaming"}),s.state.message.id===(null==(t=this.lastMessage)?void 0:t.id)?this.state.replaceMessage(this.state.messages.length-1,s.state.message):this.state.pushMessage(s.state.message))}}));if(await oM({stream:function({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:a,onError:n,onToolCall:o,onData:s}){return e.pipeThrough(new TransformStream({async transform(e,i){await a(async({state:a,write:l})=>{var u,d,c,p;function h(){let e=a.message.parts,t=e.length-1;for(;t>=0&&"step-start"!==e[t].type;)t--;return e.slice(t+1)}function m(e){let t=h().filter(oj).find(t=>t.toolCallId===e);if(null==t){let r=a.message.parts;for(let a=r.length-1;a>=0;a--){let n=r[a];if(oj(n)&&n.toolCallId===e){t=n;break}}}if(null==t)throw new nY({chunkType:"tool-invocation",chunkId:e,message:`No tool invocation found for tool call ID "${e}".`});return t}function g(e,t){var r;let n=null!=t?t:h().find(t=>oI(t)&&t.toolCallId===e.toolCallId);if(null!=n){n.state=e.state,n.input=e.input,n.output=e.output,n.errorText=e.errorText,n.rawInput=e.rawInput,n.preliminary=e.preliminary,void 0!==e.title&&(n.title=e.title),void 0!==e.toolMetadata&&(n.toolMetadata=e.toolMetadata),n.providerExecuted=null!=(r=e.providerExecuted)?r:n.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?n.resultProviderMetadata=t:n.callProviderMetadata=t)}else a.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},input:e.input,output:e.output,rawInput:e.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,preliminary:e.preliminary,...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}function f(e,t){var r,n;let o=null!=t?t:h().find(t=>"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId);if(null!=o){o.state=e.state,o.toolName=e.toolName,o.input=e.input,o.output=e.output,o.errorText=e.errorText,o.rawInput=null!=(r=e.rawInput)?r:o.rawInput,o.preliminary=e.preliminary,void 0!==e.title&&(o.title=e.title),void 0!==e.toolMetadata&&(o.toolMetadata=e.toolMetadata),o.providerExecuted=null!=(n=e.providerExecuted)?n:o.providerExecuted;let t=e.providerMetadata;null!=t&&("output-available"===e.state||"output-error"===e.state?o.resultProviderMetadata=t:o.callProviderMetadata=t)}else a.message.parts.push({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:e.input,output:e.output,errorText:e.errorText,preliminary:e.preliminary,providerExecuted:e.providerExecuted,title:e.title,...void 0!==e.toolMetadata?{toolMetadata:e.toolMetadata}:{},...null!=e.providerMetadata&&("output-available"===e.state||"output-error"===e.state)?{resultProviderMetadata:e.providerMetadata}:{},...null!=e.providerMetadata&&"output-available"!==e.state&&"output-error"!==e.state?{callProviderMetadata:e.providerMetadata}:{}})}async function y(e){if(null!=e){let r=null!=a.message.metadata?function e(t,r){if(void 0===t&&void 0===r)return;if(void 0===t)return r;if(void 0===r)return t;let a={...t};for(let n in r)if("__proto__"!==n&&"constructor"!==n&&"prototype"!==n&&Object.prototype.hasOwnProperty.call(r,n)){let o=r[n];if(void 0===o)continue;let s=n in t?t[n]:void 0,i=null!==o&&"object"==typeof o&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),l=null!=s&&"object"==typeof s&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp);i&&l?a[n]=e(s,o):a[n]=o}return a}(a.message.metadata,e):e;null!=t&&await rb({value:r,schema:t,context:{field:"message.metadata",entityId:a.message.id}}),a.message.metadata=r}}switch(e.type){case"text-start":{let t={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeTextParts[e.id]=t,a.message.parts.push(t),l();break}case"text-delta":{let t=a.activeTextParts[e.id];if(null==t)throw new nY({chunkType:"text-delta",chunkId:e.id,message:`Received text-delta for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(u=e.providerMetadata)?u:t.providerMetadata,l();break}case"text-end":{let t=a.activeTextParts[e.id];if(null==t)throw new nY({chunkType:"text-end",chunkId:e.id,message:`Received text-end for missing text part with ID "${e.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});t.state="done",t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,delete a.activeTextParts[e.id],l();break}case"custom":{let t={type:"custom",kind:e.kind,providerMetadata:e.providerMetadata};a.message.parts.push(t),l();break}case"reasoning-start":{let t={type:"reasoning",id:e.id,text:"",providerMetadata:e.providerMetadata,state:"streaming"};a.activeReasoningParts[e.id]=t,a.message.parts.push(t),l();break}case"reasoning-delta":{let t=a.activeReasoningParts[e.id];if(null==t)throw new nY({chunkType:"reasoning-delta",chunkId:e.id,message:`Received reasoning-delta for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,l();break}case"reasoning-end":{let t=a.activeReasoningParts[e.id];if(null==t)throw new nY({chunkType:"reasoning-end",chunkId:e.id,message:`Received reasoning-end for missing reasoning part with ID "${e.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});t.providerMetadata=null!=(p=e.providerMetadata)?p:t.providerMetadata,t.state="done",delete a.activeReasoningParts[e.id],l();break}case"file":case"reasoning-file":a.message.parts.push({type:e.type,mediaType:e.mediaType,url:e.url,...null!=e.providerMetadata?{providerMetadata:e.providerMetadata}:{}}),l();break;case"source-url":a.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),l();break;case"source-document":a.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),l();break;case"tool-input-start":{let t=h().filter(oI);a.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:t.length,dynamic:e.dynamic,title:e.title,toolMetadata:e.toolMetadata},e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted,title:e.title,toolMetadata:e.toolMetadata,providerMetadata:e.providerMetadata}),l();break}case"tool-input-delta":{let t=a.partialToolCalls[e.toolCallId];if(null==t)throw new nY({chunkType:"tool-input-delta",chunkId:e.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${e.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});t.text+=e.inputTextDelta;let{value:r}=await op(t.text);t.dynamic?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,title:t.title,toolMetadata:t.toolMetadata}):g({toolCallId:e.toolCallId,toolName:t.toolName,state:"input-streaming",input:r,title:t.title,toolMetadata:t.toolMetadata}),l();break}case"tool-input-available":e.dynamic?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:e.title,toolMetadata:e.toolMetadata}),l(),o&&!e.providerExecuted&&await o({toolCall:e});break;case"tool-input-error":{let t=h().filter(oj).find(t=>t.toolCallId===e.toolCallId);(null!=t?"dynamic-tool"===t.type:e.dynamic)?f({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}):g({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,toolMetadata:e.toolMetadata}),l();break}case"tool-approval-request":{let t=m(e.toolCallId);t.state="approval-requested",t.approval={id:e.approvalId,...null!=e.approvalDescriptor?{descriptor:e.approvalDescriptor}:{},...null!=e.reason?{requestReason:e.reason}:{},...!0===e.isAutomatic?{isAutomatic:!0}:{},...null!=e.signature?{signature:e.signature}:{}},l();break}case"tool-approval-response":{let t=function(e){let t=a.message.parts.filter(oj).find(t=>{var r;return(null==(r=t.approval)?void 0:r.id)===e});if(null==t)throw new nY({chunkType:"tool-approval-response",chunkId:e,message:`No tool invocation found for approval ID "${e}".`});return t}(e.approvalId),r=null==t.approval?{id:e.approvalId}:t.approval;t.state="approval-responded",t.approval={...r,id:e.approvalId,approved:e.approved,...null!=e.reason?{reason:e.reason}:{}},null!=e.providerExecuted&&(t.providerExecuted=e.providerExecuted),null!=e.providerMetadata&&(t.callProviderMetadata=e.providerMetadata),l();break}case"tool-output-denied":m(e.toolCallId).state="output-denied",l();break;case"tool-output-available":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-available",input:t.input,output:e.output,preliminary:e.preliminary,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t):g({toolCallId:e.toolCallId,toolName:oE(t),state:"output-available",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t),l();break}case"tool-output-error":{let t=m(e.toolCallId);"dynamic-tool"===t.type?f({toolCallId:e.toolCallId,toolName:t.toolName,state:"output-error",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t):g({toolCallId:e.toolCallId,toolName:oE(t),state:"output-error",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:t.title,toolMetadata:t.toolMetadata},t),l();break}case"start-step":a.message.parts.push({type:"step-start"});break;case"finish-step":break;case"reset-step":{let e=h();a.activeTextParts=ok(),a.activeReasoningParts=ok(),a.partialToolCalls=ok(),e.length>0&&(a.message.parts.splice(a.message.parts.length-e.length,e.length),l());break}case"start":null!=e.messageId&&(a.message.id=e.messageId),await y(e.messageMetadata),(null!=e.messageId||null!=e.messageMetadata)&&l({updateStatus:!1});break;case"finish":null!=e.finishReason&&(a.finishReason=e.finishReason),await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"message-metadata":await y(e.messageMetadata),null!=e.messageMetadata&&l();break;case"error":null==n||n(Error(e.errorText));break;default:if(e.type.startsWith("data-")){if((null==r?void 0:r[e.type])!=null){let t=a.message.parts.findIndex(t=>"id"in t&&"data"in t&&t.id===e.id&&t.type===e.type),n=t>=0?t:a.message.parts.length;await rb({value:e.data,schema:r[e.type],context:{field:`message.parts[${n}].data`,entityName:e.type,entityId:e.id}})}if(e.transient){null==s||s(e);break}let t=null!=e.id?a.message.parts.find(t=>e.type===t.type&&e.id===t.id):void 0;null!=t?t.data=e.data:a.message.parts.push(e),null==s||s(e),l()}}i.enqueue(e)})}}))}({stream:o,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:i,onError:e=>{throw e}}),abortSignal:s.abortController.signal,onError:e=>{throw e}}),g)return p()&&this.setStatus({status:"ready"}),null;p()&&this.setStatus({status:"ready"})}catch(e){if(g||"AbortError"===e.name)return g=!0,p()&&this.setStatus({status:"ready"}),null;if(!p())return null;y=!0,e instanceof TypeError&&(e.message.toLowerCase().includes("fetch")||e.message.toLowerCase().includes("network"))&&(f=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:"error",error:e})}finally{try{u&&(null==(s=this.onFinish)||s.call(this,{message:u.state.message,messages:this.state.messages,isAbort:g,isDisconnect:f,isError:y,finishReason:u.state.finishReason}))}finally{this.activeResponse===u&&(this.activeResponse=void 0),h()}}!y&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:null==(i=this.lastMessage)?void 0:i.id,metadata:t,headers:r,body:a})}};e.i(560491);var oD=e.i(561866),oU=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)},oF=(e,t,r)=>(oU(e,t,"read from private field"),r?r.call(e):t.get(e)),oL=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},oq=(e,t,r,a)=>(oU(e,t,"write to private field"),a?a.call(e,r):t.set(e,r),r),oB=class{constructor(e=[]){oL(this,Y,void 0),oL(this,W,"ready"),oL(this,K,void 0),oL(this,J,new Set),oL(this,X,new Set),oL(this,Q,new Set),this.pushMessage=e=>{oq(this,Y,oF(this,Y).concat(e)),oF(this,ee).call(this)},this.popMessage=()=>{oq(this,Y,oF(this,Y).slice(0,-1)),oF(this,ee).call(this)},this.replaceMessage=(e,t)=>{oq(this,Y,[...oF(this,Y).slice(0,e),this.snapshot(t),...oF(this,Y).slice(e+1)]),oF(this,ee).call(this)},this.snapshot=e=>{var t;if(null==e||"object"!=typeof e||!("parts"in e)||!Array.isArray(e.parts))return e;let r={...e,parts:e.parts.map(e=>({...e}))};return"metadata"in e&&(r.metadata=Array.isArray(t=e.metadata)?[...t]:null!=t&&"object"==typeof t&&(Object.getPrototypeOf(t)===Object.prototype||null===Object.getPrototypeOf(t))?{...t}:t),r},this["~registerMessagesCallback"]=(e,t)=>{let r=t?null!=t?(0,oD.default)(e,t):e:e;return oF(this,J).add(r),()=>{oF(this,J).delete(r)}},this["~registerStatusCallback"]=e=>(oF(this,X).add(e),()=>{oF(this,X).delete(e)}),this["~registerErrorCallback"]=e=>(oF(this,Q).add(e),()=>{oF(this,Q).delete(e)}),oL(this,ee,()=>{oF(this,J).forEach(e=>e())}),oL(this,et,()=>{oF(this,X).forEach(e=>e())}),oL(this,er,()=>{oF(this,Q).forEach(e=>e())}),oq(this,Y,e)}get status(){return oF(this,W)}set status(e){oq(this,W,e),oF(this,et).call(this)}get error(){return oF(this,K)}set error(e){oq(this,K,e),oF(this,er).call(this)}get messages(){return oF(this,Y)}set messages(e){oq(this,Y,[...e]),oF(this,ee).call(this)}};Y=new WeakMap,W=new WeakMap,K=new WeakMap,J=new WeakMap,X=new WeakMap,Q=new WeakMap,ee=new WeakMap,et=new WeakMap,er=new WeakMap;var oz=class extends o${constructor({messages:e,...t}){const r=new oB(e);super({...t,state:r}),oL(this,ea,void 0),this["~registerMessagesCallback"]=(e,t)=>oF(this,ea)["~registerMessagesCallback"](e,t),this["~registerStatusCallback"]=e=>oF(this,ea)["~registerStatusCallback"](e),this["~registerErrorCallback"]=e=>oF(this,ea)["~registerErrorCallback"](e),oq(this,ea,r)}};ea=new WeakMap;var oH=e.i(96892);let oV={name:"book-open",size:24,node:[["path",{d:"M12 5v16",key:"1f6ucr"}],["path",{d:"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z",key:"1fyvmf"}]]};oV.node;let oZ=(0,el.default)(oV);var oG=e.i(716327),oY=e.i(632781);let oW={name:"minus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}]]};oW.node;let oK=(0,el.default)(oW);var oJ=e.i(660302),oX=e.i(146538),oQ=e.i(968978),o0=e.i(213377),o1=e.i(647163);let o2=new oP({api:ey.queryKey.memoryEdit});function o5({notes:e}){let[t,r]=(0,ef.useState)(""),[a,n]=(0,ef.useState)({provider:null,model:""}),[o,s]=(0,ef.useState)(!1),{messages:i,sendMessage:l,setMessages:u,status:d,stop:c,error:p,clearError:h}=function({throttle:e,experimental_throttle:t,resume:r=!1,...a}={}){let n,o=null!=e?e:t,s=(0,ef.useRef)({});"chat"in a||(s.current={onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen,transport:a.transport});let i=()=>{var e;return null!=(e=s.current.transport)?e:null!=n?n:n=new oP},l={...a,transport:{sendMessages:e=>i().sendMessages(e),reconnectToStream:e=>i().reconnectToStream(e)},onToolCall:e=>{var t,r;return null==(r=(t=s.current).onToolCall)?void 0:r.call(t,e)},onData:e=>{var t,r;return null==(r=(t=s.current).onData)?void 0:r.call(t,e)},onFinish:e=>{var t,r;return null==(r=(t=s.current).onFinish)?void 0:r.call(t,e)},onError:e=>{var t,r;return null==(r=(t=s.current).onError)?void 0:r.call(t,e)},sendAutomaticallyWhen:e=>{var t,r,a;return null!=(a=null==(r=(t=s.current).sendAutomaticallyWhen)?void 0:r.call(t,e))&&a}},u=(0,ef.useRef)("chat"in a?a.chat:new oz(l));("chat"in a&&a.chat!==u.current||"id"in a&&null!=a.id&&u.current.id!==a.id)&&(u.current="chat"in a?a.chat:new oz(l));let d=u.current,c=(0,ef.useRef)({chat:d,messages:d.messages});c.current.chat!==d&&(c.current={chat:d,messages:d.messages});let p=(0,ef.useCallback)(e=>{let t=!0,r=d["~registerMessagesCallback"](()=>{t&&c.current.chat===d&&(c.current={chat:d,messages:d.messages},e())},o);return c.current={chat:d,messages:d.messages},()=>{t=!1,r()}},[d,o]),h=(0,ef.useCallback)(()=>c.current.messages,[]),m=(0,ef.useSyncExternalStore)(p,h,h),g=(0,ef.useCallback)(e=>d["~registerStatusCallback"](()=>{c.current.chat===d&&(("ready"===d.status||"error"===d.status)&&(c.current={chat:d,messages:d.messages}),e())}),[d]),f=(0,ef.useCallback)(()=>d.status,[d]),y=(0,ef.useSyncExternalStore)(g,f,f),v=(0,ef.useSyncExternalStore)(u.current["~registerErrorCallback"],()=>u.current.error,()=>u.current.error),b=(0,ef.useCallback)(e=>{"function"==typeof e&&(e=e(u.current.messages)),u.current.messages=e},[u]);return(0,ef.useEffect)(()=>{r&&u.current.resumeStream()},[r,u]),{id:u.current.id,messages:m,setMessages:b,sendMessage:u.current.sendMessage,regenerate:u.current.regenerate,clearError:u.current.clearError,stop:u.current.stop,error:v,resumeStream:u.current.resumeStream,status:y,addToolResult:u.current.addToolOutput,addToolOutput:u.current.addToolOutput,addToolApprovalResponse:u.current.addToolApprovalResponse}}({transport:o2}),m=(0,ef.useRef)(c);m.current=c,(0,ef.useEffect)(()=>()=>{m.current()},[]);let g=(0,ef.useRef)(new Map);for(let t of e)for(let e of t.facts)g.current.set(e.id,{text:e.text,path:t.path});let f="submitted"===d||"streaming"===d,y=!!(a.provider&&a.model.trim()),v=[...i].reverse().find(e=>"assistant"===e.role),b=v?.parts??[],w=b.filter(oj),x=b.flatMap(e=>"text"===e.type?[e.text]:[]).join(" ").trim(),k=!!p||w.some(e=>"output-error"===e.state),I=w.filter(e=>"output-available"===e.state&&oS(e)!==o0.TOOL_NAMES.memory_recall).length;(0,ef.useEffect)(()=>{if("ready"!==d||k||0===i.length)return;let e=setTimeout(()=>u([]),4e3);return()=>clearTimeout(e)},[d,k,i.length,u]);let _=f?(0,en.jsx)(oJ.ShinyText,{text:"Working on memory",className:"text-xs"}):p?(0,en.jsx)("span",{className:"text-xs text-destructive",children:p.message}):v?(0,en.jsx)("span",{className:"text-xs text-muted-foreground",children:x||(0===I?"Nothing to change":1===I?"1 change saved":`${I} changes saved`)}):null;return(0,en.jsx)("div",{className:"pointer-events-none absolute inset-x-0 bottom-18 z-10 flex justify-center px-8",children:(0,en.jsxs)("div",{className:"pointer-events-auto flex w-full max-w-120 flex-col items-center gap-2",children:[o&&(0,en.jsx)("div",{className:"w-full rounded-xl bg-popover p-2 shadow-lg ring-1 ring-foreground/10",children:(0,en.jsx)(oX.ModelPicker,{provider:a.provider,model:a.model,unset:"Provider",onChange:n})}),w.length>0&&(0,en.jsx)("ul",{className:"w-full divide-y divide-border/60 overflow-hidden rounded-xl bg-popover shadow-lg ring-1 ring-foreground/10",children:w.map(e=>(0,en.jsx)(o6,{name:oS(e),input:e.input,state:e.state,errorText:"output-error"===e.state?e.errorText:void 0,known:g.current},e.toolCallId))}),_&&(0,en.jsx)("p",{className:"max-w-full truncate px-1",children:_}),(0,en.jsxs)("form",{onSubmit:e=>{e.preventDefault();let n=t.trim();n&&y&&!f&&(r(""),s(!1),h(),u([]),l({text:n},{body:{model:a}}))},className:"flex h-10 w-full items-center gap-1.5 rounded-xl bg-popover pr-1.5 pl-3.5 shadow-lg ring-1 ring-foreground/10",children:[(0,en.jsx)("input",{value:t,onChange:e=>r(e.target.value),disabled:f,"aria-label":"Edit memory",placeholder:"Tell memory what changed",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground disabled:opacity-60"}),(0,en.jsxs)(ev.Button,{type:"button",size:"xs",variant:"ghost",onClick:()=>s(!o),className:(0,o1.cn)("max-w-44",!y&&"text-muted-foreground"),children:[y&&a.provider?(0,en.jsxs)(en.Fragment,{children:[(0,en.jsx)(oQ.ProviderIcon,{provider:a.provider,className:"size-3"}),(0,en.jsx)("span",{className:"truncate",children:a.model})]}):"Model",(0,en.jsx)(oG.ChevronDown,{className:"text-muted-foreground"})]}),(0,en.jsx)(ev.Button,{type:"submit",size:"icon-sm",loading:f,disabled:!t.trim()||!y||f,"aria-label":"Send",children:!f&&(0,en.jsx)(oH.ArrowUp,{})})]})]})})}let o4={Remember:eh.Plus,Replace:ed,Forget:oK,Rename:ed,Opened:oZ};function o6({name:e,input:t,state:r,errorText:a,known:n}){let o=function(e,t,r){let a=t??{};if(e===o0.TOOL_NAMES.memory_recall)return{kind:"Opened",path:a.path??"",lines:[],carried:!1};if(e===o0.TOOL_NAMES.memory_forget){let e=(a.factIds??[]).filter(e=>null!=e),t=e.map(e=>r.get(e));return{kind:"Forget",path:t.find(e=>e)?.path??"",lines:e.map((e,r)=>({before:t[r]?.text??`Fact #${e}`})),carried:!1}}let n=(a.facts??[]).filter(e=>null!=e),o=n.map(e=>null!=e.replaces?{before:r.get(e.replaces)?.text??`Fact #${e.replaces}`,after:e.text}:{after:e.text});a.description&&o.push({after:`“${a.description}”`});let s=(a.aliases??[]).filter(Boolean);return s.length&&o.push({after:`Called ${s.map(e=>`“${e}”`).join(", ")}`}),{kind:n.some(e=>null!=e.replaces)?"Replace":n.length?"Remember":"Rename",path:a.path??"",lines:o,carried:n.some(e=>e.alwaysLoad)}}(e,t,n),s=o4[o.kind],i="output-error"===r;return(0,en.jsxs)("li",{className:"flex animate-in items-start gap-2.5 px-3 py-2.5 duration-200 fade-in slide-in-from-bottom-1",children:[(0,en.jsx)(s,{className:"mt-1 size-3.5 shrink-0 text-muted-foreground"}),(0,en.jsxs)("div",{className:"min-w-0 flex-1 space-y-0.5",children:[o.lines.map((e,t)=>(0,en.jsxs)("div",{children:[e.before&&(0,en.jsx)("p",{className:"text-[13px] leading-5 text-muted-foreground/60 line-through",children:e.before}),e.after&&(0,en.jsx)("p",{className:"text-sm leading-5 text-foreground/90",children:e.after})]},`${o.kind}-${t}`)),(0,en.jsxs)("p",{className:"pt-0.5 font-mono text-[11px] text-muted-foreground",children:[o.kind,o.path&&` \xb7 ${o.path}`,o.carried&&" · carried into every call"]}),i&&a&&(0,en.jsx)("p",{className:"text-xs text-destructive",children:a})]}),(0,en.jsx)("span",{className:"mt-0.5 flex size-5 shrink-0 items-center justify-center text-muted-foreground",children:i?(0,en.jsx)(eg.X,{className:"size-3.5 text-destructive"}):"output-available"===r?(0,en.jsx)(ei.Check,{className:"size-3.5"}):(0,en.jsx)(oY.Loader2,{className:"size-3.5 animate-spin"})})]})}var o9=e.i(95187);let o3=(0,o9.createServerReference)("7f06c73f32c18b1c6787e1a4b23dc14b24ac95d0f1",o9.callServer,void 0,o9.findSourceMapURL,"addFactsAction"),o7=(0,o9.createServerReference)("7fda426845399b41a1db8ce6fca24f747318adf2a4",o9.callServer,void 0,o9.findSourceMapURL,"createNoteAction"),o8=(0,o9.createServerReference)("7f88021d061b659a138f8e06f02d551a7c99f93119",o9.callServer,void 0,o9.findSourceMapURL,"deleteNoteAction"),se=(0,o9.createServerReference)("7f83cc86877f849a609fef9016c548e91581ca06ed",o9.callServer,void 0,o9.findSourceMapURL,"forgetFactAction"),st=(0,o9.createServerReference)("7f6515ffe23e68549d43aa9311acadb0367741c247",o9.callServer,void 0,o9.findSourceMapURL,"reviseFactAction"),sr=(0,o9.createServerReference)("7f1ae95e4d265a0a7b1f05c1b0e26fa69fce71f8ab",o9.callServer,void 0,o9.findSourceMapURL,"setFactAlwaysLoadAction"),sa=(0,o9.createServerReference)("7f14e59fbd131887159867d74584f5ba0dd8d28b9c",o9.callServer,void 0,o9.findSourceMapURL,"updateNoteAction");var sn=e.i(681307),so=e.i(245629);let ss=sn.z.enum(["user","call","bot"]),si=e=>"user"===e?"you":"call"===e?"on a call":"bot"===e?"a bot":"",sl=sn.z.object({id:sn.z.number(),text:sn.z.string(),alwaysLoad:sn.z.boolean(),source:ss.nullish(),createdAt:so.DateLikeSchema});sn.z.object({id:sn.z.number(),path:sn.z.string(),description:sn.z.string(),aliases:sn.z.string().array().nullish(),ownedByUser:sn.z.boolean(),hits:sn.z.number(),lastReadAt:so.DateLikeSchema.nullable(),createdAt:so.DateLikeSchema,updatedAt:so.DateLikeSchema,factCount:sn.z.number(),facts:sl.array()});let su=[{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"}],sd=su.filter(e=>!e.path.endsWith("/")).map(e=>e.path),sc=su.filter(e=>e.path.endsWith("/")).map(e=>e.path.slice(0,-1));RegExp(`^(?:${sd.join("|")}|(?:${sc.join("|")})/.+)$`);let sp=["profile","preferences"];function sh(e){let t=e.indexOf("/");return -1===t?e:e.slice(t+1)}function sm(e){let t,r,a;return t=e.path,!sp.includes(t)&&.15>(r=(0,so.toDate)(e.lastReadAt??e.createdAt),a=Math.max(0,(Date.now()-r.getTime())/864e5),(e.hits+1)/(1+a))}var sg=e.i(895836),sf=e.i(698570),sy=e.i(609856),sv=e.i(661504),sb=e.i(283653);let sw=[{key:"you",label:"You"},{key:"people",label:"People"},{key:"projects",label:"Projects"},{key:"topics",label:"Topics"},{key:"other",label:"Other"}];function sx({note:e}){let t=e.facts.filter(e=>e.alwaysLoad).length;return(0,en.jsxs)(en.Fragment,{children:[(0,en.jsxs)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px]",children:[e.path," · ",e.hits," ",1===e.hits?"read":"reads"," ·"," ",e.lastReadAt?`last read ${(0,es.formatDistanceToNowStrict)(e.lastReadAt,{addSuffix:!0})}`:"never read back"]}),t>0&&(0,en.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:[t," carried into every call"]})]})}function sk({note:e,active:t,onPick:r}){return(0,en.jsxs)("button",{type:"button",onClick:r,className:(0,o1.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",t?"bg-secondary text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground",sm(e)&&!t&&"opacity-55"),children:[(0,en.jsx)("span",{className:(0,o1.cn)("min-w-0 flex-1 truncate text-[13px]",t&&"font-medium"),children:sh(e.path)}),(0,en.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:e.factCount})]})}function sI({note:e}){let[t,r]=(0,ef.useState)(!1),[a,n]=(0,ef.useState)(""),o={onOk:()=>(0,sb.revalidate)(ey.queryKey.memory)},[s]=(0,sy.useServerAction)(sa,o),[i]=(0,sy.useServerAction)(o3,o),[l]=(0,sy.useServerAction)(st,o),[u]=(0,sy.useServerAction)(se,o),[d]=(0,sy.useServerAction)(sr,o),[c,p]=(0,sy.useServerAction)(o8,o),h=async()=>{let t=a.split("\n").map(e=>e.trim()).filter(Boolean);0!==t.length&&(await i(e.id,t),n(""))},m=async()=>{await ex.notify.confirm({title:`Forget ${e.path}?`,description:"Every fact in this note is deleted for good.",okText:"Delete",destructive:!0})&&c(e.id)};return(0,en.jsxs)("div",{className:(0,o1.cn)("flex min-h-full flex-col",sm(e)&&"opacity-55"),children:[(0,en.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-border/60 px-6 py-2.5",children:[(0,en.jsx)("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:e.path}),(0,en.jsxs)("span",{className:"flex shrink-0 gap-1",children:[(0,en.jsx)(ev.Button,{size:"icon-sm",variant:t?"secondary":"ghost","aria-label":t?"Done editing":"Edit this note",onClick:()=>r(!t),children:t?(0,en.jsx)(ei.Check,{}):(0,en.jsx)(ed,{})}),(0,en.jsx)(ev.Button,{size:"icon-sm",variant:"ghost","aria-label":"Forget this note",loading:p,onClick:m,children:(0,en.jsx)(em.Trash2,{})})]})]}),(0,en.jsxs)("div",{className:"flex-1 space-y-5 px-6 py-5",children:[(0,en.jsxs)("div",{className:"space-y-1.5",children:[(0,en.jsx)("p",{className:"text-xl font-semibold",children:sh(e.path)}),t?(0,en.jsx)(s_,{text:e.description,onCommit:async t=>{await s(e.id,{description:t})}}):(0,en.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:e.description})]}),t?(0,en.jsxs)("div",{className:"space-y-2",children:[e.facts.map(t=>(0,en.jsx)(sj,{text:t.text,alwaysLoad:t.alwaysLoad,onRevise:async r=>{await l(e.id,t.id,r)},onCarry:async r=>{await d(e.id,t.id,r)},onForget:async()=>{await u(e.id,t.id)}},t.id)),(0,en.jsxs)("div",{className:"flex gap-2 pt-1",children:[(0,en.jsx)(e_.Textarea,{value:a,onChange:e=>n(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),h())},placeholder:"Add facts — one per line",className:"min-h-9 resize-none py-1.5 text-sm"}),(0,en.jsx)(ev.Button,{size:"icon",variant:"outline",disabled:!a.trim(),onClick:h,children:(0,en.jsx)(eh.Plus,{})})]})]}):0===e.facts.length?(0,en.jsx)("p",{className:"text-xs text-muted-foreground/70",children:"Nothing saved here yet — the agent adds facts during calls"}):(0,en.jsx)("ul",{className:"divide-y divide-border/60 border-y border-border/60",children:e.facts.map(e=>(0,en.jsxs)("li",{className:"flex gap-3 py-3",children:[(0,en.jsx)("span",{className:"flex w-3.5 shrink-0 justify-center pt-1",children:e.alwaysLoad?(0,en.jsx)(ep,{className:"size-3 text-foreground"}):(0,en.jsx)("span",{className:"text-muted-foreground/50",children:"—"})}),(0,en.jsx)("span",{className:"flex-1 text-sm leading-relaxed text-foreground/90",children:e.text}),(0,en.jsxs)("span",{className:"shrink-0 pt-0.5 text-right text-[11px] text-muted-foreground/50",children:[(0,en.jsx)("span",{className:"block font-mono",children:(0,eo.format)(e.createdAt,"yyyy.MM.dd")}),si(e.source)&&(0,en.jsx)("span",{className:"block",children:si(e.source)})]})]},e.id))})]})]})}function s_({text:e,onCommit:t}){let r=(0,sf.useDraft)(e,t);return(0,en.jsx)(ew.Input,{value:r.value,onChange:e=>r.set(e.target.value),onBlur:r.commit,onKeyDown:r.onKeyDown,placeholder:"One-line summary",className:"text-sm text-muted-foreground"})}function sj({text:e,alwaysLoad:t,onRevise:r,onCarry:a,onForget:n}){let o=(0,sf.useDraft)(e,r);return(0,en.jsxs)("div",{className:"flex gap-2",children:[(0,en.jsx)(ew.Input,{value:o.value,onChange:e=>o.set(e.target.value),onBlur:o.commit,onKeyDown:o.onKeyDown,className:"text-sm"}),(0,en.jsx)(ev.Button,{size:"icon",variant:t?"secondary":"ghost","aria-label":t?"Stop carrying into calls":"Carry into every call",title:"Carried into every call, without opening this note",onClick:()=>a(!t),children:(0,en.jsx)(ep,{className:(0,o1.cn)(!t&&"text-muted-foreground/60")})}),(0,en.jsx)(ev.Button,{size:"icon",variant:"ghost",onClick:n,children:(0,en.jsx)(eg.X,{})})]})}let sE=[{key:"people",label:"Person",placeholder:"jihoon",fact:"Moved to the platform team in March"},{key:"projects",label:"Project",placeholder:"thursday",fact:"Ships behind a feature flag until April"},{key:"topics",label:"Topic",placeholder:"scheduling",fact:"No meetings before 10am"}];function sS(){return ex.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,en.jsx)(sM,{onDone:e})})}function sM({onDone:e}){let[t,r]=(0,ef.useState)("people"),[a,n]=(0,ef.useState)(""),[o,s]=(0,ef.useState)(""),[i,l]=(0,ef.useState)(""),[u,d,,c]=(0,sy.useServerAction)(o7,{errorMessage:!1,onOk:()=>{(0,sb.revalidate)(ey.queryKey.memory),e()}}),p=sE.find(e=>e.key===t),h=a.trim()&&o.trim()&&!d,m=()=>{h&&u(`${t}/${a.trim()}`,o.trim(),i.split("\n").map(e=>e.trim()).filter(Boolean))};return(0,en.jsxs)(sg.SettingDialogContent,{title:"New note",description:"Where the agent files what it learns about this subject.",footer:(0,en.jsxs)(en.Fragment,{children:[(0,en.jsx)(ev.Button,{variant:"ghost",onClick:e,children:"Cancel"}),(0,en.jsxs)(ev.Button,{disabled:!h,loading:d,onClick:m,children:[!d&&(0,en.jsx)(eh.Plus,{}),"Create"]})]}),children:[(0,en.jsxs)("div",{className:"space-y-6",children:[(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{children:"Kind"}),(0,en.jsx)(eI.Tabs,{value:t,onValueChange:e=>r(e),children:(0,en.jsx)(eI.TabsList,{className:"w-full",children:sE.map(e=>(0,en.jsx)(eI.TabsTrigger,{value:e.key,children:e.label},e.key))})})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-name",children:"Name"}),(0,en.jsxs)(eb.FieldContent,{children:[(0,en.jsx)(ew.Input,{id:"note-name",value:a,onChange:e=>n(e.target.value),placeholder:p?.placeholder,spellCheck:!1,required:!0}),(0,en.jsxs)("p",{className:"font-mono text-[11px] text-muted-foreground",children:[t,"/",a.trim()||"…"]})]})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-summary",children:"Summary"}),(0,en.jsx)(eb.FieldContent,{children:(0,en.jsx)(ew.Input,{id:"note-summary",value:o,onChange:e=>s(e.target.value),onKeyDown:e=>"Enter"===e.key&&m(),placeholder:"One line the agent sees in its note list",required:!0})})]}),(0,en.jsxs)(eb.Field,{children:[(0,en.jsx)(eb.FieldLabel,{htmlFor:"note-facts",children:"Facts"}),(0,en.jsx)(e_.Textarea,{id:"note-facts",value:i,onChange:e=>l(e.target.value),placeholder:`One per line
|
|
38
|
+
${p?.fact??""}`,className:"min-h-24 resize-none text-sm"})]})]}),c&&(0,en.jsx)("p",{className:"font-mono text-xs text-destructive",children:c})]})}e.s(["MemorySetting",0,function(){let{items:e,isLoading:t,isLoadingMore:r,error:a,hasMore:n,sentinelRef:o}=(0,sv.useServerPages)({key:e=>ey.queryKey.memoryPage(e*ej.PAGE_SIZE)}),[s,i]=(0,ef.useState)(null),l=e.find(e=>e.id===s)??e[0]??null;return t?(0,en.jsx)(sg.SettingPanesSkeleton,{}):a?(0,en.jsx)(sg.SettingError,{message:a.message}):(0,en.jsxs)("div",{className:"relative h-full min-h-0",children:[(0,en.jsx)(sg.SettingPanes,{footer:l&&(0,en.jsx)(sx,{note:l}),left:(0,en.jsxs)("div",{className:"flex flex-col py-2",children:[(0,en.jsxs)("button",{type:"button",onClick:sS,className:"mx-2 mb-1 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,en.jsx)(eh.Plus,{className:"size-3.5 shrink-0"}),"New note"]}),sw.map(({key:t,label:r})=>{let a=e.filter(e=>(function(e){if("profile"===e||"preferences"===e)return"you";let t=e.slice(0,e.indexOf("/"));return sc.includes(t)?t:"other"})(e.path)===t);return 0===a.length?null:(0,en.jsxs)(ef.Fragment,{children:[(0,en.jsx)("span",{className:"px-3 pt-3 pb-1 font-mono text-[10px] text-muted-foreground/60",children:r}),a.map(e=>(0,en.jsx)(sk,{note:e,active:e.id===l?.id,onPick:()=>i(e.id)},e.id))]},t)}),(0,en.jsx)(sg.SettingMore,{hasMore:n,loading:r,sentinelRef:o,count:3,ghost:(0,en.jsxs)("div",{className:"mx-2 flex items-center gap-2 px-2 py-2",children:[(0,en.jsx)(ek.Skeleton,{className:"h-3 w-28"}),(0,en.jsx)("span",{className:"flex-1"}),(0,en.jsx)(ek.Skeleton,{className:"h-2.5 w-2.5"})]})})]}),right:l?(0,en.jsx)(sI,{note:l},l.id):(0,en.jsxs)("div",{className:"space-y-4 p-8",children:[(0,en.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"During calls Thursday saves what it picks up — that a teammate moved teams, that you take meetings in the morning — and reads it back before answering. File the first note yourself and it starts the next call already knowing something."}),(0,en.jsxs)(ev.Button,{variant:"outline",onClick:sS,children:[(0,en.jsx)(eh.Plus,{}),"Add note"]})]})}),(0,en.jsx)(o5,{notes:e})]})},"openMemoryCreate",0,sS],556133)},99970,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,i={},l={SYMBOL_FOR_REQ_CONTEXT:()=>d,getContext:()=>c};for(var u in l)a(i,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of o(t))s.call(e,i)||void 0===i||a(e,i,{get:()=>t[i],enumerable:!(r=n(t,i))||r.enumerable});return e})(a({},"__esModule",{value:!0}),i);let d=Symbol.for("@vercel/request-context");function c(){let e=globalThis;return e[d]?.get?.()??{}}},891754,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,i={},l={AccessTokenMissingError:()=>d,RefreshAccessTokenFailedError:()=>c};for(var u in l)a(i,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of o(t))s.call(e,i)||void 0===i||a(e,i,{get:()=>t[i],enumerable:!(r=n(t,i))||r.enumerable});return e})(a({},"__esModule",{value:!0}),i);class d extends Error{constructor(){super("No authentication found. Please log in with the Vercel CLI (vercel login)."),this.name="AccessTokenMissingError"}}class c extends Error{constructor(e){super("Failed to refresh authentication token.",{cause:e}),this.name="RefreshAccessTokenFailedError"}}},725150,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,i={},l={AccessTokenMissingError:()=>c.AccessTokenMissingError,RefreshAccessTokenFailedError:()=>c.RefreshAccessTokenFailedError,getContext:()=>d.getContext,getVercelOidcToken:()=>p,getVercelOidcTokenSync:()=>h,getVercelToken:()=>m};for(var u in l)a(i,u,{get:l[u],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of o(t))s.call(e,i)||void 0===i||a(e,i,{get:()=>t[i],enumerable:!(r=n(t,i))||r.enumerable});return e})(a({},"__esModule",{value:!0}),i);var d=e.r(99970),c=e.r(891754);async function p(){return""}function h(){return""}async function m(){throw Error("getVercelToken is not supported in browser environments")}},561866,(e,t,r)=>{t.exports=function(e,t){let r;if("function"!=typeof e)throw TypeError(`Expected the first argument to be a \`function\`, got \`${typeof e}\`.`);let a=0;return function(...n){clearTimeout(r);let o=Date.now(),s=t-(o-a);s<=0?(a=o,e.apply(this,n)):r=setTimeout(()=>{a=Date.now(),e.apply(this,n)},s)}}}]);
|