decocms 2.308.0 → 2.308.2
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/dist/client/assets/{AlertCircle-Dc8eBIIA.js → AlertCircle-C4MAG0dW.js} +1 -1
- package/dist/client/assets/{ArrowNarrowLeft-DbIqHu2D.js → ArrowNarrowLeft-YJHGvmtc.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-DWQ1o6g0.js → ArrowUpRight-Dc7giR3p.js} +1 -1
- package/dist/client/assets/{Check-DI2P3xyj.js → Check-C6MdiGep.js} +1 -1
- package/dist/client/assets/{CheckCircle-DWgg8CdU.js → CheckCircle-BmlWPYa0.js} +1 -1
- package/dist/client/assets/{ChevronDown-B3LiY4e0.js → ChevronDown-C6fxBA7i.js} +1 -1
- package/dist/client/assets/{ChevronRight-C7vEUPZv.js → ChevronRight-BdH9jF59.js} +1 -1
- package/dist/client/assets/{ChevronUp-BuOa51Do.js → ChevronUp-CYrcz1bi.js} +1 -1
- package/dist/client/assets/{Container-DEvW8Q5M.js → Container-Dfk0-q0g.js} +1 -1
- package/dist/client/assets/{DotsVertical-BdcWYYKD.js → DotsVertical-BRc2aCeq.js} +1 -1
- package/dist/client/assets/{LinkExternal01-pDoh0yQG.js → LinkExternal01-wxc3fezN.js} +1 -1
- package/dist/client/assets/{Lock01-CmH8_hBY.js → Lock01-3hUoLWnm.js} +1 -1
- package/dist/client/assets/{Palette-CoSBewNT.js → Palette-Ch3g0RsS.js} +1 -1
- package/dist/client/assets/{Play-8HkKPRnX.js → Play-7Z_usbq2.js} +1 -1
- package/dist/client/assets/{Plus-G67YRGQm.js → Plus-kuh7uxsU.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-CkMPWmkU.js → RefreshCcw01-D3m1ziMH.js} +1 -1
- package/dist/client/assets/{SearchMd-Cry2WbOL.js → SearchMd-JJpmfx7K.js} +1 -1
- package/dist/client/assets/{Settings02-Ct1XQ8lg.js → Settings02-C8_RL5mD.js} +1 -1
- package/dist/client/assets/{Shield01-DypQeyAC.js → Shield01-D2pQByF3.js} +1 -1
- package/dist/client/assets/{Star01-Cvxl9LEb.js → Star01-COTD_JLg.js} +1 -1
- package/dist/client/assets/{Sun-xlno47ia.js → Sun-DtLAYb3r.js} +1 -1
- package/dist/client/assets/{Tool01-B6RY0Bch.js → Tool01-Bfq2G5Tx.js} +1 -1
- package/dist/client/assets/{Trash01-DlziVGLs.js → Trash01-CCs9nuWy.js} +1 -1
- package/dist/client/assets/{User01-PVuwDfPM.js → User01-xFHxsQB7.js} +1 -1
- package/dist/client/assets/{Users03-CDt3Ia4u.js → Users03-CY6_v5dC.js} +1 -1
- package/dist/client/assets/{X-D5euzXd6.js → X-TIoZYxmT.js} +1 -1
- package/dist/client/assets/{XCircle-FCr4I2Br.js → XCircle-CDf_dObk.js} +1 -1
- package/dist/client/assets/{XClose-DA8zuezc.js → XClose-C5WTcq5g.js} +1 -1
- package/dist/client/assets/{Zap-M4R28AyE.js → Zap-MATLK2yQ.js} +1 -1
- package/dist/client/assets/{ZapSquare-CBB2Ah6P.js → ZapSquare-CG4tKM8O.js} +1 -1
- package/dist/client/assets/{accordion-CLe35QQb.js → accordion-C0jq5aZ9.js} +1 -1
- package/dist/client/assets/{agent-icon-8J8xjEyv.js → agent-icon-C6zcLPO3.js} +1 -1
- package/dist/client/assets/{agents-list-DhO0IwGv.js → agents-list-BpcTSYNl.js} +1 -1
- package/dist/client/assets/ai-providers-DgDYP3tx.js +1 -0
- package/dist/client/assets/{alert-dialog-Bf3i0-ap.js → alert-dialog-OOGzd6f9.js} +1 -1
- package/dist/client/assets/{auth-catchall-BPGgC-nD.js → auth-catchall-CFe1IVAZ.js} +1 -1
- package/dist/client/assets/automation-list-row-MDwhy8P3.js +1 -0
- package/dist/client/assets/{automations-C0HF6iH3.js → automations-D8ddBEeZ.js} +1 -1
- package/dist/client/assets/{avatar-C2GZQJN3.js → avatar-Dg0bxlYs.js} +1 -1
- package/dist/client/assets/{badge-Cfr0I5DM.js → badge-CkOUGmAM.js} +1 -1
- package/dist/client/assets/{brand-context-CQBZPNab.js → brand-context-CB3o1Q8Q.js} +1 -1
- package/dist/client/assets/{card-1Py0G9QO.js → card-Cp9TRQQG.js} +1 -1
- package/dist/client/assets/{chat-context-BRHHtFfS.js → chat-context-DE_kyj8m.js} +6 -6
- package/dist/client/assets/{checkbox-tWkRFp5q.js → checkbox-DmLiWMiI.js} +1 -1
- package/dist/client/assets/{collection-detail-BgkpXfH6.js → collection-detail-Dtbz_DYg.js} +1 -1
- package/dist/client/assets/{collection-display-button-BKFsViy0.js → collection-display-button-cBRAsr9j.js} +1 -1
- package/dist/client/assets/{collection-search-BijkFqy8.js → collection-search-M8TQMQ58.js} +1 -1
- package/dist/client/assets/{collection-search-DUsuPW7W.js → collection-search-TKz3pJfV.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CbYYu49Y.js → collection-table-wrapper-DvV9SZbo.js} +1 -1
- package/dist/client/assets/{collection-tabs-UoRxF9gi.js → collection-tabs-CyNZiayQ.js} +1 -1
- package/dist/client/assets/{collections-629yOZ4q.js → collections-SsDaX0Np.js} +1 -1
- package/dist/client/assets/{command-BZPKmyoT.js → command-B3akr47o.js} +1 -1
- package/dist/client/assets/{connection-card-xwsYDJKs.js → connection-card-DhQZPoA3.js} +1 -1
- package/dist/client/assets/{connection-detail-BCuQsq72.js → connection-detail-BZPDR51D.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-DxZyZ7Mz.js → connection-form-helpers-DiUlc8ld.js} +1 -1
- package/dist/client/assets/{connections-BoH4ngtd.js → connections-B9XalmGx.js} +1 -1
- package/dist/client/assets/{constants-rf2rGSRS.js → constants-CaEGZ_wn.js} +1 -1
- package/dist/client/assets/{constants-Ceha-YCO.js → constants-DSPGDR8d.js} +1 -1
- package/dist/client/assets/{dialog-BQY6ve8R.js → dialog-COWem3FX.js} +1 -1
- package/dist/client/assets/{domain-settings-CrRFwjgT.js → domain-settings-I0pqTNVt.js} +1 -1
- package/dist/client/assets/{drawer-DKTYMKZB.js → drawer-Dqw2EuNU.js} +1 -1
- package/dist/client/assets/{dropdown-menu-NQwQD65K.js → dropdown-menu-l75ew8-I.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-CQRoCDkx.js → dynamic-plugin-layout-DZnp3yBi.js} +1 -1
- package/dist/client/assets/{empty-state-DZWl1SHF.js → empty-state-D1DOVZbX.js} +1 -1
- package/dist/client/assets/{empty-state-S7cRYJ7A.js → empty-state-D9lLT2os.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DK0vmpBi.js → extract-connection-data-D4OHPCfv.js} +1 -1
- package/dist/client/assets/{features-CXHhuv3x.js → features-B0oit2dR.js} +1 -1
- package/dist/client/assets/{form-BhAcochb.js → form-CNVVDte1.js} +1 -1
- package/dist/client/assets/{general-uahkA33T.js → general-BR-brkyD.js} +1 -1
- package/dist/client/assets/{index-tYfKsTR7.js → index-Bc88i4uj.js} +1 -1
- package/dist/client/assets/{index-B-UrGMCG.js → index-BhaiLiAW.js} +1 -1
- package/dist/client/assets/{index-eyKGNvlC.js → index-BiYDBXLx.js} +1 -1
- package/dist/client/assets/{index-BVHbmnDe.js → index-CGQNQFNt.js} +1 -1
- package/dist/client/assets/{index-DOQvcJzy.js → index-CJyUiDWy.js} +1 -1
- package/dist/client/assets/{index-DS8tzSDr.js → index-CcMi5PtR.js} +1 -1
- package/dist/client/assets/{index-CGsMCeZU.js → index-CcVNhkeO.js} +3 -3
- package/dist/client/assets/index-CplB6StC.js +182 -0
- package/dist/client/assets/index-DArd07lp.js +1 -0
- package/dist/client/assets/{index-CDoO-m_U.js → index-DPc-g_TQ.js} +1 -1
- package/dist/client/assets/{index-9xUmjnIB.js → index-DqXM6wRd.js} +1 -1
- package/dist/client/assets/{index-CdPrpXKB.js → index-Y1iFZZnQ.js} +2 -2
- package/dist/client/assets/{index-9N-VKaFx.js → index-bMYWSWj9.js} +1 -1
- package/dist/client/assets/{index-CpFteYYY.js → index-j13mxiWb.js} +1 -1
- package/dist/client/assets/{index-DcxyWGrp.js → index-mD0sSbNx.js} +1 -1
- package/dist/client/assets/{index-hl4jxirk.js → index-wOkIAUez.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-B4dg5Ioc.js → infiniteQueryObserver-DOZUVBSo.js} +1 -1
- package/dist/client/assets/{input-DLZhKZMm.js → input-DP3exNhm.js} +1 -1
- package/dist/client/assets/{integration-icon-CwMCcYn7.js → integration-icon-BD5X2mBZ.js} +1 -1
- package/dist/client/assets/{label-CguRlTAK.js → label-57v0Il7i.js} +1 -1
- package/dist/client/assets/{layout-BKiV5nhx.js → layout-DfU2Xhnm.js} +1 -1
- package/dist/client/assets/lean-canvas-recruit-modal-ZIIziS38.js +139 -0
- package/dist/client/assets/{login-DIyHz8Ie.js → login-DyF-kPNY.js} +1 -1
- package/dist/client/assets/{members-Cq8WD6SE.js → members-BDyltPi9.js} +1 -1
- package/dist/client/assets/{monaco-editor-B25g0q9C.js → monaco-editor-CHcy0yi-.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-goStuSv-.js → monitoring-stats-row-cMhBIBFC.js} +1 -1
- package/dist/client/assets/{oauth-callback-BekUuiHj.js → oauth-callback-Dktpluq8.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-DbkT5278.js → oauth-callback-ai-provider-BaAyY7TZ.js} +1 -1
- package/dist/client/assets/{onboarding-C2De10cT.js → onboarding-DtE4IvLR.js} +1 -1
- package/dist/client/assets/{org-layout-CofAxKWj.js → org-layout-_4bRYvXT.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-DUz5LHa6.js → org-plugin-layout-DmgRNl15.js} +1 -1
- package/dist/client/assets/{pair-DgLGwo0z.js → pair-DKqCotmS.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-DY3ZBvZ_.js → plugin-empty-state-BPdIQ1C3.js} +1 -1
- package/dist/client/assets/{plugin-header-GIWfbfS_.js → plugin-header-llEZIqWz.js} +1 -1
- package/dist/client/assets/{plugin-layout-Bun05_-c.js → plugin-layout-DEcbI6wo.js} +1 -1
- package/dist/client/assets/{popover-BecT5tll.js → popover-B4liSugH.js} +1 -1
- package/dist/client/assets/{profile-CIda0kR5.js → profile-Dr3bBQog.js} +1 -1
- package/dist/client/assets/{project-app-view-DP7KVYuY.js → project-app-view-BzQlTFAD.js} +1 -1
- package/dist/client/assets/registry-CgSpYTmF.js +2 -0
- package/dist/client/assets/{registry-layout-DYybi0NR.js → registry-layout-CG-o4WKt.js} +1 -1
- package/dist/client/assets/{required-auth-layout-J0_RgjK9.js → required-auth-layout-BTSQasPA.js} +1 -1
- package/dist/client/assets/{reset-password-B_QbFnB2.js → reset-password-Do67lS5R.js} +1 -1
- package/dist/client/assets/{roles-C4y9hySV.js → roles-idbmMACA.js} +1 -1
- package/dist/client/assets/{scroll-area-4jk7thjX.js → scroll-area-DKF98Obe.js} +1 -1
- package/dist/client/assets/{search-input-3rkyXtaV.js → search-input-CExQEAO_.js} +1 -1
- package/dist/client/assets/{select-Cq1CbOjf.js → select-CBsndvSQ.js} +1 -1
- package/dist/client/assets/{select-model-CFJcZGPl.js → select-model-BoiMH9Eh.js} +2 -2
- package/dist/client/assets/{settings-layout-DbCvMsyv.js → settings-layout-CJA_3oyG.js} +1 -1
- package/dist/client/assets/{settings-section-i1kUpPoj.js → settings-section-DsmPIM7h.js} +1 -1
- package/dist/client/assets/{shell-layout-DLyWYpCd.js → shell-layout-Df-mVNkv.js} +1 -1
- package/dist/client/assets/{skeleton-VyBuKrWi.js → skeleton-3GjwKscW.js} +1 -1
- package/dist/client/assets/{sso-D-_2rgFw.js → sso-CXBExF0E.js} +1 -1
- package/dist/client/assets/{store-ocyjNIeP.js → store-C0iqX2yx.js} +1 -1
- package/dist/client/assets/store-registry-CjzvJZfQ.js +2 -0
- package/dist/client/assets/{switch-Op3jPK9m.js → switch-Bw1pqRDd.js} +1 -1
- package/dist/client/assets/{table-CmsO4_1u.js → table-CfCYDhp6.js} +1 -1
- package/dist/client/assets/{tabs-DbCXMWjf.js → tabs-BsFLOF__.js} +1 -1
- package/dist/client/assets/{task-status-CQgSue8C.js → task-status-CAVRrgk8.js} +1 -1
- package/dist/client/assets/{textarea-2RCsYZwW.js → textarea-DDYp19dV.js} +1 -1
- package/dist/client/assets/{toggle-group-D3zYyv71.js → toggle-group-CRsxDCqD.js} +1 -1
- package/dist/client/assets/{tools-list-BYI_5XUo.js → tools-list-C89i_lx4.js} +1 -1
- package/dist/client/assets/{tooltip-bCnXe9rD.js → tooltip-DlYX9A8I.js} +1 -1
- package/dist/client/assets/{types-J5p9P9Rt.js → types-DmX8BEgw.js} +1 -1
- package/dist/client/assets/{use-ai-providers-BgwGEsWB.js → use-ai-providers-DYh8mCGr.js} +1 -1
- package/dist/client/assets/{use-collections-B4csqgPK.js → use-collections-BV53unoW.js} +1 -1
- package/dist/client/assets/{use-connection-BMBty9kn.js → use-connection-4Jo1kgb4.js} +1 -1
- package/dist/client/assets/{use-copy-BYk19v1G.js → use-copy-CDVph_ZR.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-B3qLbk-r.js → use-create-virtual-mcp-CnLkjgGv.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-Drvll9SK.js → use-debounced-autosave-DnGak_U_.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-Bn49eO_Q.js → use-decopilot-events-CiDRk3Kg.js} +1 -1
- package/dist/client/assets/{use-delete-connection-BDxOWm1s.js → use-delete-connection-DQVFE9Rx.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-CSa_1XmB.js → use-infinite-scroll-PUjAjrct.js} +1 -1
- package/dist/client/assets/{use-list-state-Dflc_KeS.js → use-list-state-BeQbwk-b.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-DeWc3GhB.js → use-mcp-tools-BMttuQ2R.js} +1 -1
- package/dist/client/assets/{use-members-44ddCgMy.js → use-members-B-OYMOae.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-DNHiBGYk.js → use-navigate-to-agent-BmEWAUR1.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-CBT5QsFn.js → use-org-auth-client-CWjKMp0o.js} +1 -1
- package/dist/client/assets/{use-org-sso-DnAQ44nV.js → use-org-sso-DynshQfv.js} +1 -1
- package/dist/client/assets/{use-organization-roles-DULw-R60.js → use-organization-roles-CBHwWTkz.js} +1 -1
- package/dist/client/assets/{use-organization-settings-Bo1zita5.js → use-organization-settings-B1bf09rq.js} +1 -1
- package/dist/client/assets/{use-registry-connections-2zt5GxTf.js → use-registry-connections-DnRWZVjF.js} +1 -1
- package/dist/client/assets/{use-status-sounds-DwWD2zpA.js → use-status-sounds-d0e3ZSre.js} +1 -1
- package/dist/client/assets/{use-tasks-CWKRJaQa.js → use-tasks-Nq1jApqx.js} +1 -1
- package/dist/client/assets/{use-view-mode-BnPWSohK.js → use-view-mode-Br0t5ba-.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-FjuzbXdY.js → use-virtual-mcp-D5KExI2g.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-4GNlYSCC.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-TxlaqV3x.js +1 -0
- package/dist/client/assets/{user-D967OV_9.js → user-CiKNEy3L.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CgLG0xLo.js → view-mode-toggle-Byo0aoac.js} +1 -1
- package/dist/client/assets/{workflow-DMPIv9yf.js → workflow-DaWUoUr9.js} +1 -1
- package/dist/client/assets/workflow-detail-MN5FGNwn.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +1 -1
- package/dist/server/node_modules/mimic-fn/index.d.ts +54 -0
- package/dist/server/node_modules/mimic-fn/index.js +13 -0
- package/dist/server/node_modules/mimic-fn/license +9 -0
- package/dist/server/node_modules/mimic-fn/package.json +42 -0
- package/dist/server/node_modules/mimic-fn/readme.md +69 -0
- package/dist/server/node_modules/xtend/.jshintrc +30 -0
- package/dist/server/node_modules/{postgres-bytea/license → xtend/LICENSE} +1 -2
- package/dist/server/node_modules/xtend/README.md +32 -0
- package/dist/server/node_modules/xtend/immutable.js +19 -0
- package/dist/server/node_modules/xtend/mutable.js +17 -0
- package/dist/server/node_modules/xtend/package.json +55 -0
- package/dist/server/node_modules/xtend/test.js +103 -0
- package/package.json +1 -1
- package/dist/client/assets/ai-providers-DUcHPmO2.js +0 -1
- package/dist/client/assets/automation-list-row-kOADG0IH.js +0 -1
- package/dist/client/assets/index-Cf_-UgCA.js +0 -1
- package/dist/client/assets/index-JFw8YYeY.js +0 -182
- package/dist/client/assets/lean-canvas-recruit-modal-BES2xXtI.js +0 -139
- package/dist/client/assets/registry-DMnjYZsz.js +0 -2
- package/dist/client/assets/store-registry-CRCtikPH.js +0 -2
- package/dist/client/assets/useInfiniteQuery-vXiXIRpb.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-CBf4UpUw.js +0 -1
- package/dist/client/assets/workflow-detail-CYvLp96A.js +0 -1
- package/dist/server/node_modules/postgres-bytea/index.js +0 -33
- package/dist/server/node_modules/postgres-bytea/package.json +0 -34
- package/dist/server/node_modules/postgres-bytea/readme.md +0 -34
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{bN as or,bO as ir,bl as q,J as m,bP as dt,bQ as ca,bR as lr,bS as cr,I as ur,a_ as V,aI as Ye,aK as Xe,H as D,a$ as E,aJ as pe,bT as dr,bU as $,ap as pr,bb as fr,r as T,R as X,e as et,a1 as ua,o as mt,s as ne,K as ve,x as Ie,Q as le,f as mr,d as da,g as hr,w as gr,b as pa,j as De,t as vr,P as yr,bV as br}from"./index-
|
|
1
|
+
import{bN as or,bO as ir,bl as q,J as m,bP as dt,bQ as ca,bR as lr,bS as cr,I as ur,a_ as V,aI as Ye,aK as Xe,H as D,a$ as E,aJ as pe,bT as dr,bU as $,ap as pr,bb as fr,r as T,R as X,e as et,a1 as ua,o as mt,s as ne,K as ve,x as Ie,Q as le,f as mr,d as da,g as hr,w as gr,b as pa,j as De,t as vr,P as yr,bV as br}from"./index-Y1iFZZnQ.js";import{E as Ir,g as Er,S as kt,u as Ot}from"./constants-CaEGZ_wn.js";import{u as fa}from"./use-virtual-mcp-D5KExI2g.js";import{u as ma,a as he}from"./use-ai-providers-DYh8mCGr.js";import{u as ha}from"./use-decopilot-events-CiDRk3Kg.js";import{u as Sr}from"./use-tasks-Nq1jApqx.js";import{b as _r,c as Tr}from"./use-collections-BV53unoW.js";import{u as ga}from"./use-organization-settings-B1bf09rq.js";var He;(function(e){e.assertEqual=s=>{};function t(s){}e.assertIs=t;function a(s){throw new Error}e.assertNever=a,e.arrayToEnum=s=>{const n={};for(const i of s)n[i]=i;return n},e.getValidEnumValues=s=>{const n=e.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),i={};for(const o of n)i[o]=s[o];return e.objectValues(i)},e.objectValues=s=>e.objectKeys(s).map(function(n){return s[n]}),e.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const n=[];for(const i in s)Object.prototype.hasOwnProperty.call(s,i)&&n.push(i);return n},e.find=(s,n)=>{for(const i of s)if(n(i))return i},e.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,n=" | "){return s.map(i=>typeof i=="string"?`'${i}'`:i).join(n)}e.joinValues=r,e.jsonStringifyReplacer=(s,n)=>typeof n=="bigint"?n.toString():n})(He||(He={}));var Bt;(function(e){e.mergeShapes=(t,a)=>({...t,...a})})(Bt||(Bt={}));He.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);He.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class pt extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const a=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,a):this.__proto__=a,this.name="ZodError",this.issues=t}format(t){const a=t||function(n){return n.message},r={_errors:[]},s=n=>{for(const i of n.issues)if(i.code==="invalid_union")i.unionErrors.map(s);else if(i.code==="invalid_return_type")s(i.returnTypeError);else if(i.code==="invalid_arguments")s(i.argumentsError);else if(i.path.length===0)r._errors.push(a(i));else{let o=r,u=0;for(;u<i.path.length;){const l=i.path[u];u===i.path.length-1?(o[l]=o[l]||{_errors:[]},o[l]._errors.push(a(i))):o[l]=o[l]||{_errors:[]},o=o[l],u++}}};return s(this),r}static assert(t){if(!(t instanceof pt))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,He.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=a=>a.message){const a=Object.create(null),r=[];for(const s of this.issues)if(s.path.length>0){const n=s.path[0];a[n]=a[n]||[],a[n].push(t(s))}else r.push(t(s));return{formErrors:r,fieldErrors:a}}get formErrors(){return this.flatten()}}pt.create=e=>new pt(e);var qt;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(qt||(qt={}));var w;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(w||(w={}));const Mr={anthropic:["claude-sonnet-4-6","claude-sonnet","claude"],openrouter:["anthropic/claude-opus-4.7","anthropic/claude-sonnet-4-6","anthropic/claude-sonnet","anthropic/claude"],deco:["anthropic/claude-haiku-4-5","anthropic/claude-haiku","anthropic/claude"],google:["gemini-3-flash"],"claude-code":["claude-code:sonnet","claude-code:opus","claude-code:haiku"]},wr={anthropic:["claude-haiku-4-5","claude-haiku"],openrouter:["qwen/qwen3.5-flash","anthropic/claude-haiku-4.5","anthropic/claude-haiku","google/gemini-3-flash"],deco:["qwen/qwen3.5-flash","anthropic/claude-haiku"],google:["gemini-2.5-flash","gemini-3-flash"],"claude-code":["claude-code:haiku","claude-code:sonnet"]},Cr={anthropic:["claude-sonnet-4-6","claude-sonnet"],openrouter:["anthropic/claude-sonnet-4.6","anthropic/claude-sonnet","anthropic/claude-opus-4.7","google/gemini-3-pro"],deco:["anthropic/claude-sonnet-4.6","anthropic/claude-sonnet","anthropic/claude"],google:["gemini-3-pro","gemini-3-flash"],"claude-code":["claude-code:sonnet"]},Ar={anthropic:["claude-opus-4-7","claude-sonnet-4-6","claude-sonnet"],openrouter:["anthropic/claude-opus-4.7","anthropic/claude-sonnet-4.6:extended","anthropic/claude-sonnet-4.6","google/gemini-3-pro"],deco:["anthropic/claude-opus","anthropic/claude-sonnet-4.6","anthropic/claude-sonnet"],google:["gemini-3-pro"],"claude-code":["claude-code:opus","claude-code:sonnet"]},Rr={openrouter:["openai/gpt-image-1","google/gemini-2.0-flash-image"],deco:["openai/gpt-image-1","google/gemini-2.0-flash-image"],google:["gemini-2.0-flash-image"]},xr={openrouter:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"],deco:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"]};function qe(e,t,a,r){for(const s of a){const n=e.find(i=>i.modelId===s);if(n)return{keyId:t,modelId:n.modelId,title:n.title}}for(const s of a){const n=e.find(i=>i.modelId.includes(s));if(n)return{keyId:t,modelId:n.modelId,title:n.title}}if(r){const s=e.find(r);if(s)return{keyId:t,modelId:s.modelId,title:s.title}}return null}function Qn(e,t){const a={chat:{fast:null,smart:null,thinking:null},image:null,webResearch:null};for(const r of e){const s=t[r.id]??[],n=r.providerId;a.chat.fast||(a.chat.fast=qe(s,r.id,wr[n]??[])),a.chat.smart||(a.chat.smart=qe(s,r.id,Cr[n]??[])),a.chat.thinking||(a.chat.thinking=qe(s,r.id,Ar[n]??[])),a.image||(a.image=qe(s,r.id,Rr[n]??[],i=>i.capabilities?.includes("image")===!0)),a.webResearch||(a.webResearch=qe(s,r.id,xr[n]??[],i=>{const o=i.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return o.includes("sonar")||o.includes("deepresearch")}))}return a}function va(e,t,a){if(e.length===0)return null;const r=Mr[t]??[],s=n=>a!==void 0?{...n,keyId:a}:n;for(const n of r){const i=e.find(o=>o.modelId===n);if(i)return s(i)}for(const n of r){const i=e.find(o=>o.modelId.includes(n));if(i)return s(i)}return s(e[0])}function kr(e,t){const{mimeType:a,data:r}=e;if(a.startsWith("text/"))try{const s=new TextDecoder().decode(Uint8Array.from(atob(r),n=>n.charCodeAt(0)));return[{type:"text",text:`${t}
|
|
2
2
|
${s}`}]}catch(s){console.error("Failed to decode text file:",s)}return[{type:"file",url:`data:${a};base64,${r}`,filename:t,mediaType:a}]}function Jt(e,t){const a=[];for(const r of e)"text"in r&&r.text?a.push({type:"text",text:`[${t}]
|
|
3
3
|
${r.text}`}):"blob"in r&&r.blob&&r.mimeType&&a.push({type:"file",url:`data:${r.mimeType};base64,${r.blob}`,filename:String(r.uri),mediaType:String(r.mimeType)});return a}function Or(e,t){const a=[];for(const r of e){if(r.role!=="user"||!r.content)continue;const s=Array.isArray(r.content)?r.content:[r.content];for(const n of s)switch(n.type){case"text":{const i=n.text?.trim();if(!i)continue;a.push({type:"text",text:`[${t}]
|
|
4
4
|
${i}`});break}case"image":case"audio":{if(!n.data||!n.mimeType)continue;a.push({type:"file",url:`data:${n.mimeType};base64,${n.data}`,mediaType:n.mimeType});break}case"resource":{const i=n.resource;if(!i||!i.mimeType)continue;i&&("text"in i&&i.text?a.push({type:"text",text:`[${t}]
|
|
@@ -9,11 +9,11 @@ Error message: ${Ea(a)}`,cause:a}),this[Xt]=!0,this.value=t,this.context=r}stati
|
|
|
9
9
|
]))`;continue}else if(s[l]==="$"){n+=`($|(?=[\r
|
|
10
10
|
]))`;continue}}if(r.s&&s[l]==="."){n+=o?`${s[l]}\r
|
|
11
11
|
`:`[${s[l]}\r
|
|
12
|
-
]`;continue}n+=s[l],s[l]==="\\"?i=!0:o&&s[l]==="]"?o=!1:!o&&s[l]==="["&&(o=!0)}try{new RegExp(n)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return n}function ka(e,t){var a,r,s,n,i,o;const u={type:"object",additionalProperties:(a=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?a:t.allowedAdditionalProperties};if(((r=e.keyType)==null?void 0:r._def.typeName)===w.ZodString&&((s=e.keyType._def.checks)!=null&&s.length)){const{type:l,...d}=xa(e.keyType._def,t);return{...u,propertyNames:d}}else{if(((n=e.keyType)==null?void 0:n._def.typeName)===w.ZodEnum)return{...u,propertyNames:{enum:e.keyType._def.values}};if(((i=e.keyType)==null?void 0:i._def.typeName)===w.ZodBranded&&e.keyType._def.type._def.typeName===w.ZodString&&((o=e.keyType._def.type._def.checks)!=null&&o.length)){const{type:l,...d}=Aa(e.keyType._def,t);return{...u,propertyNames:d}}}return u}function ss(e,t){if(t.mapStrategy==="record")return ka(e,t);const a=P(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||G(),r=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||G();return{type:"array",maxItems:125,items:{type:"array",items:[a,r],minItems:2,maxItems:2}}}function ns(e){const t=e.values,r=Object.keys(e.values).filter(n=>typeof t[t[n]]!="number").map(n=>t[n]),s=Array.from(new Set(r.map(n=>typeof n)));return{type:s.length===1?s[0]==="string"?"string":"number":["string","number"],enum:r}}function os(){return{not:G()}}function is(){return{type:"null"}}var wt={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ls(e,t){const a=e.options instanceof Map?Array.from(e.options.values()):e.options;if(a.every(r=>r._def.typeName in wt&&(!r._def.checks||!r._def.checks.length))){const r=a.reduce((s,n)=>{const i=wt[n._def.typeName];return i&&!s.includes(i)?[...s,i]:s},[]);return{type:r.length>1?r:r[0]}}else if(a.every(r=>r._def.typeName==="ZodLiteral"&&!r.description)){const r=a.reduce((s,n)=>{const i=typeof n._def.value;switch(i){case"string":case"number":case"boolean":return[...s,i];case"bigint":return[...s,"integer"];case"object":if(n._def.value===null)return[...s,"null"];default:return s}},[]);if(r.length===a.length){const s=r.filter((n,i,o)=>o.indexOf(n)===i);return{type:s.length>1?s:s[0],enum:a.reduce((n,i)=>n.includes(i._def.value)?n:[...n,i._def.value],[])}}}else if(a.every(r=>r._def.typeName==="ZodEnum"))return{type:"string",enum:a.reduce((r,s)=>[...r,...s._def.values.filter(n=>!r.includes(n))],[])};return cs(e,t)}var cs=(e,t)=>{const a=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((r,s)=>P(r._def,{...t,currentPath:[...t.currentPath,"anyOf",`${s}`]})).filter(r=>!!r&&(!t.strictUnions||typeof r=="object"&&Object.keys(r).length>0));return a.length?{anyOf:a}:void 0};function us(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[wt[e.innerType._def.typeName],"null"]};const a=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return a&&{anyOf:[a,{type:"null"}]}}function ds(e){const t={type:"number"};if(!e.checks)return t;for(const a of e.checks)switch(a.kind){case"int":t.type="integer";break;case"min":a.inclusive?t.minimum=a.value:t.exclusiveMinimum=a.value;break;case"max":a.inclusive?t.maximum=a.value:t.exclusiveMaximum=a.value;break;case"multipleOf":t.multipleOf=a.value;break}return t}function ps(e,t){const a={type:"object",properties:{}},r=[],s=e.shape();for(const i in s){let o=s[i];if(o===void 0||o._def===void 0)continue;const u=ms(o),l=P(o._def,{...t,currentPath:[...t.currentPath,"properties",i],propertyPath:[...t.currentPath,"properties",i]});l!==void 0&&(a.properties[i]=l,u||r.push(i))}r.length&&(a.required=r);const n=fs(e,t);return n!==void 0&&(a.additionalProperties=n),a}function fs(e,t){if(e.catchall._def.typeName!=="ZodNever")return P(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function ms(e){try{return e.isOptional()}catch{return!0}}var hs=(e,t)=>{var a;if(t.currentPath.toString()===((a=t.propertyPath)==null?void 0:a.toString()))return P(e.innerType._def,t);const r=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:G()},r]}:G()},gs=(e,t)=>{if(t.pipeStrategy==="input")return P(e.in._def,t);if(t.pipeStrategy==="output")return P(e.out._def,t);const a=P(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),r=P(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",a?"1":"0"]});return{allOf:[a,r].filter(s=>s!==void 0)}};function vs(e,t){return P(e.type._def,t)}function ys(e,t){const r={type:"array",uniqueItems:!0,items:P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&(r.minItems=e.minSize.value),e.maxSize&&(r.maxItems=e.maxSize.value),r}function bs(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((a,r)=>P(a._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((a,r)=>r===void 0?a:[...a,r],[]),additionalItems:P(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((a,r)=>P(a._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((a,r)=>r===void 0?a:[...a,r],[])}}function Is(){return{not:G()}}function Es(){return G()}var Ss=(e,t)=>P(e.innerType._def,t),_s=(e,t,a)=>{switch(t){case w.ZodString:return xa(e,a);case w.ZodNumber:return ds(e);case w.ZodObject:return ps(e,a);case w.ZodBigInt:return zr(e);case w.ZodBoolean:return Wr();case w.ZodDate:return Ra(e,a);case w.ZodUndefined:return Is();case w.ZodNull:return is();case w.ZodArray:return Jr(e,a);case w.ZodUnion:case w.ZodDiscriminatedUnion:return ls(e,a);case w.ZodIntersection:return es(e,a);case w.ZodTuple:return bs(e,a);case w.ZodRecord:return ka(e,a);case w.ZodLiteral:return ts(e);case w.ZodEnum:return Kr(e);case w.ZodNativeEnum:return ns(e);case w.ZodNullable:return us(e,a);case w.ZodOptional:return hs(e,a);case w.ZodMap:return ss(e,a);case w.ZodSet:return ys(e,a);case w.ZodLazy:return()=>e.getter()._def;case w.ZodPromise:return vs(e,a);case w.ZodNaN:case w.ZodNever:return os();case w.ZodEffects:return Qr(e,a);case w.ZodAny:return G();case w.ZodUnknown:return Es();case w.ZodDefault:return Hr(e,a);case w.ZodBranded:return Aa(e,a);case w.ZodReadonly:return Ss(e,a);case w.ZodCatch:return Gr(e,a);case w.ZodPipeline:return gs(e,a);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(r=>{})()}},Ts=(e,t)=>{let a=0;for(;a<e.length&&a<t.length&&e[a]===t[a];a++);return[(e.length-a).toString(),...t.slice(a)].join("/")};function P(e,t,a=!1){var r;const s=t.seen.get(e);if(t.override){const u=(r=t.override)==null?void 0:r.call(t,e,t,s,a);if(u!==Br)return u}if(s&&!a){const u=Ms(s,t);if(u!==void 0)return u}const n={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,n);const i=_s(e,e.typeName,t),o=typeof i=="function"?P(i(),t):i;if(o&&ws(e,t,o),t.postProcess){const u=t.postProcess(o,e,t);return n.jsonSchema=o,u}return n.jsonSchema=o,o}var Ms=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Ts(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((a,r)=>t.currentPath[r]===a)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),G()):t.$refStrategy==="seen"?G():void 0}},ws=(e,t,a)=>(e.description&&(a.description=e.description),a),Cs=e=>{const t=qr(e),a=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:a,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([r,s])=>[s._def,{def:s._def,path:[...t.basePath,t.definitionPath,r],jsonSchema:void 0}]))}},As=(e,t)=>{var a;const r=Cs(t);let s=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[d,f])=>{var v;return{...l,[d]:(v=P(f._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0))!=null?v:G()}},{}):void 0;const n=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,i=(a=P(e._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1))!=null?a:G(),o=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;o!==void 0&&(i.title=o);const u=n===void 0?s?{...i,[r.definitionPath]:s}:i:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...s,[n]:i}};return u.$schema="http://json-schema.org/draft-07/schema#",u},Ct=Symbol.for("vercel.ai.schema");function Rs(e){let t;return()=>(t==null&&(t=e()),t)}function ht(e,{validate:t}={}){return{[Ct]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function xs(e){return typeof e=="object"&&e!==null&&Ct in e&&e[Ct]===!0&&"jsonSchema"in e&&"validate"in e}function Nt(e){return e==null?ht({properties:{},additionalProperties:!1}):xs(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Oa(e):ks(e):e()}function ks(e){return ht(()=>Pt(e["~standard"].jsonSchema.input({target:"draft-07"})),{validate:async t=>{const a=await e["~standard"].validate(t);return"value"in a?{success:!0,value:a.value}:{success:!1,error:new $e({value:t,cause:a.issues})}}})}function Os(e,t){var a;const r=(a=void 0)!=null?a:!1;return ht(()=>As(e,{$refStrategy:r?"root":"none"}),{validate:async s=>{const n=await e.safeParseAsync(s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ps(e,t){var a;const r=(a=void 0)!=null?a:!1;return ht(()=>Pt(ir(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async s=>{const n=await or(e,s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ns(e){return"_zod"in e}function Oa(e,t){return Ns(e)?Ps(e):Os(e)}async function sa({value:e,schema:t,context:a}){const r=await Qe({value:e,schema:t,context:a});if(!r.success)throw $e.wrap({value:e,cause:r.error,context:a});return r.value}async function Qe({value:e,schema:t,context:a}){const r=Nt(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};const s=await r.validate(e);return s.success?{success:!0,value:s.value,rawValue:e}:{success:!1,error:$e.wrap({value:e,cause:s.error,context:a}),rawValue:e}}catch(s){return{success:!1,error:$e.wrap({value:e,cause:s,context:a}),rawValue:e}}}async function Ee({text:e,schema:t}){try{const a=Vr(e);return t==null?{success:!0,value:a,rawValue:a}:await Qe({value:a,schema:t})}catch(a){return{success:!1,error:Kt.isInstance(a)?a:new Kt({text:e,cause:a}),rawValue:void 0}}}function Ds({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new Ir).pipeThrough(new TransformStream({async transform({data:a},r){a!=="[DONE]"&&r.enqueue(await Ee({text:a,schema:t}))}}))}async function me(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var $s=Object.defineProperty,js=(e,t)=>{for(var a in t)$s(e,a,{get:t[a],enumerable:!0})},Pa="AI_NoObjectGeneratedError",Na=`vercel.ai.error.${Pa}`,Ls=Symbol.for(Na),Da,ge=class extends se{constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:s,finishReason:n}){super({name:Pa,message:e,cause:t}),this[Da]=!0,this.text=a,this.response=r,this.usage=s,this.finishReason=n}static isInstance(e){return se.hasMarker(e,Na)}};Da=Ls;var $a="AI_UIMessageStreamError",ja=`vercel.ai.error.${$a}`,Zs=Symbol.for(ja),La,Oe=class extends se{constructor({chunkType:e,chunkId:t,message:a}){super({name:$a,message:a}),this[La]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return se.hasMarker(e,ja)}};La=Zs;var Za=q([m(),dt(Uint8Array),dt(ArrayBuffer),ca(e=>{var t,a;return(a=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?a:!1},{message:"Must be a Buffer"})]),Ke=lr(()=>q([cr(),m(),ur(),V(),Ye(m(),Ke.optional()),Xe(Ke)])),k=Ye(m(),Ye(m(),Ke.optional())),Fa=D({type:E("text"),text:m(),providerOptions:k.optional()}),Fs=D({type:E("image"),image:q([Za,dt(URL)]),mediaType:m().optional(),providerOptions:k.optional()}),Ua=D({type:E("file"),data:q([Za,dt(URL)]),filename:m().optional(),mediaType:m(),providerOptions:k.optional()}),Us=D({type:E("reasoning"),text:m(),providerOptions:k.optional()}),Vs=D({type:E("tool-call"),toolCallId:m(),toolName:m(),input:pe(),providerOptions:k.optional(),providerExecuted:V().optional()}),Bs=dr("type",[D({type:E("text"),value:m(),providerOptions:k.optional()}),D({type:E("json"),value:Ke,providerOptions:k.optional()}),D({type:E("execution-denied"),reason:m().optional(),providerOptions:k.optional()}),D({type:E("error-text"),value:m(),providerOptions:k.optional()}),D({type:E("error-json"),value:Ke,providerOptions:k.optional()}),D({type:E("content"),value:Xe(q([D({type:E("text"),text:m(),providerOptions:k.optional()}),D({type:E("media"),data:m(),mediaType:m()}),D({type:E("file-data"),data:m(),mediaType:m(),filename:m().optional(),providerOptions:k.optional()}),D({type:E("file-url"),url:m(),providerOptions:k.optional()}),D({type:E("file-id"),fileId:q([m(),Ye(m(),m())]),providerOptions:k.optional()}),D({type:E("image-data"),data:m(),mediaType:m(),providerOptions:k.optional()}),D({type:E("image-url"),url:m(),providerOptions:k.optional()}),D({type:E("image-file-id"),fileId:q([m(),Ye(m(),m())]),providerOptions:k.optional()}),D({type:E("custom"),providerOptions:k.optional()})]))})]),Va=D({type:E("tool-result"),toolCallId:m(),toolName:m(),output:Bs,providerOptions:k.optional()}),qs=D({type:E("tool-approval-request"),approvalId:m(),toolCallId:m()}),Js=D({type:E("tool-approval-response"),approvalId:m(),approved:V(),reason:m().optional()}),zs=D({role:E("system"),content:m(),providerOptions:k.optional()}),Ws=D({role:E("user"),content:q([m(),Xe(q([Fa,Fs,Ua]))]),providerOptions:k.optional()}),Gs=D({role:E("assistant"),content:q([m(),Xe(q([Fa,Ua,Us,Vs,Va,qs]))]),providerOptions:k.optional()}),Ys=D({role:E("tool"),content:Xe(q([Va,Js])),providerOptions:k.optional()});q([zs,Ws,Gs,Ys]);function Ba(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const a={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const s=t[r];if(s===void 0)continue;const n=r in e?e[r]:void 0,i=s!==null&&typeof s=="object"&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),o=n!=null&&typeof n=="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof RegExp);i&&o?a[r]=Ba(n,s):a[r]=s}return a}var Hs={};js(Hs,{array:()=>en,choice:()=>tn,json:()=>an,object:()=>Xs,text:()=>Ks});function Qs(e){const t=["ROOT"];let a=-1,r=null;function s(u,l,d){switch(u){case'"':{a=l,t.pop(),t.push(d),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{a=l,r=l,t.pop(),t.push(d),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(d),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":{a=l,t.pop(),t.push(d),t.push("INSIDE_NUMBER");break}case"{":{a=l,t.pop(),t.push(d),t.push("INSIDE_OBJECT_START");break}case"[":{a=l,t.pop(),t.push(d),t.push("INSIDE_ARRAY_START");break}}}function n(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{a=l,t.pop();break}}}function i(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{a=l,t.pop();break}}}for(let u=0;u<e.length;u++){const l=e[u];switch(t[t.length-1]){case"ROOT":s(l,u,"FINISH");break;case"INSIDE_OBJECT_START":{switch(l){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{a=u,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{l==='"'&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break}case"INSIDE_OBJECT_KEY":{l==='"'&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break}case"INSIDE_OBJECT_AFTER_KEY":{l===":"&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(l,u,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{n(l,u);break}case"INSIDE_STRING":{switch(l){case'"':{t.pop(),a=u;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:a=u}break}case"INSIDE_ARRAY_START":{l==="]"?(a=u,t.pop()):(a=u,s(l,u,"INSIDE_ARRAY_AFTER_VALUE"));break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{a=u,t.pop();break}default:{a=u;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(l,u,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),a=u;break}case"INSIDE_NUMBER":{switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{a=u;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&n(l,u);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&n(l,u);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const f=e.substring(r,u+1);!"false".startsWith(f)&&!"true".startsWith(f)&&!"null".startsWith(f)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?n(l,u):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u)):a=u;break}}}let o=e.slice(0,a+1);for(let u=t.length-1;u>=0;u--)switch(t[u]){case"INSIDE_STRING":{o+='"';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":{o+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{o+="]";break}case"INSIDE_LITERAL":{const d=e.substring(r,e.length);"true".startsWith(d)?o+="true".slice(d.length):"false".startsWith(d)?o+="false".slice(d.length):"null".startsWith(d)&&(o+="null".slice(d.length))}}return o}async function at(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ee({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Ee({text:Qs(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var Ks=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),Xs=({schema:e,name:t,description:a})=>{const r=Nt(e);return{name:"object",responseFormat:me(r.jsonSchema).then(s=>({type:"json",schema:s,...t!=null&&{name:t},...a!=null&&{description:a}})),async parseCompleteOutput({text:s},n){const i=await Ee({text:s});if(!i.success)throw new ge({message:"No object generated: could not parse the response.",cause:i.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});const o=await Qe({value:i.value,schema:r});if(!o.success)throw new ge({message:"No object generated: response did not match schema.",cause:o.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});return o.value},async parsePartialOutput({text:s}){const n=await at(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:n.value}}},createElementStreamTransform(){}}},en=({element:e,name:t,description:a})=>{const r=Nt(e);return{name:"array",responseFormat:me(r.jsonSchema).then(s=>{const{$schema:n,...i}=s;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:i}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...a!=null&&{description:a}}}),async parseCompleteOutput({text:s},n){const i=await Ee({text:s});if(!i.success)throw new ge({message:"No object generated: could not parse the response.",cause:i.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});const o=i.value;if(o==null||typeof o!="object"||!("elements"in o)||!Array.isArray(o.elements))throw new ge({message:"No object generated: response did not match schema.",cause:new $e({value:o,cause:"response must be an object with an elements array"}),text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});for(const u of o.elements){const l=await Qe({value:u,schema:r});if(!l.success)throw new ge({message:"No object generated: response did not match schema.",cause:l.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason})}return o.elements},async parsePartialOutput({text:s}){const n=await at(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const i=n.value;if(i==null||typeof i!="object"||!("elements"in i)||!Array.isArray(i.elements))return;const o=n.state==="repaired-parse"&&i.elements.length>0?i.elements.slice(0,-1):i.elements,u=[];for(const l of o){const d=await Qe({value:l,schema:r});d.success&&u.push(d.value)}return{partial:u}}}},createElementStreamTransform(){let s=0;return new TransformStream({transform({partialOutput:n},i){if(n!=null)for(;s<n.length;s++)i.enqueue(n[s])}})}}},tn=({options:e,name:t,description:a})=>({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},...t!=null&&{name:t},...a!=null&&{description:a}}),async parseCompleteOutput({text:r},s){const n=await Ee({text:r});if(!n.success)throw new ge({message:"No object generated: could not parse the response.",cause:n.error,text:r,response:s.response,usage:s.usage,finishReason:s.finishReason});const i=n.value;if(i==null||typeof i!="object"||!("result"in i)||typeof i.result!="string"||!e.includes(i.result))throw new ge({message:"No object generated: response did not match schema.",cause:new $e({value:i,cause:"response must be an object that contains a choice value."}),text:r,response:s.response,usage:s.usage,finishReason:s.finishReason});return i.result},async parsePartialOutput({text:r}){const s=await at(r);switch(s.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const n=s.value;if(n==null||typeof n!="object"||!("result"in n)||typeof n.result!="string")return;const i=e.filter(o=>o.startsWith(n.result));return s.state==="successful-parse"?i.includes(n.result)?{partial:n.result}:void 0:i.length===1?{partial:i[0]}:void 0}}},createElementStreamTransform(){}}),an=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:a},r){const s=await Ee({text:a});if(!s.success)throw new ge({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:r.response,usage:r.usage,finishReason:r.finishReason});return s.value},async parsePartialOutput({text:a}){const r=await at(a);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return r.value===void 0?void 0:{partial:r.value}}},createElementStreamTransform(){}});tt({prefix:"aitxt",size:24});(class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
12
|
+
]`;continue}n+=s[l],s[l]==="\\"?i=!0:o&&s[l]==="]"?o=!1:!o&&s[l]==="["&&(o=!0)}try{new RegExp(n)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return n}function ka(e,t){var a,r,s,n,i,o;const u={type:"object",additionalProperties:(a=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?a:t.allowedAdditionalProperties};if(((r=e.keyType)==null?void 0:r._def.typeName)===w.ZodString&&((s=e.keyType._def.checks)!=null&&s.length)){const{type:l,...d}=xa(e.keyType._def,t);return{...u,propertyNames:d}}else{if(((n=e.keyType)==null?void 0:n._def.typeName)===w.ZodEnum)return{...u,propertyNames:{enum:e.keyType._def.values}};if(((i=e.keyType)==null?void 0:i._def.typeName)===w.ZodBranded&&e.keyType._def.type._def.typeName===w.ZodString&&((o=e.keyType._def.type._def.checks)!=null&&o.length)){const{type:l,...d}=Aa(e.keyType._def,t);return{...u,propertyNames:d}}}return u}function ss(e,t){if(t.mapStrategy==="record")return ka(e,t);const a=P(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||G(),r=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||G();return{type:"array",maxItems:125,items:{type:"array",items:[a,r],minItems:2,maxItems:2}}}function ns(e){const t=e.values,r=Object.keys(e.values).filter(n=>typeof t[t[n]]!="number").map(n=>t[n]),s=Array.from(new Set(r.map(n=>typeof n)));return{type:s.length===1?s[0]==="string"?"string":"number":["string","number"],enum:r}}function os(){return{not:G()}}function is(){return{type:"null"}}var wt={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ls(e,t){const a=e.options instanceof Map?Array.from(e.options.values()):e.options;if(a.every(r=>r._def.typeName in wt&&(!r._def.checks||!r._def.checks.length))){const r=a.reduce((s,n)=>{const i=wt[n._def.typeName];return i&&!s.includes(i)?[...s,i]:s},[]);return{type:r.length>1?r:r[0]}}else if(a.every(r=>r._def.typeName==="ZodLiteral"&&!r.description)){const r=a.reduce((s,n)=>{const i=typeof n._def.value;switch(i){case"string":case"number":case"boolean":return[...s,i];case"bigint":return[...s,"integer"];case"object":if(n._def.value===null)return[...s,"null"];default:return s}},[]);if(r.length===a.length){const s=r.filter((n,i,o)=>o.indexOf(n)===i);return{type:s.length>1?s:s[0],enum:a.reduce((n,i)=>n.includes(i._def.value)?n:[...n,i._def.value],[])}}}else if(a.every(r=>r._def.typeName==="ZodEnum"))return{type:"string",enum:a.reduce((r,s)=>[...r,...s._def.values.filter(n=>!r.includes(n))],[])};return cs(e,t)}var cs=(e,t)=>{const a=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((r,s)=>P(r._def,{...t,currentPath:[...t.currentPath,"anyOf",`${s}`]})).filter(r=>!!r&&(!t.strictUnions||typeof r=="object"&&Object.keys(r).length>0));return a.length?{anyOf:a}:void 0};function us(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[wt[e.innerType._def.typeName],"null"]};const a=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return a&&{anyOf:[a,{type:"null"}]}}function ds(e){const t={type:"number"};if(!e.checks)return t;for(const a of e.checks)switch(a.kind){case"int":t.type="integer";break;case"min":a.inclusive?t.minimum=a.value:t.exclusiveMinimum=a.value;break;case"max":a.inclusive?t.maximum=a.value:t.exclusiveMaximum=a.value;break;case"multipleOf":t.multipleOf=a.value;break}return t}function ps(e,t){const a={type:"object",properties:{}},r=[],s=e.shape();for(const i in s){let o=s[i];if(o===void 0||o._def===void 0)continue;const u=ms(o),l=P(o._def,{...t,currentPath:[...t.currentPath,"properties",i],propertyPath:[...t.currentPath,"properties",i]});l!==void 0&&(a.properties[i]=l,u||r.push(i))}r.length&&(a.required=r);const n=fs(e,t);return n!==void 0&&(a.additionalProperties=n),a}function fs(e,t){if(e.catchall._def.typeName!=="ZodNever")return P(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function ms(e){try{return e.isOptional()}catch{return!0}}var hs=(e,t)=>{var a;if(t.currentPath.toString()===((a=t.propertyPath)==null?void 0:a.toString()))return P(e.innerType._def,t);const r=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:G()},r]}:G()},gs=(e,t)=>{if(t.pipeStrategy==="input")return P(e.in._def,t);if(t.pipeStrategy==="output")return P(e.out._def,t);const a=P(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),r=P(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",a?"1":"0"]});return{allOf:[a,r].filter(s=>s!==void 0)}};function vs(e,t){return P(e.type._def,t)}function ys(e,t){const r={type:"array",uniqueItems:!0,items:P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&(r.minItems=e.minSize.value),e.maxSize&&(r.maxItems=e.maxSize.value),r}function bs(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((a,r)=>P(a._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((a,r)=>r===void 0?a:[...a,r],[]),additionalItems:P(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((a,r)=>P(a._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((a,r)=>r===void 0?a:[...a,r],[])}}function Is(){return{not:G()}}function Es(){return G()}var Ss=(e,t)=>P(e.innerType._def,t),_s=(e,t,a)=>{switch(t){case w.ZodString:return xa(e,a);case w.ZodNumber:return ds(e);case w.ZodObject:return ps(e,a);case w.ZodBigInt:return zr(e);case w.ZodBoolean:return Wr();case w.ZodDate:return Ra(e,a);case w.ZodUndefined:return Is();case w.ZodNull:return is();case w.ZodArray:return Jr(e,a);case w.ZodUnion:case w.ZodDiscriminatedUnion:return ls(e,a);case w.ZodIntersection:return es(e,a);case w.ZodTuple:return bs(e,a);case w.ZodRecord:return ka(e,a);case w.ZodLiteral:return ts(e);case w.ZodEnum:return Kr(e);case w.ZodNativeEnum:return ns(e);case w.ZodNullable:return us(e,a);case w.ZodOptional:return hs(e,a);case w.ZodMap:return ss(e,a);case w.ZodSet:return ys(e,a);case w.ZodLazy:return()=>e.getter()._def;case w.ZodPromise:return vs(e,a);case w.ZodNaN:case w.ZodNever:return os();case w.ZodEffects:return Qr(e,a);case w.ZodAny:return G();case w.ZodUnknown:return Es();case w.ZodDefault:return Hr(e,a);case w.ZodBranded:return Aa(e,a);case w.ZodReadonly:return Ss(e,a);case w.ZodCatch:return Gr(e,a);case w.ZodPipeline:return gs(e,a);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(r=>{})()}},Ts=(e,t)=>{let a=0;for(;a<e.length&&a<t.length&&e[a]===t[a];a++);return[(e.length-a).toString(),...t.slice(a)].join("/")};function P(e,t,a=!1){var r;const s=t.seen.get(e);if(t.override){const u=(r=t.override)==null?void 0:r.call(t,e,t,s,a);if(u!==Br)return u}if(s&&!a){const u=Ms(s,t);if(u!==void 0)return u}const n={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,n);const i=_s(e,e.typeName,t),o=typeof i=="function"?P(i(),t):i;if(o&&ws(e,t,o),t.postProcess){const u=t.postProcess(o,e,t);return n.jsonSchema=o,u}return n.jsonSchema=o,o}var Ms=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Ts(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((a,r)=>t.currentPath[r]===a)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),G()):t.$refStrategy==="seen"?G():void 0}},ws=(e,t,a)=>(e.description&&(a.description=e.description),a),Cs=e=>{const t=qr(e),a=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:a,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([r,s])=>[s._def,{def:s._def,path:[...t.basePath,t.definitionPath,r],jsonSchema:void 0}]))}},As=(e,t)=>{var a;const r=Cs(t);let s=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((l,[d,p])=>{var v;return{...l,[d]:(v=P(p._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0))!=null?v:G()}},{}):void 0;const n=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,i=(a=P(e._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1))!=null?a:G(),o=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;o!==void 0&&(i.title=o);const u=n===void 0?s?{...i,[r.definitionPath]:s}:i:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...s,[n]:i}};return u.$schema="http://json-schema.org/draft-07/schema#",u},Ct=Symbol.for("vercel.ai.schema");function Rs(e){let t;return()=>(t==null&&(t=e()),t)}function ht(e,{validate:t}={}){return{[Ct]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function xs(e){return typeof e=="object"&&e!==null&&Ct in e&&e[Ct]===!0&&"jsonSchema"in e&&"validate"in e}function Nt(e){return e==null?ht({properties:{},additionalProperties:!1}):xs(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Oa(e):ks(e):e()}function ks(e){return ht(()=>Pt(e["~standard"].jsonSchema.input({target:"draft-07"})),{validate:async t=>{const a=await e["~standard"].validate(t);return"value"in a?{success:!0,value:a.value}:{success:!1,error:new $e({value:t,cause:a.issues})}}})}function Os(e,t){var a;const r=(a=void 0)!=null?a:!1;return ht(()=>As(e,{$refStrategy:r?"root":"none"}),{validate:async s=>{const n=await e.safeParseAsync(s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ps(e,t){var a;const r=(a=void 0)!=null?a:!1;return ht(()=>Pt(ir(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async s=>{const n=await or(e,s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ns(e){return"_zod"in e}function Oa(e,t){return Ns(e)?Ps(e):Os(e)}async function sa({value:e,schema:t,context:a}){const r=await Qe({value:e,schema:t,context:a});if(!r.success)throw $e.wrap({value:e,cause:r.error,context:a});return r.value}async function Qe({value:e,schema:t,context:a}){const r=Nt(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};const s=await r.validate(e);return s.success?{success:!0,value:s.value,rawValue:e}:{success:!1,error:$e.wrap({value:e,cause:s.error,context:a}),rawValue:e}}catch(s){return{success:!1,error:$e.wrap({value:e,cause:s,context:a}),rawValue:e}}}async function Ee({text:e,schema:t}){try{const a=Vr(e);return t==null?{success:!0,value:a,rawValue:a}:await Qe({value:a,schema:t})}catch(a){return{success:!1,error:Kt.isInstance(a)?a:new Kt({text:e,cause:a}),rawValue:void 0}}}function Ds({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new Ir).pipeThrough(new TransformStream({async transform({data:a},r){a!=="[DONE]"&&r.enqueue(await Ee({text:a,schema:t}))}}))}async function me(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var $s=Object.defineProperty,js=(e,t)=>{for(var a in t)$s(e,a,{get:t[a],enumerable:!0})},Pa="AI_NoObjectGeneratedError",Na=`vercel.ai.error.${Pa}`,Ls=Symbol.for(Na),Da,ge=class extends se{constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:s,finishReason:n}){super({name:Pa,message:e,cause:t}),this[Da]=!0,this.text=a,this.response=r,this.usage=s,this.finishReason=n}static isInstance(e){return se.hasMarker(e,Na)}};Da=Ls;var $a="AI_UIMessageStreamError",ja=`vercel.ai.error.${$a}`,Zs=Symbol.for(ja),La,Oe=class extends se{constructor({chunkType:e,chunkId:t,message:a}){super({name:$a,message:a}),this[La]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return se.hasMarker(e,ja)}};La=Zs;var Za=q([m(),dt(Uint8Array),dt(ArrayBuffer),ca(e=>{var t,a;return(a=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?a:!1},{message:"Must be a Buffer"})]),Ke=lr(()=>q([cr(),m(),ur(),V(),Ye(m(),Ke.optional()),Xe(Ke)])),k=Ye(m(),Ye(m(),Ke.optional())),Fa=D({type:E("text"),text:m(),providerOptions:k.optional()}),Fs=D({type:E("image"),image:q([Za,dt(URL)]),mediaType:m().optional(),providerOptions:k.optional()}),Ua=D({type:E("file"),data:q([Za,dt(URL)]),filename:m().optional(),mediaType:m(),providerOptions:k.optional()}),Us=D({type:E("reasoning"),text:m(),providerOptions:k.optional()}),Vs=D({type:E("tool-call"),toolCallId:m(),toolName:m(),input:pe(),providerOptions:k.optional(),providerExecuted:V().optional()}),Bs=dr("type",[D({type:E("text"),value:m(),providerOptions:k.optional()}),D({type:E("json"),value:Ke,providerOptions:k.optional()}),D({type:E("execution-denied"),reason:m().optional(),providerOptions:k.optional()}),D({type:E("error-text"),value:m(),providerOptions:k.optional()}),D({type:E("error-json"),value:Ke,providerOptions:k.optional()}),D({type:E("content"),value:Xe(q([D({type:E("text"),text:m(),providerOptions:k.optional()}),D({type:E("media"),data:m(),mediaType:m()}),D({type:E("file-data"),data:m(),mediaType:m(),filename:m().optional(),providerOptions:k.optional()}),D({type:E("file-url"),url:m(),providerOptions:k.optional()}),D({type:E("file-id"),fileId:q([m(),Ye(m(),m())]),providerOptions:k.optional()}),D({type:E("image-data"),data:m(),mediaType:m(),providerOptions:k.optional()}),D({type:E("image-url"),url:m(),providerOptions:k.optional()}),D({type:E("image-file-id"),fileId:q([m(),Ye(m(),m())]),providerOptions:k.optional()}),D({type:E("custom"),providerOptions:k.optional()})]))})]),Va=D({type:E("tool-result"),toolCallId:m(),toolName:m(),output:Bs,providerOptions:k.optional()}),qs=D({type:E("tool-approval-request"),approvalId:m(),toolCallId:m()}),Js=D({type:E("tool-approval-response"),approvalId:m(),approved:V(),reason:m().optional()}),zs=D({role:E("system"),content:m(),providerOptions:k.optional()}),Ws=D({role:E("user"),content:q([m(),Xe(q([Fa,Fs,Ua]))]),providerOptions:k.optional()}),Gs=D({role:E("assistant"),content:q([m(),Xe(q([Fa,Ua,Us,Vs,Va,qs]))]),providerOptions:k.optional()}),Ys=D({role:E("tool"),content:Xe(q([Va,Js])),providerOptions:k.optional()});q([zs,Ws,Gs,Ys]);function Ba(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const a={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const s=t[r];if(s===void 0)continue;const n=r in e?e[r]:void 0,i=s!==null&&typeof s=="object"&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp),o=n!=null&&typeof n=="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof RegExp);i&&o?a[r]=Ba(n,s):a[r]=s}return a}var Hs={};js(Hs,{array:()=>en,choice:()=>tn,json:()=>an,object:()=>Xs,text:()=>Ks});function Qs(e){const t=["ROOT"];let a=-1,r=null;function s(u,l,d){switch(u){case'"':{a=l,t.pop(),t.push(d),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{a=l,r=l,t.pop(),t.push(d),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(d),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":{a=l,t.pop(),t.push(d),t.push("INSIDE_NUMBER");break}case"{":{a=l,t.pop(),t.push(d),t.push("INSIDE_OBJECT_START");break}case"[":{a=l,t.pop(),t.push(d),t.push("INSIDE_ARRAY_START");break}}}function n(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{a=l,t.pop();break}}}function i(u,l){switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{a=l,t.pop();break}}}for(let u=0;u<e.length;u++){const l=e[u];switch(t[t.length-1]){case"ROOT":s(l,u,"FINISH");break;case"INSIDE_OBJECT_START":{switch(l){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{a=u,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{l==='"'&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break}case"INSIDE_OBJECT_KEY":{l==='"'&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break}case"INSIDE_OBJECT_AFTER_KEY":{l===":"&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(l,u,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{n(l,u);break}case"INSIDE_STRING":{switch(l){case'"':{t.pop(),a=u;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:a=u}break}case"INSIDE_ARRAY_START":{l==="]"?(a=u,t.pop()):(a=u,s(l,u,"INSIDE_ARRAY_AFTER_VALUE"));break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{a=u,t.pop();break}default:{a=u;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(l,u,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),a=u;break}case"INSIDE_NUMBER":{switch(l){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{a=u;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&n(l,u);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&n(l,u);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const p=e.substring(r,u+1);!"false".startsWith(p)&&!"true".startsWith(p)&&!"null".startsWith(p)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?n(l,u):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(l,u)):a=u;break}}}let o=e.slice(0,a+1);for(let u=t.length-1;u>=0;u--)switch(t[u]){case"INSIDE_STRING":{o+='"';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":{o+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{o+="]";break}case"INSIDE_LITERAL":{const d=e.substring(r,e.length);"true".startsWith(d)?o+="true".slice(d.length):"false".startsWith(d)?o+="false".slice(d.length):"null".startsWith(d)&&(o+="null".slice(d.length))}}return o}async function at(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ee({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Ee({text:Qs(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var Ks=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),Xs=({schema:e,name:t,description:a})=>{const r=Nt(e);return{name:"object",responseFormat:me(r.jsonSchema).then(s=>({type:"json",schema:s,...t!=null&&{name:t},...a!=null&&{description:a}})),async parseCompleteOutput({text:s},n){const i=await Ee({text:s});if(!i.success)throw new ge({message:"No object generated: could not parse the response.",cause:i.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});const o=await Qe({value:i.value,schema:r});if(!o.success)throw new ge({message:"No object generated: response did not match schema.",cause:o.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});return o.value},async parsePartialOutput({text:s}){const n=await at(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:n.value}}},createElementStreamTransform(){}}},en=({element:e,name:t,description:a})=>{const r=Nt(e);return{name:"array",responseFormat:me(r.jsonSchema).then(s=>{const{$schema:n,...i}=s;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:i}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...a!=null&&{description:a}}}),async parseCompleteOutput({text:s},n){const i=await Ee({text:s});if(!i.success)throw new ge({message:"No object generated: could not parse the response.",cause:i.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});const o=i.value;if(o==null||typeof o!="object"||!("elements"in o)||!Array.isArray(o.elements))throw new ge({message:"No object generated: response did not match schema.",cause:new $e({value:o,cause:"response must be an object with an elements array"}),text:s,response:n.response,usage:n.usage,finishReason:n.finishReason});for(const u of o.elements){const l=await Qe({value:u,schema:r});if(!l.success)throw new ge({message:"No object generated: response did not match schema.",cause:l.error,text:s,response:n.response,usage:n.usage,finishReason:n.finishReason})}return o.elements},async parsePartialOutput({text:s}){const n=await at(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const i=n.value;if(i==null||typeof i!="object"||!("elements"in i)||!Array.isArray(i.elements))return;const o=n.state==="repaired-parse"&&i.elements.length>0?i.elements.slice(0,-1):i.elements,u=[];for(const l of o){const d=await Qe({value:l,schema:r});d.success&&u.push(d.value)}return{partial:u}}}},createElementStreamTransform(){let s=0;return new TransformStream({transform({partialOutput:n},i){if(n!=null)for(;s<n.length;s++)i.enqueue(n[s])}})}}},tn=({options:e,name:t,description:a})=>({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},...t!=null&&{name:t},...a!=null&&{description:a}}),async parseCompleteOutput({text:r},s){const n=await Ee({text:r});if(!n.success)throw new ge({message:"No object generated: could not parse the response.",cause:n.error,text:r,response:s.response,usage:s.usage,finishReason:s.finishReason});const i=n.value;if(i==null||typeof i!="object"||!("result"in i)||typeof i.result!="string"||!e.includes(i.result))throw new ge({message:"No object generated: response did not match schema.",cause:new $e({value:i,cause:"response must be an object that contains a choice value."}),text:r,response:s.response,usage:s.usage,finishReason:s.finishReason});return i.result},async parsePartialOutput({text:r}){const s=await at(r);switch(s.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const n=s.value;if(n==null||typeof n!="object"||!("result"in n)||typeof n.result!="string")return;const i=e.filter(o=>o.startsWith(n.result));return s.state==="successful-parse"?i.includes(n.result)?{partial:n.result}:void 0:i.length===1?{partial:i[0]}:void 0}}},createElementStreamTransform(){}}),an=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:a},r){const s=await Ee({text:a});if(!s.success)throw new ge({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:r.response,usage:r.usage,finishReason:r.finishReason});return s.value},async parsePartialOutput({text:a}){const r=await at(a);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return r.value===void 0?void 0:{partial:r.value}}},createElementStreamTransform(){}});tt({prefix:"aitxt",size:24});(class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
13
13
|
|
|
14
14
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
15
15
|
|
|
16
|
-
`)}})}});var rn=Rs(()=>Oa(q([$({type:E("text-start"),id:m(),providerMetadata:k.optional()}),$({type:E("text-delta"),id:m(),delta:m(),providerMetadata:k.optional()}),$({type:E("text-end"),id:m(),providerMetadata:k.optional()}),$({type:E("error"),errorText:m()}),$({type:E("tool-input-start"),toolCallId:m(),toolName:m(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),title:m().optional()}),$({type:E("tool-input-delta"),toolCallId:m(),inputTextDelta:m()}),$({type:E("tool-input-available"),toolCallId:m(),toolName:m(),input:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),title:m().optional()}),$({type:E("tool-input-error"),toolCallId:m(),toolName:m(),input:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),errorText:m(),title:m().optional()}),$({type:E("tool-approval-request"),approvalId:m(),toolCallId:m()}),$({type:E("tool-output-available"),toolCallId:m(),output:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),preliminary:V().optional()}),$({type:E("tool-output-error"),toolCallId:m(),errorText:m(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional()}),$({type:E("tool-output-denied"),toolCallId:m()}),$({type:E("reasoning-start"),id:m(),providerMetadata:k.optional()}),$({type:E("reasoning-delta"),id:m(),delta:m(),providerMetadata:k.optional()}),$({type:E("reasoning-end"),id:m(),providerMetadata:k.optional()}),$({type:E("source-url"),sourceId:m(),url:m(),title:m().optional(),providerMetadata:k.optional()}),$({type:E("source-document"),sourceId:m(),mediaType:m(),title:m(),filename:m().optional(),providerMetadata:k.optional()}),$({type:E("file"),url:m(),mediaType:m(),providerMetadata:k.optional()}),$({type:ca(e=>typeof e=="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:m().optional(),data:pe(),transient:V().optional()}),$({type:E("start-step")}),$({type:E("finish-step")}),$({type:E("start"),messageId:m().optional(),messageMetadata:pe().optional()}),$({type:E("finish"),finishReason:pr(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:pe().optional()}),$({type:E("abort"),reason:m().optional()}),$({type:E("message-metadata"),messageMetadata:pe()})])));function sn(e){return e.type.startsWith("data-")}function At(e){return e.type.startsWith("tool-")}function nn(e){return e.type==="dynamic-tool"}function je(e){return At(e)||nn(e)}function na(e){return e.type.split("-").slice(1).join("-")}function on({lastMessage:e,messageId:t}){return{message:e?.role==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function ln({stream:e,messageMetadataSchema:t,dataPartSchemas:a,runUpdateMessageJob:r,onError:s,onToolCall:n,onData:i}){return e.pipeThrough(new TransformStream({async transform(o,u){await r(async({state:l,write:d})=>{var f,v,p,S;function M(c){const x=l.message.parts.filter(je).find(y=>y.toolCallId===c);if(x==null)throw new Oe({chunkType:"tool-invocation",chunkId:c,message:`No tool invocation found for tool call ID "${c}".`});return x}function A(c){var N;const x=l.message.parts.find(_=>At(_)&&_.toolCallId===c.toolCallId),y=c,g=x;if(x!=null){x.state=c.state,g.input=y.input,g.output=y.output,g.errorText=y.errorText,g.rawInput=y.rawInput,g.preliminary=y.preliminary,c.title!==void 0&&(g.title=c.title),g.providerExecuted=(N=y.providerExecuted)!=null?N:x.providerExecuted;const _=y.providerMetadata;if(_!=null)if(c.state==="output-available"||c.state==="output-error"){const O=x;O.resultProviderMetadata=_}else x.callProviderMetadata=_}else l.message.parts.push({type:`tool-${c.toolName}`,toolCallId:c.toolCallId,state:c.state,title:c.title,input:y.input,output:y.output,rawInput:y.rawInput,errorText:y.errorText,providerExecuted:y.providerExecuted,preliminary:y.preliminary,...y.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:y.providerMetadata}:{},...y.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:y.providerMetadata}:{}})}function b(c){var N,x;const y=l.message.parts.find(O=>O.type==="dynamic-tool"&&O.toolCallId===c.toolCallId),g=c,_=y;if(y!=null){y.state=c.state,_.toolName=c.toolName,_.input=g.input,_.output=g.output,_.errorText=g.errorText,_.rawInput=(N=g.rawInput)!=null?N:_.rawInput,_.preliminary=g.preliminary,c.title!==void 0&&(_.title=c.title),_.providerExecuted=(x=g.providerExecuted)!=null?x:y.providerExecuted;const O=g.providerMetadata;if(O!=null)if(c.state==="output-available"||c.state==="output-error"){const B=y;B.resultProviderMetadata=O}else y.callProviderMetadata=O}else l.message.parts.push({type:"dynamic-tool",toolName:c.toolName,toolCallId:c.toolCallId,state:c.state,input:g.input,output:g.output,errorText:g.errorText,preliminary:g.preliminary,providerExecuted:g.providerExecuted,title:c.title,...g.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:g.providerMetadata}:{},...g.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:g.providerMetadata}:{}})}async function R(c){if(c!=null){const N=l.message.metadata!=null?Ba(l.message.metadata,c):c;t!=null&&await sa({value:N,schema:t,context:{field:"message.metadata",entityId:l.message.id}}),l.message.metadata=N}}switch(o.type){case"text-start":{const c={type:"text",text:"",providerMetadata:o.providerMetadata,state:"streaming"};l.activeTextParts[o.id]=c,l.message.parts.push(c),d();break}case"text-delta":{const c=l.activeTextParts[o.id];if(c==null)throw new Oe({chunkType:"text-delta",chunkId:o.id,message:`Received text-delta for missing text part with ID "${o.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});c.text+=o.delta,c.providerMetadata=(f=o.providerMetadata)!=null?f:c.providerMetadata,d();break}case"text-end":{const c=l.activeTextParts[o.id];if(c==null)throw new Oe({chunkType:"text-end",chunkId:o.id,message:`Received text-end for missing text part with ID "${o.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});c.state="done",c.providerMetadata=(v=o.providerMetadata)!=null?v:c.providerMetadata,delete l.activeTextParts[o.id],d();break}case"reasoning-start":{const c={type:"reasoning",text:"",providerMetadata:o.providerMetadata,state:"streaming"};l.activeReasoningParts[o.id]=c,l.message.parts.push(c),d();break}case"reasoning-delta":{const c=l.activeReasoningParts[o.id];if(c==null)throw new Oe({chunkType:"reasoning-delta",chunkId:o.id,message:`Received reasoning-delta for missing reasoning part with ID "${o.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});c.text+=o.delta,c.providerMetadata=(p=o.providerMetadata)!=null?p:c.providerMetadata,d();break}case"reasoning-end":{const c=l.activeReasoningParts[o.id];if(c==null)throw new Oe({chunkType:"reasoning-end",chunkId:o.id,message:`Received reasoning-end for missing reasoning part with ID "${o.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});c.providerMetadata=(S=o.providerMetadata)!=null?S:c.providerMetadata,c.state="done",delete l.activeReasoningParts[o.id],d();break}case"file":{l.message.parts.push({type:"file",mediaType:o.mediaType,url:o.url,...o.providerMetadata!=null?{providerMetadata:o.providerMetadata}:{}}),d();break}case"source-url":{l.message.parts.push({type:"source-url",sourceId:o.sourceId,url:o.url,title:o.title,providerMetadata:o.providerMetadata}),d();break}case"source-document":{l.message.parts.push({type:"source-document",sourceId:o.sourceId,mediaType:o.mediaType,title:o.title,filename:o.filename,providerMetadata:o.providerMetadata}),d();break}case"tool-input-start":{const c=l.message.parts.filter(At);l.partialToolCalls[o.toolCallId]={text:"",toolName:o.toolName,index:c.length,dynamic:o.dynamic,title:o.title},o.dynamic?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-streaming",input:void 0,providerExecuted:o.providerExecuted,title:o.title,providerMetadata:o.providerMetadata}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-streaming",input:void 0,providerExecuted:o.providerExecuted,title:o.title,providerMetadata:o.providerMetadata}),d();break}case"tool-input-delta":{const c=l.partialToolCalls[o.toolCallId];if(c==null)throw new Oe({chunkType:"tool-input-delta",chunkId:o.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${o.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});c.text+=o.inputTextDelta;const{value:N}=await at(c.text);c.dynamic?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:N,title:c.title}):A({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:N,title:c.title}),d();break}case"tool-input-available":{o.dynamic?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-available",input:o.input,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:o.title}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-available",input:o.input,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:o.title}),d(),n&&!o.providerExecuted&&await n({toolCall:o});break}case"tool-input-error":{const c=l.message.parts.filter(je).find(x=>x.toolCallId===o.toolCallId);(c!=null?c.type==="dynamic-tool":!!o.dynamic)?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"output-error",input:o.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"output-error",input:void 0,rawInput:o.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata}),d();break}case"tool-approval-request":{const c=M(o.toolCallId);c.state="approval-requested",c.approval={id:o.approvalId},d();break}case"tool-output-denied":{const c=M(o.toolCallId);c.state="output-denied",d();break}case"tool-output-available":{const c=M(o.toolCallId);c.type==="dynamic-tool"?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"output-available",input:c.input,output:o.output,preliminary:o.preliminary,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}):A({toolCallId:o.toolCallId,toolName:na(c),state:"output-available",input:c.input,output:o.output,providerExecuted:o.providerExecuted,preliminary:o.preliminary,providerMetadata:o.providerMetadata,title:c.title}),d();break}case"tool-output-error":{const c=M(o.toolCallId);c.type==="dynamic-tool"?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"output-error",input:c.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}):A({toolCallId:o.toolCallId,toolName:na(c),state:"output-error",input:c.input,rawInput:c.rawInput,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}),d();break}case"start-step":{l.message.parts.push({type:"step-start"});break}case"finish-step":{l.activeTextParts={},l.activeReasoningParts={};break}case"start":{o.messageId!=null&&(l.message.id=o.messageId),await R(o.messageMetadata),(o.messageId!=null||o.messageMetadata!=null)&&d();break}case"finish":{o.finishReason!=null&&(l.finishReason=o.finishReason),await R(o.messageMetadata),o.messageMetadata!=null&&d();break}case"message-metadata":{await R(o.messageMetadata),o.messageMetadata!=null&&d();break}case"error":{s?.(new Error(o.errorText));break}default:if(sn(o)){if(a?.[o.type]!=null){const x=l.message.parts.findIndex(g=>"id"in g&&"data"in g&&g.id===o.id&&g.type===o.type),y=x>=0?x:l.message.parts.length;await sa({value:o.data,schema:a[o.type],context:{field:`message.parts[${y}].data`,entityName:o.type,entityId:o.id}})}const c=o;if(c.transient){i?.(c);break}const N=c.id!=null?l.message.parts.find(x=>c.type===x.type&&c.id===x.id):void 0;N!=null?N.data=c.data:l.message.parts.push(c),i?.(c),d()}}u.enqueue(o)})}}))}async function cn({stream:e,onError:t}){const a=e.getReader();try{for(;;){const{done:r}=await a.read();if(r)break}}catch(r){t?.(r)}finally{a.releaseLock()}}tt({prefix:"aitxt",size:24});tt({prefix:"aiobj",size:24});var un=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,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(r){a(r)}}),this.processQueue()})}};tt({prefix:"aiobj",size:24});async function dn(e){if(e==null)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw new Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async t=>{const{name:a,type:r}=t,s=await new Promise((n,i)=>{const o=new FileReader;o.onload=u=>{var l;n((l=u.target)==null?void 0:l.result)},o.onerror=u=>i(u),o.readAsDataURL(t)});return{type:"file",mediaType:r,filename:a,url:s}}))}var pn=class{constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:s,prepareSendMessagesRequest:n,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=s,this.prepareSendMessagesRequest=n,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var a,r,s,n,i;const o=await me(this.body),u=await me(this.headers),l=await me(this.credentials),d={...ke(u),...ke(t.headers)},f=await((a=this.prepareSendMessagesRequest)==null?void 0:a.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...o,...t.body},headers:d,credentials:l,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),v=(r=f?.api)!=null?r:this.api,p=f?.headers!==void 0?ke(f.headers):d,S=f?.body!==void 0?f.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},M=(s=f?.credentials)!=null?s:l,b=await((n=this.fetch)!=null?n:globalThis.fetch)(v,{method:"POST",headers:{"Content-Type":"application/json",...p},body:JSON.stringify(S),credentials:M,signal:e});if(!b.ok)throw new Error((i=await b.text())!=null?i:"Failed to fetch the chat response.");if(!b.body)throw new Error("The response body is empty.");return this.processResponseStream(b.body)}async reconnectToStream(e){var t,a,r,s,n;const i=await me(this.body),o=await me(this.headers),u=await me(this.credentials),l={...ke(o),...ke(e.headers)},d=await((t=this.prepareReconnectToStreamRequest)==null?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:l,credentials:u,requestMetadata:e.metadata})),f=(a=d?.api)!=null?a:`${this.api}/${e.chatId}/stream`,v=d?.headers!==void 0?ke(d.headers):l,p=(r=d?.credentials)!=null?r:u,M=await((s=this.fetch)!=null?s:globalThis.fetch)(f,{method:"GET",headers:v,credentials:p});if(M.status===204)return null;if(!M.ok)throw new Error((n=await M.text())!=null?n:"Failed to fetch the chat response.");if(!M.body)throw new Error("The response body is empty.");return this.processResponseStream(M.body)}},qa=class extends pn{constructor(e={}){super(e)}processResponseStream(e){return Ds({stream:e,schema:rn}).pipeThrough(new TransformStream({async transform(t,a){if(!t.success)throw t.error;a.enqueue(t.value)}}))}},fn=class{constructor({generateId:e=Lr,id:t=e(),transport:a=new qa,messageMetadataSchema:r,dataPartSchemas:s,state:n,onError:i,onToolCall:o,onFinish:u,onData:l,sendAutomaticallyWhen:d}){this.activeResponse=void 0,this.jobExecutor=new un,this.sendMessage=async(f,v)=>{var p,S,M,A;if(f==null){await this.makeRequest({trigger:"submit-message",messageId:(p=this.lastMessage)==null?void 0:p.id,...v});return}let b;if("text"in f||"files"in f?b={parts:[...Array.isArray(f.files)?f.files:await dn(f.files),..."text"in f&&f.text!=null?[{type:"text",text:f.text}]:[]]}:b=f,f.messageId!=null){const R=this.state.messages.findIndex(c=>c.id===f.messageId);if(R===-1)throw new Error(`message with id ${f.messageId} not found`);if(this.state.messages[R].role!=="user")throw new Error(`message with id ${f.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,R+1),this.state.replaceMessage(R,{...b,id:f.messageId,role:(S=b.role)!=null?S:"user",metadata:f.metadata})}else this.state.pushMessage({...b,id:(M=b.id)!=null?M:this.generateId(),role:(A=b.role)!=null?A:"user",metadata:f.metadata});await this.makeRequest({trigger:"submit-message",messageId:f.messageId,...v})},this.regenerate=async({messageId:f,...v}={})=>{const p=f==null?this.state.messages.length-1:this.state.messages.findIndex(S=>S.id===f);if(p===-1)throw new Error(`message ${f} not found`);this.state.messages=this.state.messages.slice(0,this.messages[p].role==="assistant"?p:p+1),await this.makeRequest({trigger:"regenerate-message",messageId:f,...v})},this.resumeStream=async(f={})=>{await this.makeRequest({trigger:"resume-stream",...f})},this.clearError=()=>{this.status==="error"&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:f,approved:v,reason:p,options:S})=>this.jobExecutor.run(async()=>{const M=this.state.messages,A=M[M.length-1],b=R=>je(R)&&R.state==="approval-requested"&&R.approval.id===f?{...R,state:"approval-responded",approval:{id:f,approved:v,reason:p}}:R;this.state.replaceMessage(M.length-1,{...A,parts:A.parts.map(b)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(b)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(R=>{var c;R&&this.makeRequest({trigger:"submit-message",messageId:(c=this.lastMessage)==null?void 0:c.id,...S})})}),this.addToolOutput=async({state:f="output-available",toolCallId:v,output:p,errorText:S,options:M})=>this.jobExecutor.run(async()=>{const A=this.state.messages,b=A[A.length-1],R=c=>je(c)&&c.toolCallId===v?{...c,state:f,output:p,errorText:S}:c;this.state.replaceMessage(A.length-1,{...b,parts:b.parts.map(R)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(R)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(c=>{var N;c&&this.makeRequest({trigger:"submit-message",messageId:(N=this.lastMessage)==null?void 0:N.id,...M})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var f;this.status!=="streaming"&&this.status!=="submitted"||(f=this.activeResponse)!=null&&f.abortController&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=s,this.state=n,this.onError=i,this.onToolCall=o,this.onFinish=u,this.onData=l,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;const e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&typeof e=="object"&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:a,body:r,messageId:s}){var n,i,o;let u;if(e==="resume-stream")try{const p=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:a,body:r});if(p==null)return;u=p}catch(p){this.onError&&p instanceof Error&&this.onError(p),this.setStatus({status:"error",error:p});return}this.setStatus({status:"submitted",error:void 0});const l=this.lastMessage;let d=!1,f=!1,v=!1;try{const p={state:on({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};p.abortController.signal.addEventListener("abort",()=>{d=!0}),this.activeResponse=p;let S;e==="resume-stream"?S=u:S=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:p.abortController.signal,metadata:t,headers:a,body:r,trigger:e,messageId:s});const M=A=>this.jobExecutor.run(()=>A({state:p.state,write:()=>{var b;this.setStatus({status:"streaming"}),p.state.message.id===((b=this.lastMessage)==null?void 0:b.id)?this.state.replaceMessage(this.state.messages.length-1,p.state.message):this.state.pushMessage(p.state.message)}}));await cn({stream:ln({stream:S,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:M,onError:A=>{throw A}}),onError:A=>{throw A}}),this.setStatus({status:"ready"})}catch(p){if(d||p.name==="AbortError")return d=!0,this.setStatus({status:"ready"}),null;v=!0,p instanceof TypeError&&(p.message.toLowerCase().includes("fetch")||p.message.toLowerCase().includes("network"))&&(f=!0),this.onError&&p instanceof Error&&this.onError(p),this.setStatus({status:"error",error:p})}finally{try{(i=this.onFinish)==null||i.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:d,isDisconnect:f,isError:v,finishReason:(n=this.activeResponse)==null?void 0:n.state.finishReason})}catch(p){console.error(p)}this.activeResponse=void 0}!v&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:(o=this.lastMessage)==null?void 0:o.id,metadata:t,headers:a,body:r})}};function mn({messages:e}){const t=e[e.length-1];if(!t||t.role!=="assistant")return!1;const a=t.parts.reduce((s,n,i)=>n.type==="step-start"?i:s,-1),r=t.parts.slice(a+1).filter(je);return r.filter(s=>s.state==="approval-responded").length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error"||s.state==="approval-responded")}function hn({messages:e}){const t=e[e.length-1];if(!t||t.role!=="assistant")return!1;const a=t.parts.reduce((s,n,i)=>n.type==="step-start"?i:s,-1),r=t.parts.slice(a+1).filter(je).filter(s=>!s.providerExecuted);return r.length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error")}var Tt,oa;function gn(){if(oa)return Tt;oa=1;function e(t,a){if(typeof t!="function")throw new TypeError(`Expected the first argument to be a \`function\`, got \`${typeof t}\`.`);let r,s=0;return function(...i){clearTimeout(r);const o=Date.now(),u=o-s,l=a-u;l<=0?(s=o,t.apply(this,i)):r=setTimeout(()=>{s=Date.now(),t.apply(this,i)},l)}}return Tt=e,Tt}var vn=gn();const yn=fr(vn);var Ja=(e,t,a)=>{if(!t.has(e))throw TypeError("Cannot "+a)},j=(e,t,a)=>(Ja(e,t,"read from private field"),a?a.call(e):t.get(e)),re=(e,t,a)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,a)},fe=(e,t,a,r)=>(Ja(e,t,"write to private field"),t.set(e,a),a);function bn(e,t){return t!=null?yn(e,t):e}var Q,ct,ut,ze,We,Ge,Pe,Rt,xt,In=class{constructor(e=[]){re(this,Q,void 0),re(this,ct,"ready"),re(this,ut,void 0),re(this,ze,new Set),re(this,We,new Set),re(this,Ge,new Set),this.pushMessage=t=>{fe(this,Q,j(this,Q).concat(t)),j(this,Pe).call(this)},this.popMessage=()=>{fe(this,Q,j(this,Q).slice(0,-1)),j(this,Pe).call(this)},this.replaceMessage=(t,a)=>{fe(this,Q,[...j(this,Q).slice(0,t),this.snapshot(a),...j(this,Q).slice(t+1)]),j(this,Pe).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,a)=>{const r=a?bn(t,a):t;return j(this,ze).add(r),()=>{j(this,ze).delete(r)}},this["~registerStatusCallback"]=t=>(j(this,We).add(t),()=>{j(this,We).delete(t)}),this["~registerErrorCallback"]=t=>(j(this,Ge).add(t),()=>{j(this,Ge).delete(t)}),re(this,Pe,()=>{j(this,ze).forEach(t=>t())}),re(this,Rt,()=>{j(this,We).forEach(t=>t())}),re(this,xt,()=>{j(this,Ge).forEach(t=>t())}),fe(this,Q,e)}get status(){return j(this,ct)}set status(e){fe(this,ct,e),j(this,Rt).call(this)}get error(){return j(this,ut)}set error(e){fe(this,ut,e),j(this,xt).call(this)}get messages(){return j(this,Q)}set messages(e){fe(this,Q,[...e]),j(this,Pe).call(this)}};Q=new WeakMap;ct=new WeakMap;ut=new WeakMap;ze=new WeakMap;We=new WeakMap;Ge=new WeakMap;Pe=new WeakMap;Rt=new WeakMap;xt=new WeakMap;var Ne,ia=class extends fn{constructor({messages:e,...t}){const a=new In(e);super({...t,state:a}),re(this,Ne,void 0),this["~registerMessagesCallback"]=(r,s)=>j(this,Ne)["~registerMessagesCallback"](r,s),this["~registerStatusCallback"]=r=>j(this,Ne)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>j(this,Ne)["~registerErrorCallback"](r),fe(this,Ne,a)}};Ne=new WeakMap;function En({experimental_throttle:e,resume:t=!1,...a}={}){const r=T.useRef("chat"in a?{}:{onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen});"chat"in a||(r.current={onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen});const s={...a,onToolCall:v=>{var p,S;return(S=(p=r.current).onToolCall)==null?void 0:S.call(p,v)},onData:v=>{var p,S;return(S=(p=r.current).onData)==null?void 0:S.call(p,v)},onFinish:v=>{var p,S;return(S=(p=r.current).onFinish)==null?void 0:S.call(p,v)},onError:v=>{var p,S;return(S=(p=r.current).onError)==null?void 0:S.call(p,v)},sendAutomaticallyWhen:v=>{var p,S,M;return(M=(S=(p=r.current).sendAutomaticallyWhen)==null?void 0:S.call(p,v))!=null?M:!1}},n=T.useRef("chat"in a?a.chat:new ia(s));("chat"in a&&a.chat!==n.current||"id"in a&&n.current.id!==a.id)&&(n.current="chat"in a?a.chat:new ia(s));const o=T.useCallback(v=>n.current["~registerMessagesCallback"](v,e),[e,n.current.id]),u=T.useSyncExternalStore(o,()=>n.current.messages,()=>n.current.messages),l=T.useSyncExternalStore(n.current["~registerStatusCallback"],()=>n.current.status,()=>n.current.status),d=T.useSyncExternalStore(n.current["~registerErrorCallback"],()=>n.current.error,()=>n.current.error),f=T.useCallback(v=>{typeof v=="function"&&(v=v(n.current.messages)),n.current.messages=v},[n]);return T.useEffect(()=>{t&&n.current.resumeStream()},[t,n]),{id:n.current.id,messages:u,setMessages:f,sendMessage:n.current.sendMessage,regenerate:n.current.regenerate,clearError:n.current.clearError,stop:n.current.stop,error:d,resumeStream:n.current.resumeStream,status:l,addToolResult:n.current.addToolOutput,addToolOutput:n.current.addToolOutput,addToolApprovalResponse:n.current.addToolApprovalResponse}}const Sn=1e4,za="true";function gt(e,t){return X.chatAutosend(e,t)}function _n(e){return e==="pending"||e==="sending"}function Tn(e){if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}return!t||typeof t!="object"||typeof t.createdAt!="number"||typeof t.message!="object"||!_n(t.status)?null:t}function Mn(e,t,a,r,s=Date.now()){const n={message:r,createdAt:s,status:"pending"};return e.setItem(gt(t,a),JSON.stringify(n)),n}function wn(e,t,a){const r=gt(t,a),s=Tn(e.getItem(r));return s||(e.removeItem(r),null)}function Cn(e,t,a,r=Date.now()){const s=gt(t,a),n=wn(e,t,a);return!n||n.status!=="pending"?null:r-n.createdAt>=Sn?(e.removeItem(s),null):(e.setItem(s,JSON.stringify({...n,status:"sending"})),{message:n.message,createdAt:n.createdAt})}function An(e,t,a){e.removeItem(gt(t,a))}function Rn(e){const t=et.c(10);let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},t[0]=a):a=t[0];const r=ua(a);let s;if(t[1]!==r?.params.appSlug||t[2]!==r?.params.collectionName||t[3]!==r?.params.itemId||t[4]!==e){s=[],e&&s.push(`### Selected Agent
|
|
16
|
+
`)}})}});var rn=Rs(()=>Oa(q([$({type:E("text-start"),id:m(),providerMetadata:k.optional()}),$({type:E("text-delta"),id:m(),delta:m(),providerMetadata:k.optional()}),$({type:E("text-end"),id:m(),providerMetadata:k.optional()}),$({type:E("error"),errorText:m()}),$({type:E("tool-input-start"),toolCallId:m(),toolName:m(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),title:m().optional()}),$({type:E("tool-input-delta"),toolCallId:m(),inputTextDelta:m()}),$({type:E("tool-input-available"),toolCallId:m(),toolName:m(),input:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),title:m().optional()}),$({type:E("tool-input-error"),toolCallId:m(),toolName:m(),input:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),errorText:m(),title:m().optional()}),$({type:E("tool-approval-request"),approvalId:m(),toolCallId:m()}),$({type:E("tool-output-available"),toolCallId:m(),output:pe(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional(),preliminary:V().optional()}),$({type:E("tool-output-error"),toolCallId:m(),errorText:m(),providerExecuted:V().optional(),providerMetadata:k.optional(),dynamic:V().optional()}),$({type:E("tool-output-denied"),toolCallId:m()}),$({type:E("reasoning-start"),id:m(),providerMetadata:k.optional()}),$({type:E("reasoning-delta"),id:m(),delta:m(),providerMetadata:k.optional()}),$({type:E("reasoning-end"),id:m(),providerMetadata:k.optional()}),$({type:E("source-url"),sourceId:m(),url:m(),title:m().optional(),providerMetadata:k.optional()}),$({type:E("source-document"),sourceId:m(),mediaType:m(),title:m(),filename:m().optional(),providerMetadata:k.optional()}),$({type:E("file"),url:m(),mediaType:m(),providerMetadata:k.optional()}),$({type:ca(e=>typeof e=="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:m().optional(),data:pe(),transient:V().optional()}),$({type:E("start-step")}),$({type:E("finish-step")}),$({type:E("start"),messageId:m().optional(),messageMetadata:pe().optional()}),$({type:E("finish"),finishReason:pr(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:pe().optional()}),$({type:E("abort"),reason:m().optional()}),$({type:E("message-metadata"),messageMetadata:pe()})])));function sn(e){return e.type.startsWith("data-")}function At(e){return e.type.startsWith("tool-")}function nn(e){return e.type==="dynamic-tool"}function je(e){return At(e)||nn(e)}function na(e){return e.type.split("-").slice(1).join("-")}function on({lastMessage:e,messageId:t}){return{message:e?.role==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function ln({stream:e,messageMetadataSchema:t,dataPartSchemas:a,runUpdateMessageJob:r,onError:s,onToolCall:n,onData:i}){return e.pipeThrough(new TransformStream({async transform(o,u){await r(async({state:l,write:d})=>{var p,v,f,S;function M(c){const x=l.message.parts.filter(je).find(y=>y.toolCallId===c);if(x==null)throw new Oe({chunkType:"tool-invocation",chunkId:c,message:`No tool invocation found for tool call ID "${c}".`});return x}function A(c){var N;const x=l.message.parts.find(_=>At(_)&&_.toolCallId===c.toolCallId),y=c,g=x;if(x!=null){x.state=c.state,g.input=y.input,g.output=y.output,g.errorText=y.errorText,g.rawInput=y.rawInput,g.preliminary=y.preliminary,c.title!==void 0&&(g.title=c.title),g.providerExecuted=(N=y.providerExecuted)!=null?N:x.providerExecuted;const _=y.providerMetadata;if(_!=null)if(c.state==="output-available"||c.state==="output-error"){const O=x;O.resultProviderMetadata=_}else x.callProviderMetadata=_}else l.message.parts.push({type:`tool-${c.toolName}`,toolCallId:c.toolCallId,state:c.state,title:c.title,input:y.input,output:y.output,rawInput:y.rawInput,errorText:y.errorText,providerExecuted:y.providerExecuted,preliminary:y.preliminary,...y.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:y.providerMetadata}:{},...y.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:y.providerMetadata}:{}})}function b(c){var N,x;const y=l.message.parts.find(O=>O.type==="dynamic-tool"&&O.toolCallId===c.toolCallId),g=c,_=y;if(y!=null){y.state=c.state,_.toolName=c.toolName,_.input=g.input,_.output=g.output,_.errorText=g.errorText,_.rawInput=(N=g.rawInput)!=null?N:_.rawInput,_.preliminary=g.preliminary,c.title!==void 0&&(_.title=c.title),_.providerExecuted=(x=g.providerExecuted)!=null?x:y.providerExecuted;const O=g.providerMetadata;if(O!=null)if(c.state==="output-available"||c.state==="output-error"){const B=y;B.resultProviderMetadata=O}else y.callProviderMetadata=O}else l.message.parts.push({type:"dynamic-tool",toolName:c.toolName,toolCallId:c.toolCallId,state:c.state,input:g.input,output:g.output,errorText:g.errorText,preliminary:g.preliminary,providerExecuted:g.providerExecuted,title:c.title,...g.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:g.providerMetadata}:{},...g.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:g.providerMetadata}:{}})}async function R(c){if(c!=null){const N=l.message.metadata!=null?Ba(l.message.metadata,c):c;t!=null&&await sa({value:N,schema:t,context:{field:"message.metadata",entityId:l.message.id}}),l.message.metadata=N}}switch(o.type){case"text-start":{const c={type:"text",text:"",providerMetadata:o.providerMetadata,state:"streaming"};l.activeTextParts[o.id]=c,l.message.parts.push(c),d();break}case"text-delta":{const c=l.activeTextParts[o.id];if(c==null)throw new Oe({chunkType:"text-delta",chunkId:o.id,message:`Received text-delta for missing text part with ID "${o.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});c.text+=o.delta,c.providerMetadata=(p=o.providerMetadata)!=null?p:c.providerMetadata,d();break}case"text-end":{const c=l.activeTextParts[o.id];if(c==null)throw new Oe({chunkType:"text-end",chunkId:o.id,message:`Received text-end for missing text part with ID "${o.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});c.state="done",c.providerMetadata=(v=o.providerMetadata)!=null?v:c.providerMetadata,delete l.activeTextParts[o.id],d();break}case"reasoning-start":{const c={type:"reasoning",text:"",providerMetadata:o.providerMetadata,state:"streaming"};l.activeReasoningParts[o.id]=c,l.message.parts.push(c),d();break}case"reasoning-delta":{const c=l.activeReasoningParts[o.id];if(c==null)throw new Oe({chunkType:"reasoning-delta",chunkId:o.id,message:`Received reasoning-delta for missing reasoning part with ID "${o.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});c.text+=o.delta,c.providerMetadata=(f=o.providerMetadata)!=null?f:c.providerMetadata,d();break}case"reasoning-end":{const c=l.activeReasoningParts[o.id];if(c==null)throw new Oe({chunkType:"reasoning-end",chunkId:o.id,message:`Received reasoning-end for missing reasoning part with ID "${o.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});c.providerMetadata=(S=o.providerMetadata)!=null?S:c.providerMetadata,c.state="done",delete l.activeReasoningParts[o.id],d();break}case"file":{l.message.parts.push({type:"file",mediaType:o.mediaType,url:o.url,...o.providerMetadata!=null?{providerMetadata:o.providerMetadata}:{}}),d();break}case"source-url":{l.message.parts.push({type:"source-url",sourceId:o.sourceId,url:o.url,title:o.title,providerMetadata:o.providerMetadata}),d();break}case"source-document":{l.message.parts.push({type:"source-document",sourceId:o.sourceId,mediaType:o.mediaType,title:o.title,filename:o.filename,providerMetadata:o.providerMetadata}),d();break}case"tool-input-start":{const c=l.message.parts.filter(At);l.partialToolCalls[o.toolCallId]={text:"",toolName:o.toolName,index:c.length,dynamic:o.dynamic,title:o.title},o.dynamic?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-streaming",input:void 0,providerExecuted:o.providerExecuted,title:o.title,providerMetadata:o.providerMetadata}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-streaming",input:void 0,providerExecuted:o.providerExecuted,title:o.title,providerMetadata:o.providerMetadata}),d();break}case"tool-input-delta":{const c=l.partialToolCalls[o.toolCallId];if(c==null)throw new Oe({chunkType:"tool-input-delta",chunkId:o.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${o.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});c.text+=o.inputTextDelta;const{value:N}=await at(c.text);c.dynamic?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:N,title:c.title}):A({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:N,title:c.title}),d();break}case"tool-input-available":{o.dynamic?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-available",input:o.input,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:o.title}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-available",input:o.input,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:o.title}),d(),n&&!o.providerExecuted&&await n({toolCall:o});break}case"tool-input-error":{const c=l.message.parts.filter(je).find(x=>x.toolCallId===o.toolCallId);(c!=null?c.type==="dynamic-tool":!!o.dynamic)?b({toolCallId:o.toolCallId,toolName:o.toolName,state:"output-error",input:o.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata}):A({toolCallId:o.toolCallId,toolName:o.toolName,state:"output-error",input:void 0,rawInput:o.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata}),d();break}case"tool-approval-request":{const c=M(o.toolCallId);c.state="approval-requested",c.approval={id:o.approvalId},d();break}case"tool-output-denied":{const c=M(o.toolCallId);c.state="output-denied",d();break}case"tool-output-available":{const c=M(o.toolCallId);c.type==="dynamic-tool"?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"output-available",input:c.input,output:o.output,preliminary:o.preliminary,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}):A({toolCallId:o.toolCallId,toolName:na(c),state:"output-available",input:c.input,output:o.output,providerExecuted:o.providerExecuted,preliminary:o.preliminary,providerMetadata:o.providerMetadata,title:c.title}),d();break}case"tool-output-error":{const c=M(o.toolCallId);c.type==="dynamic-tool"?b({toolCallId:o.toolCallId,toolName:c.toolName,state:"output-error",input:c.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}):A({toolCallId:o.toolCallId,toolName:na(c),state:"output-error",input:c.input,rawInput:c.rawInput,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}),d();break}case"start-step":{l.message.parts.push({type:"step-start"});break}case"finish-step":{l.activeTextParts={},l.activeReasoningParts={};break}case"start":{o.messageId!=null&&(l.message.id=o.messageId),await R(o.messageMetadata),(o.messageId!=null||o.messageMetadata!=null)&&d();break}case"finish":{o.finishReason!=null&&(l.finishReason=o.finishReason),await R(o.messageMetadata),o.messageMetadata!=null&&d();break}case"message-metadata":{await R(o.messageMetadata),o.messageMetadata!=null&&d();break}case"error":{s?.(new Error(o.errorText));break}default:if(sn(o)){if(a?.[o.type]!=null){const x=l.message.parts.findIndex(g=>"id"in g&&"data"in g&&g.id===o.id&&g.type===o.type),y=x>=0?x:l.message.parts.length;await sa({value:o.data,schema:a[o.type],context:{field:`message.parts[${y}].data`,entityName:o.type,entityId:o.id}})}const c=o;if(c.transient){i?.(c);break}const N=c.id!=null?l.message.parts.find(x=>c.type===x.type&&c.id===x.id):void 0;N!=null?N.data=c.data:l.message.parts.push(c),i?.(c),d()}}u.enqueue(o)})}}))}async function cn({stream:e,onError:t}){const a=e.getReader();try{for(;;){const{done:r}=await a.read();if(r)break}}catch(r){t?.(r)}finally{a.releaseLock()}}tt({prefix:"aitxt",size:24});tt({prefix:"aiobj",size:24});var un=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,a)=>{this.queue.push(async()=>{try{await e(),t()}catch(r){a(r)}}),this.processQueue()})}};tt({prefix:"aiobj",size:24});async function dn(e){if(e==null)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw new Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async t=>{const{name:a,type:r}=t,s=await new Promise((n,i)=>{const o=new FileReader;o.onload=u=>{var l;n((l=u.target)==null?void 0:l.result)},o.onerror=u=>i(u),o.readAsDataURL(t)});return{type:"file",mediaType:r,filename:a,url:s}}))}var pn=class{constructor({api:e="/api/chat",credentials:t,headers:a,body:r,fetch:s,prepareSendMessagesRequest:n,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=a,this.body=r,this.fetch=s,this.prepareSendMessagesRequest=n,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var a,r,s,n,i;const o=await me(this.body),u=await me(this.headers),l=await me(this.credentials),d={...ke(u),...ke(t.headers)},p=await((a=this.prepareSendMessagesRequest)==null?void 0:a.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...o,...t.body},headers:d,credentials:l,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),v=(r=p?.api)!=null?r:this.api,f=p?.headers!==void 0?ke(p.headers):d,S=p?.body!==void 0?p.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},M=(s=p?.credentials)!=null?s:l,b=await((n=this.fetch)!=null?n:globalThis.fetch)(v,{method:"POST",headers:{"Content-Type":"application/json",...f},body:JSON.stringify(S),credentials:M,signal:e});if(!b.ok)throw new Error((i=await b.text())!=null?i:"Failed to fetch the chat response.");if(!b.body)throw new Error("The response body is empty.");return this.processResponseStream(b.body)}async reconnectToStream(e){var t,a,r,s,n;const i=await me(this.body),o=await me(this.headers),u=await me(this.credentials),l={...ke(o),...ke(e.headers)},d=await((t=this.prepareReconnectToStreamRequest)==null?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:l,credentials:u,requestMetadata:e.metadata})),p=(a=d?.api)!=null?a:`${this.api}/${e.chatId}/stream`,v=d?.headers!==void 0?ke(d.headers):l,f=(r=d?.credentials)!=null?r:u,M=await((s=this.fetch)!=null?s:globalThis.fetch)(p,{method:"GET",headers:v,credentials:f});if(M.status===204)return null;if(!M.ok)throw new Error((n=await M.text())!=null?n:"Failed to fetch the chat response.");if(!M.body)throw new Error("The response body is empty.");return this.processResponseStream(M.body)}},qa=class extends pn{constructor(e={}){super(e)}processResponseStream(e){return Ds({stream:e,schema:rn}).pipeThrough(new TransformStream({async transform(t,a){if(!t.success)throw t.error;a.enqueue(t.value)}}))}},fn=class{constructor({generateId:e=Lr,id:t=e(),transport:a=new qa,messageMetadataSchema:r,dataPartSchemas:s,state:n,onError:i,onToolCall:o,onFinish:u,onData:l,sendAutomaticallyWhen:d}){this.activeResponse=void 0,this.jobExecutor=new un,this.sendMessage=async(p,v)=>{var f,S,M,A;if(p==null){await this.makeRequest({trigger:"submit-message",messageId:(f=this.lastMessage)==null?void 0:f.id,...v});return}let b;if("text"in p||"files"in p?b={parts:[...Array.isArray(p.files)?p.files:await dn(p.files),..."text"in p&&p.text!=null?[{type:"text",text:p.text}]:[]]}:b=p,p.messageId!=null){const R=this.state.messages.findIndex(c=>c.id===p.messageId);if(R===-1)throw new Error(`message with id ${p.messageId} not found`);if(this.state.messages[R].role!=="user")throw new Error(`message with id ${p.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,R+1),this.state.replaceMessage(R,{...b,id:p.messageId,role:(S=b.role)!=null?S:"user",metadata:p.metadata})}else this.state.pushMessage({...b,id:(M=b.id)!=null?M:this.generateId(),role:(A=b.role)!=null?A:"user",metadata:p.metadata});await this.makeRequest({trigger:"submit-message",messageId:p.messageId,...v})},this.regenerate=async({messageId:p,...v}={})=>{const f=p==null?this.state.messages.length-1:this.state.messages.findIndex(S=>S.id===p);if(f===-1)throw new Error(`message ${p} not found`);this.state.messages=this.state.messages.slice(0,this.messages[f].role==="assistant"?f:f+1),await this.makeRequest({trigger:"regenerate-message",messageId:p,...v})},this.resumeStream=async(p={})=>{await this.makeRequest({trigger:"resume-stream",...p})},this.clearError=()=>{this.status==="error"&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolApprovalResponse=async({id:p,approved:v,reason:f,options:S})=>this.jobExecutor.run(async()=>{const M=this.state.messages,A=M[M.length-1],b=R=>je(R)&&R.state==="approval-requested"&&R.approval.id===p?{...R,state:"approval-responded",approval:{id:p,approved:v,reason:f}}:R;this.state.replaceMessage(M.length-1,{...A,parts:A.parts.map(b)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(b)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(R=>{var c;R&&this.makeRequest({trigger:"submit-message",messageId:(c=this.lastMessage)==null?void 0:c.id,...S})})}),this.addToolOutput=async({state:p="output-available",toolCallId:v,output:f,errorText:S,options:M})=>this.jobExecutor.run(async()=>{const A=this.state.messages,b=A[A.length-1],R=c=>je(c)&&c.toolCallId===v?{...c,state:p,output:f,errorText:S}:c;this.state.replaceMessage(A.length-1,{...b,parts:b.parts.map(R)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(R)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(c=>{var N;c&&this.makeRequest({trigger:"submit-message",messageId:(N=this.lastMessage)==null?void 0:N.id,...M})})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var p;this.status!=="streaming"&&this.status!=="submitted"||(p=this.activeResponse)!=null&&p.abortController&&this.activeResponse.abortController.abort()},this.id=t,this.transport=a,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=s,this.state=n,this.onError=i,this.onToolCall=o,this.onFinish=u,this.onData=l,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;const e=this.sendAutomaticallyWhen({messages:this.state.messages});return e&&typeof e=="object"&&"then"in e?await e:e}async makeRequest({trigger:e,metadata:t,headers:a,body:r,messageId:s}){var n,i,o;let u;if(e==="resume-stream")try{const f=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:a,body:r});if(f==null)return;u=f}catch(f){this.onError&&f instanceof Error&&this.onError(f),this.setStatus({status:"error",error:f});return}this.setStatus({status:"submitted",error:void 0});const l=this.lastMessage;let d=!1,p=!1,v=!1;try{const f={state:on({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};f.abortController.signal.addEventListener("abort",()=>{d=!0}),this.activeResponse=f;let S;e==="resume-stream"?S=u:S=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:f.abortController.signal,metadata:t,headers:a,body:r,trigger:e,messageId:s});const M=A=>this.jobExecutor.run(()=>A({state:f.state,write:()=>{var b;this.setStatus({status:"streaming"}),f.state.message.id===((b=this.lastMessage)==null?void 0:b.id)?this.state.replaceMessage(this.state.messages.length-1,f.state.message):this.state.pushMessage(f.state.message)}}));await cn({stream:ln({stream:S,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:M,onError:A=>{throw A}}),onError:A=>{throw A}}),this.setStatus({status:"ready"})}catch(f){if(d||f.name==="AbortError")return d=!0,this.setStatus({status:"ready"}),null;v=!0,f instanceof TypeError&&(f.message.toLowerCase().includes("fetch")||f.message.toLowerCase().includes("network"))&&(p=!0),this.onError&&f instanceof Error&&this.onError(f),this.setStatus({status:"error",error:f})}finally{try{(i=this.onFinish)==null||i.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:d,isDisconnect:p,isError:v,finishReason:(n=this.activeResponse)==null?void 0:n.state.finishReason})}catch(f){console.error(f)}this.activeResponse=void 0}!v&&await this.shouldSendAutomatically()&&await this.makeRequest({trigger:"submit-message",messageId:(o=this.lastMessage)==null?void 0:o.id,metadata:t,headers:a,body:r})}};function mn({messages:e}){const t=e[e.length-1];if(!t||t.role!=="assistant")return!1;const a=t.parts.reduce((s,n,i)=>n.type==="step-start"?i:s,-1),r=t.parts.slice(a+1).filter(je);return r.filter(s=>s.state==="approval-responded").length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error"||s.state==="approval-responded")}function hn({messages:e}){const t=e[e.length-1];if(!t||t.role!=="assistant")return!1;const a=t.parts.reduce((s,n,i)=>n.type==="step-start"?i:s,-1),r=t.parts.slice(a+1).filter(je).filter(s=>!s.providerExecuted);return r.length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error")}var Tt,oa;function gn(){if(oa)return Tt;oa=1;function e(t,a){if(typeof t!="function")throw new TypeError(`Expected the first argument to be a \`function\`, got \`${typeof t}\`.`);let r,s=0;return function(...i){clearTimeout(r);const o=Date.now(),u=o-s,l=a-u;l<=0?(s=o,t.apply(this,i)):r=setTimeout(()=>{s=Date.now(),t.apply(this,i)},l)}}return Tt=e,Tt}var vn=gn();const yn=fr(vn);var Ja=(e,t,a)=>{if(!t.has(e))throw TypeError("Cannot "+a)},j=(e,t,a)=>(Ja(e,t,"read from private field"),a?a.call(e):t.get(e)),re=(e,t,a)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,a)},fe=(e,t,a,r)=>(Ja(e,t,"write to private field"),t.set(e,a),a);function bn(e,t){return t!=null?yn(e,t):e}var Q,ct,ut,ze,We,Ge,Pe,Rt,xt,In=class{constructor(e=[]){re(this,Q,void 0),re(this,ct,"ready"),re(this,ut,void 0),re(this,ze,new Set),re(this,We,new Set),re(this,Ge,new Set),this.pushMessage=t=>{fe(this,Q,j(this,Q).concat(t)),j(this,Pe).call(this)},this.popMessage=()=>{fe(this,Q,j(this,Q).slice(0,-1)),j(this,Pe).call(this)},this.replaceMessage=(t,a)=>{fe(this,Q,[...j(this,Q).slice(0,t),this.snapshot(a),...j(this,Q).slice(t+1)]),j(this,Pe).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,a)=>{const r=a?bn(t,a):t;return j(this,ze).add(r),()=>{j(this,ze).delete(r)}},this["~registerStatusCallback"]=t=>(j(this,We).add(t),()=>{j(this,We).delete(t)}),this["~registerErrorCallback"]=t=>(j(this,Ge).add(t),()=>{j(this,Ge).delete(t)}),re(this,Pe,()=>{j(this,ze).forEach(t=>t())}),re(this,Rt,()=>{j(this,We).forEach(t=>t())}),re(this,xt,()=>{j(this,Ge).forEach(t=>t())}),fe(this,Q,e)}get status(){return j(this,ct)}set status(e){fe(this,ct,e),j(this,Rt).call(this)}get error(){return j(this,ut)}set error(e){fe(this,ut,e),j(this,xt).call(this)}get messages(){return j(this,Q)}set messages(e){fe(this,Q,[...e]),j(this,Pe).call(this)}};Q=new WeakMap;ct=new WeakMap;ut=new WeakMap;ze=new WeakMap;We=new WeakMap;Ge=new WeakMap;Pe=new WeakMap;Rt=new WeakMap;xt=new WeakMap;var Ne,ia=class extends fn{constructor({messages:e,...t}){const a=new In(e);super({...t,state:a}),re(this,Ne,void 0),this["~registerMessagesCallback"]=(r,s)=>j(this,Ne)["~registerMessagesCallback"](r,s),this["~registerStatusCallback"]=r=>j(this,Ne)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>j(this,Ne)["~registerErrorCallback"](r),fe(this,Ne,a)}};Ne=new WeakMap;function En({experimental_throttle:e,resume:t=!1,...a}={}){const r=T.useRef("chat"in a?{}:{onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen});"chat"in a||(r.current={onToolCall:a.onToolCall,onData:a.onData,onFinish:a.onFinish,onError:a.onError,sendAutomaticallyWhen:a.sendAutomaticallyWhen});const s={...a,onToolCall:v=>{var f,S;return(S=(f=r.current).onToolCall)==null?void 0:S.call(f,v)},onData:v=>{var f,S;return(S=(f=r.current).onData)==null?void 0:S.call(f,v)},onFinish:v=>{var f,S;return(S=(f=r.current).onFinish)==null?void 0:S.call(f,v)},onError:v=>{var f,S;return(S=(f=r.current).onError)==null?void 0:S.call(f,v)},sendAutomaticallyWhen:v=>{var f,S,M;return(M=(S=(f=r.current).sendAutomaticallyWhen)==null?void 0:S.call(f,v))!=null?M:!1}},n=T.useRef("chat"in a?a.chat:new ia(s));("chat"in a&&a.chat!==n.current||"id"in a&&n.current.id!==a.id)&&(n.current="chat"in a?a.chat:new ia(s));const o=T.useCallback(v=>n.current["~registerMessagesCallback"](v,e),[e,n.current.id]),u=T.useSyncExternalStore(o,()=>n.current.messages,()=>n.current.messages),l=T.useSyncExternalStore(n.current["~registerStatusCallback"],()=>n.current.status,()=>n.current.status),d=T.useSyncExternalStore(n.current["~registerErrorCallback"],()=>n.current.error,()=>n.current.error),p=T.useCallback(v=>{typeof v=="function"&&(v=v(n.current.messages)),n.current.messages=v},[n]);return T.useEffect(()=>{t&&n.current.resumeStream()},[t,n]),{id:n.current.id,messages:u,setMessages:p,sendMessage:n.current.sendMessage,regenerate:n.current.regenerate,clearError:n.current.clearError,stop:n.current.stop,error:d,resumeStream:n.current.resumeStream,status:l,addToolResult:n.current.addToolOutput,addToolOutput:n.current.addToolOutput,addToolApprovalResponse:n.current.addToolApprovalResponse}}const Sn=1e4,za="true";function gt(e,t){return X.chatAutosend(e,t)}function _n(e){return e==="pending"||e==="sending"}function Tn(e){if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}return!t||typeof t!="object"||typeof t.createdAt!="number"||typeof t.message!="object"||!_n(t.status)?null:t}function Mn(e,t,a,r,s=Date.now()){const n={message:r,createdAt:s,status:"pending"};return e.setItem(gt(t,a),JSON.stringify(n)),n}function wn(e,t,a){const r=gt(t,a),s=Tn(e.getItem(r));return s||(e.removeItem(r),null)}function Cn(e,t,a,r=Date.now()){const s=gt(t,a),n=wn(e,t,a);return!n||n.status!=="pending"?null:r-n.createdAt>=Sn?(e.removeItem(s),null):(e.setItem(s,JSON.stringify({...n,status:"sending"})),{message:n.message,createdAt:n.createdAt})}function An(e,t,a){e.removeItem(gt(t,a))}function Rn(e){const t=et.c(10);let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},t[0]=a):a=t[0];const r=ua(a);let s;if(t[1]!==r?.params.appSlug||t[2]!==r?.params.collectionName||t[3]!==r?.params.itemId||t[4]!==e){s=[],e&&s.push(`### Selected Agent
|
|
17
17
|
- ID: ${e}`);let n;t[6]!==r?.params.appSlug||t[7]!==r?.params.collectionName||t[8]!==r?.params.itemId?(n=[],r?.params.appSlug&&n.push(`- Connection ID: ${r?.params.appSlug}`),r?.params.collectionName&&n.push(`- Collection: ${r?.params.collectionName}`),r?.params.itemId&&n.push(`- Item ID: ${r?.params.itemId}`),t[6]=r?.params.appSlug,t[7]=r?.params.collectionName,t[8]=r?.params.itemId,t[9]=n):n=t[9],n.length>0&&s.push(`### Current Resource
|
|
18
18
|
The user is viewing the following resource:
|
|
19
19
|
${n.join(`
|
|
@@ -21,9 +21,9 @@ ${n.join(`
|
|
|
21
21
|
|
|
22
22
|
Help the user understand and work with this resource.`),t[1]=r?.params.appSlug,t[2]=r?.params.collectionName,t[3]=r?.params.itemId,t[4]=e,t[5]=s}else s=t[5];return s.join(`
|
|
23
23
|
|
|
24
|
-
`)}function xn(){const e=et.c(5),t=mt(),{org:a}=ne();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},e[0]=r):r=e[0];const s=ua(r);let n;return e[1]!==s?.params||e[2]!==a||e[3]!==t?(n=i=>{const u=i.toolCall.toolName.match(/^COLLECTION_([A-Z_]+)_(CREATE|UPDATE|DELETE)$/);if(!u||!u[1])return;const l=u[1],d=s?.params.appSlug;if(!d)return;t.invalidateQueries({queryKey:ve.collection(a.slug,d,l)});const f=l.toLowerCase().replace(/_/g," ");Ie.success(`${f} updated`)},e[1]=s?.params,e[2]=a,e[3]=t,e[4]=n):n=e[4],n}function kn(){const e=et.c(4),{org:t,project:a}=ne(),r=`${t.id}/${a.id}`;let s;e[0]!==r?(s=X.taskLastViewed(r),e[0]=r,e[1]=s):s=e[1];const[,n]=le(s,On);let i;return e[2]!==n?(i={markTaskRead:u=>{n(l=>({...l,[u]:new Date().toISOString()}))}},e[2]=n,e[3]=i):i=e[3],i}function On(e){return e??{}}function it(e){const t=e.capabilities,a=t&&t.length>0?{vision:t.includes("vision")||t.includes("image")||void 0,text:t.includes("text")||void 0,reasoning:t.includes("reasoning")||void 0,file:t.includes("file")||void 0}:void 0;return{id:e.modelId,title:e.title,provider:e.providerId,capabilities:a,limits:e.limits?{contextWindow:e.limits.contextWindow,maxOutputTokens:e.limits.maxOutputTokens??void 0}:void 0}}function Wa(){const e=mr(),{org:t}=ne(),a=da({strict:!1}),r=hr({strict:!1}),s=a.virtualmcpid??Er(t.id).id,n=(u,l)=>{e({to:"/$org/$taskId",params:{org:t.slug,taskId:u},search:d=>{const f={},v=l?.virtualMcpId??d.virtualmcpid;return v&&(f.virtualmcpid=v),d.tasks&&(f.tasks=d.tasks),l?.autosend&&(f.autosend=za),f}})},i=T.useRef(crypto.randomUUID()),o=r.taskId??i.current;return{virtualMcpId:s,taskId:o,navigateToTask:n}}const Pn=3;function Nn(e,t,a){const{locator:r,org:s}=ne(),n=mt(),i=T.useRef(!1),o=T.useRef(0),u=T.useRef(e);u.current!==e&&(u.current=e,o.current=0,i.current=!1);const l=()=>{n.invalidateQueries({queryKey:ve.tasksPrefix(r)})},d=()=>{e&&n.invalidateQueries({predicate:R=>{const c=R.queryKey;return c[3]!=="collection"||c[4]!=="THREAD_MESSAGES"?!1:(typeof c[6]=="string"?c[6]:"").includes(e)}})},f=()=>{e&&n.invalidateQueries({queryKey:ve.threadOutputs(e)})},v=()=>t.status==="submitted"||t.status==="streaming",p=R=>{e&&(i.current||o.current>=Pn||v()||(i.current=!0,console.log(`[chat] resumeStream (${R})`,e),t.resumeStream().then(()=>{i.current=!1,o.current=0}).catch(c=>{console.error("[chat] resumeStream error",c),o.current++,i.current=!1,l(),d()})))},S=T.useRef(p);S.current=p;const M=T.useRef(a);M.current=a;const A=T.useRef(null),b=T.useRef(null);b.current!==e&&(b.current=e,A.current=R=>{const c=M.current;return e&&(c==="in_progress"||c==="expired")&&S.current("auto-mount-or-status"),()=>{}}),T.useSyncExternalStore(A.current,()=>e,()=>e),ha({orgSlug:s.slug,taskId:e,onStep:()=>p("sse-step"),onFinish:()=>{f(),v()||(i.current=!1,o.current=0,l(),setTimeout(d,2e3))},onTaskStatus:()=>{v()||l()}})}const ft={TASK_MESSAGES_PAGE_SIZE:100,TASKS_PAGE_SIZE:50,QUERY_STALE_TIME:3e4};function Je(e,t,a,r){let s=!1;return e.setQueriesData({queryKey:ve.tasksPrefix(t)},n=>{if(!n)return n;const i=n.items.findIndex(d=>d.id===a);if(i===-1)return n;const o=n.items[i];if(!o)return n;const u={...o,title:r.title??o.title,updated_at:r.updated_at??o.updated_at,hidden:r.hidden??o.hidden,status:r.status??o.status,branch:"branch"in r?r.branch:o.branch},l=[...n.items];return l[i]=u,s=!0,{...n,items:l}}),s}function Dn(e,t,a,r,s){if(!t)return;const n=_r(t,"THREAD_MESSAGES",a,{filters:[{column:"thread_id",value:r}],pageSize:ft.TASK_MESSAGES_PAGE_SIZE});n&&e.setQueryData(n,{structuredContent:{items:s},isError:!1})}async function lt(e,t,a){if(!e)throw console.error("[chat] callUpdateTaskTool: MCP client is null",{taskId:t,data:a}),new Error("MCP client is not available");console.log("[chat] callUpdateTaskTool: calling COLLECTION_THREADS_UPDATE",{taskId:t,data:a});const r=await e.callTool({name:"COLLECTION_THREADS_UPDATE",arguments:{id:t,data:a}}),s=r.structuredContent??r;return console.log("[chat] callUpdateTaskTool: result",{taskId:t,hasItem:!!s.item,isError:r.isError}),s.item}function $n(e){const t=et.c(24),{locator:a,org:r}=ne();let s;t[0]!==r.id||t[1]!==r.slug?(s={connectionId:kt,orgId:r.id,orgSlug:r.slug},t[0]=r.id,t[1]=r.slug,t[2]=s):s=t[2];const n=Ot(s);let i;t[3]!==a||t[4]!==e.hasTrigger||t[5]!==e.owner||t[6]!==e.status||t[7]!==e.userId||t[8]!==e.virtualMcpId?(i=ve.tasks(a,{owner:e.owner,status:e.status,virtualMcpId:e.virtualMcpId,userId:e.owner==="me"?e.userId??null:null,hasTrigger:e.hasTrigger??null}),t[3]=a,t[4]=e.hasTrigger,t[5]=e.owner,t[6]=e.status,t[7]=e.userId,t[8]=e.virtualMcpId,t[9]=i):i=t[9];let o;t[10]!==n||t[11]!==e.hasTrigger||t[12]!==e.owner||t[13]!==e.status||t[14]!==e.virtualMcpId?(o=async()=>{if(!n)throw new Error("MCP client is not available");const S={hidden:e.status==="archived"};e.virtualMcpId&&(S.virtual_mcp_id=e.virtualMcpId),e.owner==="me"&&(S.created_by="me"),e.owner==="automation"&&(S.has_trigger=!0),e.hasTrigger!==void 0&&(S.has_trigger=e.hasTrigger);const M={limit:ft.TASKS_PAGE_SIZE,offset:0,orderBy:[{field:["updated_at"],direction:"desc"}],where:S},A=await n.callTool({name:"COLLECTION_THREADS_LIST",arguments:M}),b=A.structuredContent??A;return{items:b.items??[],hasMore:b.hasMore??!1,totalCount:b.totalCount}},t[10]=n,t[11]=e.hasTrigger,t[12]=e.owner,t[13]=e.status,t[14]=e.virtualMcpId,t[15]=o):o=t[15];let u;t[16]!==i||t[17]!==o?(u={queryKey:i,queryFn:o,staleTime:ft.QUERY_STALE_TIME},t[16]=i,t[17]=o,t[18]=u):u=t[18];const{data:l,refetch:d}=gr(u);let f;t[19]!==l?.items?(f=l?.items??[],t[19]=l?.items,t[20]=f):f=t[20];const v=f;let p;return t[21]!==d||t[22]!==v?(p={tasks:v,refetch:d},t[21]=d,t[22]=v,t[23]=p):p=t[23],p}function jn(e){const t=et.c(7),{org:a}=ne();let r;t[0]!==a.id||t[1]!==a.slug?(r={connectionId:kt,orgId:a.id,orgSlug:a.slug},t[0]=a.id,t[1]=a.slug,t[2]=r):r=t[2];const s=Ot(r);let n;t[3]!==e?(n={filters:e?[{column:"thread_id",value:e}]:[],pageSize:ft.TASK_MESSAGES_PAGE_SIZE},t[3]=e,t[4]=n):n=t[4];const i=Tr(a.id,"THREAD_MESSAGES",e?s:null,n);let o;return t[5]!==i?(o=i??[],t[5]=i,t[6]=o):o=t[6],o}function Ln(e){const{locator:t,org:a}=ne(),r=mt(),{data:s}=pa.useSession(),n=s?.user?.id,i=y=>{try{const g=localStorage.getItem(X.chatTaskOwnerFilter(y));if(!g)return"me";const _=JSON.parse(g);return _==="everyone"?"all":_==="me"||_==="automation"||_==="all"?_:"me"}catch{return"me"}},[o,u]=T.useState(()=>i(t)),[l,d]=T.useState(t);l!==t&&(d(t),u(i(t)));const[f,v]=T.useTransition(),p=y=>{v(()=>u(y));try{localStorage.setItem(X.chatTaskOwnerFilter(t),JSON.stringify(y))}catch{}},{tasks:S}=$n({owner:o,status:"open",userId:n,virtualMcpId:e}),M=Ot({connectionId:kt,orgId:a.id,orgSlug:a.slug}),A=(y,g)=>{Je(r,t,y,g)},b=async(y,g)=>{try{const _=await lt(M,y,{status:g}),O={status:_?.status??g,updated_at:_?.updated_at??new Date().toISOString()};Je(r,t,y,O)}catch(_){const O=_;Ie.error(`Failed to update task status: ${O.message}`),console.error("[chat] Failed to set task status:",_)}},R=async(y,g)=>{try{await lt(M,y,{branch:g}),Je(r,t,y,{branch:g})}catch(_){const O=_;Ie.error(`Failed to update branch: ${O.message}`),console.error("[chat] setTaskBranch:",_)}},c=async(y,g)=>{try{const _=await lt(M,y,{title:g});_&&Je(r,t,y,{title:g,updated_at:_.updated_at??new Date().toISOString()})}catch(_){const O=_;Ie.error(`Failed to rename task: ${O.message}`),console.error("[chat] Failed to rename task:",_)}},N=async y=>{try{await lt(M,y,{hidden:!0})}catch(g){const _=g;Ie.error(`Failed to update task: ${_.message}`),console.error("[chat] Failed to hide task:",g);return}r.invalidateQueries({queryKey:ve.tasksPrefix(t)})},x=(y,g)=>{Dn(r,M,a.id,y,g)};return ha({orgSlug:a.slug,enabled:!0,onTaskStatus:y=>{const g=y.subject,_=y.data.status,O=y.time;Je(r,t,g,{status:_,updated_at:O})||r.invalidateQueries({queryKey:ve.tasksPrefix(t)})}}),{tasks:S,ownerFilter:o,setOwnerFilter:p,isFilterChangePending:f,updateTask:A,renameTask:c,hideTask:N,setTaskStatus:b,setTaskBranch:R,updateMessagesCache:x}}const la=new Set;function K(e,t,a,r){if(!e)return null;const s=t.find(i=>i.id===e.keyId);if(!s)return null;const n=a.find(i=>i.modelId===e.modelId);return n?{...n,keyId:e.keyId}:{modelId:e.modelId,title:r??e.modelId,keyId:e.keyId,providerId:s.providerId,description:null,logo:null,capabilities:[],limits:null,costs:null}}function Ga(e,t){const a=["fast","smart","thinking"].filter(r=>t.chat[r]!=null);return e&&a.includes(e)?e:a.includes("smart")?"smart":a[0]??"smart"}const Ya=1e4,Ha=10,Qa={sendMessage:async()=>{console.warn("[ChatBridge] sendMessage called but ActiveTaskProvider not mounted")},isStreaming:!1},Dt=T.createContext(null),$t=T.createContext(null),vt=T.createContext(null),Ka=T.createContext({current:Qa}),Xa=T.createContext(null);function Xn({children:e}){const{locator:t}=ne(),{virtualMcpId:a}=Wa(),[r,s]=le(X.chatSelectedModel(t),null),[n,i]=le(X.chatSelectedImageModel(t),null),[o,u]=le(X.chatSelectedDeepResearchModel(t),null),[l,d]=T.useState(null),[f,v]=T.useState("default"),p=ga(),[S,M]=le(X.chatSimpleModeTier(t),null),A=Ga(S,p),b=ma(),R=l&&b.some(C=>C.id===l)?l:r&&b.some(C=>C.id===r.keyId)?r.keyId:b[0]?.id??null,{models:c,isLoading:N}=he(R??void 0),x=b.find(C=>C.id===R)?.providerId??"anthropic",y=va(c,x,R??void 0),g=p.chat[A],{models:_}=he(g?.keyId),{models:O}=he(p.image?.keyId),{models:B}=he(p.webResearch?.keyId),ce=K(r,b,c),Se=p.enabled?K(g,b,_,g?.title):ce??y,Le=!r&&N,_e=c.filter(C=>C.capabilities?.includes("image")),Z=K(n,b,_e),Te=p.enabled?K(p.image,b,O,p.image?.title):Z??_e[0]??null,Y=c.filter(C=>{const J=C.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return J.includes("sonar")||J.includes("deepresearch")}),Ze=K(o,b,Y),Me=Y.find(C=>C.modelId==="perplexity/sonar")??Y[0]??null,Fe=p.enabled?K(p.webResearch,b,B,p.webResearch?.title):Ze??Me,Ce=fa(a)??{id:a,title:"",description:null,icon:null},[oe,Ae]=T.useState({}),ye=(C,J)=>{const Re=[];for(const z of J.content??[])z.type==="text"&&z.text?.trim()&&Re.push(z.text.trim());const ae=Re.join(`
|
|
25
|
-
`);if(!ae){Ue(C);return}new TextEncoder().encode(ae).length>Ya||Ae(z=>Object.keys(z).length>=Ha&&!(C in z)?z:{...z,[C]:ae})},Ue=C=>{Ae(J=>{const{[C]:Re,...ae}=J;return ae})},[ue,Ve]=T.useState(void 0),h=T.useRef(ue);h.current=ue;const L={selectedModel:Se,setModel:C=>{C.keyId&&(s({keyId:C.keyId,modelId:C.modelId}),d(null))},credentialId:R,setCredentialId:d,allModelsConnections:b,isModelsLoading:Le,selectedVirtualMcp:Ce,imageModel:Te,setImageModel:C=>{i(C?.keyId?{keyId:C.keyId,modelId:C.modelId}:null)},deepResearchModel:Fe,setDeepResearchModel:C=>{u(C?.keyId?{keyId:C.keyId,modelId:C.modelId}:null)},chatMode:
|
|
26
|
-
`);if(!ie){st(I);return}new TextEncoder().encode(ie).length>Ya||rt(W=>Object.keys(W).length>=Ha&&!(I in W)?W:{...W,[I]:ie})},st=I=>{rt(F=>{const{[I]:H,...ie}=F;return ie})},[Be,bt]=T.useState(void 0),nt=T.useRef(Be);nt.current=Be;const It=T.useRef(null);It.current||(It.current=new qa({api:`/api/${a.slug}/decopilot/stream`,credentials:"include",prepareReconnectToStreamRequest:({id:I})=>({api:`/api/${a.slug}/decopilot/attach/${I}`}),prepareSendMessagesRequest:({messages:I,requestMetadata:F={}})=>{const{system:H,tiptapDoc:ie,...W}=F,Ut=H?{id:crypto.randomUUID(),role:"system",parts:[{type:"text",text:H}]}:null,Vt=I.slice(-1).filter(Boolean),sr=Ut?[Ut,...Vt]:Vt,Et=I.at(-1)?.metadata??{},nr={...W,agent:W.agent??Et.agent,models:W.models??Et.models,thread_id:W.thread_id??Et.thread_id};return{api:`/api/${a.slug}/decopilot/stream`,body:{messages:sr,...nr,toolApprovalLevel:br()}}}}));const jt=T.useRef(Qa),xe=(I,F)=>{d(I),u(I,{virtualMcpId:F?.virtualMcpId,autosend:F?.autosend})},Lt=L.find(I=>I.id===C),ot=Lt?.branch??null,er=!!Lt?.branch,Zt=Sr(),Ft=()=>{const I=crypto.randomUUID();return Zt.create.mutateAsync({id:I,virtual_mcp_id:e,...ot?{branch:ot}:{}}).then(()=>xe(I)).catch(()=>{xe(I)}),I},tr={virtualMcpId:J,taskId:C,openTask:xe,createTask:Ft,createTaskWithMessage:I=>{const F=crypto.randomUUID(),H=I.virtualMcpId??e,ie=H===e?ot:null;Mn(sessionStorage,r,F,I.message),Zt.create.mutateAsync({id:F,virtual_mcp_id:H,...ie?{branch:ie}:{}}).then(()=>xe(F,{virtualMcpId:I.virtualMcpId,autosend:!0})).catch(()=>{xe(F,{virtualMcpId:I.virtualMcpId,autosend:!0})})},tasks:L,hideTask:async I=>{if(await h.hideTask(I),I===C){const F=L.find(H=>H.id!==I&&!H.hidden);F?xe(F.id):Ft()}},renameTask:h.renameTask,setTaskStatus:h.setTaskStatus,currentBranch:ot,isBranchLocked:er,setCurrentTaskBranch:I=>{C&&h.setTaskBranch(C,I)},ownerFilter:h.ownerFilter,setOwnerFilter:h.setOwnerFilter,isFilterChangePending:h.isFilterChangePending??!1},ar={selectedModel:Fe,setModel:I=>{I.keyId&&(v({keyId:I.keyId,modelId:I.modelId}),R(null))},credentialId:B,setCredentialId:R,allModelsConnections:O,isModelsLoading:we,selectedVirtualMcp:ae,imageModel:Ae,setImageModel:I=>{S(I?.keyId?{keyId:I.keyId,modelId:I.modelId}:null)},deepResearchModel:Ve,setDeepResearchModel:I=>{A(I?.keyId?{keyId:I.keyId,modelId:I.modelId}:null)},chatMode:c,setChatMode:N,appContexts:yt,setAppContext:de,clearAppContext:st,tiptapDoc:Be,setTiptapDoc:bt,tiptapDocRef:nt,resetInteraction:()=>{},simpleModeEnabled:x.enabled,simpleModeTier:_,setSimpleModeTier:g},rr={transport:It.current,effectiveKeyId:B,user:n,contextPrompt:z,preferences:l,taskManager:{updateMessagesCache:h.updateMessagesCache,updateTask:h.updateTask},rawNavigateToTask:u,bridgeRef:jt};return De.jsx($t.Provider,{value:tr,children:De.jsx(vt.Provider,{value:ar,children:De.jsx(Ka.Provider,{value:jt,children:De.jsx(Xa.Provider,{value:rr,children:t})})})})}function to({taskId:e,children:t}){const{virtualMcpId:a,tasks:r,currentBranch:s}=Zn();e&&!la.has(e)&&(la.add(e),vr("chat_opened",{thread_id:e}));const{selectedModel:n,imageModel:i,deepResearchModel:o,chatMode:u,setChatMode:l,appContexts:d,setTiptapDoc:
|
|
24
|
+
`)}function xn(){const e=et.c(5),t=mt(),{org:a}=ne();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},e[0]=r):r=e[0];const s=ua(r);let n;return e[1]!==s?.params||e[2]!==a||e[3]!==t?(n=i=>{const u=i.toolCall.toolName.match(/^COLLECTION_([A-Z_]+)_(CREATE|UPDATE|DELETE)$/);if(!u||!u[1])return;const l=u[1],d=s?.params.appSlug;if(!d)return;t.invalidateQueries({queryKey:ve.collection(a.slug,d,l)});const p=l.toLowerCase().replace(/_/g," ");Ie.success(`${p} updated`)},e[1]=s?.params,e[2]=a,e[3]=t,e[4]=n):n=e[4],n}function kn(){const e=et.c(4),{org:t,project:a}=ne(),r=`${t.id}/${a.id}`;let s;e[0]!==r?(s=X.taskLastViewed(r),e[0]=r,e[1]=s):s=e[1];const[,n]=le(s,On);let i;return e[2]!==n?(i={markTaskRead:u=>{n(l=>({...l,[u]:new Date().toISOString()}))}},e[2]=n,e[3]=i):i=e[3],i}function On(e){return e??{}}function it(e){const t=e.capabilities,a=t&&t.length>0?{vision:t.includes("vision")||t.includes("image")||void 0,text:t.includes("text")||void 0,reasoning:t.includes("reasoning")||void 0,file:t.includes("file")||void 0}:void 0;return{id:e.modelId,title:e.title,provider:e.providerId,capabilities:a,limits:e.limits?{contextWindow:e.limits.contextWindow,maxOutputTokens:e.limits.maxOutputTokens??void 0}:void 0}}function Wa(){const e=mr(),{org:t}=ne(),a=da({strict:!1}),r=hr({strict:!1}),s=a.virtualmcpid??Er(t.id).id,n=(u,l)=>{e({to:"/$org/$taskId",params:{org:t.slug,taskId:u},search:d=>{const p={},v=l?.virtualMcpId??d.virtualmcpid;return v&&(p.virtualmcpid=v),d.tasks&&(p.tasks=d.tasks),d.main&&(p.main=d.main),d.chat&&(p.chat=d.chat),l?.autosend&&(p.autosend=za),p}})},i=T.useRef(crypto.randomUUID()),o=r.taskId??i.current;return{virtualMcpId:s,taskId:o,navigateToTask:n}}const Pn=3;function Nn(e,t,a){const{locator:r,org:s}=ne(),n=mt(),i=T.useRef(!1),o=T.useRef(0),u=T.useRef(e);u.current!==e&&(u.current=e,o.current=0,i.current=!1);const l=()=>{n.invalidateQueries({queryKey:ve.tasksPrefix(r)})},d=()=>{e&&n.invalidateQueries({predicate:R=>{const c=R.queryKey;return c[3]!=="collection"||c[4]!=="THREAD_MESSAGES"?!1:(typeof c[6]=="string"?c[6]:"").includes(e)}})},p=()=>{e&&n.invalidateQueries({queryKey:ve.threadOutputs(e)})},v=()=>t.status==="submitted"||t.status==="streaming",f=R=>{e&&(i.current||o.current>=Pn||v()||(i.current=!0,console.log(`[chat] resumeStream (${R})`,e),t.resumeStream().then(()=>{i.current=!1,o.current=0}).catch(c=>{console.error("[chat] resumeStream error",c),o.current++,i.current=!1,l(),d()})))},S=T.useRef(f);S.current=f;const M=T.useRef(a);M.current=a;const A=T.useRef(null),b=T.useRef(null);b.current!==e&&(b.current=e,A.current=R=>{const c=M.current;return e&&(c==="in_progress"||c==="expired")&&S.current("auto-mount-or-status"),()=>{}}),T.useSyncExternalStore(A.current,()=>e,()=>e),ha({orgSlug:s.slug,taskId:e,onStep:()=>f("sse-step"),onFinish:()=>{p(),v()||(i.current=!1,o.current=0,l(),setTimeout(d,2e3))},onTaskStatus:()=>{v()||l()}})}const ft={TASK_MESSAGES_PAGE_SIZE:100,TASKS_PAGE_SIZE:50,QUERY_STALE_TIME:3e4};function Je(e,t,a,r){let s=!1;return e.setQueriesData({queryKey:ve.tasksPrefix(t)},n=>{if(!n)return n;const i=n.items.findIndex(d=>d.id===a);if(i===-1)return n;const o=n.items[i];if(!o)return n;const u={...o,title:r.title??o.title,updated_at:r.updated_at??o.updated_at,hidden:r.hidden??o.hidden,status:r.status??o.status,branch:"branch"in r?r.branch:o.branch},l=[...n.items];return l[i]=u,s=!0,{...n,items:l}}),s}function Dn(e,t,a,r,s){if(!t)return;const n=_r(t,"THREAD_MESSAGES",a,{filters:[{column:"thread_id",value:r}],pageSize:ft.TASK_MESSAGES_PAGE_SIZE});n&&e.setQueryData(n,{structuredContent:{items:s},isError:!1})}async function lt(e,t,a){if(!e)throw console.error("[chat] callUpdateTaskTool: MCP client is null",{taskId:t,data:a}),new Error("MCP client is not available");console.log("[chat] callUpdateTaskTool: calling COLLECTION_THREADS_UPDATE",{taskId:t,data:a});const r=await e.callTool({name:"COLLECTION_THREADS_UPDATE",arguments:{id:t,data:a}}),s=r.structuredContent??r;return console.log("[chat] callUpdateTaskTool: result",{taskId:t,hasItem:!!s.item,isError:r.isError}),s.item}function $n(e){const t=et.c(24),{locator:a,org:r}=ne();let s;t[0]!==r.id||t[1]!==r.slug?(s={connectionId:kt,orgId:r.id,orgSlug:r.slug},t[0]=r.id,t[1]=r.slug,t[2]=s):s=t[2];const n=Ot(s);let i;t[3]!==a||t[4]!==e.hasTrigger||t[5]!==e.owner||t[6]!==e.status||t[7]!==e.userId||t[8]!==e.virtualMcpId?(i=ve.tasks(a,{owner:e.owner,status:e.status,virtualMcpId:e.virtualMcpId,userId:e.owner==="me"?e.userId??null:null,hasTrigger:e.hasTrigger??null}),t[3]=a,t[4]=e.hasTrigger,t[5]=e.owner,t[6]=e.status,t[7]=e.userId,t[8]=e.virtualMcpId,t[9]=i):i=t[9];let o;t[10]!==n||t[11]!==e.hasTrigger||t[12]!==e.owner||t[13]!==e.status||t[14]!==e.virtualMcpId?(o=async()=>{if(!n)throw new Error("MCP client is not available");const S={hidden:e.status==="archived"};e.virtualMcpId&&(S.virtual_mcp_id=e.virtualMcpId),e.owner==="me"&&(S.created_by="me"),e.owner==="automation"&&(S.has_trigger=!0),e.hasTrigger!==void 0&&(S.has_trigger=e.hasTrigger);const M={limit:ft.TASKS_PAGE_SIZE,offset:0,orderBy:[{field:["updated_at"],direction:"desc"}],where:S},A=await n.callTool({name:"COLLECTION_THREADS_LIST",arguments:M}),b=A.structuredContent??A;return{items:b.items??[],hasMore:b.hasMore??!1,totalCount:b.totalCount}},t[10]=n,t[11]=e.hasTrigger,t[12]=e.owner,t[13]=e.status,t[14]=e.virtualMcpId,t[15]=o):o=t[15];let u;t[16]!==i||t[17]!==o?(u={queryKey:i,queryFn:o,staleTime:ft.QUERY_STALE_TIME},t[16]=i,t[17]=o,t[18]=u):u=t[18];const{data:l,refetch:d}=gr(u);let p;t[19]!==l?.items?(p=l?.items??[],t[19]=l?.items,t[20]=p):p=t[20];const v=p;let f;return t[21]!==d||t[22]!==v?(f={tasks:v,refetch:d},t[21]=d,t[22]=v,t[23]=f):f=t[23],f}function jn(e){const t=et.c(7),{org:a}=ne();let r;t[0]!==a.id||t[1]!==a.slug?(r={connectionId:kt,orgId:a.id,orgSlug:a.slug},t[0]=a.id,t[1]=a.slug,t[2]=r):r=t[2];const s=Ot(r);let n;t[3]!==e?(n={filters:e?[{column:"thread_id",value:e}]:[],pageSize:ft.TASK_MESSAGES_PAGE_SIZE},t[3]=e,t[4]=n):n=t[4];const i=Tr(a.id,"THREAD_MESSAGES",e?s:null,n);let o;return t[5]!==i?(o=i??[],t[5]=i,t[6]=o):o=t[6],o}function Ln(e){const{locator:t,org:a}=ne(),r=mt(),{data:s}=pa.useSession(),n=s?.user?.id,i=y=>{try{const g=localStorage.getItem(X.chatTaskOwnerFilter(y));if(!g)return"me";const _=JSON.parse(g);return _==="everyone"?"all":_==="me"||_==="automation"||_==="all"?_:"me"}catch{return"me"}},[o,u]=T.useState(()=>i(t)),[l,d]=T.useState(t);l!==t&&(d(t),u(i(t)));const[p,v]=T.useTransition(),f=y=>{v(()=>u(y));try{localStorage.setItem(X.chatTaskOwnerFilter(t),JSON.stringify(y))}catch{}},{tasks:S}=$n({owner:o,status:"open",userId:n,virtualMcpId:e}),M=Ot({connectionId:kt,orgId:a.id,orgSlug:a.slug}),A=(y,g)=>{Je(r,t,y,g)},b=async(y,g)=>{try{const _=await lt(M,y,{status:g}),O={status:_?.status??g,updated_at:_?.updated_at??new Date().toISOString()};Je(r,t,y,O)}catch(_){const O=_;Ie.error(`Failed to update task status: ${O.message}`),console.error("[chat] Failed to set task status:",_)}},R=async(y,g)=>{try{await lt(M,y,{branch:g}),Je(r,t,y,{branch:g})}catch(_){const O=_;Ie.error(`Failed to update branch: ${O.message}`),console.error("[chat] setTaskBranch:",_)}},c=async(y,g)=>{try{const _=await lt(M,y,{title:g});_&&Je(r,t,y,{title:g,updated_at:_.updated_at??new Date().toISOString()})}catch(_){const O=_;Ie.error(`Failed to rename task: ${O.message}`),console.error("[chat] Failed to rename task:",_)}},N=async y=>{try{await lt(M,y,{hidden:!0})}catch(g){const _=g;Ie.error(`Failed to update task: ${_.message}`),console.error("[chat] Failed to hide task:",g);return}r.invalidateQueries({queryKey:ve.tasksPrefix(t)})},x=(y,g)=>{Dn(r,M,a.id,y,g)};return ha({orgSlug:a.slug,enabled:!0,onTaskStatus:y=>{const g=y.subject,_=y.data.status,O=y.time;Je(r,t,g,{status:_,updated_at:O})||r.invalidateQueries({queryKey:ve.tasksPrefix(t)})}}),{tasks:S,ownerFilter:o,setOwnerFilter:f,isFilterChangePending:p,updateTask:A,renameTask:c,hideTask:N,setTaskStatus:b,setTaskBranch:R,updateMessagesCache:x}}const la=new Set;function K(e,t,a,r){if(!e)return null;const s=t.find(i=>i.id===e.keyId);if(!s)return null;const n=a.find(i=>i.modelId===e.modelId);return n?{...n,keyId:e.keyId}:{modelId:e.modelId,title:r??e.modelId,keyId:e.keyId,providerId:s.providerId,description:null,logo:null,capabilities:[],limits:null,costs:null}}function Ga(e,t){const a=["fast","smart","thinking"].filter(r=>t.chat[r]!=null);return e&&a.includes(e)?e:a.includes("smart")?"smart":a[0]??"smart"}const Ya=1e4,Ha=10,Qa={sendMessage:async()=>{console.warn("[ChatBridge] sendMessage called but ActiveTaskProvider not mounted")},isStreaming:!1},Dt=T.createContext(null),$t=T.createContext(null),vt=T.createContext(null),Ka=T.createContext({current:Qa}),Xa=T.createContext(null);function Xn({children:e}){const{locator:t}=ne(),{virtualMcpId:a}=Wa(),[r,s]=le(X.chatSelectedModel(t),null),[n,i]=le(X.chatSelectedImageModel(t),null),[o,u]=le(X.chatSelectedDeepResearchModel(t),null),[l,d]=T.useState(null),[p,v]=T.useState("default"),f=ga(),[S,M]=le(X.chatSimpleModeTier(t),null),A=Ga(S,f),b=ma(),R=l&&b.some(C=>C.id===l)?l:r&&b.some(C=>C.id===r.keyId)?r.keyId:b[0]?.id??null,{models:c,isLoading:N}=he(R??void 0),x=b.find(C=>C.id===R)?.providerId??"anthropic",y=va(c,x,R??void 0),g=f.chat[A],{models:_}=he(g?.keyId),{models:O}=he(f.image?.keyId),{models:B}=he(f.webResearch?.keyId),ce=K(r,b,c),Se=f.enabled?K(g,b,_,g?.title):ce??y,Le=!r&&N,_e=c.filter(C=>C.capabilities?.includes("image")),Z=K(n,b,_e),Te=f.enabled?K(f.image,b,O,f.image?.title):Z??_e[0]??null,Y=c.filter(C=>{const J=C.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return J.includes("sonar")||J.includes("deepresearch")}),Ze=K(o,b,Y),Me=Y.find(C=>C.modelId==="perplexity/sonar")??Y[0]??null,Fe=f.enabled?K(f.webResearch,b,B,f.webResearch?.title):Ze??Me,Ce=fa(a)??{id:a,title:"",description:null,icon:null},[oe,Ae]=T.useState({}),ye=(C,J)=>{const Re=[];for(const z of J.content??[])z.type==="text"&&z.text?.trim()&&Re.push(z.text.trim());const ae=Re.join(`
|
|
25
|
+
`);if(!ae){Ue(C);return}new TextEncoder().encode(ae).length>Ya||Ae(z=>Object.keys(z).length>=Ha&&!(C in z)?z:{...z,[C]:ae})},Ue=C=>{Ae(J=>{const{[C]:Re,...ae}=J;return ae})},[ue,Ve]=T.useState(void 0),h=T.useRef(ue);h.current=ue;const L={selectedModel:Se,setModel:C=>{C.keyId&&(s({keyId:C.keyId,modelId:C.modelId}),d(null))},credentialId:R,setCredentialId:d,allModelsConnections:b,isModelsLoading:Le,selectedVirtualMcp:Ce,imageModel:Te,setImageModel:C=>{i(C?.keyId?{keyId:C.keyId,modelId:C.modelId}:null)},deepResearchModel:Fe,setDeepResearchModel:C=>{u(C?.keyId?{keyId:C.keyId,modelId:C.modelId}:null)},chatMode:p,setChatMode:v,appContexts:oe,setAppContext:ye,clearAppContext:Ue,tiptapDoc:ue,setTiptapDoc:Ve,tiptapDocRef:h,resetInteraction:()=>{},simpleModeEnabled:f.enabled,simpleModeTier:A,setSimpleModeTier:M};return De.jsx(vt.Provider,{value:L,children:e})}function eo({virtualMcpId:e,children:t}){const{org:a,locator:r}=ne(),{data:s}=pa.useSession(),n=s?.user??null,{taskId:i,virtualMcpId:o,navigateToTask:u}=Wa(),[l]=yr(),{markTaskRead:d}=kn(),[p,v]=le(X.chatSelectedModel(r),null),[f,S]=le(X.chatSelectedImageModel(r),null),[M,A]=le(X.chatSelectedDeepResearchModel(r),null),[b,R]=T.useState(null),[c,N]=T.useState("default"),x=ga(),[y,g]=le(X.chatSimpleModeTier(r),null),_=Ga(y,x),O=ma(),B=b&&O.some(I=>I.id===b)?b:p&&O.some(I=>I.id===p.keyId)?p.keyId:O[0]?.id??null,{models:ce,isLoading:Se}=he(B??void 0),Le=O.find(I=>I.id===B)?.providerId??"anthropic",_e=va(ce,Le,B??void 0),Z=x.chat[_],{models:Te}=he(Z?.keyId),{models:Y}=he(x.image?.keyId),{models:Ze}=he(x.webResearch?.keyId),Me=K(p,O,ce),Fe=x.enabled?K(Z,O,Te,Z?.title):Me??_e,we=!p&&Se,Ce=ce.filter(I=>I.capabilities?.includes("image")),oe=K(f,O,Ce),Ae=x.enabled?K(x.image,O,Y,x.image?.title):oe??Ce[0]??null,ye=ce.filter(I=>{const F=I.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return F.includes("sonar")||F.includes("deepresearch")}),Ue=K(M,O,ye),ue=ye.find(I=>I.modelId==="perplexity/sonar")??ye[0]??null,Ve=x.enabled?K(x.webResearch,O,Ze,x.webResearch?.title):Ue??ue,h=Ln(e),{tasks:L}=h,C=i,J=o,ae=fa(J)??{id:J,title:"",description:null,icon:null},z=Rn(J),[yt,rt]=T.useState({}),de=(I,F)=>{const H=[];for(const W of F.content??[])W.type==="text"&&W.text?.trim()&&H.push(W.text.trim());const ie=H.join(`
|
|
26
|
+
`);if(!ie){st(I);return}new TextEncoder().encode(ie).length>Ya||rt(W=>Object.keys(W).length>=Ha&&!(I in W)?W:{...W,[I]:ie})},st=I=>{rt(F=>{const{[I]:H,...ie}=F;return ie})},[Be,bt]=T.useState(void 0),nt=T.useRef(Be);nt.current=Be;const It=T.useRef(null);It.current||(It.current=new qa({api:`/api/${a.slug}/decopilot/stream`,credentials:"include",prepareReconnectToStreamRequest:({id:I})=>({api:`/api/${a.slug}/decopilot/attach/${I}`}),prepareSendMessagesRequest:({messages:I,requestMetadata:F={}})=>{const{system:H,tiptapDoc:ie,...W}=F,Ut=H?{id:crypto.randomUUID(),role:"system",parts:[{type:"text",text:H}]}:null,Vt=I.slice(-1).filter(Boolean),sr=Ut?[Ut,...Vt]:Vt,Et=I.at(-1)?.metadata??{},nr={...W,agent:W.agent??Et.agent,models:W.models??Et.models,thread_id:W.thread_id??Et.thread_id};return{api:`/api/${a.slug}/decopilot/stream`,body:{messages:sr,...nr,toolApprovalLevel:br()}}}}));const jt=T.useRef(Qa),xe=(I,F)=>{d(I),u(I,{virtualMcpId:F?.virtualMcpId,autosend:F?.autosend})},Lt=L.find(I=>I.id===C),ot=Lt?.branch??null,er=!!Lt?.branch,Zt=Sr(),Ft=()=>{const I=crypto.randomUUID();return Zt.create.mutateAsync({id:I,virtual_mcp_id:e,...ot?{branch:ot}:{}}).then(()=>xe(I)).catch(()=>{xe(I)}),I},tr={virtualMcpId:J,taskId:C,openTask:xe,createTask:Ft,createTaskWithMessage:I=>{const F=crypto.randomUUID(),H=I.virtualMcpId??e,ie=H===e?ot:null;Mn(sessionStorage,r,F,I.message),Zt.create.mutateAsync({id:F,virtual_mcp_id:H,...ie?{branch:ie}:{}}).then(()=>xe(F,{virtualMcpId:I.virtualMcpId,autosend:!0})).catch(()=>{xe(F,{virtualMcpId:I.virtualMcpId,autosend:!0})})},tasks:L,hideTask:async I=>{if(await h.hideTask(I),I===C){const F=L.find(H=>H.id!==I&&!H.hidden);F?xe(F.id):Ft()}},renameTask:h.renameTask,setTaskStatus:h.setTaskStatus,currentBranch:ot,isBranchLocked:er,setCurrentTaskBranch:I=>{C&&h.setTaskBranch(C,I)},ownerFilter:h.ownerFilter,setOwnerFilter:h.setOwnerFilter,isFilterChangePending:h.isFilterChangePending??!1},ar={selectedModel:Fe,setModel:I=>{I.keyId&&(v({keyId:I.keyId,modelId:I.modelId}),R(null))},credentialId:B,setCredentialId:R,allModelsConnections:O,isModelsLoading:we,selectedVirtualMcp:ae,imageModel:Ae,setImageModel:I=>{S(I?.keyId?{keyId:I.keyId,modelId:I.modelId}:null)},deepResearchModel:Ve,setDeepResearchModel:I=>{A(I?.keyId?{keyId:I.keyId,modelId:I.modelId}:null)},chatMode:c,setChatMode:N,appContexts:yt,setAppContext:de,clearAppContext:st,tiptapDoc:Be,setTiptapDoc:bt,tiptapDocRef:nt,resetInteraction:()=>{},simpleModeEnabled:x.enabled,simpleModeTier:_,setSimpleModeTier:g},rr={transport:It.current,effectiveKeyId:B,user:n,contextPrompt:z,preferences:l,taskManager:{updateMessagesCache:h.updateMessagesCache,updateTask:h.updateTask},rawNavigateToTask:u,bridgeRef:jt};return De.jsx($t.Provider,{value:tr,children:De.jsx(vt.Provider,{value:ar,children:De.jsx(Ka.Provider,{value:jt,children:De.jsx(Xa.Provider,{value:rr,children:t})})})})}function to({taskId:e,children:t}){const{virtualMcpId:a,tasks:r,currentBranch:s}=Zn();e&&!la.has(e)&&(la.add(e),vr("chat_opened",{thread_id:e}));const{selectedModel:n,imageModel:i,deepResearchModel:o,chatMode:u,setChatMode:l,appContexts:d,setTiptapDoc:p,setModel:v}=Fn(),f=T.useContext(Xa);if(!f)throw new Error("ActiveTaskProvider must be used within ChatContextProvider");const{transport:S,effectiveKeyId:M,user:A,contextPrompt:b,preferences:R,taskManager:c,rawNavigateToTask:N,bridgeRef:x}=f,{org:y,locator:g}=ne(),_=jn(e||null),[O,B]=T.useState(null),[ce,Se]=T.useState(null),Le=xn(),_e=mt(),Z=En({id:e,messages:_,transport:S,sendAutomaticallyWhen:({messages:h})=>hn({messages:h})||mn({messages:h}),onFinish:h=>{B(h.finishReason??null),e&&_e.invalidateQueries({queryKey:ve.threadOutputs(e)});const L=h.message.metadata?.thread_id;if(L&&L!==e&&N(L),h.isAbort||h.isDisconnect||h.isError){L&&h.messages.length>0&&c.updateMessagesCache(L,h.messages);return}L&&h.messages.length>0?c.updateMessagesCache(L,h.messages):console.warn("[chat] onFinish: no thread_id in server metadata, messages not persisted")},onToolCall:Le,onError:h=>{Se(h),console.error("[chat] Error",h)},onData:({data:h,type:L})=>{if(L==="data-thread-title"){const{title:C}=h;if(!C)return;c.updateTask(e,{title:C,updated_at:new Date().toISOString()})}}}),Te=Z.status==="submitted"||Z.status==="streaming",Y=Z.status!=="ready"?Z.messages:_,Ze=Y.length===0,Me=Y.at(-1),Fe=!Te&&Me?.role==="assistant"&&Me.parts.some(h=>"state"in h&&h.state==="approval-requested"),we=r.find(h=>h.id===e),Ce=(we?.status==="in_progress"||we?.status==="expired")&&Z.status==="ready"&&Y.length>0;Nn(e,Z,we?.status);async function oe(h){const L=h.model??n;if(!L){Ie.error("No model configured");return}const C=h.parts??ya(h.tiptapDoc);if(C.length===0)return;const J=e,Re=a;h.model&&v(h.model),B(null),p(void 0);const ae={tiptapDoc:h.tiptapDoc,created_at:new Date().toISOString(),thread_id:J,agent:{id:Re},...s?{branch:s}:{},user:{avatar:A?.image??void 0,name:A?.name??"you"},...R.toolApprovalLevel&&{toolApprovalLevel:R.toolApprovalLevel}},z=Object.entries(d),yt=z.length>0?z.map(([bt,nt])=>`### App Context: ${bt}
|
|
27
27
|
${nt}`).join(`
|
|
28
28
|
|
|
29
29
|
`):"",rt=[b,yt].filter(Boolean).join(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as n,c as d,j as c,b3 as l,b4 as b}from"./index-
|
|
1
|
+
import{e as n,c as d,j as c,b3 as l,b4 as b}from"./index-Y1iFZZnQ.js";import{i as m}from"./Check-C6MdiGep.js";function u(o){const e=n.c(9);let r,i;e[0]!==o?({className:r,...i}=o,e[0]=o,e[1]=r,e[2]=i):(r=e[1],i=e[2]);let a;e[3]!==r?(a=d("peer border-foreground dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/20 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[2px] disabled:opacity-50",r),e[3]=r,e[4]=a):a=e[4];let t;e[5]===Symbol.for("react.memo_cache_sentinel")?(t=c.jsx(b,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-primary-foreground transition-none",children:c.jsx(m,{className:"size-3.5"})}),e[5]=t):t=e[5];let s;return e[6]!==i||e[7]!==a?(s=c.jsx(l,{"data-slot":"checkbox",className:a,...i,children:t}),e[6]=i,e[7]=a,e[8]=s):s=e[8],s}export{u as C};
|