@decocms/mesh 2.94.0 → 2.95.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/dist/client/assets/{AlertCircle-j0KzIdIX.js → AlertCircle-CLqpetp3.js} +1 -1
  2. package/dist/client/assets/{AlertOctagon-BgwSXYuk.js → AlertOctagon-Bm3YQbCK.js} +1 -1
  3. package/dist/client/assets/{ArrowLeft-6dlMDZD7.js → ArrowLeft-CVJRTp5M.js} +1 -1
  4. package/dist/client/assets/{ArrowUp-C1DJqgoZ.js → ArrowUp-DOFmnz7E.js} +1 -1
  5. package/dist/client/assets/{Check-C5QtWx2D.js → Check-BMMJom8I.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-EHieoMk6.js → CheckCircle-BDM3ZVN9.js} +1 -1
  7. package/dist/client/assets/{CheckDone01-SCPIkQCe.js → CheckDone01-C3s3Z88L.js} +1 -1
  8. package/dist/client/assets/{ChevronDown-BLfACJvJ.js → ChevronDown-BL7lzhv9.js} +1 -1
  9. package/dist/client/assets/{ChevronRight-DnWxHWge.js → ChevronRight-BPxK7G27.js} +1 -1
  10. package/dist/client/assets/{Clock-BYemExR5.js → Clock-CqiwuDel.js} +1 -1
  11. package/dist/client/assets/{Code01-DM216x2v.js → Code01-D9KWdh_W.js} +1 -1
  12. package/dist/client/assets/{Copy01-B0_tEmE3.js → Copy01-CE_3gibw.js} +1 -1
  13. package/dist/client/assets/{Dataflow03-C_xLhNUT.js → Dataflow03-f3Hpp69e.js} +1 -1
  14. package/dist/client/assets/{DotsHorizontal-DRvl8_yh.js → DotsHorizontal-C6NHDs3f.js} +1 -1
  15. package/dist/client/assets/{DotsVertical-G8ImM-fa.js → DotsVertical-DHC0rwqm.js} +1 -1
  16. package/dist/client/assets/{Download01-ZPaYMSna.js → Download01-CicBjzNH.js} +1 -1
  17. package/dist/client/assets/{Edit01-Lq8UOkVd.js → Edit01-Byy-AKbB.js} +1 -1
  18. package/dist/client/assets/{Eye-ByHE2GJe.js → Eye-yf1jJKzI.js} +1 -1
  19. package/dist/client/assets/{File02-dG5TfZkb.js → File02-DqDh6mSH.js} +1 -1
  20. package/dist/client/assets/{File06-Cww6dYwi.js → File06-CQanWHVf.js} +1 -1
  21. package/dist/client/assets/{FilterLines-CadzWYuC.js → FilterLines-BlanbAin.js} +1 -1
  22. package/dist/client/assets/{Grid01-D_3V4UIT.js → Grid01-DtHFsYOi.js} +1 -1
  23. package/dist/client/assets/{Home02-BtcHSeDX.js → Home02-CHnEkz3T.js} +1 -1
  24. package/dist/client/assets/{Image01-CrD1aqdp.js → Image01-B65JuZzZ.js} +1 -1
  25. package/dist/client/assets/{Inbox01-CU36sLHT.js → Inbox01-RWtif62W.js} +1 -1
  26. package/dist/client/assets/{InfoCircle-DJLnyVJD.js → InfoCircle-DI5p3V0K.js} +1 -1
  27. package/dist/client/assets/{Key01-sSzNClAs.js → Key01-3Y-x-x3n.js} +1 -1
  28. package/dist/client/assets/{LinkExternal01-YszpKCPw.js → LinkExternal01-9W1MDBkK.js} +1 -1
  29. package/dist/client/assets/{List-BzgZveoS.js → List-11sniaX1.js} +1 -1
  30. package/dist/client/assets/{Loading01-5hc3T6Gd.js → Loading01-DPtmmmOt.js} +1 -1
  31. package/dist/client/assets/{Lock01-C9-6HhjA.js → Lock01-BTGNl95c.js} +1 -1
  32. package/dist/client/assets/{Pin01-HGARLW8T.js → Pin01-CtjhgIzh.js} +1 -1
  33. package/dist/client/assets/{Play-CwkyX1Lx.js → Play-D5itgCOZ.js} +1 -1
  34. package/dist/client/assets/{Plus-Dn73MiSM.js → Plus-CN5tbLNe.js} +1 -1
  35. package/dist/client/assets/{RefreshCcw01-CtqWKAvv.js → RefreshCcw01-DRg8Mk2g.js} +1 -1
  36. package/dist/client/assets/{RefreshCw01-BqgcQ10A.js → RefreshCw01-2HpMOz8W.js} +1 -1
  37. package/dist/client/assets/{SearchMd-Czj8XGUX.js → SearchMd-Betk3rBo.js} +1 -1
  38. package/dist/client/assets/{Settings01-Dk3-DPld.js → Settings01-07fksFG_.js} +1 -1
  39. package/dist/client/assets/{Settings02-CaNoLwfL.js → Settings02-MDWLfV41.js} +1 -1
  40. package/dist/client/assets/{Share07-Bt_j0pH2.js → Share07-BfANp82q.js} +1 -1
  41. package/dist/client/assets/{Terminal-DlCWfDrb.js → Terminal-CuYYxDF4.js} +1 -1
  42. package/dist/client/assets/{Tool01-Bj8w--YE.js → Tool01-3DW2qy8C.js} +1 -1
  43. package/dist/client/assets/{Trash01-OGm6m6Nc.js → Trash01-CCqQwydP.js} +1 -1
  44. package/dist/client/assets/{Upload01-oWeoIlBw.js → Upload01-DwNbrcQ6.js} +1 -1
  45. package/dist/client/assets/{Users03-CSqNlpDP.js → Users03-CPBUdnD5.js} +1 -1
  46. package/dist/client/assets/{X-B7oOOayR.js → X-CjwxFw73.js} +1 -1
  47. package/dist/client/assets/{XClose-BoGXvnQN.js → XClose-CLb1rJTw.js} +1 -1
  48. package/dist/client/assets/{agent-connections-preview-D0tJithr.js → agent-connections-preview-BES18u3D.js} +1 -1
  49. package/dist/client/assets/{agent-detail-BAEmFvyw.js → agent-detail-CWbbQyJk.js} +1 -1
  50. package/dist/client/assets/{agents-8OgY3q49.js → agents-DtFnve8f.js} +1 -1
  51. package/dist/client/assets/{alert-dialog-DbDLG2bb.js → alert-dialog-BkwvDgw-.js} +1 -1
  52. package/dist/client/assets/{auth-catchall-CSK2qJvQ.js → auth-catchall-CKWQYOLN.js} +1 -1
  53. package/dist/client/assets/{avatar-Cmlnx_C9.js → avatar-ORBqoDjU.js} +1 -1
  54. package/dist/client/assets/{badge-Cx_QA8bK.js → badge-DXtLjyw_.js} +1 -1
  55. package/dist/client/assets/{binder-Uir9nDQX.js → binder-AxgsrJFT.js} +1 -1
  56. package/dist/client/assets/{breadcrumb-C3FvNwVA.js → breadcrumb-BcXcumeP.js} +1 -1
  57. package/dist/client/assets/{button-uGDTfTKe.js → button-C-7_0V7a.js} +1 -1
  58. package/dist/client/assets/{card-iB3dEEBq.js → card-CeZrPhCk.js} +1 -1
  59. package/dist/client/assets/{checkbox-DlxK4giK.js → checkbox-BwhVfqxs.js} +1 -1
  60. package/dist/client/assets/{circle-alert-BfwB-QbZ.js → circle-alert-B-eBjNwv.js} +1 -1
  61. package/dist/client/assets/{collection-detail-gKM8GfH1.js → collection-detail-L1PjfmwI.js} +1 -1
  62. package/dist/client/assets/{collection-search-DJnwTt8_.js → collection-search-BVSPmrDZ.js} +1 -1
  63. package/dist/client/assets/{collection-tab-CL4PGzJi.js → collection-tab-BC_by_4H.js} +1 -1
  64. package/dist/client/assets/{collection-table-wrapper-Dfa5iGyr.js → collection-table-wrapper-G1fUZVLa.js} +1 -1
  65. package/dist/client/assets/{collection-tabs-DQIxnf5_.js → collection-tabs-BXnzgmA7.js} +1 -1
  66. package/dist/client/assets/{command-CmjP7-sd.js → command-DoWuu0la.js} +1 -1
  67. package/dist/client/assets/{connect-Bhbh52h6.js → connect-D0u6psb3.js} +1 -1
  68. package/dist/client/assets/{connection-card-r6lGrO9Z.js → connection-card-DAIeWDBs.js} +1 -1
  69. package/dist/client/assets/{connection-detail-BwQb7zY3.js → connection-detail-CN3fbr8d.js} +1 -1
  70. package/dist/client/assets/{connections-Dzev22uX.js → connections-C4ChPQKJ.js} +1 -1
  71. package/dist/client/assets/{constants-CIhuTv50.js → constants-adA7cL3b.js} +1 -1
  72. package/dist/client/assets/constants-igCZQhi8.js +1 -0
  73. package/dist/client/assets/{create-organization-dialog-BCHRnFB_.js → create-organization-dialog-5hLc_Pao.js} +1 -1
  74. package/dist/client/assets/{create-project-dialog-BjcXzhvN.js → create-project-dialog-XKAYxmAD.js} +1 -1
  75. package/dist/client/assets/{dialog-Djkrqbm4.js → dialog-B5zyImrF.js} +1 -1
  76. package/dist/client/assets/{dropdown-menu-DAtjzZqM.js → dropdown-menu-CSqora6o.js} +1 -1
  77. package/dist/client/assets/{dynamic-plugin-layout-BX3kUg6t.js → dynamic-plugin-layout-KOkoYrI7.js} +1 -1
  78. package/dist/client/assets/{empty-state-B4Xs8BbY.js → empty-state-BMPJp53G.js} +1 -1
  79. package/dist/client/assets/{empty-state-D0gJavvT.js → empty-state-CMzSkRBu.js} +1 -1
  80. package/dist/client/assets/{env-vars-editor-DSV90YYy.js → env-vars-editor-RI6YtPxT.js} +1 -1
  81. package/dist/client/assets/{error-boundary-C-Q55BuJ.js → error-boundary-CSrQzXST.js} +1 -1
  82. package/dist/client/assets/{extract-connection-data-xNwT9mtT.js → extract-connection-data-BvlpRQhA.js} +1 -1
  83. package/dist/client/assets/{file-browser-K49CpZUF.js → file-browser-yzqA_YCR.js} +2 -2
  84. package/dist/client/assets/{form-Bk7wyfiz.js → form-DUYVVxjy.js} +1 -1
  85. package/dist/client/assets/{grid-view-BKVj8VSk.js → grid-view-B2DrnZxG.js} +1 -1
  86. package/dist/client/assets/{home-by7QPDwa.js → home-CIg0cGrw.js} +1 -1
  87. package/dist/client/assets/{index-FIsnCxJr.js → index-BJ4kHuEg.js} +1 -1
  88. package/dist/client/assets/index-BfOIHnQt.css +1 -0
  89. package/dist/client/assets/{index-B4DGyuZW.js → index-Btd8r7au.js} +1 -1
  90. package/dist/client/assets/{index-BHw6ELR5.js → index-CS81ntXN.js} +2 -2
  91. package/dist/client/assets/{index-Bddg6gZB.js → index-CbXJIwEX.js} +1 -1
  92. package/dist/client/assets/{index-CJhE8yKG.js → index-DELTwqul.js} +1 -1
  93. package/dist/client/assets/{index-DzHM-DwB.js → index-DUX6M9eU.js} +1 -1
  94. package/dist/client/assets/{index-CD4iOgE7.js → index-Dbbv7mgY.js} +1 -1
  95. package/dist/client/assets/{index-C7jtMR1a.js → index-eeT-CIju.js} +4 -4
  96. package/dist/client/assets/{index-Bur8hacl.js → index-wPpH52C9.js} +1 -1
  97. package/dist/client/assets/{infiniteQueryObserver-Zdbaiai7.js → infiniteQueryObserver-B-r-Rb8l.js} +1 -1
  98. package/dist/client/assets/{input-Bb_Is7TQ.js → input-BajunDqf.js} +1 -1
  99. package/dist/client/assets/{integration-icon-BDbW1I_P.js → integration-icon-f4ZY8s0G.js} +1 -1
  100. package/dist/client/assets/{label-jQ9Y0bqG.js → label-XO6QbBOg.js} +1 -1
  101. package/dist/client/assets/{layout-fK9zuUWE.js → layout-Ct3y7T4n.js} +1 -1
  102. package/dist/client/assets/{localstorage-keys-D2n2DXCy.js → localstorage-keys-73gHaqha.js} +1 -1
  103. package/dist/client/assets/{login-5ohFFTdJ.js → login-CanEmwZD.js} +1 -1
  104. package/dist/client/assets/{mcp-oauth-Bd_j2s3F.js → mcp-oauth-ClWEQLqD.js} +1 -1
  105. package/dist/client/assets/{mcp-server-card-BVKsh68h.js → mcp-server-card-3TY5I2j5.js} +1 -1
  106. package/dist/client/assets/{mcp-server-detail-DYhvID4P.js → mcp-server-detail-B4alU4_P.js} +2 -2
  107. package/dist/client/assets/{members-NKjnK3ym.js → members-CugOUarU.js} +1 -1
  108. package/dist/client/assets/{monitoring-CvMsjZ4V.js → monitoring-C2S3-Mw9.js} +1 -1
  109. package/dist/client/assets/{monitoring-dashboard-edit-BWTd-7SE.js → monitoring-dashboard-edit-YwRIzIec.js} +1 -1
  110. package/dist/client/assets/{monitoring-dashboard-view-BBMFO1Hp.js → monitoring-dashboard-view-NNuQaOcr.js} +1 -1
  111. package/dist/client/assets/{oauth-callback-Cfxs1XX-.js → oauth-callback-APvZzmso.js} +1 -1
  112. package/dist/client/assets/{page-BNCnlGEL.js → page-CSsXRrAb.js} +1 -1
  113. package/dist/client/assets/{page-C1pjP9Vh.js → page-CsCk8-VS.js} +1 -1
  114. package/dist/client/assets/{plugin-empty-state-CBnqo-9I.js → plugin-empty-state-Bthc2x-z.js} +1 -1
  115. package/dist/client/assets/{plugin-empty-state-C9VZo2uN.js → plugin-empty-state-CWG9gyFs.js} +1 -1
  116. package/dist/client/assets/{plugin-header-BkNoP5j1.js → plugin-header-Bxfpk_UG.js} +1 -1
  117. package/dist/client/assets/{plugin-header-_3DibYH3.js → plugin-header-CGqqZnqb.js} +1 -1
  118. package/dist/client/assets/{popover-DSuia8V-.js → popover-BYcEkar5.js} +1 -1
  119. package/dist/client/assets/{project-layout-CXN_QDXD.js → project-layout-t_7XabTP.js} +1 -1
  120. package/dist/client/assets/{project-settings-1nIiogcH.js → project-settings-DaPP16CG.js} +1 -1
  121. package/dist/client/assets/{projects-list-CxoFKZsZ.js → projects-list-h5ZsCKoX.js} +1 -1
  122. package/dist/client/assets/{registry-utils-n_q5XbrA.js → registry-utils-BybKuMhJ.js} +1 -1
  123. package/dist/client/assets/{resizable-PI_rMJEl.js → resizable-BylOVX4A.js} +1 -1
  124. package/dist/client/assets/{save-actions-DRuBsCtk.js → save-actions-CyLsYHNh.js} +1 -1
  125. package/dist/client/assets/{scroll-area-DyM_jTU0.js → scroll-area-J1BL0nzT.js} +1 -1
  126. package/dist/client/assets/{select-e1w6AMgG.js → select-MyJYpY4F.js} +1 -1
  127. package/dist/client/assets/{shell-layout-Chb28hAj.js → shell-layout-Cpqd9CA1.js} +3 -3
  128. package/dist/client/assets/{spinner-50t_5sK1.js → spinner-ym9xew5A.js} +1 -1
  129. package/dist/client/assets/{store-invite-CfusxH-f.js → store-invite-CpNKnfjF.js} +1 -1
  130. package/dist/client/assets/{switch-DfJWmJbl.js → switch-Ct3ZLSSt.js} +1 -1
  131. package/dist/client/assets/{table-CjEYCP4J.js → table-CejAgX-C.js} +1 -1
  132. package/dist/client/assets/{tasks-BFTBHo10.js → tasks-4mHd3v_t.js} +1 -1
  133. package/dist/client/assets/{textarea-cmxXPWPP.js → textarea-CPdfSrxZ.js} +1 -1
  134. package/dist/client/assets/{time-range-picker-CgJDmhVP.js → time-range-picker-DSJXNVH8.js} +1 -1
  135. package/dist/client/assets/{toggle-group-DPJARcjw.js → toggle-group-CMN0_5r8.js} +1 -1
  136. package/dist/client/assets/{tools-list-BtJ_PE1H.js → tools-list-TRBo24hy.js} +1 -1
  137. package/dist/client/assets/{tooltip-Cw3XU4NX.js → tooltip-BTwM0JSq.js} +1 -1
  138. package/dist/client/assets/{topbar-portal-BgbaZUfk.js → topbar-portal-CBAfTf2l.js} +1 -1
  139. package/dist/client/assets/{typewriter-title-DbWojJan.js → typewriter-title-C7tgOsRH.js} +1 -1
  140. package/dist/client/assets/{use-binding-BaVHLV4F.js → use-binding-ZsF7Sr1I.js} +1 -1
  141. package/dist/client/assets/{use-connection-BWwxbNp9.js → use-connection-5z_1hsJa.js} +1 -1
  142. package/dist/client/assets/{use-create-virtual-mcp-G8uYgZJA.js → use-create-virtual-mcp-C3p9LcqH.js} +1 -1
  143. package/dist/client/assets/{use-deco-chat-open-BXvSnqAG.js → use-deco-chat-open-C0exN0XE.js} +2 -2
  144. package/dist/client/assets/{use-install-from-registry-CnpW5eWM.js → use-install-from-registry-DKO6gQcy.js} +1 -1
  145. package/dist/client/assets/{use-list-state-D2v6Hz5J.js → use-list-state-DKsYJOUU.js} +1 -1
  146. package/dist/client/assets/{use-llm-DSbhxgKh.js → use-llm-C20fmI29.js} +1 -1
  147. package/dist/client/assets/{use-mcp-prompts-xMiR4WPu.js → use-mcp-prompts-E785MscJ.js} +1 -1
  148. package/dist/client/assets/{use-mcp-tools-C8U12OPz.js → use-mcp-tools-DUFx-2Pv.js} +1 -1
  149. package/dist/client/assets/{use-mobile-XORtk01Y.js → use-mobile-CvSt_qzn.js} +1 -1
  150. package/dist/client/assets/{use-organization-settings-Ceh3kGcw.js → use-organization-settings-Dt1gkBue.js} +1 -1
  151. package/dist/client/assets/{use-project-BzX6yA4j.js → use-project-3Ug2XYz8.js} +1 -1
  152. package/dist/client/assets/{use-virtual-mcp-CljEtWT3.js → use-virtual-mcp-D2ugP2Xl.js} +1 -1
  153. package/dist/client/assets/useInfiniteQuery-DlYGhHQH.js +1 -0
  154. package/dist/client/assets/{useMutation-6eAmA_sQ.js → useMutation-XZP6xxfW.js} +1 -1
  155. package/dist/client/assets/useQuery-CJZVZNDm.js +1 -0
  156. package/dist/client/assets/useSuspenseInfiniteQuery-Ce64jVnz.js +1 -0
  157. package/dist/client/assets/{view-mode-toggle-Cynyu4xY.js → view-mode-toggle-DVFdVU1J.js} +1 -1
  158. package/dist/client/assets/{workflow-BvStAxqo.js → workflow-BivNC1fl.js} +1 -1
  159. package/dist/client/index.html +2 -2
  160. package/dist/server/cli.js +2 -2
  161. package/dist/server/server.js +1 -1
  162. package/package.json +1 -1
  163. package/dist/client/assets/constants-C4qr_kek.js +0 -1
  164. package/dist/client/assets/index-Dtd3eJDL.css +0 -1
  165. package/dist/client/assets/useInfiniteQuery-BuyPuSfd.js +0 -1
  166. package/dist/client/assets/useQuery-Dke1OZg8.js +0 -1
  167. package/dist/client/assets/useSuspenseInfiniteQuery-SwWrV--F.js +0 -1
@@ -1268,7 +1268,7 @@ Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
1268
1268
  Option 2 - OIDC token:
1269
1269
  Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`;return new Y({message:Z,statusCode:G,cause:K,generationId:W})}},Fv0="GatewayInvalidRequestError",VD4=`vercel.ai.gateway.error.${Fv0}`,xS0=Symbol.for(VD4),gS0,uS0,qD4=class extends(uS0=tQ,gS0=xS0,uS0){constructor({message:Y="Invalid request",statusCode:Q=400,cause:X,generationId:J}={}){super({message:Y,statusCode:Q,cause:X,generationId:J});this[gS0]=!0,this.name=Fv0,this.type="invalid_request_error"}static isInstance(Y){return tQ.hasMarker(Y)&&xS0 in Y}},$v0="GatewayRateLimitError",BD4=`vercel.ai.gateway.error.${$v0}`,mS0=Symbol.for(BD4),lS0,dS0,UD4=class extends(dS0=tQ,lS0=mS0,dS0){constructor({message:Y="Rate limit exceeded",statusCode:Q=429,cause:X,generationId:J}={}){super({message:Y,statusCode:Q,cause:X,generationId:J});this[lS0]=!0,this.name=$v0,this.type="rate_limit_exceeded"}static isInstance(Y){return tQ.hasMarker(Y)&&mS0 in Y}},Vv0="GatewayModelNotFoundError",zD4=`vercel.ai.gateway.error.${Vv0}`,pS0=Symbol.for(zD4),DD4=e9(()=>J8(B.object({modelId:B.string()}))),cS0,nS0,OD4=class extends(nS0=tQ,cS0=pS0,nS0){constructor({message:Y="Model not found",statusCode:Q=404,modelId:X,cause:J,generationId:G}={}){super({message:Y,statusCode:Q,cause:J,generationId:G});this[cS0]=!0,this.name=Vv0,this.type="model_not_found",this.modelId=X}static isInstance(Y){return tQ.hasMarker(Y)&&pS0 in Y}},qv0="GatewayInternalServerError",LD4=`vercel.ai.gateway.error.${qv0}`,iS0=Symbol.for(LD4),aS0,rS0,oS0=class extends(rS0=tQ,aS0=iS0,rS0){constructor({message:Y="Internal server error",statusCode:Q=500,cause:X,generationId:J}={}){super({message:Y,statusCode:Q,cause:X,generationId:J});this[aS0]=!0,this.name=qv0,this.type="internal_server_error"}static isInstance(Y){return tQ.hasMarker(Y)&&iS0 in Y}},Bv0="GatewayResponseError",ND4=`vercel.ai.gateway.error.${Bv0}`,sS0=Symbol.for(ND4),tS0,eS0,MD4=class extends(eS0=tQ,tS0=sS0,eS0){constructor({message:Y="Invalid response from Gateway",statusCode:Q=502,response:X,validationError:J,cause:G,generationId:K}={}){super({message:Y,statusCode:Q,cause:G,generationId:K});this[tS0]=!0,this.name=Bv0,this.type="response_error",this.response=X,this.validationError=J}static isInstance(Y){return tQ.hasMarker(Y)&&sS0 in Y}};async function Yv0({response:Y,statusCode:Q,defaultMessage:X="Gateway request failed",cause:J,authMethod:G}){var K;let W=await sQ({value:Y,schema:wD4});if(!W.success){let V=typeof Y==="object"&&Y!==null&&"generationId"in Y?Y.generationId:void 0;return new MD4({message:`Invalid error response format: ${X}`,statusCode:Q,response:Y,validationError:W.error,cause:J,generationId:V})}let Z=W.value,H=Z.error.type,F=Z.error.message,$=(K=Z.generationId)!=null?K:void 0;switch(H){case"authentication_error":return Md.createContextualError({apiKeyProvided:G==="api-key",oidcTokenProvided:G==="oidc",statusCode:Q,cause:J,generationId:$});case"invalid_request_error":return new qD4({message:F,statusCode:Q,cause:J,generationId:$});case"rate_limit_exceeded":return new UD4({message:F,statusCode:Q,cause:J,generationId:$});case"model_not_found":{let V=await sQ({value:Z.error.param,schema:DD4});return new OD4({message:F,statusCode:Q,modelId:V.success?V.value.modelId:void 0,cause:J,generationId:$})}case"internal_server_error":return new oS0({message:F,statusCode:Q,cause:J,generationId:$});default:return new oS0({message:F,statusCode:Q,cause:J,generationId:$})}}var wD4=e9(()=>J8(B.object({error:B.object({message:B.string(),type:B.string().nullish(),param:B.unknown().nullish(),code:B.union([B.string(),B.number()]).nullish()}),generationId:B.string().nullish()}))),Uv0="GatewayTimeoutError",AD4=`vercel.ai.gateway.error.${Uv0}`,Qv0=Symbol.for(AD4),Xv0,Jv0,Gv0=class Y extends(Jv0=tQ,Xv0=Qv0,Jv0){constructor({message:Q="Request timed out",statusCode:X=408,cause:J,generationId:G}={}){super({message:Q,statusCode:X,cause:J,generationId:G});this[Xv0]=!0,this.name=Uv0,this.type="timeout_error"}static isInstance(Q){return tQ.hasMarker(Q)&&Qv0 in Q}static createTimeoutError({originalMessage:Q,statusCode:X=408,cause:J,generationId:G}){let K=`Gateway request timed out: ${Q}
1270
1270
 
1271
- This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`;return new Y({message:K,statusCode:X,cause:J,generationId:G})}};function Wv0(Y){if(!(Y instanceof Error))return!1;let Q=Y.code;if(typeof Q==="string")return["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(Q);return!1}async function b3(Y,Q){var X;if(tQ.isInstance(Y))return Y;if(Wv0(Y))return Gv0.createTimeoutError({originalMessage:Y instanceof Error?Y.message:"Unknown error",cause:Y});if(b9.isInstance(Y)){if(Y.cause&&Wv0(Y.cause))return Gv0.createTimeoutError({originalMessage:Y.message,cause:Y});return await Yv0({response:PD4(Y),statusCode:(X=Y.statusCode)!=null?X:500,defaultMessage:"Gateway request failed",cause:Y,authMethod:Q})}return await Yv0({response:{},statusCode:500,defaultMessage:Y instanceof Error?`Gateway request failed: ${Y.message}`:"Unknown Gateway error",cause:Y,authMethod:Q})}function PD4(Y){if(Y.data!==void 0)return Y.data;if(Y.responseBody!=null)try{return JSON.parse(Y.responseBody)}catch(Q){return Y.responseBody}return{}}var zv0="ai-gateway-auth-method";async function eB(Y){let Q=await sQ({value:Y[zv0],schema:ED4});return Q.success?Q.value:void 0}var ED4=e9(()=>J8(B.union([B.literal("api-key"),B.literal("oidc")]))),Zv0=class{constructor(Y){this.config=Y}async getAvailableModels(){try{let{value:Y}=await eH1({url:`${this.config.baseURL}/config`,headers:await $Y(this.config.headers()),successfulResponseHandler:nG(TD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(Q)=>Q}),fetch:this.config.fetch});return Y}catch(Y){throw await b3(Y)}}async getCredits(){try{let Y=new URL(this.config.baseURL),{value:Q}=await eH1({url:`${Y.origin}/v1/credits`,headers:await $Y(this.config.headers()),successfulResponseHandler:nG(CD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(X)=>X}),fetch:this.config.fetch});return Q}catch(Y){throw await b3(Y)}}},TD4=e9(()=>J8(B.object({models:B.array(B.object({id:B.string(),name:B.string(),description:B.string().nullish(),pricing:B.object({input:B.string(),output:B.string(),input_cache_read:B.string().nullish(),input_cache_write:B.string().nullish()}).transform(({input:Y,output:Q,input_cache_read:X,input_cache_write:J})=>({input:Y,output:Q,...X?{cachedInputTokens:X}:{},...J?{cacheCreationInputTokens:J}:{}})).nullish(),specification:B.object({specificationVersion:B.literal("v3"),provider:B.string(),modelId:B.string()}),modelType:B.enum(["embedding","image","language","video"]).nullish()}))}))),CD4=e9(()=>J8(B.object({balance:B.string(),total_used:B.string()}).transform(({balance:Y,total_used:Q})=>({balance:Y,totalUsed:Q})))),RD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(Y){let{abortSignal:Q,...X}=Y;return{args:this.maybeEncodeFileParts(X),warnings:[]}}async doGenerate(Y){let{args:Q,warnings:X}=await this.getArgs(Y),{abortSignal:J}=Y,G=await $Y(this.config.headers());try{let{responseHeaders:K,value:W,rawValue:Z}=await f3({url:this.getUrl(),headers:k3(G,Y.headers,this.getModelConfigHeaders(this.modelId,!1),await $Y(this.config.o11yHeaders)),body:Q,successfulResponseHandler:nG(B.any()),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(H)=>H}),...J&&{abortSignal:J},fetch:this.config.fetch});return{...W,request:{body:Q},response:{headers:K,body:Z},warnings:X}}catch(K){throw await b3(K,await eB(G))}}async doStream(Y){let{args:Q,warnings:X}=await this.getArgs(Y),{abortSignal:J}=Y,G=await $Y(this.config.headers());try{let{value:K,responseHeaders:W}=await f3({url:this.getUrl(),headers:k3(G,Y.headers,this.getModelConfigHeaders(this.modelId,!0),await $Y(this.config.o11yHeaders)),body:Q,successfulResponseHandler:rj0(B.any()),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(Z)=>Z}),...J&&{abortSignal:J},fetch:this.config.fetch});return{stream:K.pipeThrough(new TransformStream({start(Z){if(X.length>0)Z.enqueue({type:"stream-start",warnings:X})},transform(Z,H){if(Z.success){let F=Z.value;if(F.type==="raw"&&!Y.includeRawChunks)return;if(F.type==="response-metadata"&&F.timestamp&&typeof F.timestamp==="string")F.timestamp=new Date(F.timestamp);H.enqueue(F)}else H.error(Z.error)}})),request:{body:Q},response:{headers:W}}}catch(K){throw await b3(K,await eB(G))}}isFilePart(Y){return Y&&typeof Y==="object"&&"type"in Y&&Y.type==="file"}maybeEncodeFileParts(Y){for(let Q of Y.prompt)for(let X of Q.content)if(this.isFilePart(X)){let J=X;if(J.data instanceof Uint8Array){let G=Uint8Array.from(J.data),K=Buffer.from(G).toString("base64");J.data=new URL(`data:${J.mediaType||"application/octet-stream"};base64,${K}`)}}return Y}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(Y,Q){return{"ai-language-model-specification-version":"3","ai-language-model-id":Y,"ai-language-model-streaming":String(Q)}}},ID4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:Y,headers:Q,abortSignal:X,providerOptions:J}){var G;let K=await $Y(this.config.headers());try{let{responseHeaders:W,value:Z,rawValue:H}=await f3({url:this.getUrl(),headers:k3(K,Q!=null?Q:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{values:Y,...J?{providerOptions:J}:{}},successfulResponseHandler:nG(jD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(F)=>F}),...X&&{abortSignal:X},fetch:this.config.fetch});return{embeddings:Z.embeddings,usage:(G=Z.usage)!=null?G:void 0,providerMetadata:Z.providerMetadata,response:{headers:W,body:H},warnings:[]}}catch(W){throw await b3(W,await eB(K))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},jD4=e9(()=>J8(B.object({embeddings:B.array(B.array(B.number())),usage:B.object({tokens:B.number()}).nullish(),providerMetadata:B.record(B.string(),B.record(B.string(),B.unknown())).optional()}))),SD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:Y,n:Q,size:X,aspectRatio:J,seed:G,files:K,mask:W,providerOptions:Z,headers:H,abortSignal:F}){var $,V,q,U;let z=await $Y(this.config.headers());try{let{responseHeaders:D,value:M,rawValue:w}=await f3({url:this.getUrl(),headers:k3(z,H!=null?H:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{prompt:Y,n:Q,...X&&{size:X},...J&&{aspectRatio:J},...G&&{seed:G},...Z&&{providerOptions:Z},...K&&{files:K.map((R)=>Kv0(R))},...W&&{mask:Kv0(W)}},successfulResponseHandler:nG(yD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(R)=>R}),...F&&{abortSignal:F},fetch:this.config.fetch});return{images:M.images,warnings:($=M.warnings)!=null?$:[],providerMetadata:M.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:D},...M.usage!=null&&{usage:{inputTokens:(V=M.usage.inputTokens)!=null?V:void 0,outputTokens:(q=M.usage.outputTokens)!=null?q:void 0,totalTokens:(U=M.usage.totalTokens)!=null?U:void 0}}}}catch(D){throw b3(D,await eB(z))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Kv0(Y){if(Y.type==="file"&&Y.data instanceof Uint8Array)return{...Y,data:_3(Y.data)};return Y}var vD4=B.object({images:B.array(B.unknown()).optional()}).catchall(B.unknown()),kD4=B.discriminatedUnion("type",[B.object({type:B.literal("unsupported"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("compatibility"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("other"),message:B.string()})]),_D4=B.object({inputTokens:B.number().nullish(),outputTokens:B.number().nullish(),totalTokens:B.number().nullish()}),yD4=B.object({images:B.array(B.string()),warnings:B.array(kD4).optional(),providerMetadata:B.record(B.string(),vD4).optional(),usage:_D4.optional()}),fD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:Y,n:Q,aspectRatio:X,resolution:J,duration:G,fps:K,seed:W,image:Z,providerOptions:H,headers:F,abortSignal:$}){var V;let q=await $Y(this.config.headers());try{let{responseHeaders:U,value:z,rawValue:D}=await f3({url:this.getUrl(),headers:k3(q,F!=null?F:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{prompt:Y,n:Q,...X&&{aspectRatio:X},...J&&{resolution:J},...G&&{duration:G},...K&&{fps:K},...W&&{seed:W},...H&&{providerOptions:H},...Z&&{image:bD4(Z)}},successfulResponseHandler:nG(uD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(M)=>M}),...$&&{abortSignal:$},fetch:this.config.fetch});return{videos:z.videos,warnings:(V=z.warnings)!=null?V:[],providerMetadata:z.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:U}}}catch(U){throw b3(U,await eB(q))}}getUrl(){return`${this.config.baseURL}/video-model`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"3","ai-model-id":this.modelId}}};function bD4(Y){if(Y.type==="file"&&Y.data instanceof Uint8Array)return{...Y,data:_3(Y.data)};return Y}var hD4=B.object({videos:B.array(B.unknown()).optional()}).catchall(B.unknown()),xD4=B.union([B.object({type:B.literal("url"),url:B.string(),mediaType:B.string()}),B.object({type:B.literal("base64"),data:B.string(),mediaType:B.string()})]),gD4=B.discriminatedUnion("type",[B.object({type:B.literal("unsupported"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("compatibility"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("other"),message:B.string()})]),uD4=B.object({videos:B.array(xD4),warnings:B.array(gD4).optional(),providerMetadata:B.record(B.string(),hD4).optional()}),mD4=e9(()=>J8(B.object({objective:B.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:B.array(B.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:B.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:B.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:B.object({include_domains:B.array(B.string()).optional().describe("List of domains to include in search results."),exclude_domains:B.array(B.string()).optional().describe("List of domains to exclude from search results."),after_date:B.string().optional().describe("Only include results published after this date (ISO 8601 format).")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:B.object({max_chars_per_result:B.number().optional().describe("Maximum characters per result."),max_chars_total:B.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:B.object({max_age_seconds:B.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),lD4=e9(()=>J8(B.union([B.object({searchId:B.string(),results:B.array(B.object({url:B.string(),title:B.string(),excerpt:B.string(),publishDate:B.string().nullable().optional(),relevanceScore:B.number().optional()}))}),B.object({error:B.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:B.number().optional(),message:B.string()})]))),dD4=Ud({id:"gateway.parallel_search",inputSchema:mD4,outputSchema:lD4}),pD4=(Y={})=>dD4(Y),cD4=e9(()=>J8(B.object({query:B.union([B.string(),B.array(B.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:B.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:B.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:B.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:B.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:B.array(B.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:B.array(B.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:B.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:B.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:B.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:B.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:B.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),nD4=e9(()=>J8(B.union([B.object({results:B.array(B.object({title:B.string(),url:B.string(),snippet:B.string(),date:B.string().optional(),lastUpdated:B.string().optional()})),id:B.string()}),B.object({error:B.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:B.number().optional(),message:B.string()})]))),iD4=Ud({id:"gateway.perplexity_search",inputSchema:cD4,outputSchema:nD4}),aD4=(Y={})=>iD4(Y),rD4={parallelSearch:pD4,perplexitySearch:aD4};async function oD4(){var Y;return(Y=Dv0.getContext().headers)==null?void 0:Y["x-vercel-id"]}var sD4="3.0.44",tD4="0.0.1";function eD4(Y={}){var Q,X;let J=null,G=null,K=(Q=Y.metadataCacheRefreshMillis)!=null?Q:300000,W=0,Z=(X=oj0(Y.baseURL))!=null?X:"https://ai-gateway.vercel.sh/v3/ai",H=async()=>{try{let D=await YO4(Y);return y3({Authorization:`Bearer ${D.token}`,"ai-gateway-protocol-version":tD4,[zv0]:D.authMethod,...Y.headers},`ai-sdk/gateway/${sD4}`)}catch(D){throw Md.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:D})}},F=()=>{let D=_R({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),M=_R({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),w=_R({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{let R=await oD4();return{...D&&{"ai-o11y-deployment-id":D},...M&&{"ai-o11y-environment":M},...w&&{"ai-o11y-region":w},...R&&{"ai-o11y-request-id":R}}}},$=(D)=>{return new RD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},V=async()=>{var D,M,w;let R=(w=(M=(D=Y._internal)==null?void 0:D.currentDate)==null?void 0:M.call(D).getTime())!=null?w:Date.now();if(!J||R-W>K)W=R,J=new Zv0({baseURL:Z,headers:H,fetch:Y.fetch}).getAvailableModels().then((P)=>{return G=P,P}).catch(async(P)=>{throw await b3(P,await eB(await H()))});return G?Promise.resolve(G):J},q=async()=>{return new Zv0({baseURL:Z,headers:H,fetch:Y.fetch}).getCredits().catch(async(D)=>{throw await b3(D,await eB(await H()))})},U=function(D){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return $(D)};U.specificationVersion="v3",U.getAvailableModels=V,U.getCredits=q,U.imageModel=(D)=>{return new SD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},U.languageModel=$;let z=(D)=>{return new ID4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})};return U.embeddingModel=z,U.textEmbeddingModel=z,U.videoModel=(D)=>{return new fD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},U.chat=U.languageModel,U.embedding=U.embeddingModel,U.image=U.imageModel,U.video=U.videoModel,U.tools=rD4,U}var Lv0=eD4();async function YO4(Y){let Q=_R({settingValue:Y.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});if(Q)return{token:Q,authMethod:"api-key"};return{token:await Ov0.getVercelOidcToken(),authMethod:"oidc"}}U4();U4();U4();U4();U4();U4();var kk0=t6(s1(),1),IN=t6(s1(),1);U4();U4();var QO4=Object.defineProperty,XO4=(Y,Q)=>{for(var X in Q)QO4(Y,X,{get:Q[X],enumerable:!0})},vv0="AI_InvalidArgumentError",kv0=`vercel.ai.error.${vv0}`,JO4=Symbol.for(kv0),_v0,aG=class extends v0{constructor({parameter:Y,value:Q,message:X}){super({name:vv0,message:`Invalid argument for parameter ${Y}: ${X}`});this[_v0]=!0,this.parameter=Y,this.value=Q}static isInstance(Y){return v0.hasMarker(Y,kv0)}};_v0=JO4;var GO4="AI_InvalidStreamPartError",WO4=`vercel.ai.error.${GO4}`,ZO4=Symbol.for(WO4),KO4;KO4=ZO4;var yv0="AI_InvalidToolApprovalError",fv0=`vercel.ai.error.${yv0}`,HO4=Symbol.for(fv0),bv0,FO4=class extends v0{constructor({approvalId:Y}){super({name:yv0,message:`Tool approval response references unknown approvalId: "${Y}". No matching tool-approval-request found in message history.`});this[bv0]=!0,this.approvalId=Y}static isInstance(Y){return v0.hasMarker(Y,fv0)}};bv0=HO4;var hv0="AI_InvalidToolInputError",xv0=`vercel.ai.error.${hv0}`,$O4=Symbol.for(xv0),gv0,RF1=class extends v0{constructor({toolInput:Y,toolName:Q,cause:X,message:J=`Invalid input for tool ${Q}: ${lG(X)}`}){super({name:hv0,message:J,cause:X});this[gv0]=!0,this.toolInput=Y,this.toolName=Q}static isInstance(Y){return v0.hasMarker(Y,xv0)}};gv0=$O4;var uv0="AI_ToolCallNotFoundForApprovalError",mv0=`vercel.ai.error.${uv0}`,VO4=Symbol.for(mv0),lv0,IF1=class extends v0{constructor({toolCallId:Y,approvalId:Q}){super({name:uv0,message:`Tool call "${Y}" not found for approval request "${Q}".`});this[lv0]=!0,this.toolCallId=Y,this.approvalId=Q}static isInstance(Y){return v0.hasMarker(Y,mv0)}};lv0=VO4;var dv0="AI_MissingToolResultsError",pv0=`vercel.ai.error.${dv0}`,qO4=Symbol.for(pv0),cv0,Nv0=class extends v0{constructor({toolCallIds:Y}){super({name:dv0,message:`Tool result${Y.length>1?"s are":" is"} missing for tool call${Y.length>1?"s":""} ${Y.join(", ")}.`});this[cv0]=!0,this.toolCallIds=Y}static isInstance(Y){return v0.hasMarker(Y,pv0)}};cv0=qO4;var BO4="AI_NoImageGeneratedError",UO4=`vercel.ai.error.${BO4}`,zO4=Symbol.for(UO4),DO4;DO4=zO4;var nv0="AI_NoObjectGeneratedError",iv0=`vercel.ai.error.${nv0}`,OO4=Symbol.for(iv0),av0,U$=class extends v0{constructor({message:Y="No object generated.",cause:Q,text:X,response:J,usage:G,finishReason:K}){super({name:nv0,message:Y,cause:Q});this[av0]=!0,this.text=X,this.response=J,this.usage=G,this.finishReason=K}static isInstance(Y){return v0.hasMarker(Y,iv0)}};av0=OO4;var rv0="AI_NoOutputGeneratedError",ov0=`vercel.ai.error.${rv0}`,LO4=Symbol.for(ov0),sv0,tv0=class extends v0{constructor({message:Y="No output generated.",cause:Q}={}){super({name:rv0,message:Y,cause:Q});this[sv0]=!0}static isInstance(Y){return v0.hasMarker(Y,ov0)}};sv0=LO4;var NO4="AI_NoSpeechGeneratedError",MO4=`vercel.ai.error.${NO4}`,wO4=Symbol.for(MO4),AO4;AO4=wO4;var PO4="AI_NoTranscriptGeneratedError",EO4=`vercel.ai.error.${PO4}`,TO4=Symbol.for(EO4),CO4;CO4=TO4;var RO4="AI_NoVideoGeneratedError",IO4=`vercel.ai.error.${RO4}`,jO4=Symbol.for(IO4),SO4;SO4=jO4;var ev0="AI_NoSuchToolError",Yk0=`vercel.ai.error.${ev0}`,vO4=Symbol.for(Yk0),Qk0,AF1=class extends v0{constructor({toolName:Y,availableTools:Q=void 0,message:X=`Model tried to call unavailable tool '${Y}'. ${Q===void 0?"No tools are available.":`Available tools: ${Q.join(", ")}.`}`}){super({name:ev0,message:X});this[Qk0]=!0,this.toolName=Y,this.availableTools=Q}static isInstance(Y){return v0.hasMarker(Y,Yk0)}};Qk0=vO4;var Xk0="AI_ToolCallRepairError",Jk0=`vercel.ai.error.${Xk0}`,kO4=Symbol.for(Jk0),Gk0,_O4=class extends v0{constructor({cause:Y,originalError:Q,message:X=`Error repairing tool call: ${lG(Y)}`}){super({name:Xk0,message:X,cause:Y});this[Gk0]=!0,this.originalError=Q}static isInstance(Y){return v0.hasMarker(Y,Jk0)}};Gk0=kO4;var yO4=class extends v0{constructor(Y){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${Y.version} for provider "${Y.provider}" and model "${Y.modelId}". AI SDK 5 only supports models that implement specification version "v2".`});this.version=Y.version,this.provider=Y.provider,this.modelId=Y.modelId}},Wk0="AI_UIMessageStreamError",Zk0=`vercel.ai.error.${Wk0}`,fO4=Symbol.for(Zk0),Kk0,CN=class extends v0{constructor({chunkType:Y,chunkId:Q,message:X}){super({name:Wk0,message:X});this[Kk0]=!0,this.chunkType=Y,this.chunkId=Q}static isInstance(Y){return v0.hasMarker(Y,Zk0)}};Kk0=fO4;var bO4="AI_InvalidDataContentError",hO4=`vercel.ai.error.${bO4}`,xO4=Symbol.for(hO4),gO4;gO4=xO4;var Hk0="AI_InvalidMessageRoleError",Fk0=`vercel.ai.error.${Hk0}`,uO4=Symbol.for(Fk0),$k0,mO4=class extends v0{constructor({role:Y,message:Q=`Invalid message role: '${Y}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:Hk0,message:Q});this[$k0]=!0,this.role=Y}static isInstance(Y){return v0.hasMarker(Y,Fk0)}};$k0=uO4;var Vk0="AI_MessageConversionError",qk0=`vercel.ai.error.${Vk0}`,lO4=Symbol.for(qk0),Bk0,dO4=class extends v0{constructor({originalMessage:Y,message:Q}){super({name:Vk0,message:Q});this[Bk0]=!0,this.originalMessage=Y}static isInstance(Y){return v0.hasMarker(Y,qk0)}};Bk0=lO4;var Uk0="AI_RetryError",zk0=`vercel.ai.error.${Uk0}`,pO4=Symbol.for(zk0),Dk0,Mv0=class extends v0{constructor({message:Y,reason:Q,errors:X}){super({name:Uk0,message:Y});this[Dk0]=!0,this.reason=Q,this.errors=X,this.lastError=X[X.length-1]}static isInstance(Y){return v0.hasMarker(Y,zk0)}};Dk0=pO4;function cO4({warning:Y,provider:Q,model:X}){let J=`AI SDK Warning (${Q} / ${X}):`;switch(Y.type){case"unsupported":{let G=`${J} The feature "${Y.feature}" is not supported.`;if(Y.details)G+=` ${Y.details}`;return G}case"compatibility":{let G=`${J} The feature "${Y.feature}" is used in a compatibility mode.`;if(Y.details)G+=` ${Y.details}`;return G}case"other":return`${J} ${Y.message}`;default:return`${J} ${JSON.stringify(Y,null,2)}`}}var nO4="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",wv0=!1,jF1=(Y)=>{if(Y.warnings.length===0)return;let Q=globalThis.AI_SDK_LOG_WARNINGS;if(Q===!1)return;if(typeof Q==="function"){Q(Y);return}if(!wv0)wv0=!0,console.info(nO4);for(let X of Y.warnings)console.warn(cO4({warning:X,provider:Y.provider,model:Y.model}))};function iO4({provider:Y,modelId:Q}){jF1({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:Y,model:Q})}function aO4(Y){if(Y.specificationVersion==="v3")return Y;return iO4({provider:Y.provider,modelId:Y.modelId}),new Proxy(Y,{get(Q,X){switch(X){case"specificationVersion":return"v3";case"doGenerate":return async(...J)=>{let G=await Q.doGenerate(...J);return{...G,finishReason:Ok0(G.finishReason),usage:Lk0(G.usage)}};case"doStream":return async(...J)=>{let G=await Q.doStream(...J);return{...G,stream:rO4(G.stream)}};default:return Q[X]}}})}function rO4(Y){return Y.pipeThrough(new TransformStream({transform(Q,X){switch(Q.type){case"finish":X.enqueue({...Q,finishReason:Ok0(Q.finishReason),usage:Lk0(Q.usage)});break;default:X.enqueue(Q);break}}}))}function Ok0(Y){return{unified:Y==="unknown"?"other":Y,raw:void 0}}function Lk0(Y){return{inputTokens:{total:Y.inputTokens,noCache:void 0,cacheRead:Y.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:Y.outputTokens,text:void 0,reasoning:Y.reasoningTokens}}}function Ad(Y){if(typeof Y!=="string"){if(Y.specificationVersion!=="v3"&&Y.specificationVersion!=="v2"){let Q=Y;throw new yO4({version:Q.specificationVersion,provider:Q.provider,modelId:Q.modelId})}return aO4(Y)}return oO4().languageModel(Y)}function oO4(){var Y;return(Y=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?Y:Lv0}function SF1(Y){if(Y==null)return;if(typeof Y==="number")return Y;return Y.totalMs}function Nk0(Y){if(Y==null||typeof Y==="number")return;return Y.stepMs}function sO4(Y){if(Y==null||typeof Y==="number")return;return Y.chunkMs}var tO4=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}];var eO4=(Y)=>{let Q=typeof Y==="string"?AN(Y):Y,X=(Q[6]&127)<<21|(Q[7]&127)<<14|(Q[8]&127)<<7|Q[9]&127;return Q.slice(X+10)};function YL4(Y){return typeof Y==="string"&&Y.startsWith("SUQz")||typeof Y!=="string"&&Y.length>10&&Y[0]===73&&Y[1]===68&&Y[2]===51?eO4(Y):Y}function QL4({data:Y,signatures:Q}){let X=YL4(Y),J=typeof X==="string"?AN(X.substring(0,Math.min(X.length,24))):X;for(let G of Q)if(J.length>=G.bytesPrefix.length&&G.bytesPrefix.every((K,W)=>K===null||J[W]===K))return G.mediaType;return}var Mk0="6.0.84",wk0=async({url:Y,maxBytes:Q,abortSignal:X})=>{var J;let G=Y.toString();try{let K=await fetch(G,{headers:y3({},`ai-sdk/${Mk0}`,Bd()),signal:X});if(!K.ok)throw new wN({url:G,statusCode:K.status,statusText:K.statusText});return{data:await xj0({response:K,url:G,maxBytes:Q!=null?Q:tH1}),mediaType:(J=K.headers.get("content-type"))!=null?J:void 0}}catch(K){if(wN.isInstance(K))throw K;throw new wN({url:G,cause:K})}},XL4=(Y=wk0)=>(Q)=>Promise.all(Q.map(async(X)=>X.isUrlSupportedByModel?null:Y(X)));function JL4(Y){try{let[Q,X]=Y.split(",");return{mediaType:Q.split(";")[0].split(":")[1],base64Content:X}}catch(Q){return{mediaType:void 0,base64Content:void 0}}}var Ak0=B.union([B.string(),B.instanceof(Uint8Array),B.instanceof(ArrayBuffer),B.custom((Y)=>{var Q,X;return(X=(Q=globalThis.Buffer)==null?void 0:Q.isBuffer(Y))!=null?X:!1},{message:"Must be a Buffer"})]);function Pk0(Y){if(Y instanceof Uint8Array)return{data:Y,mediaType:void 0};if(Y instanceof ArrayBuffer)return{data:new Uint8Array(Y),mediaType:void 0};if(typeof Y==="string")try{Y=new URL(Y)}catch(Q){}if(Y instanceof URL&&Y.protocol==="data:"){let{mediaType:Q,base64Content:X}=JL4(Y.toString());if(Q==null||X==null)throw new v0({name:"InvalidDataContentError",message:`Invalid data URL format in content ${Y.toString()}`});return{data:X,mediaType:Q}}return{data:Y,mediaType:void 0}}function GL4(Y){if(typeof Y==="string")return Y;if(Y instanceof ArrayBuffer)return _3(new Uint8Array(Y));return _3(Y)}function gR(Y){return Y===void 0?[]:Array.isArray(Y)?Y:[Y]}async function Ek0({prompt:Y,supportedUrls:Q,download:X=XL4()}){let J=await ZL4(Y.messages,X,Q),G=new Map;for(let F of Y.messages)if(F.role==="assistant"&&Array.isArray(F.content)){for(let $ of F.content)if($.type==="tool-approval-request"&&"approvalId"in $&&"toolCallId"in $)G.set($.approvalId,$.toolCallId)}let K=new Set;for(let F of Y.messages)if(F.role==="tool"){for(let $ of F.content)if($.type==="tool-approval-response"){let V=G.get($.approvalId);if(V)K.add(V)}}let W=[...Y.system!=null?typeof Y.system==="string"?[{role:"system",content:Y.system}]:gR(Y.system).map((F)=>({role:"system",content:F.content,providerOptions:F.providerOptions})):[],...Y.messages.map((F)=>WL4({message:F,downloadedAssets:J}))],Z=[];for(let F of W){if(F.role!=="tool"){Z.push(F);continue}let $=Z.at(-1);if(($==null?void 0:$.role)==="tool")$.content.push(...F.content);else Z.push(F)}let H=new Set;for(let F of Z)switch(F.role){case"assistant":{for(let $ of F.content)if($.type==="tool-call"&&!$.providerExecuted)H.add($.toolCallId);break}case"tool":{for(let $ of F.content)if($.type==="tool-result")H.delete($.toolCallId);break}case"user":case"system":for(let $ of K)H.delete($);if(H.size>0)throw new Nv0({toolCallIds:Array.from(H)});break}for(let F of K)H.delete(F);if(H.size>0)throw new Nv0({toolCallIds:Array.from(H)});return Z.filter((F)=>F.role!=="tool"||F.content.length>0)}function WL4({message:Y,downloadedAssets:Q}){let X=Y.role;switch(X){case"system":return{role:"system",content:Y.content,providerOptions:Y.providerOptions};case"user":{if(typeof Y.content==="string")return{role:"user",content:[{type:"text",text:Y.content}],providerOptions:Y.providerOptions};return{role:"user",content:Y.content.map((J)=>KL4(J,Q)).filter((J)=>J.type!=="text"||J.text!==""),providerOptions:Y.providerOptions}}case"assistant":{if(typeof Y.content==="string")return{role:"assistant",content:[{type:"text",text:Y.content}],providerOptions:Y.providerOptions};return{role:"assistant",content:Y.content.filter((J)=>J.type!=="text"||J.text!==""||J.providerOptions!=null).filter((J)=>J.type!=="tool-approval-request").map((J)=>{let G=J.providerOptions;switch(J.type){case"file":{let{data:K,mediaType:W}=Pk0(J.data);return{type:"file",data:K,filename:J.filename,mediaType:W!=null?W:J.mediaType,providerOptions:G}}case"reasoning":return{type:"reasoning",text:J.text,providerOptions:G};case"text":return{type:"text",text:J.text,providerOptions:G};case"tool-call":return{type:"tool-call",toolCallId:J.toolCallId,toolName:J.toolName,input:J.input,providerExecuted:J.providerExecuted,providerOptions:G};case"tool-result":return{type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:Av0(J.output),providerOptions:G}}}),providerOptions:Y.providerOptions}}case"tool":return{role:"tool",content:Y.content.filter((J)=>J.type!=="tool-approval-response"||J.providerExecuted).map((J)=>{switch(J.type){case"tool-result":return{type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:Av0(J.output),providerOptions:J.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:J.approvalId,approved:J.approved,reason:J.reason}}}),providerOptions:Y.providerOptions};default:throw new mO4({role:X})}}async function ZL4(Y,Q,X){let J=Y.filter((K)=>K.role==="user").map((K)=>K.content).filter((K)=>Array.isArray(K)).flat().filter((K)=>K.type==="image"||K.type==="file").map((K)=>{var W;let Z=(W=K.mediaType)!=null?W:K.type==="image"?"image/*":void 0,H=K.type==="image"?K.image:K.data;if(typeof H==="string")try{H=new URL(H)}catch(F){}return{mediaType:Z,data:H}}).filter((K)=>K.data instanceof URL).map((K)=>({url:K.data,isUrlSupportedByModel:K.mediaType!=null&&lj0({url:K.data.toString(),mediaType:K.mediaType,supportedUrls:X})})),G=await Q(J);return Object.fromEntries(G.map((K,W)=>K==null?null:[J[W].url.toString(),{data:K.data,mediaType:K.mediaType}]).filter((K)=>K!=null))}function KL4(Y,Q){var X;if(Y.type==="text")return{type:"text",text:Y.text,providerOptions:Y.providerOptions};let J,G=Y.type;switch(G){case"image":J=Y.image;break;case"file":J=Y.data;break;default:throw Error(`Unsupported part type: ${G}`)}let{data:K,mediaType:W}=Pk0(J),Z=W!=null?W:Y.mediaType,H=K;if(H instanceof URL){let F=Q[H.toString()];if(F)H=F.data,Z!=null||(Z=F.mediaType)}switch(G){case"image":{if(H instanceof Uint8Array||typeof H==="string")Z=(X=QL4({data:H,signatures:tO4}))!=null?X:Z;return{type:"file",mediaType:Z!=null?Z:"image/*",filename:void 0,data:H,providerOptions:Y.providerOptions}}case"file":{if(Z==null)throw Error("Media type is missing for file part");return{type:"file",mediaType:Z,filename:Y.filename,data:H,providerOptions:Y.providerOptions}}}}function Av0(Y){if(Y.type!=="content")return Y;return{type:"content",value:Y.value.map((Q)=>{if(Q.type!=="media")return Q;if(Q.mediaType.startsWith("image/"))return{type:"image-data",data:Q.data,mediaType:Q.mediaType};return{type:"file-data",data:Q.data,mediaType:Q.mediaType}})}}async function YU({toolCallId:Y,input:Q,output:X,tool:J,errorMode:G}){if(G==="text")return{type:"error-text",value:lG(X)};else if(G==="json")return{type:"error-json",value:Pv0(X)};if(J==null?void 0:J.toModelOutput)return await J.toModelOutput({toolCallId:Y,input:Q,output:X});return typeof X==="string"?{type:"text",value:X}:{type:"json",value:Pv0(X)}}function Pv0(Y){return Y===void 0?null:Y}function PF1({maxOutputTokens:Y,temperature:Q,topP:X,topK:J,presencePenalty:G,frequencyPenalty:K,seed:W,stopSequences:Z}){if(Y!=null){if(!Number.isInteger(Y))throw new aG({parameter:"maxOutputTokens",value:Y,message:"maxOutputTokens must be an integer"});if(Y<1)throw new aG({parameter:"maxOutputTokens",value:Y,message:"maxOutputTokens must be >= 1"})}if(Q!=null){if(typeof Q!=="number")throw new aG({parameter:"temperature",value:Q,message:"temperature must be a number"})}if(X!=null){if(typeof X!=="number")throw new aG({parameter:"topP",value:X,message:"topP must be a number"})}if(J!=null){if(typeof J!=="number")throw new aG({parameter:"topK",value:J,message:"topK must be a number"})}if(G!=null){if(typeof G!=="number")throw new aG({parameter:"presencePenalty",value:G,message:"presencePenalty must be a number"})}if(K!=null){if(typeof K!=="number")throw new aG({parameter:"frequencyPenalty",value:K,message:"frequencyPenalty must be a number"})}if(W!=null){if(!Number.isInteger(W))throw new aG({parameter:"seed",value:W,message:"seed must be an integer"})}return{maxOutputTokens:Y,temperature:Q,topP:X,topK:J,presencePenalty:G,frequencyPenalty:K,stopSequences:Z,seed:W}}function HL4(Y){return Y!=null&&Object.keys(Y).length>0}async function Tk0({tools:Y,toolChoice:Q,activeTools:X}){if(!HL4(Y))return{tools:void 0,toolChoice:void 0};let J=X!=null?Object.entries(Y).filter(([K])=>X.includes(K)):Object.entries(Y),G=[];for(let[K,W]of J){let Z=W.type;switch(Z){case void 0:case"dynamic":case"function":G.push({type:"function",name:K,description:W.description,inputSchema:await jZ(W.inputSchema).jsonSchema,...W.inputExamples!=null?{inputExamples:W.inputExamples}:{},providerOptions:W.providerOptions,...W.strict!=null?{strict:W.strict}:{}});break;case"provider":G.push({type:"provider",name:K,id:W.id,args:W.args});break;default:throw Error(`Unsupported tool type: ${Z}`)}}return{tools:G,toolChoice:Q==null?{type:"auto"}:typeof Q==="string"?{type:Q}:{type:"tool",toolName:Q.toolName}}}var uR=B.lazy(()=>B.union([B.null(),B.string(),B.number(),B.boolean(),B.record(B.string(),uR.optional()),B.array(uR)])),V6=B.record(B.string(),B.record(B.string(),uR.optional())),Ck0=B.object({type:B.literal("text"),text:B.string(),providerOptions:V6.optional()}),FL4=B.object({type:B.literal("image"),image:B.union([Ak0,B.instanceof(URL)]),mediaType:B.string().optional(),providerOptions:V6.optional()}),Rk0=B.object({type:B.literal("file"),data:B.union([Ak0,B.instanceof(URL)]),filename:B.string().optional(),mediaType:B.string(),providerOptions:V6.optional()}),$L4=B.object({type:B.literal("reasoning"),text:B.string(),providerOptions:V6.optional()}),VL4=B.object({type:B.literal("tool-call"),toolCallId:B.string(),toolName:B.string(),input:B.unknown(),providerOptions:V6.optional(),providerExecuted:B.boolean().optional()}),qL4=B.discriminatedUnion("type",[B.object({type:B.literal("text"),value:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("json"),value:uR,providerOptions:V6.optional()}),B.object({type:B.literal("execution-denied"),reason:B.string().optional(),providerOptions:V6.optional()}),B.object({type:B.literal("error-text"),value:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("error-json"),value:uR,providerOptions:V6.optional()}),B.object({type:B.literal("content"),value:B.array(B.union([B.object({type:B.literal("text"),text:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("media"),data:B.string(),mediaType:B.string()}),B.object({type:B.literal("file-data"),data:B.string(),mediaType:B.string(),filename:B.string().optional(),providerOptions:V6.optional()}),B.object({type:B.literal("file-url"),url:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("file-id"),fileId:B.union([B.string(),B.record(B.string(),B.string())]),providerOptions:V6.optional()}),B.object({type:B.literal("image-data"),data:B.string(),mediaType:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("image-url"),url:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("image-file-id"),fileId:B.union([B.string(),B.record(B.string(),B.string())]),providerOptions:V6.optional()}),B.object({type:B.literal("custom"),providerOptions:V6.optional()})]))})]),Ik0=B.object({type:B.literal("tool-result"),toolCallId:B.string(),toolName:B.string(),output:qL4,providerOptions:V6.optional()}),BL4=B.object({type:B.literal("tool-approval-request"),approvalId:B.string(),toolCallId:B.string()}),UL4=B.object({type:B.literal("tool-approval-response"),approvalId:B.string(),approved:B.boolean(),reason:B.string().optional()}),zL4=B.object({role:B.literal("system"),content:B.string(),providerOptions:V6.optional()}),DL4=B.object({role:B.literal("user"),content:B.union([B.string(),B.array(B.union([Ck0,FL4,Rk0]))]),providerOptions:V6.optional()}),OL4=B.object({role:B.literal("assistant"),content:B.union([B.string(),B.array(B.union([Ck0,Rk0,$L4,VL4,Ik0,BL4]))]),providerOptions:V6.optional()}),LL4=B.object({role:B.literal("tool"),content:B.array(B.union([Ik0,UL4])),providerOptions:V6.optional()}),NL4=B.union([zL4,DL4,OL4,LL4]);async function jk0(Y){if(Y.prompt==null&&Y.messages==null)throw new aB({prompt:Y,message:"prompt or messages must be defined"});if(Y.prompt!=null&&Y.messages!=null)throw new aB({prompt:Y,message:"prompt and messages cannot be defined at the same time"});if(Y.system!=null&&typeof Y.system!=="string"&&!gR(Y.system).every((J)=>typeof J==="object"&&J!==null&&("role"in J)&&J.role==="system"))throw new aB({prompt:Y,message:"system must be a string, SystemModelMessage, or array of SystemModelMessage"});let Q;if(Y.prompt!=null&&typeof Y.prompt==="string")Q=[{role:"user",content:Y.prompt}];else if(Y.prompt!=null&&Array.isArray(Y.prompt))Q=Y.prompt;else if(Y.messages!=null)Q=Y.messages;else throw new aB({prompt:Y,message:"prompt or messages must be defined"});if(Q.length===0)throw new aB({prompt:Y,message:"messages must not be empty"});let X=await sQ({value:Q,schema:B.array(NL4)});if(!X.success)throw new aB({prompt:Y,message:"The messages do not match the ModelMessage[] schema.",cause:X.error});return{messages:Q,system:Y.system}}function Sk0(Y){if(!Md.isInstance(Y))return Y;let Q=(process==null?void 0:"production")==="production",X="https://ai-sdk.dev/unauthenticated-ai-gateway";if(Q)return new v0({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${X}`});return Object.assign(Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m
1271
+ This is a client-side timeout. To resolve this, increase your timeout configuration: https://vercel.com/docs/ai-gateway/capabilities/video-generation#extending-timeouts-for-node.js`;return new Y({message:K,statusCode:X,cause:J,generationId:G})}};function Wv0(Y){if(!(Y instanceof Error))return!1;let Q=Y.code;if(typeof Q==="string")return["UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"].includes(Q);return!1}async function b3(Y,Q){var X;if(tQ.isInstance(Y))return Y;if(Wv0(Y))return Gv0.createTimeoutError({originalMessage:Y instanceof Error?Y.message:"Unknown error",cause:Y});if(b9.isInstance(Y)){if(Y.cause&&Wv0(Y.cause))return Gv0.createTimeoutError({originalMessage:Y.message,cause:Y});return await Yv0({response:PD4(Y),statusCode:(X=Y.statusCode)!=null?X:500,defaultMessage:"Gateway request failed",cause:Y,authMethod:Q})}return await Yv0({response:{},statusCode:500,defaultMessage:Y instanceof Error?`Gateway request failed: ${Y.message}`:"Unknown Gateway error",cause:Y,authMethod:Q})}function PD4(Y){if(Y.data!==void 0)return Y.data;if(Y.responseBody!=null)try{return JSON.parse(Y.responseBody)}catch(Q){return Y.responseBody}return{}}var zv0="ai-gateway-auth-method";async function eB(Y){let Q=await sQ({value:Y[zv0],schema:ED4});return Q.success?Q.value:void 0}var ED4=e9(()=>J8(B.union([B.literal("api-key"),B.literal("oidc")]))),Zv0=class{constructor(Y){this.config=Y}async getAvailableModels(){try{let{value:Y}=await eH1({url:`${this.config.baseURL}/config`,headers:await $Y(this.config.headers()),successfulResponseHandler:nG(TD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(Q)=>Q}),fetch:this.config.fetch});return Y}catch(Y){throw await b3(Y)}}async getCredits(){try{let Y=new URL(this.config.baseURL),{value:Q}=await eH1({url:`${Y.origin}/v1/credits`,headers:await $Y(this.config.headers()),successfulResponseHandler:nG(CD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(X)=>X}),fetch:this.config.fetch});return Q}catch(Y){throw await b3(Y)}}},TD4=e9(()=>J8(B.object({models:B.array(B.object({id:B.string(),name:B.string(),description:B.string().nullish(),pricing:B.object({input:B.string(),output:B.string(),input_cache_read:B.string().nullish(),input_cache_write:B.string().nullish()}).transform(({input:Y,output:Q,input_cache_read:X,input_cache_write:J})=>({input:Y,output:Q,...X?{cachedInputTokens:X}:{},...J?{cacheCreationInputTokens:J}:{}})).nullish(),specification:B.object({specificationVersion:B.literal("v3"),provider:B.string(),modelId:B.string()}),modelType:B.enum(["embedding","image","language","video"]).nullish()}))}))),CD4=e9(()=>J8(B.object({balance:B.string(),total_used:B.string()}).transform(({balance:Y,total_used:Q})=>({balance:Y,totalUsed:Q})))),RD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(Y){let{abortSignal:Q,...X}=Y;return{args:this.maybeEncodeFileParts(X),warnings:[]}}async doGenerate(Y){let{args:Q,warnings:X}=await this.getArgs(Y),{abortSignal:J}=Y,G=await $Y(this.config.headers());try{let{responseHeaders:K,value:W,rawValue:Z}=await f3({url:this.getUrl(),headers:k3(G,Y.headers,this.getModelConfigHeaders(this.modelId,!1),await $Y(this.config.o11yHeaders)),body:Q,successfulResponseHandler:nG(B.any()),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(H)=>H}),...J&&{abortSignal:J},fetch:this.config.fetch});return{...W,request:{body:Q},response:{headers:K,body:Z},warnings:X}}catch(K){throw await b3(K,await eB(G))}}async doStream(Y){let{args:Q,warnings:X}=await this.getArgs(Y),{abortSignal:J}=Y,G=await $Y(this.config.headers());try{let{value:K,responseHeaders:W}=await f3({url:this.getUrl(),headers:k3(G,Y.headers,this.getModelConfigHeaders(this.modelId,!0),await $Y(this.config.o11yHeaders)),body:Q,successfulResponseHandler:rj0(B.any()),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(Z)=>Z}),...J&&{abortSignal:J},fetch:this.config.fetch});return{stream:K.pipeThrough(new TransformStream({start(Z){if(X.length>0)Z.enqueue({type:"stream-start",warnings:X})},transform(Z,H){if(Z.success){let F=Z.value;if(F.type==="raw"&&!Y.includeRawChunks)return;if(F.type==="response-metadata"&&F.timestamp&&typeof F.timestamp==="string")F.timestamp=new Date(F.timestamp);H.enqueue(F)}else H.error(Z.error)}})),request:{body:Q},response:{headers:W}}}catch(K){throw await b3(K,await eB(G))}}isFilePart(Y){return Y&&typeof Y==="object"&&"type"in Y&&Y.type==="file"}maybeEncodeFileParts(Y){for(let Q of Y.prompt)for(let X of Q.content)if(this.isFilePart(X)){let J=X;if(J.data instanceof Uint8Array){let G=Uint8Array.from(J.data),K=Buffer.from(G).toString("base64");J.data=new URL(`data:${J.mediaType||"application/octet-stream"};base64,${K}`)}}return Y}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(Y,Q){return{"ai-language-model-specification-version":"3","ai-language-model-id":Y,"ai-language-model-streaming":String(Q)}}},ID4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:Y,headers:Q,abortSignal:X,providerOptions:J}){var G;let K=await $Y(this.config.headers());try{let{responseHeaders:W,value:Z,rawValue:H}=await f3({url:this.getUrl(),headers:k3(K,Q!=null?Q:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{values:Y,...J?{providerOptions:J}:{}},successfulResponseHandler:nG(jD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(F)=>F}),...X&&{abortSignal:X},fetch:this.config.fetch});return{embeddings:Z.embeddings,usage:(G=Z.usage)!=null?G:void 0,providerMetadata:Z.providerMetadata,response:{headers:W,body:H},warnings:[]}}catch(W){throw await b3(W,await eB(K))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},jD4=e9(()=>J8(B.object({embeddings:B.array(B.array(B.number())),usage:B.object({tokens:B.number()}).nullish(),providerMetadata:B.record(B.string(),B.record(B.string(),B.unknown())).optional()}))),SD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:Y,n:Q,size:X,aspectRatio:J,seed:G,files:K,mask:W,providerOptions:Z,headers:H,abortSignal:F}){var $,V,q,U;let z=await $Y(this.config.headers());try{let{responseHeaders:D,value:M,rawValue:w}=await f3({url:this.getUrl(),headers:k3(z,H!=null?H:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{prompt:Y,n:Q,...X&&{size:X},...J&&{aspectRatio:J},...G&&{seed:G},...Z&&{providerOptions:Z},...K&&{files:K.map((R)=>Kv0(R))},...W&&{mask:Kv0(W)}},successfulResponseHandler:nG(yD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(R)=>R}),...F&&{abortSignal:F},fetch:this.config.fetch});return{images:M.images,warnings:($=M.warnings)!=null?$:[],providerMetadata:M.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:D},...M.usage!=null&&{usage:{inputTokens:(V=M.usage.inputTokens)!=null?V:void 0,outputTokens:(q=M.usage.outputTokens)!=null?q:void 0,totalTokens:(U=M.usage.totalTokens)!=null?U:void 0}}}}catch(D){throw await b3(D,await eB(z))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Kv0(Y){if(Y.type==="file"&&Y.data instanceof Uint8Array)return{...Y,data:_3(Y.data)};return Y}var vD4=B.object({images:B.array(B.unknown()).optional()}).catchall(B.unknown()),kD4=B.discriminatedUnion("type",[B.object({type:B.literal("unsupported"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("compatibility"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("other"),message:B.string()})]),_D4=B.object({inputTokens:B.number().nullish(),outputTokens:B.number().nullish(),totalTokens:B.number().nullish()}),yD4=B.object({images:B.array(B.string()),warnings:B.array(kD4).optional(),providerMetadata:B.record(B.string(),vD4).optional(),usage:_D4.optional()}),fD4=class{constructor(Y,Q){this.modelId=Y,this.config=Q,this.specificationVersion="v3",this.maxVideosPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:Y,n:Q,aspectRatio:X,resolution:J,duration:G,fps:K,seed:W,image:Z,providerOptions:H,headers:F,abortSignal:$}){var V;let q=await $Y(this.config.headers());try{let{responseHeaders:U,value:z,rawValue:D}=await f3({url:this.getUrl(),headers:k3(q,F!=null?F:{},this.getModelConfigHeaders(),await $Y(this.config.o11yHeaders)),body:{prompt:Y,n:Q,...X&&{aspectRatio:X},...J&&{resolution:J},...G&&{duration:G},...K&&{fps:K},...W&&{seed:W},...H&&{providerOptions:H},...Z&&{image:bD4(Z)}},successfulResponseHandler:nG(uD4),failedResponseHandler:m7({errorSchema:B.any(),errorToMessage:(M)=>M}),...$&&{abortSignal:$},fetch:this.config.fetch});return{videos:z.videos,warnings:(V=z.warnings)!=null?V:[],providerMetadata:z.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:U}}}catch(U){throw await b3(U,await eB(q))}}getUrl(){return`${this.config.baseURL}/video-model`}getModelConfigHeaders(){return{"ai-video-model-specification-version":"3","ai-model-id":this.modelId}}};function bD4(Y){if(Y.type==="file"&&Y.data instanceof Uint8Array)return{...Y,data:_3(Y.data)};return Y}var hD4=B.object({videos:B.array(B.unknown()).optional()}).catchall(B.unknown()),xD4=B.union([B.object({type:B.literal("url"),url:B.string(),mediaType:B.string()}),B.object({type:B.literal("base64"),data:B.string(),mediaType:B.string()})]),gD4=B.discriminatedUnion("type",[B.object({type:B.literal("unsupported"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("compatibility"),feature:B.string(),details:B.string().optional()}),B.object({type:B.literal("other"),message:B.string()})]),uD4=B.object({videos:B.array(xD4),warnings:B.array(gD4).optional(),providerMetadata:B.record(B.string(),hD4).optional()}),mD4=e9(()=>J8(B.object({objective:B.string().describe("Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."),search_queries:B.array(B.string()).optional().describe("Optional search queries to supplement the objective. Maximum 200 characters per query."),mode:B.enum(["one-shot","agentic"]).optional().describe('Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'),max_results:B.number().optional().describe("Maximum number of results to return (1-20). Defaults to 10 if not specified."),source_policy:B.object({include_domains:B.array(B.string()).optional().describe("List of domains to include in search results."),exclude_domains:B.array(B.string()).optional().describe("List of domains to exclude from search results."),after_date:B.string().optional().describe("Only include results published after this date (ISO 8601 format).")}).optional().describe("Source policy for controlling which domains to include/exclude and freshness."),excerpts:B.object({max_chars_per_result:B.number().optional().describe("Maximum characters per result."),max_chars_total:B.number().optional().describe("Maximum total characters across all results.")}).optional().describe("Excerpt configuration for controlling result length."),fetch_policy:B.object({max_age_seconds:B.number().optional().describe("Maximum age in seconds for cached content. Set to 0 to always fetch fresh content.")}).optional().describe("Fetch policy for controlling content freshness.")}))),lD4=e9(()=>J8(B.union([B.object({searchId:B.string(),results:B.array(B.object({url:B.string(),title:B.string(),excerpt:B.string(),publishDate:B.string().nullable().optional(),relevanceScore:B.number().optional()}))}),B.object({error:B.enum(["api_error","rate_limit","timeout","invalid_input","configuration_error","unknown"]),statusCode:B.number().optional(),message:B.string()})]))),dD4=Ud({id:"gateway.parallel_search",inputSchema:mD4,outputSchema:lD4}),pD4=(Y={})=>dD4(Y),cD4=e9(()=>J8(B.object({query:B.union([B.string(),B.array(B.string())]).describe("Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."),max_results:B.number().optional().describe("Maximum number of search results to return (1-20, default: 10)"),max_tokens_per_page:B.number().optional().describe("Maximum number of tokens to extract per search result page (256-2048, default: 2048)"),max_tokens:B.number().optional().describe("Maximum total tokens across all search results (default: 25000, max: 1000000)"),country:B.string().optional().describe("Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"),search_domain_filter:B.array(B.string()).optional().describe("List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"),search_language_filter:B.array(B.string()).optional().describe("List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"),search_after_date:B.string().optional().describe("Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),search_before_date:B.string().optional().describe("Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),last_updated_after_filter:B.string().optional().describe("Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."),last_updated_before_filter:B.string().optional().describe("Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."),search_recency_filter:B.enum(["day","week","month","year"]).optional().describe("Filter results by relative time period. Cannot be used with search_after_date or search_before_date.")}))),nD4=e9(()=>J8(B.union([B.object({results:B.array(B.object({title:B.string(),url:B.string(),snippet:B.string(),date:B.string().optional(),lastUpdated:B.string().optional()})),id:B.string()}),B.object({error:B.enum(["api_error","rate_limit","timeout","invalid_input","unknown"]),statusCode:B.number().optional(),message:B.string()})]))),iD4=Ud({id:"gateway.perplexity_search",inputSchema:cD4,outputSchema:nD4}),aD4=(Y={})=>iD4(Y),rD4={parallelSearch:pD4,perplexitySearch:aD4};async function oD4(){var Y;return(Y=Dv0.getContext().headers)==null?void 0:Y["x-vercel-id"]}var sD4="3.0.45",tD4="0.0.1";function eD4(Y={}){var Q,X;let J=null,G=null,K=(Q=Y.metadataCacheRefreshMillis)!=null?Q:300000,W=0,Z=(X=oj0(Y.baseURL))!=null?X:"https://ai-gateway.vercel.sh/v3/ai",H=async()=>{try{let D=await YO4(Y);return y3({Authorization:`Bearer ${D.token}`,"ai-gateway-protocol-version":tD4,[zv0]:D.authMethod,...Y.headers},`ai-sdk/gateway/${sD4}`)}catch(D){throw Md.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:D})}},F=()=>{let D=_R({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),M=_R({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),w=_R({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{let R=await oD4();return{...D&&{"ai-o11y-deployment-id":D},...M&&{"ai-o11y-environment":M},...w&&{"ai-o11y-region":w},...R&&{"ai-o11y-request-id":R}}}},$=(D)=>{return new RD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},V=async()=>{var D,M,w;let R=(w=(M=(D=Y._internal)==null?void 0:D.currentDate)==null?void 0:M.call(D).getTime())!=null?w:Date.now();if(!J||R-W>K)W=R,J=new Zv0({baseURL:Z,headers:H,fetch:Y.fetch}).getAvailableModels().then((P)=>{return G=P,P}).catch(async(P)=>{throw await b3(P,await eB(await H()))});return G?Promise.resolve(G):J},q=async()=>{return new Zv0({baseURL:Z,headers:H,fetch:Y.fetch}).getCredits().catch(async(D)=>{throw await b3(D,await eB(await H()))})},U=function(D){if(new.target)throw Error("The Gateway Provider model function cannot be called with the new keyword.");return $(D)};U.specificationVersion="v3",U.getAvailableModels=V,U.getCredits=q,U.imageModel=(D)=>{return new SD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},U.languageModel=$;let z=(D)=>{return new ID4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})};return U.embeddingModel=z,U.textEmbeddingModel=z,U.videoModel=(D)=>{return new fD4(D,{provider:"gateway",baseURL:Z,headers:H,fetch:Y.fetch,o11yHeaders:F()})},U.chat=U.languageModel,U.embedding=U.embeddingModel,U.image=U.imageModel,U.video=U.videoModel,U.tools=rD4,U}var Lv0=eD4();async function YO4(Y){let Q=_R({settingValue:Y.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});if(Q)return{token:Q,authMethod:"api-key"};return{token:await Ov0.getVercelOidcToken(),authMethod:"oidc"}}U4();U4();U4();U4();U4();U4();var kk0=t6(s1(),1),IN=t6(s1(),1);U4();U4();var QO4=Object.defineProperty,XO4=(Y,Q)=>{for(var X in Q)QO4(Y,X,{get:Q[X],enumerable:!0})},vv0="AI_InvalidArgumentError",kv0=`vercel.ai.error.${vv0}`,JO4=Symbol.for(kv0),_v0,aG=class extends v0{constructor({parameter:Y,value:Q,message:X}){super({name:vv0,message:`Invalid argument for parameter ${Y}: ${X}`});this[_v0]=!0,this.parameter=Y,this.value=Q}static isInstance(Y){return v0.hasMarker(Y,kv0)}};_v0=JO4;var GO4="AI_InvalidStreamPartError",WO4=`vercel.ai.error.${GO4}`,ZO4=Symbol.for(WO4),KO4;KO4=ZO4;var yv0="AI_InvalidToolApprovalError",fv0=`vercel.ai.error.${yv0}`,HO4=Symbol.for(fv0),bv0,FO4=class extends v0{constructor({approvalId:Y}){super({name:yv0,message:`Tool approval response references unknown approvalId: "${Y}". No matching tool-approval-request found in message history.`});this[bv0]=!0,this.approvalId=Y}static isInstance(Y){return v0.hasMarker(Y,fv0)}};bv0=HO4;var hv0="AI_InvalidToolInputError",xv0=`vercel.ai.error.${hv0}`,$O4=Symbol.for(xv0),gv0,RF1=class extends v0{constructor({toolInput:Y,toolName:Q,cause:X,message:J=`Invalid input for tool ${Q}: ${lG(X)}`}){super({name:hv0,message:J,cause:X});this[gv0]=!0,this.toolInput=Y,this.toolName=Q}static isInstance(Y){return v0.hasMarker(Y,xv0)}};gv0=$O4;var uv0="AI_ToolCallNotFoundForApprovalError",mv0=`vercel.ai.error.${uv0}`,VO4=Symbol.for(mv0),lv0,IF1=class extends v0{constructor({toolCallId:Y,approvalId:Q}){super({name:uv0,message:`Tool call "${Y}" not found for approval request "${Q}".`});this[lv0]=!0,this.toolCallId=Y,this.approvalId=Q}static isInstance(Y){return v0.hasMarker(Y,mv0)}};lv0=VO4;var dv0="AI_MissingToolResultsError",pv0=`vercel.ai.error.${dv0}`,qO4=Symbol.for(pv0),cv0,Nv0=class extends v0{constructor({toolCallIds:Y}){super({name:dv0,message:`Tool result${Y.length>1?"s are":" is"} missing for tool call${Y.length>1?"s":""} ${Y.join(", ")}.`});this[cv0]=!0,this.toolCallIds=Y}static isInstance(Y){return v0.hasMarker(Y,pv0)}};cv0=qO4;var BO4="AI_NoImageGeneratedError",UO4=`vercel.ai.error.${BO4}`,zO4=Symbol.for(UO4),DO4;DO4=zO4;var nv0="AI_NoObjectGeneratedError",iv0=`vercel.ai.error.${nv0}`,OO4=Symbol.for(iv0),av0,U$=class extends v0{constructor({message:Y="No object generated.",cause:Q,text:X,response:J,usage:G,finishReason:K}){super({name:nv0,message:Y,cause:Q});this[av0]=!0,this.text=X,this.response=J,this.usage=G,this.finishReason=K}static isInstance(Y){return v0.hasMarker(Y,iv0)}};av0=OO4;var rv0="AI_NoOutputGeneratedError",ov0=`vercel.ai.error.${rv0}`,LO4=Symbol.for(ov0),sv0,tv0=class extends v0{constructor({message:Y="No output generated.",cause:Q}={}){super({name:rv0,message:Y,cause:Q});this[sv0]=!0}static isInstance(Y){return v0.hasMarker(Y,ov0)}};sv0=LO4;var NO4="AI_NoSpeechGeneratedError",MO4=`vercel.ai.error.${NO4}`,wO4=Symbol.for(MO4),AO4;AO4=wO4;var PO4="AI_NoTranscriptGeneratedError",EO4=`vercel.ai.error.${PO4}`,TO4=Symbol.for(EO4),CO4;CO4=TO4;var RO4="AI_NoVideoGeneratedError",IO4=`vercel.ai.error.${RO4}`,jO4=Symbol.for(IO4),SO4;SO4=jO4;var ev0="AI_NoSuchToolError",Yk0=`vercel.ai.error.${ev0}`,vO4=Symbol.for(Yk0),Qk0,AF1=class extends v0{constructor({toolName:Y,availableTools:Q=void 0,message:X=`Model tried to call unavailable tool '${Y}'. ${Q===void 0?"No tools are available.":`Available tools: ${Q.join(", ")}.`}`}){super({name:ev0,message:X});this[Qk0]=!0,this.toolName=Y,this.availableTools=Q}static isInstance(Y){return v0.hasMarker(Y,Yk0)}};Qk0=vO4;var Xk0="AI_ToolCallRepairError",Jk0=`vercel.ai.error.${Xk0}`,kO4=Symbol.for(Jk0),Gk0,_O4=class extends v0{constructor({cause:Y,originalError:Q,message:X=`Error repairing tool call: ${lG(Y)}`}){super({name:Xk0,message:X,cause:Y});this[Gk0]=!0,this.originalError=Q}static isInstance(Y){return v0.hasMarker(Y,Jk0)}};Gk0=kO4;var yO4=class extends v0{constructor(Y){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${Y.version} for provider "${Y.provider}" and model "${Y.modelId}". AI SDK 5 only supports models that implement specification version "v2".`});this.version=Y.version,this.provider=Y.provider,this.modelId=Y.modelId}},Wk0="AI_UIMessageStreamError",Zk0=`vercel.ai.error.${Wk0}`,fO4=Symbol.for(Zk0),Kk0,CN=class extends v0{constructor({chunkType:Y,chunkId:Q,message:X}){super({name:Wk0,message:X});this[Kk0]=!0,this.chunkType=Y,this.chunkId=Q}static isInstance(Y){return v0.hasMarker(Y,Zk0)}};Kk0=fO4;var bO4="AI_InvalidDataContentError",hO4=`vercel.ai.error.${bO4}`,xO4=Symbol.for(hO4),gO4;gO4=xO4;var Hk0="AI_InvalidMessageRoleError",Fk0=`vercel.ai.error.${Hk0}`,uO4=Symbol.for(Fk0),$k0,mO4=class extends v0{constructor({role:Y,message:Q=`Invalid message role: '${Y}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:Hk0,message:Q});this[$k0]=!0,this.role=Y}static isInstance(Y){return v0.hasMarker(Y,Fk0)}};$k0=uO4;var Vk0="AI_MessageConversionError",qk0=`vercel.ai.error.${Vk0}`,lO4=Symbol.for(qk0),Bk0,dO4=class extends v0{constructor({originalMessage:Y,message:Q}){super({name:Vk0,message:Q});this[Bk0]=!0,this.originalMessage=Y}static isInstance(Y){return v0.hasMarker(Y,qk0)}};Bk0=lO4;var Uk0="AI_RetryError",zk0=`vercel.ai.error.${Uk0}`,pO4=Symbol.for(zk0),Dk0,Mv0=class extends v0{constructor({message:Y,reason:Q,errors:X}){super({name:Uk0,message:Y});this[Dk0]=!0,this.reason=Q,this.errors=X,this.lastError=X[X.length-1]}static isInstance(Y){return v0.hasMarker(Y,zk0)}};Dk0=pO4;function cO4({warning:Y,provider:Q,model:X}){let J=`AI SDK Warning (${Q} / ${X}):`;switch(Y.type){case"unsupported":{let G=`${J} The feature "${Y.feature}" is not supported.`;if(Y.details)G+=` ${Y.details}`;return G}case"compatibility":{let G=`${J} The feature "${Y.feature}" is used in a compatibility mode.`;if(Y.details)G+=` ${Y.details}`;return G}case"other":return`${J} ${Y.message}`;default:return`${J} ${JSON.stringify(Y,null,2)}`}}var nO4="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",wv0=!1,jF1=(Y)=>{if(Y.warnings.length===0)return;let Q=globalThis.AI_SDK_LOG_WARNINGS;if(Q===!1)return;if(typeof Q==="function"){Q(Y);return}if(!wv0)wv0=!0,console.info(nO4);for(let X of Y.warnings)console.warn(cO4({warning:X,provider:Y.provider,model:Y.model}))};function iO4({provider:Y,modelId:Q}){jF1({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:Y,model:Q})}function aO4(Y){if(Y.specificationVersion==="v3")return Y;return iO4({provider:Y.provider,modelId:Y.modelId}),new Proxy(Y,{get(Q,X){switch(X){case"specificationVersion":return"v3";case"doGenerate":return async(...J)=>{let G=await Q.doGenerate(...J);return{...G,finishReason:Ok0(G.finishReason),usage:Lk0(G.usage)}};case"doStream":return async(...J)=>{let G=await Q.doStream(...J);return{...G,stream:rO4(G.stream)}};default:return Q[X]}}})}function rO4(Y){return Y.pipeThrough(new TransformStream({transform(Q,X){switch(Q.type){case"finish":X.enqueue({...Q,finishReason:Ok0(Q.finishReason),usage:Lk0(Q.usage)});break;default:X.enqueue(Q);break}}}))}function Ok0(Y){return{unified:Y==="unknown"?"other":Y,raw:void 0}}function Lk0(Y){return{inputTokens:{total:Y.inputTokens,noCache:void 0,cacheRead:Y.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:Y.outputTokens,text:void 0,reasoning:Y.reasoningTokens}}}function Ad(Y){if(typeof Y!=="string"){if(Y.specificationVersion!=="v3"&&Y.specificationVersion!=="v2"){let Q=Y;throw new yO4({version:Q.specificationVersion,provider:Q.provider,modelId:Q.modelId})}return aO4(Y)}return oO4().languageModel(Y)}function oO4(){var Y;return(Y=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?Y:Lv0}function SF1(Y){if(Y==null)return;if(typeof Y==="number")return Y;return Y.totalMs}function Nk0(Y){if(Y==null||typeof Y==="number")return;return Y.stepMs}function sO4(Y){if(Y==null||typeof Y==="number")return;return Y.chunkMs}var tO4=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}];var eO4=(Y)=>{let Q=typeof Y==="string"?AN(Y):Y,X=(Q[6]&127)<<21|(Q[7]&127)<<14|(Q[8]&127)<<7|Q[9]&127;return Q.slice(X+10)};function YL4(Y){return typeof Y==="string"&&Y.startsWith("SUQz")||typeof Y!=="string"&&Y.length>10&&Y[0]===73&&Y[1]===68&&Y[2]===51?eO4(Y):Y}function QL4({data:Y,signatures:Q}){let X=YL4(Y),J=typeof X==="string"?AN(X.substring(0,Math.min(X.length,24))):X;for(let G of Q)if(J.length>=G.bytesPrefix.length&&G.bytesPrefix.every((K,W)=>K===null||J[W]===K))return G.mediaType;return}var Mk0="6.0.85",wk0=async({url:Y,maxBytes:Q,abortSignal:X})=>{var J;let G=Y.toString();try{let K=await fetch(G,{headers:y3({},`ai-sdk/${Mk0}`,Bd()),signal:X});if(!K.ok)throw new wN({url:G,statusCode:K.status,statusText:K.statusText});return{data:await xj0({response:K,url:G,maxBytes:Q!=null?Q:tH1}),mediaType:(J=K.headers.get("content-type"))!=null?J:void 0}}catch(K){if(wN.isInstance(K))throw K;throw new wN({url:G,cause:K})}},XL4=(Y=wk0)=>(Q)=>Promise.all(Q.map(async(X)=>X.isUrlSupportedByModel?null:Y(X)));function JL4(Y){try{let[Q,X]=Y.split(",");return{mediaType:Q.split(";")[0].split(":")[1],base64Content:X}}catch(Q){return{mediaType:void 0,base64Content:void 0}}}var Ak0=B.union([B.string(),B.instanceof(Uint8Array),B.instanceof(ArrayBuffer),B.custom((Y)=>{var Q,X;return(X=(Q=globalThis.Buffer)==null?void 0:Q.isBuffer(Y))!=null?X:!1},{message:"Must be a Buffer"})]);function Pk0(Y){if(Y instanceof Uint8Array)return{data:Y,mediaType:void 0};if(Y instanceof ArrayBuffer)return{data:new Uint8Array(Y),mediaType:void 0};if(typeof Y==="string")try{Y=new URL(Y)}catch(Q){}if(Y instanceof URL&&Y.protocol==="data:"){let{mediaType:Q,base64Content:X}=JL4(Y.toString());if(Q==null||X==null)throw new v0({name:"InvalidDataContentError",message:`Invalid data URL format in content ${Y.toString()}`});return{data:X,mediaType:Q}}return{data:Y,mediaType:void 0}}function GL4(Y){if(typeof Y==="string")return Y;if(Y instanceof ArrayBuffer)return _3(new Uint8Array(Y));return _3(Y)}function gR(Y){return Y===void 0?[]:Array.isArray(Y)?Y:[Y]}async function Ek0({prompt:Y,supportedUrls:Q,download:X=XL4()}){let J=await ZL4(Y.messages,X,Q),G=new Map;for(let F of Y.messages)if(F.role==="assistant"&&Array.isArray(F.content)){for(let $ of F.content)if($.type==="tool-approval-request"&&"approvalId"in $&&"toolCallId"in $)G.set($.approvalId,$.toolCallId)}let K=new Set;for(let F of Y.messages)if(F.role==="tool"){for(let $ of F.content)if($.type==="tool-approval-response"){let V=G.get($.approvalId);if(V)K.add(V)}}let W=[...Y.system!=null?typeof Y.system==="string"?[{role:"system",content:Y.system}]:gR(Y.system).map((F)=>({role:"system",content:F.content,providerOptions:F.providerOptions})):[],...Y.messages.map((F)=>WL4({message:F,downloadedAssets:J}))],Z=[];for(let F of W){if(F.role!=="tool"){Z.push(F);continue}let $=Z.at(-1);if(($==null?void 0:$.role)==="tool")$.content.push(...F.content);else Z.push(F)}let H=new Set;for(let F of Z)switch(F.role){case"assistant":{for(let $ of F.content)if($.type==="tool-call"&&!$.providerExecuted)H.add($.toolCallId);break}case"tool":{for(let $ of F.content)if($.type==="tool-result")H.delete($.toolCallId);break}case"user":case"system":for(let $ of K)H.delete($);if(H.size>0)throw new Nv0({toolCallIds:Array.from(H)});break}for(let F of K)H.delete(F);if(H.size>0)throw new Nv0({toolCallIds:Array.from(H)});return Z.filter((F)=>F.role!=="tool"||F.content.length>0)}function WL4({message:Y,downloadedAssets:Q}){let X=Y.role;switch(X){case"system":return{role:"system",content:Y.content,providerOptions:Y.providerOptions};case"user":{if(typeof Y.content==="string")return{role:"user",content:[{type:"text",text:Y.content}],providerOptions:Y.providerOptions};return{role:"user",content:Y.content.map((J)=>KL4(J,Q)).filter((J)=>J.type!=="text"||J.text!==""),providerOptions:Y.providerOptions}}case"assistant":{if(typeof Y.content==="string")return{role:"assistant",content:[{type:"text",text:Y.content}],providerOptions:Y.providerOptions};return{role:"assistant",content:Y.content.filter((J)=>J.type!=="text"||J.text!==""||J.providerOptions!=null).filter((J)=>J.type!=="tool-approval-request").map((J)=>{let G=J.providerOptions;switch(J.type){case"file":{let{data:K,mediaType:W}=Pk0(J.data);return{type:"file",data:K,filename:J.filename,mediaType:W!=null?W:J.mediaType,providerOptions:G}}case"reasoning":return{type:"reasoning",text:J.text,providerOptions:G};case"text":return{type:"text",text:J.text,providerOptions:G};case"tool-call":return{type:"tool-call",toolCallId:J.toolCallId,toolName:J.toolName,input:J.input,providerExecuted:J.providerExecuted,providerOptions:G};case"tool-result":return{type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:Av0(J.output),providerOptions:G}}}),providerOptions:Y.providerOptions}}case"tool":return{role:"tool",content:Y.content.filter((J)=>J.type!=="tool-approval-response"||J.providerExecuted).map((J)=>{switch(J.type){case"tool-result":return{type:"tool-result",toolCallId:J.toolCallId,toolName:J.toolName,output:Av0(J.output),providerOptions:J.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:J.approvalId,approved:J.approved,reason:J.reason}}}),providerOptions:Y.providerOptions};default:throw new mO4({role:X})}}async function ZL4(Y,Q,X){let J=Y.filter((K)=>K.role==="user").map((K)=>K.content).filter((K)=>Array.isArray(K)).flat().filter((K)=>K.type==="image"||K.type==="file").map((K)=>{var W;let Z=(W=K.mediaType)!=null?W:K.type==="image"?"image/*":void 0,H=K.type==="image"?K.image:K.data;if(typeof H==="string")try{H=new URL(H)}catch(F){}return{mediaType:Z,data:H}}).filter((K)=>K.data instanceof URL).map((K)=>({url:K.data,isUrlSupportedByModel:K.mediaType!=null&&lj0({url:K.data.toString(),mediaType:K.mediaType,supportedUrls:X})})),G=await Q(J);return Object.fromEntries(G.map((K,W)=>K==null?null:[J[W].url.toString(),{data:K.data,mediaType:K.mediaType}]).filter((K)=>K!=null))}function KL4(Y,Q){var X;if(Y.type==="text")return{type:"text",text:Y.text,providerOptions:Y.providerOptions};let J,G=Y.type;switch(G){case"image":J=Y.image;break;case"file":J=Y.data;break;default:throw Error(`Unsupported part type: ${G}`)}let{data:K,mediaType:W}=Pk0(J),Z=W!=null?W:Y.mediaType,H=K;if(H instanceof URL){let F=Q[H.toString()];if(F)H=F.data,Z!=null||(Z=F.mediaType)}switch(G){case"image":{if(H instanceof Uint8Array||typeof H==="string")Z=(X=QL4({data:H,signatures:tO4}))!=null?X:Z;return{type:"file",mediaType:Z!=null?Z:"image/*",filename:void 0,data:H,providerOptions:Y.providerOptions}}case"file":{if(Z==null)throw Error("Media type is missing for file part");return{type:"file",mediaType:Z,filename:Y.filename,data:H,providerOptions:Y.providerOptions}}}}function Av0(Y){if(Y.type!=="content")return Y;return{type:"content",value:Y.value.map((Q)=>{if(Q.type!=="media")return Q;if(Q.mediaType.startsWith("image/"))return{type:"image-data",data:Q.data,mediaType:Q.mediaType};return{type:"file-data",data:Q.data,mediaType:Q.mediaType}})}}async function YU({toolCallId:Y,input:Q,output:X,tool:J,errorMode:G}){if(G==="text")return{type:"error-text",value:lG(X)};else if(G==="json")return{type:"error-json",value:Pv0(X)};if(J==null?void 0:J.toModelOutput)return await J.toModelOutput({toolCallId:Y,input:Q,output:X});return typeof X==="string"?{type:"text",value:X}:{type:"json",value:Pv0(X)}}function Pv0(Y){return Y===void 0?null:Y}function PF1({maxOutputTokens:Y,temperature:Q,topP:X,topK:J,presencePenalty:G,frequencyPenalty:K,seed:W,stopSequences:Z}){if(Y!=null){if(!Number.isInteger(Y))throw new aG({parameter:"maxOutputTokens",value:Y,message:"maxOutputTokens must be an integer"});if(Y<1)throw new aG({parameter:"maxOutputTokens",value:Y,message:"maxOutputTokens must be >= 1"})}if(Q!=null){if(typeof Q!=="number")throw new aG({parameter:"temperature",value:Q,message:"temperature must be a number"})}if(X!=null){if(typeof X!=="number")throw new aG({parameter:"topP",value:X,message:"topP must be a number"})}if(J!=null){if(typeof J!=="number")throw new aG({parameter:"topK",value:J,message:"topK must be a number"})}if(G!=null){if(typeof G!=="number")throw new aG({parameter:"presencePenalty",value:G,message:"presencePenalty must be a number"})}if(K!=null){if(typeof K!=="number")throw new aG({parameter:"frequencyPenalty",value:K,message:"frequencyPenalty must be a number"})}if(W!=null){if(!Number.isInteger(W))throw new aG({parameter:"seed",value:W,message:"seed must be an integer"})}return{maxOutputTokens:Y,temperature:Q,topP:X,topK:J,presencePenalty:G,frequencyPenalty:K,stopSequences:Z,seed:W}}function HL4(Y){return Y!=null&&Object.keys(Y).length>0}async function Tk0({tools:Y,toolChoice:Q,activeTools:X}){if(!HL4(Y))return{tools:void 0,toolChoice:void 0};let J=X!=null?Object.entries(Y).filter(([K])=>X.includes(K)):Object.entries(Y),G=[];for(let[K,W]of J){let Z=W.type;switch(Z){case void 0:case"dynamic":case"function":G.push({type:"function",name:K,description:W.description,inputSchema:await jZ(W.inputSchema).jsonSchema,...W.inputExamples!=null?{inputExamples:W.inputExamples}:{},providerOptions:W.providerOptions,...W.strict!=null?{strict:W.strict}:{}});break;case"provider":G.push({type:"provider",name:K,id:W.id,args:W.args});break;default:throw Error(`Unsupported tool type: ${Z}`)}}return{tools:G,toolChoice:Q==null?{type:"auto"}:typeof Q==="string"?{type:Q}:{type:"tool",toolName:Q.toolName}}}var uR=B.lazy(()=>B.union([B.null(),B.string(),B.number(),B.boolean(),B.record(B.string(),uR.optional()),B.array(uR)])),V6=B.record(B.string(),B.record(B.string(),uR.optional())),Ck0=B.object({type:B.literal("text"),text:B.string(),providerOptions:V6.optional()}),FL4=B.object({type:B.literal("image"),image:B.union([Ak0,B.instanceof(URL)]),mediaType:B.string().optional(),providerOptions:V6.optional()}),Rk0=B.object({type:B.literal("file"),data:B.union([Ak0,B.instanceof(URL)]),filename:B.string().optional(),mediaType:B.string(),providerOptions:V6.optional()}),$L4=B.object({type:B.literal("reasoning"),text:B.string(),providerOptions:V6.optional()}),VL4=B.object({type:B.literal("tool-call"),toolCallId:B.string(),toolName:B.string(),input:B.unknown(),providerOptions:V6.optional(),providerExecuted:B.boolean().optional()}),qL4=B.discriminatedUnion("type",[B.object({type:B.literal("text"),value:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("json"),value:uR,providerOptions:V6.optional()}),B.object({type:B.literal("execution-denied"),reason:B.string().optional(),providerOptions:V6.optional()}),B.object({type:B.literal("error-text"),value:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("error-json"),value:uR,providerOptions:V6.optional()}),B.object({type:B.literal("content"),value:B.array(B.union([B.object({type:B.literal("text"),text:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("media"),data:B.string(),mediaType:B.string()}),B.object({type:B.literal("file-data"),data:B.string(),mediaType:B.string(),filename:B.string().optional(),providerOptions:V6.optional()}),B.object({type:B.literal("file-url"),url:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("file-id"),fileId:B.union([B.string(),B.record(B.string(),B.string())]),providerOptions:V6.optional()}),B.object({type:B.literal("image-data"),data:B.string(),mediaType:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("image-url"),url:B.string(),providerOptions:V6.optional()}),B.object({type:B.literal("image-file-id"),fileId:B.union([B.string(),B.record(B.string(),B.string())]),providerOptions:V6.optional()}),B.object({type:B.literal("custom"),providerOptions:V6.optional()})]))})]),Ik0=B.object({type:B.literal("tool-result"),toolCallId:B.string(),toolName:B.string(),output:qL4,providerOptions:V6.optional()}),BL4=B.object({type:B.literal("tool-approval-request"),approvalId:B.string(),toolCallId:B.string()}),UL4=B.object({type:B.literal("tool-approval-response"),approvalId:B.string(),approved:B.boolean(),reason:B.string().optional()}),zL4=B.object({role:B.literal("system"),content:B.string(),providerOptions:V6.optional()}),DL4=B.object({role:B.literal("user"),content:B.union([B.string(),B.array(B.union([Ck0,FL4,Rk0]))]),providerOptions:V6.optional()}),OL4=B.object({role:B.literal("assistant"),content:B.union([B.string(),B.array(B.union([Ck0,Rk0,$L4,VL4,Ik0,BL4]))]),providerOptions:V6.optional()}),LL4=B.object({role:B.literal("tool"),content:B.array(B.union([Ik0,UL4])),providerOptions:V6.optional()}),NL4=B.union([zL4,DL4,OL4,LL4]);async function jk0(Y){if(Y.prompt==null&&Y.messages==null)throw new aB({prompt:Y,message:"prompt or messages must be defined"});if(Y.prompt!=null&&Y.messages!=null)throw new aB({prompt:Y,message:"prompt and messages cannot be defined at the same time"});if(Y.system!=null&&typeof Y.system!=="string"&&!gR(Y.system).every((J)=>typeof J==="object"&&J!==null&&("role"in J)&&J.role==="system"))throw new aB({prompt:Y,message:"system must be a string, SystemModelMessage, or array of SystemModelMessage"});let Q;if(Y.prompt!=null&&typeof Y.prompt==="string")Q=[{role:"user",content:Y.prompt}];else if(Y.prompt!=null&&Array.isArray(Y.prompt))Q=Y.prompt;else if(Y.messages!=null)Q=Y.messages;else throw new aB({prompt:Y,message:"prompt or messages must be defined"});if(Q.length===0)throw new aB({prompt:Y,message:"messages must not be empty"});let X=await sQ({value:Q,schema:B.array(NL4)});if(!X.success)throw new aB({prompt:Y,message:"The messages do not match the ModelMessage[] schema.",cause:X.error});return{messages:Q,system:Y.system}}function Sk0(Y){if(!Md.isInstance(Y))return Y;let Q=(process==null?void 0:"production")==="production",X="https://ai-sdk.dev/unauthenticated-ai-gateway";if(Q)return new v0({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${X}`});return Object.assign(Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m
1272
1272
 
1273
1273
  To authenticate, set the \x1B[33mAI_GATEWAY_API_KEY\x1B[0m environment variable with your API key.
1274
1274
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decocms/mesh",
3
- "version": "2.94.0",
3
+ "version": "2.95.0",
4
4
  "description": "MCP Mesh - Self-hostable MCP Gateway for managing AI connections and tools",
5
5
  "author": "Deco team",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- import{U as t,W as a}from"./index-BHw6ELR5.js";const e=t(a,{target:"draft-7"});export{e as B};