decocms 2.312.4 → 2.312.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/client/assets/{AlertCircle-C7eh3Re9.js → AlertCircle-8gO1aXOV.js} +1 -1
  2. package/dist/client/assets/{Archive-DzoQR2gK.js → Archive-CpwaQ9i2.js} +1 -1
  3. package/dist/client/assets/{ArrowNarrowLeft-CpwQCcjp.js → ArrowNarrowLeft-Bj9BOs-z.js} +1 -1
  4. package/dist/client/assets/{ArrowUpRight-DCiprqZS.js → ArrowUpRight-CGIcPNOI.js} +1 -1
  5. package/dist/client/assets/{Check-B-fE3mUv.js → Check-iLkh97pT.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-BxBgE7Bb.js → CheckCircle-BqxncqLD.js} +1 -1
  7. package/dist/client/assets/{ChevronDown-CbBnJL_3.js → ChevronDown-hAIeVVjO.js} +1 -1
  8. package/dist/client/assets/{ChevronRight-M76k2Bqn.js → ChevronRight-DvySy092.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-NOBCdNb6.js → ChevronUp-nRc3sEaT.js} +1 -1
  10. package/dist/client/assets/{Container-WGWM0qAq.js → Container-kWAyJ_HH.js} +1 -1
  11. package/dist/client/assets/{DotsVertical-BwyHH0XA.js → DotsVertical-C-S6nCss.js} +1 -1
  12. package/dist/client/assets/{LayoutLeft-CRwvychN.js → LayoutLeft-JykQcN-j.js} +1 -1
  13. package/dist/client/assets/{LinkExternal01-C-L_SAia.js → LinkExternal01-BxIXc_ra.js} +1 -1
  14. package/dist/client/assets/{Lock01-D4Ufi2rD.js → Lock01-mA7QgL2y.js} +1 -1
  15. package/dist/client/assets/{Palette-zf4FWQAJ.js → Palette-BcbDyirO.js} +1 -1
  16. package/dist/client/assets/{Play-CwjfjTyu.js → Play-B-SyQLb4.js} +1 -1
  17. package/dist/client/assets/{Plus-uo6qDPOp.js → Plus-Da0UZLbd.js} +1 -1
  18. package/dist/client/assets/{RefreshCcw01-DMn6IokY.js → RefreshCcw01-DjbieO7J.js} +1 -1
  19. package/dist/client/assets/{SearchMd-DUDw0ZUT.js → SearchMd-CRZSLxL6.js} +1 -1
  20. package/dist/client/assets/{Settings02-CuDW1PzF.js → Settings02-CRn2TAbB.js} +1 -1
  21. package/dist/client/assets/{Shield01-fWUg40CK.js → Shield01-mkPGOpR6.js} +1 -1
  22. package/dist/client/assets/{Star01-BQcqEnZt.js → Star01-DKC04CRs.js} +1 -1
  23. package/dist/client/assets/{Sun-BMuKJ9Ff.js → Sun-BmooIo9H.js} +1 -1
  24. package/dist/client/assets/{Tool01-BQ6Qf2cF.js → Tool01-Cmmu87hJ.js} +1 -1
  25. package/dist/client/assets/{Trash01-BC9JMST6.js → Trash01-_0GJuf6O.js} +1 -1
  26. package/dist/client/assets/{User01-B9gZ9vGn.js → User01-BeQhAfkv.js} +1 -1
  27. package/dist/client/assets/{Users03-CIKc-et8.js → Users03-BRhtwP3R.js} +1 -1
  28. package/dist/client/assets/{X-Bz2olG8B.js → X-BIBUzPXw.js} +1 -1
  29. package/dist/client/assets/{XCircle-iwkBPWSG.js → XCircle-B3Ec4xbl.js} +1 -1
  30. package/dist/client/assets/{XClose-Bm2tdn0q.js → XClose-_fuYraP_.js} +1 -1
  31. package/dist/client/assets/{Zap-BsnjihrJ.js → Zap-C2Ojyfeu.js} +1 -1
  32. package/dist/client/assets/{ZapSquare-DYSZtVlE.js → ZapSquare-Bp-Tac0d.js} +1 -1
  33. package/dist/client/assets/{accordion-328unscb.js → accordion-rzQTbL0h.js} +1 -1
  34. package/dist/client/assets/{agent-icon-TkwfBS_q.js → agent-icon-C3ToZMO1.js} +1 -1
  35. package/dist/client/assets/{agents-list-BQvdhOOb.js → agents-list-sQ_2-MIz.js} +1 -1
  36. package/dist/client/assets/{ai-providers-BeDnUXfp.js → ai-providers-DRxrdzrJ.js} +1 -1
  37. package/dist/client/assets/{alert-dialog-D1IbIWhp.js → alert-dialog-rJ8tQXxB.js} +1 -1
  38. package/dist/client/assets/{auth-catchall-Dd8tUYty.js → auth-catchall-Cqm9tpGx.js} +1 -1
  39. package/dist/client/assets/{automation-list-row-C8-jEl_H.js → automation-list-row-A_8c4BfR.js} +1 -1
  40. package/dist/client/assets/{automations-CZsgh01M.js → automations-YzDLAcj1.js} +1 -1
  41. package/dist/client/assets/{avatar-BqUqm_f_.js → avatar-BzKxqu3b.js} +1 -1
  42. package/dist/client/assets/{badge-e4gaf6Av.js → badge-CtvUEMa3.js} +1 -1
  43. package/dist/client/assets/{brand-context-9Yb3slSI.js → brand-context-CFaaMt6s.js} +1 -1
  44. package/dist/client/assets/{card-B2LlFtv3.js → card-DTHqwNV7.js} +1 -1
  45. package/dist/client/assets/{chat-context-CDov-9o4.js → chat-context-DxzvANdp.js} +10 -10
  46. package/dist/client/assets/{checkbox-C5VIt0wD.js → checkbox-Cs8wVTnP.js} +1 -1
  47. package/dist/client/assets/{collection-detail-BuOhDy6g.js → collection-detail-BVdBCgeZ.js} +1 -1
  48. package/dist/client/assets/{collection-display-button-DIp-dsIB.js → collection-display-button-B-70Ju9K.js} +1 -1
  49. package/dist/client/assets/{collection-search-DvQzDLEi.js → collection-search-BvyGXjxx.js} +1 -1
  50. package/dist/client/assets/{collection-search-BqwrYkpa.js → collection-search-CbmTjLje.js} +1 -1
  51. package/dist/client/assets/{collection-table-wrapper-AKC8h6wU.js → collection-table-wrapper-DXq2NrGj.js} +1 -1
  52. package/dist/client/assets/{collection-tabs-aTTa391l.js → collection-tabs-Cx7Fw5pB.js} +1 -1
  53. package/dist/client/assets/{collections-BuQqriCM.js → collections-BrXh640u.js} +1 -1
  54. package/dist/client/assets/{command-C8ocK7DO.js → command-Gp6-PTcb.js} +1 -1
  55. package/dist/client/assets/{connection-card-CdSiHT_s.js → connection-card-gdrfoq9h.js} +1 -1
  56. package/dist/client/assets/{connection-detail-DJDM6qrF.js → connection-detail-sPm6-FQh.js} +1 -1
  57. package/dist/client/assets/{connection-form-helpers-DFsENkA7.js → connection-form-helpers-CMTw78q4.js} +1 -1
  58. package/dist/client/assets/{connections-WOK-a8c5.js → connections-ClXPJSid.js} +1 -1
  59. package/dist/client/assets/{constants-DvN2evJ8.js → constants-Byqq7P-x.js} +1 -1
  60. package/dist/client/assets/{constants-BUUJVSUG.js → constants-j7SVGFua.js} +1 -1
  61. package/dist/client/assets/{dialog-BiOEQ1Hc.js → dialog-CVU8C65F.js} +1 -1
  62. package/dist/client/assets/{domain-settings-DrnFdvhU.js → domain-settings-DKmwgR9_.js} +1 -1
  63. package/dist/client/assets/{drawer-m8dkznMR.js → drawer-BPoStQav.js} +1 -1
  64. package/dist/client/assets/{dropdown-menu-DLhsz2J5.js → dropdown-menu-CFvw1sby.js} +1 -1
  65. package/dist/client/assets/{dynamic-plugin-layout-bcffUnqq.js → dynamic-plugin-layout-DB9J-dmB.js} +1 -1
  66. package/dist/client/assets/{empty-state-BFGEe__T.js → empty-state-8-OQfGVL.js} +1 -1
  67. package/dist/client/assets/{empty-state-Cdczql2B.js → empty-state-DICfxaK6.js} +1 -1
  68. package/dist/client/assets/{extract-connection-data-844ApV7p.js → extract-connection-data-D9CVtxg9.js} +1 -1
  69. package/dist/client/assets/{features-Dm70Q7yx.js → features-CozjNW2D.js} +1 -1
  70. package/dist/client/assets/{form-DaDKP1xj.js → form-D2ajrZY7.js} +1 -1
  71. package/dist/client/assets/{general-C_qHqy-s.js → general-BkPw_hwG.js} +1 -1
  72. package/dist/client/assets/{index-BP1irR4w.js → index-4U7gRnbz.js} +3 -3
  73. package/dist/client/assets/{index-CsyoB4qd.js → index-8aV9WSX6.js} +1 -1
  74. package/dist/client/assets/{index-B4ARPCRv.js → index-Bb5AeDnq.js} +1 -1
  75. package/dist/client/assets/{index-Du8ZsDnS.js → index-BbzWWop6.js} +1 -1
  76. package/dist/client/assets/{index-BRtlsWxZ.js → index-BcJogvuh.js} +1 -1
  77. package/dist/client/assets/{index-gj6ejCso.js → index-BwduZbfJ.js} +1 -1
  78. package/dist/client/assets/{index-C-7o6zB8.js → index-CB-9CUUW.js} +2 -2
  79. package/dist/client/assets/{index-D50QWIt1.js → index-CPY1FvNi.js} +1 -1
  80. package/dist/client/assets/{index-DV3_Yeg_.js → index-C_u8z90u.js} +1 -1
  81. package/dist/client/assets/{index-CNaiomGM.js → index-Ca8lIGfE.js} +1 -1
  82. package/dist/client/assets/{index-BiLAGy6Y.js → index-Cd02a-JG.js} +1 -1
  83. package/dist/client/assets/{index-CCFKoDTr.js → index-D7EGXs0z.js} +1 -1
  84. package/dist/client/assets/{index-C3ItJtDA.js → index-D7tifyXI.js} +1 -1
  85. package/dist/client/assets/{index-Fd8j7SKT.js → index-DR62hZV9.js} +1 -1
  86. package/dist/client/assets/{index-Z4y7Xqpl.js → index-MHifxSvC.js} +1 -1
  87. package/dist/client/assets/{index-CgBSxnoL.js → index-dI45a3oJ.js} +1 -1
  88. package/dist/client/assets/{infiniteQueryObserver-Dw0E78jT.js → infiniteQueryObserver-B8WYxU9o.js} +1 -1
  89. package/dist/client/assets/{input-9fGh4tmx.js → input-DNFaDN-t.js} +1 -1
  90. package/dist/client/assets/{integration-icon-CMP0vNT1.js → integration-icon-Bt36uZm6.js} +1 -1
  91. package/dist/client/assets/{label-DLzPbTFz.js → label-EPch60Re.js} +1 -1
  92. package/dist/client/assets/{layout-B_w0L8NB.js → layout-C-ijRiyr.js} +1 -1
  93. package/dist/client/assets/{lean-canvas-recruit-modal-CyWHgrUh.js → lean-canvas-recruit-modal-DfNm4E73.js} +1 -1
  94. package/dist/client/assets/{login-DN3ui4o2.js → login-Dp5n-o6e.js} +1 -1
  95. package/dist/client/assets/{members-Cqt_7BbR.js → members-B4-cMOsS.js} +1 -1
  96. package/dist/client/assets/{monaco-editor-BQzo0Wjs.js → monaco-editor-UJJyG6n2.js} +1 -1
  97. package/dist/client/assets/{monitoring-stats-row-BaUW2Xkn.js → monitoring-stats-row-Ba3ar8Om.js} +1 -1
  98. package/dist/client/assets/{oauth-callback-DNxvRR-9.js → oauth-callback-Dgudf75C.js} +1 -1
  99. package/dist/client/assets/{oauth-callback-ai-provider-BaBdfpnJ.js → oauth-callback-ai-provider-EanhHzQY.js} +1 -1
  100. package/dist/client/assets/{onboarding-CR7yjYaj.js → onboarding-CN7qNa98.js} +1 -1
  101. package/dist/client/assets/{org-layout-Cb-ADOWZ.js → org-layout-CdBnaGi6.js} +1 -1
  102. package/dist/client/assets/{org-plugin-layout-njJjJMFT.js → org-plugin-layout-pmz_1-KP.js} +1 -1
  103. package/dist/client/assets/{pair-CGfn-HdZ.js → pair-C-m8tavv.js} +1 -1
  104. package/dist/client/assets/{plugin-empty-state-BTEa5hkW.js → plugin-empty-state-PqSYiLpp.js} +1 -1
  105. package/dist/client/assets/{plugin-header-B2jK-xMp.js → plugin-header-apdmEPGc.js} +1 -1
  106. package/dist/client/assets/{plugin-layout-Bn9EbEmt.js → plugin-layout-DE-RB_rr.js} +1 -1
  107. package/dist/client/assets/{popover-e2Bi9Ijy.js → popover-DqPZrAPW.js} +1 -1
  108. package/dist/client/assets/{profile-BPcooE5z.js → profile-CDG3HHBU.js} +1 -1
  109. package/dist/client/assets/{project-app-view-HTOiOpva.js → project-app-view-eNqi9XCt.js} +1 -1
  110. package/dist/client/assets/registry-CBqcs7XA.js +2 -0
  111. package/dist/client/assets/{registry-layout-DPRiAvDZ.js → registry-layout-CoJtCj-r.js} +1 -1
  112. package/dist/client/assets/{required-auth-layout-CybekGFA.js → required-auth-layout-DNLyc-Jc.js} +1 -1
  113. package/dist/client/assets/{reset-password-B3LrUwFE.js → reset-password-BILcwCX-.js} +1 -1
  114. package/dist/client/assets/{roles-CvtZh-pA.js → roles-EUFvZijn.js} +1 -1
  115. package/dist/client/assets/{scroll-area-BlERkbFS.js → scroll-area-C80z-i4l.js} +1 -1
  116. package/dist/client/assets/{search-input-Cn0Od0in.js → search-input-CITVGcCE.js} +1 -1
  117. package/dist/client/assets/{select-DfpWbWAA.js → select-D2rWlduK.js} +1 -1
  118. package/dist/client/assets/{select-model-D272kQJC.js → select-model-BTNonZmN.js} +1 -1
  119. package/dist/client/assets/{settings-layout-EiIXIsKh.js → settings-layout-Bg2zZUvB.js} +1 -1
  120. package/dist/client/assets/{settings-section-D7_GmpQ9.js → settings-section-Dnz7xxTt.js} +1 -1
  121. package/dist/client/assets/{shell-layout-CnxPajL4.js → shell-layout-C4Qbz79U.js} +1 -1
  122. package/dist/client/assets/{sidebar-CYpLX4no.js → sidebar-BWu_ePOy.js} +1 -1
  123. package/dist/client/assets/{skeleton-CWZeUc5U.js → skeleton-DJTy6ez2.js} +1 -1
  124. package/dist/client/assets/{spinner-DamIB9Ms.js → spinner-WgqEYOpc.js} +1 -1
  125. package/dist/client/assets/{sso-JhZQ6pL0.js → sso-ZW_bBsst.js} +1 -1
  126. package/dist/client/assets/{store-C86R69qX.js → store-2-hWApJp.js} +1 -1
  127. package/dist/client/assets/store-registry-01dPTj0W.js +2 -0
  128. package/dist/client/assets/{switch-T40TKDv0.js → switch-qhfo8Vps.js} +1 -1
  129. package/dist/client/assets/{table-BN_qkFAx.js → table-DT9Lwdc9.js} +1 -1
  130. package/dist/client/assets/{tabs-p0yoOoyy.js → tabs-DdVMeHSM.js} +1 -1
  131. package/dist/client/assets/{task-status-C350i7gZ.js → task-status-CNZzETah.js} +1 -1
  132. package/dist/client/assets/{textarea-Ck-_LXZT.js → textarea-tUo13Bze.js} +1 -1
  133. package/dist/client/assets/{toggle-group-DBZ-b7HK.js → toggle-group-CDk1azIm.js} +1 -1
  134. package/dist/client/assets/{tools-list-DPCnQZw_.js → tools-list-B7BG48WQ.js} +1 -1
  135. package/dist/client/assets/{tooltip-5d92WQgx.js → tooltip-Fw0r1Fnv.js} +1 -1
  136. package/dist/client/assets/{types-DUjtSZCT.js → types-SLEmji6U.js} +1 -1
  137. package/dist/client/assets/{use-ai-providers-DnqgBtrl.js → use-ai-providers-C-k1YUCw.js} +1 -1
  138. package/dist/client/assets/{use-collections-g6eFEOg-.js → use-collections-B62mMH76.js} +1 -1
  139. package/dist/client/assets/{use-connection-CVJArsRM.js → use-connection-CGnX1bAr.js} +1 -1
  140. package/dist/client/assets/{use-copy-DvX06OMp.js → use-copy-S7d6ccvS.js} +1 -1
  141. package/dist/client/assets/{use-create-virtual-mcp-1Snk1Y0U.js → use-create-virtual-mcp-D8mqROzD.js} +1 -1
  142. package/dist/client/assets/{use-debounced-autosave-C4P00Ugc.js → use-debounced-autosave-DSiduY2E.js} +1 -1
  143. package/dist/client/assets/{use-decopilot-events-LDbXPgsM.js → use-decopilot-events-CD5HmYFC.js} +1 -1
  144. package/dist/client/assets/{use-delete-connection--X0jmBjk.js → use-delete-connection-DVHNgb48.js} +1 -1
  145. package/dist/client/assets/{use-infinite-scroll-bTPc4v46.js → use-infinite-scroll-SPOySZcn.js} +1 -1
  146. package/dist/client/assets/{use-list-state-CjtCLokI.js → use-list-state-CB5cSSEY.js} +1 -1
  147. package/dist/client/assets/{use-mcp-tools-BRv4Pzaj.js → use-mcp-tools-DbRVIPCe.js} +1 -1
  148. package/dist/client/assets/{use-members-BHNdoIJ3.js → use-members-Cjc37mTg.js} +1 -1
  149. package/dist/client/assets/{use-navigate-to-agent-DhIHhVdu.js → use-navigate-to-agent-BFHXdont.js} +1 -1
  150. package/dist/client/assets/{use-org-auth-client-CJeZlMTP.js → use-org-auth-client-CH982N7h.js} +1 -1
  151. package/dist/client/assets/{use-org-sso-_gSpDh8p.js → use-org-sso-DyRmCzkM.js} +1 -1
  152. package/dist/client/assets/{use-organization-roles-ClnpTw4u.js → use-organization-roles-2UTk-DFF.js} +1 -1
  153. package/dist/client/assets/{use-organization-settings-DmL7EaQZ.js → use-organization-settings-gXH8ly7B.js} +1 -1
  154. package/dist/client/assets/{use-registry-connections-Ds74sjTr.js → use-registry-connections-DAbFKgpw.js} +1 -1
  155. package/dist/client/assets/{use-status-sounds-CFLTUaDf.js → use-status-sounds-VTPYJ4_T.js} +1 -1
  156. package/dist/client/assets/{use-tasks-BIeBYcx5.js → use-tasks-Buj64kOD.js} +1 -1
  157. package/dist/client/assets/{use-view-mode-DIRh4-ob.js → use-view-mode-C9lWb9qo.js} +1 -1
  158. package/dist/client/assets/{use-virtual-mcp-Ct7cqJwI.js → use-virtual-mcp-CnvhxxMa.js} +1 -1
  159. package/dist/client/assets/useInfiniteQuery-BECdJto-.js +1 -0
  160. package/dist/client/assets/useSuspenseInfiniteQuery-DLoMCiwp.js +1 -0
  161. package/dist/client/assets/{user-C2wQ-MsS.js → user-Chu-GPC8.js} +1 -1
  162. package/dist/client/assets/{view-mode-toggle-D2JMsTT3.js → view-mode-toggle-Cj1WIwcj.js} +1 -1
  163. package/dist/client/assets/{workflow-BMafL0G7.js → workflow-BBU02wN2.js} +1 -1
  164. package/dist/client/assets/workflow-detail-CoYIUlop.js +1 -0
  165. package/dist/client/index.html +1 -1
  166. package/dist/server/cli.js +1 -1
  167. package/dist/server/node_modules/string-width/index.d.ts +39 -0
  168. package/dist/server/node_modules/string-width/index.js +82 -0
  169. package/dist/server/node_modules/string-width/license +9 -0
  170. package/dist/server/node_modules/string-width/package.json +64 -0
  171. package/dist/server/node_modules/string-width/readme.md +66 -0
  172. package/package.json +1 -1
  173. package/dist/client/assets/registry-BakIE_E6.js +0 -2
  174. package/dist/client/assets/store-registry-5nvptnn0.js +0 -2
  175. package/dist/client/assets/useInfiniteQuery-Dokj505R.js +0 -1
  176. package/dist/client/assets/useSuspenseInfiniteQuery-_VFI1crv.js +0 -1
  177. package/dist/client/assets/workflow-detail-D6qKcXvR.js +0 -1
@@ -1,19 +1,19 @@
1
- import{bM as er,bN as tr,bk as q,J as m,bO as it,bP as ra,bQ as ar,bR as rr,I as sr,aZ as V,aH as qe,aJ as Ge,H as D,a_ as _,aI as de,bS as nr,bT as $,ap as or,ba as ir,r as T,R as ne,e as Ye,a1 as sa,o as ut,s as ie,K as ge,x as xe,Q as _e,f as lr,d as na,g as cr,w as ur,b as oa,j as ke,t as dr,P as pr,bU as mr}from"./index-C-7o6zB8.js";import{E as fr,g as hr,S as wt,u as At}from"./constants-DvN2evJ8.js";import{u as ia}from"./use-virtual-mcp-Ct7cqJwI.js";import{u as la,a as fe}from"./use-ai-providers-DnqgBtrl.js";import{u as ca}from"./use-decopilot-events-LDbXPgsM.js";import{u as gr}from"./use-tasks-BIeBYcx5.js";import{b as vr,c as yr}from"./use-collections-g6eFEOg-.js";import{e as ua}from"./use-organization-settings-DmL7EaQZ.js";var Je;(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})(Je||(Je={}));var jt;(function(e){e.mergeShapes=(t,a)=>({...t,...a})})(jt||(jt={}));Je.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);Je.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 lt 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 lt))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Je.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()}}lt.create=e=>new lt(e);var Lt;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(Lt||(Lt={}));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 br={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"]},Ir={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"]},Er={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"]},_r={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"]},Sr={openrouter:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"],deco:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"]};function Ze(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 Tr(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=Ze(s,r.id,br[n]??[])),a.chat.smart||(a.chat.smart=Ze(s,r.id,Ir[n]??[])),a.chat.thinking||(a.chat.thinking=Ze(s,r.id,Er[n]??[])),a.image||(a.image=Ze(s,r.id,_r[n]??[],i=>i.capabilities?.includes("image")===!0)),a.webResearch||(a.webResearch=Ze(s,r.id,Sr[n]??[],i=>{const o=i.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return o.includes("sonar")||o.includes("deepresearch")}))}return a}function Mr(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}
1
+ import{bM as er,bN as tr,bk as B,J as m,bO as it,bP as ra,bQ as ar,bR as rr,I as sr,aZ as V,aH as Be,aJ as Ge,H as D,a_ as _,aI as de,bS as nr,bT as $,ap as or,ba as ir,r as S,R as ne,e as Ye,a1 as sa,o as ut,s as ie,K as ge,x as xe,Q as _e,f as lr,d as na,g as cr,w as ur,b as oa,j as ke,t as dr,P as pr,bU as mr}from"./index-CB-9CUUW.js";import{E as fr,g as hr,S as wt,u as At}from"./constants-Byqq7P-x.js";import{u as ia}from"./use-virtual-mcp-CnvhxxMa.js";import{u as la,a as fe}from"./use-ai-providers-C-k1YUCw.js";import{u as ca}from"./use-decopilot-events-CD5HmYFC.js";import{u as gr}from"./use-tasks-Buj64kOD.js";import{b as vr,c as yr}from"./use-collections-B62mMH76.js";import{e as ua}from"./use-organization-settings-gXH8ly7B.js";var Je;(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})(Je||(Je={}));var jt;(function(e){e.mergeShapes=(t,a)=>({...t,...a})})(jt||(jt={}));Je.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);Je.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 lt 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 lt))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Je.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()}}lt.create=e=>new lt(e);var Lt;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(Lt||(Lt={}));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 br={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"]},Ir={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"]},Er={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"]},_r={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"]},Sr={openrouter:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"],deco:["perplexity/sonar","perplexity/sonar-pro","perplexity/deep-research"]};function Ze(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 Tr(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=Ze(s,r.id,br[n]??[])),a.chat.smart||(a.chat.smart=Ze(s,r.id,Ir[n]??[])),a.chat.thinking||(a.chat.thinking=Ze(s,r.id,Er[n]??[])),a.image||(a.image=Ze(s,r.id,_r[n]??[],i=>i.capabilities?.includes("image")===!0)),a.webResearch||(a.webResearch=Ze(s,r.id,Sr[n]??[],i=>{const o=i.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return o.includes("sonar")||o.includes("deepresearch")}))}return a}function Mr(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 Zt(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 wr(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}]
5
5
  ${i.text}`}):"blob"in i&&i.blob&&i.mimeType&&a.push({type:"file",url:`data:${i.mimeType};base64,${i.blob}`,filename:String(i.uri),mediaType:String(i.mimeType)}));break}}}return a}function da(e){if(!e)return[];const t=[];let a="";const r=s=>{if(s){if(s.type==="text"&&"text"in s&&typeof s.text=="string")a+=s.text;else if(s.type==="mention"&&s.attrs){const n=s.attrs.char??"/",i=`${n}${s.attrs.name}`;if(a+=i,n==="@"){const o=s.attrs.metadata;o&&!Array.isArray(o)&&"agentId"in o?t.push({type:"text",text:`[DELEGATE TO AGENT: ${o.title??s.attrs.name} (agent_id: ${o.agentId})]
6
- Use the subtask tool to delegate this task to the agent above. Include the full relevant context from this conversation in the prompt field — the subagent has no conversation history.`}):Array.isArray(o)&&t.push(...Zt(o,i))}else{const o=s.attrs.metadata||s.attrs.prompts||[];Array.isArray(o)&&o.length>0&&"role"in o[0]?t.push(...wr(o,i)):Array.isArray(o)&&t.push(...Zt(o,i))}}else if(s.type==="file"&&s.attrs){const n=s.attrs,i=`[file:://${encodeURIComponent(n.name)}]`;a+=i,t.push(...Mr(n,i))}if("content"in s&&Array.isArray(s.content))for(const n of s.content)r(n)}};return r(e),a.trim()&&t.unshift({type:"text",text:a.trim()}),t}function Jn(e){const t=da(e);return t.length===0?[]:[{id:crypto.randomUUID(),role:"user",parts:t,metadata:{tiptapDoc:e}}]}var pa="vercel.ai.error",Ar=Symbol.for(pa),Ft,Ut,oe=class ma extends(Ut=Error,Ft=Ar,Ut){constructor({name:t,message:a,cause:r}){super(a),this[Ft]=!0,this.name=t,this.cause=r}static isInstance(t){return ma.hasMarker(t,pa)}static hasMarker(t,a){const r=Symbol.for(a);return t!=null&&typeof t=="object"&&r in t&&typeof t[r]=="boolean"&&t[r]===!0}};function fa(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var ha="AI_InvalidArgumentError",ga=`vercel.ai.error.${ha}`,Cr=Symbol.for(ga),Vt,Bt,Rr=class extends(Bt=oe,Vt=Cr,Bt){constructor({message:e,cause:t,argument:a}){super({name:ha,message:e,cause:t}),this[Vt]=!0,this.argument=a}static isInstance(e){return oe.hasMarker(e,ga)}},va="AI_JSONParseError",ya=`vercel.ai.error.${va}`,xr=Symbol.for(ya),qt,Jt,zt=class extends(Jt=oe,qt=xr,Jt){constructor({text:e,cause:t}){super({name:va,message:`JSON parsing failed: Text: ${e}.
7
- Error message: ${fa(t)}`,cause:t}),this[qt]=!0,this.text=e}static isInstance(e){return oe.hasMarker(e,ya)}},ba="AI_TypeValidationError",Ia=`vercel.ai.error.${ba}`,kr=Symbol.for(Ia),Wt,Gt,Oe=class It extends(Gt=oe,Wt=kr,Gt){constructor({value:t,cause:a,context:r}){let s="Type validation failed";if(r?.field&&(s+=` for ${r.field}`),r?.entityName||r?.entityId){s+=" (";const n=[];r.entityName&&n.push(r.entityName),r.entityId&&n.push(`id: "${r.entityId}"`),s+=n.join(", "),s+=")"}super({name:ba,message:`${s}: Value: ${JSON.stringify(t)}.
8
- Error message: ${fa(a)}`,cause:a}),this[Wt]=!0,this.value=t,this.context=r}static isInstance(t){return oe.hasMarker(t,Ia)}static wrap({value:t,cause:a,context:r}){var s,n,i;return It.isInstance(a)&&a.value===t&&((s=a.context)==null?void 0:s.field)===r?.field&&((n=a.context)==null?void 0:n.entityName)===r?.entityName&&((i=a.context)==null?void 0:i.entityId)===r?.entityId?a:new It({value:t,cause:a,context:r})}},He=({prefix:e,size:t=16,alphabet:a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:r="-"}={})=>{const s=()=>{const n=a.length,i=new Array(t);for(let o=0;o<t;o++)i[o]=a[Math.random()*n|0];return i.join("")};if(e==null)return s;if(a.includes(r))throw new Rr({argument:"separator",message:`The separator "${r}" must not be part of the alphabet "${a}".`});return()=>`${e}${r}${s()}`},Or=He();function we(e){if(e==null)return{};const t={};if(e instanceof Headers)e.forEach((a,r)=>{t[r.toLowerCase()]=a});else{Array.isArray(e)||(e=Object.entries(e));for(const[a,r]of e)r!=null&&(t[a.toLowerCase()]=r)}return t}var Pr=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Nr=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function Yt(e){const t=JSON.parse(e);return t===null||typeof t!="object"||Pr.test(e)===!1&&Nr.test(e)===!1?t:Dr(t)}function Dr(e){let t=[e];for(;t.length;){const a=t;t=[];for(const r of a){if(Object.prototype.hasOwnProperty.call(r,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(r,"constructor")&&r.constructor!==null&&typeof r.constructor=="object"&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const s in r){const n=r[s];n&&typeof n=="object"&&t.push(n)}}}return e}function $r(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return Yt(e)}try{return Yt(e)}finally{Error.stackTraceLimit=t}}function Ct(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;const{properties:a}=e;if(a!=null)for(const r of Object.keys(a))a[r]=Ee(a[r])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(Ee):Ee(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(Ee)),e.allOf!=null&&(e.allOf=e.allOf.map(Ee)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(Ee));const{definitions:t}=e;if(t!=null)for(const a of Object.keys(t))t[a]=Ee(t[a]);return e}function Ee(e){return typeof e=="boolean"?e:Ct(e)}var jr=Symbol("Let zodToJsonSchema decide on which parser to use"),Ht={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Lr=e=>typeof e=="string"?{...Ht,name:e}:{...Ht,...e};function W(){return{}}function Zr(e,t){var a,r,s;const n={type:"array"};return(a=e.type)!=null&&a._def&&((s=(r=e.type)==null?void 0:r._def)==null?void 0:s.typeName)!==w.ZodAny&&(n.items=P(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&(n.minItems=e.minLength.value),e.maxLength&&(n.maxItems=e.maxLength.value),e.exactLength&&(n.minItems=e.exactLength.value,n.maxItems=e.exactLength.value),n}function Fr(e){const t={type:"integer",format:"int64"};if(!e.checks)return t;for(const a of e.checks)switch(a.kind){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 Ur(){return{type:"boolean"}}function Ea(e,t){return P(e.type._def,t)}var Vr=(e,t)=>P(e.innerType._def,t);function _a(e,t,a){const r=a??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map((s,n)=>_a(e,t,s))};switch(r){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Br(e)}}var Br=e=>{const t={type:"integer",format:"unix-time"};for(const a of e.checks)switch(a.kind){case"min":t.minimum=a.value;break;case"max":t.maximum=a.value;break}return t};function qr(e,t){return{...P(e.innerType._def,t),default:e.defaultValue()}}function Jr(e,t){return t.effectStrategy==="input"?P(e.schema._def,t):W()}function zr(e){return{type:"string",enum:Array.from(e.values)}}var Wr=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function Gr(e,t){const a=[P(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),P(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(s=>!!s),r=[];return a.forEach(s=>{if(Wr(s))r.push(...s.allOf);else{let n=s;if("additionalProperties"in s&&s.additionalProperties===!1){const{additionalProperties:i,...o}=s;n=o}r.push(n)}}),r.length?{allOf:r}:void 0}function Yr(e){const t=typeof e.value;return t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string"?{type:Array.isArray(e.value)?"array":"object"}:{type:t==="bigint"?"integer":t,const:e.value}}var vt=void 0,K={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(vt===void 0&&(vt=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),vt),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Sa(e,t){const a={type:"string"};if(e.checks)for(const r of e.checks)switch(r.kind){case"min":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value;break;case"max":a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"email":switch(t.emailStrategy){case"format:email":X(a,"email",r.message,t);break;case"format:idn-email":X(a,"idn-email",r.message,t);break;case"pattern:zod":U(a,K.email,r.message,t);break}break;case"url":X(a,"uri",r.message,t);break;case"uuid":X(a,"uuid",r.message,t);break;case"regex":U(a,r.regex,r.message,t);break;case"cuid":U(a,K.cuid,r.message,t);break;case"cuid2":U(a,K.cuid2,r.message,t);break;case"startsWith":U(a,RegExp(`^${yt(r.value,t)}`),r.message,t);break;case"endsWith":U(a,RegExp(`${yt(r.value,t)}$`),r.message,t);break;case"datetime":X(a,"date-time",r.message,t);break;case"date":X(a,"date",r.message,t);break;case"time":X(a,"time",r.message,t);break;case"duration":X(a,"duration",r.message,t);break;case"length":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value,a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"includes":{U(a,RegExp(yt(r.value,t)),r.message,t);break}case"ip":{r.version!=="v6"&&X(a,"ipv4",r.message,t),r.version!=="v4"&&X(a,"ipv6",r.message,t);break}case"base64url":U(a,K.base64url,r.message,t);break;case"jwt":U(a,K.jwt,r.message,t);break;case"cidr":{r.version!=="v6"&&U(a,K.ipv4Cidr,r.message,t),r.version!=="v4"&&U(a,K.ipv6Cidr,r.message,t);break}case"emoji":U(a,K.emoji(),r.message,t);break;case"ulid":{U(a,K.ulid,r.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{X(a,"binary",r.message,t);break}case"contentEncoding:base64":{a.contentEncoding="base64";break}case"pattern:zod":{U(a,K.base64,r.message,t);break}}break}case"nanoid":U(a,K.nanoid,r.message,t)}return a}function yt(e,t){return t.patternStrategy==="escape"?Qr(e):e}var Hr=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Qr(e){let t="";for(let a=0;a<e.length;a++)Hr.has(e[a])||(t+="\\"),t+=e[a];return t}function X(e,t,a,r){var s;e.format||(s=e.anyOf)!=null&&s.some(n=>n.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...a&&r.errorMessages&&{errorMessage:{format:a}}})):e.format=t}function U(e,t,a,r){var s;e.pattern||(s=e.allOf)!=null&&s.some(n=>n.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:Qt(t,r),...a&&r.errorMessages&&{errorMessage:{pattern:a}}})):e.pattern=Qt(t,r)}function Qt(e,t){var a;if(!t.applyRegexFlags||!e.flags)return e.source;const r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},s=r.i?e.source.toLowerCase():e.source;let n="",i=!1,o=!1,u=!1;for(let l=0;l<s.length;l++){if(i){n+=s[l],i=!1;continue}if(r.i){if(o){if(s[l].match(/[a-z]/)){u?(n+=s[l],n+=`${s[l-2]}-${s[l]}`.toUpperCase(),u=!1):s[l+1]==="-"&&((a=s[l+2])!=null&&a.match(/[a-z]/))?(n+=s[l],u=!0):n+=`${s[l]}${s[l].toUpperCase()}`;continue}}else if(s[l].match(/[a-z]/)){n+=`[${s[l]}${s[l].toUpperCase()}]`;continue}}if(r.m){if(s[l]==="^"){n+=`(^|(?<=[\r
6
+ Use the subtask tool to delegate this task to the agent above. Include the full relevant context from this conversation in the prompt field — the subagent has no conversation history.`}):Array.isArray(o)&&t.push(...Zt(o,i))}else{const o=s.attrs.metadata||s.attrs.prompts||[];Array.isArray(o)&&o.length>0&&"role"in o[0]?t.push(...wr(o,i)):Array.isArray(o)&&t.push(...Zt(o,i))}}else if(s.type==="file"&&s.attrs){const n=s.attrs,i=`[file:://${encodeURIComponent(n.name)}]`;a+=i,t.push(...Mr(n,i))}if("content"in s&&Array.isArray(s.content))for(const n of s.content)r(n)}};return r(e),a.trim()&&t.unshift({type:"text",text:a.trim()}),t}function Wn(e){const t=da(e);return t.length===0?[]:[{id:crypto.randomUUID(),role:"user",parts:t,metadata:{tiptapDoc:e}}]}var pa="vercel.ai.error",Ar=Symbol.for(pa),Ft,Ut,oe=class ma extends(Ut=Error,Ft=Ar,Ut){constructor({name:t,message:a,cause:r}){super(a),this[Ft]=!0,this.name=t,this.cause=r}static isInstance(t){return ma.hasMarker(t,pa)}static hasMarker(t,a){const r=Symbol.for(a);return t!=null&&typeof t=="object"&&r in t&&typeof t[r]=="boolean"&&t[r]===!0}};function fa(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var ha="AI_InvalidArgumentError",ga=`vercel.ai.error.${ha}`,Cr=Symbol.for(ga),Vt,qt,Rr=class extends(qt=oe,Vt=Cr,qt){constructor({message:e,cause:t,argument:a}){super({name:ha,message:e,cause:t}),this[Vt]=!0,this.argument=a}static isInstance(e){return oe.hasMarker(e,ga)}},va="AI_JSONParseError",ya=`vercel.ai.error.${va}`,xr=Symbol.for(ya),Bt,Jt,zt=class extends(Jt=oe,Bt=xr,Jt){constructor({text:e,cause:t}){super({name:va,message:`JSON parsing failed: Text: ${e}.
7
+ Error message: ${fa(t)}`,cause:t}),this[Bt]=!0,this.text=e}static isInstance(e){return oe.hasMarker(e,ya)}},ba="AI_TypeValidationError",Ia=`vercel.ai.error.${ba}`,kr=Symbol.for(Ia),Wt,Gt,Oe=class It extends(Gt=oe,Wt=kr,Gt){constructor({value:t,cause:a,context:r}){let s="Type validation failed";if(r?.field&&(s+=` for ${r.field}`),r?.entityName||r?.entityId){s+=" (";const n=[];r.entityName&&n.push(r.entityName),r.entityId&&n.push(`id: "${r.entityId}"`),s+=n.join(", "),s+=")"}super({name:ba,message:`${s}: Value: ${JSON.stringify(t)}.
8
+ Error message: ${fa(a)}`,cause:a}),this[Wt]=!0,this.value=t,this.context=r}static isInstance(t){return oe.hasMarker(t,Ia)}static wrap({value:t,cause:a,context:r}){var s,n,i;return It.isInstance(a)&&a.value===t&&((s=a.context)==null?void 0:s.field)===r?.field&&((n=a.context)==null?void 0:n.entityName)===r?.entityName&&((i=a.context)==null?void 0:i.entityId)===r?.entityId?a:new It({value:t,cause:a,context:r})}},He=({prefix:e,size:t=16,alphabet:a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:r="-"}={})=>{const s=()=>{const n=a.length,i=new Array(t);for(let o=0;o<t;o++)i[o]=a[Math.random()*n|0];return i.join("")};if(e==null)return s;if(a.includes(r))throw new Rr({argument:"separator",message:`The separator "${r}" must not be part of the alphabet "${a}".`});return()=>`${e}${r}${s()}`},Or=He();function we(e){if(e==null)return{};const t={};if(e instanceof Headers)e.forEach((a,r)=>{t[r.toLowerCase()]=a});else{Array.isArray(e)||(e=Object.entries(e));for(const[a,r]of e)r!=null&&(t[a.toLowerCase()]=r)}return t}var Pr=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Nr=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function Yt(e){const t=JSON.parse(e);return t===null||typeof t!="object"||Pr.test(e)===!1&&Nr.test(e)===!1?t:Dr(t)}function Dr(e){let t=[e];for(;t.length;){const a=t;t=[];for(const r of a){if(Object.prototype.hasOwnProperty.call(r,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(r,"constructor")&&r.constructor!==null&&typeof r.constructor=="object"&&Object.prototype.hasOwnProperty.call(r.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const s in r){const n=r[s];n&&typeof n=="object"&&t.push(n)}}}return e}function $r(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return Yt(e)}try{return Yt(e)}finally{Error.stackTraceLimit=t}}function Ct(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;const{properties:a}=e;if(a!=null)for(const r of Object.keys(a))a[r]=Ee(a[r])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(Ee):Ee(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(Ee)),e.allOf!=null&&(e.allOf=e.allOf.map(Ee)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(Ee));const{definitions:t}=e;if(t!=null)for(const a of Object.keys(t))t[a]=Ee(t[a]);return e}function Ee(e){return typeof e=="boolean"?e:Ct(e)}var jr=Symbol("Let zodToJsonSchema decide on which parser to use"),Ht={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Lr=e=>typeof e=="string"?{...Ht,name:e}:{...Ht,...e};function W(){return{}}function Zr(e,t){var a,r,s;const n={type:"array"};return(a=e.type)!=null&&a._def&&((s=(r=e.type)==null?void 0:r._def)==null?void 0:s.typeName)!==w.ZodAny&&(n.items=P(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&(n.minItems=e.minLength.value),e.maxLength&&(n.maxItems=e.maxLength.value),e.exactLength&&(n.minItems=e.exactLength.value,n.maxItems=e.exactLength.value),n}function Fr(e){const t={type:"integer",format:"int64"};if(!e.checks)return t;for(const a of e.checks)switch(a.kind){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 Ur(){return{type:"boolean"}}function Ea(e,t){return P(e.type._def,t)}var Vr=(e,t)=>P(e.innerType._def,t);function _a(e,t,a){const r=a??t.dateStrategy;if(Array.isArray(r))return{anyOf:r.map((s,n)=>_a(e,t,s))};switch(r){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return qr(e)}}var qr=e=>{const t={type:"integer",format:"unix-time"};for(const a of e.checks)switch(a.kind){case"min":t.minimum=a.value;break;case"max":t.maximum=a.value;break}return t};function Br(e,t){return{...P(e.innerType._def,t),default:e.defaultValue()}}function Jr(e,t){return t.effectStrategy==="input"?P(e.schema._def,t):W()}function zr(e){return{type:"string",enum:Array.from(e.values)}}var Wr=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function Gr(e,t){const a=[P(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),P(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(s=>!!s),r=[];return a.forEach(s=>{if(Wr(s))r.push(...s.allOf);else{let n=s;if("additionalProperties"in s&&s.additionalProperties===!1){const{additionalProperties:i,...o}=s;n=o}r.push(n)}}),r.length?{allOf:r}:void 0}function Yr(e){const t=typeof e.value;return t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string"?{type:Array.isArray(e.value)?"array":"object"}:{type:t==="bigint"?"integer":t,const:e.value}}var vt=void 0,K={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(vt===void 0&&(vt=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),vt),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Sa(e,t){const a={type:"string"};if(e.checks)for(const r of e.checks)switch(r.kind){case"min":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value;break;case"max":a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"email":switch(t.emailStrategy){case"format:email":X(a,"email",r.message,t);break;case"format:idn-email":X(a,"idn-email",r.message,t);break;case"pattern:zod":U(a,K.email,r.message,t);break}break;case"url":X(a,"uri",r.message,t);break;case"uuid":X(a,"uuid",r.message,t);break;case"regex":U(a,r.regex,r.message,t);break;case"cuid":U(a,K.cuid,r.message,t);break;case"cuid2":U(a,K.cuid2,r.message,t);break;case"startsWith":U(a,RegExp(`^${yt(r.value,t)}`),r.message,t);break;case"endsWith":U(a,RegExp(`${yt(r.value,t)}$`),r.message,t);break;case"datetime":X(a,"date-time",r.message,t);break;case"date":X(a,"date",r.message,t);break;case"time":X(a,"time",r.message,t);break;case"duration":X(a,"duration",r.message,t);break;case"length":a.minLength=typeof a.minLength=="number"?Math.max(a.minLength,r.value):r.value,a.maxLength=typeof a.maxLength=="number"?Math.min(a.maxLength,r.value):r.value;break;case"includes":{U(a,RegExp(yt(r.value,t)),r.message,t);break}case"ip":{r.version!=="v6"&&X(a,"ipv4",r.message,t),r.version!=="v4"&&X(a,"ipv6",r.message,t);break}case"base64url":U(a,K.base64url,r.message,t);break;case"jwt":U(a,K.jwt,r.message,t);break;case"cidr":{r.version!=="v6"&&U(a,K.ipv4Cidr,r.message,t),r.version!=="v4"&&U(a,K.ipv6Cidr,r.message,t);break}case"emoji":U(a,K.emoji(),r.message,t);break;case"ulid":{U(a,K.ulid,r.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{X(a,"binary",r.message,t);break}case"contentEncoding:base64":{a.contentEncoding="base64";break}case"pattern:zod":{U(a,K.base64,r.message,t);break}}break}case"nanoid":U(a,K.nanoid,r.message,t)}return a}function yt(e,t){return t.patternStrategy==="escape"?Qr(e):e}var Hr=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Qr(e){let t="";for(let a=0;a<e.length;a++)Hr.has(e[a])||(t+="\\"),t+=e[a];return t}function X(e,t,a,r){var s;e.format||(s=e.anyOf)!=null&&s.some(n=>n.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...a&&r.errorMessages&&{errorMessage:{format:a}}})):e.format=t}function U(e,t,a,r){var s;e.pattern||(s=e.allOf)!=null&&s.some(n=>n.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:Qt(t,r),...a&&r.errorMessages&&{errorMessage:{pattern:a}}})):e.pattern=Qt(t,r)}function Qt(e,t){var a;if(!t.applyRegexFlags||!e.flags)return e.source;const r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},s=r.i?e.source.toLowerCase():e.source;let n="",i=!1,o=!1,u=!1;for(let l=0;l<s.length;l++){if(i){n+=s[l],i=!1;continue}if(r.i){if(o){if(s[l].match(/[a-z]/)){u?(n+=s[l],n+=`${s[l-2]}-${s[l]}`.toUpperCase(),u=!1):s[l+1]==="-"&&((a=s[l+2])!=null&&a.match(/[a-z]/))?(n+=s[l],u=!0):n+=`${s[l]}${s[l].toUpperCase()}`;continue}}else if(s[l].match(/[a-z]/)){n+=`[${s[l]}${s[l].toUpperCase()}]`;continue}}if(r.m){if(s[l]==="^"){n+=`(^|(?<=[\r
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 Ta(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}=Sa(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}=Ea(e.keyType._def,t);return{...u,propertyNames:d}}}return u}function Kr(e,t){if(t.mapStrategy==="record")return Ta(e,t);const a=P(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||W(),r=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||W();return{type:"array",maxItems:125,items:{type:"array",items:[a,r],minItems:2,maxItems:2}}}function Xr(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 es(){return{not:W()}}function ts(){return{type:"null"}}var Et={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function as(e,t){const a=e.options instanceof Map?Array.from(e.options.values()):e.options;if(a.every(r=>r._def.typeName in Et&&(!r._def.checks||!r._def.checks.length))){const r=a.reduce((s,n)=>{const i=Et[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 rs(e,t)}var rs=(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 ss(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Et[e.innerType._def.typeName],"null"]};const a=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return a&&{anyOf:[a,{type:"null"}]}}function ns(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 os(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=ls(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=is(e,t);return n!==void 0&&(a.additionalProperties=n),a}function is(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 ls(e){try{return e.isOptional()}catch{return!0}}var cs=(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:W()},r]}:W()},us=(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 ds(e,t){return P(e.type._def,t)}function ps(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 ms(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 fs(){return{not:W()}}function hs(){return W()}var gs=(e,t)=>P(e.innerType._def,t),vs=(e,t,a)=>{switch(t){case w.ZodString:return Sa(e,a);case w.ZodNumber:return ns(e);case w.ZodObject:return os(e,a);case w.ZodBigInt:return Fr(e);case w.ZodBoolean:return Ur();case w.ZodDate:return _a(e,a);case w.ZodUndefined:return fs();case w.ZodNull:return ts();case w.ZodArray:return Zr(e,a);case w.ZodUnion:case w.ZodDiscriminatedUnion:return as(e,a);case w.ZodIntersection:return Gr(e,a);case w.ZodTuple:return ms(e,a);case w.ZodRecord:return Ta(e,a);case w.ZodLiteral:return Yr(e);case w.ZodEnum:return zr(e);case w.ZodNativeEnum:return Xr(e);case w.ZodNullable:return ss(e,a);case w.ZodOptional:return cs(e,a);case w.ZodMap:return Kr(e,a);case w.ZodSet:return ps(e,a);case w.ZodLazy:return()=>e.getter()._def;case w.ZodPromise:return ds(e,a);case w.ZodNaN:case w.ZodNever:return es();case w.ZodEffects:return Jr(e,a);case w.ZodAny:return W();case w.ZodUnknown:return hs();case w.ZodDefault:return qr(e,a);case w.ZodBranded:return Ea(e,a);case w.ZodReadonly:return gs(e,a);case w.ZodCatch:return Vr(e,a);case w.ZodPipeline:return us(e,a);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(r=>{})()}},ys=(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!==jr)return u}if(s&&!a){const u=bs(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=vs(e,e.typeName,t),o=typeof i=="function"?P(i(),t):i;if(o&&Is(e,t,o),t.postProcess){const u=t.postProcess(o,e,t);return n.jsonSchema=o,u}return n.jsonSchema=o,o}var bs=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:ys(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`),W()):t.$refStrategy==="seen"?W():void 0}},Is=(e,t,a)=>(e.description&&(a.description=e.description),a),Es=e=>{const t=Lr(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}]))}},_s=(e,t)=>{var a;const r=Es(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:W()}},{}):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:W(),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},_t=Symbol.for("vercel.ai.schema");function Ss(e){let t;return()=>(t==null&&(t=e()),t)}function dt(e,{validate:t}={}){return{[_t]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function Ts(e){return typeof e=="object"&&e!==null&&_t in e&&e[_t]===!0&&"jsonSchema"in e&&"validate"in e}function Rt(e){return e==null?dt({properties:{},additionalProperties:!1}):Ts(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Ma(e):Ms(e):e()}function Ms(e){return dt(()=>Ct(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 Oe({value:t,cause:a.issues})}}})}function ws(e,t){var a;const r=(a=void 0)!=null?a:!1;return dt(()=>_s(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 As(e,t){var a;const r=(a=void 0)!=null?a:!1;return dt(()=>Ct(tr(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async s=>{const n=await er(e,s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Cs(e){return"_zod"in e}function Ma(e,t){return Cs(e)?As(e):ws(e)}async function Kt({value:e,schema:t,context:a}){const r=await ze({value:e,schema:t,context:a});if(!r.success)throw Oe.wrap({value:e,cause:r.error,context:a});return r.value}async function ze({value:e,schema:t,context:a}){const r=Rt(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:Oe.wrap({value:e,cause:s.error,context:a}),rawValue:e}}catch(s){return{success:!1,error:Oe.wrap({value:e,cause:s,context:a}),rawValue:e}}}async function Se({text:e,schema:t}){try{const a=$r(e);return t==null?{success:!0,value:a,rawValue:a}:await ze({value:a,schema:t})}catch(a){return{success:!1,error:zt.isInstance(a)?a:new zt({text:e,cause:a}),rawValue:void 0}}}function Rs({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new fr).pipeThrough(new TransformStream({async transform({data:a},r){a!=="[DONE]"&&r.enqueue(await Se({text:a,schema:t}))}}))}async function me(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var xs=Object.defineProperty,ks=(e,t)=>{for(var a in t)xs(e,a,{get:t[a],enumerable:!0})},wa="AI_NoObjectGeneratedError",Aa=`vercel.ai.error.${wa}`,Os=Symbol.for(Aa),Ca,he=class extends oe{constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:s,finishReason:n}){super({name:wa,message:e,cause:t}),this[Ca]=!0,this.text=a,this.response=r,this.usage=s,this.finishReason=n}static isInstance(e){return oe.hasMarker(e,Aa)}};Ca=Os;var Ra="AI_UIMessageStreamError",xa=`vercel.ai.error.${Ra}`,Ps=Symbol.for(xa),ka,Ae=class extends oe{constructor({chunkType:e,chunkId:t,message:a}){super({name:Ra,message:a}),this[ka]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return oe.hasMarker(e,xa)}};ka=Ps;var Oa=q([m(),it(Uint8Array),it(ArrayBuffer),ra(e=>{var t,a;return(a=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?a:!1},{message:"Must be a Buffer"})]),We=ar(()=>q([rr(),m(),sr(),V(),qe(m(),We.optional()),Ge(We)])),R=qe(m(),qe(m(),We.optional())),Pa=D({type:_("text"),text:m(),providerOptions:R.optional()}),Ns=D({type:_("image"),image:q([Oa,it(URL)]),mediaType:m().optional(),providerOptions:R.optional()}),Na=D({type:_("file"),data:q([Oa,it(URL)]),filename:m().optional(),mediaType:m(),providerOptions:R.optional()}),Ds=D({type:_("reasoning"),text:m(),providerOptions:R.optional()}),$s=D({type:_("tool-call"),toolCallId:m(),toolName:m(),input:de(),providerOptions:R.optional(),providerExecuted:V().optional()}),js=nr("type",[D({type:_("text"),value:m(),providerOptions:R.optional()}),D({type:_("json"),value:We,providerOptions:R.optional()}),D({type:_("execution-denied"),reason:m().optional(),providerOptions:R.optional()}),D({type:_("error-text"),value:m(),providerOptions:R.optional()}),D({type:_("error-json"),value:We,providerOptions:R.optional()}),D({type:_("content"),value:Ge(q([D({type:_("text"),text:m(),providerOptions:R.optional()}),D({type:_("media"),data:m(),mediaType:m()}),D({type:_("file-data"),data:m(),mediaType:m(),filename:m().optional(),providerOptions:R.optional()}),D({type:_("file-url"),url:m(),providerOptions:R.optional()}),D({type:_("file-id"),fileId:q([m(),qe(m(),m())]),providerOptions:R.optional()}),D({type:_("image-data"),data:m(),mediaType:m(),providerOptions:R.optional()}),D({type:_("image-url"),url:m(),providerOptions:R.optional()}),D({type:_("image-file-id"),fileId:q([m(),qe(m(),m())]),providerOptions:R.optional()}),D({type:_("custom"),providerOptions:R.optional()})]))})]),Da=D({type:_("tool-result"),toolCallId:m(),toolName:m(),output:js,providerOptions:R.optional()}),Ls=D({type:_("tool-approval-request"),approvalId:m(),toolCallId:m()}),Zs=D({type:_("tool-approval-response"),approvalId:m(),approved:V(),reason:m().optional()}),Fs=D({role:_("system"),content:m(),providerOptions:R.optional()}),Us=D({role:_("user"),content:q([m(),Ge(q([Pa,Ns,Na]))]),providerOptions:R.optional()}),Vs=D({role:_("assistant"),content:q([m(),Ge(q([Pa,Na,Ds,$s,Da,Ls]))]),providerOptions:R.optional()}),Bs=D({role:_("tool"),content:Ge(q([Da,Zs])),providerOptions:R.optional()});q([Fs,Us,Vs,Bs]);function $a(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]=$a(n,s):a[r]=s}return a}var qs={};ks(qs,{array:()=>Gs,choice:()=>Ys,json:()=>Hs,object:()=>Ws,text:()=>zs});function Js(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 Qe(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Se({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Se({text:Js(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var zs=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),Ws=({schema:e,name:t,description:a})=>{const r=Rt(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 Se({text:s});if(!i.success)throw new he({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 ze({value:i.value,schema:r});if(!o.success)throw new he({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 Qe(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:n.value}}},createElementStreamTransform(){}}},Gs=({element:e,name:t,description:a})=>{const r=Rt(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 Se({text:s});if(!i.success)throw new he({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 he({message:"No object generated: response did not match schema.",cause:new Oe({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 ze({value:u,schema:r});if(!l.success)throw new he({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 Qe(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 ze({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])}})}}},Ys=({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 Se({text:r});if(!n.success)throw new he({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 he({message:"No object generated: response did not match schema.",cause:new Oe({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 Qe(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(){}}),Hs=({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 Se({text:a});if(!s.success)throw new he({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 Qe(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(){}});He({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 Ta(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}=Sa(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}=Ea(e.keyType._def,t);return{...u,propertyNames:d}}}return u}function Kr(e,t){if(t.mapStrategy==="record")return Ta(e,t);const a=P(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||W(),r=P(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||W();return{type:"array",maxItems:125,items:{type:"array",items:[a,r],minItems:2,maxItems:2}}}function Xr(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 es(){return{not:W()}}function ts(){return{type:"null"}}var Et={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function as(e,t){const a=e.options instanceof Map?Array.from(e.options.values()):e.options;if(a.every(r=>r._def.typeName in Et&&(!r._def.checks||!r._def.checks.length))){const r=a.reduce((s,n)=>{const i=Et[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 rs(e,t)}var rs=(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 ss(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Et[e.innerType._def.typeName],"null"]};const a=P(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return a&&{anyOf:[a,{type:"null"}]}}function ns(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 os(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=ls(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=is(e,t);return n!==void 0&&(a.additionalProperties=n),a}function is(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 ls(e){try{return e.isOptional()}catch{return!0}}var cs=(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:W()},r]}:W()},us=(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 ds(e,t){return P(e.type._def,t)}function ps(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 ms(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 fs(){return{not:W()}}function hs(){return W()}var gs=(e,t)=>P(e.innerType._def,t),vs=(e,t,a)=>{switch(t){case w.ZodString:return Sa(e,a);case w.ZodNumber:return ns(e);case w.ZodObject:return os(e,a);case w.ZodBigInt:return Fr(e);case w.ZodBoolean:return Ur();case w.ZodDate:return _a(e,a);case w.ZodUndefined:return fs();case w.ZodNull:return ts();case w.ZodArray:return Zr(e,a);case w.ZodUnion:case w.ZodDiscriminatedUnion:return as(e,a);case w.ZodIntersection:return Gr(e,a);case w.ZodTuple:return ms(e,a);case w.ZodRecord:return Ta(e,a);case w.ZodLiteral:return Yr(e);case w.ZodEnum:return zr(e);case w.ZodNativeEnum:return Xr(e);case w.ZodNullable:return ss(e,a);case w.ZodOptional:return cs(e,a);case w.ZodMap:return Kr(e,a);case w.ZodSet:return ps(e,a);case w.ZodLazy:return()=>e.getter()._def;case w.ZodPromise:return ds(e,a);case w.ZodNaN:case w.ZodNever:return es();case w.ZodEffects:return Jr(e,a);case w.ZodAny:return W();case w.ZodUnknown:return hs();case w.ZodDefault:return Br(e,a);case w.ZodBranded:return Ea(e,a);case w.ZodReadonly:return gs(e,a);case w.ZodCatch:return Vr(e,a);case w.ZodPipeline:return us(e,a);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(r=>{})()}},ys=(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!==jr)return u}if(s&&!a){const u=bs(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=vs(e,e.typeName,t),o=typeof i=="function"?P(i(),t):i;if(o&&Is(e,t,o),t.postProcess){const u=t.postProcess(o,e,t);return n.jsonSchema=o,u}return n.jsonSchema=o,o}var bs=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:ys(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`),W()):t.$refStrategy==="seen"?W():void 0}},Is=(e,t,a)=>(e.description&&(a.description=e.description),a),Es=e=>{const t=Lr(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}]))}},_s=(e,t)=>{var a;const r=Es(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:W()}},{}):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:W(),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},_t=Symbol.for("vercel.ai.schema");function Ss(e){let t;return()=>(t==null&&(t=e()),t)}function dt(e,{validate:t}={}){return{[_t]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function Ts(e){return typeof e=="object"&&e!==null&&_t in e&&e[_t]===!0&&"jsonSchema"in e&&"validate"in e}function Rt(e){return e==null?dt({properties:{},additionalProperties:!1}):Ts(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Ma(e):Ms(e):e()}function Ms(e){return dt(()=>Ct(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 Oe({value:t,cause:a.issues})}}})}function ws(e,t){var a;const r=(a=void 0)!=null?a:!1;return dt(()=>_s(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 As(e,t){var a;const r=(a=void 0)!=null?a:!1;return dt(()=>Ct(tr(e,{target:"draft-7",io:"input",reused:r?"ref":"inline"})),{validate:async s=>{const n=await er(e,s);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Cs(e){return"_zod"in e}function Ma(e,t){return Cs(e)?As(e):ws(e)}async function Kt({value:e,schema:t,context:a}){const r=await ze({value:e,schema:t,context:a});if(!r.success)throw Oe.wrap({value:e,cause:r.error,context:a});return r.value}async function ze({value:e,schema:t,context:a}){const r=Rt(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:Oe.wrap({value:e,cause:s.error,context:a}),rawValue:e}}catch(s){return{success:!1,error:Oe.wrap({value:e,cause:s,context:a}),rawValue:e}}}async function Se({text:e,schema:t}){try{const a=$r(e);return t==null?{success:!0,value:a,rawValue:a}:await ze({value:a,schema:t})}catch(a){return{success:!1,error:zt.isInstance(a)?a:new zt({text:e,cause:a}),rawValue:void 0}}}function Rs({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new fr).pipeThrough(new TransformStream({async transform({data:a},r){a!=="[DONE]"&&r.enqueue(await Se({text:a,schema:t}))}}))}async function me(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var xs=Object.defineProperty,ks=(e,t)=>{for(var a in t)xs(e,a,{get:t[a],enumerable:!0})},wa="AI_NoObjectGeneratedError",Aa=`vercel.ai.error.${wa}`,Os=Symbol.for(Aa),Ca,he=class extends oe{constructor({message:e="No object generated.",cause:t,text:a,response:r,usage:s,finishReason:n}){super({name:wa,message:e,cause:t}),this[Ca]=!0,this.text=a,this.response=r,this.usage=s,this.finishReason=n}static isInstance(e){return oe.hasMarker(e,Aa)}};Ca=Os;var Ra="AI_UIMessageStreamError",xa=`vercel.ai.error.${Ra}`,Ps=Symbol.for(xa),ka,Ae=class extends oe{constructor({chunkType:e,chunkId:t,message:a}){super({name:Ra,message:a}),this[ka]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return oe.hasMarker(e,xa)}};ka=Ps;var Oa=B([m(),it(Uint8Array),it(ArrayBuffer),ra(e=>{var t,a;return(a=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?a:!1},{message:"Must be a Buffer"})]),We=ar(()=>B([rr(),m(),sr(),V(),Be(m(),We.optional()),Ge(We)])),C=Be(m(),Be(m(),We.optional())),Pa=D({type:_("text"),text:m(),providerOptions:C.optional()}),Ns=D({type:_("image"),image:B([Oa,it(URL)]),mediaType:m().optional(),providerOptions:C.optional()}),Na=D({type:_("file"),data:B([Oa,it(URL)]),filename:m().optional(),mediaType:m(),providerOptions:C.optional()}),Ds=D({type:_("reasoning"),text:m(),providerOptions:C.optional()}),$s=D({type:_("tool-call"),toolCallId:m(),toolName:m(),input:de(),providerOptions:C.optional(),providerExecuted:V().optional()}),js=nr("type",[D({type:_("text"),value:m(),providerOptions:C.optional()}),D({type:_("json"),value:We,providerOptions:C.optional()}),D({type:_("execution-denied"),reason:m().optional(),providerOptions:C.optional()}),D({type:_("error-text"),value:m(),providerOptions:C.optional()}),D({type:_("error-json"),value:We,providerOptions:C.optional()}),D({type:_("content"),value:Ge(B([D({type:_("text"),text:m(),providerOptions:C.optional()}),D({type:_("media"),data:m(),mediaType:m()}),D({type:_("file-data"),data:m(),mediaType:m(),filename:m().optional(),providerOptions:C.optional()}),D({type:_("file-url"),url:m(),providerOptions:C.optional()}),D({type:_("file-id"),fileId:B([m(),Be(m(),m())]),providerOptions:C.optional()}),D({type:_("image-data"),data:m(),mediaType:m(),providerOptions:C.optional()}),D({type:_("image-url"),url:m(),providerOptions:C.optional()}),D({type:_("image-file-id"),fileId:B([m(),Be(m(),m())]),providerOptions:C.optional()}),D({type:_("custom"),providerOptions:C.optional()})]))})]),Da=D({type:_("tool-result"),toolCallId:m(),toolName:m(),output:js,providerOptions:C.optional()}),Ls=D({type:_("tool-approval-request"),approvalId:m(),toolCallId:m()}),Zs=D({type:_("tool-approval-response"),approvalId:m(),approved:V(),reason:m().optional()}),Fs=D({role:_("system"),content:m(),providerOptions:C.optional()}),Us=D({role:_("user"),content:B([m(),Ge(B([Pa,Ns,Na]))]),providerOptions:C.optional()}),Vs=D({role:_("assistant"),content:B([m(),Ge(B([Pa,Na,Ds,$s,Da,Ls]))]),providerOptions:C.optional()}),qs=D({role:_("tool"),content:Ge(B([Da,Zs])),providerOptions:C.optional()});B([Fs,Us,Vs,qs]);function $a(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]=$a(n,s):a[r]=s}return a}var Bs={};ks(Bs,{array:()=>Gs,choice:()=>Ys,json:()=>Hs,object:()=>Ws,text:()=>zs});function Js(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 Qe(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Se({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Se({text:Js(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var zs=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){}}),Ws=({schema:e,name:t,description:a})=>{const r=Rt(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 Se({text:s});if(!i.success)throw new he({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 ze({value:i.value,schema:r});if(!o.success)throw new he({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 Qe(s);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:n.value}}},createElementStreamTransform(){}}},Gs=({element:e,name:t,description:a})=>{const r=Rt(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 Se({text:s});if(!i.success)throw new he({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 he({message:"No object generated: response did not match schema.",cause:new Oe({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 ze({value:u,schema:r});if(!l.success)throw new he({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 Qe(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 ze({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])}})}}},Ys=({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 Se({text:r});if(!n.success)throw new he({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 he({message:"No object generated: response did not match schema.",cause:new Oe({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 Qe(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(){}}),Hs=({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 Se({text:a});if(!s.success)throw new he({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 Qe(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(){}});He({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 Qs=Ss(()=>Ma(q([$({type:_("text-start"),id:m(),providerMetadata:R.optional()}),$({type:_("text-delta"),id:m(),delta:m(),providerMetadata:R.optional()}),$({type:_("text-end"),id:m(),providerMetadata:R.optional()}),$({type:_("error"),errorText:m()}),$({type:_("tool-input-start"),toolCallId:m(),toolName:m(),providerExecuted:V().optional(),providerMetadata:R.optional(),dynamic:V().optional(),title:m().optional()}),$({type:_("tool-input-delta"),toolCallId:m(),inputTextDelta:m()}),$({type:_("tool-input-available"),toolCallId:m(),toolName:m(),input:de(),providerExecuted:V().optional(),providerMetadata:R.optional(),dynamic:V().optional(),title:m().optional()}),$({type:_("tool-input-error"),toolCallId:m(),toolName:m(),input:de(),providerExecuted:V().optional(),providerMetadata:R.optional(),dynamic:V().optional(),errorText:m(),title:m().optional()}),$({type:_("tool-approval-request"),approvalId:m(),toolCallId:m()}),$({type:_("tool-output-available"),toolCallId:m(),output:de(),providerExecuted:V().optional(),providerMetadata:R.optional(),dynamic:V().optional(),preliminary:V().optional()}),$({type:_("tool-output-error"),toolCallId:m(),errorText:m(),providerExecuted:V().optional(),providerMetadata:R.optional(),dynamic:V().optional()}),$({type:_("tool-output-denied"),toolCallId:m()}),$({type:_("reasoning-start"),id:m(),providerMetadata:R.optional()}),$({type:_("reasoning-delta"),id:m(),delta:m(),providerMetadata:R.optional()}),$({type:_("reasoning-end"),id:m(),providerMetadata:R.optional()}),$({type:_("source-url"),sourceId:m(),url:m(),title:m().optional(),providerMetadata:R.optional()}),$({type:_("source-document"),sourceId:m(),mediaType:m(),title:m(),filename:m().optional(),providerMetadata:R.optional()}),$({type:_("file"),url:m(),mediaType:m(),providerMetadata:R.optional()}),$({type:ra(e=>typeof e=="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:m().optional(),data:de(),transient:V().optional()}),$({type:_("start-step")}),$({type:_("finish-step")}),$({type:_("start"),messageId:m().optional(),messageMetadata:de().optional()}),$({type:_("finish"),finishReason:or(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:de().optional()}),$({type:_("abort"),reason:m().optional()}),$({type:_("message-metadata"),messageMetadata:de()})])));function Ks(e){return e.type.startsWith("data-")}function St(e){return e.type.startsWith("tool-")}function Xs(e){return e.type==="dynamic-tool"}function Pe(e){return St(e)||Xs(e)}function Xt(e){return e.type.split("-").slice(1).join("-")}function en({lastMessage:e,messageId:t}){return{message:e?.role==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function tn({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,b;function I(c){const A=l.message.parts.filter(Pe).find(g=>g.toolCallId===c);if(A==null)throw new Ae({chunkType:"tool-invocation",chunkId:c,message:`No tool invocation found for tool call ID "${c}".`});return A}function C(c){var k;const A=l.message.parts.find(E=>St(E)&&E.toolCallId===c.toolCallId),g=c,h=A;if(A!=null){A.state=c.state,h.input=g.input,h.output=g.output,h.errorText=g.errorText,h.rawInput=g.rawInput,h.preliminary=g.preliminary,c.title!==void 0&&(h.title=c.title),h.providerExecuted=(k=g.providerExecuted)!=null?k:A.providerExecuted;const E=g.providerMetadata;if(E!=null)if(c.state==="output-available"||c.state==="output-error"){const N=A;N.resultProviderMetadata=E}else A.callProviderMetadata=E}else l.message.parts.push({type:`tool-${c.toolName}`,toolCallId:c.toolCallId,state:c.state,title:c.title,input:g.input,output:g.output,rawInput:g.rawInput,errorText:g.errorText,providerExecuted:g.providerExecuted,preliminary:g.preliminary,...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}:{}})}function M(c){var k,A;const g=l.message.parts.find(N=>N.type==="dynamic-tool"&&N.toolCallId===c.toolCallId),h=c,E=g;if(g!=null){g.state=c.state,E.toolName=c.toolName,E.input=h.input,E.output=h.output,E.errorText=h.errorText,E.rawInput=(k=h.rawInput)!=null?k:E.rawInput,E.preliminary=h.preliminary,c.title!==void 0&&(E.title=c.title),E.providerExecuted=(A=h.providerExecuted)!=null?A:g.providerExecuted;const N=h.providerMetadata;if(N!=null)if(c.state==="output-available"||c.state==="output-error"){const J=g;J.resultProviderMetadata=N}else g.callProviderMetadata=N}else l.message.parts.push({type:"dynamic-tool",toolName:c.toolName,toolCallId:c.toolCallId,state:c.state,input:h.input,output:h.output,errorText:h.errorText,preliminary:h.preliminary,providerExecuted:h.providerExecuted,title:c.title,...h.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:h.providerMetadata}:{},...h.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:h.providerMetadata}:{}})}async function x(c){if(c!=null){const k=l.message.metadata!=null?$a(l.message.metadata,c):c;t!=null&&await Kt({value:k,schema:t,context:{field:"message.metadata",entityId:l.message.id}}),l.message.metadata=k}}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 Ae({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 Ae({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 Ae({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 Ae({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=(b=o.providerMetadata)!=null?b: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(St);l.partialToolCalls[o.toolCallId]={text:"",toolName:o.toolName,index:c.length,dynamic:o.dynamic,title:o.title},o.dynamic?M({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-streaming",input:void 0,providerExecuted:o.providerExecuted,title:o.title,providerMetadata:o.providerMetadata}):C({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 Ae({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:k}=await Qe(c.text);c.dynamic?M({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:k,title:c.title}):C({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:k,title:c.title}),d();break}case"tool-input-available":{o.dynamic?M({toolCallId:o.toolCallId,toolName:o.toolName,state:"input-available",input:o.input,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:o.title}):C({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(Pe).find(A=>A.toolCallId===o.toolCallId);(c!=null?c.type==="dynamic-tool":!!o.dynamic)?M({toolCallId:o.toolCallId,toolName:o.toolName,state:"output-error",input:o.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata}):C({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=I(o.toolCallId);c.state="approval-requested",c.approval={id:o.approvalId},d();break}case"tool-output-denied":{const c=I(o.toolCallId);c.state="output-denied",d();break}case"tool-output-available":{const c=I(o.toolCallId);c.type==="dynamic-tool"?M({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}):C({toolCallId:o.toolCallId,toolName:Xt(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=I(o.toolCallId);c.type==="dynamic-tool"?M({toolCallId:o.toolCallId,toolName:c.toolName,state:"output-error",input:c.input,errorText:o.errorText,providerExecuted:o.providerExecuted,providerMetadata:o.providerMetadata,title:c.title}):C({toolCallId:o.toolCallId,toolName:Xt(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 x(o.messageMetadata),(o.messageId!=null||o.messageMetadata!=null)&&d();break}case"finish":{o.finishReason!=null&&(l.finishReason=o.finishReason),await x(o.messageMetadata),o.messageMetadata!=null&&d();break}case"message-metadata":{await x(o.messageMetadata),o.messageMetadata!=null&&d();break}case"error":{s?.(new Error(o.errorText));break}default:if(Ks(o)){if(a?.[o.type]!=null){const A=l.message.parts.findIndex(h=>"id"in h&&"data"in h&&h.id===o.id&&h.type===o.type),g=A>=0?A:l.message.parts.length;await Kt({value:o.data,schema:a[o.type],context:{field:`message.parts[${g}].data`,entityName:o.type,entityId:o.id}})}const c=o;if(c.transient){i?.(c);break}const k=c.id!=null?l.message.parts.find(A=>c.type===A.type&&c.id===A.id):void 0;k!=null?k.data=c.data:l.message.parts.push(c),i?.(c),d()}}u.enqueue(o)})}}))}async function an({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()}}He({prefix:"aitxt",size:24});He({prefix:"aiobj",size:24});var rn=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()})}};He({prefix:"aiobj",size:24});async function sn(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 nn=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={...we(u),...we(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?we(p.headers):d,b=p?.body!==void 0?p.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},I=(s=p?.credentials)!=null?s:l,M=await((n=this.fetch)!=null?n:globalThis.fetch)(v,{method:"POST",headers:{"Content-Type":"application/json",...f},body:JSON.stringify(b),credentials:I,signal:e});if(!M.ok)throw new Error((i=await M.text())!=null?i:"Failed to fetch the chat response.");if(!M.body)throw new Error("The response body is empty.");return this.processResponseStream(M.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={...we(o),...we(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?we(d.headers):l,f=(r=d?.credentials)!=null?r:u,I=await((s=this.fetch)!=null?s:globalThis.fetch)(p,{method:"GET",headers:v,credentials:f});if(I.status===204)return null;if(!I.ok)throw new Error((n=await I.text())!=null?n:"Failed to fetch the chat response.");if(!I.body)throw new Error("The response body is empty.");return this.processResponseStream(I.body)}},ja=class extends nn{constructor(e={}){super(e)}processResponseStream(e){return Rs({stream:e,schema:Qs}).pipeThrough(new TransformStream({async transform(t,a){if(!t.success)throw t.error;a.enqueue(t.value)}}))}},on=class{constructor({generateId:e=Or,id:t=e(),transport:a=new ja,messageMetadataSchema:r,dataPartSchemas:s,state:n,onError:i,onToolCall:o,onFinish:u,onData:l,sendAutomaticallyWhen:d}){this.activeResponse=void 0,this.jobExecutor=new rn,this.sendMessage=async(p,v)=>{var f,b,I,C;if(p==null){await this.makeRequest({trigger:"submit-message",messageId:(f=this.lastMessage)==null?void 0:f.id,...v});return}let M;if("text"in p||"files"in p?M={parts:[...Array.isArray(p.files)?p.files:await sn(p.files),..."text"in p&&p.text!=null?[{type:"text",text:p.text}]:[]]}:M=p,p.messageId!=null){const x=this.state.messages.findIndex(c=>c.id===p.messageId);if(x===-1)throw new Error(`message with id ${p.messageId} not found`);if(this.state.messages[x].role!=="user")throw new Error(`message with id ${p.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,x+1),this.state.replaceMessage(x,{...M,id:p.messageId,role:(b=M.role)!=null?b:"user",metadata:p.metadata})}else this.state.pushMessage({...M,id:(I=M.id)!=null?I:this.generateId(),role:(C=M.role)!=null?C:"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(b=>b.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:b})=>this.jobExecutor.run(async()=>{const I=this.state.messages,C=I[I.length-1],M=x=>Pe(x)&&x.state==="approval-requested"&&x.approval.id===p?{...x,state:"approval-responded",approval:{id:p,approved:v,reason:f}}:x;this.state.replaceMessage(I.length-1,{...C,parts:C.parts.map(M)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(M)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(x=>{var c;x&&this.makeRequest({trigger:"submit-message",messageId:(c=this.lastMessage)==null?void 0:c.id,...b})})}),this.addToolOutput=async({state:p="output-available",toolCallId:v,output:f,errorText:b,options:I})=>this.jobExecutor.run(async()=>{const C=this.state.messages,M=C[C.length-1],x=c=>Pe(c)&&c.toolCallId===v?{...c,state:p,output:f,errorText:b}:c;this.state.replaceMessage(C.length-1,{...M,parts:M.parts.map(x)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(x)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(c=>{var k;c&&this.makeRequest({trigger:"submit-message",messageId:(k=this.lastMessage)==null?void 0:k.id,...I})})}),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:en({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};f.abortController.signal.addEventListener("abort",()=>{d=!0}),this.activeResponse=f;let b;e==="resume-stream"?b=u:b=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 I=C=>this.jobExecutor.run(()=>C({state:f.state,write:()=>{var M;this.setStatus({status:"streaming"}),f.state.message.id===((M=this.lastMessage)==null?void 0:M.id)?this.state.replaceMessage(this.state.messages.length-1,f.state.message):this.state.pushMessage(f.state.message)}}));await an({stream:tn({stream:b,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:I,onError:C=>{throw C}}),onError:C=>{throw C}}),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 ln({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(Pe);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 cn({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(Pe).filter(s=>!s.providerExecuted);return r.length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error")}var bt,ea;function un(){if(ea)return bt;ea=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 bt=e,bt}var dn=un();const pn=ir(dn);var La=(e,t,a)=>{if(!t.has(e))throw TypeError("Cannot "+a)},j=(e,t,a)=>(La(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)},pe=(e,t,a,r)=>(La(e,t,"write to private field"),t.set(e,a),a);function mn(e,t){return t!=null?pn(e,t):e}var Q,nt,ot,Ue,Ve,Be,Ce,Tt,Mt,fn=class{constructor(e=[]){re(this,Q,void 0),re(this,nt,"ready"),re(this,ot,void 0),re(this,Ue,new Set),re(this,Ve,new Set),re(this,Be,new Set),this.pushMessage=t=>{pe(this,Q,j(this,Q).concat(t)),j(this,Ce).call(this)},this.popMessage=()=>{pe(this,Q,j(this,Q).slice(0,-1)),j(this,Ce).call(this)},this.replaceMessage=(t,a)=>{pe(this,Q,[...j(this,Q).slice(0,t),this.snapshot(a),...j(this,Q).slice(t+1)]),j(this,Ce).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,a)=>{const r=a?mn(t,a):t;return j(this,Ue).add(r),()=>{j(this,Ue).delete(r)}},this["~registerStatusCallback"]=t=>(j(this,Ve).add(t),()=>{j(this,Ve).delete(t)}),this["~registerErrorCallback"]=t=>(j(this,Be).add(t),()=>{j(this,Be).delete(t)}),re(this,Ce,()=>{j(this,Ue).forEach(t=>t())}),re(this,Tt,()=>{j(this,Ve).forEach(t=>t())}),re(this,Mt,()=>{j(this,Be).forEach(t=>t())}),pe(this,Q,e)}get status(){return j(this,nt)}set status(e){pe(this,nt,e),j(this,Tt).call(this)}get error(){return j(this,ot)}set error(e){pe(this,ot,e),j(this,Mt).call(this)}get messages(){return j(this,Q)}set messages(e){pe(this,Q,[...e]),j(this,Ce).call(this)}};Q=new WeakMap;nt=new WeakMap;ot=new WeakMap;Ue=new WeakMap;Ve=new WeakMap;Be=new WeakMap;Ce=new WeakMap;Tt=new WeakMap;Mt=new WeakMap;var Re,ta=class extends on{constructor({messages:e,...t}){const a=new fn(e);super({...t,state:a}),re(this,Re,void 0),this["~registerMessagesCallback"]=(r,s)=>j(this,Re)["~registerMessagesCallback"](r,s),this["~registerStatusCallback"]=r=>j(this,Re)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>j(this,Re)["~registerErrorCallback"](r),pe(this,Re,a)}};Re=new WeakMap;function hn({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,b;return(b=(f=r.current).onToolCall)==null?void 0:b.call(f,v)},onData:v=>{var f,b;return(b=(f=r.current).onData)==null?void 0:b.call(f,v)},onFinish:v=>{var f,b;return(b=(f=r.current).onFinish)==null?void 0:b.call(f,v)},onError:v=>{var f,b;return(b=(f=r.current).onError)==null?void 0:b.call(f,v)},sendAutomaticallyWhen:v=>{var f,b,I;return(I=(b=(f=r.current).sendAutomaticallyWhen)==null?void 0:b.call(f,v))!=null?I:!1}},n=T.useRef("chat"in a?a.chat:new ta(s));("chat"in a&&a.chat!==n.current||"id"in a&&n.current.id!==a.id)&&(n.current="chat"in a?a.chat:new ta(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 gn=1e4,Za="true";function pt(e,t){return ne.chatAutosend(e,t)}function vn(e){return e==="pending"||e==="sending"}function yn(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"||!vn(t.status)?null:t}function bn(e,t,a,r,s=Date.now()){const n={message:r,createdAt:s,status:"pending"};return e.setItem(pt(t,a),JSON.stringify(n)),n}function In(e,t,a){const r=pt(t,a),s=yn(e.getItem(r));return s||(e.removeItem(r),null)}function En(e,t,a,r=Date.now()){const s=pt(t,a),n=In(e,t,a);return!n||n.status!=="pending"?null:r-n.createdAt>=gn?(e.removeItem(s),null):(e.setItem(s,JSON.stringify({...n,status:"sending"})),{message:n.message,createdAt:n.createdAt})}function _n(e,t,a){e.removeItem(pt(t,a))}function Sn(e){const t=Ye.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=sa(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 Qs=Ss(()=>Ma(B([$({type:_("text-start"),id:m(),providerMetadata:C.optional()}),$({type:_("text-delta"),id:m(),delta:m(),providerMetadata:C.optional()}),$({type:_("text-end"),id:m(),providerMetadata:C.optional()}),$({type:_("error"),errorText:m()}),$({type:_("tool-input-start"),toolCallId:m(),toolName:m(),providerExecuted:V().optional(),providerMetadata:C.optional(),dynamic:V().optional(),title:m().optional()}),$({type:_("tool-input-delta"),toolCallId:m(),inputTextDelta:m()}),$({type:_("tool-input-available"),toolCallId:m(),toolName:m(),input:de(),providerExecuted:V().optional(),providerMetadata:C.optional(),dynamic:V().optional(),title:m().optional()}),$({type:_("tool-input-error"),toolCallId:m(),toolName:m(),input:de(),providerExecuted:V().optional(),providerMetadata:C.optional(),dynamic:V().optional(),errorText:m(),title:m().optional()}),$({type:_("tool-approval-request"),approvalId:m(),toolCallId:m()}),$({type:_("tool-output-available"),toolCallId:m(),output:de(),providerExecuted:V().optional(),providerMetadata:C.optional(),dynamic:V().optional(),preliminary:V().optional()}),$({type:_("tool-output-error"),toolCallId:m(),errorText:m(),providerExecuted:V().optional(),providerMetadata:C.optional(),dynamic:V().optional()}),$({type:_("tool-output-denied"),toolCallId:m()}),$({type:_("reasoning-start"),id:m(),providerMetadata:C.optional()}),$({type:_("reasoning-delta"),id:m(),delta:m(),providerMetadata:C.optional()}),$({type:_("reasoning-end"),id:m(),providerMetadata:C.optional()}),$({type:_("source-url"),sourceId:m(),url:m(),title:m().optional(),providerMetadata:C.optional()}),$({type:_("source-document"),sourceId:m(),mediaType:m(),title:m(),filename:m().optional(),providerMetadata:C.optional()}),$({type:_("file"),url:m(),mediaType:m(),providerMetadata:C.optional()}),$({type:ra(e=>typeof e=="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:m().optional(),data:de(),transient:V().optional()}),$({type:_("start-step")}),$({type:_("finish-step")}),$({type:_("start"),messageId:m().optional(),messageMetadata:de().optional()}),$({type:_("finish"),finishReason:or(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:de().optional()}),$({type:_("abort"),reason:m().optional()}),$({type:_("message-metadata"),messageMetadata:de()})])));function Ks(e){return e.type.startsWith("data-")}function St(e){return e.type.startsWith("tool-")}function Xs(e){return e.type==="dynamic-tool"}function Pe(e){return St(e)||Xs(e)}function Xt(e){return e.type.split("-").slice(1).join("-")}function en({lastMessage:e,messageId:t}){return{message:e?.role==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function tn({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,b;function I(c){const R=l.message.parts.filter(Pe).find(h=>h.toolCallId===c);if(R==null)throw new Ae({chunkType:"tool-invocation",chunkId:c,message:`No tool invocation found for tool call ID "${c}".`});return R}function A(c){var O;const R=l.message.parts.find(E=>St(E)&&E.toolCallId===c.toolCallId),h=c,g=R;if(R!=null){R.state=c.state,g.input=h.input,g.output=h.output,g.errorText=h.errorText,g.rawInput=h.rawInput,g.preliminary=h.preliminary,c.title!==void 0&&(g.title=c.title),g.providerExecuted=(O=h.providerExecuted)!=null?O:R.providerExecuted;const E=h.providerMetadata;if(E!=null)if(c.state==="output-available"||c.state==="output-error"){const N=R;N.resultProviderMetadata=E}else R.callProviderMetadata=E}else l.message.parts.push({type:`tool-${c.toolName}`,toolCallId:c.toolCallId,state:c.state,title:c.title,input:h.input,output:h.output,rawInput:h.rawInput,errorText:h.errorText,providerExecuted:h.providerExecuted,preliminary:h.preliminary,...h.providerMetadata!=null&&(c.state==="output-available"||c.state==="output-error")?{resultProviderMetadata:h.providerMetadata}:{},...h.providerMetadata!=null&&!(c.state==="output-available"||c.state==="output-error")?{callProviderMetadata:h.providerMetadata}:{}})}function M(c){var O,R;const h=l.message.parts.find(N=>N.type==="dynamic-tool"&&N.toolCallId===c.toolCallId),g=c,E=h;if(h!=null){h.state=c.state,E.toolName=c.toolName,E.input=g.input,E.output=g.output,E.errorText=g.errorText,E.rawInput=(O=g.rawInput)!=null?O:E.rawInput,E.preliminary=g.preliminary,c.title!==void 0&&(E.title=c.title),E.providerExecuted=(R=g.providerExecuted)!=null?R:h.providerExecuted;const N=g.providerMetadata;if(N!=null)if(c.state==="output-available"||c.state==="output-error"){const J=h;J.resultProviderMetadata=N}else h.callProviderMetadata=N}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 x(c){if(c!=null){const O=l.message.metadata!=null?$a(l.message.metadata,c):c;t!=null&&await Kt({value:O,schema:t,context:{field:"message.metadata",entityId:l.message.id}}),l.message.metadata=O}}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 Ae({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 Ae({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 Ae({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 Ae({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=(b=o.providerMetadata)!=null?b: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(St);l.partialToolCalls[o.toolCallId]={text:"",toolName:o.toolName,index:c.length,dynamic:o.dynamic,title:o.title},o.dynamic?M({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 Ae({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:O}=await Qe(c.text);c.dynamic?M({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:O,title:c.title}):A({toolCallId:o.toolCallId,toolName:c.toolName,state:"input-streaming",input:O,title:c.title}),d();break}case"tool-input-available":{o.dynamic?M({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(Pe).find(R=>R.toolCallId===o.toolCallId);(c!=null?c.type==="dynamic-tool":!!o.dynamic)?M({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=I(o.toolCallId);c.state="approval-requested",c.approval={id:o.approvalId},d();break}case"tool-output-denied":{const c=I(o.toolCallId);c.state="output-denied",d();break}case"tool-output-available":{const c=I(o.toolCallId);c.type==="dynamic-tool"?M({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:Xt(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=I(o.toolCallId);c.type==="dynamic-tool"?M({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:Xt(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 x(o.messageMetadata),(o.messageId!=null||o.messageMetadata!=null)&&d();break}case"finish":{o.finishReason!=null&&(l.finishReason=o.finishReason),await x(o.messageMetadata),o.messageMetadata!=null&&d();break}case"message-metadata":{await x(o.messageMetadata),o.messageMetadata!=null&&d();break}case"error":{s?.(new Error(o.errorText));break}default:if(Ks(o)){if(a?.[o.type]!=null){const R=l.message.parts.findIndex(g=>"id"in g&&"data"in g&&g.id===o.id&&g.type===o.type),h=R>=0?R:l.message.parts.length;await Kt({value:o.data,schema:a[o.type],context:{field:`message.parts[${h}].data`,entityName:o.type,entityId:o.id}})}const c=o;if(c.transient){i?.(c);break}const O=c.id!=null?l.message.parts.find(R=>c.type===R.type&&c.id===R.id):void 0;O!=null?O.data=c.data:l.message.parts.push(c),i?.(c),d()}}u.enqueue(o)})}}))}async function an({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()}}He({prefix:"aitxt",size:24});He({prefix:"aiobj",size:24});var rn=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()})}};He({prefix:"aiobj",size:24});async function sn(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 nn=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={...we(u),...we(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?we(p.headers):d,b=p?.body!==void 0?p.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},I=(s=p?.credentials)!=null?s:l,M=await((n=this.fetch)!=null?n:globalThis.fetch)(v,{method:"POST",headers:{"Content-Type":"application/json",...f},body:JSON.stringify(b),credentials:I,signal:e});if(!M.ok)throw new Error((i=await M.text())!=null?i:"Failed to fetch the chat response.");if(!M.body)throw new Error("The response body is empty.");return this.processResponseStream(M.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={...we(o),...we(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?we(d.headers):l,f=(r=d?.credentials)!=null?r:u,I=await((s=this.fetch)!=null?s:globalThis.fetch)(p,{method:"GET",headers:v,credentials:f});if(I.status===204)return null;if(!I.ok)throw new Error((n=await I.text())!=null?n:"Failed to fetch the chat response.");if(!I.body)throw new Error("The response body is empty.");return this.processResponseStream(I.body)}},ja=class extends nn{constructor(e={}){super(e)}processResponseStream(e){return Rs({stream:e,schema:Qs}).pipeThrough(new TransformStream({async transform(t,a){if(!t.success)throw t.error;a.enqueue(t.value)}}))}},on=class{constructor({generateId:e=Or,id:t=e(),transport:a=new ja,messageMetadataSchema:r,dataPartSchemas:s,state:n,onError:i,onToolCall:o,onFinish:u,onData:l,sendAutomaticallyWhen:d}){this.activeResponse=void 0,this.jobExecutor=new rn,this.sendMessage=async(p,v)=>{var f,b,I,A;if(p==null){await this.makeRequest({trigger:"submit-message",messageId:(f=this.lastMessage)==null?void 0:f.id,...v});return}let M;if("text"in p||"files"in p?M={parts:[...Array.isArray(p.files)?p.files:await sn(p.files),..."text"in p&&p.text!=null?[{type:"text",text:p.text}]:[]]}:M=p,p.messageId!=null){const x=this.state.messages.findIndex(c=>c.id===p.messageId);if(x===-1)throw new Error(`message with id ${p.messageId} not found`);if(this.state.messages[x].role!=="user")throw new Error(`message with id ${p.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,x+1),this.state.replaceMessage(x,{...M,id:p.messageId,role:(b=M.role)!=null?b:"user",metadata:p.metadata})}else this.state.pushMessage({...M,id:(I=M.id)!=null?I:this.generateId(),role:(A=M.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(b=>b.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:b})=>this.jobExecutor.run(async()=>{const I=this.state.messages,A=I[I.length-1],M=x=>Pe(x)&&x.state==="approval-requested"&&x.approval.id===p?{...x,state:"approval-responded",approval:{id:p,approved:v,reason:f}}:x;this.state.replaceMessage(I.length-1,{...A,parts:A.parts.map(M)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(M)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(x=>{var c;x&&this.makeRequest({trigger:"submit-message",messageId:(c=this.lastMessage)==null?void 0:c.id,...b})})}),this.addToolOutput=async({state:p="output-available",toolCallId:v,output:f,errorText:b,options:I})=>this.jobExecutor.run(async()=>{const A=this.state.messages,M=A[A.length-1],x=c=>Pe(c)&&c.toolCallId===v?{...c,state:p,output:f,errorText:b}:c;this.state.replaceMessage(A.length-1,{...M,parts:M.parts.map(x)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(x)),this.status!=="streaming"&&this.status!=="submitted"&&this.sendAutomaticallyWhen&&this.shouldSendAutomatically().then(c=>{var O;c&&this.makeRequest({trigger:"submit-message",messageId:(O=this.lastMessage)==null?void 0:O.id,...I})})}),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:en({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};f.abortController.signal.addEventListener("abort",()=>{d=!0}),this.activeResponse=f;let b;e==="resume-stream"?b=u:b=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 I=A=>this.jobExecutor.run(()=>A({state:f.state,write:()=>{var M;this.setStatus({status:"streaming"}),f.state.message.id===((M=this.lastMessage)==null?void 0:M.id)?this.state.replaceMessage(this.state.messages.length-1,f.state.message):this.state.pushMessage(f.state.message)}}));await an({stream:tn({stream:b,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:I,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 ln({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(Pe);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 cn({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(Pe).filter(s=>!s.providerExecuted);return r.length>0&&r.every(s=>s.state==="output-available"||s.state==="output-error")}var bt,ea;function un(){if(ea)return bt;ea=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 bt=e,bt}var dn=un();const pn=ir(dn);var La=(e,t,a)=>{if(!t.has(e))throw TypeError("Cannot "+a)},j=(e,t,a)=>(La(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)},pe=(e,t,a,r)=>(La(e,t,"write to private field"),t.set(e,a),a);function mn(e,t){return t!=null?pn(e,t):e}var Q,nt,ot,Ue,Ve,qe,Ce,Tt,Mt,fn=class{constructor(e=[]){re(this,Q,void 0),re(this,nt,"ready"),re(this,ot,void 0),re(this,Ue,new Set),re(this,Ve,new Set),re(this,qe,new Set),this.pushMessage=t=>{pe(this,Q,j(this,Q).concat(t)),j(this,Ce).call(this)},this.popMessage=()=>{pe(this,Q,j(this,Q).slice(0,-1)),j(this,Ce).call(this)},this.replaceMessage=(t,a)=>{pe(this,Q,[...j(this,Q).slice(0,t),this.snapshot(a),...j(this,Q).slice(t+1)]),j(this,Ce).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,a)=>{const r=a?mn(t,a):t;return j(this,Ue).add(r),()=>{j(this,Ue).delete(r)}},this["~registerStatusCallback"]=t=>(j(this,Ve).add(t),()=>{j(this,Ve).delete(t)}),this["~registerErrorCallback"]=t=>(j(this,qe).add(t),()=>{j(this,qe).delete(t)}),re(this,Ce,()=>{j(this,Ue).forEach(t=>t())}),re(this,Tt,()=>{j(this,Ve).forEach(t=>t())}),re(this,Mt,()=>{j(this,qe).forEach(t=>t())}),pe(this,Q,e)}get status(){return j(this,nt)}set status(e){pe(this,nt,e),j(this,Tt).call(this)}get error(){return j(this,ot)}set error(e){pe(this,ot,e),j(this,Mt).call(this)}get messages(){return j(this,Q)}set messages(e){pe(this,Q,[...e]),j(this,Ce).call(this)}};Q=new WeakMap;nt=new WeakMap;ot=new WeakMap;Ue=new WeakMap;Ve=new WeakMap;qe=new WeakMap;Ce=new WeakMap;Tt=new WeakMap;Mt=new WeakMap;var Re,ta=class extends on{constructor({messages:e,...t}){const a=new fn(e);super({...t,state:a}),re(this,Re,void 0),this["~registerMessagesCallback"]=(r,s)=>j(this,Re)["~registerMessagesCallback"](r,s),this["~registerStatusCallback"]=r=>j(this,Re)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>j(this,Re)["~registerErrorCallback"](r),pe(this,Re,a)}};Re=new WeakMap;function hn({experimental_throttle:e,resume:t=!1,...a}={}){const r=S.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,b;return(b=(f=r.current).onToolCall)==null?void 0:b.call(f,v)},onData:v=>{var f,b;return(b=(f=r.current).onData)==null?void 0:b.call(f,v)},onFinish:v=>{var f,b;return(b=(f=r.current).onFinish)==null?void 0:b.call(f,v)},onError:v=>{var f,b;return(b=(f=r.current).onError)==null?void 0:b.call(f,v)},sendAutomaticallyWhen:v=>{var f,b,I;return(I=(b=(f=r.current).sendAutomaticallyWhen)==null?void 0:b.call(f,v))!=null?I:!1}},n=S.useRef("chat"in a?a.chat:new ta(s));("chat"in a&&a.chat!==n.current||"id"in a&&n.current.id!==a.id)&&(n.current="chat"in a?a.chat:new ta(s));const o=S.useCallback(v=>n.current["~registerMessagesCallback"](v,e),[e,n.current.id]),u=S.useSyncExternalStore(o,()=>n.current.messages,()=>n.current.messages),l=S.useSyncExternalStore(n.current["~registerStatusCallback"],()=>n.current.status,()=>n.current.status),d=S.useSyncExternalStore(n.current["~registerErrorCallback"],()=>n.current.error,()=>n.current.error),p=S.useCallback(v=>{typeof v=="function"&&(v=v(n.current.messages)),n.current.messages=v},[n]);return S.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 gn=1e4,Za="true";function pt(e,t){return ne.chatAutosend(e,t)}function vn(e){return e==="pending"||e==="sending"}function yn(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"||!vn(t.status)?null:t}function bn(e,t,a,r,s=Date.now()){const n={message:r,createdAt:s,status:"pending"};return e.setItem(pt(t,a),JSON.stringify(n)),n}function In(e,t,a){const r=pt(t,a),s=yn(e.getItem(r));return s||(e.removeItem(r),null)}function En(e,t,a,r=Date.now()){const s=pt(t,a),n=In(e,t,a);return!n||n.status!=="pending"?null:r-n.createdAt>=gn?(e.removeItem(s),null):(e.setItem(s,JSON.stringify({...n,status:"sending"})),{message:n.message,createdAt:n.createdAt})}function _n(e,t,a){e.removeItem(pt(t,a))}function Sn(e){const t=Ye.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=sa(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,11 +21,11 @@ ${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 Tn(){const e=Ye.c(5),t=ut(),{org:a}=ie();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=sa(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:ge.collection(a.slug,d,l)});const p=l.toLowerCase().replace(/_/g," ");xe.success(`${p} updated`)},e[1]=s?.params,e[2]=a,e[3]=t,e[4]=n):n=e[4],n}function Mn(){const e=Ye.c(4),{org:t,project:a}=ie(),r=`${t.id}/${a.id}`;let s;e[0]!==r?(s=ne.taskLastViewed(r),e[0]=r,e[1]=s):s=e[1];const[,n]=_e(s,wn);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 wn(e){return e??{}}function Fa(){const e=lr(),{org:t}=ie(),a=na({strict:!1}),r=cr({strict:!1}),s=a.virtualmcpid??hr(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 An=3;function Cn(e,t,a,r){const{locator:s,org:n}=ie(),i=ut(),o=T.useRef(!1),u=T.useRef(0),l=T.useRef(e);l.current!==e&&(l.current=e,u.current=0,o.current=!1);const d=T.useRef(r);d.current=r;const p=()=>{i.invalidateQueries({queryKey:ge.tasksPrefix(s)})},v=()=>{e&&i.invalidateQueries({predicate:k=>{const A=k.queryKey;return A[3]!=="collection"||A[4]!=="THREAD_MESSAGES"?!1:(typeof A[6]=="string"?A[6]:"").includes(e)}})},f=()=>{e&&i.invalidateQueries({queryKey:ge.threadOutputs(e)})},b=()=>t.status==="submitted"||t.status==="streaming",I=k=>{e&&(o.current||u.current>=An||b()||(o.current=!0,console.log(`[chat] resumeStream (${k})`,e),t.resumeStream().then(()=>{o.current=!1,u.current=0;try{d.current?.()}catch(A){console.error("[chat] onResumeSuccess threw",A)}}).catch(A=>{console.error("[chat] resumeStream error",A),u.current++,o.current=!1,p(),v()})))},C=T.useRef(I);C.current=I;const M=T.useRef(a);M.current=a;const x=T.useRef(null),c=T.useRef(null);c.current!==e&&(c.current=e,x.current=k=>{const A=M.current;return e&&(A==="in_progress"||A==="expired")&&C.current("auto-mount-or-status"),()=>{}}),T.useSyncExternalStore(x.current,()=>e,()=>e),ca({orgSlug:n.slug,taskId:e,onStep:()=>I("sse-step"),onFinish:()=>{f(),b()||(o.current=!1,u.current=0,p(),setTimeout(v,2e3))},onTaskStatus:()=>{b()||p()}})}const ct={TASK_MESSAGES_PAGE_SIZE:100,TASKS_PAGE_SIZE:50,QUERY_STALE_TIME:3e4};function Fe(e,t,a,r){let s=!1;return e.setQueriesData({queryKey:ge.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 Rn(e,t,a,r,s){if(!t)return;const n=vr(t,"THREAD_MESSAGES",a,{filters:[{column:"thread_id",value:r}],pageSize:ct.TASK_MESSAGES_PAGE_SIZE});n&&e.setQueryData(n,{structuredContent:{items:s},isError:!1})}async function st(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 xn(e){const t=Ye.c(24),{locator:a,org:r}=ie();let s;t[0]!==r.id||t[1]!==r.slug?(s={connectionId:wt,orgId:r.id,orgSlug:r.slug},t[0]=r.id,t[1]=r.slug,t[2]=s):s=t[2];const n=At(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=ge.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 b={hidden:e.status==="archived"};e.virtualMcpId&&(b.virtual_mcp_id=e.virtualMcpId),e.owner==="me"&&(b.created_by="me"),e.owner==="automation"&&(b.has_trigger=!0),e.hasTrigger!==void 0&&(b.has_trigger=e.hasTrigger);const I={limit:ct.TASKS_PAGE_SIZE,offset:0,orderBy:[{field:["updated_at"],direction:"desc"}],where:b},C=await n.callTool({name:"COLLECTION_THREADS_LIST",arguments:I}),M=C.structuredContent??C;return{items:M.items??[],hasMore:M.hasMore??!1,totalCount:M.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:ct.QUERY_STALE_TIME},t[16]=i,t[17]=o,t[18]=u):u=t[18];const{data:l,refetch:d}=ur(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 kn(e){const t=Ye.c(7),{org:a}=ie();let r;t[0]!==a.id||t[1]!==a.slug?(r={connectionId:wt,orgId:a.id,orgSlug:a.slug},t[0]=a.id,t[1]=a.slug,t[2]=r):r=t[2];const s=At(r);let n;t[3]!==e?(n={filters:e?[{column:"thread_id",value:e}]:[],pageSize:ct.TASK_MESSAGES_PAGE_SIZE},t[3]=e,t[4]=n):n=t[4];const i=yr(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 On(e){const{locator:t,org:a}=ie(),r=ut(),{data:s}=oa.useSession(),n=s?.user?.id,i=g=>{try{const h=localStorage.getItem(ne.chatTaskOwnerFilter(g));if(!h)return"me";const E=JSON.parse(h);return E==="everyone"?"all":E==="me"||E==="automation"||E==="all"?E:"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=g=>{v(()=>u(g));try{localStorage.setItem(ne.chatTaskOwnerFilter(t),JSON.stringify(g))}catch{}},{tasks:b}=xn({owner:o,status:"open",userId:n,virtualMcpId:e}),I=At({connectionId:wt,orgId:a.id,orgSlug:a.slug}),C=(g,h)=>{Fe(r,t,g,h)},M=async(g,h)=>{try{const E=await st(I,g,{status:h}),N={status:E?.status??h,updated_at:E?.updated_at??new Date().toISOString()};Fe(r,t,g,N)}catch(E){const N=E;xe.error(`Failed to update task status: ${N.message}`),console.error("[chat] Failed to set task status:",E)}},x=async(g,h)=>{try{await st(I,g,{branch:h}),Fe(r,t,g,{branch:h})}catch(E){const N=E;xe.error(`Failed to update branch: ${N.message}`),console.error("[chat] setTaskBranch:",E)}},c=async(g,h)=>{try{const E=await st(I,g,{title:h});E&&Fe(r,t,g,{title:h,updated_at:E.updated_at??new Date().toISOString()})}catch(E){const N=E;xe.error(`Failed to rename task: ${N.message}`),console.error("[chat] Failed to rename task:",E)}},k=async g=>{try{await st(I,g,{hidden:!0})}catch(h){const E=h;xe.error(`Failed to update task: ${E.message}`),console.error("[chat] Failed to hide task:",h);return}r.invalidateQueries({queryKey:ge.tasksPrefix(t)})},A=(g,h)=>{Rn(r,I,a.id,g,h)};return ca({orgSlug:a.slug,enabled:!0,onTaskStatus:g=>{const h=g.subject,E=g.data.status,N=g.time;Fe(r,t,h,{status:E,updated_at:N})||r.invalidateQueries({queryKey:ge.tasksPrefix(t)})}}),{tasks:b,ownerFilter:o,setOwnerFilter:f,isFilterChangePending:p,updateTask:C,renameTask:c,hideTask:k,setTaskStatus:M,setTaskBranch:x,updateMessagesCache:A}}const aa=new Set;function se(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 Ua(e){return e==="fast"||e==="smart"||e==="thinking"?e:"smart"}function Va(e,t,a,r){if(!a||r.length===0)return null;const s=t.find(u=>u.id===a);if(!s)return null;const n=Tr([s],{[a]:r}),i=e==="fast"?n.chat.fast:e==="thinking"?n.chat.thinking:n.chat.smart;if(!i)return null;const o=r.find(u=>u.modelId===i.modelId);return o?{...o,keyId:a}:null}const Ba=1e4,qa=10,Ja={sendMessage:async()=>{console.warn("[ChatBridge] sendMessage called but ActiveTaskProvider not mounted")},isStreaming:!1},xt=T.createContext(null),kt=T.createContext(null),mt=T.createContext(null),za=T.createContext({current:Ja}),Wa=T.createContext(null);function zn({children:e}){const{locator:t}=ie(),{virtualMcpId:a}=Fa(),[r,s]=_e(ne.chatSelectedImageModel(t),null),[n,i]=_e(ne.chatSelectedDeepResearchModel(t),null),[o,u]=T.useState(null),[l,d]=T.useState("default"),p=ua(),[v,f]=_e(ne.chatSimpleModeTier(t),null),b=Ua(v),I=la(),C=p.tiers[b],M=o&&I.some(O=>O.id===o)?o:C?.keyId??I[0]?.id??null,{models:x,isLoading:c}=fe(M??void 0),{models:k}=fe(C?.keyId),{models:A}=fe(p.tiers.image?.keyId),{models:g}=fe(p.tiers.web_research?.keyId),h=se(C,I,k,C?.title)??Va(b,I,M,x),E=c,N=x.filter(O=>O.capabilities?.includes("image")),J=se(r,I,N),Ne=se(p.tiers.image,I,A,p.tiers.image?.title)??J??N[0]??null,ve=x.filter(O=>{const y=O.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return y.includes("sonar")||y.includes("deepresearch")}),F=se(n,I,ve),Te=ve.find(O=>O.modelId==="perplexity/sonar")??ve[0]??null,ee=se(p.tiers.web_research,I,g,p.tiers.web_research?.title)??F??Te,ye=ia(a)??{id:a,title:"",description:null,icon:null},[De,ce]=T.useState({}),be=(O,y)=>{const L=[];for(const Y of y.content??[])Y.type==="text"&&Y.text?.trim()&&L.push(Y.text.trim());const G=L.join(`
25
- `);if(!G){te(O);return}new TextEncoder().encode(G).length>Ba||ce(Y=>Object.keys(Y).length>=qa&&!(O in Y)?Y:{...Y,[O]:G})},te=O=>{ce(y=>{const{[O]:L,...G}=y;return G})},[Ie,$e]=T.useState(void 0),B=T.useRef(Ie);B.current=Ie;const ue={selectedModel:h,setModel:()=>{},credentialId:M,setCredentialId:u,allModelsConnections:I,isModelsLoading:E,selectedVirtualMcp:ye,imageModel:Ne,setImageModel:O=>{s(O?.keyId?{keyId:O.keyId,modelId:O.modelId}:null)},deepResearchModel:ee,setDeepResearchModel:O=>{i(O?.keyId?{keyId:O.keyId,modelId:O.modelId}:null)},chatMode:l,setChatMode:d,appContexts:De,setAppContext:be,clearAppContext:te,tiptapDoc:Ie,setTiptapDoc:$e,tiptapDocRef:B,resetInteraction:()=>{},simpleModeTier:b,setSimpleModeTier:O=>f(O)};return ke.jsx(mt.Provider,{value:ue,children:e})}function Wn({virtualMcpId:e,children:t}){const{org:a,locator:r}=ie(),{data:s}=oa.useSession(),n=s?.user??null,{taskId:i,virtualMcpId:o,navigateToTask:u}=Fa(),[l]=pr(),{markTaskRead:d}=Mn(),[p,v]=_e(ne.chatSelectedImageModel(r),null),[f,b]=_e(ne.chatSelectedDeepResearchModel(r),null),[I,C]=T.useState(null),[M,x]=T.useState("default"),c=ua(),[k,A]=_e(ne.chatSimpleModeTier(r),null),g=Ua(k),h=la(),E=c.tiers[g],N=I&&h.some(S=>S.id===I)?I:E?.keyId??h[0]?.id??null,{models:J,isLoading:Ne}=fe(N??void 0),{models:ve}=fe(E?.keyId),{models:F}=fe(c.tiers.image?.keyId),{models:Te}=fe(c.tiers.web_research?.keyId),ee=se(E,h,ve,E?.title)??Va(g,h,N,J),Ke=Ne,ye=J.filter(S=>S.capabilities?.includes("image")),De=se(p,h,ye),ce=se(c.tiers.image,h,F,c.tiers.image?.title)??De??ye[0]??null,be=J.filter(S=>{const Z=S.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return Z.includes("sonar")||Z.includes("deepresearch")}),te=se(f,h,be),Ie=be.find(S=>S.modelId==="perplexity/sonar")??be[0]??null,$e=se(c.tiers.web_research,h,Te,c.tiers.web_research?.title)??te??Ie,B=On(e),{tasks:ue}=B,O=i,y=o,G=ia(y)??{id:y,title:"",description:null,icon:null},Y=Sn(y),[Xe,je]=T.useState({}),ft=(S,Z)=>{const H=[];for(const z of Z.content??[])z.type==="text"&&z.text?.trim()&&H.push(z.text.trim());const le=H.join(`
26
- `);if(!le){et(S);return}new TextEncoder().encode(le).length>Ba||je(z=>Object.keys(z).length>=qa&&!(S in z)?z:{...z,[S]:le})},et=S=>{je(Z=>{const{[S]:H,...le}=Z;return le})},[ae,ht]=T.useState(void 0),tt=T.useRef(ae);tt.current=ae;const Le=T.useRef(null);Le.current||(Le.current=new ja({api:`/api/${a.slug}/decopilot/stream`,credentials:"include",prepareReconnectToStreamRequest:({id:S})=>({api:`/api/${a.slug}/decopilot/attach/${S}`}),prepareSendMessagesRequest:({messages:S,requestMetadata:Z={}})=>{const{system:H,tiptapDoc:le,...z}=Z,Dt=H?{id:crypto.randomUUID(),role:"system",parts:[{type:"text",text:H}]}:null,$t=S.slice(-1).filter(Boolean),Ka=Dt?[Dt,...$t]:$t,gt=S.at(-1)?.metadata??{},Xa={...z,agent:z.agent??gt.agent,tier:z.tier??gt.tier,thread_id:z.thread_id??gt.thread_id};return{api:`/api/${a.slug}/decopilot/stream`,body:{messages:Ka,...Xa,toolApprovalLevel:mr()}}}}));const at=T.useRef(Ja),Me=(S,Z)=>{d(S),u(S,{virtualMcpId:Z?.virtualMcpId,autosend:Z?.autosend})},Ot=ue.find(S=>S.id===O),rt=Ot?.branch??null,Ga=!!Ot?.branch,Pt=gr(),Nt=()=>{const S=crypto.randomUUID();return Pt.create.mutateAsync({id:S,virtual_mcp_id:e,...rt?{branch:rt}:{}}).then(()=>Me(S)).catch(()=>{Me(S)}),S},Ya={virtualMcpId:y,taskId:O,openTask:Me,createTask:Nt,createTaskWithMessage:S=>{const Z=crypto.randomUUID(),H=S.virtualMcpId??e,le=H===e?rt:null;bn(sessionStorage,r,Z,S.message),Pt.create.mutateAsync({id:Z,virtual_mcp_id:H,...le?{branch:le}:{}}).then(()=>Me(Z,{virtualMcpId:S.virtualMcpId,autosend:!0})).catch(()=>{Me(Z,{virtualMcpId:S.virtualMcpId,autosend:!0})})},tasks:ue,hideTask:async S=>{if(await B.hideTask(S),S===O){const Z=ue.find(H=>H.id!==S&&!H.hidden);Z?Me(Z.id):Nt()}},renameTask:B.renameTask,setTaskStatus:B.setTaskStatus,currentBranch:rt,isBranchLocked:Ga,setCurrentTaskBranch:S=>{O&&B.setTaskBranch(O,S)},ownerFilter:B.ownerFilter,setOwnerFilter:B.setOwnerFilter,isFilterChangePending:B.isFilterChangePending??!1},Ha={selectedModel:ee,setModel:()=>{},credentialId:N,setCredentialId:C,allModelsConnections:h,isModelsLoading:Ke,selectedVirtualMcp:G,imageModel:ce,setImageModel:S=>{v(S?.keyId?{keyId:S.keyId,modelId:S.modelId}:null)},deepResearchModel:$e,setDeepResearchModel:S=>{b(S?.keyId?{keyId:S.keyId,modelId:S.modelId}:null)},chatMode:M,setChatMode:x,appContexts:Xe,setAppContext:ft,clearAppContext:et,tiptapDoc:ae,setTiptapDoc:ht,tiptapDocRef:tt,resetInteraction:()=>{},simpleModeTier:g,setSimpleModeTier:S=>A(S)},Qa={transport:Le.current,user:n,contextPrompt:Y,preferences:l,taskManager:{updateMessagesCache:B.updateMessagesCache,updateTask:B.updateTask},rawNavigateToTask:u,bridgeRef:at};return ke.jsx(kt.Provider,{value:Ya,children:ke.jsx(mt.Provider,{value:Ha,children:ke.jsx(za.Provider,{value:at,children:ke.jsx(Wa.Provider,{value:Qa,children:t})})})})}function Gn({taskId:e,children:t}){const{virtualMcpId:a,tasks:r,currentBranch:s}=Pn();e&&!aa.has(e)&&(aa.add(e),dr("chat_opened",{thread_id:e}));const{imageModel:n,deepResearchModel:i,chatMode:o,setChatMode:u,appContexts:l,setTiptapDoc:d,simpleModeTier:p}=Nn(),v=T.useContext(Wa);if(!v)throw new Error("ActiveTaskProvider must be used within ChatContextProvider");const{transport:f,user:b,contextPrompt:I,preferences:C,taskManager:M,rawNavigateToTask:x,bridgeRef:c}=v,{org:k,locator:A}=ie(),g=kn(e||null),[h,E]=T.useState(null),[N,J]=T.useState(null),Ne=Tn(),ve=ut(),F=hn({id:e,messages:g,transport:f,sendAutomaticallyWhen:({messages:y})=>cn({messages:y})||ln({messages:y}),onFinish:y=>{E(y.finishReason??null),e&&ve.invalidateQueries({queryKey:ge.threadOutputs(e)});const L=y.message.metadata?.thread_id;if(L&&L!==e&&x(L),y.isAbort||y.isDisconnect||y.isError){L&&y.messages.length>0&&M.updateMessagesCache(L,y.messages);return}L&&y.messages.length>0?M.updateMessagesCache(L,y.messages):console.warn("[chat] onFinish: no thread_id in server metadata, messages not persisted")},onToolCall:Ne,onError:y=>{J(y),console.error("[chat] Error",y)},onData:({data:y,type:L})=>{if(L==="data-thread-title"){const{title:G}=y;if(!G)return;M.updateTask(e,{title:G,updated_at:new Date().toISOString()})}}}),Te=F.status==="submitted"||F.status==="streaming",ee=F.status!=="ready"?F.messages:g,Ke=ee.length===0,ye=ee.at(-1),De=!Te&&ye?.role==="assistant"&&ye.parts.some(y=>"state"in y&&y.state==="approval-requested"),ce=r.find(y=>y.id===e),be=(ce?.status==="in_progress"||ce?.status==="expired")&&F.status==="ready"&&ee.length>0;Cn(e,F,ce?.status,()=>J(null));async function te(y){const L=y.parts??da(y.tiptapDoc);if(L.length===0)return;const G=e,Y=a;E(null),J(null),d(void 0);const Xe={tiptapDoc:y.tiptapDoc,created_at:new Date().toISOString(),thread_id:G,agent:{id:Y},...s?{branch:s}:{},user:{avatar:b?.image??void 0,name:b?.name??"you"},...C.toolApprovalLevel&&{toolApprovalLevel:C.toolApprovalLevel}},je=Object.entries(l),ft=je.length>0?je.map(([Le,at])=>`### App Context: ${Le}
24
+ `)}function Tn(){const e=Ye.c(5),t=ut(),{org:a}=ie();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=sa(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:ge.collection(a.slug,d,l)});const p=l.toLowerCase().replace(/_/g," ");xe.success(`${p} updated`)},e[1]=s?.params,e[2]=a,e[3]=t,e[4]=n):n=e[4],n}function Mn(){const e=Ye.c(4),{org:t,project:a}=ie(),r=`${t.id}/${a.id}`;let s;e[0]!==r?(s=ne.taskLastViewed(r),e[0]=r,e[1]=s):s=e[1];const[,n]=_e(s,wn);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 wn(e){return e??{}}function Fa(){const e=lr(),{org:t}=ie(),a=na({strict:!1}),r=cr({strict:!1}),s=a.virtualmcpid??hr(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=S.useRef(crypto.randomUUID()),o=r.taskId??i.current;return{virtualMcpId:s,taskId:o,navigateToTask:n}}const An=3;function Cn(e){return e instanceof TypeError}const Rn=e=>e==="in_progress"||e==="expired";function xn(e,t,a,r){const{locator:s,org:n}=ie(),i=ut(),o=S.useRef(!1),u=S.useRef(0),l=S.useRef(e);l.current!==e&&(l.current=e,u.current=0,o.current=!1);const d=S.useRef(r);d.current=r;const p=()=>{i.invalidateQueries({queryKey:ge.tasksPrefix(s)})},v=()=>{e&&i.invalidateQueries({predicate:R=>{const h=R.queryKey;return h[3]!=="collection"||h[4]!=="THREAD_MESSAGES"?!1:(typeof h[6]=="string"?h[6]:"").includes(e)}})},f=()=>{e&&i.invalidateQueries({queryKey:ge.threadOutputs(e)})},b=()=>t.status==="submitted"||t.status==="streaming",I=R=>{e&&(o.current||u.current>=An||b()||(o.current=!0,console.log(`[chat] resumeStream (${R})`,e),t.resumeStream().then(()=>{o.current=!1,u.current=0;try{d.current?.()}catch(h){console.error("[chat] onResumeSuccess threw",h)}}).catch(h=>{console.error("[chat] resumeStream error",h),u.current++,o.current=!1,p(),v()})))},A=S.useRef(I);A.current=I;const M=S.useRef(a);M.current=a;const x=S.useRef(null),c=S.useRef(null);c.current!==e&&(c.current=e,x.current=R=>{const h=M.current;return e&&(h==="in_progress"||h==="expired")&&A.current("auto-mount-or-status"),()=>{}}),S.useSyncExternalStore(x.current,()=>e,()=>e),ca({orgSlug:n.slug,taskId:e,onStep:()=>I("sse-step"),onFinish:()=>{f(),b()||(o.current=!1,u.current=0,p(),setTimeout(v,2e3))},onTaskStatus:()=>{b()||p()}});const O=S.useRef(t.status);O.current!=="error"&&t.status==="error"&&t.error&&Cn(t.error)&&Rn(a)&&queueMicrotask(()=>A.current("on-stream-error")),O.current=t.status}const ct={TASK_MESSAGES_PAGE_SIZE:100,TASKS_PAGE_SIZE:50,QUERY_STALE_TIME:3e4};function Fe(e,t,a,r){let s=!1;return e.setQueriesData({queryKey:ge.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 kn(e,t,a,r,s){if(!t)return;const n=vr(t,"THREAD_MESSAGES",a,{filters:[{column:"thread_id",value:r}],pageSize:ct.TASK_MESSAGES_PAGE_SIZE});n&&e.setQueryData(n,{structuredContent:{items:s},isError:!1})}async function st(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 On(e){const t=Ye.c(24),{locator:a,org:r}=ie();let s;t[0]!==r.id||t[1]!==r.slug?(s={connectionId:wt,orgId:r.id,orgSlug:r.slug},t[0]=r.id,t[1]=r.slug,t[2]=s):s=t[2];const n=At(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=ge.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 b={hidden:e.status==="archived"};e.virtualMcpId&&(b.virtual_mcp_id=e.virtualMcpId),e.owner==="me"&&(b.created_by="me"),e.owner==="automation"&&(b.has_trigger=!0),e.hasTrigger!==void 0&&(b.has_trigger=e.hasTrigger);const I={limit:ct.TASKS_PAGE_SIZE,offset:0,orderBy:[{field:["updated_at"],direction:"desc"}],where:b},A=await n.callTool({name:"COLLECTION_THREADS_LIST",arguments:I}),M=A.structuredContent??A;return{items:M.items??[],hasMore:M.hasMore??!1,totalCount:M.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:ct.QUERY_STALE_TIME},t[16]=i,t[17]=o,t[18]=u):u=t[18];const{data:l,refetch:d}=ur(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 Pn(e){const t=Ye.c(7),{org:a}=ie();let r;t[0]!==a.id||t[1]!==a.slug?(r={connectionId:wt,orgId:a.id,orgSlug:a.slug},t[0]=a.id,t[1]=a.slug,t[2]=r):r=t[2];const s=At(r);let n;t[3]!==e?(n={filters:e?[{column:"thread_id",value:e}]:[],pageSize:ct.TASK_MESSAGES_PAGE_SIZE},t[3]=e,t[4]=n):n=t[4];const i=yr(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 Nn(e){const{locator:t,org:a}=ie(),r=ut(),{data:s}=oa.useSession(),n=s?.user?.id,i=h=>{try{const g=localStorage.getItem(ne.chatTaskOwnerFilter(h));if(!g)return"me";const E=JSON.parse(g);return E==="everyone"?"all":E==="me"||E==="automation"||E==="all"?E:"me"}catch{return"me"}},[o,u]=S.useState(()=>i(t)),[l,d]=S.useState(t);l!==t&&(d(t),u(i(t)));const[p,v]=S.useTransition(),f=h=>{v(()=>u(h));try{localStorage.setItem(ne.chatTaskOwnerFilter(t),JSON.stringify(h))}catch{}},{tasks:b}=On({owner:o,status:"open",userId:n,virtualMcpId:e}),I=At({connectionId:wt,orgId:a.id,orgSlug:a.slug}),A=(h,g)=>{Fe(r,t,h,g)},M=async(h,g)=>{try{const E=await st(I,h,{status:g}),N={status:E?.status??g,updated_at:E?.updated_at??new Date().toISOString()};Fe(r,t,h,N)}catch(E){const N=E;xe.error(`Failed to update task status: ${N.message}`),console.error("[chat] Failed to set task status:",E)}},x=async(h,g)=>{try{await st(I,h,{branch:g}),Fe(r,t,h,{branch:g})}catch(E){const N=E;xe.error(`Failed to update branch: ${N.message}`),console.error("[chat] setTaskBranch:",E)}},c=async(h,g)=>{try{const E=await st(I,h,{title:g});E&&Fe(r,t,h,{title:g,updated_at:E.updated_at??new Date().toISOString()})}catch(E){const N=E;xe.error(`Failed to rename task: ${N.message}`),console.error("[chat] Failed to rename task:",E)}},O=async h=>{try{await st(I,h,{hidden:!0})}catch(g){const E=g;xe.error(`Failed to update task: ${E.message}`),console.error("[chat] Failed to hide task:",g);return}r.invalidateQueries({queryKey:ge.tasksPrefix(t)})},R=(h,g)=>{kn(r,I,a.id,h,g)};return ca({orgSlug:a.slug,enabled:!0,onTaskStatus:h=>{const g=h.subject,E=h.data.status,N=h.time;Fe(r,t,g,{status:E,updated_at:N})||r.invalidateQueries({queryKey:ge.tasksPrefix(t)})}}),{tasks:b,ownerFilter:o,setOwnerFilter:f,isFilterChangePending:p,updateTask:A,renameTask:c,hideTask:O,setTaskStatus:M,setTaskBranch:x,updateMessagesCache:R}}const aa=new Set;function se(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 Ua(e){return e==="fast"||e==="smart"||e==="thinking"?e:"smart"}function Va(e,t,a,r){if(!a||r.length===0)return null;const s=t.find(u=>u.id===a);if(!s)return null;const n=Tr([s],{[a]:r}),i=e==="fast"?n.chat.fast:e==="thinking"?n.chat.thinking:n.chat.smart;if(!i)return null;const o=r.find(u=>u.modelId===i.modelId);return o?{...o,keyId:a}:null}const qa=1e4,Ba=10,Ja={sendMessage:async()=>{console.warn("[ChatBridge] sendMessage called but ActiveTaskProvider not mounted")},isStreaming:!1},xt=S.createContext(null),kt=S.createContext(null),mt=S.createContext(null),za=S.createContext({current:Ja}),Wa=S.createContext(null);function Gn({children:e}){const{locator:t}=ie(),{virtualMcpId:a}=Fa(),[r,s]=_e(ne.chatSelectedImageModel(t),null),[n,i]=_e(ne.chatSelectedDeepResearchModel(t),null),[o,u]=S.useState(null),[l,d]=S.useState("default"),p=ua(),[v,f]=_e(ne.chatSimpleModeTier(t),null),b=Ua(v),I=la(),A=p.tiers[b],M=o&&I.some(k=>k.id===o)?o:A?.keyId??I[0]?.id??null,{models:x,isLoading:c}=fe(M??void 0),{models:O}=fe(A?.keyId),{models:R}=fe(p.tiers.image?.keyId),{models:h}=fe(p.tiers.web_research?.keyId),g=se(A,I,O,A?.title)??Va(b,I,M,x),E=c,N=x.filter(k=>k.capabilities?.includes("image")),J=se(r,I,N),Ne=se(p.tiers.image,I,R,p.tiers.image?.title)??J??N[0]??null,ve=x.filter(k=>{const y=k.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return y.includes("sonar")||y.includes("deepresearch")}),F=se(n,I,ve),Te=ve.find(k=>k.modelId==="perplexity/sonar")??ve[0]??null,ee=se(p.tiers.web_research,I,h,p.tiers.web_research?.title)??F??Te,ye=ia(a)??{id:a,title:"",description:null,icon:null},[De,ce]=S.useState({}),be=(k,y)=>{const L=[];for(const Y of y.content??[])Y.type==="text"&&Y.text?.trim()&&L.push(Y.text.trim());const G=L.join(`
25
+ `);if(!G){te(k);return}new TextEncoder().encode(G).length>qa||ce(Y=>Object.keys(Y).length>=Ba&&!(k in Y)?Y:{...Y,[k]:G})},te=k=>{ce(y=>{const{[k]:L,...G}=y;return G})},[Ie,$e]=S.useState(void 0),q=S.useRef(Ie);q.current=Ie;const ue={selectedModel:g,setModel:()=>{},credentialId:M,setCredentialId:u,allModelsConnections:I,isModelsLoading:E,selectedVirtualMcp:ye,imageModel:Ne,setImageModel:k=>{s(k?.keyId?{keyId:k.keyId,modelId:k.modelId}:null)},deepResearchModel:ee,setDeepResearchModel:k=>{i(k?.keyId?{keyId:k.keyId,modelId:k.modelId}:null)},chatMode:l,setChatMode:d,appContexts:De,setAppContext:be,clearAppContext:te,tiptapDoc:Ie,setTiptapDoc:$e,tiptapDocRef:q,resetInteraction:()=>{},simpleModeTier:b,setSimpleModeTier:k=>f(k)};return ke.jsx(mt.Provider,{value:ue,children:e})}function Yn({virtualMcpId:e,children:t}){const{org:a,locator:r}=ie(),{data:s}=oa.useSession(),n=s?.user??null,{taskId:i,virtualMcpId:o,navigateToTask:u}=Fa(),[l]=pr(),{markTaskRead:d}=Mn(),[p,v]=_e(ne.chatSelectedImageModel(r),null),[f,b]=_e(ne.chatSelectedDeepResearchModel(r),null),[I,A]=S.useState(null),[M,x]=S.useState("default"),c=ua(),[O,R]=_e(ne.chatSimpleModeTier(r),null),h=Ua(O),g=la(),E=c.tiers[h],N=I&&g.some(T=>T.id===I)?I:E?.keyId??g[0]?.id??null,{models:J,isLoading:Ne}=fe(N??void 0),{models:ve}=fe(E?.keyId),{models:F}=fe(c.tiers.image?.keyId),{models:Te}=fe(c.tiers.web_research?.keyId),ee=se(E,g,ve,E?.title)??Va(h,g,N,J),Ke=Ne,ye=J.filter(T=>T.capabilities?.includes("image")),De=se(p,g,ye),ce=se(c.tiers.image,g,F,c.tiers.image?.title)??De??ye[0]??null,be=J.filter(T=>{const Z=T.modelId.toLowerCase().replace(/[^a-z0-9]/g,"");return Z.includes("sonar")||Z.includes("deepresearch")}),te=se(f,g,be),Ie=be.find(T=>T.modelId==="perplexity/sonar")??be[0]??null,$e=se(c.tiers.web_research,g,Te,c.tiers.web_research?.title)??te??Ie,q=Nn(e),{tasks:ue}=q,k=i,y=o,G=ia(y)??{id:y,title:"",description:null,icon:null},Y=Sn(y),[Xe,je]=S.useState({}),ft=(T,Z)=>{const H=[];for(const z of Z.content??[])z.type==="text"&&z.text?.trim()&&H.push(z.text.trim());const le=H.join(`
26
+ `);if(!le){et(T);return}new TextEncoder().encode(le).length>qa||je(z=>Object.keys(z).length>=Ba&&!(T in z)?z:{...z,[T]:le})},et=T=>{je(Z=>{const{[T]:H,...le}=Z;return le})},[ae,ht]=S.useState(void 0),tt=S.useRef(ae);tt.current=ae;const Le=S.useRef(null);Le.current||(Le.current=new ja({api:`/api/${a.slug}/decopilot/stream`,credentials:"include",prepareReconnectToStreamRequest:({id:T})=>({api:`/api/${a.slug}/decopilot/attach/${T}`}),prepareSendMessagesRequest:({messages:T,requestMetadata:Z={}})=>{const{system:H,tiptapDoc:le,...z}=Z,Dt=H?{id:crypto.randomUUID(),role:"system",parts:[{type:"text",text:H}]}:null,$t=T.slice(-1).filter(Boolean),Ka=Dt?[Dt,...$t]:$t,gt=T.at(-1)?.metadata??{},Xa={...z,agent:z.agent??gt.agent,tier:z.tier??gt.tier,thread_id:z.thread_id??gt.thread_id};return{api:`/api/${a.slug}/decopilot/stream`,body:{messages:Ka,...Xa,toolApprovalLevel:mr()}}}}));const at=S.useRef(Ja),Me=(T,Z)=>{d(T),u(T,{virtualMcpId:Z?.virtualMcpId,autosend:Z?.autosend})},Ot=ue.find(T=>T.id===k),rt=Ot?.branch??null,Ga=!!Ot?.branch,Pt=gr(),Nt=()=>{const T=crypto.randomUUID();return Pt.create.mutateAsync({id:T,virtual_mcp_id:e,...rt?{branch:rt}:{}}).then(()=>Me(T)).catch(()=>{Me(T)}),T},Ya={virtualMcpId:y,taskId:k,openTask:Me,createTask:Nt,createTaskWithMessage:T=>{const Z=crypto.randomUUID(),H=T.virtualMcpId??e,le=H===e?rt:null;bn(sessionStorage,r,Z,T.message),Pt.create.mutateAsync({id:Z,virtual_mcp_id:H,...le?{branch:le}:{}}).then(()=>Me(Z,{virtualMcpId:T.virtualMcpId,autosend:!0})).catch(()=>{Me(Z,{virtualMcpId:T.virtualMcpId,autosend:!0})})},tasks:ue,hideTask:async T=>{if(await q.hideTask(T),T===k){const Z=ue.find(H=>H.id!==T&&!H.hidden);Z?Me(Z.id):Nt()}},renameTask:q.renameTask,setTaskStatus:q.setTaskStatus,currentBranch:rt,isBranchLocked:Ga,setCurrentTaskBranch:T=>{k&&q.setTaskBranch(k,T)},ownerFilter:q.ownerFilter,setOwnerFilter:q.setOwnerFilter,isFilterChangePending:q.isFilterChangePending??!1},Ha={selectedModel:ee,setModel:()=>{},credentialId:N,setCredentialId:A,allModelsConnections:g,isModelsLoading:Ke,selectedVirtualMcp:G,imageModel:ce,setImageModel:T=>{v(T?.keyId?{keyId:T.keyId,modelId:T.modelId}:null)},deepResearchModel:$e,setDeepResearchModel:T=>{b(T?.keyId?{keyId:T.keyId,modelId:T.modelId}:null)},chatMode:M,setChatMode:x,appContexts:Xe,setAppContext:ft,clearAppContext:et,tiptapDoc:ae,setTiptapDoc:ht,tiptapDocRef:tt,resetInteraction:()=>{},simpleModeTier:h,setSimpleModeTier:T=>R(T)},Qa={transport:Le.current,user:n,contextPrompt:Y,preferences:l,taskManager:{updateMessagesCache:q.updateMessagesCache,updateTask:q.updateTask},rawNavigateToTask:u,bridgeRef:at};return ke.jsx(kt.Provider,{value:Ya,children:ke.jsx(mt.Provider,{value:Ha,children:ke.jsx(za.Provider,{value:at,children:ke.jsx(Wa.Provider,{value:Qa,children:t})})})})}function Hn({taskId:e,children:t}){const{virtualMcpId:a,tasks:r,currentBranch:s}=Dn();e&&!aa.has(e)&&(aa.add(e),dr("chat_opened",{thread_id:e}));const{imageModel:n,deepResearchModel:i,chatMode:o,setChatMode:u,appContexts:l,setTiptapDoc:d,simpleModeTier:p}=$n(),v=S.useContext(Wa);if(!v)throw new Error("ActiveTaskProvider must be used within ChatContextProvider");const{transport:f,user:b,contextPrompt:I,preferences:A,taskManager:M,rawNavigateToTask:x,bridgeRef:c}=v,{org:O,locator:R}=ie(),h=Pn(e||null),[g,E]=S.useState(null),[N,J]=S.useState(null),Ne=Tn(),ve=ut(),F=hn({id:e,messages:h,transport:f,sendAutomaticallyWhen:({messages:y})=>cn({messages:y})||ln({messages:y}),onFinish:y=>{E(y.finishReason??null),e&&ve.invalidateQueries({queryKey:ge.threadOutputs(e)});const L=y.message.metadata?.thread_id;if(L&&L!==e&&x(L),y.isAbort||y.isDisconnect||y.isError){L&&y.messages.length>0&&M.updateMessagesCache(L,y.messages);return}L&&y.messages.length>0?M.updateMessagesCache(L,y.messages):console.warn("[chat] onFinish: no thread_id in server metadata, messages not persisted")},onToolCall:Ne,onError:y=>{J(y),console.error("[chat] Error",y)},onData:({data:y,type:L})=>{if(L==="data-thread-title"){const{title:G}=y;if(!G)return;M.updateTask(e,{title:G,updated_at:new Date().toISOString()})}}}),Te=F.status==="submitted"||F.status==="streaming",ee=F.status!=="ready"?F.messages:h,Ke=ee.length===0,ye=ee.at(-1),De=!Te&&ye?.role==="assistant"&&ye.parts.some(y=>"state"in y&&y.state==="approval-requested"),ce=r.find(y=>y.id===e),be=(ce?.status==="in_progress"||ce?.status==="expired")&&F.status==="ready"&&ee.length>0;xn(e,F,ce?.status,()=>J(null));async function te(y){const L=y.parts??da(y.tiptapDoc);if(L.length===0)return;const G=e,Y=a;E(null),J(null),d(void 0);const Xe={tiptapDoc:y.tiptapDoc,created_at:new Date().toISOString(),thread_id:G,agent:{id:Y},...s?{branch:s}:{},user:{avatar:b?.image??void 0,name:b?.name??"you"},...A.toolApprovalLevel&&{toolApprovalLevel:A.toolApprovalLevel}},je=Object.entries(l),ft=je.length>0?je.map(([Le,at])=>`### App Context: ${Le}
27
27
  ${at}`).join(`
28
28
 
29
29
  `):"",et=[I,ft].filter(Boolean).join(`
30
30
 
31
- `);let ae=o;ae==="gen-image"&&!n&&(ae="default"),ae==="web-search"&&!i&&(ae="default"),ae==="web-search"&&u("default");const ht={...Xe,system:et,tier:p,mode:ae},tt={id:crypto.randomUUID(),role:"user",parts:L,metadata:Xe};await F.sendMessage(tt,{metadata:ht})}const Ie=async()=>{F.stop();try{const y=await fetch(`/api/${k.slug}/decopilot/cancel/${e}`,{method:"POST",credentials:"include"});if(y.status===404)return;if(!y.ok){const L=await y.json().catch(()=>({}));throw new Error(L.message??`Cancel failed: ${y.status}`)}}catch(y){const L=y instanceof Error?y.message:"Failed to cancel";xe.error(L),console.error("[chat] cancelRun",y)}},$e=y=>y&&typeof y=="object"&&"type"in y?te({tiptapDoc:y}):te(y);c.current={sendMessage:te,isStreaming:F.status==="submitted"||F.status==="streaming"};const ue=na({strict:!1}).autosend===Za;T.useEffect(()=>{if(!ue||ee.length>0)return;const y=En(sessionStorage,A,e);y&&te(y.message).then(()=>{_n(sessionStorage,A,e)})},[ue,ee.length,A,e,te]);const O={messages:ee,status:F.status,sendMessage:$e,stop:()=>{Ie()},setMessages:F.setMessages,addToolOutput:F.addToolOutput,addToolApprovalResponse:F.addToolApprovalResponse,error:N,clearError:()=>J(null),finishReason:h,clearFinishReason:()=>E(null),isStreaming:Te,isChatEmpty:Ke,isWaitingForApprovals:De??!1,isRunInProgress:be};return ke.jsx(xt.Provider,{value:O,children:t})}function Yn(){const e=T.useContext(xt);if(!e)throw new Error("useChatStream must be used within ActiveTaskProvider");return e}function Hn(){return T.useContext(xt)}function Pn(){const e=T.useContext(kt);if(!e)throw new Error("useChatTask must be used within ChatContextProvider");return e}function Nn(){const e=T.useContext(mt);if(!e)throw new Error("useChatPrefs must be used within ChatContextProvider");return e}function Qn(){return T.useContext(mt)}function Kn(){return T.useContext(kt)}function Xn(){const e=T.useContext(za);return{sendMessage:t=>e.current.sendMessage(t),get isStreaming(){return e.current.isStreaming}}}export{Za as A,zn as C,Pn as a,Nn as b,Xn as c,da as d,xn as e,st as f,Hn as g,Kn as h,Gn as i,Wn as j,Qn as k,Tr as p,Jn as t,Yn as u,bn as w};
31
+ `);let ae=o;ae==="gen-image"&&!n&&(ae="default"),ae==="web-search"&&!i&&(ae="default"),ae==="web-search"&&u("default");const ht={...Xe,system:et,tier:p,mode:ae},tt={id:crypto.randomUUID(),role:"user",parts:L,metadata:Xe};await F.sendMessage(tt,{metadata:ht})}const Ie=async()=>{F.stop();try{const y=await fetch(`/api/${O.slug}/decopilot/cancel/${e}`,{method:"POST",credentials:"include"});if(y.status===404)return;if(!y.ok){const L=await y.json().catch(()=>({}));throw new Error(L.message??`Cancel failed: ${y.status}`)}}catch(y){const L=y instanceof Error?y.message:"Failed to cancel";xe.error(L),console.error("[chat] cancelRun",y)}},$e=y=>y&&typeof y=="object"&&"type"in y?te({tiptapDoc:y}):te(y);c.current={sendMessage:te,isStreaming:F.status==="submitted"||F.status==="streaming"};const ue=na({strict:!1}).autosend===Za;S.useEffect(()=>{if(!ue||ee.length>0)return;const y=En(sessionStorage,R,e);y&&te(y.message).then(()=>{_n(sessionStorage,R,e)})},[ue,ee.length,R,e,te]);const k={messages:ee,status:F.status,sendMessage:$e,stop:()=>{Ie()},setMessages:F.setMessages,addToolOutput:F.addToolOutput,addToolApprovalResponse:F.addToolApprovalResponse,error:N,clearError:()=>J(null),finishReason:g,clearFinishReason:()=>E(null),isStreaming:Te,isChatEmpty:Ke,isWaitingForApprovals:De??!1,isRunInProgress:be};return ke.jsx(xt.Provider,{value:k,children:t})}function Qn(){const e=S.useContext(xt);if(!e)throw new Error("useChatStream must be used within ActiveTaskProvider");return e}function Kn(){return S.useContext(xt)}function Dn(){const e=S.useContext(kt);if(!e)throw new Error("useChatTask must be used within ChatContextProvider");return e}function $n(){const e=S.useContext(mt);if(!e)throw new Error("useChatPrefs must be used within ChatContextProvider");return e}function Xn(){return S.useContext(mt)}function eo(){return S.useContext(kt)}function to(){const e=S.useContext(za);return{sendMessage:t=>e.current.sendMessage(t),get isStreaming(){return e.current.isStreaming}}}export{Za as A,Gn as C,Dn as a,$n as b,to as c,da as d,On as e,st as f,Kn as g,eo as h,Hn as i,Yn as j,Xn as k,Tr as p,Wn as t,Qn as u,bn as w};
@@ -1 +1 @@
1
- import{e as n,c as d,j as c,b2 as l,b3 as b}from"./index-C-7o6zB8.js";import{i as m}from"./Check-B-fE3mUv.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};
1
+ import{e as n,c as d,j as c,b2 as l,b3 as b}from"./index-CB-9CUUW.js";import{i as m}from"./Check-iLkh97pT.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};